summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--COPYING39
-rw-r--r--COPYING.LIB84
-rw-r--r--ChangeLog5366
-rw-r--r--INSTALL28
-rw-r--r--Makeconfig8
-rw-r--r--Makefile41
-rw-r--r--Makerules53
-rw-r--r--NEWS101
-rw-r--r--README5
-rw-r--r--Versions.def3
-rw-r--r--aclocal.m46
-rw-r--r--benchtests/Makefile111
-rw-r--r--benchtests/README39
-rw-r--r--benchtests/acos-inputs3
-rw-r--r--benchtests/acosh-inputs3
-rw-r--r--benchtests/asin-inputs3
-rw-r--r--benchtests/asinh-inputs3
-rw-r--r--benchtests/atan-inputs3
-rw-r--r--benchtests/atanh-inputs3
-rw-r--r--benchtests/bench-memccpy.c32
-rw-r--r--benchtests/bench-memchr.c40
-rw-r--r--benchtests/bench-memcmp.c32
-rw-r--r--benchtests/bench-memcpy-ifunc.c20
-rw-r--r--benchtests/bench-memcpy.c32
-rw-r--r--benchtests/bench-memmem-ifunc.c20
-rw-r--r--benchtests/bench-memmem.c36
-rw-r--r--benchtests/bench-memmove.c34
-rw-r--r--benchtests/bench-mempcpy-ifunc.c20
-rw-r--r--benchtests/bench-memrchr.c40
-rw-r--r--benchtests/bench-memset-ifunc.c20
-rw-r--r--benchtests/bench-memset.c32
-rw-r--r--benchtests/bench-rawmemchr-ifunc.c20
-rw-r--r--benchtests/bench-rawmemchr.c31
-rw-r--r--benchtests/bench-skeleton.c6
-rw-r--r--benchtests/bench-stpcpy-ifunc.c20
-rw-r--r--benchtests/bench-stpcpy_chk-ifunc.c20
-rw-r--r--benchtests/bench-strcasecmp-ifunc.c20
-rw-r--r--benchtests/bench-strcasecmp.c31
-rw-r--r--benchtests/bench-strcasestr-ifunc.c20
-rw-r--r--benchtests/bench-strcasestr.c32
-rw-r--r--benchtests/bench-strcat-ifunc.c20
-rw-r--r--benchtests/bench-strcat.c35
-rw-r--r--benchtests/bench-strchr-ifunc.c20
-rw-r--r--benchtests/bench-strchr.c34
-rw-r--r--benchtests/bench-strchrnul-ifunc.c20
-rw-r--r--benchtests/bench-strcmp-ifunc.c20
-rw-r--r--benchtests/bench-strcmp.c32
-rw-r--r--benchtests/bench-strcpy-ifunc.c20
-rw-r--r--benchtests/bench-strcpy.c30
-rw-r--r--benchtests/bench-strcpy_chk-ifunc.c20
-rw-r--r--benchtests/bench-strcpy_chk.c28
-rw-r--r--benchtests/bench-strcspn-ifunc.c20
-rw-r--r--benchtests/bench-string.h16
-rw-r--r--benchtests/bench-strlen-ifunc.c20
-rw-r--r--benchtests/bench-strlen.c33
-rw-r--r--benchtests/bench-strncasecmp-ifunc.c20
-rw-r--r--benchtests/bench-strncasecmp.c32
-rw-r--r--benchtests/bench-strncat-ifunc.c20
-rw-r--r--benchtests/bench-strncat.c36
-rw-r--r--benchtests/bench-strncmp-ifunc.c20
-rw-r--r--benchtests/bench-strncmp.c44
-rw-r--r--benchtests/bench-strncpy-ifunc.c20
-rw-r--r--benchtests/bench-strncpy.c30
-rw-r--r--benchtests/bench-strnlen-ifunc.c20
-rw-r--r--benchtests/bench-strnlen.c33
-rw-r--r--benchtests/bench-strpbrk-ifunc.c20
-rw-r--r--benchtests/bench-strpbrk.c30
-rw-r--r--benchtests/bench-strrchr-ifunc.c20
-rw-r--r--benchtests/bench-strrchr.c32
-rw-r--r--benchtests/bench-strsep.c174
-rw-r--r--benchtests/bench-strspn-ifunc.c20
-rw-r--r--benchtests/bench-strspn.c33
-rw-r--r--benchtests/bench-strstr-ifunc.c20
-rw-r--r--benchtests/bench-strstr.c32
-rw-r--r--benchtests/bench-strtod.c117
-rw-r--r--benchtests/bench-strtok.c205
-rw-r--r--benchtests/bench-timing.h19
-rw-r--r--benchtests/cos-inputs3
-rw-r--r--benchtests/cosh-inputs3
-rw-r--r--benchtests/exp-inputs584
-rw-r--r--benchtests/exp2-inputs105
-rw-r--r--benchtests/log-inputs296
-rw-r--r--benchtests/log2-inputs203
-rw-r--r--benchtests/pow-inputs506
-rw-r--r--benchtests/rint-inputs3
-rw-r--r--benchtests/sin-inputs3
-rw-r--r--benchtests/sincos-inputs27
-rw-r--r--benchtests/sinh-inputs3
-rw-r--r--benchtests/sqrt-inputs10
-rw-r--r--benchtests/tan-inputs3453
-rw-r--r--benchtests/tanh-inputs3
-rw-r--r--config.h.in13
-rw-r--r--config.make.in1
-rwxr-xr-xconfigure149
-rw-r--r--configure.ac (renamed from configure.in)119
-rw-r--r--conform/conformtest.pl4
-rw-r--r--conform/data/pthread.h-data15
-rw-r--r--conform/data/sched.h-data14
-rw-r--r--crypt/crypt.h5
-rw-r--r--csu/init-first.c5
-rw-r--r--csu/libc-start.c16
-rw-r--r--debug/memcpy_chk.c31
-rw-r--r--debug/memmove_chk.c63
-rw-r--r--debug/mempcpy_chk.c31
-rw-r--r--debug/memset_chk.c61
-rw-r--r--debug/stpncpy_chk.c54
-rw-r--r--debug/strncpy_chk.c57
-rw-r--r--dlfcn/Makefile2
-rw-r--r--dlfcn/modstatic2.c2
-rw-r--r--dlfcn/tststatic2.c2
-rw-r--r--elf/Makefile17
-rw-r--r--elf/Versions1
-rw-r--r--elf/cache.c9
-rw-r--r--elf/dl-close.c5
-rw-r--r--elf/dl-deps.c1
-rw-r--r--elf/dl-error.c72
-rw-r--r--elf/dl-fini.c2
-rw-r--r--elf/dl-init.c8
-rw-r--r--elf/dl-libc.c1
-rw-r--r--elf/dl-load.c26
-rw-r--r--elf/dl-lookup.c2
-rw-r--r--elf/dl-misc.c142
-rw-r--r--elf/dl-object.c8
-rw-r--r--elf/dl-support.c6
-rw-r--r--elf/dl-tls.c44
-rw-r--r--elf/elf.h141
-rw-r--r--elf/ldd.bash.in25
-rw-r--r--elf/rtld.c11
-rw-r--r--elf/tlsdeschtab.h6
-rw-r--r--elf/tst-auxv.c69
-rw-r--r--elf/tst-ptrguard1-static.c1
-rw-r--r--elf/tst-ptrguard1.c202
-rw-r--r--elf/tst-tls-dlinfo.c2
-rw-r--r--elf/tst-tls1.c2
-rw-r--r--elf/tst-tls10.h1
-rw-r--r--elf/tst-tls14.c2
-rw-r--r--elf/tst-tls2.c2
-rw-r--r--elf/tst-tls3.c2
-rw-r--r--elf/tst-tls4.c2
-rw-r--r--elf/tst-tls5.c2
-rw-r--r--elf/tst-tls6.c1
-rw-r--r--elf/tst-tls7.c1
-rw-r--r--elf/tst-tls8.c1
-rw-r--r--elf/tst-tls9.c1
-rw-r--r--elf/tst-tlsmod1.c2
-rw-r--r--elf/tst-tlsmod13.c2
-rw-r--r--elf/tst-tlsmod13a.c2
-rw-r--r--elf/tst-tlsmod14a.c2
-rw-r--r--elf/tst-tlsmod16a.c2
-rw-r--r--elf/tst-tlsmod16b.c2
-rw-r--r--elf/tst-tlsmod2.c2
-rw-r--r--elf/tst-tlsmod3.c2
-rw-r--r--elf/tst-tlsmod4.c2
-rw-r--r--elf/tst-tlsmod5.c2
-rw-r--r--elf/tst-tlsmod6.c2
-rw-r--r--extra-lib.mk2
-rw-r--r--hurd/Makefile2
-rw-r--r--hurd/geteuids.c2
-rw-r--r--iconv/iconv_prog.c2
-rw-r--r--include/complex.h2
-rw-r--r--include/features.h58
-rw-r--r--include/fenv.h5
-rw-r--r--include/libc-symbols.h40
-rw-r--r--include/shlib-compat.h8
-rw-r--r--include/stap-probe.h15
-rw-r--r--include/stdc-predef.h25
-rw-r--r--include/string.h1
-rw-r--r--inet/inet_net.c22
-rw-r--r--inet/netinet/in.h69
-rw-r--r--inet/tst-network.c1
-rw-r--r--libidn/ChangeLog6
-rw-r--r--libidn/configure2
-rw-r--r--libidn/configure.ac (renamed from libidn/configure.in)0
-rw-r--r--libio/Makefile4
-rw-r--r--libio/fileops.c21
-rw-r--r--libio/iofwrite.c10
-rw-r--r--libio/iofwrite_u.c10
-rw-r--r--libio/iopadn.c2
-rw-r--r--libio/iowpadn.c2
-rw-r--r--libio/memstream.c5
-rw-r--r--libio/tst-widetext.input2
-rw-r--r--libio/wmemstream.c6
-rw-r--r--locale/C-address.c2
-rw-r--r--locale/C-monetary.c7
-rw-r--r--locale/categories.def1
-rw-r--r--locale/hashval.h2
-rw-r--r--locale/iso-3166.def12
-rw-r--r--locale/iso-4217.def24
-rw-r--r--locale/iso-639.def28
-rw-r--r--locale/loadarchive.c4
-rw-r--r--locale/loadlocale.c2
-rw-r--r--locale/localeconv.c44
-rw-r--r--locale/localeinfo.h10
-rw-r--r--locale/locarchive.h2
-rw-r--r--locale/programs/3level.h56
-rw-r--r--locale/programs/ld-address.c108
-rw-r--r--locale/programs/ld-collate.c247
-rw-r--r--locale/programs/ld-ctype.c525
-rw-r--r--locale/programs/ld-identification.c130
-rw-r--r--locale/programs/ld-measurement.c35
-rw-r--r--locale/programs/ld-messages.c52
-rw-r--r--locale/programs/ld-monetary.c310
-rw-r--r--locale/programs/ld-name.c65
-rw-r--r--locale/programs/ld-numeric.c68
-rw-r--r--locale/programs/ld-paper.c41
-rw-r--r--locale/programs/ld-telephone.c53
-rw-r--r--locale/programs/ld-time.c440
-rw-r--r--locale/programs/locale.c20
-rw-r--r--locale/programs/localedef.c14
-rw-r--r--locale/programs/localedef.h6
-rw-r--r--locale/programs/locarchive.c454
-rw-r--r--locale/programs/locfile.c181
-rw-r--r--locale/programs/locfile.h68
-rw-r--r--locale/setlocale.c2
-rw-r--r--locale/weight.h16
-rw-r--r--localedata/ChangeLog1065
-rw-r--r--localedata/SUPPORTED11
-rw-r--r--localedata/locales/aa_DJ8
-rw-r--r--localedata/locales/aa_ER9
-rw-r--r--localedata/locales/aa_ER@saaho3
-rw-r--r--localedata/locales/aa_ET9
-rw-r--r--localedata/locales/af_ZA13
-rw-r--r--localedata/locales/ak_GH216
-rw-r--r--localedata/locales/am_ET15
-rw-r--r--localedata/locales/an_ES17
-rw-r--r--localedata/locales/anp_IN208
-rw-r--r--localedata/locales/ar_AE14
-rw-r--r--localedata/locales/ar_BH15
-rw-r--r--localedata/locales/ar_DZ15
-rw-r--r--localedata/locales/ar_EG15
-rw-r--r--localedata/locales/ar_IN15
-rw-r--r--localedata/locales/ar_IQ15
-rw-r--r--localedata/locales/ar_JO15
-rw-r--r--localedata/locales/ar_KW15
-rw-r--r--localedata/locales/ar_LB15
-rw-r--r--localedata/locales/ar_LY15
-rw-r--r--localedata/locales/ar_MA15
-rw-r--r--localedata/locales/ar_OM13
-rw-r--r--localedata/locales/ar_QA15
-rw-r--r--localedata/locales/ar_SA14
-rw-r--r--localedata/locales/ar_SD37
-rw-r--r--localedata/locales/ar_SS227
-rw-r--r--localedata/locales/ar_SY15
-rw-r--r--localedata/locales/ar_TN15
-rw-r--r--localedata/locales/ar_YE13
-rw-r--r--localedata/locales/as_IN14
-rw-r--r--localedata/locales/ast_ES21
-rw-r--r--localedata/locales/ayc_PE66
-rw-r--r--localedata/locales/az_AZ15
-rw-r--r--localedata/locales/be_BY16
-rw-r--r--localedata/locales/be_BY@latin23
-rw-r--r--localedata/locales/bem_ZM10
-rw-r--r--localedata/locales/ber_DZ7
-rw-r--r--localedata/locales/ber_MA5
-rw-r--r--localedata/locales/bg_BG8
-rw-r--r--localedata/locales/bho_IN19
-rw-r--r--localedata/locales/bn_BD15
-rw-r--r--localedata/locales/bn_IN16
-rw-r--r--localedata/locales/bo_CN9
-rw-r--r--localedata/locales/bo_IN10
-rw-r--r--localedata/locales/br_FR20
-rw-r--r--localedata/locales/br_FR@euro5
-rw-r--r--localedata/locales/brx_IN18
-rw-r--r--localedata/locales/bs_BA11
-rw-r--r--localedata/locales/byn_ER6
-rw-r--r--localedata/locales/ca_AD15
-rw-r--r--localedata/locales/ca_ES16
-rw-r--r--localedata/locales/ca_ES@euro5
-rw-r--r--localedata/locales/ca_FR24
-rw-r--r--localedata/locales/ca_IT24
-rw-r--r--localedata/locales/cmn_TW221
-rw-r--r--localedata/locales/crh_UA9
-rw-r--r--localedata/locales/cs_CZ5
-rw-r--r--localedata/locales/csb_PL22
-rw-r--r--localedata/locales/cv_RU24
-rw-r--r--localedata/locales/cy_GB3
-rw-r--r--localedata/locales/da_DK16
-rw-r--r--localedata/locales/de_AT15
-rw-r--r--localedata/locales/de_AT@euro5
-rw-r--r--localedata/locales/de_BE15
-rw-r--r--localedata/locales/de_BE@euro5
-rw-r--r--localedata/locales/de_CH16
-rw-r--r--localedata/locales/de_DE9
-rw-r--r--localedata/locales/de_DE@euro5
-rw-r--r--localedata/locales/de_LU16
-rw-r--r--localedata/locales/de_LU@euro5
-rw-r--r--localedata/locales/doi_IN19
-rw-r--r--localedata/locales/dv_MV16
-rw-r--r--localedata/locales/dz_BT21
-rw-r--r--localedata/locales/el_CY16
-rw-r--r--localedata/locales/el_GR16
-rw-r--r--localedata/locales/el_GR@euro6
-rw-r--r--localedata/locales/en_AG13
-rw-r--r--localedata/locales/en_AU16
-rw-r--r--localedata/locales/en_BW16
-rw-r--r--localedata/locales/en_CA18
-rw-r--r--localedata/locales/en_DK15
-rw-r--r--localedata/locales/en_GB15
-rw-r--r--localedata/locales/en_HK16
-rw-r--r--localedata/locales/en_IE16
-rw-r--r--localedata/locales/en_IE@euro5
-rw-r--r--localedata/locales/en_IN15
-rw-r--r--localedata/locales/en_NG13
-rw-r--r--localedata/locales/en_NZ16
-rw-r--r--localedata/locales/en_PH16
-rw-r--r--localedata/locales/en_SG16
-rw-r--r--localedata/locales/en_US14
-rw-r--r--localedata/locales/en_ZA15
-rw-r--r--localedata/locales/en_ZM13
-rw-r--r--localedata/locales/en_ZW16
-rw-r--r--localedata/locales/es_AR16
-rw-r--r--localedata/locales/es_BO16
-rw-r--r--localedata/locales/es_CL16
-rw-r--r--localedata/locales/es_CO16
-rw-r--r--localedata/locales/es_CR16
-rw-r--r--localedata/locales/es_CU16
-rw-r--r--localedata/locales/es_DO16
-rw-r--r--localedata/locales/es_EC16
-rw-r--r--localedata/locales/es_ES16
-rw-r--r--localedata/locales/es_ES@euro5
-rw-r--r--localedata/locales/es_GT16
-rw-r--r--localedata/locales/es_HN14
-rw-r--r--localedata/locales/es_MX16
-rw-r--r--localedata/locales/es_NI16
-rw-r--r--localedata/locales/es_PA16
-rw-r--r--localedata/locales/es_PE16
-rw-r--r--localedata/locales/es_PR11
-rw-r--r--localedata/locales/es_PY16
-rw-r--r--localedata/locales/es_SV16
-rw-r--r--localedata/locales/es_US11
-rw-r--r--localedata/locales/es_UY16
-rw-r--r--localedata/locales/es_VE19
-rw-r--r--localedata/locales/et_EE6
-rw-r--r--localedata/locales/eu_ES16
-rw-r--r--localedata/locales/eu_ES@euro5
-rw-r--r--localedata/locales/fa_IR5
-rw-r--r--localedata/locales/ff_SN9
-rw-r--r--localedata/locales/fi_FI6
-rw-r--r--localedata/locales/fi_FI@euro5
-rw-r--r--localedata/locales/fil_PH17
-rw-r--r--localedata/locales/fo_FO14
-rw-r--r--localedata/locales/fr_BE16
-rw-r--r--localedata/locales/fr_BE@euro5
-rw-r--r--localedata/locales/fr_CA15
-rw-r--r--localedata/locales/fr_CH16
-rw-r--r--localedata/locales/fr_FR15
-rw-r--r--localedata/locales/fr_FR@euro5
-rw-r--r--localedata/locales/fr_LU16
-rw-r--r--localedata/locales/fr_LU@euro5
-rw-r--r--localedata/locales/fur_IT20
-rw-r--r--localedata/locales/fy_DE16
-rw-r--r--localedata/locales/fy_NL13
-rw-r--r--localedata/locales/ga_IE16
-rw-r--r--localedata/locales/ga_IE@euro5
-rw-r--r--localedata/locales/gd_GB247
-rw-r--r--localedata/locales/gez_ER8
-rw-r--r--localedata/locales/gez_ER@abegede3
-rw-r--r--localedata/locales/gez_ET7
-rw-r--r--localedata/locales/gez_ET@abegede3
-rw-r--r--localedata/locales/gl_ES16
-rw-r--r--localedata/locales/gl_ES@euro5
-rw-r--r--localedata/locales/gu_IN15
-rw-r--r--localedata/locales/gv_GB16
-rw-r--r--localedata/locales/ha_NG5
-rw-r--r--localedata/locales/hak_TW220
-rw-r--r--localedata/locales/he_IL14
-rw-r--r--localedata/locales/hi_IN15
-rw-r--r--localedata/locales/hne_IN15
-rw-r--r--localedata/locales/hr_HR14
-rw-r--r--localedata/locales/hsb_DE13
-rw-r--r--localedata/locales/ht_HT259
-rw-r--r--localedata/locales/hu_HU16
-rw-r--r--localedata/locales/hy_AM11
-rw-r--r--localedata/locales/ia_FR13
-rw-r--r--localedata/locales/id_ID16
-rw-r--r--localedata/locales/ig_NG15
-rw-r--r--localedata/locales/ik_CA14
-rw-r--r--localedata/locales/is_IS16
-rw-r--r--localedata/locales/it_CH16
-rw-r--r--localedata/locales/it_IT16
-rw-r--r--localedata/locales/it_IT@euro5
-rw-r--r--localedata/locales/iu_CA14
-rw-r--r--localedata/locales/ja_JP16
-rw-r--r--localedata/locales/ka_GE20
-rw-r--r--localedata/locales/kk_KZ14
-rw-r--r--localedata/locales/kl_GL16
-rw-r--r--localedata/locales/km_KH6
-rw-r--r--localedata/locales/kn_IN15
-rw-r--r--localedata/locales/ko_KR16
-rw-r--r--localedata/locales/kok_IN13
-rw-r--r--localedata/locales/ks_IN17
-rw-r--r--localedata/locales/ks_IN@devanagari22
-rw-r--r--localedata/locales/ku_TR15
-rw-r--r--localedata/locales/kw_GB16
-rw-r--r--localedata/locales/ky_KG15
-rw-r--r--localedata/locales/lb_LU1
-rw-r--r--localedata/locales/lg_UG15
-rw-r--r--localedata/locales/li_BE6
-rw-r--r--localedata/locales/li_NL6
-rw-r--r--localedata/locales/lij_IT14
-rw-r--r--localedata/locales/lo_LA6
-rw-r--r--localedata/locales/lt_LT16
-rw-r--r--localedata/locales/lv_LV16
-rw-r--r--localedata/locales/lzh_TW255
-rw-r--r--localedata/locales/mag_IN21
-rw-r--r--localedata/locales/mai_IN21
-rw-r--r--localedata/locales/mg_MG15
-rw-r--r--localedata/locales/mhr_RU11
-rw-r--r--localedata/locales/mi_NZ20
-rw-r--r--localedata/locales/mk_MK9
-rw-r--r--localedata/locales/ml_IN14
-rw-r--r--localedata/locales/mn_MN8
-rw-r--r--localedata/locales/mni_IN19
-rw-r--r--localedata/locales/mr_IN15
-rw-r--r--localedata/locales/ms_MY16
-rw-r--r--localedata/locales/mt_MT16
-rw-r--r--localedata/locales/my_MM5
-rw-r--r--localedata/locales/nan_TW221
-rw-r--r--localedata/locales/nan_TW@latin1
-rw-r--r--localedata/locales/nb_NO15
-rw-r--r--localedata/locales/nds_DE3
-rw-r--r--localedata/locales/nds_NL3
-rw-r--r--localedata/locales/ne_NP16
-rw-r--r--localedata/locales/nhn_MX20
-rw-r--r--localedata/locales/niu_NU3
-rw-r--r--localedata/locales/niu_NZ5
-rw-r--r--localedata/locales/nl_AW10
-rw-r--r--localedata/locales/nl_BE12
-rw-r--r--localedata/locales/nl_BE@euro5
-rw-r--r--localedata/locales/nl_NL9
-rw-r--r--localedata/locales/nl_NL@euro5
-rw-r--r--localedata/locales/nn_NO24
-rw-r--r--localedata/locales/nr_ZA16
-rw-r--r--localedata/locales/nso_ZA10
-rw-r--r--localedata/locales/oc_FR12
-rw-r--r--localedata/locales/om_ET6
-rw-r--r--localedata/locales/om_KE12
-rw-r--r--localedata/locales/or_IN27
-rw-r--r--localedata/locales/os_RU22
-rw-r--r--localedata/locales/pa_IN13
-rw-r--r--localedata/locales/pa_PK13
-rw-r--r--localedata/locales/pap_AN21
-rw-r--r--localedata/locales/pap_AW166
-rw-r--r--localedata/locales/pap_CW166
-rw-r--r--localedata/locales/pl_PL14
-rw-r--r--localedata/locales/ps_AF58
-rw-r--r--localedata/locales/pt_BR14
-rw-r--r--localedata/locales/pt_PT13
-rw-r--r--localedata/locales/pt_PT@euro5
-rw-r--r--localedata/locales/quz_PE181
-rw-r--r--localedata/locales/ro_RO5
-rw-r--r--localedata/locales/ru_RU14
-rw-r--r--localedata/locales/ru_UA14
-rw-r--r--localedata/locales/rw_RW5
-rw-r--r--localedata/locales/sa_IN13
-rw-r--r--localedata/locales/sat_IN19
-rw-r--r--localedata/locales/sc_IT22
-rw-r--r--localedata/locales/sd_IN15
-rw-r--r--localedata/locales/sd_IN@devanagari14
-rw-r--r--localedata/locales/se_NO11
-rw-r--r--localedata/locales/shs_CA7
-rw-r--r--localedata/locales/si_LK19
-rw-r--r--localedata/locales/sid_ET8
-rw-r--r--localedata/locales/sk_SK14
-rw-r--r--localedata/locales/sl_SI14
-rw-r--r--localedata/locales/so_DJ5
-rw-r--r--localedata/locales/so_ET10
-rw-r--r--localedata/locales/so_KE16
-rw-r--r--localedata/locales/so_SO10
-rw-r--r--localedata/locales/sq_AL14
-rw-r--r--localedata/locales/sq_MK27
-rw-r--r--localedata/locales/sr_ME3
-rw-r--r--localedata/locales/sr_RS3
-rw-r--r--localedata/locales/sr_RS@latin3
-rw-r--r--localedata/locales/ss_ZA10
-rw-r--r--localedata/locales/st_ZA8
-rw-r--r--localedata/locales/sv_FI3
-rw-r--r--localedata/locales/sv_FI@euro3
-rw-r--r--localedata/locales/sv_SE10
-rw-r--r--localedata/locales/sw_KE11
-rw-r--r--localedata/locales/sw_TZ11
-rw-r--r--localedata/locales/szl_PL18
-rw-r--r--localedata/locales/ta_IN11
-rw-r--r--localedata/locales/ta_LK20
-rw-r--r--localedata/locales/te_IN15
-rw-r--r--localedata/locales/tg_TJ9
-rw-r--r--localedata/locales/th_TH10
-rw-r--r--localedata/locales/the_NP230
-rw-r--r--localedata/locales/ti_ER12
-rw-r--r--localedata/locales/ti_ET12
-rw-r--r--localedata/locales/tig_ER10
-rw-r--r--localedata/locales/tk_TM47
-rw-r--r--localedata/locales/tl_PH10
-rw-r--r--localedata/locales/tn_ZA17
-rw-r--r--localedata/locales/tr_CY7
-rw-r--r--localedata/locales/tr_TR7
-rw-r--r--localedata/locales/translit_neutral4
-rw-r--r--localedata/locales/ts_ZA8
-rw-r--r--localedata/locales/tt_RU11
-rw-r--r--localedata/locales/tt_RU@iqtelif9
-rw-r--r--localedata/locales/ug_CN23
-rw-r--r--localedata/locales/uk_UA6
-rw-r--r--localedata/locales/unm_US23
-rw-r--r--localedata/locales/ur_IN20
-rw-r--r--localedata/locales/ur_PK11
-rw-r--r--localedata/locales/uz_UZ15
-rw-r--r--localedata/locales/uz_UZ@cyrillic12
-rw-r--r--localedata/locales/ve_ZA13
-rw-r--r--localedata/locales/vi_VN9
-rw-r--r--localedata/locales/wa_BE16
-rw-r--r--localedata/locales/wa_BE@euro5
-rw-r--r--localedata/locales/wae_CH19
-rw-r--r--localedata/locales/wal_ET15
-rw-r--r--localedata/locales/wo_SN13
-rw-r--r--localedata/locales/xh_ZA6
-rw-r--r--localedata/locales/yi_US15
-rw-r--r--localedata/locales/yo_NG5
-rw-r--r--localedata/locales/yue_HK9
-rw-r--r--localedata/locales/zh_CN5
-rw-r--r--localedata/locales/zh_HK9
-rw-r--r--localedata/locales/zh_SG11
-rw-r--r--localedata/locales/zh_TW4
-rw-r--r--localedata/locales/zu_ZA3
-rw-r--r--localedata/tests-mbwc/tst_mbrtowc.c10
-rw-r--r--malloc/Makefile7
-rw-r--r--malloc/arena.c85
-rw-r--r--malloc/hooks.c32
-rw-r--r--malloc/malloc.c416
-rw-r--r--malloc/obstack.h2
-rw-r--r--malloc/tst-memalign.c114
-rw-r--r--malloc/tst-posix_memalign.c118
-rw-r--r--malloc/tst-pvalloc.c99
-rw-r--r--malloc/tst-realloc.c146
-rw-r--r--malloc/tst-valloc.c108
-rw-r--r--manual/Makefile2
-rw-r--r--manual/arith.texi28
-rw-r--r--manual/creature.texi62
-rw-r--r--manual/crypt.texi10
-rw-r--r--manual/freemanuals.texi5
-rw-r--r--manual/install-plain.texi5
-rw-r--r--manual/install.texi28
-rw-r--r--manual/job.texi35
-rw-r--r--manual/libc.texinfo1
-rw-r--r--manual/llio.texi31
-rw-r--r--manual/maint.texi8
-rw-r--r--manual/math.texi80
-rw-r--r--manual/memory.texi96
-rw-r--r--manual/pattern.texi7
-rw-r--r--manual/probes.texi370
-rw-r--r--manual/socket.texi27
-rw-r--r--manual/startup.texi3
-rw-r--r--manual/string.texi10
-rw-r--r--manual/texinfo.tex154
-rw-r--r--manual/threads.texi4
-rw-r--r--manual/time.texi88
-rw-r--r--math/Makefile15
-rw-r--r--math/auto-libm-test-in1580
-rw-r--r--math/auto-libm-test-out97681
-rw-r--r--math/fegetround.c1
-rw-r--r--math/gen-auto-libm-tests.c1957
-rwxr-xr-xmath/gen-libm-test.pl243
-rw-r--r--math/libm-test.inc3048
-rw-r--r--math/test-fenv-tls.c208
-rw-r--r--math/test-fpucw-ieee-static.c1
-rw-r--r--math/test-fpucw-ieee.c27
-rw-r--r--math/test-fpucw-static.c1
-rw-r--r--math/test-fpucw.c10
-rw-r--r--math/test-misc.c289
-rw-r--r--math/w_exp10.c2
-rw-r--r--math/w_exp10f.c2
-rw-r--r--math/w_exp10l.c2
-rw-r--r--math/w_exp2.c2
-rw-r--r--math/w_exp2f.c2
-rw-r--r--math/w_exp2l.c2
-rw-r--r--math/w_j0.c7
-rw-r--r--math/w_j0f.c7
-rw-r--r--math/w_j0l.c7
-rw-r--r--math/w_j1.c7
-rw-r--r--math/w_j1f.c7
-rw-r--r--math/w_j1l.c7
-rw-r--r--math/w_jn.c7
-rw-r--r--math/w_jnf.c7
-rw-r--r--math/w_tgamma.c5
-rw-r--r--math/w_tgammaf.c6
-rw-r--r--math/w_tgammal.c5
-rw-r--r--misc/Makefile3
-rw-r--r--misc/error.c2
-rw-r--r--misc/getauxval.c3
-rw-r--r--misc/swapon.c3
-rw-r--r--misc/sys/auxv.h4
-rw-r--r--nptl/ChangeLog87
-rw-r--r--nptl/Makefile9
-rw-r--r--nptl/allocatestack.c6
-rw-r--r--nptl/pthread_cond_broadcast.c5
-rw-r--r--nptl/pthread_cond_signal.c7
-rw-r--r--nptl/shlib-versions1
-rw-r--r--nptl/sysdeps/i386/tls.h2
-rw-r--r--nptl/sysdeps/powerpc/tcb-offsets.sym3
-rw-r--r--nptl/sysdeps/powerpc/tls.h7
-rw-r--r--nptl/sysdeps/pthread/bits/libc-lock.h6
-rw-r--r--nptl/sysdeps/pthread/configure2
-rw-r--r--nptl/sysdeps/pthread/configure.ac (renamed from nptl/sysdeps/pthread/configure.in)0
-rw-r--r--nptl/sysdeps/unix/sysv/linux/Makefile1
-rw-r--r--nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S3
-rw-r--r--nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h60
-rw-r--r--nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c13
-rw-r--r--nptl/sysdeps/unix/sysv/linux/tst-setgetname.c301
-rw-r--r--nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S2
-rw-r--r--nptl/sysdeps/x86_64/configure2
-rw-r--r--nptl/sysdeps/x86_64/configure.ac (renamed from nptl/sysdeps/x86_64/configure.in)0
-rw-r--r--nptl/sysdeps/x86_64/tls.h4
-rw-r--r--nptl/tst-cleanup2.c8
-rw-r--r--nptl/tst-mutex8.c12
-rw-r--r--nscd/Makefile2
-rw-r--r--nscd/aicache.c15
-rw-r--r--nscd/initgrcache.c15
-rw-r--r--nscd/netgroupcache.c4
-rw-r--r--nscd/nscd.service18
-rw-r--r--nscd/nscd.tmpfiles4
-rw-r--r--nscd/nscd_getserv_r.c2
-rw-r--r--nss/Versions1
-rw-r--r--nss/getent.c8
-rw-r--r--nss/nss_files/files-XXX.c59
-rw-r--r--nss/nss_files/files-hosts.c511
-rw-r--r--po/zh_TW.po1916
-rw-r--r--ports/ChangeLog5
-rw-r--r--ports/ChangeLog.aarch6462
-rw-r--r--ports/ChangeLog.alpha53
-rw-r--r--ports/ChangeLog.am3310
-rw-r--r--ports/ChangeLog.arm84
-rw-r--r--ports/ChangeLog.hppa37
-rw-r--r--ports/ChangeLog.ia6438
-rw-r--r--ports/ChangeLog.linux-generic9
-rw-r--r--ports/ChangeLog.m68k41
-rw-r--r--ports/ChangeLog.microblaze15
-rw-r--r--ports/ChangeLog.mips173
-rw-r--r--ports/ChangeLog.powerpc42
-rw-r--r--ports/ChangeLog.tile18
-rw-r--r--ports/README4
-rw-r--r--ports/sysdeps/aarch64/dl-irel.h22
-rw-r--r--ports/sysdeps/aarch64/dl-machine.h20
-rw-r--r--ports/sysdeps/aarch64/dl-trampoline.S28
-rw-r--r--ports/sysdeps/aarch64/fpu/fegetround.c1
-rw-r--r--ports/sysdeps/aarch64/libm-test-ulps4245
-rw-r--r--ports/sysdeps/aarch64/machine-gmon.h15
-rw-r--r--ports/sysdeps/alpha/alphaev67/ffs.S1
-rw-r--r--ports/sysdeps/alpha/configure2
-rw-r--r--ports/sysdeps/alpha/configure.ac (renamed from ports/sysdeps/alpha/configure.in)0
-rw-r--r--ports/sysdeps/alpha/ffs.S1
-rw-r--r--ports/sysdeps/alpha/fpu/fegetround.c1
-rw-r--r--ports/sysdeps/am33/fpu/fegetround.c1
-rw-r--r--ports/sysdeps/arm/__longjmp.S18
-rw-r--r--ports/sysdeps/arm/arm-features.h8
-rw-r--r--ports/sysdeps/arm/armv6t2/ffs.S1
-rw-r--r--[-rwxr-xr-x]ports/sysdeps/arm/armv7/configure2
-rw-r--r--ports/sysdeps/arm/armv7/configure.ac (renamed from ports/sysdeps/arm/armv7/configure.in)0
-rw-r--r--ports/sysdeps/arm/armv7/multiarch/memcpy_impl.S32
-rw-r--r--ports/sysdeps/arm/bits/atomic.h94
-rw-r--r--ports/sysdeps/arm/configure2
-rw-r--r--ports/sysdeps/arm/configure.ac (renamed from ports/sysdeps/arm/configure.in)0
-rw-r--r--ports/sysdeps/arm/fegetround.c1
-rw-r--r--ports/sysdeps/arm/include/bits/setjmp.h5
-rw-r--r--ports/sysdeps/arm/jmpbuf-unwind.h13
-rw-r--r--ports/sysdeps/arm/nptl/tls.h4
-rw-r--r--ports/sysdeps/arm/preconfigure4
-rw-r--r--ports/sysdeps/arm/preconfigure.ac (renamed from ports/sysdeps/arm/preconfigure.in)2
-rw-r--r--ports/sysdeps/arm/setjmp.S17
-rw-r--r--ports/sysdeps/arm/sysdep.h12
-rw-r--r--ports/sysdeps/hppa/configure2
-rw-r--r--ports/sysdeps/hppa/configure.ac (renamed from ports/sysdeps/hppa/configure.in)0
-rw-r--r--ports/sysdeps/hppa/dl-lookupcfg.h56
-rw-r--r--ports/sysdeps/hppa/dl-machine.h8
-rw-r--r--ports/sysdeps/hppa/fpu/fegetround.c1
-rw-r--r--ports/sysdeps/ia64/configure2
-rw-r--r--ports/sysdeps/ia64/configure.ac (renamed from ports/sysdeps/ia64/configure.in)0
-rw-r--r--ports/sysdeps/ia64/dl-lookupcfg.h40
-rw-r--r--ports/sysdeps/ia64/dl-machine.h8
-rw-r--r--ports/sysdeps/ia64/fpu/fegetround.c1
-rw-r--r--ports/sysdeps/ia64/fpu/printf_fphex.c10
-rw-r--r--ports/sysdeps/ia64/stackguard-macros.h3
-rw-r--r--ports/sysdeps/m68k/ffs.c1
-rw-r--r--ports/sysdeps/m68k/fpu/fegetround.c1
-rw-r--r--ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c8
-rw-r--r--ports/sysdeps/m68k/start.S21
-rw-r--r--ports/sysdeps/microblaze/fegetround.c1
-rw-r--r--ports/sysdeps/mips/bits/atomic.h2
-rw-r--r--ports/sysdeps/mips/bits/nan.h23
-rw-r--r--ports/sysdeps/mips/configure162
-rw-r--r--ports/sysdeps/mips/configure.ac15
-rw-r--r--ports/sysdeps/mips/configure.in6
-rw-r--r--ports/sysdeps/mips/dl-lookup.c5
-rw-r--r--ports/sysdeps/mips/dl-machine.h14
-rw-r--r--ports/sysdeps/mips/fpu/fegetround.c3
-rw-r--r--ports/sysdeps/mips/fpu/fesetround.c4
-rw-r--r--ports/sysdeps/mips/fpu_control.h33
-rw-r--r--ports/sysdeps/mips/math_private.h114
-rw-r--r--ports/sysdeps/mips/memset.S394
-rw-r--r--ports/sysdeps/mips/mips32/fpu/e_sqrt.c1
-rw-r--r--ports/sysdeps/mips/mips32/fpu/e_sqrtf.c1
-rw-r--r--ports/sysdeps/mips/mips64/memset.S90
-rw-r--r--ports/sysdeps/mips/mips64/n32/fpu/e_sqrt.c1
-rw-r--r--ports/sysdeps/mips/mips64/n32/fpu/e_sqrtf.c1
-rw-r--r--ports/sysdeps/mips/mips64/n64/fpu/e_sqrt.c1
-rw-r--r--ports/sysdeps/mips/mips64/n64/fpu/e_sqrtf.c1
-rw-r--r--ports/sysdeps/mips/mips64/soft-fp/sfp-machine.h18
-rw-r--r--ports/sysdeps/mips/shlib-versions4
-rw-r--r--ports/sysdeps/mips/soft-fp/sfp-machine.h18
-rw-r--r--ports/sysdeps/powerpc/nofpu/sim-full.c46
-rw-r--r--ports/sysdeps/powerpc/nofpu/soft-supp.h41
-rw-r--r--ports/sysdeps/powerpc/powerpc32/Makefile8
-rw-r--r--ports/sysdeps/tile/ffs.c1
-rw-r--r--ports/sysdeps/tile/stackguard-macros.h6
-rw-r--r--ports/sysdeps/unix/alpha/sysdep.h52
-rw-r--r--ports/sysdeps/unix/sysv/linux/aarch64/configure2
-rw-r--r--ports/sysdeps/unix/sysv/linux/aarch64/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/aarch64/configure.in)0
-rw-r--r--ports/sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h31
-rw-r--r--ports/sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h (renamed from sysdeps/unix/bsd/clock.c)40
-rw-r--r--ports/sysdeps/unix/sysv/linux/aarch64/sysdep.h2
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h1
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/bits/ipc.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/bits/mman.h102
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/bits/msq.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/bits/sem.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/bits/shm.h12
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/bits/stat.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/configure2
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/alpha/configure.in)0
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/kernel_stat.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/nptl/pt-vfork.S2
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/nptl/vfork.S2
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S18
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/xstatconv.c14
-rw-r--r--ports/sysdeps/unix/sysv/linux/am33/configure2
-rw-r--r--ports/sysdeps/unix/sysv/linux/am33/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/am33/configure.in)0
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S2
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/bits/shm.h18
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/configure4
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/arm/configure.in)2
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/nptl/configure2
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/nptl/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/arm/nptl/configure.in)0
-rw-r--r--ports/sysdeps/unix/sysv/linux/arm/sysdep.h42
-rw-r--r--ports/sysdeps/unix/sysv/linux/generic/bits/msq.h10
-rw-r--r--ports/sysdeps/unix/sysv/linux/generic/bits/sem.h8
-rw-r--r--ports/sysdeps/unix/sysv/linux/generic/bits/shm.h18
-rw-r--r--ports/sysdeps/unix/sysv/linux/generic/bits/stat.h8
-rw-r--r--ports/sysdeps/unix/sysv/linux/generic/bits/statfs.h8
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/Versions3
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h1
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/bits/msq.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/bits/sem.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h12
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/kernel_stat.h10
-rw-r--r--ports/sysdeps/unix/sysv/linux/hppa/syscalls.list1
-rw-r--r--ports/sysdeps/unix/sysv/linux/ia64/bits/ipc.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/ia64/bits/msq.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/ia64/bits/sem.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/ia64/bits/shm.h12
-rw-r--r--ports/sysdeps/unix/sysv/linux/ia64/bits/stat.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/ia64/configure2
-rw-r--r--ports/sysdeps/unix/sysv/linux/ia64/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/ia64/configure.in)0
-rw-r--r--ports/sysdeps/unix/sysv/linux/m68k/bits/stat.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/m68k/configure2
-rw-r--r--ports/sysdeps/unix/sysv/linux/m68k/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/m68k/configure.in)0
-rw-r--r--ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h6
-rw-r--r--ports/sysdeps/unix/sysv/linux/m68k/mmap64.c5
-rw-r--r--ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h29
-rw-r--r--ports/sysdeps/unix/sysv/linux/microblaze/bits/stat.h12
-rw-r--r--ports/sysdeps/unix/sysv/linux/microblaze/configure2
-rw-r--r--ports/sysdeps/unix/sysv/linux/microblaze/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/microblaze/configure.in)0
-rw-r--r--ports/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/Makefile90
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/bits/ipc.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/bits/msq.h16
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/bits/resource.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/bits/sem.h4
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/bits/shm.h12
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/configure173
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/mips/configure.in)23
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/dl-cache.h26
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/getrlimit64.c66
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/mips32/Versions6
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist4
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/mips64/configure2
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/mips64/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/mips/mips64/configure.in)0
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions6
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist4
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/readelflib.c35
-rw-r--r--ports/sysdeps/unix/sysv/linux/mips/setrlimit64.c63
-rw-r--r--ports/sysdeps/unix/sysv/linux/tile/configure2
-rw-r--r--ports/sysdeps/unix/sysv/linux/tile/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/tile/configure.in)0
-rw-r--r--ports/sysdeps/unix/sysv/linux/tile/tilegx/configure2
-rw-r--r--ports/sysdeps/unix/sysv/linux/tile/tilegx/configure.ac (renamed from ports/sysdeps/unix/sysv/linux/tile/tilegx/configure.in)0
-rw-r--r--posix/glob.c11
-rw-r--r--posix/tst-gnuglob.c10
-rw-r--r--posix/unistd.h29
-rw-r--r--resolv/netdb.h2
-rw-r--r--resolv/res_libc.c2
-rw-r--r--resolv/res_send.c2
-rw-r--r--rt/aio.h4
-rw-r--r--rt/tst-shm.c64
-rwxr-xr-xscripts/bench.pl167
-rwxr-xr-xscripts/config.guess30
-rwxr-xr-xscripts/config.sub17
-rw-r--r--setjmp/setjmp.h9
-rw-r--r--shlib-versions1
-rw-r--r--signal/signal.h22
-rw-r--r--soft-fp/adddf3.c15
-rw-r--r--soft-fp/addsf3.c15
-rw-r--r--soft-fp/addtf3.c15
-rw-r--r--soft-fp/divdf3.c15
-rw-r--r--soft-fp/divsf3.c15
-rw-r--r--soft-fp/divtf3.c15
-rw-r--r--soft-fp/double.h398
-rw-r--r--soft-fp/eqdf2.c19
-rw-r--r--soft-fp/eqsf2.c19
-rw-r--r--soft-fp/eqtf2.c19
-rw-r--r--soft-fp/extenddftf2.c17
-rw-r--r--soft-fp/extended.h745
-rw-r--r--soft-fp/extendsfdf2.c17
-rw-r--r--soft-fp/extendsftf2.c17
-rw-r--r--soft-fp/extendxftf2.c53
-rw-r--r--soft-fp/fixdfdi.c10
-rw-r--r--soft-fp/fixdfsi.c10
-rw-r--r--soft-fp/fixdfti.c46
-rw-r--r--soft-fp/fixsfdi.c10
-rw-r--r--soft-fp/fixsfsi.c10
-rw-r--r--soft-fp/fixsfti.c46
-rw-r--r--soft-fp/fixtfdi.c10
-rw-r--r--soft-fp/fixtfsi.c10
-rw-r--r--soft-fp/fixtfti.c46
-rw-r--r--soft-fp/fixunsdfdi.c10
-rw-r--r--soft-fp/fixunsdfsi.c10
-rw-r--r--soft-fp/fixunsdfti.c46
-rw-r--r--soft-fp/fixunssfdi.c10
-rw-r--r--soft-fp/fixunssfsi.c10
-rw-r--r--soft-fp/fixunssfti.c46
-rw-r--r--soft-fp/fixunstfdi.c10
-rw-r--r--soft-fp/fixunstfsi.c10
-rw-r--r--soft-fp/fixunstfti.c46
-rw-r--r--soft-fp/floatdidf.c10
-rw-r--r--soft-fp/floatdisf.c10
-rw-r--r--soft-fp/floatditf.c12
-rw-r--r--soft-fp/floatsidf.c12
-rw-r--r--soft-fp/floatsisf.c10
-rw-r--r--soft-fp/floatsitf.c12
-rw-r--r--soft-fp/floattidf.c46
-rw-r--r--soft-fp/floattisf.c46
-rw-r--r--soft-fp/floattitf.c46
-rw-r--r--soft-fp/floatundidf.c10
-rw-r--r--soft-fp/floatundisf.c10
-rw-r--r--soft-fp/floatunditf.c11
-rw-r--r--soft-fp/floatunsidf.c12
-rw-r--r--soft-fp/floatunsisf.c10
-rw-r--r--soft-fp/floatunsitf.c11
-rw-r--r--soft-fp/floatuntidf.c46
-rw-r--r--soft-fp/floatuntisf.c46
-rw-r--r--soft-fp/floatuntitf.c46
-rw-r--r--soft-fp/fmadf4.c15
-rw-r--r--soft-fp/fmasf4.c15
-rw-r--r--soft-fp/fmatf4.c15
-rw-r--r--soft-fp/gedf2.c19
-rw-r--r--soft-fp/gesf2.c19
-rw-r--r--soft-fp/getf2.c19
-rw-r--r--soft-fp/ledf2.c19
-rw-r--r--soft-fp/lesf2.c19
-rw-r--r--soft-fp/letf2.c19
-rw-r--r--soft-fp/muldf3.c15
-rw-r--r--soft-fp/mulsf3.c15
-rw-r--r--soft-fp/multf3.c15
-rw-r--r--soft-fp/negdf2.c15
-rw-r--r--soft-fp/negsf2.c15
-rw-r--r--soft-fp/negtf2.c15
-rw-r--r--soft-fp/op-1.h419
-rw-r--r--soft-fp/op-2.h987
-rw-r--r--soft-fp/op-4.h1201
-rw-r--r--soft-fp/op-8.h135
-rw-r--r--soft-fp/op-common.h2878
-rw-r--r--soft-fp/quad.h436
-rw-r--r--soft-fp/single.h197
-rw-r--r--soft-fp/soft-fp.h199
-rw-r--r--soft-fp/sqrtdf2.c12
-rw-r--r--soft-fp/sqrtsf2.c12
-rw-r--r--soft-fp/sqrttf2.c12
-rw-r--r--soft-fp/subdf3.c15
-rw-r--r--soft-fp/subsf3.c15
-rw-r--r--soft-fp/subtf3.c15
-rw-r--r--soft-fp/truncdfsf2.c15
-rw-r--r--soft-fp/trunctfdf2.c15
-rw-r--r--soft-fp/trunctfsf2.c15
-rw-r--r--soft-fp/trunctfxf2.c53
-rw-r--r--soft-fp/unorddf2.c17
-rw-r--r--soft-fp/unordsf2.c18
-rw-r--r--soft-fp/unordtf2.c18
-rw-r--r--stdio-common/Makefile1
-rw-r--r--stdio-common/printf_fp.c3
-rw-r--r--stdio-common/printf_fphex.c14
-rw-r--r--stdio-common/printf_size.c12
-rw-r--r--stdio-common/psiginfo-data.h2
-rw-r--r--stdio-common/tst-long-dbl-fphex.c4
-rw-r--r--stdio-common/tst-sscanf.c36
-rw-r--r--stdio-common/vfprintf.c12
-rw-r--r--stdio-common/vfscanf.c4
-rw-r--r--stdlib/div.c22
-rw-r--r--stdlib/isomac.c1
-rw-r--r--stdlib/ldiv.c22
-rw-r--r--stdlib/lldiv.c22
-rw-r--r--stdlib/longlong.h57
-rw-r--r--stdlib/strfmon_l.c22
-rw-r--r--stdlib/strtod_l.c4
-rw-r--r--stdlib/tst-strtod-round-data8
-rw-r--r--stdlib/tst-strtod-round.c288
-rw-r--r--string/Makefile7
-rw-r--r--string/ffs.c1
-rw-r--r--string/memchr.c6
-rw-r--r--string/memcmp.c6
-rw-r--r--string/mempcpy.c6
-rw-r--r--string/rawmemchr.c5
-rw-r--r--string/strchrnul.c6
-rw-r--r--string/strcoll_l.c274
-rw-r--r--string/test-bcopy-ifunc.c20
-rw-r--r--string/test-bzero-ifunc.c20
-rw-r--r--string/test-memccpy-ifunc.c20
-rw-r--r--string/test-memchr-ifunc.c20
-rw-r--r--string/test-memcmp-ifunc.c20
-rw-r--r--string/test-memcpy-ifunc.c20
-rw-r--r--string/test-memcpy.c4
-rw-r--r--string/test-memmem-ifunc.c20
-rw-r--r--string/test-memmove-ifunc.c20
-rw-r--r--string/test-mempcpy-ifunc.c20
-rw-r--r--string/test-memrchr.c169
-rw-r--r--string/test-memset-ifunc.c20
-rw-r--r--string/test-stpcpy-ifunc.c20
-rw-r--r--string/test-stpncpy-ifunc.c20
-rw-r--r--string/test-strcasecmp-ifunc.c20
-rw-r--r--string/test-strcasestr-ifunc.c20
-rw-r--r--string/test-strcat-ifunc.c20
-rw-r--r--string/test-strchr-ifunc.c20
-rw-r--r--string/test-strcmp-ifunc.c20
-rw-r--r--string/test-strcpy-ifunc.c20
-rw-r--r--string/test-strcspn-ifunc.c20
-rw-r--r--string/test-string.h1
-rw-r--r--string/test-strlen-ifunc.c20
-rw-r--r--string/test-strncasecmp-ifunc.c20
-rw-r--r--string/test-strncat-ifunc.c20
-rw-r--r--string/test-strncmp-ifunc.c20
-rw-r--r--string/test-strncpy-ifunc.c20
-rw-r--r--string/test-strnlen-ifunc.c20
-rw-r--r--string/test-strpbrk-ifunc.c20
-rw-r--r--string/test-strrchr-ifunc.c20
-rw-r--r--string/test-strspn-ifunc.c20
-rw-r--r--string/test-strstr-ifunc.c20
-rw-r--r--string/tester.c6
-rw-r--r--string/tst-strcoll-overflow.c61
-rw-r--r--string/wordcopy.c36
-rw-r--r--sunrpc/Makefile2
-rw-r--r--sunrpc/rpc/types.h5
-rw-r--r--sunrpc/rpc_main.c3
-rw-r--r--sysdeps/generic/ldconfig.h39
-rw-r--r--sysdeps/generic/ldsodefs.h21
-rw-r--r--sysdeps/generic/math_private.h6
-rw-r--r--sysdeps/generic/stackguard-macros.h8
-rw-r--r--sysdeps/generic/sys/swap.h2
-rw-r--r--sysdeps/gnu/Makefile2
-rw-r--r--sysdeps/gnu/bits/utmp.h2
-rw-r--r--sysdeps/gnu/bits/utmpx.h2
-rw-r--r--sysdeps/gnu/configure2
-rw-r--r--sysdeps/gnu/configure.ac (renamed from sysdeps/gnu/configure.in)0
-rw-r--r--sysdeps/gnu/netinet/ip_icmp.h2
-rw-r--r--sysdeps/gnu/netinet/tcp.h120
-rw-r--r--sysdeps/gnu/netinet/udp.h33
-rw-r--r--sysdeps/i386/configure2
-rw-r--r--sysdeps/i386/configure.ac (renamed from sysdeps/i386/configure.in)0
-rw-r--r--sysdeps/i386/ffs.c1
-rw-r--r--sysdeps/i386/fpu/e_expl.S15
-rw-r--r--sysdeps/i386/fpu/e_pow.S9
-rw-r--r--sysdeps/i386/fpu/e_powf.S5
-rw-r--r--sysdeps/i386/fpu/e_powl.S9
-rw-r--r--sysdeps/i386/fpu/e_sqrt.S10
-rw-r--r--sysdeps/i386/fpu/fegetround.c1
-rw-r--r--sysdeps/i386/fpu/libm-test-ulps3758
-rw-r--r--sysdeps/i386/fpu/s_expm1.S11
-rw-r--r--sysdeps/i386/fpu/s_expm1f.S11
-rw-r--r--sysdeps/i386/fpu/w_sqrt.c8
-rw-r--r--sysdeps/i386/i686/ffs.c1
-rw-r--r--sysdeps/i386/i686/multiarch/Makefile7
-rw-r--r--sysdeps/i386/i686/multiarch/ifunc-impl-list.c11
-rw-r--r--sysdeps/i386/i686/multiarch/strcasestr-nonascii.c2
-rw-r--r--sysdeps/i386/i686/multiarch/strcasestr.c1
-rw-r--r--sysdeps/i386/i686/multiarch/strstr-c.c29
-rw-r--r--sysdeps/i386/i686/multiarch/strstr.c1
-rw-r--r--sysdeps/i386/stackguard-macros.h8
-rw-r--r--sysdeps/ieee754/dbl-64/Makefile1
-rw-r--r--sysdeps/ieee754/dbl-64/MathLib.h30
-rw-r--r--sysdeps/ieee754/dbl-64/dbl2mpn.c8
-rw-r--r--sysdeps/ieee754/dbl-64/dla.h86
-rw-r--r--sysdeps/ieee754/dbl-64/dosincos.c254
-rw-r--r--sysdeps/ieee754/dbl-64/e_acosh.c55
-rw-r--r--sysdeps/ieee754/dbl-64/e_atan2.c27
-rw-r--r--sysdeps/ieee754/dbl-64/e_cosh.c72
-rw-r--r--sysdeps/ieee754/dbl-64/e_exp.c417
-rw-r--r--sysdeps/ieee754/dbl-64/e_exp2.c8
-rw-r--r--sysdeps/ieee754/dbl-64/e_fmod.c225
-rw-r--r--sysdeps/ieee754/dbl-64/e_gamma_r.c2
-rw-r--r--sysdeps/ieee754/dbl-64/e_hypot.c166
-rw-r--r--sysdeps/ieee754/dbl-64/e_ilogb.c53
-rw-r--r--sysdeps/ieee754/dbl-64/e_j0.c394
-rw-r--r--sysdeps/ieee754/dbl-64/e_j1.c366
-rw-r--r--sysdeps/ieee754/dbl-64/e_jn.c478
-rw-r--r--sysdeps/ieee754/dbl-64/e_log.c23
-rw-r--r--sysdeps/ieee754/dbl-64/e_log10.c16
-rw-r--r--sysdeps/ieee754/dbl-64/e_log2.c28
-rw-r--r--sysdeps/ieee754/dbl-64/e_pow.c573
-rw-r--r--sysdeps/ieee754/dbl-64/e_rem_pio2.c215
-rw-r--r--sysdeps/ieee754/dbl-64/e_remainder.c180
-rw-r--r--sysdeps/ieee754/dbl-64/e_sinh.c69
-rw-r--r--sysdeps/ieee754/dbl-64/e_sqrt.c125
-rw-r--r--sysdeps/ieee754/dbl-64/halfulp.c129
-rw-r--r--sysdeps/ieee754/dbl-64/k_rem_pio2.c315
-rw-r--r--sysdeps/ieee754/dbl-64/mpa-arch.h20
-rw-r--r--sysdeps/ieee754/dbl-64/mpa.c29
-rw-r--r--sysdeps/ieee754/dbl-64/mpatan.c1
-rw-r--r--sysdeps/ieee754/dbl-64/mpn2dbl.c2
-rw-r--r--sysdeps/ieee754/dbl-64/mptan.c1
-rw-r--r--sysdeps/ieee754/dbl-64/mydefs.h9
-rw-r--r--sysdeps/ieee754/dbl-64/s_asinh.c54
-rw-r--r--sysdeps/ieee754/dbl-64/s_atan.c21
-rw-r--r--sysdeps/ieee754/dbl-64/s_cbrt.c19
-rw-r--r--sysdeps/ieee754/dbl-64/s_ceil.c91
-rw-r--r--sysdeps/ieee754/dbl-64/s_copysign.c13
-rw-r--r--sysdeps/ieee754/dbl-64/s_erf.c534
-rw-r--r--sysdeps/ieee754/dbl-64/s_expm1.c227
-rw-r--r--sysdeps/ieee754/dbl-64/s_fabs.c11
-rw-r--r--sysdeps/ieee754/dbl-64/s_finite.c13
-rw-r--r--sysdeps/ieee754/dbl-64/s_floor.c91
-rw-r--r--sysdeps/ieee754/dbl-64/s_frexp.c37
-rw-r--r--sysdeps/ieee754/dbl-64/s_isinf.c10
-rw-r--r--sysdeps/ieee754/dbl-64/s_isinf_ns.c6
-rw-r--r--sysdeps/ieee754/dbl-64/s_isnan.c15
-rw-r--r--sysdeps/ieee754/dbl-64/s_llround.c2
-rw-r--r--sysdeps/ieee754/dbl-64/s_log1p.c171
-rw-r--r--sysdeps/ieee754/dbl-64/s_logb.c2
-rw-r--r--sysdeps/ieee754/dbl-64/s_lrint.c2
-rw-r--r--sysdeps/ieee754/dbl-64/s_modf.c84
-rw-r--r--sysdeps/ieee754/dbl-64/s_nearbyint.c63
-rw-r--r--sysdeps/ieee754/dbl-64/s_remquo.c16
-rw-r--r--sysdeps/ieee754/dbl-64/s_rint.c46
-rw-r--r--sysdeps/ieee754/dbl-64/s_scalbln.c61
-rw-r--r--sysdeps/ieee754/dbl-64/s_scalbn.c61
-rw-r--r--sysdeps/ieee754/dbl-64/s_sin.c645
-rw-r--r--sysdeps/ieee754/dbl-64/s_sincos.c2
-rw-r--r--sysdeps/ieee754/dbl-64/s_tan.c10
-rw-r--r--sysdeps/ieee754/dbl-64/s_tanh.c68
-rw-r--r--sysdeps/ieee754/dbl-64/sincos32.c523
-rw-r--r--sysdeps/ieee754/dbl-64/slowexp.c13
-rw-r--r--sysdeps/ieee754/dbl-64/slowpow.c14
-rw-r--r--sysdeps/ieee754/dbl-64/usncs.h63
-rw-r--r--sysdeps/ieee754/flt-32/e_jnf.c4
-rw-r--r--sysdeps/ieee754/flt-32/e_lgammaf_r.c4
-rw-r--r--sysdeps/ieee754/flt-32/s_erff.c19
-rw-r--r--sysdeps/ieee754/flt-32/s_finitef.c7
-rw-r--r--sysdeps/ieee754/k_standard.c16
-rw-r--r--sysdeps/ieee754/ldbl-128/e_hypotl.c11
-rw-r--r--sysdeps/ieee754/ldbl-128/e_jnl.c2
-rw-r--r--sysdeps/ieee754/ldbl-128/e_logl.c5
-rw-r--r--sysdeps/ieee754/ldbl-128/printf_fphex.c14
-rw-r--r--sysdeps/ieee754/ldbl-128/s_erfl.c13
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_acoshl.c8
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_acosl.c38
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_asinl.c28
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_atan2l.c14
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_atanhl.c6
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_coshl.c4
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_exp10l.c6
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_expl.c61
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_fmodl.c125
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c7
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_hypotl.c88
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c16
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_jnl.c34
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_log10l.c8
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_log2l.c8
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_logl.c32
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_powl.c136
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c7
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_remainderl.c18
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_sinhl.c4
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c51
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/ieee754.h98
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/k_cosl.c10
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/k_sincosl.c12
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/k_sinl.c8
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/k_tanl.c34
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c46
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/math_ldbl.h206
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c72
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/printf_fphex.c42
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_asinhl.c5
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_atanl.c15
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_cosl.c4
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_erfl.c68
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_expm1l.c12
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_fabsl.c10
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_finitel.c12
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c5
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_frexpl.c19
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c15
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_isinfl.c17
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_isnanl.c14
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c7
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_llrintl.c2
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_log1pl.c11
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_logbl.c8
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_lrintl.c2
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_modfl.c27
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c62
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c57
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c13
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c8
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_remquol.c16
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_rintl.c2
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c21
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c21
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_signbitl.c4
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_sincosl.c4
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_sinl.c4
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_tanhl.c8
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/s_tanl.c4
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/strtold_l.c10
-rw-r--r--sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c26
-rw-r--r--sysdeps/ieee754/ldbl-96/e_atan2l.c125
-rw-r--r--sysdeps/ieee754/ldbl-96/e_hypotl.c11
-rw-r--r--sysdeps/ieee754/ldbl-96/e_ilogbl.c59
-rw-r--r--sysdeps/ieee754/ldbl-96/e_jnl.c3
-rw-r--r--sysdeps/ieee754/ldbl-96/e_remainderl.c72
-rw-r--r--sysdeps/ieee754/ldbl-96/printf_fphex.c8
-rw-r--r--sysdeps/ieee754/ldbl-96/s_ceill.c85
-rw-r--r--sysdeps/ieee754/ldbl-96/s_erfl.c13
-rw-r--r--sysdeps/ieee754/ldbl-96/s_fabsl.c35
-rw-r--r--sysdeps/ieee754/ldbl-96/s_finitel.c36
-rw-r--r--sysdeps/ieee754/ldbl-96/s_floorl.c86
-rw-r--r--sysdeps/ieee754/ldbl-96/s_isinfl.c30
-rw-r--r--sysdeps/ieee754/ldbl-96/s_isnanl.c40
-rw-r--r--sysdeps/ieee754/ldbl-96/s_logbl.c51
-rw-r--r--sysdeps/ieee754/ldbl-96/s_nearbyintl.c88
-rw-r--r--sysdeps/ieee754/ldbl-96/s_nextafterl.c96
-rw-r--r--sysdeps/ieee754/ldbl-96/s_rintl.c82
-rw-r--r--sysdeps/ieee754/ldbl-96/s_scalbnl.c61
-rw-r--r--sysdeps/ieee754/ldbl-96/s_truncl.c56
-rw-r--r--sysdeps/ieee754/ldbl-opt/configure2
-rw-r--r--sysdeps/ieee754/ldbl-opt/configure.ac (renamed from sysdeps/ieee754/ldbl-opt/configure.in)0
-rw-r--r--sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h2
-rw-r--r--sysdeps/mach/configure2
-rw-r--r--sysdeps/mach/configure.ac (renamed from sysdeps/mach/configure.in)0
-rw-r--r--sysdeps/mach/hurd/configure2
-rw-r--r--sysdeps/mach/hurd/configure.ac (renamed from sysdeps/mach/hurd/configure.in)0
-rw-r--r--sysdeps/mach/hurd/dl-sysdep.h7
-rw-r--r--sysdeps/mach/hurd/fork.c15
-rw-r--r--sysdeps/mach/hurd/i386/tls.h1
-rw-r--r--sysdeps/posix/dirstream.h9
-rw-r--r--sysdeps/posix/getaddrinfo.c179
-rw-r--r--sysdeps/powerpc/bits/fenv.h6
-rw-r--r--sysdeps/powerpc/bits/link.h46
-rw-r--r--sysdeps/powerpc/bits/mathinline.h26
-rw-r--r--sysdeps/powerpc/configure2
-rw-r--r--sysdeps/powerpc/configure.ac (renamed from sysdeps/powerpc/configure.in)0
-rw-r--r--sysdeps/powerpc/ffs.c1
-rw-r--r--sysdeps/powerpc/fpu/e_sqrt.c2
-rw-r--r--sysdeps/powerpc/fpu/e_sqrtf.c2
-rw-r--r--sysdeps/powerpc/fpu/fclrexcpt.c4
-rw-r--r--sysdeps/powerpc/fpu/fe_nomask.c5
-rw-r--r--sysdeps/powerpc/fpu/fedisblxcpt.c10
-rw-r--r--sysdeps/powerpc/fpu/feenablxcpt.c12
-rw-r--r--sysdeps/powerpc/fpu/fegetexcept.c10
-rw-r--r--sysdeps/powerpc/fpu/fegetround.c1
-rw-r--r--sysdeps/powerpc/fpu/feholdexcpt.c5
-rw-r--r--sysdeps/powerpc/fpu/fenv_libc.h8
-rw-r--r--sysdeps/powerpc/fpu/fenv_private.h274
-rw-r--r--sysdeps/powerpc/fpu/fesetenv.c6
-rw-r--r--sysdeps/powerpc/fpu/feupdateenv.c8
-rw-r--r--sysdeps/powerpc/fpu/fgetexcptflg.c2
-rw-r--r--sysdeps/powerpc/fpu/fraiseexcpt.c12
-rw-r--r--sysdeps/powerpc/fpu/fsetexcptflg.c8
-rw-r--r--sysdeps/powerpc/fpu/ftestexcept.c2
-rw-r--r--sysdeps/powerpc/fpu/libm-test-ulps4849
-rw-r--r--sysdeps/powerpc/fpu/math_private.h1
-rw-r--r--sysdeps/powerpc/fpu/s_float_bitwise.h54
-rw-r--r--sysdeps/powerpc/fpu/s_llround.c33
-rw-r--r--sysdeps/powerpc/fpu/s_llroundf.c33
-rw-r--r--sysdeps/powerpc/fpu/tst-setcontext-fpscr.c87
-rw-r--r--sysdeps/powerpc/fpu_control.h69
-rw-r--r--sysdeps/powerpc/jmpbuf-offsets.h6
-rw-r--r--sysdeps/powerpc/ldsodefs.h18
-rw-r--r--sysdeps/powerpc/longjmp.c6
-rw-r--r--sysdeps/powerpc/nofpu/Makefile (renamed from ports/sysdeps/powerpc/nofpu/Makefile)9
-rw-r--r--sysdeps/powerpc/nofpu/Subdirs (renamed from ports/sysdeps/powerpc/nofpu/Subdirs)0
-rw-r--r--sysdeps/powerpc/nofpu/Versions (renamed from ports/sysdeps/powerpc/nofpu/Versions)15
-rw-r--r--sysdeps/powerpc/nofpu/atomic-feclearexcept.c28
-rw-r--r--sysdeps/powerpc/nofpu/atomic-feholdexcept.c38
-rw-r--r--sysdeps/powerpc/nofpu/atomic-feupdateenv.c37
-rw-r--r--sysdeps/powerpc/nofpu/fclrexcpt.c (renamed from ports/sysdeps/powerpc/nofpu/fclrexcpt.c)3
-rw-r--r--sysdeps/powerpc/nofpu/fedisblxcpt.c (renamed from ports/sysdeps/powerpc/nofpu/fedisblxcpt.c)6
-rw-r--r--sysdeps/powerpc/nofpu/feenablxcpt.c (renamed from ports/sysdeps/powerpc/nofpu/feenablxcpt.c)9
-rw-r--r--sysdeps/powerpc/nofpu/fegetenv.c (renamed from ports/sysdeps/powerpc/nofpu/fegetenv.c)10
-rw-r--r--sysdeps/powerpc/nofpu/fegetexcept.c (renamed from ports/sysdeps/powerpc/nofpu/fegetexcept.c)2
-rw-r--r--sysdeps/powerpc/nofpu/fegetround.c (renamed from ports/sysdeps/powerpc/nofpu/fegetround.c)3
-rw-r--r--sysdeps/powerpc/nofpu/feholdexcpt.c (renamed from ports/sysdeps/powerpc/nofpu/feholdexcpt.c)0
-rw-r--r--sysdeps/powerpc/nofpu/fenv_const.c (renamed from ports/sysdeps/powerpc/nofpu/fenv_const.c)0
-rw-r--r--sysdeps/powerpc/nofpu/fenv_libc.h (renamed from ports/sysdeps/powerpc/nofpu/fenv_libc.h)3
-rw-r--r--sysdeps/powerpc/nofpu/fesetenv.c (renamed from ports/sysdeps/powerpc/nofpu/fesetenv.c)10
-rw-r--r--sysdeps/powerpc/nofpu/fesetround.c (renamed from ports/sysdeps/powerpc/nofpu/fesetround.c)3
-rw-r--r--sysdeps/powerpc/nofpu/feupdateenv.c (renamed from ports/sysdeps/powerpc/nofpu/feupdateenv.c)7
-rw-r--r--sysdeps/powerpc/nofpu/fgetexcptflg.c (renamed from ports/sysdeps/powerpc/nofpu/fgetexcptflg.c)2
-rw-r--r--sysdeps/powerpc/nofpu/flt-rounds.c38
-rw-r--r--sysdeps/powerpc/nofpu/fraiseexcpt.c (renamed from ports/sysdeps/powerpc/nofpu/fraiseexcpt.c)5
-rw-r--r--sysdeps/powerpc/nofpu/fsetexcptflg.c (renamed from ports/sysdeps/powerpc/nofpu/fsetexcptflg.c)4
-rw-r--r--sysdeps/powerpc/nofpu/ftestexcept.c (renamed from ports/sysdeps/powerpc/nofpu/ftestexcept.c)2
-rw-r--r--sysdeps/powerpc/nofpu/get-rounding-mode.h (renamed from ports/sysdeps/powerpc/nofpu/get-rounding-mode.h)2
-rw-r--r--sysdeps/powerpc/nofpu/libm-test-ulps (renamed from ports/sysdeps/powerpc/nofpu/libm-test-ulps)0
-rw-r--r--sysdeps/powerpc/nofpu/shlib-versions (renamed from ports/sysdeps/powerpc/nofpu/shlib-versions)0
-rw-r--r--sysdeps/powerpc/nofpu/sim-full.c57
-rw-r--r--sysdeps/powerpc/nofpu/soft-supp.h63
-rw-r--r--sysdeps/powerpc/novmx-longjmp.c12
-rw-r--r--sysdeps/powerpc/power4/wordcopy.c (renamed from sysdeps/powerpc/powerpc32/power4/wordcopy.c)36
-rw-r--r--sysdeps/powerpc/power6/wcschr.c (renamed from sysdeps/powerpc/powerpc32/power6/wcschr.c)9
-rw-r--r--sysdeps/powerpc/power6/wcscpy.c (renamed from sysdeps/powerpc/powerpc32/power6/wcscpy.c)9
-rw-r--r--sysdeps/powerpc/power6/wcsrchr.c (renamed from sysdeps/powerpc/powerpc32/power6/wcsrchr.c)9
-rw-r--r--sysdeps/powerpc/power6/wordcopy.c (renamed from sysdeps/powerpc/powerpc32/power6/wordcopy.c)44
-rw-r--r--sysdeps/powerpc/power7/fpu/s_logb.c (renamed from sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c)0
-rw-r--r--sysdeps/powerpc/power7/fpu/s_logbf.c (renamed from sysdeps/powerpc/powerpc32/power7/fpu/s_logbf.c)0
-rw-r--r--sysdeps/powerpc/power7/fpu/s_logbl.c (renamed from sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c)11
-rw-r--r--sysdeps/powerpc/powerpc32/405/memcmp.S (renamed from ports/sysdeps/powerpc/powerpc32/405/memcmp.S)0
-rw-r--r--sysdeps/powerpc/powerpc32/405/memcpy.S (renamed from ports/sysdeps/powerpc/powerpc32/405/memcpy.S)0
-rw-r--r--sysdeps/powerpc/powerpc32/405/memset.S (renamed from ports/sysdeps/powerpc/powerpc32/405/memset.S)0
-rw-r--r--sysdeps/powerpc/powerpc32/405/strcmp.S (renamed from ports/sysdeps/powerpc/powerpc32/405/strcmp.S)0
-rw-r--r--sysdeps/powerpc/powerpc32/405/strcpy.S (renamed from ports/sysdeps/powerpc/powerpc32/405/strcpy.S)0
-rw-r--r--sysdeps/powerpc/powerpc32/405/strlen.S (renamed from ports/sysdeps/powerpc/powerpc32/405/strlen.S)0
-rw-r--r--sysdeps/powerpc/powerpc32/405/strncmp.S (renamed from ports/sysdeps/powerpc/powerpc32/405/strncmp.S)0
-rw-r--r--sysdeps/powerpc/powerpc32/440/Implies (renamed from ports/sysdeps/powerpc/powerpc32/440/Implies)0
-rw-r--r--sysdeps/powerpc/powerpc32/464/Implies (renamed from ports/sysdeps/powerpc/powerpc32/464/Implies)0
-rw-r--r--sysdeps/powerpc/powerpc32/476/Implies (renamed from ports/sysdeps/powerpc/powerpc32/476/Implies)0
-rw-r--r--sysdeps/powerpc/powerpc32/476/memset.S (renamed from ports/sysdeps/powerpc/powerpc32/476/memset.S)0
-rw-r--r--sysdeps/powerpc/powerpc32/Makefile10
-rw-r--r--sysdeps/powerpc/powerpc32/__longjmp-common.S55
-rw-r--r--sysdeps/powerpc/powerpc32/__longjmp.S7
-rw-r--r--sysdeps/powerpc/powerpc32/bsd-_setjmp.S4
-rw-r--r--sysdeps/powerpc/powerpc32/bsd-setjmp.S4
-rw-r--r--sysdeps/powerpc/powerpc32/configure2
-rw-r--r--sysdeps/powerpc/powerpc32/configure.ac (renamed from sysdeps/powerpc/powerpc32/configure.in)0
-rw-r--r--sysdeps/powerpc/powerpc32/dl-machine.c21
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/Makefile9
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feclearexcept.c50
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feholdexcept.c55
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feupdateenv.c46
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fclrexcpt.c53
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fe_note_change.c39
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fedisblxcpt.c54
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/feenablxcpt.c54
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fegetenv.c (renamed from sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c)54
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fegetexcept.c (renamed from sysdeps/unix/bsd/setuid.c)30
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fegetround.c (renamed from sysdeps/unix/bsd/setegid.c)22
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/feholdexcpt.c57
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fenv_const.c41
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fenv_libc.h102
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fesetenv.c49
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fesetround.c35
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/feupdateenv.c47
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_from_prctl.c42
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_from_spe.c41
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_to_prctl.c42
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_to_spe.c41
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fgetexcptflg.c (renamed from sysdeps/powerpc/fpu/w_sqrtf.c)43
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/flt-rounds.c39
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcept-soft.c25
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcpt.c40
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/fsetexcptflg.c55
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/ftestexcept.c31
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/get-rounding-mode.h4
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/s_fabsf.S27
-rw-r--r--sysdeps/powerpc/powerpc32/e500/nofpu/spe-raise.c53
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S21
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/__longjmp.S11
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_copysign.S2
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_copysignl.S2
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_isnan.S2
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_lrint.S4
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_lround.S2
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/s_roundf.S3
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/setjmp-common.S83
-rw-r--r--sysdeps/powerpc/powerpc32/fpu/setjmp.S18
-rw-r--r--sysdeps/powerpc/powerpc32/libgcc-compat.S20
-rw-r--r--sysdeps/powerpc/powerpc32/mcount.c2
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile37
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-power7.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-ppc32.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-power7.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-ppc32.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-power5+.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-ppc32.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil.c40
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-power5+.S26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-ppc32.S27
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-power6.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-ppc32.S34
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign.c51
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysignf.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-power7.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-ppc32.c33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite.c51
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef-ppc32.c31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-power5+.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-ppc32.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor.c40
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-power5+.S26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-ppc32.S27
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-power7.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-ppc32.c33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf.c44
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff-ppc32.c31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff.c33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power5.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power6.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power7.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-ppc32.S32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan.c50
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power5.S28
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power6.S28
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf.c38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-power6.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-ppc32.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint.c40
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-power6.S26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-ppc32.S26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf.c31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power5+.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power6.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-ppc32.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround.c43
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llroundf.c (renamed from benchtests/bench-stpncpy-ifunc.c)20
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-power7.c31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-ppc32.c28
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb.c41
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-power7.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-ppc32.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-power7.c21
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-ppc32.c21
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-power6x.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-ppc32.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint.c40
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrintf.c31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power5+.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power6x.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-ppc32.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround.c43
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lroundf.c34
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-ppc32.c29
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf.c44
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c27
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-ppc32.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff.c30
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round-power5+.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round-ppc32.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round.c40
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf-power5+.S26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf-ppc32.S27
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc-power5+.S33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc-ppc32.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc.c40
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf-power5+.S26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf-ppc32.S27
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt-power5.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt-ppc32.S31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt.c (renamed from sysdeps/powerpc/fpu/w_sqrt.c)36
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf-power5.S26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf-ppc32.S26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S20
-rw-r--r--sysdeps/powerpc/powerpc32/power4/hp-timing.h21
-rw-r--r--sysdeps/powerpc/powerpc32/power4/memcmp.S1064
-rw-r--r--sysdeps/powerpc/powerpc32/power4/memcpy.S58
-rw-r--r--sysdeps/powerpc/powerpc32/power4/memset.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/Makefile24
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/bzero-power6.S26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/bzero-power7.S26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/bzero-ppc32.S (renamed from sysdeps/unix/bsd/seteuid.c)26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/bzero.c37
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c218
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h52
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memchr-power7.S40
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memchr-ppc32.c34
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memchr.c38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-power7.S41
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-ppc32.S45
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memcmp.c34
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-a2.S38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-cell.S38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-power6.S38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-power7.S38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-ppc32.S41
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memcpy.c45
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-power7.S35
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-ppc32.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy.c38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-power7.S40
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-ppc32.c25
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memrchr.c37
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memset-power6.S38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memset-power7.S38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memset-ppc32.S (renamed from sysdeps/ieee754/ldbl-96/s_fpclassifyl.c)51
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/memset.c37
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-power7.S40
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-ppc32.c32
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr.c37
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/rtld-memcmp.S19
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/rtld-memset.S18
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/rtld-strchr.S18
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/rtld-strnlen.c18
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp-power7.S39
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp.c41
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l-power7.S41
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l.c41
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strchr-power7.S39
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strchr-ppc32.S41
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strchr.c35
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul-power7.S39
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul-ppc32.c28
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul.c37
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strlen-power7.S36
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strlen-ppc32.S41
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strlen.c31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strncase-power7.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c41
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l-power7.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c42
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-power7.S38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-ppc32.S40
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c35
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-power7.S (renamed from sysdeps/x86_64/multiarch/strcasestr-nonascii.c)53
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/strnlen.c33
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power6.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power7.c26
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-ppc32.c31
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcschr.c38
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power6.c22
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power7.c22
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c (renamed from string/test-strchrnul-ifunc.c)14
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c36
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power6.c20
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power7.c20
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-ppc32.c (renamed from sysdeps/unix/bsd/setrgid.c)18
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr.c36
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power6.c23
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power7.c23
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c23
-rw-r--r--sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy.c86
-rw-r--r--sysdeps/powerpc/powerpc32/power4/strncmp.S56
-rw-r--r--sysdeps/powerpc/powerpc32/power5+/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S2
-rw-r--r--sysdeps/powerpc/powerpc32/power5+/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power5/Implies2
-rw-r--r--sysdeps/powerpc/powerpc32/power5/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power5/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power6/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power6/memcpy.S83
-rw-r--r--sysdeps/powerpc/powerpc32/power6/memset.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power6/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power6x/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power6x/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power7/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S5
-rw-r--r--sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S7
-rw-r--r--sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power7/memchr.S185
-rw-r--r--sysdeps/powerpc/powerpc32/power7/memcmp.S1626
-rw-r--r--sysdeps/powerpc/powerpc32/power7/memcpy.S24
-rw-r--r--sysdeps/powerpc/powerpc32/power7/mempcpy.S28
-rw-r--r--sysdeps/powerpc/powerpc32/power7/memrchr.S187
-rw-r--r--sysdeps/powerpc/powerpc32/power7/memset.S4
-rw-r--r--sysdeps/powerpc/powerpc32/power7/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power7/rawmemchr.S17
-rw-r--r--sysdeps/powerpc/powerpc32/power7/strchr.S51
-rw-r--r--sysdeps/powerpc/powerpc32/power7/strchrnul.S27
-rw-r--r--sysdeps/powerpc/powerpc32/power7/strlen.S17
-rw-r--r--sysdeps/powerpc/powerpc32/power7/strncmp.S55
-rw-r--r--sysdeps/powerpc/powerpc32/power7/strnlen.S106
-rw-r--r--sysdeps/powerpc/powerpc32/power8/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/power8/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc32/setjmp-common.S51
-rw-r--r--sysdeps/powerpc/powerpc32/setjmp.S18
-rw-r--r--sysdeps/powerpc/powerpc32/stackguard-macros.h10
-rw-r--r--sysdeps/powerpc/powerpc32/stpcpy.S18
-rw-r--r--sysdeps/powerpc/powerpc32/strchr.S71
-rw-r--r--sysdeps/powerpc/powerpc32/strcmp.S42
-rw-r--r--sysdeps/powerpc/powerpc32/strcpy.S18
-rw-r--r--sysdeps/powerpc/powerpc32/strlen.S69
-rw-r--r--sysdeps/powerpc/powerpc32/strncmp.S56
-rw-r--r--sysdeps/powerpc/powerpc32/sysdep.h3
-rw-r--r--sysdeps/powerpc/powerpc64/__longjmp-common.S15
-rw-r--r--sysdeps/powerpc/powerpc64/addmul_1.S208
-rw-r--r--sysdeps/powerpc/powerpc64/configure2
-rw-r--r--sysdeps/powerpc/powerpc64/configure.ac (renamed from sysdeps/powerpc/powerpc64/configure.in)0
-rw-r--r--sysdeps/powerpc/powerpc64/crti.S34
-rw-r--r--sysdeps/powerpc/powerpc64/crtn.S8
-rw-r--r--sysdeps/powerpc/powerpc64/dl-irel.h4
-rw-r--r--sysdeps/powerpc/powerpc64/dl-machine.h219
-rw-r--r--sysdeps/powerpc/powerpc64/dl-trampoline.S195
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile33
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypof.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-power7.c (renamed from benchtests/bench-bcopy-ifunc.c)5
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-ppc64.c26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-power7.c (renamed from benchtests/bench-bzero-ifunc.c)5
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-ppc64.c26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-power5+.S31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-ppc64.S31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c40
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-power5+.S26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-ppc64.S26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-power6.S33
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-ppc64.S (renamed from sysdeps/unix/bsd/setgid.c)31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign.c51
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysignf.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-power7.S33
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-ppc64.c34
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite.c51
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef-ppc64.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-power5+.S31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-ppc64.S31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c40
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-power5+.S26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-ppc64.S27
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-power7.S33
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-ppc64.c33
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf.c44
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff-ppc64.c31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff.c33
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power5.S33
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6.S33
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6x.S33
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power7.S33
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan.c53
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnanf.c40
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-power6x.S31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-ppc64.S31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint.c57
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power5+.S32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power6x.S32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-ppc64.S28
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround.c60
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-power7.c (renamed from benchtests/bench-memccpy-ifunc.c)5
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-ppc64.c28
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb.c41
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-power7.c (renamed from benchtests/bench-memchr-ifunc.c)5
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-ppc64.c26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-power7.c19
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-ppc64.c (renamed from string/test-rawmemchr-ifunc.c)7
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_lrint.c1
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_lround.c1
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-power5+.c19
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-ppc64.c29
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c44
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-power5+.c19
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-ppc64.c26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff.c30
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-power5+.S31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-ppc64.S31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c40
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-power5+.S26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-ppc64.S26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-power5+.S31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-ppc64.S31
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c40
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-power5+.S26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-ppc64.S26
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf.c32
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/s_ceilf.S4
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/s_floorf.S4
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S4
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/s_rintf.S4
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/s_roundf.S6
-rw-r--r--sysdeps/powerpc/powerpc64/fpu/s_truncf.S4
-rw-r--r--sysdeps/powerpc/powerpc64/lshift.S177
-rw-r--r--sysdeps/powerpc/powerpc64/memcpy.S27
-rw-r--r--sysdeps/powerpc/powerpc64/memset.S12
-rw-r--r--sysdeps/powerpc/powerpc64/mul_1.S135
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/Makefile28
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/bzero-power4.S26
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/bzero-power6.S26
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/bzero-power7.S26
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/bzero.c40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c242
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/init-arch.h (renamed from benchtests/bench-memcmp-ifunc.c)6
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memchr-power7.S41
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memchr-ppc64.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memchr.c38
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcmp-power4.S42
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcmp-power7.S42
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcmp-ppc64.c (renamed from sysdeps/unix/bsd/init-posix.c)27
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcmp.c39
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcpy-a2.S40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcpy-cell.S40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcpy-power4.S40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcpy-power6.S40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcpy-power7.S40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcpy-ppc64.S43
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memcpy.c48
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/mempcpy-power7.S42
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/mempcpy-ppc64.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/mempcpy.c38
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memrchr-power7.S41
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memrchr-ppc64.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memrchr.c37
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memset-power4.S (renamed from benchtests/bench-memmove-ifunc.c)27
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memset-power6.S41
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memset-power7.S41
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memset-ppc64.S56
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/memset.c40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/rawmemchr-power7.S36
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/rawmemchr-ppc64.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/rawmemchr.c37
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/rtld-memset.c18
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/rtld-strchr.S18
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/stpcpy-power7.S40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/stpcpy-ppc64.S48
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/stpcpy.c34
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strcasecmp-power7.S42
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strcasecmp.c40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l-power7.S44
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l.c40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strchr-power7.S39
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strchr-ppc64.S42
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strchr.c35
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strchrnul-power7.S39
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strchrnul-ppc64.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strchrnul.c37
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strcpy-power7.S40
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strcpy-ppc64.S43
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strcpy.c31
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strlen-power7.S39
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strlen-ppc64.S42
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strlen.c31
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncase-power7.c (renamed from sysdeps/unix/bsd/setruid.c)16
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncase.c41
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncase_l-power7.c25
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncase_l.c42
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncmp-power4.S39
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncmp-power7.S (renamed from sysdeps/x86_64/multiarch/strend-sse4.S)54
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncmp-ppc64.S42
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strncmp.c37
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strnlen-power7.S41
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strnlen-ppc64.c18
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/strnlen.c36
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcschr-power6.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcschr-power7.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcschr-ppc64.c18
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcschr.c38
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcscpy-power6.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcscpy-power7.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcscpy-ppc64.c18
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcscpy.c36
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power6.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power7.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcsrchr-ppc64.c18
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wcsrchr.c36
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wordcopy-power6.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wordcopy-power7.c19
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c18
-rw-r--r--sysdeps/powerpc/powerpc64/multiarch/wordcopy.c86
-rw-r--r--sysdeps/powerpc/powerpc64/power4/fpu/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power4/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c55
-rw-r--r--sysdeps/powerpc/powerpc64/power4/memcmp.S1041
-rw-r--r--sysdeps/powerpc/powerpc64/power4/memcpy.S61
-rw-r--r--sysdeps/powerpc/powerpc64/power4/memset.S32
-rw-r--r--sysdeps/powerpc/powerpc64/power4/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power4/strncmp.S63
-rw-r--r--sysdeps/powerpc/powerpc64/power4/wordcopy.c1
-rw-r--r--sysdeps/powerpc/powerpc64/power5+/fpu/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power5+/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power5+/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power5/Implies2
-rw-r--r--sysdeps/powerpc/powerpc64/power5/fpu/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power5/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power5/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power6/fpu/Implies (renamed from sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/Implies)1
-rw-r--r--sysdeps/powerpc/powerpc64/power6/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power6/memcpy.S329
-rw-r--r--sysdeps/powerpc/powerpc64/power6/memset.S12
-rw-r--r--sysdeps/powerpc/powerpc64/power6/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power6/wcschr.c2
-rw-r--r--sysdeps/powerpc/powerpc64/power6/wcscpy.c2
-rw-r--r--sysdeps/powerpc/powerpc64/power6/wcsrchr.c2
-rw-r--r--sysdeps/powerpc/powerpc64/power6/wordcopy.c217
-rw-r--r--sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power7/add_n.S98
-rw-r--r--sysdeps/powerpc/powerpc64/power7/fpu/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power7/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S6
-rw-r--r--sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S5
-rw-r--r--sysdeps/powerpc/powerpc64/power7/fpu/s_logb.c2
-rw-r--r--sysdeps/powerpc/powerpc64/power7/fpu/s_logbf.c2
-rw-r--r--sysdeps/powerpc/powerpc64/power7/fpu/s_logbl.c2
-rw-r--r--sysdeps/powerpc/powerpc64/power7/memchr.S190
-rw-r--r--sysdeps/powerpc/powerpc64/power7/memcmp.S1613
-rw-r--r--sysdeps/powerpc/powerpc64/power7/memcpy.S704
-rw-r--r--sysdeps/powerpc/powerpc64/power7/mempcpy.S26
-rw-r--r--sysdeps/powerpc/powerpc64/power7/memrchr.S194
-rw-r--r--sysdeps/powerpc/powerpc64/power7/memset.S8
-rw-r--r--sysdeps/powerpc/powerpc64/power7/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power7/rawmemchr.S17
-rw-r--r--sysdeps/powerpc/powerpc64/power7/stpcpy.S24
-rw-r--r--sysdeps/powerpc/powerpc64/power7/strcasecmp.S4
-rw-r--r--sysdeps/powerpc/powerpc64/power7/strchr.S43
-rw-r--r--sysdeps/powerpc/powerpc64/power7/strchrnul.S19
-rw-r--r--sysdeps/powerpc/powerpc64/power7/strcpy.S274
-rw-r--r--sysdeps/powerpc/powerpc64/power7/strlen.S17
-rw-r--r--sysdeps/powerpc/powerpc64/power7/strncmp.S61
-rw-r--r--sysdeps/powerpc/powerpc64/power7/strnlen.S111
-rw-r--r--sysdeps/powerpc/powerpc64/power7/sub_n.S23
-rw-r--r--sysdeps/powerpc/powerpc64/power8/fpu/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power8/fpu/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/power8/multiarch/Implies1
-rw-r--r--sysdeps/powerpc/powerpc64/ppc-mcount.S14
-rw-r--r--sysdeps/powerpc/powerpc64/setjmp-common.S123
-rw-r--r--sysdeps/powerpc/powerpc64/setjmp.S40
-rw-r--r--sysdeps/powerpc/powerpc64/stackguard-macros.h10
-rw-r--r--sysdeps/powerpc/powerpc64/stpcpy.S83
-rw-r--r--sysdeps/powerpc/powerpc64/strchr.S75
-rw-r--r--sysdeps/powerpc/powerpc64/strcmp.S65
-rw-r--r--sysdeps/powerpc/powerpc64/strcpy.S153
-rw-r--r--sysdeps/powerpc/powerpc64/strlen.S75
-rw-r--r--sysdeps/powerpc/powerpc64/strncmp.S63
-rw-r--r--sysdeps/powerpc/powerpc64/submul_1.S21
-rw-r--r--sysdeps/powerpc/powerpc64/sysdep.h161
-rw-r--r--sysdeps/powerpc/powerpc64/tst-audit.h8
-rw-r--r--sysdeps/powerpc/preconfigure11
-rw-r--r--sysdeps/powerpc/soft-fp/sfp-machine.h112
-rw-r--r--sysdeps/powerpc/sysdep.h15
-rw-r--r--sysdeps/s390/Versions4
-rw-r--r--sysdeps/s390/dl-tls.h35
-rw-r--r--sysdeps/s390/ffs.c1
-rw-r--r--sysdeps/s390/fpu/fegetround.c1
-rw-r--r--sysdeps/s390/s390-32/configure2
-rw-r--r--sysdeps/s390/s390-32/configure.ac (renamed from sysdeps/s390/s390-32/configure.in)0
-rw-r--r--sysdeps/s390/s390-32/stackguard-macros.h11
-rw-r--r--sysdeps/s390/s390-32/tls-macros.h13
-rw-r--r--sysdeps/s390/s390-64/configure2
-rw-r--r--sysdeps/s390/s390-64/configure.ac (renamed from sysdeps/s390/s390-64/configure.in)0
-rw-r--r--sysdeps/s390/s390-64/stackguard-macros.h14
-rw-r--r--sysdeps/s390/s390-64/tls-macros.h13
-rw-r--r--sysdeps/sh/Implies1
-rw-r--r--sysdeps/sh/bits/fenv.h (renamed from sysdeps/sh/sh4/fpu/bits/fenv.h)0
-rw-r--r--sysdeps/sh/configure2
-rw-r--r--sysdeps/sh/configure.ac (renamed from sysdeps/sh/configure.in)0
-rw-r--r--sysdeps/sh/s_fma.c5
-rw-r--r--sysdeps/sh/s_fmaf.c5
-rw-r--r--sysdeps/sh/sh4/fpu/fegetround.c1
-rw-r--r--sysdeps/sh/soft-fp/sfp-machine.h (renamed from ports/sysdeps/powerpc/soft-fp/sfp-machine.h)38
-rw-r--r--sysdeps/sh/sotruss-lib.c50
-rw-r--r--sysdeps/sh/stackguard-macros.h6
-rw-r--r--sysdeps/sparc/configure2
-rw-r--r--sysdeps/sparc/configure.ac (renamed from sysdeps/sparc/configure.in)0
-rw-r--r--sysdeps/sparc/fpu/fegetround.c1
-rw-r--r--sysdeps/sparc/fpu/libm-test-ulps125
-rw-r--r--sysdeps/sparc/sparc32/fpu/s_fdim.S3
-rw-r--r--sysdeps/sparc/sparc32/soft-fp/q_neg.c7
-rw-r--r--sysdeps/sparc/sparc32/stackguard-macros.h3
-rw-r--r--sysdeps/sparc/sparc64/multiarch/add_n.S2
-rw-r--r--sysdeps/sparc/sparc64/multiarch/addmul_1.S2
-rw-r--r--sysdeps/sparc/sparc64/multiarch/mul_1.S2
-rw-r--r--sysdeps/sparc/sparc64/multiarch/sub_n.S2
-rw-r--r--sysdeps/sparc/sparc64/multiarch/submul_1.S2
-rw-r--r--sysdeps/sparc/sparc64/stackguard-macros.h3
-rw-r--r--sysdeps/unix/Makefile6
-rw-r--r--sysdeps/unix/bsd/bits/posix_opt.h5
-rw-r--r--sysdeps/unix/bsd/bits/stat.h90
-rw-r--r--sysdeps/unix/bsd/bsd4.4/bits/errno.h164
-rw-r--r--sysdeps/unix/bsd/bsd4.4/bits/ioctls.h288
-rw-r--r--sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h71
-rw-r--r--sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h72
-rw-r--r--sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h27
-rw-r--r--sysdeps/unix/bsd/bsdstat.h111
-rw-r--r--sysdeps/unix/bsd/i386/vfork.S39
-rw-r--r--sysdeps/unix/bsd/i386/wait3.S43
-rw-r--r--sysdeps/unix/bsd/poll.c197
-rw-r--r--sysdeps/unix/bsd/ptsname.c80
-rw-r--r--sysdeps/unix/bsd/seekdir.c1
-rw-r--r--sysdeps/unix/bsd/sigaction.c62
-rw-r--r--sysdeps/unix/bsd/sigprocmask.c65
-rw-r--r--sysdeps/unix/bsd/sigsuspend.c47
-rw-r--r--sysdeps/unix/bsd/sys/reboot.h84
-rw-r--r--sysdeps/unix/bsd/telldir.c115
-rw-r--r--sysdeps/unix/bsd/times.c71
-rw-r--r--sysdeps/unix/bsd/usleep.c34
-rw-r--r--sysdeps/unix/make-syscalls.sh2
-rw-r--r--sysdeps/unix/sysv/linux/Makefile2
-rw-r--r--sysdeps/unix/sysv/linux/bits/fcntl-linux.h4
-rw-r--r--sysdeps/unix/sysv/linux/bits/in.h12
-rw-r--r--sysdeps/unix/sysv/linux/bits/ipc.h4
-rw-r--r--sysdeps/unix/sysv/linux/bits/msq.h10
-rw-r--r--sysdeps/unix/sysv/linux/bits/sem.h8
-rw-r--r--sysdeps/unix/sysv/linux/bits/shm.h18
-rw-r--r--sysdeps/unix/sysv/linux/bits/stat.h4
-rw-r--r--sysdeps/unix/sysv/linux/configure7
-rw-r--r--sysdeps/unix/sysv/linux/configure.ac (renamed from sysdeps/unix/sysv/linux/configure.in)5
-rw-r--r--sysdeps/unix/sysv/linux/dl-sysdep.c46
-rw-r--r--sysdeps/unix/sysv/linux/dl-sysdep.h4
-rw-r--r--sysdeps/unix/sysv/linux/kernel_stat.h4
-rw-r--r--sysdeps/unix/sysv/linux/ntp_gettimex.c8
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/Makefile11
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/ipc.h4
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h32
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/msq.h10
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/sem.h8
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/shm.h20
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/sigstack.h54
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/bits/stat.h20
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/configure2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/configure.ac (renamed from sysdeps/unix/sysv/linux/powerpc/configure.in)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/gettimeofday.c1
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/ldconfig.h3
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/nofpu/Implies3
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c7
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S13
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h4
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S8
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/context-e500.h144
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S)2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist)6
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist)0
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data)3
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S)2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S (renamed from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S)2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/power8/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S12
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S24
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S16
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S4
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S36
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/configure166
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac15
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c3
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c10
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h4
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S22
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/power8/Implies2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S18
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S29
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym21
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h2
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/time.c2
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/ipc.h4
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/msq.h10
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/sem.h8
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/shm.h18
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/stat.h8
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/utmp.h2
-rw-r--r--sysdeps/unix/sysv/linux/s390/bits/utmpx.h2
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h2
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h2
-rw-r--r--sysdeps/unix/sysv/linux/sh/bits/shm.h18
-rw-r--r--sysdeps/unix/sysv/linux/sh/nptl/c++-types.data67
-rw-r--r--sysdeps/unix/sysv/linux/shm_open.c14
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/fcntl.h5
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/ipc.h4
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/msq.h4
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/sem.h4
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/shm.h12
-rw-r--r--sysdeps/unix/sysv/linux/sparc/bits/stat.h8
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h4
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h6
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/xstatconv.c8
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sys/procfs.h4
-rw-r--r--sysdeps/unix/sysv/linux/sys/ptrace.h2
-rw-r--r--sysdeps/unix/sysv/linux/sys/timex.h8
-rw-r--r--sysdeps/unix/sysv/linux/tst-fanotify.c (renamed from sysdeps/unix/bsd/setsid.c)57
-rw-r--r--sysdeps/unix/sysv/linux/x86/bits/msq.h10
-rw-r--r--sysdeps/unix/sysv/linux/x86/bits/sem.h8
-rw-r--r--sysdeps/unix/sysv/linux/x86/bits/shm.h18
-rw-r--r--sysdeps/unix/sysv/linux/x86/bits/stat.h8
-rw-r--r--sysdeps/unix/sysv/linux/xstatconv.c30
-rw-r--r--sysdeps/wordsize-32/divdi3.c2
-rw-r--r--sysdeps/x86/fpu/bits/fenv.h10
-rw-r--r--sysdeps/x86_64/configure2
-rw-r--r--sysdeps/x86_64/configure.ac (renamed from sysdeps/x86_64/configure.in)0
-rw-r--r--sysdeps/x86_64/dl-tlsdesc.S2
-rw-r--r--sysdeps/x86_64/ffs.c1
-rw-r--r--sysdeps/x86_64/fpu/e_expl.S11
-rw-r--r--sysdeps/x86_64/fpu/e_powl.S3
-rw-r--r--sysdeps/x86_64/fpu/fegetround.c1
-rw-r--r--sysdeps/x86_64/fpu/libm-test-ulps4160
-rw-r--r--sysdeps/x86_64/fpu/printf_fphex.c9
-rw-r--r--sysdeps/x86_64/memset.S10
-rw-r--r--sysdeps/x86_64/multiarch/Makefile15
-rw-r--r--sysdeps/x86_64/multiarch/ifunc-impl-list.c14
-rw-r--r--sysdeps/x86_64/multiarch/memcmp-sse4.S84
-rw-r--r--sysdeps/x86_64/multiarch/memcmp-ssse3.S126
-rw-r--r--sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S10
-rw-r--r--sysdeps/x86_64/multiarch/memcpy-ssse3-back.S86
-rw-r--r--sysdeps/x86_64/multiarch/memcpy-ssse3.S254
-rw-r--r--sysdeps/x86_64/multiarch/strcasestr-c.c19
-rw-r--r--sysdeps/x86_64/multiarch/strcasestr.c18
-rw-r--r--sysdeps/x86_64/multiarch/strchr.S127
-rw-r--r--sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S209
-rw-r--r--sysdeps/x86_64/multiarch/strcmp.S7
-rw-r--r--sysdeps/x86_64/multiarch/strrchr-sse2-no-bsf.S555
-rw-r--r--sysdeps/x86_64/multiarch/strrchr.S288
-rw-r--r--sysdeps/x86_64/multiarch/strstr-c.c47
-rw-r--r--sysdeps/x86_64/multiarch/strstr-sse2-unaligned.S374
-rw-r--r--sysdeps/x86_64/multiarch/strstr.c388
-rw-r--r--sysdeps/x86_64/preconfigure2
-rw-r--r--sysdeps/x86_64/preconfigure.ac (renamed from sysdeps/x86_64/preconfigure.in)0
-rw-r--r--sysdeps/x86_64/stackguard-macros.h5
-rw-r--r--sysdeps/x86_64/strchr.S188
-rw-r--r--sysdeps/x86_64/strchrnul.S41
-rw-r--r--sysdeps/x86_64/strrchr.S238
-rw-r--r--time/strptime_l.c25
-rw-r--r--time/tst-strptime.c3
-rw-r--r--time/tzfile.c26
-rw-r--r--time/tzset.c7
-rw-r--r--wcsmbs/wcscpy.c6
-rw-r--r--wcsmbs/wcsrchr.c5
1980 files changed, 179951 insertions, 30158 deletions
diff --git a/COPYING b/COPYING
index 5b6e7c66c2..d159169d10 100644
--- a/COPYING
+++ b/COPYING
@@ -1,12 +1,12 @@
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
- Preamble
+ Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
@@ -15,7 +15,7 @@ software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
+the GNU Lesser General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
@@ -55,8 +55,8 @@ patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
-
- GNU GENERAL PUBLIC LICENSE
+
+ GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
@@ -110,7 +110,7 @@ above, provided that you also meet all of these conditions:
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
-
+
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
@@ -168,7 +168,7 @@ access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
-
+
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
@@ -225,7 +225,7 @@ impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
-
+
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
@@ -255,7 +255,7 @@ make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
- NO WARRANTY
+ NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
@@ -277,9 +277,9 @@ YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
@@ -303,10 +303,9 @@ the "copyright" line and a pointer to where the full notice is found.
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
@@ -336,5 +335,5 @@ necessary. Here is a sample; alter the names:
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
+library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License.
diff --git a/COPYING.LIB b/COPYING.LIB
index cf9b6b9972..4362b49151 100644
--- a/COPYING.LIB
+++ b/COPYING.LIB
@@ -1,9 +1,8 @@
-
GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -23,8 +22,7 @@ specially designated software packages--typically libraries--of the
Free Software Foundation and other authors who decide to use it. You
can use it too, but we suggest you first think carefully about whether
this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations
-below.
+strategy to use in any particular case, based on the explanations below.
When we speak of free software, we are referring to freedom of use,
not price. Our General Public Licenses are designed to make sure that
@@ -57,7 +55,7 @@ modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.
-^L
+
Finally, software patents pose a constant threat to the existence of
any free program. We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
@@ -89,9 +87,9 @@ libraries. However, the Lesser license provides advantages in certain
special circumstances.
For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it
-becomes a de-facto standard. To achieve this, non-free programs must
-be allowed to use the library. A more frequent case is that a free
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
library does the same job as widely used non-free libraries. In this
case, there is little to gain by limiting the free library to free
software only, so we use the Lesser General Public License.
@@ -113,7 +111,7 @@ modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.
-^L
+
GNU LESSER GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
@@ -138,8 +136,8 @@ included without limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control
-compilation and installation of the library.
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
@@ -218,7 +216,7 @@ instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
-^L
+
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
@@ -269,7 +267,7 @@ Library will still fall under Section 6.)
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.
-^L
+
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
@@ -305,10 +303,10 @@ of these things:
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.
- c) Accompany the work with a written offer, valid for at least
- three years, to give the same user the materials specified in
- Subsection 6a, above, for a charge no more than the cost of
- performing this distribution.
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
d) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
@@ -331,7 +329,7 @@ restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.
-^L
+
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
@@ -372,7 +370,7 @@ subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
-^L
+
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
@@ -386,10 +384,9 @@ all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply, and the section as a whole is intended to apply in other
-circumstances.
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
@@ -407,11 +404,11 @@ be a consequence of the rest of this License.
12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License
-may add an explicit geographical distribution limitation excluding those
-countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded. In such case, this License incorporates the limitation as if
+written in the body of this License.
13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
@@ -425,7 +422,7 @@ conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.
-^L
+
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
@@ -459,21 +456,19 @@ SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS
-^L
+
How to Apply These Terms to Your New Libraries
If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
everyone can redistribute and change. You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms
-of the ordinary General Public License).
-
- To apply these terms, attach the following notices to the library.
-It is safest to attach them to the start of each source file to most
-effectively convey the exclusion of warranty; and each file should
-have at least the "copyright" line and a pointer to where the full
-notice is found.
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+ To apply these terms, attach the following notices to the library. It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
<one line to give the library's name and a brief idea of what it does.>
Copyright (C) <year> <name of author>
@@ -490,21 +485,18 @@ notice is found.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Also add information on how to contact you by electronic and paper mail.
-You should also get your employer (if you work as a programmer) or
-your school, if any, to sign a "copyright disclaimer" for the library,
-if necessary. Here is a sample; alter the names:
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the
- library `Frob' (a library for tweaking knobs) written by James
- Random Hacker.
+ library `Frob' (a library for tweaking knobs) written by James Random Hacker.
<signature of Ty Coon>, 1 April 1990
Ty Coon, President of Vice
That's all there is to it!
-
-
diff --git a/ChangeLog b/ChangeLog
index 6b299a1229..9ebb67590b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,5369 @@
+2013-12-19 Joseph Myers <joseph@codesourcery.com>
+
+ * math/auto-libm-test-in: Add tests of cabs and carg.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (cabs_test_data): Use AUTO_TESTS_c_f.
+ (carg_test_data): Likewise.
+ * math/gen-auto-libm-tests.c (func_calc_method): Add value
+ mpc_c_f.
+ (func_calc_desc): Add mpc_c_f union field.
+ (test_functions): Add cabs and carg.
+ (calc_generic_results): Handle mpc_c_f.
+
+ * sysdeps/powerpc/powerpc32/libgcc-compat.S
+ [_SOFT_FLOAT || __NO_FPRS__] (__fixdfdi_v_glibc20): Do not define
+ as a macro and a compat symbol.
+ [_SOFT_FLOAT || __NO_FPRS__] (__fixsfdi_v_glibc20): Likewise.
+ [_SOFT_FLOAT || __NO_FPRS__] (__fixunsdfdi_v_glibc20): Likewise.
+ [_SOFT_FLOAT || __NO_FPRS__] (__fixunssfdi_v_glibc20): Likewise.
+ [_SOFT_FLOAT || __NO_FPRS__] (__floatdidf_v_glibc20): Likewise.
+ [_SOFT_FLOAT || __NO_FPRS__] (__floaddisf_v_glibc20): Likewise.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__fixdfdi): Do
+ not use .hidden.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__fixsfdi):
+ Likewise.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__fixunsdfdi):
+ Likewise.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__fixunssfdi):
+ Likewise.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__floaddidf):
+ Likewise.
+ [HAVE_DOT_HIDDEN && (_SOFT_FLOAT || __NO_FPRS__)] (__floaddisf):
+ Likewise.
+ * sysdeps/powerpc/nofpu/Versions (libc): Remove __fixdfdi,
+ __fixsfdi, __fixunsdfdi, __fixunssfdi, __floatdidf and __floatdisf
+ from GLIBC_2.3.2.
+
+2013-12-19 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2013-12-19 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * elf/dl-misc.c (ptr_to_signal_safe_allocator_header): New function.
+ (__signal_safe_memalign, __signal_safe_free): Use it.
+ (__signal_safe_realloc): Likewise.
+
+2013-12-19 Joseph Myers <joseph@codesourcery.com>
+
+ * manual/texinfo.tex: Update to version 2013-11-26.10 with
+ trailing whitespace removed.
+ * scripts/config.guess: Update to version 2013-11-29.
+ * scripts/config.sub: Update to version 2013-10-01.
+
+ * math/auto-libm-test-in: Add tests of sincos.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (sincos_test_data): Use AUTO_TESTS_fFF_11.
+ * math/gen-auto-libm-tests.c (func_calc_method): Add value
+ mpfr_f_11.
+ (func_calc_desc): Add mpfr_f_11 union field.
+ (test_functions): Add sincos.
+ (calc_generic_results): Handle mpfr_f_11.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-12-19 Andreas Schwab <schwab@suse.de>
+
+ * sysdeps/powerpc/powerpc64/power7/memchr.S: Fix argument of
+ CALL_MCOUNT.
+ * sysdeps/powerpc/powerpc64/power7/memrchr.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/strcasecmp.S
+ [USE_IN_EXTENDED_LOCALE_MODEL]: Likewise.
+
+2013-12-19 Joseph Myers <joseph@codesourcery.com>
+
+ * math/gen-libm-test.pl (%beautify): Remove M_* constants.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+ [BZ #16293]
+ * sysdeps/i386/fpu/e_expl.S (IEEE754_EXPL) [USE_AS_EXPM1L]: Set
+ round-to-nearest mode when using frndint.
+ * sysdeps/i386/fpu/s_expm1.S (__expm1): Likewise.
+ * sysdeps/i386/fpu/s_expm1f.S (__expm1f): Likewise.
+ * sysdeps/x86_64/fpu/e_expl.S (IEEE754_EXPL) [USE_AS_EXPM1L]:
+ Likewise.
+ * math/auto-libm-test-in: Add more tests of expm1. Do not expect
+ sinh test to fail.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (TEST_COND_x86_64): Remove macro.
+ (TEST_COND_x86): Likewise.
+ (expm1_tonearest_test_data): New array.
+ (expm1_test_tonearest): New function.
+ (expm1_towardzero_test_data): New array.
+ (expm1_test_towardzero): New function.
+ (expm1_downward_test_data): New array.
+ (expm1_test_downward): New function.
+ (expm1_upward_test_data): New array.
+ (expm1_test_upward): New function.
+ (main): Run the new test functions.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+ * include/features.h: Update comment documenting feature test
+ macros. Mention _DEFAULT_SOURCE in comment.
+ [_GNU_SOURCE] (_DEFAULT_SOURCE): Undefine and redefine.
+ [_DEFAULT_SOURCE]: Undefine and redefine _DEFAULT_SOURCE,
+ _BSD_SOURCE and _SVID_SOURCE.
+ [!__STRICT_ANSI__ && !_ISOC99_SOURCE && !_POSIX_SOURCE &&
+ !_POSIX_C_SOURCE && !_XOPEN_SOURCE && !_BSD_SOURCE &&
+ !_SVID_SOURCE]: Likewise.
+ [_DEFAULT_SOURCE && !_POSIX_SOURCE && !_POSIX_C_SOURCE]
+ (__USE_POSIX_IMPLICITLY): Define.
+ [_DEFAULT_SOURCE && !_POSIX_SOURCE && !_POSIX_C_SOURCE]
+ (_POSIX_SOURCE): Undefine and redefine.
+ [_DEFAULT_SOURCE && !_POSIX_SOURCE && !_POSIX_C_SOURCE]
+ (_POSIX_C_SOURCE): Likewise.
+ * manual/creature.texi (_DEFAULT_SOURCE): Document.
+ (Feature Test Macros): Update documentation of default features.
+
+2013-12-19 Rajalakshmi Srinivasaraghavan <raji@linux.vnet.ibm.com>
+
+ * benchtests/Makefile: Add bench-strtok.
+ * benchtests/bench-strtok.c: New file: strtok benchtest.
+
+2013-12-19 Allan McRae <allan@archlinux.org>
+
+ * manual/install.texi: Suppress menu for plain text output.
+ * INSTALL: Regenerated.
+
+2013-12-18 Andrew Hunter <ahh@google.com>
+
+ * sysdeps/generic/ldsodefs.h (__signal_safe_memalign): New prototype.
+ (__signal_safe_malloc, __signal_safe_free): Likewise.
+ (__signal_safe_realloc, __signal_safe_calloc): Likewise.
+ * elf/dl-misc.c (__signal_safe_allocator_header): New struct.
+ (__signal_safe_memalign, __signal_safe_malloc): New function.
+ (__signal_safe_free, __signal_safe_realloc): Likewise.
+ (__signal_safe_calloc): Likewise.
+ * elf/dl-tls.c (allocate_dtv, _dl_clear_dtv): Call signal-safe
+ functions.
+ (_dl_deallocate_tls, _dl_update_slotinfo): Likewise.
+
+2013-12-18 Andrew Hunter <ahh@google.com>
+
+ * elf/Versions (ld): Add _dl_clear_dtv.
+ * sysdeps/generic/ldsodefs.h (_dl_clear_dtv): New prototype.
+ * elf/dl-tls.c (_dl_clear_dtv): New function.
+ * nptl/allocatestack.c (get_cached_stack): Call _dl_clear_dtv.
+
+2013-12-18 Andrew Hunter <ahh@google.com>
+
+ * sysdeps/generic/ldsodefs.h (_dl_mask_all_signals): New prototype.
+ (_dl_unmask_signals): Likewise.
+ * sysdeps/mach/hurd/dl-sysdep.h (_dl_mask_all_signals): New stub.
+ (_dl_unmask_all_signals): Likewise.
+ * sysdeps/unix/sysv/linux/dl-sysdep.h (_dl_mask_all_signals): New prototype.
+ (_dl_unmask_all_signals): Likewise.
+ * sysdeps/unix/sysv/linux/dl-sysdep.c (_dl_mask_all_signals): New function.
+ (_dl_unmask_signals): Likewise.
+
+2013-12-18 Brooks Moses <bmoses@google.com>
+
+ [BZ #15846]
+ * misc/getauxval.c: Include errno.h.
+ (__getauxval): Set errno to ENOENT if the requested type is not
+ found.
+ * misc/sys/auxv.h (getauxval): Document that it may set errno;
+ don't declare with __attribute_const__.
+ * elf/tst-auxv.c: Add tests for errno and type-not-found case.
+ * manual/startup.texi: Document that getauxval sets errno.
+
+2013-12-18 Joseph Myers <joseph@codesourcery.com>
+
+ * math/auto-libm-test-in: Add tests of jn and yn.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (jn_test_data): Use AUTO_TESTS_if_f.
+ (yn_test_data): Likewise.
+ * math/gen-auto-libm-tests.c (func_calc_method): Add value
+ mpfr_if_f.
+ (func_calc_desc): Add mpfr_if_f union field.
+ (FUNC_mpfr_if_f): New macro.
+ (test_functions): Add jn and yn.
+ (calc_generic_results): Assert type of second input for
+ mpfr_ff_f. Handle mpfr_if_f.
+ (output_for_one_input_case): Disable all checking for arguments
+ fitting floating-point types in case of an integer argument.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data:
+ Don't expect fegetround reference in libm.so.
+
+2013-12-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
+
+ * sysdeps/ieee754/dbl-64/Makefile (CFLAGS-e_sqrt.c): Add
+ $(config-cflags-nofma).
+
+2013-12-18 Joseph Myers <joseph@codesourcery.com>
+
+ * math/auto-libm-test-in: Mark some hypot tests no-test-inline.
+ * math/auto-libm-test-out: Regenerated.
+
+ [BZ #16338]
+ * sysdeps/ieee754/ldbl-128/e_logl.c (__ieee754_logl): Use __frexpl
+ to determine exponent and adjust argument to have exponent of -1.
+ * math/auto-libm-test-in: Add more tests of log, log10, log1p and
+ log2.
+ * math/auto-libm-test-out: Regenerated.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-12-18 Ondřej Bílka <neleai@seznam.cz>
+
+ * manual/probes.texi: Remove cases when per-thread arenas are
+ disabled.
+
+2013-12-18 Andreas Schwab <schwab@suse.de>
+
+ * sysdeps/i386/i686/multiarch/strstr.c: Remove.
+ * sysdeps/i386/i686/multiarch/strstr-c.c: Remove.
+ * sysdeps/i386/i686/multiarch/strcasestr.c: Remove.
+ * sysdeps/i386/i686/multiarch/strcasestr-nonascii.c: Remove.
+ * sysdeps/i386/i686/multiarch/Makefile: Update.
+ * sysdeps/i386/i686/multiarch/ifunc-impl-list.c: Update.
+
+2013-12-17 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/unix/bsd/bsd4.4/bits/errno.h: Remove file.
+ * sysdeps/unix/bsd/bsd4.4/bits/ioctls.h: Likewise.
+
+2013-12-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ Support TZ transition times < 00:00:00.
+ This is needed for version-3 tz-format files; it supports time
+ stamps past 2037 for America/Godthab (the only entry in the tz
+ database for which this change is relevant).
+ * manual/time.texi (TZ Variable): Document transition times
+ from -167:59:59 through -00:00:01.
+ * time/tzset.c (tz_rule): Time of day is now signed.
+ (__tzset_parse_tz): Parse negative time of day.
+
+ Document TZ transition times >= 25:00:00.
+ * manual/time.texi (TZ Variable): Document transition times from
+ 25:00:00 through 167:59:59. These are already supported, and this
+ support will help with version-3 tz-format files.
+
+ * manual/time.texi (TZ Variable): Modernize North America example
+ to reflect current (i.e., 2007-and-later) daylight saving rules.
+
+ * manual/time.texi (TZ Variable): POSIX.1 hour can be 24.
+
+2013-12-17 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/unix/bsd/bits/posix_opt.h: Remove file.
+ * sysdeps/unix/bsd/bits/stat.h: Likewise.
+ * sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h: Likewise.
+ * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: Likewise.
+ * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: Likewise.
+ * sysdeps/unix/bsd/bsdstat.h: Likewise.
+ * sysdeps/unix/bsd/clock.c: Likewise.
+ * sysdeps/unix/bsd/i386/vfork.S: Likewise.
+ * sysdeps/unix/bsd/i386/wait3.S: Likewise.
+ * sysdeps/unix/bsd/init-posix.c: Likewise.
+ * sysdeps/unix/bsd/poll.c: Likewise.
+ * sysdeps/unix/bsd/ptsname.c: Likewise.
+ * sysdeps/unix/bsd/seekdir.c: Likewise.
+ * sysdeps/unix/bsd/setegid.c: Likewise.
+ * sysdeps/unix/bsd/seteuid.c: Likewise.
+ * sysdeps/unix/bsd/setgid.c: Likewise.
+ * sysdeps/unix/bsd/setrgid.c: Likewise.
+ * sysdeps/unix/bsd/setruid.c: Likewise.
+ * sysdeps/unix/bsd/setsid.c: Likewise.
+ * sysdeps/unix/bsd/setuid.c: Likewise.
+ * sysdeps/unix/bsd/sigaction.c: Likewise.
+ * sysdeps/unix/bsd/sigprocmask.c: Likewise.
+ * sysdeps/unix/bsd/sigsuspend.c: Likewise.
+ * sysdeps/unix/bsd/sys/reboot.h: Likewise.
+ * sysdeps/unix/bsd/telldir.c: Likewise.
+ * sysdeps/unix/bsd/times.c: Likewise.
+ * sysdeps/unix/bsd/usleep.c: Likewise.
+
+ * misc/Makefile (install-lib): Remove libbsd-compat.a.
+ ($(objpfx)libbsd-compat.a): Remove rule.
+
+ * include/features.h (__FAVOR_BSD): Do not define.
+ * manual/creature.texi (_BSD_SOURCE): Do not document as enabling
+ features conflicting with POSIX.
+ (_GNU_SOURCE): Do not mention interaction with _BSD_SOURCE.
+ (_BSD_SOURCE): Remove description of not being a subset of other
+ feature test macros.
+ * manual/job.texi (getpgrp): Do not document BSD version.
+ (getpgid): Do not document by reference to BSD getpgrp.
+ * posix/unistd.h [__FAVOR_BSD]: Remove conditional code.
+ * setjmp/setjmp.h [__FAVOR_BSD]: Likewise.
+ * signal/signal.h [__FAVOR_BSD]: Likewise.
+ * sysdeps/gnu/netinet/tcp.h (struct tcphdr): Use anonymous unions
+ instead of making contents conditional on [__FAVOR_BSD].
+ * sysdeps/gnu/netinet/udp.h (struct udphdr): Likewise.
+
+2013-12-17 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2013-12-17 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #16314]
+ * sysdeps/ieee754/dbl-64/e_hypot.c (__ieee754_hypot): Adjust up
+ values below 2**-450, not 2**-500.
+ * math/auto-libm-test-in: Don't allow spurious underflow from
+ hypot.
+ * math/auto-libm-test-out: Regenerated.
+
+ [BZ #16316]
+ [BZ #16330]
+ * sysdeps/ieee754/dbl-64/e_hypot.c (__ieee754_hypot): Update
+ values of ha and hb and sort them after adjusting subnormal
+ arguments.
+ * sysdeps/ieee754/ldbl-128/e_hypotl.c (__ieee754_hypotl):
+ Likewise.
+ * sysdeps/ieee754/ldbl-96/e_hypotl.c (__ieee754_hypotl): Update
+ values of ea and eb and sort them after adjusting subnormal
+ arguments.
+ * math/auto-libm-test-in: Do not expect some hypot tests of
+ subnormals to fail. Add more hypot tests.
+ * math/auto-libm-test-out: Regenerated.
+
+2013-12-16 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ [BZ #13304]
+ * sysdeps/sh/s_fma.c: New file.
+ * sysdeps/sh/s_fmaf.c: New file.
+ * sysdeps/sh/soft-fp/sfp-machine.h: New file. Based on arm
+ version.
+ * sysdeps/sh/Implies: Add sh/soft-fp.
+
+2013-12-16 Roland McGrath <roland@hack.frob.com>
+
+ * elf/dl-error.c (struct catch): Add new member `errcode'. Add a
+ level of indirection to members `objname', `errstring', `malloced'.
+ (_dl_signal_error): Store through pointers in *LCATCH rather modifying
+ *LCATCH itself. Set *LCATCH->errcode to ERRCODE rather than passing
+ it as the __longjmp argument (just pass 1 instead).
+ (_dl_catch_error): Initialize C with argument pointers and address of
+ volatile local ERRCODE rather than copying values out of C at return.
+
+2013-12-16 Joseph Myers <joseph@codesourcery.com>
+
+ * math/auto-libm-test-in: Add tests of atan2, hypot and pow.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (atan2_test_data): Use AUTO_TESTS_ff_f.
+ (hypot_test_data): Likewise.
+ (pow_test_data): Likewise.
+ (pow_tonearest_test_data): Likewise.
+ * math/gen-auto-libm-tests.c (func_calc_method): Add value
+ mpfr_ff_f.
+ (func_calc_desc): Add mpfr_ff_f union field.
+ (FUNC_mpfr_ff_f): New macro.
+ (test_functions): Add atan2, hypot and pow.
+ (special_fill_min): New function.
+ (special_fill_minus_min): Likewise.
+ (special_fill_min_subnorm): Likewise.
+ (special_fill_minus_min_subnorm): Likewise.
+ (special_real_inputs): Add min, -min, min_subnorm and
+ -min_subnorm.
+ (calc_generic_results): Handle mpfr_ff_f.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-12-16 Will Newton <will.newton@linaro.org>
+
+ * manual/memory.texi (Malloc Examples): Mention aligned_alloc.
+ (Aligned Memory Blocks): Add documentation for aligned_alloc
+ and suggest it as an alternative to posix_memalign.
+ (Hooks for Malloc): Document __memalign_hook is also called
+ for aligned_alloc. (Summary of Malloc): Add summary for
+ aligned alloc. Document __memalign_hook is also called
+ for aligned_alloc.
+
+2013-12-16 Will Newton <will.newton@linaro.org>
+
+ * manual/memory.texi (Malloc Examples): Clarify default
+ alignment documentation. Suggest posix_memalign rather
+ than memalign or valloc.
+ (Aligned Memory Blocks): Remove suggestion to use memalign
+ or valloc. Remove obsolete comment about BSD.
+ Document memalign errno values and mark the function obsolete.
+ Document posix_memalign returned error codes. Mark valloc
+ as obsolete. (Hooks for Malloc): __memalign_hook is also
+ called for posix_memalign and valloc.
+ (Summary of Malloc): Add posix_memalign to function summary.
+ __memalign_hook is also called for posix_memalign and valloc.
+
+2013-12-16 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * sysdeps/ieee754/dbl-64/s_sin.c (TAYLOR_SINCOS): Rename to
+ TAYLOR_SIN.
+ (__sin): Adjust.
+ (__cos): Likewise.
+ (sloww): Use mynumber union. Expand ternary operator into
+ if-else statements.
+ (cslow): use mynumber union.
+
+2013-12-16 Allan McRae <allan@archlinux.org>
+
+ * configure.ac: Set AUTOCONF when maintainer-mode is not used.
+ * configure: Regenerated.
+
+ * sysdeps/x86_64/multiarch/ifunc-impl-list.c: Update file name.
+
+ [BZ #14120]
+ * configure.ac: Added --enable-maintainer-mode. Check for
+ autoconf when enabled.
+ * configure: Regenerated.
+
+ * nscd/nscd.service: New file.
+ * nscd/nscd.tmpfiles: New file.
+
+2013-12-14 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #12100]
+ * sysdeps/x86_64/multiarch/strstr-sse2-unaligned.S: New file
+ * sysdeps/x86_64/multiarch/strstr-c.c: Moved to ...
+ * sysdeps/x86_64/multiarch/strstr.c: ... here.
+ (strstr): Add __strstr_sse2_unaligned ifunc.
+ * sysdeps/x86_64/multiarch/strcasestr-c.c: Moved to ...
+ * sysdeps/x86_64/multiarch/strcasestr.c ... here.
+ (strcasestr): Remove __strcasestr_sse42 ifunc.
+ * sysdeps/x86_64/multiarch/strcasestr-nonascii.c: Remove.
+ * sysdeps/x86_64/multiarch/ifunc-impl-list.c: Update.
+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Update.
+
+2013-12-14 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sysdeps/sh/sh4/fpu/bits/fenv.h: Move to ...
+ * sysdeps/sh/bits/fenv.h: ... here.
+ * sysdeps/sh/sh4/fpu/bits: Remove directory.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * NEWS: Mention ppc64 STT_GNU_IFUNC support.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add hypot and
+ hypotf multiarch implementations.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot.c: New file:
+ multiarch hypot for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf.c : New file:
+ multiarch hypotf for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add modf and
+ modff multiarch implementations.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-power5+.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c: New file:
+ multiarch modf for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-power5+.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff.c : New file:
+ multiarch modff for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add logb, logbf,
+ and logl multiarch implementations.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb.c: New file:
+ multiarch logb for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf.c: New file:
+ multiarch logb for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl.c: New file:
+ multiarch logb for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add isinf and
+ isinff multiarch implementation.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-ppc64.S: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf.c: New file:
+ multiarch isinf for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff-ppc64.c: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff.c: New file:
+ multiarch isinff for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add finite and
+ finitef multiarch implementation.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-ppc64.S: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite.c: New file:
+ multiarch finite for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef-ppc64.c: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef.c: New file:
+ multiarch finitef for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add llrint and
+ lrint multiarch implementation.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-power6x.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-ppc64.S: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint.c: New file:
+ multiarch llrint for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_lrint.c: New file:
+ multiarch lrint for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add copysign/
+ copysignf multiarch implementation.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-power6.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-ppc64.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign.c: New file:
+ multiarch copysign for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysignf.c: New file:
+ multiarch copysignf for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add trunc/truncf
+ multiarch implementation.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-power5+.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-ppc64.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-power5+.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-ppc64.S: New
+ file.
+ multiarch llround for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c: New file:
+ multiarch trunc for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf.c: New file:
+ multiarch truncf for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add round/roundf
+ multiarch implementation.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-power5+.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-ppc64.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-power5+.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-ppc64.S: New
+ file.
+ multiarch llround for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c: New file:
+ multiarch round for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf.c: New file:
+ multiarch roundf for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add floor/floorf
+ multiarch implementation.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-power5+.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-ppc64.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-power5+.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-ppc64.S: New
+ file.
+ multiarch llround for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c: New file:
+ multiarch floor for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf.c: New file:
+ multiarch floorf for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add ceil/ceilf
+ multiarch implementation.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-power5+.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-ppc64.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-power5+.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-ppc64.S: New
+ file.
+ multiarch llround for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c: New file:
+ multiarch ceil for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf.c: New file:
+ multiarch ceilf for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add llround
+ multiarch implementation.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power5+.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power6x.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-ppc64.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround.c: New file:
+ multiarch llround for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_lround.c: New file:
+ multiarch lround for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile: Add isnan
+ multiarch implementation.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power5.S: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6.S: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6x.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S: New file.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan.c: New file:
+ multiarch isnan for PPC64.
+ * sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnanf.c: New file:
+ multiarch isnanf for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/power5+/fpu/multiarch/Implies: New file.
+ * sysdeps/powerpc/powerpc64/power5/fpu/multiarch/Implies: New file.
+ * sysdeps/powerpc/powerpc64/power6/fpu/multiarch/Implies: New file.
+ * sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies: New file.
+ * sysdeps/powerpc/powerpc64/power7/fpu/multiarch/Implies: New file
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/Implies: Remove.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/fpu/w_sqrt.c: Remove file
+ * sysdeps/powerpc/fpu/w_sqrtf.c: Likewise.
+ * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c: Likewise.
+ * sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c: Likewise.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add stpcpy
+ multiarch implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/stpcpy-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/stpcpy-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/stpcpy.c : New file:
+ multiarch stpcpy for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add strcpy
+ multiarch implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/strcpy-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strcpy-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strcpy.c : New file:
+ multiarch strcpy for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * string/wordcopy.c (_wordcopy_fwd_aligned): Add define to
+ redefine function name.
+ (_wordcopy_fwd_dest_aligned): Likewise.
+ (_wordcopy_bwd_aligned): Likewise.
+ (_wordcopy_bwd_dest_aligned): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add wordcopy
+ multiarch implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/wordcopy-power6.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wordcopy-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wordcopy.c : New file:
+ multiarch wcscpy for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add wcscpy
+ multiarch implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/wcscpy-power6.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wcscpy-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wcscpy-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wcscpy.c : New file:
+ multiarch wcscpy for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add wcsrchr
+ multiarch implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power6.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wcsrchr-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wcsrchr.c : New file:
+ multiarch wcsrchr for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add wcschr
+ multiarch implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/wcschr-power6.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wcschr-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wcschr-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/wcschr.c : New file:
+ multiarch wcschr for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add strchrnul
+ multiarch implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/strchrnul-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strchrnul-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strchrnul.c: New file:
+ multiarch strchrnul for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add strchr multiarch
+ implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/rtld-strchr.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strchr-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strchr-ppc64.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strchr.c: New file: multiarch
+ strchr for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add strncmp multiarch
+ implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/strncmp-power4.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strncmp-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strncmp-ppc64.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strncmp.c: New file: multiarch
+ strncmp for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add strncasecmp
+ multiarch implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/strncase-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strncase.c: New file: multiarch
+ strncasecmp for PPC64.
+ * sysdeps/powerpc/powerpc64/multiarch/strncase_l-power7.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strncase_l.c: New file:
+ multiarch strncasecmp_l for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add strcasecmp
+ multiarch implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c:
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/strcasecmp-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strcasecmp.c: New file:
+ multiarch strcasecmp for PPC64.
+ * sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l.c: new file:
+ multiarch strcasecmp_l for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add strnlen multiarch
+ implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/strnlen-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strnlen-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strnlen.c: New file: multiarch
+ strnlen for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add strlen multiarch
+ implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/strlen-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strlen-ppc64.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/strlen.c: New file: multiarch
+ strlen for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add rawmemch multiarch
+ implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/rawmemchr-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/rawmemchr-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/rawmemchr.c: New file: multiarch
+ rawmemrchr for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add memrchr multiarch
+ implementation.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/memrchr-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memrchr-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memrchr.c: New file: multiarch
+ memrchr for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add memchr multiarch
+ implementation.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/memchr-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memchr-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memchr.c: New file: multiarch
+ memchr for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add mempcpy multiarch
+ implementation.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/mempcpy-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/mempcpy-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/mempcpy.c: New file: multiarch
+ mempcpy for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/memset.S (NO_BZERO_IMPL): Add macro to
+ avoid cretion of __bzero symbol.
+ * sysdeps/powerpc/powerpc64/power4/memset.S (NO_BZERO_IMPL):
+ Likewise.
+ * sysdeps/powerpc/powerpc64/power6/memset.S (NO_BZERO_IMPL):
+ Likewise.
+ * sysdeps/powerpc/powerpc64/power7/memset.S (NO_BZERO_IMPL):
+ Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add memset/bzero
+ multiarch implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/bzero-power4.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/bzero-power6.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/bzero-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/bzero.c: New file: multiarch
+ bzero for PPC32.
+ * sysdeps/powerpc/powerpc64/multiarch/memset-power4.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memset-power6.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memset-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memset-ppc64.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memset.c: New file: multiarch
+ memset for PPC64.
+ * sysdeps/powerpc/powerpc64/multiarch/rtld-memset.c: New file.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * string/memcmp.c (memcmp): Using macro to redefine symbol name.
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: Add memcpy multiarch
+ implementations.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/memcmp-power4.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memcmp-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memcmp-ppc64.c: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memcmp.c: New file: multiarch
+ memcmp for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/multiarch/Makefile: New file to support
+ multiarch for POWER/PPC64.
+ * sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c: Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/init-arch.h: Likewise.
+ * sysdeps/powerpc/powerpc64/multiarch/memcpy-a2.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memcpy-cell.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memcpy-power4.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memcpy-power6.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memcpy-power7.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memcpy-ppc64.S: New file.
+ * sysdeps/powerpc/powerpc64/multiarch/memcpy.c: New file: multiarch
+ memcpy for PPC64.
+
+2013-12-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/power4/fpu/Implies: New file.
+ * sysdeps/powerpc/powerpc64/power4/fpu/multiarch/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power4/multiarch/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power5+/multiarch/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power5/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power5/fpu/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power5/multiarch/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power6/fpu/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power6/multiarch/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power7/fpu/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power7/multiarch/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power8/fpu/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power8/fpu/multiarch/Implies: New File.
+ * sysdeps/powerpc/powerpc64/power8/multiarch/Implies: New File.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/power8/Implies: Remove.
+
+2013-12-12 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Use $$ver.
+
+2013-12-12 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * benchtests/Makefile (bench): Add exp2 and log2.
+ (LDLIBS-bench-exp2): Add -lm.
+ (LDLIBS-bench-log2): Likewise.
+ * benchtests/exp2-inputs: New inputs file.
+ * benchtests/log2-inputs: New inputs file.
+ * benchtests/log-inputs: Add new inputs.
+ * benchtests/tan-inputs: Likewise.
+
+2013-12-11 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * sysdeps/ieee754/dbl-64/s_sin.c (t22): Consolidate const
+ definition...
+ (slow1, slow2, sloww1, sloww2, bsloww1, bsloww2, cslow2,
+ csloww1, csloww2): ... from here.
+
+ * sysdeps/ieee754/dbl-64/usncs.h: Define constants as double
+ instead of structures.
+ * sysdeps/ieee754/dbl-64/s_sin.c (POLYNOMIAL2): Adjust.
+ (POLYNOMIAL): Likewise.
+ (TAYLOR_SLOW): Likewise.
+ (__sin): Likewise.
+ (__cos): Likewise.
+ (slow1): Likewise.
+ (slow2): Likewise.
+ (sloww): Likewise.
+ (sloww1); Likewise.
+ (sloww2): Likewise.
+ (bsloww1): Likewise.
+ (bsloww2): Likewise.
+ (cslow2): Likewise.
+ (csloww): Likewise.
+ (csloww1): Likewise.
+ (csloww2): Likewise.
+
+2013-12-10 Ondřej Bílka <neleai@seznam.cz>
+
+ * malloc/malloc.c (MALLOC_COPY, MALLOC_ZERO): Delete.
+ (__malloc_assert, __libc_realloc, __libc_calloc,
+ _int_realloc): Expand MALLOC_COPY and MALLOC_ZERO to
+ memcpy and memset.
+ * malloc/hooks.c (realloc_check): Likewise.
+
+2013-12-10 Ondřej Bílka <neleai@seznam.cz>
+
+ * malloc/Makefile (CPPFLAGS-malloc.c): Remove -DPER_THREAD flag.
+ * malloc/arena.c: Remove PER_THREAD conditional.
+ [!PER_THREAD]: Remove code.
+ (ptmalloc_unlock_all2): Likewise.
+ (ptmalloc_init): Likewise.
+ (_int_new_arena): Likewise.
+ (arena_get2): Likewise.
+ * malloc/hooks.c (__malloc_get_state): Likewise.
+ (__malloc_set_state): Likewise.
+ * malloc/malloc.c: Likewise.
+ (struct malloc_state): Likewise.
+ (struct malloc_par): Likewise.
+ (__libc_realloc): Likewise.
+ (__libc_mallopt): Likewise.
+
+2013-12-09 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * Versions.def (libm): Add GLIBC_2.3 and GLIBC_2.19.
+
+2013-12-09 Ondřej Bílka <neleai@seznam.cz>
+
+ * malloc/malloc.c (alloc_perturb, free_perturb): Convert from
+ macro to a function. Check for zero perturb_byte.
+ (_int_malloc, _int_free): Remove zero perturb_byte checks.
+
+2013-12-09 Ondřej Bílka <neleai@seznam.cz>
+
+ * malloc/malloc.c: (force_reg): Remove.
+ (__malloc_assert, __libc_malloc, __libc_free, __libc_realloc,
+ _mid_memalign, __libc_calloc, sysmalloc, systrim): Replace
+ force_reg by atomic_forced_read.
+ * malloc/arena.c (ptmalloc_init): Likewise.
+ * malloc/hooks.c (top_check): Likewise.
+
+2013-12-09 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2013-12-09 Markus Trippelsdorf <markus@trippelsdorf.de>
+
+ * sysdeps/x86_64/fpu/libm-test-ulps: Update.
+
+2013-12-08 Joseph Myers <joseph@codesourcery.com>
+
+ * math/auto-libm-test-in: Add tests of lgamma.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (M_LOG_SQRT_PIl): Remove macro.
+ (M_LOG_2_SQRT_PIl): Likewise.
+ (lgamma_test_data): Use AUTO_TESTS_f_f1.
+ * math/gen-auto-libm-tests.c (func_calc_method): Add value
+ mpfr_f_f1.
+ (func_calc_desc): Add mpfr_f_f1 union field.
+ (ARGS1): New macro.
+ (ARGS2): Likewise.
+ (ARGS3): Likewise.
+ (ARGS4): Likewise.
+ (RET1): Likewise.
+ (RET2): Likewise.
+ (CALC): Likewise.
+ (FUNC): Likewise.
+ (FUNC_mpfr_f_f): Use new macros FUNC, ARGS1, RET1 and CALC.
+ (test_functions): Add lgamma.
+ (calc_generic_results): Handle mpfr_f_f1.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/power7/add_n.S: New file: optimized
+ __mpn_add_n for PowerPC64/POWER7.
+ * sysdeps/powerpc/powerpc64/power7/sub_n.S: New file: optimized
+ __mpn_sub_n for PowerPC64/POWER7.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/addmul_1.S: New file: optimized
+ __mpn_addmul_1 for PowerPC64.
+ * sysdeps/powerpc/powerpc64/submul_1.S: New file: optimized
+ __mpn_submul_1 for PowerPC64.
+ * sysdeps/powerpc/powerpc64/lshift.S: New file: optimized __mpn_lshift
+ for PowerPC64.
+ * sysdeps/powerpc/powerpc64/mul_1.S: New file: optimized __mpn_mul_1
+ for PowerPC64.
+
+2013-12-06 Fernando J. V. da Silva <fernandojvdasilva@gmail.com>
+
+ [BZ #15089]
+ * malloc/malloc.c: Exit systrim() if pad is bigger than heap top size.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * NEWS: Mention ppc32/power4+ STT_GNU_IFUNC support.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power5+/fpu/multiarch/Implies: New file:
+ add multiarch folders.
+ * sysdeps/powerpc/powerpc32/power5+/multiarch/Implies: Likewise.
+ * sysdeps/powerpc/powerpc32/power5/fpu/multiarch/Implies: Likewise.
+ * sysdeps/powerpc/powerpc32/power5/multiarch/Implies: Likewise.
+ * sysdeps/powerpc/powerpc32/power6/fpu/multiarch/Implies: Likewise.
+ * sysdeps/powerpc/powerpc32/power6/multiarch/Implies: Likewise.
+ * sysdeps/powerpc/powerpc32/power6x/fpu/multiarch/Implies: Likewise.
+ * sysdeps/powerpc/powerpc32/power6x/multiarch/Implies: Likewise.
+ * sysdeps/powerpc/powerpc32/power7/fpu/multiarch/Implies: Likewise.
+ * sysdeps/powerpc/powerpc32/power7/multiarch/Implies: Likewise.
+ * sysdeps/powerpc/powerpc32/power8/fpu/multiarch/Implies: Likewise.
+ * sysdeps/powerpc/powerpc32/power8/multiarch/Implies: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/Implies: Remove.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power8/Implies: Remove.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add
+ __ieee754_hypot and __ieee754_hypotf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-power7.c:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-ppc32.c:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot.c: New file:
+ multiarch __ieee754_hypot for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-power7.c:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-ppc32.c:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf.c: New file:
+ multiarch __ieee754_hypotf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/ieee754/ldbl-128ibm/s_logbl.c (__logbl): Define
+ long_double_symbol only if __logbl is defined.
+ * sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c: Moved to ...
+ * sysdeps/powerpc/power7/fpu/s_logb.c: ... here.
+ * sysdeps/powerpc/powerpc32/power7/fpu/s_logbf.c: Move to ...
+ * sysdeps/powerpc/power7/fpu/s_logbf.c: ... here.
+ * sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c: Move to ...
+ * sysdeps/powerpc/power7/fpu/s_logbl.c: ... here.
+ * sysdeps/powerpc/powerpc64/power7/fpu/s_logb.c: Adjust to use new
+ path for implementation.
+ * sysdeps/powerpc/powerpc64/power7/fpu/s_logbf.c: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/fpu/s_logbl.c: Likewise.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add logbf,
+ logb, and logbl multiarch implementations for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-power7.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb.c: New file:
+ multiarch logb for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-power7.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf.c: New file:
+ multiarch logbf for PowerPC32.
+ * sysdeps/powerpc/power4/fpu/multiarch/s_logbl-power7.c: New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl.c: New file:
+ multiarch logbl implementation for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add modf
+ and modff multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-ppc32.c:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf.c: New file:
+ multiarch modf for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-ppc32.c:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff.c: New file:
+ multiarch modff for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add lrint
+ and lrintf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-power6x.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-ppc32.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint.c: New file:
+ multiarch lrint for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrintf.c: New
+ file: multiarch lrintf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add lround
+ and lroundf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power5+.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power6.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-ppc32.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround.c: New file:
+ multiarch lround for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lroundf.c: New
+ file: multiarch lroundf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add
+ copysign and copysignf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-power6.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-ppc32.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign.c: New
+ file: multiarch copysign for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysignf.c: New
+ file: multiarch copysignf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add trunc
+ and truncf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc-power5+.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc.c: New file:
+ multiarch trunc for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf-power5+.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf-ppc32.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf.c: New file:
+ multiarch truncf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add round
+ and roundf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round-power5+.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round.c: New file:
+ multiarch round for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf-power5+.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf-ppc32.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf.c: New file:
+ multiarch roundf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add floor
+ and floorf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-power5+.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor.c: New file:
+ multiarch floor for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-power5+.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-ppc32.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf.c: New file:
+ multiarch floorf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add ceil
+ and ceilf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-power5+.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil.c: New file:
+ multiarch ceil for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-power5+.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf.c: New file:
+ multiarch ceilf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/ieee754/dbl-64/s_finite.c (__finite): Redefine it if FINITE
+ is defined.
+ * sysdeps/ieee754/flt-32/s_finitef.c (__finitef): Redefine it if
+ FINITEF is defined.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add finite
+ and finitef multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-power7.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite.c: New file:
+ multiarch finite for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef-ppc32.c:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef.c: New
+ file: multiarch finitef for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add isinf
+ and isinff multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf.c: New file:
+ multiarch isinf for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff-ppc32.c:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff.c: New file:
+ multiarch isinff for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/fpu/s_isnan.S (__isnan): Only implement
+ alias when __isnan is defined.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add isnan
+ and isnanf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power5.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power6.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan.c: New file:
+ multiarch isnan for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power6.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power7.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf.c: New file:
+ multiarch isnanf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add sqrt
+ and sqrtf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt-power5.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt.c: New file:
+ multiarch sqrt for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf-power5.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf.c: New file:
+ multiarch sqrtf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: Add llround
+ and llroundf multiarch implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power5+.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power6.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-ppc32.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround.c: New
+ file: multiarch llround for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llroundf.c: New
+ file: multiarch llroundf for PowerPC32.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile: New file:
+ multiarch PowerPC32 fpu implementations.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-power6.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-ppc32.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint.c: New file:
+ multiarch llrint for PowerPC32.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-power6.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-ppc32.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf.c: New
+ file.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/Implies: Remove.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power6.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power7.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy.c: New file:
+ multiarch wordcopy for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added wcscpy
+ wordcopy objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc32/power4/wordcopy.c: Move ...
+ * sysdeps/powerpc/power4/wordcopy.c: ... to here.
+ * sysdeps/powerpc/powerpc32/power6/wordcopy.c: Move ...
+ * sysdeps/powerpc/power6/wordcopy.c: ... to here.
+ * sysdeps/powerpc/powerpc64/power6/wordcopy.c: Remove uneeded file.
+ * sysdeps/powerpc/powerpc64/power4/wordcopy.c: Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * wcsmbs/wcscpy.c (wcscpy): Using macro to redefine symbol name
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power6.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power7.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c: New file:
+ multiarch wcscpy for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added wcscpy
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc32/power6/wcsrchr.c: Move ...
+ * sysdeps/powerpc/power6/wcsrchr.c: ... to here.
+ * sysdeps/powerpc/powerpc64/power6/wcscpy.c: Adjust to use
+ sysdeps/powerpc/power6/wcscpy.c.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * wcsmbs/wcsrchr.c (wcsrchr): Using macro to redefine symbol name
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power6.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power7.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr.c: New file:
+ multiarch wcsrchr for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added wcschr
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc32/power6/wcsrchr.c: Move ...
+ * sysdeps/powerpc/power6/wcsrchr.c: ... to here.
+ * sysdeps/powerpc/powerpc64/power6/wcsrchr.c: Adjust to use
+ sysdeps/powerpc/power6/wcsrchr.c.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power6.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power7.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-ppc32.c: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/wcschr.c: New file:
+ multiarch wcschr for PPc32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added wcschr
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+ * sysdeps/powerpc/powerpc32/power6/wcschr.c: Move ...
+ * sysdeps/powerpc/power6/wcschr.c: ... to here.
+ * sysdeps/powerpc/powerpc64/power6/wcschr.c: Adjust to use
+ sysdeps/powerpc/power6/wcschr.c.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/rtld-strchr.S: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strchr-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strchr-ppc32.S: New file.
+ * sysdeps/powerpc/powerpc/powerpc32/power4/multiarch/strchr.c: New
+ file: multiarch strchr for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added strchr
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * string/strchrnul.c (__strchrnul): Using macro to redefine symbol
+ name.
+ * sysdeps/powerpc/powerpc32/power4//multiarch/strchrnul-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul.c: New file:
+ multiarch strchrnul for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added strchrnul
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncase-power7.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c: New file:
+ multiarch strncasecmp for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l-power7.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c: New file:
+ multiarch strncasecmp_l for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added
+ strncasecmp multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp.c: New file:
+ multiarch strncasecmp for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l-power7.S:
+ New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l.c: New file:
+ multiarch strcasecmp_l for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added strcasecmp
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c: New file:
+ multiarch strncmp for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added strncmp
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/rtld-strnlen.c: New file.
+ * sysdeps/powerpc/powerpc32//power4/multiarch/strnlen-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strnlen.c: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added strnlen
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strlen-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strlen-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/strlen.c: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added strlen
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr.c: New file:
+ multiarch rawmemchr for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added rawmemchr
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memrchr.c: New
+ file: memrchr multiarch for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Added memrchr
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * string/memchr.c (__memchr): Using macro to redefine symbol name.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memchr-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memchr-ppc32.c: New File.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memchr.c: New file:
+ multiarch memchr for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Add memchr
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * string/mempcpy.c (__mempcpy): Using macro to redefine symbol name.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-ppc32.c: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy.c: New
+ file: multiarch mempcpy for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Add mempcpy
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/bzero-power6.S: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/bzero-power7.S: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/bzero-ppc32.S: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/bzero.c: New file:
+ multiarch bzero for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memset-power6.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memset-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memset-ppc32.S: New file.
+ * sysdeps/powerpc/powerpc/powerpc32/power4/multiarch/memset.c: New
+ file: multiarch memset for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/rtld-memset.S: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Add bzero and
+ memset multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-ppc32.S: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memcmp.c: multiarch
+ memcmp for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/rtld-memcmp.S: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Add memcmp
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-a2.S: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-cell.S: New file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-power6.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-power7.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-ppc32.S: New
+ file.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/memcpy.c: New file:
+ multiarch memcpy for PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: Add memcpy
+ multiarch objects.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Likewise.
+
+2013-12-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power4/multiarch/Makefile: New file to
+ support multiarch for POWER/PPC32.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c:
+ Likewise.
+ * sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/Implies: Remove
+ Implies file to make multiarch folder appers before the fpu and
+ default folder for power4 configuration.
+
+2013-12-06 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * scripts/bench.pl: Append volatile keyword to type.
+
+2013-12-05 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sysdeps/sh/sotruss-lib.c: New file.
+ * sysdeps/unix/sysv/linux/sh/nptl/c++-types.data: New file.
+
+2013-12-05 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2013-12-05 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #6810]
+ * math/w_tgamma.c: Include <errno.h>.
+ (__tgamma): Use __glibc_unlikely. Set errno on underflow to 0.
+ * math/w_tgammaf.c: Include <errno.h>.
+ (__tgammaf): Use __glibc_unlikely. Set errno on underflow to 0.
+ * math/w_tgammal.c: Include <errno.h>.
+ (__tgammal): Use __glibc_unlikely. Set errno on underflow to 0.
+ * math/auto-libm-test-in: Do not allow missing errno on tgamma
+ underflow. Add more tgamma tests.
+ * math/auto-libm-test-out: Regenerated.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+ * math/auto-libm-test-in: Add tests of log, log10, log1p, log2,
+ sin, sinh, tan, tanh, tgamma, y0 and y1.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (TEST_COND_x86_64): New macro.
+ (TEST_COND_x86): Likewise.
+ (M_E2l): Remove macro.
+ (M_E3l): Likewise.
+ (M_2_SQRT_PIl): Likewise.
+ (M_SQRT_PIl): Likewise.
+ (M_1_DIV_El): Likewise.
+ (log_test_data): Use AUTO_TESTS_f_f.
+ (log10_test_data): Likewise.
+ (log1p_test_data): Likewise.
+ (log2_test_data): Likewise.
+ (sin_test_data): Likewise.
+ (sin_tonearest_test_data): Likewise.
+ (sin_towardzero_test_data): Likewise.
+ (sin_downward_test_data): Likewise.
+ (sin_upward_test_data): Likewise.
+ (sinh_test_data): Likewise.
+ (sinh_tonearest_test_data): Likewise.
+ (sinh_towardzero_test_data): Likewise.
+ (sinh_downward_test_data): Likewise.
+ (sinh_upward_test_data): Likewise.
+ (tan_test_data): Likewise.
+ (tan_tonearest_test_data): Likewise.
+ (tan_towardzero_test_data): Likewise.
+ (tan_downward_test_data): Likewise.
+ (tan_upward_test_data): Likewise.
+ (tanh_test_data): Likewise.
+ (tgamma_test_data): Likewise.
+ (y0_test_data): Likewise.
+ (y1_test_data): Likewise.
+ * math/gen-auto-libm-tests.c (special_fill_pi_4): New function.
+ (special_real_inputs): Add pi/4.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-12-05 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/__longjmp-common.S: Add "longjmp" and
+ "longjmp_target" static probes.
+ (__longjmp): Rename to __longjmp_symbol.
+ * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
+ * sysdeps/powerpc/powerpc32/__longjmp.S: Define __longjmp_symbol based
+ on which longjmp to generate.
+ * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
+ * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Add "setjmp" static
+ probe.
+ (__sigsetjmp): Rename to __sigsetjmp_symbol.
+ (__sigjmp_save): Rename to __sigjmp_save_symbol.
+ * sysdeps/powerpc/powerpc32/setjmp-common.S: Likewise.
+ * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Define __sigsetjmp_symbol
+ and __sigjmp_save_symbol based on which sigsetjmp to generated.
+ * sysdeps/powerpc/powerpc32/setjmp.S: Likewise
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S: Define
+ __longjmp_symbol based on which __longjmp to generate.
+ * sysdeps/powerpc/powerpc64/setjmp-common.S: Add "setjmp" static
+ probe.
+ (setjmp): Rename to setjmp_symbol.
+ (__sigsetjmp): Rename to __sigsetjmp_symbol.
+ (_setjmp): Rename to _setjmp_symbol.
+ (__sigsetjmp): Rename to __sigsetjmp_symbol.
+ * sysdeps/powerpc/powerpc64/setjmp.S: Define setjmp_symbol,
+ _setjmp_symbol, __sigsetjmp_symbol, and __sigjmp_save_symbol based on
+ which setjmp to generate.
+ * sysdeps/powerpc/powerpc64/__longjmp-common.S: Add "longjmp" and
+ "longjmp_target" static probes.
+
+2013-12-05 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * benchtests/README: Add note about output arguments.
+ * benchtests/bench-sincos.c: Remove file.
+ * benchtests/sincos-inputs: New file.
+ * scripts/bench.pl: Identify output arguments and define
+ static variables for them.
+
+ * debug/stpncpy_chk.c (__stpncpy_chk): Remove unused variables.
+
+ [BZ #15941]
+ * Makefile (INSTALL): Add install-plain.texi as the primary
+ dependency.
+ * manual/install-plain.texi: New file.
+ * manual/install.texi: Include node directive only for
+ non-plaintext output.
+
+2013-12-04 Joseph Myers <joseph@codesourcery.com>
+
+ * stdlib/longlong.h: Update from GCC.
+
+ [BZ #6807]
+ [BZ #15901]
+ * math/w_j0.c (y0): Raise FE_DIVBYZERO on zero argument.
+ * math/w_j0f.c (y0f): Likewise.
+ * math/w_j0l.c (__y0l): Likewise.
+ * math/w_j1.c (y1): Likewise.
+ * math/w_j1f.c (y1f): Likewise.
+ * math/w_j1l.c (__y1l): Likewise
+ * math/w_jn.c (yn): Likewise.
+ * math/w_jnf.c (ynf): Likewise.
+ * sysdeps/ieee754/k_standard.c (__kernel_standard): Use ERANGE for
+ Bessel function pole errors in _POSIX_ mode. Use NAN as return
+ value for Bessel function domain errors outside _SVID_ mode.
+ Adjust sign of return value for yn (negative integer, 0).
+ * sysdeps/ieee754/ldbl-128/e_jnl.c (__ieee754_ynl): Use division
+ by zero in return for negative x and set sign appropriately for
+ negative n.
+ * sysdeps/ieee754/ldbl-128ibm/e_jnl.c (__ieee754_ynl): Likewise.
+ * sysdeps/ieee754/ldbl-96/e_jnl.c (__ieee754_ynl): Likewise.
+ * math/libm-test.inc (y0_test_data): Add more tests and adjust
+ expectations in error cases.
+ (y1_test_data): Likewise.
+ (yn_test_data): Likewise.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-11-12 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/Makefile (abi-variants): Rename
+ "64" to "64-v1". Add "64-v2".
+ (abi-64-options): Rename to ...
+ (abi-64-v1-options): ... this. Redefine _CALL_ELF.
+ (abi-64-condition): Rename to ...
+ (abi-64-v1-condition): ... this. Add _CALL_ELF check.,
+ (abi-64-ld-soname): Rename to ...
+ (abi-64-v1-ld-soname): ... this.
+ (abi-64-v2-options): Define.
+ (abi-64-v2-condition): Likewise.
+ (abi-64-v2-ld-soname): Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/ldconfig.h
+ (SYSDEP_KNOWN_INTERPRETER_NAMES): Add "/lib64/ld64.so.2".
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile: Delete file.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac: New file.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/configure: Generate.
+
+2013-11-12 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+ Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/bits/link.h (La_ppc64v2_regs, La_ppc64v2_retval):
+ New versions for use with the ELFv2 ABI.
+ (la_ppc64v2_gnu_pltenter, la_ppc64v2_gnu_pltexit): Add prototypes.
+ * sysdeps/powerpc/lsdodefs.h (struct La_ppc64v2_regs): Add forward
+ declaration.
+ (struct La_ppc64v2_retval): Likewise.
+ (ARCH_PLTENTER_MEMBERS): Add ppc64v2_gnu_pltenter.
+ (ARCH_PLTEXIT_MEMBERS): Add ppc64v2_gnu_pltexit.
+ * sysdeps/powerpc/powerpc64/dl-machine.h (ARCH_LA_PLTENTER): Define
+ to ppc64v2_gnu_pltenter if _CALL_ELF == 2.
+ (ARCH_LA_PLTEXIT): Define to ppc64v2_gnu_pltexit if _CALL_ELF == 2.
+ * sysdeps/powerpc/powerpc64/dl-trampoline.S (_dl_runtime_resolve):
+ Do not save or restore CR.
+ (FRAME_SIZE, VR_RTN): Provide updated values for _CALL_ELF == 2.
+ (_dl_profile_resolve): Do no save or restore CR. Support extended
+ return values for ELFv2 ABI. Fix location of FPR return registers.
+ * sysdeps/powerpc/powerpc64/tst-audit.h (pltenter, pltexit): Provide
+ updated values for _CALL_ELF == 2.
+ (La_regs, La_retval, int_retval): Likewise.
+
+2013-12-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/sysdep.h (FRAME_MIN_SIZE): Define.
+ (FRAME_MIN_SIZE_PARM): Likewise.
+ (FRAME_BACKCHAIN): Likewise.
+ (FRAME_CR_SAVE): Likewise.
+ (FRAME_LR_SAVE): Likewise.
+ (FRAME_TOC_SAVE): Likewise.
+ (FRAME_PARM_SAVE): Likewise.
+ (FRAME_PARM1_SAVE, FRAME_PARM2_SAVE, FRAME_PARM3_SAVE,
+ FRAME_PARM4_SAVE, FRAME_PARM5_SAVE, FRAME_PARM6_SAVE,
+ FRAME_PARM7_SAVE, FRAME_PARM8_SAVE, FRAME_PARM9_SAVE): Likewise.
+ (call_mcount_parm_offset): New macro.
+ (SAVE_ARG, REST_ARG, CFI_SAVE_ARG): Use it.
+ (PROF): Use symbolic stack frame offsets.
+ (TAIL_CALL_SYSCALL_ERROR): Likewise.
+ * sysdeps/powerpc/powerpc64/dl-trampoline.S (FRAME_SIZE, INT_PARMS):
+ Redefine in terms of FRAME_MIN_SIZE.
+ (_dl_runtime_resolve): Use symbolic stack frame offsets.
+ (_dl_profile_resolve): Likewise. Update comment.
+ * sysdeps/powerpc/powerpc64/setjmp-common.S (__GI__setjmp): Use
+ symbols stack frame offsets.
+ (__sigsetjmp): Likewise.
+ * sysdeps/powerpc/powerpc64/__longjmp-common.S (__longjmp): Likewise.
+ * sysdeps/powerpc/powerpc64/ppc-mcount.S (_mcount): Likewise.
+ * sysdeps/powerpc/powerpc64/crti.S (_init, _fini): Likewise.
+ * sysdeps/powerpc/powerpc64/crtn.S (_init, _fini): Likewise.
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym
+ (FRAME_BACKCHAIN): Remove.
+ (FRAME_CR_SAVE): Likewise.
+ (FRAME_LR_SAVE): Likewise.
+ (FRAME_COMPILER_DW): Likewise.
+ (FRAME_LINKER_DW): Likewise.
+ (FRAME_TOC_SAVE): Likewise.
+ (FRAME_PARM_SAVE): Likewise.
+ (FRAME_PARM1_SAVE, FRAME_PARM2_SAVE, FRAME_PARM3_SAVE,
+ FRAME_PARM4_SAVE, FRAME_PARM5_SAVE, FRAME_PARM6_SAVE,
+ FRAME_PARM7_SAVE, FRAME_PARM8_SAVE, FRAME_PARM9_SAVE): Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S
+ (CHECK_SP): Use symbolic stack frame offsets.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Use "red
+ zone" instead of caller's parameter save area for temp storage.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone):
+ Likewise. Also, use symbolic stack frame offsets.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (FRAMESIZE,
+ stackblock): Redefine for _CALL_ELF == 2 to save parameters into
+ our own stack frame instead of the caller's.
+ (__socket): Use symbolic stack frame offsets.
+
+2013-12-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+ Alan Modra <amodra@gmail.com>
+
+ * elf/elf.h (DT_PPC64_OPT, PPC64_OPT_TLS, PPC64_OPT_MULTI_TOC):
+ Define.
+ (STO_PPC64_LOCAL_BIT, STO_PPC64_LOCAL_MASK,
+ PPC64_LOCAL_ENTRY_OFFSET): Define.
+ * sysdeps/powerpc/powerpc64/dl-machine.h (ppc64_local_entry_offset):
+ New function.
+ (elf_machine_fixup_plt): Call it.
+ (elf_machine_plt_conflict): Likewise. Add map, sym_map, and
+ reloc arguments.
+ (elf_machine_rela): Update call to elf_machine_plt_conflict.
+ * sysdeps/powerpc/powerpc64/dl-trampoline.S (_dl_runtime_resolve,
+ _dl_profile_resolve) [_CALL_ELF == 2]: Restore caller's TOC into
+ r2 before calling target.
+
+2013-12-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+ Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc64/sysdep.h [_CALL_ELF == 2]
+ (PPC64_LOAD_FUNCPTR, DOT_LABEL, BODY_LABEL, ENTRY_2, END_2): New
+ versions of macros to support ELFv2 ABI.
+ (LOCALENTRY): New macro.
+ (ENTRY, EALIGN): Use it.
+ * sysdeps/powerpc/powerpc64/crti.S (_init, _fini): Use LOCALENTRY.
+ * sysdeps/powerpc/powerpc64/setjmp-common.S (__GI__setjmp): Do not
+ fall through into ENTRY entry point.
+ * libc/sysdeps/powerpc/powerpc64/dl-machine.h (Elf64_FuncDesc):
+ Only define if _CALL_ELF != 2.
+
+ (elf_machine_matches_host): Verify ABI version matches.
+ (RTLD_START): Use LOCALENTRY.
+ (elf_machine_type_class): Use SHN_UNDEF PLT handling for ELFv2 ABI.
+ (PLT_INITIAL_ENTRY_WORDS): New version for _CALL_ELF != 2.
+ (PLT_ENTRY_WORDS): New macro.
+ (GLINK_INITIAL_ENTRY_WORDS, GLINK_ENTRY_WORDS): Likewise.
+ (elf_machine_runtime_setup): Support ELFv2 ABI.
+ (elf_machine_fixup_plt): Likewise.
+ (elf_machine_plt_conflict): Likewise.
+ (resolve_ifunc): Likewise.
+ * sysdeps/powerpc/powerpc64/dl-irel.h (elf_irela): Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h (VDSO_IFUNC_RET):
+ Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
+ (DL_ADDR_SYM_MATCH): Only define if _CALL_ELF != 2.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
+ (makecontext): Support ELFv2 ABI.
+ * elf/elf.h (EF_PPC64_ABI): Define.
+
+2013-12-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/sysdep.h [ASSEMBLER] (PPC64_LOAD_FUNCPTR):
+ New assembler macro.
+ [ASSEMBLER] (ENTRY_1): Do not switch to .text section here ...
+ [ASSEMBLER] (ENTRY): ... but instead here ...
+ [ASSEMBLER] (EALIGN): ... and here.
+ [!ASSEMBLER] (PPC64_LOAD_FUNCPTR): New macro.
+ [!ASSEMBLER] (ENTRY_1): New macro; set up .opd entry.
+ [!ASSEMBLER] (ENTRY_2): Use it.
+ * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Update for
+ ENTRY_2 changes. Use PPC64_LOAD_FUNCPTR.
+ * sysdeps/powerpc/powerpc64/dl-trampoline.S (_dl_runtime_resolve,
+ _dl_profile_resolve): Use PPC64_LOAD_FUNCPTR.
+ * sysdeps/powerpc/powerpc64/crti.S (_init, _fini): Use ENTRY_2.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (clone):
+ Use PPC64_LOAD_FUNCPTR.
+
+2013-12-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * sysdeps/powerpc/tls.h (tcbhead_t): Add __private_ss field.
+
+2013-12-04 Alan Modra <amodra@gmail.com>
+
+ * elf/elf.h (R_PPC64_TLSGD, R_PPC64_TLSLD, R_PPC64_TOCSAVE): Define.
+ (R_PPC64_ADDR16_HIGH, R_PPC64_ADDR16_HIGHA): Likewise.
+ (R_PPC64_TPREL16_HIGH, R_PPC64_TPREL16_HIGHA): Likewise.
+ (R_PPC64_DTPREL16_HIGH, R_PPC64_DTPREL16_HIGHA): Likewise.
+
+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Add
+ overflow checking for R_PPC64_ADDR16_HI, R_PPC64_ADDR16_HA,
+ R_PPC64_TPREL16_HI, and R_PPC64_TPREL16_HA.
+ Support new R_PPC64_ADDR16_HIGH, R_PPC64_ADDR16_HIGHA,
+ R_PPC64_TPREL16_HIGH, and R_PPC64_TPREL16_HIGHA relocations.
+ Fix overflow checking for R_PPC64_ADDR30 and R_PPC64_ADDR32.
+
+2013-12-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
+ (__makecontext): Fix incorrect CFI when backtracing out of
+ context created via makecontext.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/secontext.S
+ (__setcontext): Fix incorrect CFI during switch to new context.
+ (__novec_setcontext): Likewise.
+
+2013-12-04 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #4772]
+ * time/strptime_l.c (__strptime_internal): Allow modifiers
+ in strptime.
+ * time/tst-strptime.c (day_tests): Add testcase.
+
+
+2013-12-04 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * scripts/bench.pl: Skip over blank lines.
+
+2013-12-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ [BZ #926]
+ * manual/time.texi (Calendar Time): Clarify what timezone functions
+ use.
+
+2013-12-04 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2013-12-04 Ondřej Bílka <neleai@seznam.cz>
+
+ * debug/memcpy_chk.c (__memcpy_chk): Use call instead of custom
+ implementation.
+ * debug/memmove_chk.c (MEMMOVE_CHK): Likewise.
+ * debug/mempcpy_chk.c (__mempcpy_chk): Likewise.
+ * debug/memset_chk.c (__memset_chk): Likewise.
+ * debug/stpncpy_chk.c (__stpncpy_chk): Likewise.
+ * debug/strncpy_chk.c: Likewise.
+
+2013-12-03 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #15268]
+ [BZ #15425]
+ * sysdeps/ieee754/dbl-64/e_exp.c: Include <float.h>.
+ (__ieee754_exp): For possibly underflowing results, check size of
+ result and force underflow exception if required.
+ * math/auto-libm-test-in: Add more tests of exp.
+ * math/auto-libm-test-out: Regenerated.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+ [BZ #16283]
+ * math/w_exp2.c (__exp2): Handle a zero result as underflow.
+ * math/w_exp2f.c (__exp2f): Likewise.
+ * math/w_exp2l.c (__exp2l): Likewise.
+ * math/auto-libm-test-in: Do not allow missing errno on exp2
+ underflow.
+ * math/auto-libm-test-out: Regenerated.
+
+2013-12-03 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #16274]
+ * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Correctly
+ handle filename validation.
+ * rt/tst-shm.c (do_test): Do not skip a test when shm_open fails.
+ (do_open): Delete.
+
+2013-12-03 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #6786]
+ * sysdeps/ieee754/dbl-64/s_erf.c: Include <errno.h> and <float.h>.
+ (__erfc): Set errno to ERANGE when returning 0 or tiny * tiny.
+ * sysdeps/ieee754/flt-32/s_erff.c: Include <errno.h> and
+ <float.h>.
+ (__erfcf): Set errno to ERANGE when returning 0 or tiny * tiny.
+ * sysdeps/ieee754/ldbl-128/s_erfl.c: Include <errno.h>.
+ (__erfcl): Set errno to ERANGE when returning 0 or tiny * tiny.
+ * sysdeps/ieee754/ldbl-128ibm/s_erfl.c: Include <errno.h>.
+ (__erfcl): Set errno to ERANGE when returning 0 or tiny * tiny.
+ * sysdeps/ieee754/ldbl-96/s_erfl.c: Include <errno.h>.
+ (__erfcl): Set errno to ERANGE when returning 0 or tiny * tiny.
+ * math/auto-libm-test-in: Don't allow missing errno from erfc.
+ Add more erfc tests.
+ * math/auto-libm-test-out: Regenerated.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+ * math/auto-libm-test-in: Add tests of erf, erfc, exp, exp10,
+ exp2, expm1, j0 and j1.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (erf_test_data): Use AUTO_TESTS_f_f.
+ (erfc_test_data): Likewise.
+ (exp_test_data): Likewise.
+ (exp_tonearest_test_data): Likewise.
+ (exp_towardzero_test_data): Likewise.
+ (exp_downward_test_data): Likewise.
+ (exp_upward_test_data): Likewise.
+ (exp10_test_data): Likewise.
+ (exp2_test_data): Likewise.
+ (expm1_test_data): Likewise.
+ (j0_test_data): Likewise.
+ (j1_test_data): Likewise.
+ * math/gen-auto-libm-tests.c: Mention "xfail-rounding" in comment.
+ (input_flag_type): Add flag_xfail_rounding.
+ (input_flags): Add xfail-rounding.
+ (adjust_real): Assert mpfr_number_p not mpfr_regular_p.
+ (output_for_one_input_case): Handle flag_xfail_rounding.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-12-03 Aurelien Jarno <aurelien@aurel32.net>
+
+ [BZ #16289]
+ * locale/loadarchive.c (_nl_load_locale_from_archive): Avoid
+ division by 0.
+
+2013-12-03 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ [BZ #16195]
+ * include/stap-probe.h [!USE_STAP_PROBE && !__ASSEMBLER__]
+ (LIBC_PROBE): Change definition to call STAP_PROBE* macros.
+ (STAP_PROBE0): New macro.
+ (STAP_PROBE1): Likewise.
+ (STAP_PROBE2): Likewise.
+ (STAP_PROBE3): Likewise.
+ (STAP_PROBE4): Likewise.
+
+2013-12-02 Ondřej Bílka <neleai@seznam.cz>
+
+ * manual/llio.texi (Memory-mapped I/O): Add shm_open and shm_close.
+
+2013-12-02 Steve Ellcey <sellcey@mips.com>
+
+ * benchtests/Makefile (bench): Add sqrt.
+ (LDLIBS-bench-sqrt): New.
+ * benchtests/sqrt-input: New.
+
+2013-12-02 Pavel Simerda <psimerda@redhat.com>
+
+ * sysdeps/posix/getaddrinfo.c (GAIH_OKIFUNSPEC): Remove macro.
+ (GAIH_EAI): Likewise.
+ (gaih_inet_serv): Don't use GAIH_OKIFUNSPEC.
+ (gaih_inet): Likewise.
+ (getaddrinfo): Don't use GAIH_EAI.
+
+ * sysdeps/posix/getaddrinfo.c (UNIX_PATH_MAX): Remove macro.
+ (struct gaih): Remove definition.
+
+2013-12-02 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * nss/nss_files/files-hosts.c (_nss_files_gethostbyname4_r):
+ Use HERRNOP directly.
+
+2013-12-02 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2013-11-30 Joseph Myers <joseph@codesourcery.com>
+
+ * math/gen-auto-libm-tests.c (test_functions): Add more
+ single-argument functions.
+ (special_fill_pi_2): New function.
+ (special_fill_minus_pi_2): Likewise.
+ (special_fill_pi_6): Likewise.
+ (special_fill_minus_pi_6): Likewise.
+ (special_fill_pi_3): Likewise.
+ (special_fill_2pi_3): Likewise.
+ (special_fill_e): Likewise.
+ (special_fill_1_e): Likewise.
+ (special_fill_e_minus_1): Likewise.
+ (special_real_inputs): Add more special inputs.
+ (output_for_one_input_case): Do not require ERANGE on underflow to
+ zero if round-to-nearest result does not underflow to zero, unless
+ exact results required.
+ * math/auto-libm-test-in: Add tests of acos, acosh, asin, asinh,
+ atan, atanh, cbrt, cos and cosh.
+ * math/auto-libm-test-out: Regenerated.
+ * math/libm-test.inc (acos_test_data): Use AUTO_TESTS_f_f.
+ (acos_tonearest_test_data): Likewise.
+ (acos_towardzero_test_data): Likewise.
+ (acos_downward_test_data): Likewise.
+ (acos_upward_test_data): Likewise.
+ (acosh_test_data): Likewise.
+ (asin_test_data): Likewise.
+ (asin_tonearest_test_data): Likewise.
+ (asin_towardzero_test_data): Likewise.
+ (asin_upward_test_data): Likewise.
+ (asinh_test_data): Likewise.
+ (atan_test_data): Likewise.
+ (atanh_test_data): Likewise.
+ (cbrt_test_data): Likewise.
+ (cos_test_data): Likewise.
+ (cos_tonearest_test_data): Likewise.
+ (cos_towardzero_test_data): Likewise.
+ (cos_downward_test_data): Likewise.
+ (cos_upward_test_data): Likewise.
+ (cosh_test_data): Likewise.
+ (cosh_tonearest_test_data): Likewise.
+ (cosh_towardzero_test_data): Likewise.
+ (cosh_downward_test_data): Likewise.
+ (cosh_upward_test_data): Likewise.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-11-29 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #6787]
+ * math/w_exp10.c (__exp10): Handle a zero result as underflow.
+ * math/w_exp10f.c (__exp10f): Likewise.
+ * math/w_exp10l.c (__exp10l): Likewise.
+ * math/libm-test.inc (exp10_test_data): Add more tests and expect
+ errno settings in existing tests.
+
+ [BZ #14032]
+ * sysdeps/i386/fpu/e_sqrt.S (__ieee754_sqrt): Do fsqrt with
+ precision control set to double precision.
+ * sysdeps/i386/fpu/w_sqrt.c: New file.
+ * math/auto-libm-test-in: Add more tests.
+ * math/auto-libm-test-out: Update.
+
+ * math/libm-test.inc (sqrt_tonearest_test_data): New variable.
+ (sqrt_test_tonearest): New function.
+ (sqrt_towardzero_test_data): New variable.
+ (sqrt_test_towardzero): New function.
+ (sqrt_downward_test_data): New variable.
+ (sqrt_test_downward): New function.
+ (sqrt_upward_test_data): New variable.
+ (sqrt_test_upward): New function.
+ (main): Call the new functions.
+
+ * math/gen-auto-libm-tests.c: New file.
+ * math/auto-libm-test-in: Likewise.
+ * math/auto-libm-test-out: New generated file.
+ * math/gen-libm-test.pl ($auto_input, %auto_tests): New global
+ variables.
+ (%beautify): Add generated representations of zero.
+ (top level): Set $auto_input and call parse_auto_input.
+ (beautify): Remove trailing "f" from hex float constants.
+ (parse_args): Handle XFAIL_TEST.
+ (convert_condition): New function.
+ (or_value): Likewise.
+ (or_cond_value): Likewise.
+ (generate_testfile): Handle AUTO_TESTS_* lines.
+ (parse_auto_input): New function.
+ * math/libm-test.inc (XFAIL_TEST): New macro.
+ (ERRNO_UNCHANGED): Update value.
+ (ERRNO_EDOM): Likewise.
+ (ERRNO_ERANGE): Likewise.
+ (IGNORE_RESULT): Likewise.
+ (TEST_COND_flt_32): New macro.
+ (TEST_COND_dbl_64): Likewise.
+ (TEST_COND_ldbl_96_intel): Likewise.
+ (TEST_COND_ldbl_96_m68k): Likewise.
+ (TEST_COND_ldbl_128): Likewise.
+ (TEST_COND_ldbl_128ibm): Likewise.
+ (TEST_COND_long32): Likewise.
+ (TEST_COND_long64): Likewise.
+ (TEST_COND_before_rounding): Likewise.
+ (TEST_COND_after_rounding): Likewise.
+ (enable_test): Handle XFAIL_TEST flag.
+ (sqrt_test_data): Use AUTO_TESTS_f_f for tests of finite inputs
+ with finite results.
+ * math/Makefile ($(objpfx)libm-test.stmp): Depend on
+ auto-libm-test-out.
+
+2013-11-29 Siddhesh Poyarekar <siddhesh@redhat.com>
+ Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
+
+ [BZ #16214]
+ * sysdeps/s390/dl-tls.h (__TLS_GET_ADDR): Invoke
+ __tls_get_addr_internal instead of __tls_get_offset in order to
+ avoid GOT pointer dependency. Make rtld export
+ __tls_get_addr_internal@@GLIBC_PRIVATE while still hiding
+ __tls_get_addr since we are a __tls_get_offset platform.
+ * sysdeps/s390/s390-64/tls-macros.h (TLS_IE PIC): Don't rely on
+ GOT pointer being set up before.
+ * sysdeps/s390/s390-32/tls-macros.h (TLS_IE PIC): Likewise.
+
+2013-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * manual/math.texi (Errors in Math Functions): Document accuracy
+ goals.
+
+ [BZ #15004]
+ * sysdeps/ieee754/ldbl-96/e_atan2l.c: Remove file.
+ * sysdeps/ieee754/ldbl-96/e_ilogbl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/e_remainderl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_ceill.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_fabsl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_floorl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_fpclassifyl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_isinfl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_isnanl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_logbl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_nearbyintl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_nextafterl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_rintl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_scalbnl.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/s_truncl.c: Likewise.
+
+ * sysdeps/powerpc/nofpu/atomic-feclearexcept.c: New file.
+ * sysdeps/powerpc/nofpu/atomic-feholdexcept.c: Likewise.
+ * sysdeps/powerpc/nofpu/atomic-feupdateenv.c: Likewise.
+ * sysdeps/powerpc/nofpu/flt-rounds.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feclearexcept.c:
+ Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feholdexcept.c:
+ Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feupdateenv.c:
+ Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/flt-rounds.c: Likewise.
+ * sysdeps/powerpc/nofpu/Makefile [$(subdir) = soft-fp]
+ (sysdep_routines): Add atomic-feholdexcept, atomic-feclearexcept,
+ atomic-feupdateenv and flt-rounds.
+ * sysdeps/powerpc/nofpu/Versions (libc): Add
+ __atomic_feholdexcept, __atomic_feclearexcept,
+ __atomic_feupdateenv and __flt_rounds to GLIBC_2.19.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fenv_libc.h
+ (__feraiseexcept_soft): Declare and use libc_hidden_proto here.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcept-soft.c
+ (__feraiseexcept_soft): Don't declare and use libc_hidden_proto
+ here.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist:
+ Update.
+
+ * manual/arith.texi (FP Exceptions): Document that exceptions may
+ not be raised when matherr is used.
+ (Math Error Reporting): Document overflow in directed rounding
+ modes. Document that errno may not be set when finite values are
+ returned on overflow. Document intent to set errno on underflow
+ only for underflow to zero.
+
+ [BZ #16271]
+ * sysdeps/ieee754/dbl-64/e_sqrt.c (__ieee754_sqrt): Set
+ round-to-nearest then adjust result for other rounding modes.
+ * include/fenv.h (fegetround): Use libm_hidden_proto.
+ * math/fegetround.c (fegetround): Use libm_hidden_def.
+ * sysdeps/i386/fpu/fegetround.c (fegetround): Likewise.
+ * sysdeps/powerpc/fpu/fegetround.c (fegetround): Likewise.
+ * sysdeps/powerpc/nofpu/fegetround.c (fegetround): Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fegetround.c (fegetround):
+ Likewise.
+ * sysdeps/s390/fpu/fegetround.c (fegetround): Likewise.
+ * sysdeps/sh/sh4/fpu/fegetround.c (fegetround): Likewise.
+ * sysdeps/sparc/fpu/fegetround.c (fegetround): Likewise.
+ * sysdeps/x86_64/fpu/fegetround.c (fegetround): Likewise.
+
+2013-11-28 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ [BZ #16077]
+ * nss/Versions (libnss_files): Add
+ _nss_files_gethostbyname3_r.
+ * nss/nss_files/files-hosts.c (_nss_files_gethostbyname3_r):
+ New function.
+ (HOST_DB_LOOKUP): Remove macro.
+ (_nss_files_gethostbyname_r): Implement function without the
+ HOST_DB_LOOKUP macro.
+ (_nss_files_gethostbyname2_r): Likewise.
+
+2013-11-28 Ondřej Bílka <neleai@seznam.cz>
+
+ * malloc/malloc.c (__libc_calloc): Make memset a tail call.
+
+2013-11-26 Uros Bizjak <ubizjak@gmail.com>
+
+ * soft-fp/op-4.h (_FP_FRAC_ASSEMBLE_4): Check rsize against
+ _FP_W_TYPE_SIZE to avoid "left shift count >= width of type"
+ warning.
+
+2013-11-26 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/fpu/feenablxcpt.c (feenableexcept): Use
+ __fe_nomask_env_priv instead of __fe_nomask_env to avoid a PLT call.
+ * sysdeps/powerpc/fpu/fesetenv.c (__fesetenv): Likewise.
+ * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Likewise.
+ * sysdeps/powerpc/fpu/fenv_libc.h (__fe_nomask_env): Rename to
+ __fe_nomask_env_priv and attribute_hidden.
+ * sysdeps/powerpc/fpu/fenv_private.h (libc_fesetenv_ppc): Likewise.
+ (libc_feupdateenv_test_ppc): Likewise.
+ (libc_feresetround_ppc): Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c
+ (__fe_nomask_env): Rename to __fe_nomask_env_priv and adjust
+ compat_symbol macro.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c
+ (__fe_nomask_env): Likewise.
+ * sysdeps/powerpc/fpu/fe_nomask.c (__fe_nomask_env): Likewise.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+
+ * string/Makefile: Remove ifunc tests.
+ * string/test-string.h: Define TEST_IFUNC.
+ * string/test-bcopy-ifunc.c: Remove.
+ * string/test-bzero-ifunc.c: Likewise.
+ * string/test-memccpy-ifunc.c: Likewise.
+ * string/test-memchr-ifunc.c: Likewise.
+ * string/test-memcmp-ifunc.c: Likewise.
+ * string/test-memcpy-ifunc.c: Likewise.
+ * string/test-memmem-ifunc.c: Likewise.
+ * string/test-memmove-ifunc.c: Likewise.
+ * string/test-mempcpy-ifunc.c: Likewise.
+ * string/test-memrchr-ifunc.c: Likewise.
+ * string/test-memset-ifunc.c: Likewise.
+ * string/test-rawmemchr-ifunc.c: Likewise.
+ * string/test-stpcpy-ifunc.c: Likewise.
+ * string/test-stpncpy-ifunc.c: Likewise.
+ * string/test-strcasecmp-ifunc.c: Likewise.
+ * string/test-strcasestr-ifunc.c: Likewise.
+ * string/test-strcat-ifunc.c: Likewise.
+ * string/test-strchr-ifunc.c: Likewise.
+ * string/test-strchrnul-ifunc.c: Likewise.
+ * string/test-strcmp-ifunc.c: Likewise.
+ * string/test-strcpy-ifunc.c: Likewise.
+ * string/test-strcspn-ifunc.c: Likewise.
+ * string/test-strlen-ifunc.c: Likewise.
+ * string/test-strncasecmp-ifunc.c: Likewise.
+ * string/test-strncat-ifunc.c: Likewise.
+ * string/test-strncmp-ifunc.c: Likewise.
+ * string/test-strncpy-ifunc.c: Likewise.
+ * string/test-strnlen-ifunc.c: Likewise.
+ * string/test-strpbrk-ifunc.c: Likewise.
+ * string/test-strrchr-ifunc.c: Likewise.
+ * string/test-strspn-ifunc.c: Likewise.
+ * string/test-strstr-ifunc.c: Likewise.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+
+ * benchtests/Makefile: Remove ifunc tests.
+ * benchtests/bench-string.h: Define TEST_IFUNC.
+ * benchtests/bench-bcopy-ifunc.c: Remove.
+ * benchtests/bench-bzero-ifunc.c: Likewise.
+ * benchtests/bench-memccpy-ifunc.c: Likewise.
+ * benchtests/bench-memchr-ifunc.c: Likewise.
+ * benchtests/bench-memcmp-ifunc.c: Likewise.
+ * benchtests/bench-memcpy-ifunc.c: Likewise.
+ * benchtests/bench-memmem-ifunc.c: Likewise.
+ * benchtests/bench-memmove-ifunc.c: Likewise.
+ * benchtests/bench-mempcpy-ifunc.c: Likewise.
+ * benchtests/bench-memrchr-ifunc.c: Likewise.
+ * benchtests/bench-memset-ifunc.c: Likewise.
+ * benchtests/bench-rawmemchr-ifunc.c: Likewise.
+ * benchtests/bench-stpcpy_chk-ifunc.c: Likewise.
+ * benchtests/bench-stpcpy-ifunc.c: Likewise.
+ * benchtests/bench-stpncpy-ifunc.c: Likewise.
+ * benchtests/bench-strcasecmp-ifunc.c: Likewise.
+ * benchtests/bench-strcasestr-ifunc.c: Likewise.
+ * benchtests/bench-strcat-ifunc.c: Likewise.
+ * benchtests/bench-strchr-ifunc.c: Likewise.
+ * benchtests/bench-strchrnul-ifunc.c: Likewise.
+ * benchtests/bench-strcmp-ifunc.c: Likewise.
+ * benchtests/bench-strcpy_chk-ifunc.c: Likewise.
+ * benchtests/bench-strcpy-ifunc.c: Likewise.
+ * benchtests/bench-strcspn-ifunc.c: Likewise.
+ * benchtests/bench-strlen-ifunc.c: Likewise.
+ * benchtests/bench-strncasecmp-ifunc.c: Likewise.
+ * benchtests/bench-strncat-ifunc.c: Likewise.
+ * benchtests/bench-strncmp-ifunc.c: Likewise.
+ * benchtests/bench-strncpy-ifunc.c: Likewise.
+ * benchtests/bench-strnlen-ifunc.c: Likewise.
+ * benchtests/bench-strpbrk-ifunc.c: Likewise.
+ * benchtests/bench-strrchr-ifunc.c: Likewise.
+ * benchtests/bench-strsep-ifunc.c: Likewise.
+ * benchtests/bench-strspn-ifunc.c: Likewise.
+ * benchtests/bench-strstr-ifunc.c: Likewise.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+
+ * sysdeps/x86_64/dl-tlsdesc.S (_dl_tlsdesc_resolve_hold): Fix typo.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+
+ * resolv/netdb.h: Use __glibc_reserved instead __unused.
+ * rt/aio.h: Likewise.
+ * sysdeps/gnu/bits/utmp.h: Likewise.
+ * sysdeps/gnu/bits/utmpx.h: Likewise.
+ * sysdeps/gnu/netinet/ip_icmp.h: Likewise.
+ * sysdeps/unix/sysv/linux/bits/ipc.h: Likewise.
+ * sysdeps/unix/sysv/linux/bits/msq.h: Likewise.
+ * sysdeps/unix/sysv/linux/bits/sem.h: Likewise.
+ * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
+ * sysdeps/unix/sysv/linux/bits/stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/kernel_stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/ntp_gettimex.c: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/bits/ipc.h: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/bits/msq.h: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/bits/sem.h: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/bits/ipc.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/bits/msq.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/bits/sem.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/bits/utmp.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/bits/utmpx.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h: Likewise.
+ * sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h: Likewise.
+ * sysdeps/unix/sysv/linux/sh/bits/shm.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/bits/ipc.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/bits/msq.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/bits/sem.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sparc64/xstatconv.c: Likewise.
+ * sysdeps/unix/sysv/linux/sparc/sys/procfs.h: Likewise.
+ * sysdeps/unix/sysv/linux/sys/timex.h: Likewise.
+ * sysdeps/unix/sysv/linux/x86/bits/msq.h: Likewise.
+ * sysdeps/unix/sysv/linux/x86/bits/sem.h: Likewise.
+ * sysdeps/unix/sysv/linux/x86/bits/shm.h: Likewise.
+ * sysdeps/unix/sysv/linux/x86/bits/stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/xstatconv.c: Likewise.
+ * sysdeps/x86/fpu/bits/fenv.h: Likewise.
+
+2013-11-25 Carlos O'Donell <carlos@redhat.com>
+
+ [BZ #16245]
+ * sysdeps/unix/sysv/linux/sys/ptrace.h (__ptrace_eventcodes):
+ Rename PTRAVE_EVENT_SECCOMP to PTRACE_EVENT_SECCOMP.
+
+2013-11-25 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/powerpc/nofpu/fenv_libc.h (__fegetround): New macro.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fenv_libc.h (__fegetround):
+ Likewise.
+
+2013-11-25 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/ieee754/ldbl-128ibm/e_expl.c (__ieee754_expl): Use
+ SET_RESTORE_ROUND instead of feholdexcept/fesetround/fesetenv.
+ * sysdeps/powerpc/fpu/fenv_libc.h (__fegetround): Remove define.
+ (__fesetround): Remove define.
+ * sysdeps/powerpc/fpu/fenv_private.h: New file: Inline floating point
+ rounding and exceptions handling.
+ * sysdeps/powerpc/fpu/math_private.h: Include fenv_private.h.
+ * sysdeps/powerpc/fpu/fenv_libc.h (__fe_mask_env): Define as hidden.
+ (__fe_nomask_env): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_llrintl.c (__llrintl): Use
+ __fegetround instead of fegetround.
+ * sysdeps/ieee754/ldbl-128ibm/s_lrintl.c (__lrintl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_rintl.c (__rintl): Likewise.
+
+2013-11-21 Roland McGrath <roland@hack.frob.com>
+
+ * malloc/malloc.c: Move #include <sys/param.h> to the top; comment why
+ it's there.
+
+ * sysdeps/generic/sys/swap.h (swapon): Add FLAGS argument to prototype.
+
+2013-11-21 Meador Inge <meadori@codesourcery.com>
+
+ [BZ #11157]
+ * crypt/crypt.h (encrypt): Use __glibc_block instead of __block.
+ (encrypt_r): Likewise.
+ * malloc/obstack.h (obstack_free): Likewise.
+ * posix/unistd.h (encrypt): Likewise.
+
+2013-11-21 Guy Martin <gmsoft@tuxicoman.be>
+
+ * sysdeps/generic/ldsodefs.h: Replace DL_DT_INIT_ADDRESS() and
+ DL_DT_FINI_ADDRESS() macro with DL_CALL_DT_INIT() and
+ DL_CALL_DT_FINI() that call the functions directly.
+ * elf/dl-init.c: Use the new DL_CALL_DT_INIT() macro.
+ * elf/dl-close.c: Use the new DL_CALL_DT_FINI() macro.
+ * elf/dl-fini.c: Likewise.
+
+2013-11-20 Ondřej Bílka <neleai@seznam.cz>
+
+ * malloc/hooks.c (memalign_check): Add alignment rounding.
+ * malloc/malloc.c (_mid_memalign): New function.
+ (__libc_valloc, __libc_pvalloc, __libc_memalign, __posix_memalign):
+ Implement by calling _mid_memalign.
+ * manual/probes.texi (Memory Allocation Probes): Remove
+ memory_valloc_retry and memory_pvalloc_retry.
+
+2013-11-20 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * locale/programs/locarchive.c (open_archive): Add const
+ qualifier to ARCHIVEFNAME and copy default fname to
+ DEFAULT_FNAME.
+
+ [BZ #15601]
+ * libio/tst-widetext.input: Rename Oriya to Odia.
+ * locale/iso-639.def: Likewise.
+
+ * manual/probes.texi (Mathematical Function Probes): Add
+ documentation for sin, cos, asin and acos probes.
+ * sysdeps/ieee754/dbl-64/sincos32.c: Include stap-probe.h.
+ (__sin32): Add slowasin probe.
+ (__cos32): Add slowacos probe.
+ (__mpsin): Add slowsin probe.
+ (__mpcos): Add slowcos probe.
+
+2013-11-19 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #15483]
+ * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions): Change to
+ thread-local __sim_exceptions_thread and global
+ __sim_exceptions_global.
+ (__sim_disabled_exceptions): Change to thread-local
+ __sim_disabled_exceptions_thread and global
+ __sim_disabled_exceptions_global.
+ (__sim_round_mode): Change to thread-local __sim_round_mode_thread
+ and global __sim_round_mode_global.
+ (__simulate_exceptions): Use thread-local floating-point state and
+ set global state from it as needed.
+ * sysdeps/powerpc/nofpu/Versions (GLIBC_PRIVATE): Add
+ __sim_exceptions_thread, __sim_disabled_exceptions_thread and
+ __sim_round_mode_thread.
+ * sysdeps/powerpc/nofpu/soft-supp.h: Include <shlib-compat.h>.
+ (__sim_exceptions): Change to thread-local __sim_exceptions_thread
+ and global __sim_exceptions_global.
+ (__sim_disabled_exceptions): Change to thread-local
+ __sim_disabled_exceptions_thread and global
+ __sim_disabled_exceptions_global.
+ (__sim_round_mode): Change to thread-local __sim_round_mode_thread
+ and global __sim_round_mode_global.
+ [SIM_GLOBAL_COMPAT] (SIM_COMPAT_SYMBOL): New macro.
+ (SIM_SET_GLOBAL): Likewise.
+ * sysdeps/powerpc/soft-fp/sfp-machine.h
+ [!(__NO_FPRS__ && !_SOFT_FLOAT)] (FP_ROUNDMODE): Use
+ __sim_round_mode_thread.
+ [!(__NO_FPRS__ && !_SOFT_FLOAT)] (FP_TRAPPING_EXCEPTIONS): Use
+ __sim_disabled_exceptions_thread.
+ (__sim_exceptions): Change to __sim_exceptions_thread.
+ (__sim_disabled_exceptions): Change to
+ __sim_disabled_exceptions_thread.
+ (__sim_round_mode): Change to __sim_round_mode_thread.
+ * sysdeps/powerpc/nofpu/fclrexcpt.c (__feclearexcept): Use
+ thread-local floating-point state and set global state from it as
+ needed.
+ * sysdeps/powerpc/nofpu/fedisblxcpt.c (fedisableexcept): Likewise.
+ * sysdeps/powerpc/nofpu/feenablxcpt.c: Include "soft-supp.h".
+ (__sim_disabled_exceptions): Remove extern declaration.
+ (feenableexcept): Use thread-local floating-point state and set
+ global state from it as needed.
+ * sysdeps/powerpc/nofpu/fegetenv.c (__sim_exceptions): Remove
+ extern declaration.
+ (__sim_disabled_exceptions): Likewise.
+ (__sim_round_mode): Likewise.
+ (__fegetenv): Use thread-local floating-point state.
+ * sysdeps/powerpc/nofpu/fegetexcept.c (fegetexcept): Likewise.
+ * sysdeps/powerpc/nofpu/fegetround.c (fegetround): Likewise.
+ * sysdeps/powerpc/nofpu/fesetenv.c (__fesetenv): Use thread-local
+ floating-point state and set global state from it as needed.
+ * sysdeps/powerpc/nofpu/fesetround.c (fesetround): Likewise.
+ * sysdeps/powerpc/nofpu/feupdateenv.c (__feupdateenv): Likewise.
+ * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag):
+ Likewise.
+ * sysdeps/powerpc/nofpu/fraiseexcpt.c (__feraiseexcept): Likewise.
+ * sysdeps/powerpc/nofpu/fsetexcptflg.c (__fesetexceptflag):
+ Likewise.
+ sysdeps/powerpc/nofpu/ftestexcept.c (fetestexcept): Likewise.
+ * sysdeps/powerpc/nofpu/get-rounding-mode.h (get_rounding_mode):
+ Use __sim_round_mode_thread.
+ * math/test-fenv-tls.c: New file.
+ * math/Makefile (tests): Add test-fenv-tls.
+ ($(objpfx)test-fenv-tls): Depend on
+ $(common-objpfx)nptl/libpthread.so.
+
+2013-11-19 Andreas Schwab <schwab@suse.de>
+
+ * locale/programs/locale.c (show_info): Decode wordarray elements.
+ * locale/categories.def (LC_MONETARY): Add element for
+ _NL_MONETARY_CRNCYSTR.
+ * locale/C-monetary.c (conversion_rate): New variable.
+ (_nl_C_LC_MONETARY): Use it for _NL_MONETARY_CONVERSION_RATE
+ element.
+
+2013-11-18 Chris Metcalf <cmetcalf@tilera.com>
+
+ * math/test-fpucw-ieee.c [!defined _FPU_IEEE] (FPU_CONTROL):
+ Omit definition of FPU_CONTROL and use default if no _FPU_IEEE.
+
+2013-11-18 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * elf/Makefile (tst-auxv): New test.
+ * elf/tst-auxv.c: New
+ * elf/rtld.c (dl_main): Adjust AT_EXECFN
+
+2013-11-18 Joseph Myers <joseph@codesourcery.com>
+
+ * include/libc-symbols.h (__hidden_proto): Add argument "thread".
+ (hidden_proto): Caller changed.
+ (hidden_tls_proto): New macro.
+ (libc_hidden_tls_proto): Likewise.
+ (rtld_hidden_tls_proto): Likewise.
+ (libm_hidden_tls_proto): Likewise.
+ (libresolv_hidden_tls_proto): Likewise.
+ (librt_hidden_tls_proto): Likewise.
+ (libdl_hidden_tls_proto): Likewise.
+ (libnss_files_hidden_tls_proto): Likewise.
+ (libnsl_hidden_tls_proto): Likewise.
+ (libnss_nisplus_hidden_tls_proto): Likewise.
+ (libutil_hidden_tls_proto): Likewise.
+
+2013-11-18 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #10253]
+ * elf/dl-load.c (fillin_rpath): Add linkmap parameter and expand path.
+ (decompose_rpath): Defer expansion to fillin_rpath.
+ (_dl_init_paths): Pass linkmap to fillin_rpath.
+
+2013-11-18 Rajalakshmi Srinivasaraghavan <raji@linux.vnet.ibm.com>
+
+ * benchtests/Makefile: Add strsep.
+ * benchtests/bench-strsep.c: New file: strsep benchtest.
+ * benchtests/bench-strsep-ifunc.c: New file: strsep benchtest.
+
+2013-11-18 Andreas Schwab <schwab@suse.de>
+
+ * locale/programs/locale.c (show_info) [case byte]: Check for
+ '\377' instead of '\177'.
+ * locale/C-monetary.c (not_available): Always use "\377".
+ * stdlib/strfmon_l.c (__vstrfmon_l): Use -2 as marker for
+ unspecified p_sign_posn and n_sign_posn. Check for '\377' to
+ detect unavailable sign_posn locale elements.
+ * locale/localeconv.c (__localeconv): For grouping and
+ mon_grouping handle "\177" and "\377" like no grouping.
+ (INT_ELEM): New macro. Use it to set all numeric members.
+ * locale/programs/ld-monetary.c (monetary_read)
+ <tok_mon_grouping>: Normalize single -1 to the empty string.
+ * locale/programs/ld-numeric.c (numeric_read) <tok_grouping>:
+ Likewise.
+
+2013-11-07 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #16055]
+ * stdio-common/vfscanf.c (_IO_vfscanf_internal): Limit width
+ when we match (nil).
+ * stdio-common/tst-sscanf.c (struct test): Add testcase.
+
+2013-11-16 Joseph Myers <joseph@codesourcery.com>
+
+ * math/libm-test.inc (TEST_NAN_SIGN): New macro.
+ (NO_TEST_INLINE): Update value.
+ (ERRNO_UNCHANGED): Likewise.
+ (ERRNO_EDOM): Likewise.
+ (ERRNO_ERANGE): Likewise.
+ (IGNORE_RESULT): Likewise.
+ (check_float_internal): Check signs of NaN results if
+ TEST_NAN_SIGN used.
+ (check_complex): Pass TEST_NAN_SIGN flag through to second
+ check_float_internal call.
+ (copysign_test_data): Add tests with quiet NaNs as second
+ argument. Use TEST_NAN_SIGN.
+ (fabs_test_data): Add test of negative quiet NaN argument. Use
+ TEST_NAN_SIGN.
+ (signbit_test_data): Add tests of quiet NaN argument.
+ * math/gen-libm-test.pl (parse_args): Handle TEST_NAN_SIGN.
+
+ * math/gen-libm-test.pl (show_exceptions): Take extra argument
+ $ignore_result.
+ (parse_args): Handle function results specified as IGNORE.
+ * math/libm-test.inc (IGNORE_RESULT): New macro.
+ (check_float_internal): Do not check numerical result if flag
+ IGNORE_RESULT set.
+ (check_complex): Pass through IGNORE_RESULT to second
+ check_float_internal call.
+ (check_int): Do not check numerical result if flag IGNORE_RESULT
+ set.
+ (check_long): Likewise.
+ (check_bool): Likewise.
+ (check_longlong): Likewise.
+ (lrint_test_data): Add tests of infinite and NaN arguments.
+ (lrint_tonearest_test_data): Likewise.
+ (lrint_towardzero_test_data): Likewise.
+ (lrint_downward_test_data): Likewise.
+ (lrint_upward_test_data): Likewise.
+ (llrint_test_data): Likewise.
+ (llrint_tonearest_test_data): Likewise.
+ (llrint_towardzero_test_data): Likewise.
+ (llrint_downward_test_data): Likewise.
+ (llrint_upward_test_data): Likewise.
+ (lround_test_data): Likewise.
+ (llround_test_data): Likewise.
+
+ * math/libm-test.inc (NO_TEST_INLINE): New macro.
+ (ERRNO_UNCHANGED): Update value.
+ (ERRNO_EDOM): Likewise.
+ (ERRNO_ERANGE): Likewise.
+ (NO_TEST_INLINE_FLOAT): New macro.
+ (NO_TEST_INLINE_DOUBLE): Likewise.
+ (enable_test): New function.
+ (RUN_TEST_f_f): Check enable_test before running test.
+ (RUN_TEST_2_f): Likewise.
+ (RUN_TEST_fff_f): Likewise.
+ (RUN_TEST_c_f): Likewise.
+ (RUN_TEST_f_f1): Likewise.
+ (RUN_TEST_fF_f1): Likewise.
+ (RUN_TEST_fI_f1): Likewise.
+ (RUN_TEST_ffI_f1): Likewise.
+ (RUN_TEST_c_c): Likewise.
+ (RUN_TEST_cc_c): Likewise.
+ (RUN_TEST_f_i): Likewise.
+ (RUN_TEST_f_i_tg): Likewise.
+ (RUN_TEST_ff_i_tg): Likewise.
+ (RUN_TEST_f_b): Likewise.
+ (RUN_TEST_f_b_tg): Likewise.
+ (RUN_TEST_f_l): Likewise.
+ (RUN_TEST_f_L): Likewise.
+ (RUN_TEST_fFF_11): Likewise.
+ (asinh_test_data): Use NO_TEST_INLINE instead of [!TEST_INLINE]
+ conditionals.
+ (cosh_test_data): Likewise.
+ (exp_test_data): Likewise.
+ (expm1_test_data): Likewise.
+ (hypot_test_data): Likewise.
+ (pow_test_data): Likewise.
+ (sinh_test_data): Likewise.
+ (tanh_test_data): Likewise.
+ * math/gen-libm-test.pl (parse_args): Allow NO_TEST_INLINE as
+ flags argument.
+
+ * libm-test.inc (acos_test_data): Disallow inexact exceptions for
+ tests with quiet NaN input and output.
+ (acosh_test_data): Likewise.
+ (asin_test_data): Likewise.
+ (asinh_test_data): Likewise.
+ (atan_test_data): Likewise.
+ (atanh_test_data): Likewise.
+ (atan2_test_data): Likewise.
+ (cbrt_test_data): Likewise.
+ (cos_test_data): Likewise.
+ (cosh_test_data): Likewise.
+ (erf_test_data): Likewise.
+ (erfc_test_data): Likewise.
+ (exp_test_data): Likewise.
+ (exp10_test_data): Likewise.
+ (exp2_test_data): Likewise.
+ (expm1_test_data): Likewise.
+ (hypot_test_data): Likewise.
+ (j0_test_data): Likewise.
+ (j1_test_data): Likewise.
+ (jn_test_data): Likewise.
+ (lgamma_test_data): Likewise.
+ (log_test_data): Likewise.
+ (log10_test_data): Likewise.
+ (log1p_test_data): Likewise.
+ (log2_test_data): Likewise.
+ (pow_test_data): Likewise.
+ (scalb_test_data): Likewise.
+ (sin_test_data): Likewise.
+ (sincos_test_data): Likewise.
+ (sinh_test_data): Likewise.
+ (tan_test_data): Likewise.
+ (tanh_test_data): Likewise.
+ (tgamma_test_data): Likewise.
+ (y0_test_data): Likewise.
+ (y1_test_data): Likewise.
+ (yn_test_data): Likewise.
+
+ [BZ #16167]
+ * sysdeps/i386/fpu/e_pow.S (__ieee754_pow): Check for first
+ argument being NaN and avoid computations with second argument in
+ that case.
+ * sysdeps/i386/fpu/e_powf.S (__ieee754_powf): Likewise.
+ * sysdeps/i386/fpu/e_powl.S (__ieee754_powl): Likewise.
+ * sysdeps/x86_64/fpu/e_powl.S (__ieee754_powl): Likewise.
+
+2013-11-15 Arun Kumar Pyasi <arun@chitwanix.com>
+
+ * locale/iso-639.def: Add Chitwani Tharu (the).
+
+2013-11-14 Andreas Schwab <schwab@suse.de>
+
+ * locale/C-address.c (_nl_C_LC_ADDRESS): Set country_num to zero
+ word instead of empty string.
+
+2013-11-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c
+ (__fe_nomask_env): Fir compat symbol to be remove for GLIBC_2.19.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c
+ (__fe_nomask_env): Likewise.
+
+2013-11-13 Steve Ellcey <sellcey@mips.com>
+
+ * benchtests/bench-timing.h: Include time.h.
+
+2013-11-13 H.J. Lu <hongjiu.lu@intel.com>
+
+ [BZ #15997]
+ * sysdeps/unix/sysv/linux/configure.ac (arch_minimum_kernel): Set
+ to 3.4.0 for x32.
+ * sysdeps/unix/sysv/linux/configure: Regenerated.
+
+2013-11-13 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #16151]
+ * stdlib/strtod_l.c (round_and_return): Do not consider
+ retval[RETURN_LIBM_SIZE - 1] when determining more_bits for an
+ exponent one less than half the least subnormal exponent.
+ * stdlib/test-strtod-round-data: Add more tests.
+ * stdlib/tst-strtod-round.c (tests): Regenerated.
+
+2013-11-13 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ [BZ #14143]
+ * sysdeps/powerpc/bits/fenv.h (__fe_nomask_env): Remove declaration.
+ (__fe_mask_env): Likewise.
+ * sysdeps/powerpc/fpu/fenv_libc.h (__fe_nomask_env): Remove
+ libm_hidden_proto and add function prototype.
+ (__fe_mask_env): Add function prototype.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c
+ (__fe_nomask_env): Add compat symbol for GLIBC_2.1.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c
+ (__fe_mask_env): Remove compiler warnings regarding ununsed variables.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c
+ (__fe_nomask_env): Add compat symbol for GLIBC_2.3.
+
+2013-11-13 Marcus Shawcroft <marcus.shawcroft@linaro.org>
+
+ * elf/dl-lookup.c (_dl_lookup_symbol_x): If UNDEF_MAP is false
+ set reference_name to "" to avoid passing NULL to DSO_FILENAME.
+
+2013-11-13 Marcus Shawcroft <marcus.shawcroft@linaro.org>
+
+ * elf/tlsdeschtab.h (_dl_make_tlsdesc_dynamic): Handle failure
+ of htab_find_slot().
+
+2013-11-11 David S. Miller <davem@davemloft.net>
+
+ [BZ #16150]
+ * sysdeps/sparc/sparc64/multiarch/add_n.S: Resolve to the correct generic
+ symbol in the non-vis3 case in static builds.
+ * sysdeps/sparc/sparc64/multiarch/addmul_1.S: Likewise.
+ * sysdeps/sparc/sparc64/multiarch/mul_1.S: Likewise.
+ * sysdeps/sparc/sparc64/multiarch/sub_n.S: Likewise.
+ * sysdeps/sparc/sparc64/multiarch/submul_1.S: Likewise.
+
+2013-11-11 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ [BZ #387]
+ * elf/dl-object.c (_dl_new_object): Initialize L_NAME from NEWNAME if
+ it is empty.
+
+2013-11-11 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * benchtests/Makefile: Add bench-strtod.
+ * benchtests/bench-strtod.c: New file: strtod benchtest
+
+2013-11-11 Andreas Schwab <schwab@suse.de>
+
+ [BZ #16153]
+ * nscd/nscd_getserv_r.c (__nscd_getservbyport_r): Don't include
+ terminating NUL in key length.
+
+2013-11-08 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h (VDSO_IFUNC_RET):
+ Add artificial ODP entry for vDSO symbol for PPC64.
+ * sysdeps/unix/sysv/linux/powerpc/gettimeofday.c: Adjust includes.
+ * sysdeps/unix/sysv/linux/powerpc/time.c: Likewise.
+
+2013-11-07 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #15374]
+ * nss/getent.c (services_keys): Recognize services starting with digit.
+
+2013-11-06 David S. Miller <davem@davemloft.net>
+
+ [BZ #15985]
+ * sysdeps/sparc/sparc32/fpu/s_fdim.S (__fdim): Do not use fnegd
+ on pre-v9 cpus, use a fnegs+fmovs sequence instead.
+
+2013-11-06 Will Newton <will.newton@linaro.org>
+
+ * manual/memory.texi (Malloc Examples): Remove register
+ keyword from examples.
+
+2013-11-04 Chris Leonard <cjl@sugarlabs.org>
+
+ * locale/iso-639.def: Correct Walaita (wal) and add Unami Delaware (unm).
+
+2013-11-04 Joseph Myers <joseph@codesourcery.com>
+
+ * include/stdc-predef.h [__GCC_IEC_559] (__STDC_IEC_559__): Define
+ depending on [__GCC_IEC_559 > 0].
+ [__GCC_IEC_559_COMPLEX] (__STDC_IEC_559_COMPLEX__): Define
+ depending on [__GCC_IEC_559_COMPLEX > 0].
+
+2013-11-03 Chris Leonard <cjl@sugarlabs.org>
+
+ * locale/iso-639.def: Add Quechua, Southern (quz) and Silesian (szl)
+ to iso-639.def.
+
+2013-11-03 Ondřej Bílka <neleai@seznam.cz>
+
+ * elf/rtld.c: Remove unused NONTLS_INIT_TP.
+
+2013-11-01 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #16112]
+ * malloc/malloc (malloc_info): Do not handle first bin as
+ special case.
+
+2013-11-01 Chris Leonard <cjl@sugarlabs.org>
+
+ * locale/iso-639.def: Add Central Nahuatl (nhn).
+
+2013-11-01 Bruno Haible <bruno@clisp.org>
+
+ [BZ #7003]
+ * manual/math.texi (BSD Random): Specify range upper bound as
+ in POSIX.
+
+2013-10-31 Chris Leonard <cjl@sugarlabs.org>
+
+ * locale/iso-639.def: Add Meadow Mari (mhr).
+
+2013-10-31 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #14752], [BZ #15763]
+ * sysdeps/unix/sysv/linux/shm_open.c (shm_open, shm_unlink):
+ Validate name.
+ * rt/tst_shm.c: Add test for escaping directory.
+
+2013-10-31 Andreas Schwab <schwab@suse.de>
+
+ [BZ #15917]
+ * stdio-common/vfscanf.c (_IO_vfwscanf): Handle leading '0' not
+ followed by 'x' as part of digit sequence.
+ * stdio-common/tst-sscanf.c (double_tests2): New tests.
+
+2013-10-31 Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
+
+ [BZ #16037]
+ * configure.ac: allow GNU Make 4.0 and greater.
+ * configure: Regenerated.
+
+2013-10-30 Will Newton <will.newton@linaro.org>
+
+ [BZ #16038]
+ * malloc/hooks.c (memalign_check): Limit alignment to the
+ maximum representable power of two.
+ * malloc/malloc.c (__libc_memalign): Likewise.
+ * malloc/tst-memalign.c (do_test): Add test for very
+ large alignment values.
+ * malloc/tst-posix_memalign.c (do_test): Likewise.
+
+2013-10-30 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #11087]
+ * malloc/malloc.c (sysmalloc): Compute statistics atomically.
+ (munmap_chunk): Likewise.
+ (mremap_chunk): Likewise.
+
+2013-10-30 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #15799]
+ * stdlib/div.c (div): Remove obsolete code.
+ * stdlib/ldiv.c (ldiv): Likewise.
+ * stdlib/lldiv.c (lldiv): Likewise.
+
+2013-10-30 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ [BZ #16071]
+ * nss/nss_files/files-XXX.c (get_contents_ret): New
+ enumerator.
+ (get_contents): New function.
+ (internal_getent): Use it. Expand size of LINEBUFLEN.
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * configure.in: Moved to ...
+ * configure.ac: ... here. Change reference to configure.in
+ to configure.ac.
+ * sysdeps/arm/preconfigure.ac: ... here.
+ configure.in to configure.ac.
+ * sysdeps/gnu/configure.in: Moved to ...
+ * sysdeps/gnu/configure.ac: ... here.
+ * sysdeps/i386/configure.in: Moved to ...
+ * sysdeps/i386/configure.ac: ... here.
+ * sysdeps/ieee754/ldbl-opt/configure.in: Moved to ...
+ * sysdeps/ieee754/ldbl-opt/configure.ac: ... here.
+ * sysdeps/mach/configure.in: Moved to ...
+ * sysdeps/mach/configure.ac: ... here.
+ * sysdeps/mach/hurd/configure.in: Moved to ...
+ * sysdeps/mach/hurd/configure.ac: ... here.
+ * sysdeps/powerpc/configure.in: Moved to ...
+ * sysdeps/powerpc/configure.ac: ... here.
+ * sysdeps/powerpc/powerpc32/configure.in: Moved to ...
+ * sysdeps/powerpc/powerpc32/configure.ac: ... here.
+ * sysdeps/powerpc/powerpc64/configure.in: Moved to ...
+ * sysdeps/powerpc/powerpc64/configure.ac: ... here.
+ * sysdeps/s390/s390-32/configure.in: Moved to ...
+ * sysdeps/s390/s390-32/configure.ac: ... here.
+ * sysdeps/s390/s390-64/configure.in: Moved to ...
+ * sysdeps/s390/s390-64/configure.ac: ... here.
+ * sysdeps/sh/configure.in: Moved to ...
+ * sysdeps/sh/configure.ac: ... here.
+ * sysdeps/sparc/configure.in: Moved to ...
+ * sysdeps/sparc/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/powerpc/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/powerpc/configure.ac: ... here.
+ * sysdeps/x86_64/configure.in: Moved to ...
+ * sysdeps/x86_64/configure.ac: ... here.
+ * sysdeps/x86_64/preconfigure.in: Moved to ...
+ * sysdeps/x86_64/preconfigure.ac: ... here.
+ * aclocal.m4: Change reference to configure.in to configure.ac.
+ * config.h.in: Likewise.
+ * manual/install.texi: Likewise.
+ * manual/maint.texi: Likewise.
+ * Makefile: Likewise.
+ * malloc/Makefile: Likewise.
+ * nscd/Makefile: Likewise.
+ * Makeconfig: Change reference to configure.in and
+ preconfigure.in to configure.ac and preconfigure.ac
+ respectively.
+ * INSTALL: Regenerated.
+ * configure: Likewise.
+ * sysdeps/gnu/configure: Likewise.
+ * sysdeps/i386/configure: Likewise.
+ * sysdeps/ieee754/ldbl-opt/configure: Likewise.
+ * sysdeps/mach/configure: Likewise.
+ * sysdeps/mach/hurd/configure: Likewise.
+ * sysdeps/powerpc/configure: Likewise.
+ * sysdeps/powerpc/powerpc32/configure: Likewise.
+ * sysdeps/powerpc/powerpc64/configure: Likewise.
+ * sysdeps/s390/s390-32/configure: Likewise.
+ * sysdeps/s390/s390-64/configure: Likewise.
+ * sysdeps/sh/configure: Likewise.
+ * sysdeps/sparc/configure: Likewise.
+ * sysdeps/unix/sysv/linux/configure: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/configure: Likewise.
+ * sysdeps/x86_64/configure: Likewise.
+ * sysdeps/x86_64/preconfigure: Likewise.
+
+2013-10-29 Andreas Schwab <schwab@suse.de>
+
+ * stdio-common/Makefile (tst-swscanf-ENV): Define.
+
+2013-10-28 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * benchtests/pow-inputs: Add new inputs.
+
+ * benchtests/exp-inputs: Add new inputs.
+
+ * sysdeps/ieee754/dbl-64/sincos32.c (__sin32): Consolidate
+ conditional check for return value.
+ (__cos32): Likewise.
+
+2013-10-26 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Add word load/store
+ to provide a boost for large inputs with word alignment.
+ * sysdeps/powerpc/powerpc64/stpcpy.S (__stpcpy): Rewrite
+ implementation based on optimized PPC64 strcpy.
+ * sysdeps/powerpc/powerpc64/power7/strcpy.S: New file: optimized
+ strcpy for PPC64/POWER7 based on both doubleword and word load/store.
+ * sysdeps/powerpc/powerpc64/power7/stpcpy.S: New file: optimized
+ stpcpy for PPC64/POWER7 based on PPC64/POWER7 strcpy.
+
+2013-10-25 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #2801]
+ * manual/socket.texi (Host Names): Fix gethostbyname_r example.
+
+2013-10-25 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #14876]
+ * time/strptime_l.c (__strptime_internal): 14876 Read timezone entry.
+ * time/tst-strptime.c (day_tests): Add testcase.
+
+2013-10-25 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #14029]
+ * manual/pattern.texi: Acknowledge that fnmatch can fail.
+
+2013-10-25 Fabrice Bauzac <fbauzac@debian71.nce.amadeus.net>
+
+ [BZ #16074]
+ * manual/llio.texi (Memory-mapped I/O): Indicate that mmap returns
+ MAP_FAILED on error.
+
+2013-10-25 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ [BZ #16072]
+ * sysdeps/posix/getaddrinfo.c (gethosts): Allocate tmpbuf on
+ heap for large requests.
+
+2013-10-25 Aurelien Jarno <aurelien@aurel32.net>
+
+ [BZ #9954]
+ * sysdeps/posix/getaddrinfo.c (rfc3484_sort): do not assign native
+ result if the result has no associated interface.
+ * sysdeps/posix/getaddrinfo.c (getaddrinfo): correctly detect
+ interface for all 127.X.Y.Z addresses.
+
+2013-10-24 Chris Leonard <cjl@sugarlabs.org>
+
+ * locale/iso-639.def: Add Ligurian (lij)
+
+2013-10-21 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #15825]
+ * sunrpc/rpc_main.c: Document rpcgen -5.
+
+2013-10-19 Michael Stahl <mstahl@redhat.com>
+
+ * elf/rtld.c (do_preload): Print the reason why preloading failed.
+
+2013-10-19 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #10278]
+ * posix/glob.c: Match only directories when trailing slash is present.
+ * posix/tst-gnuglob.c (my_opendir): Do not open files.
+ (main): Add testcase.
+
+2013-10-19 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #15670]
+ * time/tzfile.c (__tzfile_read): Replace alloca with malloc.
+
+2013-10-18 Carlos O'Donell <carlos@redhat.com>
+
+ * manual/crypt.texi (Cryptographic Functions): Using SunRPC and
+ AUTH_DES will prevent FIPS 140-2 compliance. Add vindex for
+ AUTH_DES and cindex for FIPS 140-2.
+ (DES Encryption): Add cindex FIPS 46-3.
+
+ * locale/locarchive.h (struct locarhandle): Add fname.
+ * locale/programs/localedef.c (main): Pass ARGV[remaining]
+ if an optional argument was specified to --list-archive,
+ otherwise NULL.
+ * locale/programs/locarchive.c (show_archive_content): Take new
+ argument fname and pass it via ah.fname to open_archive.
+ * locale/programs/localedef.h: Update decl.
+ (open_archive): If AH->fname is non-null, open that file
+ rather than the default file name, and don't ignore ENOENT.
+ (create_archive): Set AH.fname to NULL.
+ (delete_locales_from_archive): Likewise.
+ (add_locales_to_archive): Likewise.
+ * locale/programs/locfile.c (write_all_categories): Likewise.
+
+2013-10-18 Joseph Myers <joseph@codesourcery.com>
+ Aldy Hernandez <aldyh@redhat.com>
+
+ * sysdeps/powerpc/powerpc32/e500/nofpu/Makefile: New file.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fclrexcpt.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fe_note_change.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fedisblxcpt.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/feenablxcpt.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fegetenv.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fegetexcept.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fegetround.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/feholdexcpt.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fenv_const.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fenv_libc.h: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fesetenv.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fesetround.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/feupdateenv.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_from_prctl.c:
+ Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_from_spe.c:
+ Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_to_prctl.c:
+ Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_to_spe.c:
+ Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fgetexcptflg.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcept-soft.c:
+ Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcpt.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/fsetexcptflg.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/ftestexcept.c: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/get-rounding-mode.h:
+ Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/s_fabsf.S: Likewise.
+ * sysdeps/powerpc/powerpc32/e500/nofpu/spe-raise.c: Likewise.
+ * sysdeps/powerpc/preconfigure: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/nofpu/Implies:
+ Likewise.
+ * sysdeps/powerpc/nofpu/soft-supp.h [__NO_FPRS__ && !_SOFT_FLOAT]:
+ Replace contents of file by #include of <fenv_libc.h>.
+ * sysdeps/powerpc/soft-fp/sfp-machine.h
+ [__NO_FPRS__ && !_SOFT_FLOAT]: Include <fenv_libc.h>, <sysdep.h>
+ and <sys/prctl.h>.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (__feraiseexcept_soft): Declare.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (FP_EX_INEXACT): Define macro.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (FP_EX_INVALID): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (FP_EX_DIVZERO): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (FP_EX_UNDERFLOW): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (FP_EX_OVERFLOW): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FP_DECL_EX): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (FP_INIT_ROUNDMODE): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (FP_INIT_EXCEPTIONS): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (FP_HANDLE_EXCEPTIONS): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (FP_ROUNDMODE): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (FP_TRAPPING_EXCEPTIONS): Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data:
+ Allow copysignl PLT reference to be missing.
+
+2013-10-18 Richard Sandiford <richard@codesourcery.com>
+ Joseph Myers <joseph@codesourcery.com
+
+ [BZ #15948]
+ * locale/programs/ld-collate.c (new_element): Handle <U0000> as a
+ single character.
+ (add_to_tablewc): Assert sequence of wide characters is nonempty.
+
+2013-10-18 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * elf/tst-tls-dlinfo.c: Don't include tls.h.
+ * elf/tst-tls1.c: Likewise.
+ * elf/tst-tls10.h: Likewise.
+ * elf/tst-tls14.c: Likewise.
+ * elf/tst-tls2.c: Likewise.
+ * elf/tst-tls3.c: Likewise.
+ * elf/tst-tls4.c: Likewise.
+ * elf/tst-tls5.c: Likewise.
+ * elf/tst-tls6.c: Likewise.
+ * elf/tst-tls7.c: Likewise.
+ * elf/tst-tls8.c: Likewise.
+ * elf/tst-tls9.c: Likewise.
+ * elf/tst-tlsmod1.c: Likewise.
+ * elf/tst-tlsmod13.c: Likewise.
+ * elf/tst-tlsmod13a.c: Likewise.
+ * elf/tst-tlsmod14a.c: Likewise.
+ * elf/tst-tlsmod16a.c: Likewise.
+ * elf/tst-tlsmod16b.c: Likewise.
+ * elf/tst-tlsmod2.c: Likewise.
+ * elf/tst-tlsmod3.c: Likewise.
+ * elf/tst-tlsmod4.c: Likewise.
+ * elf/tst-tlsmod5.c: Likewise.
+ * elf/tst-tlsmod6.c: Likewise.
+
+2013-10-18 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #12486]
+ * malloc/malloc.c: remove checks for statistics.
+
+2013-10-17 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #15277]
+ * inet/inet_net.c (inet_network): Detect additional invalid strings.
+ * inet/tst-network.c: Add testcase.
+
+2013-10-17 Andreas Schwab <schwab@suse.de>
+
+ [BZ #15218]
+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Don't use gethostbyaddr
+ to determine canonical name.
+
+2013-10-17 Ondřej Bílka <neleai@seznam.cz>
+
+ * sysdeps/ieee754/dbl-64/dbl2mpn.c: Fix formatting.
+ * sysdeps/ieee754/dbl-64/dla.h: Likewise.
+ * sysdeps/ieee754/dbl-64/dosincos.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_acosh.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_cosh.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_exp2.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_fmod.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_gamma_r.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_hypot.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_ilogb.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_j0.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_j1.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_jn.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_log10.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_log2.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_remainder.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_rem_pio2.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_sinh.c: Likewise.
+ * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise.
+ * sysdeps/ieee754/dbl-64/halfulp.c: Likewise.
+ * sysdeps/ieee754/dbl-64/k_rem_pio2.c: Likewise.
+ * sysdeps/ieee754/dbl-64/MathLib.h: Likewise.
+ * sysdeps/ieee754/dbl-64/mpa-arch.h: Likewise.
+ * sysdeps/ieee754/dbl-64/mpa.c: Likewise.
+ * sysdeps/ieee754/dbl-64/mpatan.c: Likewise.
+ * sysdeps/ieee754/dbl-64/mpn2dbl.c: Likewise.
+ * sysdeps/ieee754/dbl-64/mptan.c: Likewise.
+ * sysdeps/ieee754/dbl-64/mydefs.h: Likewise.
+ * sysdeps/ieee754/dbl-64/s_asinh.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_atan.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_cbrt.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_ceil.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_copysign.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_erf.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_expm1.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_fabs.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_finite.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_floor.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_frexp.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_isinf.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_isinf_ns.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_isnan.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_llround.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_log1p.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_logb.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_lrint.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_modf.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_nearbyint.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_remquo.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_rint.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_scalbln.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_scalbn.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_sin.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_sincos.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_tanh.c: Likewise.
+
+2013-10-17 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #16041]
+ * soft-fp/op-common.h (FP_EXTEND): When input is a signaling NaN,
+ make result into a quiet NaN.
+
+2013-10-16 Joseph Myers <joseph@codesourcery.com>
+
+ * soft-fp/adddf3.c: Fix horizontal whitespace.
+ * soft-fp/addsf3.c: Likewise.
+ * soft-fp/addtf3.c: Likewise.
+ * soft-fp/divdf3.c: Likewise.
+ * soft-fp/divsf3.c: Likewise.
+ * soft-fp/divtf3.c: Likewise.
+ * soft-fp/double.h: Likewise.
+ * soft-fp/eqdf2.c: Likewise.
+ * soft-fp/eqsf2.c: Likewise.
+ * soft-fp/eqtf2.c: Likewise.
+ * soft-fp/extenddftf2.c: Likewise.
+ * soft-fp/extended.h: Likewise.
+ * soft-fp/extendsfdf2.c: Likewise.
+ * soft-fp/extendsftf2.c: Likewise.
+ * soft-fp/extendxftf2.c: Likewise.
+ * soft-fp/fixdfdi.c: Likewise.
+ * soft-fp/fixdfsi.c: Likewise.
+ * soft-fp/fixdfti.c: Likewise.
+ * soft-fp/fixsfdi.c: Likewise.
+ * soft-fp/fixsfsi.c: Likewise.
+ * soft-fp/fixsfti.c: Likewise.
+ * soft-fp/fixtfdi.c: Likewise.
+ * soft-fp/fixtfsi.c: Likewise.
+ * soft-fp/fixtfti.c: Likewise.
+ * soft-fp/fixunsdfdi.c: Likewise.
+ * soft-fp/fixunsdfsi.c: Likewise.
+ * soft-fp/fixunsdfti.c: Likewise.
+ * soft-fp/fixunssfdi.c: Likewise.
+ * soft-fp/fixunssfsi.c: Likewise.
+ * soft-fp/fixunssfti.c: Likewise.
+ * soft-fp/fixunstfdi.c: Likewise.
+ * soft-fp/fixunstfsi.c: Likewise.
+ * soft-fp/fixunstfti.c: Likewise.
+ * soft-fp/floatdidf.c: Likewise.
+ * soft-fp/floatdisf.c: Likewise.
+ * soft-fp/floatditf.c: Likewise.
+ * soft-fp/floatsidf.c: Likewise.
+ * soft-fp/floatsisf.c: Likewise.
+ * soft-fp/floatsitf.c: Likewise.
+ * soft-fp/floattidf.c: Likewise.
+ * soft-fp/floattisf.c: Likewise.
+ * soft-fp/floattitf.c: Likewise.
+ * soft-fp/floatundidf.c: Likewise.
+ * soft-fp/floatundisf.c: Likewise.
+ * soft-fp/floatunditf.c: Likewise.
+ * soft-fp/floatunsidf.c: Likewise.
+ * soft-fp/floatunsisf.c: Likewise.
+ * soft-fp/floatunsitf.c: Likewise.
+ * soft-fp/floatuntidf.c: Likewise.
+ * soft-fp/floatuntisf.c: Likewise.
+ * soft-fp/floatuntitf.c: Likewise.
+ * soft-fp/fmadf4.c: Likewise.
+ * soft-fp/fmasf4.c: Likewise.
+ * soft-fp/fmatf4.c: Likewise.
+ * soft-fp/gedf2.c: Likewise.
+ * soft-fp/gesf2.c: Likewise.
+ * soft-fp/getf2.c: Likewise.
+ * soft-fp/ledf2.c: Likewise.
+ * soft-fp/lesf2.c: Likewise.
+ * soft-fp/letf2.c: Likewise.
+ * soft-fp/muldf3.c: Likewise.
+ * soft-fp/mulsf3.c: Likewise.
+ * soft-fp/multf3.c: Likewise.
+ * soft-fp/negdf2.c: Likewise.
+ * soft-fp/negsf2.c: Likewise.
+ * soft-fp/negtf2.c: Likewise.
+ * soft-fp/op-1.h: Likewise.
+ * soft-fp/op-2.h: Likewise.
+ * soft-fp/op-4.h: Likewise.
+ * soft-fp/op-8.h: Likewise.
+ * soft-fp/op-common.h: Likewise.
+ * soft-fp/quad.h: Likewise.
+ * soft-fp/single.h: Likewise.
+ * soft-fp/soft-fp.h: Likewise.
+ * soft-fp/sqrtdf2.c: Likewise.
+ * soft-fp/sqrtsf2.c: Likewise.
+ * soft-fp/sqrttf2.c: Likewise.
+ * soft-fp/subdf3.c: Likewise.
+ * soft-fp/subsf3.c: Likewise.
+ * soft-fp/subtf3.c: Likewise.
+ * soft-fp/truncdfsf2.c: Likewise.
+ * soft-fp/trunctfdf2.c: Likewise.
+ * soft-fp/trunctfsf2.c: Likewise.
+ * soft-fp/trunctfxf2.c: Likewise.
+ * soft-fp/unorddf2.c: Likewise.
+ * soft-fp/unordsf2.c: Likewise.
+ * soft-fp/unordtf2.c: Likewise.
+
+2013-10-15 Joseph Myers <joseph@codesourcery.com>
+
+ * soft-fp/op-2.h (_FP_DIV_MEAT_2_gmp): Remove macro.
+ * soft-fp/soft-fp.h (FP_UNSET_EXCEPTION): Likewise.
+
+2013-10-15 Ondřej Bílka <neleai@seznam.cz>
+
+ * elf/dl-libc.c: Clear initfini list after freeing.
+
+2013-10-14 Joseph Myers <joseph@codesourcery.com>
+
+ * soft-fp/adddf3.c: Fix vertical whitespace and indentation.
+ * soft-fp/addsf3.c: Likewise.
+ * soft-fp/addtf3.c: Likewise.
+ * soft-fp/divdf3.c: Likewise.
+ * soft-fp/divsf3.c: Likewise.
+ * soft-fp/divtf3.c: Likewise.
+ * soft-fp/double.h: Likewise.
+ * soft-fp/eqdf2.c: Likewise.
+ * soft-fp/eqsf2.c: Likewise.
+ * soft-fp/eqtf2.c: Likewise.
+ * soft-fp/extenddftf2.c: Likewise.
+ * soft-fp/extended.h: Likewise.
+ * soft-fp/extendsfdf2.c: Likewise.
+ * soft-fp/extendsftf2.c: Likewise.
+ * soft-fp/extendxftf2.c: Likewise.
+ * soft-fp/fixdfdi.c: Likewise.
+ * soft-fp/fixdfsi.c: Likewise.
+ * soft-fp/fixdfti.c: Likewise.
+ * soft-fp/fixsfdi.c: Likewise.
+ * soft-fp/fixsfsi.c: Likewise.
+ * soft-fp/fixsfti.c: Likewise.
+ * soft-fp/fixtfdi.c: Likewise.
+ * soft-fp/fixtfsi.c: Likewise.
+ * soft-fp/fixtfti.c: Likewise.
+ * soft-fp/fixunsdfdi.c: Likewise.
+ * soft-fp/fixunsdfsi.c: Likewise.
+ * soft-fp/fixunsdfti.c: Likewise.
+ * soft-fp/fixunssfdi.c: Likewise.
+ * soft-fp/fixunssfsi.c: Likewise.
+ * soft-fp/fixunssfti.c: Likewise.
+ * soft-fp/fixunstfdi.c: Likewise.
+ * soft-fp/fixunstfsi.c: Likewise.
+ * soft-fp/fixunstfti.c: Likewise.
+ * soft-fp/floatdidf.c: Likewise.
+ * soft-fp/floatdisf.c: Likewise.
+ * soft-fp/floatditf.c: Likewise.
+ * soft-fp/floatsidf.c: Likewise.
+ * soft-fp/floatsisf.c: Likewise.
+ * soft-fp/floatsitf.c: Likewise.
+ * soft-fp/floattidf.c: Likewise.
+ * soft-fp/floattisf.c: Likewise.
+ * soft-fp/floattitf.c: Likewise.
+ * soft-fp/floatundidf.c: Likewise.
+ * soft-fp/floatundisf.c: Likewise.
+ * soft-fp/floatunsidf.c: Likewise.
+ * soft-fp/floatunsisf.c: Likewise.
+ * soft-fp/floatuntidf.c: Likewise.
+ * soft-fp/floatuntisf.c: Likewise.
+ * soft-fp/floatuntitf.c: Likewise.
+ * soft-fp/fmadf4.c: Likewise.
+ * soft-fp/fmasf4.c: Likewise.
+ * soft-fp/fmatf4.c: Likewise.
+ * soft-fp/gedf2.c: Likewise.
+ * soft-fp/gesf2.c: Likewise.
+ * soft-fp/getf2.c: Likewise.
+ * soft-fp/ledf2.c: Likewise.
+ * soft-fp/lesf2.c: Likewise.
+ * soft-fp/letf2.c: Likewise.
+ * soft-fp/muldf3.c: Likewise.
+ * soft-fp/mulsf3.c: Likewise.
+ * soft-fp/multf3.c: Likewise.
+ * soft-fp/negdf2.c: Likewise.
+ * soft-fp/negsf2.c: Likewise.
+ * soft-fp/negtf2.c: Likewise.
+ * soft-fp/op-1.h: Likewise.
+ * soft-fp/op-2.h: Likewise.
+ * soft-fp/op-4.h: Likewise.
+ * soft-fp/op-8.h: Likewise.
+ * soft-fp/op-common.h: Likewise.
+ * soft-fp/quad.h: Likewise.
+ * soft-fp/single.h: Likewise.
+ * soft-fp/soft-fp.h: Likewise.
+ * soft-fp/sqrtdf2.c: Likewise.
+ * soft-fp/sqrtsf2.c: Likewise.
+ * soft-fp/sqrttf2.c: Likewise.
+ * soft-fp/subdf3.c: Likewise.
+ * soft-fp/subsf3.c: Likewise.
+ * soft-fp/subtf3.c: Likewise.
+ * soft-fp/truncdfsf2.c: Likewise.
+ * soft-fp/trunctfdf2.c: Likewise.
+ * soft-fp/trunctfsf2.c: Likewise.
+ * soft-fp/trunctfxf2.c: Likewise.
+ * soft-fp/unorddf2.c: Likewise.
+ * soft-fp/unordsf2.c: Likewise.
+ * soft-fp/unordtf2.c: Likewise.
+
+2013-10-14 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #15672]
+ * misc/error.c (error_tail): Fix possible buffer overflow.
+
+2013-10-14 Aurelien Jarno <aurelien@aurel32.net>
+
+ [BZ #13028]
+ * res_send.c(__libc_res_nsend): Correctly copy the nameserver
+ address.
+
+2013-10-14 P. J. McDermott <pj@pehjota.net>
+
+ [BZ #832]
+ * elf/ldd.bash.in (try_trace): New function. Delete previous code
+ testing pipefail option.
+
+2013-10-12 Joseph Myers <joseph@codesourcery.com>
+
+ * soft-fp/double.h: Indent preprocessor directives inside #if.
+ * soft-fp/extended.h: Likewise.
+ * soft-fp/op-2.h: Likewise.
+ * soft-fp/op-4.h: Likewise.
+ * soft-fp/op-common.h: Likewise.
+ * soft-fp/quad.h: Likewise.
+ * soft-fp/single.h: Likewise.
+ * soft-fp/soft-fp.h: Likewise.
+
+2013-10-12 Yuri Chornoivan <yurchor@ukr.net>
+
+ * iconv/iconv_prog.c: Fix typos.
+ * stdio-common/psiginfo-data.h: Likewise.
+
+2013-10-12 Reuben Thomas <rrt@sc3d.org>
+
+ [BZ #15764]
+ * locale/setlocale.c: Fix typo.
+
+2013-10-12 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #16036]
+ * soft-fp/unorddf2.c (__unorddf2): Raise "invalid" exception for
+ signaling NaN arguments.
+ * soft-fp/unordsf2.c (__unordsf2): Likewise.
+ * soft-fp/unordtf2.c (__unordtf2): Likewise.
+
+ [BZ #14910]
+ * soft-fp/gedf2.c (__gedf2): Raise "invalid" exception for all
+ unordered operands.
+ * soft-fp/gesf2.c (__gesf2): Likewise.
+ * soft-fp/getf2.c (__getf2): Likewise.
+ * soft-fp/ledf2.c (__ledf2): Likewise.
+ * soft-fp/lesf2.c (__lesf2): Likewise.
+ * soft-fp/letf2.c (__letf2): Likewise.
+
+ * soft-fp/eqdf2.c (__eqdf2): Use FP_INIT_EXCEPTIONS.
+ * soft-fp/eqsf2.c (__eqsf2): Likewise.
+ * soft-fp/eqtf2.c (__eqtf2): Likewise.
+ * soft-fp/fixdfdi.c (__fixdfdi): Likewise.
+ * soft-fp/fixdfsi.c (__fixdfsi): Likewise.
+ * soft-fp/fixdfti.c (__fixdfti): Likewise.
+ * soft-fp/fixsfdi.c (__fixsfdi): Likewise.
+ * soft-fp/fixsfsi.c (__fixsfsi): Likewise.
+ * soft-fp/fixsfti.c (__fixsfti): Likewise.
+ * soft-fp/fixtfdi.c (__fixtfdi): Likewise.
+ * soft-fp/fixtfsi.c (__fixtfsi): Likewise.
+ * soft-fp/fixtfti.c (__fixtfti): Likewise.
+ * soft-fp/fixunsdfdi.c (__fixunsdfdi): Likewise.
+ * soft-fp/fixunsdfsi.c (__fixunsdfsi): Likewise.
+ * soft-fp/fixunsdfti.c (__fixunsdfti): Likewise.
+ * soft-fp/fixunssfdi.c (__fixunssfdi): Likewise.
+ * soft-fp/fixunssfsi.c (__fixunssfsi): Likewise.
+ * soft-fp/fixunssfti.c (__fixunssfti): Likewise.
+ * soft-fp/fixunstfdi.c (__fixunstfdi): Likewise.
+ * soft-fp/fixunstfsi.c (__fixunstfsi): Likewise.
+ * soft-fp/fixunstfti.c (__fixunstfti): Likewise.
+ * soft-fp/floatdidf.c (__floatdidf): Use FP_INIT_ROUNDMODE.
+ * soft-fp/floatdisf.c (__floatdisf): Likewise.
+ * soft-fp/floatsisf.c (__floatsisf): Likewise.
+ * soft-fp/floattidf.c (__floattidf): Likewise.
+ * soft-fp/floattisf.c (__floattisf): Likewise.
+ * soft-fp/floattitf.c (__floattitf): Likewise.
+ * soft-fp/floatundidf.c (__floatundidf): Likewise.
+ * soft-fp/floatundisf.c (__floatundisf): Likewise.
+ * soft-fp/floatunsisf.c (__floatunsisf): Likewise.
+ * soft-fp/floatuntidf.c (__floatuntidf): Likewise.
+ * soft-fp/floatuntisf.c (__floatuntisf): Likewise.
+ * soft-fp/floatuntitf.c (__floatuntitf): Likewise.
+ * soft-fp/gedf2.c (__gedf2): Use FP_INIT_EXCEPTIONS.
+ * soft-fp/gesf2.c (__gesf2): Likewise.
+ * soft-fp/getf2.c (__getf2): Likewise.
+ * soft-fp/ledf2.c (__ledf2): Likewise.
+ * soft-fp/lesf2.c (__lesf2): Likewise.
+ * soft-fp/letf2.c (__letf2): Likewise.
+
+ * soft-fp/soft-fp.h [FP_NO_EXCEPTIONS] (FP_SET_EXCEPTION):
+ Undefine and redefine.
+ [FP_NO_EXCEPTIONS] (FP_CUR_EXCEPTIONS): Likewise.
+ [FP_NO_EXCEPTIONS] (FP_TRAPPING_EXCEPTIONS): Likewise.
+ [FP_NO_EXCEPTIONS] (FP_ROUNDMODE): Likewise.
+ * soft-fp/floatditf.c (FP_NO_EXCEPTIONS): Define macro.
+ (__floatditf): Don't use FP_DECL_EX or FP_HANDLE_EXCEPTIONS.
+ * soft-fp/floatsidf.c (FP_NO_EXCEPTIONS): Define macro.
+ (__floatsidf): Don't use FP_DECL_EX or FP_HANDLE_EXCEPTIONS.
+ * soft-fp/floatsitf.c (FP_NO_EXCEPTIONS): Define macro.
+ (__floatsitf): Don't use FP_DECL_EX or FP_HANDLE_EXCEPTIONS.
+ * soft-fp/floatunditf.c (FP_NO_EXCEPTIONS): Define macro.
+ (__floatunditf): Don't use FP_DECL_EX or FP_HANDLE_EXCEPTIONS.
+ * soft-fp/floatunsidf.c (FP_NO_EXCEPTIONS): Define macro.
+ (__floatunsidf): Don't use FP_DECL_EX or FP_HANDLE_EXCEPTIONS.
+ * soft-fp/floatunsitf.c (FP_NO_EXCEPTIONS): Define macro.
+ (__floatunsitf): Don't use FP_DECL_EX or FP_HANDLE_EXCEPTIONS.
+
+ [BZ #16032]
+ * soft-fp/op-2.h (_FP_DIV_MEAT_2_udiv): Shift numerator right
+ without decrementing exponent if mantissa >= that for the
+ denominator, not >.
+ (_FP_DIV_MEAT_2_gmp): Test numerator mantissa >= that for the
+ denominator, not >. Decrement exponent in < case instead of
+ incrementing in >= case.
+ * soft-fp/op-4.h (_FP_DIV_MEAT_4_udiv): Shift numerator right
+ without decrementing exponent if mantissa >= that for the
+ denominator, not >.
+
+ * soft-fp/op-common.h (_FP_TO_INT): Reverse test of sign for
+ computing saturated result for unsigned overflow.
+
+2013-10-11 Siddhesh Poyarekar <siddhesh@redhat.com>
+ Jeff Law <law@redhat.com>
+
+ * sysdeps/ieee754/dbl-64/e_atan2.c: Include stap-probe.h.
+ (atan2Mp): Add systemtap probe marker.
+ * sysdeps/ieee754/dbl-64/e_log.c: include stap-probe.h.
+ (__ieee754_log): Add systemtap probe marker.
+ * sysdeps/ieee754/dbl-64/s_atan.c: Include stap-probe.h.
+ (atanMp): Add systemtap probe marker.
+ * sysdeps/ieee754/dbl-64/s_tan.c: Include stap-probe.h.
+ (tanMp): Add systemtap probe marker.
+ * sysdeps/ieee754/dbl-64/slowexp.c: Include stap-probe.h.
+ (__slowexp): Add systemtap probe marker.
+ * sysdeps/ieee754/dbl-64/slowpow.c: Include stap-probe.h.
+ (__slowpow): Add systemtap probe marker.
+ * manual/probes.texi: Document probes.
+
+2013-10-11 Eric Biggers <ebiggers3@gmail.com>
+
+ [BZ #15362]
+ * libio/fileops.c (_IO_new_file_write): Return count of bytes
+ written.
+ (_IO_new_file_xsputn): Don't return EOF if nothing has been
+ written.
+ * libio/iofwrite.c (_IO_fwrite): Return count if bytes were
+ written to buffer but not flushed.
+ * libio/iofwrite_u.c: Likewise.
+ * libio/iopadn.c: Return bytes returned even if EOF was
+ encountered.
+ * libio/iowpadn.c: Likewise.
+ * stdio-common/vfprintf.c [COMPILE_WPRINTF] (PAD): Return error
+ if _IO_padn does not write the whole buffer.
+ [!COMPILE_WPRINTF] (PAD): Likewise.
+
+2013-10-10 David S. Miller <davem@davemloft.net>
+
+ * sysdeps/posix/dirstream.h (struct __dirstream): Fix alignment of
+ directory block.
+
+2013-10-10 Joseph Myers <joseph@codesourcery.com>
+
+ * soft-fp/extendxftf2.c: Use copyright year range. Use URL
+ instead of FSF address.
+ * soft-fp/fixdfti.c: Likewise.
+ * soft-fp/fixsfti.c: Likewise.
+ * soft-fp/fixtfti.c: Likewise.
+ * soft-fp/fixunsdfti.c: Likewise.
+ * soft-fp/fixunssfti.c: Likewise.
+ * soft-fp/fixunstfti.c: Likewise.
+ * soft-fp/floattidf.c: Likewise.
+ * soft-fp/floattisf.c: Likewise.
+ * soft-fp/floattitf.c: Likewise.
+ * soft-fp/floatuntidf.c: Likewise.
+ * soft-fp/floatuntisf.c: Likewise.
+ * soft-fp/floatuntitf.c: Likewise.
+ * soft-fp/trunctfxf2.c: Likewise.
+
+ * soft-fp/extendxftf2.c: New file. Copied from libgcc.
+ * soft-fp/fixdfti.c: Likewise.
+ * soft-fp/fixsfti.c: Likewise.
+ * soft-fp/fixtfti.c: Likewise.
+ * soft-fp/fixunsdfti.c: Likewise.
+ * soft-fp/fixunssfti.c: Likewise.
+ * soft-fp/fixunstfti.c: Likewise.
+ * soft-fp/floattidf.c: Likewise.
+ * soft-fp/floattisf.c: Likewise.
+ * soft-fp/floattitf.c: Likewise.
+ * soft-fp/floatuntidf.c: Likewise.
+ * soft-fp/floatuntisf.c: Likewise.
+ * soft-fp/floatuntitf.c: Likewise.
+ * soft-fp/trunctfxf2.c: Likewise.
+
+2013-10-10 David S. Miller <davem@davemloft.net>
+
+ * sysdeps/sparc/fpu/libm-test-ulps: Update.
+
+2013-10-10 Joseph Myers <joseph@codsourcery.com>
+
+ * sysdeps/powerpc/nofpu/Makefile [$(subdir) = math]
+ (CFLAGS-e_hypotl.c): Add -fno-builtin-fabsl.
+ [$(subdir) = math] (CFLAGS-w_acosl.c): Likewise.
+ [$(subdir) = math] (CFLAGS-w_asinl.c): Likewise.
+ [$(subdir) = math] (CFLAGS-w_atanhl.c): Likewise.
+ [$(subdir) = math] (CFLAGS-w_j0l.c): Likewise.
+ [$(subdir) = math] (CFLAGS-w_j1l.c): Likewise.
+
+ * sysdeps/ieee754/ldbl-128ibm/e_acosl.c (__ieee754_acosl): Check
+ for NaNs before doing comparisons on argument.
+ * sysdeps/ieee754/ldbl-128ibm/e_asinl.c (__ieee754_asinl):
+ Likewise.
+
+2013-10-10 Will Newton <will.newton@linaro.org>
+
+ * malloc/hooks.c (memalign_check): Ensure the value of bytes
+ passed to _int_memalign does not overflow.
+
+2013-10-10 Torvald Riegel <triegel@redhat.com>
+
+ * scripts/bench.pl: Add include-sources directive.
+ * benchtests/README: Update documentation.
+
+2013-10-10 Joseph Myers <joseph@codesourcery.com>
+
+ * soft-fp/soft-fp.h (FP_INIT_EXCEPTIONS): New macro.
+ * soft-fp/extenddftf2.c (__extenddftf2): Use FP_INIT_EXCEPTIONS
+ instead of FP_INIT_ROUNDMODE.
+ * soft-fp/extendsfdf2.c (__extendsfdf2): Likewise.
+ * soft-fp/extendsftf2.c (__extendsftf2): Likewise.
+
+ [BZ #16034]
+ * soft-fp/op-common.h (_FP_NEG): Document input as raw. Do not
+ copy class of input value.
+ * soft-fp/negdf2.c (__negdf2): Use raw unpacking and packing. Do
+ not handle exceptions.
+ * soft-fp/negsf2.c (__negsf2): Likewise.
+ * soft-fp/negtf2.c (__negtf2): Likewise.
+ * sysdeps/sparc/sparc32/soft-fp/q_neg.c (_Q_neg): Likewise.
+
+2013-10-09 Joseph Myers <joseph@codesourcery.com>
+
+ * soft-fp/op-4.h (_FP_FRAC_DISASSEMBLE_4): Remove trailing
+ semicolon. From Linux kernel.
+
+2013-10-09 Adam Buchbinder <adam.buchbinder@gmail.com>
+
+ * soft-fp/op-common.h (_FP_UNPACK_CANONICAL): Fix typo in comment.
+
+2013-10-08 Yogesh Chaudhari <mr.yogesh@gmail.com>
+
+ [BZ #156]
+ * manual/socket.texi: Added statement about buffer
+ for gethostbyname2_r.
+
+2013-10-08 Ondřej Bílka <neleai@seznam.cz>
+
+ * sysdeps/x86_64/memset.S (ALIGN): Macro removed.
+ Use .p2align directive instead, throughout.
+ * sysdeps/x86_64/multiarch/memcmp-sse4.S: Likewise.
+ * sysdeps/x86_64/multiarch/memcmp-ssse3.S: Likewise.
+ * sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S: Likewise.
+ * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: Likewise.
+ * sysdeps/x86_64/multiarch/memcpy-ssse3.S: Likewise.
+ * sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S: Likewise.
+ * sysdeps/x86_64/strchr.S: Likewise.
+ * sysdeps/x86_64/strrchr.S: Likewise.
+
+2013-10-08 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * sysdeps/ieee754/dbl-64/e_pow.c: Fix code formatting.
+
+ * sysdeps/ieee754/dbl-64/e_exp.c: Fix code formatting.
+
+ * sysdeps/generic/math_private.h (__mpsin1): Remove
+ declaration.
+ (__mpcos1): Likewise.
+ (__mpsin): New argument __range_reduce.
+ (__mpcos): Likewise.
+ * sysdeps/ieee754/dbl-64/s_sin.c: Likewise.
+ (slow): Use __mpsin and __mpcos.
+ (slow1): Likewise.
+ (slow2): Likewise.
+ (sloww): Likewise.
+ (sloww1): Likewise.
+ (sloww2): Likewise.
+ (bsloww): Likewise.
+ (bsloww1): Likewise.
+ (bsloww2): Likewise.
+ (cslow2): Likewise.
+ (csloww): Likewise.
+ (csloww1): Likewise.
+ (csloww2): Likewise.
+ * sysdeps/ieee754/dbl-64/sincos32.c (__mpsin): Add argument
+ range_reduce. Merge in __mpsin1.
+ (__mpcos): Likewise.
+ (__mpsin1): Remove.
+ (__mpcos1): Likewise.
+
+2013-10-07 Joseph Myers <joseph@codesourcery.com>
+
+ * locale/loadlocale.c (_nl_intern_locale_data): Use
+ LOCFILE_ALIGNED_P.
+ * locale/programs/3level.h (CONCAT(add_locale_,TABLE)): Use
+ LOCFILE_ALIGN_UP and LOCFILE_ALIGN.
+ * locale/programs/ld-collate.c (obstack_int32_grow): Assert that
+ obstack data is appropriately aligned.
+ (obstack_int32_grow_fast): Likewise.
+ * locale/programs/ld-ctype.c (ctype_output): Use LOCFILE_ALIGN.
+ * locale/programs/locfile.c (add_locale_uint32): Likewise.
+ (add_locale_uint32_array): Likewise.
+
+2013-10-07 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * benchtests/Makefile: Remove ARGLIST and RET variables.
+ ($(objpfx)bench-%.c): Pass only function name to the script.
+ * benchtests/README: Update documentation.
+ * benchtests/acos-inputs: Add new directives.
+ * benchtests/acosh-inputs: Likewise.
+ * benchtests/asin-inputs: Likewise.
+ * benchtests/asinh-inputs: Likewise.
+ * benchtests/atan-inputs: Likewise.
+ * benchtests/atanh-inputs: Likewise.
+ * benchtests/cos-inputs: Likewise.
+ * benchtests/cosh-inputs: Likewise.
+ * benchtests/exp-inputs: Likewise.
+ * benchtests/log-inputs: Likewise.
+ * benchtests/pow-inputs: Likewise.
+ * benchtests/rint-inputs: Likewise.
+ * benchtests/sin-inputs: Likewise.
+ * benchtests/sinh-inputs: Likewise.
+ * benchtests/tan-inputs: Likewise.
+ * benchtests/tanh-inputs: Likewise.
+ * scripts/bench.pl: Add support for new directives.
+
+2013-10-07 Alan Modra <amodra@gmail.com>
+
+ * README: Fix careless merge.
+
+2013-10-05 Alan Modra <amodra@gmail.com>
+
+ * NEWS: Mention powerpc64le support and bugs fixed.
+ * README: Both big-endian and little-endian powerpc64 supported.
+
+2013-10-04 Samuel Thibault <samuel.thibault@ens-lyon.org>
+
+ * sysdeps/mach/hurd/fork.c (_hurd_atfork_prepare_hook,
+ _hurd_atfork_child_hook, _hurd_atfork_parent_hook): New hooks.
+ (__fork): Call _hurd_atfork_prepare_hook hooks before all locking, call
+ _hurd_atfork_parent_hook or _hurd_atfork_child_hook after all unlocking.
+
+2013-10-04 Ryan S. Arnold <ryan.arnold@linaro.org>
+
+ * misc/swapon.c (swapon): Update definition, adding FLAGS parameter to
+ match prototype.
+
+2013-10-04 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/powerpc/powerpc32/Makefile [$(with-fp) = yes] (+cflags):
+ Move -mhard-float appending from
+ ports/sysdeps/powerpc/powerpc32/Makefile.
+ [$(with-fp) = yes] (ASFLAGS): Likewise.
+ [$(with-fp) = yes] (sysdep-LDFLAGS): Likewise.
+ * sysdeps/powerpc/nofpu: Move directory from
+ ports/sysdeps/powerpc/nofpu.
+ * sysdeps/powerpc/soft-fp: Move directory from
+ ports/sysdeps/powerpc/soft-fp.
+ * sysdeps/powerpc/powerpc32/405: Move directory from
+ ports/sysdeps/powerpc/powerpc32/405.
+ * sysdeps/powerpc/powerpc32/440: Move directory from
+ ports/sysdeps/powerpc/powerpc32/440.
+ * sysdeps/powerpc/powerpc32/464: Move directory from
+ ports/sysdeps/powerpc/powerpc32/464.
+ * sysdeps/powerpc/powerpc32/476: Move directory from
+ ports/sysdeps/powerpc/powerpc32/476.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu: Move directory
+ from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/405: Move directory
+ from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/405.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/440: Move directory
+ from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/440.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/464: Move directory
+ from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/464.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/476: Move directory
+ from ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/476.
+ * README: Update for powerpc-*-linux-gnu software floating point
+ support in libc.
+
+ * sysdeps/unix/sysv/linux/configure.in (powerpc/powerpc32): Change
+ case to powerpc/powerpc32*.
+ * sysdeps/unix/sysv/linux/configure: Regenerated.
+
+ * sysdeps/powerpc/fpu_control.h [__NO_FPRS__ && !_SOFT_FLOAT]
+ (_FPU_MASK_OM): Define as 0x04.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_MASK_UM): Define as 0x08.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_RESERVED): Define as
+ 0x00c10080.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_DEFAULT): Define as
+ 0x0000003c.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_IEEE): Define as _FPU_DEFAULT.
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S
+ (__CONTEXT_FUNC_NAME) [__CONTEXT_ENABLE_E500]: Use
+ getcontext_e500.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
+ (__CONTEXT_FUNC_NAME) [__CONTEXT_ENABLE_E500]: Use
+ setcontext_e500.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
+ (__CONTEXT_FUNC_NAME) [__CONTEXT_ENABLE_E500]: Use getcontext_e500
+ and setcontext_e500.
+
+2013-10-04 Chris Leonard <cjl@sugarlabs,.org>
+
+ * locale/iso-3166.def: Update iso-1366.def and related occurrences
+
+2013-10-04 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * manual/threads.texi (Default Thread Attributes): Fix typo.
+
+2013-10-04 Will Newton <will.newton@linaro.org>
+
+ * malloc/Makefile: Add tst-memalign.
+ * malloc/tst-memalign.c: New file.
+
+ * malloc/tst-posix_memalign.c: Add comments.
+ (do_test): Add comments and call free on all potentially
+ allocated pointers. Add space after cast.
+
+ * malloc/tst-pvalloc.c: Add comments.
+ (do_test): Add comments and call free on all potentially
+ allocated pointers. Remove duplicate check for NULL pointer.
+ Add space after cast.
+
+ * malloc/tst-valloc.c: Add comments.
+ (do_test): Add comments and call free on all potentially
+ allocated pointers. Remove duplicate check for NULL pointer.
+ Add space after cast.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
+ Use stdint types in rather than __attribute__((mode())).
+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
+ Correct handling of unaligned relocs for little-endian.
+ * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * configure.in: Map powerpc64le and powerpcle to base_machine/machine.
+ * configure: Regenerate.
+ * nptl/shlib-versions: Powerpc*le starts at 2.18.
+ * shlib-versions: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * string/tester.c (test_memrchr): Increment reported test cycle.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * string/test-memcpy.c (do_one_test): When reporting errors, print
+ string address and don't overrun end of string.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc64/power7/memchr.S: Replace rlwimi with
+ insrdi. Make better use of reg selection to speed exit slightly.
+ Schedule entry path a little better. Remove useless "are we done"
+ checks on entry to main loop. Handle wrapping around zero address.
+ Correct main loop count. Handle single left-over word from main
+ loop inline rather than by using loop_small. Remove extra word
+ case in loop_small caused by wrong loop count. Add little-endian
+ support.
+ * sysdeps/powerpc/powerpc32/power7/memchr.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/memrchr.S: Likewise. Use proper
+ cache hint.
+ * sysdeps/powerpc/powerpc32/power7/memrchr.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/rawmemchr.S: Add little-endian
+ support. Avoid rlwimi.
+ * sysdeps/powerpc/powerpc32/power7/rawmemchr.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc64/memset.S: Replace rlwimi with
+ insrdi. Formatting.
+ * sysdeps/powerpc/powerpc64/power4/memset.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power6/memset.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/memset.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power4/memset.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power6/memset.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power7/memset.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc32/power4/memcpy.S: Add little endian support.
+ * sysdeps/powerpc/powerpc32/power6/memcpy.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power7/memcpy.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power7/mempcpy.S: Likewise.
+ * sysdeps/powerpc/powerpc64/memcpy.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power4/memcpy.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power6/memcpy.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/memcpy.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/mempcpy.S: Likewise. Make better
+ use of regs. Use power7 mtocrf. Tidy function tails.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc64/power7/memcmp.S: Add little-endian support.
+ Formatting. Consistently use rXXX register defines or rN defines.
+ Use early exit labels that avoid restoring unused non-volatile regs.
+ Make cr field use more consistent with rWORDn compares. Rename
+ regs used as shift registers for unaligned loop, using rN defines
+ for short lifetime/multiple use regs.
+ * sysdeps/powerpc/powerpc64/power4/memcmp.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power7/memcmp.S: Likewise. Exit with
+ addi 1,1,64 to pop stack frame. Simplify return value code.
+ * sysdeps/powerpc/powerpc32/power4/memcmp.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc64/power7/strchr.S (strchr): Add little-endian
+ support. Correct typos, formatting. Optimize tail. Use insrdi
+ rather than rlwimi.
+ * sysdeps/powerpc/powerpc32/power7/strchr.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/strchrnul.S (__strchrnul): Add
+ little-endian support. Correct typos.
+ * sysdeps/powerpc/powerpc32/power7/strchrnul.S: Likewise. Use insrdi
+ rather than rlwimi.
+ * sysdeps/powerpc/powerpc64/strchr.S (rTMP4, rTMP5): Define. Use
+ in loop and entry code to keep "and." results.
+ (strchr): Add little-endian support. Comment. Move cntlzd
+ earlier in tail.
+ * sysdeps/powerpc/powerpc32/strchr.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc64/strcpy.S: Add little-endian support:
+ * sysdeps/powerpc/powerpc32/strcpy.S: Likewise.
+ * sysdeps/powerpc/powerpc64/stpcpy.S: Likewise.
+ * sysdeps/powerpc/powerpc32/stpcpy.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc64/strcmp.S (rTMP2): Define as r0.
+ (rTMP): Define as r11.
+ (strcmp): Add little-endian support. Optimise tail.
+ * sysdeps/powerpc/powerpc32/strcmp.S: Similarly.
+ * sysdeps/powerpc/powerpc64/strncmp.S: Likewise.
+ * sysdeps/powerpc/powerpc32/strncmp.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power4/strncmp.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power4/strncmp.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/strncmp.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power7/strncmp.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc64/power7/strnlen.S (strnlen): Add
+ little-endian support. Remove unnecessary "are we done" tests.
+ Handle "s" wrapping around zero and extremely large "size".
+ Correct main loop count. Handle single left-over word from main
+ loop inline rather than by using small_loop. Correct comments.
+ Delete "zero" tail, use "end_max" instead.
+ * sysdeps/powerpc/powerpc32/power7/strnlen.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc64/power7/strlen.S (strlen): Add little-endian
+ support. Don't branch over align.
+ * sysdeps/powerpc/powerpc32/power7/strlen.S: Likewise.
+ * sysdeps/powerpc/powerpc64/strlen.S (strlen): Add little-endian
+ support. Rearrange tmp reg use to suit. Comment.
+ * sysdeps/powerpc/powerpc32/strlen.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/bits/sigstack.h: New file.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Use
+ conditional form of branch and link when obtaining pc.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S: Use
+ HIWORD/LOWORD.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S: Ditto.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S: Ditto.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/longjmp.c: Use proper symbol versioning macros.
+ * sysdeps/powerpc/novmx-longjmp.c: Likewise.
+ * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
+ * sysdeps/powerpc/powerpc32/bsd-setjmp.S: Likewise.
+ * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
+ * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
+ * sysdeps/powerpc/powerpc32/mcount.c: Likewise.
+ * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
+ * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
+ * nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c: Likewise.
+
+2013-10-04 Anton Blanchard <anton@au1.ibm.com>
+ Alistair Popple <alistair@ozlabs.au.ibm.com>
+ Alan Modra <amodra@gmail.com>
+
+ [BZ #15723]
+ * sysdeps/powerpc/jmpbuf-offsets.h: Comment fix.
+ * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Correct
+ _dl_hwcap access for little-endian.
+ * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise. Don't
+ destroy vmx regs when saving unaligned.
+ * sysdeps/powerpc/powerpc64/__longjmp-common.S: Correct CR load.
+ * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise CR save. Don't
+ destroy vmx regs when saving unaligned.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc32/power4/hp-timing.h (HP_TIMING_NOW):
+ Don't use a union to pack hi/low value.
+
+2013-10-04 Anton Blanchard <anton@au1.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/fpu/s_ceilf.S: Correct float constants
+ for little-endian.
+ * sysdeps/powerpc/powerpc64/fpu/s_floorf.S: Likewise.
+ * sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S: Likewise.
+ * sysdeps/powerpc/powerpc64/fpu/s_rintf.S: Likewise.
+ * sysdeps/powerpc/powerpc64/fpu/s_roundf.S: Likewise.
+ * sysdeps/powerpc/powerpc64/fpu/s_truncf.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/powerpc32/fpu/s_roundf.S: Increase alignment of
+ constants to usual value for .cst8 section, and remove redundant
+ high address load.
+ * sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S: Use float
+ constant for 0x1p52. Load little-endian words of double from
+ correct stack offsets.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/sysdep.h (LOWORD, HIWORD, HISHORT): Define.
+ * sysdeps/powerpc/powerpc32/fpu/s_copysign.S: Load little-endian
+ words of double from correct stack offsets.
+ * sysdeps/powerpc/powerpc32/fpu/s_copysignl.S: Likewise.
+ * sysdeps/powerpc/powerpc32/fpu/s_lrint.S: Likewise.
+ * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S: Likewise.
+ * sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S: Likewise.
+ * sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S: Use HISHORT.
+ * sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/fpu_control.h (_FPU_GETCW): Rewrite using
+ 64-bit int/double union.
+ (_FPU_SETCW): Likewise.
+ * sysdeps/powerpc/fpu/tst-setcontext-fpscr.c (_GET_DI_FPSCR): Likewise.
+ (_SET_DI_FPSCR, _GET_SI_FPSCR, _SET_SI_FPSCR): Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/fpu/s_llround.c (__llround): Rewrite.
+ * sysdeps/powerpc/fpu/s_llroundf.c (__llroundf): Rewrite.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/powerpc/fpu/s_float_bitwise.h (__float_and_test28): Don't
+ use vector int constants.
+ (__float_and_test24, __float_and8, __float_get_exp): Likewise.
+
+2013-10-04 Anton Blanchard <anton@au1.ibm.com>
+
+ * sysdeps/powerpc/fpu/fenv_libc.h (fenv_union_t): Replace int
+ array with long long.
+ * sysdeps/powerpc/fpu/e_sqrt.c (__slow_ieee754_sqrt): Adjust.
+ * sysdeps/powerpc/fpu/e_sqrtf.c (__slow_ieee754_sqrtf): Adjust.
+ * sysdeps/powerpc/fpu/fclrexcpt.c (__feclearexcept): Adjust.
+ * sysdeps/powerpc/fpu/fedisblxcpt.c (fedisableexcept): Adjust.
+ * sysdeps/powerpc/fpu/feenablxcpt.c (feenableexcept): Adjust.
+ * sysdeps/powerpc/fpu/fegetexcept.c (__fegetexcept): Adjust.
+ * sysdeps/powerpc/fpu/feholdexcpt.c (feholdexcept): Adjust.
+ * sysdeps/powerpc/fpu/fesetenv.c (__fesetenv): Adjust.
+ * sysdeps/powerpc/fpu/feupdateenv.c (__feupdateenv): Adjust.
+ * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Adjust.
+ * sysdeps/powerpc/fpu/fraiseexcpt.c (__feraiseexcept): Adjust.
+ * sysdeps/powerpc/fpu/fsetexcptflg.c (__fesetexceptflag): Adjust.
+ * sysdeps/powerpc/fpu/ftestexcept.c (fetestexcept): Adjust.
+
+2013-10-04 Anton Blanchard <anton@au1.ibm.com>
+
+ * sysdeps/powerpc/bits/mathinline.h (__signbitf): Use builtin.
+ (__signbit): Likewise. Correct for little-endian.
+ (__signbitl): Call __signbit.
+ (lrint): Correct for little-endian.
+ (lrintf): Call lrint.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c (mynumber): Replace
+ union 32-bit int array member with 64-bit int array.
+ (t515, tm256): Double rather than long double.
+ (__ieee754_sqrtl): Rewrite using 64-bit arithmetic.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/ieee754/ldbl-128ibm/ieee754.h (union ieee854_long_double):
+ Delete.
+ (IEEE854_LONG_DOUBLE_BIAS): Delete.
+ * sysdeps/ieee754/ldbl-128ibm/math_ldbl.h: Don't include ieee854
+ version of math_ldbl.h.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ [BZ #15734], [BZ #15735]
+ * sysdeps/ieee754/ldbl-128ibm/e_fmodl.c (__ieee754_fmodl): Rewrite
+ all uses of ieee875 long double macros and unions. Simplify test
+ for 0.0L. Correct |x|<|y| and |x|=|y| test. Use
+ ldbl_extract_mantissa value for ix,iy exponents. Properly
+ normalize after ldbl_extract_mantissa, and don't add hidden bit
+ already handled. Don't treat low word of ieee854 mantissa like
+ low word of IBM long double and mask off bit when testing for
+ zero.
+ * sysdeps/ieee754/ldbl-128ibm/e_hypotl.c (__ieee754_hypotl): Rewrite
+ all uses of ieee875 long double macros and unions. Simplify tests
+ for 0.0L and inf. Correct double adjustment of k. Delete dead code
+ adjusting ha,hb. Simplify code setting kld. Delete two600 and
+ two1022, instead use their values. Recognise that tests for large
+ "a" and small "b" are mutually exclusive. Rename vars. Comment.
+ * sysdeps/ieee754/ldbl-128ibm/e_remainderl.c (__ieee754_remainderl):
+ Rewrite all uses of ieee875 long double macros and unions. Simplify
+ test for 0.0L and nan. Correct negation.
+ * sysdeps/ieee754/ldbl-128ibm/s_erfl.c (__erfl): Rewrite all uses of
+ ieee875 long double macros and unions. Correct output for large
+ magnitude x. Correct absolute value calculation.
+ (__erfcl): Likewise.
+ * math/libm-test.inc: Add tests for errors discovered in IBM long
+ double versions of fmodl, remainderl, erfl and erfcl.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/ieee754/ldbl-128ibm/e_atan2l.c (__ieee754_atan2l): Rewrite
+ all uses of ieee854 long double macros and unions. Simplify tests
+ for long doubles that are fully specified by the high double.
+ * sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c (__ieee754_gammal_r):
+ Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c (__ieee754_ilogbl): Likewise.
+ Remove dead code too.
+ * sysdeps/ieee754/ldbl-128ibm/e_jnl.c (__ieee754_jnl): Likewise.
+ (__ieee754_ynl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_log10l.c (__ieee754_log10l): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_logl.c (__ieee754_logl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_powl.c (__ieee754_powl): Likewise.
+ Remove dead code too.
+ * sysdeps/ieee754/ldbl-128ibm/k_tanl.c (__kernel_tanl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_frexpl.c (__frexpl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c (__isinf_nsl): Likewise.
+ Simplify.
+ * sysdeps/ieee754/ldbl-128ibm/s_isinfl.c (___isinfl): Likewise.
+ Simplify.
+ * sysdeps/ieee754/ldbl-128ibm/s_log1pl.c (__log1pl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_modfl.c (__modfl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c (__nextafterl): Likewise.
+ Comment on variable precision.
+ * sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c (__nexttoward): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c (__nexttowardf):
+ Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_remquol.c (__remquol): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c (__scalblnl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c (__scalbnl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_tanhl.c (__tanhl): Likewise.
+ * sysdeps/powerpc/fpu/libm-test-ulps: Adjust tan_towardzero ulps.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/ieee754/ldbl-128ibm/math_ldbl.h (ldbl_high): Define.
+ * sysdeps/ieee754/ldbl-128ibm/e_acoshl.c (__ieee754_acoshl): Rewrite
+ all uses of ieee854 long double macros and unions.
+ * sysdeps/ieee754/ldbl-128ibm/e_acosl.c (__ieee754_acosl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_asinl.c (__ieee754_asinl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_atanhl.c (__ieee754_atanhl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_coshl.c (__ieee754_coshl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_log2l.c (__ieee754_log2l): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c (__ieee754_rem_pio2l):
+ Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_sinhl.c (__ieee754_sinhl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/k_cosl.c (__kernel_cosl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/k_sincosl.c (__kernel_sincosl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/k_sinl.c (__kernel_sinl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_asinhl.c (__asinhl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_atanl.c (__atanl): Likewise.
+ Simplify sign and nan test too.
+ * sysdeps/ieee754/ldbl-128ibm/s_cosl.c (__cosl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_fabsl.c (__fabsl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_finitel.c (___finitel): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c (___fpclassifyl):
+ Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_isnanl.c (___isnanl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c (__issignalingl):
+ Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_logbl.c (__logbl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_signbitl.c (___signbitl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_sincosl.c (__sincosl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_sinl.c (__sinl): Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_tanl.c (__tanl): Likewise.
+ * sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c (__logbl): Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * stdio-common/printf_size.c (__printf_size): Don't use
+ union ieee854_long_double in fpnum union.
+ * stdio-common/printf_fphex.c (__printf_fphex): Likewise. Use
+ signbit macro to retrieve sign from long double.
+ * stdio-common/printf_fp.c (___printf_fp): Use signbit macro to
+ retrieve sign from long double.
+ * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c: Adjust for fpnum change.
+ * sysdeps/ieee754/ldbl-128/printf_fphex.c: Likewise.
+ * sysdeps/ieee754/ldbl-96/printf_fphex.c: Likewise.
+ * sysdeps/x86_64/fpu/printf_fphex.c: Likewise.
+ * math/test-misc.c (main): Don't use union ieee854_long_double.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ [BZ #15680]
+ * sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c: Comment fix.
+ * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
+ (PRINT_FPHEX_LONG_DOUBLE): Tidy code by moving -53 into ediff
+ calculation. Remove unnecessary test for denormal exponent.
+ * sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c (__mpn_extract_long_double):
+ Correct handling of denormals. Avoid undefined shift behaviour.
+ Correct normalisation of low mantissa when low double is denormal.
+ * sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
+ (ldbl_extract_mantissa): Likewise. Comment. Use uint64_t* for hi64.
+ (ldbl_insert_mantissa): Make both hi64 and lo64 parms uint64_t.
+ Correct normalisation of low mantissa. Test for overflow of high
+ mantissa and normalise.
+ (ldbl_nearbyint): Use more readable constant for two52.
+ * sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
+ (__mpn_construct_long_double): Fix test for overflow of high
+ mantissa and correct normalisation. Avoid undefined shift.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/ieee754/ldbl-128ibm/ieee754.h
+ (union ibm_extended_long_double): Define as an array of ieee754_double.
+ (IBM_EXTENDED_LONG_DOUBLE_BIAS): Delete.
+ * sysdeps/ieee754/ldbl-128ibm/printf_fphex.c: Update all references
+ to ibm_extended_long_double and IBM_EXTENDED_LONG_DOUBLE_BIAS.
+ * sysdeps/ieee754/ldbl-128ibm/e_exp10l.c: Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/e_expl.c: Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c: Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/math_ldbl.h: Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c: Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c: Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/strtold_l.c: Likewise.
+ * sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c: Likewise.
+
+2013-10-03 Joseph Myers <joseph@codesourcery.com>
+
+ * locale/programs/locarchive.c (add_locale): Use constant 4096 for
+ page size instead of calling getpagesize.
+
+ * locale/localeinfo.h (LOCFILE_ALIGN): New macro.
+ (LOCFILE_ALIGN_MASK): Likewise.
+ (LOCFILE_ALIGN_UP): Likewise.
+ (LOCFILE_ALIGNED_P): Likewise.
+ * locale/programs/ld-collate.c (collate_output): Use the new
+ macros instead of __alignof__ (int32_t).
+ * locale/weight.h (findidx): Likewise.
+
+2013-10-03 Ondřej Bílka <neleai@seznam.cz>
+
+ [BZ #431]
+ * manual/string.texi: Fix strncat and wcsncat.
+
+2013-10-03 Brooks Moses <bmoses@google.com>
+
+ [BZ #15915]
+ * Makefile (linkobj/libc_pic.a, linkobj/libc.so): Move rules to...
+ * Makerules: ...here, and adjust associated comments.
+
+2013-10-02 Will Newton <will.newton@linaro.org>
+
+ * malloc/Makefile: Add tst-pvalloc.
+ * malloc/tst-pvalloc.c: New file.
+
+2013-10-02 Will Newton <will.newton@linaro.org>
+
+ * malloc/tst-valloc.c: Rewrite to use test-skeleton.c and
+ improve test coverage.
+
+2013-10-02 Will Newton <will.newton@linaro.org>
+
+ * malloc/Makefile: Add tst-posix_memalign.
+ * malloc/tst-posix_memalign.c: New file.
+
+2013-10-01 Eric Blake <eblake@redhat.com>
+
+ * posix/glob.c (next_brace_sub, prefix_array, collated_compare):
+ Use __THROWNL rather than __THROW on static functions.
+
+2013-09-30 Petr Machata <pmachata@redhat.com>
+
+ * elf/elf.h (R_AARCH64_ABS16): New macro.
+ (R_AARCH64_PREL64, R_AARCH64_PREL32): Likewise.
+ (R_AARCH64_PREL16, R_AARCH64_MOVW_UABS_G0): Likewise.
+ (R_AARCH64_MOVW_UABS_G0_NC, R_AARCH64_MOVW_UABS_G1): Likewise.
+ (R_AARCH64_MOVW_UABS_G1_NC, R_AARCH64_MOVW_UABS_G2): Likewise.
+ (R_AARCH64_MOVW_UABS_G2_NC, R_AARCH64_MOVW_UABS_G3): Likewise.
+ (R_AARCH64_MOVW_SABS_G0, R_AARCH64_MOVW_SABS_G1): Likewise.
+ (R_AARCH64_MOVW_SABS_G2, R_AARCH64_LD_PREL_LO19): Likewise.
+ (R_AARCH64_ADR_PREL_LO21, R_AARCH64_ADR_PREL_PG_HI21): Likewise.
+ (R_AARCH64_ADR_PREL_PG_HI21_NC, R_AARCH64_ADD_ABS_LO12_NC): Likewise.
+ (R_AARCH64_LDST8_ABS_LO12_NC, R_AARCH64_LDST16_ABS_LO12_NC): Likewise.
+ (R_AARCH64_LDST32_ABS_LO12_NC, R_AARCH64_LDST64_ABS_LO12_NC): Likewise.
+ (R_AARCH64_LDST128_ABS_LO12_NC, R_AARCH64_TSTBR14): Likewise.
+ (R_AARCH64_CONDBR19, R_AARCH64_JUMP26, R_AARCH64_CALL26): Likewise.
+ (R_AARCH64_MOVW_PREL_G0, R_AARCH64_MOVW_PREL_G0_NC): Likewise.
+ (R_AARCH64_MOVW_PREL_G1, R_AARCH64_MOVW_PREL_G1_NC): Likewise.
+ (R_AARCH64_MOVW_PREL_G2, R_AARCH64_MOVW_PREL_G2_NC): Likewise.
+ (R_AARCH64_MOVW_PREL_G3, R_AARCH64_MOVW_GOTOFF_G0): Likewise.
+ (R_AARCH64_MOVW_GOTOFF_G0_NC, R_AARCH64_MOVW_GOTOFF_G1): Likewise.
+ (R_AARCH64_MOVW_GOTOFF_G1_NC, R_AARCH64_MOVW_GOTOFF_G2): Likewise.
+ (R_AARCH64_MOVW_GOTOFF_G2_NC, R_AARCH64_MOVW_GOTOFF_G3): Likewise.
+ (R_AARCH64_GOTREL64, R_AARCH64_GOTREL32): Likewise.
+ (R_AARCH64_GOT_LD_PREL19, R_AARCH64_LD64_GOTOFF_LO15): Likewise.
+ (R_AARCH64_ADR_GOT_PAGE, R_AARCH64_LD64_GOT_LO12_NC): Likewise.
+ (R_AARCH64_LD64_GOTPAGE_LO15, R_AARCH64_TLSGD_ADR_PREL21): Likewise.
+ (R_AARCH64_TLSGD_ADR_PAGE21, R_AARCH64_TLSGD_ADD_LO12_NC): Likewise.
+ (R_AARCH64_TLSGD_MOVW_G1, R_AARCH64_TLSGD_MOVW_G0_NC): Likewise.
+ (R_AARCH64_TLSLD_ADR_PREL21, R_AARCH64_TLSLD_ADR_PAGE21): Likewise.
+ (R_AARCH64_TLSLD_ADD_LO12_NC, R_AARCH64_TLSLD_MOVW_G1): Likewise.
+ (R_AARCH64_TLSLD_MOVW_G0_NC, R_AARCH64_TLSLD_LD_PREL19): Likewise.
+ (R_AARCH64_TLSLD_MOVW_DTPREL_G2): Likewise.
+ (R_AARCH64_TLSLD_MOVW_DTPREL_G1): Likewise.
+ (R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC): Likewise.
+ (R_AARCH64_TLSLD_MOVW_DTPREL_G0): Likewise.
+ (R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC): Likewise.
+ (R_AARCH64_TLSLD_ADD_DTPREL_HI12): Likewise.
+ (R_AARCH64_TLSLD_ADD_DTPREL_LO12): Likewise.
+ (R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSLD_LDST8_DTPREL_LO12): Likewise.
+ (R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSLD_LDST16_DTPREL_LO12): Likewise.
+ (R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSLD_LDST32_DTPREL_LO12): Likewise.
+ (R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSLD_LDST64_DTPREL_LO12): Likewise.
+ (R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSLD_LDST128_DTPREL_LO12): Likewise.
+ (R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSIE_MOVW_GOTTPREL_G1): Likewise.
+ (R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC): Likewise.
+ (R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21): Likewise.
+ (R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSIE_LD_GOTTPREL_PREL19): Likewise.
+ (R_AARCH64_TLSLE_MOVW_TPREL_G2): Likewise.
+ (R_AARCH64_TLSLE_MOVW_TPREL_G1): Likewise.
+ (R_AARCH64_TLSLE_MOVW_TPREL_G1_NC): Likewise.
+ (R_AARCH64_TLSLE_MOVW_TPREL_G0): Likewise.
+ (R_AARCH64_TLSLE_MOVW_TPREL_G0_NC): Likewise.
+ (R_AARCH64_TLSLE_ADD_TPREL_HI12): Likewise.
+ (R_AARCH64_TLSLE_ADD_TPREL_LO12): Likewise.
+ (R_AARCH64_TLSLE_ADD_TPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSLE_LDST8_TPREL_LO12): Likewise.
+ (R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSLE_LDST16_TPREL_LO12): Likewise.
+ (R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSLE_LDST32_TPREL_LO12): Likewise.
+ (R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSLE_LDST64_TPREL_LO12): Likewise.
+ (R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSLE_LDST128_TPREL_LO12): Likewise.
+ (R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC): Likewise.
+ (R_AARCH64_TLSDESC_LD_PREL19): Likewise.
+ (R_AARCH64_TLSDESC_ADR_PREL21): Likewise.
+ (R_AARCH64_TLSDESC_ADR_PAGE21): Likewise.
+ (R_AARCH64_TLSDESC_LD64_LO12): Likewise.
+ (R_AARCH64_TLSDESC_ADD_LO12): Likewise.
+ (R_AARCH64_TLSDESC_OFF_G1): Likewise.
+ (R_AARCH64_TLSDESC_OFF_G0_NC): Likewise.
+ (R_AARCH64_TLSDESC_LDR): Likewise.
+ (R_AARCH64_TLSDESC_ADD): Likewise.
+ (R_AARCH64_TLSDESC_CALL): Likewise.
+
+2013-09-30 Andreas Schwab <schwab@suse.de>
+
+ [BZ #15048]
+ * nscd/aicache.c (addhstaiX): Properly use the cache variable for
+ the nss database lookup.
+ * nscd/initgrcache.c (addinitgroupsX): Likewise.
+ * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
+
+2013-09-28 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/tst-fanotify.c (do_test): Fix style.
+
+2013-09-28 P. J. McDermott <pj@pehjota.net>
+
+ * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Don't use
+ ${Bash-specific parameter/pattern/string} parameter expansion.
+ * sysdeps/unix/make-syscalls.sh: Likewise.
+
+2013-09-27 Kaz Kojima <kkojima@rr.iij4u.or.jp>
+
+ * sysdeps/sh/stackguard-macros.h: New file.
+
+2013-09-26 Ondřej Bílka <neleai@seznam.cz>
+
+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Update.
+ * sysdeps/x86_64/multiarch/ifunc-impl-list.c: Remove strrchr ifunc.
+ * sysdeps/x86_64/multiarch/strend-sse4.S Remove.
+ * sysdeps/x86_64/multiarch/strrchr-sse2-no-bsf.S Likewise.
+ * sysdeps/x86_64/multiarch/strrchr.S: Likewise.
+ * sysdeps/x86_64/strrchr.S (strrchr): Use optimized implementation.
+
+2013-09-25 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc64/stackguard-macros.h (POINTER_CHK_GUARD:
+ Fix thread ID register.
+
+2013-09-25 Joseph Myers <joseph@codesourcery.com>
+
+ * conform/data/sched.h-data [XPG3 || XPG4]: Disable whole file.
+ [POSIX || UNIX98]: Require rather than permitting all symbols from
+ <time.h>.
+ [POSIX || UNIX98] (sched_ss_low_priority): Do not specify optional
+ element of struct sched_param.
+ [POSIX || UNIX98] (sched_ss_repl_period): Likewise.
+ [POSIX || UNIX98] (sched_ss_init_budget): Likewise.
+ [POSIX || UNIX98] (sched_ss_max_repl): Likewise.
+ [POSIX || UNIX98] (SCHED_SPORADIC): Do not specify optional
+ constant.
+
+2013-09-24 Olivier Langlois <olivier@olivierlanglois.net>
+
+ * stdio-common/tst-long-dbl-fphex.c (do_test): Fix swprintf length
+ argument calculation.
+
+2013-09-24 Joseph Myers <joseph@codesourcery.com>
+
+ * conform/data/pthread.h-data [POSIX] (PTHREAD_MUTEX_INITIALIZER):
+ Expect macro.
+ [POSIX] (pthread_attr_t): Do not require type.
+ [POSIX] (pthread_cond_t): Likewise.
+ [POSIX] (pthread_condattr_t): Likewise.
+ [POSIX] (pthread_key_t): Likewise.
+ [POSIX] (pthread_mutex_t): Likewise.
+ [POSIX] (pthread_mutexattr_t): Likewise.
+ [POSIX] (pthread_once_t): Likewise.
+ [POSIX] (pthread_t): Likewise.
+ [POSIX-based standards] (pthread_atfork): Expect function.
+
+2013-09-24 Joseph Myers <joseph@codesourcery.com>
+ Richard Sandiford <richard@codesourcery.com>
+
+ * locale/programs/locfile.h: Include <byteswap.h> and <stdbool.h>.
+ (swap_endianness_p): New extern variable.
+ (set_big_endian): New inline function.
+ (maybe_swap_uint32): Likewise.
+ (maybe_swap_uint32_array): Likewise.
+ (maybe_swap_uint32_obstack): Likewise.
+ * locale/programs/locfile.c: Include <stdbool.h>.
+ (swap_endianness_p): New variable.
+ (add_locale_uint32): Call maybe_swap_uint32.
+ (add_locale_uint32_array): Call maybe_swap_uint32_obstack.
+ (write_locale_data): Call maybe_swap_uint32_array.
+ * locale/programs/ld-collate.c (obstack_int32_grow): Call
+ maybe_swap_uint32.
+ (obstack_int32_grow_fast): Likewise.
+ (output_weightwc): Call maybe_swap_uint32_obstack.
+ (collate_output): Likewise.
+ * locale/programs/localedef.c (OPT_LITTLE_ENDIAN): New macro.
+ (OPT_LITTLE_ENDIAN): Likewise.
+ (options): Add --little-endian and --big-endian options.
+ (parse_opt): Handle OPT_LITTLE_ENDIAN and OPT_BIG_ENDIAN.
+ * locale/programs/locarchive.c: Include "locfile.h".
+ (GET): New macro.
+ (SET): Likewise.
+ (INC): Likewise.
+ (create_archive): Use the new macros to access fields of
+ structures directly mapped from or written to locale archives.
+ (oldlocrecentcmp): Likewise.
+ (enlarge_archive): Likewise.
+ (insert_name): Likewise.
+ (add_alias): Likewise.
+ (add_locale): Likewise.
+ (delete_locales_from_archive): Likewise.
+ (show_archive_content): Likewise.
+ (add_locale_to_archive): Likewise. Use maybe_swap_uint32 on
+ locale data.
+
+2013-09-24 Roland McGrath <roland@hack.frob.com>
+
+ * manual/freemanuals.texi: Updated from (newly) canonical copy at
+ http://www.gnu.org/doc/freemanuals.texi.
+ * manual/libc.texinfo (Free Manuals): Put the @appendix line here.
+
+2013-09-24 Will Newton <will.newton@linaro.org>
+
+ * sysdeps/mach/hurd/i386/tls.h (TLS_INIT_TP_EXPENSIVE): Remove
+ macro.
+
+2013-09-23 Joseph Myers <joseph@codesourcery.com>
+
+ * locale/hashval.h (compute_hashval): Interpret bytes of key as
+ unsigned char.
+
+2013-09-23 Maciej W. Rozycki <macro@codesourcery.com>
+
+ * manual/threads.texi (POSIX Threads): Fix a typo.
+
+2013-09-23 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ [BZ #14547]
+ * string/tst-strcoll-overflow.c: New test case.
+ * string/Makefile (xtests): Add tst-strcoll-overflow.
+ * string/strcoll_l.c (STRCOLL): Skip allocating memory for
+ cache if string sizes may cause integer overflow.
+
+ [BZ #14547]
+ * string/strcoll_l.c (coll_seq): New members rule, idx,
+ save_idx and back_us.
+ (get_next_seq_nocache): New function.
+ (do_compare_nocache): New function.
+ (STRCOLL): Use get_next_seq_nocache and do_compare_nocache
+ when malloc fails.
+
+2013-09-23 Carlos O'Donell <carlos@redhat.com>
+
+ [BZ #15754]
+ * sysdeps/generic/stackguard-macros.h: If PTRGUARD_LOCAL use
+ __pointer_chk_guard_local, otherwise __pointer_chk_guard.
+ * elf/Makefile: Define CFLAGS-tst-ptrguard1-static.c.
+
+ [BZ #15754]
+ * elf/Makefile (tests): Add tst-ptrguard1.
+ (tests-static): Add tst-ptrguard1-static.
+ (tst-ptrguard1-ARGS): Define.
+ (tst-ptrguard1-static-ARGS): Define.
+ * elf/tst-ptrguard1.c: New file.
+ * elf/tst-ptrguard1-static.c: New file.
+ * sysdeps/x86_64/stackguard-macros.h: Define POINTER_CHK_GUARD.
+ * sysdeps/i386/stackguard-macros.h: Likewise.
+ * sysdeps/powerpc/powerpc32/stackguard-macros.h: Likewise.
+ * sysdeps/powerpc/powerpc64/stackguard-macros.h: Likewise.
+ * sysdeps/s390/s390-32/stackguard-macros.h: Likewise.
+ * sysdeps/s390/s390-64/stackguard-macros.h: Likewise.
+ * sysdeps/sparc/sparc32/stackguard-macros.h: Likewise.
+ * sysdeps/sparc/sparc64/stackguard-macros.h: Likewise.
+
+2013-09-23 Hector Marco <hecmargi@upv.es>
+ Ismael Ripoll <iripoll@disca.upv.es>
+ Carlos O'Donell <carlos@redhat.com>
+
+ [BZ #15754]
+ * sysdeps/generic/stackguard-macros.h: Define
+ __pointer_chk_guard_local and POINTER_CHK_GUARD.
+ * csu/libc-start.c [!SHARED && !THREAD_SET_POINTER_GUARD]:
+ Define __pointer_chk_guard_local.
+ (LIBC_START_MAIN) [!SHARED]: Call _dl_setup_pointer_guard.
+ Use THREAD_SET_POINTER_GUARD or set __pointer_chk_guard_local.
+
+2013-09-15 Vinitha Vijayan <vinitha.vijayann@gmail.com>
+
+ [BZ #15859]
+ * elf/dl-deps.c (_dl_map_object_deps): Remove duplicate declaration.
+
+2013-09-20 Andreas Schwab <schwab@linux-m68k.org>
+
+ * include/string.h (__ffs): Declare as hidden.
+ * string/ffs.c (__ffs): Define as hidden.
+ * sysdeps/i386/ffs.c (__ffs): Likewise.
+ * sysdeps/i386/i686/ffs.c (__ffs): Likewise.
+ * sysdeps/powerpc/ffs.c (__ffs): Likewise.
+ * sysdeps/s390/ffs.c (__ffs): Likewise.
+ * sysdeps/x86_64/ffs.c (__ffs): Likewise.
+
+2013-09-20 Alexandre Oliva <aoliva@redhat.com>
+
+ * NEWS: Mention malloc probes.
+
+ * malloc/arena.c (new_heap): New memory_heap_new probe.
+ (grow_heap): New memory_heap_more probe.
+ (shrink_heap): New memory_heap_less probe.
+ (heap_trim): New memory_heap_free probe.
+ * malloc/malloc.c (sysmalloc): New memory_sbrk_more probe.
+ (systrim): New memory_sbrk_less probe.
+ * manual/probes.texi: Document them.
+
+ * malloc/arena.c (arena_get_retry): Add memory_arena_retry probe.
+ * manual/probes.texi: Document it.
+
+ * malloc/malloc.c (__libc_malloc): Add memory_malloc_retry probe.
+ (__libc_realloc): Add memory_realloc_retry probe.
+ (__libc_memalign): Add memory_memalign_retry probe.
+ (__libc_valloc): Add memory_valloc_retry probe.
+ (__libc_pvalloc): Add memory_pvalloc_retry probe.
+ (__libc_calloc): Add memory_calloc_retry probe.
+ * manual/probes.texi: Document them.
+
+ * malloc/arena.c (get_free_list): Add probe
+ memory_arena_reuse_free_list.
+ (reused_arena) [PER_THREAD]: Add probes memory_arena_reuse_wait
+ and memory_arena_reuse.
+ (arena_get2) [!PER_THREAD]: Likewise.
+ * malloc/malloc.c (__libc_realloc) [!PER_THREAD]: Add probe
+ memory_arena_reuse_realloc.
+ * manual/probes.texi: Document them.
+
+ * malloc/malloc.c (__libc_free): Add
+ memory_mallopt_free_dyn_thresholds probe.
+ (__libc_mallopt): Add multiple memory_mallopt probes.
+ * manual/probes.texi: Document them.
+
+ * malloc/malloc.c: Include stap-probe.h.
+ (__libc_mallopt): Add memory_mallopt probe.
+ * malloc/arena.c (_int_new_arena): Add memory_arena_new probe.
+ * manual/probes.texi: New.
+ * manual/Makefile (chapters): Add probes.
+ * manual/threads.texi: Set next node.
+
+2013-09-19 Wei-Lun Chao <bluebat@member.fsf.org>
+
+ [BZ #15963, #13985]
+ * locale/iso-639.def: Add Chiga (cgg) and Chinese (gan, hak,
+ czh, cjy, lzh, cmn, mnp, cdo, czo, cpx, wuu, hsn, yue).
+ Add `Chinese' to `nan' entry name.
+
+2013-09-19 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * sysdeps/ieee754/dbl-64/s_sin.c (POLYNOMIAL2): New macro.
+ (POLYNOMIAL): Likewise.
+ (TAYLOR_SINCOS): Likewise.
+ (TAYLOR_SLOW): Likewise.
+ (__sin): Use TAYLOR_SINCOS.
+ (__cos): Likewise.
+ (slow): Use TAYLOR_SLOW.
+ (sloww): Likewise.
+ (bsloww): Likewise.
+ (csloww): Likewise.
+
+2013-09-19 Liubov Dmitrieva <liubov.dmitrieva@intel.com>
+
+ * stdlib/strtod_l.c: Fix buffer overrun.
+
+2013-09-19 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * benchtests/Makefile (bench): Add sincos.
+ * benchtests/bench-sincos.c: New file.
+
+ * math/libm-test.inc (cos_test_data): New test inputs.
+ (sin_test_data): Likewise.
+
+ * sysdeps/ieee754/dbl-64/s_sin.c (SINCOS_TABLE_LOOKUP): New
+ macro.
+ (__sin): Use it.
+ (__cos): Likewise.
+ (slow1): Likewise.
+ (slow2): Likewise.
+ (sloww1): Likewise.
+ (sloww2): Likewise.
+ (bsloww1): Likewise.
+ (bsloww2): Likewise.
+ (cslow2): Likewise.
+ (csloww1): Likewise.
+ (csloww2): Likewise.
+
+ * sysdeps/ieee754/dbl-64/s_sin.c (reduce_and_compute): New
+ function.
+ (__sin): Use it.
+ (__cos): Likewise.
+
+ * sysdeps/ieee754/dbl-64/s_sin.c (__sin): Remove redundant
+ gotos.
+ (__cos): Likewise.
+
+2013-09-18 Maciej W. Rozycki <macro@codesourcery.com>
+
+ * config.h.in (HAVE_MIPS_NAN2008): New macro.
+ * elf/elf.h (EF_MIPS_NAN2008): Likewise.
+ * sysdeps/generic/ldconfig.h (FLAG_MIPS_LIB32_NAN2008): Likewise.
+ (FLAG_MIPS64_LIBN32_NAN2008): Likewise.
+ (FLAG_MIPS64_LIBN64_NAN2008): Likewise.
+ * elf/cache.c (print_entry): Handle the new cache flags.
+
+2013-09-18 Joseph Myers <joseph@codesourcery.com>
+ Aldy Hernandez <aldyh@redhat.com>
+
+ * sysdeps/powerpc/fpu_control.h [_SOFT_FLOAT || __NO_FPRS__]:
+ Change condition to [_SOFT_FLOAT].
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_RC_NEAREST): New macro.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_RC_DOWN): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_RC_UP): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_RC_ZERO): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_MASK_ZM): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_MASK_OM): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_MASK_UM): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_MASK_XM): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_MASK_IM): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_RESERVED): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_DEFAULT): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_IEEE): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (fpu_control_t): New typedef.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_GETCW): New macro.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (_FPU_SETCW): Likewise.
+ [__NO_FPRS__ && !_SOFT_FLOAT] (__fpu_control): New variable
+ declaration.
+
+2013-09-18 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/powerpc/powerpc32/__longjmp-common.S (LOAD_GP): Define
+ macro conditional on [__SPE__ || (__NO_FPRS__ && !_SOFT_FLOAT)].
+ (__longjmp): Use LOAD_GP to load saved GPRs.
+ * sysdeps/powerpc/powerpc32/setjmp-common.S (SAVE_GP): Define
+ macro conditional on [__SPE__ || (__NO_FPRS__ && !_SOFT_FLOAT)].
+ (__sigsetjmp): Use SAVE_GP to save GPRs.
+
+ * sysdeps/powerpc/powerpc32/Makefile [$(with-fp) = no] (+cflags):
+ Do not append -msoft-float.
+ [$(with-fp) = no] (sysdep-LDFLAGS): Likewise.
+
+2013-09-18 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * sysdeps/ieee754/dbl-64/sincos32.c: Fix code formatting.
+
+2013-09-17 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #15966]
+ * sysdeps/powerpc/fpu_control.h [!_SOFT_FLOAT && !__NO_FPRS__]
+ (_FPU_GETCW): Use initial "__" on variable and field names but not
+ on macro parameter name.
+ [!_SOFT_FLOAT && !__NO_FPRS__] (_FPU_SETCW): Likewise. Use
+ parentheses around reference to macro parameter.
+
+2013-09-13 Richard Sandiford <richard@codesourcery.com>
+
+ * locale/programs/ld-ctype.c (find_idx): Use uint32_t in
+ prototype.
+ (ctype_startup): Use uint32_t in cast and sizeof for
+ ctype->charnames.
+
+2013-09-11 Jia Liu <proljc@gmail.com>
+
+ * sunrpc/rpc/types.h [__APPLE_CC__]: Define __u_char_defined and
+ __daddr_t_defined.
+ [__FreeBSD__]: Likewise.
+
+2013-09-11 Ondřej Bílka <neleai@seznam.cz>
+
+ * sysdeps/x86_64/multiarch/ifunc-impl-list.c
+ (__libc_ifunc_impl_list): Remove: __strchr_sse42.
+ * sysdeps/x86_64/multiarch/strchr.S (__strchr_sse42): Remove.
+ (strchr): Remove __strchr_sse42 ifunc selection.
+ * sysdeps/x86_64/strchr.S (strchr): Use optimized implementation.
+ * sysdeps/x86_64/strchrnul.S: Include sysdeps/x86_64/strchr.S.
+
+2013-09-11 Will Newton <will.newton@linaro.org>
+
+ * benchtests/bench-timing.h (TIMING_INIT): Rename ITERS
+ parameter to RES. Remove hardcoded 1000 value.
+ * benchtests/bench-skeleton.c (main): Pass RES parameter
+ to TIMING_INIT and multiply result by 1000.
+
+2013-09-10 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/fpu/libm-test-ulps: Update.
+
+2013-09-11 Andreas Schwab <schwab@suse.de>
+
+ * sysdeps/unix/sysv/linux/bits/fcntl-linux.h (__O_TMPFILE): Define
+ if not defined.
+ (O_TMPFILE) [__USE_GNU]: Define.
+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (__O_TMPFILE):
+ Define.
+
+2013-09-11 Will Newton <will.newton@linaro.org>
+
+ [BZ #15857]
+ * malloc/malloc.c (__libc_memalign): Check the value of bytes
+ does not overflow.
+
+2013-09-11 Will Newton <will.newton@linaro.org>
+
+ [BZ #15856]
+ * malloc/malloc.c (__libc_valloc): Check the value of bytes
+ does not overflow.
+
+2013-09-11 Will Newton <will.newton@linaro.org>
+
+ [BZ #15855]
+ * malloc/malloc.c (__libc_pvalloc): Check the value of bytes
+ does not overflow.
+
+2013-09-10 Ondřej Bílka <neleai@seznam.cz>
+
+ * sysdeps/ieee754/dbl-64/e_j0.c: Remove DO_NOT_USE_THIS conditionals.
+ * sysdeps/ieee754/dbl-64/e_j1.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_erf.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_expm1.c: Likewise.
+ * sysdeps/ieee754/dbl-64/s_log1p.c: Likewise.
+
+2013-09-10 Allan McRae <allan@archlinux.org>
+
+ [BZ #15748]
+ * manual/arith.texi (Parsing of Floats): Clarify
+ cross-reference.
+
+ [BZ #15849]
+ * manual/install.texi (Running make install): Mention
+ --enable-pt-chown.
+ * INSTALL: Regenerated.
+
+2013-09-09 Maciej W. Rozycki <macro@codesourcery.com>
+
+ * csu/init-first.c (_init): Remove the !SHARED condition around
+ FPU control word initialization.
+ * elf/dl-support.c (_dl_fpu_control): New variable.
+ (_dl_aux_init) <AT_FPUCW>: Initialize it.
+ * math/test-fpucw.c [!FPU_CONTROL] (FPU_CONTROL): New macro.
+ (main): Replace _FPU_DEFAULT with FPU_CONTROL throughout.
+ * math/test-fpucw-static.c: New file.
+ * math/test-fpucw-ieee.c: New file.
+ * math/test-fpucw-ieee-static.c: New file.
+ * math/Makefile (tests): Add `test-fpucw-ieee' and
+ `$(tests-static)'.
+ (tests-static): New variable.
+ [($(build-shared),yes)] ($(addprefix $(objpfx),$(tests))): Move
+ dependency to...
+ [($(build-shared),yes)]
+ ($(addprefix $(objpfx),$(filter-out $(tests-static),$(tests)))):
+ ... this.
+ [($(build-shared),yes)] ($(addprefix $(objpfx),$(tests-static))):
+ New dependency.
+
+2013-09-09 Allan McRae <allan@archlinux.org>
+
+ [BZ #15939]
+ * manual/string.texi (Collation Functions): Fix typo in
+ strcoll example.
+ Reported by Suren Karapetyan <me@suren.karapetyan.name>.
+
+ [BZ #15893]
+ * stdlib/isomac.c (get_null_defines): Fix memory leak.
+
+ [BZ #15892]
+ * libio/memstream.c (open_memstream): Fix memory leak.
+ * libio/wmemstream.c (open_wmemstream): Likewise.
+
+ [BZ #15895]
+ * nscd/netgroupcache.c: Fix nesting of ifdefs.
+
+2013-09-09 Will Newton <will.newton@linaro.org>
+
+ * malloc/Makefile: Add tst-realloc to tests.
+ * malloc/tst-realloc.c: New file.
+
+2013-09-09 Allan McRae <allan@archlinux.org>
+
+ [BZ #15844]
+ * COPYING: Update from GNU website to fix FSF address.
+ * COPYING.LIB: Likewise.
+
+2013-09-06 David S. Miller <davem@davemloft.net>
+
+ * po/zh_TW.po: Update Chinese (traditional) translation from
+ translation project.
+
+2013-09-06 Richard Sandiford <richard@codesourcery.com>
+ Joseph Myers <joseph@codesourcery.com>
+
+ * locale/programs/locfile.c: Include <assert.h>, <wchar.h> and
+ "localeinfo.h".
+ (obstack_chunk_alloc): New macro.
+ (obstack_chunk_free): Likewise.
+ (record_offset): New function.
+ (init_locale_data): Likewise.
+ (align_locale_data): Likewise.
+ (add_locale_empty): Likewise.
+ (add_locale_raw_data): Likewise.
+ (add_locale_raw_obstack): Likewise.
+ (add_locale_string): Likewise.
+ (add_locale_wstring): Likewise.
+ (add_locale_uint32): Likewise.
+ (add_locale_uint32_array): Likewise.
+ (add_locale_char): Likewise.
+ (start_locale_structure): Likewise.
+ (end_locale_structure): Likewise.
+ (start_locale_prelude): Likewise.
+ (end_locale_prelude): Likewise.
+ (write_locale_data): Take locale_file structure rather than an
+ iovec.
+ * locale/programs/locfile.h: Include "obstack.h".
+ (struct locale_file): Change to store locale file contents instead
+ of header.
+ (init_locale_data): New prototype.
+ (align_locale_data): Likewise.
+ (add_locale_empty): Likewise.
+ (add_locale_raw_data): Likewise.
+ (add_locale_raw_obstack): Likewise.
+ (add_locale_string): Likewise.
+ (add_locale_wstring): Likewise.
+ (add_locale_uint32): Likewise.
+ (add_locale_uint32_array): Likewise.
+ (add_locale_char): Likewise.
+ (start_locale_structure): Likewise.
+ (end_locale_structure): Likewise.
+ (start_locale_prelude): Likewise.
+ (end_locale_prelude): Likewise.
+ (write_locale_data): Update prototype.
+ * locale/programs/3level.h (struct TABLE): Remove result field.
+ (CONCAT(TABLE,_finalize)): Change to CONCAT(add_locale_,TABLE).
+ Use new locale_file interface.
+ [!NO_FINALIZE]: Change condition to [!NO_ADD_LOCALE].
+ (NO_FINALIZE): Change #undef to #undef of NO_ADD_LOCALE.
+ * locale/programs/ld-address.c (address_output): Use new
+ locale_file interface.
+ * locale/programs/ld-collate.c (NO_FINALIZE): Change to
+ NO_ADD_LOCALE.
+ (collate_finish): Don't call collseq_table_finalize.
+ (collate_output): Use new locale_file interface.
+ * locale/programs/ld-ctype.c: Move includes of "3level.h" earlier
+ in file.
+ (NO_FINALIZE): Change to NO_ADD_LOCALE.
+ (TABLE): Move defines earlier in file.
+ (ELEMENT): Likewise.
+ (DEFAULT): Likewise.
+ (wctrans_table_add): Move macro and inline function earlier in
+ file.
+ (struct wctype_table): Move type earlier in file.
+ (add_locale_wctype_table): New static prototype.
+ (struct locale_ctype_t): Use logical types instead of struct iovec
+ pointers for members.
+ (ctype_output): Use new locale_file interface.
+ (wctype_table_finalize): Change to add_locale_wctype_table. Use
+ new locale_file interface.
+ (allocate_arrays): Update for use of new locale_file interface.
+ * locale/programs/ld-identification.c (identification_output): Use
+ new locale_file interface.
+ * locale/programs/ld-measurement.c (measurement_output): Likewise.
+ * locale/programs/ld-messages.c (messages_output): Likewise.
+ * locale/programs/ld-monetary.c (monetary_output): Likewise.
+ * locale/programs/ld-name.c (name_output): Likewise.
+ * locale/programs/ld-numeric.c (numeric_output): Likewise.
+ * locale/programs/ld-paper.c (paper_output): Likewise.
+ * locale/programs/ld-telephone.c (telephone_output): Likewise.
+ * locale/programs/ld-time.c (time_output): Likewise.
+
+2013-09-06 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * benchtests/Makefile: Add memrchr benchmark.
+ * benchtests/bench-memchr.c (USE_AS_MEMRCHR): Add define to use
+ benchmark as memrchr.
+ * benchtests/bench-memrchr-ifunc.c: New file.
+ * benchtests/bench-memrchr.c: New file.
+
+2013-09-06 Will Newton <will.newton@linaro.org>
+
+ * benchtests/Makefile (string-bench): Add memcpy.
+
+2013-09-05 Carlos O'Donell <carlos@redhat.com>
+ Cong Wang <amwang@redhat.com>
+
+ * sysdeps/unix/sysv/linux/bits/in.h
+ [_UAPI_LINUX_IN6_H]: Define __USE_KERNEL_IPV6_DEFS.
+ * inet/netinet/in.h: Move in_addr definition and bits/in.h inclusion
+ before __USE_KERNEL_IPV6_DEFS uses.
+ * inet/netinet/in.h [!__USE_KERNEL_IPV6_DEFS]: Define IPPROTO_MH, and
+ IPPROTO_BEETPH.
+ [__USE_KERNEL_IPV6_DEFS]: Don't define any of IPPROTO_*, in6_addr,
+ sockaddr_in6, or ipv6_mreq.
+
+2013-09-05 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/powerpc32/power7/memrchr.S (__memrchr): Fix invalid
+ memory access for final bytes in some large inputs.
+ * sysdeps/powerpc/powerpc64/power7/memrchr.S (__memrchr): Likewise.
+
+2013-09-05 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * string/test-memrchr.c: New file.
+ * string/test-memrchr-ifunc.c: New file.
+ * string/Makefile: Add new memrchr testcase.
+
+2013-09-05 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/tst-fanotify.c (do_test): Skip test when
+ fanotify_init returns EPERM.
+
+2013-09-04 Joseph Myers <joseph@codesourcery.com>
+
+ * conform/conformtest.pl (newtoken): Treat tokens not allowed as
+ errors.
+ (top level): Treat second token from macro or constant entries for
+ allowed headers as allowed.
+ * include/complex.h: Condition internal declarations on
+ [!_ISOMAC].
+ * include/fenv.h: Condition include of <stdbool.h> and internal
+ declarations on [!_ISOMAC].
+
+2013-09-04 Chris Leonard <cjl@sugarlabs,.org>
+
+ [BZ #15923]
+ * locale/iso-4217.def: Update iso-1427.def and related occurrences.
+
+2013-09-04 Joseph Myers <joseph@codesourcery.com>
+
+ * configure.in (--enable-versioning): Remove configure option.
+ (libc_cv_asm_symver_directive): Remove configure test.
+ (libc_cv_ld_version_script_option): Likewise.
+ (VERSIONING): Remove variable and AC_SUBST.
+ (DO_VERSIONING): Remove AC_DEFINE.
+ * configure: Regenerated.
+ * config.h.in (DO_VERSIONING): Remove macro.
+ * Makerules [$(versioning) = yes]: Change conditionals to
+ [$(build-shared) = yes].
+ * config.make.in (versioning): Remove variable.
+ * dlfcn/Makefile [$(versioning) = yes]: Change conditionals to
+ [$(build-shared) = yes].
+ * dlfcn/modstatic2.c (test) [DO_VERSIONING]: Remove conditional.
+ * dlfcn/tststatic2.c (main) [DO_VERSIONING]: Likewise.
+ * elf/Makefile [$(versioning) = yes]: Change conditionals to
+ [$(build-shared) = yes].
+ * extra-lib.mk [$(versioning) = yes]: Likewise.
+ * hurd/Makefile [$(versioning) = yes]: Likewise.
+ * hurd/geteuids.c [SHARED && DO_VERSIONING]: Change conditional to
+ [SHARED].
+ * include/libc-symbols.h [DO_VERSIONING]: Change conditional to
+ [SHARED].
+ [SHARED && DO_VERSIONING && !NO_HIDDEN]: Change conditional to
+ [SHARED && !NO_HIDDEN].
+ * include/shlib-compat.h [DO_VERSIONING]: Change conditional to
+ [SHARED].
+ [SHARED && DO_VERSIONING]: Likewise..
+ * libio/Makefile [$(versioning) = yes]: Change conditionals to
+ [$(build-shared) = yes].
+ * manual/install.texi (--disable-versioning): Remove
+ documentation.
+ * INSTALL: Regenerated.
+ * resolv/res_libc.c [SHARED && DO_VERSIONING]: Change conditional
+ to [SHARED].
+ * sunrpc/Makefile [$(versioning) = yes]: Change conditional to
+ [$(build-shared) = yes].
+ * sysdeps/gnu/Makefile [$(versioning) = yes]: Likewise.
+ * sysdeps/i386/i686/multiarch/strstr-c.c
+ [SHARED && DO_VERSIONING && !NO_HIDDEN]: Change conditional to
+ [SHARED && !NO_HIDDEN].
+ * sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h
+ [SHARED && DO_VERSIONING]: Change conditional to [SHARED].
+ * sysdeps/powerpc/powerpc32/dl-machine.c
+ [SHARED && !(DO_VERSIONING - 0)]: Remove conditional error.
+ * sysdeps/powerpc/powerpc32/sysdep.h
+ [SHARED && DO_VERSIONING && PIC && !NO_HIDDEN]: Change conditional
+ to [SHARED && PIC && !NO_HIDDEN].
+ * sysdeps/wordsize-32/divdi3.c [SHARED && DO_VERSIONING]: Change
+ conditional to [SHARED].
+
+2013-09-04 Will Newton <will.newton@linaro.org>
+
+ * benchtests/bench-timing.h (TIMING_PRINT_MEAN): New macro.
+ * benchtests/bench-string.h: Include bench-timing.h instead
+ of including hp-timing.h directly. (INNER_LOOP_ITERS): New
+ define. (HP_TIMING_BEST): Delete macro. (test_init): Remove
+ call to HP_TIMING_DIFF_INIT.
+ * benchtests/bench-memccpy.c: Use bench-timing.h macros
+ instead of hp-timing.h macros.
+ * benchtests/bench-memchr.c: Likewise.
+ * benchtests/bench-memcmp.c: Likewise.
+ * benchtests/bench-memcpy.c: Likewise.
+ * benchtests/bench-memmem.c: Likewise.
+ * benchtests/bench-memmove.c: Likewise.
+ * benchtests/bench-memset.c: Likewise.
+ * benchtests/bench-rawmemchr.c: Likewise.
+ * benchtests/bench-strcasecmp.c: Likewise.
+ * benchtests/bench-strcasestr.c: Likewise.
+ * benchtests/bench-strcat.c: Likewise.
+ * benchtests/bench-strchr.c: Likewise.
+ * benchtests/bench-strcmp.c: Likewise.
+ * benchtests/bench-strcpy.c: Likewise.
+ * benchtests/bench-strcpy_chk.c: Likewise.
+ * benchtests/bench-strlen.c: Likewise.
+ * benchtests/bench-strncasecmp.c: Likewise.
+ * benchtests/bench-strncat.c: Likewise.
+ * benchtests/bench-strncmp.c: Likewise.
+ * benchtests/bench-strncpy.c: Likewise.
+ * benchtests/bench-strnlen.c: Likewise.
+ * benchtests/bench-strpbrk.c: Likewise.
+ * benchtests/bench-strrchr.c: Likewise.
+ * benchtests/bench-strspn.c: Likewise.
+ * benchtests/bench-strstr.c: Likewise.
+
+2013-09-04 Will Newton <will.newton@linaro.org>
+
+ * benchtests/Makefile: Use LDLIBS instead of LDFLAGS.
+
+2013-09-03 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #15427]
+ * sysdeps/ieee754/flt-32/e_lgammaf_r.c (__ieee754_lgammaf_r): Use
+ 2**-30 instead of 2**-70 as threshold for returning -log(|x|).
+ * math/libm-test.inc (lgamma_test_data): Add more tests.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-09-03 Ondřej Bílka <neleai@seznam.cz>
+
+ * sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S: New file.
+ * sysdeps/x86_64/multiarch/ifunc-impl-list.c (__libc_ifunc_impl_list):
+ Add ifunc.
+ * sysdeps/x86_64/multiarch/Makefile (sysdep_routines):
+ Add strcmp-sse2-unaligned
+ * sysdeps/x86_64/multiarch/strcmp.S (strcmp): Add ifunc.
+
+2013-09-02 Mike Frysinger <vapier@gentoo.org>
+
+ * Versions.def (libc): Add GLIBC_2.19.
+
+2013-09-02 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/tst-fanotify.c: New test.
+ * sysdeps/unix/sysv/linux/Makefile (tests): Add tst-fanotify.
+
+2013-09-02 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #14155]
+ * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_jnf): Use double for
+ intermediate calculations in recurrence.
+ (__ieee754_ynf): Likewise.
+ * math/libm-test.inc (jn_test_data): Do not allow spurious
+ underflow exception. Add more tests.
+ (yn_test_data): Add more tests.
+ * sysdeps/i386/fpu/libm-test-ulps: Update.
+ * sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
+
+2013-09-02 Ondřej Bílka <neleai@seznam.cz>
+
+ * sysdeps/powerpc/powerpc32/power6/memcpy.S: Fix typo.
+
2013-08-30 Ondřej Bílka <neleai@seznam.cz>
* csu/init-first.c: Fix then/than typos.
diff --git a/INSTALL b/INSTALL
index 2c61704b8f..bfa692de6a 100644
--- a/INSTALL
+++ b/INSTALL
@@ -6,10 +6,10 @@ Before you do anything else, you should read the FAQ at
and describes problems you may experience with compilation and
installation.
- Features can be added to the GNU C Library via "add-on" bundles.
-These are separate tar files, which you unpack into the top level of
-the source tree. Then you give `configure' the `--enable-add-ons'
-option to activate them, and they will be compiled into the library.
+Features can be added to the GNU C Library via "add-on" bundles. These
+are separate tar files, which you unpack into the top level of the
+source tree. Then you give `configure' the `--enable-add-ons' option
+to activate them, and they will be compiled into the library.
You will need recent versions of several GNU tools: definitely GCC
and GNU Make, and possibly others. *Note Tools for Compilation::,
@@ -111,11 +111,6 @@ will be used, and CFLAGS sets optimization options for the compiler.
Don't build libraries with profiling information. You may want to
use this option if you don't plan to do profiling.
-`--disable-versioning'
- Don't compile the shared libraries with symbol version information.
- Doing this will make the resulting library incompatible with old
- binaries, so it's not recommended.
-
`--enable-static-nss'
Compile static versions of the NSS (Name Service Switch) libraries.
This is not recommended because it defeats the purpose of NSS; a
@@ -290,14 +285,11 @@ dramatically improve performance with NIS+, and may help with DNS as
well.
One auxiliary program, `/usr/libexec/pt_chown', is installed setuid
-`root'. This program is invoked by the `grantpt' function; it sets the
-permissions on a pseudoterminal so it can be used by the calling
-process. This means programs like `xterm' and `screen' do not have to
-be setuid to get a pty. (There may be other reasons why they need
-privileges.) If you are using a Linux kernel with the `devptsfs' or
-`devfs' filesystems providing pty slaves, you don't need this program;
-otherwise you do. The source for `pt_chown' is in
-`login/programs/pt_chown.c'.
+`root' if the `--enable-pt_chown' configuration option is used. This
+program is invoked by the `grantpt' function; it sets the permissions
+on a pseudoterminal so it can be used by the calling process. If you
+are using a Linux kernel with the `devpts' filesystem enabled and
+mounted at `/dev/pts', you don't need this program.
After installation you might want to configure the timezone and
locale installation of your system. The GNU C Library comes with a
@@ -376,7 +368,7 @@ build the GNU C Library:
should definitely upgrade `sed'.
-If you change any of the `configure.in' files you will also need
+If you change any of the `configure.ac' files you will also need
* GNU `autoconf' 2.53 or higher
diff --git a/Makeconfig b/Makeconfig
index a3d3e70150..66189877b1 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -88,16 +88,16 @@ $(common-objpfx)config.status: $(..)version.h $(..)configure \
$(wildcard $(dir)/Implies) \
$(patsubst %.in,%,\
$(firstword $(wildcard \
- $(addprefix $(dir)/,configure configure.in))))) \
+ $(addprefix $(dir)/,configure configure.ac))))) \
$(patsubst %.in,%,\
- $(wildcard $(..)sysdeps/*/preconfigure $(..)sysdeps/*/preconfigure.in)) \
+ $(wildcard $(..)sysdeps/*/preconfigure $(..)sysdeps/*/preconfigure.ac)) \
$(patsubst %.in,%,\
$(foreach add-on,$(add-ons),\
$(firstword $(wildcard \
$(addprefix $(firstword $(filter /%,$(add-on)) $(..)$(add-on))/,\
- configure configure.in))) \
+ configure configure.ac))) \
$(wildcard $(addprefix $(firstword $(filter /%,$(add-on)) $(..)$(add-on))/,\
- sysdeps/*/preconfigure sysdeps/*/preconfigure.in))))
+ sysdeps/*/preconfigure sysdeps/*/preconfigure.ac))))
@cd $(@D); if test -f $(@F); then exec $(SHELL) $(@F) --recheck; else \
echo The GNU C library has not been configured. >&2; \
echo Run \`configure\' to configure it before building. >&2; \
diff --git a/Makefile b/Makefile
index ba1820d2b2..1998756df7 100644
--- a/Makefile
+++ b/Makefile
@@ -38,9 +38,9 @@ chmod a-w$(patsubst %,$(comma)a+x,$(filter .,$(@D))) $@.new
mv -f $@.new $@
endef
-configure: configure.in aclocal.m4; $(autoconf-it)
-%/configure: %/configure.in aclocal.m4; $(autoconf-it)
-%/preconfigure: %/preconfigure.in aclocal.m4; $(autoconf-it)
+configure: configure.ac aclocal.m4; $(autoconf-it)
+%/configure: %/configure.ac aclocal.m4; $(autoconf-it)
+%/preconfigure: %/preconfigure.ac aclocal.m4; $(autoconf-it)
endif # $(AUTOCONF) = no
@@ -123,36 +123,7 @@ lib-noranlib: subdir_lib
ifeq (yes,$(build-shared))
# Build the shared object from the PIC object library.
-lib: $(common-objpfx)libc.so
-
-lib: $(common-objpfx)linkobj/libc.so
-
-# Do not filter ld.so out of libc.so link.
-$(common-objpfx)linkobj/libc.so: link-libc-deps = # empty
-
-$(common-objpfx)linkobj/libc.so: $(elfobjdir)/soinit.os \
- $(common-objpfx)linkobj/libc_pic.a \
- $(elfobjdir)/sofini.os \
- $(elfobjdir)/interp.os \
- $(elfobjdir)/ld.so \
- $(shlib-lds)
- $(build-shlib)
-
-ifeq (,$(filter sunrpc,$(subdirs)))
-$(common-objpfx)linkobj/libc_pic.a: $(common-objpfx)libc_pic.a
- $(make-target-directory)
- ln -f $< $@
-else
-$(common-objpfx)linkobj/libc_pic.a: $(common-objpfx)libc_pic.a \
- $(common-objpfx)sunrpc/librpc_compat_pic.a
- $(make-target-directory)
- (cd $(common-objpfx)linkobj; \
- $(AR) x ../libc_pic.a; \
- rm $$($(AR) t ../sunrpc/librpc_compat_pic.a | sed 's/^compat-//'); \
- $(AR) x ../sunrpc/librpc_compat_pic.a; \
- $(AR) cr libc_pic.a *.os; \
- rm *.os)
-endif # $(subdirs) contains sunrpc
+lib: $(common-objpfx)libc.so $(common-objpfx)linkobj/libc.so
endif # $(build-shared)
@@ -406,8 +377,8 @@ dist: dist-prepare
fi
endif
-INSTALL: manual/install.texi manual/macros.texi \
- $(common-objpfx)manual/pkgvers.texi
+INSTALL: manual/install-plain.texi manual/macros.texi \
+ $(common-objpfx)manual/pkgvers.texi manual/install.texi
makeinfo --no-validate --plaintext --no-number-sections \
-I$(common-objpfx)manual $< -o $@-tmp
$(AWK) 'NF == 0 { ++n; next } \
diff --git a/Makerules b/Makerules
index 8a8ddc9e42..6a9c4cfd39 100644
--- a/Makerules
+++ b/Makerules
@@ -93,7 +93,7 @@ before-compile := $(filter $(common-objpfx)mach% $(common-objpfx)hurd%,\
$(before-compile))
# Even before that, we need abi-versions.h which is generated right here.
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
ifndef avoid-generated
before-compile := $(common-objpfx)abi-versions.h $(before-compile)
$(common-objpfx)abi-versions.h: $(..)scripts/abi-versions.awk \
@@ -106,7 +106,7 @@ $(common-objpfx)%.latest: $(common-objpfx)abi-versions.h
$(common-objpfx)abi-versions.h > $@T
mv -f $@T $@
endif # avoid-generated
-endif # $(versioning) = yes
+endif # $(build-shared) = yes
ifndef avoid-generated
before-compile := $(common-objpfx)libc-abis.h $(before-compile)
@@ -283,7 +283,7 @@ endif
# Generate version maps, but wait until sysdep-subdirs is known
ifeq ($(sysd-sorted-done),t)
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
-include $(common-objpfx)sysd-versions
$(addprefix $(common-objpfx),$(version-maps)): $(common-objpfx)sysd-versions
common-generated += $(version-maps)
@@ -324,7 +324,7 @@ $(common-objpfx)sysd-versions: $(common-objpfx)Versions.all \
) > $@T
mv -f $@T $@
endif # avoid-generated
-endif # $(versioning) = yes
+endif # $(build-shared) = yes
endif # sysd-sorted-done
# Generate .dT files as we compile.
@@ -400,9 +400,9 @@ elide-routines.og += $(shared-only-routines)
ifeq (yes,$(build-shared))
-# Reference map file only when versioning is selected and a map file name
+# Reference map file only when shared libraries are built and a map file name
# is given.
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
map-file = $(firstword $($(@F:.so=-map)) \
$(addprefix $(common-objpfx), \
$(filter $(@F:.so=.map),$(version-maps))))
@@ -604,17 +604,48 @@ generated += libc_pic.opts libc_pic.os.clean
libc_pic_clean := .clean
endif
-# Do not filter ld.so out of libc.so link.
+# Build a possibly-modified version of libc_pic.a for use in building
+# linkobj/libc.so.
+ifeq (,$(filter sunrpc,$(subdirs)))
+$(common-objpfx)linkobj/libc_pic.a: $(common-objpfx)libc_pic.a
+ $(make-target-directory)
+ ln -f $< $@
+else
+$(common-objpfx)linkobj/libc_pic.a: $(common-objpfx)libc_pic.a \
+ $(common-objpfx)sunrpc/librpc_compat_pic.a
+ $(make-target-directory)
+ (cd $(common-objpfx)linkobj; \
+ $(AR) x ../libc_pic.a; \
+ rm $$($(AR) t ../sunrpc/librpc_compat_pic.a | sed 's/^compat-//'); \
+ $(AR) x ../sunrpc/librpc_compat_pic.a; \
+ $(AR) cr libc_pic.a *.os; \
+ rm *.os)
+endif # $(subdirs) contains sunrpc
+
+# Clear link-libc-deps for the libc.so libraries so build-shlibs does not
+# filter ld.so out of the list of linked objects.
$(common-objpfx)libc.so: link-libc-deps = # empty
+$(common-objpfx)linkobj/libc.so: link-libc-deps = # empty
-# Use our own special initializer and finalizer files for libc.so.
+# Use our own special initializer and finalizer files for the libc.so
+# libraries.
$(common-objpfx)libc.so: $(elfobjdir)/soinit.os \
$(common-objpfx)libc_pic.os$(libc_pic_clean) \
$(elfobjdir)/sofini.os \
- $(elfobjdir)/interp.os $(elfobjdir)/ld.so \
+ $(elfobjdir)/interp.os \
+ $(elfobjdir)/ld.so \
$(shlib-lds)
$(build-shlib)
-ifeq ($(versioning),yes)
+
+$(common-objpfx)linkobj/libc.so: $(elfobjdir)/soinit.os \
+ $(common-objpfx)linkobj/libc_pic.a \
+ $(elfobjdir)/sofini.os \
+ $(elfobjdir)/interp.os \
+ $(elfobjdir)/ld.so \
+ $(shlib-lds)
+ $(build-shlib)
+
+ifeq ($(build-shared),yes)
$(common-objpfx)libc.so: $(common-objpfx)libc.map
endif
common-generated += libc.so libc_pic.os
@@ -1171,7 +1202,7 @@ endif
CPPFLAGS-nonlib = -DNOT_IN_libc=1
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
# Generate normalized lists of symbols, versions, and data sizes.
# This is handy for checking against existing library binaries.
diff --git a/NEWS b/NEWS
index 4fe4b63e23..b8ff649e2c 100644
--- a/NEWS
+++ b/NEWS
@@ -9,13 +9,106 @@ Version 2.19
* The following bugs are resolved with this release:
- 14699, 15522, 15531, 15532, 15736, 15749, 15797, 15867, 15890, 15897,
- 15905, 15909.
+ 156, 387, 431, 832, 926, 2801, 4772, 6786, 6787, 6807, 6810, 7003, 9954,
+ 10253, 10278, 11087, 11157, 11214, 12100, 12486, 13028, 13982, 13985,
+ 14029, 14032, 14120, 14143, 14155, 14547, 14699, 14752, 14876, 14910,
+ 15004, 15048, 15089, 15128, 15218, 15268, 15277, 15308, 15362, 15374,
+ 15400, 15425, 15427, 15483, 15522, 15531, 15532, 15593, 15601, 15608,
+ 15609, 15610, 15632, 15640, 15670, 15672, 15680, 15681, 15723, 15734,
+ 15735, 15736, 15748, 15749, 15754, 15760, 15763, 15764, 15797, 15799,
+ 15825, 15843, 15844, 15846, 15847, 15849, 15855, 15856, 15857, 15859,
+ 15867, 15886, 15887, 15890, 15892, 15893, 15895, 15897, 15901, 15905,
+ 15909, 15915, 15917, 15919, 15921, 15923, 15939, 15941, 15948, 15963,
+ 15966, 15985, 15988, 15997, 16032, 16034, 16036, 16037, 16038, 16041,
+ 16055, 16071, 16072, 16074, 16077, 16078, 16103, 16112, 16143, 16144,
+ 16146, 16150, 16151, 16153, 16167, 16172, 16195, 16214, 16245, 16271,
+ 16274, 16283, 16289, 16293, 16314, 16316, 16330, 16338.
+
+* The public headers no longer use __unused nor __block. This change is to
+ support compiling programs that are derived from BSD sources and use
+ __unused internally, and to support compiling with Clang's -fblock
+ extension which uses __block.
+
+* CVE-2012-4412 The strcoll implementation caches indices and rules for
+ large collation sequences to optimize multiple passes. This cache
+ computation may overflow for large collation sequences and may cause a
+ stack or buffer overflow. This is now fixed to use a slower algorithm
+ which does not use a cache if there is an integer overflow.
+
+* CVE-2012-4424 The strcoll implementation uses malloc to cache indices and
+ rules for large collation sequences to optimize multiple passes and falls
+ back to alloca if malloc fails, resulting in a possible stack overflow.
+ The implementation now falls back to an uncached collation sequence lookup
+ if malloc fails.
+
+* CVE-2013-4788 The pointer guard used for pointer mangling was not
+ initialized for static applications resulting in the security feature
+ being disabled. The pointer guard is now correctly initialized to a
+ random value for static applications. Existing static applications need
+ to be recompiled to take advantage of the fix (bug 15754).
* CVE-2013-4237 The readdir_r function could write more than NAME_MAX bytes
to the d_name member of struct dirent, or omit the terminating NUL
character. (Bugzilla #14699).
+* CVE-2013-4332 The pvalloc, valloc, memalign, posix_memalign and
+ aligned_alloc functions could allocate too few bytes or corrupt the
+ heap when passed very large allocation size values (Bugzilla #15855,
+ #15856, #15857).
+
+* CVE-2013-4458 Stack overflow in getaddrinfo with large number of results
+ for AF_INET6 has been fixed (Bugzilla #16072).
+
+* New locales: ak_GH, anp_IN, ar_SS, cmn_TW, hak_TW, lzh_TW, nan_TW, pap_AW,
+ pap_CW, quz_PE, the_NP.
+
+* Substantially revised locales: gd_GB, ht_HT
+
+* The LC_ADDRESS field was updated to support country_car for almost all
+ supported locales.
+
+* ISO 1427 definitions were updated.
+
+* ISO 3166 definitions were updated.
+
+* The localedef utility now supports --big-endian and --little-endian
+ command-line options to generate locales for a different system from that
+ for which the C library was built.
+
+* Binary locale files now only depend on the endianness of the system for
+ which they are generated and not on other properties of that system. As a
+ consequence, binary files generated with new localedef may be incompatible
+ with old versions of the GNU C Library, and binary files generated with
+ old localedef may be incompatible with this version of the GNU C Library,
+ in the following circumstances:
+
+ + Locale files may be incompatible on m68k systems.
+
+ + Locale archive files (but not separate files for individual locales) may
+ be incompatible on systems where plain "char" is signed.
+
+* The configure option --disable-versioning has been removed. Builds with
+ --disable-versioning had not worked for several years.
+
+* ISO 639 definitions were updated for Chiga (cgg) and Chinese (gan, hak, czh,
+ cjy, lzh, cmn, mnp, cdo, czo, cpx, wuu, hsn, yue).
+
+* SystemTap probes for malloc have been introduced.
+
+* Support for powerpc64le has been added.
+
+* The soft-float powerpc port now supports e500 processors.
+
+* Support for STT_GNU_IFUNC symbols added for ppc32/power4+ and ppc64.
+
+* A new feature test macro _DEFAULT_SOURCE is available to enable the same
+ set of header declarations that are enabled by default, even when other
+ feature test macros or compiler options such as -std=c99 would otherwise
+ disable some of those declarations.
+
+* The _BSD_SOURCE feature test macro no longer enables BSD interfaces that
+ conflict with POSIX. The libbsd-compat library (which was a dummy library
+ that did nothing) has also been removed.
Version 2.18
@@ -82,6 +175,10 @@ Version 2.18
* On Linux, the clock function now uses the clock_gettime system call
for improved precision, rather than old times system call.
+* Added support for version-3 tz format files. This is needed when using
+ the tz database release 2013e or later, and affects a few unusual cases --
+ currently only TZ='America/Godthab' for time stamps after 2037.
+
* Added new API functions pthread_getattr_default_np and
pthread_setattr_default_np to get and set the default pthread
attributes of a process.
diff --git a/README b/README
index bb4ccb896b..0999fcf19f 100644
--- a/README
+++ b/README
@@ -26,8 +26,8 @@ The GNU C Library supports these configurations for using Linux kernels:
i[4567]86-*-linux-gnu
x86_64-*-linux-gnu Can build either x86_64 or x32
- powerpc-*-linux-gnu Hardware floating point required
- powerpc64-*-linux-gnu
+ powerpc-*-linux-gnu Hardware or software floating point, BE only.
+ powerpc64*-*-linux-gnu Big-endian and little-endian.
s390-*-linux-gnu
s390x-*-linux-gnu
sh[34]-*-linux-gnu
@@ -47,7 +47,6 @@ located in the `ports' subdirectory of the source tree.
m68k-*-linux-gnu
mips-*-linux-gnu
mips64-*-linux-gnu
- powerpc-*-linux-gnu Software floating point (--without-fp)
tilegx-*-linux-gnu
tilepro-*-linux-gnu
diff --git a/Versions.def b/Versions.def
index 0854e6eb3b..d834b10479 100644
--- a/Versions.def
+++ b/Versions.def
@@ -35,6 +35,7 @@ libc {
GLIBC_2.16
GLIBC_2.17
GLIBC_2.18
+ GLIBC_2.19
HURD_CTHREADS_0.3
%ifdef EXPORT_UNWIND_FIND_FDE
GCC_3.0
@@ -55,10 +56,12 @@ libm {
GLIBC_2.1
GLIBC_2.2
GLIBC_2.2.3
+ GLIBC_2.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.15
GLIBC_2.18
+ GLIBC_2.19
}
libnsl {
GLIBC_2.0
diff --git a/aclocal.m4 b/aclocal.m4
index 350ce55957..d847f8f01b 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -9,8 +9,8 @@ m4_defn([AC_AUTOCONF_VERSION])
), [63])])dnl
dnl
dnl We define the macro GLIBC_PROVIDES to do an AC_PROVIDE for each macro
-dnl which appears in configure.in before the sysdep configure scripts are run.
-dnl Each sysdep configure.in does GLIBC_PROVIDES first, to avoid any
+dnl which appears in configure.ac before the sysdep configure scripts are run.
+dnl Each sysdep configure.ac does GLIBC_PROVIDES first, to avoid any
dnl AC_REQUIREs or AC_BEFOREs duplicating their code.
dnl
define([GLIBC_PROVIDES], [dnl
@@ -40,7 +40,7 @@ dnl Ripped out of AS_INIT, which does more cruft we do not want.
m4_wrap([m4_divert_pop([BODY])[]])
m4_divert_push([BODY])[]dnl
dnl End of ripped out of AS_INIT.
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
define([_AC_LANG], [C])dnl
])dnl
dnl
diff --git a/benchtests/Makefile b/benchtests/Makefile
index ba313d2cf8..117228b9ad 100644
--- a/benchtests/Makefile
+++ b/benchtests/Makefile
@@ -20,83 +20,41 @@
# Add benchmark functions in alphabetical order.
subdir := benchtests
-bench := acos acosh asin asinh atan atanh cos cosh exp log modf pow rint sin \
- sinh tan tanh
+bench := acos acosh asin asinh atan atanh cos cosh exp exp2 log log2 modf pow \
+ rint sin sincos sinh sqrt tan tanh
# String function benchmarks.
-string-bench := bcopy bzero memccpy memchr memcmp memmem memmove mempcpy \
- memset rawmemchr stpcpy stpncpy strcasecmp strcasestr strcat \
- strchr strchrnul strcmp strcpy strcspn strlen strncasecmp \
- strncat strncmp strncpy strnlen strpbrk strrchr strspn strstr \
- strcpy_chk stpcpy_chk
-string-bench-ifunc := $(addsuffix -ifunc, $(string-bench))
-string-bench-all := $(string-bench) $(string-bench-ifunc)
-
-benchset := $(string-bench-all)
-
-acos-ARGLIST = double
-acos-RET = double
-LDFLAGS-bench-acos = -lm
-
-acosh-ARGLIST = double
-acosh-RET = double
-LDFLAGS-bench-acosh = -lm
-
-asin-ARGLIST = double
-asin-RET = double
-LDFLAGS-bench-asin = -lm
-
-asinh-ARGLIST = double
-asinh-RET = double
-LDFLAGS-bench-asinh = -lm
-
-atan-ARGLIST = double
-atan-RET = double
-LDFLAGS-bench-atan = -lm
-
-atanh-ARGLIST = double
-atanh-RET = double
-LDFLAGS-bench-atanh = -lm
-
-cos-ARGLIST = double
-cos-RET = double
-LDFLAGS-bench-cos = -lm
-
-cosh-ARGLIST = double
-cosh-RET = double
-LDFLAGS-bench-cosh = -lm
-
-exp-ARGLIST = double
-exp-RET = double
-LDFLAGS-bench-exp = -lm
-
-log-ARGLIST = double
-log-RET = double
-LDFLAGS-bench-log = -lm
-
-pow-ARGLIST = double:double
-pow-RET = double
-LDFLAGS-bench-pow = -lm
-
-rint-ARGLIST = double
-rint-RET = double
-LDFLAGS-bench-rint = -lm
-
-sin-ARGLIST = double
-sin-RET = double
-LDFLAGS-bench-sin = -lm
-
-sinh-ARGLIST = double
-sinh-RET = double
-LDFLAGS-bench-sinh = -lm
-
-tan-ARGLIST = double
-tan-RET = double
-LDFLAGS-bench-tan = -lm
-
-tanh-ARGLIST = double
-tanh-RET = double
-LDFLAGS-bench-tanh = -lm
+string-bench := bcopy bzero memccpy memchr memcmp memcpy memmem memmove \
+ mempcpy memset rawmemchr stpcpy stpncpy strcasecmp strcasestr \
+ strcat strchr strchrnul strcmp strcpy strcspn strlen \
+ strncasecmp strncat strncmp strncpy strnlen strpbrk strrchr \
+ strspn strstr strcpy_chk stpcpy_chk memrchr strsep strtok
+string-bench-all := $(string-bench)
+
+stdlib-bench := strtod
+
+benchset := $(string-bench-all) $(stdlib-bench)
+
+LDLIBS-bench-acos = -lm
+LDLIBS-bench-acosh = -lm
+LDLIBS-bench-asin = -lm
+LDLIBS-bench-asinh = -lm
+LDLIBS-bench-atan = -lm
+LDLIBS-bench-atanh = -lm
+LDLIBS-bench-cos = -lm
+LDLIBS-bench-cosh = -lm
+LDLIBS-bench-exp = -lm
+LDLIBS-bench-exp2 = -lm
+LDLIBS-bench-log = -lm
+LDLIBS-bench-log2 = -lm
+LDLIBS-bench-pow = -lm
+LDLIBS-bench-rint = -lm
+LDLIBS-bench-sin = -lm
+LDLIBS-bench-sinh = -lm
+LDLIBS-bench-sqrt = -lm
+LDLIBS-bench-tan = -lm
+LDLIBS-bench-tanh = -lm
+LDLIBS-bench-sincos = -lm
@@ -169,6 +127,5 @@ $(objpfx)bench-%.c: %-inputs $(bench-deps)
{ if [ -n "$($*-INCLUDE)" ]; then \
cat $($*-INCLUDE); \
fi; \
- $(..)scripts/bench.pl $(patsubst %-inputs,%,$<) \
- $($*-ARGLIST) $($*-RET); } > $@-tmp
+ $(..)scripts/bench.pl $(patsubst %-inputs,%,$<); } > $@-tmp
mv -f $@-tmp $@
diff --git a/benchtests/README b/benchtests/README
index 045b7a673d..a5fd8dafe3 100644
--- a/benchtests/README
+++ b/benchtests/README
@@ -40,23 +40,28 @@ one to add `foo' to the bench tests:
- Append the function name to the bench variable in the Makefile.
-- Define foo-ARGLIST as a colon separated list of types of the input
- arguments. Use `void' if function does not take any inputs. Put in quotes
- if the input argument is a pointer, e.g.:
-
- malloc-ARGLIST: "void *"
-
-- Define foo-RET as the type the function returns. Skip if the function
- returns void. One could even skip foo-ARGLIST if the function does not
- take any inputs AND the function returns void.
-
-- Make a file called `foo-inputs` with one input value per line, an input
- being a comma separated list of arguments to be passed into the function.
- See pow-inputs for an example.
-
- The script that parses the -inputs file treats lines beginning with a single
- `#' as comments. Lines beginning with two hashes `##' are treated specially
- as `directives'.
+- Make a file called `foo-inputs` to provide the definition and input for the
+ function. The file should have some directives telling the parser script
+ about the function and then one input per line. Directives are lines that
+ have a special meaning for the parser and they begin with two hashes '##'.
+ The following directives are recognized:
+
+ - args: This should be assigned a colon separated list of types of the input
+ arguments. This directive may be skipped if the function does not take any
+ inputs. One may identify output arguments by nesting them in <>. The
+ generator will create variables to get outputs from the calling function.
+ - ret: This should be assigned the type that the function returns. This
+ directive may be skipped if the function does not return a value.
+ - includes: This should be assigned a comma-separated list of headers that
+ need to be included to provide declarations for the function and types it
+ may need (specifically, this includes using "#include <header>").
+ - include-sources: This should be assigned a comma-separated list of source
+ files that need to be included to provide definitions of global variables
+ and functions (specifically, this includes using "#include "source").
+ - name: See following section for instructions on how to use this directive.
+
+ Lines beginning with a single hash '#' are treated as comments. See
+ pow-inputs for an example of an input file.
Multiple execution units per function:
=====================================
diff --git a/benchtests/acos-inputs b/benchtests/acos-inputs
index b527af35e4..080a4e916e 100644
--- a/benchtests/acos-inputs
+++ b/benchtests/acos-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
0.5
0.1
0.2
diff --git a/benchtests/acosh-inputs b/benchtests/acosh-inputs
index 3c8c546f0c..84a603dc3d 100644
--- a/benchtests/acosh-inputs
+++ b/benchtests/acosh-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
0.1
0.2
0.3
diff --git a/benchtests/asin-inputs b/benchtests/asin-inputs
index b527af35e4..080a4e916e 100644
--- a/benchtests/asin-inputs
+++ b/benchtests/asin-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
0.5
0.1
0.2
diff --git a/benchtests/asinh-inputs b/benchtests/asinh-inputs
index 3c8c546f0c..84a603dc3d 100644
--- a/benchtests/asinh-inputs
+++ b/benchtests/asinh-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
0.1
0.2
0.3
diff --git a/benchtests/atan-inputs b/benchtests/atan-inputs
index 4a2cf3aca3..e88e384346 100644
--- a/benchtests/atan-inputs
+++ b/benchtests/atan-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
0x1.000000c5cba86p0
0x1.000001883003ap0
0x1.00000dfb2b674p0
diff --git a/benchtests/atanh-inputs b/benchtests/atanh-inputs
index 3c8c546f0c..84a603dc3d 100644
--- a/benchtests/atanh-inputs
+++ b/benchtests/atanh-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
0.1
0.2
0.3
diff --git a/benchtests/bench-memccpy.c b/benchtests/bench-memccpy.c
index 612513c68d..2c47e79376 100644
--- a/benchtests/bench-memccpy.c
+++ b/benchtests/bench-memccpy.c
@@ -59,6 +59,9 @@ do_one_test (impl_t *impl, void *dst, const void *src, int c, size_t len,
size_t n)
{
void *expect = len > n ? NULL : (char *) dst + len;
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (CALL (impl, dst, src, c, n) != expect)
{
error (0, 0, "Wrong result in function %s %p %p", impl->name,
@@ -74,23 +77,16 @@ do_one_test (impl_t *impl, void *dst, const void *src, int c, size_t len,
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute__ ((unused));
- hp_timing_t stop __attribute__ ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, dst, src, c, n);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, dst, src, c, n);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -121,14 +117,12 @@ do_test (size_t align1, size_t align2, int c, size_t len, size_t n,
for (i = len; i + align1 < page_size && i < len + 64; ++i)
s1[i] = 32 + 32 * i % (max_char - 32);
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, n %4zd, char %d, alignment %2zd/%2zd:", len, n, c, align1, align2);
+ printf ("Length %4zd, n %4zd, char %d, alignment %2zd/%2zd:", len, n, c, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s2, s1, c, len, n);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-memchr.c b/benchtests/bench-memchr.c
index 5470ce6c5b..30c472c131 100644
--- a/benchtests/bench-memchr.c
+++ b/benchtests/bench-memchr.c
@@ -16,9 +16,10 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#define TEST_MAIN
-#define TEST_NAME "memchr"
-#include "bench-string.h"
+#ifndef USE_AS_MEMRCHR
+# define TEST_MAIN
+# define TEST_NAME "memchr"
+# include "bench-string.h"
typedef char *(*proto_t) (const char *, int, size_t);
char *simple_memchr (const char *, int, size_t);
@@ -34,11 +35,15 @@ simple_memchr (const char *s, int c, size_t n)
return (char *) s - 1;
return NULL;
}
+#endif
static void
do_one_test (impl_t *impl, const char *s, int c, size_t n, char *exp_res)
{
char *res = CALL (impl, s, c, n);
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (res != exp_res)
{
error (0, 0, "Wrong result in function %s %p %p", impl->name,
@@ -47,23 +52,16 @@ do_one_test (impl_t *impl, const char *s, int c, size_t n, char *exp_res)
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s, c, n);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s, c, n);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -96,14 +94,12 @@ do_test (size_t align, size_t pos, size_t len, int seek_char)
buf1[align + len] = seek_char;
}
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd:", pos, align);
+ printf ("Length %4zd, alignment %2zd:", pos, align);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, (char *) (buf1 + align), seek_char, len, result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-memcmp.c b/benchtests/bench-memcmp.c
index 053bb50567..544130b01d 100644
--- a/benchtests/bench-memcmp.c
+++ b/benchtests/bench-memcmp.c
@@ -78,23 +78,19 @@ static void
do_one_test (impl_t *impl, const CHAR *s1, const CHAR *s2, size_t len,
int exp_result)
{
- if (HP_TIMING_AVAIL)
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s1, s2, len);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s1, s2, len);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -124,14 +120,12 @@ do_test (size_t align1, size_t align2, size_t len, int exp_result)
s2[len] = align2;
s2[len - 1] -= exp_result;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
+ printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s1, s2, len, exp_result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-memcpy-ifunc.c b/benchtests/bench-memcpy-ifunc.c
deleted file mode 100644
index b5a89f723d..0000000000
--- a/benchtests/bench-memcpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of memcpy function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-memcpy.c"
diff --git a/benchtests/bench-memcpy.c b/benchtests/bench-memcpy.c
index 1b126711f8..8cd9c23b44 100644
--- a/benchtests/bench-memcpy.c
+++ b/benchtests/bench-memcpy.c
@@ -52,6 +52,9 @@ static void
do_one_test (impl_t *impl, char *dst, const char *src,
size_t len)
{
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (CALL (impl, dst, src, len) != MEMCPY_RESULT (dst, len))
{
error (0, 0, "Wrong result in function %s %p %p", impl->name,
@@ -68,23 +71,16 @@ do_one_test (impl_t *impl, char *dst, const char *src,
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, dst, src, len);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, dst, src, len);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -107,14 +103,12 @@ do_test (size_t align1, size_t align2, size_t len)
for (i = 0, j = 1; i < len; i++, j += 23)
s1[i] = j;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
+ printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s2, s1, len);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-memmem-ifunc.c b/benchtests/bench-memmem-ifunc.c
deleted file mode 100644
index 6b951d8084..0000000000
--- a/benchtests/bench-memmem-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of memmem function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-memmem.c"
diff --git a/benchtests/bench-memmem.c b/benchtests/bench-memmem.c
index ca758a84f2..b8f8a8b2a3 100644
--- a/benchtests/bench-memmem.c
+++ b/benchtests/bench-memmem.c
@@ -60,23 +60,19 @@ static void
do_one_test (impl_t *impl, const void *haystack, size_t haystack_len,
const void *needle, size_t needle_len, const void *expected)
{
- if (HP_TIMING_AVAIL)
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
+ CALL (impl, haystack, haystack_len, needle, needle_len);
+ }
+ TIMING_NOW (stop);
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, haystack, haystack_len, needle, needle_len);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
+ TIMING_DIFF (cur, start, stop);
- printf ("\t%zd", (size_t) best_time);
- }
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -87,16 +83,14 @@ do_test (const char *str, size_t len, size_t idx)
memcpy (tmpbuf, buf1 + idx, len);
memcpy (buf1 + idx, str, len);
- if (HP_TIMING_AVAIL)
- printf ("String %s, offset %zd:", str, idx);
+ printf ("String %s, offset %zd:", str, idx);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, buf1, BUF1PAGES * page_size, str, len, buf1 + idx);
memcpy (buf1 + idx, tmpbuf, len);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
static void
@@ -120,15 +114,13 @@ do_random_tests (void)
buf1[idx + off] = ch;
}
- if (HP_TIMING_AVAIL)
- printf ("String %.*s, offset %zd:", (int) len, buf1 + idx, idx);
+ printf ("String %.*s, offset %zd:", (int) len, buf1 + idx, idx);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, buf1, BUF1PAGES * page_size, buf1 + idx, len,
buf1 + idx);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
memcpy (buf1 + idx, tmpbuf, len);
}
diff --git a/benchtests/bench-memmove.c b/benchtests/bench-memmove.c
index 8925606af8..332d6af263 100644
--- a/benchtests/bench-memmove.c
+++ b/benchtests/bench-memmove.c
@@ -67,6 +67,9 @@ static void
do_one_test (impl_t *impl, char *dst, char *src, const char *orig_src,
size_t len)
{
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
memcpy (src, orig_src, len);
#ifdef TEST_BCOPY
CALL (impl, src, dst, len);
@@ -91,27 +94,20 @@ do_one_test (impl_t *impl, char *dst, char *src, const char *orig_src,
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
#ifdef TEST_BCOPY
- CALL (impl, src, dst, len);
+ CALL (impl, src, dst, len);
#else
- CALL (impl, dst, src, len);
+ CALL (impl, dst, src, len);
#endif
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -134,14 +130,12 @@ do_test (size_t align1, size_t align2, size_t len)
for (i = 0, j = 1; i < len; i++, j += 23)
s1[i] = j;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
+ printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s2, (char *) (buf2 + align1), s1, len);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-mempcpy-ifunc.c b/benchtests/bench-mempcpy-ifunc.c
deleted file mode 100644
index 4fa93e0722..0000000000
--- a/benchtests/bench-mempcpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of mempcpy function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-mempcpy.c"
diff --git a/benchtests/bench-memrchr.c b/benchtests/bench-memrchr.c
new file mode 100644
index 0000000000..96a597f22e
--- /dev/null
+++ b/benchtests/bench-memrchr.c
@@ -0,0 +1,40 @@
+/* Measure memrchr functions.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define TEST_MAIN
+#define TEST_NAME "memrchr"
+#include "bench-string.h"
+
+typedef char *(*proto_t) (const char *, int, size_t);
+char *simple_memrchr (const char *, int, size_t);
+
+IMPL (simple_memrchr, 0)
+IMPL (memrchr, 1)
+
+char *
+simple_memrchr (const char *s, int c, size_t n)
+{
+ s = s + n;
+ while (n--)
+ if (*--s == (char) c)
+ return (char *) s;
+ return NULL;
+}
+
+#define USE_AS_MEMRCHR
+#include "bench-memchr.c"
diff --git a/benchtests/bench-memset-ifunc.c b/benchtests/bench-memset-ifunc.c
deleted file mode 100644
index 1d43eef3c9..0000000000
--- a/benchtests/bench-memset-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of memset function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-memset.c"
diff --git a/benchtests/bench-memset.c b/benchtests/bench-memset.c
index ea29cf37fc..e45807c0ee 100644
--- a/benchtests/bench-memset.c
+++ b/benchtests/bench-memset.c
@@ -75,6 +75,8 @@ simple_memset (char *s, int c, size_t n)
static void
do_one_test (impl_t *impl, char *s, int c __attribute ((unused)), size_t n)
{
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
char tstbuf[n];
#ifdef TEST_BZERO
simple_bzero (tstbuf, n);
@@ -92,28 +94,20 @@ do_one_test (impl_t *impl, char *s, int c __attribute ((unused)), size_t n)
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
#ifdef TEST_BZERO
- CALL (impl, s, n);
+ CALL (impl, s, n);
#else
- CALL (impl, s, c, n);
+ CALL (impl, s, c, n);
#endif
+ }
+ TIMING_NOW (stop);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
+ TIMING_DIFF (cur, start, stop);
- printf ("\t%zd", (size_t) best_time);
- }
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -123,14 +117,12 @@ do_test (size_t align, int c, size_t len)
if (align + len > page_size)
return;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd, c %2d:", len, align, c);
+ printf ("Length %4zd, alignment %2zd, c %2d:", len, align, c);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, (char *) buf1 + align, c, len);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-rawmemchr-ifunc.c b/benchtests/bench-rawmemchr-ifunc.c
deleted file mode 100644
index b1e86f1f2f..0000000000
--- a/benchtests/bench-rawmemchr-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of rawmemchr function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-rawmemchr.c"
diff --git a/benchtests/bench-rawmemchr.c b/benchtests/bench-rawmemchr.c
index a6b29d7ae3..df6a310e2b 100644
--- a/benchtests/bench-rawmemchr.c
+++ b/benchtests/bench-rawmemchr.c
@@ -40,6 +40,8 @@ simple_rawmemchr (const char *s, int c)
static void
do_one_test (impl_t *impl, const char *s, int c, char *exp_res)
{
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
char *res = CALL (impl, s, c);
if (res != exp_res)
{
@@ -49,23 +51,16 @@ do_one_test (impl_t *impl, const char *s, int c, char *exp_res)
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s, c);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s, c);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -92,14 +87,12 @@ do_test (size_t align, size_t pos, size_t len, int seek_char)
buf1[align + len] = -seek_char;
result = (char *) (buf1 + align + pos);
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd:", pos, align);
+ printf ("Length %4zd, alignment %2zd:", pos, align);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, (char *) (buf1 + align), seek_char, result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-skeleton.c b/benchtests/bench-skeleton.c
index 4e3a50704d..05edc69c5e 100644
--- a/benchtests/bench-skeleton.c
+++ b/benchtests/bench-skeleton.c
@@ -53,9 +53,11 @@ main (int argc, char **argv)
memset (&runtime, 0, sizeof (runtime));
- unsigned long iters;
+ unsigned long iters, res;
- TIMING_INIT (iters);
+ TIMING_INIT (res);
+
+ iters = 1000 * res;
for (int v = 0; v < NUM_VARIANTS; v++)
{
diff --git a/benchtests/bench-stpcpy-ifunc.c b/benchtests/bench-stpcpy-ifunc.c
deleted file mode 100644
index d36bcb2c06..0000000000
--- a/benchtests/bench-stpcpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of stpcpy function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-stpcpy.c"
diff --git a/benchtests/bench-stpcpy_chk-ifunc.c b/benchtests/bench-stpcpy_chk-ifunc.c
deleted file mode 100644
index 3449615bfe..0000000000
--- a/benchtests/bench-stpcpy_chk-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of stpcpy checking function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-stpcpy_chk.c"
diff --git a/benchtests/bench-strcasecmp-ifunc.c b/benchtests/bench-strcasecmp-ifunc.c
deleted file mode 100644
index bdeb8c5808..0000000000
--- a/benchtests/bench-strcasecmp-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strcasecmp function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strcasecmp.c"
diff --git a/benchtests/bench-strcasecmp.c b/benchtests/bench-strcasecmp.c
index 27250bb447..1458df1e94 100644
--- a/benchtests/bench-strcasecmp.c
+++ b/benchtests/bench-strcasecmp.c
@@ -62,6 +62,8 @@ stupid_strcasecmp (const char *s1, const char *s2)
static void
do_one_test (impl_t *impl, const char *s1, const char *s2, int exp_result)
{
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
int result = CALL (impl, s1, s2);
if ((exp_result == 0 && result != 0)
|| (exp_result < 0 && result >= 0)
@@ -73,23 +75,16 @@ do_one_test (impl_t *impl, const char *s1, const char *s2, int exp_result)
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s1, s2);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s1, s2);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -128,14 +123,12 @@ do_test (size_t align1, size_t align2, size_t len, int max_char,
else
s2[len - 1] -= exp_result;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
+ printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s1, s2, exp_result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strcasestr-ifunc.c b/benchtests/bench-strcasestr-ifunc.c
deleted file mode 100644
index 645f5041f9..0000000000
--- a/benchtests/bench-strcasestr-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strcasestr function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strcasestr.c"
diff --git a/benchtests/bench-strcasestr.c b/benchtests/bench-strcasestr.c
index 289b490746..68b7e95ad5 100644
--- a/benchtests/bench-strcasestr.c
+++ b/benchtests/bench-strcasestr.c
@@ -60,23 +60,19 @@ IMPL (strcasestr, 1)
static void
do_one_test (impl_t *impl, const char *s1, const char *s2, char *exp_result)
{
- if (HP_TIMING_AVAIL)
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~(hp_timing_t) 0;
- size_t i;
+ CALL (impl, s1, s2);
+ }
+ TIMING_NOW (stop);
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s1, s2);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
+ TIMING_DIFF (cur, start, stop);
- printf ("\t%zd", (size_t) best_time);
- }
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
@@ -116,15 +112,13 @@ do_test (size_t align1, size_t align2, size_t len1, size_t len2,
}
s1[len1] = '\0';
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd/%zd, alignment %2zd/%2zd, %s:",
- len1, len2, align1, align2, fail ? "fail" : "found");
+ printf ("Length %4zd/%zd, alignment %2zd/%2zd, %s:",
+ len1, len2, align1, align2, fail ? "fail" : "found");
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s1, s2, fail ? NULL : s1 + len1 - len2);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
static int
diff --git a/benchtests/bench-strcat-ifunc.c b/benchtests/bench-strcat-ifunc.c
deleted file mode 100644
index 003dc38568..0000000000
--- a/benchtests/bench-strcat-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strcat function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strcat.c"
diff --git a/benchtests/bench-strcat.c b/benchtests/bench-strcat.c
index b70a272109..6602009eb1 100644
--- a/benchtests/bench-strcat.c
+++ b/benchtests/bench-strcat.c
@@ -39,7 +39,9 @@ simple_strcat (char *dst, const char *src)
static void
do_one_test (impl_t *impl, char *dst, const char *src)
{
- size_t k = strlen (dst);
+ size_t k = strlen (dst), i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (CALL (impl, dst, src) != dst)
{
error (0, 0, "Wrong result in function %s %p %p", impl->name,
@@ -56,24 +58,17 @@ do_one_test (impl_t *impl, char *dst, const char *src)
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- dst[k] = '\0';
- HP_TIMING_NOW (start);
- CALL (impl, dst, src);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ dst[k] = '\0';
+ CALL (impl, dst, src);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -100,8 +95,7 @@ do_test (size_t align1, size_t align2, size_t len1, size_t len2, int max_char)
for (i = 0; i < len2; i++)
s2[i] = 32 + 23 * i % (max_char - 32);
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd/%4zd, alignment %2zd/%2zd:", len1, len2, align1, align2);
+ printf ("Length %4zd/%4zd, alignment %2zd/%2zd:", len1, len2, align1, align2);
FOR_EACH_IMPL (impl, 0)
{
@@ -109,8 +103,7 @@ do_test (size_t align1, size_t align2, size_t len1, size_t len2, int max_char)
do_one_test (impl, s2, s1);
}
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strchr-ifunc.c b/benchtests/bench-strchr-ifunc.c
deleted file mode 100644
index 0ef13987d6..0000000000
--- a/benchtests/bench-strchr-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strchr function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strchr.c"
diff --git a/benchtests/bench-strchr.c b/benchtests/bench-strchr.c
index 710b59203d..d432ba53b8 100644
--- a/benchtests/bench-strchr.c
+++ b/benchtests/bench-strchr.c
@@ -89,23 +89,19 @@ IMPL (STRCHR, 1)
static void
do_one_test (impl_t *impl, const CHAR *s, int c, const CHAR *exp_res)
{
- if (HP_TIMING_AVAIL)
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s, c);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s, c);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -141,15 +137,13 @@ do_test (size_t align, size_t pos, size_t len, int seek_char, int max_char)
else
result = NULLRET (buf + align + len);
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment in bytes %2zd:",
- pos, align * sizeof (CHAR));
+ printf ("Length %4zd, alignment in bytes %2zd:",
+ pos, align * sizeof (CHAR));
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, buf + align, seek_char, result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strchrnul-ifunc.c b/benchtests/bench-strchrnul-ifunc.c
deleted file mode 100644
index 35c7cb1531..0000000000
--- a/benchtests/bench-strchrnul-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strchrnul function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strchrnul.c"
diff --git a/benchtests/bench-strcmp-ifunc.c b/benchtests/bench-strcmp-ifunc.c
deleted file mode 100644
index 01a80958d3..0000000000
--- a/benchtests/bench-strcmp-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strcmp function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strcmp.c"
diff --git a/benchtests/bench-strcmp.c b/benchtests/bench-strcmp.c
index 63a3cd4999..c1e0b263a3 100644
--- a/benchtests/bench-strcmp.c
+++ b/benchtests/bench-strcmp.c
@@ -138,23 +138,19 @@ do_one_test (impl_t *impl,
const CHAR *s1, const CHAR *s2,
int exp_result)
{
- if (HP_TIMING_AVAIL)
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s1, s2);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s1, s2);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -190,14 +186,12 @@ do_test (size_t align1, size_t align2, size_t len, int max_char,
s2[len + 1] = 24 + exp_result;
s2[len - 1] -= exp_result;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
+ printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s1, s2, exp_result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strcpy-ifunc.c b/benchtests/bench-strcpy-ifunc.c
deleted file mode 100644
index d27a4f92db..0000000000
--- a/benchtests/bench-strcpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strcpy function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strcpy.c"
diff --git a/benchtests/bench-strcpy.c b/benchtests/bench-strcpy.c
index 4e024d406f..88db83b886 100644
--- a/benchtests/bench-strcpy.c
+++ b/benchtests/bench-strcpy.c
@@ -74,6 +74,9 @@ static void
do_one_test (impl_t *impl, CHAR *dst, const CHAR *src,
size_t len __attribute__((unused)))
{
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (CALL (impl, dst, src) != STRCPY_RESULT (dst, len))
{
error (0, 0, "Wrong result in function %s %p %p", impl->name,
@@ -91,23 +94,16 @@ do_one_test (impl_t *impl, CHAR *dst, const CHAR *src,
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));;
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
CALL (impl, dst, src);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -133,14 +129,12 @@ do_test (size_t align1, size_t align2, size_t len, int max_char)
s1[i] = 32 + 23 * i % (max_char - 32);
s1[len] = 0;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignments in bytes %2zd/%2zd:", len, align1 * sizeof(CHAR), align2 * sizeof(CHAR));
+ printf ("Length %4zd, alignments in bytes %2zd/%2zd:", len, align1 * sizeof(CHAR), align2 * sizeof(CHAR));
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s2, s1, len);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strcpy_chk-ifunc.c b/benchtests/bench-strcpy_chk-ifunc.c
deleted file mode 100644
index 2dd2aa318d..0000000000
--- a/benchtests/bench-strcpy_chk-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strcpy checking function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strcpy_chk.c"
diff --git a/benchtests/bench-strcpy_chk.c b/benchtests/bench-strcpy_chk.c
index 29e57285b0..3c2a0b3fb2 100644
--- a/benchtests/bench-strcpy_chk.c
+++ b/benchtests/bench-strcpy_chk.c
@@ -75,6 +75,9 @@ do_one_test (impl_t *impl, char *dst, const char *src,
size_t len, size_t dlen)
{
char *res;
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (dlen <= len)
{
if (impl->test == 1)
@@ -110,23 +113,16 @@ do_one_test (impl_t *impl, char *dst, const char *src,
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));;
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
+ CALL (impl, dst, src, dlen);
+ }
+ TIMING_NOW (stop);
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, dst, src, dlen);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
+ TIMING_DIFF (cur, start, stop);
- printf ("\t%zd", (size_t) best_time);
- }
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -150,13 +146,13 @@ do_test (size_t align1, size_t align2, size_t len, size_t dlen, int max_char)
s1[i] = 32 + 23 * i % (max_char - 32);
s1[len] = 0;
- if (HP_TIMING_AVAIL && dlen > len)
+ if (dlen > len)
printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s2, s1, len, dlen);
- if (HP_TIMING_AVAIL && dlen > len)
+ if (dlen > len)
putchar ('\n');
}
diff --git a/benchtests/bench-strcspn-ifunc.c b/benchtests/bench-strcspn-ifunc.c
deleted file mode 100644
index e257c9b4e3..0000000000
--- a/benchtests/bench-strcspn-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strcspn function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strcspn.c"
diff --git a/benchtests/bench-string.h b/benchtests/bench-string.h
index 2fe8d9fae4..46b4138d36 100644
--- a/benchtests/bench-string.h
+++ b/benchtests/bench-string.h
@@ -17,6 +17,7 @@
<http://www.gnu.org/licenses/>. */
#include <sys/cdefs.h>
+#define TEST_IFUNC 1
typedef struct
{
@@ -52,7 +53,7 @@ extern impl_t __start_impls[], __stop_impls[];
# include <ifunc-impl-list.h>
# define GL(x) _##x
# define GLRO(x) _##x
-# include <hp-timing.h>
+# include "bench-timing.h"
# define TEST_FUNCTION test_main ()
@@ -61,6 +62,8 @@ extern impl_t __start_impls[], __stop_impls[];
# define OPT_RANDOM 10001
# define OPT_SEED 10002
+# define INNER_LOOP_ITERS 64
+
unsigned char *buf1, *buf2;
int ret, do_srandom;
unsigned int seed;
@@ -158,16 +161,6 @@ static impl_t *impl_array;
if (!notall || impl->test)
# endif /* ! (defined TEST_IFUNC && defined TEST_NAME) */
-# define HP_TIMING_BEST(best_time, start, end) \
- do \
- { \
- hp_timing_t tmptime; \
- HP_TIMING_DIFF (tmptime, start + _dl_hp_timing_overhead, end); \
- if (best_time > tmptime) \
- best_time = tmptime; \
- } \
- while (0)
-
# ifndef BUF1PAGES
# define BUF1PAGES 1
# endif
@@ -198,7 +191,6 @@ test_init (void)
error (EXIT_FAILURE, errno, "mmap failed");
if (mprotect (buf2 + page_size, page_size, PROT_NONE))
error (EXIT_FAILURE, errno, "mprotect failed");
- HP_TIMING_DIFF_INIT ();
if (do_srandom)
{
printf ("Setting seed to 0x%x\n", seed);
diff --git a/benchtests/bench-strlen-ifunc.c b/benchtests/bench-strlen-ifunc.c
deleted file mode 100644
index fcd45929f6..0000000000
--- a/benchtests/bench-strlen-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strlen function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strlen.c"
diff --git a/benchtests/bench-strlen.c b/benchtests/bench-strlen.c
index 63b1e9368b..44c9c2b4a6 100644
--- a/benchtests/bench-strlen.c
+++ b/benchtests/bench-strlen.c
@@ -62,7 +62,9 @@ IMPL (STRLEN, 1)
static void
do_one_test (impl_t *impl, const CHAR *s, size_t exp_len)
{
- size_t len = CALL (impl, s);
+ size_t len = CALL (impl, s), i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (len != exp_len)
{
error (0, 0, "Wrong result in function %s %zd %zd", impl->name,
@@ -71,23 +73,16 @@ do_one_test (impl_t *impl, const CHAR *s, size_t exp_len)
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -105,14 +100,12 @@ do_test (size_t align, size_t len)
buf[align + i] = 1 + 11111 * i % MAX_CHAR;
buf[align + len] = 0;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd:", len, align);
+ printf ("Length %4zd, alignment %2zd:", len, align);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, (CHAR *) (buf + align), len);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strncasecmp-ifunc.c b/benchtests/bench-strncasecmp-ifunc.c
deleted file mode 100644
index df796e265e..0000000000
--- a/benchtests/bench-strncasecmp-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strncasecmp function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strncasecmp.c"
diff --git a/benchtests/bench-strncasecmp.c b/benchtests/bench-strncasecmp.c
index 5fa9220cb0..9badd051b1 100644
--- a/benchtests/bench-strncasecmp.c
+++ b/benchtests/bench-strncasecmp.c
@@ -73,23 +73,19 @@ static void
do_one_test (impl_t *impl, const char *s1, const char *s2, size_t n,
int exp_result)
{
- if (HP_TIMING_AVAIL)
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s1, s2, n);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s1, s2, n);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -128,14 +124,12 @@ do_test (size_t align1, size_t align2, size_t n, size_t len, int max_char,
else
s2[len - 1] -= exp_result;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
+ printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s1, s2, n, exp_result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strncat-ifunc.c b/benchtests/bench-strncat-ifunc.c
deleted file mode 100644
index adcfd22fb7..0000000000
--- a/benchtests/bench-strncat-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strncat function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strncat.c"
diff --git a/benchtests/bench-strncat.c b/benchtests/bench-strncat.c
index 904daa7b7e..2a17817590 100644
--- a/benchtests/bench-strncat.c
+++ b/benchtests/bench-strncat.c
@@ -43,7 +43,9 @@ stupid_strncat (char *dst, const char *src, size_t n)
static void
do_one_test (impl_t *impl, char *dst, const char *src, size_t n)
{
- size_t k = strlen (dst);
+ size_t k = strlen (dst), i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (CALL (impl, dst, src, n) != dst)
{
error (0, 0, "Wrong result in function %s %p != %p", impl->name,
@@ -67,24 +69,18 @@ do_one_test (impl_t *impl, char *dst, const char *src, size_t n)
ret = 1;
return;
}
- if (HP_TIMING_AVAIL)
+
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
+ dst[k] = '\0';
+ CALL (impl, dst, src, n);
+ }
+ TIMING_NOW (stop);
- for (i = 0; i < 32; ++i)
- {
- dst[k] = '\0';
- HP_TIMING_NOW (start);
- CALL (impl, dst, src, n);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
+ TIMING_DIFF (cur, start, stop);
- printf ("\t%zd", (size_t) best_time);
- }
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -114,9 +110,8 @@ do_test (size_t align1, size_t align2, size_t len1, size_t len2,
for (i = 0; i < len2; i++)
s2[i] = 32 + 23 * i % (max_char - 32);
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd/%4zd, alignment %2zd/%2zd, N %4zd:",
- len1, len2, align1, align2, n);
+ printf ("Length %4zd/%4zd, alignment %2zd/%2zd, N %4zd:",
+ len1, len2, align1, align2, n);
FOR_EACH_IMPL (impl, 0)
{
@@ -124,8 +119,7 @@ do_test (size_t align1, size_t align2, size_t len1, size_t len2,
do_one_test (impl, s2, s1, n);
}
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strncmp-ifunc.c b/benchtests/bench-strncmp-ifunc.c
deleted file mode 100644
index 1cae32b528..0000000000
--- a/benchtests/bench-strncmp-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strncmp function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strncmp.c"
diff --git a/benchtests/bench-strncmp.c b/benchtests/bench-strncmp.c
index b3af0f98e3..25df3dbc2e 100644
--- a/benchtests/bench-strncmp.c
+++ b/benchtests/bench-strncmp.c
@@ -54,23 +54,19 @@ static void
do_one_test (impl_t *impl, const char *s1, const char *s2, size_t n,
int exp_result)
{
- if (HP_TIMING_AVAIL)
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s1, s2, n);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s1, s2, n);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -84,14 +80,12 @@ do_test_limit (size_t align1, size_t align2, size_t len, size_t n, int max_char,
{
s1 = (char*)(buf1 + page_size);
s2 = (char*)(buf2 + page_size);
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd/%4zd:", len, n);
+ printf ("Length %4zd/%4zd:", len, n);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s1, s2, n, 0);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
return;
}
@@ -122,14 +116,12 @@ do_test_limit (size_t align1, size_t align2, size_t len, size_t n, int max_char,
s1[len] = 64;
}
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd/%4zd, alignment %2zd/%2zd:", len, n, align1, align2);
+ printf ("Length %4zd/%4zd, alignment %2zd/%2zd:", len, n, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s1, s2, n, exp_result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
static void
@@ -167,14 +159,12 @@ do_test (size_t align1, size_t align2, size_t len, size_t n, int max_char,
if (len >= n)
s2[n - 1] -= exp_result;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd/%4zd, alignment %2zd/%2zd:", len, n, align1, align2);
+ printf ("Length %4zd/%4zd, alignment %2zd/%2zd:", len, n, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, (char*)s1, (char*)s2, n, exp_result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strncpy-ifunc.c b/benchtests/bench-strncpy-ifunc.c
deleted file mode 100644
index d4eebe6234..0000000000
--- a/benchtests/bench-strncpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strncpy function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strncpy.c"
diff --git a/benchtests/bench-strncpy.c b/benchtests/bench-strncpy.c
index 4065c0aae4..645925bff2 100644
--- a/benchtests/bench-strncpy.c
+++ b/benchtests/bench-strncpy.c
@@ -62,6 +62,9 @@ typedef char *(*proto_t) (char *, const char *, size_t);
static void
do_one_test (impl_t *impl, char *dst, const char *src, size_t len, size_t n)
{
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (CALL (impl, dst, src, n) != STRNCPY_RESULT (dst, len, n))
{
error (0, 0, "Wrong result in function %s %p %p", impl->name,
@@ -90,23 +93,16 @@ do_one_test (impl_t *impl, char *dst, const char *src, size_t len, size_t n)
}
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute__ ((unused));
- hp_timing_t stop __attribute__ ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
+ CALL (impl, dst, src, n);
+ }
+ TIMING_NOW (stop);
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, dst, src, n);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
+ TIMING_DIFF (cur, start, stop);
- printf ("\t%zd", (size_t) best_time);
- }
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -132,14 +128,12 @@ do_test (size_t align1, size_t align2, size_t len, size_t n, int max_char)
for (i = len + 1; i + align1 < page_size && i < len + 64; ++i)
s1[i] = 32 + 32 * i % (max_char - 32);
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, n %4zd, alignment %2zd/%2zd:", len, n, align1, align2);
+ printf ("Length %4zd, n %4zd, alignment %2zd/%2zd:", len, n, align1, align2);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s2, s1, len, n);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strnlen-ifunc.c b/benchtests/bench-strnlen-ifunc.c
deleted file mode 100644
index 05563aa05a..0000000000
--- a/benchtests/bench-strnlen-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strnlen function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strnlen.c"
diff --git a/benchtests/bench-strnlen.c b/benchtests/bench-strnlen.c
index 4233f279ba..793f9bea58 100644
--- a/benchtests/bench-strnlen.c
+++ b/benchtests/bench-strnlen.c
@@ -38,7 +38,9 @@ simple_strnlen (const char *s, size_t maxlen)
static void
do_one_test (impl_t *impl, const char *s, size_t maxlen, size_t exp_len)
{
- size_t len = CALL (impl, s, maxlen);
+ size_t len = CALL (impl, s, maxlen), i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (len != exp_len)
{
error (0, 0, "Wrong result in function %s %zd %zd", impl->name,
@@ -47,23 +49,16 @@ do_one_test (impl_t *impl, const char *s, size_t maxlen, size_t exp_len)
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s, maxlen);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s, maxlen);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -79,14 +74,12 @@ do_test (size_t align, size_t len, size_t maxlen, int max_char)
buf1[align + i] = 1 + 7 * i % max_char;
buf1[align + len] = 0;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd:", len, align);
+ printf ("Length %4zd, alignment %2zd:", len, align);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, (char *) (buf1 + align), maxlen, MIN (len, maxlen));
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strpbrk-ifunc.c b/benchtests/bench-strpbrk-ifunc.c
deleted file mode 100644
index 38f9881706..0000000000
--- a/benchtests/bench-strpbrk-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strpbrk function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strpbrk.c"
diff --git a/benchtests/bench-strpbrk.c b/benchtests/bench-strpbrk.c
index 0163de89bc..fe966be1ca 100644
--- a/benchtests/bench-strpbrk.c
+++ b/benchtests/bench-strpbrk.c
@@ -62,6 +62,9 @@ static void
do_one_test (impl_t *impl, const char *s, const char *rej, RES_TYPE exp_res)
{
RES_TYPE res = CALL (impl, s, rej);
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (res != exp_res)
{
error (0, 0, "Wrong result in function %s %p %p", impl->name,
@@ -70,23 +73,16 @@ do_one_test (impl_t *impl, const char *s, const char *rej, RES_TYPE exp_res)
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
+ CALL (impl, s, rej);
+ }
+ TIMING_NOW (stop);
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s, rej);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
+ TIMING_DIFF (cur, start, stop);
- printf ("\t%zd", (size_t) best_time);
- }
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -136,14 +132,12 @@ do_test (size_t align, size_t pos, size_t len)
}
result = STRPBRK_RESULT (s, pos);
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd, rej len %2zd:", pos, align, len);
+ printf ("Length %4zd, alignment %2zd, rej len %2zd:", pos, align, len);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s, rej, result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strrchr-ifunc.c b/benchtests/bench-strrchr-ifunc.c
deleted file mode 100644
index 06283cd528..0000000000
--- a/benchtests/bench-strrchr-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strrchr function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strrchr.c"
diff --git a/benchtests/bench-strrchr.c b/benchtests/bench-strrchr.c
index 400ac80e2c..6a7aa84296 100644
--- a/benchtests/bench-strrchr.c
+++ b/benchtests/bench-strrchr.c
@@ -63,6 +63,9 @@ static void
do_one_test (impl_t *impl, const CHAR *s, int c, CHAR *exp_res)
{
CHAR *res = CALL (impl, s, c);
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (res != exp_res)
{
error (0, 0, "Wrong result in function %s %p %p", impl->name,
@@ -71,23 +74,16 @@ do_one_test (impl_t *impl, const CHAR *s, int c, CHAR *exp_res)
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s, c);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s, c);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -126,14 +122,12 @@ do_test (size_t align, size_t pos, size_t len, int seek_char, int max_char)
else
result = NULL;
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment in bytes %2zd:", pos, align * sizeof(CHAR));
+ printf ("Length %4zd, alignment in bytes %2zd:", pos, align * sizeof(CHAR));
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, (CHAR *) (buf + align), seek_char, result);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strsep.c b/benchtests/bench-strsep.c
new file mode 100644
index 0000000000..59dbe04555
--- /dev/null
+++ b/benchtests/bench-strsep.c
@@ -0,0 +1,174 @@
+/* Measure strsep functions.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define TEST_MAIN
+#define TEST_NAME "strsep"
+#include "bench-string.h"
+
+char *
+simple_strsep (char **s1, char *s2)
+{
+ char *begin;
+ char *s;
+ size_t j = 0;
+
+ begin = *s1;
+ s = begin;
+ if (begin == NULL)
+ return NULL;
+ ssize_t s2len = strlen (s2);
+ while (*s)
+ {
+ for (j = 0; j < s2len; j++)
+ {
+ if (*s == s2[j])
+ {
+ s[0] = '\0';
+ *s1 = s + 1;
+ return begin;
+ }
+ }
+ s++;
+ }
+ *s1 = NULL;
+ return begin;
+}
+
+typedef char *(*proto_t) (const char **, const char *);
+
+IMPL (simple_strsep, 0)
+IMPL (strsep, 1)
+
+static void
+do_one_test (impl_t * impl, const char *s1, const char *s2)
+{
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
+ {
+ CALL (impl, &s1, s2);
+ }
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
+}
+
+static void
+do_test (size_t align1, size_t align2, size_t len1, size_t len2, int fail)
+{
+ char *s2 = (char *) (buf2 + align2);
+ static const char d[] = "1234567890abcdef";
+#define dl (sizeof (d) - 1)
+ char *ss2 = s2;
+ for (size_t l = len2; l > 0; l = l > dl ? l - dl : 0)
+ {
+ size_t t = l > dl ? dl : l;
+ ss2 = mempcpy (ss2, d, t);
+ }
+ s2[len2] = '\0';
+
+ printf ("Length %4zd/%zd, alignment %2zd/%2zd, %s:",
+ len1, len2, align1, align2, fail ? "fail" : "found");
+
+ FOR_EACH_IMPL (impl, 0)
+ {
+ char *s1 = (char *) (buf1 + align1);
+ if (fail)
+ {
+ char *ss1 = s1;
+ for (size_t l = len1; l > 0; l = l > dl ? l - dl : 0)
+ {
+ size_t t = l > dl ? dl : l;
+ memcpy (ss1, d, t);
+ ++ss1[len2 > 7 ? 7 : len2 - 1];
+ ss1 += t;
+ }
+ }
+ else
+ {
+ memset (s1, '0', len1);
+ memcpy (s1 + (len1 - len2) - 2, s2, len2);
+ if ((len1 / len2) > 4)
+ memcpy (s1 + (len1 - len2) - (3 * len2), s2, len2);
+ }
+ s1[len1] = '\0';
+ do_one_test (impl, s1, s2);
+ }
+ putchar ('\n');
+}
+
+static int
+test_main (void)
+{
+ test_init ();
+
+ printf ("%23s", "");
+ FOR_EACH_IMPL (impl, 0)
+ printf ("\t%s", impl->name);
+ putchar ('\n');
+
+ for (size_t klen = 2; klen < 32; ++klen)
+ for (size_t hlen = 2 * klen; hlen < 16 * klen; hlen += klen)
+ {
+ do_test (0, 0, hlen, klen, 0);
+ do_test (0, 0, hlen, klen, 1);
+ do_test (0, 3, hlen, klen, 0);
+ do_test (0, 3, hlen, klen, 1);
+ do_test (0, 9, hlen, klen, 0);
+ do_test (0, 9, hlen, klen, 1);
+ do_test (0, 15, hlen, klen, 0);
+ do_test (0, 15, hlen, klen, 1);
+
+ do_test (3, 0, hlen, klen, 0);
+ do_test (3, 0, hlen, klen, 1);
+ do_test (3, 3, hlen, klen, 0);
+ do_test (3, 3, hlen, klen, 1);
+ do_test (3, 9, hlen, klen, 0);
+ do_test (3, 9, hlen, klen, 1);
+ do_test (3, 15, hlen, klen, 0);
+ do_test (3, 15, hlen, klen, 1);
+
+ do_test (9, 0, hlen, klen, 0);
+ do_test (9, 0, hlen, klen, 1);
+ do_test (9, 3, hlen, klen, 0);
+ do_test (9, 3, hlen, klen, 1);
+ do_test (9, 9, hlen, klen, 0);
+ do_test (9, 9, hlen, klen, 1);
+ do_test (9, 15, hlen, klen, 0);
+ do_test (9, 15, hlen, klen, 1);
+
+ do_test (15, 0, hlen, klen, 0);
+ do_test (15, 0, hlen, klen, 1);
+ do_test (15, 3, hlen, klen, 0);
+ do_test (15, 3, hlen, klen, 1);
+ do_test (15, 9, hlen, klen, 0);
+ do_test (15, 9, hlen, klen, 1);
+ do_test (15, 15, hlen, klen, 0);
+ do_test (15, 15, hlen, klen, 1);
+ }
+ do_test (0, 0, page_size - 1, 16, 0);
+ do_test (0, 0, page_size - 1, 16, 1);
+
+ return ret;
+}
+
+#include "../test-skeleton.c"
diff --git a/benchtests/bench-strspn-ifunc.c b/benchtests/bench-strspn-ifunc.c
deleted file mode 100644
index 4040c2fb20..0000000000
--- a/benchtests/bench-strspn-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strspn function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strspn.c"
diff --git a/benchtests/bench-strspn.c b/benchtests/bench-strspn.c
index 7cf26f4709..634bca193f 100644
--- a/benchtests/bench-strspn.c
+++ b/benchtests/bench-strspn.c
@@ -65,7 +65,9 @@ stupid_strspn (const char *s, const char *acc)
static void
do_one_test (impl_t *impl, const char *s, const char *acc, size_t exp_res)
{
- size_t res = CALL (impl, s, acc);
+ size_t res = CALL (impl, s, acc), i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
if (res != exp_res)
{
error (0, 0, "Wrong result in function %s %p %p", impl->name,
@@ -74,23 +76,16 @@ do_one_test (impl_t *impl, const char *s, const char *acc, size_t exp_res)
return;
}
- if (HP_TIMING_AVAIL)
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~ (hp_timing_t) 0;
- size_t i;
-
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s, acc);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
-
- printf ("\t%zd", (size_t) best_time);
+ CALL (impl, s, acc);
}
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
static void
@@ -128,14 +123,12 @@ do_test (size_t align, size_t pos, size_t len)
s[i] = '\0';
}
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd, alignment %2zd, acc len %2zd:", pos, align, len);
+ printf ("Length %4zd, alignment %2zd, acc len %2zd:", pos, align, len);
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s, acc, pos);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
int
diff --git a/benchtests/bench-strstr-ifunc.c b/benchtests/bench-strstr-ifunc.c
deleted file mode 100644
index b187ca5037..0000000000
--- a/benchtests/bench-strstr-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Measure IFUNC implementations of strstr function.
- Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "bench-strstr.c"
diff --git a/benchtests/bench-strstr.c b/benchtests/bench-strstr.c
index 91a8dfed6a..528a5c0082 100644
--- a/benchtests/bench-strstr.c
+++ b/benchtests/bench-strstr.c
@@ -58,23 +58,19 @@ IMPL (strstr, 1)
static void
do_one_test (impl_t *impl, const char *s1, const char *s2, char *exp_result)
{
- if (HP_TIMING_AVAIL)
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
{
- hp_timing_t start __attribute ((unused));
- hp_timing_t stop __attribute ((unused));
- hp_timing_t best_time = ~(hp_timing_t) 0;
- size_t i;
+ CALL (impl, s1, s2);
+ }
+ TIMING_NOW (stop);
- for (i = 0; i < 32; ++i)
- {
- HP_TIMING_NOW (start);
- CALL (impl, s1, s2);
- HP_TIMING_NOW (stop);
- HP_TIMING_BEST (best_time, start, stop);
- }
+ TIMING_DIFF (cur, start, stop);
- printf ("\t%zd", (size_t) best_time);
- }
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
}
@@ -113,15 +109,13 @@ do_test (size_t align1, size_t align2, size_t len1, size_t len2,
}
s1[len1] = '\0';
- if (HP_TIMING_AVAIL)
- printf ("Length %4zd/%zd, alignment %2zd/%2zd, %s:",
- len1, len2, align1, align2, fail ? "fail" : "found");
+ printf ("Length %4zd/%zd, alignment %2zd/%2zd, %s:",
+ len1, len2, align1, align2, fail ? "fail" : "found");
FOR_EACH_IMPL (impl, 0)
do_one_test (impl, s1, s2, fail ? NULL : s1 + len1 - len2);
- if (HP_TIMING_AVAIL)
- putchar ('\n');
+ putchar ('\n');
}
static int
diff --git a/benchtests/bench-strtod.c b/benchtests/bench-strtod.c
new file mode 100644
index 0000000000..3a8a65fadf
--- /dev/null
+++ b/benchtests/bench-strtod.c
@@ -0,0 +1,117 @@
+/* Measure strtod implementation.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define TEST_MAIN
+#define TEST_NAME "strtod"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include "bench-timing.h"
+
+#undef INNER_LOOP_ITERS
+#define INNER_LOOP_ITERS 65536
+
+static const char *inputs[] =
+{
+ "1e308",
+ "100000000e300",
+ "0x1p1023",
+ "0x1000p1011",
+ "0x1p1020",
+ "0x0.00001p1040" "1e-307",
+ "0.000001e-301",
+ "0.0000001e-300",
+ "0.00000001e-299",
+ "1000000e-313",
+ "10000000e-314",
+ "100000000e-315",
+ "0x1p-1021",
+ "0x1000p-1033",
+ "0x10000p-1037",
+ "0x0.001p-1009",
+ "0x0.0001p-1005",
+ "12.345",
+ "12.345e19",
+ "-.1e+9",
+ ".125",
+ "1e20",
+ "0e-19",
+ "4\00012",
+ "5.9e-76",
+ "0x1.4p+3",
+ "0xAp0",
+ "0x0Ap0",
+ "0x0A",
+ "0xA0",
+ "0x0.A0p8",
+ "0x0.50p9",
+ "0x0.28p10",
+ "0x0.14p11",
+ "0x0.0A0p12",
+ "0x0.050p13",
+ "0x0.028p14",
+ "0x0.014p15",
+ "0x00.00A0p16",
+ "0x00.0050p17",
+ "0x00.0028p18",
+ "0x00.0014p19",
+ "0x1p-1023",
+ "0x0.8p-1022",
+ "Inf",
+ "-Inf",
+ "+InFiNiTy",
+ "0x80000Ap-23",
+ "1e-324",
+ "0x100000000000008p0",
+ "0x100000000000008.p0",
+ "0x100000000000008.00p0",
+ "0x10000000000000800p0",
+ "0x10000000000000801p0",
+ NULL
+};
+
+int
+do_bench (void)
+{
+ const size_t iters = INNER_LOOP_ITERS;
+ timing_t res __attribute__ ((unused));
+
+ TIMING_INIT (res);
+
+ for (size_t i = 0; inputs[i] != NULL; ++i)
+ {
+ char *ep;
+ timing_t start, stop, cur;
+
+ printf ("Input %-24s:", inputs[i]);
+ TIMING_NOW (start);
+ for (size_t j = 0; j < iters; ++j)
+ strtod (inputs[i], &ep);
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
+ putchar ('\n');
+ }
+
+ return 0;
+}
+
+#define TEST_FUNCTION do_bench ()
+
+#include "../test-skeleton.c"
diff --git a/benchtests/bench-strtok.c b/benchtests/bench-strtok.c
new file mode 100644
index 0000000000..c76d0e3e67
--- /dev/null
+++ b/benchtests/bench-strtok.c
@@ -0,0 +1,205 @@
+/* Measure strtok functions.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define TEST_MAIN
+#define TEST_NAME "strtok"
+#include "bench-string.h"
+
+char *
+simple_strtok (char *s1, char *s2)
+{
+ static char *saveptr;
+ char *token;
+ ssize_t i = 0, j = 0;
+ int found = 0;
+ size_t s2len = strlen (s2);
+
+ if (s1 == NULL)
+ s1 = saveptr;
+ if (s1 == NULL || *s1 == '\0')
+ return NULL;
+
+ while (!found)
+ {
+ if (s1[i] == '\0')
+ {
+ saveptr = NULL;
+ return NULL;
+ }
+ for (j = 0; j < s2len; j++)
+ {
+ if (s1[i] == s2[j])
+ {
+ i++;
+ found = 0;
+ break;
+ }
+ found = 1;
+ }
+ }
+ token = s1 + i;
+ i++;
+ found = 0;
+ while (!found)
+ {
+ if (s1[i] == '\0')
+ {
+ saveptr = NULL;
+ return token;
+ }
+ for (j = 0; j < s2len; j++)
+ {
+ if (s1[i] == s2[j])
+ {
+ found = 1;
+ break;
+ }
+ }
+ i++;
+ }
+ s1[i - 1] = '\0';
+ saveptr = s1 + i;
+ return token;
+}
+
+typedef char *(*proto_t) (const char *, const char *);
+
+IMPL (simple_strtok, 0)
+IMPL (strtok, 1)
+
+static void
+do_one_test (impl_t * impl, const char *s1, const char *s2)
+{
+ size_t i, iters = INNER_LOOP_ITERS;
+ timing_t start, stop, cur;
+ TIMING_NOW (start);
+ for (i = 0; i < iters; ++i)
+ {
+ CALL (impl, s1, s2);
+ CALL (impl, NULL, s2);
+ CALL (impl, NULL, s2);
+ }
+ TIMING_NOW (stop);
+
+ TIMING_DIFF (cur, start, stop);
+
+ TIMING_PRINT_MEAN ((double) cur, (double) iters);
+
+}
+
+
+static void
+do_test (size_t align1, size_t align2, size_t len1, size_t len2, int fail)
+{
+ char *s2 = (char *) (buf2 + align2);
+ static const char d[] = "1234567890abcdef";
+#define dl (sizeof (d) - 1)
+ char *ss2 = s2;
+ for (size_t l = len2; l > 0; l = l > dl ? l - dl : 0)
+ {
+ size_t t = l > dl ? dl : l;
+ ss2 = mempcpy (ss2, d, t);
+ }
+ s2[len2] = '\0';
+
+ printf ("Length %4zd/%zd, alignment %2zd/%2zd, %s:",
+ len1, len2, align1, align2, fail ? "fail" : "found");
+
+ FOR_EACH_IMPL (impl, 0)
+ {
+ char *s1 = (char *) (buf1 + align1);
+ if (fail)
+ {
+ char *ss1 = s1;
+ for (size_t l = len1; l > 0; l = l > dl ? l - dl : 0)
+ {
+ size_t t = l > dl ? dl : l;
+ memcpy (ss1, d, t);
+ ++ss1[len2 > 7 ? 7 : len2 - 1];
+ ss1 += t;
+ }
+ }
+ else
+ {
+ memset (s1, '0', len1);
+ memcpy (s1 + (len1 - len2) - 2, s2, len2);
+ if ((len1 / len2) > 4)
+ memcpy (s1 + (len1 - len2) - (3 * len2), s2, len2);
+ }
+ s1[len1] = '\0';
+ do_one_test (impl, s1, s2);
+ }
+ putchar ('\n');
+}
+
+static int
+test_main (void)
+{
+ test_init ();
+
+ printf ("%23s", "");
+ FOR_EACH_IMPL (impl, 0)
+ printf ("\t%s", impl->name);
+ putchar ('\n');
+
+ for (size_t klen = 2; klen < 32; ++klen)
+ for (size_t hlen = 2 * klen; hlen < 16 * klen; hlen += klen)
+ {
+ do_test (0, 0, hlen, klen, 0);
+ do_test (0, 0, hlen, klen, 1);
+ do_test (0, 3, hlen, klen, 0);
+ do_test (0, 3, hlen, klen, 1);
+ do_test (0, 9, hlen, klen, 0);
+ do_test (0, 9, hlen, klen, 1);
+ do_test (0, 15, hlen, klen, 0);
+ do_test (0, 15, hlen, klen, 1);
+
+ do_test (3, 0, hlen, klen, 0);
+ do_test (3, 0, hlen, klen, 1);
+ do_test (3, 3, hlen, klen, 0);
+ do_test (3, 3, hlen, klen, 1);
+ do_test (3, 9, hlen, klen, 0);
+ do_test (3, 9, hlen, klen, 1);
+ do_test (3, 15, hlen, klen, 0);
+ do_test (3, 15, hlen, klen, 1);
+
+ do_test (9, 0, hlen, klen, 0);
+ do_test (9, 0, hlen, klen, 1);
+ do_test (9, 3, hlen, klen, 0);
+ do_test (9, 3, hlen, klen, 1);
+ do_test (9, 9, hlen, klen, 0);
+ do_test (9, 9, hlen, klen, 1);
+ do_test (9, 15, hlen, klen, 0);
+ do_test (9, 15, hlen, klen, 1);
+
+ do_test (15, 0, hlen, klen, 0);
+ do_test (15, 0, hlen, klen, 1);
+ do_test (15, 3, hlen, klen, 0);
+ do_test (15, 3, hlen, klen, 1);
+ do_test (15, 9, hlen, klen, 0);
+ do_test (15, 9, hlen, klen, 1);
+ do_test (15, 15, hlen, klen, 0);
+ do_test (15, 15, hlen, klen, 1);
+ }
+ do_test (0, 0, page_size - 1, 16, 0);
+ do_test (0, 0, page_size - 1, 16, 1);
+
+ return ret;
+}
+
+#include "../test-skeleton.c"
diff --git a/benchtests/bench-timing.h b/benchtests/bench-timing.h
index 264d4b8bab..619994f145 100644
--- a/benchtests/bench-timing.h
+++ b/benchtests/bench-timing.h
@@ -25,10 +25,10 @@
hp_timing_t _dl_hp_timing_overhead;
typedef hp_timing_t timing_t;
-# define TIMING_INIT(iters) \
+# define TIMING_INIT(res) \
({ \
HP_TIMING_DIFF_INIT(); \
- (iters) = 1000; \
+ (res) = 1; \
})
# define TIMING_NOW(var) HP_TIMING_NOW (var)
@@ -41,17 +41,17 @@ typedef hp_timing_t timing_t;
(min) / (d_iters), 1e6 * (d_total_i) / (d_total_s));
#else
+
+#include <time.h>
typedef uint64_t timing_t;
-/* Measure 1000 times the resolution of the clock. So for a 1ns
- resolution clock, we measure 1000 iterations of the function call at a
- time. Measurements close to the minimum clock resolution won't make
- much sense, but it's better than having nothing at all. */
-# define TIMING_INIT(iters) \
+/* Measure the resolution of the clock so we can scale the number of
+ benchmark iterations by this value. */
+# define TIMING_INIT(res) \
({ \
struct timespec start; \
clock_getres (CLOCK_PROCESS_CPUTIME_ID, &start); \
- (iters) = 1000 * start.tv_nsec; \
+ (res) = start.tv_nsec; \
})
# define TIMING_NOW(var) \
@@ -70,3 +70,6 @@ typedef uint64_t timing_t;
(min) / (d_iters), 1e9 * (d_total_i) / (d_total_s))
#endif
+
+#define TIMING_PRINT_MEAN(d_total_s, d_iters) \
+ printf ("\t%g", (d_total_s) / (d_iters))
diff --git a/benchtests/cos-inputs b/benchtests/cos-inputs
index 82a40609cd..c7bbaad151 100644
--- a/benchtests/cos-inputs
+++ b/benchtests/cos-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
0x1.000000cf4a2a1p0
0x1.0000010b239a8p0
0x1.00000162a932ap0
diff --git a/benchtests/cosh-inputs b/benchtests/cosh-inputs
index 3c8c546f0c..84a603dc3d 100644
--- a/benchtests/cosh-inputs
+++ b/benchtests/cosh-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
0.1
0.2
0.3
diff --git a/benchtests/exp-inputs b/benchtests/exp-inputs
index e9d33a3d1c..aff3fb42f1 100644
--- a/benchtests/exp-inputs
+++ b/benchtests/exp-inputs
@@ -1,5 +1,589 @@
+## args: double
+## ret: double
+## includes: math.h
+0x1.6200315ce81efp9
+0x1.0000000031579p0
+0x1.000000009b551p0
+0x1.000000067ace6p0
+0x1.6200315ad0fc0p9
+0x1.0000000000060p0
+0x1.00000004237a7p0
+0x1.6200315ad0fb2p9
+0x1.0000000054ac1p0
+0x1.6200315c98bcdp9
+0x1.0000000002d96p0
+0x1.0000000000038p256
+0x1.6200315ad0fafp9
+0x1.6200315d680ecp9
+0x1.0000000000042p0
+0x1.0000000000048p256
+0x1.6200315ad0fbcp9
+0x1.000000000000dp256
+0x1.000000000001ep256
+0x1.0000000000015p256
+0x1.0000000000018p-256
+0x1.000000000002ep0
+0x1.000000000004ep-256
+0x1.000000000001dp-256
+0x1.6200315ad0fb4p9
+0x1.00000002ca5f8p0
+0x1.0000000000017p256
+0x1.0000000000022p0
+0x1.0000000000059p256
+0x1.0000000000028p0
+0x1.6200315ad0fa7p9
+0x1.000000048059cp0
+0x1.0000000000023p256
+0x1.000000000003ap-256
+0x1.0000000000022p-256
+0x1.6200315f211bep9
+0x1.000000000002ep-256
+0x1.0000000000041p256
+0x1.0000000000042p-256
+0x1.6200315ad0fcfp9
+0x1.6200315ad0fd7p9
+0x1.000000004bd6fp0
+0x1.000000000000dp-256
+0x1.6200315ad0fb7p9
+0x1.000000000001fp0
+0x1.0000000000024p-256
+0x1.0000000000058p256
+0x1.6200315ad0fc5p9
+0x1.620030025fbe9p9
+0x1.000000000003dp-256
+0x1.000000000003fp-256
+0x1.0000000000009p256
+0x1.00000005c7304p0
+0x1.0000000000045p-256
+0x1.0000000000011p-256
+0x1.0000000000033p-256
+0x1.0000000000036p256
+0x1.0000000000059p-256
+0x1.0000000000001p-256
+0x1.0000000000052p-256
+0x1.000000045baafp0
+0x1.0000000000032p0
+0x1.00000004a5089p0
+0x1.00000005edb68p0
+0x1.6200315ad0fd1p9
+0x1.0000000080d5bp0
+0x1.0000000000038p0
+0x1.6200315ad0fdbp9
+0x1.000000000005fp256
+0x1.0000000291b1ep0
+0x1.6200315af4bedp9
+0x1.0000000000031p-256
+0x1.6200315aea99bp9
+0x1.00000005ab569p0
+0x1.6200315d47b24p9
+0x1.6200315ad0fd9p9
+0x1.000000000003bp256
+0x1.6200315d31eb9p9
+0x1.000000059a297p0
+0x1.0000000000011p256
+0x1.0000000000021p-256
+0x1.0000000000041p-256
+0x1.0000000000049p0
+0x1.00000006857afp0
+0x1.6200315ceb300p9
+0x1.000000000003bp-256
+0x1.6200315bcaec3p9
+0x1.0000000000018p256
+0x1.00000002f3b77p0
+0x1.6200315ad0fb5p9
+0x1.0000000000027p-256
+0x1.000000054447dp0
+0x1.6200315e84846p9
+0x1.0000000172fefp0
+0x1.00000001c8808p0
+0x1.0000000000003p256
+0x1.000000000003ep-256
+0x1.00000002ed36ep0
+0x1.000000000002ap0
+0x1.00000002ae08bp0
+0x1.000000000005dp-256
+0x1.0000000000063p256
+0x1.000000000003ep0
+0x1.0000000000037p256
+0x1.6200315ad0fb6p9
+0x1.000000000005ep0
+0x1.000000000002ap256
+0x1.0000000000056p256
+0x1.0000000266056p0
+0x1.6200315ad0fdap9
+0x1.000000000002dp0
+0x1.000000000004cp0
+0x1.6200315ad0fb8p9
+0x1.0000000000039p0
+0x1.000000000002ap-256
+0x1.6200315ad0fa5p9
+0x1.0000000000035p256
+0x1.000000000005ep256
+0x1.000000000004cp-256
+0x1.0000000000039p256
+0x1.000000055574fp0
+0x1.0000000000033p256
+0x1.6200315ad0fc2p9
+0x1.62003001fc398p9
+0x1.000000000004ap-256
+0x1.000000000001ap256
+0x1.000000005d813p0
+0x1.6200315ad0fe4p9
+0x1.0000000000030p-256
+0x1.0000000000020p-256
+0x1.0000000066565p0
+0x1.0000000000029p-256
+0x1.6200315ad0fc7p9
+0x1.000000049e880p0
+0x1.0000000609903p0
+0x1.00000005e309fp0
+0x1.0000000000013p256
+0x1.0000000000026p0
+0x1.000000000002dp-256
+0x1.6200315ad0fbdp9
+0x1.000000000000fp256
+0x1.00000001a9d52p0
+0x1.000000000002cp256
+0x1.0000000479d93p0
+0x1.0000000000016p256
+0x1.00000001d7d63p0
+0x1.6200315bd5b13p9
+0x1.00000001097e9p0
+0x1.0000000000030p0
+0x1.6200315d37392p9
+0x1.6200315ad0fe0p9
+0x1.6200315ba6119p9
+0x1.000000000003ep256
+0x1.00000000e87eap0
+0x1.0000000000002p256
+0x1.00000006501c2p0
+0x1.000000000004bp256
+0x1.620030022b98ap9
+0x1.000000000003fp0
+0x1.00000002d0e01p0
+0x1.00000001f6819p0
+0x1.0000000000020p256
+0x1.0000000000021p0
+0x1.000000000005cp256
+0x1.6200315ad0faep9
+0x1.6200315c61515p9
+0x1.0000000000008p256
+0x1.0000000000056p-256
+0x1.00000004f2923p0
+0x1.000000000001ep0
+0x1.0000000000028p256
+0x1.000000000004fp256
+0x1.000000000002cp-256
+0x1.0000000000025p0
+0x1.6200315e1215ap9
+0x1.6200315ad0fb3p9
+0x1.6200315e921dap9
+0x1.6200315ad0fd6p9
+0x1.0000000000049p256
+0x1.000000000004dp256
+0x1.0000000000042p256
+0x1.0000000000051p0
+0x1.6200315d83129p9
+0x1.0000000690278p0
+0x1.0000000000036p0
+0x1.0000000000026p256
+0x1.000000000005fp-256
+0x1.000000000000cp256
+0x1.0000000000007p256
+0x1.000000050a3fep0
+0x1.000000000001fp-256
+0x1.000000000002ep256
+0x1.000000000004ep256
+0x1.6200315f00e77p9
+0x1.6200315ad0fd2p9
+0x1.6200315d4ee5bp9
+0x1.00000004552a6p0
+0x1.6200315ad0fe3p9
+0x1.000000003a2cbp0
+0x1.6200315ad0fdfp9
+0x1.00000002b4894p0
+0x1.0000000000022p256
+0x1.000000023a58ep0
+0x1.6200315ad0fd8p9
+0x1.0000000000029p256
+0x1.6200315efe051p9
+0x1.0000000205d74p0
+0x1.0000000000045p256
+0x1.6200315ad0fb0p9
+0x1.6200315d77cc5p9
+0x1.000000065ac8bp0
+0x1.0000000000037p0
+0x1.6200315ad0fbfp9
+0x1.6200315dacc95p9
+0x1.000000000002fp-256
+0x1.000000000000ep256
+0x1.00000006bf05cp0
+0x1.0000000000051p256
+0x1.0000000000062p0
+0x1.0000000000031p256
+0x1.6200315be943dp9
+0x1.000000000005bp0
+0x1.0000000000045p0
+0x1.6200315e08505p9
+0x1.000000000001bp256
+0x1.0000000000005p256
+0x1.000000000005dp256
+0x1.6200315ad0fc9p9
+0x1.6200315e97676p9
+0x1.0000000000024p0
+0x1.0000000000003p-256
+0x1.6200315ad0fd4p9
+0x1.6200315ee2c3bp9
+0x1.0000000000020p0
+0x1.6200315ad0fdcp9
+0x1.0000000000053p-256
+0x1.000000000004bp-256
+0x1.6200315cafb6ep9
+0x1.000000000003ap256
+0x1.0000000000013p-256
+0x1.0000000000060p256
+0x1.6200315ad0fd3p9
+0x1.0000000000009p-256
+0x1.000000000005cp-256
+0x1.00000000acff5p0
+0x1.000000000004dp0
+0x1.0000000000050p256
+0x1.6200315e34fc6p9
+0x1.0000000000044p-256
+0x1.000000000002dp256
+0x1.0000000000062p256
+0x1.6200315bf4442p9
+0x1.6200315ad0fabp9
+0x1.000000000003cp0
+0x1.0000000000019p256
+0x1.000000000000cp-256
+0x1.000000000000bp-256
+0x1.0000000000063p0
+0x1.000000000003cp256
+0x1.0000000000061p-256
+0x1.6200315ad0fb1p9
+0x1.00000006456f9p0
+0x1.6200315ad0fb9p9
+0x1.6200315ad0fccp9
+0x1.6200315ad0fd5p9
+0x1.6200315ad0fd0p9
+0x1.0000000353687p0
+0x1.6200315ad0facp9
+0x1.000000000005bp256
+0x1.6200315e8bb51p9
+0x1.6200315d73094p9
+0x1.000000027bdbap0
+0x1.000000006f2b7p0
+0x1.0000000000057p0
+0x1.0000000298327p0
+0x1.000000019a7f7p0
+0x1.6200315b7b9ddp9
+0x1.000000041cf9ep0
+0x1.0000000000040p256
+0x1.0000000000059p0
+0x1.6200315ad0fe2p9
+0x1.0000000000056p0
+0x1.0000000000034p-256
+0x1.6200315cf49aep9
+0x1.0000000000017p-256
+0x1.000000000bae8p0
+0x1.6200315ad0fc1p9
+0x1.00000004c336dp0
+0x1.0000000000032p256
+0x1.6200315ae9fb5p9
+0x1.000000000004cp256
+0x1.0000000000057p-256
+0x1.0000000000035p-256
+0x1.6200315d4d455p9
42
+0x1.6200315ad0fa8p9
+0x1.00000002502f2p0
+0x1.6200315ad0fa3p9
+0x1.000000000005dp0
+0x1.0000000000012p-256
+0x1.0000000000006p256
+0x1.0000000000028p-256
+0x1.0000000000044p256
+0x1.000000000004ap0
+0x1.00000000927ffp0
+0x1.0000000000044p0
+0x1.00000006f8909p0
+0x1.6200315ad0fc8p9
+0x1.0000000000061p0
+0x1.000000012a7e8p0
+0x1.000000000000fp-256
+0x1.6200315b6f0a0p9
+0x1.00000001b92adp0
+0x1.000000000005ep-256
+0x1.6200315d436fep9
+0x1.000000004301dp0
+0x1.0000000000023p0
+0x1.000000000005ap0
+0x1.6200315e7189ap9
+0x1.0000000000033p0
+0x1.6200315c19f20p9
+0x1.0000000000040p-256
+0x1.0000000000031p0
+0x1.0000000000027p0
+0x1.6200315d1dfeap9
+0x1.0000000588fc5p0
+0x1.000000015ad42p0
+0x1.6200300248616p9
+0x1.0000000000021p256
+0x1.6200315ad0fcap9
+0x1.6200315ad0fbbp9
+0x1.6200315ad0fbep9
+0x1.0000000000052p0
+0x1.0000000000016p-256
+0x1.0000000000005p-256
+0x1.0000000000046p256
+0x1.000000000003cp-256
+0x1.0000000000054p0
+0x1.000000034ce7ep0
+0x1.0000000000050p-256
+0x1.000000000002fp256
+0x1.6200315f2a44bp9
+0x1.6200315ad0fa2p9
+0x1.6200315f53addp9
+0x1.0000000000043p256
+0x1.000000000002bp0
+0x1.6200315b9a51fp9
+0x1.62003002148e6p9
+0x1.0000000000039p-256
+0x1.0000000000023p-256
+0x1.00000006d45eep0
+0x1.000000000002cp0
+0x1.0000000000055p256
+0x1.000000000000ap256
+0x1.0000000000010p-256
+0x1.0000000000047p-256
+0x1.000000000002fp0
+0x1.0000000000001p256
+0x1.000000040ff8cp0
+0x1.0000000121a96p0
+0x1.6200315c8b9bcp9
+0x1.000000000001cp-256
+0x1.0000000000063p-256
+0x1.0000000000006p-256
+0x1.000000000001ap-256
+0x1.6200300247b12p9
+0x1.0000000000046p0
+0x1.0000000000036p-256
+0x1.00000004bcb64p0
+0x1.0000000000032p-256
+0x1.0000000000057p256
+0x1.6200315e03518p9
+0x1.00000005331abp0
+0x1.000000000001ep-256
+0x1.6200315f76ad3p9
+0x1.000000000004dp-256
+0x1.000000000003bp0
+0x1.00000005b6032p0
+0x1.0000000000007p-256
+0x1.6200315ad0fc4p9
+0x1.0000000000051p-256
+0x1.000000000005cp0
+0x1.6200315ad0fc6p9
+0x1.0000000100a97p0
+0x1.0000000000040p0
+0x1.000000000004fp0
+0x1.000000000003dp0
+0x1.0000000000027p256
+0x1.0000000000000p-256
+0x1.6200315b10d8dp9
+0x1.0000000000060p-256
+0x1.6200315ad0fcdp9
+0x1.6200315ad0fa4p9
+0x1.6200315d07f8ep9
+0x1.000000000001bp-256
+0x1.0000000000041p0
+0x1.6200315ad0fe1p9
+0x1.0000000000053p0
+0x1.00000003168edp0
+0x1.0000000000000p256
+0x1.0000000000002p-256
+0x1.6200315bd4cecp9
+0x1.0000000000047p256
+0x1.6200315b2b8adp9
+0x1.000000000002bp256
+0x1.0000000000055p-256
+0x1.000000000004ap256
+0x1.00000006c9b25p0
+0x1.0000000000054p-256
+0x1.0000000000047p0
+0x1.6200315d8ee5dp9
+0x1.6200315b74b4cp9
+0x1.000000000005ap256
+0x1.0000000000043p-256
+0x1.0000000000055p0
+0x1.0000000000019p-256
+0x1.000000031d0f6p0
+0x1.00000006ede40p0
+0x1.00000002152cfp0
+0x1.6200315f61210p9
+0x1.6200315ad0fadp9
+0x1.000000044ea9dp0
+0x1.0000000000050p0
+0x1.0000000000024p256
+0x1.000000022b033p0
+0x1.0000000000043p0
+0x1.000000000001fp256
+0x1.0000000000034p0
+0x1.0000000000025p-256
+0x1.0000000000034p256
+0x1.000000000001dp0
+0x1.000000000005ap-256
+0x1.6200315ad0fddp9
+0x1.0000000577cf3p0
+0x1.000000051b6d0p0
+0x1.00000006143ccp0
+0x1.0000000000010p256
+0x1.000000061ee95p0
+0x1.6200315c3eed5p9
+0x1.00000000dfa98p0
+0x1.0000000000049p-256
+0x1.0000000000052p256
+0x1.0000000000053p256
+0x1.000000000005bp-256
+0x1.000000000000ep-256
+0x1.6200315e8ca3cp9
+0x1.6200315ad0faap9
+0x1.0000000142a95p0
+0x1.6200315ad0fcep9
+0x1.6200315ad0fcbp9
+0x1.6200315ef86c6p9
+0x1.0000000000026p-256
+0x1.6200315ed1587p9
+0x1.000000067021dp0
+0x1.00000001e72bep0
+0x1.6200315ad0fbap9
+0x1.00000000d6d46p0
+0x1.0000000000058p0
+0x1.00000000a42a3p0
+0x1.6200315b50c42p9
+0x1.6200315c4ee10p9
+0x1.0000000416795p0
+0x1.0000000000014p-256
+0x1.0000000000037p-256
+0x1.6200315ad0fa6p9
+0x1.0000000000004p-256
+0x1.0000000000054p256
+0x1.000000018254ap0
+0x1.6200315dc2365p9
+0x1.0000000000015p-256
+0x1.000000000004fp-256
+0x1.0000000665754p0
+0x1.0000000000046p-256
+0x1.6200315b2ba38p9
+0x1.000000000002bp-256
+0x1.6200315ba202ep9
+0x1.0000000000008p-256
+0x1.0000000359e90p0
+0x1.00000004dae48p0
+0x1.000000000001cp256
+0x1.0000000000062p-256
+0x1.0000000000048p0
+0x1.000000000003fp256
+0x1.6200315bcd48bp9
+0x1.6200315ad0fa9p9
+0x1.0000000000030p256
+0x1.6200315d64448p9
+0x1.0000000089aadp0
+0x1.6200315f0aa29p9
+0x1.00000005d1dcdp0
+0x1.6200315ad0fdep9
+0x1.0000000000061p256
+0x1.0000000000058p-256
+0x1.0000000000012p256
+0x1.000000000005fp0
+0x1.000000000003ap0
+0x1.000000000000bp256
+0x1.000000000004bp0
+0x1.0000000000038p-256
+0x1.0000000000029p0
+0x1.0000000000025p256
+0x1.000000000001dp256
+0x1.0000000000004p256
+0x1.6200315e2240ep9
+0x1.6200315ad0fc3p9
+0x1.6200315b2bbc3p9
+0x1.0000000000014p256
+0x1.0000000078009p0
+0x1.000000000003dp256
+0x1.6200315db488fp9
+0x1.000000000000ap-256
+0x1.000000000004ep0
+0x1.0000000000035p0
+0x1.0000000000048p-256
+# Slow path with computation in 144 bit precision.
+# Implemented in: sysdeps/ieee754/dbl-64/mpexp.c
+## name: 144bits
+0x1.0000000002d96p0
+0x1.000000000bae8p0
+0x1.0000000031579p0
+0x1.000000003a2cbp0
+0x1.000000004301dp0
+0x1.000000004bd6fp0
+0x1.0000000054ac1p0
+0x1.000000005d813p0
+0x1.00000005ab569p0
+0x1.00000005b6032p0
+0x1.00000005c7304p0
+0x1.00000005d1dcdp0
+0x1.00000005e309fp0
+0x1.00000005edb68p0
+0x1.0000000609903p0
+0x1.00000006143ccp0
+0x1.000000061ee95p0
+0x1.00000006456f9p0
+0x1.00000006501c2p0
+0x1.000000065ac8bp0
+0x1.0000000665754p0
+0x1.000000067021dp0
+0x1.000000067ace6p0
+0x1.00000006857afp0
+0x1.0000000690278p0
+0x1.00000006bf05cp0
+0x1.00000006c9b25p0
+0x1.00000006d45eep0
+0x1.00000006ede40p0
+0x1.00000006f8909p0
+0x1.62003000076d2p9
+0x1.6200300017e2cp9
+0x1.6200300023ffbp9
+0x1.620030002b135p9
+0x1.6200300030a8bp9
+0x1.620030003123fp9
+0x1.62003000652b3p9
+0x1.620030007bf4ap9
+0x1.6200300081a79p9
+0x1.6200300090289p9
+0x1.620030009dcbbp9
+0x1.62003000c07cep9
+0x1.62003000ee5dbp9
+0x1.62003000fa646p9
+0x1.62003000fe2cap9
+0x1.6200300125996p9
+0x1.6200300130865p9
+0x1.6200300133673p9
+0x1.6200300136fdfp9
+0x1.6200300150360p9
+0x1.620030016c416p9
+0x1.6200315ee2c3bp9
+0x1.6200315ef86c6p9
+0x1.6200315efe051p9
+0x1.6200315f00e77p9
+0x1.6200315f0aa29p9
+0x1.6200315f211bep9
+0x1.6200315f2a44bp9
+0x1.6200315f53addp9
+0x1.6200315f61210p9
+0x1.6200315f76ad3p9
# Slowest path with computation in 768 bit precision.
# Implemented in: sysdeps/ieee754/dbl-64/mpexp.c
## name: 768bits
708.00096423260981737257679924368858
+0x1.00000027f5496p0
+0x1.0000015853da7p0
+0x1.0000098e5e007p0
+0x1.0000099a1ac59p0
diff --git a/benchtests/exp2-inputs b/benchtests/exp2-inputs
new file mode 100644
index 0000000000..55716f8e03
--- /dev/null
+++ b/benchtests/exp2-inputs
@@ -0,0 +1,105 @@
+## args: double
+## ret: double
+## includes: math.h
+-0x1.8235e0aa4aab1p814
+0x1.0e1220dfad80dp1006
+-0x1.e6a710eed0706p919
+0x1.11def1bbe9bc3p-471
+0x1.05e9b1fc591d9p-1007
+0x1.a58906c628b46p984
+0x1.772627fce1208p-256
+-0x1.461c146b65f2cp-62
+-0x1.6cf046992fa9ep-876
+-0x1.eaca47d76382cp-413
+0x1.5056d0027ca2bp-634
+0x1.1be8235cf2515p-300
+0x1.f667e36bb79d2p913
+0x1.b9ae233039c9cp-721
+0x1.b70ec546dac57p589
+-0x1.3ef895a695202p-318
+-0x1.e73d755c17ecap-901
+-0x1.f0a09005d2fdcp-52
+0x1.77520292c8ea7p786
+0x1.e5c0a38dccd6fp-510
+-0x1.21dd1410a13fdp469
+-0x1.f1ea1752b167cp-855
+0x1.149395c6b1dfcp237
+-0x1.22cfe4ceb2a85p244
+0x1.061a75f02c856p-417
+-0x1.04aaf4e1a4962p-645
+-0x1.b962f2c49c11ap169
+0x1.6074818509343p-151
+-0x1.6b9946b997353p350
+-0x1.6b8631635d607p-328
+0x1.6893162dc2973p923
+-0x1.0a1c40492986dp-371
+-0x1.23ae72061594ap-113
+0x1.d73d84becb49dp-816
+0x1.545894ebc8944p-487
+-0x1.c006c29733c62p325
+-0x1.745dc305eeb06p-994
+0x1.6cdeb63076b54p420
+0x1.c8f137c690673p906
+-0x1.170ab5609f77cp205
+-0x1.0b11b685a3349p-46
+0x1.7f68672b92eb1p-622
+0x1.66d431dee4bfdp-333
+-0x1.e43304b22a96dp228
+0x1.58ac069095de9p-419
+-0x1.3fcaa6e1f1ac3p654
+-0x1.437ed00080554p-88
+0x1.717ad5a379c50p531
+0x1.9688d6a6dd841p127
+-0x1.189c3732f9ac8p505
+-0x1.8c5da688a249ep871
+0x1.808015df2809ep-647
+0x1.54ccb260c52f6p183
+0x1.ec1574f23f1b5p757
+-0x1.2de0222e50454p-176
+-0x1.dc5715d5ac4f3p-882
+0x1.6fa963199b1fbp389
+-0x1.0a143338c0ff3p149
+0x1.c278a3ec4071cp240
+0x1.7bdb071d7e6ffp-360
+-0x1.e9b7a0af460ddp-809
+0x1.d069e62cf695bp535
+0x1.0f7ba1b172a18p-887
+-0x1.96af5166829b7p399
+-0x1.8f70240823cdbp-65
+-0x1.fcd2d5a63a217p-971
+-0x1.089241ad467f2p-247
+-0x1.3fa3940d58aa8p1022
+-0x1.aff1c0aec4e7dp814
+-0x1.6bad319cfc3bcp-378
+0x1.9c8956c66ba36p-579
+-0x1.6d9393f52ee3fp411
+0x1.e529d23501328p926
+0x1.3ec71520af29cp690
+0x1.787576a795b83p194
+-0x1.ef38147d2dc40p107
+-0x1.22a125ccbb1b2p-308
+0x1.5f5c074be0351p-928
+-0x1.377ed64bec482p390
+-0x1.09eae6f62d4b8p-41
+0x1.9f3fd03635c92p-104
+0x1.cb7d07d13c9efp599
+0x1.49e8154de36a7p538
+-0x1.d68343fe573bfp-736
+-0x1.4beba6b79ba1ep-811
+0x1.927774a125013p221
+-0x1.e4a1e48c33931p-152
+-0x1.b8a3123361eb5p641
+-0x1.909ea08b262f3p960
+0x1.0d1b30600d5b0p822
+-0x1.392420cf4ce19p-690
+-0x1.f9e1f71c0f3a2p-349
+-0x1.75600638cbf0ep-527
+-0x1.788911851a5abp-193
+-0x1.2ab1045fa9103p-471
+-0x1.d9c7f1a19cefdp-44
+0x1.ef5a66b13a5f8p171
+0x1.261c24ba6cdfbp539
+0x1.641945dc01d29p-620
+0x1.5c190276797a1p935
+-0x1.ea76b6a8a9d4ap-656
+0x1.41a117e9931f0p-169
diff --git a/benchtests/log-inputs b/benchtests/log-inputs
index 713c2229f5..2ea0bfe705 100644
--- a/benchtests/log-inputs
+++ b/benchtests/log-inputs
@@ -1 +1,295 @@
-42.0
+## args: double
+## ret: double
+## includes: math.h
+0x1.0c5e3365a2d95p0
+0x1.037414ff63ab9p0
+0x1.fc9366fa4c3a0p-1
+0x1.f710159a37ab9p-1
+0x1.5576e114e4f7cp-961
+0x1.9d3382c6679b7p-1
+0x1.f9e37774c7510p-1
+0x1.058622e63af9dp0
+0x1.fa62a3b5d47b5p-1
+0x1.01fb737f14c41p250
+0x1.fc7952a4bde83p-1
+0x1.b68a54ad54fb4p-320
+0x1.b8978216476a5p837
+0x1.345bf2c9c6238p-638
+0x1.580da4a80849ap197
+0x1.fb0f43269facap-1
+0x1.065f47ccd6b6cp0
+0x1.db1317a87c872p-928
+0x1.f563a1330ee1bp-1
+0x1.8352661de852dp-1
+0x1.887750a7ad5d0p315
+0x1.385ed12583117p674
+0x1.ff610285e1e46p-1
+0x1.02e063a2777f0p-254
+0x1.6b0f9482349a9p-489
+0x1.f0413135a3a88p430
+0x1.1ec910ecf9419p2
+0x1.caab24b23bfdap-1
+0x1.42d83712a1fabp-995
+0x1.01d4b06dc2ce1p-2
+0x1.c10a94cb4f93dp2
+0x1.071a5441b3cabp0
+0x1.04e8940083142p504
+0x1.5083603bf110cp-660
+0x1.f5312171625f3p-1
+0x1.f15370065e66dp-1
+0x1.f4de71c3efa90p-1
+0x1.072a679084c2ep0
+0x1.f89d125e68705p-1
+0x1.31a5450e17b4fp10
+0x1.036d1462f82d5p-1
+0x1.54f131208767bp0
+0x1.016fc65a58dd9p0
+0x1.24b2c009625bfp-512
+0x1.2898b1cc9ddc8p-1
+0x1.0270851f17bb1p-241
+0x1.eb1f03c6aa4d3p38
+0x1.d29a93f1faf4fp964
+0x1.d31de19a4e829p140
+0x1.f8d260eeb5cefp-1
+0x1.f259a4bc8f770p-1
+0x1.8b9016448c4ccp-105
+0x1.240f40168110bp-253
+0x1.06fb26943be9bp0
+0x1.9bae861967209p87
+0x1.51fcc64d69563p-48
+0x1.f4ff2413b004bp-1
+0x1.387d65055d963p4
+0x1.1c5705c916859p929
+0x1.073be54be8356p0
+0x1.544871c917766p-1
+0x1.398536e090d37p-79
+0x1.f34707ce261e5p-1
+0x1.2e5792109f59bp593
+0x1.075bd0ce07ef0p0
+0x1.0ef545b2e5627p0
+0x1.b2aa170bed688p-919
+0x1.e341461098908p984
+0x1.eacd43dea8eb2p-1
+0x1.18c2a0ab6598bp265
+0x1.219df5338fbc1p482
+0x1.a9a0d4ceb201dp2
+0x1.c0a6467baf54dp-23
+0x1.0b499489342c1p361
+0x1.f7c1f18cae6f4p-42
+0x1.d8dea4350fb7fp627
+0x1.0541421affe22p0
+0x1.574bd3c94bdc9p-528
+0x1.9aa814150ab62p-1
+0x1.cab9532515b30p10
+0x1.01e446e6b365ep0
+0x1.04ef17a8014c7p0
+0x1.fd91b3dc4e166p-98
+0x1.9e879318176aap-448
+0x1.605e9760da702p457
+0x1.3e1d3541f8a73p131
+0x1.ce2a303076cbap-9
+0x1.f72021eaea3b7p-547
+0x1.3384548e90a6dp222
+0x1.0215143216bbap0
+0x1.f546109b8e222p-1
+0x1.b828c4971379dp779
+0x1.0465440f18b39p0
+0x1.00a302042eb49p0
+0x1.9914e6bc2d08dp-637
+0x1.aa8176fc83146p3
+0x1.0dc041c8c9084p788
+0x1.c17f14032741cp157
+0x1.f8c3355f2c74fp-1
+0x1.c0c373cb8d3abp-568
+0x1.ffb897f081c1cp-1
+0x1.7da4d5c6ecca5p666
+0x1.1f8dd20fc3029p-196
+0x1.f39d30de8b00cp-1
+0x1.5710417d88db0p526
+0x1.f552e4572e2e0p-1
+0x1.ce97f507ac81ep-196
+0x1.fe0b407a35cf9p-1
+0x1.ffba3091bc8d9p-1
+0x1.f79207f982a95p907
+0x1.f3bc85de399b1p-1
+0x1.f6a9075959280p-1
+0x1.9971a0d49cffcp0
+0x1.fdd4d11db35dcp-1
+0x1.9f453762d3790p-708
+0x1.d1122424ad397p717
+0x1.fd71a20e66628p-1
+0x1.007c20fefd661p0
+0x1.0137d702a29bdp0
+0x1.93e9047c983bfp-16
+0x1.10cdf415042b5p0
+0x1.fe6d8639abca0p-1
+0x1.f7278572f6b66p-1
+0x1.0673e76436ebcp550
+0x1.f34833c8c70bcp-1
+0x1.1b530128cc02dp8
+0x1.ae48a5851e7a3p-236
+0x1.98bdb6dff9d19p74
+0x1.fbfd85f14418ep-1
+0x1.070dd2780fcdap22
+0x1.07a8f5726ae12p0
+0x1.9a2ac2db753f8p-892
+0x1.1461250716450p57
+0x1.3b5be316bc364p-3
+0x1.a2143693816d1p862
+0x1.9418a18831f94p-502
+0x1.ea8306738954cp993
+0x1.fff14533df4f3p-1
+0x1.0693706ddc70cp1
+0x1.59e3947bce39dp-4
+0x1.fa64a24c3030ap-1
+0x1.044ce02e484e6p0
+0x1.a272b5bdc397ep327
+0x1.1c4577fcbe052p4
+0x1.00ede267fbd99p0
+0x1.028e26e56b7dfp0
+0x1.005cf758f0dd7p635
+0x1.bca6110bd6b05p46
+0x1.11e7148e3f7e4p137
+0x1.616e31d9c78afp898
+0x1.f2eff0abf8fa1p-1
+0x1.fd2275eabbc55p-1
+0x1.e8f5a410e1a82p-1
+0x1.7124e6de4fec6p342
+0x1.95b03344f67d4p74
+0x1.fb46137fbdd00p-1
+0x1.78f9961f0c11bp936
+0x1.2d3230575fa1dp-23
+0x1.5cd631b404c9dp564
+0x1.6a7645d7bc818p-901
+0x1.1daca63403190p-160
+0x1.64b4929d7185dp7
+0x1.f95a819a0c75ep-1
+0x1.fa2a9599f61c2p-1
+0x1.f68b82c96e845p-1
+0x1.b5c634c9a19f0p-551
+0x1.706c63689c814p917
+0x1.fa1134f93ff1bp0
+0x1.b8e642ca65132p12
+0x1.fdb645fc3558fp-1
+0x1.9909b15771ca6p2
+0x1.f4f6132242443p-1
+0x1.c02b65da31a5cp-9
+0x1.8b40c0afd5a42p679
+0x1.1d9f80f2849ebp1015
+0x1.3426c343358d6p608
+0x1.f634874d073bep-1
+0x1.016ab0aff9b7dp0
+0x1.f1f34486c65e2p-1
+0x1.022e8230e4320p0
+0x1.fbe0104a4b316p-1
+0x1.55323737c4d7bp-69
+0x1.fa3d13e0efecep-1
+0x1.2a7e11b35214bp281
+0x1.9a2c33af22120p-1
+0x1.986983a9d6f51p-1
+0x1.f2f723416775fp-1
+0x1.5d8565304a570p2
+0x1.f3999057087ebp-1
+0x1.fff027a147cc4p-1
+0x1.f369333fdcaa7p-1
+0x1.15ee471de5adcp-537
+0x1.faa9f49088862p-1
+0x1.0138239c244bcp0
+0x1.8c28955e4efb3p-1
+0x1.c3db66d450094p-916
+0x1.dc4b70539f21cp-390
+0x1.f7a363909f425p501
+0x1.fb86b76e851a5p-1
+0x1.010290232f8fcp-97
+0x1.650a4595be763p510
+0x1.fbd7a36081ccdp-1
+0x1.073f0084dc154p0
+0x1.fb7951f83410dp868
+0x1.0404d08738d62p0
+0x1.f1d895b2a5fdap-1
+0x1.55472046b4703p351
+0x1.f63882efa2ec0p-1
+0x1.f367c590b00e1p-1
+0x1.5251b7177fe50p501
+0x1.49f2a03e6057ap-140
+0x1.d5a68682d9946p-1
+0x1.fcdd65a9229b0p-1
+0x1.98bea1a0d0fbep681
+0x1.260d06b5edc4bp-336
+0x1.f5d520240b30ap-1
+0x1.f8715777db2f7p-1
+0x1.b3b0b64c86e27p-1
+0x1.ae637316fa604p2
+0x1.79919761b73adp43
+0x1.bd55c268d4f40p-1
+0x1.c81103f744ee1p4
+0x1.deeeb24db6f46p-1
+0x1.1056a7ba848e4p566
+0x1.b167817c24607p-513
+0x1.95d245973230bp798
+0x1.04d551a6da2dcp-921
+0x1.df2572264569fp92
+0x1.fb105105409c1p-1
+0x1.277ce2d7a1945p20
+0x1.fc93d4234f18bp-1
+0x1.be9f65acd2fa6p-911
+0x1.0548c4cb78cd1p400
+0x1.794c300f69a14p688
+0x1.7dda15569e759p731
+0x1.fdc9d6a00fb8ep-1
+0x1.faae623a143f1p-1
+0x1.8128373a5b95ep-608
+0x1.c2e13445f6ca7p316
+0x1.01d3a3dd89524p0
+0x1.aee2578e3f114p-1
+0x1.863ff7799e878p-266
+0x1.ea8897550748bp-262
+0x1.0652f24fd5820p0
+0x1.56114467afa90p1
+0x1.01b4561c918a5p0
+0x1.21cd64b06baebp339
+0x1.3d6384a8fd1b3p-35
+0x1.01af659ea1389p0
+0x1.fa8ed0ab15042p-724
+0x1.47c1f4babad96p785
+0x1.fc47829fd7bdfp-1
+0x1.f3d2241382331p-1
+0x1.0a0897e048564p0
+0x1.957ab3f18f8e3p-446
+0x1.5aad466994dacp506
+0x1.fba8a2b4ab119p-1
+0x1.003c906ab1a79p0
+0x1.7039f057a155fp-678
+0x1.f85964e37aae8p-1
+0x1.53e2e0469deecp-711
+0x1.f0cb530a2bf7dp658
+0x1.af8d471733d1dp-1022
+0x1.a684e3b3af12dp-239
+0x1.fd26d7fa466b5p1
+0x1.ebd3605467082p163
+0x1.e29567ed6afecp-11
+0x1.073757004a5a1p0
+0x1.022334168530bp0
+0x1.d4a6e162f4ceap575
+0x1.00dbb330a556fp0
+0x1.276b872c49045p0
+0x1.51e835ab51aafp-7
+0x1.e3c106b648377p-184
+0x1.5a46f2460d290p-46
+0x1.199a05d85e80dp-258
+0x1.cde614a60f60ap-1
+0x1.50f3a79e68493p-152
+0x1.2c9af562aa58dp0
+0x1.f695411839d24p-1
+0x1.e53e5125bcdffp413
+0x1.03e4c3218f178p0
+0x1.d66213dc2e585p-820
+0x1.ff5b9106a784ep-1
+0x1.4d4990f481852p-15
+0x1.39a5976ee7210p-879
+0x1.f5e4d494092e7p-1
+0x1.2bb040585ffdep-28
+0x1.f707b3cd873d2p-1
+0x1.fc1a353ea30eap-1
+0x1.fc44366f2d5c7p-1
+0x1.f9fb832b4f54fp-1
diff --git a/benchtests/log2-inputs b/benchtests/log2-inputs
new file mode 100644
index 0000000000..e9bc65fd18
--- /dev/null
+++ b/benchtests/log2-inputs
@@ -0,0 +1,203 @@
+## args: double
+## ret: double
+## includes: math.h
+0x1.fe80b73f2f763p-485
+0x1.63fbf19a1a79ap-572
+0x1.63fb4717f36abp-594
+0x1.6a75240c62b59p-162
+0x1.43ad207275c97p-830
+0x1.1c24c26efbca5p-673
+0x1.c37f23c54205ap655
+0x1.fdc0e348d5bbbp722
+0x1.0e2e51e9645a9p503
+0x1.3291a6e483d75p-941
+0x1.6b4f9118d9ddfp329
+0x1.618e84faa68d1p-696
+0x1.7f8a7417686dbp577
+0x1.3fc6a169fc1a2p662
+0x1.6631142da8476p-11
+0x1.67cc768721f6ep159
+0x1.7439b48fb7f01p-744
+0x1.17cad4e754e3fp-833
+0x1.6ca873e653646p35
+0x1.6283941b425d9p-322
+0x1.38de764542fc9p-939
+0x1.6a5706bcca88ep318
+0x1.8b9e71efccf99p-671
+0x1.61d7a07ca117fp-246
+0x1.66707402ed87fp468
+0x1.650ff2faef0c4p-185
+0x1.6afe3332695d8p-382
+0x1.5c05817f1aec0p861
+0x1.61bb62e0a68cdp625
+0x1.678e93ded24cep-614
+0x1.d2b6e60469afdp-753
+0x1.abb9a6eed73b2p-731
+0x1.21a4014034f31p-718
+0x1.bdbe3237b3785p779
+0x1.0f115229b9a52p-437
+0x1.6154e26a722b2p388
+0x1.64e982a82df60p346
+0x1.61bdc663af57bp799
+0x1.091f7362aa8bfp-871
+0x1.e35153cac25b3p873
+0x1.6402b62fbebf7p-329
+0x1.680d413ef3777p775
+0x1.8620d183bd0a7p-670
+0x1.e0e017206206ep-129
+0x1.66d9419f2852cp-526
+0x1.5a07e14aa7e55p-888
+0x1.b91ed57fdd3f2p1017
+0x1.7c58838087ef5p519
+0x1.2d0676720fb21p-145
+0x1.64bcd3d675a60p-390
+0x1.6204f6b121d0dp255
+0x1.6af30218cdccfp-955
+0x1.dcf3f2c2809e1p-821
+0x1.6269366dd0672p436
+0x1.dd117726eefe5p93
+0x1.65de442c50bedp-28
+0x1.10c8b6ab1a5f0p-313
+0x1.6855f7474d2eep828
+0x1.6659b0863e8d0p-545
+0x1.7a80b6736105cp-566
+0x1.3ff7a01b0590cp560
+0x1.6559f386d6ca3p-696
+0x1.68e96369693cep812
+0x1.8d29a4b500b0dp537
+0x1.65b347d411765p826
+0x1.669080c6f3a8bp-121
+0x1.faabb750c7baep548
+0x1.670f72a6f1cd1p834
+0x1.6b75063adb10dp396
+0x1.f030420faed63p-788
+0x1.a20214aeefbe0p186
+0x1.8b3af704f3526p449
+0x1.6663a7e181023p-643
+0x1.e1f6d671b95f6p978
+0x1.6aea24ab9c956p84
+0x1.6318c0bc48f9bp-996
+0x1.6603e22b2d2d1p-257
+0x1.6b59906a87ddfp-896
+0x1.665307aea1415p-153
+0x1.6d9be19aca354p-887
+0x1.640977cfbd7dep-564
+0x1.1c6de3bf6f82ep909
+0x1.24c452230e994p705
+0x1.6b2c473cd0623p-626
+0x1.beab17bff5e9ap-708
+0x1.680445b6d430bp465
+0x1.454de219171f0p158
+0x1.6818a49dfb38dp20
+0x1.15cb95403d2a4p622
+0x1.1338a5210da9ap-78
+0x1.651fc5045320ep-861
+0x1.657ed41aace5bp-2
+0x1.ff563189469ffp-44
+0x1.62c811ba1d5e4p1
+0x1.61f23108289f9p-422
+0x1.168066765d078p875
+0x1.a671a61b114a2p124
+0x1.4471a372f703ep252
+0x1.623ae599ffa3fp98
+0x1.531085de4958bp441
+0x1.4d6172de45534p-911
+0x1.e5dcc2b3d23acp-437
+0x1.67cac1dccdfcdp985
+0x1.0ac1a5608baf9p-896
+0x1.654cd778b1e36p837
+0x1.929004c882902p-552
+0x1.594a8c88348b0p-970
+0x1.dc7f4509ddfd6p-832
+0x1.d49846a313b79p998
+0x1.6314b3a5ac85bp1018
+0x1.d1d1325f66b7ep-763
+0x1.6592a24f64047p403
+0x1.bd47a2a1cc99fp-486
+0x1.644266dda9ad2p778
+0x1.6b2e821002783p26
+0x1.69936648ba64ap-143
+0x1.61d2a2a99f470p-970
+0x1.6599c252868bap-840
+0x1.3590b2e6af870p56
+0x1.6b8311b9abc91p-961
+0x1.29d1a705c6a3bp-660
+0x1.6815d5d44778ap945
+0x1.6ae36036fcee1p153
+0x1.2034b640f0f4ap-3
+0x1.84fec67d11992p85
+0x1.1fa1a74c0af59p-478
+0x1.64de9092a8789p-784
+0x1.701bf3e5b0120p243
+0x1.63ac048ca107bp-666
+0x1.0095c464cfc5ap58
+0x1.5f2d0041e5db2p362
+0x1.62fa34a5c1bcap-412
+0x1.cacf042abda4fp-54
+0x1.647a95ef487b3p224
+0x1.f8c2353681cbep905
+0x1.67bfe67714076p366
+0x1.6779865baf78fp-291
+0x1.9395b1beca360p361
+0x1.6521449e5ffe2p-671
+0x1.667567cd5db59p-293
+0x1.511df0b72a30bp30
+0x1.65f8251162417p642
+0x1.d0a0825ffb10cp210
+0x1.63f2f5ba5415ap-716
+0x1.65681206c6030p-580
+0x1.5254d49bacf90p-849
+0x1.49dd92d7cf7fep-208
+0x1.688f565603c25p473
+0x1.6439333b5f705p-589
+0x1.663922acbdbb0p208
+0x1.5a2631eb8325cp490
+0x1.6171d410fcbbfp683
+0x1.6ae4d6f8f091ep511
+0x1.ae8ff53250e31p-1012
+0x1.f182e535fab45p-332
+0x1.653f84e9e8c3fp-34
+0x1.99a737ac5cdadp328
+0x1.301bb0b8607cbp232
+0x1.706fa3fcd1d85p337
+0x1.b650863c8ead0p227
+0x1.64b9045b2d59dp740
+0x1.681c66eda34d4p-113
+0x1.f881050ae3a0cp-51
+0x1.08bb778ebc5b6p-28
+0x1.815fe4e6e4b72p100
+0x1.691b6172a5798p-576
+0x1.684f74d76367cp1010
+0x1.64d044c4779d2p-207
+0x1.690c021b1ae97p454
+0x1.9d0ec359f67d5p77
+0x1.43686724be426p774
+0x1.678821f848886p-43
+0x1.17abd1fcb3d3bp532
+0x1.616ee4093684fp-43
+0x1.631ec6e8ef9a7p264
+0x1.63aa97d7de121p795
+0x1.b172e7750d144p841
+0x1.6836107e18e77p-826
+0x1.65957572dedc3p-339
+0x1.66b8d2cad9382p301
+0x1.c8f410709f858p-761
+0x1.6a2093c2b009dp-1013
+0x1.b97a45fb7dad5p660
+0x1.8150734f7fc95p40
+0x1.6ab8a053c9089p-246
+0x1.6b81e74a6293ep-813
+0x1.251a74cf150acp779
+0x1.44cf3370a55eap703
+0x1.32e2e35cc77f3p-4
+0x1.c0c6049562d13p-997
+0x1.a050f54285fb8p-397
+0x1.68ada319f3033p748
+0x1.b2f37264e0acbp753
+0x1.617614c5ecea7p137
+0x1.b01c803ac06b1p559
+0x1.4a19f60ad4238p-223
+0x1.6314648785495p-40
+0x1.6936664ef255fp943
+0x1.6208f15a6484fp464
+0x1.6b1244514989ep-886
diff --git a/benchtests/pow-inputs b/benchtests/pow-inputs
index dad65059aa..78f8ac73d5 100644
--- a/benchtests/pow-inputs
+++ b/benchtests/pow-inputs
@@ -1,5 +1,511 @@
+## args: double:double
+## ret: double
+## includes: math.h
42.0, 42.0
+-0x1.086f771a2b37bp696, 0x1.592b453fe869fp-81
+0x1.19eb12518e61bp-217, 0x1.c87753325f271p59
+0x1.5c68b7b390060p-869, -0x1.0000000000000p-64
+0x1.d96cb2cd196ebp3, 0x1.0000000000000p-64
+-0x1.f7cb93ee0ba9bp-238, 0x1.b7f046c622df6p691
+0x1.5cf5307b64e94p-233, 0x1.4499d7e88a731p124
+0x1.58bc610fde155p756, -0x1.0000000000000p-64
+0x1.11e4c61e2489ep9, 0x1.f3ddd0aadf9e9p94
+0x1.064765103f18ap-245, 0x1.a413811779c11p89
+-0x1.a26e540b1b5e0p77, 0x1.5987a1b0f6368p897
+0x1.465db461ffd24p681, -0x1.0000000000000p-64
+-0x1.b986d646b93b4p-100, -0x1.936ff2a7c8adep-420
+0x1.af0d371d0a43dp-197, 0x1.f185f2aba0958p217
+0x1.13ce451492820p115, -0x1.1598c3d54c625p81
+0x1.d5ec14b6de205p-604, -0x1.0000000000000p-64
+0x1.cf8ad6a495d19p-100, 0x1.8d2563e08105dp7
+0x1.1a7d3100f9ef4p-636, -0x1.0000000000000p-64
+-0x1.6dd9a7d0122f5p421, 0x1.199895f013a09p49
+0x1.b892e5125d7d1p-345, 0x1.0000000000000p-64
+0x1.5dfa7063ce092p996, 0x1.0000000000000p-64
+0x1.9e7d74cdbf190p512, -0x1.3d1b5206e8127p237
+0x1.b941e202e240dp-325, -0x1.0000000000000p-64
+-0x1.fbe85766fae96p-463, 0x1.91c903c89b075p85
+0x1.eab5553bcdfbap-957, 0x1.ab0a06811189cp90
+0x1.4c2c90f483a09p917, -0x1.0000000000000p-64
+0x1.014bc72248db8p439, -0x1.e1bef116ca6d9p112
+-0x1.6733d0746880bp-316, 0x1.8a34e6c887c39p-107
+-0x1.5a9b05cc4e1c4p461, -0x1.88d2560562b17p-798
+0x1.9690663e74e47p967, -0x1.0000000000000p-64
+-0x1.125986687c812p-159, -0x1.bd3236342d0f4p550
+0x1.3d6422e5177bep-951, 0x1.3878a292f55d9p226
+-0x1.9922669366d2dp590, -0x1.ae14d63976e00p-684
+0x1.d838c66e05cc9p256, 0x1.0000000000000p-64
+0x1.c319328022c2cp890, -0x1.4a627098d6e49p170
+0x1.0deee25028507p461, 0x1.310f343ce0281p94
+0x1.279923dac3d31p147, 0x1.0000000000000p-64
+0x1.e27fe364ee0b4p963, -0x1.107d33f004629p245
+-0x1.8160e4b7efcecp833, -0x1.9612560bf9302p-472
+-0x1.7814633c7452bp-821, -0x1.d36af1ef2c42fp636
+0x1.bac865bccd66ep113, -0x1.454be507db267p19
+0x1.c75b53051ead0p-931, -0x1.0000000000000p-64
+-0x1.cab4e5935aeaep318, -0x1.6794550b87520p-257
+0x1.088056b5fbc0dp-459, 0x1.0000000000000p-64
+0x1.1f8eb28937183p748, -0x1.b2a940cf17bc0p217
+0x1.ba85352faba13p-796, -0x1.0000000000000p-64
+0x1.1d3984c620975p460, 0x1.0000000000000p-64
+0x1.37acd13a9ea78p1019, 0x1.0000000000000p-64
+0x1.0e9d041b054d3p-411, 0x1.0000000000000p-64
+0x1.a156c095ec992p102, -0x1.46f561fd1fda9p98
+-0x1.273ca2d449455p471, -0x1.fa6c92046c475p-860
+-0x1.7b475167ae88ep-116, -0x1.eba627003ccc5p-339
+0x1.2996c344cf7dcp-564, 0x1.21df51e88e157p161
+-0x1.7d29f253d3e79p636, -0x1.8e30a1ba55f7fp77
+0x1.99ffe6fb747bep1003, -0x1.8b1047a0ed3b3p67
+0x1.248c46b353471p251, -0x1.3aa8631084564p8
+-0x1.500c56dfd8fa0p-869, 0x1.819212336e2afp-523
+0x1.012185cb5e155p-672, 0x1.dcbc907d906f0p203
+0x1.964221fe0b0c5p-260, -0x1.0000000000000p-64
+-0x1.172f10899cbcep669, 0x1.e4e656fea6c19p663
+0x1.e356e63b681dep989, -0x1.dd9d772868663p41
+0x1.ccd0118265376p287, -0x1.22ae0058250b6p184
+0x1.3de177d6762ebp742, -0x1.ebc180d571e12p58
+0x1.04caa30a223c6p-294, 0x1.0000000000000p-64
+-0x1.e0ffa63b800fcp-938, 0x1.0a2c229973ed9p149
+0x1.e0ffa63b800fcp-938, 0x1.0a2c229973ed9p149
+0x1.d43815bff9e7dp-685, 0x1.825755f8cae4bp168
+0x1.fe3b21bec8806p456, 0x1.0000000000000p-64
+0x1.b26d766ab1f27p-162, 0x1.184f242e49092p249
+-0x1.1c70d750f61abp-899, 0x1.e3f3e7ec803dap759
+0x1.220fe763e4353p897, 0x1.6a6f650adecc0p141
+0x1.d6f7716723825p-58, 0x1.0000000000000p-64
+0x1.2b0242282c767p308, 0x1.c9dd84f859214p104
+0x1.7d0ee4b3bb946p-563, -0x1.9d1683c6f5c5ap226
+-0x1.8547b5d202937p967, -0x1.14e58570b43a5p-765
+-0x1.568636c53d51fp-638, 0x1.164257f3ab632p-455
+0x1.6d7936f1f5553p-435, 0x1.8f26767f92ccbp147
+0x1.7c18551f15775p147, -0x1.0000000000000p-64
+-0x1.f2ac8209992fbp-965, 0x1.5faaf4ec0340cp-236
+-0x1.f57620fa5afd6p-69, -0x1.096166fce916ep-683
+-0x1.5054f3c0b1320p-215, 0x1.8c01c0a19db1bp-285
+0x1.e41e64f79a6a9p404, 0x1.0000000000000p-64
+0x1.71fc41e25fe85p-413, 0x1.4acb80e80f0b2p214
+0x1.fbf477dec9138p-661, 0x1.0000000000000p-64
+0x1.7575c7cd67604p498, 0x1.0000000000000p-64
+-0x1.f4dd41d434b62p-205, -0x1.981f66551fd64p805
+0x1.76ac564847250p-870, -0x1.0000000000000p-64
+0x1.bb0e222493e31p-632, 0x1.16ad202a7c871p27
+-0x1.079a76db55d95p-974, -0x1.19d4717967203p-409
+0x1.68a7c79597132p-227, 0x1.6c3871ff9ad60p195
+0x1.4961c76e0940cp271, -0x1.0000000000000p-64
+0x1.04cf75ca8337cp-273, -0x1.0000000000000p-64
+0x1.4fffe4a25f260p152, -0x1.a0e3a7e58a0d3p149
+0x1.c125c40bb88b6p-281, 0x1.bedf8672d605fp215
+0x1.bcd59440339b5p67, -0x1.d225c2cc02d3bp60
+0x1.670e80ab2399bp-841, 0x1.887061c29e4afp131
+0x1.7c6ef76479beep839, -0x1.0f72a2967e041p98
+0x1.272f8550905f7p-961, 0x1.21a6d4787c14cp190
+0x1.0a33d4e39655cp-424, 0x1.4dafa3da87794p162
+0x1.a34e21945e568p-641, 0x1.3a0a05d61f5e4p119
+-0x1.b57493dffe1c3p68, -0x1.8e19843fbbd1ep515
+0x1.a8ce11ea61121p248, -0x1.7b2376aa515e8p115
+-0x1.5feca3ddab161p-509, 0x1.3e0c341715e1cp217
+0x1.6695a0cf6063fp-689, 0x1.1852d463ea98ep37
+0x1.9367127039f77p-293, 0x1.adbe75323caaap47
+0x1.6ad5c2f704166p-336, -0x1.9bf7b7271daefp100
+0x1.6791a1f6e89bap-845, 0x1.07e4c362cf895p92
+-0x1.20d7f6086ddb2p143, 0x1.687a7454403f4p337
+-0x1.9bd727a165453p-810, 0x1.742fe1f2bf2dbp-551
+0x1.40c3b16a0dba0p438, -0x1.67a872ec62dadp90
+0x1.5e0ab0f983abfp629, -0x1.0000000000000p-64
+0x1.c929a231173cfp844, -0x1.f25c7501c8144p116
+-0x1.410ad6057e935p204, 0x1.bdb5a3d649e74p-928
+0x1.9f222254cab3fp-817, -0x1.0000000000000p-64
+0x1.7f7d22b44403fp1007, -0x1.2299d752e308dp177
+0x1.41f824f624f36p511, -0x1.0000000000000p-64
+0x1.9fbb158e5d5dfp-525, 0x1.f803767193e3fp31
+-0x1.e6a1216cab6d4p-260, 0x1.100d3600b5996p935
+-0x1.dd23855d0cc3ep1003, 0x1.3411e38397aaep-158
+-0x1.3a9e0585f7979p-827, -0x1.db64725e35a3cp-259
+0x1.ce93a02ba2924p866, 0x1.0000000000000p-64
+0x1.445bf157156d4p-100, 0x1.0000000000000p-64
+-0x1.ba1ca38fc92ebp-848, -0x1.9270247b4b009p-609
+-0x1.5ac2b6a0c0476p-172, -0x1.595d419d9babdp-399
+-0x1.94f2b24fd7b65p839, -0x1.a42b466df80e1p519
+0x1.bf66704c603f1p-859, 0x1.430eb110359f6p-63
+0x1.e9ccb07667b5fp-435, 0x1.e7cec7c8e2138p229
+-0x1.bcd59440339b5p67, -0x1.d225c2cc02d3bp60
+0x1.a5e7c0a9c79d2p-503, -0x1.0000000000000p-64
+0x1.91aa125544e6ep681, -0x1.0000000000000p-64
+0x1.5371f5af7cd6ep-628, 0x1.078a57c0c5e30p147
+-0x1.2890a668b0252p-207, 0x1.ec956130d1ea0p411
+0x1.70f496a3b1319p-183, 0x1.9f04e4dd9dee0p159
+-0x1.ab4c0689a295cp375, 0x1.ec1627c9f2374p-617
+-0x1.390d459924f44p-348, -0x1.8e36a55756005p481
+0x1.c1b483579742ap101, 0x1.a05a357f2d54fp236
+0x1.d0a84005691b7p763, -0x1.68f840a20c734p60
+0x1.f32d34d1fffd4p-40, 0x1.fc09869af26f1p131
+-0x1.e693e5dbee2e0p207, 0x1.2301f18cd9d27p817
+0x1.1f72a3d4f7881p-764, 0x1.4617565381163p177
+-0x1.7f69c3aee139ep-648, 0x1.1f42e1d53ae48p597
+-0x1.adc7f1f9fdc02p38, -0x1.a07af4087ad66p1011
+-0x1.923d01b1c3960p-276, 0x1.2c6710910e47ap889
+0x1.6b60a2accafe3p977, -0x1.78f4404c514b7p170
+-0x1.0a2a3540be5a3p302, 0x1.3259b15ad5075p-333
+-0x1.11e4c61e2489ep9, 0x1.f3ddd0aadf9e9p94
+0x1.e02943925b096p-651, 0x1.3e5010a3be270p137
+0x1.9887e07a7b4bdp-835, -0x1.0000000000000p-64
+0x1.fb9fd6c57d283p-969, -0x1.eb21f1c75479dp195
+0x1.55fb70ae2db62p-910, 0x1.b77402b5190d5p10
+-0x1.38b1775c225eep723, 0x1.7595a59a7ba8dp901
+0x1.fbdc30f777a6ap649, -0x1.ea19f696739e0p183
+0x1.c2b5309403401p760, -0x1.0000000000000p-64
+-0x1.3d6de154feafep496, -0x1.9763760be8c9dp-161
+0x1.1c0a33e2b3719p-116, -0x1.0000000000000p-64
+0x1.06b1024b8b4bap471, -0x1.cd9f24d503076p59
+-0x1.6d0d67d7d2ad2p627, 0x1.35c77413a4d2fp190
+-0x1.881467b6c56d5p-194, -0x1.465995072de7cp707
+0x1.1147d4d59a3a5p-952, -0x1.0000000000000p-64
+-0x1.c319328022c2cp890, -0x1.4a627098d6e49p170
+0x1.993864ddbc05dp562, 0x1.0000000000000p-64
+0x1.f9abd78250a64p633, -0x1.f104e2772f8cep141
+-0x1.4d87f27b51978p-916, 0x1.073e35dc85a96p-1003
+0x1.1e8e0347dd99bp278, 0x1.0000000000000p-64
+0x1.7fbfc71fde6edp891, -0x1.0000000000000p-64
+-0x1.ae86836ca4d83p659, -0x1.5153616fefc6ap-61
+0x1.0452d237e1de7p-518, 0x1.296675c74320cp87
+0x1.12fc06ee54ac1p615, -0x1.0000000000000p-64
+0x1.887c234a8cc63p-708, 0x1.ae5fb57f66c84p175
+0x1.4978c021c25cbp-130, -0x1.115a65f48b23cp80
+-0x1.a1e733c9fd87fp552, 0x1.cef7045a6012ap811
+0x1.f98611b7c6a51p538, -0x1.0000000000000p-64
+-0x1.858f201dffc93p26, 0x1.6a110485981d4p-285
+0x1.84297333218cep712, 0x1.497396c926ddfp73
+0x1.12c3e319b6a54p-783, 0x1.0000000000000p-64
+-0x1.8ee011da43d65p-879, 0x1.7b6cf1473438ep670
+-0x1.4978c021c25cbp-130, -0x1.115a65f48b23cp80
+0x1.f057a19099427p-736, 0x1.0000000000000p-64
+0x1.407a2417c0b48p413, -0x1.90cbb0161a8c6p12
+0x1.04f492d848a39p-816, 0x1.ec7fb651e4df9p225
+-0x1.5290f79114db5p-971, -0x1.feede687f8cf3p-101
+0x1.fb0cc227fae39p-669, 0x1.924f06f662685p143
+-0x1.7d10c2a023848p734, -0x1.86a912207d0c3p757
+-0x1.5ebd0337bf9f3p945, 0x1.cb53f1b618ab5p465
+0x1.cef8d3cce5e81p531, -0x1.0000000000000p-64
+0x1.cdc7962fdc900p51, 0x1.0000000000000p-64
+-0x1.04f492d848a39p-816, 0x1.ec7fb651e4df9p225
+-0x1.23221091a234fp828, -0x1.b08e262c8eca5p972
+0x1.bc16f113ad6ebp-101, 0x1.7c8311241b744p169
+0x1.e1c163876ccdcp843, -0x1.0000000000000p-64
+0x1.3daea5a429d79p-639, 0x1.0000000000000p-64
+0x1.e99204b546e58p215, -0x1.0000000000000p-64
+-0x1.950493326e8b2p679, 0x1.fdc874cefc875p-615
+0x1.016dd4fb0abd2p853, -0x1.c82dd72b4ab44p102
+0x1.d0f6737fbcdbbp-353, 0x1.081a8002b8e53p211
+0x1.f1d1f5c67bb5ap-321, 0x1.d64ec22c49552p176
+-0x1.8a60721e2686ap880, -0x1.936f75de69956p-750
+0x1.8368e4ed700bbp-57, 0x1.0000000000000p-64
+-0x1.7c5d037e915cep538, -0x1.aa30914f141e5p-886
+-0x1.9ff485cb26fa7p227, 0x1.82c1703140ceep465
+-0x1.bc56157fec778p-542, -0x1.898e228074677p-385
+0x1.eb16d56eb1d78p-224, 0x1.393ef32f107adp205
+-0x1.10bf71d60a4d1p-524, 0x1.335ac0ca90f62p1004
+0x1.392bc7ade8723p528, -0x1.50ea12907473fp21
+0x1.a26d44e3b408fp-896, 0x1.beda15a2a2799p129
+0x1.6d0d67d7d2ad2p627, 0x1.35c77413a4d2fp190
+-0x1.47a744db0c087p689, -0x1.0445309d5d5bdp-205
+0x1.0d3c074692057p781, -0x1.885716d3dcfbap146
+0x1.5feca3ddab161p-509, 0x1.3e0c341715e1cp217
+0x1.001af5dcc9beep589, 0x1.0000000000000p-64
+0x1.0b0f700297c73p388, 0x1.0000000000000p-64
+-0x1.4591e2de659a7p796, 0x1.4ab1a273f0697p736
+0x1.1e68964b6cc85p6, -0x1.d50762f9e9ce4p59
+0x1.40a7f08b7509dp-373, 0x1.6784b7c373049p207
+0x1.c43b310d38279p-924, 0x1.d4b5d23a0b96dp239
+0x1.421436f55761ep-12, 0x1.320481b0055a7p227
+-0x1.135fa0f337e6ep856, -0x1.ed172226e05edp335
+-0x1.d0a84005691b7p763, -0x1.68f840a20c734p60
+-0x1.6153c39025700p908, -0x1.87eff6801054cp257
+0x1.ad64258a1c8aep201, -0x1.eb202553cc800p129
+0x1.09a810c8ff945p866, -0x1.0000000000000p-64
+0x1.d14433f742c09p-360, 0x1.f4ff819b628ddp21
+0x1.0c04a59d1fa4fp562, 0x1.66b354392a531p134
+-0x1.84297333218cep712, 0x1.497396c926ddfp73
+-0x1.fb9fd6c57d283p-969, -0x1.eb21f1c75479dp195
+0x1.dd87e7279e72bp748, -0x1.0000000000000p-64
+0x1.e494b3d72a143p612, -0x1.3b94e6aa337a0p-57
+0x1.4a6b277bdabe4p-613, -0x1.0000000000000p-64
+0x1.aa78012aaa9c7p338, 0x1.0000000000000p-64
+-0x1.ab74577adade9p149, -0x1.2057c78ee21ccp31
+0x1.3974c5e1e2049p105, -0x1.d3dbb0fb0baf1p54
+0x1.c83bb023360a9p879, -0x1.0c6922624c625p97
+-0x1.e21c0605b5f2bp-634, 0x1.f28232c2ebba3p-74
+0x1.e61ed69f4f3e5p558, -0x1.0ee6a03187e13p128
+0x1.d32cb4d190af4p-556, -0x1.0000000000000p-64
+0x1.97a202fe3d99bp812, -0x1.12eba5e07e17fp131
+0x1.5cbf140578025p750, -0x1.0000000000000p-64
+0x1.8754d2c071fd1p-796, -0x1.0000000000000p-64
+-0x1.c24a21659e391p874, 0x1.8fca31719d26fp-203
+0x1.db5587ed33e3dp-392, -0x1.0000000000000p-64
+0x1.59b6e3bd2734fp959, -0x1.0000000000000p-64
+-0x1.2f68f32a5979ep367, 0x1.d77b92aecf0f8p-414
+0x1.73e621f69389dp222, -0x1.1235366e0a84bp216
+0x1.076b75274a516p-7, -0x1.0000000000000p-64
+0x1.2505e4b701385p-178, -0x1.0000000000000p-64
+0x1.ae0c974a70a8fp607, 0x1.0000000000000p-64
+0x1.b2c344636c704p595, -0x1.9d1b879d64e7dp213
+-0x1.a6f695e9d29eep-629, 0x1.dad8811e62691p422
+0x1.e5aca4566a08ap234, -0x1.645ed34f63b48p65
+0x1.67faa10de96c9p-929, 0x1.0000000000000p-64
+0x1.503a50f3f36c9p-313, 0x1.a1b537c589279p212
+-0x1.e62711b5b18aap-336, 0x1.176d22b7c6703p-81
+-0x1.78e6d2fb3c6c8p-802, -0x1.4354b70f8d56ap-407
+-0x1.a9b890e6a309bp-974, -0x1.fc73521e05c84p446
+0x1.605c070891e95p751, -0x1.00e8a0f55071cp255
+-0x1.8e249352e8ed4p-690, -0x1.d751a5bb2c420p-254
+0x1.67246027c2465p584, 0x1.3aaa16d492946p178
+0x1.c53735a56d1edp610, -0x1.630662efaf0c6p60
+0x1.d54a131bae182p142, -0x1.a313606a0459dp220
+0x1.38afe5f1ed5b4p-779, 0x1.0000000000000p-64
+0x1.f2aa76462ad42p-982, 0x1.0000000000000p-64
+0x1.e188a166c06b6p45, 0x1.0000000000000p-64
+0x1.fbe85766fae96p-463, 0x1.91c903c89b075p85
+0x1.3342d36ecf081p28, -0x1.0000000000000p-64
+0x1.c2b0a036a1828p719, 0x1.0000000000000p-64
+0x1.ba7f308dc60ddp517, -0x1.b38d014638da6p246
+-0x1.075aa7ba85f42p624, -0x1.a357d32f45a61p-867
+0x1.1fbb4362bf313p995, 0x1.d039c2c0e18bfp-6
+-0x1.150426e803137p622, -0x1.9bafe2efa3e89p39
+-0x1.3f2456d5cba52p116, 0x1.fa9ec45f18306p-389
+0x1.8e58945bd1087p-701, 0x1.0000000000000p-64
+-0x1.ab0ef29932d78p111, 0x1.4313d75c1df97p658
+0x1.ee3e13dd00d34p1016, 0x1.d6b3d3b9034c1p85
+-0x1.7f0bd006c0d62p-324, 0x1.8210646a5ccddp871
+-0x1.c004d2256a5b8p402, -0x1.a01df480fdcb7p98
+-0x1.3717c2e75f865p-749, -0x1.628ab47e4b9c7p-879
+-0x1.dfb414ca1e89fp780, -0x1.b1a6d17b59340p927
+0x1.2bb340a5c99b8p772, -0x1.4cb4a208cd38ap49
+0x1.983d90ffcdc95p-131, 0x1.294857e7a5d9dp66
+0x1.0789a00a3ff0fp-950, -0x1.0000000000000p-64
+0x1.6816c6cd93ea9p112, 0x1.985412f1ac3d6p104
+0x1.3c0e604f8974bp-226, 0x1.0000000000000p-64
+0x1.07acb29e12fc1p687, -0x1.edff80d6b306fp107
+0x1.22c1d3b2c0e45p135, -0x1.9a5dc703e46dbp204
+0x1.ede956a719d56p248, -0x1.80e8e672e144fp156
+-0x1.ff6263662c8fbp-263, 0x1.cf3867b2bac05p652
+0x1.f01e46c129d76p-5, 0x1.00d113cf96023p137
+0x1.45cf928146851p636, 0x1.26b1c5666d711p131
+-0x1.768376c2f7584p563, 0x1.017143ae97b27p545
+-0x1.1f72a3d4f7881p-764, 0x1.4617565381163p177
+0x1.dd9431675dbb5p-114, 0x1.0000000000000p-64
+-0x1.64cc1762105b7p-569, -0x1.2d69b27570067p840
+0x1.bd1077dadd530p235, 0x1.0000000000000p-64
+0x1.0aa166c2b93bdp488, -0x1.48d03430453b8p213
+-0x1.b513845f09747p-331, -0x1.d04e154527b26p685
+0x1.5c97b3a12df62p696, -0x1.e160e008f7d3ap89
+0x1.8eec91bde3d69p-376, -0x1.0000000000000p-64
+0x1.7d29f253d3e79p636, -0x1.8e30a1ba55f7fp77
+0x1.c004d2256a5b8p402, -0x1.a01df480fdcb7p98
+0x1.52b9d41aaa1e9p-589, -0x1.292cb15f1459dp46
+-0x1.ea9ca6fa0919ep-279, -0x1.601e44b6a588cp40
+# pow slow path at 240 bits
+# Implemented in sysdeps/ieee754/dbl-64/slowpow.c
+## name: 240bits
+0x1.01fcd33493ea3p596, -0x1.724bd4e887783p-14
+0x1.032ff59ab34fdp-540, -0x1.61e3632080b87p-24
+0x1.045c337b80f53p304, 0x1.dc3404c30fa69p-56
+0x1.0681338469475p-294, -0x1.3562210f27dfap-51
+0x1.0b55c01eab2a6p-447, -0x1.cd7162fecd483p-48
+0x1.0b74d4b709002p-811, -0x1.0af1478682e96p-50
+0x1.0e4d10f3aabc8p664, 0x1.e2bde3471eaa1p-55
+0x1.110607de11aa5p120, 0x1.dcec269cfd865p-47
+0x1.132aa4cc6f38bp-751, 0x1.366ca7979d9bbp-8
+0x1.138ae6f5a6dadp-680, 0x1.890a0755fce7ap-40
+0x1.1b7b95bdc6400p467, 0x1.ec36f5f75ce4cp-8
+0x1.1c20e7f14086cp-788, 0x1.f22967f8b5d7cp-48
+0x1.278262637b59cp446, -0x1.1aab83169f61cp-10
+0x1.2936f2eb01500p-234, -0x1.aa25c56c7a42ap-51
+0x1.2991068d7df8dp-895, -0x1.e22e0335a6813p-19
+0x1.2a4320a5a4e06p342, 0x1.a60de202d0f39p0
+0x1.2baa57016f98bp445, -0x1.19b39156d7af6p-42
+0x1.3003b731560f2p189, -0x1.d03a35d7809bbp-6
+0x1.3098f631b79b3p322, 0x1.936cf77d12901p-58
+0x1.329f9083895d6p-470, 0x1.c4e0407eac9e1p-60
+0x1.32e62120a48dep-373, 0x1.8c03970ea6143p-15
+0x1.3b69741c89827p-951, 0x1.d7e2d50ab916bp-13
+0x1.46d346d411a30p-451, -0x1.5bed1300261dcp-37
+0x1.48d0870fc99a7p-691, -0x1.4f6541a43b8cdp-5
+0x1.49ae5141ea416p-825, 0x1.cfc4b51dbe592p-24
+0x1.4d1fb5a2a4d73p738, -0x1.d2a54658b1df9p-50
+0x1.4ddb12f9500cbp962, 0x1.48bc1158eb70ap-15
+0x1.4f51d32b02376p758, 0x1.11d1409aaea9fp-27
+0x1.54f723dd63e3bp605, 0x1.6c02f2514de2ap-23
+0x1.5529070b8d631p-489, 0x1.1c3dd76010b92p-37
+0x1.569bf17eb40dfp217, -0x1.8cb97627ae884p-31
+0x1.5e2892c719a5ap817, 0x1.f0e3d4b66e9c0p-11
+0x1.619a049c49284p329, -0x1.0bc7b3735d182p-12
+0x1.62e6745b17235p344, 0x1.86dcb0cd4e584p-39
+0x1.6532120398cb6p374, -0x1.dd57d385dde4ap-56
+0x1.6ab9873394341p712, 0x1.6cec233df7f19p-59
+0x1.6d7c56b0ec1f9p723, -0x1.864ae3aa72d4ap-11
+0x1.6decf38117b3ap-629, 0x1.e1c8b1eaebfbbp-27
+0x1.6f57771705979p518, -0x1.44fbe6fcf4182p-24
+0x1.6f57b14f5f248p880, 0x1.e2554493e7f0cp-2
+0x1.6fee9735004b7p-71, 0x1.8eaf1527d88bep-48
+0x1.7190e00c6cae0p-495, 0x1.705594f79ee43p-33
+0x1.7238a1904c29cp40, 0x1.d454673e675eep-30
+0x1.76aa529cae2a7p-457, -0x1.0652207d202acp-45
+0x1.78e630a117b59p-105, 0x1.ecb1a67d5b9dcp-32
+0x1.7d0976b552b5bp-316, -0x1.9c52a2a02f146p1
+0x1.80a10162f3c9ep-462, 0x1.af6ef1f1d004ep-54
+0x1.8794943d6e34bp-745, -0x1.0c7df064d51e9p-10
+0x1.8a3d749288cbcp-469, 0x1.a9bf9202d914fp-46
+0x1.8da421e64749bp-540, -0x1.494a81df89b6bp-26
+0x1.8e05154795810p247, 0x1.3c04802f44ddcp-47
+0x1.91b9d616c0878p-313, 0x1.a3c9263d26b2ap-30
+0x1.95e973a94d414p-229, 0x1.d83d8244e6566p-28
+0x1.9a3217b4fb0e5p-990, 0x1.82853149b1e30p-42
+0x1.9e2556775fc02p-377, -0x1.a6ec93193a127p-38
+0x1.9e83d7b0c831fp-906, 0x1.6a3485e3e4fe8p-21
+0x1.a51cf0f0f49f7p751, 0x1.07b941a3af664p-12
+0x1.a883c2cef7802p-432, 0x1.b5ee3711a8260p-34
+0x1.aca70602f90f3p205, -0x1.a40d85c2b0ddap-55
+0x1.b118069c4e0f8p133, 0x1.85ed946b41169p0
+0x1.b1ada0a8ca383p-699, 0x1.ddfec76f67c1fp-37
+0x1.b236b6872f638p419, 0x1.fa8f6525758b6p-5
+0x1.b2413258b83b1p892, -0x1.bcea65c80772bp-12
+0x1.b51563dac9885p-571, 0x1.7a1e16e485fdcp-30
+0x1.b5e4833e40f76p-445, 0x1.44e23325bcc3fp-22
+0x1.b6a2168ec3212p-674, -0x1.35bda0265f18bp-30
+0x1.b8dd676727fa1p124, 0x1.3605e6ec76006p-29
+0x1.b95437f961192p-500, 0x1.9276767f94721p-10
+0x1.bb6647f65218ap741, -0x1.b9dd250927a8ap-6
+0x1.bffdf0efb5c4ep-703, 0x1.85fac77188c01p-9
+0x1.c0345583020c9p236, 0x1.de31b044cb918p-37
+0x1.c4b9163604b90p548, 0x1.0a51f116977d3p-17
+0x1.c66ec323be811p-726, -0x1.8829c716f5ddbp-24
+0x1.c69da72348031p-390, 0x1.109f77bb4a2a2p-37
+0x1.c712558c00177p-883, -0x1.9cf047e60fa38p-8
+0x1.c74df6d64da29p-154, -0x1.bdba55e26ef07p2
+0x1.c75fa2c065d1dp731, 0x1.fa827749d723cp-21
+0x1.c8f5b7f54aa5fp-998, 0x1.59fa40e2d7a95p-10
+0x1.c957e3768f0c2p-102, 0x1.0047f59669535p-5
+0x1.ce0615637c099p-737, 0x1.b1795333136d6p-59
+0x1.d1a7872210098p245, -0x1.afd8c410a1918p-16
+0x1.d39ee7b8cae5ep722, 0x1.639a1575eb95cp-56
+0x1.d4b4276a02096p-5, -0x1.7ff8354a6ba9cp-21
+0x1.d500d1daf1bfcp-352, 0x1.e4c7243104fa7p-34
+0x1.d684c68e86321p-661, -0x1.11305765580a9p-13
+0x1.db08f6fcae9f5p-637, -0x1.a8cba163bd1dep-21
+0x1.db09e6535414dp809, -0x1.0b10e70ed8d88p-48
+0x1.e50573d07ecc0p41, 0x1.19ec44b6d99e6p-58
+0x1.e59505ef043e0p926, -0x1.3201c7a1e8882p-62
+0x1.e6b9b28e678a4p546, 0x1.70e042daa89e7p-30
+0x1.e9a4e6bbbf235p-851, -0x1.1d70f7b787412p-21
+0x1.ea68a16e4b7c9p-733, -0x1.ee7f337779825p-34
+0x1.f0e76025ece1cp642, -0x1.bdc0d0d7020d5p-57
+0x1.f1bcb1d70f84bp-568, 0x1.98c5d3b11e934p-21
+0x1.f568146a8c658p240, 0x1.4def9749a6a7ep-44
+0x1.f75bd43867225p-454, 0x1.34b1e5cb0df40p-16
+0x1.fae7a09d10f34p955, -0x1.f7f8439082552p-31
+0x1.fae913d4f952ep-809, -0x1.4b649402fce63p-6
+0x1.fe6d725408f24p484, -0x1.25f4f6441d2e4p-12
+0x1.ff6393f9150ccp-718, 0x1.a0cb50a9bf2f3p-31
# pow slowest path at 768 bits
# Implemented in sysdeps/ieee754/dbl-64/slowpow.c
## name: 768bits
1.0000000000000020, 1.5
+0x1.006777b4b61dep843, -0x1.67e3145491872p-1
+0x1.0477a5cfb1972p-402, 0x1.8742e7a1ce99dp-1
+0x1.0827a160ab475p-239, 0x1.fcae51d2d997dp-1
+0x1.083723672b1a4p-204, 0x1.baddc57f1404cp-2
+0x1.0b39f4b2f5c4fp-546, 0x1.7d02a31183f36p-1
+0x1.0e2d62ea9d078p-68, 0x1.8afb43919ece2p3
+0x1.0fedd1fd9bdc5p-1011, 0x1.c0ce64b178832p-6
+0x1.10b984764821ep724, -0x1.36e872083e630p-4
+0x1.12424342d99bbp686, -0x1.f8d4e18b1b309p-5
+0x1.1335f40a059c7p1014, -0x1.5818e19224448p-2
+0x1.14185484cbdb2p-780, 0x1.23f8d7d596280p-4
+0x1.14f5b49e12b8fp-751, 0x1.522c717bca3eap0
+0x1.15fe345b21e2bp399, -0x1.0a09061cd1de9p-1
+0x1.17c3e75436530p104, -0x1.ef30d09c541e9p0
+0x1.1e5296bbfeea7p747, -0x1.f68df5996bfedp-1
+0x1.1efdd081a8d35p-90, 0x1.7c7d10d98a3c9p-1
+0x1.203101f62452ap317, -0x1.3be834bfd34fap-1
+0x1.29cb8617add92p968, -0x1.9cbe73f892a16p-6
+0x1.2d75353d5df74p719, -0x1.e2f317d7b2c01p-1
+0x1.2f08247664913p592, -0x1.35ab9793384a5p-2
+0x1.2ff58217e86d7p725, -0x1.2c98b6be067ccp-2
+0x1.3113614c8b9e1p159, -0x1.fc2f4279c8cbep-1
+0x1.3115402118c24p134, -0x1.d435f65f0eefcp1
+0x1.32e5a1ba96cdap52, -0x1.f7d8248930c17p-1
+0x1.346f712d4c234p78, -0x1.830235fa4eb2cp3
+0x1.35ea84ad8b4fap742, -0x1.728dd1bc7d70cp-3
+0x1.36b91497c147ep579, -0x1.b7e7b0d1ad44dp-2
+0x1.3752c6b5da9e6p351, -0x1.2a00f003acdd1p-1
+0x1.3bccb31761b21p-193, 0x1.bdd7b5da189c8p1
+0x1.42c0b561c10bep-850, 0x1.dcdee5de63ebcp-3
+0x1.4520f56ca1422p-471, 0x1.348c312c9f319p-1
+0x1.46e7406c8e11ep546, -0x1.876f67bed28c4p0
+0x1.4ba3f35d2f4afp-333, 0x1.6e39f0895a072p-3
+0x1.4cb3303ab8786p-838, 0x1.fe88a032de46ap-1
+0x1.4d61505a36a60p234, -0x1.45c3e271db1fep1
+0x1.4fcff0e946b1ep909, -0x1.90fa07de4eea5p-1
+0x1.5172c6b32f2aep293, -0x1.fb0fa58fc74abp-2
+0x1.51e4b4afeb58ap-2, 0x1.f184d702a5f4bp3
+0x1.5212b31c06068p306, -0x1.e8e5c1b09f30dp-2
+0x1.55c7413fbdd0cp-168, 0x1.68687102fa0b8p-3
+0x1.5975f5580b29cp361, -0x1.cda627a0b0899p-3
+0x1.5b3d77ff20607p-694, 0x1.95877099718f5p-4
+0x1.5b85e6f45d26fp763, -0x1.b727a35d92656p-4
+0x1.5c83b2d038766p-984, 0x1.4232c330c81b9p-1
+0x1.5ec6e7e275af2p773, -0x1.8da470ca7dd62p-1
+0x1.60b0e6123149bp-743, 0x1.25a696ab5fc09p-4
+0x1.6567f1ab52caap-769, 0x1.ff57c1e78cc81p-3
+0x1.689cb423d7ec7p95, -0x1.71d3f5a46c36fp-2
+0x1.69e2a022e3db6p-672, 0x1.209f77b27f146p-1
+0x1.6a6bb05202fd0p-621, 0x1.bc1f316194126p-5
+0x1.72b181bf25fd7p303, -0x1.629be448db4f7p1
+0x1.7667d46544feap887, -0x1.e92ef7681c985p-3
+0x1.776f45edc5aa6p967, -0x1.8b34366de0584p-3
+0x1.77d4e3169e8fdp889, -0x1.7159c5a0e440ep-4
+0x1.792c56f01b25ep-474, 0x1.45237144dc76dp-2
+0x1.7c4d814b67ce3p-30, 0x1.32f4217aa69bfp2
+0x1.7fec1487cd8c2p-790, 0x1.373ec1a13952fp-4
+0x1.8280e15921e7bp-544, 0x1.17f4d1f294f23p-2
+0x1.8be4858d98288p395, -0x1.8ecf7076c1cadp-3
+0x1.8c1a3651b2a3cp251, -0x1.fe464693b592fp-1
+0x1.95b8339b15437p-805, 0x1.c590d48f70e09p-4
+0x1.9ea712eab015cp643, -0x1.9f9a2005cd04dp-2
+0x1.9ec010ebb0fb4p966, -0x1.322de55e2f27dp-3
+0x1.a055b4cacfb90p692, -0x1.45a6d0302680bp-4
+0x1.a2541721f7549p508, -0x1.46b5008fed93ap0
+0x1.aa4ea2a62e6d3p146, -0x1.4948a7f0b9447p-2
+0x1.aeab6627bd7fep-883, 0x1.e334b6e331bcfp-4
+0x1.afc9062dd5d6cp285, -0x1.704640b7e8a60p0
+0x1.b2e0e5768b8a4p700, -0x1.e3cc63841415cp-1
+0x1.b44dd7483ff8fp762, -0x1.376275f0c7542p0
+0x1.b461c649ef81fp-297, 0x1.757d3606ad420p-2
+0x1.b47177acf880bp162, -0x1.dbc2c7336fcdcp-3
+0x1.b5d597a5647bep312, -0x1.0d87f0669fd98p-3
+0x1.b5f5f6894898fp824, -0x1.aeec9752febccp-2
+0x1.b78b84a583db6p711, -0x1.443983558960ap-1
+0x1.ba15f474f95a7p250, -0x1.9d46c49adf4ecp1
+0x1.ba6e74fdcaafap685, -0x1.c69a403d3e719p-3
+0x1.c14ed18d4eb53p652, -0x1.231bb32f82a5fp-1
+0x1.c44727ecf4620p-965, 0x1.c61391aad6567p-6
+0x1.c492c6882ec27p-423, 0x1.6bb9123ab40fdp-1
+0x1.c525d219db143p-681, 0x1.5e10738bb6aefp-5
+0x1.ca9510663b619p878, -0x1.8966f1a726428p-2
+0x1.d2d4d70d57384p-769, 0x1.eec5e348f3c65p-5
+0x1.d3275243b3fd2p-203, 0x1.a56f87acf7afbp1
+0x1.d5d3022665384p-509, 0x1.d4f984b477a34p-5
+0x1.dabf72e2c886fp642, -0x1.e930d581ea0c3p-3
+0x1.daffa04064cf7p799, -0x1.b944c271f477bp-1
+0x1.db25c4ae37695p710, -0x1.ff84b0c08defdp-3
+0x1.dc06652f06a70p-689, 0x1.f2eb368dd304ap-3
+0x1.e09726def851ap-784, 0x1.8d62918b2f6a5p-5
+0x1.e1561576de8f5p-470, 0x1.983137f5396b2p-2
+0x1.e5e4c7891da9bp-871, 0x1.5775130263654p-5
+0x1.eca182884f17fp-295, 0x1.af55d3375f461p-3
+0x1.f1c172bc4f401p-360, 0x1.f40476496c282p-4
+0x1.f244722a51df2p548, -0x1.20f7a2f2fc3e8p-2
+0x1.f422f159f235bp126, -0x1.339620de97b69p1
+0x1.f43463d9cef16p-845, 0x1.2c364792462fep-3
+0x1.f8b79758182dap-884, 0x1.ed6174093fca4p-6
+0x1.fa5c677254961p133, -0x1.c91962524971ep-1
+0x1.ff0544adacb78p649, -0x1.6c17c3a7210e2p-1
diff --git a/benchtests/rint-inputs b/benchtests/rint-inputs
index a5f83dc8f9..e9001f92e8 100644
--- a/benchtests/rint-inputs
+++ b/benchtests/rint-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
78.5
-78.5
4503599627370497.0
diff --git a/benchtests/sin-inputs b/benchtests/sin-inputs
index 08192d8f09..ae452a82df 100644
--- a/benchtests/sin-inputs
+++ b/benchtests/sin-inputs
@@ -1,3 +1,6 @@
+## includes: math.h
+## args: double
+## ret: double
0.9
2.3
3.7
diff --git a/benchtests/sincos-inputs b/benchtests/sincos-inputs
new file mode 100644
index 0000000000..3df4d2a23b
--- /dev/null
+++ b/benchtests/sincos-inputs
@@ -0,0 +1,27 @@
+## includes: math.h
+## args: double:<double *>:<double *>
+0.9
+2.3
+3.7
+3.9
+4.0
+4.7
+5.9
+0x1.000000cf4a2a1p0
+0x1.0000010b239a8p0
+0x1.00000162a932ap0
+0x1.000002d452a11p0
+0x1.000005bc7d86cp0
+## name: 768bits
+0.93340582292648832662962377071381
+2.3328432680770916363144351635128
+3.7439477503636453548097051680088
+3.9225160069792437411706487182528
+4.0711651639931289992091478779912
+4.7858438478542097982426639646292
+5.9840767662578002727968851104379
+0x1.000000cf4a2a2p0
+0x1.0000010b239a9p0
+0x1.00000162a932bp0
+0x1.000002d452a10p0
+0x1.000005bc7d86dp0
diff --git a/benchtests/sinh-inputs b/benchtests/sinh-inputs
index 3c8c546f0c..84a603dc3d 100644
--- a/benchtests/sinh-inputs
+++ b/benchtests/sinh-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
0.1
0.2
0.3
diff --git a/benchtests/sqrt-inputs b/benchtests/sqrt-inputs
new file mode 100644
index 0000000000..370bc05cc8
--- /dev/null
+++ b/benchtests/sqrt-inputs
@@ -0,0 +1,10 @@
+## args: double
+## ret: double
+## includes: math.h
+0.25
+0.75
+2.0
+4.0
+2209.0
+6642.25
+15190.5625
diff --git a/benchtests/tan-inputs b/benchtests/tan-inputs
index 629414fc73..982c2610a1 100644
--- a/benchtests/tan-inputs
+++ b/benchtests/tan-inputs
@@ -1,5 +1,3456 @@
-0x1.dffffffffff1ep-22
+## args: double
+## ret: double
+## includes: math.h
+-0x1.8223b3a325943p573
+0x1.a8a424675610fp845
+0x1.923370ded0653p554
+-0x1.759b34bb0cfdbp553
+-0x1.a390469582e59p924
+-0x1.cd9252152d901p462
+-0x1.e2d1d2e34fd97p568
+-0x1.b59d71a85565ep-15
+-0x1.be1224d8f2474p629
+-0x1.327c5786c74fbp559
+0x1.75e1260927766p519
+-0x1.d1ae866714e99p662
+0x1.a086249ef7bb6p159
+-0x1.008130223996dp463
+-0x1.f77636d051905p336
+0x1.dfed4714271cdp574
+0x1.7204451a9cfdfp372
+-0x1.31ab43b06eac7p703
+0x1.4866b5a4dfafdp978
+-0x1.cf2ba523a76c6p815
+-0x1.25bc94b7d96b8p604
+-0x1.b986e7275d085p225
+-0x1.8d4ed15015b22p740
+-0x1.58d231c6a5340p390
+0x1.5f14b443ceb0fp0
+0x1.40ae43729ddcap969
+-0x1.d4e9674fd10a8p528
+0x1.24d8e4308a916p413
+-0x1.b143609970b27p101
+0x1.b609b67cc8c6fp974
+-0x1.8fc291f86553fp171
+0x1.b24a7238fb771p275
+-0x1.cde032076fb81p545
+0x1.bbb5f22a04b44p794
+0x1.5bdaf73cb6febp803
+-0x1.58c180ec8edecp408
+0x1.b5e6345064274p152
+-0x1.83bd627132077p50
+-0x1.bb46e4e6e61a0p585
+0x1.bb9757f54f100p733
+0x1.c55d070f0ac5fp438
+0x1.3476a63166a0ep648
+-0x1.a15f134f42095p828
+-0x1.32e840e69acadp392
+-0x1.bf17857e50b11p559
+0x1.f73021afd46e7p407
+0x1.9f00e7f88fb55p775
+0x1.f64fe31245205p510
+-0x1.857c82089e8dbp933
+-0x1.e7c0240150699p244
+0x1.85f1e1ff46b97p607
+-0x1.8ac482283b408p507
+0x1.655985eb933b4p332
+-0x1.6e7ad10117706p577
+-0x1.9f9b018c5a565p944
+0x1.e15694711c05bp690
+0x1.623803fd581a2p555
+-0x1.58f8b25bde0c0p477
+-0x1.e019f3e23ca4fp648
+-0x1.6f1b061695e57p6
+-0x1.c4e4506f6c270p698
+-0x1.9249404f2bd69p-12
+0x1.f6df00b66684ap227
+-0x1.0a5ff4bbd59fap973
+-0x1.783723759a83fp66
+-0x1.f21b84834aef7p246
+-0x1.8e49927eadea1p587
+-0x1.eca7d45f5234dp631
+0x1.41b1c5ef9873cp95
+0x1.d449a6e011e9ep107
+-0x1.7caa53d604056p443
+0x1.7288a5f18c0aep556
+0x1.8d7ba3b2300e6p183
+-0x1.1747478ffe5b4p148
+-0x1.769a84af31c8ap851
+-0x1.e41b6039c9d89p23
+-0x1.273bf4a49e223p408
+-0x1.2d74708a8d553p7
+-0x1.71a9314bbf5abp11
+0x1.63c804f1dcb3bp654
+0x1.a81bb1a86a2f5p368
+-0x1.bbb1d0d267af6p679
+0x1.574264e94bcacp646
+-0x1.1ee57113a55bbp916
+-0x1.e043311b22e8ap45
+-0x1.2fd7c5340e069p842
+-0x1.2faa426020fadp642
+-0x1.92507362ad808p175
+-0x1.9318c5c281337p897
+-0x1.aeada555a018ep178
+0x1.04d4f6535e33fp367
+-0x1.e49b378f96eb8p749
+-0x1.064e801d2dc83p75
+-0x1.64deb34cefc2fp403
+0x1.6d2e677f31896p467
+-0x1.466ac0cf4dd29p746
+-0x1.609c83df01cf5p137
+0x1.d960e2cbe66a9p449
+-0x1.602bd715ecb91p46
+-0x1.b0af218f7c6a5p629
+-0x1.21a921acce2fdp22
+-0x1.f83004121d518p837
+0x1.4ca7a2fb63bc5p156
+0x1.191295449db9bp54
+0x1.c9bd7171fde58p949
+-0x1.e4162302d0c20p397
+0x1.077f42760d255p258
+0x1.a3b173403bf03p644
+-0x1.c9ff841ec836dp889
+0x1.acf92502f5b3cp624
+-0x1.b8c23518af5e3p508
+-0x1.88e416ff6ad6dp268
+0x1.6280e7b9872b9p807
+-0x1.7cd6b732512b1p212
+-0x1.67ee930f4dcfcp388
+0x1.64f4659e0b759p93
+0x1.6cfa374d378c3p788
+0x1.c1082531b7386p261
+-0x1.b8d1e18e1c2ccp953
+-0x1.46d403df71732p268
+0x1.07f2566a38fafp589
+-0x1.cb5ed766d06c9p356
+0x1.64e9c5f032a8bp358
+-0x1.a81485a8eb7a9p15
+-0x1.29d6113c439ffp960
+0x1.46f14425dfb7cp-22
+-0x1.46d884db8e124p760
+0x1.b6b2023f59712p442
+-0x1.f8fea40ac8ffep855
+-0x1.d363d57ed5fe2p800
+0x1.385f65d4ccb30p812
+-0x1.b13d912fc1851p600
+-0x1.189687400f8b5p930
+-0x1.3359b450bf3bfp285
+-0x1.64d114ac159fep767
+-0x1.9bc8e4afa247fp213
+0x1.1299f68a1c892p327
+0x1.8bca15f2a63b3p771
+0x1.92d6366b40cd5p704
+-0x1.c7cbe0307540ap1005
+0x1.d2bfc0eb2f0f9p665
+0x1.788336461cdf9p887
+0x1.64c99758893dbp728
+0x1.364825de23c96p378
+-0x1.033600f7ce301p531
+-0x1.34862202e7ecap256
+0x1.6a6f4552a83b5p949
+-0x1.a55017d2ab992p179
+-0x1.a70fc12d64d86p591
+-0x1.7f00f4d75d44fp563
+-0x1.58a4c1d691cb1p209
+0x1.37a2726f0d414p445
+0x1.b7c3035071ef7p459
+-0x1.3c5d37b781aecp256
+0x1.a979508d7bd0dp576
+0x1.708213f2fd915p528
+-0x1.2054b2257c924p889
+-0x1.0446b4b20cd97p573
+0x1.9cba327cc49c7p207
+0x1.f14ce310e4517p147
+-0x1.8e4313d57243bp405
+0x1.32f131e4e2c5dp-7
+0x1.7b7d4171a5b89p761
+-0x1.768b96404272dp319
+0x1.e389677da758ap725
+-0x1.f7f1270f6df26p963
+0x1.97bd878c7b4e3p597
+-0x1.b35ac52109914p372
+0x1.86a351193c827p418
+0x1.c78c9454775e2p325
+-0x1.f7093192ede9bp819
+-0x1.8f7823d7fe58fp200
+-0x1.2068039af64a2p944
+0x1.95a951ef8e07ap424
+0x1.98b5776341626p241
+-0x1.661af6c71f830p275
+-0x1.bded24148bf8fp265
+-0x1.da06d35c1e049p352
+0x1.50c4c103b3adep946
+-0x1.d89fc3a1a0038p683
+0x1.e01904f9e518bp65
+-0x1.904ac477905adp21
+-0x1.566ae646625edp938
+0x1.3fec71e5f5cbcp514
+-0x1.88db248db4dbfp865
+-0x1.5dc2c3388d7bbp213
+-0x1.b5ac97796d94cp400
+-0x1.7bbad1b8269a2p305
+0x1.2115275214bf2p809
+-0x1.b6727037ce307p726
+0x1.983327e1249b5p120
+-0x1.d10951541ff1fp728
+-0x1.4f84e0b4a8cd1p28
+0x1.0dbc3589068fdp241
+0x1.1e9a9359bb743p399
+0x1.a923364cdc026p924
+-0x1.20ab54a355b5ap996
+-0x1.90c1f77a05003p285
+-0x1.2772c2d8adf26p15
+-0x1.d75d54bd7efd8p221
+0x1.5d0352b2cac14p335
+0x1.92297454b3ba4p203
+-0x1.e74193f05cdd7p411
+0x1.e526b6137b06ep800
+0x1.e99bb5f69bb23p558
+-0x1.12fb97edc8ef7p509
+0x1.93f9f4c363c48p114
+-0x1.7da8c406ad9edp290
+-0x1.681230393be1dp694
+-0x1.c8ec5071ed259p771
+-0x1.1010810f5ddd5p158
+0x1.c74a81bf3dfe1p502
+0x1.1a36b350bffb4p326
+0x1.9997153de8d50p936
+-0x1.2a4b83a44adb1p262
+0x1.143135a73f62dp112
+-0x1.a9fb66d704d20p924
+0x1.52ad267e9e691p941
+-0x1.960237aa0b476p456
+-0x1.86f60247145c7p1002
+-0x1.40fc032059f50p822
+0x1.36e3e02584408p699
+-0x1.19f154949871bp690
+0x1.955050762de4dp982
+0x1.da92c16dc3379p408
+-0x1.7db2843ebc2e9p106
+-0x1.5ed053da6629fp251
+0x1.7a438137d5cf5p379
+0x1.848bf06d16cb5p742
+-0x1.10c327274daf3p243
+0x1.e7d565d867a08p675
+-0x1.fe4a75adfcf0ep507
+-0x1.27ffc345d783ap83
+0x1.7505c7af55362p582
+0x1.e91a6585b3efep39
+-0x1.c3f6c7813dc77p258
+0x1.aa1a94fbb80afp391
+-0x1.f91010d34d5a1p575
+-0x1.d1c5e776352f8p81
+-0x1.42ed75713379fp760
+-0x1.443db008d07f8p671
+-0x1.62b031d37d269p872
+-0x1.e74ca5fa66410p11
+-0x1.24c032fc2a37cp54
+0x1.b10d0082d4525p430
+-0x1.52a7436543c32p449
+0x1.80de825c86b09p478
+0x1.aeb2530eace81p186
+-0x1.069422760f985p379
+0x1.d254b2b61ba52p468
+0x1.859f00c1dfdb4p946
+0x1.b77c51fdbe932p801
+-0x1.d84b803d9a2a9p653
+0x1.fdeee09bb33b3p522
+-0x1.977296b455844p588
+-0x1.4da2b665db234p110
+0x1.6e4656ff0b546p687
+-0x1.427ef58be39fep749
+0x1.5458b4f78e18bp1020
+0x1.dbf6b5a443ad8p63
+0x1.fabc4531c35d3p786
+0x1.750be012c6154p365
+0x1.d406b5ad76da9p348
+-0x1.136ac7e63a7a4p852
+0x1.f38d97e18ed30p770
+-0x1.86eb94206ac9bp845
+-0x1.9fd97758ea039p519
+0x1.57e104a418329p842
+-0x1.f47a53b612eedp131
+-0x1.8c7f907591c6ep317
+-0x1.7797a7c218b28p683
+0x1.a65d35c8b88bfp445
+0x1.e2eb60871eb89p30
+0x1.569f174caec6bp914
+-0x1.b83cc28d283bdp-9
+0x1.4e3625ca8ae68p798
+-0x1.5b0a1690ba66cp1010
+-0x1.b964703464db3p516
+0x1.594d72f510320p234
+0x1.e0fd20fb450c9p195
+-0x1.4c71468889a23p828
+-0x1.b0550500c4f1ap615
+-0x1.0660b078d6f3ep275
+0x1.1aea54022a7c9p566
+0x1.944f35657817bp909
+-0x1.b918b7742beb2p620
+0x1.30c8214b4ebd4p1003
+0x1.b4b1127df81bbp636
+0x1.499bc35bdb268p230
+0x1.239303c6019cep75
+-0x1.2ddf17942d7abp335
+-0x1.c1cd51bb6ef20p219
+0x1.317ef522313edp576
+0x1.6622455a81f5ap165
+0x1.a7cd35a9a03cfp611
+0x1.55f8a593d1051p681
+-0x1.8ac0e40f85b62p207
+0x1.339c053ef2e4fp974
+0x1.07bac767e2915p807
+0x1.0572243093b94p336
+-0x1.7e6d32d8e9b1fp573
+0x1.05f97096a8c08p301
+0x1.a0f3f063dc5c8p319
+0x1.079d71aaef5c9p133
+0x1.aae49653bc771p-9
+-0x1.de13b5b4f8b8bp779
+0x1.ed07835644d79p859
+-0x1.86ae6094e5cb8p640
+0x1.f45d03d3167a8p44
+-0x1.1c9161ed1811ap657
+0x1.ba5ae0f7f6255p730
+0x1.3dc4917e05df6p199
+-0x1.637eb2e09fc81p-20
+-0x1.35c8010ca51abp558
+0x1.46b46213d42d3p263
+0x1.e82bb7d6f0966p439
+-0x1.4a5335f72040ep748
+-0x1.9150364d7a3e8p521
+0x1.811436d27e101p345
+0x1.1e6fd3d8c4c47p24
+-0x1.d3dd14d8c8a72p195
+0x1.7f6fa7878270ep615
+0x1.0e23f7c6192b9p883
+-0x1.64fb914120bf9p181
+-0x1.5b9b402c6b12dp216
+-0x1.67072619357dfp556
+0x1.cb6d523053edcp116
+0x1.0400b6f327cadp209
+-0x1.cb1c2559a73a8p538
+-0x1.0832e6f8f9389p562
+-0x1.e237659a26998p113
+-0x1.d390a323282adp250
+-0x1.2abb75708ac0ep1000
+0x1.93bcf2432f778p707
+0x1.bbdbe0f57dba0p780
+0x1.9ce4a245e8487p56
+-0x1.f65290202bc33p297
+0x1.2286377c2a7bep402
+-0x1.25ba94a2a1b39p23
+-0x1.7e7034f66b646p226
+0x1.dfd3921f61b6fp865
+0x1.8e77026d1dd42p947
+-0x1.259a210ae8dbbp883
+-0x1.ff947770042f4p50
+-0x1.b11b83cbe34a6p138
+-0x1.ed02f523ba5fap948
+0x1.fae0c20538cfdp378
+-0x1.f106f16618a36p390
+0x1.12f06118a71a6p435
+0x1.f459e36013ac6p193
+-0x1.b71e601c8937ep647
+0x1.741dd54a711bap303
+-0x1.5fd0806197195p648
+0x1.c08a364cba1c4p476
+-0x1.0fae377d13b6bp376
+-0x1.284b125539b1bp740
+0x1.1b26509b3d375p643
+-0x1.b3d3e132b5f3ep409
+0x1.f5e2c4a09c6f3p579
+-0x1.27c3958127ffcp568
+0x1.3d88f5ed5e951p522
+0x1.9f271783e03d7p573
+-0x1.e470858d1dc67p587
+0x1.cb625701aabb5p297
+-0x1.583541c8ef4a9p519
+-0x1.cff7a379366fdp449
+0x1.ff5284d44492bp734
+-0x1.36bec43199ee1p-24
+0x1.21c7f78d864fep503
+0x1.e84e55708a34cp1003
+-0x1.bc6db2028ef2dp357
+-0x1.03dc7515aba2fp362
+0x1.d36d2291f6b57p427
+-0x1.6b09f585f9193p808
+-0x1.9c94e5c6b368fp214
+-0x1.b637e724f9976p589
+0x1.c782220738d46p18
+-0x1.55e0e443747ecp298
+-0x1.ae36671f9deb3p951
+-0x1.ab18e77da892bp237
+-0x1.b8214411e595cp533
+-0x1.905e068e442f4p539
+-0x1.9dac66939446bp803
+-0x1.30d441b8ea8f2p401
+0x1.2023c219ba756p306
+0x1.9b83c3efed8c5p14
+-0x1.3f0ef3440cb1ap1000
+0x1.fe50609963492p823
+-0x1.b29653a0b816dp53
+0x1.3cb0a7690e4f5p279
+-0x1.3bfba620e087ap429
+-0x1.82e784a2946a4p187
+-0x1.f2a2a27a31febp659
+-0x1.1f6e730cbc7f3p330
+0x1.232570e622955p1006
+0x1.815d92a977bc4p742
+-0x1.afefb62db66b2p361
+-0x1.393f51c4b001fp-21
+0x1.2e0a56d573c24p551
+-0x1.85c9e0d20fc03p13
+-0x1.ddf8e355bc110p27
+-0x1.c421925083f29p63
+-0x1.477b658be3782p332
+-0x1.dfa7e1f25247bp101
+-0x1.0ef1e0f8a34ebp836
+-0x1.9736b5b40d3a6p328
+-0x1.fc2130e5cb2ddp72
+0x1.cb19b23ae4117p87
+0x1.5e908222450d6p683
+0x1.83d3300fda787p465
+-0x1.1f75315eae92cp312
+-0x1.4f87c66f9c24bp218
+-0x1.20a0c7bb5ab06p713
+-0x1.4379a08c0b472p507
+-0x1.37c013509290bp25
+0x1.30733493bc82ap796
+0x1.451a0144b107fp12
+0x1.d3b5609052753p696
+-0x1.baded35e9b11fp215
+-0x1.9010f587e1588p838
+0x1.0e02515adc0f5p656
+-0x1.786204df84f7ap400
+0x1.cd5976e18d08ap562
+0x1.a3b8b07edd8a5p695
+0x1.272c360b4a09cp240
+0x1.c76272882f071p807
+-0x1.05a6b23f98b31p854
+-0x1.309684da428b4p519
+-0x1.b0b45682b1411p156
+0x1.16d122510e170p482
+0x1.d219a347bf3b0p121
+0x1.76ddc05352dfep610
+0x1.2f8b83aa236f5p634
+-0x1.bff5136871c7cp321
+-0x1.449411e1a1534p786
+-0x1.6b9964e711a38p523
+0x1.610080e646a92p572
+-0x1.5a2035384b325p183
+0x1.2f15b33162e14p520
+0x1.5edd45422f82ep694
+0x1.adc571bdc2896p1021
+0x1.11ede09781861p818
+-0x1.384970657fe1cp731
+-0x1.b93df7e5ba775p747
+-0x1.80e8650f78da7p617
+-0x1.ceac833c51ddfp745
+0x1.6531a38ced12cp46
+0x1.91fb517112447p535
+0x1.52a4566db4283p745
+0x1.dc0275f484b73p935
+-0x1.a14ae7206183fp724
+-0x1.b3dcb3a37ca8cp-6
+-0x1.e79600282da96p149
+0x1.b8758421e1862p507
+-0x1.2547846b083e9p-6
+-0x1.84e3629cbab35p361
+-0x1.c716339c7bd00p830
+0x1.d39d1592b1957p616
+-0x1.c416c32a4efa9p963
+-0x1.c966d274ac272p421
+-0x1.39623033efda7p13
+-0x1.47b562fb33e7ap61
+-0x1.908e8784678e6p615
+0x1.90b9900e518b3p163
+0x1.836e560de08e8p164
+0x1.772670b0b8d27p226
+0x1.7fd2e348de960p918
+-0x1.3cd1201cba22fp198
+-0x1.a7dbd2320565cp159
+0x1.ca98f6aef3966p325
+-0x1.d0c1a2329035bp2
+-0x1.c0d31445503d7p530
+0x1.c4b027bbc1746p567
+0x1.32341565ed07ep159
+-0x1.8c7b4695abfe2p513
+-0x1.4578608c13f56p-22
+0x1.5bab8379ff00cp49
+0x1.306e7570eda77p869
+0x1.732110fa64bafp393
+-0x1.1146f698db29bp160
+0x1.6885a0cfa919ap211
+0x1.714b252420ac9p858
+-0x1.486b66411fe7ap398
+0x1.18421057ffa6ep237
+-0x1.e731c4f710eddp197
+0x1.7cff352552c84p37
+-0x1.6abf14aa70dacp746
+-0x1.f29b55bb8fe31p416
+0x1.a77473515adf8p195
+-0x1.4922814b5a637p498
+-0x1.9ce303b95ccc7p511
+-0x1.fc646726a5f20p951
+-0x1.21eac2c21fe54p113
+-0x1.e4e213df08c2ap265
+-0x1.887dd5a85818ep912
+-0x1.bbb2171b888c8p103
+0x1.8b34a46c873c2p501
+0x1.70e367db79ea0p241
+0x1.7ce0039ed7da4p808
+-0x1.c7fc26380f6c6p101
+0x1.18c360c75aad0p234
+0x1.fee2f67629486p962
+0x1.a4d7a588fe8bbp-3
+0x1.570291341d887p437
+-0x1.a10e9531b0df8p337
+-0x1.ca6825fbb4bf7p602
+-0x1.c8d000ca12af8p113
+0x1.b74a232faf0c9p-10
+0x1.1dfd417243258p88
+0x1.c755e373bd292p806
+-0x1.3124b71499691p1020
+0x1.a84680e1992ccp483
+0x1.c5b2c448b0259p534
+0x1.c54e340119590p56
+0x1.42d4e3fc4a7dbp943
+-0x1.6f81959716f0ep600
+0x1.38fac2222482ap313
+0x1.aa4840527639dp-25
+0x1.9ad706bfe85f3p1020
+0x1.2f2da18ecac33p825
+0x1.6ee875bc8e577p747
+0x1.da3412d07c978p387
+0x1.cd8e14f3d97dep105
+0x1.cd6cc00d3cff1p360
+-0x1.f7bd4156bade4p679
+0x1.9d89611d9047ep925
+-0x1.2b41b1691def0p18
+-0x1.806210fa000dfp258
+-0x1.2f49e07812d94p116
+0x1.339605b7fab92p1020
+-0x1.0c09f7db12243p891
+-0x1.81a2a42a061d3p903
+0x1.a791057d419b5p888
+0x1.581315b6920c6p-21
+-0x1.c5f64504ae5f4p791
+0x1.8982e6ced130fp227
+-0x1.d0db364678c1fp12
+0x1.43aa32552d958p657
+0x1.899c234387f3ap633
+-0x1.41470481079e0p614
+-0x1.2aa723c52c3c4p920
+-0x1.bcede1fa49331p512
+-0x1.f37ac77972cdap-18
+-0x1.e22c64e877035p779
+0x1.754480a7b3bf9p898
+0x1.6ae1a66d4b83dp6
+-0x1.90c107ffacd38p913
+0x1.b9381618da422p371
+0x1.a981920976fa2p680
+0x1.3a6ec4b57bc2ap15
+-0x1.28dcc1f6d20bdp108
+0x1.4326147c15728p335
+-0x1.2259a0e73e4f4p122
+-0x1.11cc764de91bbp18
+0x1.f481816abfcb9p72
+-0x1.c1d2d049ee85fp-23
+0x1.61e4d0a08bebdp12
+0x1.d86ed0f586a17p516
+0x1.b100560d69d98p432
+-0x1.50b8331476685p30
+0x1.9f32c7425b9f6p739
+-0x1.d89d2066c2887p0
+-0x1.61ee079dde498p465
+-0x1.3602968762b9ap32
+0x1.4c2c9725ac92ep-20
+-0x1.3a0d7321c02abp108
+-0x1.b1325468e8fdbp781
+-0x1.613d634860a5cp756
+0x1.41f616b0ffe33p752
+-0x1.61a3765afebf9p788
+-0x1.538be659aab9ap199
+0x1.da3661b9d7828p8
+-0x1.76e835de4916dp-21
+0x1.83db501e98db6p965
+0x1.184bd1b938793p927
+-0x1.6352b0ec9b3bbp851
+-0x1.e00891c81db9fp966
+0x1.6d2bc0bc2c25fp29
+0x1.16f205d5ea0efp341
+-0x1.222b02360aa21p423
+-0x1.c43fc00ad0827p175
+0x1.4a9da6ed14181p96
+0x1.742f7252b3888p-24
+0x1.e3a1434f237eap-6
+0x1.788f015a48ed8p487
+0x1.fdd0a707a7b24p120
+0x1.bab124b6990f7p10
+0x1.c8ffe2cf83b94p755
+0x1.2372c778a1441p348
+0x1.612b072d760cbp958
+0x1.609f218942867p274
+0x1.0483c3df44e59p24
+-0x1.6f1a40a16d5e7p406
+-0x1.784bf15a26f31p173
+-0x1.7fd4e7bec6056p611
+-0x1.c478c30401e95p33
+0x1.0bbaf1e77d127p947
+-0x1.0e6da7540b809p122
+-0x1.47a8d09dbc89ap895
+0x1.bc06021871563p927
+-0x1.f89bc1de14148p464
+0x1.98a2f4afe66b7p674
+0x1.5f0bb5633b7dbp833
+-0x1.8ce676f64c1f2p25
+-0x1.4c8a51a1b0cbap555
+-0x1.8210c69bcd3f0p26
+-0x1.0b4731be2b020p855
+0x1.73d857da7baa2p23
+0x1.01075749d6fc6p689
+-0x1.112e67981aa71p146
+0x1.b01dd2c3cacd8p793
+-0x1.cd5737ff4c257p433
+-0x1.3e519196e9292p729
+0x1.5b65b0284bd0dp839
+-0x1.1c4762b976c53p-10
+0x1.794245506f756p32
+-0x1.4e1c35958207bp707
+0x1.c3913360602d8p800
+0x1.83f2621884b92p26
+0x1.c069f020301dcp328
+0x1.b27b85f417892p184
+0x1.e004a34aff785p750
+0x1.29fc70b6808adp70
+0x1.2ec1a69b905fcp919
+0x1.df6a235533225p599
+0x1.438a2370d9eebp231
+-0x1.dddd767c99337p889
+0x1.0568d154a2870p18
+-0x1.3363041710f4ap216
+-0x1.64eb7482628abp653
+-0x1.3772b3ab575c6p0
+-0x1.1bdee549c535bp184
+0x1.d556148c8ea18p820
+0x1.6d31247f5cf60p84
+0x1.aec7658e1d55ep-7
+-0x1.df40a65c08fd9p16
+-0x1.359021a96067ep851
+-0x1.47ef93788827ep585
+-0x1.d9a6960c12269p688
+0x1.67a8b27b1b917p158
+-0x1.d6d2a6399e8d2p292
+0x1.431a4325d3651p320
+0x1.b274e747ec490p365
+0x1.d042571362911p3
+0x1.3ffff11ae8155p254
+-0x1.ea8cf38a078e5p25
+-0x1.da1f81d728183p288
+-0x1.d2f442f6baea0p3
+-0x1.1125e418910dbp22
+0x1.e28ee7f211bc6p608
+-0x1.c7b590b383ae1p490
+-0x1.ec07032c9fe8ap417
+-0x1.2f82b55eebd81p266
+-0x1.2d0c72c2a6eaap3
+0x1.7654c41150714p-8
+-0x1.cb7ba6fe71addp17
+-0x1.ea76b17ba5274p1
+-0x1.cee634f158cf0p478
+0x1.9389c0f24345cp-5
+0x1.ff0ab7bfdc77ep0
+-0x1.5a2a9634b735ep118
+0x1.a99a656f9766fp9
+0x1.25e6b6c33e77ap760
+0x1.5c07b3fdfc784p24
+0x1.659bd21884363p21
+0x1.a1e2d2a599b2cp-2
+-0x1.b669c6b9ff4eap954
+-0x1.227fe1b1d363dp375
+-0x1.9d8815914355cp23
+0x1.08f9c73e5d0b1p58
+0x1.06ebc1e205a69p11
+-0x1.c475c33c6e4d9p419
+0x1.26e2f03c3b568p952
+0x1.142e653198e2ap876
+0x1.a17610c798c44p385
+-0x1.5d25b7f4ed01ap784
+-0x1.553e05b0c2d7fp1
+0x1.ac28301a1a99dp-5
+0x1.1e2830cae9f10p585
+-0x1.89ecf76a7976bp784
+-0x1.36a6c7f575816p91
+-0x1.3290c1e3ab0fap439
+0x1.571f2024af517p407
+-0x1.9e9f16af2b7f2p-19
+0x1.547107a4abf1ap556
+0x1.8d9bb18e74c7fp327
+0x1.6bf844726431dp79
+0x1.6882c40a36829p521
+0x1.5e33a37495769p499
+0x1.aa1c25076a0c0p54
+0x1.af11a32c8711cp844
+0x1.842ef2865faebp19
+0x1.69ab61853a58ap25
+0x1.9955a12bf91eap155
+0x1.e8a7220cbb889p593
+0x1.c275a73192796p259
+0x1.f79d74bb2c42ep261
+-0x1.b80435f49efd4p25
+-0x1.a3f243a5aba38p960
+0x1.ab2a83515090ep837
+-0x1.b93c62ada1c23p12
+0x1.b042d7b712ce3p608
+0x1.e173865ea2fbfp711
+-0x1.c721e58a282efp25
+0x1.b7dd57c5e569fp171
+0x1.a148e142f39b9p699
+0x1.2a5fa6d540fa0p62
+0x1.34bb57427099cp574
+0x1.6f2dc0bc39621p500
+-0x1.0cc9448729503p734
+-0x1.c234d03687945p494
+0x1.7bccb6482f77ep4
+-0x1.8c5e908aa7fb5p831
+0x1.b1df92d2ec3b8p283
+0x1.e333354359049p989
+-0x1.e892b0f07a619p220
+-0x1.ec44220b9f17ep8
+0x1.f25a34ac7fbc6p7
+-0x1.7472b4254d705p367
+0x1.22e011afd6d0ep345
+0x1.065d20ae2ee95p117
+-0x1.6418273399593p831
+0x1.388612f03819dp40
+-0x1.dfc0d7643e76fp-6
+-0x1.7689e01d3ef5fp189
+0x1.f48a26de3d1a5p673
+-0x1.3a86439ca37c9p-23
+-0x1.de0cb3b3a1df8p355
+0x1.8fca33d3d5d24p550
+-0x1.5ee022e10d5ecp145
+0x1.d65386a7e7b24p408
+0x1.a75471ed7f723p3
+0x1.84a43795ffed7p-25
+0x1.270743fc743fdp404
+0x1.3fdc27ff3d6f6p16
+0x1.c2ca7781852bdp415
+0x1.783d81633686dp295
+0x1.0c62c5098c3c2p-4
+0x1.abe5e0d2c9c74p9
+0x1.8763249337c43p522
+-0x1.354a300bdf2b4p9
+0x1.77f8512b9b058p494
+0x1.85e423863bfb1p299
+-0x1.ff6a529c5f799p582
+-0x1.af91845aed73dp292
+0x1.bbe7d76864319p838
+-0x1.6b92a5b928341p42
+-0x1.bc96d3fe8ae11p453
+-0x1.4cf8e5fdb6606p14
+0x1.d7a286a93d573p552
+-0x1.1e168326fabfcp619
+0x1.2b78d4cf920a5p-11
+-0x1.8b6761d15a192p11
+0x1.7e41058d14f88p444
+0x1.4ed112f6fe397p276
+-0x1.4db517680987fp623
+-0x1.2224f5210184cp332
+0x1.bebb126a84646p845
+-0x1.3890a2fcd6ed1p771
+-0x1.ff3303971888bp-10
+-0x1.c088d7303166fp9
+0x1.3da6a7f5bc078p14
+0x1.151f505312964p29
+-0x1.3d0bb60c7b363p104
+-0x1.6b9a26936754ap496
+-0x1.9199b437eccc0p127
+-0x1.aa36d2b9371b7p445
+-0x1.0b8f350ea5f8cp-22
+-0x1.f1f4b4b0405cdp-11
+0x1.3105b5f0ba9bcp-15
+-0x1.aa88d154a4ddep551
+-0x1.0f68f1251f868p291
+-0x1.9f078781f160cp1012
+-0x1.9cabe23aae521p577
+-0x1.4dae06e7b4120p16
+-0x1.e43e623d48c49p-18
+-0x1.29ccb1801e4c7p77
+-0x1.6adca332f1fe7p-13
+0x1.4d98f1ff8002dp-9
+-0x1.b5a3575f4713fp470
+-0x1.6374a29768141p237
+0x1.af58667bcfbf2p127
+0x1.128ff1d95cbe2p22
+-0x1.1cd1c2bf75c3dp394
+-0x1.911146b47e563p965
+0x1.c9b034c25b038p1003
+-0x1.f45070caf3082p630
+0x1.dab7970bc1de9p1
+0x1.4aea409a375dfp287
+0x1.59d34792a5525p482
+-0x1.50cd458fc25dep253
+-0x1.759d44cd1fd81p269
+-0x1.04a6060096d96p-3
+-0x1.604b42f7ccab0p419
+0x1.c30db3408e834p20
+0x1.f7d0003cef355p465
+-0x1.d33647c71ddf6p713
+0x1.941117709cdfdp23
+-0x1.8aaa468ff284bp786
+-0x1.4c6536f0b6777p-16
+0x1.8c86677fee3afp133
+-0x1.0b1b35dbd7737p325
+0x1.de2f93f581a04p12
+-0x1.5a3ba4b477d56p15
+0x1.e83645234e293p24
+-0x1.3fca1310ff561p74
+-0x1.2aeb7470b2da6p635
+-0x1.3f3ad4cd76224p25
+0x1.09752219591d6p-12
+0x1.bc88b48080aa6p31
+-0x1.e98923b202a64p20
+0x1.bf0474f0f41e2p104
+0x1.a4e9d3f2451a8p3
+-0x1.3541735027a8bp560
+-0x1.f73dd55c810dfp23
+-0x1.505b10dc0eae6p912
+0x1.3649c1c465dd4p17
+-0x1.c777e501c8dfcp21
+-0x1.5701a0b3897a4p11
+-0x1.c320c380b445cp712
+-0x1.1b36c09e0a14ep663
+0x1.f60ea3f1a14cbp561
+0x1.c6a3005c06a44p-18
+0x1.af722598ce867p659
+0x1.d636c36a5d8afp187
+-0x1.16a3c0a4e81aap-7
+-0x1.8f3db57790c2ap-19
+0x1.703ca04fb8f62p-17
+0x1.f73de47c2fb9ep35
+0x1.973a34ff90b9dp-18
+-0x1.d08281fbb5c2cp838
+-0x1.be0f904e8c33fp342
+-0x1.e01d440fbebdap-18
+-0x1.df0f220b1c2acp-15
+-0x1.bcc990cf09edap-25
+0x1.8a350004b6021p21
+0x1.0746671992572p12
+0x1.bca1f2ae769dap-25
+0x1.1c0ee394715fap13
+0x1.bc9a351ecab48p356
+-0x1.3e4cb5ef07939p17
+-0x1.f2b664e58004dp1
+-0x1.f42ee6d0e89ddp19
+0x1.5f0a34dcee39dp20
+-0x1.1debc4db7ecf6p20
+0x1.0fc713f5c5de6p-3
+-0x1.5d4db109cd5c4p5
+0x1.73e807d8297f3p-17
+-0x1.676ce231eda86p861
+0x1.ebfa67a80676ep-10
+-0x1.b9f6a30ee6469p-21
+-0x1.c73277e6727fdp601
+0x1.74de03b6dea40p159
+-0x1.2259c59f68e46p-16
+-0x1.cd68d2e6479f4p-23
+-0x1.47b7f6102f2c2p10
+0x1.cf24a2347776cp-27
+-0x1.b725b137fdd1dp-3
+-0x1.009047102718cp993
+0x1.0771b34af6f2fp-8
+0x1.049d06f739b38p699
+-0x1.e8c0710c55d89p-17
+0x1.23b5322648c9dp-12
+0x1.cf0fe10d20725p2
+0x1.50052516748d2p0
+-0x1.afddd01d4ff78p2
+-0x1.3e0df401f7903p381
+-0x1.c9fc3321d1d88p8
+-0x1.8b10a044fbcabp-16
+-0x1.89260258d6e7bp14
+0x1.db24554246421p-25
+-0x1.420505cd0119bp521
+-0x1.917894697053fp264
+0x1.4e4bc6a5bd810p-22
+0x1.613766f0b8925p-21
+0x1.96bde6095382ap-1
+0x1.0028d14831ce2p18
+-0x1.c2174546c88c0p1017
+0x1.83ec835c217c5p-10
+0x1.fe32319f71affp913
+0x1.3fa26558eafebp-9
+-0x1.170bc0306f9d3p14
+-0x1.2da6158b9104bp-6
+0x1.da4016ececc3cp23
+0x1.4aeb75f4274a8p74
+0x1.0feda4108c230p-11
+-0x1.9e9580350379ap975
+0x1.8c72429a6c6b8p803
+-0x1.753eb56c15fc4p205
+-0x1.a8d226aa188ddp10
+0x1.552f237c39a5cp24
+-0x1.5101e740c55d2p-2
+0x1.f83282678cd2bp87
+0x1.380e51076f80ep17
+-0x1.4e58c2d312887p1011
+-0x1.709a10ec34872p-8
+0x1.c115c4b52dd81p-11
+0x1.dbf4f68b24b22p175
+0x1.fdcfc21030c47p13
+0x1.e3c234340a70cp870
+-0x1.7ef4c3f9f118ep-17
+0x1.4d8ec7ddbe0a5p-5
+-0x1.ca4ae67422cf1p46
+-0x1.1e79333cf2819p-16
+0x1.088641b858387p14
+-0x1.93191290365a6p163
+0x1.f321d1dd96f4fp756
+0x1.e771b71cceff9p8
+-0x1.ae56c771a7cffp18
+0x1.4ba1448b1d144p408
+0x1.8439648ab93dep17
+0x1.65f514736d787p943
+0x1.fb6472b3bce83p334
+-0x1.73e6857d4cf54p879
+-0x1.0cb95433e6b2fp-1
+-0x1.27ae632085c5ap2
+0x1.f68fe052bec12p753
+0x1.a8cc8446b7afcp17
+-0x1.9e2494726de25p25
+0x1.d825d64df0641p10
+-0x1.ba99b6fb023c9p141
+-0x1.53a8b1ea85f56p11
+0x1.bfa5e68028b9cp930
+0x1.feccf31f1a983p-5
+-0x1.88d3a0062385ap-16
+0x1.50f3313a7d76cp24
+0x1.3ba8870e96502p727
+0x1.fffc900187a9bp761
+-0x1.683c12d0f5288p-5
+0x1.89f8430bf5854p895
+-0x1.dd1c76087e343p-11
+-0x1.2be8706763f1ep-9
+0x1.359462ac17cd2p15
+-0x1.a972c2fa07af1p1
+-0x1.fce055f5fd92fp397
+0x1.93d615d9775fdp7
+-0x1.a734a251665eap-21
+-0x1.96aec33f91274p3
+-0x1.d088b0ef518b3p24
+-0x1.e36ff2227faa0p664
+-0x1.968c9528f761cp-18
+-0x1.55feb6226d9c6p-12
+-0x1.c5fbf2dc0f1d5p374
+-0x1.30df34bf0f038p-5
+0x1.75ff2344da2ebp638
+-0x1.6c95073fd64f5p-3
+-0x1.80ecb21eaf859p23
+0x1.a395a3209e01ep24
+-0x1.08fa41560be83p-17
+0x1.f5129125f47e1p-24
+0x1.ea61c1b68dbaep-25
+0x1.f9980204cad5bp13
+0x1.ca5571cae9585p300
+0x1.1457460444b6fp308
+0x1.f75fc7df35e9bp463
+-0x1.259877b2c7433p808
+0x1.4c4fd2558a03dp-2
+-0x1.77e600a0f8d1ap10
+0x1.ce0a20f8622dbp782
+-0x1.163735c430e54p21
+-0x1.077f533341f7ap-25
+-0x1.5bbea1334dce3p22
+0x1.17edb056a1e69p582
+-0x1.ab2f3216588abp-8
+0x1.ad5473156bcecp608
+0x1.495167c77e0b7p1002
+0x1.ce1fb4d50c2d2p-2
+0x1.0b6367a2e5b51p-13
+0x1.4bebf24710022p18
+0x1.cf035256dea51p-15
+-0x1.b2d165e3c4438p329
+-0x1.415066810a6ebp5
+0x1.231e43a52fc6cp759
+-0x1.3ad3866e7e5a8p-23
+-0x1.f5ac52c3f7320p364
+-0x1.3d01b455ea097p-23
+0x1.a57f56aa1cc32p9
+0x1.043250b5cbb79p892
+0x1.49de321920550p721
+0x1.c870766bd9d53p80
+-0x1.c4fd755e743ffp21
+-0x1.b37d062015770p-2
+0x1.5022353402118p0
+-0x1.c896463f5386cp-7
+0x1.6f2f169391729p-17
+0x1.bd8476b405432p250
+0x1.322de42f4c84ap22
+0x1.c3a2c33bf9e6ap43
+0x1.9793e2027ca1bp19
+-0x1.cced16209f116p-5
+-0x1.535c83351d7dap13
+0x1.5ab2e7182498ep1
+0x1.c2aa0412973d9p19
+0x1.6d5087c15f8b6p8
+-0x1.cd9e619dfc1f9p272
+-0x1.a291f0cf8c7f3p491
+-0x1.7726454f22bc9p16
+0x1.01d737edff679p-18
+-0x1.2eee17c89d93ep18
+0x1.d690a2fbc75ddp17
+0x1.e477309fee5e9p-5
+0x1.265176315b6b7p548
+0x1.d036d3c6d89f6p4
+-0x1.70e42649dec93p26
+0x1.685656f96535ap21
+-0x1.1cfd02fa51fdep-2
+0x1.75d1455fcfa44p590
+-0x1.718613f6ca999p645
+-0x1.b254238b7bab4p472
+0x1.7afe534d5251bp-9
+-0x1.b3cdb07891d41p-2
+-0x1.f956817bbdd80p704
+0x1.e04a74104462dp14
+-0x1.d953d153059f4p43
+0x1.9a4fa2868350dp878
+0x1.7efdd4f9e156dp671
+0x1.940ad2c424e0dp69
+-0x1.4d5ad6e0fa515p-12
+-0x1.975f1701f1516p10
+0x1.686ff10e39dcbp-18
+-0x1.47c80041fd8f7p-6
+0x1.0bbcf0786c446p-1
+-0x1.7dc7163623c62p-16
+0x1.c773a0bde09abp14
+-0x1.59776427dd29ep22
+-0x1.c428306233d02p1
+-0x1.2b34449d61818p18
+0x1.946545746e430p568
+0x1.fc5d70b15d6a1p-12
+-0x1.33c530a2e703ap198
+0x1.4586c7aaed300p23
+0x1.4047f3cea71fcp21
+0x1.d95a0359eb81ep13
+-0x1.2027133fa9651p-15
+0x1.4c9c737d289bbp993
+0x1.29ed82663c830p19
+0x1.2a2431406668dp964
+0x1.140c003d7b003p692
+-0x1.ca47d1c5105abp778
+-0x1.1e42d4bc3a5bbp621
+-0x1.c487c6add8db4p104
+0x1.5240c7e94fca2p346
+0x1.8a21e49e99f87p739
+-0x1.ec7a3732512efp665
+-0x1.e7e0c60c72a8dp666
+-0x1.4b2df12f55803p16
+-0x1.1a11950ff7262p253
+0x1.913010e21977cp22
+-0x1.557b91af754ddp548
+-0x1.1a5a85b93333cp0
+-0x1.152436888890cp10
+0x1.6242f32a2b3a9p24
+-0x1.33e4b774b0406p79
+0x1.4d20507145703p18
+0x1.805ee638666c7p1001
+0x1.2088f31deb3dep26
+-0x1.2136d4a8edf58p369
+-0x1.a5c002d03e071p350
+0x1.8e25144772023p619
+-0x1.49c336247aab8p20
+0x1.209f141d6a3f0p905
+-0x1.7df363dd844bbp301
+-0x1.d8c5a2fad0ddcp843
+0x1.955904e859e69p-2
+0x1.b78170f9c0f21p396
+-0x1.1856132fbf136p-1
+0x1.daadd2d9a8fb5p366
+-0x1.904c42e144851p840
+-0x1.1086823c84588p579
+-0x1.eee3b28d8e277p18
+-0x1.601eb2587f407p532
+-0x1.e77f45947cdeap646
+0x1.ac9d1257a463dp8
+-0x1.6022b4ad26dfbp0
+0x1.35d246dce052dp257
+-0x1.d87a368873c5ap11
+0x1.b79c7081c299ep249
+-0x1.e9b573eed4beep380
+0x1.87fb012c6dbe8p22
+0x1.9ff675e52fd5ap10
+-0x1.e768e1c4dc0c4p336
+0x1.eadd71dae6ae0p12
+0x1.8097a2036b3f4p926
+0x1.88fb542f66420p9
+0x1.6548027f7a3a1p23
+-0x1.9830129387949p17
+0x1.c3d7c15bf28c5p4
+-0x1.53daf69f10b1dp0
+-0x1.b90f21ac330e5p21
+-0x1.9b0a377b76cdep21
+-0x1.d0a0a05604f38p-1
+0x1.e3e8b72617fc0p17
+0x1.ed2f26a4f9de4p19
+0x1.af91858c30b58p20
+0x1.4abc00b2bfabfp24
+0x1.dc67b22b6d111p5
+-0x1.c247046a455a1p9
+-0x1.fb41c728f7cbcp14
+-0x1.891962b6634f3p7
+-0x1.7cbac2b76a18ep13
+-0x1.fb101566432dcp25
+0x1.90448733f0f47p23
+-0x1.8884367e47700p13
+-0x1.37d7a4bfa5918p15
+0x1.778a11c7fccd0p22
+-0x1.33526112284dbp22
+0x1.acb6870fb9e6ap21
+-0x1.5a7ec1b268139p0
+-0x1.0ea0c6bcbb4cdp17
+0x1.0eeb153b1d5cep-2
+0x1.2915060d6792dp19
+-0x1.f1c193bf9731cp7
+-0x1.a37b92d1c834bp17
+0x1.ea6c164f563d3p5
+-0x1.c1a342aeeff9cp18
+0x1.341f80345a109p18
+-0x1.b96f42fb8bf4ep21
+0x1.ed99773e5e0b2p-3
+-0x1.1b9c620a22bdcp20
+-0x1.93a342bce9d83p25
+-0x1.5647879df4c39p5
+0x1.1b5a74379d8bcp22
+-0x1.f65e80bbc64e4p1
+-0x1.f514118cd579cp14
+-0x1.d72c805888cd1p20
+0x1.891fc407363cbp0
+-0x1.f5f910e2a922ap21
+0x1.13ab76a6396c5p6
+-0x1.779c34504754cp7
+-0x1.0f44243ca88f6p4
+-0x1.94d8e73e1e8d3p14
+-0x1.86ae04f21b804p22
+-0x1.dbaf1624ab130p11
+-0x1.e2b2534178f87p5
+-0x1.cd1f04e46ab89p4
+-0x1.534e73dbf82d9p6
+0x1.d77307aacf285p16
+-0x1.d02d057014609p22
+0x1.63c7f14ec1826p18
+-0x1.4700d06054318p23
+-0x1.8c9e77f2c5169p20
+-0x1.4440d5499645bp13
+0x1.f830d1530dc5cp6
+-0x1.3158f1b64b60dp16
+-0x1.fa3cd6daa1a84p14
+-0x1.6f453297966cfp2
+-0x1.b50c62db9fa33p24
+-0x1.1f01b348e43cfp3
+0x1.f96f42e962369p15
+-0x1.d42235ed34040p11
+0x1.6a97b4ebe527ap25
+-0x1.069365a978478p19
+-0x1.301312077210ep5
+-0x1.079ed7eb88a2cp20
+0x1.e181d27a14ee9p22
+-0x1.1a6ef1e1b02b6p1
+0x1.605322092fdb1p16
+0x1.28cc961d4d565p1
+-0x1.0d1b956eefd65p21
+0x1.136a46db7583dp12
+-0x1.463a51e655419p3
+0x1.06b280c58f749p4
+-0x1.81a8422a0e891p10
+-0x1.36d660b754afep2
+-0x1.869b518b7abf6p23
+-0x1.ca5da55d82232p6
+0x1.c7b553dac1cd9p7
+-0x1.5c85b71c923d3p9
+0x1.cd38e05f93bd8p23
+-0x1.72322760da308p6
+0x1.2696c6205df80p-2
+-0x1.c31466f5abe12p5
+0x1.53ca818613b56p15
+-0x1.6d0e32af8c7fap25
+-0x1.82c493bc254bfp7
+0x1.29b5476d3c003p-3
+0x1.545ad52476bedp2
+0x1.210de622c50fcp13
+-0x1.4ce9501256fecp7
+0x1.bec8f2a75761fp-4
+-0x1.ef455712f7403p24
+-0x1.05ac51c61d35dp10
+-0x1.179912e48e4d8p2
+0x1.8309468cee051p-1
+0x1.4ba7338d7adb9p-4
+-0x1.86fb84d7687fbp13
+-0x1.b440d2dfa7cfdp-3
+-0x1.f21935fed929cp24
+0x1.248647fb68621p9
+-0x1.49cbf71886ed9p-4
+-0x1.46b18502c494cp6
+0x1.d60453a7627dcp9
+0x1.90d72030622a0p-3
+-0x1.99dc012169112p20
+0x1.5b1582ba1840ep26
+-0x1.a2d0e6722064cp10
+0x1.51d930a0faa1cp-1
+-0x1.e2f5b411dfbe0p11
+-0x1.8978d711c2457p-3
+0x1.9f390111d8e17p-4
+-0x1.64e526c906dd9p15
+0x1.3442b50cfed58p17
+0x1.696de2ba96decp3
+-0x1.1797a538e22cfp14
+0x1.6b9a91b6bc0b6p15
+-0x1.230dd7b9de0efp25
+-0x1.c570875d25b1cp17
+-0x1.4e93f3cd23d0ep7
+0x1.836bf1949fdd9p-1
+0x1.d55994d3bc6a5p22
+0x1.34976081e3c93p0
+0x1.325232301be88p-2
+-0x1.724d85212c2bep21
+0x1.f6ea543e490d8p16
+0x1.9816822b9c9eap5
+-0x1.2c5942e617f9fp25
+0x1.9916d5a987c95p4
+-0x1.9e10b7e75a799p17
+0x1.cd41449ad1c08p14
+0x1.bfbd219130397p10
+-0x1.d299552d58110p20
+-0x1.10990673db383p24
+0x1.6860579da3e41p4
+0x1.57c17718caa8fp16
+-0x1.d480c713e380cp2
+-0x1.5ef770cc4fd6fp-2
+0x1.63fe54f142182p-3
+-0x1.e57fe1748c166p25
+0x1.38e472a1b69aep-1
+-0x1.d7eb84d9725a8p19
+0x1.979751083fa46p0
+0x1.af7d8295ca361p0
+0x1.93d6033938ce4p16
+0x1.60d5f07b31fe1p23
+0x1.d345416a2b360p14
+-0x1.1451d5a8abe28p26
+-0x1.da4ba1007d69fp7
+-0x1.5c7583f8bbbb3p22
+0x1.8c85070cab228p20
+0x1.bc26967cda999p17
+0x1.bcfc7238281b7p14
+-0x1.f936f6a071917p0
+0x1.c00e11c935746p0
+0x1.759dc14fe7eb9p10
+0x1.26c7d5b4b926ep5
+0x1.c6512134c5122p-3
+-0x1.9ebe3455ed58fp9
+-0x1.be4832965373ep17
+0x1.7f68b772cfc9ep18
+0x1.baca2181e77dep17
+-0x1.c2f755dd7a244p19
+0x1.c4de32af2dd91p18
+0x1.589f6697070fap22
+-0x1.4a37b4210f303p8
+-0x1.4ecfe0a126fb0p5
+0x1.89dcb692c40e7p10
+0x1.7d6342e0df42fp21
+-0x1.0aec35f5f853bp-3
+-0x1.7f68335d52ca5p10
+-0x1.84f6e31758356p5
+0x1.3a5a166d0b827p16
+-0x1.eba706d2de457p8
+0x1.489f72add92f9p5
+-0x1.da6b250d6a545p23
+-0x1.e50b35770abc5p-4
+0x1.4b1b40263e386p6
+-0x1.e6864361f583bp6
+-0x1.bf8ca4dc53bfcp23
+0x1.5de1b4a13724fp5
+-0x1.3ccf14da239a8p16
+-0x1.2c352220b6d92p19
+-0x1.7a1a04680b72bp9
+-0x1.63e577fdaa152p15
+0x1.8dd7323abf3d4p-2
+-0x1.7896d1e003d8cp5
+-0x1.b4a72034750d1p19
+-0x1.c9752551240f4p0
+0x1.88c816d89c028p7
+-0x1.e765347c03b1bp1
+-0x1.f5a3e6d431f22p10
+-0x1.bcbd4269b3468p-3
+0x1.27d5c33a2b9cdp24
+0x1.c24173c80f8fap-3
+0x1.e5d8c7f661bdfp12
+0x1.f248554706676p23
+0x1.6b9b012dc2faap25
+-0x1.c53702c39d6b5p10
+-0x1.ba8441a0e4b94p13
+0x1.6276f46c87421p23
+-0x1.cab117d6a7540p2
+-0x1.696a408d00cd8p22
+0x1.a85c0033d55eap20
+-0x1.f1d5338e62f8fp17
+-0x1.cab73716e3a08p6
+0x1.7ff7625f9ca6dp23
+0x1.fee2e4e051542p25
+-0x1.898ec4cbce2fap13
+0x1.054c5714bee5bp1
+-0x1.e769a1325c9b3p18
+-0x1.00ef90bb0ea31p13
+0x1.d99cf6f223a12p7
+-0x1.4802b635a9faep6
+0x1.5c49e6bca57d7p9
+0x1.9cfa3500116d8p3
+0x1.20a380697021fp22
+-0x1.cc9ee1c701912p-2
+-0x1.159814f41ffddp12
+0x1.bcdae38e2096bp19
+-0x1.a4c564a58485ep0
+-0x1.b3ccf11be8cb0p3
+-0x1.2e036784747fdp-4
+0x1.3178b79bf23d6p15
+0x1.762022e7db160p3
+-0x1.19abb2ad29c47p0
+0x1.702aa52a2b081p2
+-0x1.3b2f85e3448eap15
+0x1.fba527184dd2dp0
+-0x1.0e13b3dc07053p5
+-0x1.6e3d0266ae8b8p5
+0x1.5a2d64a6aa882p14
+-0x1.409c93e21717ap0
+-0x1.90c8d5e8d4dbbp-1
+-0x1.c6f751e442d8dp14
+0x1.ba19007f25633p1
+-0x1.30f675c6b9d89p10
+0x1.f5966161ca0f3p19
+0x1.8f2fb44baebe3p-1
+0x1.974bc69c68cabp24
+0x1.c56de726c32d3p0
+-0x1.10dc876280044p10
+-0x1.0aae85d11cbc7p3
+0x1.fc6cb52005104p15
+0x1.05e5130ff091ap25
+0x1.e1ba941321d52p1
+0x1.66c5a13cdadc8p5
+-0x1.55c8322221dc9p14
+-0x1.92bdc5556bd73p14
+0x1.096e742861630p1
+0x1.2a16e7c69bc3bp4
+0x1.da44529305931p16
+-0x1.c2d2d332c16bfp24
+0x1.20c675f6fe727p5
+-0x1.d38d6225474d3p23
+-0x1.481de5e77c136p2
+0x1.d279c02f61ae3p2
+-0x1.e7d9573de4581p11
+0x1.35fe74c080235p-1
+-0x1.ac005162cad81p12
+-0x1.13b0a70cb376fp22
+-0x1.ebb45106c5803p24
+-0x1.1dc057ac89a8ap3
+-0x1.b8c0d151742e0p16
+0x1.970375264e6a1p10
+0x1.7e866527c9d49p12
+0x1.c2ddf22b1bccbp1
+-0x1.ab4174efa2f0ap15
+-0x1.e253067271c08p2
+0x1.0d4fb486d614ep1
+-0x1.abd6e292f5548p17
+0x1.eda5e7728b075p14
+0x1.1454a6c45a426p23
+-0x1.25e591a6a9a8cp0
+-0x1.7cfbf5669ec46p12
+-0x1.4679e1cbdf113p8
+-0x1.ce9af0afc0c65p4
+0x1.62f4634b7620ep4
+0x1.62a9b3c2b9823p23
+-0x1.1769864efbd8dp3
+0x1.f34715ef52c0fp-4
+-0x1.8b62623c188c7p8
+0x1.7975e1f8c7996p-4
+-0x1.3bb2403639e82p0
+0x1.b19f02fc16c82p17
+0x1.570b03b60ea6ap25
+0x1.7b12645745ec7p25
+0x1.c49c016ba07efp-3
+-0x1.9654e0923906cp1
+0x1.df287182db6fap-1
+0x1.8082a573c5c90p9
+0x1.067783759fc7ap1
+-0x1.0193d3485481bp19
+-0x1.f21fe48c86139p25
+0x1.3b79f760c1f6bp6
+-0x1.dfea72f0a3541p24
+-0x1.6c0bc68338735p4
+-0x1.585dc43d90bdcp-4
+0x1.0b4a74ddaeffbp7
+-0x1.96334231685ddp-1
+0x1.f6f5538f88159p3
+0x1.9b4c653dc6242p-4
+0x1.8be735e377e26p-1
+0x1.e11465e6856f1p0
+-0x1.7198d0b28bc64p-1
+0x1.dcbed3c85165ap9
+-0x1.75cf96486fb5fp8
+0x1.bc5d4762ed95ap18
+-0x1.b4ab765a2ce10p2
+0x1.eb8d56eda92c4p6
+0x1.513d51d6c544ep21
+-0x1.724cb58ad93ecp-2
+-0x1.ae2f075a1c1e9p-4
+0x1.3b27a36ab9d59p18
+-0x1.3d35f4b149caap20
+0x1.5d2301f5b984dp10
+-0x1.b4f9911c7cbd5p5
+-0x1.3c85c4e8893f2p0
+0x1.ff16d24d0bd20p-1
+-0x1.587e438ccd381p17
+0x1.ef7cf5c296d36p22
+0x1.e83847d5313bep18
+0x1.7e01f150d09a5p4
+0x1.d1c293dd145c8p3
+-0x1.585e926cd5b1bp-2
+-0x1.fb42f3ec59b27p3
+-0x1.59b854f3c58b0p13
+-0x1.f841b3d82549ap6
+0x1.4aaa17e78776ap13
+0x1.be3491ea08398p19
+-0x1.8157656f77f49p10
+-0x1.ef5b133a05238p9
+-0x1.a84b3275b47aep-2
+0x1.d2d40379eed33p-2
+-0x1.b38e5132a2518p1
+0x1.0b583593881eap1
+0x1.de0c21d2e13f6p2
+0x1.e57f91ef79d08p21
+-0x1.35787426e7659p0
+-0x1.2fc096d91558cp10
+0x1.ca92d112801e6p-1
+0x1.c130f673f9d00p3
+0x1.ab43360e99861p7
+-0x1.dfc494915cb98p16
+-0x1.662a1708721aep23
+-0x1.632a633f7b779p10
+0x1.900746f103c7bp18
+-0x1.1725a276c7758p13
+-0x1.01e616e258a20p10
+0x1.161df51eb42d5p16
+-0x1.9116109f57baep-4
+0x1.0924248619f04p-3
+-0x1.528a30859b8aap1
+0x1.3214b1efe1264p11
+-0x1.279bd7646bb1fp14
+0x1.9cac25e81f355p5
+-0x1.c1b4e4b65f4c8p15
+0x1.b9446219929c9p24
+0x1.85dbc095a8b7ap15
+-0x1.71a3c59471916p19
+0x1.390f94db871c9p3
+-0x1.667266143481ep-1
+-0x1.3f41661ad1011p-3
+0x1.39e7b0627a056p4
+0x1.4be6257d4db36p1
+-0x1.42b4f39ad58a8p21
+-0x1.0ddfc3c773e9cp0
+0x1.3e0b505a62bfep23
+0x1.17ae947b55a16p3
+-0x1.450e033bf3474p3
+0x1.fc5a706652876p3
+-0x1.ec85a78011932p-2
+-0x1.1a2587c2acc7ap19
+-0x1.0413c7bd307d9p-3
+-0x1.c14f93438c9c7p24
+0x1.c23452cc49201p0
+-0x1.822bd11a73bb1p-4
+-0x1.50a39655d03a3p19
+0x1.93da259e63c6bp19
+0x1.2b38c33777246p0
+0x1.16ab521fc8f08p-2
+-0x1.bd2e1426c0b97p9
+-0x1.3f66f1cab29c2p24
+-0x1.89542080e7b23p2
+-0x1.a57e9572fab9ap-4
+-0x1.ea38e30d4f2e9p-1
+-0x1.6980315b826ffp21
+-0x1.5f0ed5102c7e4p23
+-0x1.bcee5575ad4e3p25
+-0x1.f9a690462f13fp-4
+0x1.b19d857513a36p20
+-0x1.b14a15fcc1146p8
+0x1.949ce3f3aeaedp13
+0x1.d8b3403249e60p16
+0x1.b42cd3bb4ca54p-2
+0x1.805807a27361bp7
+0x1.fa5ab42962ce2p24
+-0x1.390543514c4d6p7
+-0x1.a786543bad777p8
+0x1.d38f169be1c02p18
+0x1.a22dd22ff3ad6p3
+0x1.5dafb7808dbe5p-4
+0x1.c9dde4e221c90p-2
+0x1.ad9804a975e98p7
+-0x1.6b6343d804919p-4
+0x1.40efa3258a7e0p-2
+0x1.4994104561818p15
+-0x1.202c76ef257b1p10
+0x1.9dabc7786d2c8p3
+-0x1.1bcf75d5e6e6ap4
+-0x1.8802471c77a93p1
+-0x1.8edc21142d145p2
+0x1.21c2c22bbc29cp10
+-0x1.6a6c82b8898ddp4
+0x1.a3adf1a7b1a13p3
+0x1.49d3d7c9f2254p13
+0x1.b79d130f9431dp-1
+0x1.0d1b7459c7e69p1
+0x1.ab10c361ca6dep6
+-0x1.fc0e761dad4fbp3
+0x1.c45ad1e916b60p-4
+0x1.077d3554fe489p0
+0x1.dc36d78d24b31p3
+0x1.60ae735b6f4b7p0
+0x1.ee39527f71eb4p15
+-0x1.6e7213bcc9467p0
+0x1.431002c64536ep16
+0x1.e5be6089f8d20p1
+0x1.5e46b0f01f53dp23
+0x1.69fff66d50910p0
+-0x1.a0e9131bb56dbp18
+0x1.674805aee7412p-1
+-0x1.dabff64ead53ap0
+0x1.d4a2274cff182p-1
+0x1.fb3a27edc048bp1
+0x1.a82744aaa00eap-4
+0x1.302d4443c6c04p0
+-0x1.2dc450ab7367fp-2
+0x1.3cada637e6251p23
+-0x1.1ba7f471bf8cep18
+-0x1.a9a1b0bc1f9f7p1
+-0x1.21a6435313043p-4
+-0x1.72f020a7330b1p20
+-0x1.9d4906d826708p-1
+-0x1.b78fc5f05bc95p3
+-0x1.156706eda9f85p4
+-0x1.59c5832441b87p11
+-0x1.de49e509aa110p9
+0x1.e395a4ef1ad69p-2
+-0x1.085cd295378c4p5
+0x1.3a3167bb15567p19
+0x1.f1c1f7a981956p17
+-0x1.d57eb0ccc1192p24
+0x1.49c4a7fce174dp12
+0x1.42a6f5366340bp3
+0x1.c73946000ef3cp15
+0x1.31ce910c8f277p-4
+0x1.0e1e520b20462p7
+0x1.3c2672f8a2c03p12
+0x1.0f9a64fdeb055p7
+0x1.922625557e01ep-1
+-0x1.abd306314559dp0
+-0x1.1cdb82c46c748p22
+0x1.f8b26607a6659p12
+0x1.e5f5a3659806ep16
+0x1.8a997615a5e47p4
+-0x1.9a88b64eed8c5p12
+-0x1.d685f50d87896p23
+0x1.817095a80c3b6p-1
+0x1.6142c7c1265e2p14
+-0x1.d148003201454p5
+0x1.2e8a76f17e51dp14
+0x1.427402f1c86dcp0
+0x1.9b2d423fdfa51p-4
+-0x1.86f0c60e56f2ep-2
+0x1.b32e43a763dc8p-1
+-0x1.8cff449c1e97dp24
+-0x1.880110436ba05p-1
+-0x1.97b7d36271db4p1
+0x1.f30b30d1aa293p-4
+0x1.e5ada37f74455p19
+-0x1.c26e223a61790p22
+0x1.13a14657deeb3p4
+-0x1.6478570f08c98p0
+0x1.ceda65c15f255p11
+-0x1.f62630fc890a7p22
+-0x1.7782824757591p24
+-0x1.98bfd567b54f1p-1
+0x1.1c6955755acc0p3
+0x1.65ac87fd01210p4
+0x1.7bf572a17df2bp-2
+-0x1.10ba33750f2b8p12
+0x1.0eb2a5c9e5ab7p11
+-0x1.a36377f89ac61p9
+-0x1.1ef0e24d3ae7ep25
+-0x1.754f03aa6e28dp4
+0x1.ee53f7fbf6eafp-2
+0x1.f50fe52b03ffbp2
+-0x1.638950b33d379p1
+0x1.3995d5405f180p2
+-0x1.9d77e47674aa8p8
+-0x1.32a0f62f354a3p21
+0x1.26dbc38bc8937p22
+0x1.3b7b3206286bdp-1
+-0x1.4ee7f59ce5c39p4
+-0x1.d6a1e75344b65p13
+-0x1.d718e5bc70942p10
+0x1.3f5d423f663fcp13
+0x1.f01b35c0d9d59p25
+-0x1.8bcc84208bd5dp-3
+-0x1.181ad4f3244b1p16
+0x1.0273210f71286p18
+0x1.d29bc36a4515dp11
+0x1.a20d92a1419efp15
+0x1.2f51d558be78cp16
+-0x1.5e6b84e9ec483p10
+-0x1.16a2b6ee1de0cp11
+-0x1.569474dd1954cp16
+0x1.fb10a07b26f8fp19
+0x1.8585c235045a7p5
+0x1.d3337464c4076p2
+-0x1.972fd5ff17f98p3
+-0x1.2ed312782dbfbp17
+-0x1.efa051135e1aap8
+-0x1.f710d597fef71p8
+0x1.aa8dd6f8a9beap9
+0x1.9f1dc377cf120p2
+0x1.62c3a7358a4f6p11
+0x1.34efa6be82f88p14
+-0x1.184f25cf949f5p0
+-0x1.3f7491d3e3894p12
+-0x1.f221e4559b24dp3
+-0x1.f342571a6ca3ep1
+-0x1.b50c874b791dcp23
+-0x1.6b12a335d95e7p-2
+0x1.73cf16b52cc79p2
+-0x1.b18fd6ef0fcc4p-4
+0x1.261c17c736b83p0
+-0x1.c86005afe1b46p0
+0x1.0fd231c7aab56p-3
+0x1.3b66100eade0cp-4
+0x1.1b62615d4579dp1
+0x1.cadb62a061c44p24
+0x1.3ae06343b6bcbp14
+0x1.f291c2e85d959p-3
+-0x1.061340896769bp1
+-0x1.2bd0077f3cf19p-2
+-0x1.ad7016b69a63fp-4
+-0x1.e62a635c849dap20
+-0x1.0b91a74b137c8p13
+-0x1.90d2306d27347p8
+0x1.844f36ffbcbf5p7
+0x1.a43987044698dp3
+0x1.4b28a54b06fd8p2
+-0x1.13f7a05c3396fp-1
+-0x1.a7f08659fdc44p7
+-0x1.6230f3bb15667p1
+-0x1.bb4c27fb03a6fp19
+-0x1.abd3330e2907dp0
+0x1.a10a926b01f22p20
+0x1.4ef4737029ef8p20
+-0x1.4fbc07dc0319fp21
+0x1.4f5cf32c6f33fp20
+0x1.9246404054591p0
+-0x1.6556d1b2edaedp-2
+-0x1.8609762c8b440p19
+0x1.f7e69735662a3p25
+-0x1.e924f3e7030bep15
+-0x1.9288c5e79cf59p-1
+-0x1.576322583b5e2p3
+-0x1.36e724118914dp17
+0x1.5af0268d084b3p0
+-0x1.8677c0dacd6e4p3
+-0x1.5499134382165p4
+0x1.bbca46c3b4d52p0
+-0x1.163cb68bf3dccp-1
+0x1.cef2e67ee56dfp5
+0x1.f6364662207f1p22
+-0x1.c2e3f1f65d52dp1
+-0x1.9d8c95af70b3fp2
+0x1.a14de64f1781ep1
+0x1.b20186799badbp14
+-0x1.399014458c7f0p-3
+-0x1.0fc4b2f3ed7c7p-4
+-0x1.eded7159875dep0
+-0x1.a263c32babe5cp-1
+0x1.f58cb01f888cap-4
+-0x1.697672487c482p18
+0x1.5c460397011dbp-1
+0x1.07b5c65ec8ad3p15
+-0x1.4eb6a36be78ecp-4
+0x1.e310154adf232p-4
+-0x1.da842458624edp2
+0x1.35a40221fabbbp3
+0x1.ffcc323b881e2p-4
+0x1.ee99c7c780be9p-4
+-0x1.f901049a4f638p11
+0x1.d3e7502eab4b6p-3
+-0x1.253ef59d5b22bp3
+0x1.059d75fdfb006p1
+0x1.cbbfe23e9b204p1
+0x1.d708f03a832c7p-1
+-0x1.ab75a3d27c91ep-4
+-0x1.6be4347f71cc1p-4
+-0x1.e8c9e1c74124ep-2
+-0x1.0e5f50bd9ab17p0
+-0x1.057b22cc1ca57p-2
+-0x1.4214a3145eee7p16
+-0x1.8ff493b4d0161p3
+0x1.ff71c54ac0722p1
+-0x1.cbeb16791916dp2
+-0x1.dbaa7305da875p2
+-0x1.9e4ca5923b8f7p5
+0x1.85a4e1dc18565p4
+-0x1.66a210312f4fcp3
+-0x1.60ff74a0b47d6p-4
+0x1.2262b5f1adeacp-1
+0x1.4c7db0b6a7422p4
+0x1.e3e8f16cceb2ep6
+0x1.ff5074ef37c49p0
+-0x1.10e6c770bce9bp4
+0x1.c6a3a0025e5dap22
+-0x1.0bb1439478f5dp-2
+-0x1.6fb0156408828p2
+0x1.b28ff518979b6p1
+0x1.9f63566d75ba1p0
+-0x1.cdbd94929acf6p16
+0x1.f3dd143481244p-4
+0x1.5769939835a80p-1
+-0x1.6b4ea312b9249p-2
+-0x1.a73b84ba8d9a0p-1
+-0x1.841c832628699p-2
+0x1.15d930c5d9513p4
+0x1.41317671877f1p24
+0x1.c75165ddd78c0p0
+0x1.693575a9d1138p3
+-0x1.717b171687985p16
+-0x1.945b94a09037dp-4
+0x1.927ee26038e68p2
+-0x1.f599772ffd90bp19
+-0x1.5c5b47eaa8583p0
+0x1.89ecc1f399ce5p2
+-0x1.9feaa603120d3p-4
+-0x1.61b0d15368a4cp19
+-0x1.dd65243b8102ap-3
+-0x1.d01653391399cp-4
+0x1.a6fa353616c25p-1
+-0x1.186f755c9547ap13
+0x1.8ea3a743322dbp4
+0x1.01f3d2122c4b1p13
+-0x1.b43ad29df2703p2
+-0x1.7ae312c61df29p2
+0x1.b8bdf3bef563bp11
+0x1.f8e434e9db303p-3
+-0x1.f2c9a511ea803p1
+-0x1.97c2f0e9d43b1p-1
+-0x1.116c80ce25470p-4
+-0x1.5a980694bcb2fp-2
+-0x1.32e545c122be7p17
+0x1.fa5101a1db44ep1
+-0x1.acbb05a4fcad6p2
+0x1.9c7b63462ad27p-1
+-0x1.0b5fc67ab2279p-3
+-0x1.db886026a7769p3
+-0x1.fc0015986ba7dp3
+0x1.08da532d7c2d8p2
+0x1.1efed083d86d2p3
+-0x1.93ddc734949adp-1
+-0x1.8139b09417df1p5
+0x1.b19e95af39a66p-4
+0x1.fa36f74895f3dp-3
+-0x1.8a50f1b23e664p2
+0x1.eb65d4abdfdddp24
+-0x1.5b58c5cf71143p11
+-0x1.93789271d3e79p1
+0x1.32d8d3818df7fp-1
+0x1.a02656baff621p3
+0x1.456822523692ep-1
+0x1.9e821342b14aep24
+-0x1.bacbd3affeb41p1
+-0x1.5b4543a6420e3p1
+0x1.94c0e4a504564p20
+0x1.12189312e1789p3
+-0x1.5465839d51246p16
+0x1.212ec63d1fc28p-2
+0x1.ea2df3e7023d5p-3
+0x1.de0b83c02018ap3
+-0x1.8240253b43da4p2
+0x1.767607eab92e7p0
+0x1.d9ccb717b987ap0
+-0x1.98dee08d0a3adp3
+-0x1.dcfca0020809dp-1
+0x1.7f869312366ebp22
+0x1.cd961413f209cp-1
+-0x1.3221407824fffp2
+0x1.2ade9658e1126p2
+0x1.b34083bdc8115p2
+-0x1.980922c6e082cp-2
+0x1.799832b5bfa6bp26
+-0x1.a56c15d91cd8bp-4
+0x1.44a3a79631f72p-1
+0x1.dda0957785a67p-3
+-0x1.c54b66b69cac8p2
+-0x1.b0cc178214892p0
+-0x1.c1e5f06ea400fp17
+-0x1.d29493a595f5ep2
+0x1.8bdae6ba44b4bp-3
+0x1.8d26f713baf31p13
+0x1.8cb220c346946p3
+0x1.71de257cb436dp3
+-0x1.a52e1674a0f6dp-2
+-0x1.418065835e8cfp2
+-0x1.a4d5d76840286p-4
+-0x1.3ed0116e38f5ep2
+-0x1.87c515996b87cp20
+0x1.35d67495a3d85p13
+-0x1.430b146120c64p13
+0x1.ce7d04c15930bp2
+-0x1.704f325206940p2
+-0x1.9e18f50e6cf7fp2
+0x1.5269e51b29116p0
+0x1.227c74bba7565p4
+0x1.a81c022b943a6p-1
+-0x1.a105212679fabp-2
+0x1.b87ac53cacaf7p18
+0x1.e71b216138183p17
+-0x1.1668a6b611528p3
+-0x1.586af282ee66ap3
+-0x1.a646106bb9884p1
+-0x1.781022484b783p2
+0x1.4c9ab7f28c644p10
+-0x1.c6dbc36bae35bp-1
+0x1.55352240eedc3p4
+0x1.b6f2b21a2eae2p22
+0x1.9664d29b9e356p3
+0x1.f3919543276fcp3
+0x1.7cc834f6358cbp-2
+0x1.9f07d58ef3ac7p5
+0x1.9de5b20a4a764p1
+-0x1.8aea705541631p18
+-0x1.0952739540b5ap4
+0x1.2993d67ddc894p0
+-0x1.cecb056b46a86p3
+-0x1.585ba625ce37dp4
+-0x1.2c85b49135c11p6
+0x1.1b03f53976b8bp2
+0x1.804b5294eab8bp2
+-0x1.15f090515ae7ap1
+-0x1.c40c30eea2397p2
+-0x1.d222d4cc61156p0
+0x1.491254db782e2p9
+0x1.089244b067d20p3
+0x1.847fe11643736p3
+0x1.aae600dfbb0d6p0
+-0x1.c60c05a64e456p2
+0x1.d3772608146aap16
+0x1.210261c1bad19p19
+0x1.7f61635ba6212p1
+0x1.e03d05d58d78dp1
+0x1.6fa5277426dffp2
+0x1.7dd7a003f1fc5p8
+0x1.d3c3c54fb269bp0
+0x1.456084e1be432p-1
+-0x1.9f35500c78f46p-4
+0x1.b17ad24d5328bp21
+0x1.45a4a452108b8p3
+0x1.ee7835a4a15cap2
+-0x1.5c88834020c4dp4
+0x1.8195e389f02f0p1
+-0x1.4d25e7891a5e3p1
+0x1.a368603b90642p2
+-0x1.fc1e4287a59a4p2
+-0x1.087e41d357143p12
+0x1.ccdb52d850e64p14
+-0x1.ae95e02bbf2c6p2
+0x1.d32c40fb7eed5p1
+0x1.f4be74fc543aep-3
+-0x1.c549772b73225p-3
+-0x1.8e5cd0178d9fdp20
+0x1.c81356a2c080ep-1
+0x1.ed40040dadbe7p8
+0x1.9914806c4c867p20
+-0x1.501a27c66dd4ep21
+0x1.dad8e19368949p18
+0x1.4d9500c7ef7d7p0
+-0x1.dc10c31391064p-4
+-0x1.fc9d741aa8b78p15
+0x1.467ff5c092692p6
+-0x1.57a300f11a56dp10
+-0x1.3289b70ab408bp-3
+-0x1.406e2614c2a4ep4
+-0x1.7320110d87bd1p17
+0x1.ad9f174b85f67p-4
+-0x1.6c05d0f81d05ap5
+0x1.4d9fc757d40a4p2
+-0x1.900c147490e47p1
+-0x1.9bf4951c2d822p2
+-0x1.f57e420cd00b7p3
+0x1.748fa1fba98f6p-2
+-0x1.7a48c776cf20ep3
+0x1.5e1a45452622dp-2
+0x1.ed24031124eddp-5
+0x1.e691f37be2dacp3
+0x1.231531dd30f1dp-2
+-0x1.564fa0bfd60b1p18
+-0x1.ac70324dce95dp1
+0x1.a0d493588e057p23
+0x1.f98780fb132a7p2
+0x1.90ebc38d03a87p0
+0x1.ff96e2f54d04dp24
+-0x1.bf74b63ca40bbp2
+0x1.9af727dde69f1p0
+-0x1.e44071bd7b86bp1
+-0x1.28d786fdcd052p26
+0x1.8692e232cdae6p3
+0x1.9b50469f50d88p-4
+0x1.3ab662a7c7a65p-1
+-0x1.d085169ef3012p2
+0x1.bade31b1d2841p13
+0x1.264cf12a5f18cp-3
+0x1.eaf301a2af660p1
+0x1.e09f42ccc01f3p3
+0x1.4fef37206f995p20
+0x1.3e7ff15ec0784p4
+0x1.6ef7504e7c351p0
+-0x1.65bfb1e6dffa7p4
+0x1.034610cc74f21p4
+-0x1.e7cdf2d5b5d7ap1
+-0x1.56d207d3b7f15p26
+0x1.9ade7656cdb52p-4
+0x1.da34f1f8ba414p-4
+-0x1.0620a0b7e0120p25
+0x1.0aa527ccceddep12
+-0x1.ff9b102c34c06p-1
+-0x1.680934192f0eep-4
+0x1.633c770deedcdp4
+0x1.ac3d562aa3882p23
+-0x1.fd93150cab59cp13
+-0x1.2e68b5aeb1933p1
+0x1.16a1b3634e220p4
+-0x1.9a3017378b041p2
+-0x1.9c6406add3380p-1
+0x1.d28307b34902fp10
+0x1.a256a6fc28529p0
+-0x1.fc32d7015c25ap3
+-0x1.90fe456ab6cd4p-3
+-0x1.d82302f16ed56p3
+0x1.e29194bbd8108p-4
+0x1.ba28875f65f3fp2
+0x1.aa02215f4279dp3
+0x1.04b274650ae6dp16
+0x1.5720460ea9547p4
+0x1.d3565193466b6p25
+-0x1.18ab75ac729b0p3
+0x1.62b49423eac50p13
+-0x1.5d5f51118764fp4
+-0x1.0d11554e6379ep-3
+-0x1.f7b3b55dfdf96p-5
+0x1.d97d4089c87fdp3
+-0x1.74dd56532f950p-3
+0x1.f41ba46bbb346p3
+0x1.15305286fef88p26
+-0x1.6c32d3a71f573p20
+-0x1.65a80408231a7p-2
+-0x1.ef3b14f8fa244p15
+-0x1.4060641b877f0p7
+0x1.bb6e36c2071b4p20
+-0x1.3a30a6c1a2f5dp3
+-0x1.74ae12ec6a97bp1
+0x1.29d196ea1da27p2
+0x1.bfbfc35e1396cp2
+-0x1.967993d8f656bp3
+0x1.7f6f16b033158p15
+0x1.9e5a06b632d09p2
+-0x1.de52b7137b48ap-1
+0x1.42702419de7adp18
+0x1.87fba15348b74p-4
+0x1.f1d4d2ed50b91p1
+-0x1.f58ce2e3bed62p20
+-0x1.0343179c7f2d3p4
+0x1.c08e07f343f5fp0
+0x1.c1bfa71d8698ep2
+-0x1.3b5384007645cp3
+-0x1.985c0097100f5p8
+-0x1.31a462d00219dp14
+-0x1.a1d1359744ef1p19
+-0x1.4a50169190a5dp19
+-0x1.47152657669dcp26
+0x1.08ae25f622e03p0
+-0x1.4a3ce79774730p1
+0x1.4a69800ca5d1ep0
+0x1.f5fc930d18d8dp4
+0x1.643412561c61fp-4
+-0x1.e07966a7404c6p11
+-0x1.e6fbf6a0a6034p3
+-0x1.fbd6e37a14101p2
+-0x1.5a7960250d793p2
+-0x1.a26cb448f2963p11
+0x1.d54cc4dab0dc2p0
+0x1.d49952cff6480p20
+-0x1.a34ce477fb20bp-3
+-0x1.9cec55870bb73p14
+-0x1.cc4e1541cff60p15
+0x1.17e2f5c7ae2dap0
+-0x1.de61b653424aep5
+-0x1.9f6f34286c574p10
+0x1.d2b86784608d6p-2
+-0x1.3395902eb25c8p20
+0x1.69cdb5f2237f6p21
+-0x1.50aa7555719afp1
+0x1.450902d00dba0p14
+-0x1.3581552b644e7p17
+0x1.0c1ca2229363cp1
+-0x1.aa0c55ea1366ap-2
+0x1.935996dd54b32p16
+0x1.3506f3b2a8c5bp4
+-0x1.9ef4a31a3a5b3p21
+0x1.6aed610ee94e6p3
+0x1.9ec537389a85fp2
+-0x1.b61b32703965cp0
+-0x1.47b533489ac3cp14
+-0x1.7a086173ea69ep-4
+-0x1.9096e7b165d22p-1
+-0x1.832a11dca8760p15
+0x1.b46a101d0d0d8p-1
+-0x1.754e34245b1d5p2
+0x1.bd9a871af2cbcp19
+0x1.91cd45ac60878p6
+-0x1.f90ce27d3136fp-1
+0x1.c793155aaf605p-2
+-0x1.43c3752dba4e3p4
+0x1.734ff4f414827p0
+-0x1.5694b43404e9dp1
+0x1.15ff858370de7p17
+-0x1.6cb074bf09b29p-1
+0x1.e15824dff4832p0
+-0x1.a49b82d01f413p15
+0x1.4e92a530645fap10
+-0x1.0fb4501d2b553p8
+0x1.6722853482a22p2
+-0x1.e5ff02b36b547p3
+0x1.8fd106fbca583p1
+-0x1.cd3b94e6e9646p-2
+-0x1.67e73006e1cbbp25
+-0x1.798fe4eef94dap4
+-0x1.9f845051b854ap0
+-0x1.1801059eda986p-2
+-0x1.e43bb3c1ba526p18
+-0x1.858b7675fe3fep15
+-0x1.95e2345d5fe0bp4
+-0x1.3c5416ca090bap19
+-0x1.495fa628eb2fcp-2
+-0x1.7ef11453fd131p0
+0x1.97369592c74a1p20
+0x1.e538f5fd514c9p-4
+0x1.3bdd939d79b75p1
+0x1.51de3650db77cp13
+0x1.0f1761cd1a600p-4
+0x1.148233b993d99p2
+0x1.93cd375850c5ep12
+0x1.27629514fe508p-1
+0x1.bb10511526fa8p-2
+0x1.02fab5f81d1e0p11
+0x1.59dbf0784024cp1
+0x1.83fca118a0f13p11
+0x1.549503148702ep20
+-0x1.ebc3651a9536ap0
+-0x1.a174916f8923ap10
+-0x1.e62893a7af3aap-2
+-0x1.f566616109d72p7
+-0x1.6270b6860dc86p4
+0x1.a88e8569e224ap2
+-0x1.4f3ae6b9b7d44p15
+0x1.565a510728736p3
+0x1.ae5ff3ea9acf8p10
+-0x1.cdaad52eecbb7p-2
+0x1.14fe36e4c388fp-4
+-0x1.b0fac12481c0cp-2
+0x1.4f9e7648c99dcp24
+0x1.fff1f1682d85cp23
+-0x1.4e07d1cba1b3ep22
+-0x1.aece66271bb23p-3
+-0x1.480661fd12984p3
+-0x1.cc42214f97882p9
+0x1.9f8941c90d141p1
+-0x1.a7cb21d392653p-4
+0x1.f45fb2a44f985p21
+-0x1.73ea53f7b5a83p0
+0x1.ae0e97a5a226ap2
+0x1.7116e4f8efeb7p13
+0x1.b8689636e09d7p1
+0x1.f87ea145c3eeap4
+-0x1.7fb3d33c4b6f7p1
+0x1.816ed7aac792bp-1
+0x1.d46e75812b0cfp17
+0x1.a94d05d52e058p-3
+0x1.857ca451b8d1dp21
+-0x1.dfe14188b48a1p14
+0x1.7c5cb7db4b247p-3
+-0x1.5b00f07b798c2p26
+0x1.4927153475bd8p3
+-0x1.659684713be27p-1
+0x1.4b69e654ab5ecp14
+0x1.599ca7a34504cp7
+-0x1.e234942683626p-4
+0x1.2dc9e2b98afd5p12
+-0x1.11eff3e09aa18p1
+0x1.66a8713d0f478p-4
+0x1.ae07b611b2ed9p25
+0x1.e5d5673df6e1ep2
+-0x1.bc9a57d63d9cap-3
+-0x1.f150f7c1a2718p22
+0x1.a39e27b64a20ep0
+-0x1.662a54062851dp4
+0x1.c17bb0a5e2ee3p-2
+0x1.2cde97703beb8p3
+0x1.76c2a0f2dca13p1
+0x1.44ef2264d458cp13
+-0x1.39785220a1e11p3
+0x1.0a9a846a9e8e0p3
+-0x1.4c66f2ff6cd5fp26
+-0x1.a3cf306fe7875p2
+-0x1.f8fad771fd336p-4
+0x1.56cce173621b0p23
+-0x1.8b40322bb8a97p1
+0x1.e9b391467db49p8
+-0x1.c0b11253299d7p2
+0x1.ce6213f40c4ddp3
+0x1.98a4658fa2de2p0
+-0x1.7714e7503ccfcp1
+-0x1.e2c751117856dp-3
+-0x1.116370d84cda0p1
+-0x1.8a95106b4dd41p1
+-0x1.83a101240371bp-1
+0x1.a87241ef9f0afp1
+-0x1.887e6438b7d77p0
+-0x1.c51f915cee016p21
+-0x1.90afb3af83a46p-2
+-0x1.dd69445e1bce5p7
+0x1.52ede1630d384p25
+0x1.e5cb3017006a4p-3
+0x1.7b37a1ae9bea3p22
+-0x1.564077be3ff7dp19
+0x1.0127514e5d65fp-1
+-0x1.86f6945344917p2
+-0x1.e27824003e156p-4
+0x1.20f513644333bp6
+-0x1.4d48e7c7bd1c2p17
+0x1.df4f418ae8bcdp0
+0x1.b530d7eb8c491p14
+0x1.ae84640c8c195p-3
+-0x1.99d503f399970p3
+-0x1.7bac758737ddcp23
+-0x1.b2e7529718232p5
+0x1.d99e875cf2a8dp12
+0x1.ad3fa0d2f24b0p-2
+0x1.fd0875247597fp17
+-0x1.d28dd391af036p8
+-0x1.18c393d58dd4ep10
+-0x1.7a2a73ac407fep10
+0x1.885ec3882da73p1
+-0x1.f4c664113f0d4p1
+0x1.dc61d2bd58699p-3
+0x1.50f330caf00fdp9
+-0x1.2b4c2627a3648p24
+-0x1.bddb32bea8700p-1
+0x1.e55ac08bf2b42p0
+0x1.e75cf1f0cd76ap0
+-0x1.aeb8e3625b94ap-2
+0x1.75a741f3c5a9ap-1
+-0x1.017500e83e2dap7
+-0x1.935241a43297ep2
+-0x1.8c08819bbaca3p12
+0x1.28f7569578c0fp15
+0x1.9a68f5a0e6cb9p25
+0x1.e99ce04bdef98p-1
+-0x1.566b2614bedb3p22
+-0x1.eb5840a35fdc6p25
+0x1.75489211def83p19
+-0x1.832cc5ad826a8p4
+0x1.746297f53d755p1
+-0x1.a92422038c33dp23
+0x1.c94a716ac9472p2
+-0x1.a780f5b351552p11
+0x1.39b4a689dc65fp15
+-0x1.063fd407d19b2p17
+0x1.6c96851c4c0bbp-3
+0x1.343a53f0ac710p-1
+-0x1.78da56a8efd89p-4
+-0x1.2e08371fa4c1dp1
+-0x1.9cb170edaa8d6p0
+-0x1.c47b95e92d85fp5
+0x1.22d540cd4e25bp0
+0x1.c0d7f6f009ad8p11
+-0x1.694c81226c9d5p0
+0x1.559fe2c8a2cb1p15
+-0x1.be71b00f82b6dp-4
+-0x1.949d26f8956a4p0
+-0x1.e794823d81668p2
+-0x1.913cc722037aep4
+-0x1.6c89e06ae49a0p7
+-0x1.d85ac741cf404p-1
+0x1.827ce70a4080ep-4
+0x1.d00906b80e8fep1
+0x1.a5eb32c312d71p3
+-0x1.1c82507185876p-4
+-0x1.2745f53788520p8
+-0x1.d59f5009d4e5cp2
+0x1.cc2070bdb8850p18
+0x1.1720074ab1a4ep1
+0x1.8cd267087035ep1
+-0x1.e5066000552e0p1
+-0x1.894bb7d7746d1p0
+-0x1.ffc9031f3af42p16
+-0x1.9867b7cae951ep11
+0x1.33ffa6ff96953p-4
+0x1.18b8b52580f2dp-1
+0x1.8036540909c52p1
+0x1.cf69072d92af2p9
+0x1.980aa121c5e65p1
+0x1.5f89c3f3a61c7p25
+-0x1.2e09a10012e1fp5
+-0x1.a585c7402c27ep-2
+-0x1.485eb3f6d7ecep-3
+-0x1.f9bd852a74583p10
+-0x1.3b7f83fbcda42p1
+-0x1.6591217c65a71p17
+-0x1.7b21e6ee5ca9cp17
+-0x1.c979f792dbca7p11
+-0x1.77bf75c469ac6p0
+0x1.d16b6275c0f7dp14
+0x1.4917f41f8b6a2p1
+-0x1.19cd525e86beap9
+-0x1.6e5003f71a811p14
+-0x1.370ab7f9719f2p14
+0x1.386006d492b82p3
+0x1.1a58e03059f7cp12
+0x1.2500012feb2d9p7
+0x1.4d36d2e22e8d4p5
+-0x1.f3e1a009ee07cp23
+0x1.4668d78d78095p12
+0x1.79aa13307ebf8p3
+-0x1.c487960e89b2bp2
+-0x1.06e8a5658fb35p-2
+0x1.55c7f05a491fdp24
+-0x1.0523e2d088c7bp11
+-0x1.f62864f5158c9p19
+0x1.c49ce5492ee6dp-3
+0x1.cdb9120e5b67ep17
+0x1.8f8a5268e820ep-4
+0x1.6ee1e30d592a4p0
+-0x1.812844c5cb134p2
+0x1.6df1755141fd4p24
+-0x1.728300fa1781fp14
+0x1.8947c3e79ed66p0
+-0x1.9844d48620c7fp8
+0x1.23655019dc226p2
+0x1.a9e1473cc8a13p12
+0x1.66305231c4640p7
+0x1.82af66fe8c503p2
+-0x1.bc6b01062138ep15
+-0x1.896955bc6c769p-1
+-0x1.a9ee65b00a2e8p21
+0x1.f4c3e6cd69231p-5
+0x1.9013f5a753f8ep8
+-0x1.d92d8497ba609p24
+-0x1.2e2681d1e84bap3
+0x1.8be4435259a45p7
+0x1.79c7f5a2e6e62p2
+0x1.acdbe4eb4b925p22
+-0x1.35aae23bd5519p3
+-0x1.733ba7e8564aep20
+0x1.f77991555ff26p-5
+-0x1.1c5745f873d55p-3
+-0x1.1b14e11d332dcp-3
+-0x1.c731514f4f896p20
+0x1.a0c5c483ebf17p7
+-0x1.36b1d13cb2c7ap19
+-0x1.7a38c0bb685a4p2
+0x1.6236e4c6b17b5p10
+-0x1.f2b9767a6798ep1
+-0x1.3958443bc6781p3
+0x1.d6f1f3d9224a2p13
+0x1.81b9f2569be9bp-2
+-0x1.8f52243d1205fp2
+0x1.2e2e25cd3e4a7p3
+0x1.d34c76b790df9p2
+0x1.7a91752f07156p26
+-0x1.454b06030e52cp1
+0x1.2c40025ab0e66p3
+-0x1.76d66036ed303p18
+0x1.667592a8df4efp25
+0x1.415511ec79f5ep1
+-0x1.7bbb12490183cp26
+0x1.824ec336555b6p1
+-0x1.b8dd16e17d94dp-1
+0x1.7df770031af25p3
+0x1.7bff02b791614p-3
+0x1.13f597d144c47p4
+0x1.81e4962b19a23p0
+0x1.3900731ded692p13
+0x1.9ed1c64a3942bp0
+-0x1.e87ae52969fcdp-4
+0x1.79bb77cc1f90cp2
+0x1.14693020af9bfp23
+0x1.8b61256862012p0
+0x1.edae80414ab70p3
+-0x1.93ab70cfa5b06p20
+0x1.8ba9c535f5d61p1
+-0x1.805ee155735acp1
+-0x1.838ec4acbd018p-2
+0x1.f32f63eb94fabp2
+0x1.e241b1649d3b8p5
+-0x1.3253458419677p10
+0x1.e0df72e4e1543p11
+0x1.e11d606072ff9p3
+0x1.86c16681265b6p5
+0x1.8628f44708c8bp23
+-0x1.e00f07434fc92p9
+-0x1.c17540870ee47p3
+-0x1.9e5bb19dd040bp3
+-0x1.4b2ae7e7eb36bp7
+0x1.563c647e67c1cp14
+0x1.9fd3804bf753ap1
+-0x1.e01b361851110p5
+0x1.f4c404c183defp3
+0x1.91f9d60737e96p3
+0x1.c2b2e43a35dc2p3
+-0x1.93d6f51eaa6b7p0
+0x1.077b77efc4f82p4
+-0x1.5a77916ce4424p4
+-0x1.68b4d3263da38p21
+-0x1.f374766b6ed6ap2
+-0x1.a9a9833b70761p0
+0x1.e32a36975f82ep13
+-0x1.faee82ffb3f86p3
+0x1.e36e2752045d0p24
+-0x1.65cd92ab90cd5p3
+-0x1.2c9e444e88b94p3
+0x1.f120d034d2381p10
+-0x1.a9a8f0b3f6514p-4
+0x1.936706bd2d06ep1
+0x1.a0c1379968e55p15
+-0x1.857891fb49f2dp0
+-0x1.56d056a4a7495p25
+0x1.903154bd06e72p0
+0x1.6682d268e3100p4
+0x1.3193534e62ce4p10
+-0x1.8436b490e2355p3
+0x1.c780d229e6f70p1
+-0x1.c56866de11a8fp3
+0x1.882d57bffac4ep17
+0x1.5c9b122b1d7fcp-3
+0x1.844794defc7edp0
+0x1.ee2d82135ae68p-4
+0x1.85279651395efp16
+-0x1.2cd1153d349f2p19
+0x1.7b6dd3b4f477ep12
+-0x1.7288f46a576b0p1
+-0x1.f8c0e0fc4bb49p2
+-0x1.183706bd54880p3
+0x1.ba0d572401eb1p-2
+0x1.ca518633bac17p7
+0x1.cd57538cf882cp-3
+-0x1.8381b568c9479p9
+0x1.1e9183ce544bcp13
+0x1.6acba6699c0b9p4
+-0x1.ec73039e9f0d4p20
+-0x1.6477f2857b071p-3
+0x1.e4a176c91821cp9
+-0x1.8c0b56ccb6472p4
+0x1.88bb9270ccca0p0
+0x1.01872043ef4f6p26
+0x1.a699a703d54f0p2
+-0x1.4f9480c72527fp11
+-0x1.f3922598eb070p25
+0x1.ec1122cf73e00p11
+0x1.1a5df470f93f2p3
+0x1.2c4ac04f45ad8p2
+0x1.420df3f07e2e9p1
+-0x1.da3007b6e32e6p-3
+0x1.c58594ba64852p5
+0x1.97f94564a530ep1
+-0x1.8f2f3232703fap23
+-0x1.3aced1c22945fp3
+-0x1.9fc3b1f2df6bap18
+-0x1.2f9400213bfacp26
+-0x1.5a93a1aecd7f8p23
+0x1.e21fb377f0629p3
+-0x1.60d2b29133715p2
+-0x1.b35fd552a06bdp2
+0x1.f888f3bf0894ap3
+0x1.6179c63df740ap2
+-0x1.1b57e16b67305p12
+0x1.2df7a492a55aap3
+0x1.f5a8c595b66f3p12
+0x1.eb9b31a499310p0
+-0x1.fa29138391d8dp24
+-0x1.31e9737787955p22
+-0x1.50bec0d665bd3p4
+0x1.240336c6f50ecp20
+-0x1.234332620141dp2
+-0x1.494922947d1dep13
+-0x1.4589500e3dc0cp-4
+-0x1.c5b106e6c98c4p3
+-0x1.8e5975aebe391p1
+0x1.4acbd1eca3685p16
+0x1.3767b5309ae35p25
+-0x1.ab55b215961b5p19
+0x1.9bbb7240953bcp6
+0x1.2a69c6c2ce166p-4
+0x1.236446d855ea1p26
+0x1.007d67d2f6ae5p14
+-0x1.465752c4bba54p4
+0x1.c2c120ada26efp24
+0x1.89d8e773ca030p0
+-0x1.47d112473b7d2p23
+-0x1.961ec43a6ac1bp0
+0x1.cb149641f5e31p25
+-0x1.445105fd4a114p13
+-0x1.fbecb12a6b027p23
+-0x1.7d2f532f070e7p24
+0x1.8623305d4e6b2p12
+0x1.9d4e770b846b6p20
+0x1.2e6f72255a4e3p25
+0x1.217f53ffa3517p18
+-0x1.114cf59a17da7p22
+-0x1.9058c29b9c42cp0
+0x1.8b4964313d448p0
+-0x1.1324f4ac83d84p17
+0x1.8cdc938858e1cp1
+-0x1.8e3ac7bd1d9bap1
+0x1.91dd306db21b7p3
+0x1.1dabf17b5d5ecp11
+-0x1.8c5023b0520fbp17
+0x1.519133d1a30c1p0
+-0x1.83f8b0095f08fp11
+0x1.a2c384402e2dep0
+-0x1.99604221a841bp-3
+-0x1.238c553c5b382p11
+0x1.255263c1e7ea1p-2
+-0x1.f6abe2ca3fa18p-4
+-0x1.28b610d704296p2
+0x1.7fe030dd6870bp21
+-0x1.9277b3b585daap1
+0x1.4aba5560a518fp18
+0x1.d8b2d183392ffp12
+0x1.606e50d62a689p3
+-0x1.c9fe06391a2ffp6
+0x1.33a2c66357454p2
+-0x1.c14834e7cc6fep20
+0x1.70fe71d9a61a1p10
+0x1.9124214c779abp0
+0x1.36fe96d18bbb1p5
+0x1.ac0886bed0cbap-3
+0x1.c394c39ec727ep21
+0x1.8ede90b9ad083p1
+-0x1.63f723efeb8aap6
+-0x1.8006a11624d6fp9
+-0x1.991dd79a46696p14
+0x1.624f7005c927ap-3
+-0x1.5a1bc5448ef00p15
+-0x1.a1b2d04dd23dbp22
+0x1.fbdae5e7003fep9
+0x1.77e2f5191b00ap26
+0x1.6acd972fb203ep7
+-0x1.92e403fb5cd1fp1
+-0x1.bdb8819563c37p3
+-0x1.978c07f231d8cp-4
+0x1.d394c0387504bp3
+0x1.2ad084ae8150fp2
+0x1.1c84d77148aeep-3
+0x1.6cdec2610b6e2p9
+-0x1.ad36f42f1539cp10
+0x1.6b7736f489b84p23
+0x1.428d260202acdp-3
+-0x1.ac7df640f2e9dp-3
+-0x1.383325e10f339p16
+-0x1.9072c3baac08ep2
+-0x1.8d25202dfe5e9p1
+0x1.56cce34ce0a0fp3
+-0x1.87e0b26002871p0
+0x1.e58bf4dbae4e0p8
+0x1.f721c656141c5p-5
+0x1.936a122b128a9p3
+-0x1.9d77a3df09bffp0
+0x1.fee682c2083b1p-5
+0x1.0df346c938fa6p20
+-0x1.79a4807dc1c7cp12
+0x1.43cb96fb17819p15
+-0x1.f6cba0b606489p3
+0x1.279ff1f5aa40ep2
+-0x1.4a0200fac8a92p13
+-0x1.5bb4a64995a2fp6
+-0x1.8cfdf28a87367p1
+0x1.b33a47d6a5006p12
+-0x1.2d44128359d7ap3
+0x1.8e27c5f19370ep1
+0x1.b172a51df2790p12
+0x1.9418b67f79674p2
+-0x1.18472016853adp-4
+0x1.429a944c7fc15p-3
+-0x1.848c2357e315bp0
+0x1.94ffc4b0437b7p-3
+0x1.0ab3c61460bf1p23
+0x1.c46df37c82e74p3
+0x1.ae4073dbb6faap1
+-0x1.333756903e0d4p2
+0x1.9897d041ad55ap0
+-0x1.dc34d00205413p-3
+0x1.11d895596200dp0
+0x1.2c40f229821eap3
+0x1.cdf886a7aa583p1
+0x1.981c0286db7cep1
+-0x1.9e091230bd3a4p0
+0x1.793f34193764dp-4
+0x1.bb2a40332c042p-3
+-0x1.f14492192a73fp-4
+0x1.706253767db02p-1
+-0x1.89a6c7e27292bp0
+-0x1.9ecc544fb92bbp0
+-0x1.929732055c207p3
+0x1.7446d51c7b42dp-3
+-0x1.86ed158a74c67p0
+0x1.514041392ff26p2
+0x1.82d476bb8edb4p0
+0x1.7fd9b27331c05p-1
+0x1.f5b7d49823843p3
+-0x1.f69264abeafa3p3
+-0x1.3b9c9235047b1p-3
+-0x1.618cb26e482adp3
+-0x1.7ff1014b720ddp2
+0x1.89c1b5f05dc6ep0
+0x1.8433102ecaabcp0
+0x1.1a6f4686b08cbp-4
+0x1.f6e9f6c4c11d8p2
+0x1.f420f4826d0ebp3
+-0x1.07e6c7ee77297p-4
+-0x1.883073624792fp0
+-0x1.413bd59318f29p10
+-0x1.eccdd630f04c1p-5
+0x1.ca83404a9139bp-4
+-0x1.2fb1d040fa704p2
+-0x1.ec2965839cdf8p-4
+-0x1.980927a49fc8ep0
+-0x1.8891479510a4cp0
+-0x1.160f00148547bp4
+0x1.2c829387de51dp3
+-0x1.b823d3652d1f6p-4
+0x1.610211fe18f2cp4
+-0x1.4814c0233ff45p4
+-0x1.910a500100124p3
+-0x1.938eb41b840f3p2
+0x1.8b3dc18cdc10cp-3
+0x1.82bbb15b4a321p0
+-0x1.7ca807b240b48p0
+-0x1.e41654090b761p-6
+0x1.2e37b710fc120p2
+0x1.f6b7940e7b623p3
+0x1.110c63611fdc6p3
+0x1.02ee201bcaac4p-1
+-0x1.15cc478b9585fp-3
+0x1.eaa6a5dba0880p-3
+-0x1.5064263da0e06p18
+0x1.29e4125754701p2
+-0x1.9877831252381p-4
+0x1.8f2e232e9ac5dp2
+0x1.2d80559c80ef0p3
+-0x1.9254d7b9c8444p0
+-0x1.f4e9e64183d12p-1
+-0x1.f4c7a7634e935p3
+-0x1.9abbe3194229cp0
+-0x1.9919748132712p0
+0x1.5f26256acb653p3
+0x1.5763e1d0c726bp1
+-0x1.94ff2678d1f72p-3
+-0x1.a90bb2e15f04ap0
+0x1.2dd9e546986a5p3
+-0x1.f740c1ba3020dp2
+0x1.c64395e34728dp-2
+0x1.e3d0458eabfd8p1
+-0x1.ed0765e6ea0f5p-3
+0x1.dab346294cbdap-4
+0x1.f61623d7e20b5p3
+0x1.af9281c09646cp1
+0x1.1b1e15cd3bcc5p16
+0x1.06c4c10e6c8dep-4
+0x1.dd07569c3c3ccp-2
+-0x1.c15824199f02ep1
+0x1.5243561208a38p-4
+-0x1.f416f571790f9p2
+-0x1.caef3657e7abbp1
+0x1.83fbe5b4af7dcp0
+-0x1.8853d6f37a1efp0
+-0x1.46da6147a1b10p4
+0x1.302416be4e2a1p2
+-0x1.f2f8a5dc53cf4p2
+0x1.6055e6e35bb41p-1
+0x1.143d145693511p2
+-0x1.6950a182bf9a2p-4
+-0x1.8fcc8236972a5p2
+0x1.e9cb13665b011p14
+-0x1.f393f56d36bd5p2
+-0x1.6965240cd8bcap3
+0x1.941dd006b64ffp2
+-0x1.f1e3d41258e12p1
+-0x1.fccf763e37c40p-2
+-0x1.b796d71e63f83p0
+-0x1.92b6c5b1be835p3
+0x1.9ce932c77615dp0
+-0x1.73fbf1729d68fp2
+0x1.478eb664414a1p4
+0x1.56d8470b12ea3p1
+-0x1.3e8954f72e006p1
+0x1.f65e065d156a7p3
+0x1.84664031b46b2p4
+-0x1.f47a93802ea52p2
+-0x1.e9592161077e5p-1
+-0x1.2bd1669992834p3
+0x1.6e2943a16b8e1p-3
+-0x1.e7d855d59c297p-4
+0x1.8f433768a46fdp1
+-0x1.e515d3f871f61p-4
+0x1.90af17c3b46a3p1
+0x1.888852da31b55p0
+0x1.2b2b219aba250p-4
+0x1.acd68248a4138p3
+0x1.2e88f26ed5c10p4
+-0x1.93d8526e03271p2
+0x1.326cd7502e35dp3
+0x1.97cf340cdd0aap1
+0x1.9bf172a79ddddp1
+0x1.f762e63f6aa11p3
+-0x1.a352761c52850p-4
+-0x1.8ca4b46938898p0
+0x1.5faf86ccf0263p3
+-0x1.59de804f2786ep-3
+-0x1.1411b2e66b984p4
+0x1.c1744154cb07cp-2
+-0x1.e470062fd9902p-4
+0x1.96cdb4f1f7df7p1
+0x1.23fc15223f81ep2
+0x1.36a273c93939cp-4
+-0x1.cc76161ba5551p2
+0x1.30a473160c957p2
+-0x1.2b9fd42df7d03p11
+0x1.96269286b7ffdp1
+-0x1.26acf7d9c5873p-4
+0x1.4e9a05aed7b47p-2
+0x1.8c2310e286165p3
+0x1.2e7ea55e6bab4p3
+-0x1.947447e283cf8p0
+-0x1.5def45dd8c82dp3
+-0x1.3562b72377e9dp17
+-0x1.827dc1096f2c7p2
+-0x1.864d742b9a86ap0
+0x1.020c84197b2d6p-4
+-0x1.c2b3209b520f2p3
+0x1.4d46507b92ebfp1
+0x1.f7a911dc6f5edp3
+0x1.546ab7b47b80dp-4
+-0x1.8e74270390650p0
+0x1.798ef3689843dp4
+0x1.e4ed141ca4042p2
+-0x1.912b60e8b2288p1
+-0x1.a446f3b0c931fp-3
+0x1.8a8ca0324e319p1
+0x1.85f9f17f3303bp-4
+-0x1.8da4b789837fbp0
+0x1.e0c1b65e1731fp0
+0x1.51d9359cbafe5p0
+-0x1.8c93e53362a95p0
+0x1.2cb685f56e9c7p3
+-0x1.24ca32a7d2e7fp-4
+-0x1.f3a7d55be814ap2
+-0x1.5f5563552f3dbp1
+0x1.9651239a8f51cp23
+0x1.7883f140d86e3p4
+-0x1.f5d4704cadef3p3
+-0x1.1a8b81c161806p-4
+0x1.13a766d95ae15p-3
+-0x1.788d1565e8c73p0
+-0x1.5a00b1d8bf722p4
+-0x1.142ef555a9f1dp2
+-0x1.9f5fd239129c0p1
+-0x1.9234030e398e9p0
+-0x1.de3ee1a88c608p25
+0x1.98b413f614dd1p1
+0x1.919893496d760p0
+0x1.cb4c6209daacdp1
+0x1.716aa6b3989dep0
+0x1.388236a8a2105p17
+0x1.2d8ea65a5418ep3
+0x1.8d3b6586a1f83p1
+0x1.2ee22305d240cp2
+0x1.513c50ad7096ap0
+0x1.274f61da084fcp21
+0x1.8e999360ff9bfp2
+-0x1.634ee01f1e244p3
+0x1.f56b84f17d59ep3
+0x1.90cd66c769319p3
+0x1.948793a745cb3p1
+-0x1.922cc64d4c613p2
+0x1.9202f01408a2ep1
+0x1.647af0f3e78e8p0
+0x1.92c404a15ff85p3
+0x1.296510b2025d9p3
+0x1.8af4d01937e3dp1
+-0x1.905807696feddp2
+-0x1.c5e746b866817p3
+-0x1.74abf60c7458dp11
+0x1.9fd310b80fc3fp-1
+-0x1.0088c702d520ep3
+0x1.99e684301b40dp1
+0x1.9e40e369cece9p0
+0x1.9a10f4d7ad560p0
+-0x1.119517d95be1dp0
+0x1.6507f65c0a11ap-10
+-0x1.8d7e97db6ee5dp1
+0x1.77b3e74ff2733p0
+-0x1.9142f42793975p2
+0x1.b08f86307ef40p0
+-0x1.07f605feceabcp6
+0x1.847750d22aedap0
+0x1.da8917abe3345p-1
+0x1.996981db39a5cp1
+0x1.84af267337c45p0
+-0x1.2d1e62cdb58fep3
+0x1.57eb741c405e9p0
+-0x1.9306d461c4f0dp1
+0x1.97511167e78b7p1
+0x1.a378c189bb9f2p0
+0x1.9f116139e3045p3
+0x1.0e56b2d056bd2p1
+0x1.9022d6b0f776ap2
+-0x1.9a66b69d283d3p16
+0x1.93f2d78fa20b8p2
+-0x1.960097e81f663p1
+-0x1.f16b11682801ap2
+0x1.7c5836e306cd7p4
+0x1.931ce13cf2e8ep3
+-0x1.9604801aef305p1
+-0x1.6047b5e1f6282p4
+0x1.8afcb3ed73526p1
+0x1.f6f66374ec272p3
+-0x1.637a71d0dd8cap3
+-0x1.f503c3e728412p3
+-0x1.6752748f04736p12
+0x1.c39482bf49bafp0
+-0x1.776fc1f105341p1
+-0x1.1c8c0693eea0ep4
+0x1.bf500107c5bf8p1
+-0x1.c8cc1330ebb0fp3
+-0x1.9fc43100011e3p1
+-0x1.0218334d9287bp4
+-0x1.873dc40133dc7p2
+-0x1.6108e6ac3ce75p2
+0x1.827f54be95fd2p2
+-0x1.b3b9c1b2bc85bp1
+0x1.6a566601abe51p1
+-0x1.1838e51e22a74p3
+-0x1.ec20a2f393847p-1
+0x1.50e3f2decb26bp0
+0x1.9e5c631aefd23p1
+0x1.e380f3f3d1435p1
+0x1.2d2396f6e3d53p21
+-0x1.d37267e0da8b8p2
+-0x1.dc488296aade7p-5
+0x1.46ec674ce2a5dp13
+0x1.554101eac799cp13
+0x1.2f3013f5a6c54p8
+0x1.6f83a66c663f4p4
+-0x1.2b08f43aab39cp11
+-0x1.e1e0d1853224dp-1
+0x1.d771b17516553p6
+-0x1.887044239cfe8p1
+-0x1.a1db55509e8a4p1
+-0x1.bfa480fc2440ep0
+-0x1.6d6e63cfe5182p16
+-0x1.fb48863e0822ep0
+0x1.9f00e03bd225cp2
+0x1.759ad7d2fd408p-6
+0x1.127da379773a8p0
+0x1.f29402cc634ddp2
+-0x1.9952a78ed61b8p2
+0x1.97dd5139447c3p1
+-0x1.a76e765e68c3cp1
+0x1.8e67566cd5e8ep2
+0x1.1b03a778e2d96p0
+0x1.5082b4b12d87dp0
+-0x1.b7f804e64ad6dp-1
+-0x1.fd8ec1fbdfc91p-1
+-0x1.c72146ec63767p0
+-0x1.535215502bb28p9
+-0x1.7b86638bd0a8ep4
+0x1.2ee16587be28ap25
+0x1.e01b63e9ed441p-5
+0x1.694304bf328eep8
+0x1.ad55c78d3654dp3
+0x1.9eee975660a8ap3
+-0x1.c8b2561c9f81cp3
+0x1.8283c7a80a610p0
+0x1.5b20d2df32431p4
+0x1.9cd6a2f10b171p1
+-0x1.420cc50d7cdc2p8
+-0x1.dd9861944bbb3p3
+0x1.34a7a7976a495p0
+-0x1.d583650030438p-6
+0x1.d460c5cf3f543p0
+-0x1.d465b0c30b6edp1
+0x1.3c7da5c7e5924p1
+0x1.2346875c60507p2
+0x1.8a7b81be25ee8p2
+-0x1.397700c5fcc57p2
+-0x1.69d2e1c810103p14
+0x1.a85411bd063ccp1
+-0x1.0e29e1cbda382p1
+0x1.9a5e601081659p1
+-0x1.a7889779ffa67p0
+-0x1.438e04868ccc9p4
+-0x1.baa5420b07fdap0
+-0x1.6db8900accb05p19
+0x1.a8aec73d93c27p3
+-0x1.77d4072c1ccf2p0
+-0x1.21f6b21bc817ep2
+-0x1.f6a2f62a6cb31p2
+-0x1.fc06459a51fb8p2
+-0x1.9af657156b1f3p2
+0x1.506bb4f11e78cp0
+-0x1.33ebc72ee6932p2
+0x1.ae86415f42273p2
+-0x1.9bf4a6fe8e910p1
+-0x1.e96e9164690fcp21
+0x1.6947f51227604p2
+0x1.6013a22a2ddd3p1
+-0x1.6af96677a90abp4
+0x1.8afb44943c65ep3
+0x1.8edc46a59110dp1
+-0x1.27672769919c5p3
+-0x1.965194e8561b3p0
+0x1.3b1025ed73e67p1
+-0x1.847770922125cp3
+-0x1.dd5f522fb2873p-5
+-0x1.5efb85cc876f7p4
+-0x1.e68de705848ebp-5
+0x1.7ead02ce67bbcp1
+0x1.a051e272e6562p1
+-0x1.86e703217068ep2
+-0x1.9f42e3ab98d72p1
+0x1.67ed973022fefp1
+0x1.2fecd6c002277p9
+0x1.78c3e7b8861cdp1
+-0x1.a871661620c12p-6
+0x1.f44003f7dc467p1
+-0x1.8de9c11f74395p0
+-0x1.e819107f5c6e2p3
+0x1.95cc935ccd8b3p3
+-0x1.8f4ed509b97e5p0
+0x1.69451445560b1p1
+-0x1.95ef447fbd184p3
+0x1.86f83259b5fd7p0
+0x1.0477224f543aep4
+-0x1.84b8700c2e94ap2
+-0x1.d83170e4e3d42p23
+-0x1.8f0f6463688c9p3
+-0x1.627477b68d92cp4
+0x1.b08cf6f35c65fp1
+0x1.408dd4780aba4p6
+0x1.1086512459ff1p9
+0x1.3909f67380c33p3
+-0x1.949b71c1a11cep2
+-0x1.8d1345e55533bp3
+-0x1.8713c256b3756p2
+-0x1.dbc685c55e3f5p25
+0x1.fa1540a9be9a3p3
+0x1.861632597290fp21
+0x1.8a92623188bf5p2
+-0x1.306816f3567cdp3
+-0x1.46c942568bb98p4
+-0x1.493192769939fp-5
+0x1.6c7626b593bc1p15
+-0x1.de9ae14ed3b14p-5
+-0x1.9ceab67fd3361p17
+-0x1.4635c7e723683p14
+-0x1.f66857bcde805p5
+0x1.1404718e327a9p5
+-0x1.8bead04147772p0
+0x1.67f23030a3b9cp-5
+-0x1.605b1167aec6bp26
+0x1.c492b71449ac9p-5
+-0x1.896c46f57416fp0
+0x1.f67af48b080f1p4
+-0x1.2bf7f4c847654p2
+0x1.d16a349978580p5
+-0x1.62f916740779cp8
+0x1.88d1874b175c6p0
+-0x1.44bb24ced7803p23
+-0x1.8b3367f4a1c9ap1
+0x1.f904679db18c3p10
+0x1.8af0b3bf1bc0ap1
+0x1.91bd642036dc7p-5
+0x1.e05700bd746ecp-5
+0x1.442c71d7052dfp11
+-0x1.c0860397d57f6p-5
+0x1.22fa512afd525p15
+-0x1.17963471d9c22p9
+0x1.dc53e5919c4e9p-5
+-0x1.f0ab744dd7c5ap12
+0x1.6c6b174f1b2ddp25
+-0x1.c0e8e1d4be4ddp21
+-0x1.527b6735e78fdp-5
+-0x1.eb2570edcb498p-6
+-0x1.827ee5ca4565ep17
+-0x1.d312763bdbfc9p-5
+-0x1.1be7c35c5187dp21
+0x1.bb05e3cf5bed1p8
+0x1.2b35242e28392p2
+0x1.2c478726c2eadp3
+-0x1.f601e4eb21834p-7
+-0x1.aa9224d5c7b99p12
+0x1.ee4f61f98712ap25
+-0x1.f11477e64dd5fp25
+-0x1.eacea5fdf0447p22
+0x1.8090172f53488p-5
+-0x1.874452a514b8ap-5
+0x1.b09b7525da067p-5
+-0x1.a4a65761b73e4p19
+-0x1.3edf87b67bac9p11
+0x1.40df32ab49b60p16
+0x1.ad82d260cd27cp12
+-0x1.79d575123f3d3p4
+0x1.1a420309f1acfp19
+-0x1.e3d2815fcea1ap-5
+0x1.9564275cad6b1p20
+0x1.b22d964fa5da9p16
+-0x1.ac6ec099f3767p12
+-0x1.3a56c36fd71f8p5
+-0x1.10a2668b9a962p19
+-0x1.f582e4fb4b9fcp3
+-0x1.c91490880d0abp9
+-0x1.ed1516dd4512ap-5
+-0x1.bd52b3aaf56cbp20
+-0x1.5f8674c2c25b3p3
+-0x1.0c0c55ef2b998p20
+-0x1.d192227536e73p24
+-0x1.2faaa2ecfe577p24
+-0x1.b90651cb301d0p-5
+-0x1.ac3b63b519eadp-5
+-0x1.2bd446f3ca7f3p2
+0x1.a430460e6a9b6p12
+-0x1.b3d576f970023p-5
+-0x1.a78456f24ad8bp21
+-0x1.8e6d24c106191p-5
+-0x1.445ac22c0535bp10
+0x1.6006b3be58fcdp5
+0x1.e2c9a30fed3dbp-5
+0x1.a9c595abf1803p17
+-0x1.dda6a16942918p5
+0x1.882b80046b531p-5
+0x1.e312c4711d211p-5
+-0x1.ffc9304847f6ep23
+0x1.e2bdf53a0e7eap-6
+0x1.aafe55c56b961p4
+-0x1.a42c00873fe91p19
+-0x1.6e05225136648p14
+0x1.8b6d7748a44d0p1
+-0x1.4f9b15e74489bp24
+-0x1.d0f83650acd18p10
+0x1.75d88737c154ep10
+0x1.fd9f30446da4cp12
+-0x1.ea0f976d9c95fp8
+-0x1.2e7ce0068807bp3
+0x1.408f556f1b433p22
+-0x1.33dd44ccdcad4p9
+-0x1.1392b23681ed7p22
+-0x1.a07451f59178ap0
+0x1.4be7960b80101p-5
+-0x1.c35dd7637fabbp3
+-0x1.14eaf252d4e69p24
+-0x1.eb5cb6f319984p12
+-0x1.ff5795cc9e8c9p25
+0x1.f373c7948157ap2
+0x1.8b11d503c9621p9
+-0x1.a6fba484a1e0dp23
+0x1.185dc1c0b0020p9
+-0x1.4205d4a32810fp8
+0x1.ba7665e0e6ca3p-6
+-0x1.9114139572d64p2
+0x1.8550d5a435556p6
+0x1.9217f777d16afp1
+0x1.523d75d52216bp22
+0x1.eaf44618ace9cp25
+-0x1.0ce264ba236dep25
+-0x1.dd0c66bca284fp4
+0x1.e133b560a7249p-5
+0x1.2e73200b72efcp3
+0x1.31d3f1c22bbefp-5
+-0x1.160c73ebb453bp9
+0x1.725517d421c01p23
+-0x1.b322115912690p8
+0x1.3123b6c190157p15
+-0x1.f7c6d4c05900ep2
+0x1.4199c1016ddbep21
+-0x1.939ab538fcf52p1
+-0x1.fe9b67751e8e2p16
+0x1.8194d6944c477p15
+0x1.84ddc763e1a66p0
+-0x1.4e1de2c8b8b84p-5
+0x1.f2b9c3f27bde1p11
+-0x1.616ef1dab5092p3
+0x1.f592e4f2759fep3
+0x1.4aa7e080f1cdbp11
+0x1.ce0a91e4edc80p-6
+0x1.534af4542f502p9
+0x1.9a5816c8c9b58p-5
+0x1.71ed06e256291p11
+0x1.1a3b208fc7a34p17
+0x1.93a935a59f8c6p2
+0x1.d0cc856988238p6
+-0x1.1aba30a4c9984p9
+-0x1.f8c461cdebee7p21
+-0x1.899a449c6c3ebp20
+0x1.363ec045afdeep9
+0x1.439216bc4453bp8
+0x1.4447c6df4c7afp17
+-0x1.9911c1e4c62abp15
+0x1.e16500b58f801p-6
+-0x1.b705b75ed89fbp22
+-0x1.01e46049e5a39p20
+-0x1.932304c2d6686p-5
+-0x1.e6d670226ad2ap-6
+-0x1.bd07e41c8e8bcp18
+0x1.4a0e422534f2bp-8
+-0x1.6940b30465840p8
+0x1.d733705bedd6ep-6
+0x1.d5cc051d8c218p19
+-0x1.2c33e54a305f1p3
+-0x1.e8b8d19effe41p-7
+-0x1.3251544f616aep10
+0x1.7695f68f3e6c7p15
+0x1.8b4f237050232p1
+0x1.0f3804c1ac573p26
+0x1.63b6402daf587p25
+-0x1.ef19b46fc82d1p-5
+0x1.5b24532eef37bp8
+0x1.e3cc25433e63dp8
+-0x1.6adbc65e81bf0p-6
+0x1.4af2127550ba6p19
+0x1.0b0534813be5dp10
+0x1.406e85cef6faep18
+0x1.3624f311203b4p24
+0x1.c539d648b5762p4
+0x1.d33de1b06857cp22
+0x1.088795083936fp26
+-0x1.46d32700ac723p13
+0x1.90cd33bd76f26p3
+-0x1.bc8b039abda5dp-5
+0x1.118c66b20ff59p24
+0x1.86aa4299069edp17
+-0x1.8c0d566b825bdp6
+0x1.a2f000766a5dcp-8
+0x1.f125b5925ecdcp9
+-0x1.42e27168a01e5p-6
+0x1.8d07c5da62627p-5
+-0x1.300382649922bp25
+-0x1.c6af64d64da9bp21
+-0x1.dbf9b7e4544d8p-5
+-0x1.ae66a3b7f8d1ep8
+-0x1.68cae1e2a98b1p25
+-0x1.d9d0e40f5b316p18
+0x1.9240a42e12154p4
+-0x1.85efc5a65c092p5
+0x1.c25b32c0f3a22p21
+-0x1.8ce4e51fc72bcp20
+0x1.2d88a67e7f4d5p6
+-0x1.f9fab7bee125dp2
+0x1.d5ab6667f00aap-5
+-0x1.8de195b535d34p0
+0x1.856a236431247p5
+-0x1.9355b20d3597fp3
+0x1.c86242004b43bp16
+-0x1.f075e5ac52efcp7
+0x1.128a500680aadp22
+-0x1.e05591544f544p21
+0x1.93efc221f8e59p2
+0x1.ab2f462bf74fcp5
+0x1.c49bd6a3c1818p4
+0x1.7b8ad50c7bfecp13
+0x1.fc4e96888c2d1p-6
+-0x1.58d6c2c5e054cp-5
+-0x1.2f6ec7a1377e0p14
+0x1.c58a842a616dbp3
+0x1.834dd78309187p18
+-0x1.c3a496c1450d1p-5
+0x1.f4d2b45c847dfp3
+0x1.8c356160ce725p1
+0x1.3142d7811c731p2
+0x1.93a9516a96a0bp3
+0x1.a1bee68429794p7
+0x1.b95dc334a2bc6p8
+-0x1.19cef672a9a47p-6
+-0x1.d27957ab51079p-5
+-0x1.f326d3c218f96p-7
+-0x1.3663f5c2f7a7ep21
+0x1.92d2c298efc0ep3
+0x1.0c0ac140813e9p14
+0x1.f042d0f375d37p-5
+-0x1.33d93108cefb4p17
+0x1.49bb63dc63385p26
+-0x1.6c4a43fe47766p15
+0x1.ef7b348d27a11p-5
+0x1.75c9e12812395p26
+0x1.646c466065168p13
+0x1.c6a595a4cf1eep-5
+0x1.633eb2bb2135cp13
+0x1.1d6fd48d68d10p16
+0x1.909086ce4aa7bp19
+0x1.33e475eaa77c1p6
+0x1.dd76962579da8p4
+0x1.2f6ff6e564b1cp2
+-0x1.250d605076831p-5
+-0x1.eb5e5279788d8p-5
+-0x1.8d7a8777145a7p1
+0x1.987364729a434p19
+0x1.dabe4125b97b3p-5
+0x1.b17e331eb6789p6
+0x1.6db837fb7d483p-5
+0x1.974bf2de99250p-5
+0x1.eb7783df9a7d7p24
+0x1.d4a382fdca607p-5
+0x1.c819b06815072p-5
+-0x1.884961789ce26p0
+-0x1.49abd42b2da4ap11
+-0x1.c22025eda45c0p-5
+0x1.1507f3d165044p4
+0x1.98d962253bc23p0
+0x1.91d604536b2ddp1
+-0x1.97e455ad89b74p14
+-0x1.e048a7162e609p24
+-0x1.b0f2a035fc460p-5
+-0x1.dfae87af15a41p-5
+0x1.5957d3127c4ecp-5
+-0x1.e19520fdfdde8p18
+0x1.14bbb5a3d4a9ep-5
+0x1.40e1e0445bbe9p20
+0x1.d11a60dfe5ccbp13
+-0x1.2864a79b70a9fp12
+-0x1.d586268ab9766p-5
+0x1.e86f11c2cfc20p-6
+0x1.44cca2c6d41b2p-6
+-0x1.96a014873a351p-5
+-0x1.8d81a234eaeb3p21
+0x1.3a1533e669917p5
+0x1.8ba860cf520bep1
+0x1.4265b33954e48p10
+-0x1.a249f7fe5c4e5p17
+-0x1.2e1957e00bdd5p4
+-0x1.8240d5065f3b6p17
+0x1.8d74a29263a5ap0
+0x1.951506f271652p1
+0x1.e92041ee927e3p-6
+0x1.ed2dc6dcf4002p-6
+0x1.2c92337f90e49p2
+-0x1.683c21e808cdep-5
+-0x1.9a0b940509413p-6
+0x1.98f7007ee0945p1
+0x1.a2320700475bbp-7
+0x1.bd43201cd4e31p-5
+-0x1.cc04710864fd6p-5
+0x1.a21c8714da14ep-5
+0x1.773693ef8fa14p-5
+0x1.79803001fe5dap-5
+-0x1.2c32c75512fe9p2
+0x1.844f25e75eb2fp0
+-0x1.95d877a17a280p2
+0x1.948a43d9d7741p1
+0x1.971c84f87b377p0
+0x1.9127e7382bcc8p-5
+0x1.93fe639e0db3dp0
+0x1.2f4d04d0c8b60p3
+-0x1.902934f6cec25p0
+-0x1.97e5e2e8c9690p0
+-0x1.2e7f34a41089ap2
+-0x1.dbf4d63956dabp-5
+0x1.7de270a1cef9dp-5
+-0x1.a8cfd796dd749p-5
+-0x1.867323de7c548p0
+-0x1.583b54858a854p-5
+0x1.5a32b5f87c731p-6
+-0x1.a893c3b3f116dp-5
+0x1.8dba0559b03f2p-5
+-0x1.8fddc49a817aap0
+0x1.8dfc56712ea84p1
+-0x1.5ec35128245fbp3
+0x1.2ed721b3e7cf3p2
+0x1.f6f6b38e4a725p2
+0x1.8d7636d60e4a2p0
+0x1.f53e24706a8adp2
+-0x1.2b8e75888ccddp2
+0x1.798c20cba7df8p4
+-0x1.c28770144413dp3
+0x1.99b0411242349p1
+-0x1.899d668f66224p0
+-0x1.9584c477164dfp1
+0x1.894db4cfedf00p0
+0x1.478fe109931cbp4
+0x1.60ecc69ceb31cp3
+-0x1.2daad0f631f1ap3
+-0x1.90c0775e5bbd9p3
+-0x1.9563261499472p1
+-0x1.8cce8733835a8p1
+-0x1.8e5bd67aad0bdp1
+0x1.2f88b005dd5c1p3
+0x1.2f79b51aa1b2ep3
+0x1.c5ba9020db5c7p3
+-0x1.91834694280eap3
+-0x1.f59d31d57b57cp3
+0x1.9f12216e6b6e5p0
+0x1.9094e7026c1ebp3
+0x1.155cc046ffb5bp4
+-0x1.848890adc4715p0
+0x1.90ad119b10f12p2
+-0x1.8d9a028100e2cp0
+0x1.c60477c5553dfp3
+0x1.91b295b42732dp3
+-0x1.93e8041f128acp3
+0x1.88cc56d1e4905p0
+-0x1.925832396eb4ap3
+0x1.8a73075e37e87p1
+-0x1.138d60f880517p4
+-0x1.97cf677cc2b69p1
+0x1.915aa29d49dbcp1
+0x1.873b8780d5106p0
+0x1.94c856a2d7bb6p1
+-0x1.90628588db51ap3
+-0x1.8f5770d7d1d70p1
+0x1.c5579491935bbp3
+-0x1.78da03f27aa07p4
+0x1.9209877319a62p1
+-0x1.2aea80b631733p2
+0x1.2f75e48cddd2cp3
+-0x1.5fb7273fcc453p3
+-0x1.8488702ff0c32p0
+-0x1.93dda7bee871ep0
+-0x1.93b653501d3c1p2
+0x1.9205222724e5bp1
+0x1.2df4a1196323ep2
+0x1.6108a416f100ap3
+-0x1.8db7954424fc7p0
+0x1.2bb8a1817846fp3
+-0x1.8abed04ecb123p0
+0x1.92d5f27ca693fp0
+-0x1.2a3e75ea2ae07p2
+-0x1.90fb35edc8d06p0
+0x1.9a76161e739c7p0
+# tan slow path at 240 bits
+# Implemented in sysdeps/ieee754/dbl-64/mptan.c
+# Range reduction is done using mp arithmetic.
+## name: 240bits
+0x1.ee5a221c1ec30p750
+0x1.d0b7237b90954p983
+0x1.50aee539c99e6p817
+-0x1.63457438d44aap53
+-0x1.294211dbd13e4p213
+-0x1.d71b609ef9723p651
+0x1.9c3fc4df7e48ep242
+0x1.ab8b7376e687ep989
+-0x1.23f9a2342724ap746
+0x1.119932858dd5ap966
+0x1.172f40abffae1p573
+-0x1.f9bb63afd3e82p824
+0x1.1d49b6073fd25p1018
+0x1.3825a112069d0p360
+0x1.8e64d153eac98p839
+0x1.e87296bff194bp410
+0x1.607562a57b7cbp149
+0x1.79bab59092899p902
+0x1.de5304e52acddp608
+-0x1.418357b7072b6p987
+-0x1.b86e0050bf853p732
+-0x1.a1efd6e7ed2f7p903
+-0x1.d8f94109ae4a3p874
+0x1.4f3247a1eea1ep815
+0x1.bdea912ba38d1p109
+-0x1.c8df81ba65338p846
+0x1.fdeb13595a17bp798
+0x1.767af536202fcp99
+-0x1.2a30021aae9e6p527
+-0x1.28dee7f401161p970
+0x1.4619840d88992p101
+0x1.6bfc225d005a2p837
+0x1.1e1af0e150b94p594
+0x1.bb40b53e0e710p107
+-0x1.509896c78f606p883
+0x1.d89291baa92acp34
+-0x1.3d17f161b743ep327
+-0x1.39c6a16a6c7c6p264
+0x1.c76d60078cecfp545
+-0x1.154493e3be839p980
+-0x1.b3df5360e6cbfp245
+-0x1.f0c52280d0aadp653
+-0x1.d93ce79dfe195p45
+0x1.88dd7769601fep966
+0x1.a903f553288eap298
+0x1.4ecba03f7132fp152
+-0x1.ee34e7eac85fap992
+-0x1.010e46c3cd107p876
+-0x1.b56fd64fe1fbdp323
+0x1.2c50c6911febep742
+0x1.740dc6b962c9bp422
+-0x1.617e2227cbff6p224
+-0x1.1ad286314c58bp940
+0x1.ac1745b651b5fp649
+0x1.fddce309449cfp982
+0x1.73aa443462592p182
+0x1.7d2e10f57bf82p306
+-0x1.93eef4d8c4abep433
+0x1.3d9bd192c5d05p408
+0x1.1ba6707e8de9ap833
+-0x1.c2f6f7c9e74b3p766
+0x1.404e24bccecfcp457
+-0x1.7a40f3ff05d01p530
+-0x1.10de718a052b3p202
+0x1.406e1464adc55p557
+0x1.9e19028382754p550
+0x1.635c94cbc7020p982
+0x1.984492142a1c0p81
+0x1.4b64a03a03816p428
+0x1.247c4191da022p961
+0x1.c141e714fe35cp908
+0x1.1b3621a4c2bafp257
+0x1.53d5e3c854773p294
+0x1.0747d33080a32p824
+0x1.1632770278ce8p845
+-0x1.c782e7d005b27p622
+0x1.593837dacc255p851
+-0x1.ec2ff0a8e0bcdp569
+-0x1.b594936bb511ep82
+0x1.9b45519d36598p976
+-0x1.9b8684eaa71c6p944
+-0x1.a3d743632fed4p395
+-0x1.b73bd248a7a07p401
+-0x1.dbc2269986a9dp213
+0x1.1db1d61aaef59p102
+0x1.2e8bb0f1ad8e5p797
+0x1.e883f6710822bp235
+-0x1.869ff130d5a8ap348
+0x1.2fa330ffa7b9bp49
+-0x1.0504a5188eddbp500
+-0x1.0d0a04316e717p622
+0x1.e020a6a980593p957
+0x1.869895a12103dp1011
+-0x1.a069a71af1389p432
+-0x1.814d711d1c525p904
+0x1.3648160c04db0p640
+-0x1.fafcf58cb570cp724
+-0x1.00bdd7f58135ep394
+0x1.e4d721588529ep259
+-0x1.2b364691f9147p192
+-0x1.7932c5bb927a9p463
+0x1.d185a23e7a264p121
+-0x1.d82395a639e87p578
+0x1.d19bd28cdb538p1020
+-0x1.91e123b92a975p528
+-0x1.f5b921ff6813fp866
+-0x1.f233e109dede1p346
+0x1.22b5274acfea5p28
+-0x1.b12c358527025p560
+0x1.87f9c3636f7a7p770
+-0x1.b7cfb4bd9ef9fp559
+0x1.ab30f4cdb2826p927
+0x1.3121e66534c09p996
+0x1.32ff26e56b243p66
+-0x1.6a3155c7bbc49p381
+0x1.0629119d19fe7p306
+0x1.666f07ccc3516p444
+-0x1.71b82433bfd05p656
+0x1.787bb435c6119p237
+-0x1.bb81028d4e92ep822
+-0x1.f956b52f53507p930
+-0x1.9f75e34d740f3p394
+0x1.babfd6b429321p307
+-0x1.0546727a98f2fp892
+-0x1.24e7a5b4ab558p36
+0x1.91b656ffc9015p48
+0x1.f214d6691dbc8p813
+-0x1.7508047526de4p708
+-0x1.6e0884d03f494p595
+-0x1.abf2f140b46a1p958
+0x1.cd37e24ae01d2p996
+0x1.874b5349798ddp791
+0x1.5db704095417cp479
+-0x1.385f265e0be6dp529
+-0x1.77d7f72971477p254
+0x1.c1d572032a2bcp231
+0x1.c5f3b1b1e6cb1p985
+0x1.112e0044fe943p152
+-0x1.c39e821cde6d0p860
+0x1.70f7800567a4cp831
+-0x1.bf2987be14b54p43
+0x1.005dc191f8155p428
+0x1.15ae534e6771bp286
+0x1.c90422cac4067p433
+0x1.ce9e737328102p189
+0x1.809d12529d2fcp385
+0x1.1063e5c391f7dp222
+0x1.d2ec86f035aecp981
+-0x1.196f9101def40p684
+0x1.c63095b4787cbp964
+-0x1.974c637b88001p971
+-0x1.1f4ff59ad6375p982
+-0x1.fd2845fc76df9p832
+0x1.1e2872f75696dp150
+0x1.550941834ba74p642
+0x1.0d163506e72bbp960
+-0x1.c4ac9745073bap738
+0x1.8fd3f61e48e52p625
+-0x1.5f9425e8039f3p636
+0x1.3e4f37281e892p558
+0x1.3373f1db8806cp990
+-0x1.038965f403b17p774
+-0x1.bd5b377d53669p945
+-0x1.07b3f085c6733p689
+0x1.3544b2eed1abfp262
+0x1.1532c11ac2507p832
+-0x1.c00c9609102c4p786
+0x1.ad9637e0c897bp581
+-0x1.fe4bc0f718a8cp569
+0x1.0692371444ef5p700
+0x1.cb4e64433e84cp965
+-0x1.69d26008baa73p236
+0x1.62f9711ed5d1ep464
+0x1.e930d2860dadap435
+-0x1.909f574e6549cp658
+0x1.00e4f31691d23p399
+-0x1.0d5823a83628bp540
+-0x1.c7b743f92fb3fp569
+0x1.7dee11c9dafa3p670
+0x1.529be63463210p939
+0x1.62bd520c84081p874
+0x1.c993466a75c4cp61
+-0x1.33b0260c2549bp495
+0x1.09e87208ab6ffp625
+0x1.0ae9e4d036946p291
+0x1.07d5649391891p165
+-0x1.bee4e05b04714p586
+0x1.2b0994ee5f218p167
+0x1.ebfc830d19d34p992
+0x1.382612ecb922ap979
+-0x1.21c82431ac446p1022
+0x1.6196b60f1c50fp190
+-0x1.c25ea71d737a2p248
+0x1.d024774408b26p335
+-0x1.f5ce472da3a21p644
+-0x1.81a011e0b6271p851
+0x1.9cd0227a58f39p939
+-0x1.8698a10662bffp544
+0x1.a07c20fa799d8p622
+-0x1.d126c657c582bp880
# tan slowest path at 768 bits
# Implemented in sysdeps/ieee754/dbl-64/mptan.c
## name: 768bits
0x1.dffffffffff1fp-22
+0x1.810f60836538dp143
+-0x1.e877a52501e08p134
diff --git a/benchtests/tanh-inputs b/benchtests/tanh-inputs
index 3c8c546f0c..84a603dc3d 100644
--- a/benchtests/tanh-inputs
+++ b/benchtests/tanh-inputs
@@ -1,3 +1,6 @@
+## args: double
+## ret: double
+## includes: math.h
0.1
0.2
0.3
diff --git a/config.h.in b/config.h.in
index a85f131255..f6151c55bf 100644
--- a/config.h.in
+++ b/config.h.in
@@ -57,9 +57,6 @@
directive. */
#undef HAVE_ASM_POPSECTION_DIRECTIVE
-/* Define if versioning of the library is wanted. */
-#undef DO_VERSIONING
-
/* Defined to the oldest ABI we support, like 2.1. */
#undef GLIBC_OLDEST_ABI
@@ -204,13 +201,13 @@
They are used only in miscellaneous generator programs, not
in compiling libc itself. */
-/* sysdeps/generic/configure.in */
+/* sysdeps/generic/configure.ac */
#undef HAVE_PSIGNAL
-/* sysdeps/unix/configure.in */
+/* sysdeps/unix/configure.ac */
#undef HAVE_STRERROR
-/* sysdeps/unix/common/configure.in */
+/* sysdeps/unix/common/configure.ac */
#undef HAVE_SYS_SIGLIST
#undef HAVE__SYS_SIGLIST
#undef HAVE__CTYPE_
@@ -241,4 +238,8 @@
/* The pt_chown binary is being built and used by grantpt. */
#undef HAVE_PT_CHOWN
+/* ports/sysdeps/mips/configure.in */
+/* Define if using the IEEE 754-2008 NaN encoding on the MIPS target. */
+#undef HAVE_MIPS_NAN2008
+
#endif
diff --git a/config.make.in b/config.make.in
index 7b04568a22..b5308d85b8 100644
--- a/config.make.in
+++ b/config.make.in
@@ -67,7 +67,6 @@ output-format = @libc_cv_output_format@
static-libgcc = @libc_cv_gcc_static_libgcc@
-versioning = @VERSIONING@
oldest-abi = @oldest_abi@
exceptions = @exceptions@
multi-arch = @multi_arch@
diff --git a/configure b/configure
index 765b855c74..ee2ec0d14b 100755
--- a/configure
+++ b/configure
@@ -613,7 +613,6 @@ libc_cv_z_combreloc
ASFLAGS_config
libc_cv_Bgroup
libc_cv_cc_with_libunwind
-VERSIONING
BISON
INSTALL_INFO
PERL
@@ -739,7 +738,6 @@ with_default_link
enable_sanity_checks
enable_shared
enable_profile
-enable_versioning
enable_oldest_abi
enable_hardcoded_path_in_tests
enable_stackguard_randomization
@@ -749,6 +747,7 @@ enable_hidden_plt
enable_bind_now
enable_static_nss
enable_force_install
+enable_maintainer_mode
enable_kernel
enable_all_warnings
enable_multi_arch
@@ -1392,8 +1391,6 @@ Optional Features:
in special situations) [default=yes]
--enable-shared build shared library [default=yes if GNU ld]
--enable-profile build profiled library [default=no]
- --disable-versioning do not include versioning information in the library
- objects [default=yes if supported]
--enable-oldest-abi=ABI configure the oldest ABI supported [e.g. 2.2]
[default=glibc default]
--enable-hardcoded-path-in-tests
@@ -1412,6 +1409,9 @@ Optional Features:
--enable-static-nss build static NSS modules [default=no]
--disable-force-install don't force installation of files from this package,
even if they are older than the installed files
+ --enable-maintainer-mode
+ enable make rules and dependencies not useful (and
+ sometimes confusing) to the casual installer
--enable-kernel=VERSION compile for compatibility with kernel not older than
VERSION
--enable-all-warnings enable all useful warnings gcc can issue
@@ -3433,13 +3433,6 @@ else
profile=no
fi
-# Check whether --enable-versioning was given.
-if test "${enable_versioning+set}" = set; then :
- enableval=$enable_versioning; enable_versioning=$enableval
-else
- enable_versioning=yes
-fi
-
# Check whether --enable-oldest-abi was given.
if test "${enable_oldest_abi+set}" = set; then :
@@ -3542,6 +3535,14 @@ fi
+# Check whether --enable-maintainer-mode was given.
+if test "${enable_maintainer_mode+set}" = set; then :
+ enableval=$enable_maintainer_mode; maintainer=$enableval
+else
+ maintainer=no
+fi
+
+
# Check whether --enable-kernel was given.
if test "${enable_kernel+set}" = set; then :
enableval=$enable_kernel; minimum_kernel=$enableval
@@ -3970,8 +3971,8 @@ fi
# base_machine, we don't change it.
test -n "$base_machine" || case "$machine" in
i[4567]86) base_machine=i386 machine=i386/$machine ;;
-powerpc) base_machine=powerpc machine=powerpc/powerpc32 ;;
-powerpc64) base_machine=powerpc machine=powerpc/powerpc64 ;;
+powerpc64*) base_machine=powerpc machine=powerpc/powerpc64 ;;
+powerpc*) base_machine=powerpc machine=powerpc/powerpc32 ;;
s390) base_machine=s390 machine=s390/s390-32 ;;
s390x) base_machine=s390 machine=s390/s390-64 ;;
sh3*) base_machine=sh machine=sh/sh3 ;;
@@ -4773,7 +4774,7 @@ $as_echo_n "checking version of $MAKE... " >&6; }
ac_prog_version=`$MAKE --version 2>&1 | sed -n 's/^.*GNU Make[^0-9]*\([0-9][0-9.]*\).*$/\1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
- 3.79* | 3.[89]*)
+ 3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*)
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
@@ -5132,7 +5133,8 @@ else
fi
-for ac_prog in autoconf
+if test "x$maintainer" = "xyes"; then
+ for ac_prog in autoconf
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
@@ -5175,27 +5177,30 @@ fi
done
test -n "$AUTOCONF" || AUTOCONF="no"
-case "x$AUTOCONF" in
-xno|x|x:) AUTOCONF=no ;;
-*)
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works" >&5
-$as_echo_n "checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works... " >&6; }
+ case "x$AUTOCONF" in
+ xno|x|x:) AUTOCONF=no ;;
+ *)
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works" >&5
+$as_echo_n "checking whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works... " >&6; }
if ${libc_cv_autoconf_works+:} false; then :
$as_echo_n "(cached) " >&6
else
- if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then
- libc_cv_autoconf_works=yes
- else
- libc_cv_autoconf_works=no
- fi
+ if (cd $srcdir; $AUTOCONF $ACFLAGS configure.ac > /dev/null 2>&1); then
+ libc_cv_autoconf_works=yes
+ else
+ libc_cv_autoconf_works=no
+ fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_autoconf_works" >&5
$as_echo "$libc_cv_autoconf_works" >&6; }
- test $libc_cv_autoconf_works = yes || AUTOCONF=no
- ;;
-esac
-if test "x$AUTOCONF" = xno; then
- aux_missing="$aux_missing autoconf"
+ test $libc_cv_autoconf_works = yes || AUTOCONF=no
+ ;;
+ esac
+ if test "x$AUTOCONF" = xno; then
+ aux_missing="$aux_missing autoconf"
+ fi
+else
+ AUTOCONF=no
fi
test -n "$critic_missing" && as_fn_error $? "
@@ -5632,90 +5637,6 @@ if test $libc_cv_asm_unique_object = yes; then
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for .symver assembler directive" >&5
-$as_echo_n "checking for .symver assembler directive... " >&6; }
-if ${libc_cv_asm_symver_directive+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- cat > conftest.s <<EOF
-${libc_cv_dot_text}
-_sym:
-.symver _sym,sym@VERS
-EOF
-if ${CC-cc} -c $ASFLAGS conftest.s 1>&5 2>&5; then
- libc_cv_asm_symver_directive=yes
-else
- libc_cv_asm_symver_directive=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_asm_symver_directive" >&5
-$as_echo "$libc_cv_asm_symver_directive" >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld --version-script" >&5
-$as_echo_n "checking for ld --version-script... " >&6; }
-if ${libc_cv_ld_version_script_option+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- if test $libc_cv_asm_symver_directive = yes; then
- cat > conftest.s <<EOF
-${libc_cv_dot_text}
-_sym:
-.symver _sym,sym@VERS
-EOF
- cat > conftest.map <<EOF
-VERS_1 {
- global: sym;
-};
-
-VERS_2 {
- global: sym;
-} VERS_1;
-EOF
- if ${CC-cc} -c $ASFLAGS conftest.s 1>&5 2>&5; then
- if { ac_try='${CC-cc} $CFLAGS $LDFLAGS -shared
- -o conftest.so conftest.o
- -nostartfiles -nostdlib
- -Wl,--version-script,conftest.map
- 1>&5'
- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
- (eval $ac_try) 2>&5
- ac_status=$?
- $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
- test $ac_status = 0; }; };
- then
- libc_cv_ld_version_script_option=yes
- else
- libc_cv_ld_version_script_option=no
- fi
- else
- libc_cv_ld_version_script_option=no
- fi
-else
- libc_cv_ld_version_script_option=no
-fi
-rm -f conftest*
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_ld_version_script_option" >&5
-$as_echo "$libc_cv_ld_version_script_option" >&6; }
-if test $shared != no &&
- test $libc_cv_asm_symver_directive = yes &&
- test $libc_cv_ld_version_script_option = yes &&
- test $enable_versioning = yes; then
- VERSIONING=yes
- $as_echo "#define DO_VERSIONING 1" >>confdefs.h
-
-else
- VERSIONING=no
-fi
-
-
-if test $shared != no && test $VERSIONING = no; then
- echo "\
-*** WARNING: You should not compile GNU libc without versioning. Not using
-*** versioning will introduce incompatibilities so that old binaries
-*** will not run anymore.
-*** For versioning you need recent binutils (binutils-2.8.1.0.23 or newer)."
-fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for .previous assembler directive" >&5
$as_echo_n "checking for .previous assembler directive... " >&6; }
if ${libc_cv_asm_previous_directive+:} false; then :
diff --git a/configure.in b/configure.ac
index 67d8ac4ccb..de7d36caca 100644
--- a/configure.in
+++ b/configure.ac
@@ -151,11 +151,6 @@ AC_ARG_ENABLE([profile],
[build profiled library @<:@default=no@:>@]),
[profile=$enableval],
[profile=no])
-AC_ARG_ENABLE([versioning],
- AC_HELP_STRING([--disable-versioning],
- [do not include versioning information in the library objects @<:@default=yes if supported@:>@]),
- [enable_versioning=$enableval],
- [enable_versioning=yes])
AC_ARG_ENABLE([oldest-abi],
AC_HELP_STRING([--enable-oldest-abi=ABI],
@@ -237,6 +232,12 @@ AC_ARG_ENABLE([force-install],
[force_install=yes])
AC_SUBST(force_install)
+AC_ARG_ENABLE([maintainer-mode],
+ AC_HELP_STRING([--enable-maintainer-mode],
+ [enable make rules and dependencies not useful (and sometimes confusing) to the casual installer]),
+ [maintainer=$enableval],
+ [maintainer=no])
+
dnl On some platforms we allow dropping compatibility with all kernel
dnl versions.
AC_ARG_ENABLE([kernel],
@@ -588,8 +589,8 @@ changequote(,)dnl
# base_machine, we don't change it.
test -n "$base_machine" || case "$machine" in
i[4567]86) base_machine=i386 machine=i386/$machine ;;
-powerpc) base_machine=powerpc machine=powerpc/powerpc32 ;;
-powerpc64) base_machine=powerpc machine=powerpc/powerpc64 ;;
+powerpc64*) base_machine=powerpc machine=powerpc/powerpc64 ;;
+powerpc*) base_machine=powerpc machine=powerpc/powerpc32 ;;
s390) base_machine=s390 machine=s390/s390-32 ;;
s390x) base_machine=s390 machine=s390/s390-64 ;;
sh3*) base_machine=sh machine=sh/sh3 ;;
@@ -990,7 +991,7 @@ AC_CHECK_PROG_VER(CC, ${ac_tool_prefix}gcc ${ac_tool_prefix}cc, -v,
critic_missing="$critic_missing gcc")
AC_CHECK_PROG_VER(MAKE, gnumake gmake make, --version,
[GNU Make[^0-9]*\([0-9][0-9.]*\)],
- [3.79* | 3.[89]*], critic_missing="$critic_missing make")
+ [3.79* | 3.[89]* | [4-9].* | [1-9][0-9]*], critic_missing="$critic_missing make")
AC_CHECK_PROG_VER(MSGFMT, gnumsgfmt gmsgfmt msgfmt, --version,
[GNU gettext.* \([0-9]*\.[0-9.]*\)],
@@ -1010,22 +1011,26 @@ AC_CHECK_PROG_VER(AWK, gawk, --version,
AC_CHECK_TOOL(NM, nm, false)
-AC_CHECK_PROGS(AUTOCONF, autoconf, no)
-case "x$AUTOCONF" in
-xno|x|x:) AUTOCONF=no ;;
-*)
- AC_CACHE_CHECK(dnl
-whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works, libc_cv_autoconf_works, [dnl
- if (cd $srcdir; $AUTOCONF $ACFLAGS configure.in > /dev/null 2>&1); then
- libc_cv_autoconf_works=yes
- else
- libc_cv_autoconf_works=no
- fi])
- test $libc_cv_autoconf_works = yes || AUTOCONF=no
- ;;
-esac
-if test "x$AUTOCONF" = xno; then
- aux_missing="$aux_missing autoconf"
+if test "x$maintainer" = "xyes"; then
+ AC_CHECK_PROGS(AUTOCONF, autoconf, no)
+ case "x$AUTOCONF" in
+ xno|x|x:) AUTOCONF=no ;;
+ *)
+ AC_CACHE_CHECK(dnl
+ whether $AUTOCONF${ACFLAGS:+ }$ACFLAGS works, libc_cv_autoconf_works, [dnl
+ if (cd $srcdir; $AUTOCONF $ACFLAGS configure.ac > /dev/null 2>&1); then
+ libc_cv_autoconf_works=yes
+ else
+ libc_cv_autoconf_works=no
+ fi])
+ test $libc_cv_autoconf_works = yes || AUTOCONF=no
+ ;;
+ esac
+ if test "x$AUTOCONF" = xno; then
+ aux_missing="$aux_missing autoconf"
+ fi
+else
+ AUTOCONF=no
fi
test -n "$critic_missing" && AC_MSG_ERROR([
@@ -1205,70 +1210,6 @@ if test $libc_cv_asm_unique_object = yes; then
AC_DEFINE(HAVE_ASM_UNIQUE_OBJECT)
fi
-AC_CACHE_CHECK(for .symver assembler directive, libc_cv_asm_symver_directive,
-[cat > conftest.s <<EOF
-${libc_cv_dot_text}
-_sym:
-.symver _sym,sym@VERS
-EOF
-if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
- libc_cv_asm_symver_directive=yes
-else
- libc_cv_asm_symver_directive=no
-fi
-rm -f conftest*])
-AC_CACHE_CHECK(for ld --version-script, libc_cv_ld_version_script_option, [dnl
-if test $libc_cv_asm_symver_directive = yes; then
- cat > conftest.s <<EOF
-${libc_cv_dot_text}
-_sym:
-.symver _sym,sym@VERS
-EOF
- cat > conftest.map <<EOF
-VERS_1 {
- global: sym;
-};
-
-VERS_2 {
- global: sym;
-} VERS_1;
-EOF
- if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
- if AC_TRY_COMMAND([${CC-cc} $CFLAGS $LDFLAGS -shared
- -o conftest.so conftest.o
- -nostartfiles -nostdlib
- -Wl,--version-script,conftest.map
- 1>&AS_MESSAGE_LOG_FD]);
- then
- libc_cv_ld_version_script_option=yes
- else
- libc_cv_ld_version_script_option=no
- fi
- else
- libc_cv_ld_version_script_option=no
- fi
-else
- libc_cv_ld_version_script_option=no
-fi
-rm -f conftest*])
-if test $shared != no &&
- test $libc_cv_asm_symver_directive = yes &&
- test $libc_cv_ld_version_script_option = yes &&
- test $enable_versioning = yes; then
- VERSIONING=yes
- AC_DEFINE(DO_VERSIONING)
-else
- VERSIONING=no
-fi
-AC_SUBST(VERSIONING)
-
-if test $shared != no && test $VERSIONING = no; then
- echo "\
-*** WARNING: You should not compile GNU libc without versioning. Not using
-*** versioning will introduce incompatibilities so that old binaries
-*** will not run anymore.
-*** For versioning you need recent binutils (binutils-2.8.1.0.23 or newer)."
-fi
AC_CACHE_CHECK(for .previous assembler directive,
libc_cv_asm_previous_directive, [dnl
cat > conftest.s <<EOF
@@ -2225,7 +2166,7 @@ AC_SUBST(static_nss)
AC_SUBST(DEFINES)
-dnl See sysdeps/mach/configure.in for this variable.
+dnl See sysdeps/mach/configure.ac for this variable.
AC_SUBST(mach_interface_list)
VERSION=`sed -n -e 's/^#define VERSION "\([^"]*\)"/\1/p' < $srcdir/version.h`
diff --git a/conform/conformtest.pl b/conform/conformtest.pl
index ec2e9c308b..8b97d0dfc7 100644
--- a/conform/conformtest.pl
+++ b/conform/conformtest.pl
@@ -236,6 +236,8 @@ sub newtoken {
for ($idx = 0; $idx <= $#allow; ++$idx) {
return if (poorfnmatch ($allow[$idx], $token));
}
+
+ $errors{$token} = 1;
}
@@ -786,7 +788,7 @@ while ($#headers >= 0) {
if (/^element *({([^}]*)}|([^ ]*)) *({([^}]*)}|([^ ]*)) *([A-Za-z0-9_]*) *(.*)/) {
push @allow, $7;
} elsif (/^(macro|constant|macro-constant|macro-int-constant) +([a-zA-Z0-9_]*) *(?:{([^}]*)} *)?(?:([>=<!]+) ([A-Za-z0-9_-]*))?/) {
- push @allow, $1;
+ push @allow, $2;
} elsif (/^(type|tag) *({([^}]*)|([a-zA-Z0-9_]*))/) {
my($type) = "$3$4";
diff --git a/conform/data/pthread.h-data b/conform/data/pthread.h-data
index 292b12520b..c1e32c8d01 100644
--- a/conform/data/pthread.h-data
+++ b/conform/data/pthread.h-data
@@ -17,11 +17,11 @@ constant PTHREAD_PROCESS_SHARED
constant PTHREAD_PROCESS_PRIVATE
constant PTHREAD_SCOPE_PROCESS
constant PTHREAD_SCOPE_SYSTEM
+macro PTHREAD_MUTEX_INITIALIZER
# ifndef POSIX
constant PTHREAD_MUTEX_DEFAULT
constant PTHREAD_MUTEX_ERRORCHECK
constant PTHREAD_MUTEX_NORMAL
-macro PTHREAD_MUTEX_INITIALIZER
constant PTHREAD_MUTEX_RECURSIVE
macro PTHREAD_RWLOCK_INITIALIZER
# endif
@@ -30,26 +30,27 @@ constant PTHREAD_MUTEX_ROBUST
constant PTHREAD_MUTEX_STALLED
# endif
+# ifndef POSIX
type pthread_attr_t
-# if !defined POSIX && !defined UNIX98
+# ifndef UNIX98
type pthread_barrier_t
type pthread_barrierattr_t
-# endif
+# endif
type pthread_cond_t
type pthread_condattr_t
type pthread_key_t
type pthread_mutex_t
type pthread_mutexattr_t
type pthread_once_t
-# if !defined POSIX
type pthread_rwlock_t
type pthread_rwlockattr_t
-# endif
-# if !defined POSIX && !defined UNIX98
+# ifndef UNIX98
type pthread_spinlock_t
-# endif
+# endif
type pthread_t
+# endif
+function int pthread_atfork (void (*) (void), void (*) (void), void (*) (void))
function int pthread_attr_destroy (pthread_attr_t*)
function int pthread_attr_getdetachstate (const pthread_attr_t*, int*)
# ifndef POSIX
diff --git a/conform/data/sched.h-data b/conform/data/sched.h-data
index 78eb2e4d78..610406d96b 100644
--- a/conform/data/sched.h-data
+++ b/conform/data/sched.h-data
@@ -1,10 +1,18 @@
-#if !defined ISO && !defined ISO99 && !defined ISO11
+#if !defined ISO && !defined ISO99 && !defined ISO11 && !defined XPG3 && !defined XPG4
+# if defined POSIX || defined UNIX98
+# include "time.h-data"
+# else
+allow-header time.h
+# endif
+
type {struct sched_param}
element {struct sched_param} int sched_priority
+# if !defined POSIX && !defined UNIX98
optional-element {struct sched_param} int sched_ss_low_priority
optional-element {struct sched_param} {struct timespec} sched_ss_repl_period
optional-element {struct sched_param} {struct timespec} sched_ss_init_budget
optional-element {struct sched_param} int sched_ss_max_repl
+# endif
# if defined XOPEN2K8 || defined POSIX2008
type pid_t
@@ -14,7 +22,9 @@ type {struct timespec}
constant SCHED_FIFO
constant SCHED_RR
+# if !defined POSIX && !defined UNIX98
optional-constant SCHED_SPORADIC
+# endif
constant SCHED_OTHER
function int sched_get_priority_max (int)
@@ -26,8 +36,6 @@ function int sched_setparam (pid_t, const struct sched_param*)
function int sched_setscheduler (pid_t, int, const struct sched_param*)
function int sched_yield (void)
-allow-header time.h
-
allow sched_*
allow SCHED_*
allow *_t
diff --git a/crypt/crypt.h b/crypt/crypt.h
index 985720bfd1..e0d37b5959 100644
--- a/crypt/crypt.h
+++ b/crypt/crypt.h
@@ -37,7 +37,8 @@ extern void setkey (const char *__key) __THROW __nonnull ((1));
/* Encrypt data in BLOCK in place if EDFLAG is zero; otherwise decrypt
block in place. */
-extern void encrypt (char *__block, int __edflag) __THROW __nonnull ((1));
+extern void encrypt (char *__glibc_block, int __edflag)
+ __THROW __nonnull ((1));
#ifdef __USE_GNU
/* Reentrant versions of the functions above. The additional argument
@@ -64,7 +65,7 @@ extern void setkey_r (const char *__key,
struct crypt_data * __restrict __data)
__THROW __nonnull ((1, 2));
-extern void encrypt_r (char *__block, int __edflag,
+extern void encrypt_r (char *__glibc_block, int __edflag,
struct crypt_data * __restrict __data)
__THROW __nonnull ((1, 3));
#endif
diff --git a/csu/init-first.c b/csu/init-first.c
index f0ebc94b8d..b4d22ce6aa 100644
--- a/csu/init-first.c
+++ b/csu/init-first.c
@@ -61,11 +61,8 @@ _init (int argc, char **argv, char **envp)
if (!__libc_multiple_libcs)
{
/* Set the FPU control word to the proper default value if the
- kernel would use a different value. (In a static program we
- don't have this information.) */
-#ifdef SHARED
+ kernel would use a different value. */
if (__fpu_control != GLRO(dl_fpu_control))
-#endif
__setfpucw (__fpu_control);
}
diff --git a/csu/libc-start.c b/csu/libc-start.c
index 04b013b770..46e56126bb 100644
--- a/csu/libc-start.c
+++ b/csu/libc-start.c
@@ -37,6 +37,12 @@ extern void __pthread_initialize_minimal (void);
in thread local area. */
uintptr_t __stack_chk_guard attribute_relro;
# endif
+# ifndef THREAD_SET_POINTER_GUARD
+/* Only exported for architectures that don't store the pointer guard
+ value in thread local area. */
+uintptr_t __pointer_chk_guard_local
+ attribute_relro attribute_hidden __attribute__ ((nocommon));
+# endif
#endif
#ifdef HAVE_PTR_NTHREADS
@@ -197,6 +203,16 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL),
# else
__stack_chk_guard = stack_chk_guard;
# endif
+
+ /* Set up the pointer guard value. */
+ uintptr_t pointer_chk_guard = _dl_setup_pointer_guard (_dl_random,
+ stack_chk_guard);
+# ifdef THREAD_SET_POINTER_GUARD
+ THREAD_SET_POINTER_GUARD (pointer_chk_guard);
+# else
+ __pointer_chk_guard_local = pointer_chk_guard;
+# endif
+
#endif
/* Register the destructor of the dynamic linker if there is any. */
diff --git a/debug/memcpy_chk.c b/debug/memcpy_chk.c
index a53dd7642b..5bbc44f57a 100644
--- a/debug/memcpy_chk.c
+++ b/debug/memcpy_chk.c
@@ -32,34 +32,5 @@ __memcpy_chk (dstpp, srcpp, len, dstlen)
if (__builtin_expect (dstlen < len, 0))
__chk_fail ();
- unsigned long int dstp = (long int) dstpp;
- unsigned long int srcp = (long int) srcpp;
-
- /* Copy from the beginning to the end. */
-
- /* If there not too few bytes to copy, use word copy. */
- if (len >= OP_T_THRES)
- {
- /* Copy just a few bytes to make DSTP aligned. */
- len -= (-dstp) % OPSIZ;
- BYTE_COPY_FWD (dstp, srcp, (-dstp) % OPSIZ);
-
- /* Copy whole pages from SRCP to DSTP by virtual address manipulation,
- as much as possible. */
-
- PAGE_COPY_FWD_MAYBE (dstp, srcp, len, len);
-
- /* Copy from SRCP to DSTP taking advantage of the known alignment of
- DSTP. Number of bytes remaining is put in the third argument,
- i.e. in LEN. This number may vary from machine to machine. */
-
- WORD_COPY_FWD (dstp, srcp, len, len);
-
- /* Fall out and copy the tail. */
- }
-
- /* There are just a few bytes to copy. Use byte memory operations. */
- BYTE_COPY_FWD (dstp, srcp, len);
-
- return dstpp;
+ return memcpy (dstpp, srcpp, len);
}
diff --git a/debug/memmove_chk.c b/debug/memmove_chk.c
index 3ea34c6d04..6337e76ec2 100644
--- a/debug/memmove_chk.c
+++ b/debug/memmove_chk.c
@@ -36,66 +36,5 @@ MEMMOVE_CHK (dest, src, len, destlen)
if (__builtin_expect (destlen < len, 0))
__chk_fail ();
- unsigned long int dstp = (long int) dest;
- unsigned long int srcp = (long int) src;
-
- /* This test makes the forward copying code be used whenever possible.
- Reduces the working set. */
- if (dstp - srcp >= len) /* *Unsigned* compare! */
- {
- /* Copy from the beginning to the end. */
-
- /* If there not too few bytes to copy, use word copy. */
- if (len >= OP_T_THRES)
- {
- /* Copy just a few bytes to make DSTP aligned. */
- len -= (-dstp) % OPSIZ;
- BYTE_COPY_FWD (dstp, srcp, (-dstp) % OPSIZ);
-
- /* Copy whole pages from SRCP to DSTP by virtual address
- manipulation, as much as possible. */
-
- PAGE_COPY_FWD_MAYBE (dstp, srcp, len, len);
-
- /* Copy from SRCP to DSTP taking advantage of the known
- alignment of DSTP. Number of bytes remaining is put
- in the third argument, i.e. in LEN. This number may
- vary from machine to machine. */
-
- WORD_COPY_FWD (dstp, srcp, len, len);
-
- /* Fall out and copy the tail. */
- }
-
- /* There are just a few bytes to copy. Use byte memory operations. */
- BYTE_COPY_FWD (dstp, srcp, len);
- }
- else
- {
- /* Copy from the end to the beginning. */
- srcp += len;
- dstp += len;
-
- /* If there not too few bytes to copy, use word copy. */
- if (len >= OP_T_THRES)
- {
- /* Copy just a few bytes to make DSTP aligned. */
- len -= dstp % OPSIZ;
- BYTE_COPY_BWD (dstp, srcp, dstp % OPSIZ);
-
- /* Copy from SRCP to DSTP taking advantage of the known
- alignment of DSTP. Number of bytes remaining is put
- in the third argument, i.e. in LEN. This number may
- vary from machine to machine. */
-
- WORD_COPY_BWD (dstp, srcp, len, len);
-
- /* Fall out and copy the tail. */
- }
-
- /* There are just a few bytes to copy. Use byte memory operations. */
- BYTE_COPY_BWD (dstp, srcp, len);
- }
-
- return dest;
+ return memmove (dest, src, len);
}
diff --git a/debug/mempcpy_chk.c b/debug/mempcpy_chk.c
index 6895883841..1573a29d02 100644
--- a/debug/mempcpy_chk.c
+++ b/debug/mempcpy_chk.c
@@ -33,34 +33,5 @@ __mempcpy_chk (dstpp, srcpp, len, dstlen)
if (__builtin_expect (dstlen < len, 0))
__chk_fail ();
- unsigned long int dstp = (long int) dstpp;
- unsigned long int srcp = (long int) srcpp;
-
- /* Copy from the beginning to the end. */
-
- /* If there not too few bytes to copy, use word copy. */
- if (len >= OP_T_THRES)
- {
- /* Copy just a few bytes to make DSTP aligned. */
- len -= (-dstp) % OPSIZ;
- BYTE_COPY_FWD (dstp, srcp, (-dstp) % OPSIZ);
-
- /* Copy whole pages from SRCP to DSTP by virtual address manipulation,
- as much as possible. */
-
- PAGE_COPY_FWD_MAYBE (dstp, srcp, len, len);
-
- /* Copy from SRCP to DSTP taking advantage of the known alignment of
- DSTP. Number of bytes remaining is put in the third argument,
- i.e. in LEN. This number may vary from machine to machine. */
-
- WORD_COPY_FWD (dstp, srcp, len, len);
-
- /* Fall out and copy the tail. */
- }
-
- /* There are just a few bytes to copy. Use byte memory operations. */
- BYTE_COPY_FWD (dstp, srcp, len);
-
- return (void *) dstp;
+ return __mempcpy (dstpp, srcpp, len);
}
diff --git a/debug/memset_chk.c b/debug/memset_chk.c
index bfbc29d294..ef1cadb60f 100644
--- a/debug/memset_chk.c
+++ b/debug/memset_chk.c
@@ -28,64 +28,5 @@ __memset_chk (dstpp, c, len, dstlen)
if (__builtin_expect (dstlen < len, 0))
__chk_fail ();
- long int dstp = (long int) dstpp;
-
- if (len >= 8)
- {
- size_t xlen;
- op_t cccc;
-
- cccc = (unsigned char) c;
- cccc |= cccc << 8;
- cccc |= cccc << 16;
- if (OPSIZ > 4)
- /* Do the shift in two steps to avoid warning if long has 32 bits. */
- cccc |= (cccc << 16) << 16;
-
- /* There are at least some bytes to set.
- No need to test for LEN == 0 in this alignment loop. */
- while (dstp % OPSIZ != 0)
- {
- ((byte *) dstp)[0] = c;
- dstp += 1;
- len -= 1;
- }
-
- /* Write 8 `op_t' per iteration until less than 8 `op_t' remain. */
- xlen = len / (OPSIZ * 8);
- while (xlen > 0)
- {
- ((op_t *) dstp)[0] = cccc;
- ((op_t *) dstp)[1] = cccc;
- ((op_t *) dstp)[2] = cccc;
- ((op_t *) dstp)[3] = cccc;
- ((op_t *) dstp)[4] = cccc;
- ((op_t *) dstp)[5] = cccc;
- ((op_t *) dstp)[6] = cccc;
- ((op_t *) dstp)[7] = cccc;
- dstp += 8 * OPSIZ;
- xlen -= 1;
- }
- len %= OPSIZ * 8;
-
- /* Write 1 `op_t' per iteration until less than OPSIZ bytes remain. */
- xlen = len / OPSIZ;
- while (xlen > 0)
- {
- ((op_t *) dstp)[0] = cccc;
- dstp += OPSIZ;
- xlen -= 1;
- }
- len %= OPSIZ;
- }
-
- /* Write the last few bytes. */
- while (len > 0)
- {
- ((byte *) dstp)[0] = c;
- dstp += 1;
- len -= 1;
- }
-
- return dstpp;
+ return memset (dstpp, c, len);
}
diff --git a/debug/stpncpy_chk.c b/debug/stpncpy_chk.c
index 35a2c23508..0bc6ae2b11 100644
--- a/debug/stpncpy_chk.c
+++ b/debug/stpncpy_chk.c
@@ -25,60 +25,8 @@
char *
__stpncpy_chk (char *dest, const char *src, size_t n, size_t destlen)
{
- char c;
- char *s = dest;
-
if (__builtin_expect (destlen < n, 0))
__chk_fail ();
- if (n >= 4)
- {
- size_t n4 = n >> 2;
-
- for (;;)
- {
- c = *src++;
- *dest++ = c;
- if (c == '\0')
- break;
- c = *src++;
- *dest++ = c;
- if (c == '\0')
- break;
- c = *src++;
- *dest++ = c;
- if (c == '\0')
- break;
- c = *src++;
- *dest++ = c;
- if (c == '\0')
- break;
- if (--n4 == 0)
- goto last_chars;
- }
- n -= dest - s;
- goto zero_fill;
- }
-
- last_chars:
- n &= 3;
- if (n == 0)
- return dest;
-
- for (;;)
- {
- c = *src++;
- --n;
- *dest++ = c;
- if (c == '\0')
- break;
- if (n == 0)
- return dest;
- }
-
- zero_fill:
- while (n-- > 0)
- dest[n] = '\0';
-
- return dest - 1;
+ return __stpncpy (dest, src, n);
}
diff --git a/debug/strncpy_chk.c b/debug/strncpy_chk.c
index d067bd9ac3..2e078b1e4f 100644
--- a/debug/strncpy_chk.c
+++ b/debug/strncpy_chk.c
@@ -26,63 +26,8 @@ __strncpy_chk (s1, s2, n, s1len)
size_t n;
size_t s1len;
{
- char c;
- char *s = s1;
-
if (__builtin_expect (s1len < n, 0))
__chk_fail ();
- --s1;
-
- if (n >= 4)
- {
- size_t n4 = n >> 2;
-
- for (;;)
- {
- c = *s2++;
- *++s1 = c;
- if (c == '\0')
- break;
- c = *s2++;
- *++s1 = c;
- if (c == '\0')
- break;
- c = *s2++;
- *++s1 = c;
- if (c == '\0')
- break;
- c = *s2++;
- *++s1 = c;
- if (c == '\0')
- break;
- if (--n4 == 0)
- goto last_chars;
- }
- n = n - (s1 - s) - 1;
- if (n == 0)
- return s;
- goto zero_fill;
- }
-
- last_chars:
- n &= 3;
- if (n == 0)
- return s;
-
- do
- {
- c = *s2++;
- *++s1 = c;
- if (--n == 0)
- return s;
- }
- while (c != '\0');
-
- zero_fill:
- do
- *++s1 = '\0';
- while (--n > 0);
-
- return s;
+ return strncpy (s1, s2, n);
}
diff --git a/dlfcn/Makefile b/dlfcn/Makefile
index f3c6df9c1b..1eedc3fc5b 100644
--- a/dlfcn/Makefile
+++ b/dlfcn/Makefile
@@ -27,7 +27,7 @@ extra-libs-others := libdl
include ../Makeconfig
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
libdl-routines += dlopenold
libdl-shared-only-routines := dlopenold dlfcn
endif
diff --git a/dlfcn/modstatic2.c b/dlfcn/modstatic2.c
index 0703de851c..9b5aae8b9f 100644
--- a/dlfcn/modstatic2.c
+++ b/dlfcn/modstatic2.c
@@ -117,13 +117,11 @@ test (FILE *out, int a)
exit (1);
}
-#ifdef DO_VERSIONING
if (dlvsym (handle2, "_dlfcn_hook", "GLIBC_PRIVATE") == NULL)
{
fprintf (out, "dlvsym: %s\n", dlerror ());
exit (1);
}
-#endif
void *(*dlsymfn) (void *, const char *);
dlsymfn = dlsym (handle2, "dlsym");
diff --git a/dlfcn/tststatic2.c b/dlfcn/tststatic2.c
index 85c0fb2ff9..5d273a69bf 100644
--- a/dlfcn/tststatic2.c
+++ b/dlfcn/tststatic2.c
@@ -115,13 +115,11 @@ main (void)
exit (1);
}
-#ifdef DO_VERSIONING
if (dlvsym (handle2, "_dlfcn_hook", "GLIBC_PRIVATE") == NULL)
{
printf ("dlvsym: %s\n", dlerror ());
exit (1);
}
-#endif
void *(*dlsymfn) (void *, const char *);
dlsymfn = dlsym (handle2, "dlsym");
diff --git a/elf/Makefile b/elf/Makefile
index 3b58649de5..c6626e14bf 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -59,7 +59,7 @@ before-compile = $(objpfx)trusted-dirs.h
generated := trusted-dirs.h trusted-dirs.st for-renamed/renamed.so
generated-dirs := for-renamed
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
ld-map = $(common-objpfx)ld.map
endif
@@ -119,9 +119,11 @@ $(inst_auditdir)/sotruss-lib.so: $(objpfx)sotruss-lib.so $(+force)
endif
tests = tst-tls1 tst-tls2 tst-tls9 tst-leaks1 \
- tst-array1 tst-array2 tst-array3 tst-array4 tst-array5
+ tst-array1 tst-array2 tst-array3 tst-array4 tst-array5 \
+ tst-auxv
tests-static = tst-tls1-static tst-tls2-static tst-stackguard1-static \
- tst-leaks1-static tst-array1-static tst-array5-static
+ tst-leaks1-static tst-array1-static tst-array5-static \
+ tst-ptrguard1-static
ifeq (yes,$(build-shared))
tests-static += tst-tls9-static
tst-tls9-static-ENV = \
@@ -145,7 +147,8 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \
tst-audit1 tst-audit2 tst-audit8 \
tst-stackguard1 tst-addr1 tst-thrlock \
tst-unique1 tst-unique2 tst-unique3 tst-unique4 \
- tst-initorder tst-initorder2 tst-relsort1 tst-null-argv
+ tst-initorder tst-initorder2 tst-relsort1 tst-null-argv \
+ tst-ptrguard1
# reldep9
test-srcs = tst-pathopt
selinux-enabled := $(shell cat /selinux/enforce 2> /dev/null)
@@ -1016,6 +1019,12 @@ LDFLAGS-order2mod2.so = $(no-as-needed)
tst-stackguard1-ARGS = --command "$(host-test-program-cmd) --child"
tst-stackguard1-static-ARGS = --command "$(objpfx)tst-stackguard1-static --child"
+tst-ptrguard1-ARGS = --command "$(host-test-program-cmd) --child"
+# When built statically, the pointer guard interface uses
+# __pointer_chk_guard_local.
+CFLAGS-tst-ptrguard1-static.c = -DPTRGUARD_LOCAL
+tst-ptrguard1-static-ARGS = --command "$(objpfx)tst-ptrguard1-static --child"
+
$(objpfx)tst-leaks1: $(libdl)
$(objpfx)tst-leaks1-mem: $(objpfx)tst-leaks1.out
$(common-objpfx)malloc/mtrace $(objpfx)tst-leaks1.mtrace > $@
diff --git a/elf/Versions b/elf/Versions
index 238399232d..01b7a59d5e 100644
--- a/elf/Versions
+++ b/elf/Versions
@@ -53,6 +53,7 @@ ld {
_dl_allocate_tls; _dl_allocate_tls_init;
_dl_argv; _dl_find_dso_for_object; _dl_get_tls_static_info;
_dl_deallocate_tls; _dl_make_stack_executable; _dl_out_of_memory;
+ _dl_clear_dtv;
_dl_rtld_di_serinfo; _dl_starting_up; _dl_tls_setup;
_rtld_global; _rtld_global_ro;
diff --git a/elf/cache.c b/elf/cache.c
index 9bf261cd29..1a43dd7765 100644
--- a/elf/cache.c
+++ b/elf/cache.c
@@ -105,6 +105,15 @@ print_entry (const char *lib, int flag, unsigned int osversion,
case FLAG_ARM_LIBSF:
fputs (",soft-float", stdout);
break;
+ case FLAG_MIPS_LIB32_NAN2008:
+ fputs (",nan2008", stdout);
+ break;
+ case FLAG_MIPS64_LIBN32_NAN2008:
+ fputs (",N32,nan2008", stdout);
+ break;
+ case FLAG_MIPS64_LIBN64_NAN2008:
+ fputs (",64bit,nan2008", stdout);
+ break;
case 0:
break;
default:
diff --git a/elf/dl-close.c b/elf/dl-close.c
index fe3014cca3..407926bade 100644
--- a/elf/dl-close.c
+++ b/elf/dl-close.c
@@ -274,9 +274,8 @@ _dl_close_worker (struct link_map *map)
/* Next try the old-style destructor. */
if (imap->l_info[DT_FINI] != NULL)
- (*(void (*) (void)) DL_DT_FINI_ADDRESS
- (imap, ((void *) imap->l_addr
- + imap->l_info[DT_FINI]->d_un.d_ptr))) ();
+ DL_CALL_DT_FINI (imap, ((void *) imap->l_addr
+ + imap->l_info[DT_FINI]->d_un.d_ptr));
}
#ifdef SHARED
diff --git a/elf/dl-deps.c b/elf/dl-deps.c
index 1c36f501bc..6652f6d0cd 100644
--- a/elf/dl-deps.c
+++ b/elf/dl-deps.c
@@ -595,7 +595,6 @@ Filters not supported with LD_TRACE_PRELINKING"));
if (list[i]->l_reserved)
{
/* Need to allocate new array of relocation dependencies. */
- struct link_map_reldeps *l_reldeps;
l_reldeps = malloc (sizeof (*l_reldeps)
+ map->l_reldepsmax
* sizeof (struct link_map *));
diff --git a/elf/dl-error.c b/elf/dl-error.c
index 8257c17030..79e3fa38f2 100644
--- a/elf/dl-error.c
+++ b/elf/dl-error.c
@@ -28,10 +28,11 @@
_dl_signal_error. */
struct catch
{
- const char *objname; /* Object/File name. */
- const char *errstring; /* Error detail filled in here. */
- bool malloced; /* Nonzero if the string is malloced
+ const char **objname; /* Object/File name. */
+ const char **errstring; /* Error detail filled in here. */
+ bool *malloced; /* Nonzero if the string is malloced
by the libc malloc. */
+ volatile int *errcode; /* Return value of _dl_signal_error. */
jmp_buf env; /* longjmp here on error. */
};
@@ -86,33 +87,36 @@ _dl_signal_error (int errcode, const char *objname, const char *occation,
size_t len_objname = strlen (objname) + 1;
size_t len_errstring = strlen (errstring) + 1;
- lcatch->errstring = (char *) malloc (len_objname + len_errstring);
- if (lcatch->errstring != NULL)
+ char *errstring_copy = malloc (len_objname + len_errstring);
+ if (errstring_copy != NULL)
{
/* Make a copy of the object file name and the error string. */
- lcatch->objname = memcpy (__mempcpy ((char *) lcatch->errstring,
- errstring, len_errstring),
- objname, len_objname);
+ *lcatch->objname = memcpy (__mempcpy (errstring_copy,
+ errstring, len_errstring),
+ objname, len_objname);
+ *lcatch->errstring = errstring_copy;
/* If the main executable is relocated it means the libc's malloc
is used. */
+ bool malloced = true;
#ifdef SHARED
- lcatch->malloced = (GL(dl_ns)[LM_ID_BASE]._ns_loaded != NULL
- && (GL(dl_ns)[LM_ID_BASE]._ns_loaded->l_relocated
- != 0));
-#else
- lcatch->malloced = true;
+ malloced = (GL(dl_ns)[LM_ID_BASE]._ns_loaded != NULL
+ && (GL(dl_ns)[LM_ID_BASE]._ns_loaded->l_relocated != 0));
#endif
+ *lcatch->malloced = malloced;
}
else
{
/* This is better than nothing. */
- lcatch->objname = "";
- lcatch->errstring = _dl_out_of_memory;
- lcatch->malloced = false;
+ *lcatch->objname = "";
+ *lcatch->errstring = _dl_out_of_memory;
+ *lcatch->malloced = false;
}
+
+ *lcatch->errcode = errcode;
+
/* We do not restore the signal mask because none was saved. */
- __longjmp (lcatch->env[0].__jmpbuf, errcode ?: -1);
+ __longjmp (lcatch->env[0].__jmpbuf, 1);
}
else
{
@@ -157,23 +161,29 @@ internal_function
_dl_catch_error (const char **objname, const char **errstring,
bool *mallocedp, void (*operate) (void *), void *args)
{
- int errcode;
- struct catch *volatile old;
- struct catch c;
/* We need not handle `receiver' since setting a `catch' is handled
before it. */
- /* Some systems (e.g., SPARC) handle constructors to local variables
- inefficient. So we initialize `c' by hand. */
- c.errstring = NULL;
+ /* Only this needs to be marked volatile, because it is the only local
+ variable that gets changed between the setjmp invocation and the
+ longjmp call. All others are just set here (before setjmp) and read
+ in _dl_signal_error (before longjmp). */
+ volatile int errcode;
+
+ struct catch c;
+ /* Don't use an initializer since we don't need to clear C.env. */
+ c.objname = objname;
+ c.errstring = errstring;
+ c.malloced = mallocedp;
+ c.errcode = &errcode;
struct catch **const catchp = &CATCH_HOOK;
- old = *catchp;
+ struct catch *const old = *catchp;
+ *catchp = &c;
+
/* Do not save the signal mask. */
- errcode = __sigsetjmp (c.env, 0);
- if (__builtin_expect (errcode, 0) == 0)
+ if (__builtin_expect (__sigsetjmp (c.env, 0), 0) == 0)
{
- *catchp = &c;
(*operate) (args);
*catchp = old;
*objname = NULL;
@@ -182,12 +192,10 @@ _dl_catch_error (const char **objname, const char **errstring,
return 0;
}
- /* We get here only if we longjmp'd out of OPERATE. */
+ /* We get here only if we longjmp'd out of OPERATE. _dl_signal_error has
+ already stored values into *OBJNAME, *ERRSTRING, and *MALLOCEDP. */
*catchp = old;
- *objname = c.objname;
- *errstring = c.errstring;
- *mallocedp = c.malloced;
- return errcode == -1 ? 0 : errcode;
+ return errcode;
}
diff --git a/elf/dl-fini.c b/elf/dl-fini.c
index 6b245f0022..db5269c82f 100644
--- a/elf/dl-fini.c
+++ b/elf/dl-fini.c
@@ -254,7 +254,7 @@ _dl_fini (void)
/* Next try the old-style destructor. */
if (l->l_info[DT_FINI] != NULL)
- ((fini_t) DL_DT_FINI_ADDRESS (l, l->l_addr + l->l_info[DT_FINI]->d_un.d_ptr)) ();
+ DL_CALL_DT_FINI(l, l->l_addr + l->l_info[DT_FINI]->d_un.d_ptr);
}
#ifdef SHARED
diff --git a/elf/dl-init.c b/elf/dl-init.c
index a657eb6c40..40783684f2 100644
--- a/elf/dl-init.c
+++ b/elf/dl-init.c
@@ -61,13 +61,7 @@ call_init (struct link_map *l, int argc, char **argv, char **env)
- the others in the DT_INIT_ARRAY.
*/
if (l->l_info[DT_INIT] != NULL)
- {
- init_t init = (init_t) DL_DT_INIT_ADDRESS
- (l, l->l_addr + l->l_info[DT_INIT]->d_un.d_ptr);
-
- /* Call the function. */
- init (argc, argv, env);
- }
+ DL_CALL_DT_INIT(l, l->l_addr + l->l_info[DT_INIT]->d_un.d_ptr, argc, argv, env);
/* Next see whether there is an array with initialization functions. */
ElfW(Dyn) *init_array = l->l_info[DT_INIT_ARRAY];
diff --git a/elf/dl-libc.c b/elf/dl-libc.c
index aba0d1af19..397d898993 100644
--- a/elf/dl-libc.c
+++ b/elf/dl-libc.c
@@ -286,6 +286,7 @@ libc_freeres_fn (free_mem)
/* Free the initfini dependency list. */
if (l->l_free_initfini)
free (l->l_initfini);
+ l->l_initfini = NULL;
}
if (__builtin_expect (GL(dl_ns)[ns]._ns_global_scope_alloc, 0) != 0
diff --git a/elf/dl-load.c b/elf/dl-load.c
index 6a73f27345..d3e1cf8f9c 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -481,14 +481,19 @@ static size_t max_dirnamelen;
static struct r_search_path_elem **
fillin_rpath (char *rpath, struct r_search_path_elem **result, const char *sep,
- int check_trusted, const char *what, const char *where)
+ int check_trusted, const char *what, const char *where,
+ struct link_map *l)
{
char *cp;
size_t nelems = 0;
+ char *to_free;
while ((cp = __strsep (&rpath, sep)) != NULL)
{
struct r_search_path_elem *dirp;
+
+ to_free = cp = expand_dynamic_string_token (l, cp, 1);
+
size_t len = strlen (cp);
/* `strsep' can pass an empty string. This has to be
@@ -509,7 +514,10 @@ fillin_rpath (char *rpath, struct r_search_path_elem **result, const char *sep,
/* Make sure we don't use untrusted directories if we run SUID. */
if (__builtin_expect (check_trusted, 0) && !is_trusted_path (cp, len))
- continue;
+ {
+ free (to_free);
+ continue;
+ }
/* See if this directory is already known. */
for (dirp = GL(dl_all_dirs); dirp != NULL; dirp = dirp->next)
@@ -570,6 +578,7 @@ fillin_rpath (char *rpath, struct r_search_path_elem **result, const char *sep,
/* Put it in the result array. */
result[nelems++] = dirp;
}
+ free (to_free);
}
/* Terminate the array. */
@@ -625,9 +634,8 @@ decompose_rpath (struct r_search_path_struct *sps,
while (*inhp != '\0');
}
- /* Make a writable copy. At the same time expand possible dynamic
- string tokens. */
- copy = expand_dynamic_string_token (l, rpath, 1);
+ /* Make a writable copy. */
+ copy = local_strdup (rpath);
if (copy == NULL)
{
errstring = N_("cannot create RUNPATH/RPATH copy");
@@ -660,7 +668,7 @@ decompose_rpath (struct r_search_path_struct *sps,
_dl_signal_error (ENOMEM, NULL, NULL, errstring);
}
- fillin_rpath (copy, result, ":", 0, what, where);
+ fillin_rpath (copy, result, ":", 0, what, where, l);
/* Free the copied RPATH string. `fillin_rpath' make own copies if
necessary. */
@@ -708,9 +716,7 @@ _dl_init_paths (const char *llp)
const char *strp;
struct r_search_path_elem *pelem, **aelem;
size_t round_size;
-#ifdef SHARED
- struct link_map *l;
-#endif
+ struct link_map __attribute__ ((unused)) *l = NULL;
/* Initialize to please the compiler. */
const char *errstring = NULL;
@@ -865,7 +871,7 @@ _dl_init_paths (const char *llp)
(void) fillin_rpath (llp_tmp, env_path_list.dirs, ":;",
INTUSE(__libc_enable_secure), "LD_LIBRARY_PATH",
- NULL);
+ NULL, l);
if (env_path_list.dirs[0] == NULL)
{
diff --git a/elf/dl-lookup.c b/elf/dl-lookup.c
index 39f463eae1..f869dcfa96 100644
--- a/elf/dl-lookup.c
+++ b/elf/dl-lookup.c
@@ -746,7 +746,7 @@ _dl_lookup_symbol_x (const char *undef_name, struct link_map *undef_map,
contain the needed symbol. This code is never reached
for unversioned lookups. */
assert (version != NULL);
- const char *reference_name = undef_map ? undef_map->l_name : NULL;
+ const char *reference_name = undef_map ? undef_map->l_name : "";
/* XXX We cannot translate the message. */
_dl_signal_cerror (0, DSO_FILENAME (reference_name),
diff --git a/elf/dl-misc.c b/elf/dl-misc.c
index 5fc13a44a4..b529af3f4b 100644
--- a/elf/dl-misc.c
+++ b/elf/dl-misc.c
@@ -19,6 +19,7 @@
#include <assert.h>
#include <fcntl.h>
#include <ldsodefs.h>
+#include <libc-symbols.h>
#include <limits.h>
#include <link.h>
#include <stdarg.h>
@@ -364,3 +365,144 @@ _dl_higher_prime_number (unsigned long int n)
return *low;
}
+
+/* To support accessing TLS variables from signal handlers, we need an
+ async signal safe memory allocator. These routines are never
+ themselves invoked reentrantly (all calls to them are surrounded by
+ signal masks) but may be invoked concurrently from many threads.
+ The current implementation is not particularly performant nor space
+ efficient, but it will be used rarely (and only in binaries that use
+ dlopen.) The API matches that of malloc() and friends. */
+
+struct __signal_safe_allocator_header
+{
+ size_t size;
+ void *start;
+};
+
+static inline struct __signal_safe_allocator_header *
+ptr_to_signal_safe_allocator_header (void *ptr)
+{
+ return (struct __signal_safe_allocator_header *)
+ ((char *) (ptr) - sizeof (struct __signal_safe_allocator_header));
+}
+
+void *weak_function
+__signal_safe_memalign (size_t boundary, size_t size)
+{
+ struct __signal_safe_allocator_header *header;
+
+ if (boundary < sizeof (*header))
+ boundary = sizeof (*header);
+
+ /* Boundary must be a power of two. */
+ if (!powerof2 (boundary))
+ return NULL;
+
+ size_t pg = GLRO (dl_pagesize);
+ size_t padded_size;
+ if (boundary <= pg)
+ {
+ /* We'll get a pointer certainly aligned to boundary, so just
+ add one more boundary-sized chunk to hold the header. */
+ padded_size = roundup (size, boundary) + boundary;
+ }
+ else
+ {
+ /* If we want K pages aligned to a J-page boundary, K+J+1 pages
+ contains at least one such region that isn't directly at the start
+ (so we can place the header.) This is wasteful, but you're the one
+ who wanted 64K-aligned TLS. */
+ padded_size = roundup (size, pg) + boundary + pg;
+ }
+
+
+ size_t actual_size = roundup (padded_size, pg);
+ void *actual = mmap (NULL, actual_size, PROT_READ | PROT_WRITE,
+ MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
+ if (actual == MAP_FAILED)
+ return NULL;
+
+ if (boundary <= pg)
+ {
+ header = actual + boundary - sizeof (*header);
+ }
+ else
+ {
+ intptr_t actual_pg = ((intptr_t) actual) / pg;
+ intptr_t boundary_pg = boundary / pg;
+ intptr_t start_pg = actual_pg + boundary_pg;
+ start_pg -= start_pg % boundary_pg;
+ if (start_pg > (actual_pg + 1))
+ {
+ int ret = munmap (actual, (start_pg - actual_pg - 1) * pg);
+ assert (ret == 0);
+ actual = (void *) ((start_pg - 1) * pg);
+ }
+ char *start = (void *) (start_pg * pg);
+ header = ptr_to_signal_safe_allocator_header (start);
+ }
+
+ header->size = actual_size;
+ header->start = actual;
+ void *ptr = header;
+ ptr += sizeof (*header);
+ if (((intptr_t) ptr) % boundary != 0)
+ _dl_fatal_printf ("__signal_safe_memalign produced incorrect alignment\n");
+ return ptr;
+}
+
+void * weak_function
+__signal_safe_malloc (size_t size)
+{
+ return __signal_safe_memalign (1, size);
+}
+
+void weak_function
+__signal_safe_free (void *ptr)
+{
+ if (ptr == NULL)
+ return;
+
+ struct __signal_safe_allocator_header *header
+ = ptr_to_signal_safe_allocator_header (ptr);
+ int ret = munmap (header->start, header->size);
+
+ assert (ret == 0);
+}
+
+void * weak_function
+__signal_safe_realloc (void *ptr, size_t size)
+{
+ if (size == 0)
+ {
+ __signal_safe_free (ptr);
+ return NULL;
+ }
+ if (ptr == NULL)
+ return __signal_safe_malloc (size);
+
+ struct __signal_safe_allocator_header *header
+ = ptr_to_signal_safe_allocator_header (ptr);
+ size_t old_size = header->size;
+ if (old_size - sizeof (*header) >= size)
+ return ptr;
+
+ void *new_ptr = __signal_safe_malloc (size);
+ if (new_ptr == NULL)
+ return NULL;
+
+ memcpy (new_ptr, ptr, old_size);
+ __signal_safe_free (ptr);
+
+ return new_ptr;
+}
+
+void * weak_function
+__signal_safe_calloc (size_t nmemb, size_t size)
+{
+ void *ptr = __signal_safe_malloc (nmemb * size);
+ if (ptr == NULL)
+ return NULL;
+ return memset (ptr, 0, nmemb * size);
+}
diff --git a/elf/dl-object.c b/elf/dl-object.c
index 0f594d25e6..26d4f44375 100644
--- a/elf/dl-object.c
+++ b/elf/dl-object.c
@@ -88,7 +88,13 @@ _dl_new_object (char *realname, const char *libname, int type,
/* newname->next = NULL; We use calloc therefore not necessary. */
newname->dont_free = 1;
- new->l_name = realname;
+ /* When we create the executable link map, or a VDSO link map, we start
+ with "" for the l_name. In these cases "" points to ld.so rodata
+ and won't get dumped during core file generation. Therefore to assist
+ gdb and to create more self-contained core files we adjust l_name to
+ point at the newly allocated copy (which will get dumped) instead of
+ the ld.so rodata copy. */
+ new->l_name = *realname ? realname : (char *) newname->name + libname_len - 1;
new->l_type = type;
/* If we set the bit now since we know it is never used we avoid
dirtying the cache line later. */
diff --git a/elf/dl-support.c b/elf/dl-support.c
index e551078df1..c17fbf9a7b 100644
--- a/elf/dl-support.c
+++ b/elf/dl-support.c
@@ -167,6 +167,9 @@ size_t _dl_phnum;
uint64_t _dl_hwcap __attribute__ ((nocommon));
uint64_t _dl_hwcap2 __attribute__ ((nocommon));
+/* The value of the FPU control word the kernel will preset in hardware. */
+fpu_control_t _dl_fpu_control = _FPU_DEFAULT;
+
/* This is not initialized to HWCAP_IMPORTANT, matching the definition
of _dl_important_hwcaps, below, where no hwcap strings are ever
used. This mask is still used to mediate the lookups in the cache
@@ -254,6 +257,9 @@ _dl_aux_init (ElfW(auxv_t) *av)
case AT_HWCAP2:
GLRO(dl_hwcap2) = (unsigned long int) av->a_un.a_val;
break;
+ case AT_FPUCW:
+ GLRO(dl_fpu_control) = av->a_un.a_val;
+ break;
#ifdef NEED_DL_SYSINFO
case AT_SYSINFO:
GL(dl_sysinfo) = av->a_un.a_val;
diff --git a/elf/dl-tls.c b/elf/dl-tls.c
index 576d9a1465..12e6e8f3e0 100644
--- a/elf/dl-tls.c
+++ b/elf/dl-tls.c
@@ -293,7 +293,7 @@ allocate_dtv (void *result)
initial set of modules. This should avoid in most cases expansions
of the dtv. */
dtv_length = GL(dl_tls_max_dtv_idx) + DTV_SURPLUS;
- dtv = calloc (dtv_length + 2, sizeof (dtv_t));
+ dtv = __signal_safe_calloc (dtv_length + 2, sizeof (dtv_t));
if (dtv != NULL)
{
/* This is the initial length of the dtv. */
@@ -463,6 +463,18 @@ _dl_allocate_tls (void *mem)
}
rtld_hidden_def (_dl_allocate_tls)
+void
+internal_function
+_dl_clear_dtv (dtv_t *dtv)
+{
+ for (size_t cnt = 0; cnt < dtv[-1].counter; ++cnt)
+ if (! dtv[1 + cnt].pointer.is_static
+ && dtv[1 + cnt].pointer.val != TLS_DTV_UNALLOCATED)
+ __signal_safe_free (dtv[1 + cnt].pointer.val);
+ memset (dtv, '\0', (dtv[-1].counter + 1) * sizeof (dtv_t));
+}
+
+rtld_hidden_def (_dl_clear_dtv)
#ifndef SHARED
extern dtv_t _dl_static_dtv[];
@@ -479,11 +491,11 @@ _dl_deallocate_tls (void *tcb, bool dealloc_tcb)
for (size_t cnt = 0; cnt < dtv[-1].counter; ++cnt)
if (! dtv[1 + cnt].pointer.is_static
&& dtv[1 + cnt].pointer.val != TLS_DTV_UNALLOCATED)
- free (dtv[1 + cnt].pointer.val);
+ __signal_safe_free (dtv[1 + cnt].pointer.val);
/* The array starts with dtv[-1]. */
if (dtv != GL(dl_initial_dtv))
- free (dtv - 1);
+ __signal_safe_free (dtv - 1);
if (dealloc_tcb)
{
@@ -525,8 +537,7 @@ static void *
allocate_and_init (struct link_map *map)
{
void *newp;
-
- newp = __libc_memalign (map->l_tls_align, map->l_tls_blocksize);
+ newp = __signal_safe_memalign (map->l_tls_align, map->l_tls_blocksize);
if (newp == NULL)
oom ();
@@ -596,25 +607,27 @@ _dl_update_slotinfo (unsigned long int req_modid)
if (gen <= dtv[0].counter)
continue;
+ size_t modid = total + cnt;
+
/* If there is no map this means the entry is empty. */
struct link_map *map = listp->slotinfo[cnt].map;
if (map == NULL)
{
/* If this modid was used at some point the memory
might still be allocated. */
- if (! dtv[total + cnt].pointer.is_static
- && dtv[total + cnt].pointer.val != TLS_DTV_UNALLOCATED)
+ if (dtv[-1].counter >= modid
+ && !dtv[modid].pointer.is_static
+ && dtv[modid].pointer.val != TLS_DTV_UNALLOCATED)
{
- free (dtv[total + cnt].pointer.val);
- dtv[total + cnt].pointer.val = TLS_DTV_UNALLOCATED;
+ __signal_safe_free (dtv[modid].pointer.val);
+ dtv[modid].pointer.val = TLS_DTV_UNALLOCATED;
}
continue;
}
+ assert (modid == map->l_tls_modid);
/* Check whether the current dtv array is large enough. */
- size_t modid = map->l_tls_modid;
- assert (total + cnt == modid);
if (dtv[-1].counter < modid)
{
/* Reallocate the dtv. */
@@ -628,17 +641,18 @@ _dl_update_slotinfo (unsigned long int req_modid)
{
/* This is the initial dtv that was allocated
during rtld startup using the dl-minimal.c
- malloc instead of the real malloc. We can't
+ malloc instead of the real allocator. We can't
free it, we have to abandon the old storage. */
- newp = malloc ((2 + newsize) * sizeof (dtv_t));
+ newp = __signal_safe_malloc (
+ (2 + newsize) * sizeof (dtv_t));
if (newp == NULL)
oom ();
memcpy (newp, &dtv[-1], (2 + oldsize) * sizeof (dtv_t));
}
else
{
- newp = realloc (&dtv[-1],
+ newp = __signal_safe_realloc (&dtv[-1],
(2 + newsize) * sizeof (dtv_t));
if (newp == NULL)
oom ();
@@ -668,7 +682,7 @@ _dl_update_slotinfo (unsigned long int req_modid)
deallocate even if it is this dtv entry we are
supposed to load. The reason is that we call
memalign and not malloc. */
- free (dtv[modid].pointer.val);
+ __signal_safe_free (dtv[modid].pointer.val);
/* This module is loaded dynamically- We defer memory
allocation. */
diff --git a/elf/elf.h b/elf/elf.h
index fe55c928cd..08b4ed8893 100644
--- a/elf/elf.h
+++ b/elf/elf.h
@@ -1383,6 +1383,7 @@ typedef struct
#define EF_MIPS_64BIT_WHIRL 16
#define EF_MIPS_ABI2 32
#define EF_MIPS_ABI_ON32 64
+#define EF_MIPS_NAN2008 1024 /* Uses IEEE 754-2008 NaN encoding. */
#define EF_MIPS_ARCH 0xf0000000 /* MIPS architecture level. */
/* Legal values for MIPS architecture level. */
@@ -2251,6 +2252,17 @@ typedef Elf32_Addr Elf32_Conflict;
#define R_PPC64_DTPREL16_HIGHERA 104 /* half16 (sym+add)@dtprel@highera */
#define R_PPC64_DTPREL16_HIGHEST 105 /* half16 (sym+add)@dtprel@highest */
#define R_PPC64_DTPREL16_HIGHESTA 106 /* half16 (sym+add)@dtprel@highesta */
+#define R_PPC64_TLSGD 107 /* none (sym+add)@tlsgd */
+#define R_PPC64_TLSLD 108 /* none (sym+add)@tlsld */
+#define R_PPC64_TOCSAVE 109 /* none */
+
+/* Added when HA and HI relocs were changed to report overflows. */
+#define R_PPC64_ADDR16_HIGH 110
+#define R_PPC64_ADDR16_HIGHA 111
+#define R_PPC64_TPREL16_HIGH 112
+#define R_PPC64_TPREL16_HIGHA 113
+#define R_PPC64_DTPREL16_HIGH 114
+#define R_PPC64_DTPREL16_HIGHA 115
/* GNU extension to support local ifunc. */
#define R_PPC64_JMP_IREL 247
@@ -2260,12 +2272,29 @@ typedef Elf32_Addr Elf32_Conflict;
#define R_PPC64_REL16_HI 251 /* half16 (sym+add-.)@h */
#define R_PPC64_REL16_HA 252 /* half16 (sym+add-.)@ha */
+/* e_flags bits specifying ABI.
+ 1 for original function descriptor using ABI,
+ 2 for revised ABI without function descriptors,
+ 0 for unspecified or not using any features affected by the differences. */
+#define EF_PPC64_ABI 3
+
/* PowerPC64 specific values for the Dyn d_tag field. */
#define DT_PPC64_GLINK (DT_LOPROC + 0)
#define DT_PPC64_OPD (DT_LOPROC + 1)
#define DT_PPC64_OPDSZ (DT_LOPROC + 2)
+#define DT_PPC64_OPT (DT_LOPROC + 3)
#define DT_PPC64_NUM 3
+/* PowerPC64 specific values for the DT_PPC64_OPT Dyn entry. */
+#define PPC64_OPT_TLS 1
+#define PPC64_OPT_MULTI_TOC 2
+
+/* PowerPC64 specific values for the Elf64_Sym st_other field. */
+#define STO_PPC64_LOCAL_BIT 5
+#define STO_PPC64_LOCAL_MASK (7 << STO_PPC64_LOCAL_BIT)
+#define PPC64_LOCAL_ENTRY_OFFSET(other) \
+ (((1 << (((other) & STO_PPC64_LOCAL_MASK) >> STO_PPC64_LOCAL_BIT)) >> 2) << 2)
+
/* ARM specific declarations */
@@ -2335,6 +2364,117 @@ typedef Elf32_Addr Elf32_Conflict;
#define R_AARCH64_NONE 0 /* No relocation. */
#define R_AARCH64_ABS64 257 /* Direct 64 bit. */
#define R_AARCH64_ABS32 258 /* Direct 32 bit. */
+#define R_AARCH64_ABS16 259 /* Direct 16-bit. */
+#define R_AARCH64_PREL64 260 /* PC-relative 64-bit. */
+#define R_AARCH64_PREL32 261 /* PC-relative 32-bit. */
+#define R_AARCH64_PREL16 262 /* PC-relative 16-bit. */
+#define R_AARCH64_MOVW_UABS_G0 263 /* Dir. MOVZ imm. from bits 15:0. */
+#define R_AARCH64_MOVW_UABS_G0_NC 264 /* Likewise for MOVK; no check. */
+#define R_AARCH64_MOVW_UABS_G1 265 /* Dir. MOVZ imm. from bits 31:16. */
+#define R_AARCH64_MOVW_UABS_G1_NC 266 /* Likewise for MOVK; no check. */
+#define R_AARCH64_MOVW_UABS_G2 267 /* Dir. MOVZ imm. from bits 47:32. */
+#define R_AARCH64_MOVW_UABS_G2_NC 268 /* Likewise for MOVK; no check. */
+#define R_AARCH64_MOVW_UABS_G3 269 /* Dir. MOV{K,Z} imm. from 63:48. */
+#define R_AARCH64_MOVW_SABS_G0 270 /* Dir. MOV{N,Z} imm. from 15:0. */
+#define R_AARCH64_MOVW_SABS_G1 271 /* Dir. MOV{N,Z} imm. from 31:16. */
+#define R_AARCH64_MOVW_SABS_G2 272 /* Dir. MOV{N,Z} imm. from 47:32. */
+#define R_AARCH64_LD_PREL_LO19 273 /* PC-rel. LD imm. from bits 20:2. */
+#define R_AARCH64_ADR_PREL_LO21 274 /* PC-rel. ADR imm. from bits 20:0. */
+#define R_AARCH64_ADR_PREL_PG_HI21 275 /* Page-rel. ADRP imm. from 32:12. */
+#define R_AARCH64_ADR_PREL_PG_HI21_NC 276 /* Likewise; no overflow check. */
+#define R_AARCH64_ADD_ABS_LO12_NC 277 /* Dir. ADD imm. from bits 11:0. */
+#define R_AARCH64_LDST8_ABS_LO12_NC 278 /* Likewise for LD/ST; no check. */
+#define R_AARCH64_TSTBR14 279 /* PC-rel. TBZ/TBNZ imm. from 15:2. */
+#define R_AARCH64_CONDBR19 280 /* PC-rel. cond. br. imm. from 20:2. */
+#define R_AARCH64_JUMP26 282 /* PC-rel. B imm. from bits 27:2. */
+#define R_AARCH64_CALL26 283 /* Likewise for CALL. */
+#define R_AARCH64_LDST16_ABS_LO12_NC 284 /* Dir. ADD imm. from bits 11:1. */
+#define R_AARCH64_LDST32_ABS_LO12_NC 285 /* Likewise for bits 11:2. */
+#define R_AARCH64_LDST64_ABS_LO12_NC 286 /* Likewise for bits 11:3. */
+#define R_AARCH64_MOVW_PREL_G0 287 /* PC-rel. MOV{N,Z} imm. from 15:0. */
+#define R_AARCH64_MOVW_PREL_G0_NC 288 /* Likewise for MOVK; no check. */
+#define R_AARCH64_MOVW_PREL_G1 289 /* PC-rel. MOV{N,Z} imm. from 31:16. */
+#define R_AARCH64_MOVW_PREL_G1_NC 290 /* Likewise for MOVK; no check. */
+#define R_AARCH64_MOVW_PREL_G2 291 /* PC-rel. MOV{N,Z} imm. from 47:32. */
+#define R_AARCH64_MOVW_PREL_G2_NC 292 /* Likewise for MOVK; no check. */
+#define R_AARCH64_MOVW_PREL_G3 293 /* PC-rel. MOV{N,Z} imm. from 63:48. */
+#define R_AARCH64_LDST128_ABS_LO12_NC 299 /* Dir. ADD imm. from bits 11:4. */
+#define R_AARCH64_MOVW_GOTOFF_G0 300 /* GOT-rel. off. MOV{N,Z} imm. 15:0. */
+#define R_AARCH64_MOVW_GOTOFF_G0_NC 301 /* Likewise for MOVK; no check. */
+#define R_AARCH64_MOVW_GOTOFF_G1 302 /* GOT-rel. o. MOV{N,Z} imm. 31:16. */
+#define R_AARCH64_MOVW_GOTOFF_G1_NC 303 /* Likewise for MOVK; no check. */
+#define R_AARCH64_MOVW_GOTOFF_G2 304 /* GOT-rel. o. MOV{N,Z} imm. 47:32. */
+#define R_AARCH64_MOVW_GOTOFF_G2_NC 305 /* Likewise for MOVK; no check. */
+#define R_AARCH64_MOVW_GOTOFF_G3 306 /* GOT-rel. o. MOV{N,Z} imm. 63:48. */
+#define R_AARCH64_GOTREL64 307 /* GOT-relative 64-bit. */
+#define R_AARCH64_GOTREL32 308 /* GOT-relative 32-bit. */
+#define R_AARCH64_GOT_LD_PREL19 309 /* PC-rel. GOT off. load imm. 20:2. */
+#define R_AARCH64_LD64_GOTOFF_LO15 310 /* GOT-rel. off. LD/ST imm. 14:3. */
+#define R_AARCH64_ADR_GOT_PAGE 311 /* P-page-rel. GOT off. ADRP 32:12. */
+#define R_AARCH64_LD64_GOT_LO12_NC 312 /* Dir. GOT off. LD/ST imm. 11:3. */
+#define R_AARCH64_LD64_GOTPAGE_LO15 313 /* GOT-page-rel. GOT off. LD/ST 14:3 */
+#define R_AARCH64_TLSGD_ADR_PREL21 512 /* PC-relative ADR imm. 20:0. */
+#define R_AARCH64_TLSGD_ADR_PAGE21 513 /* page-rel. ADRP imm. 32:12. */
+#define R_AARCH64_TLSGD_ADD_LO12_NC 514 /* direct ADD imm. from 11:0. */
+#define R_AARCH64_TLSGD_MOVW_G1 515 /* GOT-rel. MOV{N,Z} 31:16. */
+#define R_AARCH64_TLSGD_MOVW_G0_NC 516 /* GOT-rel. MOVK imm. 15:0. */
+#define R_AARCH64_TLSLD_ADR_PREL21 517 /* Like 512; local dynamic model. */
+#define R_AARCH64_TLSLD_ADR_PAGE21 518 /* Like 513; local dynamic model. */
+#define R_AARCH64_TLSLD_ADD_LO12_NC 519 /* Like 514; local dynamic model. */
+#define R_AARCH64_TLSLD_MOVW_G1 520 /* Like 515; local dynamic model. */
+#define R_AARCH64_TLSLD_MOVW_G0_NC 521 /* Like 516; local dynamic model. */
+#define R_AARCH64_TLSLD_LD_PREL19 522 /* TLS PC-rel. load imm. 20:2. */
+#define R_AARCH64_TLSLD_MOVW_DTPREL_G2 523 /* TLS DTP-rel. MOV{N,Z} 47:32. */
+#define R_AARCH64_TLSLD_MOVW_DTPREL_G1 524 /* TLS DTP-rel. MOV{N,Z} 31:16. */
+#define R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC 525 /* Likewise; MOVK; no check. */
+#define R_AARCH64_TLSLD_MOVW_DTPREL_G0 526 /* TLS DTP-rel. MOV{N,Z} 15:0. */
+#define R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC 527 /* Likewise; MOVK; no check. */
+#define R_AARCH64_TLSLD_ADD_DTPREL_HI12 528 /* DTP-rel. ADD imm. from 23:12. */
+#define R_AARCH64_TLSLD_ADD_DTPREL_LO12 529 /* DTP-rel. ADD imm. from 11:0. */
+#define R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC 530 /* Likewise; no ovfl. check. */
+#define R_AARCH64_TLSLD_LDST8_DTPREL_LO12 531 /* DTP-rel. LD/ST imm. 11:0. */
+#define R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC 532 /* Likewise; no check. */
+#define R_AARCH64_TLSLD_LDST16_DTPREL_LO12 533 /* DTP-rel. LD/ST imm. 11:1. */
+#define R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC 534 /* Likewise; no check. */
+#define R_AARCH64_TLSLD_LDST32_DTPREL_LO12 535 /* DTP-rel. LD/ST imm. 11:2. */
+#define R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC 536 /* Likewise; no check. */
+#define R_AARCH64_TLSLD_LDST64_DTPREL_LO12 537 /* DTP-rel. LD/ST imm. 11:3. */
+#define R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC 538 /* Likewise; no check. */
+#define R_AARCH64_TLSIE_MOVW_GOTTPREL_G1 539 /* GOT-rel. MOV{N,Z} 31:16. */
+#define R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC 540 /* GOT-rel. MOVK 15:0. */
+#define R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 541 /* Page-rel. ADRP 32:12. */
+#define R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC 542 /* Direct LD off. 11:3. */
+#define R_AARCH64_TLSIE_LD_GOTTPREL_PREL19 543 /* PC-rel. load imm. 20:2. */
+#define R_AARCH64_TLSLE_MOVW_TPREL_G2 544 /* TLS TP-rel. MOV{N,Z} 47:32. */
+#define R_AARCH64_TLSLE_MOVW_TPREL_G1 545 /* TLS TP-rel. MOV{N,Z} 31:16. */
+#define R_AARCH64_TLSLE_MOVW_TPREL_G1_NC 546 /* Likewise; MOVK; no check. */
+#define R_AARCH64_TLSLE_MOVW_TPREL_G0 547 /* TLS TP-rel. MOV{N,Z} 15:0. */
+#define R_AARCH64_TLSLE_MOVW_TPREL_G0_NC 548 /* Likewise; MOVK; no check. */
+#define R_AARCH64_TLSLE_ADD_TPREL_HI12 549 /* TP-rel. ADD imm. 23:12. */
+#define R_AARCH64_TLSLE_ADD_TPREL_LO12 550 /* TP-rel. ADD imm. 11:0. */
+#define R_AARCH64_TLSLE_ADD_TPREL_LO12_NC 551 /* Likewise; no ovfl. check. */
+#define R_AARCH64_TLSLE_LDST8_TPREL_LO12 552 /* TP-rel. LD/ST off. 11:0. */
+#define R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC 553 /* Likewise; no ovfl. check. */
+#define R_AARCH64_TLSLE_LDST16_TPREL_LO12 554 /* TP-rel. LD/ST off. 11:1. */
+#define R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC 555 /* Likewise; no check. */
+#define R_AARCH64_TLSLE_LDST32_TPREL_LO12 556 /* TP-rel. LD/ST off. 11:2. */
+#define R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC 557 /* Likewise; no check. */
+#define R_AARCH64_TLSLE_LDST64_TPREL_LO12 558 /* TP-rel. LD/ST off. 11:3. */
+#define R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC 559 /* Likewise; no check. */
+#define R_AARCH64_TLSDESC_LD_PREL19 560 /* PC-rel. load immediate 20:2. */
+#define R_AARCH64_TLSDESC_ADR_PREL21 561 /* PC-rel. ADR immediate 20:0. */
+#define R_AARCH64_TLSDESC_ADR_PAGE21 562 /* Page-rel. ADRP imm. 32:12. */
+#define R_AARCH64_TLSDESC_LD64_LO12 563 /* Direct LD off. from 11:3. */
+#define R_AARCH64_TLSDESC_ADD_LO12 564 /* Direct ADD imm. from 11:0. */
+#define R_AARCH64_TLSDESC_OFF_G1 565 /* GOT-rel. MOV{N,Z} imm. 31:16. */
+#define R_AARCH64_TLSDESC_OFF_G0_NC 566 /* GOT-rel. MOVK imm. 15:0; no ck. */
+#define R_AARCH64_TLSDESC_LDR 567 /* Relax LDR. */
+#define R_AARCH64_TLSDESC_ADD 568 /* Relax ADD. */
+#define R_AARCH64_TLSDESC_CALL 569 /* Relax BLR. */
+#define R_AARCH64_TLSLE_LDST128_TPREL_LO12 570 /* TP-rel. LD/ST off. 11:4. */
+#define R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC 571 /* Likewise; no check. */
+#define R_AARCH64_TLSLD_LDST128_DTPREL_LO12 572 /* DTP-rel. LD/ST imm. 11:4. */
+#define R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC 573 /* Likewise; no check. */
#define R_AARCH64_COPY 1024 /* Copy symbol at runtime. */
#define R_AARCH64_GLOB_DAT 1025 /* Create GOT entry. */
#define R_AARCH64_JUMP_SLOT 1026 /* Create PLT entry. */
@@ -2343,6 +2483,7 @@ typedef Elf32_Addr Elf32_Conflict;
#define R_AARCH64_TLS_DTPREL64 1029 /* Module-relative offset, 64 bit. */
#define R_AARCH64_TLS_TPREL64 1030 /* TP-relative offset, 64 bit. */
#define R_AARCH64_TLSDESC 1031 /* TLS Descriptor. */
+#define R_AARCH64_IRELATIVE 1032 /* STT_GNU_IFUNC relocation. */
/* ARM relocs. */
diff --git a/elf/ldd.bash.in b/elf/ldd.bash.in
index 39aeca249d..c4a1a15139 100644
--- a/elf/ldd.bash.in
+++ b/elf/ldd.bash.in
@@ -106,19 +106,18 @@ if test "$unused" = yes; then
add_env="$add_env LD_DEBUG=\"$LD_DEBUG${LD_DEBUG:+,}unused\""
fi
-# The following use of cat is needed to make ldd work in SELinux
-# environments where the executed program might not have permissions
-# to write to the console/tty. But only bash 3.x supports the pipefail
-# option, and we don't bother to handle the case for older bash versions.
-if set -o pipefail 2> /dev/null; then
- try_trace() {
- eval $add_env '"$@"' | cat
- }
-else
- try_trace() {
- eval $add_env '"$@"'
- }
-fi
+# The following command substitution is needed to make ldd work in SELinux
+# environments where the RTLD might not have permission to write to the
+# terminal. The extra "x" character prevents the shell from trimming trailing
+# newlines from command substitution results. This function is defined as a
+# subshell compound list (using "(...)") to prevent parameter assignments from
+# affecting the calling shell execution environment.
+try_trace() (
+ output=$(eval $add_env '"$@"' 2>&1; rc=$?; printf 'x'; exit $rc)
+ rc=$?
+ printf '%s' "${output%x}"
+ return $rc
+)
case $# in
0)
diff --git a/elf/rtld.c b/elf/rtld.c
index a0bda1d165..30cd6bb3dd 100644
--- a/elf/rtld.c
+++ b/elf/rtld.c
@@ -816,8 +816,8 @@ do_preload (char *fname, struct link_map *main_map, const char *where)
if (__builtin_expect (err_str != NULL, 0))
{
_dl_error_printf ("\
-ERROR: ld.so: object '%s' from %s cannot be preloaded: ignored.\n",
- fname, where);
+ERROR: ld.so: object '%s' from %s cannot be preloaded (%s): ignored.\n",
+ fname, where, err_str);
/* No need to call free, this is still before
the libc's malloc is used. */
}
@@ -1118,6 +1118,9 @@ of this helper program; chances are you did not intend to run this program.\n\
case AT_ENTRY:
av->a_un.a_val = *user_entry;
break;
+ case AT_EXECFN:
+ av->a_un.a_val = (uintptr_t) _dl_argv[0];
+ break;
}
#endif
}
@@ -2217,10 +2220,6 @@ ERROR: ld.so: object '%s' cannot be loaded as audit interface: %s; ignored.\n",
_dl_start_profile ();
}
-#ifndef NONTLS_INIT_TP
-# define NONTLS_INIT_TP do { } while (0)
-#endif
-
if (!was_tls_init_tp_called && GL(dl_tls_max_dtv_idx) > 0)
++GL(dl_tls_generation);
diff --git a/elf/tlsdeschtab.h b/elf/tlsdeschtab.h
index 155f4fdd9b..8ce8249b92 100644
--- a/elf/tlsdeschtab.h
+++ b/elf/tlsdeschtab.h
@@ -102,6 +102,12 @@ _dl_make_tlsdesc_dynamic (struct link_map *map, size_t ti_offset)
test.tlsinfo.ti_module = map->l_tls_modid;
test.tlsinfo.ti_offset = ti_offset;
entry = htab_find_slot (ht, &test, 1, hash_tlsdesc, eq_tlsdesc);
+ if (! entry)
+ {
+ __rtld_lock_unlock_recursive (GL(dl_load_lock));
+ return 0;
+ }
+
if (*entry)
{
td = *entry;
diff --git a/elf/tst-auxv.c b/elf/tst-auxv.c
new file mode 100644
index 0000000000..0fb3ad5345
--- /dev/null
+++ b/elf/tst-auxv.c
@@ -0,0 +1,69 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <elf.h>
+#include <errno.h>
+#include <link.h>
+#include <string.h>
+#include <stdio.h>
+#include <unistd.h>
+#include <misc/sys/auxv.h>
+
+static int
+do_test (int argc, char *argv[])
+{
+ errno = 0;
+ const char *execfn = (const char *) getauxval (AT_NULL);
+
+ if (errno != ENOENT)
+ {
+ printf ("errno is %d rather than %d (ENOENT) on failure\n", errno,
+ ENOENT);
+ return 1;
+ }
+
+ if (execfn != NULL)
+ {
+ printf ("getauxval return value is nonzero on failure\n");
+ return 1;
+ }
+
+ errno = 0;
+ execfn = (const char *) getauxval (AT_EXECFN);
+
+ if (execfn == NULL)
+ {
+ printf ("No AT_EXECFN found, AT_EXECFN test skipped\n");
+ return 0;
+ }
+
+ if (errno != 0)
+ {
+ printf ("errno erroneously set to %d on success\n", errno);
+ return 1;
+ }
+
+ if (strcmp (argv[0], execfn) != 0)
+ {
+ printf ("Mismatch: argv[0]: %s vs. AT_EXECFN: %s\n", argv[0], execfn);
+ return 1;
+ }
+
+ return 0;
+}
+
+#include "../test-skeleton.c"
diff --git a/elf/tst-ptrguard1-static.c b/elf/tst-ptrguard1-static.c
new file mode 100644
index 0000000000..7aff3b7b5d
--- /dev/null
+++ b/elf/tst-ptrguard1-static.c
@@ -0,0 +1 @@
+#include "tst-ptrguard1.c"
diff --git a/elf/tst-ptrguard1.c b/elf/tst-ptrguard1.c
new file mode 100644
index 0000000000..c344a04db1
--- /dev/null
+++ b/elf/tst-ptrguard1.c
@@ -0,0 +1,202 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <stdbool.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/wait.h>
+#include <stackguard-macros.h>
+#include <tls.h>
+#include <unistd.h>
+
+#ifndef POINTER_CHK_GUARD
+extern uintptr_t __pointer_chk_guard;
+# define POINTER_CHK_GUARD __pointer_chk_guard
+#endif
+
+static const char *command;
+static bool child;
+static uintptr_t ptr_chk_guard_copy;
+static bool ptr_chk_guard_copy_set;
+static int fds[2];
+
+static void __attribute__ ((constructor))
+con (void)
+{
+ ptr_chk_guard_copy = POINTER_CHK_GUARD;
+ ptr_chk_guard_copy_set = true;
+}
+
+static int
+uintptr_t_cmp (const void *a, const void *b)
+{
+ if (*(uintptr_t *) a < *(uintptr_t *) b)
+ return 1;
+ if (*(uintptr_t *) a > *(uintptr_t *) b)
+ return -1;
+ return 0;
+}
+
+static int
+do_test (void)
+{
+ if (!ptr_chk_guard_copy_set)
+ {
+ puts ("constructor has not been run");
+ return 1;
+ }
+
+ if (ptr_chk_guard_copy != POINTER_CHK_GUARD)
+ {
+ puts ("POINTER_CHK_GUARD changed between constructor and do_test");
+ return 1;
+ }
+
+ if (child)
+ {
+ write (2, &ptr_chk_guard_copy, sizeof (ptr_chk_guard_copy));
+ return 0;
+ }
+
+ if (command == NULL)
+ {
+ puts ("missing --command or --child argument");
+ return 1;
+ }
+
+#define N 16
+ uintptr_t child_ptr_chk_guards[N + 1];
+ child_ptr_chk_guards[N] = ptr_chk_guard_copy;
+ int i;
+ for (i = 0; i < N; ++i)
+ {
+ if (pipe (fds) < 0)
+ {
+ printf ("couldn't create pipe: %m\n");
+ return 1;
+ }
+
+ pid_t pid = fork ();
+ if (pid < 0)
+ {
+ printf ("fork failed: %m\n");
+ return 1;
+ }
+
+ if (!pid)
+ {
+ if (ptr_chk_guard_copy != POINTER_CHK_GUARD)
+ {
+ puts ("POINTER_CHK_GUARD changed after fork");
+ exit (1);
+ }
+
+ close (fds[0]);
+ close (2);
+ dup2 (fds[1], 2);
+ close (fds[1]);
+
+ system (command);
+ exit (0);
+ }
+
+ close (fds[1]);
+
+ if (TEMP_FAILURE_RETRY (read (fds[0], &child_ptr_chk_guards[i],
+ sizeof (uintptr_t))) != sizeof (uintptr_t))
+ {
+ puts ("could not read ptr_chk_guard value from child");
+ return 1;
+ }
+
+ close (fds[0]);
+
+ pid_t termpid;
+ int status;
+ termpid = TEMP_FAILURE_RETRY (waitpid (pid, &status, 0));
+ if (termpid == -1)
+ {
+ printf ("waitpid failed: %m\n");
+ return 1;
+ }
+ else if (termpid != pid)
+ {
+ printf ("waitpid returned %ld != %ld\n",
+ (long int) termpid, (long int) pid);
+ return 1;
+ }
+ else if (!WIFEXITED (status) || WEXITSTATUS (status))
+ {
+ puts ("child hasn't exited with exit status 0");
+ return 1;
+ }
+ }
+
+ qsort (child_ptr_chk_guards, N + 1, sizeof (uintptr_t), uintptr_t_cmp);
+
+ /* The default pointer guard is the same as the default stack guard.
+ They are only set to default if dl_random is NULL. */
+ uintptr_t default_guard = 0;
+ unsigned char *p = (unsigned char *) &default_guard;
+ p[sizeof (uintptr_t) - 1] = 255;
+ p[sizeof (uintptr_t) - 2] = '\n';
+ p[0] = 0;
+
+ /* Test if the pointer guard canaries are either randomized,
+ or equal to the default pointer guard value.
+ Even with randomized pointer guards it might happen
+ that the random number generator generates the same
+ values, but if that happens in more than half from
+ the 16 runs, something is very wrong. */
+ int ndifferences = 0;
+ int ndefaults = 0;
+ for (i = 0; i < N; ++i)
+ {
+ if (child_ptr_chk_guards[i] != child_ptr_chk_guards[i+1])
+ ndifferences++;
+ else if (child_ptr_chk_guards[i] == default_guard)
+ ndefaults++;
+ }
+
+ printf ("differences %d defaults %d\n", ndifferences, ndefaults);
+
+ if (ndifferences < N / 2 && ndefaults < N / 2)
+ {
+ puts ("pointer guard values are not randomized enough");
+ puts ("nor equal to the default value");
+ return 1;
+ }
+
+ return 0;
+}
+
+#define OPT_COMMAND 10000
+#define OPT_CHILD 10001
+#define CMDLINE_OPTIONS \
+ { "command", required_argument, NULL, OPT_COMMAND }, \
+ { "child", no_argument, NULL, OPT_CHILD },
+#define CMDLINE_PROCESS \
+ case OPT_COMMAND: \
+ command = optarg; \
+ break; \
+ case OPT_CHILD: \
+ child = true; \
+ break;
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
diff --git a/elf/tst-tls-dlinfo.c b/elf/tst-tls-dlinfo.c
index 26c2811178..28661b19c2 100644
--- a/elf/tst-tls-dlinfo.c
+++ b/elf/tst-tls-dlinfo.c
@@ -2,8 +2,6 @@
#include <stdio.h>
#include <stdlib.h>
-#include <tls.h>
-
#define TEST_FUNCTION do_test ()
static int
diff --git a/elf/tst-tls1.c b/elf/tst-tls1.c
index 3b9b10f9aa..bec0a2ff26 100644
--- a/elf/tst-tls1.c
+++ b/elf/tst-tls1.c
@@ -1,8 +1,6 @@
/* glibc test for TLS in ld.so. */
#include <stdio.h>
-#include <tls.h>
-
#include "tls-macros.h"
diff --git a/elf/tst-tls10.h b/elf/tst-tls10.h
index 2b5709af72..7c8c6a6391 100644
--- a/elf/tst-tls10.h
+++ b/elf/tst-tls10.h
@@ -1,4 +1,3 @@
-#include <tls.h>
#include <stdlib.h>
struct A
diff --git a/elf/tst-tls14.c b/elf/tst-tls14.c
index ffd31e97be..6bacb599dd 100644
--- a/elf/tst-tls14.c
+++ b/elf/tst-tls14.c
@@ -4,8 +4,6 @@
#include <stdio.h>
#include <stdlib.h>
-#include <tls.h>
-
#define AL 4096
struct foo
{
diff --git a/elf/tst-tls2.c b/elf/tst-tls2.c
index 3d13272c08..d0b6d51402 100644
--- a/elf/tst-tls2.c
+++ b/elf/tst-tls2.c
@@ -1,8 +1,6 @@
/* glibc test for TLS in ld.so. */
#include <stdio.h>
-#include <tls.h>
-
#include "tls-macros.h"
diff --git a/elf/tst-tls3.c b/elf/tst-tls3.c
index c5e501eb4e..ca96c6a073 100644
--- a/elf/tst-tls3.c
+++ b/elf/tst-tls3.c
@@ -1,8 +1,6 @@
/* glibc test for TLS in ld.so. */
#include <stdio.h>
-#include <tls.h>
-
#include "tls-macros.h"
diff --git a/elf/tst-tls4.c b/elf/tst-tls4.c
index 4ae33db24d..63170c3478 100644
--- a/elf/tst-tls4.c
+++ b/elf/tst-tls4.c
@@ -2,8 +2,6 @@
#include <stdio.h>
#include <stdlib.h>
-#include <tls.h>
-
#define TEST_FUNCTION do_test ()
static int
diff --git a/elf/tst-tls5.c b/elf/tst-tls5.c
index 27b18294fb..76905c56db 100644
--- a/elf/tst-tls5.c
+++ b/elf/tst-tls5.c
@@ -2,8 +2,6 @@
#include <stdio.h>
#include <stdlib.h>
-#include <tls.h>
-
#define TEST_FUNCTION do_test ()
static int
diff --git a/elf/tst-tls6.c b/elf/tst-tls6.c
index 021622d9c7..9e6235f1d3 100644
--- a/elf/tst-tls6.c
+++ b/elf/tst-tls6.c
@@ -3,7 +3,6 @@
#include <stdlib.h>
#include <link.h>
-#include <tls.h>
#define TEST_FUNCTION do_test ()
diff --git a/elf/tst-tls7.c b/elf/tst-tls7.c
index 1edc2b6356..23a16e4489 100644
--- a/elf/tst-tls7.c
+++ b/elf/tst-tls7.c
@@ -3,7 +3,6 @@
#include <stdlib.h>
#include <link.h>
-#include <tls.h>
#define TEST_FUNCTION do_test ()
diff --git a/elf/tst-tls8.c b/elf/tst-tls8.c
index 36b1baca63..4bf3e3ffb5 100644
--- a/elf/tst-tls8.c
+++ b/elf/tst-tls8.c
@@ -3,7 +3,6 @@
#include <stdlib.h>
#include <link.h>
-#include <tls.h>
#define TEST_FUNCTION do_test ()
diff --git a/elf/tst-tls9.c b/elf/tst-tls9.c
index 12078518fa..6306fb5658 100644
--- a/elf/tst-tls9.c
+++ b/elf/tst-tls9.c
@@ -3,7 +3,6 @@
#include <stdlib.h>
#include <link.h>
-#include <tls.h>
#define TEST_FUNCTION do_test ()
static int
diff --git a/elf/tst-tlsmod1.c b/elf/tst-tlsmod1.c
index 4d966c9472..8d9156791b 100644
--- a/elf/tst-tlsmod1.c
+++ b/elf/tst-tlsmod1.c
@@ -1,7 +1,5 @@
#include <stdio.h>
-#include <tls.h>
-
#include "tls-macros.h"
diff --git a/elf/tst-tlsmod13.c b/elf/tst-tlsmod13.c
index 76da630a05..7712d8b8c8 100644
--- a/elf/tst-tlsmod13.c
+++ b/elf/tst-tlsmod13.c
@@ -1,5 +1,3 @@
-#include <tls.h>
-
__thread int a[2] __attribute__ ((tls_model ("initial-exec")));
int
diff --git a/elf/tst-tlsmod13a.c b/elf/tst-tlsmod13a.c
index d5515d4a15..ca4eaccbff 100644
--- a/elf/tst-tlsmod13a.c
+++ b/elf/tst-tlsmod13a.c
@@ -1,5 +1,3 @@
-#include <tls.h>
-
__thread int b[2] __attribute__ ((tls_model ("initial-exec")));
extern int foo (void);
diff --git a/elf/tst-tlsmod14a.c b/elf/tst-tlsmod14a.c
index 6806d3403c..824c06d1f9 100644
--- a/elf/tst-tlsmod14a.c
+++ b/elf/tst-tlsmod14a.c
@@ -1,8 +1,6 @@
#include <stdint.h>
#include <stdio.h>
-#include <tls.h>
-
#define AL 4096
struct foo
{
diff --git a/elf/tst-tlsmod16a.c b/elf/tst-tlsmod16a.c
index c16e603c8b..4ec6a6c37d 100644
--- a/elf/tst-tlsmod16a.c
+++ b/elf/tst-tlsmod16a.c
@@ -1,3 +1 @@
-#include <tls.h>
-
int __thread tlsvar;
diff --git a/elf/tst-tlsmod16b.c b/elf/tst-tlsmod16b.c
index 7268c56bcb..1ecba26dbe 100644
--- a/elf/tst-tlsmod16b.c
+++ b/elf/tst-tlsmod16b.c
@@ -1,5 +1,3 @@
-#include <tls.h>
-
extern __thread int tlsvar __attribute__((tls_model("initial-exec")));
void *
diff --git a/elf/tst-tlsmod2.c b/elf/tst-tlsmod2.c
index 981923313c..40eb1407f8 100644
--- a/elf/tst-tlsmod2.c
+++ b/elf/tst-tlsmod2.c
@@ -1,7 +1,5 @@
#include <stdio.h>
-#include <tls.h>
-
#include "tls-macros.h"
diff --git a/elf/tst-tlsmod3.c b/elf/tst-tlsmod3.c
index 5c456ee2da..6d186c47ee 100644
--- a/elf/tst-tlsmod3.c
+++ b/elf/tst-tlsmod3.c
@@ -1,7 +1,5 @@
#include <stdio.h>
-#include <tls.h>
-
#include "tls-macros.h"
extern int in_dso (int n, int *caller_foop);
diff --git a/elf/tst-tlsmod4.c b/elf/tst-tlsmod4.c
index dd95486618..86889aac7e 100644
--- a/elf/tst-tlsmod4.c
+++ b/elf/tst-tlsmod4.c
@@ -1,7 +1,5 @@
#include <stdio.h>
-#include <tls.h>
-
#include "tls-macros.h"
diff --git a/elf/tst-tlsmod5.c b/elf/tst-tlsmod5.c
index 00d3a9d920..a97c7e5e0c 100644
--- a/elf/tst-tlsmod5.c
+++ b/elf/tst-tlsmod5.c
@@ -1,5 +1,3 @@
-#include <tls.h>
-
#include "tls-macros.h"
COMMON_INT_DEF(foo);
diff --git a/elf/tst-tlsmod6.c b/elf/tst-tlsmod6.c
index 244d9ae485..e968596dd4 100644
--- a/elf/tst-tlsmod6.c
+++ b/elf/tst-tlsmod6.c
@@ -1,5 +1,3 @@
-#include <tls.h>
-
#include "tls-macros.h"
COMMON_INT_DEF(bar);
diff --git a/extra-lib.mk b/extra-lib.mk
index 247946f6aa..fd8812cb21 100644
--- a/extra-lib.mk
+++ b/extra-lib.mk
@@ -90,7 +90,7 @@ $(objpfx)$(patsubst %,$(libtype.oS),$(lib:lib%=%)): \
$(build-extra-lib)
endif
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
# Add the version script to the dependencies of the shared library.
$(objpfx)$(lib).so: $(firstword $($(lib)-map) \
$(addprefix $(common-objpfx), \
diff --git a/hurd/Makefile b/hurd/Makefile
index 09bd00f991..607b5f5299 100644
--- a/hurd/Makefile
+++ b/hurd/Makefile
@@ -73,7 +73,7 @@ inlines = $(inline-headers:%.h=%-inlines)
routines += hurdmalloc
# Binary compatibility for libc.so.0.2[GLIBC_2.0].
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
routines += compat-20
endif
diff --git a/hurd/geteuids.c b/hurd/geteuids.c
index 7c546b7e7b..92ddfae986 100644
--- a/hurd/geteuids.c
+++ b/hurd/geteuids.c
@@ -63,6 +63,6 @@ geteuids (int n, uid_t *uidset)
/* XXX Remove this alias when we bump the libc soname. */
-#if defined SHARED && DO_VERSIONING
+#ifdef SHARED
weak_alias (geteuids, __getuids)
#endif
diff --git a/iconv/iconv_prog.c b/iconv/iconv_prog.c
index 1a1d0d0cf4..11c7f087d4 100644
--- a/iconv/iconv_prog.c
+++ b/iconv/iconv_prog.c
@@ -789,7 +789,7 @@ print_known_names (void)
if (human_readable)
fputs (_("\
-The following list contain all the coded character sets known. This does\n\
+The following list contains all the coded character sets known. This does\n\
not necessarily mean that all combinations of these names can be used for\n\
the FROM and TO command line parameters. One coded character set can be\n\
listed with several different names (aliases).\n\n "), stdout);
diff --git a/include/complex.h b/include/complex.h
index e173f1f6a3..082e71fb10 100644
--- a/include/complex.h
+++ b/include/complex.h
@@ -1,11 +1,13 @@
#ifndef _COMPLEX_H
# include <math/complex.h>
+# ifndef _ISOMAC
/* Return the complex inverse hyperbolic sine of finite nonzero Z,
with the imaginary part of the result subtracted from pi/2 if ADJ
is nonzero. */
extern complex float __kernel_casinhf (complex float z, int adj);
extern complex double __kernel_casinh (complex double z, int adj);
extern complex long double __kernel_casinhl (complex long double z, int adj);
+# endif
#endif
diff --git a/include/features.h b/include/features.h
index c9be10a63e..6acd5c899d 100644
--- a/include/features.h
+++ b/include/features.h
@@ -41,17 +41,21 @@
_SVID_SOURCE ISO C, POSIX, and SVID things.
_ATFILE_SOURCE Additional *at interfaces.
_GNU_SOURCE All of the above, plus GNU extensions.
+ _DEFAULT_SOURCE The default set of features (taking precedence over
+ __STRICT_ANSI__).
_REENTRANT Select additionally reentrant object.
_THREAD_SAFE Same as _REENTRANT, often used by other systems.
_FORTIFY_SOURCE If set to numeric value > 0 additional security
measures are defined, according to level.
- The `-ansi' switch to the GNU C compiler defines __STRICT_ANSI__.
- If none of these are defined, the default is to have _SVID_SOURCE,
- _BSD_SOURCE, and _POSIX_SOURCE set to one and _POSIX_C_SOURCE set to
- 200112L. If more than one of these are defined, they accumulate.
- For example __STRICT_ANSI__, _POSIX_SOURCE and _POSIX_C_SOURCE
- together give you ISO C, 1003.1, and 1003.2, but nothing else.
+ The `-ansi' switch to the GNU C compiler, and standards conformance
+ options such as `-std=c99', define __STRICT_ANSI__. If none of
+ these are defined, or if _DEFAULT_SOURCE is defined, the default is
+ to have _SVID_SOURCE, _BSD_SOURCE, and _POSIX_SOURCE set to one and
+ _POSIX_C_SOURCE set to 200809L. If more than one of these are
+ defined, they accumulate. For example __STRICT_ANSI__,
+ _POSIX_SOURCE and _POSIX_C_SOURCE together give you ISO C, 1003.1,
+ and 1003.2, but nothing else.
These are defined by this file and are used by the
header files to decide what to declare or define:
@@ -80,7 +84,6 @@
__USE_GNU Define GNU extensions.
__USE_REENTRANT Define reentrant/thread-safe *_r functions.
__USE_FORTIFY_LEVEL Additional security measures used, according to level.
- __FAVOR_BSD Favor 4.3BSD things in cases of conflict.
The macros `__GNU_LIBRARY__', `__GLIBC__', and `__GLIBC_MINOR__' are
defined by this file unconditionally. `__GNU_LIBRARY__' is provided
@@ -120,7 +123,6 @@
#undef __USE_GNU
#undef __USE_REENTRANT
#undef __USE_FORTIFY_LEVEL
-#undef __FAVOR_BSD
#undef __KERNEL_STRICT_NAMES
/* Suppress kernel-name space pollution unless user expressedly asks
@@ -144,13 +146,6 @@
#endif
-/* If _BSD_SOURCE was defined by the user, favor BSD over POSIX. */
-#if defined _BSD_SOURCE && \
- !(defined _POSIX_SOURCE || defined _POSIX_C_SOURCE || \
- defined _XOPEN_SOURCE || defined _GNU_SOURCE || defined _SVID_SOURCE)
-# define __FAVOR_BSD 1
-#endif
-
/* If _GNU_SOURCE was defined by the user, turn on all the other features. */
#ifdef _GNU_SOURCE
# undef _ISOC95_SOURCE
@@ -169,6 +164,8 @@
# define _XOPEN_SOURCE_EXTENDED 1
# undef _LARGEFILE64_SOURCE
# define _LARGEFILE64_SOURCE 1
+# undef _DEFAULT_SOURCE
+# define _DEFAULT_SOURCE 1
# undef _BSD_SOURCE
# define _BSD_SOURCE 1
# undef _SVID_SOURCE
@@ -177,12 +174,19 @@
# define _ATFILE_SOURCE 1
#endif
-/* If nothing (other than _GNU_SOURCE) is defined,
- define _BSD_SOURCE and _SVID_SOURCE. */
-#if (!defined __STRICT_ANSI__ && !defined _ISOC99_SOURCE && \
- !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE && \
- !defined _XOPEN_SOURCE && !defined _BSD_SOURCE && !defined _SVID_SOURCE)
+/* If nothing (other than _GNU_SOURCE and _DEFAULT_SOURCE) is defined,
+ define _DEFAULT_SOURCE, _BSD_SOURCE and _SVID_SOURCE. */
+#if (defined _DEFAULT_SOURCE \
+ || (!defined __STRICT_ANSI__ \
+ && !defined _ISOC99_SOURCE \
+ && !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE \
+ && !defined _XOPEN_SOURCE \
+ && !defined _BSD_SOURCE && !defined _SVID_SOURCE))
+# undef _DEFAULT_SOURCE
+# define _DEFAULT_SOURCE 1
+# undef _BSD_SOURCE
# define _BSD_SOURCE 1
+# undef _SVID_SOURCE
# define _SVID_SOURCE 1
#endif
@@ -213,8 +217,18 @@
# define __USE_ISOCXX11 1
#endif
-/* If none of the ANSI/POSIX macros are defined, use POSIX.1 and POSIX.2
- (and IEEE Std 1003.1b-1993 unless _XOPEN_SOURCE is defined). */
+/* If none of the ANSI/POSIX macros are defined, or if _DEFAULT_SOURCE
+ is defined, use POSIX.1-2008 (or another version depending on
+ _XOPEN_SOURCE). */
+#ifdef _DEFAULT_SOURCE
+# if !defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE
+# define __USE_POSIX_IMPLICITLY 1
+# endif
+# undef _POSIX_SOURCE
+# define _POSIX_SOURCE 1
+# undef _POSIX_C_SOURCE
+# define _POSIX_C_SOURCE 200809L
+#endif
#if ((!defined __STRICT_ANSI__ || (_XOPEN_SOURCE - 0) >= 500) && \
!defined _POSIX_SOURCE && !defined _POSIX_C_SOURCE)
# define _POSIX_SOURCE 1
diff --git a/include/fenv.h b/include/fenv.h
index 9f90d17090..bd2c99db96 100644
--- a/include/fenv.h
+++ b/include/fenv.h
@@ -1,8 +1,8 @@
#ifndef _FENV_H
#include <math/fenv.h>
-#include <stdbool.h>
#ifndef _ISOMAC
+# include <stdbool.h>
/* Now define the internal interfaces. */
extern int __feclearexcept (int __excepts);
@@ -16,13 +16,13 @@ extern int __feupdateenv (const fenv_t *__envp);
libm_hidden_proto (feraiseexcept)
libm_hidden_proto (fegetenv)
+libm_hidden_proto (fegetround)
libm_hidden_proto (fesetenv)
libm_hidden_proto (fesetround)
libm_hidden_proto (feholdexcept)
libm_hidden_proto (feupdateenv)
libm_hidden_proto (fetestexcept)
libm_hidden_proto (feclearexcept)
-#endif
/* Rounding mode context. This allows functions to set/restore rounding mode
only when the desired rounding mode is different from the current rounding
@@ -32,5 +32,6 @@ struct rm_ctx
fenv_t env;
bool updated_status;
};
+#endif
#endif
diff --git a/include/libc-symbols.h b/include/libc-symbols.h
index a3b6274bad..e7c778e394 100644
--- a/include/libc-symbols.h
+++ b/include/libc-symbols.h
@@ -322,7 +322,7 @@ for linking")
past the last element in SET. */
#define symbol_set_end_p(set, ptr) ((ptr) >= (void *const *) &__stop_##set)
-#if DO_VERSIONING
+#ifdef SHARED
# define symbol_version(real, name, version) \
_symbol_version(real, name, version)
# define default_symbol_version(real, name, version) \
@@ -466,14 +466,16 @@ for linking")
versioned_symbol (libc, __real_foo, foo, GLIBC_2_1);
libc_hidden_ver (__real_foo, foo) */
-#if defined SHARED && defined DO_VERSIONING && !defined NO_HIDDEN
+#if defined SHARED && !defined NO_HIDDEN
# ifndef __ASSEMBLER__
# define __hidden_proto_hiddenattr(attrs...) \
__attribute__ ((visibility ("hidden"), ##attrs))
# define hidden_proto(name, attrs...) \
- __hidden_proto (name, __GI_##name, ##attrs)
-# define __hidden_proto(name, internal, attrs...) \
- extern __typeof (name) name __asm__ (__hidden_asmname (#internal)) \
+ __hidden_proto (name, , __GI_##name, ##attrs)
+# define hidden_tls_proto(name, attrs...) \
+ __hidden_proto (name, __thread, __GI_##name, ##attrs)
+# define __hidden_proto(name, thread, internal, attrs...) \
+ extern thread __typeof (name) name __asm__ (__hidden_asmname (#internal)) \
__hidden_proto_hiddenattr (attrs);
# define __hidden_asmname(name) \
__hidden_asmname1 (__USER_LABEL_PREFIX__, name)
@@ -524,6 +526,7 @@ for linking")
#else
# ifndef __ASSEMBLER__
# define hidden_proto(name, attrs...)
+# define hidden_tls_proto(name, attrs...)
# else
# define HIDDEN_JUMPTARGET(name) JUMPTARGET(name)
# endif /* Not __ASSEMBLER__ */
@@ -538,6 +541,7 @@ for linking")
#if !defined NOT_IN_libc
# define libc_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libc_hidden_tls_proto(name, attrs...) hidden_tls_proto (name, ##attrs)
# define libc_hidden_def(name) hidden_def (name)
# define libc_hidden_weak(name) hidden_weak (name)
# ifdef LINK_OBSOLETE_RPC
@@ -552,6 +556,7 @@ for linking")
# define libc_hidden_data_ver(local, name) hidden_data_ver (local, name)
#else
# define libc_hidden_proto(name, attrs...)
+# define libc_hidden_tls_proto(name, attrs...)
# define libc_hidden_def(name)
# define libc_hidden_weak(name)
# define libc_hidden_ver(local, name)
@@ -562,6 +567,7 @@ for linking")
#if defined NOT_IN_libc && defined IS_IN_rtld
# define rtld_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define rtld_hidden_tls_proto(name, attrs...) hidden_tls_proto (name, ##attrs)
# define rtld_hidden_def(name) hidden_def (name)
# define rtld_hidden_weak(name) hidden_weak (name)
# define rtld_hidden_ver(local, name) hidden_ver (local, name)
@@ -570,6 +576,7 @@ for linking")
# define rtld_hidden_data_ver(local, name) hidden_data_ver (local, name)
#else
# define rtld_hidden_proto(name, attrs...)
+# define rtld_hidden_tls_proto(name, attrs...)
# define rtld_hidden_def(name)
# define rtld_hidden_weak(name)
# define rtld_hidden_ver(local, name)
@@ -580,6 +587,7 @@ for linking")
#if defined NOT_IN_libc && defined IS_IN_libm
# define libm_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libm_hidden_tls_proto(name, attrs...) hidden_tls_proto (name, ##attrs)
# define libm_hidden_def(name) hidden_def (name)
# define libm_hidden_weak(name) hidden_weak (name)
# define libm_hidden_ver(local, name) hidden_ver (local, name)
@@ -588,6 +596,7 @@ for linking")
# define libm_hidden_data_ver(local, name) hidden_data_ver (local, name)
#else
# define libm_hidden_proto(name, attrs...)
+# define libm_hidden_tls_proto(name, attrs...)
# define libm_hidden_def(name)
# define libm_hidden_weak(name)
# define libm_hidden_ver(local, name)
@@ -598,6 +607,8 @@ for linking")
#if defined NOT_IN_libc && defined IS_IN_libresolv
# define libresolv_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libresolv_hidden_tls_proto(name, attrs...) \
+ hidden_tls_proto (name, ##attrs)
# define libresolv_hidden_def(name) hidden_def (name)
# define libresolv_hidden_weak(name) hidden_weak (name)
# define libresolv_hidden_ver(local, name) hidden_ver (local, name)
@@ -606,6 +617,7 @@ for linking")
# define libresolv_hidden_data_ver(local, name) hidden_data_ver (local, name)
#else
# define libresolv_hidden_proto(name, attrs...)
+# define libresolv_hidden_tls_proto(name, attrs...)
# define libresolv_hidden_def(name)
# define libresolv_hidden_weak(name)
# define libresolv_hidden_ver(local, name)
@@ -616,6 +628,8 @@ for linking")
#if defined NOT_IN_libc && defined IS_IN_librt
# define librt_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define librt_hidden_tls_proto(name, attrs...) \
+ hidden_tls_proto (name, ##attrs)
# define librt_hidden_def(name) hidden_def (name)
# define librt_hidden_weak(name) hidden_weak (name)
# define librt_hidden_ver(local, name) hidden_ver (local, name)
@@ -624,6 +638,7 @@ for linking")
# define librt_hidden_data_ver(local, name) hidden_data_ver (local, name)
#else
# define librt_hidden_proto(name, attrs...)
+# define librt_hidden_tls_proto(name, attrs...)
# define librt_hidden_def(name)
# define librt_hidden_weak(name)
# define librt_hidden_ver(local, name)
@@ -634,6 +649,8 @@ for linking")
#if defined NOT_IN_libc && defined IS_IN_libdl
# define libdl_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libdl_hidden_tls_proto(name, attrs...) \
+ hidden_tls_proto (name, ##attrs)
# define libdl_hidden_def(name) hidden_def (name)
# define libdl_hidden_weak(name) hidden_weak (name)
# define libdl_hidden_ver(local, name) hidden_ver (local, name)
@@ -642,6 +659,7 @@ for linking")
# define libdl_hidden_data_ver(local, name) hidden_data_ver (local, name)
#else
# define libdl_hidden_proto(name, attrs...)
+# define libdl_hidden_tls_proto(name, attrs...)
# define libdl_hidden_def(name)
# define libdl_hidden_weak(name)
# define libdl_hidden_ver(local, name)
@@ -652,6 +670,8 @@ for linking")
#if defined NOT_IN_libc && defined IS_IN_libnss_files
# define libnss_files_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libnss_files_hidden_tls_proto(name, attrs...) \
+ hidden_tls_proto (name, ##attrs)
# define libnss_files_hidden_def(name) hidden_def (name)
# define libnss_files_hidden_weak(name) hidden_weak (name)
# define libnss_files_hidden_ver(local, name) hidden_ver (local, name)
@@ -660,6 +680,7 @@ for linking")
# define libnss_files_hidden_data_ver(local, name) hidden_data_ver(local, name)
#else
# define libnss_files_hidden_proto(name, attrs...)
+# define libnss_files_hidden_tls_proto(name, attrs...)
# define libnss_files_hidden_def(name)
# define libnss_files_hidden_weak(name)
# define libnss_files_hidden_ver(local, name)
@@ -670,6 +691,8 @@ for linking")
#if defined NOT_IN_libc && defined IS_IN_libnsl
# define libnsl_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libnsl_hidden_tls_proto(name, attrs...) \
+ hidden_tls_proto (name, ##attrs)
# define libnsl_hidden_def(name) hidden_def (name)
# define libnsl_hidden_weak(name) hidden_weak (name)
# define libnsl_hidden_ver(local, name) hidden_ver (local, name)
@@ -678,6 +701,7 @@ for linking")
# define libnsl_hidden_data_ver(local, name) hidden_data_ver (local, name)
#else
# define libnsl_hidden_proto(name, attrs...)
+# define libnsl_hidden_tls_proto(name, attrs...)
# define libnsl_hidden_def(name)
# define libnsl_hidden_weak(name)
# define libnsl_hidden_ver(local, name)
@@ -688,6 +712,8 @@ for linking")
#if defined NOT_IN_libc && defined IS_IN_libnss_nisplus
# define libnss_nisplus_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libnss_nisplus_hidden_tls_proto(name, attrs...) \
+ hidden_tls_proto (name, ##attrs)
# define libnss_nisplus_hidden_def(name) hidden_def (name)
# define libnss_nisplus_hidden_weak(name) hidden_weak (name)
# define libnss_nisplus_hidden_ver(local, name) hidden_ver (local, name)
@@ -696,6 +722,7 @@ for linking")
# define libnss_nisplus_hidden_data_ver(local, name) hidden_data_ver (local, name)
#else
# define libnss_nisplus_hidden_proto(name, attrs...)
+# define libnss_nisplus_hidden_tls_proto(name, attrs...)
# define libnss_nisplus_hidden_def(name)
# define libnss_nisplus_hidden_weak(name)
# define libnss_nisplus_hidden_ver(local, name)
@@ -714,6 +741,8 @@ for linking")
#if defined NOT_IN_libc && defined IS_IN_libutil
# define libutil_hidden_proto(name, attrs...) hidden_proto (name, ##attrs)
+# define libutil_hidden_tls_proto(name, attrs...) \
+ hidden_tls_proto (name, ##attrs)
# define libutil_hidden_def(name) hidden_def (name)
# define libutil_hidden_weak(name) hidden_weak (name)
# define libutil_hidden_ver(local, name) hidden_ver (local, name)
@@ -722,6 +751,7 @@ for linking")
# define libutil_hidden_data_ver(local, name) hidden_data_ver (local, name)
#else
# define libutil_hidden_proto(name, attrs...)
+# define libutil_hidden_tls_proto(name, attrs...)
# define libutil_hidden_def(name)
# define libutil_hidden_weak(name)
# define libutil_hidden_ver(local, name)
diff --git a/include/shlib-compat.h b/include/shlib-compat.h
index 979b5929e3..955c6aeea2 100644
--- a/include/shlib-compat.h
+++ b/include/shlib-compat.h
@@ -19,13 +19,9 @@
#ifndef _SHLIB_COMPAT_H
#define _SHLIB_COMPAT_H 1
-#if defined DO_VERSIONING
-/* Since there is just one set of .d files generated, we need to
- include this unconditionally to have the dependency noticed properly. */
-#include <abi-versions.h> /* header generated by abi-versions.awk */
-#endif
+#ifdef SHARED
-#if defined SHARED && defined DO_VERSIONING
+# include <abi-versions.h>
/* The file abi-versions.h (generated by scripts/abi-versions.awk) defines
symbols like `ABI_libm_GLIBC_2_0' for each version set in the source
diff --git a/include/stap-probe.h b/include/stap-probe.h
index 5f725562cb..e2963506aa 100644
--- a/include/stap-probe.h
+++ b/include/stap-probe.h
@@ -61,13 +61,14 @@
# ifndef __ASSEMBLER__
/* Evaluate all the arguments and verify that N matches their number. */
-# define LIBC_PROBE(name, n, ...) \
- do { \
- _Bool __libc_probe_args[] = { 0, ## __VA_ARGS__ }; \
- _Bool __libc_probe_verify_n[(sizeof __libc_probe_args / sizeof (_Bool)) \
- == n + 1 ? 1 : -1]; \
- (void) __libc_probe_verify_n; \
- } while (0)
+#define LIBC_PROBE(name, n, ...) STAP_PROBE##n (__VA_ARGS__)
+
+#define STAP_PROBE0()
+#define STAP_PROBE1(a1)
+#define STAP_PROBE2(a1, a2)
+#define STAP_PROBE3(a1, a2, a3)
+#define STAP_PROBE4(a1, a2, a3, a4)
+
# else
# define LIBC_PROBE(name, n, ...) /* Nothing. */
# endif
diff --git a/include/stdc-predef.h b/include/stdc-predef.h
index b9c9967d9d..f8cb2cb97a 100644
--- a/include/stdc-predef.h
+++ b/include/stdc-predef.h
@@ -26,9 +26,28 @@
explicitly includes a system header. GCC knows the name of this
header in order to preinclude it. */
-/* We do support the IEC 559 math functionality, real and complex. */
-#define __STDC_IEC_559__ 1
-#define __STDC_IEC_559_COMPLEX__ 1
+/* glibc's intent is to support the IEC 559 math functionality, real
+ and complex. If the GCC (4.9 and later) predefined macros
+ specifying compiler intent are available, use them to determine
+ whether the overall intent is to support these features; otherwise,
+ presume an older compiler has intent to support these features and
+ define these macros by default. */
+
+#ifdef __GCC_IEC_559
+# if __GCC_IEC_559 > 0
+# define __STDC_IEC_559__ 1
+# endif
+#else
+# define __STDC_IEC_559__ 1
+#endif
+
+#ifdef __GCC_IEC_559_COMPLEX
+# if __GCC_IEC_559_COMPLEX > 0
+# define __STDC_IEC_559_COMPLEX__ 1
+# endif
+#else
+# define __STDC_IEC_559_COMPLEX__ 1
+#endif
/* wchar_t uses ISO/IEC 10646 (2nd ed., published 2011-03-15) /
Unicode 6.0. */
diff --git a/include/string.h b/include/string.h
index d6d859491e..8323412240 100644
--- a/include/string.h
+++ b/include/string.h
@@ -90,6 +90,7 @@ extern char *__strsep_g (char **__stringp, const char *__delim);
libc_hidden_proto (__strsep_g)
libc_hidden_proto (strnlen)
libc_hidden_proto (memmem)
+libc_hidden_proto (__ffs)
libc_hidden_builtin_proto (memchr)
libc_hidden_builtin_proto (memcpy)
diff --git a/inet/inet_net.c b/inet/inet_net.c
index 68e232f3d3..5d61c75820 100644
--- a/inet/inet_net.c
+++ b/inet/inet_net.c
@@ -27,6 +27,24 @@
* SUCH DAMAGE.
*/
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)inet_network.c 8.1 (Berkeley) 6/4/93";
#endif /* LIBC_SCCS and not lint */
@@ -81,7 +99,9 @@ again:
*pp++ = val, cp++;
goto again;
}
- if (*cp && !isspace(*cp))
+ while (isspace(*cp))
+ cp++;
+ if (*cp)
return (INADDR_NONE);
if (pp >= parts + 4 || val > 0xff)
return (INADDR_NONE);
diff --git a/inet/netinet/in.h b/inet/netinet/in.h
index 89e3813d00..05c77e2310 100644
--- a/inet/netinet/in.h
+++ b/inet/netinet/in.h
@@ -26,13 +26,21 @@
__BEGIN_DECLS
+/* Internet address. */
+typedef uint32_t in_addr_t;
+struct in_addr
+ {
+ in_addr_t s_addr;
+ };
+
+/* Get system-specific definitions. */
+#include <bits/in.h>
+
/* Standard well-defined IP protocols. */
enum
{
IPPROTO_IP = 0, /* Dummy protocol for TCP. */
#define IPPROTO_IP IPPROTO_IP
- IPPROTO_HOPOPTS = 0, /* IPv6 Hop-by-Hop options. */
-#define IPPROTO_HOPOPTS IPPROTO_HOPOPTS
IPPROTO_ICMP = 1, /* Internet Control Message Protocol. */
#define IPPROTO_ICMP IPPROTO_ICMP
IPPROTO_IGMP = 2, /* Internet Group Management Protocol. */
@@ -55,10 +63,6 @@ enum
#define IPPROTO_DCCP IPPROTO_DCCP
IPPROTO_IPV6 = 41, /* IPv6 header. */
#define IPPROTO_IPV6 IPPROTO_IPV6
- IPPROTO_ROUTING = 43, /* IPv6 routing header. */
-#define IPPROTO_ROUTING IPPROTO_ROUTING
- IPPROTO_FRAGMENT = 44, /* IPv6 fragmentation header. */
-#define IPPROTO_FRAGMENT IPPROTO_FRAGMENT
IPPROTO_RSVP = 46, /* Reservation Protocol. */
#define IPPROTO_RSVP IPPROTO_RSVP
IPPROTO_GRE = 47, /* General Routing Encapsulation. */
@@ -67,14 +71,10 @@ enum
#define IPPROTO_ESP IPPROTO_ESP
IPPROTO_AH = 51, /* authentication header. */
#define IPPROTO_AH IPPROTO_AH
- IPPROTO_ICMPV6 = 58, /* ICMPv6. */
-#define IPPROTO_ICMPV6 IPPROTO_ICMPV6
- IPPROTO_NONE = 59, /* IPv6 no next header. */
-#define IPPROTO_NONE IPPROTO_NONE
- IPPROTO_DSTOPTS = 60, /* IPv6 destination options. */
-#define IPPROTO_DSTOPTS IPPROTO_DSTOPTS
IPPROTO_MTP = 92, /* Multicast Transport Protocol. */
#define IPPROTO_MTP IPPROTO_MTP
+ IPPROTO_BEETPH = 94, /* IP option pseudo header for BEET. */
+#define IPPROTO_BEETPH IPPROTO_BEETPH
IPPROTO_ENCAP = 98, /* Encapsulation Header. */
#define IPPROTO_ENCAP IPPROTO_ENCAP
IPPROTO_PIM = 103, /* Protocol Independent Multicast. */
@@ -90,6 +90,28 @@ enum
IPPROTO_MAX
};
+/* If __USER_KERNEL_IPV6_DEFS is defined then the user has included the kernel
+ network headers first and we should use those ABI-identical definitions
+ instead of our own. */
+#ifndef __USE_KERNEL_IPV6_DEFS
+enum
+ {
+ IPPROTO_HOPOPTS = 0, /* IPv6 Hop-by-Hop options. */
+#define IPPROTO_HOPOPTS IPPROTO_HOPOPTS
+ IPPROTO_ROUTING = 43, /* IPv6 routing header. */
+#define IPPROTO_ROUTING IPPROTO_ROUTING
+ IPPROTO_FRAGMENT = 44, /* IPv6 fragmentation header. */
+#define IPPROTO_FRAGMENT IPPROTO_FRAGMENT
+ IPPROTO_ICMPV6 = 58, /* ICMPv6. */
+#define IPPROTO_ICMPV6 IPPROTO_ICMPV6
+ IPPROTO_NONE = 59, /* IPv6 no next header. */
+#define IPPROTO_NONE IPPROTO_NONE
+ IPPROTO_DSTOPTS = 60, /* IPv6 destination options. */
+#define IPPROTO_DSTOPTS IPPROTO_DSTOPTS
+ IPPROTO_MH = 135, /* IPv6 mobility header. */
+#define IPPROTO_MH IPPROTO_MH
+ };
+#endif /* !__USE_KERNEL_IPV6_DEFS */
/* Type to represent a port. */
typedef uint16_t in_port_t;
@@ -134,15 +156,6 @@ enum
IPPORT_USERRESERVED = 5000
};
-
-/* Internet address. */
-typedef uint32_t in_addr_t;
-struct in_addr
- {
- in_addr_t s_addr;
- };
-
-
/* Definitions of the bits in an Internet address integer.
On subnets, host and network parts are found according to
@@ -191,7 +204,7 @@ struct in_addr
#define INADDR_ALLRTRS_GROUP ((in_addr_t) 0xe0000002) /* 224.0.0.2 */
#define INADDR_MAX_LOCAL_GROUP ((in_addr_t) 0xe00000ff) /* 224.0.0.255 */
-
+#ifndef __USE_KERNEL_IPV6_DEFS
/* IPv6 address */
struct in6_addr
{
@@ -209,6 +222,7 @@ struct in6_addr
# define s6_addr32 __in6_u.__u6_addr32
#endif
};
+#endif /* !__USE_KERNEL_IPV6_DEFS */
extern const struct in6_addr in6addr_any; /* :: */
extern const struct in6_addr in6addr_loopback; /* ::1 */
@@ -233,6 +247,7 @@ struct sockaddr_in
sizeof (struct in_addr)];
};
+#ifndef __USE_KERNEL_IPV6_DEFS
/* Ditto, for IPv6. */
struct sockaddr_in6
{
@@ -242,7 +257,7 @@ struct sockaddr_in6
struct in6_addr sin6_addr; /* IPv6 address */
uint32_t sin6_scope_id; /* IPv6 scope-id */
};
-
+#endif /* !__USE_KERNEL_IPV6_DEFS */
#if defined __USE_MISC || defined __USE_GNU
/* IPv4 multicast request. */
@@ -268,7 +283,7 @@ struct ip_mreq_source
};
#endif
-
+#ifndef __USE_KERNEL_IPV6_DEFS
/* Likewise, for IPv6. */
struct ipv6_mreq
{
@@ -278,7 +293,7 @@ struct ipv6_mreq
/* local interface */
unsigned int ipv6mr_interface;
};
-
+#endif /* !__USE_KERNEL_IPV6_DEFS */
#if defined __USE_MISC || defined __USE_GNU
/* Multicast group request. */
@@ -349,10 +364,6 @@ struct group_filter
* sizeof (struct sockaddr_storage)))
#endif
-
-/* Get system-specific definitions. */
-#include <bits/in.h>
-
/* Functions to convert between host and network byte order.
Please note that these functions normally take `unsigned long int' or
diff --git a/inet/tst-network.c b/inet/tst-network.c
index 6b79e62df6..2eefb0c04a 100644
--- a/inet/tst-network.c
+++ b/inet/tst-network.c
@@ -38,6 +38,7 @@ struct
{"0x0", 0},
/* Now some invalid addresses. */
{"0x", INADDR_NONE},
+ {"1 bar", INADDR_NONE}, /* Bug 15277. */
{"141.30.225.2800", INADDR_NONE},
{"141.76.1.1.1", INADDR_NONE},
{"141.76.1.11.", INADDR_NONE},
diff --git a/libidn/ChangeLog b/libidn/ChangeLog
index 46ebd1fa95..e8130bb5b4 100644
--- a/libidn/ChangeLog
+++ b/libidn/ChangeLog
@@ -1,3 +1,9 @@
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * configure.in: Moved to ...
+ * configure.ac: ... here.
+ * configure: Regenerated.
+
2013-08-29 Ondřej Bílka <neleai@seznam.cz>
* stringprep.c: Fix typos.
diff --git a/libidn/configure b/libidn/configure
index 39ed163520..8195663d96 100644
--- a/libidn/configure
+++ b/libidn/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
libc_add_on_canonical=
diff --git a/libidn/configure.in b/libidn/configure.ac
index 16740ffb92..16740ffb92 100644
--- a/libidn/configure.in
+++ b/libidn/configure.ac
diff --git a/libio/Makefile b/libio/Makefile
index e15cd40911..b2f7627434 100644
--- a/libio/Makefile
+++ b/libio/Makefile
@@ -70,7 +70,7 @@ test-srcs = test-freopen
all: # Make this the default target; it will be defined in Rules.
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
routines += oldiofopen oldiofdopen oldiofclose oldiopopen oldpclose \
oldtmpfile oldiofgetpos oldiofgetpos64 oldiofsetpos \
oldiofsetpos64
@@ -165,7 +165,7 @@ generated = tst-fopenloc.mtrace tst-fopenloc.check
aux := fileops genops stdfiles stdio strops
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
aux += oldfileops oldstdfiles
endif
diff --git a/libio/fileops.c b/libio/fileops.c
index e92f85b243..c58e860c04 100644
--- a/libio/fileops.c
+++ b/libio/fileops.c
@@ -1245,13 +1245,12 @@ _IO_new_file_write (f, data, n)
_IO_ssize_t n;
{
_IO_ssize_t to_do = n;
- _IO_ssize_t count = 0;
while (to_do > 0)
{
- count = (__builtin_expect (f->_flags2
- & _IO_FLAGS2_NOTCANCEL, 0)
- ? write_not_cancel (f->_fileno, data, to_do)
- : write (f->_fileno, data, to_do));
+ _IO_ssize_t count = (__builtin_expect (f->_flags2
+ & _IO_FLAGS2_NOTCANCEL, 0)
+ ? write_not_cancel (f->_fileno, data, to_do)
+ : write (f->_fileno, data, to_do));
if (count < 0)
{
f->_flags |= _IO_ERR_SEEN;
@@ -1263,7 +1262,7 @@ _IO_new_file_write (f, data, n)
n -= to_do;
if (f->_offset >= 0)
f->_offset += n;
- return count < 0 ? count : n;
+ return n;
}
_IO_size_t
@@ -1323,13 +1322,11 @@ _IO_new_file_xsputn (f, data, n)
_IO_size_t block_size, do_write;
/* Next flush the (full) buffer. */
if (_IO_OVERFLOW (f, EOF) == EOF)
- /* If nothing else has to be written or nothing has been written, we
- must not signal the caller that the call was even partially
- successful. */
- return (to_do == 0 || to_do == n) ? EOF : n - to_do;
+ /* If nothing else has to be written we must not signal the
+ caller that everything has been written. */
+ return to_do == 0 ? EOF : n - to_do;
- /* Try to maintain alignment: write a whole number of blocks.
- dont_write is what gets left over. */
+ /* Try to maintain alignment: write a whole number of blocks. */
block_size = f->_IO_buf_end - f->_IO_buf_base;
do_write = to_do - (block_size >= 128 ? to_do % block_size : 0);
diff --git a/libio/iofwrite.c b/libio/iofwrite.c
index 81596a64c4..66542eaea5 100644
--- a/libio/iofwrite.c
+++ b/libio/iofwrite.c
@@ -42,12 +42,12 @@ _IO_fwrite (buf, size, count, fp)
if (_IO_vtable_offset (fp) != 0 || _IO_fwide (fp, -1) == -1)
written = _IO_sputn (fp, (const char *) buf, request);
_IO_release_lock (fp);
- /* We are guaranteed to have written all of the input, none of it, or
- some of it. */
- if (written == request)
+ /* We have written all of the input in case the return value indicates
+ this or EOF is returned. The latter is a special case where we
+ simply did not manage to flush the buffer. But the data is in the
+ buffer and therefore written as far as fwrite is concerned. */
+ if (written == request || written == EOF)
return count;
- else if (written == EOF)
- return 0;
else
return written / size;
}
diff --git a/libio/iofwrite_u.c b/libio/iofwrite_u.c
index 4a9d6caa04..18dc6d032d 100644
--- a/libio/iofwrite_u.c
+++ b/libio/iofwrite_u.c
@@ -44,12 +44,12 @@ fwrite_unlocked (buf, size, count, fp)
if (_IO_fwide (fp, -1) == -1)
{
written = _IO_sputn (fp, (const char *) buf, request);
- /* We are guaranteed to have written all of the input, none of it, or
- some of it. */
- if (written == request)
+ /* We have written all of the input in case the return value indicates
+ this or EOF is returned. The latter is a special case where we
+ simply did not manage to flush the buffer. But the data is in the
+ buffer and therefore written as far as fwrite is concerned. */
+ if (written == request || written == EOF)
return count;
- else if (written == EOF)
- return 0;
}
return written / size;
diff --git a/libio/iopadn.c b/libio/iopadn.c
index cc93c0f7ac..5ebbcf4551 100644
--- a/libio/iopadn.c
+++ b/libio/iopadn.c
@@ -59,7 +59,7 @@ _IO_padn (fp, pad, count)
w = _IO_sputn (fp, padptr, PADSIZE);
written += w;
if (w != PADSIZE)
- return w == EOF ? w : written;
+ return written;
}
if (i > 0)
diff --git a/libio/iowpadn.c b/libio/iowpadn.c
index d94db71f2b..5600f3711c 100644
--- a/libio/iowpadn.c
+++ b/libio/iowpadn.c
@@ -65,7 +65,7 @@ _IO_wpadn (fp, pad, count)
w = _IO_sputn (fp, (char *) padptr, PADSIZE);
written += w;
if (w != PADSIZE)
- return w == EOF ? w : written;
+ return written;
}
if (i > 0)
diff --git a/libio/memstream.c b/libio/memstream.c
index 34534e2f94..3cb1bd7057 100644
--- a/libio/memstream.c
+++ b/libio/memstream.c
@@ -84,7 +84,10 @@ open_memstream (bufloc, sizeloc)
buf = calloc (1, _IO_BUFSIZ);
if (buf == NULL)
- return NULL;
+ {
+ free (new_f);
+ return NULL;
+ }
_IO_init (&new_f->fp._sf._sbf._f, 0);
_IO_JUMPS ((struct _IO_FILE_plus *) &new_f->fp._sf._sbf) = &_IO_mem_jumps;
_IO_str_init_static_internal (&new_f->fp._sf, buf, _IO_BUFSIZ, buf);
diff --git a/libio/tst-widetext.input b/libio/tst-widetext.input
index bef07cef3d..b4382c0008 100644
--- a/libio/tst-widetext.input
+++ b/libio/tst-widetext.input
@@ -126,7 +126,7 @@ Gujarati (U+0A80-U+0AFF):
઀◌àªâ—Œàª‚ઃ઄અઆઇઈઉઊઋઌàªàªŽàªàªàª‘઒ઓઔકખગઘઙચછજàªàªžàªŸàª àª¡àª¢àª£àª¤àª¥àª¦àª§àª¨àª©àªªàª«àª¬àª­àª®àª¯àª°àª±àª²àª³àª´àªµàª¶àª·àª¸àª¹àªºàª»â—Œàª¼àª½àª¾àª¿
ી◌à«â—Œà«‚◌ૃ◌ૄ◌ૅ૆◌ે◌ૈૉ૊ોૌ◌à«à«Žà«à«à«‘૒૓૔૕૖૗૘૙૚૛૜à«à«žà«Ÿà« à«¡à«¢à«£à«¤à«¥à«¦à«§à«¨à«©à«ªà««à«¬à«­à«®à«¯à«°à«±à«²à«³à«´à«µà«¶à«·à«¸à«¹à«ºà«»à«¼à«½à«¾à«¿
-Oriya (U+0B00-U+0B7F):
+Odia (U+0B00-U+0B7F):
଀◌à¬à¬‚ଃ଄ଅଆଇଈଉଊଋଌà¬à¬Žà¬à¬à¬‘଒ଓଔକଖଗଘଙଚଛଜà¬à¬žà¬Ÿà¬ à¬¡à¬¢à¬£à¬¤à¬¥à¬¦à¬§à¬¨à¬©à¬ªà¬«à¬¬à¬­à¬®à¬¯à¬°à¬±à¬²à¬³à¬´à¬µà¬¶à¬·à¬¸à¬¹à¬ºà¬»â—Œà¬¼à¬½à¬¾â—Œà¬¿
ୀ◌à­â—Œà­‚◌ୃୄ୅୆େୈ୉୊ୋୌ◌à­à­Žà­à­à­‘୒୓୔୕◌ୖୗ୘୙୚୛ଡ଼à­à­žà­Ÿà­ à­¡à­¢à­£à­¤à­¥à­¦à­§à­¨à­©à­ªà­«à­¬à­­à­®à­¯à­°à­±à­²à­³à­´à­µà­¶à­·à­¸à­¹à­ºà­»à­¼à­½à­¾à­¿
diff --git a/libio/wmemstream.c b/libio/wmemstream.c
index 65738d4d7f..fd7fe44c4c 100644
--- a/libio/wmemstream.c
+++ b/libio/wmemstream.c
@@ -85,8 +85,10 @@ open_wmemstream (bufloc, sizeloc)
buf = calloc (1, _IO_BUFSIZ);
if (buf == NULL)
- return NULL;
-
+ {
+ free (new_f);
+ return NULL;
+ }
_IO_no_init (&new_f->fp._sf._sbf._f, 0, 0, &new_f->wd, &_IO_wmem_jumps);
_IO_fwide (&new_f->fp._sf._sbf._f, 1);
_IO_wstr_init_static (&new_f->fp._sf._sbf._f, buf,
diff --git a/locale/C-address.c b/locale/C-address.c
index 060a956f36..fe6e69e8ba 100644
--- a/locale/C-address.c
+++ b/locale/C-address.c
@@ -38,7 +38,7 @@ const struct __locale_data _nl_C_LC_ADDRESS attribute_hidden =
{ .string = "" },
{ .string = "" },
{ .string = "" },
- { .string = "" },
+ { .word = 0 },
{ .string = "" },
{ .string = "" },
{ .string = "" },
diff --git a/locale/C-monetary.c b/locale/C-monetary.c
index b4ffb16e61..9c36c761fe 100644
--- a/locale/C-monetary.c
+++ b/locale/C-monetary.c
@@ -21,11 +21,8 @@
/* This table's entries are taken from POSIX.2 Table 2-9
``LC_MONETARY Category Definition in the POSIX Locale'',
with additions from ISO 14652, section 4.4. */
-#ifdef __CHAR_UNSIGNED__
static const char not_available[] = "\377";
-#else
-static const char not_available[] = "\177";
-#endif
+static const uint32_t conversion_rate[] = { 1, 1 };
const struct __locale_data _nl_C_LC_MONETARY attribute_hidden =
{
@@ -78,7 +75,7 @@ const struct __locale_data _nl_C_LC_MONETARY attribute_hidden =
{ .word = 99991231 },
{ .word = 10101 },
{ .word = 99991231 },
- { .word = 1 },
+ { .string = (const char *) conversion_rate },
{ .word = (unsigned int) L'\0' },
{ .word = (unsigned int) L'\0' },
{ .string = _nl_C_codeset }
diff --git a/locale/categories.def b/locale/categories.def
index 8c2537842a..e1172e99c5 100644
--- a/locale/categories.def
+++ b/locale/categories.def
@@ -156,6 +156,7 @@ DEFINE_CATEGORY
DEFINE_ELEMENT (N_SEP_BY_SPACE, "n_sep_by_space", std, byte, 0, 2)
DEFINE_ELEMENT (P_SIGN_POSN, "p_sign_posn", std, byte, 0, 4)
DEFINE_ELEMENT (N_SIGN_POSN, "n_sign_posn", std, byte, 0, 4)
+ DEFINE_ELEMENT (_NL_MONETARY_CRNCYSTR, "crncystr", std, string)
DEFINE_ELEMENT (__INT_P_CS_PRECEDES, "int_p_cs_precedes", std, byte, 0, 1)
DEFINE_ELEMENT (__INT_P_SEP_BY_SPACE, "int_p_sep_by_space", std, byte, 0, 2)
DEFINE_ELEMENT (__INT_N_CS_PRECEDES, "int_n_cs_precedes", std, byte, 0, 1)
diff --git a/locale/hashval.h b/locale/hashval.h
index 737162f6b8..88e7839386 100644
--- a/locale/hashval.h
+++ b/locale/hashval.h
@@ -37,7 +37,7 @@ compute_hashval (const void *key, size_t keylen)
while (cnt < keylen)
{
hval = (hval << 9) | (hval >> (sizeof hval * CHAR_BIT - 9));
- hval += (hashval_t) *(((char *) key) + cnt++);
+ hval += (hashval_t) ((const unsigned char *) key)[cnt++];
}
return hval != 0 ? hval : ~((hashval_t) 0);
}
diff --git a/locale/iso-3166.def b/locale/iso-3166.def
index a9e1422cba..52997b4bf0 100644
--- a/locale/iso-3166.def
+++ b/locale/iso-3166.def
@@ -33,6 +33,7 @@ DEFINE_COUNTRY_CODE ("BENIN", BJ, BEN, 204)
DEFINE_COUNTRY_CODE ("BERMUDA", BM, BMU, 60)
DEFINE_COUNTRY_CODE ("BHUTAN", BT, BTN, 64)
DEFINE_COUNTRY_CODE ("BOLIVIA", BO, BOL, 68)
+DEFINE_COUNTRY_CODE ("BONAIRE, SINT EUSTATIUS AND SABA", BQ, BES, 535)
DEFINE_COUNTRY_CODE ("BOSNIA AND HERZEGOVINA", BA, BIH, 70)
DEFINE_COUNTRY_CODE ("BOTSWANA", BW, BWA, 72)
DEFINE_COUNTRY_CODE ("BOUVET ISLAND", BV, BVT, 74)
@@ -62,13 +63,13 @@ DEFINE_COUNTRY_CODE ("COSTA RICA", CR, CRI, 188)
DEFINE_COUNTRY_CODE ("COTE D'IVOIRE", CI, CIV, 384)
DEFINE_COUNTRY_CODE ("CROATIA", HR, HRV, 191)
DEFINE_COUNTRY_CODE ("CUBA", CU, CUB, 192)
+DEFINE_COUNTRY_CODE ("CURACAO", CW, CUW, 531)
DEFINE_COUNTRY_CODE ("CYPRUS", CY, CYP, 196)
DEFINE_COUNTRY_CODE ("CZECH REPUBLIC", CZ, CZE, 203)
DEFINE_COUNTRY_CODE ("DENMARK", DK, DNK, 208)
DEFINE_COUNTRY_CODE ("DJIBOUTI", DJ, DJI, 262)
DEFINE_COUNTRY_CODE ("DOMINICA", DM, DMA, 212)
DEFINE_COUNTRY_CODE ("DOMINICAN REPUBLIC", DO, DOM, 214)
-DEFINE_COUNTRY_CODE ("EAST TIMOR", TP, TMP, 626)
DEFINE_COUNTRY_CODE ("ECUADOR", EC, ECU, 218)
DEFINE_COUNTRY_CODE ("EGYPT", EG, EGY, 818)
DEFINE_COUNTRY_CODE ("EL SALVADOR", SV, SLV, 222)
@@ -175,7 +176,7 @@ DEFINE_COUNTRY_CODE ("NORWAY", NO, NOR, 578)
DEFINE_COUNTRY_CODE ("OMAN", OM, OMN, 512)
DEFINE_COUNTRY_CODE ("PAKISTAN", PK, PAK, 586)
DEFINE_COUNTRY_CODE ("PALAU", PW, PLW, 585)
-DEFINE_COUNTRY_CODE ("PALESTINIAN TERRITORY, OCCUPIED", PS, PSE, 275)
+DEFINE_COUNTRY_CODE ("PALESTINE, STATE OF", PS, PSE, 275)
DEFINE_COUNTRY_CODE ("PANAMA", PA, PAN, 591)
DEFINE_COUNTRY_CODE ("PAPUA NEW GUINEA", PG, PNG, 598)
DEFINE_COUNTRY_CODE ("PARAGUAY", PY, PRY, 600)
@@ -190,9 +191,11 @@ DEFINE_COUNTRY_CODE ("REUNION", RE, REU, 638)
DEFINE_COUNTRY_CODE ("ROMANIA", RO, ROU, 642)
DEFINE_COUNTRY_CODE ("RUSSIAN FEDERATION", RU, RUS, 643)
DEFINE_COUNTRY_CODE ("RWANDA", RW, RWA, 646)
+DEFINE_COUNTRY_CODE ("SAINT BARTHELEMY", BL, BLM, 652)
DEFINE_COUNTRY_CODE ("SAINT HELENA", SH, SHN, 654)
DEFINE_COUNTRY_CODE ("SAINT KITTS AND NEVIS", KN, KNA, 659)
DEFINE_COUNTRY_CODE ("SAINT LUCIA", LC, LCA, 662)
+DEFINE_COUNTRY_CODE ("SAINT MARTIN (FRENCH PART)", MF, MAF, 663)
DEFINE_COUNTRY_CODE ("SAINT PIERRE AND MIQUELON", PM, SPM, 666)
DEFINE_COUNTRY_CODE ("SAINT VINCENT AND THE GRENADINES", VC, VCT, 670)
DEFINE_COUNTRY_CODE ("SAMOA", WS, WSM, 882)
@@ -204,15 +207,17 @@ DEFINE_COUNTRY_CODE ("SERBIA", RS, SRB, 688)
DEFINE_COUNTRY_CODE ("SEYCHELLES", SC, SYC, 690)
DEFINE_COUNTRY_CODE ("SIERRA LEONE", SL, SLE, 694)
DEFINE_COUNTRY_CODE ("SINGAPORE", SG, SGP, 702)
+DEFINE_COUNTRY_CODE ("SINT MAARTEN (DUTCH PART)", SX, SXM, 534)
DEFINE_COUNTRY_CODE ("SLOVAKIA", SK, SVK, 703)
DEFINE_COUNTRY_CODE ("SLOVENIA", SI, SVN, 705)
DEFINE_COUNTRY_CODE ("SOLOMON ISLANDS", SB, SLB, 90)
DEFINE_COUNTRY_CODE ("SOMALIA", SO, SOM, 706)
DEFINE_COUNTRY_CODE ("SOUTH AFRICA", ZA, ZAF, 710)
DEFINE_COUNTRY_CODE ("SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS", GS, SGS, 239)
+DEFINE_COUNTRY_CODE ("SOUTH SUDAN", SS, SSD, 728)
DEFINE_COUNTRY_CODE ("SPAIN", ES, ESP, 724)
DEFINE_COUNTRY_CODE ("SRI LANKA", LK, LKA, 144)
-DEFINE_COUNTRY_CODE ("SUDAN", SD, SDN, 736)
+DEFINE_COUNTRY_CODE ("SUDAN", SD, SDN, 729)
DEFINE_COUNTRY_CODE ("SURINAME", SR, SUR, 740)
DEFINE_COUNTRY_CODE ("SVALBARD AND JAN MAYEN", SJ, SJM, 744)
DEFINE_COUNTRY_CODE ("SWAZILAND", SZ, SWZ, 748)
@@ -223,6 +228,7 @@ DEFINE_COUNTRY_CODE ("TAIWAN, PROVINCE OF CHINA", TW, TWN, 158)
DEFINE_COUNTRY_CODE ("TAJIKISTAN", TJ, TJK, 762)
DEFINE_COUNTRY_CODE ("TANZANIA, UNITED REPUBLIC OF", TZ, TZA, 834)
DEFINE_COUNTRY_CODE ("THAILAND", TH, THA, 764)
+DEFINE_COUNTRY_CODE ("TIMOR-LESTE", TL, TLS, 626)
DEFINE_COUNTRY_CODE ("TOGO", TG, TGO, 768)
DEFINE_COUNTRY_CODE ("TOKELAU", TK, TKL, 772)
DEFINE_COUNTRY_CODE ("TONGA", TO, TON, 776)
diff --git a/locale/iso-4217.def b/locale/iso-4217.def
index ee0133959c..bcc170bfb3 100644
--- a/locale/iso-4217.def
+++ b/locale/iso-4217.def
@@ -17,7 +17,7 @@ DEFINE_INT_CURR("AOA") /* Angolan Kwanza */
DEFINE_INT_CURR("ARS") /* Argentine Peso */
DEFINE_INT_CURR("AUD") /* Australian Dollar */
DEFINE_INT_CURR("AWG") /* Aruba Guilder */
-DEFINE_INT_CURR("AZM") /* Azerbaijan Manat */
+DEFINE_INT_CURR("AZN") /* Azerbaijan Manat */
DEFINE_INT_CURR("BAM") /* Bosnian and Herzegovina Convertible Mark */
DEFINE_INT_CURR("BBD") /* Barbados Dollar */
DEFINE_INT_CURR("BDT") /* Bangladesh Taka */
@@ -27,7 +27,7 @@ DEFINE_INT_CURR("BIF") /* Burundi Franc */
DEFINE_INT_CURR("BMD") /* Burmudian Dollar */
DEFINE_INT_CURR("BND") /* Brunei Dollar */
DEFINE_INT_CURR("BOB") /* Bolivian Boliviano */
-DEFINE_INT_CURR("BRL") /* Brazil Cruzeiro */
+DEFINE_INT_CURR("BRL") /* Brazil Real */
DEFINE_INT_CURR("BSD") /* Bahamas Dollar */
DEFINE_INT_CURR("BTN") /* Bhutan Ngultrum */
DEFINE_INT_CURR("BWP") /* Botswana Pula */
@@ -57,7 +57,7 @@ DEFINE_INT_CURR("FJD") /* Fiji Dollar */
DEFINE_INT_CURR("FKP") /* Falkland Islands Pound (Malvinas) */
DEFINE_INT_CURR("GBP") /* British Pound */
DEFINE_INT_CURR("GEL") /* Georgia Lari */
-DEFINE_INT_CURR("GHC") /* Ghana Cedi */
+DEFINE_INT_CURR("GHS") /* Ghana Cedi */
DEFINE_INT_CURR("GIP") /* Gibraltar Pound */
DEFINE_INT_CURR("GMD") /* Gambian Dalasi */
DEFINE_INT_CURR("GNF") /* Guinea Franc */
@@ -70,12 +70,10 @@ DEFINE_INT_CURR("HTG") /* Haiti Gourde */
DEFINE_INT_CURR("HUF") /* Hungarian Forint */
DEFINE_INT_CURR("IDR") /* Indonesia Rupiah */
DEFINE_INT_CURR("ILS") /* Israeli Shekel */
-DEFINE_INT_CURR("IMP") /* Isle of Man Pounds */
DEFINE_INT_CURR("INR") /* Indian Rupee (Bhutan) */
DEFINE_INT_CURR("IQD") /* Iraqi Dinar */
DEFINE_INT_CURR("IRR") /* Iranian Rial */
DEFINE_INT_CURR("ISK") /* Iceland Krona */
-DEFINE_INT_CURR("JEP") /* Jersey Pound */
DEFINE_INT_CURR("JMD") /* Jamaican Dollar */
DEFINE_INT_CURR("JOD") /* Jordanian Dinar */
DEFINE_INT_CURR("JPY") /* Japanese Yen */
@@ -106,11 +104,11 @@ DEFINE_INT_CURR("MOP") /* Macau Pataca */
DEFINE_INT_CURR("MRO") /* Mauritania Ouguiya */
DEFINE_INT_CURR("MTL") /* Maltese Lira */
DEFINE_INT_CURR("MUR") /* Mauritius Rupee */
-DEFINE_INT_CURR("MVR") /* Maldives Rupee */
+DEFINE_INT_CURR("MVR") /* Maldives Rufiyaa */
DEFINE_INT_CURR("MWK") /* Malawi Kwacha */
DEFINE_INT_CURR("MXN") /* Mexican Peso */
DEFINE_INT_CURR("MYR") /* Malaysian Ringgit */
-DEFINE_INT_CURR("MZM") /* Mozambique Metical */
+DEFINE_INT_CURR("MZN") /* Mozambique Metical */
DEFINE_INT_CURR("NAD") /* Namibia Dollar */
DEFINE_INT_CURR("NGN") /* Nigeria Naira */
DEFINE_INT_CURR("NIO") /* Nicaragua Cordoba Oro */
@@ -126,7 +124,6 @@ DEFINE_INT_CURR("PKR") /* Pakistan Rupee */
DEFINE_INT_CURR("PLN") /* Polish Zloty */
DEFINE_INT_CURR("PYG") /* Paraguay Guarani */
DEFINE_INT_CURR("QAR") /* Qatar Rial */
-DEFINE_INT_CURR("ROL") /* Romanian Leu */
DEFINE_INT_CURR("RON") /* Romanian New Leu */
DEFINE_INT_CURR("RSD") /* Serbian Dinars */
DEFINE_INT_CURR("RUB") /* Russian Ruble */
@@ -134,16 +131,13 @@ DEFINE_INT_CURR("RWF") /* Rwanda Franc */
DEFINE_INT_CURR("SAR") /* Saudi Arabia Riyal */
DEFINE_INT_CURR("SBD") /* Solomon Islands Dollar */
DEFINE_INT_CURR("SCR") /* Seychelles Rupee */
-DEFINE_INT_CURR("SDD") /* Sudanese Dinars */
+DEFINE_INT_CURR("SDG") /* Sudanese Pound */
DEFINE_INT_CURR("SEK") /* Swedish Krona */
DEFINE_INT_CURR("SGD") /* Singapore Dollar */
DEFINE_INT_CURR("SHP") /* St. Helena Pound */
-DEFINE_INT_CURR("SIT") /* Slovenian Tolar */
-DEFINE_INT_CURR("SKK") /* Slovakian Koruna */
DEFINE_INT_CURR("SLL") /* Sierra Leone Leone */
DEFINE_INT_CURR("SOS") /* Somalia Schilling */
-DEFINE_INT_CURR("SPL") /* Seborga Luigini */
-DEFINE_INT_CURR("SRG") /* Suriname Guilder */
+DEFINE_INT_CURR("SRD") /* Suriname Dollar */
DEFINE_INT_CURR("STD") /* Sao Tome and Principe Dobra */
DEFINE_INT_CURR("SVC") /* El Salvador Colon */
DEFINE_INT_CURR("SYP") /* Syrian Arab Republic Pound */
@@ -155,7 +149,6 @@ DEFINE_INT_CURR("TND") /* Tunisian Dinar */
DEFINE_INT_CURR("TOP") /* Tonga Pa'Anga */
DEFINE_INT_CURR("TRY") /* New Turkish Lira */
DEFINE_INT_CURR("TTD") /* Trinidad and Tobago */
-DEFINE_INT_CURR("TVD") /* Tuvalu Dollars */
DEFINE_INT_CURR("TWD") /* Taiwan, Province of China Dollar */
DEFINE_INT_CURR("TZS") /* United Republic of Tanzania Shilling */
DEFINE_INT_CURR("UAH") /* Ukraine Hryvna */
@@ -163,13 +156,12 @@ DEFINE_INT_CURR("UGX") /* Ugandan Shilling */
DEFINE_INT_CURR("USD") /* United States Dollar */
DEFINE_INT_CURR("UYU") /* Uruguay Peso Uruguayo */
DEFINE_INT_CURR("UZS") /* Uzbekistan Sum */
-DEFINE_INT_CURR("VEB") /* Venezuelan Bolivar */
+DEFINE_INT_CURR("VEF") /* Venezuelan Bolivar Fuerte */
DEFINE_INT_CURR("VND") /* Viet Nam Dong */
DEFINE_INT_CURR("VUV") /* Vanuatu Vatu */
DEFINE_INT_CURR("WST") /* Samoa Tala */
DEFINE_INT_CURR("XAF") /* Central African Franc (United Republic of Cameroon, Central African Republic, Chad, Congo, Gabon) */
DEFINE_INT_CURR("XCD") /* East Caribbean Dollar (Antiqua, Dominica, Grenada, Montserrat, St. Kitts-Nevis-Anguilla, Saint Lucia, Saint Vincent and the Grenadines) */
-DEFINE_INT_CURR("XDR") /* International Monetary Fund */
DEFINE_INT_CURR("XOF") /* West African Franc (Benin, Ivory Coast, Niger, Senegal, Togo, Upper Volta) */
DEFINE_INT_CURR("XPF") /* French polynesia, New Caledonia, Wallis and Futuna Islands */
DEFINE_INT_CURR("YER") /* Yemeni Rial */
diff --git a/locale/iso-639.def b/locale/iso-639.def
index 50b5a52f57..994792e085 100644
--- a/locale/iso-639.def
+++ b/locale/iso-639.def
@@ -46,6 +46,7 @@ DEFINE_LANGUAGE_CODE3 ("Austronesian (Other)", map, map)
DEFINE_LANGUAGE_CODE ("Avaric", av, ava, ava)
DEFINE_LANGUAGE_CODE ("Avestan", ae, ave, ave)
DEFINE_LANGUAGE_CODE3 ("Awadhi", awa, awa)
+DEFINE_LANGUAGE_CODE ("Aymara, Southern", ay, ayc, ayc)
DEFINE_LANGUAGE_CODE ("Aymara", ay, aym, aym)
DEFINE_LANGUAGE_CODE ("Azerbaijani", az, aze, aze)
DEFINE_LANGUAGE_CODE3 ("Balinese", ban, ban)
@@ -85,6 +86,7 @@ DEFINE_LANGUAGE_CODE3 ("Caucasian (Other)", cau, cau)
DEFINE_LANGUAGE_CODE3 ("Cebuano", ceb, ceb)
DEFINE_LANGUAGE_CODE3 ("Celtic (Other)", cel, cel)
DEFINE_LANGUAGE_CODE3 ("Central American Indian (Other)", cai, cai)
+DEFINE_LANGUAGE_CODE3 ("Central Nahuatl", nhn, nhn)
DEFINE_LANGUAGE_CODE3 ("Central Sama", sml, sml)
DEFINE_LANGUAGE_CODE3 ("Chagatai", chg, chg)
DEFINE_LANGUAGE_CODE3 ("Chamic languages", cmc, cmc)
@@ -95,6 +97,7 @@ DEFINE_LANGUAGE_CODE3 ("Cheyenne", chy, chy)
DEFINE_LANGUAGE_CODE2 ("Chhattisgarhi", hne) /* ISO 639-3 */
DEFINE_LANGUAGE_CODE3 ("Chibcha", chb, chb)
DEFINE_LANGUAGE_CODE ("Chichewa; Chewa; Nyanja", ny, nya, nya)
+DEFINE_LANGUAGE_CODE3 ("Chiga", cgg, cgg)
DEFINE_LANGUAGE_CODE ("Chinese", zh, zho, chi)
DEFINE_LANGUAGE_CODE3 ("Chinook jargon", chn, chn)
DEFINE_LANGUAGE_CODE3 ("Chipewyan", chp, chp)
@@ -161,6 +164,7 @@ DEFINE_LANGUAGE_CODE3 ("Friulian", fur, fur)
DEFINE_LANGUAGE_CODE ("Fulah", ff, ful, ful)
DEFINE_LANGUAGE_CODE ("Gaelic; Scottish Gaelic", gd, gla, gla)
DEFINE_LANGUAGE_CODE ("Galician", gl, glg, glg)
+DEFINE_LANGUAGE_CODE3 ("Gan Chinese", gan, gan)
DEFINE_LANGUAGE_CODE ("Ganda", lg, lug, lug)
DEFINE_LANGUAGE_CODE3 ("Gayo", gay, gay)
DEFINE_LANGUAGE_CODE3 ("Ga", gaa, gaa)
@@ -184,6 +188,7 @@ DEFINE_LANGUAGE_CODE ("Gujarati", gu, guj, guj)
DEFINE_LANGUAGE_CODE3 ("Gwich´in", gwi, gwi)
DEFINE_LANGUAGE_CODE3 ("Haida", hai, hai)
DEFINE_LANGUAGE_CODE ("Haitian; Haitian Creole", ht, hat, hat)
+DEFINE_LANGUAGE_CODE3 ("Hakka Chinese", hak, hak)
DEFINE_LANGUAGE_CODE ("Hausa", ha, hau, hau)
DEFINE_LANGUAGE_CODE3 ("Hawaiian", haw, haw)
DEFINE_LANGUAGE_CODE ("Hebrew", he, heb, heb)
@@ -194,6 +199,7 @@ DEFINE_LANGUAGE_CODE ("Hindi", hi, hin, hin)
DEFINE_LANGUAGE_CODE ("Hiri Motu", ho, hmo, hmo)
DEFINE_LANGUAGE_CODE3 ("Hittite", hit, hit)
DEFINE_LANGUAGE_CODE3 ("Hmong", hmn, hmn)
+DEFINE_LANGUAGE_CODE3 ("Huizhou Chinese", czh, czh)
DEFINE_LANGUAGE_CODE ("Hungarian", hu, hun, hun)
DEFINE_LANGUAGE_CODE3 ("Hupa", hup, hup)
DEFINE_LANGUAGE_CODE3 ("Iban", iba, iba)
@@ -219,6 +225,7 @@ DEFINE_LANGUAGE_CODE3 ("Iroquoian languages", iro, iro)
DEFINE_LANGUAGE_CODE ("Italian", it, ita, ita)
DEFINE_LANGUAGE_CODE ("Japanese", ja, jpn, jpn)
DEFINE_LANGUAGE_CODE ("Javanese", jv, jav, jav)
+DEFINE_LANGUAGE_CODE3 ("Jinyu Chinese", cjy, cjy)
DEFINE_LANGUAGE_CODE3 ("Judeo-Arabic", jrb, jrb)
DEFINE_LANGUAGE_CODE3 ("Judeo-Persian", jpr, jpr)
DEFINE_LANGUAGE_CODE3 ("Kabardian", kbd, kbd)
@@ -265,8 +272,10 @@ DEFINE_LANGUAGE_CODE ("Lao", lo, lao, lao)
DEFINE_LANGUAGE_CODE ("Latin", la, lat, lat)
DEFINE_LANGUAGE_CODE ("Latvian", lv, lav, lav)
DEFINE_LANGUAGE_CODE3 ("Lezghian", lez, lez)
+DEFINE_LANGUAGE_CODE3 ("Ligurian", lij, lij)
DEFINE_LANGUAGE_CODE ("Limburgan; Limburger; Limburgish", li, lim, lim)
DEFINE_LANGUAGE_CODE ("Lingala", ln, lin, lin)
+DEFINE_LANGUAGE_CODE3 ("Literary Chinese", lzh, lzh)
DEFINE_LANGUAGE_CODE ("Lithuanian", lt, lit, lit)
DEFINE_LANGUAGE_CODE3 ("Lojban", jbo, jbo)
DEFINE_LANGUAGE_CODE3 ("Low German; Low Saxon; German, Low; Saxon, Low", nds, nds)
@@ -290,6 +299,7 @@ DEFINE_LANGUAGE_CODE ("Malayalam", ml, mal, mal)
DEFINE_LANGUAGE_CODE ("Malay", ms, msa, may)
DEFINE_LANGUAGE_CODE ("Maltese", mt, mlt, mlt)
DEFINE_LANGUAGE_CODE3 ("Manchu", mnc, mnc)
+DEFINE_LANGUAGE_CODE3 ("Mandarin Chinese", cmn, cmn)
DEFINE_LANGUAGE_CODE3 ("Mandar", mdr, mdr)
DEFINE_LANGUAGE_CODE3 ("Mandingo", man, man)
DEFINE_LANGUAGE_CODE3 ("Manipuri", mni, mni)
@@ -302,10 +312,14 @@ DEFINE_LANGUAGE_CODE ("Marshallese", mh, mah, mah)
DEFINE_LANGUAGE_CODE3 ("Marwari", mwr, mwr)
DEFINE_LANGUAGE_CODE3 ("Masai", mas, mas)
DEFINE_LANGUAGE_CODE3 ("Mayan languages", myn, myn)
+DEFINE_LANGUAGE_CODE3 ("Meadow Mari", mhr, mhr)
DEFINE_LANGUAGE_CODE3 ("Mende", men, men)
DEFINE_LANGUAGE_CODE3 ("Mi'kmaq; Micmac", mic, mic)
DEFINE_LANGUAGE_CODE3 ("Minangkabau", min, min)
-DEFINE_LANGUAGE_CODE3 ("Min Nan", nan, nan)
+DEFINE_LANGUAGE_CODE3 ("Min Bei Chinese", mnp, mnp)
+DEFINE_LANGUAGE_CODE3 ("Min Dong Chinese", cdo, cdo)
+DEFINE_LANGUAGE_CODE3 ("Min Nan Chinese", nan, nan)
+DEFINE_LANGUAGE_CODE3 ("Min Zhong Chinese", czo, czo)
DEFINE_LANGUAGE_CODE3 ("Mirandese", mwl, mwl)
DEFINE_LANGUAGE_CODE3 ("Miscellaneous languages", mis, mis)
DEFINE_LANGUAGE_CODE3 ("Mohawk", moh, moh)
@@ -347,7 +361,7 @@ DEFINE_LANGUAGE_CODE3 ("Nyoro", nyo, nyo)
DEFINE_LANGUAGE_CODE3 ("Nzima", nzi, nzi)
DEFINE_LANGUAGE_CODE ("Occitan (post 1500); Provençal", oc, oci, oci)
DEFINE_LANGUAGE_CODE ("Ojibwa", oj, oji, oji)
-DEFINE_LANGUAGE_CODE ("Oriya", or, ori, ori)
+DEFINE_LANGUAGE_CODE ("Odia", or, ori, ori)
DEFINE_LANGUAGE_CODE ("Oromo", om, orm, orm)
DEFINE_LANGUAGE_CODE3 ("Osage", osa, osa)
DEFINE_LANGUAGE_CODE ("Ossetian; Ossetic", os, oss, oss)
@@ -369,8 +383,10 @@ DEFINE_LANGUAGE_CODE ("Polish", pl, pol, pol)
DEFINE_LANGUAGE_CODE ("Portuguese", pt, por, por)
DEFINE_LANGUAGE_CODE3 ("Prakrit languages", pra, pra)
DEFINE_LANGUAGE_CODE3 ("Provençal, Old (to 1500)", pro, pro)
+DEFINE_LANGUAGE_CODE3 ("Pu-Xian Chinese", cpx, cpx)
DEFINE_LANGUAGE_CODE ("Pushto", ps, pus, pus)
DEFINE_LANGUAGE_CODE ("Quechua", qu, que, que)
+DEFINE_LANGUAGE_CODE3 ("Quechua, Southern", quz, quz)
DEFINE_LANGUAGE_CODE ("Raeto-Romance", rm, roh, roh)
DEFINE_LANGUAGE_CODE3 ("Rajasthani", raj, raj)
DEFINE_LANGUAGE_CODE3 ("Rapanui", rap, rap)
@@ -403,6 +419,7 @@ DEFINE_LANGUAGE_CODE3 ("Sicilian", scn, scn)
DEFINE_LANGUAGE_CODE3 ("Sidamo", sid, sid)
DEFINE_LANGUAGE_CODE3 ("Sign Languages", sgn, sgn)
DEFINE_LANGUAGE_CODE3 ("Siksika", bla, bla)
+DEFINE_LANGUAGE_CODE3 ("Silesian", szl, szl)
DEFINE_LANGUAGE_CODE ("Sindhi", sd, snd, snd)
DEFINE_LANGUAGE_CODE ("Sinhala; Sinhalese", si, sin, sin)
DEFINE_LANGUAGE_CODE3 ("Sino-Tibetan (Other)", sit, sit)
@@ -443,6 +460,7 @@ DEFINE_LANGUAGE_CODE ("Telugu", te, tel, tel)
DEFINE_LANGUAGE_CODE3 ("Tereno", ter, ter)
DEFINE_LANGUAGE_CODE3 ("Tetum", tet, tet)
DEFINE_LANGUAGE_CODE ("Thai", th, tha, tha)
+DEFINE_LANGUAGE_CODE3 ("Tharu, Chitwani", the, the)
DEFINE_LANGUAGE_CODE ("Tibetan", bo, bod, tib)
DEFINE_LANGUAGE_CODE3 ("Tigre", tig, tig)
DEFINE_LANGUAGE_CODE ("Tigrinya", ti, tir, tir)
@@ -469,6 +487,7 @@ DEFINE_LANGUAGE_CODE3 ("Ugaritic", uga, uga)
DEFINE_LANGUAGE_CODE ("Uighur; Uyghur", ug, uig, uig)
DEFINE_LANGUAGE_CODE ("Ukrainian", uk, ukr, ukr)
DEFINE_LANGUAGE_CODE3 ("Umbundu", umb, umb)
+DEFINE_LANGUAGE_CODE3 ("Unami Delaware", unm, unm)
DEFINE_LANGUAGE_CODE3 ("Undetermined", und, und)
DEFINE_LANGUAGE_CODE3 ("Upper Sorbian", hsb, hsb)
DEFINE_LANGUAGE_CODE ("Urdu", ur, urd, urd)
@@ -480,18 +499,21 @@ DEFINE_LANGUAGE_CODE ("Volapük", vo, vol, vol)
DEFINE_LANGUAGE_CODE3 ("Votic", vot, vot)
DEFINE_LANGUAGE_CODE3 ("Wakashan languages", wak, wak)
DEFINE_LANGUAGE_CODE3 ("Walser", wae, wae)
-DEFINE_LANGUAGE_CODE3 ("Walamo", wal, wal)
+DEFINE_LANGUAGE_CODE3 ("Walaita", wal, wal)
DEFINE_LANGUAGE_CODE ("Walloon", wa, wln, wln)
DEFINE_LANGUAGE_CODE3 ("Waray", war, war)
DEFINE_LANGUAGE_CODE3 ("Washo", was, was)
DEFINE_LANGUAGE_CODE ("Welsh", cy, cym, wel)
DEFINE_LANGUAGE_CODE ("Wolof", wo, wol, wol)
+DEFINE_LANGUAGE_CODE3 ("Wu Chinese", wuu, wuu)
DEFINE_LANGUAGE_CODE ("Xhosa", xh, xho, xho)
+DEFINE_LANGUAGE_CODE3 ("Xiang Chinese", hsn, hsn)
DEFINE_LANGUAGE_CODE3 ("Yakut", sah, sah)
DEFINE_LANGUAGE_CODE3 ("Yao", yao, yao)
DEFINE_LANGUAGE_CODE3 ("Yapese", yap, yap)
DEFINE_LANGUAGE_CODE ("Yiddish", yi, yid, yid)
DEFINE_LANGUAGE_CODE ("Yoruba", yo, yor, yor)
+DEFINE_LANGUAGE_CODE3 ("Yue Chinese", yue, yue)
DEFINE_LANGUAGE_CODE3 ("Yupik languages", ypk, ypk)
DEFINE_LANGUAGE_CODE3 ("Zande", znd, znd)
DEFINE_LANGUAGE_CODE3 ("Zapotec", zap, zap)
diff --git a/locale/loadarchive.c b/locale/loadarchive.c
index 70136dcf95..f723780ce1 100644
--- a/locale/loadarchive.c
+++ b/locale/loadarchive.c
@@ -274,6 +274,10 @@ _nl_load_locale_from_archive (int category, const char **namep)
namehashtab = (struct namehashent *) ((char *) head
+ head->namehash_offset);
+ /* Avoid division by 0 if the file is corrupted. */
+ if (__glibc_unlikely (head->namehash_size == 0))
+ goto close_and_out;
+
idx = hval % head->namehash_size;
incr = 1 + hval % (head->namehash_size - 2);
diff --git a/locale/loadlocale.c b/locale/loadlocale.c
index de7e3d01da..45162f1364 100644
--- a/locale/loadlocale.c
+++ b/locale/loadlocale.c
@@ -148,7 +148,7 @@ _nl_intern_locale_data (int category, const void *data, size_t datasize)
newdata->values[cnt].string = newdata->filedata + idx;
else
{
- if (idx % __alignof__ (u_int32_t) != 0)
+ if (!LOCFILE_ALIGNED_P (idx))
goto puntdata;
newdata->values[cnt].word =
*((const u_int32_t *) (newdata->filedata + idx));
diff --git a/locale/localeconv.c b/locale/localeconv.c
index 71ba4c6ab3..98e82a5cf0 100644
--- a/locale/localeconv.c
+++ b/locale/localeconv.c
@@ -28,7 +28,7 @@ __localeconv (void)
result.decimal_point = (char *) _NL_CURRENT (LC_NUMERIC, DECIMAL_POINT);
result.thousands_sep = (char *) _NL_CURRENT (LC_NUMERIC, THOUSANDS_SEP);
result.grouping = (char *) _NL_CURRENT (LC_NUMERIC, GROUPING);
- if (*result.grouping == CHAR_MAX || *result.grouping == (char) -1)
+ if (*result.grouping == '\177' || *result.grouping == '\377')
result.grouping = (char *) "";
result.int_curr_symbol = (char *) _NL_CURRENT (LC_MONETARY, INT_CURR_SYMBOL);
@@ -38,31 +38,29 @@ __localeconv (void)
result.mon_thousands_sep = (char *) _NL_CURRENT (LC_MONETARY,
MON_THOUSANDS_SEP);
result.mon_grouping = (char *) _NL_CURRENT (LC_MONETARY, MON_GROUPING);
- if (*result.mon_grouping == CHAR_MAX || *result.mon_grouping == (char) -1)
+ if (*result.mon_grouping == '\177' || *result.mon_grouping == '\377')
result.mon_grouping = (char *) "";
result.positive_sign = (char *) _NL_CURRENT (LC_MONETARY, POSITIVE_SIGN);
result.negative_sign = (char *) _NL_CURRENT (LC_MONETARY, NEGATIVE_SIGN);
- result.int_frac_digits = *(char *) _NL_CURRENT (LC_MONETARY,
- INT_FRAC_DIGITS);
- result.frac_digits = *(char *) _NL_CURRENT (LC_MONETARY, FRAC_DIGITS);
- result.p_cs_precedes = *(char *) _NL_CURRENT (LC_MONETARY, P_CS_PRECEDES);
- result.p_sep_by_space = *(char *) _NL_CURRENT (LC_MONETARY, P_SEP_BY_SPACE);
- result.n_cs_precedes = *(char *) _NL_CURRENT (LC_MONETARY, N_CS_PRECEDES);
- result.n_sep_by_space = *(char *) _NL_CURRENT (LC_MONETARY, N_SEP_BY_SPACE);
- result.p_sign_posn = *(char *) _NL_CURRENT (LC_MONETARY, P_SIGN_POSN);
- result.n_sign_posn = *(char *) _NL_CURRENT (LC_MONETARY, N_SIGN_POSN);
- result.int_p_cs_precedes = *(char *) _NL_CURRENT (LC_MONETARY,
- INT_P_CS_PRECEDES);
- result.int_p_sep_by_space = *(char *) _NL_CURRENT (LC_MONETARY,
- INT_P_SEP_BY_SPACE);
- result.int_n_cs_precedes = *(char *) _NL_CURRENT (LC_MONETARY,
- INT_N_CS_PRECEDES);
- result.int_n_sep_by_space = *(char *) _NL_CURRENT (LC_MONETARY,
- INT_N_SEP_BY_SPACE);
- result.int_p_sign_posn = *(char *) _NL_CURRENT (LC_MONETARY,
- INT_P_SIGN_POSN);
- result.int_n_sign_posn = *(char *) _NL_CURRENT (LC_MONETARY,
- INT_N_SIGN_POSN);
+
+#define INT_ELEM(member, element) \
+ result.member = *(char *) _NL_CURRENT (LC_MONETARY, element); \
+ if (result.member == '\377') result.member = CHAR_MAX
+
+ INT_ELEM (int_frac_digits, INT_FRAC_DIGITS);
+ INT_ELEM (frac_digits, FRAC_DIGITS);
+ INT_ELEM (p_cs_precedes, P_CS_PRECEDES);
+ INT_ELEM (p_sep_by_space, P_SEP_BY_SPACE);
+ INT_ELEM (n_cs_precedes, N_CS_PRECEDES);
+ INT_ELEM (n_sep_by_space, N_SEP_BY_SPACE);
+ INT_ELEM (p_sign_posn, P_SIGN_POSN);
+ INT_ELEM (n_sign_posn, N_SIGN_POSN);
+ INT_ELEM (int_p_cs_precedes, INT_P_CS_PRECEDES);
+ INT_ELEM (int_p_sep_by_space, INT_P_SEP_BY_SPACE);
+ INT_ELEM (int_n_cs_precedes, INT_N_CS_PRECEDES);
+ INT_ELEM (int_n_sep_by_space, INT_N_SEP_BY_SPACE);
+ INT_ELEM (int_p_sign_posn, INT_P_SIGN_POSN);
+ INT_ELEM (int_n_sign_posn, INT_N_SIGN_POSN);
return &result;
}
diff --git a/locale/localeinfo.h b/locale/localeinfo.h
index 3142726605..8d2c1665c2 100644
--- a/locale/localeinfo.h
+++ b/locale/localeinfo.h
@@ -87,6 +87,16 @@ struct __locale_data
values __flexarr; /* Items, usually pointers into `filedata'. */
};
+/* This alignment is used for 32-bit integers in locale files, both
+ those that are explicitly int32_t or uint32_t and those that are
+ wchar_t, regardless of the (possibly smaller) alignment required
+ for such integers on a particular host. */
+#define LOCFILE_ALIGN sizeof (int32_t)
+#define LOCFILE_ALIGN_MASK (LOCFILE_ALIGN - 1)
+#define LOCFILE_ALIGN_UP(x) (((x) + LOCFILE_ALIGN - 1) \
+ & ~LOCFILE_ALIGN_MASK)
+#define LOCFILE_ALIGNED_P(x) (((x) & LOCFILE_ALIGN_MASK) == 0)
+
/* We know three kinds of collation sorting rules. */
enum coll_sort_rule
{
diff --git a/locale/locarchive.h b/locale/locarchive.h
index f2d84771ab..fec3b1a4f7 100644
--- a/locale/locarchive.h
+++ b/locale/locarchive.h
@@ -80,6 +80,8 @@ struct locrecent
struct locarhandle
{
+ /* Full path to the locale archive file. */
+ const char *fname;
int fd;
void *addr;
size_t mmaped;
diff --git a/locale/programs/3level.h b/locale/programs/3level.h
index 9b8b1b96ad..c5f024fe35 100644
--- a/locale/programs/3level.h
+++ b/locale/programs/3level.h
@@ -26,7 +26,8 @@
ELEMENT to the type of every entry
DEFAULT to the default value for empty entries
ITERATE if you want the TABLE_iterate function to be defined
- NO_FINALIZE if you don't want the TABLE_finalize function to be defined
+ NO_ADD_LOCALE if you don't want the add_locale_TABLE function
+ to be defined
This will define
@@ -36,7 +37,7 @@
void TABLE_add (struct TABLE *t, uint32_t wc, ELEMENT value);
void TABLE_iterate (struct TABLE *t,
void (*fn) (uint32_t wc, ELEMENT value));
- void TABLE_finalize (struct TABLE *t);
+ void add_locale_TABLE (struct locale_file *file, struct TABLE *t);
*/
#define CONCAT(a,b) CONCAT1(a,b)
@@ -57,9 +58,8 @@ struct TABLE
size_t level3_alloc;
size_t level3_size;
ELEMENT *level3;
- /* Compressed representation. */
+ /* Size of compressed representation. */
size_t result_size;
- char *result;
};
/* Initialize. Assumes t->p and t->q have already been set. */
@@ -206,15 +206,15 @@ CONCAT(TABLE,_iterate) (struct TABLE *t,
}
#endif
-#ifndef NO_FINALIZE
+#ifndef NO_ADD_LOCALE
/* Finalize and shrink. */
static void
-CONCAT(TABLE,_finalize) (struct TABLE *t)
+CONCAT(add_locale_,TABLE) (struct locale_file *file, struct TABLE *t)
{
size_t i, j, k;
uint32_t reorder3[t->level3_size];
uint32_t reorder2[t->level2_size];
- uint32_t level1_offset, level2_offset, level3_offset, last_offset;
+ uint32_t level2_offset, level3_offset, last_offset;
/* Uniquify level3 blocks. */
k = 0;
@@ -270,11 +270,8 @@ CONCAT(TABLE,_finalize) (struct TABLE *t)
+ t->level1_size * sizeof (uint32_t)
+ (t->level2_size << t->q) * sizeof (uint32_t)
+ (t->level3_size << t->p) * sizeof (ELEMENT);
- t->result_size = (last_offset + 3) & ~3ul;
- t->result = (char *) xmalloc (t->result_size);
+ t->result_size = LOCFILE_ALIGN_UP (last_offset);
- level1_offset =
- 5 * sizeof (uint32_t);
level2_offset =
5 * sizeof (uint32_t)
+ t->level1_size * sizeof (uint32_t);
@@ -283,29 +280,36 @@ CONCAT(TABLE,_finalize) (struct TABLE *t)
+ t->level1_size * sizeof (uint32_t)
+ (t->level2_size << t->q) * sizeof (uint32_t);
- ((uint32_t *) t->result)[0] = t->q + t->p;
- ((uint32_t *) t->result)[1] = t->level1_size;
- ((uint32_t *) t->result)[2] = t->p;
- ((uint32_t *) t->result)[3] = (1 << t->q) - 1;
- ((uint32_t *) t->result)[4] = (1 << t->p) - 1;
+ start_locale_structure (file);
+ add_locale_uint32 (file, t->q + t->p);
+ add_locale_uint32 (file, t->level1_size);
+ add_locale_uint32 (file, t->p);
+ add_locale_uint32 (file, (1 << t->q) - 1);
+ add_locale_uint32 (file, (1 << t->p) - 1);
for (i = 0; i < t->level1_size; i++)
- ((uint32_t *) (t->result + level1_offset))[i] =
- (t->level1[i] == EMPTY
+ add_locale_uint32
+ (file,
+ t->level1[i] == EMPTY
? 0
: (t->level1[i] << t->q) * sizeof (uint32_t) + level2_offset);
for (i = 0; i < (t->level2_size << t->q); i++)
- ((uint32_t *) (t->result + level2_offset))[i] =
- (t->level2[i] == EMPTY
+ add_locale_uint32
+ (file,
+ t->level2[i] == EMPTY
? 0
: (t->level2[i] << t->p) * sizeof (ELEMENT) + level3_offset);
- for (i = 0; i < (t->level3_size << t->p); i++)
- ((ELEMENT *) (t->result + level3_offset))[i] = t->level3[i];
-
- if (last_offset < t->result_size)
- memset (t->result + last_offset, 0, t->result_size - last_offset);
+ if (sizeof (ELEMENT) == 1)
+ add_locale_raw_data (file, t->level3, t->level3_size << t->p);
+ else if (sizeof (ELEMENT) == sizeof (uint32_t))
+ add_locale_uint32_array (file, (uint32_t *) t->level3,
+ t->level3_size << t->p);
+ else
+ abort ();
+ align_locale_data (file, LOCFILE_ALIGN);
+ end_locale_structure (file);
if (t->level1_alloc > 0)
free (t->level1);
@@ -321,4 +325,4 @@ CONCAT(TABLE,_finalize) (struct TABLE *t)
#undef ELEMENT
#undef DEFAULT
#undef ITERATE
-#undef NO_FINALIZE
+#undef NO_ADD_LOCALE
diff --git a/locale/programs/ld-address.c b/locale/programs/ld-address.c
index 39b9a836f4..291e7b787f 100644
--- a/locale/programs/ld-address.c
+++ b/locale/programs/ld-address.c
@@ -349,97 +349,23 @@ address_output (struct localedef_t *locale, const struct charmap_t *charmap,
const char *output_path)
{
struct locale_address_t *address = locale->categories[LC_ADDRESS].address;
- struct iovec iov[3 + _NL_ITEM_INDEX (_NL_NUM_LC_ADDRESS)];
- struct locale_file data;
- uint32_t idx[_NL_ITEM_INDEX (_NL_NUM_LC_ADDRESS)];
- size_t cnt = 0;
-
- data.magic = LIMAGIC (LC_ADDRESS);
- data.n = _NL_ITEM_INDEX (_NL_NUM_LC_ADDRESS);
- iov[cnt].iov_base = (void *) &data;
- iov[cnt].iov_len = sizeof (data);
- ++cnt;
-
- iov[cnt].iov_base = (void *) idx;
- iov[cnt].iov_len = sizeof (idx);
- ++cnt;
-
- idx[cnt - 2] = iov[0].iov_len + iov[1].iov_len;
- iov[cnt].iov_base = (void *) address->postal_fmt;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) address->country_name;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) address->country_post;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) address->country_ab2;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) address->country_ab3;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) address->country_car;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
-
- /* Align following data */
- iov[cnt].iov_base = (void *) "\0\0";
- iov[cnt].iov_len = ((idx[cnt - 2] + 3) & ~3) - idx[cnt - 2];
- idx[cnt - 2] = (idx[cnt - 2] + 3) & ~3;
- ++cnt;
-
- iov[cnt].iov_base = (void *) &address->country_num;
- iov[cnt].iov_len = sizeof (uint32_t);
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) address->country_isbn;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) address->lang_name;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) address->lang_ab;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) address->lang_term;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) address->lang_lib;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) charmap->code_set_name;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- assert (cnt == 3 + _NL_ITEM_INDEX (_NL_NUM_LC_ADDRESS));
-
- write_locale_data (output_path, LC_ADDRESS, "LC_ADDRESS",
- 3 + _NL_ITEM_INDEX (_NL_NUM_LC_ADDRESS), iov);
+ struct locale_file file;
+
+ init_locale_data (&file, _NL_ITEM_INDEX (_NL_NUM_LC_ADDRESS));
+ add_locale_string (&file, address->postal_fmt);
+ add_locale_string (&file, address->country_name);
+ add_locale_string (&file, address->country_post);
+ add_locale_string (&file, address->country_ab2);
+ add_locale_string (&file, address->country_ab3);
+ add_locale_string (&file, address->country_car);
+ add_locale_uint32 (&file, address->country_num);
+ add_locale_string (&file, address->country_isbn);
+ add_locale_string (&file, address->lang_name);
+ add_locale_string (&file, address->lang_ab);
+ add_locale_string (&file, address->lang_term);
+ add_locale_string (&file, address->lang_lib);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_ADDRESS, "LC_ADDRESS", &file);
}
diff --git a/locale/programs/ld-collate.c b/locale/programs/ld-collate.c
index e58c8f7020..f7ae09792a 100644
--- a/locale/programs/ld-collate.c
+++ b/locale/programs/ld-collate.c
@@ -44,6 +44,8 @@ static inline void
__attribute ((always_inline))
obstack_int32_grow (struct obstack *obstack, int32_t data)
{
+ assert (LOCFILE_ALIGNED_P (obstack_object_size (obstack)));
+ data = maybe_swap_uint32 (data);
if (sizeof (int32_t) == sizeof (int))
obstack_int_grow (obstack, data);
else
@@ -54,6 +56,8 @@ static inline void
__attribute ((always_inline))
obstack_int32_grow_fast (struct obstack *obstack, int32_t data)
{
+ assert (LOCFILE_ALIGNED_P (obstack_object_size (obstack)));
+ data = maybe_swap_uint32 (data);
if (sizeof (int32_t) == sizeof (int))
obstack_int_grow_fast (obstack, data);
else
@@ -165,7 +169,7 @@ struct symbol_t
#define ELEMENT struct element_t *
#define DEFAULT NULL
#define ITERATE
-#define NO_FINALIZE
+#define NO_ADD_LOCALE
#include "3level.h"
/* Sparse table of int32_t. */
@@ -348,6 +352,9 @@ new_element (struct locale_collate_t *collate, const char *mbs, size_t mbslen,
{
size_t nwcs = wcslen ((wchar_t *) wcs);
uint32_t zero = 0;
+ /* Handle <U0000> as a single character. */
+ if (nwcs == 0)
+ nwcs = 1;
obstack_grow (&collate->mempool, wcs, nwcs * sizeof (uint32_t));
obstack_grow (&collate->mempool, &zero, sizeof (uint32_t));
newp->wcs = (uint32_t *) obstack_finish (&collate->mempool);
@@ -1813,8 +1820,6 @@ symbol `%s' has the same encoding as"), (*eptr)->name);
runp = runp->next;
}
- collseq_table_finalize (&collate->wcseqorder);
-
/* Now determine whether the UNDEFINED entry is needed and if yes,
whether it was defined. */
collate->undefined.used_in_level = need_undefined ? ~0ul : 0;
@@ -1957,6 +1962,7 @@ output_weightwc (struct obstack *pool, struct locale_collate_t *collate,
obstack_int32_grow (pool, j);
obstack_grow (pool, buf, j * sizeof (int32_t));
+ maybe_swap_uint32_obstack (pool, j);
}
return retval | ((elem->section->ruleidx & 0x7f) << 24);
@@ -2075,6 +2081,7 @@ add_to_tablewc (uint32_t ch, struct element_t *runp)
weightidx = output_weightwc (atwc.weightpool, atwc.collate,
runp);
+ assert (runp->nwcs > 0);
added = (1 + 1 + runp->nwcs - 1) * sizeof (int32_t);
if (sizeof (int) == sizeof (int32_t))
obstack_make_room (atwc.extrapool, added);
@@ -2098,10 +2105,7 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
{
struct locale_collate_t *collate = locale->categories[LC_COLLATE].collate;
const size_t nelems = _NL_ITEM_INDEX (_NL_NUM_LC_COLLATE);
- struct iovec iov[2 + nelems];
- struct locale_file data;
- uint32_t idx[nelems];
- size_t cnt;
+ struct locale_file file;
size_t ch;
int32_t tablemb[256];
struct obstack weightpool;
@@ -2114,51 +2118,22 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
int i;
struct element_t *runp;
- data.magic = LIMAGIC (LC_COLLATE);
- data.n = nelems;
- iov[0].iov_base = (void *) &data;
- iov[0].iov_len = sizeof (data);
-
- iov[1].iov_base = (void *) idx;
- iov[1].iov_len = sizeof (idx);
-
- idx[0] = iov[0].iov_len + iov[1].iov_len;
- cnt = 0;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_NRULES));
- iov[2 + cnt].iov_base = &nrules;
- iov[2 + cnt].iov_len = sizeof (uint32_t);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- ++cnt;
+ init_locale_data (&file, nelems);
+ add_locale_uint32 (&file, nrules);
/* If we have no LC_COLLATE data emit only the number of rules as zero. */
if (collate == NULL)
{
- int32_t dummy = 0;
-
- while (cnt < _NL_ITEM_INDEX (_NL_NUM_LC_COLLATE))
+ size_t idx;
+ for (idx = 1; idx < nelems; idx++)
{
/* The words have to be handled specially. */
- if (cnt == _NL_ITEM_INDEX (_NL_COLLATE_SYMB_HASH_SIZEMB))
- {
- iov[2 + cnt].iov_base = &dummy;
- iov[2 + cnt].iov_len = sizeof (int32_t);
- }
+ if (idx == _NL_ITEM_INDEX (_NL_COLLATE_SYMB_HASH_SIZEMB))
+ add_locale_uint32 (&file, 0);
else
- {
- iov[2 + cnt].iov_base = NULL;
- iov[2 + cnt].iov_len = 0;
- }
-
- if (cnt + 1 < _NL_ITEM_INDEX (_NL_NUM_LC_COLLATE))
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- ++cnt;
+ add_locale_empty (&file);
}
-
- assert (cnt == _NL_ITEM_INDEX (_NL_NUM_LC_COLLATE));
-
- write_locale_data (output_path, LC_COLLATE, "LC_COLLATE", 2 + cnt, iov);
-
+ write_locale_data (output_path, LC_COLLATE, "LC_COLLATE", &file);
return;
}
@@ -2185,17 +2160,13 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
++i;
}
/* And align the output. */
- i = (nrules * i) % __alignof__ (int32_t);
+ i = (nrules * i) % LOCFILE_ALIGN;
if (i > 0)
do
obstack_1grow (&weightpool, '\0');
- while (++i < __alignof__ (int32_t));
+ while (++i < LOCFILE_ALIGN);
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_RULESETS));
- iov[2 + cnt].iov_len = obstack_object_size (&weightpool);
- iov[2 + cnt].iov_base = obstack_finish (&weightpool);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- ++cnt;
+ add_locale_raw_obstack (&file, &weightpool);
/* Generate the 8-bit table. Walk through the lists of sequences
starting with the same byte and add them one after the other to
@@ -2239,8 +2210,7 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
struct element_t *runp = collate->mbheads[ch];
struct element_t *lastp;
- assert ((obstack_object_size (&extrapool)
- & (__alignof__ (int32_t) - 1)) == 0);
+ assert (LOCFILE_ALIGNED_P (obstack_object_size (&extrapool)));
tablemb[ch] = -obstack_object_size (&extrapool);
@@ -2265,11 +2235,9 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
struct element_t *curp;
/* Compute how much space we will need. */
- added = ((sizeof (int32_t) + 1 + 2 * (runp->nmbs - 1)
- + __alignof__ (int32_t) - 1)
- & ~(__alignof__ (int32_t) - 1));
- assert ((obstack_object_size (&extrapool)
- & (__alignof__ (int32_t) - 1)) == 0);
+ added = LOCFILE_ALIGN_UP (sizeof (int32_t) + 1
+ + 2 * (runp->nmbs - 1));
+ assert (LOCFILE_ALIGNED_P (obstack_object_size (&extrapool)));
obstack_make_room (&extrapool, added);
/* More than one consecutive entry. We mark this by having
@@ -2326,11 +2294,9 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
/* Output the weight info. */
weightidx = output_weight (&weightpool, collate, runp);
- added = ((sizeof (int32_t) + 1 + runp->nmbs - 1
- + __alignof__ (int32_t) - 1)
- & ~(__alignof__ (int32_t) - 1));
- assert ((obstack_object_size (&extrapool)
- & (__alignof__ (int32_t) - 1)) == 0);
+ added = LOCFILE_ALIGN_UP (sizeof (int32_t) + 1
+ + runp->nmbs - 1);
+ assert (LOCFILE_ALIGNED_P (obstack_object_size (&extrapool)));
obstack_make_room (&extrapool, added);
obstack_int32_grow_fast (&extrapool, weightidx);
@@ -2342,8 +2308,7 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
}
/* Add alignment bytes if necessary. */
- while ((obstack_object_size (&extrapool)
- & (__alignof__ (int32_t) - 1)) != 0)
+ while (!LOCFILE_ALIGNED_P (obstack_object_size (&extrapool)))
obstack_1grow_fast (&extrapool, '\0');
/* Next entry. */
@@ -2352,15 +2317,13 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
}
while (runp != NULL);
- assert ((obstack_object_size (&extrapool)
- & (__alignof__ (int32_t) - 1)) == 0);
+ assert (LOCFILE_ALIGNED_P (obstack_object_size (&extrapool)));
/* If the final entry in the list is not a single character we
add an UNDEFINED entry here. */
if (lastp->nmbs != 1)
{
- int added = ((sizeof (int32_t) + 1 + 1 + __alignof__ (int32_t) - 1)
- & ~(__alignof__ (int32_t) - 1));
+ int added = LOCFILE_ALIGN_UP (sizeof (int32_t) + 1 + 1);
obstack_make_room (&extrapool, added);
obstack_int32_grow_fast (&extrapool, 0);
@@ -2370,67 +2333,26 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
obstack_1grow_fast (&extrapool, 0);
/* Add alignment bytes if necessary. */
- while ((obstack_object_size (&extrapool)
- & (__alignof__ (int32_t) - 1)) != 0)
+ while (!LOCFILE_ALIGNED_P (obstack_object_size (&extrapool)))
obstack_1grow_fast (&extrapool, '\0');
}
}
/* Add padding to the tables if necessary. */
- while ((obstack_object_size (&weightpool) & (__alignof__ (int32_t) - 1))
- != 0)
+ while (!LOCFILE_ALIGNED_P (obstack_object_size (&weightpool)))
obstack_1grow (&weightpool, 0);
/* Now add the four tables. */
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_TABLEMB));
- iov[2 + cnt].iov_base = tablemb;
- iov[2 + cnt].iov_len = sizeof (tablemb);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert ((iov[2 + cnt].iov_len & (__alignof__ (int32_t) - 1)) == 0);
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_WEIGHTMB));
- iov[2 + cnt].iov_len = obstack_object_size (&weightpool);
- iov[2 + cnt].iov_base = obstack_finish (&weightpool);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_EXTRAMB));
- iov[2 + cnt].iov_len = obstack_object_size (&extrapool);
- iov[2 + cnt].iov_base = obstack_finish (&extrapool);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_INDIRECTMB));
- iov[2 + cnt].iov_len = obstack_object_size (&indirectpool);
- iov[2 + cnt].iov_base = obstack_finish (&indirectpool);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert ((iov[2 + cnt].iov_len & (__alignof__ (int32_t) - 1)) == 0);
- ++cnt;
-
+ add_locale_uint32_array (&file, (const uint32_t *) tablemb, 256);
+ add_locale_raw_obstack (&file, &weightpool);
+ add_locale_raw_obstack (&file, &extrapool);
+ add_locale_raw_obstack (&file, &indirectpool);
/* Now the same for the wide character table. We need to store some
more information here. */
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_GAP1));
- iov[2 + cnt].iov_base = NULL;
- iov[2 + cnt].iov_len = 0;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert (idx[cnt] % __alignof__ (int32_t) == 0);
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_GAP2));
- iov[2 + cnt].iov_base = NULL;
- iov[2 + cnt].iov_len = 0;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert (idx[cnt] % __alignof__ (int32_t) == 0);
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_GAP3));
- iov[2 + cnt].iov_base = NULL;
- iov[2 + cnt].iov_len = 0;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert (idx[cnt] % __alignof__ (int32_t) == 0);
- ++cnt;
+ add_locale_empty (&file);
+ add_locale_empty (&file);
+ add_locale_empty (&file);
/* Since we are using the sign of an integer to mark indirection the
offsets in the arrays we are indirectly referring to must not be
@@ -2462,41 +2384,11 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
memset (&atwc, 0, sizeof (atwc));
- collidx_table_finalize (&tablewc);
-
/* Now add the four tables. */
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_TABLEWC));
- iov[2 + cnt].iov_base = tablewc.result;
- iov[2 + cnt].iov_len = tablewc.result_size;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert (iov[2 + cnt].iov_len % sizeof (int32_t) == 0);
- assert (idx[cnt] % __alignof__ (int32_t) == 0);
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_WEIGHTWC));
- iov[2 + cnt].iov_len = obstack_object_size (&weightpool);
- iov[2 + cnt].iov_base = obstack_finish (&weightpool);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert (iov[2 + cnt].iov_len % sizeof (int32_t) == 0);
- assert (idx[cnt] % __alignof__ (int32_t) == 0);
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_EXTRAWC));
- iov[2 + cnt].iov_len = obstack_object_size (&extrapool);
- iov[2 + cnt].iov_base = obstack_finish (&extrapool);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert (iov[2 + cnt].iov_len % sizeof (int32_t) == 0);
- assert (idx[cnt] % __alignof__ (int32_t) == 0);
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_INDIRECTWC));
- iov[2 + cnt].iov_len = obstack_object_size (&indirectpool);
- iov[2 + cnt].iov_base = obstack_finish (&indirectpool);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert (iov[2 + cnt].iov_len % sizeof (int32_t) == 0);
- assert (idx[cnt] % __alignof__ (int32_t) == 0);
- ++cnt;
-
+ add_locale_collidx_table (&file, &tablewc);
+ add_locale_raw_obstack (&file, &weightpool);
+ add_locale_raw_obstack (&file, &extrapool);
+ add_locale_raw_obstack (&file, &indirectpool);
/* Finally write the table with collation element names out. It is
a hash table with a simple function which gets the name of the
@@ -2586,6 +2478,7 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
obstack_int32_grow (&extrapool, runp->nwcs);
obstack_grow (&extrapool, runp->wcs,
runp->nwcs * sizeof (uint32_t));
+ maybe_swap_uint32_obstack (&extrapool, runp->nwcs);
obstack_int32_grow (&extrapool, runp->wcseqorder);
}
@@ -2594,47 +2487,13 @@ collate_output (struct localedef_t *locale, const struct charmap_t *charmap,
}
/* Prepare to write out this data. */
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_SYMB_HASH_SIZEMB));
- iov[2 + cnt].iov_base = &elem_size;
- iov[2 + cnt].iov_len = sizeof (int32_t);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert (idx[cnt] % __alignof__ (int32_t) == 0);
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_SYMB_TABLEMB));
- iov[2 + cnt].iov_base = elem_table;
- iov[2 + cnt].iov_len = elem_size * 2 * sizeof (int32_t);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert (idx[cnt] % __alignof__ (int32_t) == 0);
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_SYMB_EXTRAMB));
- iov[2 + cnt].iov_len = obstack_object_size (&extrapool);
- iov[2 + cnt].iov_base = obstack_finish (&extrapool);
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_COLLSEQMB));
- iov[2 + cnt].iov_base = collate->mbseqorder;
- iov[2 + cnt].iov_len = 256;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_COLLSEQWC));
- iov[2 + cnt].iov_base = collate->wcseqorder.result;
- iov[2 + cnt].iov_len = collate->wcseqorder.result_size;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- assert (idx[cnt] % __alignof__ (int32_t) == 0);
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_COLLATE_CODESET));
- iov[2 + cnt].iov_base = (void *) charmap->code_set_name;
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- ++cnt;
-
- assert (cnt == _NL_ITEM_INDEX (_NL_NUM_LC_COLLATE));
-
- write_locale_data (output_path, LC_COLLATE, "LC_COLLATE", 2 + cnt, iov);
+ add_locale_uint32 (&file, elem_size);
+ add_locale_uint32_array (&file, elem_table, 2 * elem_size);
+ add_locale_raw_obstack (&file, &extrapool);
+ add_locale_raw_data (&file, collate->mbseqorder, 256);
+ add_locale_collseq_table (&file, &collate->wcseqorder);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_COLLATE, "LC_COLLATE", &file);
obstack_free (&weightpool, NULL);
obstack_free (&extrapool, NULL);
diff --git a/locale/programs/ld-ctype.c b/locale/programs/ld-ctype.c
index 8be7fce887..e7e17b86f9 100644
--- a/locale/programs/ld-ctype.c
+++ b/locale/programs/ld-ctype.c
@@ -119,9 +119,51 @@ struct translit_include_t
#define TABLE idx_table
#define ELEMENT uint32_t
#define DEFAULT ((uint32_t) ~0)
-#define NO_FINALIZE
+#define NO_ADD_LOCALE
#include "3level.h"
+#define TABLE wcwidth_table
+#define ELEMENT uint8_t
+#define DEFAULT 0xff
+#include "3level.h"
+
+#define TABLE wctrans_table
+#define ELEMENT int32_t
+#define DEFAULT 0
+#define wctrans_table_add wctrans_table_add_internal
+#include "3level.h"
+#undef wctrans_table_add
+/* The wctrans_table must actually store the difference between the
+ desired result and the argument. */
+static inline void
+wctrans_table_add (struct wctrans_table *t, uint32_t wc, uint32_t mapped_wc)
+{
+ wctrans_table_add_internal (t, wc, mapped_wc - wc);
+}
+
+/* Construction of sparse 3-level tables.
+ See wchar-lookup.h for their structure and the meaning of p and q. */
+
+struct wctype_table
+{
+ /* Parameters. */
+ unsigned int p;
+ unsigned int q;
+ /* Working representation. */
+ size_t level1_alloc;
+ size_t level1_size;
+ uint32_t *level1;
+ size_t level2_alloc;
+ size_t level2_size;
+ uint32_t *level2;
+ size_t level3_alloc;
+ size_t level3_size;
+ uint32_t *level3;
+ size_t result_size;
+};
+
+static void add_locale_wctype_table (struct locale_file *file,
+ struct wctype_table *t);
/* The real definition of the struct for the LC_CTYPE locale. */
struct locale_ctype_t
@@ -189,11 +231,11 @@ struct locale_ctype_t
uint32_t **map_b;
uint32_t **map32_b;
uint32_t **class_b;
- struct iovec *class_3level;
- struct iovec *map_3level;
+ struct wctype_table *class_3level;
+ struct wctrans_table *map_3level;
uint32_t *class_name_ptr;
uint32_t *map_name_ptr;
- struct iovec width;
+ struct wcwidth_table width;
uint32_t mb_cur_max;
const char *codeset_name;
uint32_t *translit_from_idx;
@@ -228,7 +270,7 @@ static void ctype_map_new (struct linereader *lr,
struct locale_ctype_t *ctype,
const char *name, const struct charmap_t *charmap);
static uint32_t *find_idx (struct locale_ctype_t *ctype, uint32_t **table,
- size_t *max, size_t *act, unsigned int idx);
+ size_t *max, size_t *act, uint32_t idx);
static void set_class_defaults (struct locale_ctype_t *ctype,
const struct charmap_t *charmap,
struct repertoire_t *repertoire);
@@ -269,9 +311,8 @@ ctype_startup (struct linereader *lr, struct localedef_t *locale,
/* We have seen no names yet. */
ctype->charnames_max = charmap->mb_cur_max == 1 ? 256 : 512;
- ctype->charnames =
- (unsigned int *) xmalloc (ctype->charnames_max
- * sizeof (unsigned int));
+ ctype->charnames = (uint32_t *) xmalloc (ctype->charnames_max
+ * sizeof (uint32_t));
for (cnt = 0; cnt < 256; ++cnt)
ctype->charnames[cnt] = cnt;
ctype->charnames_act = 256;
@@ -905,33 +946,21 @@ void
ctype_output (struct localedef_t *locale, const struct charmap_t *charmap,
const char *output_path)
{
- static const char nulbytes[4] = { 0, 0, 0, 0 };
struct locale_ctype_t *ctype = locale->categories[LC_CTYPE].ctype;
const size_t nelems = (_NL_ITEM_INDEX (_NL_CTYPE_EXTRA_MAP_1)
+ ctype->nr_charclass + ctype->map_collection_nr);
- struct iovec *iov = alloca (sizeof *iov
- * (2 + nelems + 2 * ctype->nr_charclass
- + ctype->map_collection_nr + 4));
- struct locale_file data;
- uint32_t *idx = alloca (sizeof *idx * (nelems + 1));
+ struct locale_file file;
uint32_t default_missing_len;
- size_t elem, cnt, offset, total;
- char *cp;
+ size_t elem, cnt;
/* Now prepare the output: Find the sizes of the table we can use. */
allocate_arrays (ctype, charmap, ctype->repertoire);
- data.magic = LIMAGIC (LC_CTYPE);
- data.n = nelems;
- iov[0].iov_base = (void *) &data;
- iov[0].iov_len = sizeof (data);
-
- iov[1].iov_base = (void *) idx;
- iov[1].iov_len = nelems * sizeof (uint32_t);
-
- idx[0] = iov[0].iov_len + iov[1].iov_len;
- offset = 0;
+ default_missing_len = (ctype->default_missing
+ ? wcslen ((wchar_t *) ctype->default_missing)
+ : 0);
+ init_locale_data (&file, nelems);
for (elem = 0; elem < nelems; ++elem)
{
if (elem < _NL_ITEM_INDEX (_NL_CTYPE_EXTRA_MAP_1))
@@ -939,9 +968,7 @@ ctype_output (struct localedef_t *locale, const struct charmap_t *charmap,
{
#define CTYPE_EMPTY(name) \
case name: \
- iov[2 + elem + offset].iov_base = NULL; \
- iov[2 + elem + offset].iov_len = 0; \
- idx[elem + 1] = idx[elem]; \
+ add_locale_empty (&file); \
break
CTYPE_EMPTY(_NL_CTYPE_GAP1);
@@ -951,273 +978,156 @@ ctype_output (struct localedef_t *locale, const struct charmap_t *charmap,
CTYPE_EMPTY(_NL_CTYPE_GAP5);
CTYPE_EMPTY(_NL_CTYPE_GAP6);
-#define CTYPE_DATA(name, base, len) \
+#define CTYPE_RAW_DATA(name, base, size) \
case _NL_ITEM_INDEX (name): \
- iov[2 + elem + offset].iov_base = (base); \
- iov[2 + elem + offset].iov_len = (len); \
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len; \
+ add_locale_raw_data (&file, base, size); \
break
- CTYPE_DATA (_NL_CTYPE_CLASS,
- ctype->ctype_b,
- (256 + 128) * sizeof (char_class_t));
+ CTYPE_RAW_DATA (_NL_CTYPE_CLASS,
+ ctype->ctype_b,
+ (256 + 128) * sizeof (char_class_t));
- CTYPE_DATA (_NL_CTYPE_TOUPPER,
- ctype->map_b[0],
- (256 + 128) * sizeof (uint32_t));
- CTYPE_DATA (_NL_CTYPE_TOLOWER,
- ctype->map_b[1],
- (256 + 128) * sizeof (uint32_t));
-
- CTYPE_DATA (_NL_CTYPE_TOUPPER32,
- ctype->map32_b[0],
- 256 * sizeof (uint32_t));
- CTYPE_DATA (_NL_CTYPE_TOLOWER32,
- ctype->map32_b[1],
- 256 * sizeof (uint32_t));
-
- CTYPE_DATA (_NL_CTYPE_CLASS32,
- ctype->ctype32_b,
- 256 * sizeof (char_class32_t));
+#define CTYPE_UINT32_ARRAY(name, base, n_elems) \
+ case _NL_ITEM_INDEX (name): \
+ add_locale_uint32_array (&file, base, n_elems); \
+ break
- CTYPE_DATA (_NL_CTYPE_CLASS_OFFSET,
- &ctype->class_offset, sizeof (uint32_t));
+ CTYPE_UINT32_ARRAY (_NL_CTYPE_TOUPPER, ctype->map_b[0], 256 + 128);
+ CTYPE_UINT32_ARRAY (_NL_CTYPE_TOLOWER, ctype->map_b[1], 256 + 128);
+ CTYPE_UINT32_ARRAY (_NL_CTYPE_TOUPPER32, ctype->map32_b[0], 256);
+ CTYPE_UINT32_ARRAY (_NL_CTYPE_TOLOWER32, ctype->map32_b[1], 256);
+ CTYPE_RAW_DATA (_NL_CTYPE_CLASS32,
+ ctype->ctype32_b,
+ 256 * sizeof (char_class32_t));
- CTYPE_DATA (_NL_CTYPE_MAP_OFFSET,
- &ctype->map_offset, sizeof (uint32_t));
+#define CTYPE_UINT32(name, value) \
+ case _NL_ITEM_INDEX (name): \
+ add_locale_uint32 (&file, value); \
+ break
- CTYPE_DATA (_NL_CTYPE_TRANSLIT_TAB_SIZE,
- &ctype->translit_idx_size, sizeof (uint32_t));
+ CTYPE_UINT32 (_NL_CTYPE_CLASS_OFFSET, ctype->class_offset);
+ CTYPE_UINT32 (_NL_CTYPE_MAP_OFFSET, ctype->map_offset);
+ CTYPE_UINT32 (_NL_CTYPE_TRANSLIT_TAB_SIZE, ctype->translit_idx_size);
- CTYPE_DATA (_NL_CTYPE_TRANSLIT_FROM_IDX,
- ctype->translit_from_idx,
- ctype->translit_idx_size * sizeof (uint32_t));
+ CTYPE_UINT32_ARRAY (_NL_CTYPE_TRANSLIT_FROM_IDX,
+ ctype->translit_from_idx,
+ ctype->translit_idx_size);
- CTYPE_DATA (_NL_CTYPE_TRANSLIT_FROM_TBL,
- ctype->translit_from_tbl,
- ctype->translit_from_tbl_size);
+ CTYPE_UINT32_ARRAY (_NL_CTYPE_TRANSLIT_FROM_TBL,
+ ctype->translit_from_tbl,
+ ctype->translit_from_tbl_size
+ / sizeof (uint32_t));
- CTYPE_DATA (_NL_CTYPE_TRANSLIT_TO_IDX,
- ctype->translit_to_idx,
- ctype->translit_idx_size * sizeof (uint32_t));
+ CTYPE_UINT32_ARRAY (_NL_CTYPE_TRANSLIT_TO_IDX,
+ ctype->translit_to_idx,
+ ctype->translit_idx_size);
- CTYPE_DATA (_NL_CTYPE_TRANSLIT_TO_TBL,
- ctype->translit_to_tbl, ctype->translit_to_tbl_size);
+ CTYPE_UINT32_ARRAY (_NL_CTYPE_TRANSLIT_TO_TBL,
+ ctype->translit_to_tbl,
+ ctype->translit_to_tbl_size / sizeof (uint32_t));
case _NL_ITEM_INDEX (_NL_CTYPE_CLASS_NAMES):
/* The class name array. */
- total = 0;
- for (cnt = 0; cnt < ctype->nr_charclass; ++cnt, ++offset)
- {
- iov[2 + elem + offset].iov_base
- = (void *) ctype->classnames[cnt];
- iov[2 + elem + offset].iov_len
- = strlen (ctype->classnames[cnt]) + 1;
- total += iov[2 + elem + offset].iov_len;
- }
- iov[2 + elem + offset].iov_base = (void *) nulbytes;
- iov[2 + elem + offset].iov_len = 4 - (total % 4);
- total += 4 - (total % 4);
-
- idx[elem + 1] = idx[elem] + total;
+ start_locale_structure (&file);
+ for (cnt = 0; cnt < ctype->nr_charclass; ++cnt)
+ add_locale_string (&file, ctype->classnames[cnt]);
+ add_locale_char (&file, 0);
+ align_locale_data (&file, LOCFILE_ALIGN);
+ end_locale_structure (&file);
break;
case _NL_ITEM_INDEX (_NL_CTYPE_MAP_NAMES):
/* The class name array. */
- total = 0;
- for (cnt = 0; cnt < ctype->map_collection_nr; ++cnt, ++offset)
- {
- iov[2 + elem + offset].iov_base
- = (void *) ctype->mapnames[cnt];
- iov[2 + elem + offset].iov_len
- = strlen (ctype->mapnames[cnt]) + 1;
- total += iov[2 + elem + offset].iov_len;
- }
- iov[2 + elem + offset].iov_base = (void *) nulbytes;
- iov[2 + elem + offset].iov_len = 4 - (total % 4);
- total += 4 - (total % 4);
-
- idx[elem + 1] = idx[elem] + total;
+ start_locale_structure (&file);
+ for (cnt = 0; cnt < ctype->map_collection_nr; ++cnt)
+ add_locale_string (&file, ctype->mapnames[cnt]);
+ add_locale_char (&file, 0);
+ align_locale_data (&file, LOCFILE_ALIGN);
+ end_locale_structure (&file);
break;
- CTYPE_DATA (_NL_CTYPE_WIDTH,
- ctype->width.iov_base,
- ctype->width.iov_len);
+ case _NL_ITEM_INDEX (_NL_CTYPE_WIDTH):
+ add_locale_wcwidth_table (&file, &ctype->width);
+ break;
- CTYPE_DATA (_NL_CTYPE_MB_CUR_MAX,
- &ctype->mb_cur_max, sizeof (uint32_t));
+ CTYPE_UINT32 (_NL_CTYPE_MB_CUR_MAX, ctype->mb_cur_max);
case _NL_ITEM_INDEX (_NL_CTYPE_CODESET_NAME):
- total = strlen (ctype->codeset_name) + 1;
- if (total % 4 == 0)
- iov[2 + elem + offset].iov_base = (char *) ctype->codeset_name;
- else
- {
- iov[2 + elem + offset].iov_base = alloca ((total + 3) & ~3);
- memset (mempcpy (iov[2 + elem + offset].iov_base,
- ctype->codeset_name, total),
- '\0', 4 - (total & 3));
- total = (total + 3) & ~3;
- }
- iov[2 + elem + offset].iov_len = total;
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len;
+ add_locale_string (&file, ctype->codeset_name);
break;
+ CTYPE_UINT32 (_NL_CTYPE_MAP_TO_NONASCII, ctype->to_nonascii);
- CTYPE_DATA (_NL_CTYPE_MAP_TO_NONASCII,
- &ctype->to_nonascii, sizeof (uint32_t));
-
- CTYPE_DATA (_NL_CTYPE_NONASCII_CASE,
- &ctype->nonascii_case, sizeof (uint32_t));
+ CTYPE_UINT32 (_NL_CTYPE_NONASCII_CASE, ctype->nonascii_case);
case _NL_ITEM_INDEX (_NL_CTYPE_INDIGITS_MB_LEN):
- iov[2 + elem + offset].iov_base = alloca (sizeof (uint32_t));
- iov[2 + elem + offset].iov_len = sizeof (uint32_t);
- *(uint32_t *) iov[2 + elem + offset].iov_base =
- ctype->mbdigits_act / 10;
- idx[elem + 1] = idx[elem] + sizeof (uint32_t);
+ add_locale_uint32 (&file, ctype->mbdigits_act / 10);
break;
case _NL_ITEM_INDEX (_NL_CTYPE_INDIGITS_WC_LEN):
- /* Align entries. */
- iov[2 + elem + offset].iov_base = (void *) nulbytes;
- iov[2 + elem + offset].iov_len = (4 - idx[elem] % 4) % 4;
- idx[elem] += iov[2 + elem + offset].iov_len;
- ++offset;
-
- iov[2 + elem + offset].iov_base = alloca (sizeof (uint32_t));
- iov[2 + elem + offset].iov_len = sizeof (uint32_t);
- *(uint32_t *) iov[2 + elem + offset].iov_base =
- ctype->wcdigits_act / 10;
- idx[elem + 1] = idx[elem] + sizeof (uint32_t);
+ add_locale_uint32 (&file, ctype->wcdigits_act / 10);
break;
case _NL_ITEM_INDEX (_NL_CTYPE_INDIGITS0_MB) ... _NL_ITEM_INDEX (_NL_CTYPE_INDIGITS9_MB):
- /* Compute the length of all possible characters. For INDIGITS
- there might be more than one. We simply concatenate all of
- them with a NUL byte following. The NUL byte wouldn't be
- necessary but it makes it easier for the user. */
- total = 0;
-
- for (cnt = elem - _NL_ITEM_INDEX (_NL_CTYPE_INDIGITS0_MB);
- cnt < ctype->mbdigits_act; cnt += 10)
- total += ctype->mbdigits[cnt]->nbytes + 1;
- iov[2 + elem + offset].iov_base = (char *) alloca (total);
- iov[2 + elem + offset].iov_len = total;
-
- cp = iov[2 + elem + offset].iov_base;
+ start_locale_structure (&file);
for (cnt = elem - _NL_ITEM_INDEX (_NL_CTYPE_INDIGITS0_MB);
cnt < ctype->mbdigits_act; cnt += 10)
{
- cp = mempcpy (cp, ctype->mbdigits[cnt]->bytes,
- ctype->mbdigits[cnt]->nbytes);
- *cp++ = '\0';
+ add_locale_raw_data (&file, ctype->mbdigits[cnt]->bytes,
+ ctype->mbdigits[cnt]->nbytes);
+ add_locale_char (&file, 0);
}
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len;
+ end_locale_structure (&file);
break;
case _NL_ITEM_INDEX (_NL_CTYPE_OUTDIGIT0_MB) ... _NL_ITEM_INDEX (_NL_CTYPE_OUTDIGIT9_MB):
- /* Compute the length of all possible characters. For INDIGITS
- there might be more than one. We simply concatenate all of
- them with a NUL byte following. The NUL byte wouldn't be
- necessary but it makes it easier for the user. */
+ start_locale_structure (&file);
cnt = elem - _NL_ITEM_INDEX (_NL_CTYPE_OUTDIGIT0_MB);
- total = ctype->mboutdigits[cnt]->nbytes + 1;
- iov[2 + elem + offset].iov_base = (char *) alloca (total);
- iov[2 + elem + offset].iov_len = total;
-
- *(char *) mempcpy (iov[2 + elem + offset].iov_base,
- ctype->mboutdigits[cnt]->bytes,
- ctype->mboutdigits[cnt]->nbytes) = '\0';
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len;
+ add_locale_raw_data (&file, ctype->mboutdigits[cnt]->bytes,
+ ctype->mboutdigits[cnt]->nbytes);
+ add_locale_char (&file, 0);
+ end_locale_structure (&file);
break;
case _NL_ITEM_INDEX (_NL_CTYPE_INDIGITS0_WC) ... _NL_ITEM_INDEX (_NL_CTYPE_INDIGITS9_WC):
- total = ctype->wcdigits_act / 10;
-
- iov[2 + elem + offset].iov_base =
- (uint32_t *) alloca (total * sizeof (uint32_t));
- iov[2 + elem + offset].iov_len = total * sizeof (uint32_t);
-
+ start_locale_structure (&file);
for (cnt = elem - _NL_ITEM_INDEX (_NL_CTYPE_INDIGITS0_WC);
cnt < ctype->wcdigits_act; cnt += 10)
- ((uint32_t *) iov[2 + elem + offset].iov_base)[cnt / 10]
- = ctype->wcdigits[cnt];
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len;
+ add_locale_uint32 (&file, ctype->wcdigits[cnt]);
+ end_locale_structure (&file);
break;
- case _NL_ITEM_INDEX (_NL_CTYPE_OUTDIGIT0_WC):
- /* Align entries. */
- iov[2 + elem + offset].iov_base = (void *) nulbytes;
- iov[2 + elem + offset].iov_len = (4 - idx[elem] % 4) % 4;
- idx[elem] += iov[2 + elem + offset].iov_len;
- ++offset;
- /* FALLTRHOUGH */
-
- case _NL_ITEM_INDEX (_NL_CTYPE_OUTDIGIT1_WC) ... _NL_ITEM_INDEX (_NL_CTYPE_OUTDIGIT9_WC):
+ case _NL_ITEM_INDEX (_NL_CTYPE_OUTDIGIT0_WC) ... _NL_ITEM_INDEX (_NL_CTYPE_OUTDIGIT9_WC):
cnt = elem - _NL_ITEM_INDEX (_NL_CTYPE_OUTDIGIT0_WC);
- iov[2 + elem + offset].iov_base = &ctype->wcoutdigits[cnt];
- iov[2 + elem + offset].iov_len = sizeof (uint32_t);
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len;
+ add_locale_uint32 (&file, ctype->wcoutdigits[cnt]);
break;
case _NL_ITEM_INDEX(_NL_CTYPE_TRANSLIT_DEFAULT_MISSING_LEN):
- /* Align entries. */
- iov[2 + elem + offset].iov_base = (void *) nulbytes;
- iov[2 + elem + offset].iov_len = (4 - idx[elem] % 4) % 4;
- idx[elem] += iov[2 + elem + offset].iov_len;
- ++offset;
-
- default_missing_len = (ctype->default_missing
- ? wcslen ((wchar_t *)ctype->default_missing)
- : 0);
- iov[2 + elem + offset].iov_base = &default_missing_len;
- iov[2 + elem + offset].iov_len = sizeof (uint32_t);
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len;
+ add_locale_uint32 (&file, default_missing_len);
break;
case _NL_ITEM_INDEX(_NL_CTYPE_TRANSLIT_DEFAULT_MISSING):
- iov[2 + elem + offset].iov_base =
- ctype->default_missing ?: (uint32_t *) L"";
- iov[2 + elem + offset].iov_len =
- wcslen (iov[2 + elem + offset].iov_base) * sizeof (uint32_t);
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len;
+ add_locale_uint32_array (&file, ctype->default_missing,
+ default_missing_len);
break;
case _NL_ITEM_INDEX(_NL_CTYPE_TRANSLIT_IGNORE_LEN):
- /* Align entries. */
- iov[2 + elem + offset].iov_base = (void *) nulbytes;
- iov[2 + elem + offset].iov_len = (4 - idx[elem] % 4) % 4;
- idx[elem] += iov[2 + elem + offset].iov_len;
- ++offset;
-
- iov[2 + elem + offset].iov_base = &ctype->ntranslit_ignore;
- iov[2 + elem + offset].iov_len = sizeof (uint32_t);
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len;
+ add_locale_uint32 (&file, ctype->ntranslit_ignore);
break;
case _NL_ITEM_INDEX(_NL_CTYPE_TRANSLIT_IGNORE):
+ start_locale_structure (&file);
{
- uint32_t *ranges = (uint32_t *) alloca (ctype->ntranslit_ignore
- * 3 * sizeof (uint32_t));
struct translit_ignore_t *runp;
-
- iov[2 + elem + offset].iov_base = ranges;
- iov[2 + elem + offset].iov_len = (ctype->ntranslit_ignore
- * 3 * sizeof (uint32_t));
-
for (runp = ctype->translit_ignore; runp != NULL;
runp = runp->next)
{
- *ranges++ = runp->from;
- *ranges++ = runp->to;
- *ranges++ = runp->step;
+ add_locale_uint32 (&file, runp->from);
+ add_locale_uint32 (&file, runp->to);
+ add_locale_uint32 (&file, runp->step);
}
}
- /* Remove the following line in case a new entry is added
- after _NL_CTYPE_TRANSLIT_DEFAULT_MISSING_LEN. */
- if (elem < nelems)
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len;
+ end_locale_structure (&file);
break;
default:
@@ -1229,28 +1139,21 @@ ctype_output (struct localedef_t *locale, const struct charmap_t *charmap,
size_t nr = elem - _NL_ITEM_INDEX (_NL_CTYPE_EXTRA_MAP_1);
if (nr < ctype->nr_charclass)
{
- iov[2 + elem + offset].iov_base = ctype->class_b[nr];
- iov[2 + elem + offset].iov_len = 256 / 32 * sizeof (uint32_t);
- idx[elem] += iov[2 + elem + offset].iov_len;
- ++offset;
-
- iov[2 + elem + offset] = ctype->class_3level[nr];
+ start_locale_prelude (&file);
+ add_locale_uint32_array (&file, ctype->class_b[nr], 256 / 32);
+ end_locale_prelude (&file);
+ add_locale_wctype_table (&file, &ctype->class_3level[nr]);
}
else
{
nr -= ctype->nr_charclass;
assert (nr < ctype->map_collection_nr);
- iov[2 + elem + offset] = ctype->map_3level[nr];
+ add_locale_wctrans_table (&file, &ctype->map_3level[nr]);
}
- idx[elem + 1] = idx[elem] + iov[2 + elem + offset].iov_len;
}
}
- assert (2 + elem + offset == (nelems + 2 * ctype->nr_charclass
- + ctype->map_collection_nr + 4 + 2));
-
- write_locale_data (output_path, LC_CTYPE, "LC_CTYPE", 2 + elem + offset,
- iov);
+ write_locale_data (output_path, LC_CTYPE, "LC_CTYPE", &file);
}
@@ -3529,29 +3432,6 @@ no output digits defined and none of the standard names in the charmap")));
}
-/* Construction of sparse 3-level tables.
- See wchar-lookup.h for their structure and the meaning of p and q. */
-
-struct wctype_table
-{
- /* Parameters. */
- unsigned int p;
- unsigned int q;
- /* Working representation. */
- size_t level1_alloc;
- size_t level1_size;
- uint32_t *level1;
- size_t level2_alloc;
- size_t level2_size;
- uint32_t *level2;
- size_t level3_alloc;
- size_t level3_size;
- uint32_t *level3;
- /* Compressed representation. */
- size_t result_size;
- char *result;
-};
-
/* Initialize. Assumes t->p and t->q have already been set. */
static inline void
wctype_table_init (struct wctype_table *t)
@@ -3657,12 +3537,12 @@ wctype_table_add (struct wctype_table *t, uint32_t wc)
/* Finalize and shrink. */
static void
-wctype_table_finalize (struct wctype_table *t)
+add_locale_wctype_table (struct locale_file *file, struct wctype_table *t)
{
size_t i, j, k;
uint32_t reorder3[t->level3_size];
uint32_t reorder2[t->level2_size];
- uint32_t level1_offset, level2_offset, level3_offset;
+ uint32_t level2_offset, level3_offset;
/* Uniquify level3 blocks. */
k = 0;
@@ -3712,16 +3592,12 @@ wctype_table_finalize (struct wctype_table *t)
if (t->level1[i] != EMPTY)
t->level1[i] = reorder2[t->level1[i]];
- /* Create and fill the resulting compressed representation. */
t->result_size =
5 * sizeof (uint32_t)
+ t->level1_size * sizeof (uint32_t)
+ (t->level2_size << t->q) * sizeof (uint32_t)
+ (t->level3_size << t->p) * sizeof (uint32_t);
- t->result = (char *) xmalloc (t->result_size);
- level1_offset =
- 5 * sizeof (uint32_t);
level2_offset =
5 * sizeof (uint32_t)
+ t->level1_size * sizeof (uint32_t);
@@ -3730,26 +3606,29 @@ wctype_table_finalize (struct wctype_table *t)
+ t->level1_size * sizeof (uint32_t)
+ (t->level2_size << t->q) * sizeof (uint32_t);
- ((uint32_t *) t->result)[0] = t->q + t->p + 5;
- ((uint32_t *) t->result)[1] = t->level1_size;
- ((uint32_t *) t->result)[2] = t->p + 5;
- ((uint32_t *) t->result)[3] = (1 << t->q) - 1;
- ((uint32_t *) t->result)[4] = (1 << t->p) - 1;
+ start_locale_structure (file);
+ add_locale_uint32 (file, t->q + t->p + 5);
+ add_locale_uint32 (file, t->level1_size);
+ add_locale_uint32 (file, t->p + 5);
+ add_locale_uint32 (file, (1 << t->q) - 1);
+ add_locale_uint32 (file, (1 << t->p) - 1);
for (i = 0; i < t->level1_size; i++)
- ((uint32_t *) (t->result + level1_offset))[i] =
- (t->level1[i] == EMPTY
+ add_locale_uint32
+ (file,
+ t->level1[i] == EMPTY
? 0
: (t->level1[i] << t->q) * sizeof (uint32_t) + level2_offset);
for (i = 0; i < (t->level2_size << t->q); i++)
- ((uint32_t *) (t->result + level2_offset))[i] =
- (t->level2[i] == EMPTY
+ add_locale_uint32
+ (file,
+ t->level2[i] == EMPTY
? 0
: (t->level2[i] << t->p) * sizeof (uint32_t) + level3_offset);
- for (i = 0; i < (t->level3_size << t->p); i++)
- ((uint32_t *) (t->result + level3_offset))[i] = t->level3[i];
+ add_locale_uint32_array (file, t->level3, t->level3_size << t->p);
+ end_locale_structure (file);
if (t->level1_alloc > 0)
free (t->level1);
@@ -3759,26 +3638,6 @@ wctype_table_finalize (struct wctype_table *t)
free (t->level3);
}
-#define TABLE wcwidth_table
-#define ELEMENT uint8_t
-#define DEFAULT 0xff
-#include "3level.h"
-
-#define TABLE wctrans_table
-#define ELEMENT int32_t
-#define DEFAULT 0
-#define wctrans_table_add wctrans_table_add_internal
-#include "3level.h"
-#undef wctrans_table_add
-/* The wctrans_table must actually store the difference between the
- desired result and the argument. */
-static inline void
-wctrans_table_add (struct wctrans_table *t, uint32_t wc, uint32_t mapped_wc)
-{
- wctrans_table_add_internal (t, wc, mapped_wc - wc);
-}
-
-
/* Flattens the included transliterations into a translit list.
Inserts them in the list at `cursor', and returns the new cursor. */
static struct translit_t **
@@ -3855,8 +3714,8 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap,
ctype->ctype32_b = (char_class32_t *) xcalloc (256, sizeof (char_class32_t));
ctype->class_b = (uint32_t **)
xmalloc (ctype->nr_charclass * sizeof (uint32_t *));
- ctype->class_3level = (struct iovec *)
- xmalloc (ctype->nr_charclass * sizeof (struct iovec));
+ ctype->class_3level = (struct wctype_table *)
+ xmalloc (ctype->nr_charclass * sizeof (struct wctype_table));
/* This is the array accessed using the multibyte string elements. */
for (idx = 0; idx < 256; ++idx)
@@ -3888,34 +3747,30 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap,
for (nr = 0; nr < ctype->nr_charclass; nr++)
{
- struct wctype_table t;
+ struct wctype_table *t;
- t.p = 4; /* or: 5 */
- t.q = 7; /* or: 6 */
- wctype_table_init (&t);
+ t = &ctype->class_3level[nr];
+ t->p = 4; /* or: 5 */
+ t->q = 7; /* or: 6 */
+ wctype_table_init (t);
for (idx = 0; idx < ctype->class_collection_act; ++idx)
if (ctype->class_collection[idx] & _ISwbit (nr))
- wctype_table_add (&t, ctype->charnames[idx]);
-
- wctype_table_finalize (&t);
+ wctype_table_add (t, ctype->charnames[idx]);
if (verbose)
WITH_CUR_LOCALE (fprintf (stderr, _("\
%s: table for class \"%s\": %lu bytes\n"),
"LC_CTYPE", ctype->classnames[nr],
- (unsigned long int) t.result_size));
-
- ctype->class_3level[nr].iov_base = t.result;
- ctype->class_3level[nr].iov_len = t.result_size;
+ (unsigned long int) t->result_size));
}
/* Room for table of mappings. */
ctype->map_b = (uint32_t **) xmalloc (2 * sizeof (uint32_t *));
ctype->map32_b = (uint32_t **) xmalloc (ctype->map_collection_nr
* sizeof (uint32_t *));
- ctype->map_3level = (struct iovec *)
- xmalloc (ctype->map_collection_nr * sizeof (struct iovec));
+ ctype->map_3level = (struct wctrans_table *)
+ xmalloc (ctype->map_collection_nr * sizeof (struct wctrans_table));
/* Fill in all mappings. */
for (idx = 0; idx < 2; ++idx)
@@ -3956,27 +3811,23 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap,
for (nr = 0; nr < ctype->map_collection_nr; nr++)
{
- struct wctrans_table t;
+ struct wctrans_table *t;
- t.p = 7;
- t.q = 9;
- wctrans_table_init (&t);
+ t = &ctype->map_3level[nr];
+ t->p = 7;
+ t->q = 9;
+ wctrans_table_init (t);
for (idx = 0; idx < ctype->map_collection_act[nr]; ++idx)
if (ctype->map_collection[nr][idx] != 0)
- wctrans_table_add (&t, ctype->charnames[idx],
+ wctrans_table_add (t, ctype->charnames[idx],
ctype->map_collection[nr][idx]);
- wctrans_table_finalize (&t);
-
if (verbose)
WITH_CUR_LOCALE (fprintf (stderr, _("\
%s: table for map \"%s\": %lu bytes\n"),
"LC_CTYPE", ctype->mapnames[nr],
- (unsigned long int) t.result_size));
-
- ctype->map_3level[nr].iov_base = t.result;
- ctype->map_3level[nr].iov_len = t.result_size;
+ (unsigned long int) t->result_size));
}
/* Extra array for class and map names. */
@@ -3996,11 +3847,12 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap,
saves a run-time check.
But we put L'\0' in the table. This again saves a run-time check. */
{
- struct wcwidth_table t;
+ struct wcwidth_table *t;
- t.p = 7;
- t.q = 9;
- wcwidth_table_init (&t);
+ t = &ctype->width;
+ t->p = 7;
+ t->q = 9;
+ wcwidth_table_init (t);
/* First set all the printable characters of the character set to
the default width. */
@@ -4020,7 +3872,7 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap,
&ctype->class_collection_act, data->ucs4);
if (class_bits != NULL && (*class_bits & BITw (tok_print)))
- wcwidth_table_add (&t, data->ucs4, charmap->width_default);
+ wcwidth_table_add (t, data->ucs4, charmap->width_default);
}
}
@@ -4068,7 +3920,7 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap,
&ctype->class_collection_act, wch);
if (class_bits != NULL && (*class_bits & BITw (tok_print)))
- wcwidth_table_add (&t, wch,
+ wcwidth_table_add (t, wch,
charmap->width_rules[cnt].width);
}
@@ -4098,16 +3950,11 @@ allocate_arrays (struct locale_ctype_t *ctype, const struct charmap_t *charmap,
}
/* Set the width of L'\0' to 0. */
- wcwidth_table_add (&t, 0, 0);
-
- wcwidth_table_finalize (&t);
+ wcwidth_table_add (t, 0, 0);
if (verbose)
WITH_CUR_LOCALE (fprintf (stderr, _("%s: table for width: %lu bytes\n"),
- "LC_CTYPE", (unsigned long int) t.result_size));
-
- ctype->width.iov_base = t.result;
- ctype->width.iov_len = t.result_size;
+ "LC_CTYPE", (unsigned long int) t->result_size));
}
/* Set MB_CUR_MAX. */
diff --git a/locale/programs/ld-identification.c b/locale/programs/ld-identification.c
index 4b03fb6987..5487aae7ce 100644
--- a/locale/programs/ld-identification.c
+++ b/locale/programs/ld-identification.c
@@ -182,116 +182,32 @@ identification_output (struct localedef_t *locale,
{
struct locale_identification_t *identification
= locale->categories[LC_IDENTIFICATION].identification;
- struct iovec iov[2 + _NL_ITEM_INDEX (_NL_NUM_LC_IDENTIFICATION)
- + (__LC_LAST - 2)];
- struct locale_file data;
- uint32_t idx[_NL_ITEM_INDEX (_NL_NUM_LC_IDENTIFICATION)];
- size_t cnt = 0;
+ struct locale_file file;
size_t num;
- size_t last_idx;
-
- data.magic = LIMAGIC (LC_IDENTIFICATION);
- data.n = _NL_ITEM_INDEX (_NL_NUM_LC_IDENTIFICATION);
- iov[cnt].iov_base = (void *) &data;
- iov[cnt].iov_len = sizeof (data);
- ++cnt;
-
- iov[cnt].iov_base = (void *) idx;
- iov[cnt].iov_len = sizeof (idx);
- ++cnt;
-
- idx[cnt - 2] = iov[0].iov_len + iov[1].iov_len;
- iov[cnt].iov_base = (void *) identification->title;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->source;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->address;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->contact;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->email;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->tel;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->fax;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->language;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->territory;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->audience;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->application;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->abbreviation;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->revision;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) identification->date;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- last_idx = cnt - 1;
- idx[last_idx] = idx[cnt - 2];
+
+ init_locale_data (&file, _NL_ITEM_INDEX (_NL_NUM_LC_IDENTIFICATION));
+ add_locale_string (&file, identification->title);
+ add_locale_string (&file, identification->source);
+ add_locale_string (&file, identification->address);
+ add_locale_string (&file, identification->contact);
+ add_locale_string (&file, identification->email);
+ add_locale_string (&file, identification->tel);
+ add_locale_string (&file, identification->fax);
+ add_locale_string (&file, identification->language);
+ add_locale_string (&file, identification->territory);
+ add_locale_string (&file, identification->audience);
+ add_locale_string (&file, identification->application);
+ add_locale_string (&file, identification->abbreviation);
+ add_locale_string (&file, identification->revision);
+ add_locale_string (&file, identification->date);
+ start_locale_structure (&file);
for (num = 0; num < __LC_LAST; ++num)
if (num != LC_ALL)
- {
- iov[cnt].iov_base = (void *) identification->category[num];
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- idx[last_idx] += iov[cnt].iov_len;
- ++cnt;
- }
-
- assert (last_idx == _NL_ITEM_INDEX (_NL_NUM_LC_IDENTIFICATION) - 1);
- iov[cnt].iov_base = (void *) charmap->code_set_name;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- assert (cnt == (2 + _NL_ITEM_INDEX (_NL_NUM_LC_IDENTIFICATION)
- + (__LC_LAST - 2)));
-
- write_locale_data (output_path, LC_IDENTIFICATION, "LC_IDENTIFICATION", cnt,
- iov);
+ add_locale_string (&file, identification->category[num]);
+ end_locale_structure (&file);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_IDENTIFICATION, "LC_IDENTIFICATION",
+ &file);
}
diff --git a/locale/programs/ld-measurement.c b/locale/programs/ld-measurement.c
index 4aa0ea99a7..5be54e739d 100644
--- a/locale/programs/ld-measurement.c
+++ b/locale/programs/ld-measurement.c
@@ -122,35 +122,12 @@ measurement_output (struct localedef_t *locale,
{
struct locale_measurement_t *measurement =
locale->categories[LC_MEASUREMENT].measurement;
- struct iovec iov[2 + _NL_ITEM_INDEX (_NL_NUM_LC_MEASUREMENT)];
- struct locale_file data;
- uint32_t idx[_NL_ITEM_INDEX (_NL_NUM_LC_MEASUREMENT)];
- size_t cnt = 0;
-
- data.magic = LIMAGIC (LC_MEASUREMENT);
- data.n = _NL_ITEM_INDEX (_NL_NUM_LC_MEASUREMENT);
- iov[cnt].iov_base = (void *) &data;
- iov[cnt].iov_len = sizeof (data);
- ++cnt;
-
- iov[cnt].iov_base = (void *) idx;
- iov[cnt].iov_len = sizeof (idx);
- ++cnt;
-
- idx[cnt - 2] = iov[0].iov_len + iov[1].iov_len;
- iov[cnt].iov_base = &measurement->measurement;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) charmap->code_set_name;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- assert (cnt == 2 + _NL_ITEM_INDEX (_NL_NUM_LC_MEASUREMENT));
-
- write_locale_data (output_path, LC_MEASUREMENT, "LC_MEASUREMENT",
- 2 + _NL_ITEM_INDEX (_NL_NUM_LC_MEASUREMENT), iov);
+ struct locale_file file;
+
+ init_locale_data (&file, _NL_ITEM_INDEX (_NL_NUM_LC_MEASUREMENT));
+ add_locale_char (&file, measurement->measurement);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_MEASUREMENT, "LC_MEASUREMENT", &file);
}
diff --git a/locale/programs/ld-messages.c b/locale/programs/ld-messages.c
index f1b9f93f26..116f3a2bb6 100644
--- a/locale/programs/ld-messages.c
+++ b/locale/programs/ld-messages.c
@@ -184,49 +184,15 @@ messages_output (struct localedef_t *locale, const struct charmap_t *charmap,
{
struct locale_messages_t *messages
= locale->categories[LC_MESSAGES].messages;
- struct iovec iov[2 + _NL_ITEM_INDEX (_NL_NUM_LC_MESSAGES)];
- struct locale_file data;
- uint32_t idx[_NL_ITEM_INDEX (_NL_NUM_LC_MESSAGES)];
- size_t cnt = 0;
-
- data.magic = LIMAGIC (LC_MESSAGES);
- data.n = _NL_ITEM_INDEX (_NL_NUM_LC_MESSAGES);
- iov[cnt].iov_base = (void *) &data;
- iov[cnt].iov_len = sizeof (data);
- ++cnt;
-
- iov[cnt].iov_base = (void *) idx;
- iov[cnt].iov_len = sizeof (idx);
- ++cnt;
-
- idx[cnt - 2] = iov[0].iov_len + iov[1].iov_len;
- iov[cnt].iov_base = (char *) messages->yesexpr;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (char *) messages->noexpr;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (char *) messages->yesstr;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (char *) messages->nostr;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (char *) charmap->code_set_name;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
-
- assert (cnt + 1 == 2 + _NL_ITEM_INDEX (_NL_NUM_LC_MESSAGES));
-
- write_locale_data (output_path, LC_MESSAGES, "LC_MESSAGES",
- 2 + _NL_ITEM_INDEX (_NL_NUM_LC_MESSAGES), iov);
+ struct locale_file file;
+
+ init_locale_data (&file, _NL_ITEM_INDEX (_NL_NUM_LC_MESSAGES));
+ add_locale_string (&file, messages->yesexpr);
+ add_locale_string (&file, messages->noexpr);
+ add_locale_string (&file, messages->yesstr);
+ add_locale_string (&file, messages->nostr);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_MESSAGES, "LC_MESSAGES", &file);
}
diff --git a/locale/programs/ld-monetary.c b/locale/programs/ld-monetary.c
index 4dfca3dd7b..c88275f1cc 100644
--- a/locale/programs/ld-monetary.c
+++ b/locale/programs/ld-monetary.c
@@ -364,262 +364,57 @@ monetary_output (struct localedef_t *locale, const struct charmap_t *charmap,
{
struct locale_monetary_t *monetary
= locale->categories[LC_MONETARY].monetary;
- struct iovec iov[3 + _NL_ITEM_INDEX (_NL_NUM_LC_MONETARY)];
- struct locale_file data;
- uint32_t idx[_NL_ITEM_INDEX (_NL_NUM_LC_MONETARY)];
- size_t cnt = 0;
-
- data.magic = LIMAGIC (LC_MONETARY);
- data.n = _NL_ITEM_INDEX (_NL_NUM_LC_MONETARY);
- iov[cnt].iov_base = (void *) &data;
- iov[cnt].iov_len = sizeof (data);
- ++cnt;
-
- iov[cnt].iov_base = (void *) idx;
- iov[cnt].iov_len = sizeof (idx);
- ++cnt;
-
- idx[cnt - 2] = iov[0].iov_len + iov[1].iov_len;
- iov[cnt].iov_base = (void *) monetary->int_curr_symbol;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) monetary->currency_symbol;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) monetary->mon_decimal_point;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) monetary->mon_thousands_sep;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = monetary->mon_grouping;
- iov[cnt].iov_len = monetary->mon_grouping_len;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) monetary->positive_sign;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) monetary->negative_sign;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->int_frac_digits;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->frac_digits;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->p_cs_precedes;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->p_sep_by_space;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->n_cs_precedes;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->n_sep_by_space;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->p_sign_posn;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->n_sign_posn;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) monetary->crncystr;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->int_p_cs_precedes;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->int_p_sep_by_space;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->int_n_cs_precedes;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->int_n_sep_by_space;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->int_p_sign_posn;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->int_n_sign_posn;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) monetary->duo_int_curr_symbol;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) monetary->duo_currency_symbol;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_int_frac_digits;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_frac_digits;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_p_cs_precedes;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_p_sep_by_space;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_n_cs_precedes;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_n_sep_by_space;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_int_p_cs_precedes;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_int_p_sep_by_space;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_int_n_cs_precedes;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_int_n_sep_by_space;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_p_sign_posn;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_n_sign_posn;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_int_p_sign_posn;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_int_n_sign_posn;
- iov[cnt].iov_len = 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
-
- /* Align following data */
- iov[cnt].iov_base = (void *) "\0\0";
- iov[cnt].iov_len = ((idx[cnt - 2] + 3) & ~3) - idx[cnt - 2];
- idx[cnt - 2] = (idx[cnt - 2] + 3) & ~3;
- ++cnt;
-
- iov[cnt].iov_base = (void *) &monetary->uno_valid_from;
- iov[cnt].iov_len = sizeof(uint32_t);
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->uno_valid_to;
- iov[cnt].iov_len = sizeof(uint32_t);
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_valid_from;
- iov[cnt].iov_len = sizeof(uint32_t);
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->duo_valid_to;
- iov[cnt].iov_len = sizeof(uint32_t);
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) monetary->conversion_rate;
- iov[cnt].iov_len = 2 * sizeof(uint32_t);
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->mon_decimal_point_wc;
- iov[cnt].iov_len = sizeof (uint32_t);
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &monetary->mon_thousands_sep_wc;
- iov[cnt].iov_len = sizeof (uint32_t);
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) charmap->code_set_name;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- assert (cnt == 3 + _NL_ITEM_INDEX (_NL_NUM_LC_MONETARY));
-
- write_locale_data (output_path, LC_MONETARY, "LC_MONETARY",
- 3 + _NL_ITEM_INDEX (_NL_NUM_LC_MONETARY), iov);
+ struct locale_file file;
+
+ init_locale_data (&file, _NL_ITEM_INDEX (_NL_NUM_LC_MONETARY));
+ add_locale_string (&file, monetary->int_curr_symbol);
+ add_locale_string (&file, monetary->currency_symbol);
+ add_locale_string (&file, monetary->mon_decimal_point);
+ add_locale_string (&file, monetary->mon_thousands_sep);
+ add_locale_raw_data (&file, monetary->mon_grouping,
+ monetary->mon_grouping_len);
+ add_locale_string (&file, monetary->positive_sign);
+ add_locale_string (&file, monetary->negative_sign);
+ add_locale_char (&file, monetary->int_frac_digits);
+ add_locale_char (&file, monetary->frac_digits);
+ add_locale_char (&file, monetary->p_cs_precedes);
+ add_locale_char (&file, monetary->p_sep_by_space);
+ add_locale_char (&file, monetary->n_cs_precedes);
+ add_locale_char (&file, monetary->n_sep_by_space);
+ add_locale_char (&file, monetary->p_sign_posn);
+ add_locale_char (&file, monetary->n_sign_posn);
+ add_locale_string (&file, monetary->crncystr);
+ add_locale_char (&file, monetary->int_p_cs_precedes);
+ add_locale_char (&file, monetary->int_p_sep_by_space);
+ add_locale_char (&file, monetary->int_n_cs_precedes);
+ add_locale_char (&file, monetary->int_n_sep_by_space);
+ add_locale_char (&file, monetary->int_p_sign_posn);
+ add_locale_char (&file, monetary->int_n_sign_posn);
+ add_locale_string (&file, monetary->duo_int_curr_symbol);
+ add_locale_string (&file, monetary->duo_currency_symbol);
+ add_locale_char (&file, monetary->duo_int_frac_digits);
+ add_locale_char (&file, monetary->duo_frac_digits);
+ add_locale_char (&file, monetary->duo_p_cs_precedes);
+ add_locale_char (&file, monetary->duo_p_sep_by_space);
+ add_locale_char (&file, monetary->duo_n_cs_precedes);
+ add_locale_char (&file, monetary->duo_n_sep_by_space);
+ add_locale_char (&file, monetary->duo_int_p_cs_precedes);
+ add_locale_char (&file, monetary->duo_int_p_sep_by_space);
+ add_locale_char (&file, monetary->duo_int_n_cs_precedes);
+ add_locale_char (&file, monetary->duo_int_n_sep_by_space);
+ add_locale_char (&file, monetary->duo_p_sign_posn);
+ add_locale_char (&file, monetary->duo_n_sign_posn);
+ add_locale_char (&file, monetary->duo_int_p_sign_posn);
+ add_locale_char (&file, monetary->duo_int_n_sign_posn);
+ add_locale_uint32 (&file, monetary->uno_valid_from);
+ add_locale_uint32 (&file, monetary->uno_valid_to);
+ add_locale_uint32 (&file, monetary->duo_valid_from);
+ add_locale_uint32 (&file, monetary->duo_valid_to);
+ add_locale_uint32_array (&file, monetary->conversion_rate, 2);
+ add_locale_uint32 (&file, monetary->mon_decimal_point_wc);
+ add_locale_uint32 (&file, monetary->mon_thousands_sep_wc);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_MONETARY, "LC_MONETARY", &file);
}
@@ -882,6 +677,9 @@ monetary_read (struct linereader *ldfile, struct localedef_t *result,
if (!ignore_content)
{
+ /* A single -1 means no grouping. */
+ if (act == 1 && grouping[0] == '\177')
+ act--;
grouping[act++] = '\0';
monetary->mon_grouping = xrealloc (grouping, act);
diff --git a/locale/programs/ld-name.c b/locale/programs/ld-name.c
index 207bf0194e..efc541e47d 100644
--- a/locale/programs/ld-name.c
+++ b/locale/programs/ld-name.c
@@ -157,60 +157,17 @@ name_output (struct localedef_t *locale, const struct charmap_t *charmap,
const char *output_path)
{
struct locale_name_t *name = locale->categories[LC_NAME].name;
- struct iovec iov[2 + _NL_ITEM_INDEX (_NL_NUM_LC_NAME)];
- struct locale_file data;
- uint32_t idx[_NL_ITEM_INDEX (_NL_NUM_LC_NAME)];
- size_t cnt = 0;
-
- data.magic = LIMAGIC (LC_NAME);
- data.n = _NL_ITEM_INDEX (_NL_NUM_LC_NAME);
- iov[cnt].iov_base = (void *) &data;
- iov[cnt].iov_len = sizeof (data);
- ++cnt;
-
- iov[cnt].iov_base = (void *) idx;
- iov[cnt].iov_len = sizeof (idx);
- ++cnt;
-
- idx[cnt - 2] = iov[0].iov_len + iov[1].iov_len;
- iov[cnt].iov_base = (void *) name->name_fmt;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) name->name_gen;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) name->name_mr;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) name->name_mrs;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) name->name_miss;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) name->name_ms;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) charmap->code_set_name;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- assert (cnt == 2 + _NL_ITEM_INDEX (_NL_NUM_LC_NAME));
-
- write_locale_data (output_path, LC_NAME, "LC_NAME",
- 2 + _NL_ITEM_INDEX (_NL_NUM_LC_NAME), iov);
+ struct locale_file file;
+
+ init_locale_data (&file, _NL_ITEM_INDEX (_NL_NUM_LC_NAME));
+ add_locale_string (&file, name->name_fmt);
+ add_locale_string (&file, name->name_gen);
+ add_locale_string (&file, name->name_mr);
+ add_locale_string (&file, name->name_mrs);
+ add_locale_string (&file, name->name_miss);
+ add_locale_string (&file, name->name_ms);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_NAME, "LC_NAME", &file);
}
diff --git a/locale/programs/ld-numeric.c b/locale/programs/ld-numeric.c
index 929409cb7a..f759947de4 100644
--- a/locale/programs/ld-numeric.c
+++ b/locale/programs/ld-numeric.c
@@ -133,61 +133,16 @@ numeric_output (struct localedef_t *locale, const struct charmap_t *charmap,
const char *output_path)
{
struct locale_numeric_t *numeric = locale->categories[LC_NUMERIC].numeric;
- struct iovec iov[3 + _NL_ITEM_INDEX (_NL_NUM_LC_NUMERIC)];
- struct locale_file data;
- uint32_t idx[_NL_ITEM_INDEX (_NL_NUM_LC_NUMERIC)];
- size_t cnt = 0;
-
- data.magic = LIMAGIC (LC_NUMERIC);
- data.n = _NL_ITEM_INDEX (_NL_NUM_LC_NUMERIC);
- iov[cnt].iov_base = (void *) &data;
- iov[cnt].iov_len = sizeof (data);
- ++cnt;
-
- iov[cnt].iov_base = (void *) idx;
- iov[cnt].iov_len = sizeof (idx);
- ++cnt;
-
- idx[cnt - 2] = iov[0].iov_len + iov[1].iov_len;
- iov[cnt].iov_base = (void *) (numeric->decimal_point ?: "");
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) (numeric->thousands_sep ?: "");
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = numeric->grouping;
- iov[cnt].iov_len = numeric->grouping_len;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
-
- /* Align following data */
- iov[cnt].iov_base = (void *) "\0\0";
- iov[cnt].iov_len = ((idx[cnt - 2] + 3) & ~3) - idx[cnt - 2];
- idx[cnt - 2] = (idx[cnt - 2] + 3) & ~3;
- ++cnt;
-
- iov[cnt].iov_base = (void *) &numeric->decimal_point_wc;
- iov[cnt].iov_len = sizeof (uint32_t);
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) &numeric->thousands_sep_wc;
- iov[cnt].iov_len = sizeof (uint32_t);
- ++cnt;
-
- idx[cnt - 3] = idx[cnt - 4] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) charmap->code_set_name;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
-
- assert (cnt + 1 == 3 + _NL_ITEM_INDEX (_NL_NUM_LC_NUMERIC));
-
- write_locale_data (output_path, LC_NUMERIC, "LC_NUMERIC",
- 3 + _NL_ITEM_INDEX (_NL_NUM_LC_NUMERIC), iov);
+ struct locale_file file;
+
+ init_locale_data (&file, _NL_ITEM_INDEX (_NL_NUM_LC_NUMERIC));
+ add_locale_string (&file, numeric->decimal_point ?: "");
+ add_locale_string (&file, numeric->thousands_sep ?: "");
+ add_locale_raw_data (&file, numeric->grouping, numeric->grouping_len);
+ add_locale_uint32 (&file, numeric->decimal_point_wc);
+ add_locale_uint32 (&file, numeric->thousands_sep_wc);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_NUMERIC, "LC_NUMERIC", &file);
}
@@ -350,6 +305,9 @@ numeric_read (struct linereader *ldfile, struct localedef_t *result,
if (now->tok != tok_eol)
goto err_label;
+ /* A single -1 means no grouping. */
+ if (act == 1 && grouping[0] == '\177')
+ act--;
grouping[act++] = '\0';
numeric->grouping = xrealloc (grouping, act);
diff --git a/locale/programs/ld-paper.c b/locale/programs/ld-paper.c
index c6239dfd9d..595a600543 100644
--- a/locale/programs/ld-paper.c
+++ b/locale/programs/ld-paper.c
@@ -121,40 +121,13 @@ paper_output (struct localedef_t *locale, const struct charmap_t *charmap,
const char *output_path)
{
struct locale_paper_t *paper = locale->categories[LC_PAPER].paper;
- struct iovec iov[2 + _NL_ITEM_INDEX (_NL_NUM_LC_PAPER)];
- struct locale_file data;
- uint32_t idx[_NL_ITEM_INDEX (_NL_NUM_LC_PAPER)];
- size_t cnt = 0;
-
- data.magic = LIMAGIC (LC_PAPER);
- data.n = _NL_ITEM_INDEX (_NL_NUM_LC_PAPER);
- iov[cnt].iov_base = (void *) &data;
- iov[cnt].iov_len = sizeof (data);
- ++cnt;
-
- iov[cnt].iov_base = (void *) idx;
- iov[cnt].iov_len = sizeof (idx);
- ++cnt;
-
- idx[cnt - 2] = iov[cnt - 2].iov_len + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = &paper->height;
- iov[cnt].iov_len = 4;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = &paper->width;
- iov[cnt].iov_len = 4;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) charmap->code_set_name;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- assert (cnt == 2 + _NL_ITEM_INDEX (_NL_NUM_LC_PAPER));
-
- write_locale_data (output_path, LC_PAPER, "LC_PAPER",
- 2 + _NL_ITEM_INDEX (_NL_NUM_LC_PAPER), iov);
+ struct locale_file file;
+
+ init_locale_data (&file, _NL_ITEM_INDEX (_NL_NUM_LC_PAPER));
+ add_locale_uint32 (&file, paper->height);
+ add_locale_uint32 (&file, paper->width);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_PAPER, "LC_PAPER", &file);
}
diff --git a/locale/programs/ld-telephone.c b/locale/programs/ld-telephone.c
index 4452750921..3e71a36eb8 100644
--- a/locale/programs/ld-telephone.c
+++ b/locale/programs/ld-telephone.c
@@ -175,50 +175,15 @@ telephone_output (struct localedef_t *locale, const struct charmap_t *charmap,
{
struct locale_telephone_t *telephone =
locale->categories[LC_TELEPHONE].telephone;
- struct iovec iov[2 + _NL_ITEM_INDEX (_NL_NUM_LC_TELEPHONE)];
- struct locale_file data;
- uint32_t idx[_NL_ITEM_INDEX (_NL_NUM_LC_TELEPHONE)];
- size_t cnt = 0;
-
- data.magic = LIMAGIC (LC_TELEPHONE);
- data.n = _NL_ITEM_INDEX (_NL_NUM_LC_TELEPHONE);
- iov[cnt].iov_base = (void *) &data;
- iov[cnt].iov_len = sizeof (data);
- ++cnt;
-
- iov[cnt].iov_base = (void *) idx;
- iov[cnt].iov_len = sizeof (idx);
- ++cnt;
-
- idx[cnt - 2] = iov[0].iov_len + iov[1].iov_len;
- iov[cnt].iov_base = (void *) telephone->tel_int_fmt;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) telephone->tel_dom_fmt;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) telephone->int_select;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) telephone->int_prefix;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- idx[cnt - 2] = idx[cnt - 3] + iov[cnt - 1].iov_len;
- iov[cnt].iov_base = (void *) charmap->code_set_name;;
- iov[cnt].iov_len = strlen (iov[cnt].iov_base) + 1;
- ++cnt;
-
- assert (cnt == 2 + _NL_ITEM_INDEX (_NL_NUM_LC_TELEPHONE));
-
- write_locale_data (output_path, LC_TELEPHONE, "LC_TELEPHONE",
- 2 + _NL_ITEM_INDEX (_NL_NUM_LC_TELEPHONE), iov);
+ struct locale_file file;
+
+ init_locale_data (&file, _NL_ITEM_INDEX (_NL_NUM_LC_TELEPHONE));
+ add_locale_string (&file, telephone->tel_int_fmt);
+ add_locale_string (&file, telephone->tel_dom_fmt);
+ add_locale_string (&file, telephone->int_select);
+ add_locale_string (&file, telephone->int_prefix);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_TELEPHONE, "LC_TELEPHONE", &file);
}
diff --git a/locale/programs/ld-time.c b/locale/programs/ld-time.c
index d3646b8717..5956cb32cf 100644
--- a/locale/programs/ld-time.c
+++ b/locale/programs/ld-time.c
@@ -539,394 +539,116 @@ time_output (struct localedef_t *locale, const struct charmap_t *charmap,
const char *output_path)
{
struct locale_time_t *time = locale->categories[LC_TIME].time;
- struct iovec *iov = alloca (sizeof *iov
- * (2 + _NL_ITEM_INDEX (_NL_NUM_LC_TIME)
- + time->num_era - 1
- + 2 * 99
- + 2 + time->num_era * 10));
- struct locale_file data;
- uint32_t idx[_NL_ITEM_INDEX (_NL_NUM_LC_TIME)];
- size_t cnt, last_idx, num, n;
+ struct locale_file file;
+ size_t num, n;
- data.magic = LIMAGIC (LC_TIME);
- data.n = _NL_ITEM_INDEX (_NL_NUM_LC_TIME);
- iov[0].iov_base = (void *) &data;
- iov[0].iov_len = sizeof (data);
-
- iov[1].iov_base = (void *) idx;
- iov[1].iov_len = sizeof (idx);
-
- idx[0] = iov[0].iov_len + iov[1].iov_len;
+ init_locale_data (&file, _NL_ITEM_INDEX (_NL_NUM_LC_TIME));
/* The ab'days. */
- for (cnt = 0; cnt <= _NL_ITEM_INDEX (ABDAY_7); ++cnt)
- {
- iov[2 + cnt].iov_base =
- (void *) (time->abday[cnt - _NL_ITEM_INDEX (ABDAY_1)] ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- }
+ for (n = 0; n < 7; ++n)
+ add_locale_string (&file, time->abday[n] ?: "");
/* The days. */
- for (; cnt <= _NL_ITEM_INDEX (DAY_7); ++cnt)
- {
- iov[2 + cnt].iov_base =
- (void *) (time->day[cnt - _NL_ITEM_INDEX (DAY_1)] ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- }
+ for (n = 0; n < 7; ++n)
+ add_locale_string (&file, time->day[n] ?: "");
/* The ab'mons. */
- for (; cnt <= _NL_ITEM_INDEX (ABMON_12); ++cnt)
- {
- iov[2 + cnt].iov_base =
- (void *) (time->abmon[cnt - _NL_ITEM_INDEX (ABMON_1)] ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- }
+ for (n = 0; n < 12; ++n)
+ add_locale_string (&file, time->abmon[n] ?: "");
/* The mons. */
- for (; cnt <= _NL_ITEM_INDEX (MON_12); ++cnt)
- {
- iov[2 + cnt].iov_base =
- (void *) (time->mon[cnt - _NL_ITEM_INDEX (MON_1)] ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- }
+ for (n = 0; n < 12; ++n)
+ add_locale_string (&file, time->mon[n] ?: "");
/* AM/PM. */
- for (; cnt <= _NL_ITEM_INDEX (PM_STR); ++cnt)
- {
- iov[2 + cnt].iov_base =
- (void *) (time->am_pm[cnt - _NL_ITEM_INDEX (AM_STR)] ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- }
+ for (n = 0; n < 2; ++n)
+ add_locale_string (&file, time->am_pm[n]);
- iov[2 + cnt].iov_base = (void *) (time->d_t_fmt ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- ++cnt;
+ add_locale_string (&file, time->d_t_fmt ?: "");
+ add_locale_string (&file, time->d_fmt ?: "");
+ add_locale_string (&file, time->t_fmt ?: "");
+ add_locale_string (&file, time->t_fmt_ampm ?: "");
- iov[2 + cnt].iov_base = (void *) (time->d_fmt ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- ++cnt;
+ start_locale_structure (&file);
+ for (num = 0; num < time->num_era; ++num)
+ add_locale_string (&file, time->era[num]);
+ end_locale_structure (&file);
- iov[2 + cnt].iov_base = (void *) (time->t_fmt ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- ++cnt;
+ add_locale_string (&file, time->era_year ?: "");
+ add_locale_string (&file, time->era_d_fmt ?: "");
- iov[2 + cnt].iov_base = (void *) (time->t_fmt_ampm ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + cnt] = idx[cnt] + iov[2 + cnt].iov_len;
- last_idx = ++cnt;
+ start_locale_structure (&file);
+ for (num = 0; num < 100; ++num)
+ add_locale_string (&file, time->alt_digits[num] ?: "");
+ end_locale_structure (&file);
- idx[1 + last_idx] = idx[last_idx];
- for (num = 0; num < time->num_era; ++num, ++cnt)
- {
- iov[2 + cnt].iov_base = (void *) time->era[num];
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + last_idx] += iov[2 + cnt].iov_len;
- }
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->era_year ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->era_d_fmt ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- idx[1 + last_idx] = idx[last_idx];
- for (num = 0; num < 100; ++num, ++cnt)
- {
- iov[2 + cnt].iov_base = (void *) (time->alt_digits[num] ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + last_idx] += iov[2 + cnt].iov_len;
- }
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->era_d_t_fmt ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->era_t_fmt ?: "");
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
-
- /* We must align the following data. */
- iov[2 + cnt].iov_base = (void *) "\0\0";
- iov[2 + cnt].iov_len = ((idx[last_idx] + 3) & ~3) - idx[last_idx];
- idx[last_idx] = (idx[last_idx] + 3) & ~3;
- ++cnt;
-
- /* The `era' data in usable form. */
- iov[2 + cnt].iov_base = (void *) &time->num_era;
- iov[2 + cnt].iov_len = sizeof (uint32_t);
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- idx[1 + last_idx] = idx[last_idx];
+ add_locale_string (&file, time->era_d_t_fmt ?: "");
+ add_locale_string (&file, time->era_t_fmt ?: "");
+ add_locale_uint32 (&file, time->num_era);
+
+ start_locale_structure (&file);
for (num = 0; num < time->num_era; ++num)
{
- size_t l, l2;
-
- iov[2 + cnt].iov_base = (void *) &time->era_entries[num].direction;
- iov[2 + cnt].iov_len = sizeof (int32_t);
- ++cnt;
- iov[2 + cnt].iov_base = (void *) &time->era_entries[num].offset;
- iov[2 + cnt].iov_len = sizeof (int32_t);
- ++cnt;
- iov[2 + cnt].iov_base = (void *) &time->era_entries[num].start_date[0];
- iov[2 + cnt].iov_len = sizeof (int32_t);
- ++cnt;
- iov[2 + cnt].iov_base = (void *) &time->era_entries[num].start_date[1];
- iov[2 + cnt].iov_len = sizeof (int32_t);
- ++cnt;
- iov[2 + cnt].iov_base = (void *) &time->era_entries[num].start_date[2];
- iov[2 + cnt].iov_len = sizeof (int32_t);
- ++cnt;
- iov[2 + cnt].iov_base = (void *) &time->era_entries[num].stop_date[0];
- iov[2 + cnt].iov_len = sizeof (int32_t);
- ++cnt;
- iov[2 + cnt].iov_base = (void *) &time->era_entries[num].stop_date[1];
- iov[2 + cnt].iov_len = sizeof (int32_t);
- ++cnt;
- iov[2 + cnt].iov_base = (void *) &time->era_entries[num].stop_date[2];
- iov[2 + cnt].iov_len = sizeof (int32_t);
- ++cnt;
-
- l = ((char *) rawmemchr (time->era_entries[num].format, '\0')
- - time->era_entries[num].name) + 1;
- l2 = (l + 3) & ~3;
- iov[2 + cnt].iov_base = alloca (l2);
- memset (mempcpy (iov[2 + cnt].iov_base, time->era_entries[num].name, l),
- '\0', l2 - l);
- iov[2 + cnt].iov_len = l2;
- ++cnt;
-
- idx[1 + last_idx] += 8 * sizeof (int32_t) + l2;
-
- assert (idx[1 + last_idx] % 4 == 0);
-
- iov[2 + cnt].iov_base = (void *) time->era_entries[num].wname;
- iov[2 + cnt].iov_len = ((wcschr ((wchar_t *) time->era_entries[num].wformat, L'\0')
- - (wchar_t *) time->era_entries[num].wname + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] += iov[2 + cnt].iov_len;
- ++cnt;
+ add_locale_uint32 (&file, time->era_entries[num].direction);
+ add_locale_uint32 (&file, time->era_entries[num].offset);
+ add_locale_uint32 (&file, time->era_entries[num].start_date[0]);
+ add_locale_uint32 (&file, time->era_entries[num].start_date[1]);
+ add_locale_uint32 (&file, time->era_entries[num].start_date[2]);
+ add_locale_uint32 (&file, time->era_entries[num].stop_date[0]);
+ add_locale_uint32 (&file, time->era_entries[num].stop_date[1]);
+ add_locale_uint32 (&file, time->era_entries[num].stop_date[2]);
+ add_locale_string (&file, time->era_entries[num].name);
+ add_locale_string (&file, time->era_entries[num].format);
+ add_locale_wstring (&file, time->era_entries[num].wname);
+ add_locale_wstring (&file, time->era_entries[num].wformat);
}
- ++last_idx;
+ end_locale_structure (&file);
/* The wide character ab'days. */
- for (n = 0; n < 7; ++n, ++cnt, ++last_idx)
- {
- iov[2 + cnt].iov_base =
- (void *) (time->wabday[n] ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- }
+ for (n = 0; n < 7; ++n)
+ add_locale_wstring (&file, time->wabday[n] ?: empty_wstr);
/* The wide character days. */
- for (n = 0; n < 7; ++n, ++cnt, ++last_idx)
- {
- iov[2 + cnt].iov_base =
- (void *) (time->wday[n] ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- }
+ for (n = 0; n < 7; ++n)
+ add_locale_wstring (&file, time->wday[n] ?: empty_wstr);
/* The wide character ab'mons. */
- for (n = 0; n < 12; ++n, ++cnt, ++last_idx)
- {
- iov[2 + cnt].iov_base =
- (void *) (time->wabmon[n] ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- }
+ for (n = 0; n < 12; ++n)
+ add_locale_wstring (&file, time->wabmon[n] ?: empty_wstr);
/* The wide character mons. */
- for (n = 0; n < 12; ++n, ++cnt, ++last_idx)
- {
- iov[2 + cnt].iov_base =
- (void *) (time->wmon[n] ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- }
+ for (n = 0; n < 12; ++n)
+ add_locale_wstring (&file, time->wmon[n] ?: empty_wstr);
/* Wide character AM/PM. */
- for (n = 0; n < 2; ++n, ++cnt, ++last_idx)
- {
- iov[2 + cnt].iov_base =
- (void *) (time->wam_pm[n] ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- }
-
- iov[2 + cnt].iov_base = (void *) (time->wd_t_fmt ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->wd_fmt ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->wt_fmt ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->wt_fmt_ampm ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->wera_year ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->wera_d_fmt ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- idx[1 + last_idx] = idx[last_idx];
- for (num = 0; num < 100; ++num, ++cnt)
- {
- iov[2 + cnt].iov_base = (void *) (time->walt_digits[num]
- ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] += iov[2 + cnt].iov_len;
- }
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->wera_d_t_fmt ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) (time->wera_t_fmt ?: empty_wstr);
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) &time->week_ndays;
- iov[2 + cnt].iov_len = 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- /* We must align the following data. */
- iov[2 + cnt].iov_base = (void *) "\0\0";
- iov[2 + cnt].iov_len = ((idx[last_idx] + 3) & ~3) - idx[last_idx];
- idx[last_idx] = (idx[last_idx] + 3) & ~3;
- ++cnt;
-
- iov[2 + cnt].iov_base = (void *) &time->week_1stday;
- iov[2 + cnt].iov_len = sizeof(uint32_t);
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) &time->week_1stweek;
- iov[2 + cnt].iov_len = 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) &time->first_weekday;
- iov[2 + cnt].iov_len = 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) &time->first_workday;
- iov[2 + cnt].iov_len = 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) &time->cal_direction;
- iov[2 + cnt].iov_len = 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) time->timezone;
- iov[2 + cnt].iov_len = strlen (time->timezone) + 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) time->date_fmt;
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- /* We must align the following data. */
- iov[2 + cnt].iov_base = (void *) "\0\0";
- iov[2 + cnt].iov_len = -idx[last_idx] & 3;
- idx[last_idx] += -idx[last_idx] & 3;
- ++cnt;
-
- iov[2 + cnt].iov_base = (void *) time->wdate_fmt;
- iov[2 + cnt].iov_len = ((wcslen (iov[2 + cnt].iov_base) + 1)
- * sizeof (uint32_t));
- idx[1 + last_idx] = idx[last_idx] + iov[2 + cnt].iov_len;
- ++cnt;
- ++last_idx;
-
- iov[2 + cnt].iov_base = (void *) charmap->code_set_name;
- iov[2 + cnt].iov_len = strlen (iov[2 + cnt].iov_base) + 1;
- ++cnt;
- ++last_idx;
-
- assert (cnt == (_NL_ITEM_INDEX (_NL_NUM_LC_TIME)
- + time->num_era - 1
- + 2 * 99
- + 2 + time->num_era * 10));
- assert (last_idx == _NL_ITEM_INDEX (_NL_NUM_LC_TIME));
-
- write_locale_data (output_path, LC_TIME, "LC_TIME", 2 + cnt, iov);
+ for (n = 0; n < 2; ++n)
+ add_locale_wstring (&file, time->wam_pm[n] ?: empty_wstr);
+
+ add_locale_wstring (&file, time->wd_t_fmt ?: empty_wstr);
+ add_locale_wstring (&file, time->wd_fmt ?: empty_wstr);
+ add_locale_wstring (&file, time->wt_fmt ?: empty_wstr);
+ add_locale_wstring (&file, time->wt_fmt_ampm ?: empty_wstr);
+ add_locale_wstring (&file, time->wera_year ?: empty_wstr);
+ add_locale_wstring (&file, time->wera_d_fmt ?: empty_wstr);
+
+ start_locale_structure (&file);
+ for (num = 0; num < 100; ++num)
+ add_locale_wstring (&file, time->walt_digits[num] ?: empty_wstr);
+ end_locale_structure (&file);
+
+ add_locale_wstring (&file, time->wera_d_t_fmt ?: empty_wstr);
+ add_locale_wstring (&file, time->wera_t_fmt ?: empty_wstr);
+ add_locale_char (&file, time->week_ndays);
+ add_locale_uint32 (&file, time->week_1stday);
+ add_locale_char (&file, time->week_1stweek);
+ add_locale_char (&file, time->first_weekday);
+ add_locale_char (&file, time->first_workday);
+ add_locale_char (&file, time->cal_direction);
+ add_locale_string (&file, time->timezone);
+ add_locale_string (&file, time->date_fmt);
+ add_locale_wstring (&file, time->wdate_fmt);
+ add_locale_string (&file, charmap->code_set_name);
+ write_locale_data (output_path, LC_TIME, "LC_TIME", &file);
}
diff --git a/locale/programs/locale.c b/locale/programs/locale.c
index 14d34e693d..d2b28d08f8 100644
--- a/locale/programs/locale.c
+++ b/locale/programs/locale.c
@@ -895,7 +895,7 @@ show_info (const char *name)
printf ("%s=", item->name);
if (val != NULL)
- printf ("%d", *val == '\177' ? -1 : *val);
+ printf ("%d", *val == '\377' ? -1 : *val);
putchar ('\n');
}
break;
@@ -927,6 +927,24 @@ show_info (const char *name)
printf ("%d\n", val.word);
}
break;
+ case wordarray:
+ {
+ int first = 1;
+ union { unsigned int *wordarray; char *string; } val;
+ int cnt;
+
+ val.string = nl_langinfo (item->item_id);
+ if (show_keyword_name)
+ printf ("%s=", item->name);
+
+ for (cnt = 0; cnt < item->max; ++cnt)
+ {
+ printf ("%s%d", first ? "" : ";", val.wordarray[cnt]);
+ first = 0;
+ }
+ putchar ('\n');
+ }
+ break;
case wstring:
case wstringarray:
case wstringlist:
diff --git a/locale/programs/localedef.c b/locale/programs/localedef.c
index 5a14f2ce32..d664232473 100644
--- a/locale/programs/localedef.c
+++ b/locale/programs/localedef.c
@@ -112,6 +112,8 @@ void (*argp_program_version_hook) (FILE *, struct argp_state *) = print_version;
#define OPT_REPLACE 307
#define OPT_DELETE_FROM_ARCHIVE 308
#define OPT_LIST_ARCHIVE 309
+#define OPT_LITTLE_ENDIAN 400
+#define OPT_BIG_ENDIAN 401
/* Definitions of arguments for argp functions. */
static const struct argp_option options[] =
@@ -144,6 +146,10 @@ static const struct argp_option options[] =
{ "list-archive", OPT_LIST_ARCHIVE, NULL, 0, N_("List content of archive") },
{ "alias-file", 'A', N_("FILE"), 0,
N_("locale.alias file to consult when making archive")},
+ { "little-endian", OPT_LITTLE_ENDIAN, NULL, 0,
+ N_("Generate little-endian output") },
+ { "big-endian", OPT_BIG_ENDIAN, NULL, 0,
+ N_("Generate big-endian output") },
{ NULL, 0, NULL, 0, NULL }
};
@@ -203,7 +209,7 @@ main (int argc, char *argv[])
/* Handle a few special cases. */
if (list_archive)
- show_archive_content (verbose);
+ show_archive_content (remaining > 1 ? argv[remaining] : NULL, verbose);
if (add_to_archive)
return add_locales_to_archive (argc - remaining, &argv[remaining],
replace_archive);
@@ -326,6 +332,12 @@ parse_opt (int key, char *arg, struct argp_state *state)
case OPT_LIST_ARCHIVE:
list_archive = true;
break;
+ case OPT_LITTLE_ENDIAN:
+ set_big_endian (false);
+ break;
+ case OPT_BIG_ENDIAN:
+ set_big_endian (true);
+ break;
case 'c':
force_output = 1;
break;
diff --git a/locale/programs/localedef.h b/locale/programs/localedef.h
index e010c72983..5a05a2e382 100644
--- a/locale/programs/localedef.h
+++ b/locale/programs/localedef.h
@@ -170,7 +170,9 @@ extern int add_locales_to_archive (size_t nlist, char *list[], bool replace);
/* Removed named locales from archive. */
extern int delete_locales_from_archive (size_t nlist, char *list[]);
-/* List content of locale archive. */
-extern void show_archive_content (int verbose) __attribute__ ((noreturn));
+/* List content of locale archive. If FNAME is non-null use that as
+ the locale archive to list, otherwise the default. */
+extern void show_archive_content (const char *fname,
+ int verbose) __attribute__ ((noreturn));
#endif /* localedef.h */
diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c
index f7225b8bea..4ec24d611e 100644
--- a/locale/programs/locarchive.c
+++ b/locale/programs/locarchive.c
@@ -46,6 +46,7 @@
#include "../localeinfo.h"
#include "../locarchive.h"
#include "localedef.h"
+#include "locfile.h"
/* Define the hash function. We define the function as static inline.
We must change the name so as not to conflict with simple-hash.h. */
@@ -74,6 +75,13 @@ static const char *locnames[] =
#define INITIAL_NUM_SUMS 2000
+/* Get and set values (possibly endian-swapped) in structures mapped
+ from or written directly to locale archives. */
+#define GET(FIELD) maybe_swap_uint32 (FIELD)
+#define SET(FIELD, VALUE) ((FIELD) = maybe_swap_uint32 (VALUE))
+#define INC(FIELD, INCREMENT) SET (FIELD, GET (FIELD) + (INCREMENT))
+
+
/* Size of the reserved address space area. */
#define RESERVE_MMAP_SIZE 512 * 1024 * 1024
@@ -125,27 +133,31 @@ create_archive (const char *archivefname, struct locarhandle *ah)
error (EXIT_FAILURE, errno, _("cannot create temporary file: %s"), fname);
/* Create the initial content of the archive. */
- head.magic = AR_MAGIC;
- head.serial = 0;
- head.namehash_offset = sizeof (struct locarhead);
- head.namehash_used = 0;
- head.namehash_size = next_prime (INITIAL_NUM_NAMES);
-
- head.string_offset = (head.namehash_offset
- + head.namehash_size * sizeof (struct namehashent));
- head.string_used = 0;
- head.string_size = INITIAL_SIZE_STRINGS;
-
- head.locrectab_offset = head.string_offset + head.string_size;
- head.locrectab_used = 0;
- head.locrectab_size = INITIAL_NUM_LOCREC;
-
- head.sumhash_offset = (head.locrectab_offset
- + head.locrectab_size * sizeof (struct locrecent));
- head.sumhash_used = 0;
- head.sumhash_size = next_prime (INITIAL_NUM_SUMS);
-
- total = head.sumhash_offset + head.sumhash_size * sizeof (struct sumhashent);
+ SET (head.magic, AR_MAGIC);
+ SET (head.serial, 0);
+ SET (head.namehash_offset, sizeof (struct locarhead));
+ SET (head.namehash_used, 0);
+ SET (head.namehash_size, next_prime (INITIAL_NUM_NAMES));
+
+ SET (head.string_offset,
+ (GET (head.namehash_offset)
+ + GET (head.namehash_size) * sizeof (struct namehashent)));
+ SET (head.string_used, 0);
+ SET (head.string_size, INITIAL_SIZE_STRINGS);
+
+ SET (head.locrectab_offset,
+ GET (head.string_offset) + GET (head.string_size));
+ SET (head.locrectab_used, 0);
+ SET (head.locrectab_size, INITIAL_NUM_LOCREC);
+
+ SET (head.sumhash_offset,
+ (GET (head.locrectab_offset)
+ + GET (head.locrectab_size) * sizeof (struct locrecent)));
+ SET (head.sumhash_used, 0);
+ SET (head.sumhash_size, next_prime (INITIAL_NUM_SUMS));
+
+ total = (GET (head.sumhash_offset)
+ + GET (head.sumhash_size) * sizeof (struct sumhashent));
/* Write out the header and create room for the other data structures. */
if (TEMP_FAILURE_RETRY (write (fd, &head, sizeof (head))) != sizeof (head))
@@ -211,6 +223,7 @@ create_archive (const char *archivefname, struct locarhandle *ah)
_("cannot change mode of new locale archive"));
}
+ ah->fname = NULL;
ah->fd = fd;
ah->mmap_base = mmap_base;
ah->mmap_len = mmap_len;
@@ -240,10 +253,10 @@ oldlocrecentcmp (const void *a, const void *b)
for (cnt = 0; cnt < __LC_LAST; ++cnt)
if (cnt != LC_ALL)
{
- if (la->record[cnt].offset < start_a)
- start_a = la->record[cnt].offset;
- if (la->record[cnt].offset + la->record[cnt].len > end_a)
- end_a = la->record[cnt].offset + la->record[cnt].len;
+ if (GET (la->record[cnt].offset) < start_a)
+ start_a = GET (la->record[cnt].offset);
+ if (GET (la->record[cnt].offset) + GET (la->record[cnt].len) > end_a)
+ end_a = GET (la->record[cnt].offset) + GET (la->record[cnt].len);
}
assert (start_a != (uint32_t)-1);
assert (end_a != 0);
@@ -251,10 +264,10 @@ oldlocrecentcmp (const void *a, const void *b)
for (cnt = 0; cnt < __LC_LAST; ++cnt)
if (cnt != LC_ALL)
{
- if (lb->record[cnt].offset < start_b)
- start_b = lb->record[cnt].offset;
- if (lb->record[cnt].offset + lb->record[cnt].len > end_b)
- end_b = lb->record[cnt].offset + lb->record[cnt].len;
+ if (GET (lb->record[cnt].offset) < start_b)
+ start_b = GET (lb->record[cnt].offset);
+ if (GET (lb->record[cnt].offset) + GET (lb->record[cnt].len) > end_b)
+ end_b = GET (lb->record[cnt].offset) + GET (lb->record[cnt].len);
}
assert (start_b != (uint32_t)-1);
assert (end_b != 0);
@@ -371,38 +384,42 @@ enlarge_archive (struct locarhandle *ah, const struct locarhead *head)
/* Create the new archive header. The sizes of the various tables
should be double from what is currently used. */
- newhead.namehash_size = MAX (next_prime (2 * newhead.namehash_used),
- newhead.namehash_size);
+ SET (newhead.namehash_size,
+ MAX (next_prime (2 * GET (newhead.namehash_used)),
+ GET (newhead.namehash_size)));
if (verbose)
printf ("name: size: %u, used: %d, new: size: %u\n",
- head->namehash_size, head->namehash_used, newhead.namehash_size);
+ GET (head->namehash_size),
+ GET (head->namehash_used), GET (newhead.namehash_size));
- newhead.string_offset = (newhead.namehash_offset
- + (newhead.namehash_size
- * sizeof (struct namehashent)));
+ SET (newhead.string_offset, (GET (newhead.namehash_offset)
+ + (GET (newhead.namehash_size)
+ * sizeof (struct namehashent))));
/* Keep the string table size aligned to 4 bytes, so that
all the struct { uint32_t } types following are happy. */
- newhead.string_size = MAX ((2 * newhead.string_used + 3) & -4,
- newhead.string_size);
+ SET (newhead.string_size, MAX ((2 * GET (newhead.string_used) + 3) & -4,
+ GET (newhead.string_size)));
- newhead.locrectab_offset = newhead.string_offset + newhead.string_size;
- newhead.locrectab_size = MAX (2 * newhead.locrectab_used,
- newhead.locrectab_size);
+ SET (newhead.locrectab_offset,
+ GET (newhead.string_offset) + GET (newhead.string_size));
+ SET (newhead.locrectab_size, MAX (2 * GET (newhead.locrectab_used),
+ GET (newhead.locrectab_size)));
- newhead.sumhash_offset = (newhead.locrectab_offset
- + (newhead.locrectab_size
- * sizeof (struct locrecent)));
- newhead.sumhash_size = MAX (next_prime (2 * newhead.sumhash_used),
- newhead.sumhash_size);
+ SET (newhead.sumhash_offset, (GET (newhead.locrectab_offset)
+ + (GET (newhead.locrectab_size)
+ * sizeof (struct locrecent))));
+ SET (newhead.sumhash_size,
+ MAX (next_prime (2 * GET (newhead.sumhash_used)),
+ GET (newhead.sumhash_size)));
- total = (newhead.sumhash_offset
- + newhead.sumhash_size * sizeof (struct sumhashent));
+ total = (GET (newhead.sumhash_offset)
+ + GET (newhead.sumhash_size) * sizeof (struct sumhashent));
/* The new file is empty now. */
- newhead.namehash_used = 0;
- newhead.string_used = 0;
- newhead.locrectab_used = 0;
- newhead.sumhash_used = 0;
+ SET (newhead.namehash_used, 0);
+ SET (newhead.string_used, 0);
+ SET (newhead.locrectab_used, 0);
+ SET (newhead.sumhash_used, 0);
/* Write out the header and create room for the other data structures. */
if (TEMP_FAILURE_RETRY (write (fd, &newhead, sizeof (newhead)))
@@ -462,17 +479,17 @@ enlarge_archive (struct locarhandle *ah, const struct locarhead *head)
/* Walk through the hash name hash table to find out what data is
still referenced and transfer it into the new file. */
oldnamehashtab = (struct namehashent *) ((char *) ah->addr
- + head->namehash_offset);
+ + GET (head->namehash_offset));
/* Sort the old locrec table in order of data position. */
- struct oldlocrecent oldlocrecarray[head->namehash_size];
- for (cnt = 0, loccnt = 0; cnt < head->namehash_size; ++cnt)
- if (oldnamehashtab[cnt].locrec_offset != 0)
+ struct oldlocrecent oldlocrecarray[GET (head->namehash_size)];
+ for (cnt = 0, loccnt = 0; cnt < GET (head->namehash_size); ++cnt)
+ if (GET (oldnamehashtab[cnt].locrec_offset) != 0)
{
oldlocrecarray[loccnt].cnt = cnt;
oldlocrecarray[loccnt++].locrec
= (struct locrecent *) ((char *) ah->addr
- + oldnamehashtab[cnt].locrec_offset);
+ + GET (oldnamehashtab[cnt].locrec_offset));
}
qsort (oldlocrecarray, loccnt, sizeof (struct oldlocrecent),
oldlocrecentcmp);
@@ -488,9 +505,9 @@ enlarge_archive (struct locarhandle *ah, const struct locarhead *head)
for (idx = 0; idx < __LC_LAST; ++idx)
if (idx != LC_ALL)
{
- old_data[idx].size = oldlocrec->record[idx].len;
+ old_data[idx].size = GET (oldlocrec->record[idx].len);
old_data[idx].addr
- = ((char *) ah->addr + oldlocrec->record[idx].offset);
+ = ((char *) ah->addr + GET (oldlocrec->record[idx].offset));
__md5_buffer (old_data[idx].addr, old_data[idx].size,
old_data[idx].sum);
@@ -500,20 +517,23 @@ enlarge_archive (struct locarhandle *ah, const struct locarhead *head)
{
const char *oldname
= ((char *) ah->addr
- + oldnamehashtab[oldlocrecarray[cnt - 1].cnt].name_offset);
-
- add_alias (&new_ah,
- ((char *) ah->addr
- + oldnamehashtab[oldlocrecarray[cnt].cnt].name_offset),
- 0, oldname, &last_locrec_offset);
+ + GET (oldnamehashtab[oldlocrecarray[cnt
+ - 1].cnt].name_offset));
+
+ add_alias
+ (&new_ah,
+ ((char *) ah->addr
+ + GET (oldnamehashtab[oldlocrecarray[cnt].cnt].name_offset)),
+ 0, oldname, &last_locrec_offset);
continue;
}
last_locrec_offset =
- add_locale (&new_ah,
- ((char *) ah->addr
- + oldnamehashtab[oldlocrecarray[cnt].cnt].name_offset),
- old_data, 0);
+ add_locale
+ (&new_ah,
+ ((char *) ah->addr
+ + GET (oldnamehashtab[oldlocrecarray[cnt].cnt].name_offset)),
+ old_data, 0);
if (last_locrec_offset == 0)
error (EXIT_FAILURE, 0, _("cannot extend locale archive file"));
}
@@ -552,11 +572,17 @@ open_archive (struct locarhandle *ah, bool readonly)
struct locarhead head;
int retry = 0;
size_t prefix_len = output_prefix ? strlen (output_prefix) : 0;
- char archivefname[prefix_len + sizeof (ARCHIVE_NAME)];
+ char default_fname[prefix_len + sizeof (ARCHIVE_NAME)];
+ const char *archivefname = ah->fname;
- if (output_prefix)
- memcpy (archivefname, output_prefix, prefix_len);
- strcpy (archivefname + prefix_len, ARCHIVE_NAME);
+ /* If ah has a non-NULL fname open that otherwise open the default. */
+ if (archivefname == NULL)
+ {
+ archivefname = default_fname;
+ if (output_prefix)
+ memcpy (default_fname, output_prefix, prefix_len);
+ strcpy (default_fname + prefix_len, ARCHIVE_NAME);
+ }
while (1)
{
@@ -564,8 +590,11 @@ open_archive (struct locarhandle *ah, bool readonly)
fd = open64 (archivefname, readonly ? O_RDONLY : O_RDWR);
if (fd == -1)
{
- /* Maybe the file does not yet exist. */
- if (errno == ENOENT)
+ /* Maybe the file does not yet exist? If we are opening
+ the default locale archive we ignore the failure and
+ list an empty archive, otherwise we print an error
+ and exit. */
+ if (errno == ENOENT && archivefname == default_fname)
{
if (readonly)
{
@@ -690,26 +719,28 @@ insert_name (struct locarhandle *ah,
{
const struct locarhead *const head = ah->addr;
struct namehashent *namehashtab
- = (struct namehashent *) ((char *) ah->addr + head->namehash_offset);
+ = (struct namehashent *) ((char *) ah->addr
+ + GET (head->namehash_offset));
unsigned int insert_idx, idx, incr;
/* Hash value of the locale name. */
uint32_t hval = archive_hashval (name, name_len);
insert_idx = -1;
- idx = hval % head->namehash_size;
- incr = 1 + hval % (head->namehash_size - 2);
+ idx = hval % GET (head->namehash_size);
+ incr = 1 + hval % (GET (head->namehash_size) - 2);
/* If the name_offset field is zero this means this is a
deleted entry and therefore no entry can be found. */
- while (namehashtab[idx].name_offset != 0)
+ while (GET (namehashtab[idx].name_offset) != 0)
{
- if (namehashtab[idx].hashval == hval
- && strcmp (name,
- (char *) ah->addr + namehashtab[idx].name_offset) == 0)
+ if (GET (namehashtab[idx].hashval) == hval
+ && (strcmp (name,
+ (char *) ah->addr + GET (namehashtab[idx].name_offset))
+ == 0))
{
/* Found the entry. */
- if (namehashtab[idx].locrec_offset != 0 && ! replace)
+ if (GET (namehashtab[idx].locrec_offset) != 0 && ! replace)
{
if (! be_quiet)
error (0, 0, _("locale '%s' already exists"), name);
@@ -719,26 +750,27 @@ insert_name (struct locarhandle *ah,
break;
}
- if (namehashtab[idx].hashval == hval && ! be_quiet)
+ if (GET (namehashtab[idx].hashval) == hval && ! be_quiet)
{
error (0, 0, "hash collision (%u) %s, %s",
- hval, name, (char *) ah->addr + namehashtab[idx].name_offset);
+ hval, name,
+ (char *) ah->addr + GET (namehashtab[idx].name_offset));
}
/* Remember the first place we can insert the new entry. */
- if (namehashtab[idx].locrec_offset == 0 && insert_idx == -1)
+ if (GET (namehashtab[idx].locrec_offset) == 0 && insert_idx == -1)
insert_idx = idx;
idx += incr;
- if (idx >= head->namehash_size)
- idx -= head->namehash_size;
+ if (idx >= GET (head->namehash_size))
+ idx -= GET (head->namehash_size);
}
/* Add as early as possible. */
if (insert_idx != -1)
idx = insert_idx;
- namehashtab[idx].hashval = hval; /* no-op if replacing an old entry. */
+ SET (namehashtab[idx].hashval, hval); /* no-op if replacing an old entry. */
return &namehashtab[idx];
}
@@ -754,12 +786,13 @@ add_alias (struct locarhandle *ah, const char *alias, bool replace,
if (namehashent == NULL && ! replace)
return;
- if (namehashent->name_offset == 0)
+ if (GET (namehashent->name_offset) == 0)
{
/* We are adding a new hash entry for this alias.
Determine whether we have to resize the file. */
- if (head->string_used + name_len + 1 > head->string_size
- || 100 * head->namehash_used > 75 * head->namehash_size)
+ if (GET (head->string_used) + name_len + 1 > GET (head->string_size)
+ || (100 * GET (head->namehash_used)
+ > 75 * GET (head->namehash_size)))
{
/* The current archive is not large enough. */
enlarge_archive (ah, head);
@@ -767,9 +800,9 @@ add_alias (struct locarhandle *ah, const char *alias, bool replace,
/* The locrecent might have moved, so we have to look up
the old name afresh. */
namehashent = insert_name (ah, oldname, strlen (oldname), true);
- assert (namehashent->name_offset != 0);
- assert (namehashent->locrec_offset != 0);
- *locrec_offset_p = namehashent->locrec_offset;
+ assert (GET (namehashent->name_offset) != 0);
+ assert (GET (namehashent->locrec_offset) != 0);
+ *locrec_offset_p = GET (namehashent->locrec_offset);
/* Tail call to try the whole thing again. */
add_alias (ah, alias, replace, oldname, locrec_offset_p);
@@ -777,26 +810,27 @@ add_alias (struct locarhandle *ah, const char *alias, bool replace,
}
/* Add the name string. */
- memcpy (ah->addr + head->string_offset + head->string_used,
+ memcpy (ah->addr + GET (head->string_offset) + GET (head->string_used),
alias, name_len + 1);
- namehashent->name_offset = head->string_offset + head->string_used;
- head->string_used += name_len + 1;
+ SET (namehashent->name_offset,
+ GET (head->string_offset) + GET (head->string_used));
+ INC (head->string_used, name_len + 1);
- ++head->namehash_used;
+ INC (head->namehash_used, 1);
}
- if (namehashent->locrec_offset != 0)
+ if (GET (namehashent->locrec_offset) != 0)
{
/* Replacing an existing entry.
Mark that we are no longer using the old locrecent. */
struct locrecent *locrecent
= (struct locrecent *) ((char *) ah->addr
- + namehashent->locrec_offset);
- --locrecent->refs;
+ + GET (namehashent->locrec_offset));
+ INC (locrecent->refs, -1);
}
/* Point this entry at the locrecent installed for the main name. */
- namehashent->locrec_offset = locrec_offset;
+ SET (namehashent->locrec_offset, locrec_offset);
}
static int /* qsort comparator used below */
@@ -832,12 +866,17 @@ add_locale (struct locarhandle *ah,
off64_t lastoffset;
char *ptr;
struct locale_category_data *size_order[__LC_LAST];
- const size_t pagesz = getpagesize ();
+ /* Page size alignment is a minor optimization for locality; use a
+ common value here rather than making the localedef output depend
+ on the page size of the system on which localedef is run. See
+ <https://sourceware.org/glibc/wiki/Development_Todo/Master#Locale_archive_alignment>
+ for more discussion. */
+ const size_t pagesz = 4096;
int small_mask;
head = ah->addr;
sumhashtab = (struct sumhashent *) ((char *) ah->addr
- + head->sumhash_offset);
+ + GET (head->sumhash_offset));
memset (file_offsets, 0, sizeof (file_offsets));
@@ -895,10 +934,10 @@ add_locale (struct locarhandle *ah,
table. */
hval = archive_hashval (data[cnt].sum, 16);
- idx = hval % head->sumhash_size;
- incr = 1 + hval % (head->sumhash_size - 2);
+ idx = hval % GET (head->sumhash_size);
+ incr = 1 + hval % (GET (head->sumhash_size) - 2);
- while (sumhashtab[idx].file_offset != 0)
+ while (GET (sumhashtab[idx].file_offset) != 0)
{
if (memcmp (data[cnt].sum, sumhashtab[idx].sum, 16) == 0)
{
@@ -908,40 +947,42 @@ add_locale (struct locarhandle *ah,
Unfortunately the sumhashent record does not include
the size of the stored data. So we have to search for
it. */
- locrecent = (struct locrecent *) ((char *) ah->addr
- + head->locrectab_offset);
+ locrecent
+ = (struct locrecent *) ((char *) ah->addr
+ + GET (head->locrectab_offset));
size_t iloc;
- for (iloc = 0; iloc < head->locrectab_used; ++iloc)
- if (locrecent[iloc].refs != 0
- && (locrecent[iloc].record[cnt].offset
- == sumhashtab[idx].file_offset))
+ for (iloc = 0; iloc < GET (head->locrectab_used); ++iloc)
+ if (GET (locrecent[iloc].refs) != 0
+ && (GET (locrecent[iloc].record[cnt].offset)
+ == GET (sumhashtab[idx].file_offset)))
break;
- if (iloc != head->locrectab_used
- && data[cnt].size == locrecent[iloc].record[cnt].len
+ if (iloc != GET (head->locrectab_used)
+ && data[cnt].size == GET (locrecent[iloc].record[cnt].len)
/* We have to compare the content. Either we can
have the data mmaped or we have to read from
the file. */
- && (file_data_available_p (ah, sumhashtab[idx].file_offset,
- data[cnt].size)
+ && (file_data_available_p
+ (ah, GET (sumhashtab[idx].file_offset),
+ data[cnt].size)
? memcmp (data[cnt].addr,
(char *) ah->addr
- + sumhashtab[idx].file_offset,
+ + GET (sumhashtab[idx].file_offset),
data[cnt].size) == 0
: compare_from_file (ah, data[cnt].addr,
- sumhashtab[idx].file_offset,
+ GET (sumhashtab[idx].file_offset),
data[cnt].size) == 0))
{
/* Found it. */
- file_offsets[cnt] = sumhashtab[idx].file_offset;
+ file_offsets[cnt] = GET (sumhashtab[idx].file_offset);
--num_new_offsets;
break;
}
}
idx += incr;
- if (idx >= head->sumhash_size)
- idx -= head->sumhash_size;
+ if (idx >= GET (head->sumhash_size))
+ idx -= GET (head->sumhash_size);
}
}
@@ -951,11 +992,14 @@ add_locale (struct locarhandle *ah,
return 0;
/* Determine whether we have to resize the file. */
- if (100 * (head->sumhash_used + num_new_offsets) > 75 * head->sumhash_size
- || (namehashent->locrec_offset == 0
- && (head->locrectab_used == head->locrectab_size
- || head->string_used + name_len + 1 > head->string_size
- || 100 * head->namehash_used > 75 * head->namehash_size)))
+ if ((100 * (GET (head->sumhash_used) + num_new_offsets)
+ > 75 * GET (head->sumhash_size))
+ || (GET (namehashent->locrec_offset) == 0
+ && (GET (head->locrectab_used) == GET (head->locrectab_size)
+ || (GET (head->string_used) + name_len + 1
+ > GET (head->string_size))
+ || (100 * GET (head->namehash_used)
+ > 75 * GET (head->namehash_size)))))
{
/* The current archive is not large enough. */
enlarge_archive (ah, head);
@@ -1018,20 +1062,20 @@ add_locale (struct locarhandle *ah,
/* Add the hash value to the hash table. */
md5hval = archive_hashval (data[cnt].sum, 16);
- idx = md5hval % head->sumhash_size;
- incr = 1 + md5hval % (head->sumhash_size - 2);
+ idx = md5hval % GET (head->sumhash_size);
+ incr = 1 + md5hval % (GET (head->sumhash_size) - 2);
- while (sumhashtab[idx].file_offset != 0)
+ while (GET (sumhashtab[idx].file_offset) != 0)
{
idx += incr;
- if (idx >= head->sumhash_size)
- idx -= head->sumhash_size;
+ if (idx >= GET (head->sumhash_size))
+ idx -= GET (head->sumhash_size);
}
memcpy (sumhashtab[idx].sum, data[cnt].sum, 16);
- sumhashtab[idx].file_offset = file_offsets[cnt];
+ SET (sumhashtab[idx].file_offset, file_offsets[cnt]);
- ++head->sumhash_used;
+ INC (head->sumhash_used, 1);
}
lastoffset = file_offsets[LC_ALL];
@@ -1042,25 +1086,28 @@ add_locale (struct locarhandle *ah,
lastoffset += (data[cnt].size + 15) & -16;
}
- if (namehashent->name_offset == 0)
+ if (GET (namehashent->name_offset) == 0)
{
/* Add the name string. */
- memcpy ((char *) ah->addr + head->string_offset + head->string_used,
+ memcpy ((char *) ah->addr + GET (head->string_offset)
+ + GET (head->string_used),
name, name_len + 1);
- namehashent->name_offset = head->string_offset + head->string_used;
- head->string_used += name_len + 1;
- ++head->namehash_used;
+ SET (namehashent->name_offset,
+ GET (head->string_offset) + GET (head->string_used));
+ INC (head->string_used, name_len + 1);
+ INC (head->namehash_used, 1);
}
- if (namehashent->locrec_offset == 0)
+ if (GET (namehashent->locrec_offset == 0))
{
/* Allocate a name location record. */
- namehashent->locrec_offset = (head->locrectab_offset
- + (head->locrectab_used++
- * sizeof (struct locrecent)));
+ SET (namehashent->locrec_offset, (GET (head->locrectab_offset)
+ + (GET (head->locrectab_used)
+ * sizeof (struct locrecent))));
+ INC (head->locrectab_used, 1);
locrecent = (struct locrecent *) ((char *) ah->addr
- + namehashent->locrec_offset);
- locrecent->refs = 1;
+ + GET (namehashent->locrec_offset));
+ SET (locrecent->refs, 1);
}
else
{
@@ -1068,27 +1115,29 @@ add_locale (struct locarhandle *ah,
we still need a new one. If not, reuse the old one. */
locrecent = (struct locrecent *) ((char *) ah->addr
- + namehashent->locrec_offset);
- if (locrecent->refs > 1)
+ + GET (namehashent->locrec_offset));
+ if (GET (locrecent->refs) > 1)
{
- --locrecent->refs;
- namehashent->locrec_offset = (head->locrectab_offset
- + (head->locrectab_used++
- * sizeof (struct locrecent)));
- locrecent = (struct locrecent *) ((char *) ah->addr
- + namehashent->locrec_offset);
- locrecent->refs = 1;
+ INC (locrecent->refs, -1);
+ SET (namehashent->locrec_offset, (GET (head->locrectab_offset)
+ + (GET (head->locrectab_used)
+ * sizeof (struct locrecent))));
+ INC (head->locrectab_used, 1);
+ locrecent
+ = (struct locrecent *) ((char *) ah->addr
+ + GET (namehashent->locrec_offset));
+ SET (locrecent->refs, 1);
}
}
/* Fill in the table with the locations of the locale data. */
for (cnt = 0; cnt < __LC_LAST; ++cnt)
{
- locrecent->record[cnt].offset = file_offsets[cnt];
- locrecent->record[cnt].len = data[cnt].size;
+ SET (locrecent->record[cnt].offset, file_offsets[cnt]);
+ SET (locrecent->record[cnt].len, data[cnt].size);
}
- return namehashent->locrec_offset;
+ return GET (namehashent->locrec_offset);
}
@@ -1147,7 +1196,8 @@ add_locale_to_archive (ah, name, data, replace)
unsigned int strindex[0];
} *filedata = data[LC_CTYPE].addr;
codeset = (char *) filedata
- + filedata->strindex[_NL_ITEM_INDEX (_NL_CTYPE_CODESET_NAME)];
+ + maybe_swap_uint32 (filedata->strindex[_NL_ITEM_INDEX
+ (_NL_CTYPE_CODESET_NAME)]);
char *normalized_codeset_name = NULL;
normalized_codeset = _nl_normalize_codeset (codeset, strlen (codeset));
@@ -1307,6 +1357,7 @@ add_locales_to_archive (nlist, list, replace)
/* Open the archive. This call never returns if we cannot
successfully open the archive. */
+ ah.fname = NULL;
open_archive (&ah, false);
while (nlist-- > 0)
@@ -1506,11 +1557,12 @@ delete_locales_from_archive (nlist, list)
/* Open the archive. This call never returns if we cannot
successfully open the archive. */
+ ah.fname = NULL;
open_archive (&ah, false);
head = ah.addr;
namehashtab = (struct namehashent *) ((char *) ah.addr
- + head->namehash_offset);
+ + GET (head->namehash_offset));
while (nlist-- > 0)
{
@@ -1522,30 +1574,31 @@ delete_locales_from_archive (nlist, list)
/* Search for this locale in the archive. */
hval = archive_hashval (locname, strlen (locname));
- idx = hval % head->namehash_size;
- incr = 1 + hval % (head->namehash_size - 2);
+ idx = hval % GET (head->namehash_size);
+ incr = 1 + hval % (GET (head->namehash_size) - 2);
/* If the name_offset field is zero this means this is no
deleted entry and therefore no entry can be found. */
- while (namehashtab[idx].name_offset != 0)
+ while (GET (namehashtab[idx].name_offset) != 0)
{
- if (namehashtab[idx].hashval == hval
+ if (GET (namehashtab[idx].hashval) == hval
&& (strcmp (locname,
- (char *) ah.addr + namehashtab[idx].name_offset)
+ ((char *) ah.addr
+ + GET (namehashtab[idx].name_offset)))
== 0))
{
/* Found the entry. Now mark it as removed by zero-ing
the reference to the locale record. */
- namehashtab[idx].locrec_offset = 0;
+ SET (namehashtab[idx].locrec_offset, 0);
break;
}
idx += incr;
- if (idx >= head->namehash_size)
- idx -= head->namehash_size;
+ if (idx >= GET (head->namehash_size))
+ idx -= GET (head->namehash_size);
}
- if (namehashtab[idx].name_offset == 0 && ! be_quiet)
+ if (GET (namehashtab[idx].name_offset) == 0 && ! be_quiet)
error (0, 0, _("locale \"%s\" not in archive"), locname);
}
@@ -1594,7 +1647,7 @@ dataentcmp (const void *a, const void *b)
void
-show_archive_content (int verbose)
+show_archive_content (const char *fname, int verbose)
{
struct locarhandle ah;
struct locarhead *head;
@@ -1604,21 +1657,22 @@ show_archive_content (int verbose)
/* Open the archive. This call never returns if we cannot
successfully open the archive. */
+ ah.fname = fname;
open_archive (&ah, true);
head = ah.addr;
- names = (struct nameent *) xmalloc (head->namehash_used
+ names = (struct nameent *) xmalloc (GET (head->namehash_used)
* sizeof (struct nameent));
namehashtab = (struct namehashent *) ((char *) ah.addr
- + head->namehash_offset);
- for (cnt = used = 0; cnt < head->namehash_size; ++cnt)
- if (namehashtab[cnt].locrec_offset != 0)
+ + GET (head->namehash_offset));
+ for (cnt = used = 0; cnt < GET (head->namehash_size); ++cnt)
+ if (GET (namehashtab[cnt].locrec_offset) != 0)
{
- assert (used < head->namehash_used);
- names[used].name = ah.addr + namehashtab[cnt].name_offset;
- names[used++].locrec_offset = namehashtab[cnt].locrec_offset;
+ assert (used < GET (head->namehash_used));
+ names[used].name = ah.addr + GET (namehashtab[cnt].name_offset);
+ names[used++].locrec_offset = GET (namehashtab[cnt].locrec_offset);
}
/* Sort the names. */
@@ -1630,17 +1684,17 @@ show_archive_content (int verbose)
struct sumhashent *sumhashtab;
int sumused;
- files = (struct dataent *) xmalloc (head->sumhash_used
+ files = (struct dataent *) xmalloc (GET (head->sumhash_used)
* sizeof (struct dataent));
sumhashtab = (struct sumhashent *) ((char *) ah.addr
- + head->sumhash_offset);
- for (cnt = sumused = 0; cnt < head->sumhash_size; ++cnt)
- if (sumhashtab[cnt].file_offset != 0)
+ + GET (head->sumhash_offset));
+ for (cnt = sumused = 0; cnt < GET (head->sumhash_size); ++cnt)
+ if (GET (sumhashtab[cnt].file_offset) != 0)
{
- assert (sumused < head->sumhash_used);
+ assert (sumused < GET (head->sumhash_used));
files[sumused].sum = (const unsigned char *) sumhashtab[cnt].sum;
- files[sumused].file_offset = sumhashtab[cnt].file_offset;
+ files[sumused].file_offset = GET (sumhashtab[cnt].file_offset);
files[sumused++].nlink = 0;
}
@@ -1656,18 +1710,19 @@ show_archive_content (int verbose)
locrec = (struct locrecent *) ((char *) ah.addr
+ names[cnt].locrec_offset);
for (idx = 0; idx < __LC_LAST; ++idx)
- if (locrec->record[LC_ALL].offset != 0
+ if (GET (locrec->record[LC_ALL].offset) != 0
? (idx == LC_ALL
- || (locrec->record[idx].offset
- < locrec->record[LC_ALL].offset)
- || (locrec->record[idx].offset + locrec->record[idx].len
- > (locrec->record[LC_ALL].offset
- + locrec->record[LC_ALL].len)))
+ || (GET (locrec->record[idx].offset)
+ < GET (locrec->record[LC_ALL].offset))
+ || ((GET (locrec->record[idx].offset)
+ + GET (locrec->record[idx].len))
+ > (GET (locrec->record[LC_ALL].offset)
+ + GET (locrec->record[LC_ALL].len))))
: idx != LC_ALL)
{
struct dataent *data, dataent;
- dataent.file_offset = locrec->record[idx].offset;
+ dataent.file_offset = GET (locrec->record[idx].offset);
data = (struct dataent *) bsearch (&dataent, files, sumused,
sizeof (struct dataent),
dataentcmp);
@@ -1689,21 +1744,24 @@ show_archive_content (int verbose)
{
struct dataent *data, dataent;
- dataent.file_offset = locrec->record[idx].offset;
- if (locrec->record[LC_ALL].offset != 0
- && dataent.file_offset >= locrec->record[LC_ALL].offset
- && (dataent.file_offset + locrec->record[idx].len
- <= (locrec->record[LC_ALL].offset
- + locrec->record[LC_ALL].len)))
- dataent.file_offset = locrec->record[LC_ALL].offset;
+ dataent.file_offset = GET (locrec->record[idx].offset);
+ if (GET (locrec->record[LC_ALL].offset) != 0
+ && (dataent.file_offset
+ >= GET (locrec->record[LC_ALL].offset))
+ && (dataent.file_offset + GET (locrec->record[idx].len)
+ <= (GET (locrec->record[LC_ALL].offset)
+ + GET (locrec->record[LC_ALL].len))))
+ dataent.file_offset = GET (locrec->record[LC_ALL].offset);
data = (struct dataent *) bsearch (&dataent, files, sumused,
sizeof (struct dataent),
dataentcmp);
printf ("%6d %7x %3d%c ",
- locrec->record[idx].len, locrec->record[idx].offset,
+ GET (locrec->record[idx].len),
+ GET (locrec->record[idx].offset),
data->nlink,
- dataent.file_offset == locrec->record[LC_ALL].offset
+ (dataent.file_offset
+ == GET (locrec->record[LC_ALL].offset))
? '+' : ' ');
for (i = 0; i < 16; i += 4)
printf ("%02x%02x%02x%02x",
diff --git a/locale/programs/locfile.c b/locale/programs/locfile.c
index 3cbd6f1314..ef7adbff8d 100644
--- a/locale/programs/locfile.c
+++ b/locale/programs/locfile.c
@@ -22,19 +22,25 @@
#include <dirent.h>
#include <errno.h>
#include <fcntl.h>
+#include <stdbool.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/param.h>
#include <sys/stat.h>
+#include <assert.h>
+#include <wchar.h>
#include "../../crypt/md5.h"
#include "localedef.h"
+#include "localeinfo.h"
#include "locfile.h"
#include "simple-hash.h"
#include "locfile-kw.h"
+#define obstack_chunk_alloc xmalloc
+#define obstack_chunk_free free
/* Temporary storage of the locale data before writing it to the archive. */
static locale_data_t to_archive;
@@ -337,6 +343,7 @@ write_all_categories (struct localedef_t *definitions,
/* Open the archive. This call never returns if we cannot
successfully open the archive. */
+ ah.fname = NULL;
open_archive (&ah, false);
if (add_locale_to_archive (&ah, locname, to_archive, true) != 0)
@@ -533,17 +540,185 @@ compare_files (const char *filename1, const char *filename2, size_t size,
return ret;
}
+/* True if the locale files use the opposite endianness to the
+ machine running localedef. */
+bool swap_endianness_p;
+
+/* When called outside a start_locale_structure/end_locale_structure
+ or start_locale_prelude/end_locale_prelude block, record that the
+ next byte in FILE's obstack will be the first byte of a new element.
+ Do likewise for the first call inside a start_locale_structure/
+ end_locale_structure block. */
+static void
+record_offset (struct locale_file *file)
+{
+ if (file->structure_stage < 2)
+ {
+ assert (file->next_element < file->n_elements);
+ file->offsets[file->next_element++]
+ = (obstack_object_size (&file->data)
+ + (file->n_elements + 2) * sizeof (uint32_t));
+ if (file->structure_stage == 1)
+ file->structure_stage = 2;
+ }
+}
+
+/* Initialize FILE for a new output file. N_ELEMENTS is the number
+ of elements in the file. */
+void
+init_locale_data (struct locale_file *file, size_t n_elements)
+{
+ file->n_elements = n_elements;
+ file->next_element = 0;
+ file->offsets = xmalloc (sizeof (uint32_t) * n_elements);
+ obstack_init (&file->data);
+ file->structure_stage = 0;
+}
+
+/* Align the size of FILE's obstack object to BOUNDARY bytes. */
+void
+align_locale_data (struct locale_file *file, size_t boundary)
+{
+ size_t size = -obstack_object_size (&file->data) & (boundary - 1);
+ obstack_blank (&file->data, size);
+ memset (obstack_next_free (&file->data) - size, 0, size);
+}
+
+/* Record that FILE's next element contains no data. */
+void
+add_locale_empty (struct locale_file *file)
+{
+ record_offset (file);
+}
-/* Write a locale file, with contents given by N_ELEM and VEC. */
+/* Record that FILE's next element consists of SIZE bytes starting at DATA. */
+void
+add_locale_raw_data (struct locale_file *file, const void *data, size_t size)
+{
+ record_offset (file);
+ obstack_grow (&file->data, data, size);
+}
+
+/* Finish the current object on OBSTACK and use it as the data for FILE's
+ next element. */
+void
+add_locale_raw_obstack (struct locale_file *file, struct obstack *obstack)
+{
+ size_t size = obstack_object_size (obstack);
+ record_offset (file);
+ obstack_grow (&file->data, obstack_finish (obstack), size);
+}
+
+/* Use STRING as FILE's next element. */
+void
+add_locale_string (struct locale_file *file, const char *string)
+{
+ record_offset (file);
+ obstack_grow (&file->data, string, strlen (string) + 1);
+}
+
+/* Likewise for wide strings. */
+void
+add_locale_wstring (struct locale_file *file, const uint32_t *string)
+{
+ add_locale_uint32_array (file, string, wcslen ((const wchar_t *) string) + 1);
+}
+
+/* Record that FILE's next element is the 32-bit integer VALUE. */
+void
+add_locale_uint32 (struct locale_file *file, uint32_t value)
+{
+ align_locale_data (file, LOCFILE_ALIGN);
+ record_offset (file);
+ value = maybe_swap_uint32 (value);
+ obstack_grow (&file->data, &value, sizeof (value));
+}
+
+/* Record that FILE's next element is an array of N_ELEMS integers
+ starting at DATA. */
+void
+add_locale_uint32_array (struct locale_file *file,
+ const uint32_t *data, size_t n_elems)
+{
+ align_locale_data (file, LOCFILE_ALIGN);
+ record_offset (file);
+ obstack_grow (&file->data, data, n_elems * sizeof (uint32_t));
+ maybe_swap_uint32_obstack (&file->data, n_elems);
+}
+
+/* Record that FILE's next element is the single byte given by VALUE. */
+void
+add_locale_char (struct locale_file *file, char value)
+{
+ record_offset (file);
+ obstack_1grow (&file->data, value);
+}
+
+/* Start building an element that contains several different pieces of data.
+ Subsequent calls to add_locale_* will add data to the same element up
+ till the next call to end_locale_structure. The element's alignment
+ is dictated by the first piece of data added to it. */
+void
+start_locale_structure (struct locale_file *file)
+{
+ assert (file->structure_stage == 0);
+ file->structure_stage = 1;
+}
+
+/* Finish a structure element that was started by start_locale_structure.
+ Empty structures are OK and behave like add_locale_empty. */
+void
+end_locale_structure (struct locale_file *file)
+{
+ record_offset (file);
+ assert (file->structure_stage == 2);
+ file->structure_stage = 0;
+}
+
+/* Start building data that goes before the next element's recorded offset.
+ Subsequent calls to add_locale_* will add data to the file without
+ treating any of it as the start of a new element. Calling
+ end_locale_prelude switches back to the usual behavior. */
+void
+start_locale_prelude (struct locale_file *file)
+{
+ assert (file->structure_stage == 0);
+ file->structure_stage = 3;
+}
+
+/* End a block started by start_locale_prelude. */
+void
+end_locale_prelude (struct locale_file *file)
+{
+ assert (file->structure_stage == 3);
+ file->structure_stage = 0;
+}
+
+/* Write a locale file, with contents given by FILE. */
void
write_locale_data (const char *output_path, int catidx, const char *category,
- size_t n_elem, struct iovec *vec)
+ struct locale_file *file)
{
size_t cnt, step, maxiov;
int fd;
char *fname;
const char **other_paths;
-
+ uint32_t header[2];
+ size_t n_elem;
+ struct iovec vec[3];
+
+ assert (file->n_elements == file->next_element);
+ header[0] = LIMAGIC (catidx);
+ header[1] = file->n_elements;
+ vec[0].iov_len = sizeof (header);
+ vec[0].iov_base = header;
+ vec[1].iov_len = sizeof (uint32_t) * file->n_elements;
+ vec[1].iov_base = file->offsets;
+ vec[2].iov_len = obstack_object_size (&file->data);
+ vec[2].iov_base = obstack_finish (&file->data);
+ maybe_swap_uint32_array (vec[0].iov_base, 2);
+ maybe_swap_uint32_array (vec[1].iov_base, file->n_elements);
+ n_elem = 3;
if (! no_archive)
{
/* The data will be added to the archive. For now we simply
diff --git a/locale/programs/locfile.h b/locale/programs/locfile.h
index 83bf421ece..cb3e22fd87 100644
--- a/locale/programs/locfile.h
+++ b/locale/programs/locfile.h
@@ -18,18 +18,22 @@
#ifndef _LOCFILE_H
#define _LOCFILE_H 1
+#include <byteswap.h>
+#include <stdbool.h>
#include <stdint.h>
#include <sys/uio.h>
+#include "obstack.h"
#include "linereader.h"
#include "localedef.h"
-
-/* Header of the locale data files. */
+/* Structure for storing the contents of a category file. */
struct locale_file
{
- int magic;
- int n;
+ size_t n_elements, next_element;
+ uint32_t *offsets;
+ struct obstack data;
+ int structure_stage;
};
@@ -65,10 +69,62 @@ extern void write_all_categories (struct localedef_t *definitions,
const char *locname,
const char *output_path);
+extern bool swap_endianness_p;
+
+/* Change the output to be big-endian if BIG_ENDIAN is true and
+ little-endian otherwise. */
+static inline void
+set_big_endian (bool big_endian)
+{
+ swap_endianness_p = (big_endian != (__BYTE_ORDER == __BIG_ENDIAN));
+}
+
+/* Munge VALUE so that, when stored, it has the correct byte order
+ for the output files. */
+static inline uint32_t
+maybe_swap_uint32 (uint32_t value)
+{
+ return swap_endianness_p ? bswap_32 (value) : value;
+}
+
+/* Likewise, but munge an array of N uint32_ts starting at ARRAY. */
+static inline void
+maybe_swap_uint32_array (uint32_t *array, size_t n)
+{
+ if (swap_endianness_p)
+ while (n-- > 0)
+ array[n] = bswap_32 (array[n]);
+}
+
+/* Like maybe_swap_uint32_array, but the array of N elements is at
+ the end of OBSTACK's current object. */
+static inline void
+maybe_swap_uint32_obstack (struct obstack *obstack, size_t n)
+{
+ maybe_swap_uint32_array ((uint32_t *) obstack_next_free (obstack) - n, n);
+}
+
/* Write out the data. */
+extern void init_locale_data (struct locale_file *file, size_t n_elements);
+extern void align_locale_data (struct locale_file *file, size_t boundary);
+extern void add_locale_empty (struct locale_file *file);
+extern void add_locale_raw_data (struct locale_file *file, const void *data,
+ size_t size);
+extern void add_locale_raw_obstack (struct locale_file *file,
+ struct obstack *obstack);
+extern void add_locale_string (struct locale_file *file, const char *string);
+extern void add_locale_wstring (struct locale_file *file,
+ const uint32_t *string);
+extern void add_locale_uint32 (struct locale_file *file, uint32_t value);
+extern void add_locale_uint32_array (struct locale_file *file,
+ const uint32_t *data, size_t n_elems);
+extern void add_locale_char (struct locale_file *file, char value);
+extern void start_locale_structure (struct locale_file *file);
+extern void end_locale_structure (struct locale_file *file);
+extern void start_locale_prelude (struct locale_file *file);
+extern void end_locale_prelude (struct locale_file *file);
extern void write_locale_data (const char *output_path, int catidx,
- const char *category, size_t n_elem,
- struct iovec *vec);
+ const char *category, struct locale_file *file);
/* Entrypoints for the parsers of the individual categories. */
diff --git a/locale/setlocale.c b/locale/setlocale.c
index be95519e9f..e83a156267 100644
--- a/locale/setlocale.c
+++ b/locale/setlocale.c
@@ -412,7 +412,7 @@ setlocale (int category, const char *locale)
/* We must not simply free a global locale since we have no
control over the usage. So we mark it as un-deletable.
- Note: do not remove the `if', it's necessary to copy with
+ Note: do not remove the `if', it's necessary to cope with
the builtin locale data. */
if (newdata->usage_count != UNDELETABLE)
newdata->usage_count = UNDELETABLE;
diff --git a/locale/weight.h b/locale/weight.h
index 645eda2fe9..b097aaca0b 100644
--- a/locale/weight.h
+++ b/locale/weight.h
@@ -69,8 +69,8 @@ findidx (const unsigned char **cpp, size_t len)
/* Up to the next entry. */
cp += nhere;
- if ((1 + nhere) % __alignof__ (int32_t) != 0)
- cp += __alignof__ (int32_t) - (1 + nhere) % __alignof__ (int32_t);
+ if (!LOCFILE_ALIGNED_P (1 + nhere))
+ cp += LOCFILE_ALIGN - (1 + nhere) % LOCFILE_ALIGN;
}
else
{
@@ -89,9 +89,9 @@ findidx (const unsigned char **cpp, size_t len)
{
/* Cannot be in this range. */
cp += 2 * nhere;
- if ((1 + 2 * nhere) % __alignof__ (int32_t) != 0)
- cp += (__alignof__ (int32_t)
- - (1 + 2 * nhere) % __alignof__ (int32_t));
+ if (!LOCFILE_ALIGNED_P (1 + 2 * nhere))
+ cp += (LOCFILE_ALIGN
+ - (1 + 2 * nhere) % LOCFILE_ALIGN);
continue;
}
@@ -104,9 +104,9 @@ findidx (const unsigned char **cpp, size_t len)
{
/* Cannot be in this range. */
cp += 2 * nhere;
- if ((1 + 2 * nhere) % __alignof__ (int32_t) != 0)
- cp += (__alignof__ (int32_t)
- - (1 + 2 * nhere) % __alignof__ (int32_t));
+ if (!LOCFILE_ALIGNED_P (1 + 2 * nhere))
+ cp += (LOCFILE_ALIGN
+ - (1 + 2 * nhere) % LOCFILE_ALIGN);
continue;
}
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 1bdc72ac83..b723fa2989 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,1066 @@
+2013-12-12 Toke Høiland-Jørgensen <toke@toke.dk>
+ [BZ #15593]
+ * locales/translit_neutral: Add entries for U00D8 and U00F8.
+
+2013-12-12 Marko Myllynen <myllynen@redhat.com>
+
+ * locales/fi_FI: Fix Charset comment.
+ * locales/fi_FI@euro: Likewise.
+
+2013-12-01 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/mag_IN: Add lang_name to various locales.
+ * locales/mai_IN: Likewise.
+ * locales/mg_MG: Likewise.
+ * locales/mi_NZ: Likewise.
+ * locales/mk_MK: Likewise.
+ * locales/ml_IN: Likewise.
+ * locales/mn_MN: Likewise.
+ * locales/mni_IN: Likewise.
+ * locales/mr_IN: Likewise.
+ * locales/ms_MY: Likewise.
+ * locales/mt_MT: Likewise.
+ * locales/nb_NO: Likewise.
+ * locales/ne_NP: Likewise.
+ * locales/nhn_MX: Likewise.
+ * locales/nl_AW: Likewise.
+ * locales/nl_BE: Likewise.
+ * locales/nl_NL: Likewise.
+ * locales/nn_NO: Likewise.
+
+2013-11-26 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/ka_GE: Add lang_name to various locales.
+ * locales/kl_GL: Likewise.
+ * locales/kn_IN: Likewise.
+ * locales/ko_KR: Likewise.
+ * locales/kok_IN: Likewise.
+ * locales/ks_IN: Likewise.
+ * locales/ks_IN@devanagari: Likewise.
+ * locales/kw_GB: Likewise.
+ * locales/ky_KG: Likewise.
+ * locales/lg_UG: Likewise.
+ * locales/li_BE: Likewise.
+ * locales/li_NL: Likewise.
+ * locales/lij_IT: Likewise.
+ * locales/lt_LT: Likewise.
+ * locales/lv_LV: Likewise.
+
+2013-11-25 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/ga_IE: Add lang_name to various locales.
+ * locales/gl_ES: Likewise.
+ * locales/gu_IN: Likewise.
+ * locales/gv_GB: Likewise.
+ * locales/hi_IN: Likewise.
+ * locales/hne_IN: Likewise.
+ * locales/hr_HR: Likewise.
+ * locales/hu_HU: Likewise.
+ * locales/id_ID: Likewise.
+ * locales/ik_CA: Likewise.
+ * locales/is_IS: Likewise.
+ * locales/it_CH: Likewise.
+ * locales/it_IT: Likewise.
+ * locales/ja_JP: Likewise.
+
+2013-11-24 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/bs_BA: Add lang_name to various locales.
+ * locales/ca_AD: Likewise.
+ * locales/ca_ES: Likewise.
+ * locales/ca_FR: Likewise.
+ * locales/ca_IT: Likewise.
+ * locales/crh_UA: Likewise.
+ * locales/csb_PL: Likewise.
+ * locales/cv_RU: Likewise.
+ * locales/da_DK: Likewise.
+ * locales/doi_IN: Likewise.
+ * locales/dv_MV: Likewise.
+ * locales/el_CY: Likewise.
+ * locales/el_GR: Likewise.
+ * locales/el_GR@euro: Likewise.
+ * locales/eu_ES: Likewise.
+ * locales/fi_FI: Likewise.
+ * locales/fil_PH: Likewise.
+ * locales/fo_FO: Likewise.
+ * locales/fur_IT: Likewise.
+ * locales/fy_DE: Likewise.
+ * locales/fy_NL: Likewise.
+
+2013-11-23 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/be_BY: Add lang_name to various locales.
+ * locales/be_BY@latin: Likewise.
+ * locales/ber_DZ: Likewise.
+ * locales/ber_MA: Likewise.
+ * locales/bg_BG: Likewise.
+ * locales/bho_IN: Likewise.
+ * locales/bn_BD: Likewise.
+ * locales/bn_IN: Likewise.
+ * locales/br_FR: Likewise.
+
+2013-11-23 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/an_ES: Add lang_name to various locales.
+ * locales/anp_IN: Likewise.
+ * locales/as_IN: Likewise.
+ * locales/ast_ES: Likewise.
+ * locales/ayc_PE: Likewise.
+ * locales/az_AZ: Likewise.
+
+2013-11-22 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/de_AT: Add lang_name to German, English, Spanish, French locales.
+ * locales/de_BE: Likewise.
+ * locales/de_CH: Likewise.
+ * locales/de_DE: Likewise.
+ * locales/de_LU: Likewise.
+ * locales/en_AG: Likewise.
+ * locales/en_AU: Likewise.
+ * locales/en_BW: Likewise.
+ * locales/en_CA: Likewise.
+ * locales/en_DK: Likewise.
+ * locales/en_GB: Likewise.
+ * locales/en_HK: Likewise.
+ * locales/en_IE: Likewise.
+ * locales/en_IN: Likewise.
+ * locales/en_NZ: Likewise.
+ * locales/en_PH: Likewise.
+ * locales/en_SG: Likewise.
+ * locales/en_US: Likewise.
+ * locales/en_ZM: Likewise.
+ * locales/en_ZW: Likewise.
+ * locales/es_AR: Likewise.
+ * locales/es_BO: Likewise.
+ * locales/es_CL: Likewise.
+ * locales/es_CO: Likewise.
+ * locales/es_CR: Likewise.
+ * locales/es_CU: Likewise.
+ * locales/es_DO: Likewise.
+ * locales/es_EC: Likewise.
+ * locales/es_ES: Likewise.
+ * locales/es_GT: Likewise.
+ * locales/es_HN: Likewise.
+ * locales/es_MX: Likewise.
+ * locales/es_NI: Likewise.
+ * locales/es_PA: Likewise.
+ * locales/es_PE: Likewise.
+ * locales/es_PR: Likewise.
+ * locales/es_PY: Likewise.
+ * locales/es_SV: Likewise.
+ * locales/es_US: Likewise.
+ * locales/es_UY: Likewise.
+ * locales/es_VE: Likewise.
+ * locales/fr_BE: Likewise.
+ * locales/fr_CA: Likewise.
+ * locales/fr_CH: Likewise.
+ * locales/fr_FR: Likewise.
+ * locales/fr_LU: Likewise.
+
+2013-11-21 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/ar_AE: Add lang_name to Arabic locales.
+ * locales/ar_BH: Likewise.
+ * locales/ar_DZ: Likewise.
+ * locales/ar_EG: Likewise.
+ * locales/ar_IN: Likewise.
+ * locales/ar_IQ: Likewise.
+ * locales/ar_JO: Likewise.
+ * locales/ar_KW: Likewise.
+ * locales/ar_LB: Likewise.
+ * locales/ar_LY: Likewise.
+ * locales/ar_MA: Likewise.
+ * locales/ar_OM: Likewise.
+ * locales/ar_QA: Likewise.
+ * locales/ar_SA: Likewise.
+ * locales/ar_SD: Likewise.
+ * locales/ar_SS: Likewise.
+ * locales/ar_SY: Likewise.
+ * locales/ar_TN: Likewise.
+ * locales/ar_YE: Likewise.
+
+2013-11-20 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ [BZ #15601]
+ * locales/or_IN: Rename Oriya to Odia.
+
+2013-11-18 Chris Leonard <cjl@sugarlabs.org>
+
+ [BZ #16144]
+ * locales/tk_TM: Duplicated abday value for tk_TM.
+
+2013-11-18 Ondřej Bílka <neleai@seznam.cz>
+
+ * tests-mbwc/tst_mbrtowc.c (tst_mbrtowc): Remove unused t_ini variable.
+
+2013-11-17 Chris Leonard <cjl@sugarlabs.org>
+
+ [BZ #16146]
+ * locales/wae_CH: Correct wae_CH to UTF-8 encoding.
+
+2013-11-15 Arun Kumar Pyasi <arun@chitwanix.com>
+
+ [BZ #16172]
+ * locales/the_NP: New locale for the_NP.
+ * SUPPORTED: Add the_NP.
+
+2013-11-14 Chris Leonard <cjl@sugarlabs.org>
+
+ [BZ #16143]
+ * locales/pap_AN: pap_* locales have duplicated LC_NUMERIC section.
+ * locales/pap_AW: Likewise.
+ * locales/pap_CW: Likewise.
+
+2013-11-08 Chris Leonard <cjl@sugarlabs.org>
+
+ [BZ #16103]
+ * locales/aa_DJ: LC_MEASUREMENT review and standardization
+ * locales/aa_ER: Likewise.
+ * locales/aa_ER@saaho: Likewise.
+ * locales/aa_ET: Likewise.
+ * locales/af_ZA: Likewise.
+ * locales/ak_GH: Likewise.
+ * locales/am_ET: Likewise.
+ * locales/an_ES: Likewise.
+ * locales/anp_IN: Likewise.
+ * locales/ar_AE: Likewise.
+ * locales/ar_BH: Likewise.
+ * locales/ar_DZ: Likewise.
+ * locales/ar_EG: Likewise.
+ * locales/ar_IN: Likewise.
+ * locales/ar_IQ: Likewise.
+ * locales/ar_JO: Likewise.
+ * locales/ar_KW: Likewise.
+ * locales/ar_LB: Likewise.
+ * locales/ar_LY: Likewise.
+ * locales/ar_MA: Likewise.
+ * locales/ar_OM: Likewise.
+ * locales/ar_QA: Likewise.
+ * locales/ar_SA: Likewise.
+ * locales/ar_SD: Likewise.
+ * locales/ar_SS: Likewise.
+ * locales/ar_SY: Likewise.
+ * locales/ar_TN: Likewise.
+ * locales/ar_YE: Likewise.
+ * locales/as_IN: Likewise.
+ * locales/ast_ES: Likewise.
+ * locales/ayc_PE: Likewise.
+ * locales/az_AZ: Likewise.
+ * locales/be_BY: Likewise.
+ * locales/be_BY@latin: Likewise.
+ * locales/bem_ZM: Likewise.
+ * locales/ber_DZ: Likewise.
+ * locales/ber_MA: Likewise.
+ * locales/bg_BG: Likewise.
+ * locales/bho_IN: Likewise.
+ * locales/bn_BD: Likewise.
+ * locales/bn_IN: Likewise.
+ * locales/bo_CN: Likewise.
+ * locales/bo_IN: Likewise.
+ * locales/br_FR: Likewise.
+ * locales/br_FR@euro: Likewise.
+ * locales/brx_IN: Likewise.
+ * locales/bs_BA: Likewise.
+ * locales/byn_ER: Likewise.
+ * locales/ca_AD: Likewise.
+ * locales/ca_ES: Likewise.
+ * locales/ca_ES@euro: Likewise.
+ * locales/ca_FR: Likewise.
+ * locales/ca_IT: Likewise.
+ * locales/cmn_TW: Likewise.
+ * locales/crh_UA: Likewise.
+ * locales/cs_CZ: Likewise.
+ * locales/csb_PL: Likewise.
+ * locales/cv_RU: Likewise.
+ * locales/cy_GB: Likewise.
+ * locales/da_DK: Likewise.
+ * locales/de_AT: Likewise.
+ * locales/de_AT@euro: Likewise.
+ * locales/de_BE: Likewise.
+ * locales/de_BE@euro: Likewise.
+ * locales/de_CH: Likewise.
+ * locales/de_DE: Likewise.
+ * locales/de_DE@euro: Likewise.
+ * locales/de_LU: Likewise.
+ * locales/de_LU@euro: Likewise.
+ * locales/doi_IN: Likewise.
+ * locales/dv_MV: Likewise.
+ * locales/dz_BT: Likewise.
+ * locales/el_CY: Likewise.
+ * locales/el_GR: Likewise.
+ * locales/el_GR@euro: Likewise.
+ * locales/en_AG: Likewise.
+ * locales/en_AU: Likewise.
+ * locales/en_BW: Likewise.
+ * locales/en_CA: Likewise.
+ * locales/en_DK: Likewise.
+ * locales/en_GB: Likewise.
+ * locales/en_HK: Likewise.
+ * locales/en_IE: Likewise.
+ * locales/en_IE@euro: Likewise.
+ * locales/en_IN: Likewise.
+ * locales/en_NG: Likewise.
+ * locales/en_NZ: Likewise.
+ * locales/en_PH: Likewise.
+ * locales/en_SG: Likewise.
+ * locales/en_US: Likewise.
+ * locales/en_ZA: Likewise.
+ * locales/en_ZM: Likewise.
+ * locales/en_ZW: Likewise.
+ * locales/es_AR: Likewise.
+ * locales/es_BO: Likewise.
+ * locales/es_CL: Likewise.
+ * locales/es_CO: Likewise.
+ * locales/es_CR: Likewise.
+ * locales/es_CU: Likewise.
+ * locales/es_DO: Likewise.
+ * locales/es_EC: Likewise.
+ * locales/es_ES: Likewise.
+ * locales/es_ES@euro: Likewise.
+ * locales/es_GT: Likewise.
+ * locales/es_HN: Likewise.
+ * locales/es_MX: Likewise.
+ * locales/es_NI: Likewise.
+ * locales/es_PA: Likewise.
+ * locales/es_PE: Likewise.
+ * locales/es_PR: Likewise.
+ * locales/es_PY: Likewise.
+ * locales/es_SV: Likewise.
+ * locales/es_US: Likewise.
+ * locales/es_UY: Likewise.
+ * locales/es_VE: Likewise.
+ * locales/et_EE: Likewise.
+ * locales/eu_ES: Likewise.
+ * locales/eu_ES@euro: Likewise.
+ * locales/fa_IR: Likewise.
+ * locales/ff_SN: Likewise.
+ * locales/fi_FI: Likewise.
+ * locales/fi_FI@euro: Likewise.
+ * locales/fil_PH: Likewise.
+ * locales/fo_FO: Likewise.
+ * locales/fr_BE: Likewise.
+ * locales/fr_BE@euro: Likewise.
+ * locales/fr_CA: Likewise.
+ * locales/fr_CH: Likewise.
+ * locales/fr_FR: Likewise.
+ * locales/fr_FR@euro: Likewise.
+ * locales/fr_LU: Likewise.
+ * locales/fr_LU@euro: Likewise.
+ * locales/fur_IT: Likewise.
+ * locales/fy_DE: Likewise.
+ * locales/fy_NL: Likewise.
+ * locales/ga_IE: Likewise.
+ * locales/ga_IE@euro: Likewise.
+ * locales/gd_GB: Likewise.
+ * locales/gez_ER: Likewise.
+ * locales/gez_ER@abegede: Likewise.
+ * locales/gez_ET: Likewise.
+ * locales/gez_ET@abegede: Likewise.
+ * locales/gl_ES: Likewise.
+ * locales/gl_ES@euro: Likewise.
+ * locales/gu_IN: Likewise.
+ * locales/gv_GB: Likewise.
+ * locales/ha_NG: Likewise.
+ * locales/hak_TW: Likewise.
+ * locales/he_IL: Likewise.
+ * locales/hi_IN: Likewise.
+ * locales/hne_IN: Likewise.
+ * locales/hr_HR: Likewise.
+ * locales/hsb_DE: Likewise.
+ * locales/hu_HU: Likewise.
+ * locales/hy_AM: Likewise.
+ * locales/ia_FR: Likewise.
+ * locales/id_ID: Likewise.
+ * locales/ig_NG: Likewise.
+ * locales/ik_CA: Likewise.
+ * locales/is_IS: Likewise.
+ * locales/it_CH: Likewise.
+ * locales/it_IT: Likewise.
+ * locales/it_IT@euro: Likewise.
+ * locales/iu_CA: Likewise.
+ * locales/ja_JP: Likewise.
+ * locales/ka_GE: Likewise.
+ * locales/kk_KZ: Likewise.
+ * locales/kl_GL: Likewise.
+ * locales/km_KH: Likewise.
+ * locales/kn_IN: Likewise.
+ * locales/ko_KR: Likewise.
+ * locales/kok_IN: Likewise.
+ * locales/ks_IN: Likewise.
+ * locales/ks_IN@devanagari: Likewise.
+ * locales/ku_TR: Likewise.
+ * locales/kw_GB: Likewise.
+ * locales/ky_KG: Likewise.
+ * locales/lb_LU: Likewise.
+ * locales/lg_UG: Likewise.
+ * locales/li_BE: Likewise.
+ * locales/li_NL: Likewise.
+ * locales/lij_IT: Likewise.
+ * locales/lo_LA: Likewise.
+ * locales/lt_LT: Likewise.
+ * locales/lv_LV: Likewise.
+ * locales/lzh_TW: Likewise.
+ * locales/mag_IN: Likewise.
+ * locales/mai_IN: Likewise.
+ * locales/mg_MG: Likewise.
+ * locales/mhr_RU: Likewise.
+ * locales/mi_NZ: Likewise.
+ * locales/mk_MK: Likewise.
+ * locales/ml_IN: Likewise.
+ * locales/mn_MN: Likewise.
+ * locales/mni_IN: Likewise.
+ * locales/mr_IN: Likewise.
+ * locales/ms_MY: Likewise.
+ * locales/mt_MT: Likewise.
+ * locales/my_MM: Likewise.
+ * locales/nan_TW: Likewise.
+ * locales/nan_TW@latin: Likewise.
+ * locales/nb_NO: Likewise.
+ * locales/nds_DE: Likewise.
+ * locales/nds_NL: Likewise.
+ * locales/ne_NP: Likewise.
+ * locales/nhn_MX: Likewise.
+ * locales/niu_NU: Likewise.
+ * locales/niu_NZ: Likewise.
+ * locales/nl_AW: Likewise.
+ * locales/nl_BE: Likewise.
+ * locales/nl_BE@euro: Likewise.
+ * locales/nl_NL: Likewise.
+ * locales/nl_NL@euro: Likewise.
+ * locales/nn_NO: Likewise.
+ * locales/nr_ZA: Likewise.
+ * locales/nso_ZA: Likewise.
+ * locales/oc_FR: Likewise.
+ * locales/om_ET: Likewise.
+ * locales/om_KE: Likewise.
+ * locales/or_IN: Likewise.
+ * locales/os_RU: Likewise.
+ * locales/pa_IN: Likewise.
+ * locales/pa_PK: Likewise.
+ * locales/pap_AN: Likewise.
+ * locales/pap_AW: Likewise.
+ * locales/pap_CW: Likewise.
+ * locales/pl_PL: Likewise.
+ * locales/ps_AF: Likewise.
+ * locales/pt_BR: Likewise.
+ * locales/pt_PT: Likewise.
+ * locales/pt_PT@euro: Likewise.
+ * locales/quz_PE: Likewise.
+ * locales/ro_RO: Likewise.
+ * locales/ru_RU: Likewise.
+ * locales/ru_UA: Likewise.
+ * locales/rw_RW: Likewise.
+ * locales/sa_IN: Likewise.
+ * locales/sat_IN: Likewise.
+ * locales/sc_IT: Likewise.
+ * locales/sd_IN: Likewise.
+ * locales/sd_IN@devanagari: Likewise.
+ * locales/se_NO: Likewise.
+ * locales/shs_CA: Likewise.
+ * locales/si_LK: Likewise.
+ * locales/sid_ET: Likewise.
+ * locales/sk_SK: Likewise.
+ * locales/sl_SI: Likewise.
+ * locales/so_DJ: Likewise.
+ * locales/so_ET: Likewise.
+ * locales/so_KE: Likewise.
+ * locales/so_SO: Likewise.
+ * locales/sq_AL: Likewise.
+ * locales/sq_MK: Likewise.
+ * locales/sr_ME: Likewise.
+ * locales/sr_RS: Likewise.
+ * locales/sr_RS@latin: Likewise.
+ * locales/ss_ZA: Likewise.
+ * locales/st_ZA: Likewise.
+ * locales/sv_FI: Likewise.
+ * locales/sv_FI@euro: Likewise.
+ * locales/sv_SE: Likewise.
+ * locales/sw_KE: Likewise.
+ * locales/sw_TZ: Likewise.
+ * locales/szl_PL: Likewise.
+ * locales/ta_IN: Likewise.
+ * locales/ta_LK: Likewise.
+ * locales/te_IN: Likewise.
+ * locales/tg_TJ: Likewise.
+ * locales/th_TH: Likewise.
+ * locales/ti_ER: Likewise.
+ * locales/ti_ET: Likewise.
+ * locales/tig_ER: Likewise.
+ * locales/tk_TM: Likewise.
+ * locales/tl_PH: Likewise.
+ * locales/tn_ZA: Likewise.
+ * locales/tr_CY: Likewise.
+ * locales/tr_TR: Likewise.
+ * locales/ts_ZA: Likewise.
+ * locales/tt_RU: Likewise.
+ * locales/tt_RU@iqtelif: Likewise.
+ * locales/ug_CN: Likewise.
+ * locales/uk_UA: Likewise.
+ * locales/unm_US: Likewise.
+ * locales/ur_IN: Likewise.
+ * locales/ur_PK: Likewise.
+ * locales/uz_UZ: Likewise.
+ * locales/uz_UZ@cyrillic: Likewise.
+ * locales/ve_ZA: Likewise.
+ * locales/vi_VN: Likewise.
+ * locales/wa_BE: Likewise.
+ * locales/wa_BE@euro: Likewise.
+ * locales/wae_CH: Likewise.
+ * locales/wal_ET: Likewise.
+ * locales/wo_SN: Likewise.
+ * locales/xh_ZA: Likewise.
+ * locales/yi_US: Likewise.
+ * locales/yo_NG: Likewise.
+ * locales/yue_HK: Likewise.
+ * locales/zh_CN: Likewise.
+ * locales/zh_HK: Likewise.
+ * locales/zh_SG: Likewise.
+ * locales/zh_TW: Likewise.
+ * locales/zu_ZA: Likewise.
+
+2013-11-04 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/unm_US: Adjust language-code fields of LC_ADDRESS.
+ * locales/wal_ET: Likewise.
+
+2013-11-03 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/quz_PE: Adjust language-code fields of LC_ADDRESS.
+ * locales/szl_PL: Likewise.
+ * locales/ta_IN: Likewise.
+ * locales/ta_LK: Likewise.
+ * locales/te_IN: Likewise.
+ * locales/tg_TJ: Likewise.
+ * locales/tl_PH: Likewise.
+ * locales/tn_ZA: Likewise.
+ * locales/tr_CY: Likewise.
+ * locales/tr_TR: Likewise.
+ * locales/ts_ZA: Likewise.
+ * locales/tt_RU: Likewise.
+ * locales/tt_RU@iqtelif: Likewise.
+ * locales/ug_CN: Likewise.
+ * locales/ur_IN: Likewise.
+ * locales/ur_PK: Likewise.
+ * locales/uz_UZ: Likewise.
+ * locales/uz_UZ@cyrillic: Likewise.
+ * locales/ve_ZA: Likewise.
+ * locales/vi_VN: Likewise.
+ * locales/wa_BE: Likewise.
+ * locales/wal_ET: Likewise.
+ * locales/wo_SN: Likewise.
+ * locales/xh_ZA: Likewise.
+ * locales/yi_US: Likewise.
+ * locales/yue_HK: Likewise.
+ * locales/zh_HK: Likewise.
+ * locales/zh_SG: Likewise.
+
+2013-11-03 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/pa_IN: Adjust language-code fields of LC_ADDRESS.
+ * locales/pa_PK: Likewise.
+ * locales/pl_PL: Likewise.
+ * locales/ps_AF: Likewise.
+ * locales/pt_BR: Likewise.
+ * locales/pt_PT: Likewise.
+ * locales/ru_RU: Likewise.
+ * locales/ru_UA: Likewise.
+ * locales/sa_IN: Likewise.
+ * locales/sat_IN: Likewise.
+ * locales/sc_IT: Likewise.
+ * locales/sd_IN: Likewise.
+ * locales/sd_IN@devanagari: Likewise.
+ * locales/se_NO: Likewise.
+ * locales/si_LK: Likewise.
+ * locales/sk_SK: Likewise.
+ * locales/sl_SI: Likewise.
+ * locales/sq_AL: Likewise.
+ * locales/sq_MK: Likewise.
+ * locales/ss_ZA: Likewise.
+ * locales/st_ZA: Likewise.
+ * locales/sv_SE: Likewise.
+ * locales/sw_KE: Likewise.
+ * locales/sw_TZ: Likewise.
+
+2013-11-01 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/nb_NO: Adjust language-code fields of LC_ADDRESS.
+ * locales/ne_NP: Likewise.
+ * locales/nhn_MX: Likewise.
+ * locales/niu_NU: Likewise.
+ * locales/niu_NZ: Likewise.
+ * locales/nl_AW: Likewise.
+ * locales/nl_BE: Likewise.
+ * locales/nn_NO: Likewise.
+ * locales/nr_ZA: Likewise.
+ * locales/oc_FR: Likewise.
+ * locales/or_IN: Likewise.
+ * locales/os_RU: Likewise.
+
+2013-10-31 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/mag_IN: Adjust language-code fields of LC_ADDRESS.
+ * locales/mai_IN: Likewise.
+ * locales/mg_MG: Likewise.
+ * locales/mhr_RU: Likewise.
+ * locales/mi_NZ: Likewise.
+ * locales/ml_IN: Likewise.
+ * locales/mni_IN: Likewise.
+ * locales/mr_IN: Likewise.
+ * locales/ms_MY: Likewise.
+ * locales/mt_MT: Likewise.
+
+2013-10-29 Chris Leonard <cjl@sugarlabs.org>
+
+ [BZ #16078]
+ * locales/anp_IN: New locale for anp_IN.
+ * SUPPORTED: Add anp_IN.
+
+2013-10-24 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/ja_JP: Adjust language-code fields of LC_ADDRESS.
+ * locales/ka_GE: Likewise.
+ * locales/kk_KZ: Likewise.
+ * locales/kl_GL: Likewise.
+ * locales/kn_IN: Likewise.
+ * locales/ko_KR: Likewise.
+ * locales/kok_IN: Likewise.
+ * locales/ks_IN: Likewise.
+ * locales/ku_TR: Likewise.
+ * locales/kw_GB: Likewise.
+ * locales/ky_KG: Likewise.
+ * locales/lg_UG: Likewise.
+ * locales/lij_IT: Likewise.
+ * locales/lt_LT: Likewise.
+ * locales/lv_LV: Likewise.
+
+2013-10-13 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/he_IL: Adjust language-code fields of LC_ADDRESS.
+ * locales/hi_IN: Likewise.
+ * locales/hne_IN: Likewise.
+ * locales/hr_HR: Likewise.
+ * locales/hsb_DE: Likewise.
+ * locales/ht_HT: Likewise.
+ * locales/hu_HU: Likewise.
+ * locales/hy_AM: Likewise.
+ * locales/ia_FR: Likewise.
+ * locales/id_ID: Likewise.
+ * locales/ig_NG: Likewise.
+ * locales/ik_CA: Likewise.
+ * locales/is_IS: Likewise.
+ * locales/it_CH: Likewise.
+ * locales/it_IT: Likewise.
+ * locales/iu_CA: Likewise.
+
+2013-10-05 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/ff_SN: Adjust language-code fields of LC_ADDRESS.
+ * locales/fil_PH: Likewise.
+ * locales/fo_FO: Likewise.
+ * locales/fr_BE: Likewise.
+ * locales/fr_CA: Likewise.
+ * locales/fr_CH: Likewise.
+ * locales/fr_FR: Likewise.
+ * locales/fr_LU: Likewise.
+ * locales/fur_IT: Likewise.
+ * locales/fy_DE: Likewise.
+ * locales/fy_NL: Likewise.
+ * locales/ga_IE: Likewise.
+ * locales/gez_ER: Likewise.
+ * locales/gez_ET: Likewise.
+ * locales/gl_ES: Likewise.
+ * locales/gu_IN: Likewise.
+ * locales/gv_GB: Likewise.
+
+2013-10-04 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/pap_AN: Copy / modify pap_AN into pap_AW and pap_CW.
+ * locales/pap_AW: Likewise.
+ * locales/pap_CW: Likewise.
+ * SUPPORTED: Add ar_SS, pap_AW, pap_CW.
+
+2013-10-04 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/ar_SD: Split ar_SD into ar_SD and ar_SS
+ * locales/ar_SS: Likewise.
+
+2013-09-25 Michael Bauer <fios@akerbeltz.org>
+
+ [BZ #15400]
+ * locales/gd_GB: Version 1.2 of gd_GB locale.
+
+2013-09-23 Wei-Lun Chao <bluebat@member.fsf.org>
+
+ [BZ #15609]
+ * locales/cmn_TW: New locale for cmn_TW.
+ * SUPPORTED: Add cmn_TW.
+
+2013-09-23 Wei-Lun Chao <bluebat@member.fsf.org>
+
+ [BZ #15608]
+ * locales/hak_TW: New locale for hak_TW.
+ * SUPPORTED: Add hak_TW.
+
+2013-09-23 Wei-Lun Chao <bluebat@member.fsf.org>
+
+ [BZ #15608]
+ * locales/lzh_TW: New locale for lzh_TW.
+ * SUPPORTED: Add lzh_TW.
+
+2013-09-23 Wei-Lun Chao <bluebat@member.fsf.org>
+
+ [BZ #15608]
+ * locales/nan_TW: New locale for nan_TW.
+ * SUPPORTED: Add nan_TW.
+
+2013-09-15 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/as_IN: Adjust language-code fields of LC_ADDRESS.
+ * locales/ast_ES: Likewise.
+ * locales/ayc_PE: Likewise.
+ * locales/az_AZ: Likewise.
+ * locales/be_BY: Likewise.
+ * locales/bem_ZM: Likewise.
+ * locales/bg_BG: Likewise.
+ * locales/bho_IN: Likewise.
+ * locales/bn_BD: Likewise.
+ * locales/bn_IN: Likewise.
+ * locales/bo_CN: Likewise.
+ * locales/bo_IN: Likewise.
+ * locales/br_FR: Likewise.
+ * locales/brx_IN: Likewise.
+ * locales/bs_BA: Likewise.
+ * locales/ca_AD: Likewise.
+ * locales/ca_ES: Likewise.
+ * locales/ca_FR: Likewise.
+ * locales/ca_IT: Likewise.
+ * locales/crh_UA: Likewise.
+ * locales/csb_PL: Likewise.
+ * locales/cv_RU: Likewise.
+ * locales/da_DK: Likewise.
+ * locales/de_AT: Likewise.
+ * locales/de_BE: Likewise.
+ * locales/de_CH: Likewise.
+ * locales/de_DE: Likewise.
+ * locales/de_LU: Likewise.
+ * locales/doi_IN: Likewise.
+ * locales/dv_MV: Likewise.
+ * locales/dz_BT: Likewise.
+ * locales/el_CY: Likewise.
+ * locales/el_GR: Likewise.
+ * locales/en_AG: Likewise.
+ * locales/en_AU: Likewise.
+ * locales/en_BW: Likewise.
+ * locales/en_CA: Likewise.
+ * locales/en_DK: Likewise.
+ * locales/en_GB: Likewise.
+ * locales/en_HK: Likewise.
+ * locales/en_IE: Likewise.
+ * locales/en_IN: Likewise.
+ * locales/en_NG: Likewise.
+ * locales/en_NZ: Likewise.
+ * locales/en_PH: Likewise.
+ * locales/en_SG: Likewise.
+ * locales/en_US: Likewise.
+ * locales/en_ZA: Likewise.
+ * locales/en_ZM: Likewise.
+ * locales/en_ZW: Likewise.
+ * locales/es_AR: Likewise.
+ * locales/es_BO: Likewise.
+ * locales/es_CL: Likewise.
+ * locales/es_CO: Likewise.
+ * locales/es_CR: Likewise.
+ * locales/es_CU: Likewise.
+ * locales/es_DO: Likewise.
+ * locales/es_EC: Likewise.
+ * locales/es_ES: Likewise.
+ * locales/es_GT: Likewise.
+ * locales/es_HN: Likewise.
+ * locales/es_MX: Likewise.
+ * locales/es_NI: Likewise.
+ * locales/es_PA: Likewise.
+ * locales/es_PE: Likewise.
+ * locales/es_PR: Likewise.
+ * locales/es_PY: Likewise.
+ * locales/es_SV: Likewise.
+ * locales/es_US: Likewise.
+ * locales/es_UY: Likewise.
+ * locales/es_VE: Likewise.
+ * locales/eu_ES: Likewise.
+
+2013-09-21 Chris Leonard <cjl@sugarlabs.org>
+
+ [BZ#15919]
+ * locales/ak_GH: New locale for ak_GH.
+ * SUPPORTED: Add ak_GH.
+
+2013-09-15 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/aa_DJ: Adjust language-code fields of LC_ADDRESS.
+ * locales/aa_ER: Likewise.
+ * locales/aa_ET: Likewise.
+ * locales/af_ZA: Likewise.
+ * locales/am_ET: Likewise.
+ * locales/ar_AE: Likewise.
+ * locales/ar_BH: Likewise.
+ * locales/ar_DZ: Likewise.
+ * locales/ar_EG: Likewise.
+ * locales/ar_IN: Likewise.
+ * locales/ar_IQ: Likewise.
+ * locales/ar_JO: Likewise.
+ * locales/ar_KW: Likewise.
+ * locales/ar_LB: Likewise.
+ * locales/ar_LY: Likewise.
+ * locales/ar_MA: Likewise.
+ * locales/ar_OM: Likewise.
+ * locales/ar_QA: Likewise.
+ * locales/ar_SA: Likewise.
+ * locales/ar_SD: Likewise.
+ * locales/ar_SY: Likewise.
+ * locales/ar_TN: Likewise.
+ * locales/ar_YE: Likewise.
+
+2013-09-15 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/aa_ER: Add country_car field to LC_ADDRESS.
+ * locales/as_IN: Likewise.
+ * locales/ast_ES: Likewise.
+ * locales/ayc_PE: Likewise.
+ * locales/bem_ZM: Likewise.
+ * locales/ber_DZ: Likewise.
+ * locales/ber_MA: Likewise.
+ * locales/bho_IN: Likewise.
+ * locales/bo_IN: Likewise.
+ * locales/brx_IN: Likewise.
+ * locales/byn_ER: Likewise.
+ * locales/ca_AD: Likewise.
+ * locales/ca_FR: Likewise.
+ * locales/ca_IT: Likewise.
+ * locales/crh_UA: Likewise.
+ * locales/cv_RU: Likewise.
+ * locales/doi_IN: Likewise.
+ * locales/dz_BT: Likewise.
+ * locales/el_CY: Likewise.
+ * locales/en_US: Likewise.
+ * locales/en_ZM: Likewise.
+ * locales/es_CU: Likewise.
+ * locales/ff_SN: Likewise.
+ * locales/fil_PH: Likewise.
+ * locales/gd_GB: Likewise.
+ * locales/hne_IN: Likewise.
+ * locales/ht_HT: Likewise.
+ * locales/kl_GL: Likewise.
+ * locales/kok_IN: Likewise.
+ * locales/ks_IN: Likewise.
+ * locales/lij_IT: Likewise.
+ * locales/mag_IN: Likewise.
+ * locales/mai_IN: Likewise.
+ * locales/mg_MG: Likewise.
+ * locales/mhr_RU: Likewise.
+ * locales/mni_IN: Likewise.
+ * locales/my_MM: Likewise.
+ * locales/nhn_MX: Likewise.
+ * locales/niu_NZ: Likewise.
+ * locales/or_IN: Likewise.
+ * locales/os_RU: Likewise.
+ * locales/pa_PK: Likewise.
+ * locales/quz_PE: Likewise.
+ * locales/rw_RW: Likewise.
+ * locales/sat_IN: Likewise.
+ * locales/sc_IT: Likewise.
+ * locales/sd_IN: Likewise.
+ * locales/sd_IN@devanagari: Likewise.
+ * locales/shs_CA: Likewise.
+ * locales/si_LK: Likewise.
+ * locales/sid_ET: Likewise.
+ * locales/sq_MK: Likewise.
+ * locales/sw_KE: Likewise.
+ * locales/sw_TZ: Likewise.
+ * locales/szl_PL: Likewise.
+ * locales/ta_LK: Likewise.
+ * locales/ti_ER: Likewise.
+ * locales/tig_ER: Likewise.
+ * locales/tl_PH: Likewise.
+ * locales/ts_ZA: Likewise.
+ * locales/unm_US: Likewise.
+ * locales/ur_IN: Likewise.
+ * locales/wa_BE: Likewise.
+ * locales/yi_US: Likewise.
+
+2013-09-06 Chris Leonard <cjl@sugarlabs,.org>
+
+ * locales/nr_ZA: Deduplicate country_car.
+ * locales/nso_ZA: Likewise.
+ * locales/ss_ZA: Likewise.
+ * locales/tn_ZA: Likewise.
+ * locales/ve_ZA: Likewise.
+ * locales/tk_TM: Comment reformat.
+
+2013-09-04 Chris Leonard <cjl@sugarlabs,.org>
+
+ [BZ #15923]
+
+ * locales/ar_SD: Update iso-1427.def and related occurrences.
+ * locales/az_AZ: Likewise.
+ * locales/dv_MV: Likewise.
+ * locales/es_VE: Likewise.
+
+2013-09-04 Jakub Bogusz <qboosh@pld-linux.org>
+
+ * locales/am_ET: Add country_car field to LC_ADDRESS.
+ * locales/an_ES: Likewise.
+ * locales/ar_AE: Likewise.
+ * locales/ar_BH: Likewise.
+ * locales/ar_DZ: Likewise.
+ * locales/ar_EG: Likewise.
+ * locales/ar_IN: Likewise.
+ * locales/ar_IQ: Likewise.
+ * locales/ar_JO: Likewise.
+ * locales/ar_KW: Likewise.
+ * locales/ar_LB: Likewise.
+ * locales/ar_LY: Likewise.
+ * locales/ar_MA: Likewise.
+ * locales/ar_QA: Likewise.
+ * locales/ar_SA: Likewise.
+ * locales/ar_SD: Likewise.
+ * locales/ar_SY: Likewise.
+ * locales/ar_TN: Likewise.
+ * locales/az_AZ: Likewise.
+ * locales/be_BY: Likewise.
+ * locales/bn_BD: Likewise.
+ * locales/bn_IN: Likewise.
+ * locales/br_FR: Likewise.
+ * locales/bs_BA: Likewise.
+ * locales/ca_ES: Likewise.
+ * locales/csb_PL: Likewise.
+ * locales/da_DK: Likewise.
+ * locales/de_AT: Likewise.
+ * locales/de_BE: Likewise.
+ * locales/de_CH: Likewise.
+ * locales/de_LU: Likewise.
+ * locales/el_GR: Likewise.
+ * locales/en_AU: Likewise.
+ * locales/en_BW: Likewise.
+ * locales/en_CA: Likewise.
+ * locales/en_DK: Likewise.
+ * locales/en_GB: Likewise.
+ * locales/en_HK: Likewise.
+ * locales/en_IE: Likewise.
+ * locales/en_IN: Likewise.
+ * locales/en_NZ: Likewise.
+ * locales/en_PH: Likewise.
+ * locales/en_SG: Likewise.
+ * locales/en_ZW: Likewise.
+ * locales/es_AR: Likewise.
+ * locales/es_BO: Likewise.
+ * locales/es_CL: Likewise.
+ * locales/es_CO: Likewise.
+ * locales/es_DO: Likewise.
+ * locales/es_EC: Likewise.
+ * locales/es_ES: Likewise.
+ * locales/es_GT: Likewise.
+ * locales/es_MX: Likewise.
+ * locales/es_NI: Likewise.
+ * locales/es_PA: Likewise.
+ * locales/es_PE: Likewise.
+ * locales/es_PY: Likewise.
+ * locales/es_SV: Likewise.
+ * locales/es_UY: Likewise.
+ * locales/es_VE: Likewise.
+ * locales/eu_ES: Likewise.
+ * locales/fo_FO: Likewise.
+ * locales/fr_BE: Likewise.
+ * locales/fr_CA: Likewise.
+ * locales/fr_CH: Likewise.
+ * locales/fr_FR: Likewise.
+ * locales/fr_LU: Likewise.
+ * locales/fur_IT: Likewise.
+ * locales/fy_DE: Likewise.
+ * locales/ga_IE: Likewise.
+ * locales/gez_ER: Likewise.
+ * locales/gez_ET: Likewise.
+ * locales/gl_ES: Likewise.
+ * locales/gu_IN: Likewise.
+ * locales/gv_GB: Likewise.
+ * locales/he_IL: Likewise.
+ * locales/hi_IN: Likewise.
+ * locales/hr_HR: Likewise.
+ * locales/hu_HU: Likewise.
+ * locales/id_ID: Likewise.
+ * locales/ik_CA: Likewise.
+ * locales/is_IS: Likewise.
+ * locales/it_CH: Likewise.
+ * locales/it_IT: Likewise.
+ * locales/iu_CA: Likewise.
+ * locales/ja_JP: Likewise.
+ * locales/ka_GE: Likewise.
+ * locales/kk_KZ: Likewise.
+ * locales/kn_IN: Likewise.
+ * locales/ko_KR: Likewise.
+ * locales/ku_TR: Likewise.
+ * locales/kw_GB: Likewise.
+ * locales/ky_KG: Likewise.
+ * locales/lg_UG: Likewise.
+ * locales/lt_LT: Likewise.
+ * locales/lv_LV: Likewise.
+ * locales/mi_NZ: Likewise.
+ * locales/ml_IN: Likewise.
+ * locales/mr_IN: Likewise.
+ * locales/ms_MY: Likewise.
+ * locales/mt_MT: Likewise.
+ * locales/nb_NO: Likewise.
+ * locales/ne_NP: Likewise.
+ * locales/nl_BE: Likewise.
+ * locales/nn_NO: Likewise.
+ * locales/nr_ZA: Likewise.
+ * locales/nso_ZA: Likewise.
+ * locales/om_ET: Likewise.
+ * locales/om_KE: Likewise.
+ * locales/pa_IN: Likewise.
+ * locales/pl_PL: Likewise.
+ * locales/pt_BR: Likewise.
+ * locales/pt_PT: Likewise.
+ * locales/ru_RU: Likewise.
+ * locales/ru_UA: Likewise.
+ * locales/sa_IN: Likewise.
+ * locales/se_NO: Likewise.
+ * locales/sk_SK: Likewise.
+ * locales/sl_SI: Likewise.
+ * locales/so_ET: Likewise.
+ * locales/so_KE: Likewise.
+ * locales/so_SO: Likewise.
+ * locales/sq_AL: Likewise.
+ * locales/ss_ZA: Likewise.
+ * locales/sv_SE: Likewise.
+ * locales/ta_IN: Likewise.
+ * locales/te_IN: Likewise.
+ * locales/tg_TJ: Likewise.
+ * locales/th_TH: Likewise.
+ * locales/ti_ET: Likewise.
+ * locales/tl_PH: Likewise.
+ * locales/tn_ZA: Likewise.
+ * locales/ts_ZA: Likewise.
+ * locales/tt_RU: Likewise.
+ * locales/tt_RU@iqtelif: Likewise.
+ * locales/ur_PK: Likewise.
+ * locales/uz_UZ: Likewise.
+ * locales/ve_ZA: Likewise.
+ * locales/vi_VN: Likewise.
+ * locales/wal_ET: Likewise.
+ * locales/wo_SN: Likewise.
+ * locales/zh_SG: Likewise.
+
+2013-09-03 Chris Leonard <cjl@sugarlabs.org>
+
+ * locales/ayc_PE: Add FSF statement to ayc_PE locale.
+
+ [BZ#15886]
+ * locales/ht_HT: 1.1 revision of ht_HT locale.
+
+ [BZ#15887]
+ * locales/quz_PE: New locale for quz_PE.
+ * SUPPORTED: Add quz_PE.
+
2013-08-30 Ondřej Bílka <neleai@seznam.cz>
* tests-mbwc/dat_wcsncat.c: Fix typos.
@@ -360,7 +1423,7 @@
2012-04-12 Mike Frysinger <vapier@gentoo.org>
- [BZ #3768]
+ [BZ #3768]
* locales/en_GB (LC_TIME): Set am_pm and t_fmt_ampm fields.
* locales/cy_GB (LC_TIME): Likewise. Also copy date_fmt from en_GB.
diff --git a/localedata/SUPPORTED b/localedata/SUPPORTED
index e2439302c7..d4ce44e5e5 100644
--- a/localedata/SUPPORTED
+++ b/localedata/SUPPORTED
@@ -8,9 +8,11 @@ aa_ER@saaho/UTF-8 \
aa_ET/UTF-8 \
af_ZA.UTF-8/UTF-8 \
af_ZA/ISO-8859-1 \
+ak_GH/UTF-8 \
am_ET/UTF-8 \
an_ES.UTF-8/UTF-8 \
an_ES/ISO-8859-15 \
+anp_IN/UTF-8 \
ar_AE.UTF-8/UTF-8 \
ar_AE/ISO-8859-6 \
ar_BH.UTF-8/UTF-8 \
@@ -40,6 +42,7 @@ ar_SA.UTF-8/UTF-8 \
ar_SA/ISO-8859-6 \
ar_SD.UTF-8/UTF-8 \
ar_SD/ISO-8859-6 \
+ar_SS/UTF-8 \
ar_SY.UTF-8/UTF-8 \
ar_SY/ISO-8859-6 \
ar_TN.UTF-8/UTF-8 \
@@ -80,6 +83,7 @@ ca_FR.UTF-8/UTF-8 \
ca_FR/ISO-8859-15 \
ca_IT.UTF-8/UTF-8 \
ca_IT/ISO-8859-15 \
+cmn_TW/UTF-8 \
crh_UA/UTF-8 \
cs_CZ.UTF-8/UTF-8 \
cs_CZ/ISO-8859-2 \
@@ -229,6 +233,7 @@ gu_IN/UTF-8 \
gv_GB.UTF-8/UTF-8 \
gv_GB/ISO-8859-1 \
ha_NG/UTF-8 \
+hak_TW/UTF-8 \
he_IL.UTF-8/UTF-8 \
he_IL/ISO-8859-8 \
hi_IN/UTF-8 \
@@ -288,6 +293,7 @@ lt_LT.UTF-8/UTF-8 \
lt_LT/ISO-8859-13 \
lv_LV.UTF-8/UTF-8 \
lv_LV/ISO-8859-13 \
+lzh_TW/UTF-8 \
mag_IN/UTF-8 \
mai_IN/UTF-8 \
mg_MG.UTF-8/UTF-8 \
@@ -306,6 +312,7 @@ ms_MY/ISO-8859-1 \
mt_MT.UTF-8/UTF-8 \
mt_MT/ISO-8859-3 \
my_MM/UTF-8 \
+nan_TW/UTF-8 \
nan_TW@latin/UTF-8 \
nb_NO.UTF-8/UTF-8 \
nb_NO/ISO-8859-1 \
@@ -336,6 +343,8 @@ os_RU/UTF-8 \
pa_IN/UTF-8 \
pa_PK/UTF-8 \
pap_AN/UTF-8 \
+pap_AW/UTF-8 \
+pap_CW/UTF-8 \
pl_PL.UTF-8/UTF-8 \
pl_PL/ISO-8859-2 \
ps_AF/UTF-8 \
@@ -344,6 +353,7 @@ pt_BR/ISO-8859-1 \
pt_PT.UTF-8/UTF-8 \
pt_PT/ISO-8859-1 \
pt_PT@euro/ISO-8859-15 \
+quz_PE/UTF-8 \
ro_RO.UTF-8/UTF-8 \
ro_RO/ISO-8859-2 \
ru_RU.KOI8-R/KOI8-R \
@@ -396,6 +406,7 @@ tg_TJ.UTF-8/UTF-8 \
tg_TJ/KOI8-T \
th_TH.UTF-8/UTF-8 \
th_TH/TIS-620 \
+the_NP/UTF-8 \
ti_ER/UTF-8 \
ti_ET/UTF-8 \
tig_ER/UTF-8 \
diff --git a/localedata/locales/aa_DJ b/localedata/locales/aa_DJ
index 184b8c474a..078f2556b1 100644
--- a/localedata/locales/aa_DJ
+++ b/localedata/locales/aa_DJ
@@ -76,11 +76,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-%
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT category.
-%
+% metric
measurement 1
-%
END LC_MEASUREMENT
@@ -159,8 +156,11 @@ country_num 262
% country_car unknown
% country_isbn unknown, Need ISO 2108
lang_name "<U0051><U0061><U0066><U0061><U0072>"
+% aa
lang_ab "<U0061><U0061>"
+% aar
lang_term "<U0061><U0061><U0072>"
+% aar
lang_lib "<U0061><U0061><U0072>"
%
END LC_ADDRESS
diff --git a/localedata/locales/aa_ER b/localedata/locales/aa_ER
index 1f369a1788..38bc073534 100644
--- a/localedata/locales/aa_ER
+++ b/localedata/locales/aa_ER
@@ -72,7 +72,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ER"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
@@ -109,11 +110,15 @@ country_post "<U0045><U0052><U0049>"
country_ab2 "<U0045><U0052>"
country_ab3 "<U0045><U0052><U0049>"
country_num 232
-% country_car unknown
+% ER
+country_car "<U0045><U0052>"
% country_isbn unknown, Need ISO 2108
lang_name "<U0051><U0061><U0066><U0061><U0072>"
+% aa
lang_ab "<U0061><U0061>"
+% aar
lang_term "<U0061><U0061><U0072>"
+% aar
lang_lib "<U0061><U0061><U0072>"
%
END LC_ADDRESS
diff --git a/localedata/locales/aa_ER@saaho b/localedata/locales/aa_ER@saaho
index 092996729b..63c1cb9a4f 100644
--- a/localedata/locales/aa_ER@saaho
+++ b/localedata/locales/aa_ER@saaho
@@ -72,7 +72,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "aa_ER"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
diff --git a/localedata/locales/aa_ET b/localedata/locales/aa_ET
index b0a1d8d3c4..c433fbccdb 100644
--- a/localedata/locales/aa_ET
+++ b/localedata/locales/aa_ET
@@ -72,7 +72,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ET"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
@@ -109,11 +110,15 @@ country_post "<U0045><U0054><U0048>"
country_ab2 "<U0045><U0054>"
country_ab3 "<U0045><U0054><U0048>"
country_num 231 % 210 found in at least one ISO 3166 doc
-% country_car unknown
+% ETH
+country_car "<U0045><U0054><U0048>"
% country_isbn unknown, Need ISO 2108
lang_name "<U0051><U0061><U0066><U0061><U0072>"
+% aa
lang_ab "<U0061><U0061>"
+% aar
lang_term "<U0061><U0061><U0072>"
+% aar
lang_lib "<U0061><U0061><U0072>"
%
END LC_ADDRESS
diff --git a/localedata/locales/af_ZA b/localedata/locales/af_ZA
index ec588605eb..143ad7557e 100644
--- a/localedata/locales/af_ZA
+++ b/localedata/locales/af_ZA
@@ -185,7 +185,8 @@ copy "en_ZA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_ZA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -279,10 +280,12 @@ country_isbn 0
% ISO 639 language abbreviations:
% 639-1 2 letter, 639-2 3 letter terminology
% http://www.loc.gov/standards/iso639-2/englangn.html
-% "af", "afr", "afr"
-lang_ab "<U0061><U0066>"
-lang_term "<U0061><U0066><U0072>"
-lang_lib "<U0061><U0066><U0072>"
+% af
+lang_ab "<U0061><U0066>"
+% afr
+lang_term "<U0061><U0066><U0072>"
+% afr
+lang_lib "<U0061><U0066><U0072>"
% ISO 3166 country number and 2 and 3 letter abbreviations
% http://www.unicode.org/onlinedat/countries.html
diff --git a/localedata/locales/ak_GH b/localedata/locales/ak_GH
new file mode 100644
index 0000000000..159acc8c4d
--- /dev/null
+++ b/localedata/locales/ak_GH
@@ -0,0 +1,216 @@
+comment_char %
+escape_char /
+% Charset: UTF-8
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Akan locale for Ghana
+%
+% Prepared and contributed to glibc by Chris Leonard <cjl@sugarlabs.org>
+% and Jojoo Imbeah <jojoo.imbeah@kasahorow.com>
+%
+% This locale data has been developed by:
+% Sugar Labs, http://www.sugarlabs.org/
+% kasahorow, http://www.kasahorow.org/
+%
+% build with: localedef -f UTF-8 -i ak_GH ak_GH
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_IDENTIFICATION
+title "Akan locale for Ghana"
+source "Sugar Labs / OLPC"
+address ""
+contact "sugarlabs.org"
+email "libc-alpha@sourceware.org"
+tel ""
+fax ""
+language "Akan"
+territory "Ghana"
+revision "1.0"
+date "2013-08-24"
+%
+category "ak_GH:2013";LC_IDENTIFICATION
+category "ak_GH:2013";LC_CTYPE
+category "ak_GH:2013";LC_COLLATE
+category "ak_GH:2013";LC_TIME
+category "ak_GH:2013";LC_NUMERIC
+category "ak_GH:2013";LC_MONETARY
+category "ak_GH:2013";LC_PAPER
+category "ak_GH:2013";LC_MEASUREMENT
+category "ak_GH:2013";LC_MESSAGES
+category "ak_GH:2013";LC_NAME
+category "ak_GH:2013";LC_ADDRESS
+category "ak_GH:2013";LC_TELEPHONE
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "i18n"
+translit_start
+include "translit_combining";""
+translit_end
+END LC_CTYPE
+
+LC_COLLATE
+copy "iso14651_t1"
+END LC_COLLATE
+
+LC_TIME
+% Sanda-ƆpÉ›pÉ”n, Kwakwar-Ɔgyefuo, EbÉ”w-Ɔbenem, EbÉ”bira-Oforisuo, Esusow Aketseaba-KÉ”tÉ”nimba, Obirade-AyÉ›wohomumu, AyÉ›woho-Kitawonsa, Difuu-Ɔsandaa, Fankwa-ÆbÉ”, ƆbÉ›sÉ›-Ahinime, ƆberÉ›fÉ›w-Obubuo, Mumu-ƆpÉ›nimba
+mon "<U0053><U0061><U006E><U0064><U0061><U002D><U0186><U0070><U025B><U0070><U0254><U006E>";/
+ "<U004B><U0077><U0061><U006B><U0077><U0061><U0072><U002D><U0186><U0067><U0079><U0065><U0066><U0075><U006F>";/
+ "<U0045><U0062><U0254><U0077><U002D><U0186><U0062><U0065><U006E><U0065><U006D>";/
+ "<U0045><U0062><U0254><U0062><U0069><U0072><U0061><U002D><U004F><U0066><U006F><U0072><U0069><U0073><U0075><U006F>";/
+ "<U0045><U0073><U0075><U0073><U006F><U0077><U0020><U0041><U006B><U0065><U0074><U0073><U0065><U0061><U0062><U0061><U002D><U004B><U0254><U0074><U0254><U006E><U0069><U006D><U0062><U0061>";/
+ "<U004F><U0062><U0069><U0072><U0061><U0064><U0065><U002D><U0041><U0079><U025B><U0077><U006F><U0068><U006F><U006D><U0075><U006D><U0075>";/
+ "<U0041><U0079><U025B><U0077><U006F><U0068><U006F><U002D><U004B><U0069><U0074><U0061><U0077><U006F><U006E><U0073><U0061>";/
+ "<U0044><U0069><U0066><U0075><U0075><U002D><U0186><U0073><U0061><U006E><U0064><U0061><U0061>";/
+ "<U0046><U0061><U006E><U006B><U0077><U0061><U002D><U0190><U0062><U0254>";/
+ "<U0186><U0062><U025B><U0073><U025B><U002D><U0041><U0068><U0069><U006E><U0069><U006D><U0065>";/
+ "<U0186><U0062><U0065><U0072><U025B><U0066><U025B><U0077><U002D><U004F><U0062><U0075><U0062><U0075><U006F>";/
+ "<U004D><U0075><U006D><U0075><U002D><U0186><U0070><U025B><U006E><U0069><U006D><U0062><U0061>"
+% S-Ɔ, K-Ɔ, E-Ɔ, E-O, E-K, O-A, A-K, D-Ɔ, F-Æ, Ɔ-A, Ɔ-O, M-Ɔ
+abmon "<U0053><U002D><U0186>";/
+ "<U004B><U002D><U0186>";/
+ "<U0045><U002D><U0186>";/
+ "<U0045><U002D><U004F>";/
+ "<U0045><U002D><U004B>";/
+ "<U004F><U002D><U0041>";/
+ "<U0041><U002D><U004B>";/
+ "<U0044><U002D><U0186>";/
+ "<U0046><U002D><U0190>";/
+ "<U0186><U002D><U0041>";/
+ "<U0186><U002D><U004F>";/
+ "<U004D><U002D><U0186>"
+% Kwesida, Dwowda, Benada, Wukuda, Yawda, Fida, Memeneda
+day "<U004B><U0077><U0065><U0073><U0069><U0064><U0061>";/
+ "<U0044><U0077><U006F><U0077><U0064><U0061>";/
+ "<U0042><U0065><U006E><U0061><U0064><U0061>";/
+ "<U0057><U0075><U006B><U0075><U0064><U0061>";/
+ "<U0059><U0061><U0077><U0064><U0061>";/
+ "<U0046><U0069><U0064><U0061>";/
+ "<U004D><U0065><U006D><U0065><U006E><U0065><U0064><U0061>"
+% Kwe, Dwo, Ben, Wuk, Yaw, Fia, Mem
+abday "<U004B><U0077><U0065>";/
+ "<U0044><U0077><U006F>";/
+ "<U0042><U0065><U006E>";/
+ "<U0057><U0075><U006B>";/
+ "<U0059><U0061><U0077>";/
+ "<U0046><U0069><U0061>";/
+ "<U004D><U0065><U006D>"
+% %a %d %b %Y %T %Z
+d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+% %Y/%m/%d
+d_fmt "<U0025><U0059><U002F><U0025><U006D><U002F><U0025><U0064>"
+% %r
+t_fmt "<U0025><U0072>"
+% AM/PM time representation: %I:%M:%S %p
+t_fmt_ampm "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0070>"
+% Strings for AM/PM: AN/EW
+am_pm "<U0041><U004E>";"<U0045><U0057>"
+week 7;19971130;7
+first_weekday 1
+first_workday 2
+END LC_TIME
+
+LC_NUMERIC
+% .
+decimal_point "<U002E>"
+% ,
+thousands_sep "<U002C>"
+grouping 3
+END LC_NUMERIC
+
+LC_MONETARY
+% GHS
+int_curr_symbol "<U0047><U0048><U0053><U0020>"
+% GH₵
+currency_symbol "<U0047><U0048><U20B5>"
+% .
+mon_decimal_point "<U002E>"
+% ,
+mon_thousands_sep "<U002C>"
+mon_grouping 3
+positive_sign ""
+% -
+negative_sign "<U002D>"
+int_frac_digits 2
+frac_digits 2
+p_cs_precedes 0
+p_sep_by_space 1
+n_cs_precedes 0
+n_sep_by_space 1
+p_sign_posn 1
+n_sign_posn 1
+END LC_MONETARY
+
+LC_PAPER
+% A4
+height 297
+width 210
+END LC_PAPER
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
+
+LC_MESSAGES
+% ^[yY].*
+yesexpr "<U005E><U005B><U0079><U0059><U005D><U002E><U002A>"
+% ^[dDnN].*
+noexpr "<U005E><U005B><U0064><U0044><U006E><U004E><U005D><U002E><U002A>"
+% Yiw
+yesstr "<U0059><U0069><U0077>"
+% Daabi
+nostr "<U0044><U0061><U0061><U0062><U0069>"
+END LC_MESSAGES
+
+LC_NAME
+name_fmt "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
+<U0025><U006D><U0025><U0074><U0025><U0066>"
+END LC_NAME
+
+LC_ADDRESS
+postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0068>/
+<U0020><U0025><U0073><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U0054><U002C><U0020><U0025><U0053><U0020><U0025><U007A><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+% Gaana
+country_name "<U0047><U0061><U0061><U006E><U0061>"
+% GH
+country_post "<U0047><U0048>"
+% GH
+country_ab2 "<U0047><U0048>"
+% GHA
+country_ab3 "<U0047><U0048><U0041>"
+country_num 288
+country_isbn 9964
+% Akan
+lang_name "<U0041><U006B><U0061><U006E>"
+% ak
+lang_ab "<U0061><U006B>"
+% aka
+lang_term "<U0061><U006B><U0061>"
+END LC_ADDRESS
+
+LC_TELEPHONE
+% +%c %a %l
+tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025><U006C>"
+% %a %l
+tel_dom_fmt "<U0025><U0061><U0020><U0025><U006C>"
+% 00
+int_select "<U0030><U0030>"
+% 233
+int_prefix "<U0032><U0033><U0033>"
+END LC_TELEPHONE
diff --git a/localedata/locales/am_ET b/localedata/locales/am_ET
index 5aa2ca110a..666e984ba3 100644
--- a/localedata/locales/am_ET
+++ b/localedata/locales/am_ET
@@ -1403,7 +1403,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ET"
+% metric
+measurement 1
END LC_MEASUREMENT
@@ -1444,12 +1445,16 @@ country_post "<U0045><U0054><U0048>"
country_ab2 "<U0045><U0054>"
country_ab3 "<U0045><U0054><U0048>"
country_num 231 % 210 found in at least one ISO 3166 doc
-% country_car unknown
+% ETH
+country_car "<U0045><U0054><U0048>"
% country_isbn unknown, Need ISO 2108
lang_name "<U12A0><U121B><U122D><U129B>"
-lang_ab "<U0061><U006D>"
-lang_term "<U0061><U006D><U0068>"
-lang_lib "<U0061><U006D><U0068>"
+% am
+lang_ab "<U0061><U006D>"
+% amh
+lang_term "<U0061><U006D><U0068>"
+% amh
+lang_lib "<U0061><U006D><U0068>"
%
END LC_ADDRESS
diff --git a/localedata/locales/an_ES b/localedata/locales/an_ES
index 2a50c12ef9..a06ab8e773 100644
--- a/localedata/locales/an_ES
+++ b/localedata/locales/an_ES
@@ -42,6 +42,7 @@ category "i18n:1999";LC_PAPER
category "i18n:1999";LC_NAME
category "i18n:1999";LC_ADDRESS
category "i18n:1999";LC_TELEPHONE
+category "i18n:1999";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -116,7 +117,8 @@ copy "es_ES"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "es_ES"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -124,5 +126,16 @@ copy "es_ES"
END LC_NAME
LC_ADDRESS
-copy "es_ES"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0045><U0053>"
+country_ab3 "<U0045><U0053><U0050>"
+country_num 724
+% E
+country_car "<U0045>"
+% aragonés
+lang_name "<U0061><U0072><U0061><U0067><U006F><U006E><U00E9><U0073>"
END LC_ADDRESS
diff --git a/localedata/locales/anp_IN b/localedata/locales/anp_IN
new file mode 100644
index 0000000000..d08ac9e811
--- /dev/null
+++ b/localedata/locales/anp_IN
@@ -0,0 +1,208 @@
+comment_char %
+escape_char /
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Angika language locale for India.
+%
+% Contributed by Dr Amrendra, Sangeeta Kumari <sangeeta_0975@yahoo.com>,
+% Rajesh Ranjan <rajeshkajha@yahoo.com>, Pravin Satpute <psatpute AT redhat DOT com>
+% and Chris Leonard <cjlhomeaddress AT gmail DOT com>
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_IDENTIFICATION
+title "Angika language locale for India"
+source ""
+address ""
+contact ""
+email "bhashaghar@googlegroups.com"
+tel ""
+fax ""
+language "Angika"
+territory "India"
+revision "1.0"
+date "2013-10-24"
+%
+category "anp_IN:2013";LC_IDENTIFICATION
+category "anp_IN:2013";LC_CTYPE
+category "anp_IN:2013";LC_COLLATE
+category "anp_IN:2013";LC_TIME
+category "anp_IN:2013";LC_NUMERIC
+category "anp_IN:2013";LC_MONETARY
+category "anp_IN:2013";LC_MESSAGES
+category "anp_IN:2013";LC_PAPER
+category "anp_IN:2013";LC_NAME
+category "anp_IN:2013";LC_ADDRESS
+category "anp_IN:2013";LC_TELEPHONE
+category "anp_IN:2013";LC_MEASUREMENT
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "hi_IN"
+END LC_CTYPE
+
+LC_COLLATE
+copy "hi_IN"
+END LC_COLLATE
+
+LC_MONETARY
+copy "hi_IN"
+END LC_MONETARY
+
+
+LC_NUMERIC
+copy "hi_IN"
+END LC_NUMERIC
+
+
+LC_TIME
+% This is the POSIX Locale definition for the LC_TIME category.
+% These are generated based on XML base Locale definition file
+% for IBM Class for Unicode/Java
+%
+% Abbreviated weekday names (%a)
+% रवि; सोम; मंगल; बà¥à¤§; बृहसà¥à¤ªà¤¤à¤¿; शà¥à¤•à¥à¤°; शनि
+abday "<U0930><U0935><U093F><U0020>";/
+ "<U0938><U094B><U092E><U0020>";/
+ "<U092E><U0902><U0917><U0932><U0020>";/
+ "<U092C><U0941><U0927><U0020>";/
+ "<U092C><U0943><U0939><U0938><U094D><U092A><U0924><U093F><U0020>";/
+ "<U0936><U0941><U0915><U094D><U0930><U0020>";/
+ "<U0936><U0928><U093F><U0020>"
+%
+% Full weekday names (%A)
+% रविवार; सोमवार; मंगलवार; बà¥à¤§à¤µà¤¾à¤°; बृहसà¥à¤ªà¤¤à¤¿à¤µà¤¾à¤°; शà¥à¤•à¥à¤°à¤µà¤¾à¤°; शनिवार
+day "<U0930><U0935><U093F><U0935><U093E><U0930><U0020>";/
+ "<U0938><U094B><U092E><U0935><U093E><U0930><U0020>";/
+ "<U092E><U0902><U0917><U0932><U0935><U093E><U0930><U0020>";/
+ "<U092C><U0941><U0927><U0935><U093E><U0930><U0020>";/
+ "<U092C><U0943><U0939><U0938><U094D><U092A><U0924><U093F><U0935><U093E><U0930><U0020>";/
+ "<U0936><U0941><U0915><U094D><U0930><U0935><U093E><U0930><U0020>";/
+ "<U0936><U0928><U093F><U0935><U093E><U0930><U0020>"
+%
+% Abbreviated month names (%b)
+% जन; फर; मारà¥à¤š; अपà¥à¤°à¥ˆ; मई; जून; जà¥à¤²; अग; सित; अकà¥à¤Ÿà¥‚; नव; दिस
+abmon "<U091C><U0928><U0935><U0930><U0940>";/
+ "<U092B><U0930><U0935><U0930><U0940>";/
+ "<U092E><U093E><U0930><U094D><U091A>";/
+ "<U0905><U092A><U094D><U0930><U0948><U0932>";/
+ "<U092E><U0908>";/
+ "<U091C><U0942><U0928>";/
+ "<U091C><U0941><U0932><U093E><U0908>";/
+ "<U0905><U0917><U0938><U094D><U0924>";/
+ "<U0938><U093F><U0924><U0902><U092C><U0930>";/
+ "<U0905><U0915><U094D><U091F><U0942><U092C><U0930>";/
+ "<U0928><U0935><U0902><U092C><U0930>";/
+ "<U0926><U093F><U0938><U0902><U092C><U0930>"
+%
+% Full month names (%B)
+% जनवरी; फरवरी; मारà¥à¤š; अपà¥à¤°à¥ˆà¤²; मई; जून; जà¥à¤²à¤¾à¤ˆ; अगसà¥à¤¤; सितंबर; अकà¥à¤Ÿà¥‚बर; नवंबर; दिसंबर
+mon "<U091C><U0928><U0935><U0930><U0940>";/
+ "<U092B><U0930><U0935><U0930><U0940>";/
+ "<U092E><U093E><U0930><U094D><U091A>";/
+ "<U0905><U092A><U094D><U0930><U0948><U0932>";/
+ "<U092E><U0908>";/
+ "<U091C><U0942><U0928>";/
+ "<U091C><U0941><U0932><U093E><U0908>";/
+ "<U0905><U0917><U0938><U094D><U0924>";/
+ "<U0938><U093F><U0924><U0902><U092C><U0930>";/
+ "<U0905><U0915><U094D><U091F><U0942><U092C><U0930>";/
+ "<U0928><U0935><U0902><U092C><U0930>";/
+ "<U0926><U093F><U0938><U0902><U092C><U0930>"%
+%
+% Equivalent of AM PM
+% पूरà¥à¤µà¤¾à¤¹à¥à¤¨; अपराहà¥à¤¨
+am_pm "<U092A><U0942><U0930><U094D><U0935><U093E><U0939><U094D><U0928>";/
+ "<U0905><U092A><U0930><U093E><U0939><U094D><U0928>"
+%
+% Appropriate date and time representation
+% %A %d %b %Y%I:%M:%S %Z
+d_t_fmt "<U0025><U0041><U0020><U0025><U0064><U0020><U0025><U0062>/
+<U0020><U0025><U0059><U0020><U0025><U0049><U003A><U0025><U004D><U003A>/
+<U0025><U0053><U0020><U0025><U0070><U0020><U0025><U005A>"
+%
+% Appropriate date representation
+% %A %d %b %Y
+d_fmt "<U0025><U0041><U0020><U0025><U0064><U0020><U0025><U0062>/
+<U0020><U0025><U0059>"
+%
+% Appropriate time representation
+% %I:%M:%S %Z
+t_fmt "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053>/
+<U0020><U0020><U0025><U005A>"
+%
+% Appropriate 12 h time representation (%r)
+t_fmt_ampm "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053>/
+<U0020><U0025><U0070><U0020><U0025><U005A>"
+%
+date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
+<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
+<U0025><U005A><U0020><U0025><U0059>"
+END LC_TIME
+
+
+LC_MESSAGES
+% ^[yY].*
+yesexpr "<U005E><U005B><U0939><U0935><U0079><U0059><U005D>"
+% ^[nN].*
+noexpr "<U005E><U005B><U0928><U0907><U006E><U004E><U005D>"
+END LC_MESSAGES
+
+
+LC_PAPER
+copy "hi_IN"
+END LC_PAPER
+
+
+LC_NAME
+% This is the ISO_IEC TR14652 Locale definition for the
+% LC_NAME category.
+%
+name_fmt "<U0025><U0070><U0025><U0074><U0025><U0066><U0025><U0074>/
+<U0025><U0067>"
+name_gen ""
+% शà¥à¤°à¥€
+name_mr "<U0936><U094D><U0930><U0940>"
+% शà¥à¤°à¥€à¤®à¤¤à¥€
+name_mrs "<U0936><U094D><U0930><U0940><U092E><U0924><U0940>"
+% कà¥à¤®à¤¾à¤°à¥€
+name_miss "<U0915><U0941><U092E><U093E><U0930><U0940>"
+% कà¥à¤®à¤¾à¤°
+name_ms "<U0915><U0941><U092E><U093E><U0930>"
+END LC_NAME
+
+
+LC_ADDRESS
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% अंगिका
+lang_name "<U0905><U0902><U0917><U093F><U0915><U093E>"
+% anp
+lang_term "<U0061><U006E><U0070>"
+% anp
+lang_lib "<U0061><U006E><U0070>"
+END LC_ADDRESS
+
+
+LC_TELEPHONE
+copy "hi_IN"
+END LC_TELEPHONE
+
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
diff --git a/localedata/locales/ar_AE b/localedata/locales/ar_AE
index e787bf3422..e083467384 100644
--- a/localedata/locales/ar_AE
+++ b/localedata/locales/ar_AE
@@ -28,6 +28,7 @@ category "ar_AE:2000";LC_PAPER
category "ar_AE:2000";LC_NAME
category "ar_AE:2000";LC_ADDRESS
category "ar_AE:2000";LC_TELEPHONE
+category "ar_AE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -181,6 +182,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0041><U0045>"
country_ab3 "<U0041><U0052><U0045>"
country_num 784
+% UAE
+country_car "<U0055><U0041><U0045>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -195,8 +205,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_BH b/localedata/locales/ar_BH
index 4839d5fa4e..7a3bdde846 100644
--- a/localedata/locales/ar_BH
+++ b/localedata/locales/ar_BH
@@ -28,6 +28,7 @@ category "ar_BH:2000";LC_PAPER
category "ar_BH:2000";LC_NAME
category "ar_BH:2000";LC_ADDRESS
category "ar_BH:2000";LC_TELEPHONE
+category "ar_BH:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -185,7 +186,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0042><U0048>"
country_ab3 "<U0042><U0048><U0052>"
country_num 048
-
+% BRN
+country_car "<U0042><U0052><U004E>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -201,8 +210,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_DZ b/localedata/locales/ar_DZ
index 1e2838e84f..64dda4634f 100644
--- a/localedata/locales/ar_DZ
+++ b/localedata/locales/ar_DZ
@@ -28,6 +28,7 @@ category "ar_DZ:2000";LC_PAPER
category "ar_DZ:2000";LC_NAME
category "ar_DZ:2000";LC_ADDRESS
category "ar_DZ:2000";LC_TELEPHONE
+category "ar_DZ:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -184,7 +185,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0044><U005A>"
country_ab3 "<U0044><U005A><U0041>"
country_num 012
-
+% DZ
+country_car "<U0044><U005A>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -200,8 +209,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_EG b/localedata/locales/ar_EG
index ec0e9e2979..0701442589 100644
--- a/localedata/locales/ar_EG
+++ b/localedata/locales/ar_EG
@@ -28,6 +28,7 @@ category "ar_EG:2000";LC_PAPER
category "ar_EG:2000";LC_NAME
category "ar_EG:2000";LC_ADDRESS
category "ar_EG:2000";LC_TELEPHONE
+category "ar_EG:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -192,7 +193,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0045><U0047>"
country_ab3 "<U0045><U0047><U0059>"
country_num 818
-
+% ET
+country_car "<U0045><U0054>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -207,8 +216,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_IN b/localedata/locales/ar_IN
index 821cb31363..9665d01ee0 100644
--- a/localedata/locales/ar_IN
+++ b/localedata/locales/ar_IN
@@ -28,7 +28,7 @@ category "ar_IN:2000";LC_PAPER
category "ar_IN:2000";LC_NAME
category "ar_IN:2000";LC_ADDRESS
category "ar_IN:2000";LC_TELEPHONE
-
+category "ar_IN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -162,7 +162,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
-
+% IND
+country_car "<U0049><U004E><U0044>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -172,5 +180,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_IQ b/localedata/locales/ar_IQ
index fc4a9fce44..24ee343f25 100644
--- a/localedata/locales/ar_IQ
+++ b/localedata/locales/ar_IQ
@@ -28,6 +28,7 @@ category "ar_IQ:2000";LC_PAPER
category "ar_IQ:2000";LC_NAME
category "ar_IQ:2000";LC_ADDRESS
category "ar_IQ:2000";LC_TELEPHONE
+category "ar_IQ:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -184,7 +185,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0049><U0051>"
country_ab3 "<U0049><U0052><U0051>"
country_num 368
-
+% IRQ
+country_car "<U0049><U0052><U0051>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -199,8 +208,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_JO b/localedata/locales/ar_JO
index 8102187ee0..6de8956377 100644
--- a/localedata/locales/ar_JO
+++ b/localedata/locales/ar_JO
@@ -28,6 +28,7 @@ category "ar_JO:2000";LC_PAPER
category "ar_JO:2000";LC_NAME
category "ar_JO:2000";LC_ADDRESS
category "ar_JO:2000";LC_TELEPHONE
+category "ar_JO:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -202,7 +203,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U004A><U004F>"
country_ab3 "<U004A><U004F><U0052>"
country_num 400
-
+% HKJ
+country_car "<U0048><U004B><U004A>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -217,8 +226,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_KW b/localedata/locales/ar_KW
index e2d1735a87..9014c21d2b 100644
--- a/localedata/locales/ar_KW
+++ b/localedata/locales/ar_KW
@@ -28,6 +28,7 @@ category "ar_KW:2000";LC_PAPER
category "ar_KW:2000";LC_NAME
category "ar_KW:2000";LC_ADDRESS
category "ar_KW:2000";LC_TELEPHONE
+category "ar_KW:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -184,7 +185,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U004B><U0057>"
country_ab3 "<U004B><U0057><U0054>"
country_num 414
-
+% KWT
+country_car "<U004B><U0057><U0054>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -199,8 +208,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_LB b/localedata/locales/ar_LB
index cb0b7d7b0a..d6d53eb361 100644
--- a/localedata/locales/ar_LB
+++ b/localedata/locales/ar_LB
@@ -28,6 +28,7 @@ category "ar_LB:2000";LC_PAPER
category "ar_LB:2000";LC_NAME
category "ar_LB:2000";LC_ADDRESS
category "ar_LB:2000";LC_TELEPHONE
+category "ar_LB:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -201,7 +202,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U004C><U0042>"
country_ab3 "<U004C><U0042><U004E>"
country_num 422
-
+% RL
+country_car "<U0052><U004C>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -216,8 +225,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_LY b/localedata/locales/ar_LY
index 5ab5838dfc..e8da69476f 100644
--- a/localedata/locales/ar_LY
+++ b/localedata/locales/ar_LY
@@ -28,6 +28,7 @@ category "ar_LY:2000";LC_PAPER
category "ar_LY:2000";LC_NAME
category "ar_LY:2000";LC_ADDRESS
category "ar_LY:2000";LC_TELEPHONE
+category "ar_LY:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -184,7 +185,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U004C><U0059>"
country_ab3 "<U004C><U0042><U0059>"
country_num 434
-
+% LAR
+country_car "<U004C><U0041><U0052>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -199,8 +208,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_MA b/localedata/locales/ar_MA
index 744b8a64c1..95a20a4469 100644
--- a/localedata/locales/ar_MA
+++ b/localedata/locales/ar_MA
@@ -28,6 +28,7 @@ category "ar_MA:2000";LC_PAPER
category "ar_MA:2000";LC_NAME
category "ar_MA:2000";LC_ADDRESS
category "ar_MA:2000";LC_TELEPHONE
+category "ar_MA:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -184,7 +185,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U004D><U0041>"
country_ab3 "<U004D><U0041><U0052>"
country_num 504
-
+% MA
+country_car "<U004D><U0041>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -199,8 +208,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_OM b/localedata/locales/ar_OM
index b43475ef64..f530b4dbfd 100644
--- a/localedata/locales/ar_OM
+++ b/localedata/locales/ar_OM
@@ -28,6 +28,7 @@ category "ar_OM:2000";LC_PAPER
category "ar_OM:2000";LC_NAME
category "ar_OM:2000";LC_ADDRESS
category "ar_OM:2000";LC_TELEPHONE
+category "ar_OM:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -184,7 +185,13 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U004F><U004D>"
country_ab3 "<U004F><U004D><U004E>"
country_num 512
-
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -199,8 +206,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_QA b/localedata/locales/ar_QA
index 979325652f..a12f6c134b 100644
--- a/localedata/locales/ar_QA
+++ b/localedata/locales/ar_QA
@@ -28,6 +28,7 @@ category "ar_QA:2000";LC_PAPER
category "ar_QA:2000";LC_NAME
category "ar_QA:2000";LC_ADDRESS
category "ar_QA:2000";LC_TELEPHONE
+category "ar_QA:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -184,7 +185,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0051><U0041>"
country_ab3 "<U0051><U0041><U0054>"
country_num 634
-
+% Q
+country_car "<U0051>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -199,8 +208,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_SA b/localedata/locales/ar_SA
index e9a3aa4f5a..4046f283f2 100644
--- a/localedata/locales/ar_SA
+++ b/localedata/locales/ar_SA
@@ -32,6 +32,7 @@ category "ar_SA:2000";LC_PAPER
category "ar_SA:2000";LC_NAME
category "ar_SA:2000";LC_ADDRESS
category "ar_SA:2000";LC_TELEPHONE
+category "ar_SA:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -368,8 +369,8 @@ int_prefix "<U0039><U0036><U0036>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -386,4 +387,13 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0053><U0041>"
country_ab3 "<U0053><U0041><U0055>"
country_num 682
+% KSA
+country_car "<U004B><U0053><U0041>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/ar_SD b/localedata/locales/ar_SD
index c4a2f866e4..68a60b15b2 100644
--- a/localedata/locales/ar_SD
+++ b/localedata/locales/ar_SD
@@ -1,8 +1,21 @@
comment_char %
escape_char /
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
% Arabic language locale for Sudan.
% Contributed by Kentaroh Noji <knoji@jp.ibm.com> and
% Tetsuji Orita <orita@jp.ibm.com>.
+%
+% Modified by Chris Leonard, version 1.1 for South Sudan split
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_IDENTIFICATION
title "Arabic language locale for Sudan"
@@ -14,7 +27,7 @@ tel ""
fax ""
language "Arabic"
territory "Sudan"
-revision "1.0"
+revision "1.1"
date "2000-07-20"
%
category "ar_SD:2000";LC_IDENTIFICATION
@@ -28,6 +41,7 @@ category "ar_SD:2000";LC_PAPER
category "ar_SD:2000";LC_NAME
category "ar_SD:2000";LC_ADDRESS
category "ar_SD:2000";LC_TELEPHONE
+category "ar_SD:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -47,7 +61,8 @@ LC_MONETARY
% These are generated based on XML base Locale definition file
% for IBM Class for Unicode/Java
%
-int_curr_symbol "<U0053><U0044><U0044><U0020>"
+% SDG
+int_curr_symbol "<U0053><U0044><U0047><U0020>"
currency_symbol "<U062C><U002E><U0633><U002E>"
mon_decimal_point "<U002E>"
mon_thousands_sep "<U002C>"
@@ -181,10 +196,20 @@ LC_ADDRESS
% LC_ADDRESS
postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
<U0025><U0062><U0025><U0065><U0025><U0072>"
+% SD
country_ab2 "<U0053><U0044>"
+% SDN
country_ab3 "<U0053><U0044><U004E>"
-country_num 736
-
+country_num 729
+% SUD
+country_car "<U0053><U0055><U0044>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -199,8 +224,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_SS b/localedata/locales/ar_SS
new file mode 100644
index 0000000000..514360b9e0
--- /dev/null
+++ b/localedata/locales/ar_SS
@@ -0,0 +1,227 @@
+comment_char %
+escape_char /
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+% Arabic language locale for South Sudan.
+% Contributed by Kentaroh Noji <knoji@jp.ibm.com> and
+% Tetsuji Orita <orita@jp.ibm.com>.
+%
+% Modified by Chris Leonard, version 1.1 for South Sudan split
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_IDENTIFICATION
+title "Arabic language locale for South Sudan"
+source "IBM Globalization Center of Competency, Yamato Software Laboratory"
+address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
+contact ""
+email "bug-glibc-locales@gnu.org"
+tel ""
+fax ""
+language "Arabic"
+territory "South Sudan"
+revision "1.1"
+date "2000-07-20"
+%
+category "ar_SS:2000";LC_IDENTIFICATION
+category "ar_SS:2000";LC_CTYPE
+category "ar_SS:2000";LC_COLLATE
+category "ar_SS:2000";LC_TIME
+category "ar_SS:2000";LC_NUMERIC
+category "ar_SS:2000";LC_MONETARY
+category "ar_SS:2000";LC_MESSAGES
+category "ar_SS:2000";LC_PAPER
+category "ar_SS:2000";LC_NAME
+category "ar_SS:2000";LC_ADDRESS
+category "ar_SS:2000";LC_TELEPHONE
+category "ar_SS:2000";LC_MEASUREMENT
+
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "ar_EG"
+END LC_CTYPE
+
+LC_COLLATE
+
+% Copy the template from ISO/IEC 14651
+copy "iso14651_t1"
+
+END LC_COLLATE
+
+LC_MONETARY
+% This is the POSIX Locale definition the LC_MONETARY category.
+% These are generated based on XML base Locale definition file
+% for IBM Class for Unicode/Java
+%
+% SDG
+int_curr_symbol "<U0053><U0044><U0047><U0020>"
+currency_symbol "<U062C><U002E><U0633><U002E>"
+mon_decimal_point "<U002E>"
+mon_thousands_sep "<U002C>"
+mon_grouping 3
+positive_sign ""
+negative_sign "<U002D>"
+int_frac_digits 3
+frac_digits 3
+p_cs_precedes 1
+p_sep_by_space 1
+n_cs_precedes 1
+n_sep_by_space 1
+p_sign_posn 1
+n_sign_posn 2
+%
+END LC_MONETARY
+
+
+LC_NUMERIC
+% This is the POSIX Locale definition for the LC_NUMERIC category.
+%
+decimal_point "<U002E>"
+thousands_sep "<U002C>"
+grouping 3
+%
+END LC_NUMERIC
+
+
+LC_TIME
+% This is the POSIX Locale definition for the LC_TIME category.
+% These are generated based on XML base Locale definition file
+% for IBM Class for Unicode/Java
+%
+% Abbreviated weekday names (%a)
+abday "<U062D>";"<U0646>";/
+ "<U062B>";"<U0631>";/
+ "<U062E>";"<U062C>";/
+ "<U0633>"
+%
+% Full weekday names (%A)
+day "<U0627><U0644><U0623><U062D><U062F>";/
+ "<U0627><U0644><U0627><U062B><U0646><U064A><U0646>";/
+ "<U0627><U0644><U062B><U0644><U0627><U062B><U0627><U0621>";/
+ "<U0627><U0644><U0623><U0631><U0628><U0639><U0627><U0621>";/
+ "<U0627><U0644><U062E><U0645><U064A><U0633>";/
+ "<U0627><U0644><U062C><U0645><U0639><U0629>";/
+ "<U0627><U0644><U0633><U0628><U062A>"
+%
+% Abbreviated month names (%b)
+abmon "<U064A><U0646><U0627>";"<U0641><U0628><U0631>";/
+ "<U0645><U0627><U0631>";"<U0623><U0628><U0631>";/
+ "<U0645><U0627><U064A>";"<U064A><U0648><U0646>";/
+ "<U064A><U0648><U0644>";"<U0623><U063A><U0633>";/
+ "<U0633><U0628><U062A>";"<U0623><U0643><U062A>";/
+ "<U0646><U0648><U0641>";"<U062F><U064A><U0633>"
+%
+% Full month names (%B)
+mon "<U064A><U0646><U0627><U064A><U0631>";/
+ "<U0641><U0628><U0631><U0627><U064A><U0631>";/
+ "<U0645><U0627><U0631><U0633>";/
+ "<U0623><U0628><U0631><U064A><U0644>";/
+ "<U0645><U0627><U064A><U0648>";/
+ "<U064A><U0648><U0646><U064A><U0648>";/
+ "<U064A><U0648><U0644><U064A><U0648>";/
+ "<U0623><U063A><U0633><U0637><U0633>";/
+ "<U0633><U0628><U062A><U0645><U0628><U0631>";/
+ "<U0623><U0643><U062A><U0648><U0628><U0631>";/
+ "<U0646><U0648><U0641><U0645><U0628><U0631>";/
+ "<U062F><U064A><U0633><U0645><U0628><U0631>"
+%
+% Equivalent of AM PM
+am_pm "<U0635>";"<U0645>"
+%
+% Appropriate date and time representation
+% %d %b, %Y%Z %I:%M:%S
+d_t_fmt "<U0025><U0064><U0020><U0025><U0062><U002C><U0020><U0025>/
+<U0059><U0020><U0025><U005A><U0020><U0025><U0049><U003A><U0025><U004D>/
+<U003A><U0025><U0053><U0020><U0025><U0070>"
+%
+% Appropriate date representation
+% %d %b, %Y
+d_fmt "<U0025><U0064><U0020><U0025><U0062><U002C><U0020><U0025><U0059>"
+%
+% Appropriate time representation
+% %Z %I:%M:%S
+t_fmt "<U0025><U005A><U0020><U0025><U0049><U003A><U0025><U004D>/
+<U003A><U0025><U0053><U0020>"
+%
+% Appropriate 12 h time representation (%r)
+t_fmt_ampm "<U0025><U005A><U0020><U0025><U0049><U003A><U0025><U004D>/
+<U003A><U0025><U0053><U0020><U0025><U0070>"
+%
+% Appropriate date representation (date(1)) "%a %b %e %H:%M:%S %Z %Y"
+date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
+<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
+<U0025><U005A><U0020><U0025><U0059>"
+END LC_TIME
+
+
+LC_MESSAGES
+copy "ar_EG"
+END LC_MESSAGES
+
+
+LC_PAPER
+% This is the ISO_IEC TR14652 Locale definition for the
+% LC_PAPER category
+height 297
+width 210
+
+END LC_PAPER
+
+
+LC_NAME
+% This is the ISO_IEC TR14652 Locale definition for the
+% LC_NAME category.
+%
+name_fmt "<U0025><U0070><U0025><U0074><U0025><U0066><U0025><U0074>/
+<U0025><U0067>"
+name_gen "<U002D><U0073><U0061><U006E>"
+name_mr "<U004D><U0072><U002E>"
+name_mrs "<U004D><U0072><U0073><U002E>"
+name_miss "<U004D><U0069><U0073><U0073><U002E>"
+name_ms "<U004D><U0073><U002E>"
+
+END LC_NAME
+
+
+LC_ADDRESS
+% This is the ISO_IEC TR14652 Locale definition for the
+% LC_ADDRESS
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+% SS
+country_ab2 "<U0053><U0053>"
+% SSD
+country_ab3 "<U0053><U0053><U0044>"
+country_num 728
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
+END LC_ADDRESS
+
+
+LC_TELEPHONE
+% This is the ISO_IEC TR14652 Locale definition for the
+%
+tel_int_fmt "<U002B><U0025><U0063><U0020><U003B><U0025><U0061><U0020>/
+<U003B><U0025><U006C>"
+int_prefix "<U0032><U0034><U0039>"
+
+END LC_TELEPHONE
+
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
diff --git a/localedata/locales/ar_SY b/localedata/locales/ar_SY
index 8bc02e469d..a8aef8caf4 100644
--- a/localedata/locales/ar_SY
+++ b/localedata/locales/ar_SY
@@ -28,6 +28,7 @@ category "ar_SY:2000";LC_PAPER
category "ar_SY:2000";LC_NAME
category "ar_SY:2000";LC_ADDRESS
category "ar_SY:2000";LC_TELEPHONE
+category "ar_SY:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -201,7 +202,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0053><U0059>"
country_ab3 "<U0053><U0059><U0052>"
country_num 760
-
+% SYR
+country_car "<U0053><U0059><U0052>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -216,8 +225,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_TN b/localedata/locales/ar_TN
index f2ffc4e2a2..00c59e581e 100644
--- a/localedata/locales/ar_TN
+++ b/localedata/locales/ar_TN
@@ -28,6 +28,7 @@ category "ar_TN:2000";LC_PAPER
category "ar_TN:2000";LC_NAME
category "ar_TN:2000";LC_ADDRESS
category "ar_TN:2000";LC_TELEPHONE
+category "ar_TN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -184,7 +185,15 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0054><U004E>"
country_ab3 "<U0054><U0055><U004E>"
country_num 788
-
+% TN
+country_car "<U0054><U004E>"
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -199,8 +208,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ar_YE b/localedata/locales/ar_YE
index 91da9e92b9..4665a2a356 100644
--- a/localedata/locales/ar_YE
+++ b/localedata/locales/ar_YE
@@ -28,6 +28,7 @@ category "ar_YE:2000";LC_PAPER
category "ar_YE:2000";LC_NAME
category "ar_YE:2000";LC_ADDRESS
category "ar_YE:2000";LC_TELEPHONE
+category "ar_YE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -184,7 +185,13 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0059><U0045>"
country_ab3 "<U0059><U0045><U004D>"
country_num 887
-
+lang_name "<U0627><U0644><U0639><U0631><U0628><U064A><U0629>"
+% ar
+lang_ab "<U0061><U0072>"
+% ara
+lang_term "<U0061><U0072><U0061>"
+% ara
+lang_lib "<U0061><U0072><U0061>"
END LC_ADDRESS
@@ -199,8 +206,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/as_IN b/localedata/locales/as_IN
index 47164ebaee..19f528216e 100644
--- a/localedata/locales/as_IN
+++ b/localedata/locales/as_IN
@@ -28,6 +28,7 @@ category "as_IN:2000";LC_PAPER
category "as_IN:2000";LC_NAME
category "as_IN:2000";LC_ADDRESS
category "as_IN:2000";LC_TELEPHONE
+category "as_IN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
%%%%%%%%%%%%%
@@ -157,6 +158,16 @@ LC_ADDRESS
% LC_ADDRESS
postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
<U0025><U0062><U0025><U0065><U0025><U0072>"
+% IND
+country_car "<U0049><U004E><U0044>"
+% অসমীয়া
+lang_name "<U0985><U09B8><U09AE><U09C0><U09AF><U09BC><U09BE>"
+% as
+lang_ab "<U0061><U0073>"
+% asm
+lang_term "<U0061><U0073><U006D>"
+% asm
+lang_lib "<U0061><U0073><U006D>"
END LC_ADDRESS
%%%%%%%%%%%%%
@@ -169,5 +180,6 @@ END LC_TELEPHONE
%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ast_ES b/localedata/locales/ast_ES
index 2817c1accc..ade1b6a35d 100644
--- a/localedata/locales/ast_ES
+++ b/localedata/locales/ast_ES
@@ -41,6 +41,7 @@ category "ast_ES:2000";LC_PAPER
category "ast_ES:2000";LC_NAME
category "ast_ES:2000";LC_ADDRESS
category "ast_ES:2000";LC_TELEPHONE
+category "ast_ES:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -122,7 +123,8 @@ copy "es_ES"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "es_ES"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -130,5 +132,20 @@ copy "es_ES"
END LC_NAME
LC_ADDRESS
-copy "es_ES"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0045><U0053>"
+country_ab3 "<U0045><U0053><U0050>"
+country_num 724
+% E
+country_car "<U0045>"
+% asturianu
+lang_name "<U0061><U0073><U0074><U0075><U0072><U0069><U0061><U006E><U0075>"
+% ast
+lang_term "<U0061><U0073><U0074>"
+% ast
+lang_lib "<U0061><U0073><U0074>"
END LC_ADDRESS
diff --git a/localedata/locales/ayc_PE b/localedata/locales/ayc_PE
index edf8a145d8..9ec91dfaca 100644
--- a/localedata/locales/ayc_PE
+++ b/localedata/locales/ayc_PE
@@ -1,27 +1,11 @@
comment_char %
escape_char /
-% Charset: UTF-8
-% WARNING: This file has been autogenerated by the Locale Helper application
-% Check it carefully before using it in production.
-LC_IDENTIFICATION
-title "Aymara (ayc) locale for Peru"
-source "runasimipi.org"
-address ""
-contact ""
-email "libc-alpha@sourceware.org"
-tel ""
-fax ""
-language "Aymara"
-territory "Peru"
-revision "1.0"
-date "2011-11-13"
-%
-%
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Aymara, Southern (ayc) language locale for Peru
%
-% Charset: ISO-8859-1
+% Charset: UTF-8
%
% Aymara terms provided by Edgar Quispe Chambi <equispe7@gmail.com> and
% Amos Batto <amosbatto@yahoo.com>
@@ -39,11 +23,29 @@ date "2011-11-13"
% con los códigos ISO-639 disponibles en la actualidad y su disposición a trabajar con
% todos los interesados ​​en mejorar la representación de todas las lenguas andinas.
%
+% build with: localedef -f UTF-8 -i ayc_PE ayc_PE
%
-% build with: localedef -f ISO-8859-1 -i ayc_PE ayc_PE
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
+
+LC_IDENTIFICATION
+title "Aymara (ayc) locale for Peru"
+source "runasimipi.org"
+address ""
+contact ""
+email "libc-alpha@sourceware.org"
+tel ""
+fax ""
+language "Aymara"
+territory "Peru"
+revision "1.1"
+date "2011-11-13"
%
category "ayc_PE:2011";LC_IDENTIFICATION
category "ayc_PE:2011";LC_CTYPE
@@ -152,6 +154,9 @@ t_fmt_ampm "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U
date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
<U0025><U005A><U0020><U0025><U0059>"
+week 7;19971130;7
+first_weekday 1
+first_workday 2
END LC_TIME
LC_NUMERIC
@@ -167,6 +172,7 @@ copy "es_PE"
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -185,8 +191,26 @@ LC_NAME
copy "es_PE"
END LC_NAME
+% TO DO - adjust for Aymara specific lang-info for Peru
LC_ADDRESS
-copy "es_PE"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0050><U0045>"
+country_ab3 "<U0050><U0045><U0052>"
+country_num 604
+% PE
+country_car "<U0050><U0045>"
+% Aymar aru
+lang_name "<U0041><U0079><U006D><U0061><U0072><U0020><U0061><U0072><U0075>"
+% ay
+lang_ab "<U0061><U0079>"
+% ayc
+lang_term "<U0061><U0079><U0063>"
+% ayc
+lang_lib "<U0061><U0079><U0063>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/az_AZ b/localedata/locales/az_AZ
index 24e3779343..8a99088fbc 100644
--- a/localedata/locales/az_AZ
+++ b/localedata/locales/az_AZ
@@ -207,7 +207,8 @@ noexpr "<U005E><U005B><U0059><U0079><U004E><U006E><U005D><U002E><U002A>"
END LC_MESSAGES
LC_MONETARY
-int_curr_symbol "<U0041><U005A><U004D><U0020>"
+% AZN
+int_curr_symbol "<U0041><U005A><U004E><U0020>"
currency_symbol "<U006D><U0061><U006E><U002E>"
mon_decimal_point "<U002E>"
mon_thousands_sep "<U0020>"
@@ -282,6 +283,7 @@ width 210
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -291,6 +293,17 @@ postal_fmt "???"
country_ab2 "<U0041><U005A>"
country_ab3 "<U0041><U005A><U0045>"
country_num 031
+% AZ
+country_car "<U0041><U005A>"
+% Azərbaycanca
+lang_name "<U0041><U007A><U0259><U0072><U0062><U0061><U0079><U0063><U0061><U006E><U0063><U0061>"
+
+% az
+lang_ab "<U0061><U007A>"
+% aze
+lang_term "<U0061><U007A><U0065>"
+% aze
+lang_lib "<U0061><U007A><U0065>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/be_BY b/localedata/locales/be_BY
index 111b3b12b1..2dfd2b2931 100644
--- a/localedata/locales/be_BY
+++ b/localedata/locales/be_BY
@@ -39,7 +39,7 @@ category "be_BY:2000";LC_PAPER
category "be_BY:2000";LC_NAME
category "be_BY:2000";LC_ADDRESS
category "be_BY:2000";LC_TELEPHONE
-
+category "be_BY:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -162,8 +162,8 @@ int_select "<U0038><U007E><U0031><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -180,4 +180,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0042><U0059>"
country_ab3 "<U0042><U004C><U0052>"
country_num 112
+% BY
+country_car "<U0042><U0059>"
+% беларуÑÐºÐ°Ñ Ð¼Ð¾Ð²Ð°
+lang_name "<U0431><U0435><U043B><U0430><U0440><U0443><U0441><U043A><U0430><U044F><U0020><U043C><U043E><U0432><U0430>"
+% be
+lang_ab "<U0062><U0065>"
+% bel
+lang_term "<U0062><U0065><U006C>"
+% bel
+lang_lib "<U0062><U0065><U006C>"
END LC_ADDRESS
diff --git a/localedata/locales/be_BY@latin b/localedata/locales/be_BY@latin
index 6dbbfada8d..eecdc9ca12 100644
--- a/localedata/locales/be_BY@latin
+++ b/localedata/locales/be_BY@latin
@@ -39,6 +39,7 @@ category "be_BY@latin:2000";LC_PAPER
category "be_BY@latin:2000";LC_NAME
category "be_BY@latin:2000";LC_ADDRESS
category "be_BY@latin:2000";LC_TELEPHONE
+category "be_BY@latin:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -135,7 +136,24 @@ copy "be_BY"
END LC_NAME
LC_ADDRESS
-copy "be_BY"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0042><U0059>"
+country_ab3 "<U0042><U004C><U0052>"
+country_num 112
+% BY
+country_car "<U0042><U0059>"
+% byelaruskaya mova
+lang_name "<U0062><U0079><U0065><U006C><U0061><U0072><U0075><U0073><U006B><U0061><U0079><U0061><U0020><U006D><U006F><U0076><U0061>"
+% be
+lang_ab "<U0062><U0065>"
+% bel
+lang_term "<U0062><U0065><U006C>"
+% bel
+lang_lib "<U0062><U0065><U006C>"
END LC_ADDRESS
LC_TELEPHONE
@@ -143,5 +161,6 @@ copy "be_BY"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "be_BY"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/bem_ZM b/localedata/locales/bem_ZM
index edb5cf3bbc..9ce6c42616 100644
--- a/localedata/locales/bem_ZM
+++ b/localedata/locales/bem_ZM
@@ -140,7 +140,8 @@ width 210
END LC_PAPER
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MESSAGES
@@ -179,8 +180,13 @@ country_ab2 "<U005A><U004D>"
% ZMB
country_ab3 "<U005A><U004D><U0042>"
country_num 894
+% Z
+country_car "<U005A>"
lang_name "<U0069><U0063><U0069><U0042><U0065><U006D><U0062><U0061>"
-lang_term "<U0062><U0065><U006D>"
+% bem
+lang_term "<U0062><U0065><U006D>"
+% bem
+lang_lib "<U0062><U0065><U006D>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/ber_DZ b/localedata/locales/ber_DZ
index be334c5bf6..2f03f9bfac 100644
--- a/localedata/locales/ber_DZ
+++ b/localedata/locales/ber_DZ
@@ -259,6 +259,7 @@ width 210
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -289,8 +290,10 @@ country_ab2 "<U0044><U005A>"
country_ab3 "<U0044><U005A><U0041>"
country_num 12
%country_isbn ""
-%country_car ""
-lang_name "<U0074><U0061><U006D><U0061><U007A><U0069><U0067><U0068><U0074>"
+% DZ
+country_car "<U0044><U005A>"
+% ⵜⴰⵎⴰⵣⵉⵖⵜ
+lang_name "<U2D5C><U2D30><U2D4E><U2D30><U2D49><U2D56><U2D5C>"
%lang_ab
lang_term "<U0062><U0065><U0072>"
lang_lib "<U0062><U0065><U0072>"
diff --git a/localedata/locales/ber_MA b/localedata/locales/ber_MA
index 1333b8c66d..516bfe5f62 100644
--- a/localedata/locales/ber_MA
+++ b/localedata/locales/ber_MA
@@ -179,6 +179,7 @@ width 210
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -209,7 +210,9 @@ country_ab2 "<U004D><U0041>"
country_ab3 "<U004D><U0041><U0052>"
country_num 504
%country_isbn ""
-%country_car ""
+% MA
+country_car "<U004D><U0041>"
+% ⵜⴰⵎⴰⵣⵉⵖⵜ
lang_name "<U2D5C><U2D30><U2D4E><U2D30><U2D49><U2D56><U2D5C>"
% lang_ab
lang_term "<U0062><U0065><U0072>"
diff --git a/localedata/locales/bg_BG b/localedata/locales/bg_BG
index 14e8fb97aa..74e5ad4c29 100644
--- a/localedata/locales/bg_BG
+++ b/localedata/locales/bg_BG
@@ -37,6 +37,7 @@ category "bg_BG:2000";LC_PAPER
category "bg_BG:2000";LC_NAME
category "bg_BG:2000";LC_ADDRESS
category "bg_BG:2000";LC_TELEPHONE
+category "bg_BG:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -266,9 +267,11 @@ country_ab3 "<U0042><U0047><U0052>"
country_num 100
country_car "<U0042><U0047>"
country_isbn 954
-lang_name "<U0042><U0075><U006C><U0067><U0061><U0072><U0069><U0061><U006E>"
+% българÑки език
+lang_name "<U0431><U044A><U043B><U0433><U0430><U0440><U0441><U043A><U0438><U0020><U0435><U0437><U0438><U043A>"
lang_ab "<U0062><U0067>"
lang_term "<U0062><U0075><U006C>"
+lang_lib "<U0062><U0075><U006C>"
END LC_ADDRESS
LC_TELEPHONE
@@ -279,5 +282,6 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/bho_IN b/localedata/locales/bho_IN
index b5c926e1a5..3e08684b12 100644
--- a/localedata/locales/bho_IN
+++ b/localedata/locales/bho_IN
@@ -29,7 +29,7 @@ category "bho_IN:2011";LC_PAPER
category "bho_IN:2011";LC_NAME
category "bho_IN:2011";LC_ADDRESS
category "bho_IN:2011";LC_TELEPHONE
-
+category "bho_IN:2011";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -150,7 +150,19 @@ END LC_NAME
LC_ADDRESS
-copy "hi_IN"
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% भोजपà¥à¤°à¥€
+lang_name "<U092D><U094B><U091C><U092A><U0941><U0930><U0940>"
+% bho
+lang_term "<U0062><U0068><U006F>"
+% bho
+lang_lib "<U0062><U0068><U006F>"
END LC_ADDRESS
@@ -160,5 +172,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/bn_BD b/localedata/locales/bn_BD
index 9dbc405782..ae6ce75cc5 100644
--- a/localedata/locales/bn_BD
+++ b/localedata/locales/bn_BD
@@ -144,8 +144,8 @@ yesstr "<U09B9><U09CD><U09AF><U09BE><U0981>"
nostr "<U09A8><U09BE>"
END LC_MESSAGES
-% Metric Measurement system (ISO 1000)
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -180,13 +180,20 @@ postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E><U0025>
country_name "<U09AC><U09BE><U0982><U09B2><U09BE><U09A6><U09C7><U09B6>"
country_ab2 "<U0042><U0044>"
country_ab3 "<U0042><U0047><U0044>"
-lang_ab "<U0062><U006E>"
+% bn
+lang_ab "<U0062><U006E>"
+% ben
+lang_term "<U0062><U0065><U006E>"
+% ben
+lang_lib "<U0062><U0065><U006E>"
%lang_ab3_term "ben"
-lang_name "<U09ac><U09be><U0982><U09b2><U09be>"
+% বাংলা
+lang_name "<U09AC><U09BE><U0982><U09B2><U09BE>"
% todo
%country_post ""
country_num 050
-%country_car ""
+% BD
+country_car "<U0042><U0044>"
%country_isbn ""
%lang_term ""
%lang_lib ""
diff --git a/localedata/locales/bn_IN b/localedata/locales/bn_IN
index 6cecf294e5..8023c19d08 100644
--- a/localedata/locales/bn_IN
+++ b/localedata/locales/bn_IN
@@ -29,7 +29,7 @@ category "bn_IN:2000";LC_PAPER
category "bn_IN:2000";LC_NAME
category "bn_IN:2000";LC_ADDRESS
category "bn_IN:2000";LC_TELEPHONE
-
+category "bn_IN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -181,7 +181,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
-
+% IND
+country_car "<U0049><U004E><U0044>"
+% বাংলা
+lang_name "<U09AC><U09BE><U0982><U09B2><U09BE>"
+% bn
+lang_ab "<U0062><U006E>"
+% ben
+lang_term "<U0062><U0065><U006E>"
+% ben
+lang_lib "<U0062><U0065><U006E>"
END LC_ADDRESS
@@ -191,5 +200,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/bo_CN b/localedata/locales/bo_CN
index aa8ff07715..d813c103ae 100644
--- a/localedata/locales/bo_CN
+++ b/localedata/locales/bo_CN
@@ -28,7 +28,7 @@ category "bo_CN:2007";LC_PAPER
category "bo_CN:2007";LC_NAME
category "bo_CN:2007";LC_ADDRESS
category "bo_CN:2007";LC_TELEPHONE
-
+category "bo_CN:2007";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -139,7 +139,8 @@ copy "zh_CN"
END LC_PAPER
LC_MEASUREMENT
-copy "zh_CN"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -164,9 +165,11 @@ country_ab3 "<U0043><U0048><U004E>"
country_num 156
%country_car "FIXME"
country_isbn "<U0037>"
-
lang_name "<U0F54><U0F7C><U0F51><U0F0B><U0F66><U0F90><U0F51><U0F0B>"
+% bo
lang_ab "<U0062><U006F>"
+% bod
lang_term "<U0062><U006F><U0064>"
+% tib
lang_lib "<U0074><U0069><U0062>"
END LC_ADDRESS
diff --git a/localedata/locales/bo_IN b/localedata/locales/bo_IN
index 9e9c4ff4f5..8ab793c833 100644
--- a/localedata/locales/bo_IN
+++ b/localedata/locales/bo_IN
@@ -28,7 +28,7 @@ category "bo_IN:2007";LC_PAPER
category "bo_IN:2007";LC_NAME
category "bo_IN:2007";LC_ADDRESS
category "bo_IN:2007";LC_TELEPHONE
-
+category "bo_IN:2007";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -65,7 +65,8 @@ copy "hi_IN"
END LC_PAPER
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -87,8 +88,13 @@ country_name "<U0F62><U0F92><U0FB1><U0F0B><U0F42><U0F62>"
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
lang_name "<U0F54><U0F7C><U0F51><U0F0B><U0F66><U0F90><U0F51><U0F0B>"
+% bo
lang_ab "<U0062><U006F>"
+% bod
lang_term "<U0062><U006F><U0064>"
+% tib
lang_lib "<U0074><U0069><U0062>"
END LC_ADDRESS
diff --git a/localedata/locales/br_FR b/localedata/locales/br_FR
index 3f477fbb04..85f8d3c97d 100644
--- a/localedata/locales/br_FR
+++ b/localedata/locales/br_FR
@@ -150,6 +150,7 @@ copy "fr_FR"
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -160,7 +161,24 @@ END LC_NAME
LC_ADDRESS
% FIXME
-copy "fr_FR"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0046><U0052>"
+country_ab3 "<U0046><U0052><U0041>"
+country_num 250
+% F
+country_car "<U0046>"
+% Brezhoneg
+lang_name "<U0042><U0072><U0065><U007A><U0068><U006F><U006E><U0065><U0067>"
+% br
+lang_ab "<U0062><U0072>"
+% bre
+lang_term "<U0062><U0072><U0065>"
+% bre
+lang_lib "<U0062><U0072><U0065>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/br_FR@euro b/localedata/locales/br_FR@euro
index a28fcf61d2..db20b80e83 100644
--- a/localedata/locales/br_FR@euro
+++ b/localedata/locales/br_FR@euro
@@ -34,7 +34,7 @@ category "br_FR@euro:2000";LC_PAPER
category "br_FR@euro:2000";LC_NAME
category "br_FR@euro:2000";LC_ADDRESS
category "br_FR@euro:2000";LC_TELEPHONE
-
+category "br_FR@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -71,7 +71,8 @@ copy "br_FR"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "br_FR"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/brx_IN b/localedata/locales/brx_IN
index 0277a8e0a4..98b7f44a60 100644
--- a/localedata/locales/brx_IN
+++ b/localedata/locales/brx_IN
@@ -28,7 +28,7 @@ category "brx_IN:2011";LC_PAPER
category "brx_IN:2011";LC_NAME
category "brx_IN:2011";LC_ADDRESS
category "brx_IN:2011";LC_TELEPHONE
-
+category "brx_IN:2011";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -171,7 +171,18 @@ END LC_NAME
LC_ADDRESS
-copy "hi_IN"
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% brx
+lang_term "<U0062><U0072><U0078>"
+% brx
+lang_lib "<U0062><U0072><U0078>"
END LC_ADDRESS
@@ -181,5 +192,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/bs_BA b/localedata/locales/bs_BA
index fa5877e8b2..fa574a15e7 100644
--- a/localedata/locales/bs_BA
+++ b/localedata/locales/bs_BA
@@ -216,6 +216,7 @@ width 210
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -234,6 +235,16 @@ postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
country_ab2 "<U0042><U0041>"
country_ab3 "<U0042><U0049><U0048>"
country_num 070
+% BIH
+country_car "<U0042><U0049><U0048>"
+% bosanski
+lang_name "<U0062><U006F><U0073><U0061><U006E><U0073><U006B><U0069>"
+% bs
+lang_ab "<U0062><U0073>"
+% bos
+lang_term "<U0062><U006F><U0073>"
+% bos
+lang_lib "<U0062><U006F><U0073>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/byn_ER b/localedata/locales/byn_ER
index 0440fbdc83..299a36ab8b 100644
--- a/localedata/locales/byn_ER
+++ b/localedata/locales/byn_ER
@@ -68,7 +68,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ER"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
@@ -120,7 +121,8 @@ country_post "<U0045><U0052><U0049>"
country_ab2 "<U0045><U0052>"
country_ab3 "<U0045><U0052><U0049>"
country_num 232
-% country_car unknown
+% ER
+country_car "<U0045><U0052>"
% country_isbn unknown, Need ISO 2108
lang_name "<U1265><U120A><U1295>"
lang_ab ""
diff --git a/localedata/locales/ca_AD b/localedata/locales/ca_AD
index a1eebbb02d..a2bd3ee485 100644
--- a/localedata/locales/ca_AD
+++ b/localedata/locales/ca_AD
@@ -37,7 +37,7 @@ category "ca_AD:2000";LC_PAPER
category "ca_AD:2000";LC_NAME
category "ca_AD:2000";LC_ADDRESS
category "ca_AD:2000";LC_TELEPHONE
-
+category "ca_AD:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -75,7 +75,8 @@ int_prefix "<U0033><U0037><U0036>"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "ca_ES"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -91,4 +92,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0041><U0044>"
country_ab3 "<U0041><U004E><U0044>"
country_num 20
+% AND
+country_car "<U0041><U004E><U0044>"
+% català
+lang_name "<U0063><U0061><U0074><U0061><U006C><U00E0>"
+% ca
+lang_ab "<U0063><U0061>"
+% cat
+lang_term "<U0063><U0061><U0074>"
+% cat
+lang_lib "<U0063><U0061><U0074>"
END LC_ADDRESS
diff --git a/localedata/locales/ca_ES b/localedata/locales/ca_ES
index 35c1936678..c5dc9faa60 100644
--- a/localedata/locales/ca_ES
+++ b/localedata/locales/ca_ES
@@ -42,7 +42,7 @@ category "ca_ES:2000";LC_PAPER
category "ca_ES:2000";LC_NAME
category "ca_ES:2000";LC_ADDRESS
category "ca_ES:2000";LC_TELEPHONE
-
+category "ca_ES:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -156,8 +156,8 @@ int_prefix "<U0033><U0034>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -174,4 +174,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0045><U0053>"
country_ab3 "<U0045><U0053><U0050>"
country_num 724
+% E
+country_car "<U0045>"
+% català
+lang_name "<U0063><U0061><U0074><U0061><U006C><U00E0>"
+% ca
+lang_ab "<U0063><U0061>"
+% cat
+lang_term "<U0063><U0061><U0074>"
+% cat
+lang_lib "<U0063><U0061><U0074>"
END LC_ADDRESS
diff --git a/localedata/locales/ca_ES@euro b/localedata/locales/ca_ES@euro
index b3e6ecb676..ecccc23f22 100644
--- a/localedata/locales/ca_ES@euro
+++ b/localedata/locales/ca_ES@euro
@@ -37,7 +37,7 @@ category "ca_ES@euro:2000";LC_PAPER
category "ca_ES@euro:2000";LC_NAME
category "ca_ES@euro:2000";LC_ADDRESS
category "ca_ES@euro:2000";LC_TELEPHONE
-
+category "ca_ES@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -73,7 +73,8 @@ copy "ca_ES"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "ca_ES"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/ca_FR b/localedata/locales/ca_FR
index bbaee96fa0..7d9b8a8e26 100644
--- a/localedata/locales/ca_FR
+++ b/localedata/locales/ca_FR
@@ -37,7 +37,7 @@ category "ca_FR:2000";LC_PAPER
category "ca_FR:2000";LC_NAME
category "ca_FR:2000";LC_ADDRESS
category "ca_FR:2000";LC_TELEPHONE
-
+category "ca_FR:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -73,7 +73,8 @@ copy "fr_FR"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "fr_FR"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -81,5 +82,22 @@ copy "ca_ES"
END LC_NAME
LC_ADDRESS
-copy "fr_FR"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0046><U0052>"
+country_ab3 "<U0046><U0052><U0041>"
+country_num 250
+% F
+country_car "<U0046>"
+% català
+lang_name "<U0063><U0061><U0074><U0061><U006C><U00E0>"
+% ca
+lang_ab "<U0063><U0061>"
+% cat
+lang_term "<U0063><U0061><U0074>"
+% cat
+lang_lib "<U0063><U0061><U0074>"
END LC_ADDRESS
diff --git a/localedata/locales/ca_IT b/localedata/locales/ca_IT
index d257f8229a..0ddb05ce71 100644
--- a/localedata/locales/ca_IT
+++ b/localedata/locales/ca_IT
@@ -37,7 +37,7 @@ category "ca_IT:2000";LC_PAPER
category "ca_IT:2000";LC_NAME
category "ca_IT:2000";LC_ADDRESS
category "ca_IT:2000";LC_TELEPHONE
-
+category "ca_IT:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -73,7 +73,8 @@ copy "it_IT"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "it_IT"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -81,5 +82,22 @@ copy "ca_ES"
END LC_NAME
LC_ADDRESS
-copy "it_IT"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0049><U0054>"
+country_ab3 "<U0049><U0054><U0041>"
+country_num 380
+% I
+country_car "<U0049>"
+% català
+lang_name "<U0063><U0061><U0074><U0061><U006C><U00E0>"
+% ca
+lang_ab "<U0063><U0061>"
+% cat
+lang_term "<U0063><U0061><U0074>"
+% cat
+lang_lib "<U0063><U0061><U0074>"
END LC_ADDRESS
diff --git a/localedata/locales/cmn_TW b/localedata/locales/cmn_TW
new file mode 100644
index 0000000000..a332659c1e
--- /dev/null
+++ b/localedata/locales/cmn_TW
@@ -0,0 +1,221 @@
+comment_char %
+escape_char /
+% Charset: UTF-8
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Mandarin Chinese locale for the Republic of China
+%
+% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
+%
+% build with: localedef -f UTF-8 -i cmn_TW cmn_TW
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_IDENTIFICATION
+title "Mandarin Chinese locale for the Republic of China"
+source ""
+address ""
+contact ""
+email "bug-glibc-locales@gnu.org"
+tel ""
+fax ""
+language "Mandarin Chinese"
+territory "Republic of China"
+revision "0.1"
+date "2013-06-02"
+%
+category "cmn_TW:2000";LC_IDENTIFICATION
+category "cmn_TW:2000";LC_CTYPE
+category "cmn_TW:2000";LC_COLLATE
+category "cmn_TW:2000";LC_TIME
+category "cmn_TW:2000";LC_NUMERIC
+category "cmn_TW:2000";LC_MONETARY
+category "cmn_TW:2000";LC_PAPER
+category "cmn_TW:2000";LC_MEASUREMENT
+category "cmn_TW:2000";LC_MESSAGES
+category "cmn_TW:2000";LC_NAME
+category "cmn_TW:2000";LC_ADDRESS
+category "cmn_TW:2000";LC_TELEPHONE
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "i18n"
+class "hanzi"; /
+<U3007>;/
+<U3400>..<U4DBF>;/
+<U4E00>..<U9FA5>;/
+<UF900>..<UFA6A>;/
+<U00020000>..<U0002A6D6>;/
+<U0002F800>..<U0002FA1D>
+END LC_CTYPE
+
+LC_COLLATE
+copy "iso14651_t1"
+END LC_COLLATE
+
+LC_TIME
+% 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, ä¹æœˆ, å月, å一月, å二月
+mon "<U4E00><U6708>";/
+ "<U4E8C><U6708>";/
+ "<U4E09><U6708>";/
+ "<U56DB><U6708>";/
+ "<U4E94><U6708>";/
+ "<U516D><U6708>";/
+ "<U4E03><U6708>";/
+ "<U516B><U6708>";/
+ "<U4E5D><U6708>";/
+ "<U5341><U6708>";/
+ "<U5341><U4E00><U6708>";/
+ "<U5341><U4E8C><U6708>"
+% 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月
+abmon "<U0020><U0031><U6708>";/
+ "<U0020><U0032><U6708>";/
+ "<U0020><U0033><U6708>";/
+ "<U0020><U0034><U6708>";/
+ "<U0020><U0035><U6708>";/
+ "<U0020><U0036><U6708>";/
+ "<U0020><U0037><U6708>";/
+ "<U0020><U0038><U6708>";/
+ "<U0020><U0039><U6708>";/
+ "<U0031><U0030><U6708>";/
+ "<U0031><U0031><U6708>";/
+ "<U0031><U0032><U6708>"
+% 星期日, 星期一, 星期二, 星期三, 星期四, 星期五, 星期六
+day "<U661F><U671F><U65E5>";/
+ "<U661F><U671F><U4E00>";/
+ "<U661F><U671F><U4E8C>";/
+ "<U661F><U671F><U4E09>";/
+ "<U661F><U671F><U56DB>";/
+ "<U661F><U671F><U4E94>";/
+ "<U661F><U671F><U516D>"
+% 日, 一, 二, 三, 四, 五, 六
+abday "<U65E5>";/
+ "<U4E00>";/
+ "<U4E8C>";/
+ "<U4E09>";/
+ "<U56DB>";/
+ "<U4E94>";/
+ "<U516D>"
+% %Y年%m月%d日 (%A) %H點%M分%S秒
+d_t_fmt "<U0025><U0059><U5E74><U0025><U006D><U6708><U0025><U0064><U65E5><U0020><U0028><U0025><U0041><U0029><U0020><U0025><U0048><U9EDE><U0025><U004D><U5206><U0025><U0053><U79D2>"
+% %Y年%m月%d日
+d_fmt "<U0025><U0059><U5E74><U0025><U006D><U6708><U0025><U0064><U65E5>"
+% %H點%M分%S秒
+t_fmt "<U0025><U0048><U9EDE><U0025><U004D><U5206><U0025><U0053><U79D2>"
+% 上åˆ, 下åˆ
+am_pm "<U4E0A><U5348>";/
+ "<U4E0B><U5348>"
+% %p %I點%M分%S秒
+t_fmt_ampm "<U0025><U0070><U0020><U0025><U0049><U9EDE><U0025><U004D><U5206><U0025><U0053><U79D2>"
+% %Yå¹´ %b %eæ—¥ %A %H:%M:%S %Z
+date_fmt "<U0025><U0059><U5E74><U0020><U0025><U0062><U0020><U0025><U0065><U65E5><U0020><U0025><U0041><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U005A>"
+END LC_TIME
+
+LC_NUMERIC
+% .
+decimal_point "<U002E>"
+% ,
+thousands_sep "<U002C>"
+grouping 4
+END LC_NUMERIC
+
+LC_MONETARY
+% NT$
+currency_symbol "<U004E><U0054><U0024>"
+% TWD
+int_curr_symbol "<U0054><U0057><U0044><U0020>"
+% .
+mon_decimal_point "<U002E>"
+% ,
+mon_thousands_sep "<U002C>"
+mon_grouping 4
+positive_sign ""
+% -
+negative_sign "<U002D>"
+frac_digits 2
+int_frac_digits 2
+p_cs_precedes 1
+p_sep_by_space 0
+n_cs_precedes 1
+n_sep_by_space 0
+p_sign_posn 1
+n_sign_posn 1
+int_p_cs_precedes 1
+int_p_sep_by_space 0
+int_n_cs_precedes 1
+int_n_sep_by_space 0
+int_p_sign_posn 1
+int_n_sign_posn 1
+END LC_MONETARY
+
+LC_PAPER
+height 297
+width 210
+END LC_PAPER
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
+
+LC_MESSAGES
+% ^[yY是]
+yesexpr "<U005E><U005B><U0079><U0059><U662F><U005D>"
+% ^[nNä¸å¦]
+noexpr "<U005E><U005B><U006E><U004E><U4E0D><U5426><U005D>"
+END LC_MESSAGES
+
+LC_NAME
+% %f%t%g%t%d
+name_fmt "<U0025><U0066><U0025><U0074><U0025><U0067><U0025><U0074><U0025><U0064>"
+% å›
+name_gen "<U541B>"
+% å°å§
+name_miss "<U5C0F><U59D0>"
+% 先生
+name_mr "<U5148><U751F>"
+% 夫人
+name_mrs "<U592B><U4EBA>"
+% 女士
+name_ms "<U5973><U58EB>"
+END LC_NAME
+
+LC_ADDRESS
+% %c%N%T%N%s %h %e %r%N%b%N%d%N%f%N%a%N
+postal_fmt "<U0025><U0063><U0025><U004E><U0025><U0054><U0025><U004E><U0025><U0073><U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0064><U0025><U004E><U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>"
+% 中è¯æ°‘國
+country_name "<U4E2D><U83EF><U6C11><U570B>"
+% TW
+country_post "<U0054><U0057>"
+% TW
+country_ab2 "<U0054><U0057>"
+% TWN
+country_ab3 "<U0054><U0057><U004E>"
+country_num 158
+country_isbn 957
+% 漢語官話
+lang_name "<U6F22><U8A9E><U5B98><U8A71>"
+% cmn
+lang_term "<U0063><U006D><U006E>"
+% cmn
+lang_lib "<U0063><U006D><U006E>"
+END LC_ADDRESS
+
+LC_TELEPHONE
+% +%c-%a-%l
+tel_int_fmt "<U002B><U0025><U0063><U002D><U0025><U0061><U002D><U0025><U006C>"
+% %A-%l
+tel_dom_fmt "<U0025><U0041><U002D><U0025><U006C>"
+% 00
+int_select "<U0030><U0030>"
+% 886
+int_prefix "<U0038><U0038><U0036>"
+END LC_TELEPHONE
diff --git a/localedata/locales/crh_UA b/localedata/locales/crh_UA
index d543b9b14e..2e75f44d44 100644
--- a/localedata/locales/crh_UA
+++ b/localedata/locales/crh_UA
@@ -213,6 +213,7 @@ width 210
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -225,6 +226,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0055><U0041>"
country_ab3 "<U0055><U004B><U0052>"
country_num 804
+% UA
+country_car "<U0055><U0041>"
+% Qırımtatarca
+lang_name "<U0051><U0131><U0072><U0131><U006D><U0074><U0061><U0074><U0061><U0072><U0063><U0061>"
+% crh
+lang_term "<U0063><U0072><U0068>"
+% crh
+lang_lib "<U0063><U0072><U0068>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/cs_CZ b/localedata/locales/cs_CZ
index 12fe5008e6..2a7b4fa5af 100644
--- a/localedata/locales/cs_CZ
+++ b/localedata/locales/cs_CZ
@@ -128,7 +128,7 @@ category "cs_CZ:2000";LC_PAPER
category "cs_CZ:2000";LC_NAME
category "cs_CZ:2000";LC_ADDRESS
category "cs_CZ:2000";LC_TELEPHONE
-
+category "cs_CZ:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
%% Poøadí znakù
@@ -2472,7 +2472,8 @@ int_prefix "<U0034><U0032><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/csb_PL b/localedata/locales/csb_PL
index 93c9ae2eb7..48df333340 100644
--- a/localedata/locales/csb_PL
+++ b/localedata/locales/csb_PL
@@ -44,7 +44,7 @@ category "csb_PL:2000";LC_PAPER
category "csb_PL:2000";LC_NAME
category "csb_PL:2000";LC_ADDRESS
category "csb_PL:2000";LC_TELEPHONE
-
+category "csb_PL:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -198,7 +198,8 @@ copy "pl_PL"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "pl_PL"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -206,5 +207,20 @@ copy "pl_PL"
END LC_NAME
LC_ADDRESS
-copy "pl_PL"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0050><U004C>"
+country_ab3 "<U0050><U004F><U004C>"
+country_num 616
+% PL
+country_car "<U0050><U004C>"
+% kaszëbsczi jãzëk
+lang_name "<U006B><U0061><U0073><U007A><U00EB><U0062><U0073><U0063><U007A><U0069><U0020><U006A><U00E3><U007A><U00EB><U006B>"
+% csb
+lang_term "<U0063><U0073><U0062>"
+% csb
+lang_lib "<U0063><U0073><U0062>"
END LC_ADDRESS
diff --git a/localedata/locales/cv_RU b/localedata/locales/cv_RU
index 0eae6d4d46..889aaf5384 100644
--- a/localedata/locales/cv_RU
+++ b/localedata/locales/cv_RU
@@ -42,7 +42,7 @@ category "cv_RU:2000";LC_PAPER
category "cv_RU:2000";LC_NAME
category "cv_RU:2000";LC_ADDRESS
category "cv_RU:2000";LC_TELEPHONE
-
+category "cv_RU:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -226,7 +226,8 @@ copy "ru_RU"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "ru_RU"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -234,5 +235,22 @@ copy "ru_RU"
END LC_NAME
LC_ADDRESS
-copy "ru_RU"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0052><U0055>"
+country_ab3 "<U0052><U0055><U0053>"
+country_num 643
+% RUS
+country_car "<U0052><U0055><U0053>"
+% Чӑвашла
+lang_name "<U0427><U04D1><U0432><U0430><U0448><U043B><U0430>"
+% cv
+lang_ab "<U0063><U0076>"
+% chv
+lang_term "<U0063><U0068><U0076>"
+% chv
+lang_lib "<U0063><U0068><U0076>"
END LC_ADDRESS
diff --git a/localedata/locales/cy_GB b/localedata/locales/cy_GB
index 3005a63e0a..66298e03ea 100644
--- a/localedata/locales/cy_GB
+++ b/localedata/locales/cy_GB
@@ -57,7 +57,8 @@ copy "en_GB"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_GB"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_CTYPE
diff --git a/localedata/locales/da_DK b/localedata/locales/da_DK
index c4b451db9c..a956b51594 100644
--- a/localedata/locales/da_DK
+++ b/localedata/locales/da_DK
@@ -51,7 +51,7 @@ category "da_DK:2000";LC_PAPER
category "da_DK:2000";LC_NAME
category "da_DK:2000";LC_ADDRESS
category "da_DK:2000";LC_TELEPHONE
-
+category "da_DK:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -234,8 +234,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -252,4 +252,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0044><U004B>"
country_ab3 "<U0044><U004E><U004B>"
country_num 208
+% DK
+country_car "<U0044><U004B>"
+% dansk
+lang_name "<U0064><U0061><U006E><U0073><U006B>"
+% da
+lang_ab "<U0064><U0061>"
+% dan
+lang_term "<U0064><U0061><U006E>"
+% dan
+lang_lib "<U0064><U0061><U006E>"
END LC_ADDRESS
diff --git a/localedata/locales/de_AT b/localedata/locales/de_AT
index c36913bd9a..7c31538d9a 100644
--- a/localedata/locales/de_AT
+++ b/localedata/locales/de_AT
@@ -41,7 +41,7 @@ category "de_AT:2000";LC_PAPER
category "de_AT:2000";LC_NAME
category "de_AT:2000";LC_ADDRESS
category "de_AT:2000";LC_TELEPHONE
-
+category "de_AT:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -138,7 +138,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -155,4 +156,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0041><U0054>"
country_ab3 "<U0041><U0055><U0054>"
country_num 040
+% A
+country_car "<U0041>"
+% Deutsch
+lang_name "<U0044><U0065><U0075><U0074><U0073><U0063><U0068>"
+% de
+lang_ab "<U0064><U0065>"
+% deu
+lang_term "<U0064><U0065><U0075>"
+% ger
+lang_lib "<U0067><U0065><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/de_AT@euro b/localedata/locales/de_AT@euro
index 9604b255c5..2a2d47f39b 100644
--- a/localedata/locales/de_AT@euro
+++ b/localedata/locales/de_AT@euro
@@ -41,7 +41,7 @@ category "de_AT@euro:2000";LC_PAPER
category "de_AT@euro:2000";LC_NAME
category "de_AT@euro:2000";LC_ADDRESS
category "de_AT@euro:2000";LC_TELEPHONE
-
+category "de_AT@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -78,7 +78,8 @@ copy "de_AT"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "de_AT"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/de_BE b/localedata/locales/de_BE
index f313e544b5..ab907f21e0 100644
--- a/localedata/locales/de_BE
+++ b/localedata/locales/de_BE
@@ -43,7 +43,7 @@ category "de_BE:2000";LC_PAPER
category "de_BE:2000";LC_NAME
category "de_BE:2000";LC_ADDRESS
category "de_BE:2000";LC_TELEPHONE
-
+category "de_BE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -132,7 +132,8 @@ copy "fr_BE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "fr_BE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -149,4 +150,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0042><U0045>"
country_ab3 "<U0042><U0045><U004C>"
country_num 056
+% B
+country_car "<U0042>"
+% Deutsch
+lang_name "<U0044><U0065><U0075><U0074><U0073><U0063><U0068>"
+% de
+lang_ab "<U0064><U0065>"
+% deu
+lang_term "<U0064><U0065><U0075>"
+% ger
+lang_lib "<U0067><U0065><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/de_BE@euro b/localedata/locales/de_BE@euro
index d9c4188e7a..a0d299c912 100644
--- a/localedata/locales/de_BE@euro
+++ b/localedata/locales/de_BE@euro
@@ -35,7 +35,7 @@ category "de_BE@euro:2000";LC_PAPER
category "de_BE@euro:2000";LC_NAME
category "de_BE@euro:2000";LC_ADDRESS
category "de_BE@euro:2000";LC_TELEPHONE
-
+category "de_BE@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -71,7 +71,8 @@ copy "de_BE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "de_BE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/de_CH b/localedata/locales/de_CH
index a4cca885b3..8835f0888d 100644
--- a/localedata/locales/de_CH
+++ b/localedata/locales/de_CH
@@ -42,7 +42,7 @@ category "de_CH:2000";LC_PAPER
category "de_CH:2000";LC_NAME
category "de_CH:2000";LC_ADDRESS
category "de_CH:2000";LC_TELEPHONE
-
+category "de_CH:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -140,8 +140,8 @@ int_prefix "<U0034><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -158,4 +158,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U0048>"
country_ab3 "<U0043><U0048><U0045>"
country_num 756
+% CH
+country_car "<U0043><U0048>"
+% Deutsch
+lang_name "<U0044><U0065><U0075><U0074><U0073><U0063><U0068>"
+% de
+lang_ab "<U0064><U0065>"
+% deu
+lang_term "<U0064><U0065><U0075>"
+% ger
+lang_lib "<U0067><U0065><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/de_DE b/localedata/locales/de_DE
index 32cbd76dda..e2704a77a5 100644
--- a/localedata/locales/de_DE
+++ b/localedata/locales/de_DE
@@ -27,7 +27,7 @@ category "de_DE:2000";LC_PAPER
category "de_DE:2000";LC_NAME
category "de_DE:2000";LC_ADDRESS
category "de_DE:2000";LC_TELEPHONE
-
+category "de_DE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -194,9 +194,13 @@ country_ab3 "<U0044><U0045><U0055>"
country_num 276
country_car "<U0044>"
country_isbn 3
+% Deutsch
lang_name "<U0044><U0065><U0075><U0074><U0073><U0063><U0068>"
+% de
lang_ab "<U0064><U0065>"
+% deu
lang_term "<U0064><U0065><U0075>"
+% ger
lang_lib "<U0067><U0065><U0072>"
END LC_ADDRESS
@@ -209,5 +213,6 @@ int_prefix "<U0034><U0039>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/de_DE@euro b/localedata/locales/de_DE@euro
index 7e9c97a733..cc7e073385 100644
--- a/localedata/locales/de_DE@euro
+++ b/localedata/locales/de_DE@euro
@@ -27,7 +27,7 @@ category "de_DE@euro:2000";LC_PAPER
category "de_DE@euro:2000";LC_NAME
category "de_DE@euro:2000";LC_ADDRESS
category "de_DE@euro:2000";LC_TELEPHONE
-
+category "de_DE@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -75,5 +75,6 @@ copy "de_DE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "de_DE"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/de_LU b/localedata/locales/de_LU
index f398ddc040..1e66f9a502 100644
--- a/localedata/locales/de_LU
+++ b/localedata/locales/de_LU
@@ -43,7 +43,7 @@ category "de_LU:2000";LC_PAPER
category "de_LU:2000";LC_NAME
category "de_LU:2000";LC_ADDRESS
category "de_LU:2000";LC_TELEPHONE
-
+category "de_LU:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -137,8 +137,8 @@ int_prefix "<U0033><U0035><U0032>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -155,4 +155,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004C><U0055>"
country_ab3 "<U004C><U0055><U0058>"
country_num 442
+% L
+country_car "<U004C>"
+% Deutsch
+lang_name "<U0044><U0065><U0075><U0074><U0073><U0063><U0068>"
+% de
+lang_ab "<U0064><U0065>"
+% deu
+lang_term "<U0064><U0065><U0075>"
+% ger
+lang_lib "<U0067><U0065><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/de_LU@euro b/localedata/locales/de_LU@euro
index caff758712..c267677f60 100644
--- a/localedata/locales/de_LU@euro
+++ b/localedata/locales/de_LU@euro
@@ -35,7 +35,7 @@ category "de_LU:2000@euro";LC_PAPER
category "de_LU:2000@euro";LC_NAME
category "de_LU:2000@euro";LC_ADDRESS
category "de_LU:2000@euro";LC_TELEPHONE
-
+category "de_LU:2000@euro";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -71,7 +71,8 @@ copy "de_LU"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "de_LU"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/doi_IN b/localedata/locales/doi_IN
index 50ef735010..1d3e6d4904 100644
--- a/localedata/locales/doi_IN
+++ b/localedata/locales/doi_IN
@@ -27,7 +27,7 @@ category "doi_IN:2012";LC_PAPER
category "doi_IN:2012";LC_NAME
category "doi_IN:2012";LC_ADDRESS
category "doi_IN:2012";LC_TELEPHONE
-
+category "doi_IN:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -163,7 +163,19 @@ END LC_NAME
LC_ADDRESS
-copy "hi_IN"
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% डोगरी
+lang_name "<U0921><U094B><U0917><U0930><U0940>"
+% doi
+lang_term "<U0064><U006F><U0069>"
+% doi
+lang_lib "<U0064><U006F><U0069>"
END LC_ADDRESS
@@ -172,5 +184,6 @@ copy "hi_IN"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/dv_MV b/localedata/locales/dv_MV
index 064da132a8..34fe69dc92 100644
--- a/localedata/locales/dv_MV
+++ b/localedata/locales/dv_MV
@@ -38,7 +38,7 @@ category "dv_MV:2006";LC_PAPER
category "dv_MV:2006";LC_NAME
category "dv_MV:2006";LC_ADDRESS
category "dv_MV:2006";LC_TELEPHONE
-
+category "dv_MV:2006";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -55,7 +55,7 @@ copy "en_DK"
END LC_COLLATE
LC_MONETARY
-% it is meant to be MVR, could you see if it is correct please
+% MVR
int_curr_symbol "<U004D><U0056><U0052><U0020>"
currency_symbol "<U0783><U002E>"
mon_decimal_point "<U002E>"
@@ -163,7 +163,8 @@ int_prefix "<U0039><U0036><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -177,4 +178,13 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
<U004E><U0025><U0025><U007A><U0020><U0025><U0054><U0025>/
<U004E><U0025><U0063><U0025><U004E>"
+% lang_name FIXME
+% Cannot represent Dhivehi in Thaana script
+% http://en.wikipedia.org/wiki/Maldivian_language
+% dv
+lang_ab "<U0064><U0076>"
+% div
+lang_term "<U0064><U0069><U0076>"
+% div
+lang_lib "<U0064><U0069><U0076>"
END LC_ADDRESS
diff --git a/localedata/locales/dz_BT b/localedata/locales/dz_BT
index 012bd49c5e..d6443b49de 100644
--- a/localedata/locales/dz_BT
+++ b/localedata/locales/dz_BT
@@ -31,6 +31,7 @@ date "2004-09-03"
%
category "dz_BT:2004";LC_IDENTIFICATION
category "dz_BT:2004";LC_CTYPE
+category "dz_BT:2004";LC_TIME
category "dz_BT:2004";LC_COLLATE
category "dz_BT:2004";LC_NUMERIC
category "dz_BT:2004";LC_MONETARY
@@ -39,7 +40,7 @@ category "dz_BT:2004";LC_PAPER
category "dz_BT:2004";LC_NAME
category "dz_BT:2004";LC_ADDRESS
category "dz_BT:2004";LC_TELEPHONE
-
+category "dz_BT:2004";LC_MEASUREMENT
END LC_IDENTIFICATION
%%%%%%%%%%%%%%%%
@@ -631,8 +632,8 @@ width 210
END LC_PAPER
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -659,11 +660,13 @@ country_ab2 "<U0042><U0054>"
country_ab3 "<U0042><U0048><U0055>"
%country_num "<U0042><U0048><U0055>"
%FIXME
-%country_car "<U0042>"
-%FIXME
%country_isbn ""
-lang_name "<U0E44><U0E17><U0E22>"
-lang_ab "<U0074><U0068>"
-lang_term "<U0074><U0068><U0061>"
-lang_lib "<U0074><U0068><U0061>"
+% རྫོང་à½
+lang_name "<U0028><U0F62><U0FAB><U0F7C><U0F44><U0F0B><U0F41>"
+% dz
+lang_ab "<U0064><U007A>"
+% dzo
+lang_term "<U0064><U007A><U006F>"
+% dzo
+lang_lib "<U0064><U007A><U006F>"
END LC_ADDRESS
diff --git a/localedata/locales/el_CY b/localedata/locales/el_CY
index 31175777ed..4a6ebc45a5 100644
--- a/localedata/locales/el_CY
+++ b/localedata/locales/el_CY
@@ -28,7 +28,7 @@ category "el_CY:2000";LC_PAPER
category "el_CY:2000";LC_NAME
category "el_CY:2000";LC_ADDRESS
category "el_CY:2000";LC_TELEPHONE
-
+category "el_CY:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -83,8 +83,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -101,4 +101,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U0059>"
country_ab3 "<U0043><U0059><U0050>"
country_num 196
+% CY
+country_car "<U0043><U0059>"
+% ελληνικά
+lang_name "<U03B5><U03BB><U03BB><U03B7><U03BD><U03B9><U03BA><U03AC>"
+% el
+lang_ab "<U0065><U006C>"
+% ell
+lang_term "<U0065><U006C><U006C>"
+% gre
+lang_lib "<U0067><U0072><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/el_GR b/localedata/locales/el_GR
index e4d61d6df9..254463c8cd 100644
--- a/localedata/locales/el_GR
+++ b/localedata/locales/el_GR
@@ -42,7 +42,7 @@ category "el_GR:2000";LC_PAPER
category "el_GR:2000";LC_NAME
category "el_GR:2000";LC_ADDRESS
category "el_GR:2000";LC_TELEPHONE
-
+category "el_GR:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -158,8 +158,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -176,4 +176,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0047><U0052>"
country_ab3 "<U0047><U0052><U0043>"
country_num 300
+% GR
+country_car "<U0047><U0052>"
+% ελληνικά
+lang_name "<U03B5><U03BB><U03BB><U03B7><U03BD><U03B9><U03BA><U03AC>"
+% el
+lang_ab "<U0065><U006C>"
+% ell
+lang_term "<U0065><U006C><U006C>"
+% gre
+lang_lib "<U0067><U0072><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/el_GR@euro b/localedata/locales/el_GR@euro
index 2a37cf640d..c7e889ae15 100644
--- a/localedata/locales/el_GR@euro
+++ b/localedata/locales/el_GR@euro
@@ -25,7 +25,7 @@ category "el_GR@euro:2000";LC_PAPER
category "el_GR@euro:2000";LC_NAME
category "el_GR@euro:2000";LC_ADDRESS
category "el_GR@euro:2000";LC_TELEPHONE
-
+category "el_GR@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -63,7 +63,6 @@ LC_NAME
copy "el_GR"
END LC_NAME
-
LC_ADDRESS
copy "el_GR"
END LC_ADDRESS
@@ -73,5 +72,6 @@ copy "el_GR"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "el_GR"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/en_AG b/localedata/locales/en_AG
index b724eace81..763ba82833 100644
--- a/localedata/locales/en_AG
+++ b/localedata/locales/en_AG
@@ -27,7 +27,7 @@ category "en_AG:2008";LC_PAPER
category "en_AG:2008";LC_NAME
category "en_AG:2008";LC_ADDRESS
category "en_AG:2008";LC_TELEPHONE
-
+category "en_AG:2008";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -85,6 +85,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0041><U0047>"
country_ab3 "<U0041><U0054><U0047>"
country_num 28
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
LC_TELEPHONE
@@ -95,5 +103,6 @@ int_select "<U0030><U0031><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_US"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/en_AU b/localedata/locales/en_AU
index 39aa7e25c3..07168371dc 100644
--- a/localedata/locales/en_AU
+++ b/localedata/locales/en_AU
@@ -43,7 +43,7 @@ category "en_AU:2000";LC_PAPER
category "en_AU:2000";LC_NAME
category "en_AU:2000";LC_ADDRESS
category "en_AU:2000";LC_TELEPHONE
-
+category "en_AU:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -139,8 +139,8 @@ int_select "<U0030><U0030><U0031><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -157,4 +157,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0041><U0055>"
country_ab3 "<U0041><U0055><U0053>"
country_num 036
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% AUS
+country_car "<U0041><U0055><U0053>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/en_BW b/localedata/locales/en_BW
index bb8102fee3..1de3e0410b 100644
--- a/localedata/locales/en_BW
+++ b/localedata/locales/en_BW
@@ -40,7 +40,7 @@ category "en_BW:2000";LC_PAPER
category "en_BW:2000";LC_NAME
category "en_BW:2000";LC_ADDRESS
category "en_BW:2000";LC_TELEPHONE
-
+category "en_BW:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -96,8 +96,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -114,4 +114,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0042><U0057>"
country_ab3 "<U0042><U0057><U0041>"
country_num 072
+% RB
+country_car "<U0052><U0042>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/en_CA b/localedata/locales/en_CA
index 52e9e32039..5d66fbbdbb 100644
--- a/localedata/locales/en_CA
+++ b/localedata/locales/en_CA
@@ -45,7 +45,7 @@ category "en_CA:2000";LC_PAPER
category "en_CA:2000";LC_NAME
category "en_CA:2000";LC_ADDRESS
category "en_CA:2000";LC_TELEPHONE
-
+category "en_CA:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -161,8 +161,8 @@ int_select "<U0030><U0031><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -179,8 +179,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U0041>"
country_ab3 "<U0043><U0041><U004E>"
country_num 124
+% CDN
+country_car "<U0043><U0044><U004E>"
+% English
lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
-lang_ab "<U0065><U006E>"
-lang_term "<U0065><U006E><U0067>"
-lang_lib "<U0065><U006E><U0067>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/en_DK b/localedata/locales/en_DK
index 3ec5170558..cbad082127 100644
--- a/localedata/locales/en_DK
+++ b/localedata/locales/en_DK
@@ -48,7 +48,7 @@ category "en_DK:2000";LC_PAPER
category "en_DK:2000";LC_NAME
category "en_DK:2000";LC_ADDRESS
category "en_DK:2000";LC_TELEPHONE
-
+category "en_DK:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -141,7 +141,8 @@ copy "da_DK"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "da_DK"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -158,4 +159,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0044><U004B>"
country_ab3 "<U0044><U004E><U004B>"
country_num 208
+% DK
+country_car "<U0044><U004B>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/en_GB b/localedata/locales/en_GB
index a80a334a68..b60ddfd990 100644
--- a/localedata/locales/en_GB
+++ b/localedata/locales/en_GB
@@ -43,7 +43,7 @@ category "en_GB:2000";LC_PAPER
category "en_GB:2000";LC_NAME
category "en_GB:2000";LC_ADDRESS
category "en_GB:2000";LC_TELEPHONE
-
+category "en_GB:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -145,7 +145,8 @@ int_prefix "<U0034><U0034>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -161,4 +162,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0047><U0042>"
country_ab3 "<U0047><U0042><U0052>"
country_num 826
+% GB
+country_car "<U0047><U0042>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/en_HK b/localedata/locales/en_HK
index 7f00765a19..b101ff024f 100644
--- a/localedata/locales/en_HK
+++ b/localedata/locales/en_HK
@@ -32,7 +32,7 @@ category "en_HK:2000";LC_PAPER
category "en_HK:2000";LC_NAME
category "en_HK:2000";LC_ADDRESS
category "en_HK:2000";LC_TELEPHONE
-
+category "en_HK:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -196,6 +196,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U0048><U004B>"
country_ab3 "<U0048><U004B><U0047>"
country_num 344
+% HK
+country_car "<U0048><U004B>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
@@ -208,8 +218,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT
-% category generated by IBM Basic CountryPack Transformer.
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/en_IE b/localedata/locales/en_IE
index 5b544754d2..3003b99393 100644
--- a/localedata/locales/en_IE
+++ b/localedata/locales/en_IE
@@ -43,7 +43,7 @@ category "en_IE:2000";LC_PAPER
category "en_IE:2000";LC_NAME
category "en_IE:2000";LC_ADDRESS
category "en_IE:2000";LC_TELEPHONE
-
+category "en_IE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -137,8 +137,8 @@ int_prefix "<U0033><U0035><U0033>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -155,4 +155,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0049><U0045>"
country_ab3 "<U0049><U0052><U004C>"
country_num 372
+% IRL
+country_car "<U0049><U0052><U004C>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/en_IE@euro b/localedata/locales/en_IE@euro
index 7f5d518b1c..1d3c5b376d 100644
--- a/localedata/locales/en_IE@euro
+++ b/localedata/locales/en_IE@euro
@@ -35,7 +35,7 @@ category "en_IE@euro:2000";LC_PAPER
category "en_IE@euro:2000";LC_NAME
category "en_IE@euro:2000";LC_ADDRESS
category "en_IE@euro:2000";LC_TELEPHONE
-
+category "en_IE@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -71,7 +71,8 @@ copy "en_IE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_IE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/en_IN b/localedata/locales/en_IN
index d5f09f1b2b..c76cfff373 100644
--- a/localedata/locales/en_IN
+++ b/localedata/locales/en_IN
@@ -29,7 +29,7 @@ category "en_IN:2000";LC_PAPER
category "en_IN:2000";LC_NAME
category "en_IN:2000";LC_ADDRESS
category "en_IN:2000";LC_TELEPHONE
-
+category "en_IN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -191,6 +191,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
@@ -200,5 +210,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/en_NG b/localedata/locales/en_NG
index a418eb9570..364b549a90 100644
--- a/localedata/locales/en_NG
+++ b/localedata/locales/en_NG
@@ -211,7 +211,8 @@ int_prefix "<U0032><U0033><U0034>"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_DK"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -274,10 +275,12 @@ country_isbn 978
% ISO 639 language abbreviations:
% 639-1 2 letter, 639-2 3 letter terminology
% http://www.loc.gov/standards/iso639-2/englagn.html
-% "en", "eng"
-lang_ab "<U0065><U006E>"
-lang_term "<U0065><U006E><U0067>"
-lang_lib "<U0065><U006E><U0067>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
% ISO 3166 country number and 2 and 3 letter abreviations
% http://www.unicode.org/onlinedat/countries.html
diff --git a/localedata/locales/en_NZ b/localedata/locales/en_NZ
index 815134f714..2533d85028 100644
--- a/localedata/locales/en_NZ
+++ b/localedata/locales/en_NZ
@@ -43,7 +43,7 @@ category "en_NZ:2000";LC_PAPER
category "en_NZ:2000";LC_NAME
category "en_NZ:2000";LC_ADDRESS
category "en_NZ:2000";LC_TELEPHONE
-
+category "en_NZ:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -138,8 +138,8 @@ int_prefix "<U0036><U0034>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -156,4 +156,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004E><U005A>"
country_ab3 "<U004E><U005A><U004C>"
country_num 554
+% NZ
+country_car "<U004E><U005A>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/en_PH b/localedata/locales/en_PH
index 9f78c1faa6..80e8cfe93a 100644
--- a/localedata/locales/en_PH
+++ b/localedata/locales/en_PH
@@ -31,7 +31,7 @@ category "en_PH:2000";LC_PAPER
category "en_PH:2000";LC_NAME
category "en_PH:2000";LC_ADDRESS
category "en_PH:2000";LC_TELEPHONE
-
+category "en_PH:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -192,6 +192,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U0049><U0044>"
country_ab3 "<U0049><U0044><U004E>"
country_num 360
+% RP
+country_car "<U0052><U0050>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
@@ -204,8 +214,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT
-% category generated by IBM Basic CountryPack Transformer.
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/en_SG b/localedata/locales/en_SG
index 71ae52b26a..c161f7da61 100644
--- a/localedata/locales/en_SG
+++ b/localedata/locales/en_SG
@@ -29,7 +29,7 @@ category "en_SG:2000";LC_PAPER
category "en_SG:2000";LC_NAME
category "en_SG:2000";LC_ADDRESS
category "en_SG:2000";LC_TELEPHONE
-
+category "en_SG:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -195,6 +195,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U0053><U0047>"
country_ab3 "<U0053><U0047><U0050>"
country_num 702
+% SGP
+country_car "<U0053><U0047><U0050>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
@@ -207,8 +217,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT
-% category generated by IBM Basic CountryPack Transformer.
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/en_US b/localedata/locales/en_US
index 3560c5700b..d79c228e3e 100644
--- a/localedata/locales/en_US
+++ b/localedata/locales/en_US
@@ -27,7 +27,7 @@ category "en_US:2000";LC_PAPER
category "en_US:2000";LC_NAME
category "en_US:2000";LC_ADDRESS
category "en_US:2000";LC_TELEPHONE
-
+category "en_US:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -162,12 +162,17 @@ country_post "<U0055><U0053><U0041>"
country_ab2 "<U0055><U0053>"
country_ab3 "<U0055><U0053><U0041>"
country_num 840
+% USA
country_car "<U0055><U0053><U0041>"
country_isbn 0
+% English
lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
-lang_ab "<U0065><U006E>"
-lang_term "<U0065><U006E><U0067>"
-lang_lib "<U0065><U006E><U0067>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
LC_TELEPHONE
@@ -179,5 +184,6 @@ int_prefix "<U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
+% US customary units
measurement 2
END LC_MEASUREMENT
diff --git a/localedata/locales/en_ZA b/localedata/locales/en_ZA
index 86201714b3..294b0a3104 100644
--- a/localedata/locales/en_ZA
+++ b/localedata/locales/en_ZA
@@ -231,7 +231,7 @@ LC_TELEPHONE
tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025>/
<U006C>"
-% Represntation of telephone number for domestic use -
+% Representation of telephone number for domestic use -
% "(%A) %l", which is
% %A - area code with national prefix
% %l - local number".
@@ -248,7 +248,8 @@ int_prefix "<U0032><U0037>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -342,10 +343,12 @@ country_isbn 0
% ISO 639 language abbreviations:
% 639-1 2 letter, 639-2 3 letter terminology
% http://www.loc.gov/standards/iso639-2/englagn.html
-% "en", "eng"
-lang_ab "<U0065><U006E>"
-lang_term "<U0065><U006E><U0067>"
-lang_lib "<U0065><U006E><U0067>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
% ISO 3166 country number and 2 and 3 letter abreviations
% http://www.unicode.org/onlinedat/countries.html
diff --git a/localedata/locales/en_ZM b/localedata/locales/en_ZM
index ac8e680341..ee0f9a2da4 100644
--- a/localedata/locales/en_ZM
+++ b/localedata/locales/en_ZM
@@ -60,7 +60,8 @@ copy "bem_ZM"
END LC_PAPER
LC_MEASUREMENT
-copy "bem_ZM"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MESSAGES
@@ -85,6 +86,16 @@ country_ab2 "<U005A><U004D>"
% ZMB
country_ab3 "<U005A><U004D><U0042>"
country_num 894
+% Z
+country_car "<U005A>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/en_ZW b/localedata/locales/en_ZW
index 710c42ea09..793785b0b5 100644
--- a/localedata/locales/en_ZW
+++ b/localedata/locales/en_ZW
@@ -40,7 +40,7 @@ category "en_ZW:2000";LC_PAPER
category "en_ZW:2000";LC_NAME
category "en_ZW:2000";LC_ADDRESS
category "en_ZW:2000";LC_TELEPHONE
-
+category "en_ZW:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -95,8 +95,8 @@ int_prefix "<U0032><U0036><U0033>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -113,4 +113,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U005A><U0057>"
country_ab3 "<U005A><U0057><U0045>"
country_num 716
+% ZW
+country_car "<U005A><U0057>"
+% English
+lang_name "<U0045><U006E><U0067><U006C><U0069><U0073><U0068>"
+% en
+lang_ab "<U0065><U006E>"
+% eng
+lang_term "<U0065><U006E><U0067>"
+% eng
+lang_lib "<U0065><U006E><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/es_AR b/localedata/locales/es_AR
index 27636e7083..dd6959df55 100644
--- a/localedata/locales/es_AR
+++ b/localedata/locales/es_AR
@@ -44,7 +44,7 @@ category "es_AR:2000";LC_PAPER
category "es_AR:2000";LC_NAME
category "es_AR:2000";LC_ADDRESS
category "es_AR:2000";LC_TELEPHONE
-
+category "es_AR:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -138,8 +138,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -156,4 +156,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0041><U0052>"
country_ab3 "<U0041><U0052><U0047>"
country_num 032
+% RA
+country_car "<U0052><U0041>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_BO b/localedata/locales/es_BO
index 69643115fe..31f9ec204e 100644
--- a/localedata/locales/es_BO
+++ b/localedata/locales/es_BO
@@ -44,7 +44,7 @@ category "es_BO:2000";LC_PAPER
category "es_BO:2000";LC_NAME
category "es_BO:2000";LC_ADDRESS
category "es_BO:2000";LC_TELEPHONE
-
+category "es_BO:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -136,8 +136,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -154,4 +154,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0042><U004F>"
country_ab3 "<U0042><U004F><U004C>"
country_num 068
+% BOL
+country_car "<U0042><U004F><U004C>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_CL b/localedata/locales/es_CL
index fe5b6d95e2..0a467febe9 100644
--- a/localedata/locales/es_CL
+++ b/localedata/locales/es_CL
@@ -44,7 +44,7 @@ category "es_CL:2000";LC_PAPER
category "es_CL:2000";LC_NAME
category "es_CL:2000";LC_ADDRESS
category "es_CL:2000";LC_TELEPHONE
-
+category "es_CL:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -134,8 +134,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -152,4 +152,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U004C>"
country_ab3 "<U0043><U0048><U004C>"
country_num 152
+% RCH
+country_car "<U0052><U0043><U0048>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_CO b/localedata/locales/es_CO
index 5db5d6dcfd..f31d2479ef 100644
--- a/localedata/locales/es_CO
+++ b/localedata/locales/es_CO
@@ -44,7 +44,7 @@ category "es_CO:2000";LC_PAPER
category "es_CO:2000";LC_NAME
category "es_CO:2000";LC_ADDRESS
category "es_CO:2000";LC_TELEPHONE
-
+category "es_CO:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -137,8 +137,8 @@ int_select "<U0030><U0030><U0039>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -155,4 +155,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U004F>"
country_ab3 "<U0043><U004F><U004C>"
country_num 170
+% CO
+country_car "<U0043><U004F>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_CR b/localedata/locales/es_CR
index d7be7f8fa1..b5dec84127 100644
--- a/localedata/locales/es_CR
+++ b/localedata/locales/es_CR
@@ -35,7 +35,7 @@ category "es_CR:2000";LC_PAPER
category "es_CR:2000";LC_NAME
category "es_CR:2000";LC_ADDRESS
category "es_CR:2000";LC_TELEPHONE
-
+category "es_CR:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -132,7 +132,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -155,10 +156,15 @@ country_name "<U0043><U006F><U0073><U0074><U0061><U0020><U0052><U0069><U0063><U
country_post "<U0043><U0052>"
country_car "<U0043><U0052>"
country_isbn "9930,9977,9968"
-lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
-lang_ab "<U0065><U0073>"
-lang_term "<U0073><U0070><U0061>"
country_ab2 "<U0043><U0052>"
country_ab3 "<U0043><U0052><U0049>"
country_num 188
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_CU b/localedata/locales/es_CU
index 67fb5f9a0c..344af648a5 100644
--- a/localedata/locales/es_CU
+++ b/localedata/locales/es_CU
@@ -41,7 +41,7 @@ category "es_CU:2000";LC_PAPER
category "es_CU:2000";LC_NAME
category "es_CU:2000";LC_ADDRESS
category "es_CU:2000";LC_TELEPHONE
-
+category "es_CU:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -101,8 +101,8 @@ int_prefix "<U0035><U0033>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -119,4 +119,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U0055>"
country_ab3 "<U0043><U0055><U0042>"
country_num 192
+% C
+country_car "<U0043>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_DO b/localedata/locales/es_DO
index 4753ecfdd7..8816d03817 100644
--- a/localedata/locales/es_DO
+++ b/localedata/locales/es_DO
@@ -44,7 +44,7 @@ category "es_DO:2000";LC_PAPER
category "es_DO:2000";LC_NAME
category "es_DO:2000";LC_ADDRESS
category "es_DO:2000";LC_TELEPHONE
-
+category "es_DO:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -138,8 +138,8 @@ int_select "<U0030><U0031><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -156,4 +156,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0044><U004F>"
country_ab3 "<U0044><U004F><U004D>"
country_num 214
+% DOM
+country_car "<U0044><U004F><U004D>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_EC b/localedata/locales/es_EC
index 480f6ef78e..b2145ec989 100644
--- a/localedata/locales/es_EC
+++ b/localedata/locales/es_EC
@@ -44,7 +44,7 @@ category "es_EC:2000";LC_PAPER
category "es_EC:2000";LC_NAME
category "es_EC:2000";LC_ADDRESS
category "es_EC:2000";LC_TELEPHONE
-
+category "es_EC:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -136,8 +136,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -154,4 +154,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0045><U0043>"
country_ab3 "<U0045><U0043><U0055>"
country_num 218
+% EC
+country_car "<U0045><U0043>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_ES b/localedata/locales/es_ES
index 44c17a6328..7af543393a 100644
--- a/localedata/locales/es_ES
+++ b/localedata/locales/es_ES
@@ -44,7 +44,7 @@ category "es_ES:2000";LC_PAPER
category "es_ES:2000";LC_NAME
category "es_ES:2000";LC_ADDRESS
category "es_ES:2000";LC_TELEPHONE
-
+category "es_ES:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -150,8 +150,8 @@ int_prefix "<U0033><U0034>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -168,4 +168,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0045><U0053>"
country_ab3 "<U0045><U0053><U0050>"
country_num 724
+% E
+country_car "<U0045>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_ES@euro b/localedata/locales/es_ES@euro
index 721738e5b7..8ffc7cc1e1 100644
--- a/localedata/locales/es_ES@euro
+++ b/localedata/locales/es_ES@euro
@@ -35,7 +35,7 @@ category "es_ES@euro:2000";LC_PAPER
category "es_ES@euro:2000";LC_NAME
category "es_ES@euro:2000";LC_ADDRESS
category "es_ES@euro:2000";LC_TELEPHONE
-
+category "es_ES@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -71,7 +71,8 @@ copy "es_ES"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "es_ES"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/es_GT b/localedata/locales/es_GT
index 0889d44c48..25f518568d 100644
--- a/localedata/locales/es_GT
+++ b/localedata/locales/es_GT
@@ -43,7 +43,7 @@ category "es_GT:2000";LC_PAPER
category "es_GT:2000";LC_NAME
category "es_GT:2000";LC_ADDRESS
category "es_GT:2000";LC_TELEPHONE
-
+category "es_GT:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -135,8 +135,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -153,4 +153,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0047><U0054>"
country_ab3 "<U0047><U0054><U004D>"
country_num 320
+% GCA
+country_car "<U0047><U0043><U0041>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_HN b/localedata/locales/es_HN
index febab6bbea..fbc0558b92 100644
--- a/localedata/locales/es_HN
+++ b/localedata/locales/es_HN
@@ -44,7 +44,7 @@ category "es_HN:2000";LC_PAPER
category "es_HN:2000";LC_NAME
category "es_HN:2000";LC_ADDRESS
category "es_HN:2000";LC_TELEPHONE
-
+category "es_HN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -138,8 +138,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -156,4 +156,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0048><U004E>"
country_ab3 "<U0048><U004E><U0044>"
country_num 340
+% es
+lang_ab "<U0065><U0073>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_MX b/localedata/locales/es_MX
index a201f0bbb8..5a4e3642f9 100644
--- a/localedata/locales/es_MX
+++ b/localedata/locales/es_MX
@@ -44,7 +44,7 @@ category "es_MX:2000";LC_PAPER
category "es_MX:2000";LC_NAME
category "es_MX:2000";LC_ADDRESS
category "es_MX:2000";LC_TELEPHONE
-
+category "es_MX:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -135,8 +135,8 @@ int_prefix "<U0035><U0032>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -153,4 +153,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004D><U0058>"
country_ab3 "<U004D><U0045><U0058>"
country_num 484
+% MEX
+country_car "<U004D><U0045><U0058>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_NI b/localedata/locales/es_NI
index 384ebaa07d..d2944efd0e 100644
--- a/localedata/locales/es_NI
+++ b/localedata/locales/es_NI
@@ -35,7 +35,7 @@ category "es_NI:2000";LC_PAPER
category "es_NI:2000";LC_NAME
category "es_NI:2000";LC_ADDRESS
category "es_NI:2000";LC_TELEPHONE
-
+category "es_NI:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -129,8 +129,8 @@ int_prefix "<U0035><U0030><U0035>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -147,4 +147,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004E><U0049>"
country_ab3 "<U004E><U0049><U0043>"
country_num 558
+% NIC
+country_car "<U004E><U0049><U0043>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_PA b/localedata/locales/es_PA
index 7f22166f3e..8bfb0e3775 100644
--- a/localedata/locales/es_PA
+++ b/localedata/locales/es_PA
@@ -44,7 +44,7 @@ category "es_PA:2000";LC_PAPER
category "es_PA:2000";LC_NAME
category "es_PA:2000";LC_ADDRESS
category "es_PA:2000";LC_TELEPHONE
-
+category "es_PA:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -135,8 +135,8 @@ int_prefix "<U0035><U0030><U0032>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -153,4 +153,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0050><U0041>"
country_ab3 "<U0050><U0041><U004E>"
country_num 591
+% PA
+country_car "<U0050><U0041>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_PE b/localedata/locales/es_PE
index da1a64036d..399af56fcd 100644
--- a/localedata/locales/es_PE
+++ b/localedata/locales/es_PE
@@ -44,7 +44,7 @@ category "es_PE:2000";LC_PAPER
category "es_PE:2000";LC_NAME
category "es_PE:2000";LC_ADDRESS
category "es_PE:2000";LC_TELEPHONE
-
+category "es_PE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -136,8 +136,8 @@ int_prefix "<U0035><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -154,4 +154,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0050><U0045>"
country_ab3 "<U0050><U0045><U0052>"
country_num 604
+% PE
+country_car "<U0050><U0045>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_PR b/localedata/locales/es_PR
index 93d7d21c25..46e21db193 100644
--- a/localedata/locales/es_PR
+++ b/localedata/locales/es_PR
@@ -35,7 +35,7 @@ category "es_PR:2000";LC_PAPER
category "es_PR:2000";LC_NAME
category "es_PR:2000";LC_ADDRESS
category "es_PR:2000";LC_TELEPHONE
-
+category "es_PR:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -126,6 +126,7 @@ int_prefix "<U0031><U0037><U0038><U0037>"
END LC_TELEPHONE
LC_MEASUREMENT
+% US customary units
measurement 2
END LC_MEASUREMENT
@@ -143,4 +144,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0050><U0052>"
country_ab3 "<U0050><U0052><U0049>"
country_num 630
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_PY b/localedata/locales/es_PY
index ce226bad72..465ff555fa 100644
--- a/localedata/locales/es_PY
+++ b/localedata/locales/es_PY
@@ -44,7 +44,7 @@ category "es_PY:2000";LC_PAPER
category "es_PY:2000";LC_NAME
category "es_PY:2000";LC_ADDRESS
category "es_PY:2000";LC_TELEPHONE
-
+category "es_PY:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -135,8 +135,8 @@ int_prefix "<U0035><U0039><U0035>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -153,4 +153,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0050><U0059>"
country_ab3 "<U0050><U0052><U0059>"
country_num 600
+% PY
+country_car "<U0050><U0059>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_SV b/localedata/locales/es_SV
index fa5e5805ce..c7201e6845 100644
--- a/localedata/locales/es_SV
+++ b/localedata/locales/es_SV
@@ -44,7 +44,7 @@ category "es_SV:2000";LC_PAPER
category "es_SV:2000";LC_NAME
category "es_SV:2000";LC_ADDRESS
category "es_SV:2000";LC_TELEPHONE
-
+category "es_SV:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -136,8 +136,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -154,4 +154,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0053><U0056>"
country_ab3 "<U0053><U004C><U0056>"
country_num 222
+% ES
+country_car "<U0045><U0053>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_US b/localedata/locales/es_US
index c90f88c04e..6b808d571f 100644
--- a/localedata/locales/es_US
+++ b/localedata/locales/es_US
@@ -44,7 +44,7 @@ category "es_US:2000";LC_PAPER
category "es_US:2000";LC_NAME
category "es_US:2000";LC_ADDRESS
category "es_US:2000";LC_TELEPHONE
-
+category "es_US:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -187,6 +187,7 @@ int_prefix "<U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
+% US customary units
measurement 2
END LC_MEASUREMENT
@@ -208,4 +209,12 @@ country_ab3 "<U0055><U0053><U0041>"
country_num 840
country_car "<U0055><U0053><U0041>"
country_isbn 0
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_UY b/localedata/locales/es_UY
index cbb7d5a86f..76877b1c99 100644
--- a/localedata/locales/es_UY
+++ b/localedata/locales/es_UY
@@ -44,7 +44,7 @@ category "es_UY:2000";LC_PAPER
category "es_UY:2000";LC_NAME
category "es_UY:2000";LC_ADDRESS
category "es_UY:2000";LC_TELEPHONE
-
+category "es_UY:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -135,8 +135,8 @@ int_prefix "<U0035><U0039><U0038>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -153,4 +153,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0055><U0059>"
country_ab3 "<U0055><U0052><U0059>"
country_num 858
+% UY
+country_car "<U0055><U0059>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/es_VE b/localedata/locales/es_VE
index 1ec2dff6ad..6dbfa1e490 100644
--- a/localedata/locales/es_VE
+++ b/localedata/locales/es_VE
@@ -44,7 +44,7 @@ category "es_VE:2000";LC_PAPER
category "es_VE:2000";LC_NAME
category "es_VE:2000";LC_ADDRESS
category "es_VE:2000";LC_TELEPHONE
-
+category "es_VE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -60,7 +60,8 @@ copy "es_ES"
END LC_MESSAGES
LC_MONETARY
-int_curr_symbol "<U0056><U0045><U0042><U0020>"
+% VEF
+int_curr_symbol "<U0056><U0045><U0046><U0020>"
currency_symbol "<U0042><U0073><U002E>"
mon_decimal_point "<U002C>"
mon_thousands_sep "<U002E>"
@@ -134,8 +135,8 @@ int_prefix "<U0035><U0038>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -152,4 +153,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0056><U0045>"
country_ab3 "<U0056><U0045><U004E>"
country_num 862
+% YV
+country_car "<U0059><U0056>"
+% Español
+lang_name "<U0045><U0073><U0070><U0061><U00F1><U006F><U006C>"
+% es
+lang_ab "<U0065><U0073>"
+% spa
+lang_term "<U0073><U0070><U0061>"
+% spa
+lang_lib "<U0073><U0070><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/et_EE b/localedata/locales/et_EE
index c8bdc6b93d..dd905b9d7d 100644
--- a/localedata/locales/et_EE
+++ b/localedata/locales/et_EE
@@ -51,7 +51,7 @@ category "et_EE:2000";LC_PAPER
category "et_EE:2000";LC_NAME
category "et_EE:2000";LC_ADDRESS
category "et_EE:2000";LC_TELEPHONE
-
+category "et_EE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -2221,8 +2221,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/eu_ES b/localedata/locales/eu_ES
index c65f167d17..1ea5c4e3b0 100644
--- a/localedata/locales/eu_ES
+++ b/localedata/locales/eu_ES
@@ -47,7 +47,7 @@ category "eu_ES:2000";LC_PAPER
category "eu_ES:2000";LC_NAME
category "eu_ES:2000";LC_ADDRESS
category "eu_ES:2000";LC_TELEPHONE
-
+category "eu_ES:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -149,8 +149,8 @@ int_prefix "<U0033><U0034>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -167,4 +167,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0045><U0053>"
country_ab3 "<U0045><U0053><U0050>"
country_num 724
+% E
+country_car "<U0045>"
+% Euskara
+lang_name "<U0045><U0075><U0073><U006B><U0061><U0072><U0061>"
+% eu
+lang_ab "<U0065><U0075>"
+% eus
+lang_term "<U0065><U0075><U0073>"
+% eus
+lang_lib "<U0065><U0075><U0073>"
END LC_ADDRESS
diff --git a/localedata/locales/eu_ES@euro b/localedata/locales/eu_ES@euro
index 356bf622d7..1d2ac5a0dc 100644
--- a/localedata/locales/eu_ES@euro
+++ b/localedata/locales/eu_ES@euro
@@ -36,7 +36,7 @@ category "eu_ES@euro:2000";LC_PAPER
category "eu_ES@euro:2000";LC_NAME
category "eu_ES@euro:2000";LC_ADDRESS
category "eu_ES@euro:2000";LC_TELEPHONE
-
+category "eu_ES@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -86,7 +86,8 @@ copy "eu_ES"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "eu_ES"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/fa_IR b/localedata/locales/fa_IR
index 242978774f..c2e493e053 100644
--- a/localedata/locales/fa_IR
+++ b/localedata/locales/fa_IR
@@ -42,7 +42,7 @@ category "fa_IR:2005";LC_PAPER
category "fa_IR:2005";LC_NAME
category "fa_IR:2005";LC_ADDRESS
category "fa_IR:2005";LC_TELEPHONE
-
+category "fa_IR:2005";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -488,5 +488,6 @@ int_prefix "<U0039><U0038>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ff_SN b/localedata/locales/ff_SN
index 8012e30599..d3adda290c 100644
--- a/localedata/locales/ff_SN
+++ b/localedata/locales/ff_SN
@@ -137,7 +137,8 @@ width 210
END LC_PAPER
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MESSAGES
@@ -177,10 +178,16 @@ country_ab2 "<U0053><U004E>"
% SEN
country_ab3 "<U0053><U0045><U004E>"
country_num 686
+% SN
+country_car "<U0053><U004E>"
% Pulaar
lang_name "<U0050><U0075><U006C><U0061><U0061><U0072>"
% ff
lang_ab "<U0066><U0066>"
+% ful
+lang_term "<U0066><U0075><U006C>"
+% ful
+lang_lib "<U0066><U0075><U006C>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/fi_FI b/localedata/locales/fi_FI
index bd6805a257..e87878cdd4 100644
--- a/localedata/locales/fi_FI
+++ b/localedata/locales/fi_FI
@@ -16,7 +16,7 @@ comment_char %
% Date: 1996-10-15
% Application: general
% Users: general
-% Charset: ISO-8859-1
+% Charset: UTF-8, ISO-8859-15
% Distribution and use is free, also
% for commercial purposes.
%
@@ -230,7 +230,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -253,6 +254,7 @@ country_name "<U0053><U0075><U006F><U006D><U0069>"
country_post "<U0046><U0049>"
country_car "<U0046><U0049><U004E>"
country_isbn 952
+% suomi
lang_name "<U0073><U0075><U006F><U006D><U0069>"
lang_ab "<U0066><U0069>"
lang_term "<U0066><U0069><U006E>"
diff --git a/localedata/locales/fi_FI@euro b/localedata/locales/fi_FI@euro
index 8c610ccc61..02bc4bba81 100644
--- a/localedata/locales/fi_FI@euro
+++ b/localedata/locales/fi_FI@euro
@@ -8,7 +8,7 @@ comment_char %
% Date: 2000-08-20
% Application: general
% Users: general
-% Charset: ISO-8859-15
+% Charset: UTF-8, ISO-8859-15
% Distribution and use is free, also
% for commercial purposes.
@@ -72,7 +72,8 @@ copy "fi_FI"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "fi_FI"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/fil_PH b/localedata/locales/fil_PH
index c1a6b1026c..5f90910022 100644
--- a/localedata/locales/fil_PH
+++ b/localedata/locales/fil_PH
@@ -154,6 +154,7 @@ copy "tl_PH"
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -174,7 +175,21 @@ name_miss "<U0042><U0062><U002E>"
END LC_NAME
LC_ADDRESS
-copy "tl_PH"
+postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0068>/
+<U0020><U0025><U0073><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U0054><U0020><U0025><U007A><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+
+country_ab2 "<U0050><U0048>"
+country_ab3 "<U0050><U0048><U004C>"
+country_num 608
+% RP
+country_car "<U0052><U0050>"
+% Filipino
+lang_name "<U0046><U0069><U006C><U0069><U0070><U0069><U006E><U006F>"
+% fil
+lang_term "<U0066><U0069><U006C>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/fo_FO b/localedata/locales/fo_FO
index c19c2ea49c..49bb288e93 100644
--- a/localedata/locales/fo_FO
+++ b/localedata/locales/fo_FO
@@ -46,7 +46,7 @@ category "fo_FO:2000";LC_PAPER
category "fo_FO:2000";LC_NAME
category "fo_FO:2000";LC_ADDRESS
category "fo_FO:2000";LC_TELEPHONE
-
+category "fo_FO:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -124,8 +124,8 @@ int_prefix "<U0032><U0039><U0038>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -142,4 +142,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0046><U004F>"
country_ab3 "<U0046><U0052><U004F>"
country_num 234
+% FO
+country_car "<U0046><U004F>"
+% føroyskt
+lang_name "<U0066><U00F8><U0072><U006F><U0079><U0073><U006B><U0074>"
+% fo
+lang_ab "<U0066><U006F>"
+% fao
+lang_term "<U0066><U0061><U006F>"
END LC_ADDRESS
diff --git a/localedata/locales/fr_BE b/localedata/locales/fr_BE
index 43beac59c6..eec3a6dc7b 100644
--- a/localedata/locales/fr_BE
+++ b/localedata/locales/fr_BE
@@ -42,7 +42,7 @@ category "fr_BE:2000";LC_PAPER
category "fr_BE:2000";LC_NAME
category "fr_BE:2000";LC_ADDRESS
category "fr_BE:2000";LC_TELEPHONE
-
+category "fr_BE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -141,8 +141,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -159,4 +159,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0042><U0045>"
country_ab3 "<U0042><U0045><U004C>"
country_num 056
+% B
+country_car "<U0042>"
+% Français
+lang_name "<U0046><U0072><U0061><U006E><U00E7><U0061><U0069><U0073>"
+% fr
+lang_ab "<U0066><U0072>"
+% fra
+lang_term "<U0066><U0072><U0061>"
+% fre
+lang_lib "<U0066><U0072><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/fr_BE@euro b/localedata/locales/fr_BE@euro
index 08f9298a9a..4c8590568e 100644
--- a/localedata/locales/fr_BE@euro
+++ b/localedata/locales/fr_BE@euro
@@ -35,7 +35,7 @@ category "fr_BE@euro:2000";LC_PAPER
category "fr_BE@euro:2000";LC_NAME
category "fr_BE@euro:2000";LC_ADDRESS
category "fr_BE@euro:2000";LC_TELEPHONE
-
+category "fr_BE@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -71,7 +71,8 @@ copy "fr_BE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "fr_BE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/fr_CA b/localedata/locales/fr_CA
index 21eb6701ae..5e2c5a124f 100644
--- a/localedata/locales/fr_CA
+++ b/localedata/locales/fr_CA
@@ -43,7 +43,7 @@ category "fr_CA:2000";LC_PAPER
category "fr_CA:2000";LC_NAME
category "fr_CA:2000";LC_ADDRESS
category "fr_CA:2000";LC_TELEPHONE
-
+category "fr_CA:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -129,7 +129,8 @@ copy "en_CA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_CA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -146,8 +147,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U0041>"
country_ab3 "<U0043><U0041><U004E>"
country_num 124
+% CDN
+country_car "<U0043><U0044><U004E>"
+% Français
lang_name "<U0046><U0072><U0061><U006E><U00E7><U0061><U0069><U0073>"
-lang_ab "<U0066><U0072>"
-lang_term "<U0066><U0072><U0061>"
+% fr
+lang_ab "<U0066><U0072>"
+% fra
+lang_term "<U0066><U0072><U0061>"
+% fre
lang_lib "<U0066><U0072><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/fr_CH b/localedata/locales/fr_CH
index 5ab6af108d..b51f68bf10 100644
--- a/localedata/locales/fr_CH
+++ b/localedata/locales/fr_CH
@@ -43,7 +43,7 @@ category "fr_CH:2000";LC_PAPER
category "fr_CH:2000";LC_NAME
category "fr_CH:2000";LC_ADDRESS
category "fr_CH:2000";LC_TELEPHONE
-
+category "fr_CH:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -121,8 +121,8 @@ int_prefix "<U0034><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -139,4 +139,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U0048>"
country_ab3 "<U0043><U0048><U0045>"
country_num 756
+% CH
+country_car "<U0043><U0048>"
+% Français
+lang_name "<U0046><U0072><U0061><U006E><U00E7><U0061><U0069><U0073>"
+% fr
+lang_ab "<U0066><U0072>"
+% fra
+lang_term "<U0066><U0072><U0061>"
+% fre
+lang_lib "<U0066><U0072><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/fr_FR b/localedata/locales/fr_FR
index dd54bcf973..c88e06de53 100644
--- a/localedata/locales/fr_FR
+++ b/localedata/locales/fr_FR
@@ -44,7 +44,7 @@ category "fr_FR:2000";LC_PAPER
category "fr_FR:2000";LC_NAME
category "fr_FR:2000";LC_ADDRESS
category "fr_FR:2000";LC_TELEPHONE
-
+category "fr_FR:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -160,7 +160,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -177,4 +178,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0046><U0052>"
country_ab3 "<U0046><U0052><U0041>"
country_num 250
+% F
+country_car "<U0046>"
+% Français
+lang_name "<U0046><U0072><U0061><U006E><U00E7><U0061><U0069><U0073>"
+% fr
+lang_ab "<U0066><U0072>"
+% fra
+lang_term "<U0066><U0072><U0061>"
+% fre
+lang_lib "<U0066><U0072><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/fr_FR@euro b/localedata/locales/fr_FR@euro
index 5f858fdddd..c1ae9d8245 100644
--- a/localedata/locales/fr_FR@euro
+++ b/localedata/locales/fr_FR@euro
@@ -34,7 +34,7 @@ category "fr_FR@euro:2000";LC_PAPER
category "fr_FR@euro:2000";LC_NAME
category "fr_FR@euro:2000";LC_ADDRESS
category "fr_FR@euro:2000";LC_TELEPHONE
-
+category "fr_FR@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -71,7 +71,8 @@ copy "fr_FR"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "fr_FR"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/fr_LU b/localedata/locales/fr_LU
index 210027707a..fe138963cd 100644
--- a/localedata/locales/fr_LU
+++ b/localedata/locales/fr_LU
@@ -42,7 +42,7 @@ category "fr_LU:2000";LC_PAPER
category "fr_LU:2000";LC_NAME
category "fr_LU:2000";LC_ADDRESS
category "fr_LU:2000";LC_TELEPHONE
-
+category "fr_LU:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -138,8 +138,8 @@ int_prefix "<U0033><U0035><U0032>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -156,4 +156,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004C><U0055>"
country_ab3 "<U004C><U0055><U0058>"
country_num 442
+% L
+country_car "<U004C>"
+% Français
+lang_name "<U0046><U0072><U0061><U006E><U00E7><U0061><U0069><U0073>"
+% fr
+lang_ab "<U0066><U0072>"
+% fra
+lang_term "<U0066><U0072><U0061>"
+% fre
+lang_lib "<U0066><U0072><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/fr_LU@euro b/localedata/locales/fr_LU@euro
index 014ff1d5c4..1c2828ee8a 100644
--- a/localedata/locales/fr_LU@euro
+++ b/localedata/locales/fr_LU@euro
@@ -35,7 +35,7 @@ category "fr_LU@euro:2000";LC_PAPER
category "fr_LU@euro:2000";LC_NAME
category "fr_LU@euro:2000";LC_ADDRESS
category "fr_LU@euro:2000";LC_TELEPHONE
-
+category "fr_LU@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -71,7 +71,8 @@ copy "fr_LU"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "fr_LU"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/fur_IT b/localedata/locales/fur_IT
index 4dab671792..72aa489467 100644
--- a/localedata/locales/fur_IT
+++ b/localedata/locales/fur_IT
@@ -35,7 +35,7 @@ category "fur_IT:2000";LC_PAPER
category "fur_IT:2000";LC_NAME
category "fur_IT:2000";LC_ADDRESS
category "fur_IT:2000";LC_TELEPHONE
-
+category "fur_IT:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -124,7 +124,8 @@ copy "it_IT"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "it_IT"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -132,5 +133,18 @@ copy "it_IT"
END LC_NAME
LC_ADDRESS
-copy "it_IT"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0049><U0054>"
+country_ab3 "<U0049><U0054><U0041>"
+country_num 380
+% I
+country_car "<U0049>"
+% Furlan
+lang_name "<U0046><U0075><U0072><U006C><U0061><U006E>"
+% fur
+lang_term "<U0066><U0075><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/fy_DE b/localedata/locales/fy_DE
index df894f21cf..046d775d6f 100644
--- a/localedata/locales/fy_DE
+++ b/localedata/locales/fy_DE
@@ -45,14 +45,19 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_post "<U0044>"
country_ab2 "<U0044><U0045>"
country_ab3 "<U0044><U0045><U0055>"
+% D
country_car "<U0044>"
country_num 276
country_isbn "3"
% FIXME country_name in Low Saxon ?
-lang_name "Frisian"
-lang_ab "fy"
-% FIXME lang_term for Low Saxon ?
-% FIXME lang_lib for Low Saxon ?
+% Frysk
+lang_name "<U0046><U0072><U0079><U0073><U006B>"
+% fy
+lang_ab "<U0066><U0079>"
+% fry
+lang_term "<U0066><U0072><U0079>"
+% fry
+lang_lib "<U0066><U0072><U0079>"
END LC_ADDRESS
LC_COLLATE
@@ -85,7 +90,8 @@ copy "de_DE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "de_DE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NUMERIC
diff --git a/localedata/locales/fy_NL b/localedata/locales/fy_NL
index 0855a55602..e097c2a2fa 100644
--- a/localedata/locales/fy_NL
+++ b/localedata/locales/fy_NL
@@ -105,7 +105,8 @@ copy "nl_NL"
END LC_MONETARY
LC_MEASUREMENT
-copy "nl_NL"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MESSAGES
@@ -130,9 +131,13 @@ country_ab2 "<U004E><U004C>"
country_ab3 "<U004E><U004C><U0044>"
country_num 528
country_car "<U004E><U004C>"
-lang_name "<U0046><U0072><U0069><U0073><U0069><U0061><U006E>"
-lang_ab "<U0066><U0079>"
-lang_term "<U0066><U0072><U0079>"
+% Frysk
+lang_name "<U0046><U0072><U0079><U0073><U006B>"
+% fy
+lang_ab "<U0066><U0079>"
+% fry
+lang_term "<U0066><U0072><U0079>"
+% fry
lang_lib "<U0066><U0072><U0079>"
END LC_ADDRESS
diff --git a/localedata/locales/ga_IE b/localedata/locales/ga_IE
index aa95d7ecdb..e9269dcb22 100644
--- a/localedata/locales/ga_IE
+++ b/localedata/locales/ga_IE
@@ -40,7 +40,7 @@ category "ga_IE:2000";LC_PAPER
category "ga_IE:2000";LC_NAME
category "ga_IE:2000";LC_ADDRESS
category "ga_IE:2000";LC_TELEPHONE
-
+category "ga_IE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -140,8 +140,8 @@ int_prefix "<U0033><U0035><U0033>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -158,4 +158,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0049><U0045>"
country_ab3 "<U0049><U0052><U004C>"
country_num 372
+% IRL
+country_car "<U0049><U0052><U004C>"
+% Gaeilge
+lang_name "<U0047><U0061><U0065><U0069><U006C><U0067><U0065>"
+% ga
+lang_ab "<U0067><U0061>"
+% gle
+lang_term "<U0067><U006C><U0065>"
+% gle
+lang_lib "<U0067><U006C><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/ga_IE@euro b/localedata/locales/ga_IE@euro
index c9474a594d..99422e31d0 100644
--- a/localedata/locales/ga_IE@euro
+++ b/localedata/locales/ga_IE@euro
@@ -34,7 +34,7 @@ category "ga_IE@euro:2000";LC_PAPER
category "ga_IE@euro:2000";LC_NAME
category "ga_IE@euro:2000";LC_ADDRESS
category "ga_IE@euro:2000";LC_TELEPHONE
-
+category "ga_IE@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -70,7 +70,8 @@ copy "ga_IE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "ga_IE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/gd_GB b/localedata/locales/gd_GB
index 4d422840bc..41943f522f 100644
--- a/localedata/locales/gd_GB
+++ b/localedata/locales/gd_GB
@@ -1,56 +1,47 @@
-escape_char /
-comment_char %
-% charset "ISO_8859-15"
-% Distribution and use is free, also for commercial purposes.
-
-
-% WARNING: UNOFFICIAL; EXPERIMENTAL.
+comment_char %
+escape_char /
+% Charset: UTF-8
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Revision 1.1 created by Alastair McKinstry <mckinstry@computer.org>, 2000-06-12
+% Revision 1.2 created by Michael Bauer <fios@akerbeltz.org>, 2013-04-25
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_IDENTIFICATION
-title "Scots Gaelic language locale for Great Britain"
-source "Alastair McKinstry"
-address "Croí Lár, Ballinahalla, Maigh Cuilinn, Co. Gaillimh, Ireland"
-contact "Alastair McKinstry"
-email "mckinstry@computer.org"
-tel "+353 91 556177"
-language "Scots Gaelic"
-territory "Great Britain"
-date "2000-06-12"
-revision "1.1"
-
-category gd_GB:2000;LC_IDENTIFICATION
-category gd_GB:2000;LC_CTYPE
-category gd_GB:2000;LC_COLLATE
-category gd_GB:2000;LC_TIME
-category gd_Gb:2000;LC_NUMERIC
-category gd_GB:2000;LC_PAPER
-category gd_GB:2000;LC_NAME
-category gd_GB:2000;LC_ADDRESS
-category gd_GB:2000;LC_TELEPHONE
-category gd_GB:2000;LC_MEASUREMENT
-
+title "Scots Gaelic language locale for Great Britain"
+source "Akerbeltz"
+address "1/2, 47 Wilton Street, Glasgow G20 6RT, UK"
+contact "Michael Bauer"
+email "fios@akerbeltz.org"
+tel "+44 141 946 4437"
+language "Scots Gaelic"
+territory "Great Britain"
+revision "1.2"
+date "2013-04-25"
+%
+category "gd_GB:2000";LC_IDENTIFICATION
+category "gd_GB:2000";LC_CTYPE
+category "gd_GB:2000";LC_COLLATE
+category "gd_GB:2000";LC_TIME
+category "gd_GB:2000";LC_NUMERIC
+category "gd_GB:2000";LC_MONETARY
+category "gd_GB:2000";LC_PAPER
+category "gd_GB:2000";LC_MEASUREMENT
+category "gd_GB:2000";LC_MESSAGES
+category "gd_GB:2000";LC_NAME
+category "gd_GB:2000";LC_ADDRESS
+category "gd_GB:2000";LC_TELEPHONE
END LC_IDENTIFICATION
-LC_ADDRESS
-% FIXME
-postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
-<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
-<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
-<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
-<U004E><U0025><U0063><U0025><U004E>"
-
-country_name "<U0042><U0072><U0065><U0061><U0074><U0061><U0069><U006E><U006E><U0020><U004D><U0068><U00F2><U0072>"
-country_ab2 "GB"
-country_ab3 "GBR"
-country_num 826
-country_car "GB"
-country_isbn "0"
-lang_name "<U0047><U0061><U0069><U0064><U0068><U006C><U0069><U0067><U0020><U006E><U0061><U0020><U0068><U002D><U0041><U006C><U0062><U0061><U006E><U00F1>"
-lang_ab "gd"
-lang_term "gla"
-lang_lib "gla"
-END LC_ADDRESS
-
LC_CTYPE
copy "i18n"
translit_start
@@ -58,82 +49,116 @@ include "translit_combining";""
translit_end
END LC_CTYPE
-LC_PAPER
-copy "en_GB"
-END LC_PAPER
-
-LC_MEASUREMENT
-copy "en_GB"
-END LC_MEASUREMENT
-
-LC_TELEPHONE
-copy "en_GB"
-END LC_TELEPHONE
-
LC_COLLATE
-copy "en_DK"
+copy "iso14651_t1"
END LC_COLLATE
-LC_MONETARY
-copy "en_GB"
-END LC_MONETARY
+LC_TIME
+% Am Faoilleach, An Gearran, Am Màrt, An Giblean, An Cèitean, An t-Ògmhios, An t-Iuchar, An Lùnastal, An t-Sultain, An Dàmhair, An t-Samhain, An Dùbhlachd
+mon "<U0041><U006D><U0020><U0046><U0061><U006F><U0069><U006C><U006C><U0065><U0061><U0063><U0068>";/
+ "<U0041><U006E><U0020><U0047><U0065><U0061><U0072><U0072><U0061><U006E>";/
+ "<U0041><U006D><U0020><U004D><U00E0><U0072><U0074>";/
+ "<U0041><U006E><U0020><U0047><U0069><U0062><U006C><U0065><U0061><U006E>";/
+ "<U0041><U006E><U0020><U0043><U00E8><U0069><U0074><U0065><U0061><U006E>";/
+ "<U0041><U006E><U0020><U0074><U002D><U00D2><U0067><U006D><U0068><U0069><U006F><U0073>";/
+ "<U0041><U006E><U0020><U0074><U002D><U0049><U0075><U0063><U0068><U0061><U0072>";/
+ "<U0041><U006E><U0020><U004C><U00F9><U006E><U0061><U0073><U0074><U0061><U006C>";/
+ "<U0041><U006E><U0020><U0074><U002D><U0053><U0075><U006C><U0074><U0061><U0069><U006E>";/
+ "<U0041><U006E><U0020><U0044><U00E0><U006D><U0068><U0061><U0069><U0072>";/
+ "<U0041><U006E><U0020><U0074><U002D><U0053><U0061><U006D><U0068><U0061><U0069><U006E>";/
+ "<U0041><U006E><U0020><U0044><U00F9><U0062><U0068><U006C><U0061><U0063><U0068><U0064>"
+% Faoi, Gearr, Màrt, Gibl, Mhàrt, Ògmh, Iuch, Lùna, Sult, Dàmh, Samh, Dùbh
+abmon "<U0046><U0061><U006F><U0069>";/
+ "<U0047><U0065><U0061><U0072><U0072>";/
+ "<U004D><U00E0><U0072><U0074>";/
+ "<U0047><U0069><U0062><U006C>";/
+ "<U004D><U0068><U00E0><U0072><U0074>";/
+ "<U00D2><U0067><U006D><U0068>";/
+ "<U0049><U0075><U0063><U0068>";/
+ "<U004C><U00F9><U006E><U0061>";/
+ "<U0053><U0075><U006C><U0074>";/
+ "<U0044><U00E0><U006D><U0068>";/
+ "<U0053><U0061><U006D><U0068>";/
+ "<U0044><U00F9><U0062><U0068>"
+% DiDòmhnaich, DiLuain, DiMàirt, DiCiadain, DiarDaoin, DihAoine, DiSathairne
+day "<U0044><U0069><U0044><U00F2><U006D><U0068><U006E><U0061><U0069><U0063><U0068>";/
+ "<U0044><U0069><U004C><U0075><U0061><U0069><U006E>";/
+ "<U0044><U0069><U004D><U00E0><U0069><U0072><U0074>";/
+ "<U0044><U0069><U0043><U0069><U0061><U0064><U0061><U0069><U006E>";/
+ "<U0044><U0069><U0061><U0072><U0044><U0061><U006F><U0069><U006E>";/
+ "<U0044><U0069><U0068><U0041><U006F><U0069><U006E><U0065>";/
+ "<U0044><U0069><U0053><U0061><U0074><U0068><U0061><U0069><U0072><U006E><U0065>"
+% DiD, DiL, DiM, DiC, Dia, Dih, DiS
+abday "<U0044><U0069><U0044>";/
+ "<U0044><U0069><U004C>";/
+ "<U0044><U0069><U004D>";/
+ "<U0044><U0069><U0043>";/
+ "<U0044><U0069><U0061>";/
+ "<U0044><U0069><U0068>";/
+ "<U0044><U0069><U0053>"
+% %a %d %b %Y %T %Z
+d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+% %d/%m/%y
+d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+% %r
+t_fmt "<U0025><U0072>"
+% m, f
+am_pm "<U006D>";/
+ "<U0066>"
+t_fmt_ampm ""
+END LC_TIME
LC_NUMERIC
copy "en_GB"
END LC_NUMERIC
-LC_TIME
-
-abday "<U0044><U0069><U0064><U006F>";"<U0044><U0069><U006C><U0075>";/
- "<U0044><U0069><U006D>";"<U0044><U0069><U0063>";/
- "<U0044><U0069><U0061><U0072>";"<U0044><U0069><U0068><U0061>";/
- "<U0044><U0069><U0073><U0061>"
-
-day "<U0044><U0069><U0064><U00F2><U006D><U0068><U006E><U0061><U0069><U0063><U0068>";/
- "<U0044><U0069><U006C><U0075><U0061><U0069><U006E>";/
- "<U0044><U0069><U006D><U00E0><U0069><U0072><U0074>";/
- "<U0044><U0069><U0063><U0069><U0061><U0064><U0061><U0069><U006E>";/
- "<U0044><U0069><U0061><U0072><U0064><U0061><U006F><U0069><U006E>";/
- "<U0044><U0069><U0068><U0061><U006F><U0069><U006E><U0065>";/
- "<U0044><U0069><U0073><U0061><U0074><U0068><U0061><U0069><U0072><U006E><U0065>"
-
-abmon "<U0046><U0061><U006F>";"<U0047><U0065><U0061>";/
- "<U004D><U00E0><U0072>";"<U0047><U0069><U0062>";/
- "<U004D><U0068><U00E0>";"<U004F><U0067><U004D>";/
- "<U006C><U0075><U0063>";"<U004C><U00F9><U006E>";/
- "<U0053><U0075><U006C>";"<U0044><U0061><U006D>";/
- "<U0053><U0061><U006D>";"<U0044><U00F9><U0062>"
+LC_MONETARY
+copy "en_GB"
+END LC_MONETARY
-mon "<U0041><U006D><U0020><U0046><U0061><U006F><U0069><U006C><U0074><U0065><U0061><U0063><U0068>";/
- "<U0041><U006E><U0020><U0047><U0065><U0061><U0072><U0072><U0061><U006E>";/
- "<U0041><U006D><U0020><U004D><U00E0><U0072><U0074>";/
- "<U0041><U006E><U0020><U0047><U0069><U0062><U006C><U0065><U0061><U006E>";/
- "<U0041><U0027><U0020><U004D><U0068><U00E0><U0069><U0067><U0068>";/
- "<U0041><U006E><U0020><U0074><U002D><U004D><U0068><U00EC><U006F><U0073>";/
- "<U0041><U006E><U0020><U0074><U002D><U006C><U0075><U0063><U0068><U0061><U0072>";/
- "<U0041><U006E><U0020><U004C><U00F9><U006E><U0061><U0073><U0064><U0061><U006C>";/
- "<U0041><U006E><U0020><U0074><U002D><U0053><U0075><U006C><U0074><U0061><U0069><U006E>";/
- "<U0041><U006E><U0020><U0044><U0061><U006D><U0068><U0061><U0069><U0072>";/
- "<U0041><U006E><U0020><U0074><U002D><U0053><U0061><U006D><U0068><U0061><U0069><U006E>";/
- "<U0041><U006E><U0020><U0044><U00F9><U0062><U0068><U006C><U0061><U0063><U0068><U0064>"
+LC_PAPER
+copy "en_GB"
+END LC_PAPER
-d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
-d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
-t_fmt "<U0025><U0054>"
-am_pm "";""
-t_fmt_ampm ""
-first_workday 2
-first_weekday 2
-END LC_TIME
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
LC_MESSAGES
-% FIXME
-yesexpr "<U005E><U005B><U0079><U0059><U005D><U002E><U002A>"
-% FIXME
-noexpr "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
+% ^[tTyY].*
+yesexpr "<U005E><U005B><U0074><U0054><U0079><U0059><U005D><U002E><U002A>"
+% ^[cCnN].*
+noexpr "<U005E><U005B><U0063><U0043><U006E><U004E><U005D><U002E><U002A>"
END LC_MESSAGES
LC_NAME
-% FIXME
copy "en_GB"
END LC_NAME
+
+LC_ADDRESS
+% %f%N%a%N%d%N%b%N%s %h %e %r%N%z %T%N%S%N%c%N
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E><U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073><U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025><U004E><U0025><U007A><U0020><U0025><U0054><U0025><U004E><U0025><U0053><U0025><U004E><U0025><U0063><U0025><U004E>"
+% A' Bhreatainn Mhòr
+country_name "<U0042><U0072><U0065><U0061><U0074><U0061><U0069><U006E><U006E><U0020><U004D><U0068><U00F2><U0072>"
+% GB
+country_ab2 "<U0047><U0042>"
+% GBR
+country_ab3 "<U0047><U0042><U0052>"
+country_num 826
+% GB
+country_car "<U0047><U0042>"
+country_isbn 0
+% Gàidhlig
+lang_name "<U0047><U00E0><U0069><U0064><U0068><U006C><U0069><U0067>"
+% gd
+lang_ab "<U0067><U0064>"
+% gla
+lang_term "<U0067><U006C><U0061>"
+% gla
+lang_lib "<U0067><U006C><U0061>"
+END LC_ADDRESS
+
+LC_TELEPHONE
+copy "en_GB"
+END LC_TELEPHONE
diff --git a/localedata/locales/gez_ER b/localedata/locales/gez_ER
index 229c9b8397..fb8f7ca7d1 100644
--- a/localedata/locales/gez_ER
+++ b/localedata/locales/gez_ER
@@ -70,7 +70,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ER"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
@@ -107,10 +108,11 @@ country_post "<U0045><U0052><U0049>"
country_ab2 "<U0045><U0052>"
country_ab3 "<U0045><U0052><U0049>"
country_num 232
-% country_car unknown
+% ER
+country_car "<U0045><U0052>"
% country_isbn unknown, Need ISO 2108
lang_name "<U130D><U12D5><U12DD>"
-%lang_ab "<U0067><U0065><U007A>"
+% gez
lang_term "<U0067><U0065><U007A>"
%
% Petter Reinholdtsen reports uncommenting the below breaks compilation
diff --git a/localedata/locales/gez_ER@abegede b/localedata/locales/gez_ER@abegede
index 9b938f6276..f3e0b9afc4 100644
--- a/localedata/locales/gez_ER@abegede
+++ b/localedata/locales/gez_ER@abegede
@@ -115,7 +115,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "gez_ER"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
diff --git a/localedata/locales/gez_ET b/localedata/locales/gez_ET
index 24e09f6a2f..13cd5f4e63 100644
--- a/localedata/locales/gez_ET
+++ b/localedata/locales/gez_ET
@@ -70,7 +70,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ET"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
@@ -107,10 +108,10 @@ country_post "<U0045><U0054><U0048>"
country_ab2 "<U0045><U0054>"
country_ab3 "<U0045><U0054><U0048>"
country_num 231 % 210 found in at least one ISO 3166 doc
-% country_car unknown
+% ETH
+country_car "<U0045><U0054><U0048>"
% country_isbn unknown, Need ISO 2108
lang_name "<U130D><U12D5><U12DD>"
-%lang_ab "<U0067><U0065><U007A>"
lang_term "<U0067><U0065><U007A>"
%
% Petter Reinholdtsen reports uncommenting the below breaks compilation
diff --git a/localedata/locales/gez_ET@abegede b/localedata/locales/gez_ET@abegede
index 3a97c55b72..3377c1e550 100644
--- a/localedata/locales/gez_ET@abegede
+++ b/localedata/locales/gez_ET@abegede
@@ -71,7 +71,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "gez_ET"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
diff --git a/localedata/locales/gl_ES b/localedata/locales/gl_ES
index 8414fff3f0..6bb2ae623f 100644
--- a/localedata/locales/gl_ES
+++ b/localedata/locales/gl_ES
@@ -43,7 +43,7 @@ category "gl_ES:2000";LC_PAPER
category "gl_ES:2000";LC_NAME
category "gl_ES:2000";LC_ADDRESS
category "gl_ES:2000";LC_TELEPHONE
-
+category "gl_ES:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -139,8 +139,8 @@ int_prefix "<U0033><U0034>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -157,4 +157,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0045><U0053>"
country_ab3 "<U0045><U0053><U0050>"
country_num 724
+% E
+country_car "<U0045>"
+% Galego
+lang_name "<U0047><U0061><U006C><U0065><U0067><U006F>"
+% gl
+lang_ab "<U0067><U006C>"
+% glg
+lang_term "<U0067><U006C><U0067>"
+% glg
+lang_lib "<U0067><U006C><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/gl_ES@euro b/localedata/locales/gl_ES@euro
index 534a092bf4..20a3341969 100644
--- a/localedata/locales/gl_ES@euro
+++ b/localedata/locales/gl_ES@euro
@@ -36,7 +36,7 @@ category "gl_ES@euro:2000";LC_PAPER
category "gl_ES@euro:2000";LC_NAME
category "gl_ES@euro:2000";LC_ADDRESS
category "gl_ES@euro:2000";LC_TELEPHONE
-
+category "gl_ES@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -72,7 +72,8 @@ copy "gl_ES"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "gl_ES"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/gu_IN b/localedata/locales/gu_IN
index 49cd1e2b7f..1e50441c51 100644
--- a/localedata/locales/gu_IN
+++ b/localedata/locales/gu_IN
@@ -29,7 +29,7 @@ category "gu_IN:2000";LC_PAPER
category "gu_IN:2000";LC_NAME
category "gu_IN:2000";LC_ADDRESS
category "gu_IN:2000";LC_TELEPHONE
-
+category "gu_IN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -215,6 +215,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% ગà«àªœàª°àª¾àª¤à«€
+lang_name "<U0A97><U0AC1><U0A9C><U0AB0><U0ABE><U0AA4><U0AC0>"
+% gu
+lang_ab "<U0067><U0075>"
+% guj
+lang_term "<U0067><U0075><U006A>"
+% guj
+lang_lib "<U0067><U0075><U006A>"
END LC_ADDRESS
@@ -224,5 +234,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/gv_GB b/localedata/locales/gv_GB
index f83ddeabbb..7aede2e8b9 100644
--- a/localedata/locales/gv_GB
+++ b/localedata/locales/gv_GB
@@ -45,7 +45,7 @@ category "gv_GB:2000";LC_PAPER
category "gv_GB:2000";LC_NAME
category "gv_GB:2000";LC_ADDRESS
category "gv_GB:2000";LC_TELEPHONE
-
+category "gv_GB:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -154,8 +154,8 @@ int_prefix "<U0034><U0034>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -172,4 +172,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0047><U0042>"
country_ab3 "<U0047><U0042><U0052>"
country_num 826
+% GB
+country_car "<U0047><U0042>"
+% y Ghaelg
+lang_name "<U0079><U0020><U0047><U0068><U0061><U0065><U006C><U0067>"
+% gv
+lang_ab "<U0067><U0076>"
+% glv
+lang_term "<U0067><U006C><U0076>"
+% glv
+lang_lib "<U0067><U006C><U0076>"
END LC_ADDRESS
diff --git a/localedata/locales/ha_NG b/localedata/locales/ha_NG
index 8c431cc8e9..6ea1a88a4b 100644
--- a/localedata/locales/ha_NG
+++ b/localedata/locales/ha_NG
@@ -38,7 +38,7 @@ category "ha_NG:2000";LC_PAPER
category "ha_NG:2000";LC_NAME
category "ha_NG:2000";LC_ADDRESS
category "ha_NG:2000";LC_TELEPHONE
-
+category "ha_NG:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -227,7 +227,8 @@ copy "en_NG"
END LC_PAPER
LC_MEASUREMENT
-copy "en_NG"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/hak_TW b/localedata/locales/hak_TW
new file mode 100644
index 0000000000..454ebadda6
--- /dev/null
+++ b/localedata/locales/hak_TW
@@ -0,0 +1,220 @@
+comment_char %
+escape_char /
+% Charset: UTF-8
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Hakka Chinese locale for the Republic of China
+%
+% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
+%
+% build with: localedef -f UTF-8 -i hak_TW hak_TW
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_IDENTIFICATION
+title "Hakka Chinese locale for the Republic of China"
+source ""
+address ""
+contact ""
+email "bug-glibc-locales@gnu.org"
+tel ""
+fax ""
+language "Hakka Chinese"
+territory "Republic of China"
+revision "0.1"
+date "2013-06-02"
+%
+category "hak_TW:2000";LC_IDENTIFICATION
+category "hak_TW:2000";LC_CTYPE
+category "hak_TW:2000";LC_COLLATE
+category "hak_TW:2000";LC_TIME
+category "hak_TW:2000";LC_NUMERIC
+category "hak_TW:2000";LC_MONETARY
+category "hak_TW:2000";LC_PAPER
+category "hak_TW:2000";LC_MEASUREMENT
+category "hak_TW:2000";LC_MESSAGES
+category "hak_TW:2000";LC_NAME
+category "hak_TW:2000";LC_ADDRESS
+category "hak_TW:2000";LC_TELEPHONE
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "i18n"
+class "hanzi"; /
+<U3007>;/
+<U3400>..<U4DBF>;/
+<U4E00>..<U9FA5>;/
+<UF900>..<UFA6A>;/
+<U00020000>..<U0002A6D6>;/
+<U0002F800>..<U0002FA1D>
+END LC_CTYPE
+
+LC_COLLATE
+copy "iso14651_t1"
+END LC_COLLATE
+
+LC_TIME
+% 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, ä¹æœˆ, å月, å一月, å二月
+mon "<U4E00><U6708>";/
+ "<U4E8C><U6708>";/
+ "<U4E09><U6708>";/
+ "<U56DB><U6708>";/
+ "<U4E94><U6708>";/
+ "<U516D><U6708>";/
+ "<U4E03><U6708>";/
+ "<U516B><U6708>";/
+ "<U4E5D><U6708>";/
+ "<U5341><U6708>";/
+ "<U5341><U4E00><U6708>";/
+ "<U5341><U4E8C><U6708>"
+% 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月
+abmon "<U0020><U0031><U6708>";/
+ "<U0020><U0032><U6708>";/
+ "<U0020><U0033><U6708>";/
+ "<U0020><U0034><U6708>";/
+ "<U0020><U0035><U6708>";/
+ "<U0020><U0036><U6708>";/
+ "<U0020><U0037><U6708>";/
+ "<U0020><U0038><U6708>";/
+ "<U0020><U0039><U6708>";/
+ "<U0031><U0030><U6708>";/
+ "<U0031><U0031><U6708>";/
+ "<U0031><U0032><U6708>"
+% 禮拜日, 禮拜一, 禮拜二, 禮拜三, 禮拜四, 禮拜五, 禮拜六
+day "<U79AE><U62DC><U65E5>";/
+ "<U79AE><U62DC><U4E00>";/
+ "<U79AE><U62DC><U4E8C>";/
+ "<U79AE><U62DC><U4E09>";/
+ "<U79AE><U62DC><U56DB>";/
+ "<U79AE><U62DC><U4E94>";/
+ "<U79AE><U62DC><U516D>"
+% 日, 一, 二, 三, 四, 五, 六
+abday "<U65E5>";/
+ "<U4E00>";/
+ "<U4E8C>";/
+ "<U4E09>";/
+ "<U56DB>";/
+ "<U4E94>";/
+ "<U516D>"
+% %Y年%m月%d日 (%A) %H點%M分%S秒
+d_t_fmt "<U0025><U0059><U5E74><U0025><U006D><U6708><U0025><U0064><U65E5><U0020><U0028><U0025><U0041><U0029><U0020><U0025><U0048><U9EDE><U0025><U004D><U5206><U0025><U0053><U79D2>"
+% %Y年%m月%d日
+d_fmt "<U0025><U0059><U5E74><U0025><U006D><U6708><U0025><U0064><U65E5>"
+% %H點%M分%S秒
+t_fmt "<U0025><U0048><U9EDE><U0025><U004D><U5206><U0025><U0053><U79D2>"
+% 上æ™, 下æ™
+am_pm "<U4E0A><U665D>";"<U4E0B><U665D>"
+% %p %I點%M分%S秒
+t_fmt_ampm "<U0025><U0070><U0020><U0025><U0049><U9EDE><U0025><U004D><U5206><U0025><U0053><U79D2>"
+% %Yå¹´ %b %eæ—¥ %A %H:%M:%S %Z
+date_fmt "<U0025><U0059><U5E74><U0020><U0025><U0062><U0020><U0025><U0065><U65E5><U0020><U0025><U0041><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U005A>"
+END LC_TIME
+
+LC_NUMERIC
+% .
+decimal_point "<U002E>"
+% ,
+thousands_sep "<U002C>"
+grouping 4
+END LC_NUMERIC
+
+LC_MONETARY
+% NT$
+currency_symbol "<U004E><U0054><U0024>"
+% TWD
+int_curr_symbol "<U0054><U0057><U0044><U0020>"
+% .
+mon_decimal_point "<U002E>"
+% ,
+mon_thousands_sep "<U002C>"
+mon_grouping 4
+positive_sign ""
+% -
+negative_sign "<U002D>"
+frac_digits 2
+int_frac_digits 2
+p_cs_precedes 1
+p_sep_by_space 0
+n_cs_precedes 1
+n_sep_by_space 0
+p_sign_posn 1
+n_sign_posn 1
+int_p_cs_precedes 1
+int_p_sep_by_space 0
+int_n_cs_precedes 1
+int_n_sep_by_space 0
+int_p_sign_posn 1
+int_n_sign_posn 1
+END LC_MONETARY
+
+LC_PAPER
+height 297
+width 210
+END LC_PAPER
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
+
+LC_MESSAGES
+% ^[yYä¿‚]
+yesexpr "<U005E><U005B><U0079><U0059><U4FC2><U005D>"
+% ^[nN毋]
+noexpr "<U005E><U005B><U006E><U004E><U6BCB><U005D>"
+END LC_MESSAGES
+
+LC_NAME
+% %f%t%g%t%d
+name_fmt "<U0025><U0066><U0025><U0074><U0025><U0067><U0025><U0074><U0025><U0064>"
+% å›
+name_gen "<U541B>"
+% å°å§
+name_miss "<U5C0F><U59D0>"
+% 先生
+name_mr "<U5148><U751F>"
+% 夫人
+name_mrs "<U592B><U4EBA>"
+% 女士
+name_ms "<U5973><U58EB>"
+END LC_NAME
+
+LC_ADDRESS
+% %c%N%T%N%s %h %e %r%N%b%N%d%N%f%N%a%N
+postal_fmt "<U0025><U0063><U0025><U004E><U0025><U0054><U0025><U004E><U0025><U0073><U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0064><U0025><U004E><U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>"
+% 中è¯æ°‘國
+country_name "<U4E2D><U83EF><U6C11><U570B>"
+% TW
+country_post "<U0054><U0057>"
+% TW
+country_ab2 "<U0054><U0057>"
+% TWN
+country_ab3 "<U0054><U0057><U004E>"
+country_num 158
+country_isbn 957
+% 漢語客家語
+lang_name "<U6F22><U8A9E><U5BA2><U5BB6><U8A9E>"
+% hak
+lang_term "<U0068><U0061><U006B>"
+% hak
+lang_lib "<U0068><U0061><U006B>"
+END LC_ADDRESS
+
+LC_TELEPHONE
+% +%c-%a-%l
+tel_int_fmt "<U002B><U0025><U0063><U002D><U0025><U0061><U002D><U0025><U006C>"
+% %A-%l
+tel_dom_fmt "<U0025><U0041><U002D><U0025><U006C>"
+% 00
+int_select "<U0030><U0030>"
+% 886
+int_prefix "<U0038><U0038><U0036>"
+END LC_TELEPHONE
diff --git a/localedata/locales/he_IL b/localedata/locales/he_IL
index e744d47fe9..fe8125bed9 100644
--- a/localedata/locales/he_IL
+++ b/localedata/locales/he_IL
@@ -47,7 +47,7 @@ category "he_IL:2000";LC_PAPER
category "he_IL:2000";LC_NAME
category "he_IL:2000";LC_ADDRESS
category "he_IL:2000";LC_TELEPHONE
-
+category "he_IL:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -144,8 +144,8 @@ int_prefix "<U0039><U0037><U0032>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -162,4 +162,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0049><U004C>"
country_ab3 "<U0049><U0053><U0052>"
country_num 376
+% IL
+country_car "<U0049><U004C>"
+% he
+lang_ab "<U0068><U0065>"
+% heb
+lang_term "<U0068><U0065><U0062>"
+% heb
+lang_lib "<U0068><U0065><U0062>"
END LC_ADDRESS
diff --git a/localedata/locales/hi_IN b/localedata/locales/hi_IN
index 0ff10a1158..0670fff567 100644
--- a/localedata/locales/hi_IN
+++ b/localedata/locales/hi_IN
@@ -28,7 +28,7 @@ category "hi_IN:2000";LC_PAPER
category "hi_IN:2000";LC_NAME
category "hi_IN:2000";LC_ADDRESS
category "hi_IN:2000";LC_TELEPHONE
-
+category "hi_IN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -215,6 +215,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% हिनà¥à¤¦à¥€
+lang_name "<U0939><U093F><U0928><U094D><U0926><U0940>"
+% hi
+lang_ab "<U0068><U0069>"
+% hin
+lang_term "<U0068><U0069><U006E>"
+% hin
+lang_lib "<U0068><U0069><U006E>"
END LC_ADDRESS
@@ -228,7 +238,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT
-% category generated by IBM Basic CountryPack Transformer.
+% metric
measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/hne_IN b/localedata/locales/hne_IN
index f1c3cfdc61..1699b07042 100644
--- a/localedata/locales/hne_IN
+++ b/localedata/locales/hne_IN
@@ -28,7 +28,7 @@ category "hne_IN:2008";LC_PAPER
category "hne_IN:2008";LC_NAME
category "hne_IN:2008";LC_ADDRESS
category "hne_IN:2008";LC_TELEPHONE
-
+category "hne_IN:2008";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -157,16 +157,18 @@ END LC_NAME
LC_ADDRESS
-% This is the ISO_IEC TR14652 Locale definition for the
-% LC_ADDRESS
postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
<U0025><U0062><U0025><U0065><U0025><U0072>"
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
-lang_term "<U0068><U006E><U0065>"
-
+% IND
+country_car "<U0049><U004E><U0044>"
+% छतà¥à¤¤à¥€à¤¸à¤—ढ़ी
+lang_name "<U091B><U0924><U094D><U0924><U0940><U0938><U0917><U0922><U093C><U0940>"
+% hne
+lang_term "<U0068><U006E><U0065>"
END LC_ADDRESS
@@ -176,5 +178,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/hr_HR b/localedata/locales/hr_HR
index f4f1cc474a..177d33a31e 100644
--- a/localedata/locales/hr_HR
+++ b/localedata/locales/hr_HR
@@ -44,7 +44,7 @@ category "hr_HR:2000";LC_PAPER
category "hr_HR:2000";LC_NAME
category "hr_HR:2000";LC_ADDRESS
category "hr_HR:2000";LC_TELEPHONE
-
+category "hr_HR:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -2229,8 +2229,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -2247,4 +2247,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0048><U0052>"
country_ab3 "<U0048><U0052><U0056>"
country_num 191
+% HR
+country_car "<U0048><U0052>"
+% hrvatski
+lang_name "<U0068><U0072><U0076><U0061><U0074><U0073><U006B><U0069>"
+% hr
+lang_ab "<U0068><U0072>"
+% hrv
+lang_term "<U0068><U0072><U0076>"
END LC_ADDRESS
diff --git a/localedata/locales/hsb_DE b/localedata/locales/hsb_DE
index 0929897c8a..db130fd9e1 100644
--- a/localedata/locales/hsb_DE
+++ b/localedata/locales/hsb_DE
@@ -31,7 +31,7 @@ category "i18n:1997";LC_PAPER
category "i18n:1997";LC_NAME
category "i18n:1997";LC_ADDRESS
category "i18n:1997";LC_TELEPHONE
-
+category "i18n:1997";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -2187,7 +2187,8 @@ copy "de_DE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "de_DE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -2214,7 +2215,9 @@ country_car "<U0044>"
country_isbn 3
lang_name "<U0048><U006F><U0072><U006E><U006A><U006F><U0073><U0065>/
<U0072><U0062><U0161><U0107><U0069><U006E><U0061>"
-lang_ab ""
-lang_term "<U0068><U0073><U0062>"
-lang_lib "<U0068><U0073><U0062>"
+lang_ab ""
+% hsb
+lang_term "<U0068><U0073><U0062>"
+% hsb
+lang_lib "<U0068><U0073><U0062>"
END LC_ADDRESS
diff --git a/localedata/locales/ht_HT b/localedata/locales/ht_HT
index 8ec865d1ce..66ae10bfdc 100644
--- a/localedata/locales/ht_HT
+++ b/localedata/locales/ht_HT
@@ -1,35 +1,45 @@
comment_char %
-escape_char /
+escape_char /
+% Charset: UTF-8
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Haitian Kreyol (Kreyòl Ayisyen) language locale for Haiti
+%
+% Prepared and contributed to glibc by Bastien Guerry <bzg@laptop.org> and
+% Chris Leonard <cjl@sugarlabs.org>
+% This locale data has been developed in collaboration between:
+% Sugar Labs, http://www.sugarlabs.org/
+% One Laptop Per Child, http://one.laptop.org/
+% OLPC France, http://olpc-france.org
+% and members of the OLPC Haiti volunteer team
+%
+% build with: localedef -f UTF-8 -i ht_HT ht_HT
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
%
-% U006Breyol Language Locale for Haiti
-% Source: OLPC
-% Language: ht
-% Contact: olpchaiti.org
-% Address: 22 rue 2, Port-au-Prince
-% Email: contact@olpchaiti.org
-% Territory: HT
-% Revision: 1.0
-% Date: 2008-08-17
-% Users: general
-% Charset: ISO-8859-1
-% Authors:
-% 2008-08-17, bzg@laptop.org
%
-% Distribution and use is free, also
-% for commercial purposes.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
LC_IDENTIFICATION
-title "Kreyol locale for Haiti"
-source "OLPC"
-address ""
-contact "olpchaiti.org"
-email "contact@olpchaiti.org"
-tel ""
-fax ""
-language "U006Breyol"
-territory "Haiti"
-revision "1.0"
-date "2008-08-17"
+title "Kreyol locale for Haiti"
+source "Sugar Labs / OLPC"
+address ""
+contact "sugarlabs.org"
+email "libc-alpha@sourceware.org"
+tel ""
+fax ""
+language "Kreyol"
+territory "Haiti"
+revision "1.1"
+date "2013-08-09"
%
category "ht_HT:2000";LC_IDENTIFICATION
category "ht_HT:2000";LC_CTYPE
@@ -37,35 +47,91 @@ category "ht_HT:2000";LC_COLLATE
category "ht_HT:2000";LC_TIME
category "ht_HT:2000";LC_NUMERIC
category "ht_HT:2000";LC_MONETARY
-category "ht_HT:2000";LC_MESSAGES
category "ht_HT:2000";LC_PAPER
+category "ht_HT:2000";LC_MEASUREMENT
+category "ht_HT:2000";LC_MESSAGES
category "ht_HT:2000";LC_NAME
category "ht_HT:2000";LC_ADDRESS
category "ht_HT:2000";LC_TELEPHONE
-
END LC_IDENTIFICATION
LC_CTYPE
+% In Haitian Kreyol, accents are simply omitted if they cannot be represented.
copy "i18n"
-
translit_start
-
-% In Haiti, accents are simply omitted if they cannot be represented.
include "translit_combining";""
-
translit_end
-
END LC_CTYPE
LC_COLLATE
-% Copy the template from ISO/IEC 14651
copy "iso14651_t1"
END LC_COLLATE
-LC_MESSAGES
-yesexpr "<U005E><U005B><U006F><U006F><U0079><U0079><U005D><U002E><U002A>"
-noexpr "<U005E><U005B><U006E><U006E><U005D><U002E><U002A>"
-END LC_MESSAGES
+LC_TIME
+% janvye, fevriye, mas, avril, me, jen, jiyè, out, septanm, oktòb, novanm, desanm
+mon "<U006A><U0061><U006E><U0076><U0079><U0065>";/
+ "<U0066><U0065><U0076><U0072><U0069><U0079><U0065>";/
+ "<U006D><U0061><U0073>";/
+ "<U0061><U0076><U0072><U0069><U006C>";/
+ "<U006D><U0065>";/
+ "<U006A><U0065><U006E>";/
+ "<U006A><U0069><U0079><U00E8>";/
+ "<U006F><U0075><U0074>";/
+ "<U0073><U0065><U0070><U0074><U0061><U006E><U006D>";/
+ "<U006F><U006B><U0074><U00F2><U0062>";/
+ "<U006E><U006F><U0076><U0061><U006E><U006D>";/
+ "<U0064><U0065><U0073><U0061><U006E><U006D>"
+% jan, fev, mas, avr, me, jen, jiy, out, sep, okt, nov, des
+abmon "<U006A><U0061><U006E>";/
+ "<U0066><U0065><U0076>";/
+ "<U006D><U0061><U0073>";/
+ "<U0061><U0076><U0072>";/
+ "<U006D><U0065>";/
+ "<U006A><U0065><U006E>";/
+ "<U006A><U0069><U0079>";/
+ "<U006F><U0075><U0074>";/
+ "<U0073><U0065><U0070>";/
+ "<U006F><U006B><U0074>";/
+ "<U006E><U006F><U0076>";/
+ "<U0064><U0065><U0073>"
+% dimanch, lendi , madi, mèkredi, jedi, vandredi, samdi
+day "<U0064><U0069><U006D><U0061><U006E><U0063><U0068>";/
+ "<U006C><U0065><U006E><U0064><U0069><U0020>";/
+ "<U006D><U0061><U0064><U0069>";/
+ "<U006D><U00E8><U006B><U0072><U0065><U0064><U0069>";/
+ "<U006A><U0065><U0064><U0069>";/
+ "<U0076><U0061><U006E><U0064><U0072><U0065><U0064><U0069>";/
+ "<U0073><U0061><U006D><U0064><U0069>"
+% dim, len , mad, mèk, jed, van, sam
+abday "<U0064><U0069><U006D>";/
+ "<U006C><U0065><U006E><U0020>";/
+ "<U006D><U0061><U0064>";/
+ "<U006D><U00E8><U006B>";/
+ "<U006A><U0065><U0064>";/
+ "<U0076><U0061><U006E>";/
+ "<U0073><U0061><U006D>"
+week 7;19971130;7
+first_weekday 1
+first_workday 2
+% %a %d %b %Y %T %Z
+d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+% %d/%m/%Y
+d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0059>"
+% %T
+t_fmt "<U0025><U0054>"
+am_pm "";""
+t_fmt_ampm ""
+% %a %b %e %H:%M:%S %Z %Y
+date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U005A><U0020><U0025><U0059>"
+END LC_TIME
+
+LC_NUMERIC
+% ,
+decimal_point "<U002C>"
+%
+thousands_sep "<U0020>"
+grouping 3
+END LC_NUMERIC
LC_MONETARY
int_curr_symbol "<U0048><U0054><U0047><U0020>"
@@ -85,82 +151,28 @@ p_sign_posn 1
n_sign_posn 1
END LC_MONETARY
-LC_NUMERIC
-decimal_point "<U002C>"
-thousands_sep "<U0020>"
-grouping 3
-END LC_NUMERIC
-
-LC_TIME
-abday "<U0064><U0069><U006D><U002E>";/
- "<U006C><U0045><U006E><U002E>";/
- "<U006D><U0061><U0064><U002E>";/
- "<U006D><U00E8><U006B><U002E>";/
- "<U006A><U0045><U0064><U002E>";/
- "<U0076><U0061><U006E><U002E>";/
- "<U0073><U0061><U006D><U002E>"
-day "<U0064><U0069><U006D><U0061><U006E><U0063><U0068>";/
- "<U006C><U0045><U006E><U0064><U0069>";/
- "<U006D><U0061><U0064><U0069>";/
- "<U006D><U00E8><U006B><U0052><U0045><U0064><U0069>";/
- "<U006A><U0045><U0064><U0069>";/
- "<U0076><U0061><U006E><U0064><U0052><U0045><U0064><U0069>";/
- "<U0073><U0061><U006D><U0064><U0069>"
-abmon "<U006A><U0061><U006E><U0076><U002E>";/
- "<U0066><U0045><U0076><U0052><U002E>";/
- "<U006D><U0061><U0073>";/
- "<U0061><U0076><U0052><U0069><U006C>";/
- "<U006D><U0045>";/
- "<U006A><U0045><U006E>";/
- "<U006A><U0069><U0079><U00E8><U002E>";/
- "<U006F><U0055><U0074>";/
- "<U0073><U0045><U0070><U0074><U002E>";/
- "<U006F><U006B><U0074><U002E>";/
- "<U006E><U006F><U0076><U002E>";/
- "<U0064><U0045><U0073><U002E>"
-mon "<U006A><U0061><U006E><U0076><U0079><U0045>";/
- "<U0066><U0045><U0076><U0052><U0069><U0079><U0045>";/
- "<U006D><U0061><U0073>";/
- "<U0061><U0076><U0052><U0069><U006C>";/
- "<U006D><U0045>";/
- "<U006A><U0045><U006E>";/
- "<U006A><U0069><U0079><U00E8>";/
- "<U006F><U0055><U0074>";/
- "<U0073><U0045><U0070><U0074><U0061><U006E><U006D>";/
- "<U006F><U0063><U0074><U006F><U0062><U0052><U0045>";/
- "<U006E><U006F><U0076><U0061><U006E><U006D>";/
- "<U0064><U0045><U0073><U0061><U006E><U006D>"
-d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0079><U0020><U0025><U0074><U0020><U0025><U005A>"
-d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
-t_fmt "<U0025><U0074>"
-am_pm "";""
-t_fmt_ampm ""
-date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0045>/
-<U0020><U0025><U0068><U003A><U0025><U006D><U003A><U0025><U0073><U0020>/
-<U0025><U005A><U0020><U0025><U0079>"
-
-week 7;19971130;4
-first_weekday 2
-first_workday 2
-END LC_TIME
-
LC_PAPER
+% A4
height 297
width 210
END LC_PAPER
-LC_TELEPHONE
-tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025>/
-<U006C>"
-tel_dom_fmt "<U0025><U0061><U0020><U0025><U006C>"
-int_prefix "<U0035><U0030><U0039>"
-int_select "<U0030><U0030>"
-END LC_TELEPHONE
-
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
+LC_MESSAGES
+% ^[wWoOyY].*
+yesexpr "<U005E><U005B><U0077><U0057><U006F><U004F><U0079><U0059><U005D><U002E><U002A>"
+% ^[nN].*
+noexpr "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
+% Wi
+yesstr "<U0057><U0069>"
+% Non
+nostr "<U004E><U006F><U006E>"
+END LC_MESSAGES
+
LC_NAME
name_fmt "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
<U0025><U006D><U0025><U0074><U0025><U0066>"
@@ -172,7 +184,36 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0052><U0025>/
<U004E><U0025><U0025><U005A><U0020><U0025><U0074><U0025>/
<U004E><U0025><U0063><U0025><U004E>"
-country_ab2 "<U0068><U0074>"
-country_ab3 "<U0068><U0074><U0069>"
-%country_num 332
+% Ayiti
+country_name "<U0041><U0079><U0069><U0074><U0069>"
+% HT
+country_post "<U0048><U0054>"
+% HT
+country_ab2 "<U0048><U0054>"
+% HTI
+country_ab3 "<U0048><U0054><U0049>"
+country_num 332
+country_isbn 99935
+% RH
+country_car "<U0052><U0048>"
+%
+% Kreyòl ayisyen
+lang_name "<U004B><U0072><U0065><U0079><U00F2><U006C><U0020><U0061><U0079><U0069><U0073><U0079><U0065><U006E>"
+% ht
+lang_ab "<U0068><U0074>"
+% hat
+lang_term "<U0068><U0061><U0074>"
+% hat
+lang_lib "<U0068><U0061><U0074>"
END LC_ADDRESS
+
+LC_TELEPHONE
+% +%c %a %l
+tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025><U006C>"
+% %a %l
+tel_dom_fmt "<U0025><U0061><U0020><U0025><U006C>"
+% 00
+int_select "<U0030><U0030>"
+% 509
+int_prefix "<U0035><U0030><U0039>"
+END LC_TELEPHONE
diff --git a/localedata/locales/hu_HU b/localedata/locales/hu_HU
index 691ccad903..407d373731 100644
--- a/localedata/locales/hu_HU
+++ b/localedata/locales/hu_HU
@@ -55,7 +55,7 @@ category "hu_HU:2000";LC_PAPER
category "hu_HU:2000";LC_NAME
category "hu_HU:2000";LC_ADDRESS
category "hu_HU:2000";LC_TELEPHONE
-
+category "hu_HU:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -566,8 +566,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -584,4 +584,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0048><U0055>"
country_ab3 "<U0048><U0055><U004E>"
country_num 348
+% H
+country_car "<U0048>"
+% magyar
+lang_name "<U006D><U0061><U0067><U0079><U0061><U0072>"
+% hu
+lang_ab "<U0068><U0075>"
+% hun
+lang_term "<U0068><U0075><U006E>"
+% hun
+lang_lib "<U0068><U0075><U006E>"
END LC_ADDRESS
diff --git a/localedata/locales/hy_AM b/localedata/locales/hy_AM
index d479730a61..5610889d6d 100644
--- a/localedata/locales/hy_AM
+++ b/localedata/locales/hy_AM
@@ -156,8 +156,8 @@ yesexpr "<U005E><U005B><U0079><U0059><U0073><U0053><U0561><U0531><U005D>"
noexpr "<U005E><U005B><U006E><U004E><U0578><U0548><U005D>"
END LC_MESSAGES
-% Metric Measurement system (ISO 1000)
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -186,9 +186,12 @@ country_num 51
country_car "<U0041><U004D>"
country_isbn "<U0039><U0039><U0039><U0033><U0030>"
lang_name "<U0540><U0561><U0575><U0565><U0580><U0565><U0576>"
-lang_ab "<U0068><U0079>"
-lang_term "<U0068><U0079><U0065>"
-lang_lib "<U0061><U0072><U006D>"
+% hy
+lang_ab "<U0068><U0079>"
+% hye
+lang_term "<U0068><U0079><U0065>"
+% arm
+lang_lib "<U0061><U0072><U006D>"
END LC_ADDRESS
LC_NAME
diff --git a/localedata/locales/ia_FR b/localedata/locales/ia_FR
index 5b419d260d..722cc6e796 100644
--- a/localedata/locales/ia_FR
+++ b/localedata/locales/ia_FR
@@ -106,7 +106,8 @@ nostr "<U004E><U006F>"
END LC_MESSAGES
LC_MEASUREMENT
-copy "fr_FR"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_PAPER
@@ -130,9 +131,13 @@ country_num 250
country_isbn 2
country_car "<U0046>"
lang_name "<U0049><U006E><U0074><U0065><U0072><U006C><U0069><U006E><U0067><U0075><U0061>"
-lang_ab "<U0069><U0061>"
-lang_term "<U0069><U006E><U0061>"
-lang_lib "<U0069><U006E><U0061>"
+
+% ia
+lang_ab "<U0069><U0061>"
+% ina
+lang_term "<U0069><U006E><U0061>"
+% ina
+lang_lib "<U0069><U006E><U0061>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/id_ID b/localedata/locales/id_ID
index fceb891014..29bc8211d6 100644
--- a/localedata/locales/id_ID
+++ b/localedata/locales/id_ID
@@ -43,7 +43,7 @@ category "id_ID:2000";LC_PAPER
category "id_ID:2000";LC_NAME
category "id_ID:2000";LC_ADDRESS
category "id_ID:2000";LC_TELEPHONE
-
+category "id_ID:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -141,8 +141,8 @@ int_prefix "<U0036><U0032>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -159,4 +159,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0049><U0044>"
country_ab3 "<U0049><U0044><U004E>"
country_num 360
+% RI
+country_car "<U0052><U0049>"
+% Bahasa Indonesia
+lang_name "<U0042><U0061><U0068><U0061><U0073><U0061><U0020><U0049><U006E><U0064>/<U006F><U006E><U0065><U0073><U0069><U0061>"
+% id
+lang_ab "<U0069><U0064>"
+% ind
+lang_term "<U0069><U006E><U0064>"
+% ind
+lang_lib "<U0069><U006E><U0064>"
END LC_ADDRESS
diff --git a/localedata/locales/ig_NG b/localedata/locales/ig_NG
index 47ad2124f5..8b1a48ba85 100644
--- a/localedata/locales/ig_NG
+++ b/localedata/locales/ig_NG
@@ -38,7 +38,7 @@ category "ig_NG:2000";LC_PAPER
category "ig_NG:2000";LC_NAME
category "ig_NG:2000";LC_ADDRESS
category "ig_NG:2000";LC_TELEPHONE
-
+category "ig_NG:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -424,7 +424,8 @@ copy "en_NG"
END LC_PAPER
LC_MEASUREMENT
-copy "en_NG"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -488,10 +489,12 @@ country_isbn 978
% ISO 639 language abbreviations:
% 639-1 2 letter, 639-2 3 letter terminology
% http://www.loc.gov/standards/iso639-2/englagn.html
-% "ig", "ibo"
-lang_ab "<U0069><U0067>"
-lang_term "<U0069><U0062><U006F>"
-lang_lib "<U0069><U0062><U006F>"
+% ig
+lang_ab "<U0069><U0067>"
+% ibo
+lang_term "<U0069><U0062><U006F>"
+% ibo
+lang_lib "<U0069><U0062><U006F>"
% ISO 3166 country number and 2 and 3 letter abreviations
% http://www.unicode.org/onlinedat/countries.html
diff --git a/localedata/locales/ik_CA b/localedata/locales/ik_CA
index 7648f24122..c08579ce5b 100644
--- a/localedata/locales/ik_CA
+++ b/localedata/locales/ik_CA
@@ -38,7 +38,7 @@ category "ik_CA:2000";LC_PAPER
category "ik_CA:2000";LC_NAME
category "ik_CA:2000";LC_ADDRESS
category "ik_CA:2000";LC_TELEPHONE
-
+category "ik_CA:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -211,8 +211,8 @@ LC_PAPER
copy "en_CA"
END LC_PAPER
-% Metric System (ISO 1000)
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -231,5 +231,15 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U0041>"
country_ab3 "<U0043><U0041><U004E>"
country_num 124
+% CDN
+country_car "<U0043><U0044><U004E>"
+% Iñupiatun
+lang_name "<U0049><U00F1><U0075><U0070><U0069><U0061><U0074><U0075><U006E>"
+% ik
+lang_ab "<U0069><U006B>"
+% ipk
+lang_term "<U0069><U0070><U006B>"
+% ipk
+lang_lib "<U0069><U0070><U006B>"
END LC_ADDRESS
diff --git a/localedata/locales/is_IS b/localedata/locales/is_IS
index b4e3919e61..a687c24d22 100644
--- a/localedata/locales/is_IS
+++ b/localedata/locales/is_IS
@@ -44,7 +44,7 @@ category "is_IS:2000";LC_PAPER
category "is_IS:2000";LC_NAME
category "is_IS:2000";LC_ADDRESS
category "is_IS:2000";LC_TELEPHONE
-
+category "is_IS:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -2245,8 +2245,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -2263,4 +2263,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0049><U0053>"
country_ab3 "<U0049><U0053><U004C>"
country_num 352
+% IS
+country_car "<U0049><U0053>"
+% íslenska
+lang_name "<U00ED><U0073><U006C><U0065><U006E><U0073><U006B><U0061>"
+% is
+lang_ab "<U0069><U0073>"
+% isl
+lang_term "<U0069><U0073><U006C>"
+% ice
+lang_lib "<U0069><U0063><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/it_CH b/localedata/locales/it_CH
index 51a28464c0..b110b73b37 100644
--- a/localedata/locales/it_CH
+++ b/localedata/locales/it_CH
@@ -36,7 +36,7 @@ category "it_CH:2000";LC_PAPER
category "it_CH:2000";LC_NAME
category "it_CH:2000";LC_ADDRESS
category "it_CH:2000";LC_TELEPHONE
-
+category "it_CH:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -116,8 +116,8 @@ int_prefix "<U0034><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -134,4 +134,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U0048>"
country_ab3 "<U0043><U0048><U0045>"
country_num 756
+% CH
+country_car "<U0043><U0048>"
+% Italiano
+lang_name "<U0049><U0074><U0061><U006C><U0069><U0061><U006E><U006F>"
+% it
+lang_ab "<U0069><U0074>"
+% ita
+lang_term "<U0069><U0074><U0061>"
+% ita
+lang_lib "<U0069><U0074><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/it_IT b/localedata/locales/it_IT
index 47ee18199e..2383b8205b 100644
--- a/localedata/locales/it_IT
+++ b/localedata/locales/it_IT
@@ -42,7 +42,7 @@ category "it_IT:2000";LC_PAPER
category "it_IT:2000";LC_NAME
category "it_IT:2000";LC_ADDRESS
category "it_IT:2000";LC_TELEPHONE
-
+category "it_IT:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -142,8 +142,8 @@ int_prefix "<U0033><U0039>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -160,4 +160,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0049><U0054>"
country_ab3 "<U0049><U0054><U0041>"
country_num 380
+% I
+country_car "<U0049>"
+% Italiano
+lang_name "<U0049><U0074><U0061><U006C><U0069><U0061><U006E><U006F>"
+% it
+lang_ab "<U0069><U0074>"
+% ita
+lang_term "<U0069><U0074><U0061>"
+% ita
+lang_lib "<U0069><U0074><U0061>"
END LC_ADDRESS
diff --git a/localedata/locales/it_IT@euro b/localedata/locales/it_IT@euro
index e34a8d55f6..fb9114c7fb 100644
--- a/localedata/locales/it_IT@euro
+++ b/localedata/locales/it_IT@euro
@@ -35,7 +35,7 @@ category "it_IT@euro:2000";LC_PAPER
category "it_IT@euro:2000";LC_NAME
category "it_IT@euro:2000";LC_ADDRESS
category "it_IT@euro:2000";LC_TELEPHONE
-
+category "it_IT@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -71,7 +71,8 @@ copy "it_IT"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "it_IT"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/iu_CA b/localedata/locales/iu_CA
index e46910c06d..e2300bf5e4 100644
--- a/localedata/locales/iu_CA
+++ b/localedata/locales/iu_CA
@@ -41,12 +41,16 @@ postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
country_ab2 "<U0043><U0041>"
country_ab3 "<U0043><U0041><U004E>"
country_num 124
-country_car "<U0043><U0041><U004E>" % FIXME
+% CDN
+country_car "<U0043><U0044><U004E>"
% FIXME country_isbn for Canada/inuktitut ?
lang_name "<U1403><U14C4><U1483><U144E><U1450><U1466>"
-lang_ab "<U0069><U0075>"
-lang_term "<U0069><U006B><U0075>"
-lang_lib "<U0069><U006B><U0075>"
+% iu
+lang_ab "<U0069><U0075>"
+% iku
+lang_term "<U0069><U006B><U0075>"
+% iku
+lang_lib "<U0069><U006B><U0075>"
END LC_ADDRESS
%%%%%%%%%%%%%
@@ -128,8 +132,8 @@ LC_NAME
copy "en_CA"
END LC_NAME
-% Metric System (ISO 1000)
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ja_JP b/localedata/locales/ja_JP
index 54e55b1b52..0422176a20 100644
--- a/localedata/locales/ja_JP
+++ b/localedata/locales/ja_JP
@@ -31,7 +31,7 @@ category "ja_JP:2000";LC_PAPER
category "ja_JP:2000";LC_NAME
category "ja_JP:2000";LC_ADDRESS
category "ja_JP:2000";LC_TELEPHONE
-
+category "ja_JP:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -15042,6 +15042,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U004A><U0050>"
country_ab3 "<U004A><U0050><U004E>"
country_num 392
+% J
+country_car "<U004A>"
+% 日本語
+lang_name "<U65E5><U672C><U8A9E>"
+% ja
+lang_ab "<U006A><U0061>"
+% jpn
+lang_term "<U006A><U0070><U006E>"
+% jpn
+lang_lib "<U006A><U0070><U006E>"
END LC_ADDRESS
@@ -15056,8 +15066,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/ka_GE b/localedata/locales/ka_GE
index 3135919f70..459c467cfd 100644
--- a/localedata/locales/ka_GE
+++ b/localedata/locales/ka_GE
@@ -39,17 +39,21 @@ LC_ADDRESS
postal_fmt "<U0025><U0064><U0025><U004E><U0025><U0066><U0025><U004E><U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E>/
<U0025><U0073><U0020><U0025><U0068><U0020><U0035><U0065><U0020><U0025><U0072><U0025><U004E>/
<U0025><U0043><U0025><U007A><U0020><U0025><U0054><U0025><U004E><U0025><U0063><U0025><U004E>"
-% FIXME country_name 'Georgia' in Georgian
% country_post "GE" for Georgia ?
country_ab2 "GE"
country_ab3 "GEO"
country_num 268
-country_car "GE"
+% GE
+country_car "<U0047><U0045>"
country_isbn "99928"
-% lang_name FIXME Georgian in Georgian
-lang_ab "ka"
-lang_term "kat"
-lang_lib "geo"
+% ქáƒáƒ áƒ—ული
+lang_name "<U10E5><U10D0><U10E0><U10D7><U10E3><U10DA><U10D8>"
+% ka
+lang_ab "<U006B><U0061>"
+% kat
+lang_term "<U006B><U0061><U0074>"
+% geo
+lang_lib "<U0067><U0065><U006F>"
END LC_ADDRESS
LC_COLLATE
@@ -128,7 +132,7 @@ mon /
"<U10DC><U10DD><U10D4><U10DB><U10D1><U10D4><U10E0><U10D8>";/
"<U10D3><U10D4><U10D9><U10D4><U10DB><U10D1><U10D4><U10E0><U10D8>"
-%"%Y ÜÊÈÑ %d %B"
+%"%Y ÜÊÈÑ %d %B"
d_t_fmt "<U0025><U0059><U0020><U10EC><U10DA><U10D8><U10E1><U0020><U0025><U0064><U0020><U0025><U0042><U002C><U0020><U0025><U0054><U0020><U0025><U005A>"
d_fmt "<U0025><U006D><U002F><U0025><U0064><U002F><U0025><U0059>"
t_fmt "<U0025><U0054>"
@@ -141,8 +145,8 @@ yesexpr "<U005E><U005B><U0031><U0079><U0059><U006B><U004B><U0078><U0058><U10EE>
noexpr "<U005E><U005B><U0030><U006E><U004E><U0061><U0041><U10D0><U005D><U002E><U002A>"
END LC_MESSAGES
-% Metric Measurement system (ISO 1000)
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/kk_KZ b/localedata/locales/kk_KZ
index cec3891f68..89b303be9d 100644
--- a/localedata/locales/kk_KZ
+++ b/localedata/locales/kk_KZ
@@ -42,7 +42,7 @@ category "kk_KZ:2000";LC_PAPER
category "kk_KZ:2000";LC_NAME
category "kk_KZ:2000";LC_ADDRESS
category "kk_KZ:2000";LC_TELEPHONE
-
+category "kk_KZ:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -246,8 +246,8 @@ int_prefix "<U0037>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -261,4 +261,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
<U004E><U0025><U0063><U0025><U004E>"
+% KZ
+country_car "<U004B><U005A>"
+% kk
+lang_ab "<U006B><U006B>"
+% kaz
+lang_term "<U006B><U0061><U007A>"
+% kaz
+lang_lib "<U006B><U0061><U007A>"
END LC_ADDRESS
diff --git a/localedata/locales/kl_GL b/localedata/locales/kl_GL
index 788950c612..461de6c33c 100644
--- a/localedata/locales/kl_GL
+++ b/localedata/locales/kl_GL
@@ -47,7 +47,7 @@ category "kl_GL:2000";LC_PAPER
category "kl_GL:2000";LC_NAME
category "kl_GL:2000";LC_ADDRESS
category "kl_GL:2000";LC_TELEPHONE
-
+category "kl_GL:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -125,8 +125,8 @@ int_prefix "<U0032><U0039><U0039>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -143,4 +143,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0047><U004C>"
country_ab3 "<U0047><U0052><U004C>"
country_num 304
+% GRO
+country_car "<U0047><U0052><U004F>"
+% Kalaallisut
+lang_name "<U004B><U0061><U006C><U0061><U0061><U006C><U006C><U0069><U0073><U0075><U0074>"
+% kl
+lang_ab "<U006B><U006C>"
+% kal
+lang_term "<U006B><U0061><U006C>"
+% kal
+lang_lib "<U006B><U0061><U006C>"
END LC_ADDRESS
diff --git a/localedata/locales/km_KH b/localedata/locales/km_KH
index c314cb5636..5563659e5a 100644
--- a/localedata/locales/km_KH
+++ b/localedata/locales/km_KH
@@ -63,7 +63,7 @@ category "km_KH:2000";LC_PAPER
category "km_KH:2000";LC_NAME
category "km_KH:2000";LC_ADDRESS
category "km_KH:2000";LC_TELEPHONE
-
+category "km_KH:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -1869,8 +1869,8 @@ int_prefix "<U0038><U0035><U0036>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/kn_IN b/localedata/locales/kn_IN
index f57031fc41..3421f85e54 100644
--- a/localedata/locales/kn_IN
+++ b/localedata/locales/kn_IN
@@ -30,7 +30,7 @@ category "kn_IN:2000";LC_PAPER
category "kn_IN:2000";LC_NAME
category "kn_IN:2000";LC_ADDRESS
category "kn_IN:2000";LC_TELEPHONE
-
+category "kn_IN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -219,6 +219,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% ಕನà³à²¨à²¡
+lang_name "<U0C95><U0CA8><U0CCD><U0CA8><U0CA1>"
+% kn
+lang_ab "<U006B><U006E>"
+% kan
+lang_term "<U006B><U0061><U006E>"
+% kan
+lang_lib "<U006B><U0061><U006E>"
END LC_ADDRESS
@@ -228,5 +238,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ko_KR b/localedata/locales/ko_KR
index 59653ad188..65bcbde2f8 100644
--- a/localedata/locales/ko_KR
+++ b/localedata/locales/ko_KR
@@ -63,7 +63,7 @@ category "ko_KR:2000";LC_PAPER
category "ko_KR:2000";LC_NAME
category "ko_KR:2000";LC_ADDRESS
category "ko_KR:2000";LC_TELEPHONE
-
+category "ko_KR:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -6229,8 +6229,8 @@ int_prefix "<U0038><U0032>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -6247,4 +6247,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004B><U0052>"
country_ab3 "<U004B><U004F><U0052>"
country_num 410
+% ROK
+country_car "<U0052><U004F><U004B>"
+% 한국ë§
+lang_name "<UD55C><UAD6D><UB9D0>"
+% ko
+lang_ab "<U006B><U006F>"
+% kor
+lang_term "<U006B><U006F><U0072>"
+% kor
+lang_lib "<U006B><U006F><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/kok_IN b/localedata/locales/kok_IN
index 8f30139058..6bc9738ad3 100644
--- a/localedata/locales/kok_IN
+++ b/localedata/locales/kok_IN
@@ -28,7 +28,7 @@ category "kok_IN:2009";LC_PAPER
category "kok_IN:2009";LC_NAME
category "kok_IN:2009";LC_ADDRESS
category "kok_IN:2009";LC_TELEPHONE
-
+category "kok_IN:2009";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -196,6 +196,14 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% कोंकणी
+lang_name "<U0915><U094B><U0902><U0915><U0923><U0940>"
+% kok
+lang_term "<U006B><U006F><U006B>"
+% kok
+lang_lib "<U006B><U006F><U006B>"
END LC_ADDRESS
@@ -205,5 +213,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ks_IN b/localedata/locales/ks_IN
index 77cc8c295c..5399027837 100644
--- a/localedata/locales/ks_IN
+++ b/localedata/locales/ks_IN
@@ -29,8 +29,7 @@ category "ks_IN:2009";LC_PAPER
category "ks_IN:2009";LC_NAME
category "ks_IN:2009";LC_ADDRESS
category "ks_IN:2009";LC_TELEPHONE
-
-
+category "ks_IN:2009";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -197,7 +196,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
-
+% IND
+country_car "<U0049><U004E><U0044>"
+% kạ̄šur
+lang_name "<U006B><U1EA1><U0304><U0161><U0075><U0072>"
+% ks
+lang_ab "<U006B><U0073>"
+% kas
+lang_term "<U006B><U0061><U0073>"
+% kas
+lang_lib "<U006B><U0061><U0073>"
END LC_ADDRESS
@@ -207,5 +215,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ks_IN@devanagari b/localedata/locales/ks_IN@devanagari
index e1f629024f..5b48380035 100644
--- a/localedata/locales/ks_IN@devanagari
+++ b/localedata/locales/ks_IN@devanagari
@@ -28,7 +28,7 @@ category "ks_IN@devanagari:2008";LC_PAPER
category "ks_IN@devanagari:2008";LC_NAME
category "ks_IN@devanagari:2008";LC_ADDRESS
category "ks_IN@devanagari:2008";LC_TELEPHONE
-
+category "ks_IN@devanagari:2008";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -154,7 +154,22 @@ END LC_NAME
LC_ADDRESS
-copy "ks_IN"
+% This is the ISO_IEC TR14652 Locale definition for the LC_ADDRESS category
+% generated by IBM Basic CountryPack Transformer.
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U0062><U0025><U0065><U0025><U0072>"
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% कॉशà¥à¤°
+lang_name "<U0915><U0949><U0936><U0941><U0930>"
+% ks
+lang_ab "<U006B><U0073>"
+% kas
+lang_term "<U006B><U0061><U0073>"
+% kas
+lang_lib "<U006B><U0061><U0073>"
END LC_ADDRESS
@@ -164,5 +179,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ku_TR b/localedata/locales/ku_TR
index 9639e2634c..d974bfb09e 100644
--- a/localedata/locales/ku_TR
+++ b/localedata/locales/ku_TR
@@ -174,7 +174,8 @@ copy "tr_TR"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "tr_TR"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -206,10 +207,14 @@ country_ab2 "TR"
country_ab3 "TUR"
country_num 792
country_isbn 975
-country_car "TR"
+% TR
+country_car "<U0054><U0052>"
% "kurdi"
lang_name "<U006B><U0075><U0072><U0064><U0069>"
-lang_ab "ku"
-lang_term "kur"
-lang_lib "kur"
+% ku
+lang_ab "<U006B><U0075>"
+% kur
+lang_term "<U006B><U0075><U0072>"
+% kur
+lang_lib "<U006B><U0075><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/kw_GB b/localedata/locales/kw_GB
index f4003a3352..ece7c55c4e 100644
--- a/localedata/locales/kw_GB
+++ b/localedata/locales/kw_GB
@@ -46,7 +46,7 @@ category "kw_GB:2000";LC_PAPER
category "kw_GB:2000";LC_NAME
category "kw_GB:2000";LC_ADDRESS
category "kw_GB:2000";LC_TELEPHONE
-
+category "kw_GB:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -146,8 +146,8 @@ int_prefix "<U0034><U0034>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -164,4 +164,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0047><U0042>"
country_ab3 "<U0047><U0042><U0052>"
country_num 826
+% GB
+country_car "<U0047><U0042>"
+% Kernowek
+lang_name "<U004B><U0065><U0072><U006E><U006F><U0077><U0065><U006B>"
+% kw
+lang_ab "<U006B><U0077>"
+% cor
+lang_term "<U0063><U006F><U0072>"
+% cor
+lang_lib "<U0063><U006F><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/ky_KG b/localedata/locales/ky_KG
index b656d1ad24..9bb11d96e5 100644
--- a/localedata/locales/ky_KG
+++ b/localedata/locales/ky_KG
@@ -30,7 +30,7 @@ category "ky_KG:2000";LC_PAPER
category "ky_KG:2000";LC_NAME
category "ky_KG:2000";LC_ADDRESS
category "ky_KG:2000";LC_TELEPHONE
-
+category "ky_KG:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -187,7 +187,8 @@ int_prefix "<U0039><U0039><U0036>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -204,4 +205,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004B><U0059>"
country_ab3 "<U004B><U0059><U0052>"
%country_num 643
+% KS
+country_car "<U004B><U0053>"
+% Кыргызча
+lang_name "<U041A><U044B><U0440><U0433><U044B><U0437><U0447><U0430>"
+% ky
+lang_ab "<U006B><U0079>"
+% kir
+lang_term "<U006B><U0069><U0072>"
+% kir
+lang_lib "<U006B><U0069><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/lb_LU b/localedata/locales/lb_LU
index b62196e1e4..a74e1629b2 100644
--- a/localedata/locales/lb_LU
+++ b/localedata/locales/lb_LU
@@ -192,5 +192,6 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/lg_UG b/localedata/locales/lg_UG
index edb9a77aa7..99dce103d0 100644
--- a/localedata/locales/lg_UG
+++ b/localedata/locales/lg_UG
@@ -43,7 +43,7 @@ category "lg_UG:2001";LC_PAPER
category "lg_UG:2001";LC_NAME
category "lg_UG:2001";LC_ADDRESS
category "lg_UG:2001";LC_TELEPHONE
-
+category "lg_UG:2001";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -260,7 +260,8 @@ int_prefix "<U0032><U0035><U0036>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -330,4 +331,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
%
country_ab3 "<U0055><U0047><U0041>"
country_num 800
+% EAU
+country_car "<U0045><U0041><U0055>"
+% Oluganda
+lang_name "<U004F><U006C><U0075><U0067><U0061><U006E><U0064><U0061>"
+% lg
+lang_ab "<U006C><U0067>"
+% lug
+lang_term "<U006C><U0075><U0067>"
+% lug
+lang_lib "<U006C><U0075><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/li_BE b/localedata/locales/li_BE
index 3a13dbbc5e..5a8975406c 100644
--- a/localedata/locales/li_BE
+++ b/localedata/locales/li_BE
@@ -48,7 +48,8 @@ country_ab3 "<U0042><U0045><U004C>"
country_car "<U0042>"
country_num 56
%FIXME country_isbn "2"
-lang_name "<U004C><U0069><U006D><U0062><U0075><U0072><U0067><U0073>"
+% Lèmbörgs
+lang_name "<U004C><U00E8><U006D><U0062><U00F6><U0072><U0067><U0073>"
lang_ab "<U006C><U0069>"
lang_term "<U006C><U0069><U006D>"
lang_lib "<U006C><U0069><U006D>"
@@ -84,7 +85,8 @@ copy "nl_BE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "nl_BE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NUMERIC
diff --git a/localedata/locales/li_NL b/localedata/locales/li_NL
index 0588cb85a2..b07c4a46a6 100644
--- a/localedata/locales/li_NL
+++ b/localedata/locales/li_NL
@@ -48,7 +48,8 @@ country_ab3 "<U004E><U004C><U0044>"
country_car "<U004E><U004C>"
country_num 528
%FIXME country_isbn "2"
-lang_name "<U004C><U0069><U006D><U0062><U0075><U0072><U0067><U0073>"
+% Lèmbörgs
+lang_name "<U004C><U00E8><U006D><U0062><U00F6><U0072><U0067><U0073>"
lang_ab "<U006C><U0069>"
lang_term "<U006C><U0069><U006D>"
lang_lib "<U006C><U0069><U006D>"
@@ -84,7 +85,8 @@ copy "nl_NL"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "nl_NL"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NUMERIC
diff --git a/localedata/locales/lij_IT b/localedata/locales/lij_IT
index cac3ae5c39..698f5573f2 100644
--- a/localedata/locales/lij_IT
+++ b/localedata/locales/lij_IT
@@ -27,7 +27,7 @@ category "lij_IT:2000";LC_PAPER
category "lij_IT:2000";LC_NAME
category "lij_IT:2000";LC_ADDRESS
category "lij_IT:2000";LC_TELEPHONE
-
+category "lij_IT:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
%
LC_COLLATE
@@ -111,8 +111,8 @@ int_prefix "<U0033><U0039>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -129,4 +129,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0049><U0054>"
country_ab3 "<U0049><U0054><U0041>"
country_num 380
+% I
+country_car "<U0049>"
+% Lìgure
+lang_name "<U004C><U00EC><U0067><U0075><U0072><U0065>"
+% lij
+lang_term "<U006C><U0069><U006A>"
+% lij
+lang_lib "<U006C><U0069><U006A>"
END LC_ADDRESS
diff --git a/localedata/locales/lo_LA b/localedata/locales/lo_LA
index 29ab3f322b..c584877d23 100644
--- a/localedata/locales/lo_LA
+++ b/localedata/locales/lo_LA
@@ -66,7 +66,7 @@ category "lo_LA:2000";LC_PAPER
category "lo_LA:2000";LC_NAME
category "lo_LA:2000";LC_ADDRESS
category "lo_LA:2000";LC_TELEPHONE
-
+category "lo_LA:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -748,8 +748,8 @@ int_prefix "<U0038><U0035><U0036>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/lt_LT b/localedata/locales/lt_LT
index 5b529e1c42..7cf186b796 100644
--- a/localedata/locales/lt_LT
+++ b/localedata/locales/lt_LT
@@ -54,7 +54,7 @@ category "lt_LT:2000";LC_PAPER
category "lt_LT:2000";LC_NAME
category "lt_LT:2000";LC_ADDRESS
category "lt_LT:2000";LC_TELEPHONE
-
+category "lt_LT:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -2214,8 +2214,8 @@ int_prefix "<U0033><U0037><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -2232,4 +2232,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004C><U0054>"
country_ab3 "<U004C><U0054><U0055>"
country_num 440
+% LT
+country_car "<U004C><U0054>"
+% lietuvių kalba
+lang_name "<U006C><U0069><U0065><U0074><U0075><U0076><U0069><U0173><U0020><U006B><U0061><U006C><U0062><U0061>"
+% lt
+lang_ab "<U006C><U0074>"
+% lit
+lang_term "<U006C><U0069><U0074>"
+% lit
+lang_lib "<U006C><U0069><U0074>"
END LC_ADDRESS
diff --git a/localedata/locales/lv_LV b/localedata/locales/lv_LV
index aedce02596..5fbfa1bb37 100644
--- a/localedata/locales/lv_LV
+++ b/localedata/locales/lv_LV
@@ -46,7 +46,7 @@ category "lv_LV:2000";LC_PAPER
category "lv_LV:2000";LC_NAME
category "lv_LV:2000";LC_ADDRESS
category "lv_LV:2000";LC_TELEPHONE
-
+category "lv_LV:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -2206,8 +2206,8 @@ int_prefix "<U0033><U0037><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -2224,4 +2224,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004C><U0056>"
country_ab3 "<U004C><U0056><U0041>"
country_num 428
+% LV
+country_car "<U004C><U0056>"
+% latviešu valoda
+lang_name "<U006C><U0061><U0074><U0076><U0069><U0065><U0161><U0075><U0020><U0076><U0061><U006C><U006F><U0064><U0061>"
+% lv
+lang_ab "<U006C><U0076>"
+% lav
+lang_term "<U006C><U0061><U0076>"
+% lav
+lang_lib "<U006C><U0061><U0076>"
END LC_ADDRESS
diff --git a/localedata/locales/lzh_TW b/localedata/locales/lzh_TW
new file mode 100644
index 0000000000..73b4897631
--- /dev/null
+++ b/localedata/locales/lzh_TW
@@ -0,0 +1,255 @@
+comment_char %
+escape_char /
+% Charset: UTF-8
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Literary Chinese locale for the Republic of China
+%
+% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
+%
+% build with: localedef -f UTF-8 -i lzh_TW lzh_TW
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_IDENTIFICATION
+title "Literary Chinese locale for the Republic of China"
+source ""
+address ""
+contact ""
+email "bug-glibc-locales@gnu.org"
+tel ""
+fax ""
+language "Literary Chinese"
+territory "Republic of China"
+revision "0.1"
+date "2013-06-02"
+%
+category "lzh_TW:2000";LC_IDENTIFICATION
+category "lzh_TW:2000";LC_CTYPE
+category "lzh_TW:2000";LC_COLLATE
+category "lzh_TW:2000";LC_TIME
+category "lzh_TW:2000";LC_NUMERIC
+category "lzh_TW:2000";LC_MONETARY
+category "lzh_TW:2000";LC_PAPER
+category "lzh_TW:2000";LC_MEASUREMENT
+category "lzh_TW:2000";LC_MESSAGES
+category "lzh_TW:2000";LC_NAME
+category "lzh_TW:2000";LC_ADDRESS
+category "lzh_TW:2000";LC_TELEPHONE
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "i18n"
+class "hanzi"; /
+<U3007>;/
+<U3400>..<U4DBF>;/
+<U4E00>..<U9FA5>;/
+<UF900>..<UFA6A>;/
+<U00020000>..<U0002A6D6>;/
+<U0002F800>..<U0002FA1D>
+END LC_CTYPE
+
+LC_COLLATE
+copy "iso14651_t1"
+END LC_COLLATE
+
+LC_TIME
+% 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, ä¹æœˆ, å月, å一月, å二月
+mon "<U4E00><U6708>";/
+ "<U4E8C><U6708>";/
+ "<U4E09><U6708>";/
+ "<U56DB><U6708>";/
+ "<U4E94><U6708>";/
+ "<U516D><U6708>";/
+ "<U4E03><U6708>";/
+ "<U516B><U6708>";/
+ "<U4E5D><U6708>";/
+ "<U5341><U6708>";/
+ "<U5341><U4E00><U6708>";/
+ "<U5341><U4E8C><U6708>"
+% 一 , 二 , 三 , å›› , 五 , å…­ , 七 , å…« , ä¹ , å , å一, å二
+abmon "<U0020><U4E00><U0020>";/
+ "<U0020><U4E8C><U0020>";/
+ "<U0020><U4E09><U0020>";/
+ "<U0020><U56DB><U0020>";/
+ "<U0020><U4E94><U0020>";/
+ "<U0020><U516D><U0020>";/
+ "<U0020><U4E03><U0020>";/
+ "<U0020><U516B><U0020>";/
+ "<U0020><U4E5D><U0020>";/
+ "<U0020><U5341><U0020>";/
+ "<U5341><U4E00>";/
+ "<U5341><U4E8C>"
+% 週日, 週一, 週二, 週三, 週四, 週五, 週六
+day "<U9031><U65E5>";/
+ "<U9031><U4E00>";/
+ "<U9031><U4E8C>";/
+ "<U9031><U4E09>";/
+ "<U9031><U56DB>";/
+ "<U9031><U4E94>";/
+ "<U9031><U516D>"
+% 日, 一, 二, 三, 四, 五, 六
+abday "<U65E5>";/
+ "<U4E00>";/
+ "<U4E8C>";/
+ "<U4E09>";/
+ "<U56DB>";/
+ "<U4E94>";/
+ "<U516D>"
+% %OC%Oy年%B%Od日 (%A) %OH時%OM分%OS秒
+d_t_fmt "<U0025><U004F><U0043><U0025><U004F><U0079><U5E74><U0025><U0042><U0025><U004F><U0064><U65E5><U0020><U0028><U0025><U0041><U0029><U0020><U0025><U004F><U0048><U6642><U0025><U004F><U004D><U5206><U0025><U004F><U0053><U79D2>"
+% %OC%Oyå¹´%B%Odæ—¥
+d_fmt "<U0025><U004F><U0043><U0025><U004F><U0079><U5E74><U0025><U0042><U0025><U004F><U0064><U65E5>"
+% %OH時%OM分%OS秒
+t_fmt "<U0025><U004F><U0048><U6642><U0025><U004F><U004D><U5206><U0025><U004F><U0053><U79D2>"
+% æœ, æš®
+am_pm "<U671D>";/
+ "<U66AE>"
+% %p %OI時%OM分%OS秒
+t_fmt_ampm "<U0025><U0070><U0020><U0025><U004F><U0049><U6642><U0025><U004F><U004D><U5206><U0025><U004F><U0053><U79D2>"
+% 公曆 %C%Oy年 %B %Oe日 %A %OH時%OM分%OS秒
+date_fmt "<U516C><U66C6><U0020><U0025><U0043><U0025><U004F><U0079><U5E74><U0020><U0025><U0042><U0020><U0025><U004F><U0065><U65E5><U0020><U0025><U0041><U0020><U0025><U004F><U0048><U6642><U0025><U004F><U004D><U5206><U0025><U004F><U0053><U79D2>"
+% 〇, 一, 二, 三, å››, 五, å…­, 七, å…«, ä¹, å, å一, å二, å三, åå››, å五, åå…­, å七, åå…«, åä¹, 廿, 廿一, 廿二, 廿三, 廿四, 廿五, 廿六, 廿七, 廿八, 廿ä¹, å…, å…一
+alt_digits "<U3007>";/
+ "<U4E00>";/
+ "<U4E8C>";/
+ "<U4E09>";/
+ "<U56DB>";/
+ "<U4E94>";/
+ "<U516D>";/
+ "<U4E03>";/
+ "<U516B>";/
+ "<U4E5D>";/
+ "<U5341>";/
+ "<U5341><U4E00>";/
+ "<U5341><U4E8C>";/
+ "<U5341><U4E09>";/
+ "<U5341><U56DB>";/
+ "<U5341><U4E94>";/
+ "<U5341><U516D>";/
+ "<U5341><U4E03>";/
+ "<U5341><U516B>";/
+ "<U5341><U4E5D>";/
+ "<U5EFF>";/
+ "<U5EFF><U4E00>";/
+ "<U5EFF><U4E8C>";/
+ "<U5EFF><U4E09>";/
+ "<U5EFF><U56DB>";/
+ "<U5EFF><U4E94>";/
+ "<U5EFF><U516D>";/
+ "<U5EFF><U4E03>";/
+ "<U5EFF><U516B>";/
+ "<U5EFF><U4E5D>";/
+ "<U5345>";/
+ "<U5345><U4E00>"
+%
+END LC_TIME
+
+LC_NUMERIC
+% .
+decimal_point "<U002E>"
+% ,
+thousands_sep "<U002C>"
+grouping 4
+END LC_NUMERIC
+
+LC_MONETARY
+% NT$
+currency_symbol "<U004E><U0054><U0024>"
+% TWD
+int_curr_symbol "<U0054><U0057><U0044><U0020>"
+% .
+mon_decimal_point "<U002E>"
+% ,
+mon_thousands_sep "<U002C>"
+mon_grouping 4
+positive_sign ""
+% -
+negative_sign "<U002D>"
+frac_digits 2
+int_frac_digits 2
+p_cs_precedes 1
+p_sep_by_space 0
+n_cs_precedes 1
+n_sep_by_space 0
+p_sign_posn 1
+n_sign_posn 1
+int_p_cs_precedes 1
+int_p_sep_by_space 0
+int_n_cs_precedes 1
+int_n_sep_by_space 0
+int_p_sign_posn 1
+int_n_sign_posn 1
+END LC_MONETARY
+
+LC_PAPER
+height 297
+width 210
+END LC_PAPER
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
+
+LC_MESSAGES
+% ^[yY是]
+yesexpr "<U005E><U005B><U0079><U0059><U662F><U005D>"
+% ^[nNéž]
+noexpr "<U005E><U005B><U006E><U004E><U975E><U005D>"
+END LC_MESSAGES
+
+LC_NAME
+% %f%d%t%g
+name_fmt "<U0025><U0066><U0025><U0064><U0025><U0074><U0025><U0067>"
+% å›
+name_gen "<U541B>"
+% 女
+name_miss "<U5973>"
+% å­
+name_mr "<U5B50>"
+% æ°
+name_mrs "<U6C0F>"
+% 娘
+name_ms "<U5A18>"
+END LC_NAME
+
+LC_ADDRESS
+% %c%N%T%N%s %h %e %r%N%b%N%d%N%f%N%a%N
+postal_fmt "<U0025><U0063><U0025><U004E><U0025><U0054><U0025><U004E><U0025><U0073><U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0064><U0025><U004E><U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>"
+% 中è¯æ°‘國
+country_name "<U4E2D><U83EF><U6C11><U570B>"
+% TW
+country_post "<U0054><U0057>"
+% TW
+country_ab2 "<U0054><U0057>"
+% TWN
+country_ab3 "<U0054><U0057><U004E>"
+country_num 158
+country_isbn 957
+% 漢語文言
+lang_name "<U6F22><U8A9E><U6587><U8A00>"
+% lzh
+lang_term "<U006C><U007A><U0068>"
+% lzh
+lang_lib "<U006C><U007A><U0068>"
+END LC_ADDRESS
+
+LC_TELEPHONE
+% +%c-%a-%l
+tel_int_fmt "<U002B><U0025><U0063><U002D><U0025><U0061><U002D><U0025><U006C>"
+% %A-%l
+tel_dom_fmt "<U0025><U0041><U002D><U0025><U006C>"
+% 00
+int_select "<U0030><U0030>"
+% 886
+int_prefix "<U0038><U0038><U0036>"
+END LC_TELEPHONE
diff --git a/localedata/locales/mag_IN b/localedata/locales/mag_IN
index 69f319a23a..a33ab94268 100644
--- a/localedata/locales/mag_IN
+++ b/localedata/locales/mag_IN
@@ -29,7 +29,7 @@ category "mag_IN:2012";LC_PAPER
category "mag_IN:2012";LC_NAME
category "mag_IN:2012";LC_ADDRESS
category "mag_IN:2012";LC_TELEPHONE
-
+category "mag_IN:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -154,7 +154,21 @@ END LC_NAME
LC_ADDRESS
-copy "hi_IN"
+
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% मगही
+lang_name "<U092E><U0917><U0939><U0940>"
+% mag
+lang_term "<U006D><U0061><U0067>"
+% mag
+lang_lib "<U006D><U0061><U0067>"
END LC_ADDRESS
@@ -164,5 +178,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/mai_IN b/localedata/locales/mai_IN
index 32bd127211..e84bd91d2a 100644
--- a/localedata/locales/mai_IN
+++ b/localedata/locales/mai_IN
@@ -28,7 +28,7 @@ category "mai_IN:2006";LC_PAPER
category "mai_IN:2006";LC_NAME
category "mai_IN:2006";LC_ADDRESS
category "mai_IN:2006";LC_TELEPHONE
-
+category "mai_IN:2006";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -70,7 +70,21 @@ END LC_NAME
LC_ADDRESS
-copy "hi_IN"
+
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% मैथिली
+lang_name "<U092E><U0948><U0925><U093F><U0932><U0940>"
+% mai
+lang_term "<U006D><U0061><U0069>"
+% mai
+lang_lib "<U006D><U0061><U0069>"
END LC_ADDRESS
@@ -80,5 +94,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/mg_MG b/localedata/locales/mg_MG
index 4f738cae52..aaad1fcd52 100644
--- a/localedata/locales/mg_MG
+++ b/localedata/locales/mg_MG
@@ -39,7 +39,7 @@ category "mg_MG:2000";LC_PAPER
category "mg_MG:2000";LC_NAME
category "mg_MG:2000";LC_ADDRESS
category "mg_MG:2000";LC_TELEPHONE
-
+category "mg_MG:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -159,7 +159,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -178,4 +179,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004D><U0047>"
country_ab3 "<U004D><U0044><U0047>"
country_num 450
+% RM
+country_car "<U0052><U004D>"
+% Malagasy
+lang_name "<U004D><U0061><U006C><U0061><U0067><U0061><U0073><U0079>"
+% mg
+lang_ab "<U006D><U0067>"
+% mlg
+lang_term "<U006D><U006C><U0067>"
+% mlg
+lang_lib "<U006D><U006C><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/mhr_RU b/localedata/locales/mhr_RU
index 8ba17e8b33..4b79dc0e90 100644
--- a/localedata/locales/mhr_RU
+++ b/localedata/locales/mhr_RU
@@ -41,7 +41,7 @@ category "mhr_RU:2000";LC_PAPER
category "mhr_RU:2000";LC_NAME
category "mhr_RU:2000";LC_ADDRESS
category "mhr_RU:2000";LC_TELEPHONE
-
+category "mhr_RU:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -142,7 +142,8 @@ copy "ru_RU"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "ru_RU"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -159,4 +160,10 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0052><U0055>"
country_ab3 "<U0052><U0055><U0053>"
country_num 643
+% RUS
+country_car "<U0052><U0055><U0053>"
+% mhr
+lang_term "<U006D><U0068><U0072>"
+% mhr
+lang_lib "<U006D><U0068><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/mi_NZ b/localedata/locales/mi_NZ
index caea664907..1f13552cae 100644
--- a/localedata/locales/mi_NZ
+++ b/localedata/locales/mi_NZ
@@ -150,6 +150,7 @@ copy "en_NZ"
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -160,7 +161,24 @@ END LC_NAME
LC_ADDRESS
% FIXME
-copy "en_NZ"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U004E><U005A>"
+country_ab3 "<U004E><U005A><U004C>"
+country_num 554
+% NZ
+country_car "<U004E><U005A>"
+% Te Reo
+lang_name "<U0054><U0065><U0020><U0052><U0065><U006F>"
+% mi
+lang_ab "<U006D><U0069>"
+% mri
+lang_term "<U006D><U0072><U0069>"
+% mao
+lang_lib "<U006D><U0061><U006F>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/mk_MK b/localedata/locales/mk_MK
index 8c137a6502..b751679d86 100644
--- a/localedata/locales/mk_MK
+++ b/localedata/locales/mk_MK
@@ -31,7 +31,7 @@ category "mk_MK:2000";LC_PAPER
category "mk_MK:2000";LC_NAME
category "mk_MK:2000";LC_ADDRESS
category "mk_MK:2000";LC_TELEPHONE
-
+category "mk_MK:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -153,8 +153,8 @@ country_ab3 "<U004d><U004b><U0044>"
country_car "<U004d><U004b>"
country_num 807
country_isbn "9989"
-lang_name "<U004d><U0061><U0063><U0065><U0064><U006f>/
-<U006e><U0069><U0061><U006e>"
+% македонÑки јазик
+lang_name "<U043C><U0430><U043A><U0435><U0434><U043E><U043D><U0441><U043A>/<U0438><U0020><U0458><U0430><U0437><U0438><U043A>"
lang_ab "<U006d><U006b>"
lang_term "<U006d><U006b><U0064>"
lang_lib "<U006d><U0061><U0063>"
@@ -166,5 +166,6 @@ width 210
END LC_PAPER
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ml_IN b/localedata/locales/ml_IN
index 564f0de5d6..83077cc6a7 100644
--- a/localedata/locales/ml_IN
+++ b/localedata/locales/ml_IN
@@ -209,6 +209,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% മലയാളം
+lang_name "<U0D2E><U0D32><U0D2F><U0D3E><U0D33><U0D02>"
+% ml
+lang_ab "<U006D><U006C>"
+% mal
+lang_term "<U006D><U0061><U006C>"
+% mal
+lang_lib "<U006D><U0061><U006C>"
END LC_ADDRESS
%
LC_TELEPHONE
@@ -216,6 +226,6 @@ copy "hi_IN"
END LC_TELEPHONE
%
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
-%
diff --git a/localedata/locales/mn_MN b/localedata/locales/mn_MN
index 8da3878209..6649537f00 100644
--- a/localedata/locales/mn_MN
+++ b/localedata/locales/mn_MN
@@ -33,7 +33,7 @@ category "mn_MN:2000";LC_PAPER
category "mn_MN:2000";LC_NAME
category "mn_MN:2000";LC_ADDRESS
category "mn_MN:2000";LC_TELEPHONE
-
+category "mn_MN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -255,7 +255,8 @@ country_ab3 "<U004D><U004E><U0047>"
country_num 496
country_car "<U004D><U0047><U004C>"
country_isbn 99929
-lang_name "<U004D><U006F><U006E><U0067><U006F><U006C><U0069><U0061><U006E>"
+% Монгол Ñ…Ñл
+lang_name "<U041C><U043E><U043D><U0433><U043E><U043B><U0020><U0445><U044D><U043B>"
lang_ab "<U006D><U006E>"
lang_term "<U006D><U006F><U006E>"
lang_lib "<U006D><U006F><U006E>"
@@ -269,5 +270,6 @@ int_prefix "<U0039><U0037><U0036>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/mni_IN b/localedata/locales/mni_IN
index ff1ca4f894..187e134e79 100644
--- a/localedata/locales/mni_IN
+++ b/localedata/locales/mni_IN
@@ -27,7 +27,7 @@ category "mni_IN:2012";LC_PAPER
category "mni_IN:2012";LC_NAME
category "mni_IN:2012";LC_ADDRESS
category "mni_IN:2012";LC_TELEPHONE
-
+category "mni_IN:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -158,7 +158,19 @@ END LC_NAME
LC_ADDRESS
-copy "bn_IN"
+
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U0062><U0025><U0065><U0025><U0072>"
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% মৈতৈলোনà§
+lang_name "<U09AE><U09C8><U09A4><U09C8><U09B2><U09CB><U09A8><U09CD>"
+% mni
+lang_term "<U006D><U006E><U0069>"
+% mni
+lang_lib "<U006D><U006E><U0069>"
END LC_ADDRESS
@@ -168,5 +180,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "bn_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/mr_IN b/localedata/locales/mr_IN
index 7ce9dc58d8..161071a65e 100644
--- a/localedata/locales/mr_IN
+++ b/localedata/locales/mr_IN
@@ -27,7 +27,7 @@ category "mr_IN:2000";LC_PAPER
category "mr_IN:2000";LC_NAME
category "mr_IN:2000";LC_ADDRESS
category "mr_IN:2000";LC_TELEPHONE
-
+category "mr_IN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -219,6 +219,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% मराठी
+lang_name "<U092E><U0930><U093E><U0920><U0940>"
+% mr
+lang_ab "<U006D><U0072>"
+% mar
+lang_term "<U006D><U0061><U0072>"
+% mar
+lang_lib "<U006D><U0061><U0072>"
END LC_ADDRESS
@@ -228,5 +238,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ms_MY b/localedata/locales/ms_MY
index 84c866e627..8ce4c0c931 100644
--- a/localedata/locales/ms_MY
+++ b/localedata/locales/ms_MY
@@ -30,7 +30,7 @@ category "ms_MY:2000";LC_PAPER
category "ms_MY:2000";LC_NAME
category "ms_MY:2000";LC_ADDRESS
category "ms_MY:2000";LC_TELEPHONE
-
+category "ms_MY:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -201,6 +201,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U004D><U0059>"
country_ab3 "<U004D><U0059><U0053>"
country_num 458
+% MAL
+country_car "<U004D><U0041><U004C>"
+% Bahasa Melayu
+lang_name "<U0042><U0061><U0068><U0061><U0073><U0061><U0020><U004D><U0065><U006C><U0061><U0079><U0075>"
+% ms
+lang_ab "<U006D><U0073>"
+% msa
+lang_term "<U006D><U0073><U0061>"
+% may
+lang_lib "<U006D><U0061><U0079>"
END LC_ADDRESS
@@ -214,8 +224,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT
-% category generated by IBM Basic CountryPack Transformer.
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/mt_MT b/localedata/locales/mt_MT
index e79081a239..f0f64c2c55 100644
--- a/localedata/locales/mt_MT
+++ b/localedata/locales/mt_MT
@@ -31,7 +31,7 @@ category "mt_MT:2000";LC_PAPER
category "mt_MT:2000";LC_NAME
category "mt_MT:2000";LC_ADDRESS
category "mt_MT:2000";LC_TELEPHONE
-
+category "mt_MT:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -290,6 +290,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U004D><U0054>"
country_ab3 "<U004D><U004C><U0054>"
country_num 470
+% M
+country_car "<U004D>"
+% Malti
+lang_name "<U004D><U0061><U006C><U0074><U0069>"
+% mt
+lang_ab "<U006D><U0074>"
+% mlt
+lang_term "<U006D><U006C><U0074>"
+% mlt
+lang_lib "<U006D><U006C><U0074>"
END LC_ADDRESS
@@ -303,8 +313,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT
-% category generated by IBM Basic CountryPack Transformer.
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/my_MM b/localedata/locales/my_MM
index d7c40f364b..d9a2db197f 100644
--- a/localedata/locales/my_MM
+++ b/localedata/locales/my_MM
@@ -274,8 +274,9 @@ nostr "<U1019><U101F><U102F><U1010><U103A><U1018><U1030><U1038>"
END LC_MESSAGES
-% Metric Measurement system (ISO 1000)
LC_MEASUREMENT
+% http://en.wikipedia.org/wiki/Burmese_units_of_measurement
+% metric
measurement 1
END LC_MEASUREMENT
@@ -312,6 +313,8 @@ postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0064><U0025><U004E><U0025><U0
country_name "<U1019><U103C><U1014><U103A><U1019><U102C>"
country_post "<U004D><U0079><U0061><U006E><U006D><U0061><U0072>"
country_ab2 "<U004D><U004D>"
+% BA
+country_car "<U0042><U0041>"
lang_ab "<U006D><U0079>"
lang_name "<U1017><U1019><U102C>"
lang_term "<U006D><U0079><U0061>"
diff --git a/localedata/locales/nan_TW b/localedata/locales/nan_TW
new file mode 100644
index 0000000000..0c11174085
--- /dev/null
+++ b/localedata/locales/nan_TW
@@ -0,0 +1,221 @@
+comment_char %
+escape_char /
+% Charset: UTF-8
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Min Nan Chinese locale for the Republic of China
+%
+% Prepared and contributed to glibc by Wei-Lun Chao <bluebat@member.fsf.org>
+%
+% build with: localedef -f UTF-8 -i nan_TW nan_TW
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_IDENTIFICATION
+title "Min Nan Chinese locale for the Republic of China"
+source ""
+address ""
+contact ""
+email "bug-glibc-locales@gnu.org"
+tel ""
+fax ""
+language "Min Nan Chinese"
+territory "Republic of China"
+revision "0.1"
+date "2013-06-02"
+%
+category "nan_TW:2000";LC_IDENTIFICATION
+category "nan_TW:2000";LC_CTYPE
+category "nan_TW:2000";LC_COLLATE
+category "nan_TW:2000";LC_TIME
+category "nan_TW:2000";LC_NUMERIC
+category "nan_TW:2000";LC_MONETARY
+category "nan_TW:2000";LC_PAPER
+category "nan_TW:2000";LC_MEASUREMENT
+category "nan_TW:2000";LC_MESSAGES
+category "nan_TW:2000";LC_NAME
+category "nan_TW:2000";LC_ADDRESS
+category "nan_TW:2000";LC_TELEPHONE
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "i18n"
+class "hanzi"; /
+<U3007>;/
+<U3400>..<U4DBF>;/
+<U4E00>..<U9FA5>;/
+<UF900>..<UFA6A>;/
+<U00020000>..<U0002A6D6>;/
+<U0002F800>..<U0002FA1D>
+END LC_CTYPE
+
+LC_COLLATE
+copy "iso14651_t1"
+END LC_COLLATE
+
+LC_TIME
+% 一月, 二月, 三月, 四月, 五月, 六月, 七月, 八月, ä¹æœˆ, å月, å一月, å二月
+mon "<U4E00><U6708>";/
+ "<U4E8C><U6708>";/
+ "<U4E09><U6708>";/
+ "<U56DB><U6708>";/
+ "<U4E94><U6708>";/
+ "<U516D><U6708>";/
+ "<U4E03><U6708>";/
+ "<U516B><U6708>";/
+ "<U4E5D><U6708>";/
+ "<U5341><U6708>";/
+ "<U5341><U4E00><U6708>";/
+ "<U5341><U4E8C><U6708>"
+% 1月, 2月, 3月, 4月, 5月, 6月, 7月, 8月, 9月, 10月, 11月, 12月
+abmon "<U0020><U0031><U6708>";/
+ "<U0020><U0032><U6708>";/
+ "<U0020><U0033><U6708>";/
+ "<U0020><U0034><U6708>";/
+ "<U0020><U0035><U6708>";/
+ "<U0020><U0036><U6708>";/
+ "<U0020><U0037><U6708>";/
+ "<U0020><U0038><U6708>";/
+ "<U0020><U0039><U6708>";/
+ "<U0031><U0030><U6708>";/
+ "<U0031><U0031><U6708>";/
+ "<U0031><U0032><U6708>"
+% 禮拜日, 禮拜一, 禮拜二, 禮拜三, 禮拜四, 禮拜五, 禮拜六
+day "<U79AE><U62DC><U65E5>";/
+ "<U79AE><U62DC><U4E00>";/
+ "<U79AE><U62DC><U4E8C>";/
+ "<U79AE><U62DC><U4E09>";/
+ "<U79AE><U62DC><U56DB>";/
+ "<U79AE><U62DC><U4E94>";/
+ "<U79AE><U62DC><U516D>"
+% 日, 一, 二, 三, 四, 五, 六
+abday "<U65E5>";/
+ "<U4E00>";/
+ "<U4E8C>";/
+ "<U4E09>";/
+ "<U56DB>";/
+ "<U4E94>";/
+ "<U516D>"
+% %Y年%m月%d日 (%A) %H點%M分%S秒
+d_t_fmt "<U0025><U0059><U5E74><U0025><U006D><U6708><U0025><U0064><U65E5><U0020><U0028><U0025><U0041><U0029><U0020><U0025><U0048><U9EDE><U0025><U004D><U5206><U0025><U0053><U79D2>"
+% %Y年%m月%d日
+d_fmt "<U0025><U0059><U5E74><U0025><U006D><U6708><U0025><U0064><U65E5>"
+% %H點%M分%S秒
+t_fmt "<U0025><U0048><U9EDE><U0025><U004D><U5206><U0025><U0053><U79D2>"
+% 頂晡, 下晡
+am_pm "<U9802><U6661>";/
+ "<U4E0B><U6661>"
+% %p %I點%M分%S秒
+t_fmt_ampm "<U0025><U0070><U0020><U0025><U0049><U9EDE><U0025><U004D><U5206><U0025><U0053><U79D2>"
+% %Yå¹´ %b %eæ—¥ %A %H:%M:%S %Z
+date_fmt "<U0025><U0059><U5E74><U0020><U0025><U0062><U0020><U0025><U0065><U65E5><U0020><U0025><U0041><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U005A>"
+END LC_TIME
+
+LC_NUMERIC
+% .
+decimal_point "<U002E>"
+% ,
+thousands_sep "<U002C>"
+grouping 4
+END LC_NUMERIC
+
+LC_MONETARY
+% NT$
+currency_symbol "<U004E><U0054><U0024>"
+% TWD
+int_curr_symbol "<U0054><U0057><U0044><U0020>"
+% .
+mon_decimal_point "<U002E>"
+% ,
+mon_thousands_sep "<U002C>"
+mon_grouping 4
+positive_sign ""
+% -
+negative_sign "<U002D>"
+frac_digits 2
+int_frac_digits 2
+p_cs_precedes 1
+p_sep_by_space 0
+n_cs_precedes 1
+n_sep_by_space 0
+p_sign_posn 1
+n_sign_posn 1
+int_p_cs_precedes 1
+int_p_sep_by_space 0
+int_n_cs_precedes 1
+int_n_sep_by_space 0
+int_p_sign_posn 1
+int_n_sign_posn 1
+END LC_MONETARY
+
+LC_PAPER
+height 297
+width 210
+END LC_PAPER
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
+
+LC_MESSAGES
+% ^[yY是]
+yesexpr "<U005E><U005B><U0079><U0059><U662F><U005D>"
+% ^[nN伓]
+noexpr "<U005E><U005B><U006E><U004E><U4F13><U005D>"
+END LC_MESSAGES
+
+LC_NAME
+% %f%t%g%t%d
+name_fmt "<U0025><U0066><U0025><U0074><U0025><U0067><U0025><U0074><U0025><U0064>"
+% å›
+name_gen "<U541B>"
+% å°å§
+name_miss "<U5C0F><U59D0>"
+% 先生
+name_mr "<U5148><U751F>"
+% 夫人
+name_mrs "<U592B><U4EBA>"
+% 女士
+name_ms "<U5973><U58EB>"
+END LC_NAME
+
+LC_ADDRESS
+% %c%N%T%N%s %h %e %r%N%b%N%d%N%f%N%a%N
+postal_fmt "<U0025><U0063><U0025><U004E><U0025><U0054><U0025><U004E><U0025><U0073><U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0064><U0025><U004E><U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>"
+% 中è¯æ°‘國
+country_name "<U4E2D><U83EF><U6C11><U570B>"
+% TW
+country_post "<U0054><U0057>"
+% TW
+country_ab2 "<U0054><U0057>"
+% TWN
+country_ab3 "<U0054><U0057><U004E>"
+country_num 158
+country_isbn 957
+% 漢語閩å—語
+lang_name "<U6F22><U8A9E><U95A9><U5357><U8A9E>"
+% nan
+lang_term "<U006E><U0061><U006E>"
+% nan
+lang_lib "<U006E><U0061><U006E>"
+END LC_ADDRESS
+
+LC_TELEPHONE
+% +%c-%a-%l
+tel_int_fmt "<U002B><U0025><U0063><U002D><U0025><U0061><U002D><U0025><U006C>"
+% %A-%l
+tel_dom_fmt "<U0025><U0041><U002D><U0025><U006C>"
+% 00
+int_select "<U0030><U0030>"
+% 886
+int_prefix "<U0038><U0038><U0036>"
+END LC_TELEPHONE
diff --git a/localedata/locales/nan_TW@latin b/localedata/locales/nan_TW@latin
index bf8a6cd903..a1e7d499f7 100644
--- a/localedata/locales/nan_TW@latin
+++ b/localedata/locales/nan_TW@latin
@@ -162,6 +162,7 @@ width 210
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/nb_NO b/localedata/locales/nb_NO
index e4916438c6..513d50c205 100644
--- a/localedata/locales/nb_NO
+++ b/localedata/locales/nb_NO
@@ -42,7 +42,7 @@ category "nb_NO:2000";LC_PAPER
category "nb_NO:2000";LC_NAME
category "nb_NO:2000";LC_ADDRESS
category "nb_NO:2000";LC_TELEPHONE
-
+category "nb_NO:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -224,7 +224,8 @@ int_prefix "<U0034><U0037>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -241,4 +242,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004E><U004F>"
country_ab3 "<U004E><U004F><U0052>"
country_num 578
+% N
+country_car "<U004E>"
+% Bokmål
+lang_name "<U0042><U006F><U006B><U006D><U00E5><U006C>"
+% nb
+lang_ab "<U006E><U0062>"
+% nob
+lang_term "<U006E><U006F><U0062>"
+% nob
+lang_lib "<U006E><U006F><U0062>"
END LC_ADDRESS
diff --git a/localedata/locales/nds_DE b/localedata/locales/nds_DE
index 02c1b1a451..e1ab6e03f6 100644
--- a/localedata/locales/nds_DE
+++ b/localedata/locales/nds_DE
@@ -83,7 +83,8 @@ copy "de_DE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "de_DE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NUMERIC
diff --git a/localedata/locales/nds_NL b/localedata/locales/nds_NL
index 38579472df..14051f6722 100644
--- a/localedata/locales/nds_NL
+++ b/localedata/locales/nds_NL
@@ -82,7 +82,8 @@ copy "nl_NL"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "nl_NL"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NUMERIC
diff --git a/localedata/locales/ne_NP b/localedata/locales/ne_NP
index 875d7a3961..a4a0f5f944 100644
--- a/localedata/locales/ne_NP
+++ b/localedata/locales/ne_NP
@@ -27,7 +27,7 @@ category "ne_NP:2003";LC_PAPER
category "ne_NP:2003";LC_NAME
category "ne_NP:2003";LC_ADDRESS
category "ne_NP:2003";LC_TELEPHONE
-
+category "ne_NP:2003";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -195,6 +195,16 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U004E><U0050>"
country_ab3 "<U004E><U0050><U004C>"
country_num 524
+% NEP
+country_car "<U004E><U0045><U0050>"
+% नेपाली
+lang_name "<U0928><U0947><U092A><U093E><U0932><U0940>"
+% ne
+lang_ab "<U006E><U0065>"
+% nep
+lang_term "<U006E><U0065><U0070>"
+% nep
+lang_lib "<U006E><U0065><U0070>"
END LC_ADDRESS
@@ -209,8 +219,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/nhn_MX b/localedata/locales/nhn_MX
index f2af76b6b2..d57ff84271 100644
--- a/localedata/locales/nhn_MX
+++ b/localedata/locales/nhn_MX
@@ -132,7 +132,8 @@ copy "es_MX"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -140,5 +141,20 @@ copy "es_MX"
END LC_NAME
LC_ADDRESS
-copy "es_MX"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U004D><U0058>"
+country_ab3 "<U004D><U0045><U0058>"
+country_num 484
+% MEX
+country_car "<U004D><U0045><U0058>"
+% Tlaxcala-Puebla Nahuatl
+lang_name "<U0054><U006C><U0061><U0078><U0063><U0061><U006C><U0061><U002D><U0050><U0075><U0065><U0062><U006C><U0061><U0020><U004E><U0061><U0068><U0075><U0061><U0074><U006C>"
+% nhn
+lang_term "<U006E><U0068><U006E>"
+% nhn
+lang_lib "<U006E><U0068><U006E>"
END LC_ADDRESS
diff --git a/localedata/locales/niu_NU b/localedata/locales/niu_NU
index 9b2c4510d1..3a4f02e303 100644
--- a/localedata/locales/niu_NU
+++ b/localedata/locales/niu_NU
@@ -148,6 +148,7 @@ copy "en_NZ"
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -183,6 +184,8 @@ country_ab3 "<U004E><U0049><U0055>"
country_num 570
% niu
lang_term "<U006E><U0069><U0075>"
+% niu
+lang_lib "<U006E><U0069><U0075>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/niu_NZ b/localedata/locales/niu_NZ
index 25f58a90bf..eb746f25fa 100644
--- a/localedata/locales/niu_NZ
+++ b/localedata/locales/niu_NZ
@@ -149,6 +149,7 @@ copy "en_NZ"
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -181,8 +182,12 @@ country_ab2 "<U004E><U005A>"
% NZL
country_ab3 "<U004E><U005A><U004C>"
country_num 554
+% NZ
+country_car "<U004E><U005A>"
% niu
lang_term "<U006E><U0069><U0075>"
+% niu
+lang_lib "<U006E><U0069><U0075>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/nl_AW b/localedata/locales/nl_AW
index e9fe8f82e1..5989f2ecc6 100644
--- a/localedata/locales/nl_AW
+++ b/localedata/locales/nl_AW
@@ -27,7 +27,7 @@ category "nl_AW:2008";LC_PAPER
category "nl_AW:2008";LC_NAME
category "nl_AW:2008";LC_ADDRESS
category "nl_AW:2008";LC_TELEPHONE
-
+category "nl_AW:2008";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -85,6 +85,11 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0041><U0057>"
country_ab3 "<U0041><U0042><U0057>"
country_num 533
+% Nederlands
+lang_name "<U004E><U0065><U0064><U0065><U0072><U006C><U0061><U006E><U0064><U0073>"
+lang_ab "<U006E><U006C>"
+lang_term "<U006E><U006C><U0064>"
+lang_lib "<U0064><U0075><U0074>"
END LC_ADDRESS
LC_TELEPHONE
@@ -96,5 +101,6 @@ int_select "<U0030><U0031><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_US"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/nl_BE b/localedata/locales/nl_BE
index 5bb5b18d81..1a6541900a 100644
--- a/localedata/locales/nl_BE
+++ b/localedata/locales/nl_BE
@@ -43,7 +43,7 @@ category "nl_BE:2000";LC_PAPER
category "nl_BE:2000";LC_NAME
category "nl_BE:2000";LC_ADDRESS
category "nl_BE:2000";LC_TELEPHONE
-
+category "nl_BE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -117,7 +117,8 @@ copy "fr_BE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "fr_BE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -134,4 +135,11 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0042><U0045>"
country_ab3 "<U0042><U0045><U004C>"
country_num 056
+% Nederlands
+lang_name "<U004E><U0065><U0064><U0065><U0072><U006C><U0061><U006E><U0064><U0073>"
+% B
+country_car "<U0042>"
+lang_ab "<U006E><U006C>"
+lang_term "<U006E><U006C><U0064>"
+lang_lib "<U0064><U0075><U0074>"
END LC_ADDRESS
diff --git a/localedata/locales/nl_BE@euro b/localedata/locales/nl_BE@euro
index 413e8def48..df36cee192 100644
--- a/localedata/locales/nl_BE@euro
+++ b/localedata/locales/nl_BE@euro
@@ -35,7 +35,7 @@ category "nl_BE@euro:2000";LC_PAPER
category "nl_BE@euro:2000";LC_NAME
category "nl_BE@euro:2000";LC_ADDRESS
category "nl_BE@euro:2000";LC_TELEPHONE
-
+category "nl_BE@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -71,7 +71,8 @@ copy "nl_BE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "nl_BE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/nl_NL b/localedata/locales/nl_NL
index 6f832927a3..3e5f24f7f9 100644
--- a/localedata/locales/nl_NL
+++ b/localedata/locales/nl_NL
@@ -42,7 +42,7 @@ category "nl_NL:2000";LC_PAPER
category "nl_NL:2000";LC_NAME
category "nl_NL:2000";LC_ADDRESS
category "nl_NL:2000";LC_TELEPHONE
-
+category "nl_NL:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -143,8 +143,8 @@ int_prefix "<U0033><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -162,7 +162,8 @@ country_ab2 "<U004E><U004C>"
country_ab3 "<U004E><U004C><U0044>"
country_num 528
country_car "<U004E><U004C>"
-lang_name "<U0064><U0075><U0074><U0063><U0068>"
+% Nederlands
+lang_name "<U004E><U0065><U0064><U0065><U0072><U006C><U0061><U006E><U0064><U0073>"
lang_ab "<U006E><U006C>"
lang_term "<U006E><U006C><U0064>"
lang_lib "<U0064><U0075><U0074>"
diff --git a/localedata/locales/nl_NL@euro b/localedata/locales/nl_NL@euro
index b0cc689d10..e6af083d99 100644
--- a/localedata/locales/nl_NL@euro
+++ b/localedata/locales/nl_NL@euro
@@ -35,7 +35,7 @@ category "nl_NL@euro:2000";LC_PAPER
category "nl_NL@euro:2000";LC_NAME
category "nl_NL@euro:2000";LC_ADDRESS
category "nl_NL@euro:2000";LC_TELEPHONE
-
+category "nl_NL@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -71,7 +71,8 @@ copy "nl_NL"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "nl_NL"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/nn_NO b/localedata/locales/nn_NO
index efd4e5bae8..5114196bae 100644
--- a/localedata/locales/nn_NO
+++ b/localedata/locales/nn_NO
@@ -28,7 +28,7 @@ category "nn_NO:2000";LC_PAPER
category "nn_NO:2000";LC_NAME
category "nn_NO:2000";LC_ADDRESS
category "nn_NO:2000";LC_TELEPHONE
-
+category "nn_NO:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -151,7 +151,24 @@ END LC_NAME
LC_ADDRESS
-copy "nb_NO"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U004E><U004F>"
+country_ab3 "<U004E><U004F><U0052>"
+country_num 578
+% N
+country_car "<U004E>"
+% Nynorsk
+lang_name "<U004E><U0079><U006E><U006F><U0072><U0073><U006B>"
+% nn
+lang_ab "<U006E><U006E>"
+% nno
+lang_term "<U006E><U006E><U006F>"
+% nno
+lang_lib "<U006E><U006E><U006F>"
END LC_ADDRESS
@@ -161,5 +178,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "nb_NO"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/nr_ZA b/localedata/locales/nr_ZA
index 698b9d1b15..ae27bcc3bc 100644
--- a/localedata/locales/nr_ZA
+++ b/localedata/locales/nr_ZA
@@ -184,7 +184,8 @@ copy "en_ZA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_ZA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -227,7 +228,7 @@ country_post "<U005A><U0041>"
% UN Geneve 1949:68 Distinguishing signs of vehicles in international traffic
% http://www.unece.org/trans/conventn/disting-signs-5-2001.pdf
-% "ZA"
+% ZA
country_car "<U005A><U0041>"
% FIXME define the following correctly
@@ -239,9 +240,12 @@ lang_name "<U0049><U0073><U0069><U004E><U0064><U0065><U0062><U0065><U006C><U0065
% ISO 639 two and three letter language names
% see http://www.loc.gov/standards/iso639-2/englangn.html
-% "nr", "nbl"
+% nr
lang_ab "<U006E><U0072>"
+% nbl
lang_term "<U006E><U0062><U006C>"
+% nbl
+lang_lib "<U006E><U0062><U006C>"
% Representation of postal addresses (minus the addressee's name) in South
% Africa. (Ignored for now)
@@ -276,9 +280,9 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
% ISO 3166 country number and 2 and 3 letter abreviations
% http://www.unicode.org/onlinedat/countries.html
-% "ZA", "ZAF"
-country_num 710
+% ZA
country_ab2 "<U005A><U0041>"
+% ZAF
country_ab3 "<U005A><U0041><U0046>"
-
+country_num 710
END LC_ADDRESS
diff --git a/localedata/locales/nso_ZA b/localedata/locales/nso_ZA
index 5970e52ba6..df8eb75b4d 100644
--- a/localedata/locales/nso_ZA
+++ b/localedata/locales/nso_ZA
@@ -179,7 +179,8 @@ copy "en_ZA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_ZA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -223,7 +224,7 @@ country_post "<U005A><U0041>"
% UN Geneve 1949:68 Distinguishing signs of vehicles in international traffic
% http://www.unece.org/trans/conventn/disting-signs-5-2001.pdf
-% "ZA"
+% ZA
country_car "<U005A><U0041>"
% FIXME define the following correctly
@@ -272,10 +273,11 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
% ISO 3166 country number and 2 and 3 letter abreviations
% http://www.unicode.org/onlinedat/countries.html
-% "ZA", "ZAF"
-country_num 710
+% ZA
country_ab2 "<U005A><U0041>"
+% ZAF
country_ab3 "<U005A><U0041><U0046>"
+country_num 710
END LC_ADDRESS
diff --git a/localedata/locales/oc_FR b/localedata/locales/oc_FR
index 2a7f836434..b95d1d6c87 100644
--- a/localedata/locales/oc_FR
+++ b/localedata/locales/oc_FR
@@ -47,9 +47,12 @@ country_num 250
country_isbn "2"
country_car "F"
% FIXME lang_name "Occitan" in Occitan ?
-lang_ab "oc"
-lang_term "oci"
-lang_lib "oci"
+% oc
+lang_ab "<U006F><U0063>"
+% oci
+lang_term "<U006F><U0063><U0069>"
+% oci
+lang_lib "<U006F><U0063><U0069>"
END LC_ADDRESS
LC_CTYPE
@@ -81,7 +84,8 @@ copy "fr_FR"
END LC_PAPER
LC_MEASUREMENT
-copy "fr_FR"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_TELEPHONE
diff --git a/localedata/locales/om_ET b/localedata/locales/om_ET
index 6ccd5feb25..b46544a6db 100644
--- a/localedata/locales/om_ET
+++ b/localedata/locales/om_ET
@@ -77,7 +77,8 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ET"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
@@ -140,7 +141,8 @@ country_post "<U0045><U0054><U0048>"
country_ab2 "<U0045><U0054>"
country_ab3 "<U0045><U0054><U0048>"
country_num 231 % 210 found in at least one ISO 3166 doc
-% country_car unknown
+% ETH
+country_car "<U0045><U0054><U0048>"
% country_isbn unknown, Need ISO 2108
lang_name "<U004F><U0072><U006F><U006D><U006F><U006F>"
lang_ab "<U006F><U006D>"
diff --git a/localedata/locales/om_KE b/localedata/locales/om_KE
index fcdae86e74..eaa189e63d 100644
--- a/localedata/locales/om_KE
+++ b/localedata/locales/om_KE
@@ -56,7 +56,7 @@ END LC_IDENTIFICATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Qubee Specifc Data:
+% Qubee Specific Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -141,17 +141,14 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Kenya Specifc and Shared Data:
+% Kenya Specific and Shared Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-%
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT category.
-%
+% metric
measurement 1
-%
END LC_MEASUREMENT
LC_MONETARY
@@ -240,7 +237,8 @@ country_post "<U004B><U0045><U004E>"
country_ab2 "<U004B><U0045>"
country_ab3 "<U004B><U0045><U004E>"
country_num 404
-% country_car unknown
+% EAK
+country_car "<U0045><U0041><U004B>"
% country_isbn unknown, Need ISO 2108
lang_name "<U004F><U0072><U006F><U006D><U006F><U006F>"
lang_ab "<U006F><U006D>"
diff --git a/localedata/locales/or_IN b/localedata/locales/or_IN
index 2e28a0ab0c..71e0f83e70 100644
--- a/localedata/locales/or_IN
+++ b/localedata/locales/or_IN
@@ -1,19 +1,19 @@
comment_char %
escape_char /
-% Oriya locale for India.
+% Odia locale for India.
% Contributed by Masahide Washizawa <washi at jp ibm com>
%%%%%%%%%%%%%
LC_IDENTIFICATION
-title "Oriya language locale for India"
+title "Odia language locale for India"
source "IBM AP Linux Technology Center, Yamato Software Laboratory"
address "1623-14, Shimotsuruma, Yamato-shi, Kanagawa-ken, 242-8502, Japan"
contact ""
email "bug-glibc@gnu.org"
tel ""
fax ""
-language "Oriya"
+language "Odia"
territory "India"
revision "1.0"
date "2006-05-25"
@@ -29,16 +29,17 @@ category "or_IN:2004";LC_PAPER
category "or_IN:2004";LC_NAME
category "or_IN:2004";LC_ADDRESS
category "or_IN:2004";LC_TELEPHONE
+category "or_IN:2004";LC_MEASUREMENT
END LC_IDENTIFICATION
%%%%%%%%%%%%%
LC_CTYPE
copy "i18n"
-% Oriya uses the alternate digits U+0B66..U+0B6F
+% Odia uses the alternate digits U+0B66..U+0B6F
outdigit <U0B66>..<U0B6F>
-% This is used in the scanf family of functions to read Oriya numbers
+% This is used in the scanf family of functions to read Odia numbers
% using "%Id" and such.
map to_inpunct; /
(<U0030>,<U0B66>); /
@@ -808,10 +809,19 @@ END LC_NAME
%%%%%%%%%%%%%
LC_ADDRESS
-% This is the ISO_IEC TR14652 Locale definition for the
-% LC_ADDRESS
postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
<U0025><U0062><U0025><U0065><U0025><U0072>"
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% or
+lang_ab "<U006F><U0072>"
+% ori
+lang_term "<U006F><U0072><U0069>"
+% ori
+lang_lib "<U006F><U0072><U0069>"
END LC_ADDRESS
%%%%%%%%%%%%%
@@ -824,5 +834,6 @@ END LC_TELEPHONE
%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/os_RU b/localedata/locales/os_RU
index 6f6d00bc8f..3686bfaaf3 100644
--- a/localedata/locales/os_RU
+++ b/localedata/locales/os_RU
@@ -42,7 +42,7 @@ category "os_RU:2000";LC_PAPER
category "os_RU:2000";LC_NAME
category "os_RU:2000";LC_ADDRESS
category "os_RU:2000";LC_TELEPHONE
-
+category "os_RU:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -158,7 +158,8 @@ copy "ru_RU"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "ru_RU"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -166,5 +167,20 @@ copy "ru_RU"
END LC_NAME
LC_ADDRESS
-copy "ru_RU"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0052><U0055>"
+country_ab3 "<U0052><U0055><U0053>"
+country_num 643
+% RUS
+country_car "<U0052><U0055><U0053>"
+% os
+lang_ab "<U006F><U0073>"
+% oss
+lang_term "<U006F><U0073><U0073>"
+% oss
+lang_lib "<U006F><U0073><U0073>"
END LC_ADDRESS
diff --git a/localedata/locales/pa_IN b/localedata/locales/pa_IN
index 6128253b7e..8c7d3e09b1 100644
--- a/localedata/locales/pa_IN
+++ b/localedata/locales/pa_IN
@@ -27,7 +27,7 @@ category "pa_IN:2000";LC_PAPER
category "pa_IN:2000";LC_NAME
category "pa_IN:2000";LC_ADDRESS
category "pa_IN:2000";LC_TELEPHONE
-
+category "pa_IN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -208,6 +208,14 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% pa
+lang_ab "<U0070><U0061>"
+% pan
+lang_term "<U0070><U0061><U006E>"
+% pan
+lang_lib "<U0070><U0061><U006E>"
END LC_ADDRESS
@@ -217,5 +225,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/pa_PK b/localedata/locales/pa_PK
index 8b7cd08619..082e924716 100644
--- a/localedata/locales/pa_PK
+++ b/localedata/locales/pa_PK
@@ -38,7 +38,7 @@ category "pa_PK:2000";LC_PAPER
category "pa_PK:2000";LC_NAME
category "pa_PK:2000";LC_ADDRESS
category "pa_PK:2000";LC_TELEPHONE
-
+category "pa_PK:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -158,7 +158,8 @@ copy "ur_PK"
END LC_PAPER
LC_MEASUREMENT
-copy "ur_PK"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -177,6 +178,14 @@ postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
country_ab2 "<U0050><U004B>"
country_ab3 "<U0050><U0041><U004B>"
country_num 586
+% PK
+country_car "<U0050><U004B>"
+% pa
+lang_ab "<U0070><U0061>"
+% pan
+lang_term "<U0070><U0061><U006E>"
+% pan
+lang_lib "<U0070><U0061><U006E>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/pap_AN b/localedata/locales/pap_AN
index 6f0e262bb5..63262a55a1 100644
--- a/localedata/locales/pap_AN
+++ b/localedata/locales/pap_AN
@@ -2,6 +2,13 @@ comment_char %
escape_char /
% Distribution and use is free, also for commercial purposes.
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This locale is replaced by pap_AW and pap_CW and should be removed in
+% release 2.21. AN line of iso-3177.def should also be removed.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
LC_IDENTIFICATION
title "Papiamento Language for the (Netherland) Antilles"
source "informations from native speaker"
@@ -81,12 +88,6 @@ p_sign_posn 1
n_sign_posn 2
END LC_MONETARY
-LC_NUMERIC
-decimal_point "<U002C>"
-thousands_sep ""
-grouping 0;0
-END LC_NUMERIC
-
LC_TIME
abday "<U0064><U006F>";"<U006C><U0075>";"<U006D><U0061>";/
"<U0077><U0065>";"<U0072><U0061>";"<U0062><U0069>";/
@@ -129,8 +130,8 @@ thousands_sep ""
grouping 0;0
END LC_NUMERIC
-% Metric Measurement system (ISO 1000)
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -143,8 +144,10 @@ END LC_PAPER
LC_TELEPHONE
tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025><U006C>"
% FIXME FIND tel_dom_fmt
-int_select "00"
-int_prefix "599"
+% 00
+int_select "<U0030><U0030>"
+% 599
+int_prefix "<U0035><U0039><U0039>"
END LC_TELEPHONE
LC_NAME
diff --git a/localedata/locales/pap_AW b/localedata/locales/pap_AW
new file mode 100644
index 0000000000..fb9fbd5d37
--- /dev/null
+++ b/localedata/locales/pap_AW
@@ -0,0 +1,166 @@
+comment_char %
+escape_char /
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This file is derived from pap_AN ver0.2 (after AN was deprecated in ISO-3166)
+% revision "0.2" date "2000-11-15"
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_IDENTIFICATION
+title "Papiamento Language for Aruba"
+source "information from native speaker"
+address ""
+contact "Pablo Saratxaga"
+email "pablo@mandrakesoft.com"
+tel ""
+fax ""
+language "pap"
+territory "AW"
+revision "1.0"
+date "2013-09-27"
+
+category i18n:2000;LC_IDENTIFICATION
+category i18n:2000;LC_COLLATE
+category i18n:2000;LC_CTYPE
+category i18n:2000;LC_MESSAGES
+category i18n:2000;LC_MONETARY
+category i18n:2000;LC_NUMERIC
+category i18n:2000;LC_TIME
+category i18n:2000;LC_PAPER
+category i18n:2000;LC_MEASUREMENT
+category i18n:2000;LC_TELEPHONE
+category i18n:2000;LC_ADDRESS
+
+% ISO/IEC 14652: Converted comments to LC_IDENTIFICATION
+% added LC_PAPER, LC_MEASUREMENT, LC_TELEPHONE, LC_ADDRESS
+% -- mckinstry@computer.org, 2000-07-03
+
+END LC_IDENTIFICATION
+
+LC_ADDRESS
+postal_fmt "<U0025><U0064><U0025><U004E><U0025><U0066><U0025><U004E><U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E>/
+<U0025><U0073><U0020><U0025><U0068><U0020><U0035><U0065><U0020><U0025><U0072><U0025><U004E>/
+<U0025><U0043><U0025><U007A><U0020><U0025><U0054><U0025><U004E><U0025><U0063><U0025><U004E>"
+% FIXME country_name for Antilles in Paplamento
+% FIXME country_post MAIL_CEPTCODE for Nederland Antilles, AN?
+% AW
+country_ab2 "<U0041><U0057>"
+% ABW
+country_ab3 "<U0041><U0042><U0057>"
+country_num 533
+country_isbn ""
+country_car ""
+% lang_ab
+% pap
+lang_term "<U0070><U0061><U0070>"
+% pap
+lang_lib "<U0070><U0061><U0070>"
+END LC_ADDRESS
+
+LC_CTYPE
+copy "en_DK"
+END LC_CTYPE
+
+LC_COLLATE
+copy "en_DK"
+END LC_COLLATE
+
+LC_MESSAGES
+yesexpr "<U005E><U005B><U006A><U004A><U0079><U0059><U005D><U002E><U002A>"
+noexpr "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
+END LC_MESSAGES
+
+
+LC_MONETARY
+int_curr_symbol "<U0041><U004E><U0047><U0020>"
+currency_symbol "<U0066>"
+mon_decimal_point "<U002C>"
+mon_thousands_sep "<U0020>"
+mon_grouping 3;3
+positive_sign ""
+negative_sign "<U002D>"
+int_frac_digits 2
+frac_digits 2
+p_cs_precedes 1
+p_sep_by_space 1
+n_cs_precedes 1
+n_sep_by_space 1
+p_sign_posn 1
+n_sign_posn 2
+END LC_MONETARY
+
+LC_TIME
+abday "<U0064><U006F>";"<U006C><U0075>";"<U006D><U0061>";/
+ "<U0077><U0065>";"<U0072><U0061>";"<U0062><U0069>";/
+ "<U0073><U0061>"
+day "<U0044><U006A><U0061><U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+ "<U0044><U006A><U0061><U006C><U0075><U006E><U0061>";/
+ "<U0044><U006A><U0061><U006D><U0061><U0072><U0073>";/
+ "<U0044><U006A><U0061><U0077><U0065><U0062><U0073>";/
+ "<U0044><U006A><U0061><U0072><U0061><U0073><U006F><U006E>";/
+ "<U0044><U006A><U0061><U0062><U0069><U0065><U0072><U006E><U0065>";/
+ "<U0044><U006A><U0061><U0073><U0061><U0062><U0072><U0061>"
+abmon "<U0059><U0061><U006E>";"<U0046><U0065><U0062>";/
+ "<U004D><U0061><U0072>";"<U0041><U0070><U0072>";/
+ "<U004D><U0065><U0069>";"<U0059><U00FC><U006E>";/
+ "<U0059><U00FC><U006C>";"<U004F><U0075><U0067>";/
+ "<U0053><U00E8><U0070>";"<U004F><U006B><U0074>";/
+ "<U004E><U006F><U0076>";"<U0044><U0065><U0073>"
+mon "<U0059><U0061><U006E><U00FC><U0061><U0072><U0069>";/
+ "<U0046><U0065><U0062><U0072><U00FC><U0061><U0072><U0069>";/
+ "<U004D><U0061><U0072><U0074>";/
+ "<U0041><U0070><U0072><U0065><U006C>";/
+ "<U004D><U0065><U0069>";/
+ "<U0059><U00FC><U006E><U0069>";/
+ "<U0059><U00FC><U006C><U0069>";/
+ "<U004F><U0075><U0067><U00F9><U0073><U0074><U00F9><U0073>";/
+ "<U0053><U00E8><U0070><U0074><U00E8><U006D><U0062><U0065><U0072>";/
+ "<U004F><U006B><U0074><U006F><U0062><U0065><U0072>";/
+ "<U004E><U006F><U0076><U00E8><U006D><U0062><U0065><U0072>";/
+ "<U0044><U0065><U0073><U00E8><U006D><U0062><U0065><U0072>"
+d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+d_fmt "<U0025><U0064><U002D><U0025><U006D><U002D><U0025><U0079>"
+t_fmt "<U0025><U0054>"
+am_pm "";""
+t_fmt_ampm ""
+END LC_TIME
+
+LC_NUMERIC
+decimal_point "<U002C>"
+thousands_sep ""
+grouping 0;0
+END LC_NUMERIC
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
+
+% Default paper: A4
+LC_PAPER
+height 297
+width 210
+END LC_PAPER
+
+LC_TELEPHONE
+tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025><U006C>"
+% FIXME FIND tel_dom_fmt
+% 00
+int_select "<U0030><U0030>"
+% 599
+int_prefix "<U0035><U0039><U0039>"
+END LC_TELEPHONE
+
+LC_NAME
+% Todo
+copy "en_DK"
+END LC_NAME
diff --git a/localedata/locales/pap_CW b/localedata/locales/pap_CW
new file mode 100644
index 0000000000..ee4144f74a
--- /dev/null
+++ b/localedata/locales/pap_CW
@@ -0,0 +1,166 @@
+comment_char %
+escape_char /
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This file is derived from pap_AN ver0.2 (after AN was deprecated in ISO-3166)
+% revision "0.2" date "2000-11-15"
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+LC_IDENTIFICATION
+title "Papiamento language for Curaçao"
+source "information from native speaker"
+address ""
+contact "Pablo Saratxaga"
+email "pablo@mandrakesoft.com"
+tel ""
+fax ""
+language "pap"
+territory "CW"
+revision "1.0"
+date "2013-09-27"
+
+category i18n:2000;LC_IDENTIFICATION
+category i18n:2000;LC_COLLATE
+category i18n:2000;LC_CTYPE
+category i18n:2000;LC_MESSAGES
+category i18n:2000;LC_MONETARY
+category i18n:2000;LC_NUMERIC
+category i18n:2000;LC_TIME
+category i18n:2000;LC_PAPER
+category i18n:2000;LC_MEASUREMENT
+category i18n:2000;LC_TELEPHONE
+category i18n:2000;LC_ADDRESS
+
+% ISO/IEC 14652: Converted comments to LC_IDENTIFICATION
+% added LC_PAPER, LC_MEASUREMENT, LC_TELEPHONE, LC_ADDRESS
+% -- mckinstry@computer.org, 2000-07-03
+
+END LC_IDENTIFICATION
+
+LC_ADDRESS
+postal_fmt "<U0025><U0064><U0025><U004E><U0025><U0066><U0025><U004E><U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E>/
+<U0025><U0073><U0020><U0025><U0068><U0020><U0035><U0065><U0020><U0025><U0072><U0025><U004E>/
+<U0025><U0043><U0025><U007A><U0020><U0025><U0054><U0025><U004E><U0025><U0063><U0025><U004E>"
+% FIXME country_name for Antilles in Paplamento
+% FIXME country_post MAIL_CEPTCODE for Nederland Antilles, AN?
+% CW
+country_ab2 "<U0043><U0057>"
+% CUW
+country_ab3 "<U0043><U0055><U0057>"
+country_num 531
+country_car ""
+country_isbn ""
+% lang_ab
+% pap
+lang_term "<U0070><U0061><U0070>"
+% pap
+lang_lib "<U0070><U0061><U0070>"
+END LC_ADDRESS
+
+LC_CTYPE
+copy "en_DK"
+END LC_CTYPE
+
+LC_COLLATE
+copy "en_DK"
+END LC_COLLATE
+
+LC_MESSAGES
+yesexpr "<U005E><U005B><U006A><U004A><U0079><U0059><U005D><U002E><U002A>"
+noexpr "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
+END LC_MESSAGES
+
+
+LC_MONETARY
+int_curr_symbol "<U0041><U004E><U0047><U0020>"
+currency_symbol "<U0066>"
+mon_decimal_point "<U002C>"
+mon_thousands_sep "<U0020>"
+mon_grouping 3;3
+positive_sign ""
+negative_sign "<U002D>"
+int_frac_digits 2
+frac_digits 2
+p_cs_precedes 1
+p_sep_by_space 1
+n_cs_precedes 1
+n_sep_by_space 1
+p_sign_posn 1
+n_sign_posn 2
+END LC_MONETARY
+
+LC_TIME
+abday "<U0064><U006F>";"<U006C><U0075>";"<U006D><U0061>";/
+ "<U0077><U0065>";"<U0072><U0061>";"<U0062><U0069>";/
+ "<U0073><U0061>"
+day "<U0044><U006A><U0061><U0064><U006F><U006D><U0069><U006E><U0067><U006F>";/
+ "<U0044><U006A><U0061><U006C><U0075><U006E><U0061>";/
+ "<U0044><U006A><U0061><U006D><U0061><U0072><U0073>";/
+ "<U0044><U006A><U0061><U0077><U0065><U0062><U0073>";/
+ "<U0044><U006A><U0061><U0072><U0061><U0073><U006F><U006E>";/
+ "<U0044><U006A><U0061><U0062><U0069><U0065><U0072><U006E><U0065>";/
+ "<U0044><U006A><U0061><U0073><U0061><U0062><U0072><U0061>"
+abmon "<U0059><U0061><U006E>";"<U0046><U0065><U0062>";/
+ "<U004D><U0061><U0072>";"<U0041><U0070><U0072>";/
+ "<U004D><U0065><U0069>";"<U0059><U00FC><U006E>";/
+ "<U0059><U00FC><U006C>";"<U004F><U0075><U0067>";/
+ "<U0053><U00E8><U0070>";"<U004F><U006B><U0074>";/
+ "<U004E><U006F><U0076>";"<U0044><U0065><U0073>"
+mon "<U0059><U0061><U006E><U00FC><U0061><U0072><U0069>";/
+ "<U0046><U0065><U0062><U0072><U00FC><U0061><U0072><U0069>";/
+ "<U004D><U0061><U0072><U0074>";/
+ "<U0041><U0070><U0072><U0065><U006C>";/
+ "<U004D><U0065><U0069>";/
+ "<U0059><U00FC><U006E><U0069>";/
+ "<U0059><U00FC><U006C><U0069>";/
+ "<U004F><U0075><U0067><U00F9><U0073><U0074><U00F9><U0073>";/
+ "<U0053><U00E8><U0070><U0074><U00E8><U006D><U0062><U0065><U0072>";/
+ "<U004F><U006B><U0074><U006F><U0062><U0065><U0072>";/
+ "<U004E><U006F><U0076><U00E8><U006D><U0062><U0065><U0072>";/
+ "<U0044><U0065><U0073><U00E8><U006D><U0062><U0065><U0072>"
+d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+d_fmt "<U0025><U0064><U002D><U0025><U006D><U002D><U0025><U0079>"
+t_fmt "<U0025><U0054>"
+am_pm "";""
+t_fmt_ampm ""
+END LC_TIME
+
+LC_NUMERIC
+decimal_point "<U002C>"
+thousands_sep ""
+grouping 0;0
+END LC_NUMERIC
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
+
+% Default paper: A4
+LC_PAPER
+height 297
+width 210
+END LC_PAPER
+
+LC_TELEPHONE
+tel_int_fmt "<U002B><U0025><U0063><U0020><U0025><U0061><U0020><U0025><U006C>"
+% FIXME FIND tel_dom_fmt
+% 00
+int_select "<U0030><U0030>"
+% 599
+int_prefix "<U0035><U0039><U0039>"
+END LC_TELEPHONE
+
+LC_NAME
+% Todo
+copy "en_DK"
+END LC_NAME
diff --git a/localedata/locales/pl_PL b/localedata/locales/pl_PL
index 1bce8f5b30..5af7af53aa 100644
--- a/localedata/locales/pl_PL
+++ b/localedata/locales/pl_PL
@@ -44,7 +44,7 @@ category "pl_PL:2000";LC_PAPER
category "pl_PL:2000";LC_NAME
category "pl_PL:2000";LC_ADDRESS
category "pl_PL:2000";LC_TELEPHONE
-
+category "pl_PL:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -2215,8 +2215,8 @@ int_prefix "<U0034><U0038>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -2233,4 +2233,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0050><U004C>"
country_ab3 "<U0050><U004F><U004C>"
country_num 616
+% PL
+country_car "<U0050><U004C>"
+% pl
+lang_ab "<U0070><U006C>"
+% pol
+lang_term "<U0070><U006F><U006C>"
+% pol
+lang_lib "<U0070><U006F><U006C>"
END LC_ADDRESS
diff --git a/localedata/locales/ps_AF b/localedata/locales/ps_AF
index 7f686abbb5..858c50d7cc 100644
--- a/localedata/locales/ps_AF
+++ b/localedata/locales/ps_AF
@@ -29,18 +29,18 @@ LC_IDENTIFICATION
revision "0.2"
date "2009-01-16"
- category "ps_AF:2007";LC_IDENTIFICATION
- category "ps_AF:2007";LC_CTYPE
- category "ps_AF:2007";LC_COLLATE
- category "ps_AF:2007";LC_TIME
- category "ps_AF:2007";LC_NUMERIC
- category "ps_AF:2007";LC_MONETARY
- category "ps_AF:2007";LC_MESSAGES
- category "ps_AF:2007";LC_MEASUREMENT
- category "ps_AF:2007";LC_PAPER
- category "ps_AF:2007";LC_NAME
- category "ps_AF:2007";LC_ADDRESS
- category "ps_AF:2007";LC_TELEPHONE
+category "ps_AF:2007";LC_IDENTIFICATION
+category "ps_AF:2007";LC_CTYPE
+category "ps_AF:2007";LC_COLLATE
+category "ps_AF:2007";LC_TIME
+category "ps_AF:2007";LC_NUMERIC
+category "ps_AF:2007";LC_MONETARY
+category "ps_AF:2007";LC_MESSAGES
+category "ps_AF:2007";LC_MEASUREMENT
+category "ps_AF:2007";LC_PAPER
+category "ps_AF:2007";LC_NAME
+category "ps_AF:2007";LC_ADDRESS
+category "ps_AF:2007";LC_TELEPHONE
END LC_IDENTIFICATION
LC_CTYPE
@@ -229,7 +229,8 @@ LC_MESSAGES
END LC_MESSAGES
LC_MEASUREMENT
- measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_PAPER
@@ -248,27 +249,26 @@ LC_NAME
END LC_NAME
LC_ADDRESS
- postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025>/
+postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025>/
<U004E><U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025>/
<U0073><U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072>/
<U0025><U004E><U0025><U0043><U002D><U0025><U007A><U0020><U0025><U0054>/
<U0025><U004E><U0025><U0063><U0025><U004E>"
- country_name "<U0627><U0641><U063A><U0627><U0646>/
+country_name "<U0627><U0641><U063A><U0627><U0646>/
<U0633><U062A><U0627><U0646>"
- %country_post "<U0041><U0046><U0047>" % FIXME: Not confirmed.
- country_ab2 "<U0041><U0046>"
- country_ab3 "<U0041><U0046><U0047>"
- country_num 004
- country_car "<U0041><U0046><U0047>"
-
- %country_isbn "" % Unfortunately not yet assigned :-(
- % Since to date there is no ISBN agency working
- % in Afghanistan.
-
- lang_name "<U067E><U069A><U062A><U0648>"
- lang_ab "<U0070><U0073>"
- lang_term "<U0070><U0075><U0073>"
- lang_lib "<U0070><U0075><U0073>"
+%country_post "<U0041><U0046><U0047>" % FIXME: Not confirmed.
+country_ab2 "<U0041><U0046>"
+country_ab3 "<U0041><U0046><U0047>"
+country_num 004
+country_car "<U0041><U0046><U0047>"
+
+%country_isbn "" % Unfortunately not yet assigned :-(
+% Since to date there is no ISBN agency working in Afghanistan.
+
+lang_name "<U067E><U069A><U062A><U0648>"
+lang_ab "<U0070><U0073>"
+lang_term "<U0070><U0075><U0073>"
+lang_lib "<U0070><U0075><U0073>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/pt_BR b/localedata/locales/pt_BR
index 22f61317d7..388cb3e845 100644
--- a/localedata/locales/pt_BR
+++ b/localedata/locales/pt_BR
@@ -42,7 +42,7 @@ category "pt_BR:2000";LC_PAPER
category "pt_BR:2000";LC_NAME
category "pt_BR:2000";LC_ADDRESS
category "pt_BR:2000";LC_TELEPHONE
-
+category "pt_BR:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -137,8 +137,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -155,4 +155,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0042><U0052>"
country_ab3 "<U0042><U0052><U0041>"
country_num 076
+% BR
+country_car "<U0042><U0052>"
+% pt
+lang_ab "<U0070><U0074>"
+% por
+lang_term "<U0070><U006F><U0072>"
+% por
+lang_lib "<U0070><U006F><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/pt_PT b/localedata/locales/pt_PT
index f11be1c0ee..d5461c9fc7 100644
--- a/localedata/locales/pt_PT
+++ b/localedata/locales/pt_PT
@@ -42,7 +42,7 @@ category "pt_PT:2000";LC_PAPER
category "pt_PT:2000";LC_NAME
category "pt_PT:2000";LC_ADDRESS
category "pt_PT:2000";LC_TELEPHONE
-
+category "pt_PT:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -139,7 +139,8 @@ int_prefix "<U0033><U0035><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -156,4 +157,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0050><U0054>"
country_ab3 "<U0050><U0052><U0054>"
country_num 620
+% P
+country_car "<U0050>"
+% pt
+lang_ab "<U0070><U0074>"
+% por
+lang_term "<U0070><U006F><U0072>"
+% por
+lang_lib "<U0070><U006F><U0072>"
END LC_ADDRESS
diff --git a/localedata/locales/pt_PT@euro b/localedata/locales/pt_PT@euro
index f0a5c27af5..16bcb145c0 100644
--- a/localedata/locales/pt_PT@euro
+++ b/localedata/locales/pt_PT@euro
@@ -35,7 +35,7 @@ category "pt_PT@euro:2000";LC_PAPER
category "pt_PT@euro:2000";LC_NAME
category "pt_PT@euro:2000";LC_ADDRESS
category "pt_PT@euro:2000";LC_TELEPHONE
-
+category "pt_PT@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -71,7 +71,8 @@ copy "pt_PT"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "pt_PT"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/quz_PE b/localedata/locales/quz_PE
new file mode 100644
index 0000000000..8e755260a1
--- /dev/null
+++ b/localedata/locales/quz_PE
@@ -0,0 +1,181 @@
+comment_char %
+escape_char /
+% Charset: UTF-8
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Quechua (Cusco-Collao) language locale for Peru
+%
+% Prepared and contributed to glibc by Chris Leonard <cjl@sugarlabs.org>
+% and Amos Batto
+%
+% This locale data has been developed in collaboration between:
+% Sugar Labs, http://www.sugarlabs.org/
+% Instituto de Lenguas y Literaturas Andinas-Amazonicas
+% http://www.illa-a.org/wp/illa/
+%
+% build with: localedef -f UTF-8 -i quz_PE quz_PE
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The Free
+% Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+LC_IDENTIFICATION
+title "Quechua (Cusco-Collao) locale for Peru"
+source "Sugar Labs / OLPC"
+address ""
+contact "sugarlabs.org"
+email "libc-alpha@sourceware.org"
+tel ""
+fax ""
+language "Quechua (Cusco-Collao)"
+territory "Peru"
+revision "1.0"
+date "2013-08-24"
+%
+category "quz_PE:2013";LC_IDENTIFICATION
+category "quz_PE:2013";LC_CTYPE
+category "quz_PE:2013";LC_COLLATE
+category "quz_PE:2013";LC_TIME
+category "quz_PE:2013";LC_NUMERIC
+category "quz_PE:2013";LC_MONETARY
+category "quz_PE:2013";LC_PAPER
+category "quz_PE:2013";LC_MEASUREMENT
+category "quz_PE:2013";LC_MESSAGES
+category "quz_PE:2013";LC_NAME
+category "quz_PE:2013";LC_ADDRESS
+category "quz_PE:2013";LC_TELEPHONE
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "i18n"
+translit_start
+include "translit_combining";""
+translit_end
+END LC_CTYPE
+
+LC_COLLATE
+copy "iso14651_t1"
+END LC_COLLATE
+
+% LC_TIME: Use Quechua transliteration of Spanish day and month names
+
+LC_TIME
+% iniru, phiwriru, marsu, awril, mayu, huniyu, huliyu, agustu,siptiyimri, uktuwri, nuwiyimri, tisiyimri
+mon "<U0069><U006E><U0069><U0072><U0075>";/
+ "<U0070><U0068><U0069><U0077><U0072><U0069><U0072><U0075>";/
+ "<U006D><U0061><U0072><U0073><U0075>";/
+ "<U0061><U0077><U0072><U0069><U006C>";/
+ "<U006D><U0061><U0079><U0075>";/
+ "<U0068><U0075><U006E><U0069><U0079><U0075>";/
+ "<U0068><U0075><U006C><U0069><U0079><U0075>";/
+ "<U0061><U0067><U0075><U0073><U0074><U0075>";/
+ "<U0073><U0069><U0070><U0074><U0069><U0079><U0069><U006D><U0072><U0069>";/
+ "<U0075><U006B><U0074><U0075><U0077><U0072><U0069>";/
+ "<U006E><U0075><U0077><U0069><U0079><U0069><U006D><U0072><U0069>";/
+ "<U0074><U0069><U0073><U0069><U0079><U0069><U006D><U0072><U0069>"
+% ini, phi, mar, awr, may, hun, hul, agu, sip, ukt, nuw, tis
+abmon "<U0069><U006E><U0069>";/
+ "<U0070><U0068><U0069>";/
+ "<U006D><U0061><U0072>";/
+ "<U0061><U0077><U0072>";/
+ "<U006D><U0061><U0079>";/
+ "<U0068><U0075><U006E>";/
+ "<U0068><U0075><U006C>";/
+ "<U0061><U0067><U0075>";/
+ "<U0073><U0069><U0070>";/
+ "<U0075><U006B><U0074>";/
+ "<U006E><U0075><U0077>";/
+ "<U0074><U0069><U0073>"
+% tuminku, lunis, martis, miyirkulis, juywis, wiyirnis, sawatu
+day "<U0074><U0075><U006D><U0069><U006E><U006B><U0075>";/
+ "<U006C><U0075><U006E><U0069><U0073>";/
+ "<U006D><U0061><U0072><U0074><U0069><U0073>";/
+ "<U006D><U0069><U0079><U0069><U0072><U006B><U0075><U006C><U0069><U0073>";/
+ "<U006A><U0075><U0079><U0077><U0069><U0073>";/
+ "<U0077><U0069><U0079><U0069><U0072><U006E><U0069><U0073>";/
+ "<U0073><U0061><U0077><U0061><U0074><U0075>"
+% tum, lun, mar, miy, juy, wiy, saw
+abday "<U0074><U0075><U006D>";/
+ "<U006C><U0075><U006E>";/
+ "<U006D><U0061><U0072>";/
+ "<U006D><U0069><U0079>";/
+ "<U006A><U0075><U0079>";/
+ "<U0077><U0069><U0079>";/
+ "<U0073><U0061><U0077>"
+% %a %d %b %Y %T %Z
+d_t_fmt "<U0025><U0061><U0020><U0025><U0064><U0020><U0025><U0062><U0020><U0025><U0059><U0020><U0025><U0054><U0020><U0025><U005A>"
+% %d/%m/%y
+d_fmt "<U0025><U0064><U002F><U0025><U006D><U002F><U0025><U0079>"
+% %I:%M:%S %p
+t_fmt "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0070>"
+% AM, PM
+am_pm "<U0041><U004D>";/
+ "<U0050><U004D>"
+% %I:%M:%S %p
+t_fmt_ampm "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U0070>"
+week 7;19971130;7
+first_weekday 1
+first_workday 2
+% %a %b %e %H:%M:%S %Z %Y
+date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065><U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020><U0025><U005A><U0020><U0025><U0059>"
+END LC_TIME
+
+LC_NUMERIC
+copy "es_PE"
+END LC_NUMERIC
+
+LC_MONETARY
+copy "es_PE"
+END LC_MONETARY
+
+LC_PAPER
+copy "es_PE"
+END LC_PAPER
+
+LC_MEASUREMENT
+% metric
+measurement 1
+END LC_MEASUREMENT
+
+LC_MESSAGES
+% ^[aAsSyY].*
+yesexpr "<U005E><U005B><U0061><U0041><U0073><U0053><U0079><U0059><U005D><U002E><U002A>"
+% ^[mMnN].*
+noexpr "<U005E><U005B><U006D><U004D><U006E><U004E><U005D><U002E><U002A>"
+% Arí
+yesstr "<U0041><U0072><U00ED>"
+% Manan
+nostr "<U004D><U0061><U006E><U0061><U006E>"
+END LC_MESSAGES
+
+LC_NAME
+copy "es_PE"
+END LC_NAME
+
+LC_ADDRESS
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0050><U0045>"
+country_ab3 "<U0050><U0045><U0052>"
+country_num 604
+% PE
+country_car "<U0050><U0045>"
+% quz
+lang_term "<U0071><U0075><U007A>"
+% quz
+lang_lib "<U0071><U0075><U007A>"
+END LC_ADDRESS
+
+LC_TELEPHONE
+copy "es_PE"
+END LC_TELEPHONE
diff --git a/localedata/locales/ro_RO b/localedata/locales/ro_RO
index b8953288fe..610f071c7d 100644
--- a/localedata/locales/ro_RO
+++ b/localedata/locales/ro_RO
@@ -47,7 +47,7 @@ category "ro_RO:2000";LC_PAPER
category "ro_RO:2000";LC_NAME
category "ro_RO:2000";LC_ADDRESS
category "ro_RO:2000";LC_TELEPHONE
-
+category "ro_RO:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -289,7 +289,8 @@ END LC_TELEPHONE
% Romania uses the metric system
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ru_RU b/localedata/locales/ru_RU
index 6fa4d998d3..2e51a4d12d 100644
--- a/localedata/locales/ru_RU
+++ b/localedata/locales/ru_RU
@@ -43,7 +43,7 @@ category "ru_RU:2000";LC_PAPER
category "ru_RU:2000";LC_NAME
category "ru_RU:2000";LC_ADDRESS
category "ru_RU:2000";LC_TELEPHONE
-
+category "ru_RU:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -168,8 +168,8 @@ int_select "<U0030><U007E><U0031><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -186,4 +186,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0052><U0055>"
country_ab3 "<U0052><U0055><U0053>"
country_num 643
+% RUS
+country_car "<U0052><U0055><U0053>"
+% ru
+lang_ab "<U0072><U0075>"
+% rus
+lang_term "<U0072><U0075><U0073>"
+% rus
+lang_lib "<U0072><U0075><U0073>"
END LC_ADDRESS
diff --git a/localedata/locales/ru_UA b/localedata/locales/ru_UA
index 2f08d3e15a..29c4522740 100644
--- a/localedata/locales/ru_UA
+++ b/localedata/locales/ru_UA
@@ -39,7 +39,7 @@ category "ru_UA:2000";LC_PAPER
category "ru_UA:2000";LC_NAME
category "ru_UA:2000";LC_ADDRESS
category "ru_UA:2000";LC_TELEPHONE
-
+category "ru_UA:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -159,8 +159,8 @@ int_prefix "<U0033><U0038><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -177,4 +177,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0055><U0041>"
country_ab3 "<U0055><U004B><U0052>"
country_num 804
+% UA
+country_car "<U0055><U0041>"
+% ru
+lang_ab "<U0072><U0075>"
+% rus
+lang_term "<U0072><U0075><U0073>"
+% rus
+lang_lib "<U0072><U0075><U0073>"
END LC_ADDRESS
diff --git a/localedata/locales/rw_RW b/localedata/locales/rw_RW
index 437df4bb2c..1f503005ed 100644
--- a/localedata/locales/rw_RW
+++ b/localedata/locales/rw_RW
@@ -135,6 +135,8 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_name "<U0052><U0077><U0061><U006E><U0064><U0061>"
country_ab2 "<U0052><U0057>"
country_ab3 "<U0052><U0057><U0041>"
+% RWA
+country_car "<U0052><U0057><U0041>"
lang_name "<U004B><U0069><U006E><U0079><U0061><U0072><U0077><U0061><U006E><U0064><U0061>"
lang_ab "<U0072><U0077>"
lang_term "<U006B><U0069><U006E>"
@@ -149,5 +151,6 @@ int_prefix "<U0032><U0035><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/sa_IN b/localedata/locales/sa_IN
index 69248a272f..1ffa5f95f4 100644
--- a/localedata/locales/sa_IN
+++ b/localedata/locales/sa_IN
@@ -28,7 +28,7 @@ category "sa_IN:2000";LC_PAPER
category "sa_IN:2000";LC_NAME
category "sa_IN:2000";LC_ADDRESS
category "sa_IN:2000";LC_TELEPHONE
-
+category "sa_IN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -235,6 +235,14 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% sa
+lang_ab "<U0073><U0061>"
+% san
+lang_term "<U0073><U0061><U006E>"
+% san
+lang_lib "<U0073><U0061><U006E>"
END LC_ADDRESS
@@ -248,7 +256,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT
-% category generated by IBM Basic CountryPack Transformer.
+% metric
measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/sat_IN b/localedata/locales/sat_IN
index a77de633ba..455b0e6a92 100644
--- a/localedata/locales/sat_IN
+++ b/localedata/locales/sat_IN
@@ -27,7 +27,7 @@ category "sat_IN:2012";LC_PAPER
category "sat_IN:2012";LC_NAME
category "sat_IN:2012";LC_ADDRESS
category "sat_IN:2012";LC_TELEPHONE
-
+category "sat_IN:2012";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -170,7 +170,19 @@ END LC_NAME
LC_ADDRESS
-copy "hi_IN"
+
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% sat
+lang_term "<U0073><U0061><U0074>"
+% sat
+lang_lib "<U0073><U0061><U0074>"
END LC_ADDRESS
@@ -180,5 +192,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/sc_IT b/localedata/locales/sc_IT
index f0b99d292d..c6ffc98888 100644
--- a/localedata/locales/sc_IT
+++ b/localedata/locales/sc_IT
@@ -35,7 +35,7 @@ category "sc_IT:2000";LC_PAPER
category "sc_IT:2000";LC_NAME
category "sc_IT:2000";LC_ADDRESS
category "sc_IT:2000";LC_TELEPHONE
-
+category "sc_IT:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -124,7 +124,8 @@ copy "it_IT"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "it_IT"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -132,5 +133,20 @@ copy "it_IT"
END LC_NAME
LC_ADDRESS
-copy "it_IT"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0049><U0054>"
+country_ab3 "<U0049><U0054><U0041>"
+country_num 380
+% I
+country_car "<U0049>"
+% sc
+lang_ab "<U0073><U0063>"
+% srd
+lang_term "<U0073><U0072><U0064>"
+% srd
+lang_lib "<U0073><U0072><U0064>"
END LC_ADDRESS
diff --git a/localedata/locales/sd_IN b/localedata/locales/sd_IN
index 77d6af26ab..e57edf5923 100644
--- a/localedata/locales/sd_IN
+++ b/localedata/locales/sd_IN
@@ -29,8 +29,7 @@ category "sd_IN:2008";LC_PAPER
category "sd_IN:2008";LC_NAME
category "sd_IN:2008";LC_ADDRESS
category "sd_IN:2008";LC_TELEPHONE
-
-
+category "sd_IN:2008";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -192,7 +191,14 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
-
+% IND
+country_car "<U0049><U004E><U0044>"
+% sd
+lang_ab "<U0073><U0064>"
+% snd
+lang_term "<U0073><U006E><U0064>"
+% snd
+lang_lib "<U0073><U006E><U0064>"
END LC_ADDRESS
@@ -202,5 +208,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/sd_IN@devanagari b/localedata/locales/sd_IN@devanagari
index e54fc92e2e..6e7549be27 100644
--- a/localedata/locales/sd_IN@devanagari
+++ b/localedata/locales/sd_IN@devanagari
@@ -28,7 +28,7 @@ category "sd_IN@devanagari:2008";LC_PAPER
category "sd_IN@devanagari:2008";LC_NAME
category "sd_IN@devanagari:2008";LC_ADDRESS
category "sd_IN@devanagari:2008";LC_TELEPHONE
-
+category "sd_IN@devanagari:2008";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -189,10 +189,17 @@ LC_ADDRESS
% generated by IBM Basic CountryPack Transformer.
postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
<U0025><U0062><U0025><U0065><U0025><U0072>"
-
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% sd
+lang_ab "<U0073><U0064>"
+% snd
+lang_term "<U0073><U006E><U0064>"
+% snd
+lang_lib "<U0073><U006E><U0064>"
END LC_ADDRESS
@@ -202,5 +209,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/se_NO b/localedata/locales/se_NO
index f64db09879..2944e74f81 100644
--- a/localedata/locales/se_NO
+++ b/localedata/locales/se_NO
@@ -297,7 +297,8 @@ int_prefix "<U0034><U0037>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -314,4 +315,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004E><U004F>"
country_ab3 "<U004E><U004F><U0052>"
country_num 578
+% N
+country_car "<U004E>"
+% se
+lang_ab "<U0073><U0065>"
+% sme
+lang_term "<U0073><U006D><U0065>"
+% sme
+lang_lib "<U0073><U006D><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/shs_CA b/localedata/locales/shs_CA
index b3d0bcfba3..6b72fb1a05 100644
--- a/localedata/locales/shs_CA
+++ b/localedata/locales/shs_CA
@@ -43,7 +43,7 @@ category "shs_CA:2000";LC_PAPER
category "shs_CA:2000";LC_NAME
category "shs_CA:2000";LC_ADDRESS
category "shs_CA:2000";LC_TELEPHONE
-
+category "shs_CA:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -138,7 +138,8 @@ copy "en_CA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_CA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -154,6 +155,8 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0043><U0041>"
country_ab3 "<U0043><U0041><U004E>"
country_num 124
+% CDN
+country_car "<U0043><U0044><U004E>"
lang_name "<U0053><U0065><U0063><U0077><U0065><U0070><U0065><U006D><U0063><U0074><U0073><U0069><U006E>"
lang_term "<U0073><U0068><U0073>"
lang_lib "<U0073><U0068><U0073>"
diff --git a/localedata/locales/si_LK b/localedata/locales/si_LK
index f26f653abc..efecce7cc8 100644
--- a/localedata/locales/si_LK
+++ b/localedata/locales/si_LK
@@ -29,7 +29,7 @@ category "i18n:2002";LC_PAPER
category "i18n:2002";LC_NAME
category "i18n:2002";LC_ADDRESS
category "i18n:2002";LC_TELEPHONE
-
+category "i18n:2002";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -192,14 +192,20 @@ END LC_NAME
LC_ADDRESS
-% This is the ISO_IEC TR14652 Locale definition for the LC_ADDRESS category
-%
+
postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U0062><U0025><U0065><U0025><U0072>"
country_ab2 "<U004C><U004B>"
country_ab3 "<U004C><U004B><U0041>"
country_num 144
-
+% CL
+country_car "<U0043><U004C>"
+% si
+lang_ab "<U0073><U0069>"
+% sin
+lang_term "<U0073><U0069><U006E>"
+% sin
+lang_lib "<U0073><U0069><U006E>"
END LC_ADDRESS
@@ -216,9 +222,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT
-% 1 is ISO 1000 (metric)
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/sid_ET b/localedata/locales/sid_ET
index 8ce3234a5d..86ba9e1b74 100644
--- a/localedata/locales/sid_ET
+++ b/localedata/locales/sid_ET
@@ -68,12 +68,13 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Ethiopia Specifc and Shared Data:
+% Ethiopia Specific and Shared Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ET"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
@@ -110,7 +111,8 @@ country_post "<U0045><U0054><U0048>"
country_ab2 "<U0045><U0054>"
country_ab3 "<U0045><U0054><U0048>"
country_num 231 % 210 found in at least one ISO 3166 doc
-% country_car unknown
+% ETH
+country_car "<U0045><U0054><U0048>"
% country_isbn unknown, Need ISO 2108
lang_name "<U0053><U0069><U0064><U0061><U0061><U006D><U0075><U0020><U0041><U0066><U006F>"
lang_term "<U0073><U0069><U0064>"
diff --git a/localedata/locales/sk_SK b/localedata/locales/sk_SK
index 0b737a0b1f..dbfcfe9535 100644
--- a/localedata/locales/sk_SK
+++ b/localedata/locales/sk_SK
@@ -55,7 +55,7 @@ category "sk_SK:2000";LC_PAPER
category "sk_SK:2000";LC_NAME
category "sk_SK:2000";LC_ADDRESS
category "sk_SK:2000";LC_TELEPHONE
-
+category "sk_SK:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -206,8 +206,8 @@ int_prefix "<U0034><U0032><U0031>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -224,4 +224,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0053><U004B>"
country_ab3 "<U0053><U0056><U004B>"
country_num 703
+% SK
+country_car "<U0053><U004B>"
+% sk
+lang_ab "<U0073><U006B>"
+% slk
+lang_term "<U0073><U006C><U006B>"
+% slo
+lang_lib "<U0073><U006C><U006F>"
END LC_ADDRESS
diff --git a/localedata/locales/sl_SI b/localedata/locales/sl_SI
index 2c9096a871..a250d64f53 100644
--- a/localedata/locales/sl_SI
+++ b/localedata/locales/sl_SI
@@ -44,7 +44,7 @@ category "sl_SI:2000";LC_PAPER
category "sl_SI:2000";LC_NAME
category "sl_SI:2000";LC_ADDRESS
category "sl_SI:2000";LC_TELEPHONE
-
+category "sl_SI:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -2205,8 +2205,8 @@ int_prefix "<U0033><U0038><U0036>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -2223,4 +2223,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0053><U0049>"
country_ab3 "<U0053><U0056><U004E>"
country_num 705
+% SLO
+country_car "<U0053><U004C><U004F>"
+% sl
+lang_ab "<U0073><U006C>"
+% slv
+lang_term "<U0073><U006C><U0076>"
+% slv
+lang_lib "<U0073><U006C><U0076>"
END LC_ADDRESS
diff --git a/localedata/locales/so_DJ b/localedata/locales/so_DJ
index f6d5cb2d0c..00ddf69b3c 100644
--- a/localedata/locales/so_DJ
+++ b/localedata/locales/so_DJ
@@ -67,12 +67,13 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Djibouti Specifc and Shared Data:
+% Djibouti Specific and Shared Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "aa_DJ"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
diff --git a/localedata/locales/so_ET b/localedata/locales/so_ET
index d36848e5b4..79941e7ab5 100644
--- a/localedata/locales/so_ET
+++ b/localedata/locales/so_ET
@@ -52,7 +52,7 @@ END LC_IDENTIFICATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Ethiopic Specifc Data:
+% Ethiopic Specific Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -67,12 +67,13 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Ethiopia Specifc and Shared Data:
+% Ethiopia Specific and Shared Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ET"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
@@ -120,7 +121,8 @@ country_post "<U0045><U0054><U0048>"
country_ab2 "<U0045><U0054>"
country_ab3 "<U0045><U0054><U0048>"
country_num 231 % 210 found in at least one ISO 3166 doc
-% country_car unknown
+% ETH
+country_car "<U0045><U0054><U0048>"
% country_isbn unknown, Need ISO 2108
lang_name "<U0053><U006F><U006F><U006D><U0061><U0061><U006C><U0069>"
lang_ab "<U0073><U006F>"
diff --git a/localedata/locales/so_KE b/localedata/locales/so_KE
index 5d670497b0..0a1e978d8c 100644
--- a/localedata/locales/so_KE
+++ b/localedata/locales/so_KE
@@ -66,28 +66,29 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Kenya Specifc and Shared Data:
+% Kenya Specific and Shared Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "om_ET"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
-copy "om_ET"
+copy "om_KE"
END LC_MONETARY
LC_NUMERIC
-copy "om_ET"
+copy "om_KE"
END LC_NUMERIC
LC_PAPER
-copy "om_ET"
+copy "om_KE"
END LC_PAPER
LC_TELEPHONE
-copy "om_ET"
+copy "om_KE"
END LC_TELEPHONE
@@ -119,7 +120,8 @@ country_post "<U004B><U0045><U004E>"
country_ab2 "<U004B><U0045>"
country_ab3 "<U004B><U0045><U004E>"
country_num 404
-% country_car unknown
+% EAK
+country_car "<U0045><U0041><U004B>"
% country_isbn unknown, Need ISO 2108
lang_name "<U0053><U006F><U006F><U006D><U0061><U0061><U006C><U0069>"
lang_ab "<U0073><U006F>"
diff --git a/localedata/locales/so_SO b/localedata/locales/so_SO
index acaaa3f758..4d6a24b4ae 100644
--- a/localedata/locales/so_SO
+++ b/localedata/locales/so_SO
@@ -71,16 +71,13 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Somalia Specifc and Shared Data:
+% Somalia Specific and Shared Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-%
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT category.
-%
+% metric
measurement 1
-%
END LC_MEASUREMENT
@@ -176,7 +173,8 @@ country_post "<U0053><U004F><U004D>"
country_ab2 "<U0053><U004F>"
country_ab3 "<U0053><U004F><U004D>"
country_num 706
-% country_car unknown
+% SO
+country_car "<U0053><U004F>"
% country_isbn unknown, Need ISO 2108
lang_name "<U0053><U006F><U006F><U006D><U0061><U0061><U006C><U0069>"
lang_ab "<U0073><U006F>"
diff --git a/localedata/locales/sq_AL b/localedata/locales/sq_AL
index 0cbddde58b..f82de83ff5 100644
--- a/localedata/locales/sq_AL
+++ b/localedata/locales/sq_AL
@@ -29,7 +29,7 @@ category "sq_AL:2000";LC_PAPER
category "sq_AL:2000";LC_NAME
category "sq_AL:2000";LC_ADDRESS
category "sq_AL:2000";LC_TELEPHONE
-
+category "sq_AL:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -332,6 +332,14 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0041><U004C>"
country_ab3 "<U0041><U004C><U0042>"
country_num 008
+% AL
+country_car "<U0041><U004C>"
+% sq
+lang_ab "<U0073><U0071>"
+% sqi
+lang_term "<U0073><U0071><U0069>"
+% alb
+lang_lib "<U0061><U006C><U0062>"
END LC_ADDRESS
@@ -347,8 +355,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/sq_MK b/localedata/locales/sq_MK
index eb3c7eb64c..9a273b3d82 100644
--- a/localedata/locales/sq_MK
+++ b/localedata/locales/sq_MK
@@ -27,7 +27,7 @@ category "sq_MK:2000";LC_PAPER
category "sq_MK:2000";LC_NAME
category "sq_MK:2000";LC_ADDRESS
category "sq_MK:2000";LC_TELEPHONE
-
+category "sq_MK:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -88,7 +88,26 @@ END LC_NAME
LC_ADDRESS
-copy "mk_MK"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_name "<U004d><U0061><U0063><U0065><U0064>/
+<U006f><U006e><U0069><U0061>"
+country_post "<U004d><U004b>"
+country_ab2 "<U004d><U004b>"
+country_ab3 "<U004d><U004b><U0044>"
+country_car "<U004d><U004b>"
+country_num 807
+country_isbn "9989"
+% lang_name ""
+% sq
+lang_ab "<U0073><U0071>"
+% sqi
+lang_term "<U0073><U0071><U0069>"
+% alb
+lang_lib "<U0061><U006C><U0062>"
END LC_ADDRESS
@@ -98,8 +117,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/sr_ME b/localedata/locales/sr_ME
index 231efb111e..c0aa4a4ce3 100644
--- a/localedata/locales/sr_ME
+++ b/localedata/locales/sr_ME
@@ -161,5 +161,6 @@ copy "sr_RS"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "sr_RS"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/sr_RS b/localedata/locales/sr_RS
index 3028e35707..b2b8577f6d 100644
--- a/localedata/locales/sr_RS
+++ b/localedata/locales/sr_RS
@@ -356,5 +356,6 @@ int_select "<U0039><U0039>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/sr_RS@latin b/localedata/locales/sr_RS@latin
index 6bc402a85f..7b283024a6 100644
--- a/localedata/locales/sr_RS@latin
+++ b/localedata/locales/sr_RS@latin
@@ -170,5 +170,6 @@ copy "sr_RS"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "sr_RS"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ss_ZA b/localedata/locales/ss_ZA
index c30060e454..b296451d32 100644
--- a/localedata/locales/ss_ZA
+++ b/localedata/locales/ss_ZA
@@ -189,7 +189,8 @@ copy "en_ZA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_ZA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -232,7 +233,7 @@ country_post "<U005A><U0041>"
% UN Geneve 1949:68 Distinguishing signs of vehicles in international traffic
% http://www.unece.org/trans/conventn/disting-signs-5-2001.pdf
-% "ZA"
+% ZA
country_car "<U005A><U0041>"
% FIXME define the following correctly
@@ -243,9 +244,12 @@ lang_name "<U0053><U0069><U0053><U0077><U0061><U0074><U0069>"
% ISO 639 two and three letter language names
% see http://www.loc.gov/standards/iso639-2/englangn.html
-% "ss", ssw"
+% ss
lang_ab "<U0073><U0073>"
+% ssw
lang_term "<U0073><U0073><U0077>"
+% ssw
+lang_lib "<U0073><U0073><U0077>"
% Representation of postal addresses (minus the addressee's name) in South
% Africa. (Ignored for now)
diff --git a/localedata/locales/st_ZA b/localedata/locales/st_ZA
index 67e356cf7e..dcf3e7275f 100644
--- a/localedata/locales/st_ZA
+++ b/localedata/locales/st_ZA
@@ -186,7 +186,8 @@ copy "en_ZA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_ZA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -240,9 +241,12 @@ country_car "<U005A><U0041>"
% ISO 639 two and three letter language names
% see http://www.loc.gov/standards/iso639-2/englangn.html
-% "st", "sot"
+% st
lang_ab "<U0073><U0074>"
+% sot
lang_term "<U0073><U006F><U0074>"
+% sot
+lang_lib "<U0073><U006F><U0074>"
% Representation of postal addresses (minus the addressee's name) in South
% Africa. (Ignored for now)
diff --git a/localedata/locales/sv_FI b/localedata/locales/sv_FI
index 1fcb63be4b..258178f7b8 100644
--- a/localedata/locales/sv_FI
+++ b/localedata/locales/sv_FI
@@ -122,7 +122,8 @@ copy "fi_FI"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/sv_FI@euro b/localedata/locales/sv_FI@euro
index 7e174a7ae8..dcd9b7530e 100644
--- a/localedata/locales/sv_FI@euro
+++ b/localedata/locales/sv_FI@euro
@@ -72,7 +72,8 @@ copy "sv_FI"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "sv_FI"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/sv_SE b/localedata/locales/sv_SE
index 2dbc85364c..ead5d3641e 100644
--- a/localedata/locales/sv_SE
+++ b/localedata/locales/sv_SE
@@ -50,7 +50,7 @@ category "sv_SE:2000";LC_PAPER
category "sv_SE:2000";LC_NAME
category "sv_SE:2000";LC_ADDRESS
category "sv_SE:2000";LC_TELEPHONE
-
+category "sv_SE:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -200,7 +200,8 @@ int_prefix "<U0034><U0036>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -217,4 +218,9 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0053><U0045>"
country_ab3 "<U0053><U0057><U0045>"
country_num 752
+% S
+country_car "<U0053>"
+lang_ab "<U0073><U0076>"
+lang_term "<U0073><U0077><U0065>"
+lang_lib "<U0073><U0077><U0065>"
END LC_ADDRESS
diff --git a/localedata/locales/sw_KE b/localedata/locales/sw_KE
index 61dd49daf8..94126485d4 100644
--- a/localedata/locales/sw_KE
+++ b/localedata/locales/sw_KE
@@ -118,7 +118,8 @@ copy "om_KE"
END LC_PAPER
LC_MEASUREMENT
-copy "om_KE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MESSAGES
@@ -152,10 +153,16 @@ country_ab2 "<U004B><U0045>"
% KEN
country_ab3 "<U004B><U0045><U004E>"
country_num 404
+% EAK
+country_car "<U0045><U0041><U004B>"
% Kiswahili
lang_name "<U004B><U0069><U0073><U0077><U0061><U0068><U0069><U006C><U0069>"
% sw
-lang_ab "<U0073><U0077>"
+lang_ab "<U0073><U0077>"
+% swa
+lang_term "<U0073><U0077><U0061>"
+% swa
+lang_lib "<U0073><U0077><U0061>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/sw_TZ b/localedata/locales/sw_TZ
index 71fd8cdab2..a2faf07e20 100644
--- a/localedata/locales/sw_TZ
+++ b/localedata/locales/sw_TZ
@@ -77,7 +77,8 @@ copy "sw_KE"
END LC_PAPER
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MESSAGES
@@ -103,10 +104,16 @@ country_ab2 "<U0054><U005A>"
% TZA
country_ab3 "<U0054><U005A><U0041>"
country_num 834
+% EAT
+country_car "<U0045><U0041><U0054>"
% Kiswahili
lang_name "<U004B><U0069><U0073><U0077><U0061><U0068><U0069><U006C><U0069>"
% sw
-lang_ab "<U0073><U0077>"
+lang_ab "<U0073><U0077>"
+% swa
+lang_term "<U0073><U0077><U0061>"
+% swa
+lang_lib "<U0073><U0077><U0061>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/szl_PL b/localedata/locales/szl_PL
index 959611a2dd..e9cddd24cd 100644
--- a/localedata/locales/szl_PL
+++ b/localedata/locales/szl_PL
@@ -199,7 +199,8 @@ copy "pl_PL"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "pl_PL"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -207,5 +208,18 @@ copy "pl_PL"
END LC_NAME
LC_ADDRESS
-copy "pl_PL"
+postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073>/
+<U0020><U0025><U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U007A><U0020><U0025><U0054><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_ab2 "<U0050><U004C>"
+country_ab3 "<U0050><U004F><U004C>"
+country_num 616
+% PL
+country_car "<U0050><U004C>"
+% szl
+lang_term "<U0073><U007A><U006C>"
+% szl
+lang_lib "<U0073><U007A><U006C>"
END LC_ADDRESS
diff --git a/localedata/locales/ta_IN b/localedata/locales/ta_IN
index ad1d6fa9c5..70c624ed1d 100644
--- a/localedata/locales/ta_IN
+++ b/localedata/locales/ta_IN
@@ -204,6 +204,14 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% ta
+lang_ab "<U0074><U0061>"
+% tam
+lang_term "<U0074><U0061><U006D>"
+% tam
+lang_lib "<U0074><U0061><U006D>"
END LC_ADDRESS
@@ -213,5 +221,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ta_LK b/localedata/locales/ta_LK
index 80b2f69a78..e1af5f9645 100644
--- a/localedata/locales/ta_LK
+++ b/localedata/locales/ta_LK
@@ -37,7 +37,7 @@ category "ta_LK:2000";LC_PAPER
category "ta_LK:2000";LC_NAME
category "ta_LK:2000";LC_ADDRESS
category "ta_LK:2000";LC_TELEPHONE
-
+category "ta_LK:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -73,7 +73,8 @@ copy "si_LK"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "si_LK"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -81,5 +82,18 @@ copy "ta_IN"
END LC_NAME
LC_ADDRESS
-copy "si_LK"
+
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U0062><U0025><U0065><U0025><U0072>"
+
+country_ab2 "<U004C><U004B>"
+country_ab3 "<U004C><U004B><U0041>"
+country_num 144
+% CL
+country_car "<U0043><U004C>"
+% ta
+lang_ab "<U0074><U0061>"
+% tam
+lang_term "<U0074><U0061><U006D>"
+% tam
+lang_lib "<U0074><U0061><U006D>"
END LC_ADDRESS
diff --git a/localedata/locales/te_IN b/localedata/locales/te_IN
index 4f14bd313d..d42088fd86 100644
--- a/localedata/locales/te_IN
+++ b/localedata/locales/te_IN
@@ -30,7 +30,7 @@ category "i18n:2003";LC_PAPER
category "i18n:2003";LC_NAME
category "i18n:2003";LC_ADDRESS
category "i18n:2003";LC_TELEPHONE
-
+category "i18n:2003";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -221,9 +221,15 @@ country_name "<U0C2D><U0C3E><U0C30><U0C24><U0020><U0C26><U0C47><U0C36><U0C02>
country_ab2 "<U0049><U004E>"
country_ab3 "<U0049><U004E><U0044>"
country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
lang_name "<U0C24><U0C46><U0C32><U0C41><U0C17><U0C41>"
-lang_ab "te"
-lang_term "tel"
+% te
+lang_ab "<U0074><U0065>"
+% tel
+lang_term "<U0074><U0065><U006C>"
+% tel
+lang_lib "<U0074><U0065><U006C>"
END LC_ADDRESS
@@ -233,5 +239,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/tg_TJ b/localedata/locales/tg_TJ
index 51023c2677..c783625469 100644
--- a/localedata/locales/tg_TJ
+++ b/localedata/locales/tg_TJ
@@ -206,6 +206,7 @@ width 210
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -225,6 +226,14 @@ postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
country_ab2 "<U0054><U004A>"
country_ab3 "<U0054><U004A><U004B>"
country_num 762
+% TJ
+country_car "<U0054><U004A>"
+% tg
+lang_ab "<U0074><U0067>"
+% tgk
+lang_term "<U0074><U0067><U006B>"
+% tgk
+lang_lib "<U0074><U0067><U006B>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/th_TH b/localedata/locales/th_TH
index 5bcf10e57a..88c3637cb2 100644
--- a/localedata/locales/th_TH
+++ b/localedata/locales/th_TH
@@ -68,7 +68,7 @@ category "th_TH:2000";LC_PAPER
category "th_TH:2000";LC_NAME
category "th_TH:2000";LC_ADDRESS
category "th_TH:2000";LC_TELEPHONE
-
+category "th_TH:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -943,8 +943,8 @@ int_prefix "<U0036><U0036>"
END LC_TELEPHONE
LC_MEASUREMENT
-% FIXME
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -969,8 +969,8 @@ country_name "<U0E44><U0E17><U0E22>"
country_ab2 "<U0054><U0048>"
country_ab3 "<U0054><U0048><U0041>"
%country_num "<U0037><U0036><U0034>"
-%FIXME
-%country_car ""
+% T
+country_car "<U0054>"
%FIXME
%country_isbn ""
lang_name "<U0E44><U0E17><U0E22>"
diff --git a/localedata/locales/the_NP b/localedata/locales/the_NP
new file mode 100644
index 0000000000..f53c4825d7
--- /dev/null
+++ b/localedata/locales/the_NP
@@ -0,0 +1,230 @@
+comment_char %
+escape_char /
+% Tharu language locale for Nepal.
+% Contributed by Arun Kumar Pyasi <arun@chitwanix.com>
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% This file is a part of GNU C Library (glibc) and contains locale data. The
+% Free Software Foundation does not claim any copyright interest in the
+% locale data contained in this file. The foregoing does not affect the
+% license of GNU C Library (glibc) as a whole. It does not exempt you from the
+% conditions of the license if your use would otherwise be governed by
+% that license.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+LC_IDENTIFICATION
+title "Tharu language locale for Nepal"
+source "Chitwanix OS Development"
+address "Sangam Market, narayanghat, Nepal"
+contact ""
+email "info@chitwanix.com"
+tel "9779845330174"
+fax ""
+language "Chitwania Tharu"
+territory "Nepal"
+revision "1.1"
+date "2013-11-15"
+%
+category "the_NP:2013";LC_IDENTIFICATION
+category "the_NP:2013";LC_CTYPE
+category "the_NP:2013";LC_COLLATE
+category "the_NP:2013";LC_TIME
+category "the_NP:2013";LC_NUMERIC
+category "the_NP:2013";LC_MONETARY
+category "the_NP:2013";LC_MESSAGES
+category "the_NP:2013";LC_PAPER
+category "the_NP:2013";LC_NAME
+category "the_NP:2013";LC_ADDRESS
+category "the_NP:2013";LC_TELEPHONE
+category "the_NP:2013";LC_MEASUREMENT
+
+END LC_IDENTIFICATION
+
+LC_CTYPE
+copy "i18n"
+
+translit_start
+include "translit_combining";""
+translit_end
+END LC_CTYPE
+
+LC_COLLATE
+% Copy the template from ISO/IEC 14651
+copy "iso14651_t1"
+END LC_COLLATE
+
+LC_MONETARY
+% This is the POSIX Locale definition the LC_MONETARY category.
+% These are generated based on XML base Locale definition file
+% for IBM Class for Unicode/Java
+%
+int_curr_symbol "<U0049><U004E><U0052><U0020>"
+currency_symbol "<U0930><U0942>"
+mon_decimal_point "<U002E>"
+mon_thousands_sep "<U002C>"
+mon_grouping 3
+positive_sign ""
+negative_sign "<U002D>"
+int_frac_digits 2
+frac_digits 2
+p_cs_precedes 1
+p_sep_by_space 1
+n_cs_precedes 1
+n_sep_by_space 1
+p_sign_posn 1
+n_sign_posn 1
+%
+END LC_MONETARY
+
+
+LC_NUMERIC
+% This is the POSIX Locale definition for the LC_NUMERIC category.
+%
+decimal_point "<U002E>"
+thousands_sep "<U002C>"
+grouping 3
+%
+END LC_NUMERIC
+
+
+LC_TIME
+% This is the POSIX Locale definition for the LC_TIME category.
+% These are generated based on XML base Locale definition file
+% for IBM Class for Unicode/Java
+%
+% Abbreviated weekday names (%a)
+abday "<U0906><U0907><U0924><U0020>";/
+ "<U0938><U094B><U092E><U0020>";/
+ "<U092E><U0902><U0917><U0932><U0020>";/
+ "<U092C><U0941><U0927><U0020>";/
+ "<U092C><U093F><U0939><U093F><U0020>";/
+ "<U0936><U0941><U0915><U094D><U0930><U0020>";/
+ "<U0936><U0928><U093F><U0020>"
+%
+% Full weekday names (%A)
+day "<U0906><U0907><U0924><U092C><U093E><U0930><U0020>";/
+ "<U0938><U094B><U092E><U092C><U093E><U0930><U0020>";/
+ "<U092E><U0902><U0917><U0932><U092C><U093E><U0930><U0020>";/
+ "<U092C><U0941><U0927><U092C><U093E><U0930><U0020>";/
+ "<U092C><U093F><U0939><U093F><U092C><U093E><U0930><U0020>";/
+ "<U0936><U0941><U0915><U094D><U0930><U092C><U093E><U0930><U0020>";/
+ "<U0936><U0928><U093F><U092C><U093E><U0930><U0020>"
+%
+% Abbreviated month names (%b)
+abmon "<U091C><U0928><U0935><U0930><U0940>";/
+ "<U092B><U093C><U0930><U0935><U0930><U0940>";/
+ "<U092E><U093E><U0930><U094D><U091A>";/
+ "<U0905><U092A><U094D><U0930><U0947><U0932>";/
+ "<U092E><U0908>";"<U091C><U0942><U0928>";/
+ "<U091C><U0941><U0932><U093E><U0908>";/
+ "<U0905><U0917><U0938><U094D><U0924>";/
+ "<U0938><U093F><U0924><U092E><U094D><U092C><U0930>";/
+ "<U0905><U0915><U094D><U091F><U0942><U092C><U0930>";/
+ "<U0928><U0935><U092E><U094D><U092C><U0930>";/
+ "<U0926><U093F><U0938><U092E><U094D><U092C><U0930>"
+%
+% Full month names (%B)
+mon "<U091C><U0928><U0935><U0930><U0940>";/
+ "<U092B><U093C><U0930><U0935><U0930><U0940>";/
+ "<U092E><U093E><U0930><U094D><U091A>";/
+ "<U0905><U092A><U094D><U0930><U0947><U0932>";/
+ "<U092E><U0908>";"<U091C><U0942><U0928>";/
+ "<U091C><U0941><U0932><U093E><U0908>";/
+ "<U0905><U0917><U0938><U094D><U0924>";/
+ "<U0938><U093F><U0924><U092E><U094D><U092C><U0930>";/
+ "<U0905><U0915><U094D><U091F><U0942><U092C><U0930>";/
+ "<U0928><U0935><U092E><U094D><U092C><U0930>";/
+ "<U0926><U093F><U0938><U092E><U094D><U092C><U0930>"
+%
+% Equivalent of AM PM
+am_pm "<U092A><U0942><U0930><U094D><U0935><U093E><U0939><U094D><U0928>";/
+ "<U0905><U092A><U0930><U093E><U0939><U094D><U0928>"
+%
+% Appropriate date and time representation
+% %A %d %b %Y%I:%M:%S %Z
+d_t_fmt "<U0025><U0041><U0020><U0025><U0064><U0020><U0025><U0062>/
+<U0020><U0025><U0059><U0020><U0025><U0049><U003A><U0025><U004D><U003A>/
+<U0025><U0053><U0020><U0025><U0070><U0020><U0025><U005A>"
+%
+% Appropriate date representation
+% %A %d %b %Y
+d_fmt "<U0025><U0041><U0020><U0025><U0064><U0020><U0025><U0062>/
+<U0020><U0025><U0059>"
+%
+% Appropriate time representation
+% %I:%M:%S %Z
+t_fmt "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053>/
+<U0020><U0020><U0025><U005A>"
+%
+% Appropriate 12 h time representation (%r)
+t_fmt_ampm "<U0025><U0049><U003A><U0025><U004D><U003A><U0025><U0053>/
+<U0020><U0025><U0070><U0020><U0025><U005A>"
+%
+date_fmt "<U0025><U0061><U0020><U0025><U0062><U0020><U0025><U0065>/
+<U0020><U0025><U0048><U003A><U0025><U004D><U003A><U0025><U0053><U0020>/
+<U0025><U005A><U0020><U0025><U0059>"
+% FIXME: found in CLDR
+first_weekday 1
+END LC_TIME
+
+
+LC_MESSAGES
+yesexpr "<U005E><U005B><U0079><U0059><U005D><U002E><U002A>"
+noexpr "<U005E><U005B><U006E><U004E><U005D><U002E><U002A>"
+END LC_MESSAGES
+
+
+LC_PAPER
+% This is the ISO_IEC TR14652 Locale definition for the
+% LC_PAPER category
+height 297
+width 210
+
+END LC_PAPER
+
+
+LC_NAME
+% This is the ISO_IEC TR14652 Locale definition for the
+% LC_NAME category.
+%
+name_fmt "<U0025><U0070><U0025><U0074><U0025><U0066><U0025><U0074><U0025><U0067>"
+name_gen ""
+name_mr "<U004D><U0072><U002E>"
+name_mrs "<U004D><U0072><U0073><U002E>"
+name_miss "<U004D><U0069><U0073><U0073><U002E>"
+name_ms "<U004D><U0073><U002E>"
+
+END LC_NAME
+
+
+LC_ADDRESS
+% This is the ISO_IEC TR14652 Locale definition for the
+% LC_ADDRESS
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+% the
+lang_term "<U0074><U0068><U0065>"
+% the
+lang_lib "<U0074><U0068><U0065>"
+country_ab2 "<U004E><U0050>"
+country_ab3 "<U004E><U0050><U004C>"
+country_num 524
+END LC_ADDRESS
+
+
+LC_TELEPHONE
+% This is the ISO_IEC TR14652 Locale definition for the
+%
+tel_int_fmt "<U002B><U0025><U0063><U0020><U003B><U0025><U0061><U0020>/
+<U003B><U0025><U006C>"
+int_prefix "<U0039><U0031>"
+
+END LC_TELEPHONE
+
+
+LC_MEASUREMENT
+% This is the ISO_IEC TR14652 Locale definition for the
+%
+measurement 1
+
+END LC_MEASUREMENT
diff --git a/localedata/locales/ti_ER b/localedata/locales/ti_ER
index cc2c4ebb9e..570130baa5 100644
--- a/localedata/locales/ti_ER
+++ b/localedata/locales/ti_ER
@@ -50,7 +50,7 @@ END LC_IDENTIFICATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Ethiopic Specifc Data:
+% Ethiopic Specific Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -65,16 +65,13 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Eritrea Specifc Data:
+% Eritrea Specific Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-%
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT category.
-%
+% metric
measurement 1
-%
END LC_MEASUREMENT
@@ -150,7 +147,8 @@ country_post "<U0045><U0052><U0049>"
country_ab2 "<U0045><U0052>"
country_ab3 "<U0045><U0052><U0049>"
country_num 232
-% country_car unknown
+% ER
+country_car "<U0045><U0052>"
% country_isbn unknown, Need ISO 2108
lang_name "<U1275><U130D><U122D><U129B>"
lang_ab "<U0074><U0069>"
diff --git a/localedata/locales/ti_ET b/localedata/locales/ti_ET
index 3c714e954d..cdb6b0a0ac 100644
--- a/localedata/locales/ti_ET
+++ b/localedata/locales/ti_ET
@@ -50,7 +50,7 @@ END LC_IDENTIFICATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Ethiopic Specifc Data:
+% Tigrigna Specific Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -868,16 +868,13 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Ethiopia Specifc and Shared Data:
+% Ethiopia Specific and Shared Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-%
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT category.
-%
+% metric
measurement 1
-%
END LC_MEASUREMENT
@@ -952,7 +949,8 @@ country_post "<U0045><U0054><U0048>"
country_ab2 "<U0045><U0054>"
country_ab3 "<U0045><U0054><U0048>"
country_num 231 % 210 found in at least one ISO 3166 doc
-% country_car unknown
+% ETH
+country_car "<U0045><U0054><U0048>"
% country_isbn unknown, Need ISO 2108
lang_name "<U1275><U130D><U122D><U129B>"
lang_ab "<U0074><U0069>"
diff --git a/localedata/locales/tig_ER b/localedata/locales/tig_ER
index 80d0afb269..cf4b6650d3 100644
--- a/localedata/locales/tig_ER
+++ b/localedata/locales/tig_ER
@@ -48,7 +48,7 @@ END LC_IDENTIFICATION
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Ethiopic Specifc Data:
+% Tigre Specific Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -63,12 +63,13 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Eritrea Specifc Data:
+% Eritrea Specific Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ER"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
@@ -120,7 +121,8 @@ country_post "<U0045><U0052><U0049>"
country_ab2 "<U0045><U0052>"
country_ab3 "<U0045><U0052><U0049>"
country_num 232
-% country_car unknown
+% ER
+country_car "<U0045><U0052>"
% country_isbn unknown, Need ISO 2108
lang_name "<U1275><U130D><U1228>"
lang_ab ""
diff --git a/localedata/locales/tk_TM b/localedata/locales/tk_TM
index 43059af294..3ae72811d7 100644
--- a/localedata/locales/tk_TM
+++ b/localedata/locales/tk_TM
@@ -308,10 +308,6 @@ day "<U0044><U0075><U015F><U0065><U006E><U0062><U0065>";/
"<U015E><U0065><U006E><U0062><U0065>";/
"<U00DD><U0065><U006B><U015F><U0065><U006E><U0062><U0065>"
-abday "<U0044><U0079><U006E>";"<U0042><U0061><U015F>";/
- "<U0059><U0061><U015F>";"<U0048><U006F><U015F>";/
- "<U0053><U006F><U0067>";"<U0041><U006E><U006E>";/
- "<U0052><U0075><U0068>"
abday "<U0044><U0075><U015F>";"<U0053><U0069><U015F>";/
"<U00C7><U0061><U0072>";"<U0050><U0065><U006E>";/
"<U0041><U006E><U006E>";"<U015E><U0065><U006E>";/
@@ -389,6 +385,7 @@ n_sign_posn 1
END LC_MONETARY
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -399,18 +396,20 @@ LC_MESSAGES
% (used for "yes" in English, but corresponding to "no" in Turkmen (well,
% ý actually)
%%%%%%%%
-yesstr "<U0068><U0061><U0077><U0061>" % hawa
-nostr "<U00FD><U006F><U006B>" % ýok
+% hawa
+yesstr "<U0068><U0061><U0077><U0061>"
+% ýok
+nostr "<U00FD><U006F><U006B>"
+% [hH]
yesexpr "<U005E><U005B><U0068><U0048>/
-<U005D><U002E><U002A>" % [hH]
+<U005D><U002E><U002A>"
+% [ýÃnN]
noexpr "<U005E><U005B><U00FD><U00DD>/
-<U006E><U004E><U005D><U002E><U002A>" % [ýÃnN]
+<U006E><U004E><U005D><U002E><U002A>"
END LC_MESSAGES
LC_PAPER
-%
% A4 Paper
-%
height 297
width 210
END LC_PAPER
@@ -433,19 +432,27 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E><U0025>/
<U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0073><U0020><U0025>/
<U0068><U0020><U0025><U0065><U0020><U0025><U0072><U0025><U004E><U0025>/
<U007A><U0020><U0025><U0054><U0025><U004E><U0025><U0063><U0025><U004E>"
-
+% Türkmenistan
country_name "<U0054><U00FC><U0072><U006B><U006D>/
-<U0065><U006E><U0069><U0073><U0074><U0061><U006E>" % Türkmenistan
-country_post "<U0054><U004D>" % TM
-country_car "<U0054><U004D>" % TM
+<U0065><U006E><U0069><U0073><U0074><U0061><U006E>"
+% TM
+country_post "<U0054><U004D>"
+% TM
+country_car "<U0054><U004D>"
country_num 795
-country_ab2 "<U0054><U004D>" % TM
-country_ab3 "<U0054><U004B><U004D>" % TKM
+% TM
+country_ab2 "<U0054><U004D>"
+% TKM
+country_ab3 "<U0054><U004B><U004D>"
+% Türkmençe
lang_name "<U0054><U00FC><U0072><U006B><U006D>/
-<U0065><U006E><U00E7><U0065>" % Türkmençe
-lang_term "<U0074><U0075><U006B>" % tuk
-lang_lib "<U0074><U0075><U006B>" % tuk
-lang_ab "<U0074><U006B>" % tk
+<U0065><U006E><U00E7><U0065>"
+% tuk
+lang_term "<U0074><U0075><U006B>"
+% tuk
+lang_lib "<U0074><U0075><U006B>"
+% tk
+lang_ab "<U0074><U006B>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/tl_PH b/localedata/locales/tl_PH
index 40c6a715ad..a01ef8bff6 100644
--- a/localedata/locales/tl_PH
+++ b/localedata/locales/tl_PH
@@ -149,6 +149,7 @@ width 216
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -158,7 +159,6 @@ copy "en_US"
END LC_NAME
LC_ADDRESS
-% FIXME
postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0068>/
<U0020><U0025><U0073><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
@@ -168,6 +168,14 @@ postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
country_ab2 "<U0050><U0048>"
country_ab3 "<U0050><U0048><U004C>"
country_num 608
+% RP
+country_car "<U0052><U0050>"
+% tl
+lang_ab "<U0074><U006C>"
+% tgl
+lang_term "<U0074><U0067><U006C>"
+% tgl
+lang_lib "<U0074><U0067><U006C>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/tn_ZA b/localedata/locales/tn_ZA
index c717d1e8d1..f2a85ed4eb 100644
--- a/localedata/locales/tn_ZA
+++ b/localedata/locales/tn_ZA
@@ -191,7 +191,8 @@ copy "en_ZA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_ZA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -235,7 +236,7 @@ country_post "<U005A><U0041>"
% UN Geneve 1949:68 Distinguishing signs of vehicles in international traffic
% http://www.unece.org/trans/conventn/disting-signs-5-2001.pdf
-% "ZA"
+% ZA
country_car "<U005A><U0041>"
% FIXME define the following correctly
@@ -246,9 +247,12 @@ lang_name "<U0053><U0065><U0074><U0073><U0077><U0061><U006E><U0061>"
% ISO 639 two and three letter language names
% see http://www.loc.gov/standards/iso639-2/englangn.html
-% "tn", "tsn"
+% tn
lang_ab "<U0074><U006E>"
+% tsn
lang_term "<U0074><U0073><U006E>"
+% tsn
+lang_lib "<U0074><U0073><U006E>"
% Representation of postal addresses (minus the addressee's name) in South
% Africa. (Ignored for now)
@@ -283,9 +287,12 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
% ISO 3166 country number and 2 and 3 letter abreviations
% http://www.unicode.org/onlinedat/countries.html
-% "ZA", "ZAF"
-country_num 710
+% ZA
country_ab2 "<U005A><U0041>"
+% ZAF
country_ab3 "<U005A><U0041><U0046>"
+country_num 710
+
+
END LC_ADDRESS
diff --git a/localedata/locales/tr_CY b/localedata/locales/tr_CY
index daeffc1b9c..e2e6936b1a 100644
--- a/localedata/locales/tr_CY
+++ b/localedata/locales/tr_CY
@@ -77,7 +77,8 @@ copy "tr_TR"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "tr_TR"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -105,9 +106,9 @@ country_ab2 "<U0054><U0052>"
country_ab3 "<U0054><U0055><U0052>"
% Turkish
lang_name "<U0054><U0075><U0072><U006B><U0069><U0073><U0068>"
-% tr
+% tur
lang_term "<U0074><U0075><U0072>"
-% tr
+% tur
lang_lib "<U0074><U0075><U0072>"
%tr
lang_ab "<U0074><U0072>"
diff --git a/localedata/locales/tr_TR b/localedata/locales/tr_TR
index 867e66fc82..f54be2c624 100644
--- a/localedata/locales/tr_TR
+++ b/localedata/locales/tr_TR
@@ -3558,7 +3558,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -3594,9 +3595,9 @@ country_ab2 "<U0054><U0052>"
country_ab3 "<U0054><U0055><U0052>"
% Turkish
lang_name "<U0054><U0075><U0072><U006B><U0069><U0073><U0068>"
-% tr
+% tur
lang_term "<U0074><U0075><U0072>"
-% tr
+% tur
lang_lib "<U0074><U0072>"
%tr
lang_ab "<U0074><U0072>"
diff --git a/localedata/locales/translit_neutral b/localedata/locales/translit_neutral
index 58fb2a4357..b5cc079b26 100644
--- a/localedata/locales/translit_neutral
+++ b/localedata/locales/translit_neutral
@@ -34,10 +34,14 @@ include "translit_wide";""
<U00D7> <U0078>
% LATIN CAPITAL LETTER AE
<U00C6> "<U0041><U0045>"
+% LATIN CAPITAL LETTER O WITH STROKE
+<U00D8> "<U004F><U0045>"
% LATIN SMALL LETTER SHARP S
<U00DF> "<U0073><U0073>"
% LATIN SMALL LETTER AE
<U00E6> "<U0061><U0065>"
+% LATIN SMALL LETTER O WITH STROKE
+<U00F8> "<U006F><U0065>"
% MODIFIER LETTER PRIME
<U02B9> <U2032>;<U00B4>
% MODIFIER LETTER DOUBLE PRIME
diff --git a/localedata/locales/ts_ZA b/localedata/locales/ts_ZA
index 010cba2d3e..b8225fc40a 100644
--- a/localedata/locales/ts_ZA
+++ b/localedata/locales/ts_ZA
@@ -186,7 +186,8 @@ copy "en_ZA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_ZA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -240,9 +241,12 @@ lang_name "<U0058><U0069><U0074><U0073><U006F><U006E><U0067><U0061>"
% ISO 639 two and three letter language names
% see http://www.loc.gov/standards/iso639-2/englangn.html
-% "ts", "tso"
+% ts
lang_ab "<U0074><U0073>"
+% tso
lang_term "<U0074><U0073><U006F>"
+% tso
+lang_lib "<U0074><U0073><U006F>"
% Representation of postal addresses (minus the addressee's name) in South
% Africa. (Ignored for now)
diff --git a/localedata/locales/tt_RU b/localedata/locales/tt_RU
index bfa6bb8dac..804f7f0989 100644
--- a/localedata/locales/tt_RU
+++ b/localedata/locales/tt_RU
@@ -304,7 +304,8 @@ copy "ru_RU"
END LC_PAPER
LC_MEASUREMENT
-copy "ru_RU"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -315,6 +316,14 @@ END LC_NAME
LC_ADDRESS
% FIXME
postal_fmt "???"
+% RUS
+country_car "<U0052><U0055><U0053>"
+% tt
+lang_ab "<U0074><U0074>"
+% tat
+lang_term "<U0074><U0061><U0074>"
+% tat
+lang_lib "<U0074><U0061><U0074>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/tt_RU@iqtelif b/localedata/locales/tt_RU@iqtelif
index a043de575e..8e455d6fdc 100644
--- a/localedata/locales/tt_RU@iqtelif
+++ b/localedata/locales/tt_RU@iqtelif
@@ -161,6 +161,7 @@ width 210
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -173,6 +174,14 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U0052><U0055>"
country_ab3 "<U0052><U0055><U0053>"
country_num 643
+% RUS
+country_car "<U0052><U0055><U0053>"
+% tt
+lang_ab "<U0074><U0074>"
+% tat
+lang_term "<U0074><U0061><U0074>"
+% tat
+lang_lib "<U0074><U0061><U0074>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/ug_CN b/localedata/locales/ug_CN
index c4e0a9ac1f..e25d528445 100644
--- a/localedata/locales/ug_CN
+++ b/localedata/locales/ug_CN
@@ -302,8 +302,8 @@ height 297
width 210
END LC_PAPER
-% Metric System (ISO 1000)
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -311,6 +311,23 @@ LC_NAME % to be fixed
copy "zh_CN"
END LC_NAME
-LC_ADDRESS % to be fixed
-copy "zh_CN"
+LC_ADDRESS
+postal_fmt "<U0025><U0063><U0025><U004E><U0025>/
+<U0054><U0025><U004E><U0025><U0073><U0020><U0025><U0068><U0020><U0025>/
+<U0065><U0020><U0025><U0072><U0025><U004E><U0025><U0062><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0066><U0025><U004E><U0025><U0061>/
+<U0025><U004E>"
+country_name "<U4E2D><U534E><U4EBA><U6C11><U5171><U548C><U56FD>"
+%country_post "FIXME"
+country_ab2 "<U0043><U004E>"
+country_ab3 "<U0043><U0048><U004E>"
+country_num 156
+%country_car "FIXME"
+country_isbn "<U0037>"
+% ug
+lang_ab "<U0075><U0067>"
+% uig
+lang_term "<U0075><U0069><U0067>"
+% uig
+lang_lib "<U0075><U0069><U0067>"
END LC_ADDRESS
diff --git a/localedata/locales/uk_UA b/localedata/locales/uk_UA
index b1df63085c..d9194b82c2 100644
--- a/localedata/locales/uk_UA
+++ b/localedata/locales/uk_UA
@@ -1114,10 +1114,8 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% 1 - ISO 1000
-% 2 - U.S.A.
-% 3 - other
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/unm_US b/localedata/locales/unm_US
index 9734e25b3b..482a7daf2b 100644
--- a/localedata/locales/unm_US
+++ b/localedata/locales/unm_US
@@ -138,7 +138,25 @@ name_fmt "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
END LC_NAME
LC_ADDRESS
-copy "en_US"
+postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
+<U0025><U0064><U0025><U004E><U0025><U0062><U0025><U004E><U0025><U0068>/
+<U0020><U0025><U0073><U0020><U0025><U0065><U0020><U0025><U0072><U0025>/
+<U004E><U0025><U0054><U002C><U0020><U0025><U0053><U0020><U0025><U007A><U0025>/
+<U004E><U0025><U0063><U0025><U004E>"
+country_name "<U0055><U0053><U0041>"
+country_post "<U0055><U0053><U0041>"
+country_ab2 "<U0055><U0053>"
+country_ab3 "<U0055><U0053><U0041>"
+country_num 840
+% USA
+country_car "<U0055><U0053><U0041>"
+country_isbn 0
+% lang_name ""
+% lang_ab ""
+% unm
+lang_term "<U0075><U006E><U006D>"
+% unm
+lang_lib "<U0075><U006E><U006D>"
END LC_ADDRESS
LC_TELEPHONE
@@ -146,5 +164,6 @@ copy "en_US"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_US"
+% US customary units
+measurement 2
END LC_MEASUREMENT
diff --git a/localedata/locales/ur_IN b/localedata/locales/ur_IN
index d14946f29c..8813b5113c 100644
--- a/localedata/locales/ur_IN
+++ b/localedata/locales/ur_IN
@@ -29,7 +29,7 @@ category "ur_IN:2009";LC_PAPER
category "ur_IN:2009";LC_NAME
category "ur_IN:2009";LC_ADDRESS
category "ur_IN:2009";LC_TELEPHONE
-
+category "ur_IN:2009";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -170,7 +170,20 @@ END LC_NAME
LC_ADDRESS
-copy "hi_IN"
+postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
+<U0025><U0062><U0025><U0065><U0025><U0072>"
+
+country_ab2 "<U0049><U004E>"
+country_ab3 "<U0049><U004E><U0044>"
+country_num 356
+% IND
+country_car "<U0049><U004E><U0044>"
+% ur
+lang_ab "<U0075><U0072>"
+% urd
+lang_term "<U0075><U0072><U0064>"
+% urd
+lang_lib "<U0075><U0072><U0064>"
END LC_ADDRESS
@@ -180,5 +193,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-copy "hi_IN"
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/ur_PK b/localedata/locales/ur_PK
index fc9cfb8073..2bc522576f 100644
--- a/localedata/locales/ur_PK
+++ b/localedata/locales/ur_PK
@@ -38,7 +38,7 @@ category "ur_PK:2000";LC_PAPER
category "ur_PK:2000";LC_NAME
category "ur_PK:2000";LC_ADDRESS
category "ur_PK:2000";LC_TELEPHONE
-
+category "ur_PK:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -176,6 +176,7 @@ width 210
END LC_PAPER
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
@@ -195,6 +196,14 @@ postal_fmt "<U0025><U0061><U0025><U004E><U0025><U0066><U0025><U004E>/
country_ab2 "<U0050><U004B>"
country_ab3 "<U0050><U0041><U004B>"
country_num 586
+% PK
+country_car "<U0050><U004B>"
+% ur
+lang_ab "<U0075><U0072>"
+% urd
+lang_term "<U0075><U0072><U0064>"
+% urd
+lang_lib "<U0075><U0072><U0064>"
END LC_ADDRESS
LC_TELEPHONE
diff --git a/localedata/locales/uz_UZ b/localedata/locales/uz_UZ
index c529e61ee8..6e5948bd89 100644
--- a/localedata/locales/uz_UZ
+++ b/localedata/locales/uz_UZ
@@ -283,7 +283,8 @@ int_prefix "<U0032><U0037>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -314,9 +315,13 @@ country_ab3 "UZB"
country_num 860
% FIXME: ISBN number?
%country_isbn ""
-country_car "UZ"
+% UZ
+country_car "<U0055><U005A>"
lang_name "<U004F><U0027><U007A><U0062><U0065><U006B>"
-lang_ab "uz"
-lang_term "uzb"
-lang_lib "uzb"
+% uz
+lang_ab "<U0075><U007A>"
+% uzb
+lang_term "<U0075><U007A><U0062>"
+% uzb
+lang_lib "<U0075><U007A><U0062>"
END LC_ADDRESS
diff --git a/localedata/locales/uz_UZ@cyrillic b/localedata/locales/uz_UZ@cyrillic
index 4a34eacfc8..679b64e9cc 100644
--- a/localedata/locales/uz_UZ@cyrillic
+++ b/localedata/locales/uz_UZ@cyrillic
@@ -284,7 +284,8 @@ int_prefix "<U0032><U0037>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -317,7 +318,10 @@ country_num 860
%country_isbn ""
country_car "<U0055><U005A>"
lang_name "<U040E><U0437><U0431><U0435><U043A><U0447><U0430>"
-lang_ab "<U0075><U007A>"
-lang_term "<U0075><U007A><U0062>"
-lang_lib "<U0075><U007A><U0062>"
+% uz
+lang_ab "<U0075><U007A>"
+% uzb
+lang_term "<U0075><U007A><U0062>"
+% uzb
+lang_lib "<U0075><U007A><U0062>"
END LC_ADDRESS
diff --git a/localedata/locales/ve_ZA b/localedata/locales/ve_ZA
index f715cf5c82..9694401727 100644
--- a/localedata/locales/ve_ZA
+++ b/localedata/locales/ve_ZA
@@ -188,7 +188,8 @@ copy "en_ZA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_ZA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -232,7 +233,7 @@ country_post "<U005A><U0041>"
% UN Geneve 1949:68 Distinguishing signs of vehicles in international traffic
% http://www.unece.org/trans/conventn/disting-signs-5-2001.pdf
-% "ZA"
+% ZA
country_car "<U005A><U0041>"
% FIXME define the following correctly
@@ -243,12 +244,12 @@ lang_name "<U0054><U0073><U0068><U0069><U0076><U0065><U006E><U1E13><U0061>"
% ISO 639 two and three letter language names
% see http://www.loc.gov/standards/iso639-2/englangn.html
-% "ve", "ven", :ven"
+% ve
lang_ab "<U0076><U0065>"
+% ven
lang_term "<U0076><U0065><U006E>"
-% FIXME there seems to be an error with the following but am unable to
-% determine what as it works correctly in other locale files
-% lang_lib "<U0076><U0065><U006E>"
+% ven
+lang_lib "<U0076><U0065><U006E>"
% Representation of postal addresses (minus the addressee's name) in South
% Africa. (Ignored for now)
diff --git a/localedata/locales/vi_VN b/localedata/locales/vi_VN
index 582f065fc4..0c045c6226 100644
--- a/localedata/locales/vi_VN
+++ b/localedata/locales/vi_VN
@@ -336,6 +336,14 @@ lang_name "<U0056><U0069><U1EC7><U0074><U0020><U006E><U0067><U1EEF>"
country_ab2 "<U0056><U004E>"
country_ab3 "<U0056><U004E><U004D>"
country_num 704
+% VN
+country_car "<U0056><U004E>"
+% vi
+lang_ab "<U0076><U0069>"
+% vie
+lang_term "<U0076><U0069><U0065>"
+% vie
+lang_lib "<U0076><U0069><U0065>"
END LC_ADDRESS
@@ -350,5 +358,6 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
+% metric
measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/wa_BE b/localedata/locales/wa_BE
index b051424080..a2fb3be616 100644
--- a/localedata/locales/wa_BE
+++ b/localedata/locales/wa_BE
@@ -43,11 +43,15 @@ country_ab2 "BE"
country_ab3 "BEL"
country_num 56
country_isbn "2"
-country_car "B"
+% B
+country_car "<U0042>"
lang_name "<U0057><U0061><U006C><U006F><U006E>"
-lang_ab "wa"
-lang_term "wln"
-lang_lib "wln"
+% wa
+lang_ab "<U0077><U0061>"
+% wln
+lang_term "<U0077><U006C><U006E>"
+% wln
+lang_lib "<U0077><U006C><U006E>"
END LC_ADDRESS
LC_CTYPE
@@ -91,9 +95,9 @@ LC_PAPER
copy "fr_BE"
END LC_PAPER
-% COMINTAIRE: doet esse li minme ki po fr_BE.
LC_MEASUREMENT
-copy "fr_BE"
+% metric
+measurement 1
END LC_MEASUREMENT
% COMINTAIRE: doet esse li minme ki po fr_BE.
diff --git a/localedata/locales/wa_BE@euro b/localedata/locales/wa_BE@euro
index 78c6b6a01c..09ad80c59b 100644
--- a/localedata/locales/wa_BE@euro
+++ b/localedata/locales/wa_BE@euro
@@ -35,7 +35,7 @@ category "wa_BE@euro:2000";LC_PAPER
category "wa_BE@euro:2000";LC_NAME
category "wa_BE@euro:2000";LC_ADDRESS
category "wa_BE@euro:2000";LC_TELEPHONE
-
+category "wa_BE@euro:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -71,7 +71,8 @@ copy "wa_BE"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "wa_BE"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/wae_CH b/localedata/locales/wae_CH
index bbda7b7b73..5f116135ce 100644
--- a/localedata/locales/wae_CH
+++ b/localedata/locales/wae_CH
@@ -49,7 +49,7 @@ END LC_COLLATE
LC_TIME
% abday - The abbreviations for the week days:
-% - Sun, Män, Zis, Mit, Fro, Fri, Sam
+% - Sun, Män, Zis, Mit, Fro, Fri, Sam
abday "<U0053><U0075><U006E>";/
"<U004D><U00E4><U006E>";/
"<U005A><U0069><U0073>";/
@@ -59,7 +59,7 @@ abday "<U0053><U0075><U006E>";/
"<U0053><U0061><U006D>"
% day - The full names of the week days:
-% - Suntag, Mäntag, Zischtag, Mittwuch, Frontag, Fritag, Samschtag
+% - Suntag, Mäntag, Zischtag, Mittwuch, Frontag, Fritag, Samschtag
day "<U0053><U0075><U006E><U0074><U0061><U0067>";/
"<U004D><U00E4><U006E><U0074><U0061><U0067>";/
"<U005A><U0069><U0073><U0063><U0068><U0074><U0061><U0067>";/
@@ -69,7 +69,7 @@ day "<U0053><U0075><U006E><U0074><U0061><U0067>";/
"<U0053><U0061><U006D><U0073><U0063><U0068><U0074><U0061><U0067>"
% abmon - The abbreviations for the months
-% - Jen, Hor, Mär, Abr, Mei, Brá, Hei, Öig, Her, Wím, Win, Chr
+% - Jen, Hor, Mär, Abr, Mei, Brá, Hei, Öig, Her, Wím, Win, Chr
abmon "<U004A><U0065><U006E>";/
"<U0048><U006F><U0072>";/
"<U004D><U00E4><U0072>";/
@@ -84,8 +84,8 @@ abmon "<U004A><U0065><U006E>";/
"<U0043><U0068><U0072>"
% mon - The full names of the months -
-% - Jener, Hornig, Märze, Abrille, Meije, Braachet, Heiwet,
-% Öigschte, Herbschtmaanet, Wiimaanet, Wintermaanet, Chrischtmaanet
+% - Jener, Hornig, Märze, Abrille, Meije, Braachet, Heiwet,
+% Öigschte, Herbschtmaanet, Wiimaanet, Wintermaanet, Chrischtmaanet
mon "<U004A><U0065><U006E><U0065><U0072>";/
"<U0048><U006F><U0072><U006E><U0069><U0067>";/
"<U004D><U00E4><U0072><U007A><U0065>";/
@@ -172,7 +172,8 @@ copy "de_CH"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "de_CH"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -189,16 +190,16 @@ name_fmt "<U0025><U0064><U0025><U0074><U0025><U0067><U0025><U0074>/
% "Clan names"
%
name_miss "<U0046><U0072><U00F6><U006C><U0065><U0069><U006E>"
-% Salutation for unmarried females - "Frölein"
+% Salutation for unmarried females - "Frölein"
%
name_mr "<U0048><U0065><U0072><U0072>"
% Salutation for males - "Herr"
%
name_mrs "<U0046><U0072><U00F6><U0069><U0077>"
-% Salutation for married females - "Fröiw"
+% Salutation for married females - "Fröiw"
%
name_ms "<U0046><U0072><U00F6><U0069><U0077>"
-% Salutation valid for all females - "Fröiw"
+% Salutation valid for all females - "Fröiw"
END LC_NAME
LC_ADDRESS
diff --git a/localedata/locales/wal_ET b/localedata/locales/wal_ET
index 7846531f45..5764267d45 100644
--- a/localedata/locales/wal_ET
+++ b/localedata/locales/wal_ET
@@ -4,7 +4,7 @@ escape_char /
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Sidama language locale for Ethiopia.
+% Walaita language locale for Ethiopia.
%
% Charset: UTF-8
%
@@ -65,12 +65,13 @@ END LC_CTYPE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Ethiopia Specifc and Shared Data:
+% Ethiopia Specific and Shared Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LC_MEASUREMENT
-copy "ti_ET"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_MONETARY
@@ -92,7 +93,7 @@ END LC_TELEPHONE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% Sidama Specific Data:
+% Walaita Specific Data:
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -107,14 +108,12 @@ country_post "<U0045><U0054><U0048>"
country_ab2 "<U0045><U0054>"
country_ab3 "<U0045><U0054><U0048>"
country_num 231 % 210 found in at least one ISO 3166 doc
-% country_car unknown
+% ETH
+country_car "<U0045><U0054><U0048>"
% country_isbn unknown, Need ISO 2108
lang_name "<U12C8><U120B><U12ED><U1273><U1271>"
lang_term "<U0077><U0061><U006C>"
lang_lib "<U0077><U0061><U006C>"
-
-
-%
END LC_ADDRESS
diff --git a/localedata/locales/wo_SN b/localedata/locales/wo_SN
index ee91dbc81a..44dcabdd14 100644
--- a/localedata/locales/wo_SN
+++ b/localedata/locales/wo_SN
@@ -39,7 +39,7 @@ category "mg_MG:2000";LC_PAPER
category "mg_MG:2000";LC_NAME
category "mg_MG:2000";LC_ADDRESS
category "mg_MG:2000";LC_TELEPHONE
-
+category "mg_MG:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -157,7 +157,8 @@ int_select "<U0030><U0030>"
END LC_TELEPHONE
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -176,5 +177,13 @@ postal_fmt "<U0025><U0066><U0025><U004E><U0025><U0061><U0025><U004E>/
country_ab2 "<U004D><U0047>"
country_ab3 "<U004D><U0044><U0047>"
country_num 450
+% SN
+country_car "<U0053><U004E>"
+% wo
+lang_ab "<U0077><U006F>"
+% wol
+lang_term "<U0077><U006F><U006C>"
+% wol
+lang_lib "<U0077><U006F><U006C>"
END LC_ADDRESS
diff --git a/localedata/locales/xh_ZA b/localedata/locales/xh_ZA
index f0f56ed4ff..2a2454066f 100644
--- a/localedata/locales/xh_ZA
+++ b/localedata/locales/xh_ZA
@@ -13,7 +13,7 @@ comment_char %
% 0.2 (2004-11-02):
% 2004-11-01 Dwayne Bailey <dwayne@translate.org.za>
% - Change all contact information
-% - d_t_fmt, date_fmt cahnged day number %e to %-e to remove
+% - d_t_fmt, date_fmt changed day number %e to %-e to remove
% space padding in day.
% - Remove .* from yes/noexpr
% 2004-03-30 Dwayne Bailey <dwayne@translate.org.za>
@@ -186,7 +186,8 @@ copy "en_ZA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_ZA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
@@ -235,6 +236,7 @@ country_car "<U005A><U0041>"
% see http://www.loc.gov/standards/iso639-2/englangn.html
lang_ab "<U0078><U0068>"
lang_term "<U0078><U0068><U006F>"
+lang_lib "<U0078><U0068><U006F>"
% Representation of postal addresses (minus the addressee's name) in South
% Africa. (Ignored for now)
diff --git a/localedata/locales/yi_US b/localedata/locales/yi_US
index 134eeed9a4..97ed218572 100644
--- a/localedata/locales/yi_US
+++ b/localedata/locales/yi_US
@@ -47,13 +47,17 @@ country_post "USA"
country_ab2 "US"
country_ab3 "USA"
country_num 840
-country_car "USA"
+% USA
+country_car "<U0055><U0053><U0041>"
% FIXME Check which isbn for Yiddish in USA
country_isbn "0"
lang_name "<U05D9><U05D9><U05B4><U05D3><U05D9><U05E9>"
-lang_ab "yi"
-lang_term "yid"
-lang_lib "yid"
+% yi
+lang_ab "<U0079><U0069>"
+% yid
+lang_term "<U0079><U0069><U0064>"
+% yid
+lang_lib "<U0079><U0069><U0064>"
END LC_ADDRESS
LC_CTYPE
@@ -144,7 +148,8 @@ copy "en_US"
END LC_PAPER
LC_MEASUREMENT
-copy "en_US"
+% US customary units
+measurement 2
END LC_MEASUREMENT
LC_NUMERIC
diff --git a/localedata/locales/yo_NG b/localedata/locales/yo_NG
index f0206ae1a5..c88ca6e1bd 100644
--- a/localedata/locales/yo_NG
+++ b/localedata/locales/yo_NG
@@ -38,7 +38,7 @@ category "yo_NG:2000";LC_PAPER
category "yo_NG:2000";LC_NAME
category "yo_NG:2000";LC_ADDRESS
category "yo_NG:2000";LC_TELEPHONE
-
+category "yo_NG:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_COLLATE
@@ -430,7 +430,8 @@ copy "en_NG"
END LC_PAPER
LC_MEASUREMENT
-copy "en_NG"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/locales/yue_HK b/localedata/locales/yue_HK
index 4bd7fe105b..96e9901685 100644
--- a/localedata/locales/yue_HK
+++ b/localedata/locales/yue_HK
@@ -29,7 +29,7 @@ category "yue_HK:2010";LC_PAPER
category "yue_HK:2010";LC_NAME
category "yue_HK:2010";LC_ADDRESS
category "yue_HK:2010";LC_TELEPHONE
-
+category "yue_HK:2010";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -151,6 +151,10 @@ country_ab3 "<U0048><U004B><U0047>"
country_num 344
country_isbn "<U0039><U0036><U0032>"
lang_name "<U7CB5><U8A9E>"
+% yue
+lang_term "<U0079><U0075><U0065>"
+% yue
+lang_lib "<U0079><U0075><U0065>"
END LC_ADDRESS
@@ -160,7 +164,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/zh_CN b/localedata/locales/zh_CN
index 1ed9d252e1..ff21c85538 100644
--- a/localedata/locales/zh_CN
+++ b/localedata/locales/zh_CN
@@ -39,7 +39,7 @@ category "zh_CN:2000";LC_PAPER
category "zh_CN:2000";LC_NAME
category "zh_CN:2000";LC_ADDRESS
category "zh_CN:2000";LC_TELEPHONE
-
+category "zh_CN:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
@@ -188,5 +188,6 @@ lang_lib "<U0063><U0068><U0069>"
END LC_ADDRESS
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/zh_HK b/localedata/locales/zh_HK
index 1674d816fb..77a6f8c44d 100644
--- a/localedata/locales/zh_HK
+++ b/localedata/locales/zh_HK
@@ -28,7 +28,7 @@ category "zh_HK:2000";LC_PAPER
category "zh_HK:2000";LC_NAME
category "zh_HK:2000";LC_ADDRESS
category "zh_HK:2000";LC_TELEPHONE
-
+category "zh_HK:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -184,6 +184,9 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073>/
country_ab2 "<U0048><U004B>"
country_ab3 "<U0048><U004B><U0047>"
country_num 344
+lang_ab "<U007A><U0068>"
+lang_term "<U007A><U0068><U006F>"
+lang_lib "<U0063><U0068><U0069>"
END LC_ADDRESS
@@ -198,8 +201,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the
-%
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/zh_SG b/localedata/locales/zh_SG
index 2d052f45bb..da9d64ec46 100644
--- a/localedata/locales/zh_SG
+++ b/localedata/locales/zh_SG
@@ -28,7 +28,7 @@ category "zh_SG:2000";LC_PAPER
category "zh_SG:2000";LC_NAME
category "zh_SG:2000";LC_ADDRESS
category "zh_SG:2000";LC_TELEPHONE
-
+category "zh_SG:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -194,6 +194,11 @@ postal_fmt "<U0025><U007A><U0025><U0063><U0025><U0054><U0025><U0073><U0025><U00
country_ab2 "<U0053><U0047>"
country_ab3 "<U0053><U0047><U0050>"
country_num 702
+% SGP
+country_car "<U0053><U0047><U0050>"
+lang_ab "<U007A><U0068>"
+lang_term "<U007A><U0068><U006F>"
+lang_lib "<U0063><U0068><U0069>"
END LC_ADDRESS
@@ -206,8 +211,6 @@ END LC_TELEPHONE
LC_MEASUREMENT
-% This is the ISO_IEC TR14652 Locale definition for the LC_MEASUREMENT
-% category generated by IBM Basic CountryPack Transformer.
+% metric
measurement 1
-
END LC_MEASUREMENT
diff --git a/localedata/locales/zh_TW b/localedata/locales/zh_TW
index eac02283e5..e3eeb4d259 100644
--- a/localedata/locales/zh_TW
+++ b/localedata/locales/zh_TW
@@ -40,6 +40,7 @@ category "zh_TW:2000";LC_PAPER
category "zh_TW:2000";LC_NAME
category "zh_TW:2000";LC_ADDRESS
category "zh_TW:2000";LC_TELEPHONE
+category "zh_TW:2000";LC_MEASUREMENT
END LC_IDENTIFICATION
LC_CTYPE
@@ -206,5 +207,6 @@ lang_lib "<U0063><U0068><U0069>"
END LC_ADDRESS
LC_MEASUREMENT
-measurement 1
+% metric
+measurement 1
END LC_MEASUREMENT
diff --git a/localedata/locales/zu_ZA b/localedata/locales/zu_ZA
index b74e6e82b8..2c78e51b83 100644
--- a/localedata/locales/zu_ZA
+++ b/localedata/locales/zu_ZA
@@ -192,7 +192,8 @@ copy "en_ZA"
END LC_TELEPHONE
LC_MEASUREMENT
-copy "en_ZA"
+% metric
+measurement 1
END LC_MEASUREMENT
LC_NAME
diff --git a/localedata/tests-mbwc/tst_mbrtowc.c b/localedata/tests-mbwc/tst_mbrtowc.c
index 3a6070a870..ffb33ce11e 100644
--- a/localedata/tests-mbwc/tst_mbrtowc.c
+++ b/localedata/tests-mbwc/tst_mbrtowc.c
@@ -16,7 +16,7 @@ tst_mbrtowc (FILE * fp, int debug_flg)
char w_flg, s_flg;
char *s;
size_t n;
- char t_flg, t_ini;
+ char t_flg;
static mbstate_t t = { 0 };
mbstate_t *pt;
wchar_t wc, *pwc, wc_ex;
@@ -42,7 +42,6 @@ tst_mbrtowc (FILE * fp, int debug_flg)
s = TST_INPUT_SEQ (mbrtowc).s;
n = TST_INPUT_SEQ (mbrtowc).n;
t_flg = TST_INPUT_SEQ (mbrtowc).t_flg;
- t_ini = TST_INPUT_SEQ (mbrtowc).t_init;
pwc = (w_flg == 0) ? NULL : &wc;
if (s_flg == 0)
@@ -56,12 +55,7 @@ tst_mbrtowc (FILE * fp, int debug_flg)
}
pt = (t_flg == 0) ? NULL : &t;
-#if 0
- if (t_ini != 0)
- {
- memset (&t, 0, sizeof (t));
- }
-#endif
+
TST_CLEAR_ERRNO;
ret = mbrtowc (pwc, s, n, pt);
TST_SAVE_ERRNO;
diff --git a/malloc/Makefile b/malloc/Makefile
index 0fe31a4a02..0c1e19f65c 100644
--- a/malloc/Makefile
+++ b/malloc/Makefile
@@ -25,7 +25,9 @@ all:
dist-headers := malloc.h
headers := $(dist-headers) obstack.h mcheck.h
tests := mallocbug tst-malloc tst-valloc tst-calloc tst-obstack \
- tst-mallocstate tst-mcheck tst-mallocfork tst-trim1 tst-malloc-usable
+ tst-mallocstate tst-mcheck tst-mallocfork tst-trim1 \
+ tst-malloc-usable tst-realloc tst-posix_memalign \
+ tst-pvalloc tst-memalign
test-srcs = tst-mtrace
routines = malloc morecore mcheck mtrace obstack
@@ -76,7 +78,7 @@ install-bin-script += memusage
generated += memusagestat memusage
extra-objs += memusagestat.o
-# The configure.in check for libgd and its headers did not use $SYSINCLUDES.
+# The configure.ac check for libgd and its headers did not use $SYSINCLUDES.
# The directory specified by --with-headers usually contains only the basic
# kernel interface headers, not something like libgd. So the simplest thing
# is to presume that the standard system headers will be ok for this file.
@@ -117,7 +119,6 @@ endif
tst-mcheck-ENV = MALLOC_CHECK_=3
tst-malloc-usable-ENV = MALLOC_CHECK_=3
-CPPFLAGS-malloc.c += -DPER_THREAD
# Uncomment this for test releases. For public releases it is too expensive.
#CPPFLAGS-malloc.o += -DMALLOC_DEBUG=1
diff --git a/malloc/arena.c b/malloc/arena.c
index 12a48ad7ba..9d49f93265 100644
--- a/malloc/arena.c
+++ b/malloc/arena.c
@@ -75,10 +75,8 @@ extern int sanity_check_heap_info_alignment[(sizeof (heap_info)
static tsd_key_t arena_key;
static mutex_t list_lock = MUTEX_INITIALIZER;
-#ifdef PER_THREAD
static size_t narenas = 1;
static mstate free_list;
-#endif
#if THREAD_STATS
static int stat_n_heaps;
@@ -114,21 +112,12 @@ int __malloc_initialized = -1;
ptr = (mstate)tsd_getspecific(arena_key, vptr); \
} while(0)
-#ifdef PER_THREAD
# define arena_lock(ptr, size) do { \
if(ptr) \
(void)mutex_lock(&ptr->mutex); \
else \
ptr = arena_get2(ptr, (size), NULL); \
} while(0)
-#else
-# define arena_lock(ptr, size) do { \
- if(ptr && !mutex_trylock(&ptr->mutex)) { \
- THREAD_STAT(++(ptr->stat_lock_direct)); \
- } else \
- ptr = arena_get2(ptr, (size), NULL); \
-} while(0)
-#endif
/* find the heap and corresponding arena for a given ptr */
@@ -292,17 +281,13 @@ ptmalloc_unlock_all2 (void)
tsd_setspecific(arena_key, save_arena);
__malloc_hook = save_malloc_hook;
__free_hook = save_free_hook;
-#ifdef PER_THREAD
free_list = NULL;
-#endif
for(ar_ptr = &main_arena;;) {
mutex_init(&ar_ptr->mutex);
-#ifdef PER_THREAD
if (ar_ptr != save_arena) {
ar_ptr->next_free = free_list;
free_list = ar_ptr;
}
-#endif
ar_ptr = ar_ptr->next;
if(ar_ptr == &main_arena) break;
}
@@ -423,13 +408,10 @@ ptmalloc_init (void)
{
if (memcmp (envline, "MMAP_MAX_", 9) == 0)
__libc_mallopt(M_MMAP_MAX, atoi(&envline[10]));
-#ifdef PER_THREAD
else if (memcmp (envline, "ARENA_MAX", 9) == 0)
__libc_mallopt(M_ARENA_MAX, atoi(&envline[10]));
-#endif
}
break;
-#ifdef PER_THREAD
case 10:
if (! __builtin_expect (__libc_enable_secure, 0))
{
@@ -437,7 +419,6 @@ ptmalloc_init (void)
__libc_mallopt(M_ARENA_TEST, atoi(&envline[11]));
}
break;
-#endif
case 15:
if (! __builtin_expect (__libc_enable_secure, 0))
{
@@ -457,7 +438,7 @@ ptmalloc_init (void)
if (check_action != 0)
__malloc_check_init();
}
- void (*hook) (void) = force_reg (__malloc_initialize_hook);
+ void (*hook) (void) = atomic_forced_read (__malloc_initialize_hook);
if (hook != NULL)
(*hook)();
__malloc_initialized = 1;
@@ -581,6 +562,7 @@ new_heap(size_t size, size_t top_pad)
h->size = size;
h->mprotect_size = size;
THREAD_STAT(stat_n_heaps++);
+ LIBC_PROBE (memory_heap_new, 2, h, h->size);
return h;
}
@@ -606,6 +588,7 @@ grow_heap(heap_info *h, long diff)
}
h->size = new_size;
+ LIBC_PROBE (memory_heap_more, 2, h, h->size);
return 0;
}
@@ -633,6 +616,7 @@ shrink_heap(heap_info *h, long diff)
/*fprintf(stderr, "shrink %p %08lx\n", h, new_size);*/
h->size = new_size;
+ LIBC_PROBE (memory_heap_less, 2, h, h->size);
return 0;
}
@@ -674,6 +658,7 @@ heap_trim(heap_info *heap, size_t pad)
break;
ar_ptr->system_mem -= heap->size;
arena_mem -= heap->size;
+ LIBC_PROBE (memory_heap_free, 2, heap, heap->size);
delete_heap(heap);
heap = prev_heap;
if(!prev_inuse(p)) { /* consolidate backward */
@@ -736,22 +721,19 @@ _int_new_arena(size_t size)
top(a) = (mchunkptr)ptr;
set_head(top(a), (((char*)h + h->size) - ptr) | PREV_INUSE);
+ LIBC_PROBE (memory_arena_new, 2, a, size);
tsd_setspecific(arena_key, (void *)a);
mutex_init(&a->mutex);
(void)mutex_lock(&a->mutex);
-#ifdef PER_THREAD
(void)mutex_lock(&list_lock);
-#endif
/* Add the new arena to the global list. */
a->next = main_arena.next;
atomic_write_barrier ();
main_arena.next = a;
-#ifdef PER_THREAD
(void)mutex_unlock(&list_lock);
-#endif
THREAD_STAT(++(a->stat_lock_loop));
@@ -759,7 +741,6 @@ _int_new_arena(size_t size)
}
-#ifdef PER_THREAD
static mstate
get_free_list (void)
{
@@ -774,6 +755,7 @@ get_free_list (void)
if (result != NULL)
{
+ LIBC_PROBE (memory_arena_reuse_free_list, 1, result);
(void)mutex_lock(&result->mutex);
tsd_setspecific(arena_key, (void *)result);
THREAD_STAT(++(result->stat_lock_loop));
@@ -810,16 +792,17 @@ reused_arena (mstate avoid_arena)
result = result->next;
/* No arena available. Wait for the next in line. */
+ LIBC_PROBE (memory_arena_reuse_wait, 3, &result->mutex, result, avoid_arena);
(void)mutex_lock(&result->mutex);
out:
+ LIBC_PROBE (memory_arena_reuse, 2, result, avoid_arena);
tsd_setspecific(arena_key, (void *)result);
THREAD_STAT(++(result->stat_lock_loop));
next_to_use = result->next;
return result;
}
-#endif
static mstate
internal_function
@@ -827,7 +810,6 @@ arena_get2(mstate a_tsd, size_t size, mstate avoid_arena)
{
mstate a;
-#ifdef PER_THREAD
static size_t narenas_limit;
a = get_free_list ();
@@ -870,52 +852,6 @@ arena_get2(mstate a_tsd, size_t size, mstate avoid_arena)
else
a = reused_arena (avoid_arena);
}
-#else
- if(!a_tsd)
- a = a_tsd = &main_arena;
- else {
- a = a_tsd->next;
- if(!a) {
- /* This can only happen while initializing the new arena. */
- (void)mutex_lock(&main_arena.mutex);
- THREAD_STAT(++(main_arena.stat_lock_wait));
- return &main_arena;
- }
- }
-
- /* Check the global, circularly linked list for available arenas. */
- bool retried = false;
- repeat:
- do {
- if(!mutex_trylock(&a->mutex)) {
- if (retried)
- (void)mutex_unlock(&list_lock);
- THREAD_STAT(++(a->stat_lock_loop));
- tsd_setspecific(arena_key, (void *)a);
- return a;
- }
- a = a->next;
- } while(a != a_tsd);
-
- /* If not even the list_lock can be obtained, try again. This can
- happen during `atfork', or for example on systems where thread
- creation makes it temporarily impossible to obtain _any_
- locks. */
- if(!retried && mutex_trylock(&list_lock)) {
- /* We will block to not run in a busy loop. */
- (void)mutex_lock(&list_lock);
-
- /* Since we blocked there might be an arena available now. */
- retried = true;
- a = a_tsd;
- goto repeat;
- }
-
- /* Nothing immediately available, so generate a new arena. */
- a = _int_new_arena(size);
- (void)mutex_unlock(&list_lock);
-#endif
-
return a;
}
@@ -926,6 +862,7 @@ arena_get2(mstate a_tsd, size_t size, mstate avoid_arena)
static mstate
arena_get_retry (mstate ar_ptr, size_t bytes)
{
+ LIBC_PROBE (memory_arena_retry, 2, bytes, ar_ptr);
if(ar_ptr != &main_arena) {
(void)mutex_unlock(&ar_ptr->mutex);
ar_ptr = &main_arena;
@@ -940,7 +877,6 @@ arena_get_retry (mstate ar_ptr, size_t bytes)
return ar_ptr;
}
-#ifdef PER_THREAD
static void __attribute__ ((section ("__libc_thread_freeres_fn")))
arena_thread_freeres (void)
{
@@ -957,7 +893,6 @@ arena_thread_freeres (void)
}
}
text_set_element (__libc_thread_subfreeres, arena_thread_freeres);
-#endif
/*
* Local variables:
diff --git a/malloc/hooks.c b/malloc/hooks.c
index 8c25846330..7010fe66f8 100644
--- a/malloc/hooks.c
+++ b/malloc/hooks.c
@@ -236,7 +236,7 @@ top_check(void)
return -1;
}
/* Call the `morecore' hook if necessary. */
- void (*hook) (void) = force_reg (__after_morecore_hook);
+ void (*hook) (void) = atomic_forced_read (__after_morecore_hook);
if (hook)
(*hook) ();
main_arena.system_mem = (new_brk - mp_.sbrk_base) + sbrk_size;
@@ -330,7 +330,7 @@ realloc_check(void* oldmem, size_t bytes, const void *caller)
if (top_check() >= 0)
newmem = _int_malloc(&main_arena, bytes+1);
if (newmem) {
- MALLOC_COPY(newmem, oldmem, oldsize - 2*SIZE_SZ);
+ memcpy(newmem, oldmem, oldsize - 2*SIZE_SZ);
munmap_chunk(oldp);
}
}
@@ -361,10 +361,28 @@ memalign_check(size_t alignment, size_t bytes, const void *caller)
if (alignment <= MALLOC_ALIGNMENT) return malloc_check(bytes, NULL);
if (alignment < MINSIZE) alignment = MINSIZE;
- if (bytes+1 == 0) {
- __set_errno (ENOMEM);
- return NULL;
+ /* If the alignment is greater than SIZE_MAX / 2 + 1 it cannot be a
+ power of 2 and will cause overflow in the check below. */
+ if (alignment > SIZE_MAX / 2 + 1)
+ {
+ __set_errno (EINVAL);
+ return 0;
+ }
+
+ /* Check for overflow. */
+ if (bytes > SIZE_MAX - alignment - MINSIZE)
+ {
+ __set_errno (ENOMEM);
+ return 0;
+ }
+
+ /* Make sure alignment is power of 2. */
+ if (!powerof2(alignment)) {
+ size_t a = MALLOC_ALIGNMENT * 2;
+ while (a < alignment) a <<= 1;
+ alignment = a;
}
+
(void)mutex_lock(&main_arena.mutex);
mem = (top_check() >= 0) ? _int_memalign(&main_arena, alignment, bytes+1) :
NULL;
@@ -458,11 +476,9 @@ __malloc_get_state(void)
ms->max_mmapped_mem = mp_.max_mmapped_mem;
ms->using_malloc_checking = using_malloc_checking;
ms->max_fast = get_max_fast();
-#ifdef PER_THREAD
ms->arena_test = mp_.arena_test;
ms->arena_max = mp_.arena_max;
ms->narenas = narenas;
-#endif
(void)mutex_unlock(&main_arena.mutex);
return (void*)ms;
}
@@ -559,11 +575,9 @@ __malloc_set_state(void* msptr)
}
}
if (ms->version >= 4) {
-#ifdef PER_THREAD
mp_.arena_test = ms->arena_test;
mp_.arena_max = ms->arena_max;
narenas = ms->narenas;
-#endif
}
check_malloc_state(&main_arena);
diff --git a/malloc/malloc.c b/malloc/malloc.c
index dd295f522c..b1668b501b 100644
--- a/malloc/malloc.c
+++ b/malloc/malloc.c
@@ -238,6 +238,9 @@
/* For va_arg, va_start, va_end. */
#include <stdarg.h>
+/* For MIN, MAX, powerof2. */
+#include <sys/param.h>
+
/*
Debugging:
@@ -403,13 +406,6 @@ void *(*__morecore)(ptrdiff_t) = __default_morecore;
#include <string.h>
-
-/* Force a value to be in a register and stop the compiler referring
- to the source (mostly memory location) again. */
-#define force_reg(val) \
- ({ __typeof (val) _v; asm ("" : "=r" (_v) : "0" (val)); _v; })
-
-
/*
MORECORE-related declarations. By default, rely on sbrk
*/
@@ -1054,8 +1050,8 @@ static void _int_free(mstate, mchunkptr, int);
static void* _int_realloc(mstate, mchunkptr, INTERNAL_SIZE_T,
INTERNAL_SIZE_T);
static void* _int_memalign(mstate, size_t, size_t);
-static void* _int_valloc(mstate, size_t);
-static void* _int_pvalloc(mstate, size_t);
+static void* _mid_memalign(size_t, size_t, void *);
+
static void malloc_printerr(int action, const char *str, void *ptr);
static void* internal_function mem2mem_check(void *p, size_t sz);
@@ -1076,19 +1072,6 @@ static void* malloc_atfork(size_t sz, const void *caller);
static void free_atfork(void* mem, const void *caller);
#endif
-
-/* ------------- Optional versions of memcopy ---------------- */
-
-
-/*
- Note: memcpy is ONLY invoked with non-overlapping regions,
- so the (usually slower) memmove is not needed.
-*/
-
-#define MALLOC_COPY(dest, src, nbytes) memcpy(dest, src, nbytes)
-#define MALLOC_ZERO(dest, nbytes) memset(dest, 0, nbytes)
-
-
/* ------------------ MMAP support ------------------ */
@@ -1711,10 +1694,8 @@ struct malloc_state {
/* Linked list */
struct malloc_state *next;
-#ifdef PER_THREAD
/* Linked list for free arenas. */
struct malloc_state *next_free;
-#endif
/* Memory allocated from the system in this arena. */
INTERNAL_SIZE_T system_mem;
@@ -1726,10 +1707,8 @@ struct malloc_par {
unsigned long trim_threshold;
INTERNAL_SIZE_T top_pad;
INTERNAL_SIZE_T mmap_threshold;
-#ifdef PER_THREAD
INTERNAL_SIZE_T arena_test;
INTERNAL_SIZE_T arena_max;
-#endif
/* Memory map support */
int n_mmaps;
@@ -1771,18 +1750,14 @@ static struct malloc_par mp_ =
.n_mmaps_max = DEFAULT_MMAP_MAX,
.mmap_threshold = DEFAULT_MMAP_THRESHOLD,
.trim_threshold = DEFAULT_TRIM_THRESHOLD,
-#ifdef PER_THREAD
# define NARENAS_FROM_NCORES(n) ((n) * (sizeof(long) == 4 ? 2 : 8))
.arena_test = NARENAS_FROM_NCORES (1)
-#endif
};
-#ifdef PER_THREAD
/* Non public mallopt parameters. */
#define M_ARENA_TEST -7
#define M_ARENA_MAX -8
-#endif
/* Maximum size of memory handled in fastbins. */
@@ -1874,10 +1849,24 @@ static int check_action = DEFAULT_CHECK_ACTION;
static int perturb_byte;
-#define alloc_perturb(p, n) memset (p, (perturb_byte ^ 0xff) & 0xff, n)
-#define free_perturb(p, n) memset (p, perturb_byte & 0xff, n)
+static inline void
+alloc_perturb (char *p, size_t n)
+{
+ if (__glibc_unlikely (perturb_byte))
+ memset (p, perturb_byte ^ 0xff, n);
+}
+
+static inline void
+free_perturb (char *p, size_t n)
+{
+ if (__glibc_unlikely (perturb_byte))
+ memset (p, perturb_byte, n);
+}
+
+#include <stap-probe.h>
+
/* ------------------- Support for multiple arenas -------------------- */
#include "arena.c"
@@ -2214,15 +2203,6 @@ static void do_check_malloc_state(mstate av)
/* top chunk is OK */
check_chunk(av, av->top);
- /* sanity checks for statistics */
-
- assert(mp_.n_mmaps <= mp_.max_n_mmaps);
-
- assert((unsigned long)(av->system_mem) <=
- (unsigned long)(av->max_system_mem));
-
- assert((unsigned long)(mp_.mmapped_mem) <=
- (unsigned long)(mp_.max_mmapped_mem));
}
#endif
@@ -2260,7 +2240,6 @@ static void* sysmalloc(INTERNAL_SIZE_T nb, mstate av)
mchunkptr remainder; /* remainder from allocation */
unsigned long remainder_size; /* its size */
- unsigned long sum; /* for updating stats */
size_t pagemask = GLRO(dl_pagesize) - 1;
bool tried_mmap = false;
@@ -2332,12 +2311,12 @@ static void* sysmalloc(INTERNAL_SIZE_T nb, mstate av)
/* update statistics */
- if (++mp_.n_mmaps > mp_.max_n_mmaps)
- mp_.max_n_mmaps = mp_.n_mmaps;
+ int new = atomic_exchange_and_add (&mp_.n_mmaps, 1) + 1;
+ atomic_max (&mp_.max_n_mmaps, new);
- sum = mp_.mmapped_mem += size;
- if (sum > (unsigned long)(mp_.max_mmapped_mem))
- mp_.max_mmapped_mem = sum;
+ unsigned long sum;
+ sum = atomic_exchange_and_add(&mp_.mmapped_mem, size) + size;
+ atomic_max (&mp_.max_mmapped_mem, sum);
check_chunk(av, p);
@@ -2446,12 +2425,14 @@ static void* sysmalloc(INTERNAL_SIZE_T nb, mstate av)
below even if we cannot call MORECORE.
*/
- if (size > 0)
+ if (size > 0) {
brk = (char*)(MORECORE(size));
+ LIBC_PROBE (memory_sbrk_more, 2, brk, size);
+ }
if (brk != (char*)(MORECORE_FAILURE)) {
/* Call the `morecore' hook if necessary. */
- void (*hook) (void) = force_reg (__after_morecore_hook);
+ void (*hook) (void) = atomic_forced_read (__after_morecore_hook);
if (__builtin_expect (hook != NULL, 0))
(*hook) ();
} else {
@@ -2589,7 +2570,7 @@ static void* sysmalloc(INTERNAL_SIZE_T nb, mstate av)
snd_brk = (char*)(MORECORE(0));
} else {
/* Call the `morecore' hook if necessary. */
- void (*hook) (void) = force_reg (__after_morecore_hook);
+ void (*hook) (void) = atomic_forced_read (__after_morecore_hook);
if (__builtin_expect (hook != NULL, 0))
(*hook) ();
}
@@ -2712,50 +2693,54 @@ static int systrim(size_t pad, mstate av)
char* current_brk; /* address returned by pre-check sbrk call */
char* new_brk; /* address returned by post-check sbrk call */
size_t pagesz;
+ long top_area;
pagesz = GLRO(dl_pagesize);
top_size = chunksize(av->top);
+ top_area = top_size - MINSIZE - 1;
+ if (top_area <= pad)
+ return 0;
+
/* Release in pagesize units, keeping at least one page */
- extra = (top_size - pad - MINSIZE - 1) & ~(pagesz - 1);
+ extra = (top_area - pad) & ~(pagesz - 1);
- if (extra > 0) {
+ /*
+ Only proceed if end of memory is where we last set it.
+ This avoids problems if there were foreign sbrk calls.
+ */
+ current_brk = (char*)(MORECORE(0));
+ if (current_brk == (char*)(av->top) + top_size) {
/*
- Only proceed if end of memory is where we last set it.
- This avoids problems if there were foreign sbrk calls.
+ Attempt to release memory. We ignore MORECORE return value,
+ and instead call again to find out where new end of memory is.
+ This avoids problems if first call releases less than we asked,
+ of if failure somehow altered brk value. (We could still
+ encounter problems if it altered brk in some very bad way,
+ but the only thing we can do is adjust anyway, which will cause
+ some downstream failure.)
*/
- current_brk = (char*)(MORECORE(0));
- if (current_brk == (char*)(av->top) + top_size) {
- /*
- Attempt to release memory. We ignore MORECORE return value,
- and instead call again to find out where new end of memory is.
- This avoids problems if first call releases less than we asked,
- of if failure somehow altered brk value. (We could still
- encounter problems if it altered brk in some very bad way,
- but the only thing we can do is adjust anyway, which will cause
- some downstream failure.)
- */
+ MORECORE(-extra);
+ /* Call the `morecore' hook if necessary. */
+ void (*hook) (void) = atomic_forced_read (__after_morecore_hook);
+ if (__builtin_expect (hook != NULL, 0))
+ (*hook) ();
+ new_brk = (char*)(MORECORE(0));
- MORECORE(-extra);
- /* Call the `morecore' hook if necessary. */
- void (*hook) (void) = force_reg (__after_morecore_hook);
- if (__builtin_expect (hook != NULL, 0))
- (*hook) ();
- new_brk = (char*)(MORECORE(0));
-
- if (new_brk != (char*)MORECORE_FAILURE) {
- released = (long)(current_brk - new_brk);
-
- if (released != 0) {
- /* Success. Adjust top. */
- av->system_mem -= released;
- set_head(av->top, (top_size - released) | PREV_INUSE);
- check_malloc_state(av);
- return 1;
- }
- }
+ LIBC_PROBE (memory_sbrk_less, 2, new_brk, extra);
+
+ if (new_brk != (char*)MORECORE_FAILURE) {
+ released = (long)(current_brk - new_brk);
+
+ if (released != 0) {
+ /* Success. Adjust top. */
+ av->system_mem -= released;
+ set_head(av->top, (top_size - released) | PREV_INUSE);
+ check_malloc_state(av);
+ return 1;
+ }
}
}
return 0;
@@ -2783,8 +2768,8 @@ munmap_chunk(mchunkptr p)
return;
}
- mp_.n_mmaps--;
- mp_.mmapped_mem -= total_size;
+ atomic_decrement (&mp_.n_mmaps);
+ atomic_add (&mp_.mmapped_mem, -total_size);
/* If munmap failed the process virtual memory address space is in a
bad shape. Just leave the block hanging around, the process will
@@ -2825,10 +2810,10 @@ mremap_chunk(mchunkptr p, size_t new_size)
assert((p->prev_size == offset));
set_head(p, (new_size - offset)|IS_MMAPPED);
- mp_.mmapped_mem -= size + offset;
- mp_.mmapped_mem += new_size;
- if ((unsigned long)mp_.mmapped_mem > (unsigned long)mp_.max_mmapped_mem)
- mp_.max_mmapped_mem = mp_.mmapped_mem;
+ INTERNAL_SIZE_T new;
+ new = atomic_exchange_and_add (&mp_.mmapped_mem, new_size - size - offset)
+ + new_size - size - offset;
+ atomic_max (&mp_.max_mmapped_mem, new);
return p;
}
@@ -2843,7 +2828,7 @@ __libc_malloc(size_t bytes)
void *victim;
void *(*hook) (size_t, const void *)
- = force_reg (__malloc_hook);
+ = atomic_forced_read (__malloc_hook);
if (__builtin_expect (hook != NULL, 0))
return (*hook)(bytes, RETURN_ADDRESS (0));
@@ -2854,6 +2839,7 @@ __libc_malloc(size_t bytes)
return 0;
victim = _int_malloc(ar_ptr, bytes);
if(!victim) {
+ LIBC_PROBE (memory_malloc_retry, 1, bytes);
ar_ptr = arena_get_retry(ar_ptr, bytes);
if (__builtin_expect(ar_ptr != NULL, 1)) {
victim = _int_malloc(ar_ptr, bytes);
@@ -2874,7 +2860,7 @@ __libc_free(void* mem)
mchunkptr p; /* chunk corresponding to mem */
void (*hook) (void *, const void *)
- = force_reg (__free_hook);
+ = atomic_forced_read (__free_hook);
if (__builtin_expect (hook != NULL, 0)) {
(*hook)(mem, RETURN_ADDRESS (0));
return;
@@ -2894,6 +2880,8 @@ __libc_free(void* mem)
{
mp_.mmap_threshold = chunksize (p);
mp_.trim_threshold = 2 * mp_.mmap_threshold;
+ LIBC_PROBE (memory_mallopt_free_dyn_thresholds, 2,
+ mp_.mmap_threshold, mp_.trim_threshold);
}
munmap_chunk(p);
return;
@@ -2913,7 +2901,7 @@ __libc_realloc(void* oldmem, size_t bytes)
void* newp; /* chunk to return */
void *(*hook) (void *, size_t, const void *) =
- force_reg (__realloc_hook);
+ atomic_forced_read (__realloc_hook);
if (__builtin_expect (hook != NULL, 0))
return (*hook)(oldmem, bytes, RETURN_ADDRESS (0));
@@ -2955,7 +2943,7 @@ __libc_realloc(void* oldmem, size_t bytes)
/* Must alloc, copy, free. */
newmem = __libc_malloc(bytes);
if (newmem == 0) return 0; /* propagate failure */
- MALLOC_COPY(newmem, oldmem, oldsize - 2*SIZE_SZ);
+ memcpy(newmem, oldmem, oldsize - 2*SIZE_SZ);
munmap_chunk(oldp);
return newmem;
}
@@ -2972,10 +2960,6 @@ __libc_realloc(void* oldmem, size_t bytes)
(void)mutex_lock(&ar_ptr->mutex);
#endif
-#if !defined PER_THREAD
- /* As in malloc(), remember this arena for the next allocation. */
- tsd_setspecific(arena_key, (void *)ar_ptr);
-#endif
newp = _int_realloc(ar_ptr, oldp, oldsize, nb);
@@ -2986,10 +2970,11 @@ __libc_realloc(void* oldmem, size_t bytes)
if (newp == NULL)
{
/* Try harder to allocate memory in other arenas. */
+ LIBC_PROBE (memory_realloc_retry, 2, bytes, oldmem);
newp = __libc_malloc(bytes);
if (newp != NULL)
{
- MALLOC_COPY (newp, oldmem, oldsize - SIZE_SZ);
+ memcpy (newp, oldmem, oldsize - SIZE_SZ);
_int_free(ar_ptr, oldp, 0);
}
}
@@ -3001,25 +2986,56 @@ libc_hidden_def (__libc_realloc)
void*
__libc_memalign(size_t alignment, size_t bytes)
{
+ void *address = RETURN_ADDRESS (0);
+ return _mid_memalign (alignment, bytes, address);
+}
+
+static void *
+_mid_memalign (size_t alignment, size_t bytes, void *address)
+{
mstate ar_ptr;
void *p;
void *(*hook) (size_t, size_t, const void *) =
- force_reg (__memalign_hook);
+ atomic_forced_read (__memalign_hook);
if (__builtin_expect (hook != NULL, 0))
- return (*hook)(alignment, bytes, RETURN_ADDRESS (0));
+ return (*hook)(alignment, bytes, address);
- /* If need less alignment than we give anyway, just relay to malloc */
+ /* If we need less alignment than we give anyway, just relay to malloc. */
if (alignment <= MALLOC_ALIGNMENT) return __libc_malloc(bytes);
/* Otherwise, ensure that it is at least a minimum chunk size */
if (alignment < MINSIZE) alignment = MINSIZE;
+ /* If the alignment is greater than SIZE_MAX / 2 + 1 it cannot be a
+ power of 2 and will cause overflow in the check below. */
+ if (alignment > SIZE_MAX / 2 + 1)
+ {
+ __set_errno (EINVAL);
+ return 0;
+ }
+
+ /* Check for overflow. */
+ if (bytes > SIZE_MAX - alignment - MINSIZE)
+ {
+ __set_errno (ENOMEM);
+ return 0;
+ }
+
+
+ /* Make sure alignment is power of 2. */
+ if (!powerof2(alignment)) {
+ size_t a = MALLOC_ALIGNMENT * 2;
+ while (a < alignment) a <<= 1;
+ alignment = a;
+ }
+
arena_get(ar_ptr, bytes + alignment + MINSIZE);
if(!ar_ptr)
return 0;
p = _int_memalign(ar_ptr, alignment, bytes);
if(!p) {
+ LIBC_PROBE (memory_memalign_retry, 2, bytes, alignment);
ar_ptr = arena_get_retry (ar_ptr, bytes);
if (__builtin_expect(ar_ptr != NULL, 1)) {
p = _int_memalign(ar_ptr, alignment, bytes);
@@ -3038,69 +3054,34 @@ libc_hidden_def (__libc_memalign)
void*
__libc_valloc(size_t bytes)
{
- mstate ar_ptr;
- void *p;
-
if(__malloc_initialized < 0)
ptmalloc_init ();
+ void *address = RETURN_ADDRESS (0);
size_t pagesz = GLRO(dl_pagesize);
-
- void *(*hook) (size_t, size_t, const void *) =
- force_reg (__memalign_hook);
- if (__builtin_expect (hook != NULL, 0))
- return (*hook)(pagesz, bytes, RETURN_ADDRESS (0));
-
- arena_get(ar_ptr, bytes + pagesz + MINSIZE);
- if(!ar_ptr)
- return 0;
- p = _int_valloc(ar_ptr, bytes);
- if(!p) {
- ar_ptr = arena_get_retry (ar_ptr, bytes);
- if (__builtin_expect(ar_ptr != NULL, 1)) {
- p = _int_memalign(ar_ptr, pagesz, bytes);
- (void)mutex_unlock(&ar_ptr->mutex);
- }
- } else
- (void)mutex_unlock (&ar_ptr->mutex);
- assert(!p || chunk_is_mmapped(mem2chunk(p)) ||
- ar_ptr == arena_for_chunk(mem2chunk(p)));
-
- return p;
+ return _mid_memalign (pagesz, bytes, address);
}
void*
__libc_pvalloc(size_t bytes)
{
- mstate ar_ptr;
- void *p;
if(__malloc_initialized < 0)
ptmalloc_init ();
+ void *address = RETURN_ADDRESS (0);
size_t pagesz = GLRO(dl_pagesize);
size_t page_mask = GLRO(dl_pagesize) - 1;
size_t rounded_bytes = (bytes + page_mask) & ~(page_mask);
- void *(*hook) (size_t, size_t, const void *) =
- force_reg (__memalign_hook);
- if (__builtin_expect (hook != NULL, 0))
- return (*hook)(pagesz, rounded_bytes, RETURN_ADDRESS (0));
-
- arena_get(ar_ptr, bytes + 2*pagesz + MINSIZE);
- p = _int_pvalloc(ar_ptr, bytes);
- if(!p) {
- ar_ptr = arena_get_retry (ar_ptr, bytes + 2*pagesz + MINSIZE);
- if (__builtin_expect(ar_ptr != NULL, 1)) {
- p = _int_memalign(ar_ptr, pagesz, rounded_bytes);
- (void)mutex_unlock(&ar_ptr->mutex);
+ /* Check for overflow. */
+ if (bytes > SIZE_MAX - 2*pagesz - MINSIZE)
+ {
+ __set_errno (ENOMEM);
+ return 0;
}
- } else
- (void)mutex_unlock(&ar_ptr->mutex);
- assert(!p || chunk_is_mmapped(mem2chunk(p)) ||
- ar_ptr == arena_for_chunk(mem2chunk(p)));
- return p;
+ return _mid_memalign (pagesz, rounded_bytes, address);
}
void*
@@ -3126,7 +3107,7 @@ __libc_calloc(size_t n, size_t elem_size)
}
void *(*hook) (size_t, const void *) =
- force_reg (__malloc_hook);
+ atomic_forced_read (__malloc_hook);
if (__builtin_expect (hook != NULL, 0)) {
sz = bytes;
mem = (*hook)(sz, RETURN_ADDRESS (0));
@@ -3166,6 +3147,7 @@ __libc_calloc(size_t n, size_t elem_size)
av == arena_for_chunk(mem2chunk(mem)));
if (mem == 0) {
+ LIBC_PROBE (memory_calloc_retry, 1, sz);
av = arena_get_retry (av, sz);
if (__builtin_expect(av != NULL, 1)) {
mem = _int_malloc(av, sz);
@@ -3180,7 +3162,7 @@ __libc_calloc(size_t n, size_t elem_size)
if (chunk_is_mmapped (p))
{
if (__builtin_expect (perturb_byte, 0))
- MALLOC_ZERO (mem, sz);
+ return memset (mem, 0, sz);
return mem;
}
@@ -3202,7 +3184,7 @@ __libc_calloc(size_t n, size_t elem_size)
assert(nclears >= 3);
if (nclears > 9)
- MALLOC_ZERO(d, clearsize);
+ return memset(d, 0, clearsize);
else {
*(d+0) = 0;
@@ -3291,8 +3273,7 @@ _int_malloc(mstate av, size_t bytes)
}
check_remalloced_chunk(av, victim, nb);
void *p = chunk2mem(victim);
- if (__builtin_expect (perturb_byte, 0))
- alloc_perturb (p, bytes);
+ alloc_perturb (p, bytes);
return p;
}
}
@@ -3327,8 +3308,7 @@ _int_malloc(mstate av, size_t bytes)
victim->size |= NON_MAIN_ARENA;
check_malloced_chunk(av, victim, nb);
void *p = chunk2mem(victim);
- if (__builtin_expect (perturb_byte, 0))
- alloc_perturb (p, bytes);
+ alloc_perturb (p, bytes);
return p;
}
}
@@ -3407,8 +3387,7 @@ _int_malloc(mstate av, size_t bytes)
check_malloced_chunk(av, victim, nb);
void *p = chunk2mem(victim);
- if (__builtin_expect (perturb_byte, 0))
- alloc_perturb (p, bytes);
+ alloc_perturb (p, bytes);
return p;
}
@@ -3424,8 +3403,7 @@ _int_malloc(mstate av, size_t bytes)
victim->size |= NON_MAIN_ARENA;
check_malloced_chunk(av, victim, nb);
void *p = chunk2mem(victim);
- if (__builtin_expect (perturb_byte, 0))
- alloc_perturb (p, bytes);
+ alloc_perturb (p, bytes);
return p;
}
@@ -3549,8 +3527,7 @@ _int_malloc(mstate av, size_t bytes)
}
check_malloced_chunk(av, victim, nb);
void *p = chunk2mem(victim);
- if (__builtin_expect (perturb_byte, 0))
- alloc_perturb (p, bytes);
+ alloc_perturb (p, bytes);
return p;
}
}
@@ -3653,8 +3630,7 @@ _int_malloc(mstate av, size_t bytes)
}
check_malloced_chunk(av, victim, nb);
void *p = chunk2mem(victim);
- if (__builtin_expect (perturb_byte, 0))
- alloc_perturb (p, bytes);
+ alloc_perturb (p, bytes);
return p;
}
}
@@ -3688,8 +3664,7 @@ _int_malloc(mstate av, size_t bytes)
check_malloced_chunk(av, victim, nb);
void *p = chunk2mem(victim);
- if (__builtin_expect (perturb_byte, 0))
- alloc_perturb (p, bytes);
+ alloc_perturb (p, bytes);
return p;
}
@@ -3709,7 +3684,7 @@ _int_malloc(mstate av, size_t bytes)
*/
else {
void *p = sysmalloc(nb, av);
- if (p != NULL && __builtin_expect (perturb_byte, 0))
+ if (p != NULL)
alloc_perturb (p, bytes);
return p;
}
@@ -3802,8 +3777,7 @@ _int_free(mstate av, mchunkptr p, int have_lock)
}
}
- if (__builtin_expect (perturb_byte, 0))
- free_perturb (chunk2mem(p), size - 2 * SIZE_SZ);
+ free_perturb (chunk2mem(p), size - 2 * SIZE_SZ);
set_fastchunks(av);
unsigned int idx = fastbin_index(size);
@@ -3885,8 +3859,7 @@ _int_free(mstate av, mchunkptr p, int have_lock)
goto errout;
}
- if (__builtin_expect (perturb_byte, 0))
- free_perturb (chunk2mem(p), size - 2 * SIZE_SZ);
+ free_perturb (chunk2mem(p), size - 2 * SIZE_SZ);
/* consolidate backward */
if (!prev_inuse(p)) {
@@ -4215,7 +4188,7 @@ _int_realloc(mstate av, mchunkptr oldp, INTERNAL_SIZE_T oldsize,
assert(ncopies >= 3);
if (ncopies > 9)
- MALLOC_COPY(d, s, copysize);
+ memcpy(d, s, copysize);
else {
*(d+0) = *(s+0);
@@ -4284,20 +4257,7 @@ _int_memalign(mstate av, size_t alignment, size_t bytes)
unsigned long remainder_size; /* its size */
INTERNAL_SIZE_T size;
- /* If need less alignment than we give anyway, just relay to malloc */
- if (alignment <= MALLOC_ALIGNMENT) return _int_malloc(av, bytes);
-
- /* Otherwise, ensure that it is at least a minimum chunk size */
-
- if (alignment < MINSIZE) alignment = MINSIZE;
-
- /* Make sure alignment is power of 2 (in case MINSIZE is not). */
- if ((alignment & (alignment - 1)) != 0) {
- size_t a = MALLOC_ALIGNMENT * 2;
- while ((unsigned long)a < (unsigned long)alignment) a <<= 1;
- alignment = a;
- }
checked_request2size(bytes, nb);
@@ -4372,35 +4332,6 @@ _int_memalign(mstate av, size_t alignment, size_t bytes)
/*
- ------------------------------ valloc ------------------------------
-*/
-
-static void*
-_int_valloc(mstate av, size_t bytes)
-{
- /* Ensure initialization/consolidation */
- if (have_fastchunks(av)) malloc_consolidate(av);
- return _int_memalign(av, GLRO(dl_pagesize), bytes);
-}
-
-/*
- ------------------------------ pvalloc ------------------------------
-*/
-
-
-static void*
-_int_pvalloc(mstate av, size_t bytes)
-{
- size_t pagesz;
-
- /* Ensure initialization/consolidation */
- if (have_fastchunks(av)) malloc_consolidate(av);
- pagesz = GLRO(dl_pagesize);
- return _int_memalign(av, pagesz, (bytes + pagesz - 1) & ~(pagesz - 1));
-}
-
-
-/*
------------------------------ malloc_trim ------------------------------
*/
@@ -4674,21 +4605,29 @@ int __libc_mallopt(int param_number, int value)
/* Ensure initialization/consolidation */
malloc_consolidate(av);
+ LIBC_PROBE (memory_mallopt, 2, param_number, value);
+
switch(param_number) {
case M_MXFAST:
- if (value >= 0 && value <= MAX_FAST_SIZE) {
- set_max_fast(value);
- }
+ if (value >= 0 && value <= MAX_FAST_SIZE)
+ {
+ LIBC_PROBE (memory_mallopt_mxfast, 2, value, get_max_fast ());
+ set_max_fast(value);
+ }
else
res = 0;
break;
case M_TRIM_THRESHOLD:
+ LIBC_PROBE (memory_mallopt_trim_threshold, 3, value,
+ mp_.trim_threshold, mp_.no_dyn_threshold);
mp_.trim_threshold = value;
mp_.no_dyn_threshold = 1;
break;
case M_TOP_PAD:
+ LIBC_PROBE (memory_mallopt_top_pad, 3, value,
+ mp_.top_pad, mp_.no_dyn_threshold);
mp_.top_pad = value;
mp_.no_dyn_threshold = 1;
break;
@@ -4699,35 +4638,45 @@ int __libc_mallopt(int param_number, int value)
res = 0;
else
{
+ LIBC_PROBE (memory_mallopt_mmap_threshold, 3, value,
+ mp_.mmap_threshold, mp_.no_dyn_threshold);
mp_.mmap_threshold = value;
mp_.no_dyn_threshold = 1;
}
break;
case M_MMAP_MAX:
+ LIBC_PROBE (memory_mallopt_mmap_max, 3, value,
+ mp_.n_mmaps_max, mp_.no_dyn_threshold);
mp_.n_mmaps_max = value;
mp_.no_dyn_threshold = 1;
break;
case M_CHECK_ACTION:
+ LIBC_PROBE (memory_mallopt_check_action, 2, value, check_action);
check_action = value;
break;
case M_PERTURB:
+ LIBC_PROBE (memory_mallopt_perturb, 2, value, perturb_byte);
perturb_byte = value;
break;
-#ifdef PER_THREAD
case M_ARENA_TEST:
if (value > 0)
- mp_.arena_test = value;
+ {
+ LIBC_PROBE (memory_mallopt_arena_test, 2, value, mp_.arena_test);
+ mp_.arena_test = value;
+ }
break;
case M_ARENA_MAX:
if (value > 0)
- mp_.arena_max = value;
+ {
+ LIBC_PROBE (memory_mallopt_arena_max, 2, value, mp_.arena_max);
+ mp_.arena_max = value;
+ }
break;
-#endif
}
(void)mutex_unlock(&av->mutex);
return res;
@@ -4899,8 +4848,6 @@ malloc_printerr(int action, const char *str, void *ptr)
abort ();
}
-#include <sys/param.h>
-
/* We need a wrapper function for one of the additions of POSIX. */
int
__posix_memalign (void **memptr, size_t alignment, size_t size)
@@ -4914,14 +4861,9 @@ __posix_memalign (void **memptr, size_t alignment, size_t size)
|| alignment == 0)
return EINVAL;
- /* Call the hook here, so that caller is posix_memalign's caller
- and not posix_memalign itself. */
- void *(*hook) (size_t, size_t, const void *) =
- force_reg (__memalign_hook);
- if (__builtin_expect (hook != NULL, 0))
- mem = (*hook)(alignment, size, RETURN_ADDRESS (0));
- else
- mem = __libc_memalign (alignment, size);
+
+ void *address = RETURN_ADDRESS (0);
+ mem = _mid_memalign (alignment, size, address);
if (mem != NULL) {
*memptr = mem;
@@ -4995,23 +4937,11 @@ malloc_info (int options, FILE *fp)
sizes[i].total = sizes[i].count * sizes[i].to;
}
- mbinptr bin = bin_at (ar_ptr, 1);
- struct malloc_chunk *r = bin->fd;
- if (r != NULL)
- {
- while (r != bin)
- {
- ++sizes[NFASTBINS].count;
- sizes[NFASTBINS].total += r->size;
- sizes[NFASTBINS].from = MIN (sizes[NFASTBINS].from, r->size);
- sizes[NFASTBINS].to = MAX (sizes[NFASTBINS].to, r->size);
- r = r->fd;
- }
- nblocks += sizes[NFASTBINS].count;
- avail += sizes[NFASTBINS].total;
- }
- for (size_t i = 2; i < NBINS; ++i)
+ mbinptr bin;
+ struct malloc_chunk *r;
+
+ for (size_t i = 1; i < NBINS; ++i)
{
bin = bin_at (ar_ptr, i);
r = bin->fd;
diff --git a/malloc/obstack.h b/malloc/obstack.h
index d2e056bf38..e786d1fef0 100644
--- a/malloc/obstack.h
+++ b/malloc/obstack.h
@@ -185,7 +185,7 @@ extern int _obstack_begin_1 (struct obstack *, int, int,
void (*) (void *, void *), void *);
extern int _obstack_memory_used (struct obstack *);
-void obstack_free (struct obstack *__obstack, void *__block);
+void obstack_free (struct obstack *__obstack, void *__glibc_block);
/* Error handler called when `obstack_chunk_alloc' failed to allocate
diff --git a/malloc/tst-memalign.c b/malloc/tst-memalign.c
new file mode 100644
index 0000000000..cf48e7ed1f
--- /dev/null
+++ b/malloc/tst-memalign.c
@@ -0,0 +1,114 @@
+/* Test for memalign.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <malloc.h>
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+
+static int errors = 0;
+
+static void
+merror (const char *msg)
+{
+ ++errors;
+ printf ("Error: %s\n", msg);
+}
+
+static int
+do_test (void)
+{
+ void *p;
+ unsigned long pagesize = getpagesize ();
+ unsigned long ptrval;
+ int save;
+
+ errno = 0;
+
+ /* An attempt to allocate a huge value should return NULL and set
+ errno to ENOMEM. */
+ p = memalign (sizeof (void *), -1);
+
+ save = errno;
+
+ if (p != NULL)
+ merror ("memalign (sizeof (void *), -1) succeeded.");
+
+ if (p == NULL && save != ENOMEM)
+ merror ("memalign (sizeof (void *), -1) errno is not set correctly");
+
+ free (p);
+
+ errno = 0;
+
+ /* Test to expose integer overflow in malloc internals from BZ #15857. */
+ p = memalign (pagesize, -pagesize);
+
+ save = errno;
+
+ if (p != NULL)
+ merror ("memalign (pagesize, -pagesize) succeeded.");
+
+ if (p == NULL && save != ENOMEM)
+ merror ("memalign (pagesize, -pagesize) errno is not set correctly");
+
+ free (p);
+
+ errno = 0;
+
+ /* Test to expose integer overflow in malloc internals from BZ #16038. */
+ p = memalign (-1, pagesize);
+
+ save = errno;
+
+ if (p != NULL)
+ merror ("memalign (-1, pagesize) succeeded.");
+
+ if (p == NULL && save != EINVAL)
+ merror ("memalign (-1, pagesize) errno is not set correctly");
+
+ free (p);
+
+ /* A zero-sized allocation should succeed with glibc, returning a
+ non-NULL value. */
+ p = memalign (sizeof (void *), 0);
+
+ if (p == NULL)
+ merror ("memalign (sizeof (void *), 0) failed.");
+
+ free (p);
+
+ /* Check the alignment of the returned pointer is correct. */
+ p = memalign (0x100, 10);
+
+ if (p == NULL)
+ merror ("memalign (0x100, 10) failed.");
+
+ ptrval = (unsigned long) p;
+
+ if ((ptrval & 0xff) != 0)
+ merror ("pointer is not aligned to 0x100");
+
+ free (p);
+
+ return errors != 0;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
diff --git a/malloc/tst-posix_memalign.c b/malloc/tst-posix_memalign.c
new file mode 100644
index 0000000000..7f34e37bd2
--- /dev/null
+++ b/malloc/tst-posix_memalign.c
@@ -0,0 +1,118 @@
+/* Test for posix_memalign.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+
+static int errors = 0;
+
+static void
+merror (const char *msg)
+{
+ ++errors;
+ printf ("Error: %s\n", msg);
+}
+
+static int
+do_test (void)
+{
+ void *p;
+ int ret;
+ unsigned long pagesize = getpagesize ();
+ unsigned long ptrval;
+
+ p = NULL;
+
+ /* An attempt to allocate a huge value should return ENOMEM and
+ p should remain NULL. */
+ ret = posix_memalign (&p, sizeof (void *), -1);
+
+ if (ret != ENOMEM)
+ merror ("posix_memalign (&p, sizeof (void *), -1) succeeded.");
+
+ if (ret == ENOMEM && p != NULL)
+ merror ("returned an error but pointer was modified");
+
+ free (p);
+
+ p = NULL;
+
+ /* Test to expose integer overflow in malloc internals from BZ #15857. */
+ ret = posix_memalign (&p, pagesize, -pagesize);
+
+ if (ret != ENOMEM)
+ merror ("posix_memalign (&p, pagesize, -pagesize) succeeded.");
+
+ free (p);
+
+ p = NULL;
+
+ /* Test to expose integer overflow in malloc internals from BZ #16038. */
+ ret = posix_memalign (&p, -1, pagesize);
+
+ if (ret != EINVAL)
+ merror ("posix_memalign (&p, -1, pagesize) succeeded.");
+
+ free (p);
+
+ p = NULL;
+
+ /* A zero-sized allocation should succeed with glibc, returning zero
+ and setting p to a non-NULL value. */
+ ret = posix_memalign (&p, sizeof (void *), 0);
+
+ if (ret != 0 || p == NULL)
+ merror ("posix_memalign (&p, sizeof (void *), 0) failed.");
+
+ free (p);
+
+ ret = posix_memalign (&p, 0x300, 10);
+
+ if (ret != EINVAL)
+ merror ("posix_memalign (&p, 0x300, 10) succeeded.");
+
+ ret = posix_memalign (&p, 0, 10);
+
+ if (ret != EINVAL)
+ merror ("posix_memalign (&p, 0, 10) succeeded.");
+
+ p = NULL;
+
+ ret = posix_memalign (&p, 0x100, 10);
+
+ if (ret != 0)
+ merror ("posix_memalign (&p, 0x100, 10) failed.");
+
+ if (ret == 0 && p == NULL)
+ merror ("returned success but pointer is NULL");
+
+ ptrval = (unsigned long) p;
+
+ if (ret == 0 && (ptrval & 0xff) != 0)
+ merror ("pointer is not aligned to 0x100");
+
+ free (p);
+
+ return errors != 0;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
diff --git a/malloc/tst-pvalloc.c b/malloc/tst-pvalloc.c
new file mode 100644
index 0000000000..1c81294926
--- /dev/null
+++ b/malloc/tst-pvalloc.c
@@ -0,0 +1,99 @@
+/* Test for pvalloc.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <malloc.h>
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+
+static int errors = 0;
+
+static void
+merror (const char *msg)
+{
+ ++errors;
+ printf ("Error: %s\n", msg);
+}
+
+static int
+do_test (void)
+{
+ void *p;
+ unsigned long pagesize = getpagesize ();
+ unsigned long ptrval;
+ int save;
+
+ errno = 0;
+
+ /* An attempt to allocate a huge value should return NULL and set
+ errno to ENOMEM. */
+ p = pvalloc (-1);
+
+ save = errno;
+
+ if (p != NULL)
+ merror ("pvalloc (-1) succeeded.");
+
+ if (p == NULL && save != ENOMEM)
+ merror ("pvalloc (-1) errno is not set correctly");
+
+ free (p);
+
+ errno = 0;
+
+ /* Test to expose integer overflow in malloc internals from BZ #15855. */
+ p = pvalloc (-pagesize);
+
+ save = errno;
+
+ if (p != NULL)
+ merror ("pvalloc (-pagesize) succeeded.");
+
+ if (p == NULL && save != ENOMEM)
+ merror ("pvalloc (-pagesize) errno is not set correctly");
+
+ free (p);
+
+ /* A zero-sized allocation should succeed with glibc, returning a
+ non-NULL value. */
+ p = pvalloc (0);
+
+ if (p == NULL)
+ merror ("pvalloc (0) failed.");
+
+ free (p);
+
+ /* Check the alignment of the returned pointer is correct. */
+ p = pvalloc (32);
+
+ if (p == NULL)
+ merror ("pvalloc (32) failed.");
+
+ ptrval = (unsigned long) p;
+
+ if ((ptrval & (pagesize - 1)) != 0)
+ merror ("returned pointer is not page aligned.");
+
+ free (p);
+
+ return errors != 0;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
diff --git a/malloc/tst-realloc.c b/malloc/tst-realloc.c
new file mode 100644
index 0000000000..9d290d24c0
--- /dev/null
+++ b/malloc/tst-realloc.c
@@ -0,0 +1,146 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <errno.h>
+#include <malloc.h>
+#include <stdio.h>
+#include <string.h>
+
+static int errors = 0;
+
+static void
+merror (const char *msg)
+{
+ ++errors;
+ printf ("Error: %s\n", msg);
+}
+
+static int
+do_test (void)
+{
+ void *p;
+ unsigned char *c;
+ int save, i, ok;
+
+ errno = 0;
+
+ /* realloc (NULL, ...) behaves similarly to malloc (C89). */
+ p = realloc (NULL, -1);
+ save = errno;
+
+ if (p != NULL)
+ merror ("realloc (NULL, -1) succeeded.");
+
+ /* errno should be set to ENOMEM on failure (POSIX). */
+ if (p == NULL && save != ENOMEM)
+ merror ("errno is not set correctly");
+
+ errno = 0;
+
+ /* realloc (NULL, ...) behaves similarly to malloc (C89). */
+ p = realloc (NULL, 10);
+ save = errno;
+
+ if (p == NULL)
+ merror ("realloc (NULL, 10) failed.");
+
+ /* errno should be clear on success (POSIX). */
+ if (p != NULL && save != 0)
+ merror ("errno is set but should not be");
+
+ free (p);
+
+ p = calloc (20, 1);
+ if (p == NULL)
+ merror ("calloc (20, 1) failed.");
+
+ /* Check increasing size preserves contents (C89). */
+ p = realloc (p, 200);
+ if (p == NULL)
+ merror ("realloc (p, 200) failed.");
+
+ c = p;
+ ok = 1;
+
+ for (i = 0; i < 20; i++)
+ {
+ if (c[i] != 0)
+ ok = 0;
+ }
+
+ if (ok == 0)
+ merror ("first 20 bytes were not cleared");
+
+ free (p);
+
+ p = realloc (NULL, 100);
+ if (p == NULL)
+ merror ("realloc (NULL, 100) failed.");
+
+ memset (p, 0xff, 100);
+
+ /* Check decreasing size preserves contents (C89). */
+ p = realloc (p, 16);
+ if (p == NULL)
+ merror ("realloc (p, 16) failed.");
+
+ c = p;
+ ok = 1;
+
+ for (i = 0; i < 16; i++)
+ {
+ if (c[i] != 0xff)
+ ok = 0;
+ }
+
+ if (ok == 0)
+ merror ("first 16 bytes were not correct");
+
+ /* Check failed realloc leaves original untouched (C89). */
+ c = realloc (p, -1);
+ if (c != NULL)
+ merror ("realloc (p, -1) succeeded.");
+
+ c = p;
+ ok = 1;
+
+ for (i = 0; i < 16; i++)
+ {
+ if (c[i] != 0xff)
+ ok = 0;
+ }
+
+ if (ok == 0)
+ merror ("first 16 bytes were not correct after failed realloc");
+
+ /* realloc (p, 0) frees p (C89) and returns NULL (glibc). */
+ p = realloc (p, 0);
+ if (p != NULL)
+ merror ("realloc (p, 0) returned non-NULL.");
+
+ /* realloc (NULL, 0) acts like malloc (0) (glibc). */
+ p = realloc (NULL, 0);
+ if (p == NULL)
+ merror ("realloc (NULL, 0) returned NULL.");
+
+ free (p);
+
+ return errors != 0;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
diff --git a/malloc/tst-valloc.c b/malloc/tst-valloc.c
index 643a0dda4a..4fd0dbb964 100644
--- a/malloc/tst-valloc.c
+++ b/malloc/tst-valloc.c
@@ -1,23 +1,99 @@
-/* Test case by Stephen Tweedie <sct@redhat.com>. */
-#include <unistd.h>
-#include <stdio.h>
+/* Test for valloc.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <errno.h>
#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
-int
-main (void)
+static int errors = 0;
+
+static void
+merror (const char *msg)
+{
+ ++errors;
+ printf ("Error: %s\n", msg);
+}
+
+static int
+do_test (void)
{
- char *p;
- int pagesize = getpagesize ();
- int i;
+ void *p;
+ unsigned long pagesize = getpagesize ();
+ unsigned long ptrval;
+ int save;
+
+ errno = 0;
+
+ /* An attempt to allocate a huge value should return NULL and set
+ errno to ENOMEM. */
+ p = valloc (-1);
+
+ save = errno;
+
+ if (p != NULL)
+ merror ("valloc (-1) succeeded.");
- p = valloc (pagesize);
- i = (long int) p;
+ if (p == NULL && save != ENOMEM)
+ merror ("valloc (-1) errno is not set correctly");
- if ((i & (pagesize-1)) != 0)
- {
- fprintf (stderr, "Alignment problem: valloc returns %p\n", p);
- exit (1);
- }
+ free (p);
- return 0;
+ errno = 0;
+
+ /* Test to expose integer overflow in malloc internals from BZ #15856. */
+ p = valloc (-pagesize);
+
+ save = errno;
+
+ if (p != NULL)
+ merror ("valloc (-pagesize) succeeded.");
+
+ if (p == NULL && save != ENOMEM)
+ merror ("valloc (-pagesize) errno is not set correctly");
+
+ free (p);
+
+ /* A zero-sized allocation should succeed with glibc, returning a
+ non-NULL value. */
+ p = valloc (0);
+
+ if (p == NULL)
+ merror ("valloc (0) failed.");
+
+ free (p);
+
+ /* Check the alignment of the returned pointer is correct. */
+ p = valloc (32);
+
+ if (p == NULL)
+ merror ("valloc (32) failed.");
+
+ ptrval = (unsigned long) p;
+
+ if ((ptrval & (pagesize - 1)) != 0)
+ merror ("returned pointer is not page aligned.");
+
+ free (p);
+
+ return errors != 0;
}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
diff --git a/manual/Makefile b/manual/Makefile
index 44c0fd4f68..7bb419aea4 100644
--- a/manual/Makefile
+++ b/manual/Makefile
@@ -42,7 +42,7 @@ chapters = $(addsuffix .texi, \
message search pattern io stdio llio filesys \
pipe socket terminal syslog math arith time \
resource setjmp signal startup process job nss \
- users sysinfo conf crypt debug threads)
+ users sysinfo conf crypt debug threads probes)
add-chapters = $(wildcard $(foreach d, $(add-ons), ../$d/$d.texi))
appendices = lang.texi header.texi install.texi maint.texi platform.texi \
contrib.texi
diff --git a/manual/arith.texi b/manual/arith.texi
index 77056c3ea2..9cd61272d3 100644
--- a/manual/arith.texi
+++ b/manual/arith.texi
@@ -497,7 +497,8 @@ In the System V math library, the user-defined function @code{matherr}
is called when certain exceptions occur inside math library functions.
However, the Unix98 standard deprecates this interface. We support it
for historical compatibility, but recommend that you do not use it in
-new programs.
+new programs. When this interface is used, exceptions may not be
+raised.
@noindent
The exceptions defined in @w{IEEE 754} are:
@@ -806,7 +807,8 @@ an integer. Do not attempt to modify an @code{fexcept_t} variable.
Many of the math functions are defined only over a subset of the real or
complex numbers. Even if they are mathematically defined, their result
may be larger or smaller than the range representable by their return
-type. These are known as @dfn{domain errors}, @dfn{overflows}, and
+type without loss of accuracy. These are known as @dfn{domain errors},
+@dfn{overflows}, and
@dfn{underflows}, respectively. Math functions do several things when
one of these errors occurs. In this manual we will refer to the
complete response as @dfn{signalling} a domain error, overflow, or
@@ -816,11 +818,20 @@ When a math function suffers a domain error, it raises the invalid
exception and returns NaN. It also sets @var{errno} to @code{EDOM};
this is for compatibility with old systems that do not support @w{IEEE
754} exception handling. Likewise, when overflow occurs, math
-functions raise the overflow exception and return @math{@infinity{}} or
-@math{-@infinity{}} as appropriate. They also set @var{errno} to
-@code{ERANGE}. When underflow occurs, the underflow exception is
-raised, and zero (appropriately signed) is returned. @var{errno} may be
-set to @code{ERANGE}, but this is not guaranteed.
+functions raise the overflow exception and, in the default rounding
+mode, return @math{@infinity{}} or @math{-@infinity{}} as appropriate
+(in other rounding modes, the largest finite value of the appropriate
+sign is returned when appropriate for that rounding mode). They also
+set @var{errno} to @code{ERANGE} if returning @math{@infinity{}} or
+@math{-@infinity{}}; @var{errno} may or may not be set to
+@code{ERANGE} when a finite value is returned on overflow. When
+underflow occurs, the underflow exception is raised, and zero
+(appropriately signed) or a subnormal value, as appropriate for the
+mathematical result of the function and the rounding mode, is
+returned. @var{errno} may be set to @code{ERANGE}, but this is not
+guaranteed; it is intended that @theglibc{} should set it when the
+underflow is to an appropriately signed zero, but not necessarily for
+other underflows.
Some of the math functions are defined mathematically to result in a
complex value over parts of their domains. The most familiar example of
@@ -2455,7 +2466,8 @@ is provided mostly for compatibility with existing code; using
@Theglibc{} also provides @samp{_l} versions of these functions,
which take an additional argument, the locale to use in conversion.
-@xref{Parsing of Integers}.
+
+See also @ref{Parsing of Integers}.
@node System V Number Conversion
@section Old-fashioned System V number-to-string functions
diff --git a/manual/creature.texi b/manual/creature.texi
index 1bf53147ee..bbf16b7f27 100644
--- a/manual/creature.texi
+++ b/manual/creature.texi
@@ -77,24 +77,6 @@ edition is made available.
@defvr Macro _BSD_SOURCE
If you define this macro, functionality derived from 4.3 BSD Unix is
included as well as the @w{ISO C}, POSIX.1, and POSIX.2 material.
-
-Some of the features derived from 4.3 BSD Unix conflict with the
-corresponding features specified by the POSIX.1 standard. If this
-macro is defined, the 4.3 BSD definitions take precedence over the
-POSIX definitions.
-
-Due to the nature of some of the conflicts between 4.3 BSD and POSIX.1,
-you need to use a special @dfn{BSD compatibility library} when linking
-programs compiled for BSD compatibility. This is because some functions
-must be defined in two different ways, one of them in the normal C
-library, and one of them in the compatibility library. If your program
-defines @code{_BSD_SOURCE}, you must give the option @samp{-lbsd-compat}
-to the compiler or linker when linking the program, to tell it to find
-functions in this special compatibility library before looking for them in
-the normal C library.
-@pindex -lbsd-compat
-@pindex bsd-compat
-@cindex BSD compatibility library.
@end defvr
@comment (none)
@@ -204,21 +186,21 @@ If you define this macro, everything is included: @w{ISO C89}, @w{ISO
C99}, POSIX.1, POSIX.2, BSD, SVID, X/Open, LFS, and GNU extensions. In
the cases where POSIX.1 conflicts with BSD, the POSIX definitions take
precedence.
+@end defvr
-If you want to get the full effect of @code{_GNU_SOURCE} but make the
-BSD definitions take precedence over the POSIX definitions, use this
-sequence of definitions:
-
-@smallexample
-#define _GNU_SOURCE
-#define _BSD_SOURCE
-#define _SVID_SOURCE
-@end smallexample
-
-Note that if you do this, you must link your program with the BSD
-compatibility library by passing the @samp{-lbsd-compat} option to the
-compiler or linker. @strong{NB:} If you forget to do this, you may
-get very strange errors at run time.
+@comment (none)
+@comment GNU
+@defvr Macro _DEFAULT_SOURCE
+If you define this macro, most features are included apart from
+X/Open, LFS and GNU extensions; the effect is similar to defining
+@code{_POSIX_C_SOURCE} to @code{200809L} and @code{_POSIX_SOURCE},
+@code{_SVID_SOURCE}, and @code{_BSD_SOURCE} to 1. Defining this
+macro, on its own and without using compiler options such as
+@option{-ansi} or @option{-std=c99}, has the same effect as not
+defining any feature test macros; defining it together with other
+feature test macros, or when options such as @option{-ansi} are used,
+enables those features even when the other options would otherwise
+cause them to be disabled.
@end defvr
@comment (none)
@@ -237,10 +219,10 @@ it must have been specified to compile as thread safe.
@end defvr
We recommend you use @code{_GNU_SOURCE} in new programs. If you don't
-specify the @samp{-ansi} option to GCC and don't define any of these
-macros explicitly, the effect is the same as defining
-@code{_POSIX_C_SOURCE} to 2 and @code{_POSIX_SOURCE},
-@code{_SVID_SOURCE}, and @code{_BSD_SOURCE} to 1.
+specify the @samp{-ansi} option to GCC, or other conformance options
+such as @option{-std=c99}, and don't define any of these macros
+explicitly, the effect is the same as defining @code{_DEFAULT_SOURCE}
+to 1.
When you define a feature test macro to request a larger class of features,
it is harmless to define in addition a feature test macro for a subset of
@@ -248,11 +230,3 @@ those features. For example, if you define @code{_POSIX_C_SOURCE}, then
defining @code{_POSIX_SOURCE} as well has no effect. Likewise, if you
define @code{_GNU_SOURCE}, then defining either @code{_POSIX_SOURCE} or
@code{_POSIX_C_SOURCE} or @code{_SVID_SOURCE} as well has no effect.
-
-Note, however, that the features of @code{_BSD_SOURCE} are not a subset of
-any of the other feature test macros supported. This is because it defines
-BSD features that take precedence over the POSIX features that are
-requested by the other macros. For this reason, defining
-@code{_BSD_SOURCE} in addition to the other feature test macros does have
-an effect: it causes the BSD features to take priority over the conflicting
-POSIX features.
diff --git a/manual/crypt.texi b/manual/crypt.texi
index ef905904ca..9c65b9535e 100644
--- a/manual/crypt.texi
+++ b/manual/crypt.texi
@@ -30,8 +30,15 @@ message-digest algorithm that is compatible with modern BSD systems,
and the other based on the Data Encryption Standard (DES) that is
compatible with Unix systems.
+@vindex AUTH_DES
+@cindex FIPS 140-2
It also provides support for Secure RPC, and some library functions that
-can be used to perform normal DES encryption.
+can be used to perform normal DES encryption. The @code{AUTH_DES}
+authentication flavor in Secure RPC, as provided by @theglibc{},
+uses DES and does not comply with FIPS 140-2 nor does any other use of DES
+within @theglibc{}. It is recommended that Secure RPC should not be used
+for systems that need to comply with FIPS 140-2 since all flavors of
+encrypted authentication use normal DES.
@menu
* Legal Problems:: This software can get you locked up, or worse.
@@ -203,6 +210,7 @@ header @file{crypt.h}.
@node DES Encryption
@section DES Encryption
+@cindex FIPS 46-3
The Data Encryption Standard is described in the US Government Federal
Information Processing Standards (FIPS) 46-3 published by the National
Institute of Standards and Technology. The DES has been very thoroughly
diff --git a/manual/freemanuals.texi b/manual/freemanuals.texi
index a424e8aa3e..9caf22017c 100644
--- a/manual/freemanuals.texi
+++ b/manual/freemanuals.texi
@@ -1,4 +1,7 @@
-@appendix Free Software Needs Free Documentation
+@c freemanuals.texi - blurb for free documentation.
+@c This file is intended to be included within another document,
+@c hence no sectioning command or @node.
+
@cindex free documentation
The biggest deficiency in the free software community today is not in
diff --git a/manual/install-plain.texi b/manual/install-plain.texi
new file mode 100644
index 0000000000..c5179e780c
--- /dev/null
+++ b/manual/install-plain.texi
@@ -0,0 +1,5 @@
+@c This is for making the `INSTALL' file for the distribution.
+@c Makeinfo ignores it when processing the file from the include.
+@setfilename INSTALL
+@set plain
+@include install.texi
diff --git a/manual/install.texi b/manual/install.texi
index 4575d22319..c0b8d9e134 100644
--- a/manual/install.texi
+++ b/manual/install.texi
@@ -1,10 +1,10 @@
-@c This is for making the `INSTALL' file for the distribution.
-@c Makeinfo ignores it when processing the file from the include.
-@setfilename INSTALL
@include macros.texi
@include pkgvers.texi
+@ifclear plain
@node Installation, Maintenance, Library Summary, Top
+@end ifclear
+
@c %MENU% How to install the GNU C Library
@appendix Installing @theglibc{}
@@ -21,6 +21,7 @@ to activate them, and they will be compiled into the library.
You will need recent versions of several GNU tools: definitely GCC and
GNU Make, and possibly others. @xref{Tools for Compilation}, below.
+@ifclear plain
@menu
* Configuring and compiling:: How to compile and test GNU libc.
* Running make install:: How to install it once you've got it
@@ -29,6 +30,7 @@ GNU Make, and possibly others. @xref{Tools for Compilation}, below.
* Linux:: Specific advice for GNU/Linux systems.
* Reporting Bugs:: So they'll get fixed.
@end menu
+@end ifclear
@node Configuring and compiling
@appendixsec Configuring and compiling @theglibc{}
@@ -138,11 +140,6 @@ linker.
Don't build libraries with profiling information. You may want to use
this option if you don't plan to do profiling.
-@item --disable-versioning
-Don't compile the shared libraries with symbol version information.
-Doing this will make the resulting library incompatible with old
-binaries, so it's not recommended.
-
@item --enable-static-nss
Compile static versions of the NSS (Name Service Switch) libraries.
This is not recommended because it defeats the purpose of NSS; a program
@@ -325,14 +322,11 @@ can dramatically improve performance with NIS+, and may help with DNS as
well.
One auxiliary program, @file{/usr/libexec/pt_chown}, is installed setuid
-@code{root}. This program is invoked by the @code{grantpt} function; it
-sets the permissions on a pseudoterminal so it can be used by the
-calling process. This means programs like @code{xterm} and
-@code{screen} do not have to be setuid to get a pty. (There may be
-other reasons why they need privileges.) If you are using a
-Linux kernel with the @code{devptsfs} or @code{devfs} filesystems
-providing pty slaves, you don't need this program; otherwise you do.
-The source for @file{pt_chown} is in @file{login/programs/pt_chown.c}.
+@code{root} if the @samp{--enable-pt_chown} configuration option is used.
+This program is invoked by the @code{grantpt} function; it sets the
+permissions on a pseudoterminal so it can be used by the calling process.
+If you are using a Linux kernel with the @code{devpts} filesystem enabled
+and mounted at @file{/dev/pts}, you don't need this program.
After installation you might want to configure the timezone and locale
installation of your system. @Theglibc{} comes with a locale
@@ -421,7 +415,7 @@ should definitely upgrade @code{sed}.
@end itemize
@noindent
-If you change any of the @file{configure.in} files you will also need
+If you change any of the @file{configure.ac} files you will also need
@itemize @bullet
@item
diff --git a/manual/job.texi b/manual/job.texi
index 4efeed3451..d58dcd8c8f 100644
--- a/manual/job.texi
+++ b/manual/job.texi
@@ -1118,39 +1118,18 @@ from the calling process.
@end table
@end deftypefun
-The @code{getpgrp} function has two definitions: one derived from BSD
-Unix, and one from the POSIX.1 standard. The feature test macros you
-have selected (@pxref{Feature Test Macros}) determine which definition
-you get. Specifically, you get the BSD version if you define
-@code{_BSD_SOURCE}; otherwise, you get the POSIX version if you define
-@code{_POSIX_SOURCE} or @code{_GNU_SOURCE}. Programs written for old
-BSD systems will not include @file{unistd.h}, which defines
-@code{getpgrp} specially under @code{_BSD_SOURCE}. You must link such
-programs with the @code{-lbsd-compat} option to get the BSD definition.@refill
-@pindex -lbsd-compat
-@pindex bsd-compat
-@cindex BSD compatibility library
-
@comment unistd.h
@comment POSIX.1
-@deftypefn {POSIX.1 Function} pid_t getpgrp (void)
-The POSIX.1 definition of @code{getpgrp} returns the process group ID of
+@deftypefun pid_t getpgrp (void)
+The @code{getpgrp} function returns the process group ID of
the calling process.
-@end deftypefn
-
-@comment unistd.h
-@comment BSD
-@deftypefn {BSD Function} pid_t getpgrp (pid_t @var{pid})
-The BSD definition of @code{getpgrp} returns the process group ID of the
-process @var{pid}. You can supply a value of @code{0} for the @var{pid}
-argument to get information about the calling process.
-@end deftypefn
+@end deftypefun
@comment unistd.h
-@comment SVID
-@deftypefn {System V Function} int getpgid (pid_t @var{pid})
+@comment POSIX.1
+@deftypefun int getpgid (pid_t @var{pid})
-@code{getpgid} is the same as the BSD function @code{getpgrp}. It
+The @code{getpgid} function
returns the process group ID of the process @var{pid}. You can supply a
value of @code{0} for the @var{pid} argument to get information about
the calling process.
@@ -1166,7 +1145,7 @@ different sessions, and the implementation doesn't allow to access the
process group ID of the process with ID @var{pid} from the calling
process.
@end table
-@end deftypefn
+@end deftypefun
@comment unistd.h
@comment POSIX.1
diff --git a/manual/libc.texinfo b/manual/libc.texinfo
index 4505d270b4..96cd380ce3 100644
--- a/manual/libc.texinfo
+++ b/manual/libc.texinfo
@@ -118,6 +118,7 @@ of @theglibc{}.
@include chapters.texi
@node Free Manuals, Copying, Contributors, Top
+@appendix Free Software Needs Free Documentation
@include freemanuals.texi
@node Copying, Documentation License, Free Manuals, Top
diff --git a/manual/llio.texi b/manual/llio.texi
index b129cf40bd..b6c926060e 100644
--- a/manual/llio.texi
+++ b/manual/llio.texi
@@ -1226,8 +1226,8 @@ as the included @code{malloc} automatically uses @code{mmap} where appropriate.
@end vtable
-@code{mmap} returns the address of the new mapping, or @math{-1} for an
-error.
+@code{mmap} returns the address of the new mapping, or
+@code{MAP_FAILED} for an error.
Possible errors include:
@@ -1471,6 +1471,33 @@ There is no existing mapping in at least part of the given region.
@end table
@end deftypefun
+@comment sys/mman.h
+@comment POSIX
+@deftypefn Function int shm_open (const char *@var{name}, int @var{oflag}, mode_t @var{mode})
+
+This function returns a file descriptor that can be used to allocate shared
+memory via mmap. Unrelated processes can use same @var{name} to create or
+open existing shared memory objects.
+
+A @var{name} argument specifies the shared memory object to be opened.
+In @theglibc{} it must be a string smaller than @code{NAME_MAX} bytes starting
+with an optional slash but containing no other slashes.
+
+The semantics of @var{oflag} and @var{mode} arguments is same as in @code{open}.
+
+@code{shm_open} returns the file descriptor on success or @math{-1} on error.
+On failure @code{errno} is set.
+@end deftypefn
+
+@deftypefn Function int shm_unlink (const char *@var{name})
+
+This function is inverse of @code{shm_open} and removes the object with
+the given @var{name} previously created by @code{shm_open}.
+
+@code{shm_unlink} returns @math{0} on success or @math{-1} on error.
+On failure @code{errno} is set.
+@end deftypefn
+
@node Waiting for I/O
@section Waiting for Input or Output
@cindex waiting for input or output
diff --git a/manual/maint.texi b/manual/maint.texi
index 0f4b959815..659ceae011 100644
--- a/manual/maint.texi
+++ b/manual/maint.texi
@@ -316,7 +316,7 @@ This file is a shell script fragment to be run at configuration time.
The top-level @file{configure} script uses the shell @code{.} command to
read the @file{configure} file in each system-dependent directory
chosen, in order. The @file{configure} files are often generated from
-@file{configure.in} files using Autoconf.
+@file{configure.ac} files using Autoconf.
A system-dependent @file{configure} script will usually add things to
the shell variables @samp{DEFS} and @samp{config_vars}; see the
@@ -329,14 +329,14 @@ shell variable @w{@samp{with_@var{package}}} (with any dashes in
just @w{@samp{--with-@var{package}}} (no argument), then it sets
@w{@samp{with_@var{package}}} to @samp{yes}.
-@item configure.in
+@item configure.ac
This file is an Autoconf input fragment to be processed into the file
@file{configure} in this subdirectory. @xref{Introduction,,,
autoconf.info, Autoconf: Generating Automatic Configuration Scripts},
for a description of Autoconf. You should write either @file{configure}
-or @file{configure.in}, but not both. The first line of
-@file{configure.in} should invoke the @code{m4} macro
+or @file{configure.ac}, but not both. The first line of
+@file{configure.ac} should invoke the @code{m4} macro
@samp{GLIBC_PROVIDES}. This macro does several @code{AC_PROVIDE} calls
for Autoconf macros which are used by the top-level @file{configure}
script; without this, those macros might be invoked again unnecessarily
diff --git a/manual/math.texi b/manual/math.texi
index 193d415fba..5e7c90e2e6 100644
--- a/manual/math.texi
+++ b/manual/math.texi
@@ -1227,10 +1227,80 @@ $${|d.d\dots d - (z/2^e)|}\over {2^{p-1}}$$
@noindent
where @math{p} is the number of bits in the mantissa of the
floating-point number representation. Ideally the error for all
-functions is always less than 0.5ulps. Using rounding bits this is also
-possible and normally implemented for the basic operations. To achieve
-the same for the complex math functions requires a lot more work and
-this has not yet been done.
+functions is always less than 0.5ulps in round-to-nearest mode. Using
+rounding bits this is also
+possible and normally implemented for the basic operations. Except
+for certain functions such as @code{sqrt}, @code{fma} and @code{rint}
+whose results are fully specified by reference to corresponding IEEE
+754 floating-point operations, and conversions between strings and
+floating point, @theglibc{} does not aim for correctly rounded results
+for functions in the math library, and does not aim for correctness in
+whether ``inexact'' exceptions are raised. Instead, the goals for
+accuracy of functions without fully specified results are as follows;
+some functions have bugs meaning they do not meet these goals in all
+cases. In future, @theglibc{} may provide some other correctly
+rounding functions under the names such as @code{crsin} proposed for
+an extension to ISO C.
+
+@itemize @bullet
+
+@item
+Each function with a floating-point result behaves as if it computes
+an infinite-precision result that is within a few ulp (in both real
+and complex parts, for functions with complex results) of the
+mathematically correct value of the function (interpreted together
+with ISO C or POSIX semantics for the function in question) at the
+exact value passed as the input. Exceptions are raised appropriately
+for this value and in accordance with IEEE 754 / ISO C / POSIX
+semantics, and it is then rounded according to the current rounding
+direction to the result that is returned to the user. @code{errno}
+may also be set (@pxref{Math Error Reporting}).
+
+@item
+For the IBM @code{long double} format, as used on PowerPC GNU/Linux,
+the accuracy goal is weaker for input values not exactly representable
+in 106 bits of precision; it is as if the input value is some value
+within 0.5ulp of the value actually passed, where ``ulp'' is
+interpreted in terms of a fixed-precision 106-bit mantissa, but not
+necessarily the exact value actually passed with discontiguous
+mantissa bits.
+
+@item
+Functions behave as if the infinite-precision result computed is zero,
+infinity or NaN if and only if that is the mathematically correct
+infinite-precision result. They behave as if the infinite-precision
+result computed always has the same sign as the mathematically correct
+result.
+
+@item
+If the mathematical result is more than a few ulp above the overflow
+threshold for the current rounding direction, the value returned is
+the appropriate overflow value for the current rounding direction,
+with the overflow exception raised.
+
+@item
+If the mathematical result has magnitude well below half the least
+subnormal magnitude, the returned value is either zero or the least
+subnormal (in each case, with the correct sign), according to the
+current rounding direction and with the underflow exception raised.
+
+@item
+Where the mathematical result underflows and is not exactly
+representable as a floating-point value, the underflow exception is
+raised (so there may be spurious underflow exceptions in cases where
+the underflowing result is exact, but not missing underflow exceptions
+in cases where it is inexact).
+
+@item
+@Theglibc{} does not aim for functions to satisfy other properties of
+the underlying mathematical function, such as monotonicity, where not
+implied by the above goals.
+
+@item
+All the above applies to both real and complex parts, for complex
+functions.
+
+@end itemize
Therefore many of the functions in the math library have errors. The
table lists the maximum error for each function which is exposed by one
@@ -1364,7 +1434,7 @@ The prototypes for these functions are in @file{stdlib.h}.
@comment BSD
@deftypefun {long int} random (void)
This function returns the next pseudo-random number in the sequence.
-The value returned ranges from @code{0} to @code{RAND_MAX}.
+The value returned ranges from @code{0} to @code{2147483647}.
@strong{NB:} Temporarily this function was defined to return a
@code{int32_t} value to indicate that the return value always contains
diff --git a/manual/memory.texi b/manual/memory.texi
index 0c3d39efa8..55a6a50ae6 100644
--- a/manual/memory.texi
+++ b/manual/memory.texi
@@ -355,7 +355,7 @@ it is:
void *
xmalloc (size_t size)
@{
- register void *value = malloc (size);
+ void *value = malloc (size);
if (value == 0)
fatal ("virtual memory exhausted");
return value;
@@ -371,7 +371,7 @@ a newly allocated null-terminated string:
char *
savestring (const char *ptr, size_t len)
@{
- register char *value = (char *) xmalloc (len + 1);
+ char *value = (char *) xmalloc (len + 1);
value[len] = '\0';
return (char *) memcpy (value, ptr, len);
@}
@@ -380,10 +380,10 @@ savestring (const char *ptr, size_t len)
The block that @code{malloc} gives you is guaranteed to be aligned so
that it can hold any type of data. On @gnusystems{}, the address is
-always a multiple of eight on most systems, and a multiple of 16 on
+always a multiple of eight on 32-bit systems, and a multiple of 16 on
64-bit systems. Only rarely is any higher boundary (such as a page
-boundary) necessary; for those cases, use @code{memalign},
-@code{posix_memalign} or @code{valloc} (@pxref{Aligned Memory Blocks}).
+boundary) necessary; for those cases, use @code{aligned_alloc} or
+@code{posix_memalign} (@pxref{Aligned Memory Blocks}).
Note that the memory located after the end of the block is likely to be
in use for something else; perhaps a block already allocated by another
@@ -502,7 +502,7 @@ as @code{xmalloc} does for @code{malloc}:
void *
xrealloc (void *ptr, size_t size)
@{
- register void *value = realloc (ptr, size);
+ void *value = realloc (ptr, size);
if (value == 0)
fatal ("Virtual memory exhausted");
return value;
@@ -616,14 +616,31 @@ after calling @code{free} wastes memory. The size threshold for
The address of a block returned by @code{malloc} or @code{realloc} in
@gnusystems{} is always a multiple of eight (or sixteen on 64-bit
systems). If you need a block whose address is a multiple of a higher
-power of two than that, use @code{memalign}, @code{posix_memalign}, or
-@code{valloc}. @code{memalign} is declared in @file{malloc.h} and
-@code{posix_memalign} is declared in @file{stdlib.h}.
+power of two than that, use @code{aligned_alloc} or @code{posix_memalign}.
+@code{aligned_alloc} and @code{posix_memalign} are declared in
+@file{stdlib.h}.
+
+@comment stdlib.h
+@deftypefun {void *} aligned_alloc (size_t @var{alignment}, size_t @var{size})
+The @code{aligned_alloc} function allocates a block of @var{size} bytes whose
+address is a multiple of @var{alignment}. The @var{alignment} must be a
+power of two and @var{size} must be a multiple of @var{alignment}.
-With @theglibc{}, you can use @code{free} to free the blocks that
-@code{memalign}, @code{posix_memalign}, and @code{valloc} return. That
-does not work in BSD, however---BSD does not provide any way to free
-such blocks.
+The @code{aligned_alloc} function returns a null pointer on error and sets
+@code{errno} to one of the following values:
+
+@table @code
+@item ENOMEM
+There was insufficient memory available to satisfy the request.
+
+@item EINVAL
+@var{alignment} is not a power of two.
+
+This function was introduced in @w{ISO C11} and hence may have better
+portability to modern non-POSIX systems than @code{posix_memalign}.
+@end table
+
+@end deftypefun
@comment malloc.h
@comment BSD
@@ -633,6 +650,21 @@ address is a multiple of @var{boundary}. The @var{boundary} must be a
power of two! The function @code{memalign} works by allocating a
somewhat larger block, and then returning an address within the block
that is on the specified boundary.
+
+The @code{memalign} function returns a null pointer on error and sets
+@code{errno} to one of the following values:
+
+@table @code
+@item ENOMEM
+There was insufficient memory available to satisfy the request.
+
+@item EINVAL
+@var{alignment} is not a power of two.
+
+@end table
+
+The @code{memalign} function is obsolete and @code{aligned_alloc} or
+@code{posix_memalign} should be used instead.
@end deftypefun
@comment stdlib.h
@@ -647,8 +679,20 @@ parameter @var{alignment}: the value must be a power of two multiple of
If the function succeeds in allocation memory a pointer to the allocated
memory is returned in @code{*@var{memptr}} and the return value is zero.
Otherwise the function returns an error value indicating the problem.
+The possible error values returned are:
+
+@table @code
+@item ENOMEM
+There was insufficient memory available to satisfy the request.
+
+@item EINVAL
+@var{alignment} is not a power of two multiple of @code{sizeof (void *)}.
-This function was introduced in POSIX 1003.1d.
+@end table
+
+This function was introduced in POSIX 1003.1d. Although this function is
+superseded by @code{aligned_alloc}, it is more portable to older POSIX
+systems that do not support @w{ISO C11}.
@end deftypefun
@comment malloc.h stdlib.h
@@ -667,6 +711,9 @@ valloc (size_t size)
@ref{Query Memory Parameters} for more information about the memory
subsystem.
+
+The @code{valloc} function is obsolete and @code{aligned_alloc} or
+@code{posix_memalign} should be used instead.
@end deftypefun
@node Malloc Tunable Parameters
@@ -902,16 +949,18 @@ memory consumption of the program.
@comment malloc.h
@comment GNU
@defvar __memalign_hook
-The value of this variable is a pointer to function that @code{memalign}
-uses whenever it is called. You should define this function to look
-like @code{memalign}; that is, like:
+The value of this variable is a pointer to function that @code{aligned_alloc},
+@code{memalign}, @code{posix_memalign} and @code{valloc} use whenever they
+are called. You should define this function to look like @code{aligned_alloc};
+that is, like:
@smallexample
void *@var{function} (size_t @var{alignment}, size_t @var{size}, const void *@var{caller})
@end smallexample
The value of @var{caller} is the return address found on the stack when
-the @code{memalign} function was called. This value allows you to trace the
+the @code{aligned_alloc}, @code{memalign}, @code{posix_memalign} or
+@code{valloc} functions are called. This value allows you to trace the
memory consumption of the program.
@end defvar
@@ -1118,6 +1167,14 @@ Space}.
Allocate a block of @var{size} bytes, starting on a page boundary.
@xref{Aligned Memory Blocks}.
+@item void *aligned_alloc (size_t @var{size}, size_t @var{alignment})
+Allocate a block of @var{size} bytes, starting on an address that is a
+multiple of @var{alignment}. @xref{Aligned Memory Blocks}.
+
+@item int posix_memalign (void **@var{memptr}, size_t @var{alignment}, size_t @var{size})
+Allocate a block of @var{size} bytes, starting on an address that is a
+multiple of @var{alignment}. @xref{Aligned Memory Blocks}.
+
@item void *memalign (size_t @var{size}, size_t @var{boundary})
Allocate a block of @var{size} bytes, starting on an address that is a
multiple of @var{boundary}. @xref{Aligned Memory Blocks}.
@@ -1140,7 +1197,8 @@ A pointer to a function that @code{realloc} uses whenever it is called.
A pointer to a function that @code{free} uses whenever it is called.
@item void (*__memalign_hook) (size_t @var{size}, size_t @var{alignment}, const void *@var{caller})
-A pointer to a function that @code{memalign} uses whenever it is called.
+A pointer to a function that @code{aligned_alloc}, @code{memalign},
+@code{posix_memalign} and @code{valloc} use whenever they are called.
@item struct mallinfo mallinfo (void)
Return information about the current dynamic memory usage.
diff --git a/manual/pattern.texi b/manual/pattern.texi
index 1966f3f148..afd6480926 100644
--- a/manual/pattern.texi
+++ b/manual/pattern.texi
@@ -36,11 +36,8 @@ returns the nonzero value @code{FNM_NOMATCH}. The arguments
The argument @var{flags} is a combination of flag bits that alter the
details of matching. See below for a list of the defined flags.
-In @theglibc{}, @code{fnmatch} cannot experience an ``error''---it
-always returns an answer for whether the match succeeds. However, other
-implementations of @code{fnmatch} might sometimes report ``errors''.
-They would do so by returning nonzero values that are not equal to
-@code{FNM_NOMATCH}.
+In @theglibc{}, @code{fnmatch} might sometimes report ``errors'' by
+returning nonzero values that are not equal to @code{FNM_NOMATCH}.
@end deftypefun
These are the available flags for the @var{flags} argument:
diff --git a/manual/probes.texi b/manual/probes.texi
new file mode 100644
index 0000000000..25d06e5383
--- /dev/null
+++ b/manual/probes.texi
@@ -0,0 +1,370 @@
+@node Internal Probes
+@c @node Internal Probes, , POSIX Threads, Top
+@c %MENU% Probes to monitor libc internal behavior
+@chapter Internal probes
+
+In order to aid in debugging and monitoring internal behavior,
+@theglibc{} exposes nearly-zero-overhead SystemTap probes marked with
+the @code{libc} provider.
+
+These probes are not part of the @glibcadj{} stable ABI, and they are
+subject to change or removal across releases. Our only promise with
+regard to them is that, if we find a need to remove or modify the
+arguments of a probe, the modified probe will have a different name, so
+that program monitors relying on the old probe will not get unexpected
+arguments.
+
+@menu
+* Memory Allocation Probes:: Probes in the memory allocation subsystem
+* Mathematical Function Probes:: Probes in mathematical functions
+@end menu
+
+@node Memory Allocation Probes
+@section Memory Allocation Probes
+
+These probes are designed to signal relatively unusual situations within
+the virtual memory subsystem of @theglibc{}.
+
+@deftp Probe memory_sbrk_more (void *@var{$arg1}, size_t @var{$arg2})
+This probe is triggered after the main arena is extended by calling
+@code{sbrk}. Argument @var{$arg1} is the additional size requested to
+@code{sbrk}, and @var{$arg2} is the pointer that marks the end of the
+@code{sbrk} area, returned in response to the request.
+@end deftp
+
+@deftp Probe memory_sbrk_less (void *@var{$arg1}, size_t @var{$arg2})
+This probe is triggered after the size of the main arena is decreased by
+calling @code{sbrk}. Argument @var{$arg1} is the size released by
+@code{sbrk} (the positive value, rather than the negative value passed
+to @code{sbrk}), and @var{$arg2} is the pointer that marks the end of
+the @code{sbrk} area, returned in response to the request.
+@end deftp
+
+@deftp Probe memory_heap_new (void *@var{$arg1}, size_t @var{$arg2})
+This probe is triggered after a new heap is @code{mmap}ed. Argument
+@var{$arg1} is a pointer to the base of the memory area, where the
+@code{heap_info} data structure is held, and @var{$arg2} is the size of
+the heap.
+@end deftp
+
+@deftp Probe memory_heap_free (void *@var{$arg1}, size_t @var{$arg2})
+This probe is triggered @emph{before} (unlike the other sbrk and heap
+probes) a heap is completely removed via @code{munmap}. Argument
+@var{$arg1} is a pointer to the heap, and @var{$arg2} is the size of the
+heap.
+@end deftp
+
+@deftp Probe memory_heap_more (void *@var{$arg1}, size_t @var{$arg2})
+This probe is triggered after a trailing portion of an @code{mmap}ed
+heap is extended. Argument @var{$arg1} is a pointer to the heap, and
+@var{$arg2} is the new size of the heap.
+@end deftp
+
+@deftp Probe memory_heap_less (void *@var{$arg1}, size_t @var{$arg2})
+This probe is triggered after a trailing portion of an @code{mmap}ed
+heap is released. Argument @var{$arg1} is a pointer to the heap, and
+@var{$arg2} is the new size of the heap.
+@end deftp
+
+@deftp Probe memory_malloc_retry (size_t @var{$arg1})
+@deftpx Probe memory_realloc_retry (size_t @var{$arg1}, void *@var{$arg2})
+@deftpx Probe memory_memalign_retry (size_t @var{$arg1}, size_t @var{$arg2})
+@deftpx Probe memory_calloc_retry (size_t @var{$arg1})
+These probes are triggered when the corresponding functions fail to
+obtain the requested amount of memory from the arena in use, before they
+call @code{arena_get_retry} to select an alternate arena in which to
+retry the allocation. Argument @var{$arg1} is the amount of memory
+requested by the user; in the @code{calloc} case, that is the total size
+computed from both function arguments. In the @code{realloc} case,
+@var{$arg2} is the pointer to the memory area being resized. In the
+@code{memalign} case, @var{$arg2} is the alignment to be used for the
+request, which may be stricter than the value passed to the
+@code{memalign} function. A @code{memalign} probe is also used by functions
+@code{posix_memalign, valloc} and @code{pvalloc}.
+
+Note that the argument order does @emph{not} match that of the
+corresponding two-argument functions, so that in all of these probes the
+user-requested allocation size is in @var{$arg1}.
+@end deftp
+
+@deftp Probe memory_arena_retry (size_t @var{$arg1}, void *@var{$arg2})
+This probe is triggered within @code{arena_get_retry} (the function
+called to select the alternate arena in which to retry an allocation
+that failed on the first attempt), before the selection of an alternate
+arena. This probe is redundant, but much easier to use when it's not
+important to determine which of the various memory allocation functions
+is failing to allocate on the first try. Argument @var{$arg1} is the
+same as in the function-specific probes, except for extra room for
+padding introduced by functions that have to ensure stricter alignment.
+Argument @var{$arg2} is the arena in which allocation failed.
+@end deftp
+
+@deftp Probe memory_arena_new (void *@var{$arg1}, size_t @var{$arg2})
+This probe is triggered when @code{malloc} allocates and initializes an
+additional arena (not the main arena), but before the arena is assigned
+to the running thread or inserted into the internal linked list of
+arenas. The arena's @code{malloc_state} internal data structure is
+located at @var{$arg1}, within a newly-allocated heap big enough to hold
+at least @var{$arg2} bytes.
+@end deftp
+
+@deftp Probe memory_arena_reuse (void *@var{$arg1}, void *@var{$arg2})
+This probe is triggered when @code{malloc} has just selected an existing
+arena to reuse, and (temporarily) reserved it for exclusive use.
+Argument @var{$arg1} is a pointer to the newly-selected arena, and
+@var{$arg2} is a pointer to the arena previously used by that thread.
+
+This occurs within
+@code{reused_arena}, right after the mutex mentioned in probe
+@code{memory_arena_reuse_wait} is acquired; argument @var{$arg1} will
+point to the same arena. In this configuration, this will usually only
+occur once per thread. The exception is when a thread first selected
+the main arena, but a subsequent allocation from it fails: then, and
+only then, may we switch to another arena to retry that allocations, and
+for further allocations within that thread.
+@end deftp
+
+@deftp Probe memory_arena_reuse_wait (void *@var{$arg1}, void *@var{$arg2}, void *@var{$arg3})
+This probe is triggered when @code{malloc} is about to wait for an arena
+to become available for reuse. Argument @var{$arg1} holds a pointer to
+the mutex the thread is going to wait on, @var{$arg2} is a pointer to a
+newly-chosen arena to be reused, and @var{$arg3} is a pointer to the
+arena previously used by that thread.
+
+This occurs within
+@code{reused_arena}, when a thread first tries to allocate memory or
+needs a retry after a failure to allocate from the main arena, there
+isn't any free arena, the maximum number of arenas has been reached, and
+an existing arena was chosen for reuse, but its mutex could not be
+immediately acquired. The mutex in @var{$arg1} is the mutex of the
+selected arena.
+@end deftp
+
+@deftp Probe memory_arena_reuse_free_list (void *@var{$arg1})
+This probe is triggered when @code{malloc} has chosen an arena that is
+in the free list for use by a thread, within the @code{get_free_list}
+function. The argument @var{$arg1} holds a pointer to the selected arena.
+@end deftp
+
+@deftp Probe memory_mallopt (int @var{$arg1}, int @var{$arg2})
+This probe is triggered when function @code{mallopt} is called to change
+@code{malloc} internal configuration parameters, before any change to
+the parameters is made. The arguments @var{$arg1} and @var{$arg2} are
+the ones passed to the @code{mallopt} function.
+@end deftp
+
+@deftp Probe memory_mallopt_mxfast (int @var{$arg1}, int @var{$arg2})
+This probe is triggered shortly after the @code{memory_mallopt} probe,
+when the parameter to be changed is @code{M_MXFAST}, and the requested
+value is in an acceptable range. Argument @var{$arg1} is the requested
+value, and @var{$arg2} is the previous value of this @code{malloc}
+parameter.
+@end deftp
+
+@deftp Probe memory_mallopt_trim_threshold (int @var{$arg1}, int @var{$arg2}, int @var{$arg3})
+This probe is triggere shortly after the @code{memory_mallopt} probe,
+when the parameter to be changed is @code{M_TRIM_THRESHOLD}. Argument
+@var{$arg1} is the requested value, @var{$arg2} is the previous value of
+this @code{malloc} parameter, and @var{$arg3} is nonzero if dynamic
+threshold adjustment was already disabled.
+@end deftp
+
+@deftp Probe memory_mallopt_top_pad (int @var{$arg1}, int @var{$arg2}, int @var{$arg3})
+This probe is triggered shortly after the @code{memory_mallopt} probe,
+when the parameter to be changed is @code{M_TOP_PAD}. Argument
+@var{$arg1} is the requested value, @var{$arg2} is the previous value of
+this @code{malloc} parameter, and @var{$arg3} is nonzero if dynamic
+threshold adjustment was already disabled.
+@end deftp
+
+@deftp Probe memory_mallopt_mmap_threshold (int @var{$arg1}, int @var{$arg2}, int @var{$arg3})
+This probe is triggered shortly after the @code{memory_mallopt} probe,
+when the parameter to be changed is @code{M_MMAP_THRESHOLD}, and the
+requested value is in an acceptable range. Argument @var{$arg1} is the
+requested value, @var{$arg2} is the previous value of this @code{malloc}
+parameter, and @var{$arg3} is nonzero if dynamic threshold adjustment
+was already disabled.
+@end deftp
+
+@deftp Probe memory_mallopt_mmap_max (int @var{$arg1}, int @var{$arg2}, int @var{$arg3})
+This probe is triggered shortly after the @code{memory_mallopt} probe,
+when the parameter to be changed is @code{M_MMAP_MAX}. Argument
+@var{$arg1} is the requested value, @var{$arg2} is the previous value of
+this @code{malloc} parameter, and @var{$arg3} is nonzero if dynamic
+threshold adjustment was already disabled.
+@end deftp
+
+@deftp Probe memory_mallopt_check_action (int @var{$arg1}, int @var{$arg2})
+This probe is triggered shortly after the @code{memory_mallopt} probe,
+when the parameter to be changed is @code{M_CHECK_ACTION}. Argument
+@var{$arg1} is the requested value, and @var{$arg2} is the previous
+value of this @code{malloc} parameter.
+@end deftp
+
+@deftp Probe memory_mallopt_perturb (int @var{$arg1}, int @var{$arg2})
+This probe is triggered shortly after the @code{memory_mallopt} probe,
+when the parameter to be changed is @code{M_PERTURB}. Argument
+@var{$arg1} is the requested value, and @var{$arg2} is the previous
+value of this @code{malloc} parameter.
+@end deftp
+
+@deftp Probe memory_mallopt_arena_test (int @var{$arg1}, int @var{$arg2})
+This probe is triggered shortly after the @code{memory_mallopt} probe,
+when the parameter to be changed is @code{M_ARENA_TEST}, and the
+requested value is in an acceptable range. Argument @var{$arg1} is the
+requested value, and @var{$arg2} is the previous value of this
+@code{malloc} parameter.
+@end deftp
+
+@deftp Probe memory_mallopt_arena_max (int @var{$arg1}, int @var{$arg2})
+This probe is triggered shortly after the @code{memory_mallopt} probe,
+when the parameter to be changed is @code{M_ARENA_MAX}, and the
+requested value is in an acceptable range. Argument @var{$arg1} is the
+requested value, and @var{$arg2} is the previous value of this
+@code{malloc} parameter.
+@end deftp
+
+@deftp Probe memory_mallopt_free_dyn_thresholds (int @var{$arg1}, int @var{$arg2})
+This probe is triggered when function @code{free} decides to adjust the
+dynamic brk/mmap thresholds. Argument @var{$arg1} and @var{$arg2} are
+the adjusted mmap and trim thresholds, respectively.
+@end deftp
+
+@node Mathematical Function Probes
+@section Mathematical Function Probes
+
+Some mathematical functions fall back to multiple precision arithmetic for
+some inputs to get last bit precision for their return values. This multiple
+precision fallback is much slower than the default algorithms and may have a
+significant impact on application performance. The systemtap probe markers
+described in this section may help you determine if your application calls
+mathematical functions with inputs that may result in multiple-precision
+arithmetic.
+
+Unless explicitly mentioned otherwise, a precision of 1 implies 24 bits of
+precision in the mantissa of the multiple precision number. Hence, a precision
+level of 32 implies 768 bits of precision in the mantissa.
+
+@deftp Probe slowexp_p6 (double @var{$arg1}, double @var{$arg2})
+This probe is hit when the @code{exp} function is called with an input that
+results in multiple precision computation with precision 6. Argument
+@var{$arg1} is the input value and @var{$arg2} is the computed output.
+@end deftp
+
+@deftp Probe slowexp_p32 (double @var{$arg1}, double @var{$arg2})
+This probe is hit when the @code{exp} function is called with an input that
+results in multiple precision computation with precision 32. Argument
+@var{$arg1} is the input value and @var{$arg2} is the computed output.
+@end deftp
+
+@deftp Probe slowpow_p10 (double @var{$arg1}, double @var{$arg2}, double @var{$arg3}, double @var{$arg4})
+This probe is hit when the @code{pow} function is called with inputs that
+result in multiple precision computation with precision 10. Arguments
+@var{$arg1} and @var{$arg2} are the input values, @code{$arg3} is the value
+computed in the fast phase of the algorithm and @code{$arg4} is the final
+accurate value.
+@end deftp
+
+@deftp Probe slowpow_p32 (double @var{$arg1}, double @var{$arg2}, double @var{$arg3}, double @var{$arg4})
+This probe is hit when the @code{pow} function is called with an input that
+results in multiple precision computation with precision 32. Arguments
+@var{$arg1} and @var{$arg2} are the input values, @code{$arg3} is the value
+computed in the fast phase of the algorithm and @code{$arg4} is the final
+accurate value.
+@end deftp
+
+@deftp Probe slowlog (int @var{$arg1}, double @var{$arg2}, double @var{$arg3})
+This probe is hit when the @code{log} function is called with an input that
+results in multiple precision computation. Argument @var{$arg1} is the
+precision with which the computation succeeded. Argument @var{$arg2} is the
+input and @var{$arg3} is the computed output.
+@end deftp
+
+@deftp Probe slowlog_inexact (int @var{$arg1}, double @var{$arg2}, double @var{$arg3})
+This probe is hit when the @code{log} function is called with an input that
+results in multiple precision computation and none of the multiple precision
+computations result in an accurate result. Argument @var{$arg1} is the maximum
+precision with which computations were performed. Argument @var{$arg2} is the
+input and @var{$arg3} is the computed output.
+@end deftp
+
+@deftp Probe slowatan2 (int @var{$arg1}, double @var{$arg2}, double @var{$arg3}, double @var{$arg4})
+This probe is hit when the @code{atan2} function is called with an input that
+results in multiple precision computation. Argument @var{$arg1} is the
+precision with which computation succeeded. Arguments @var{$arg2} and
+@var{$arg3} are inputs to the @code{atan2} function and @var{$arg4} is the
+computed result.
+@end deftp
+
+@deftp Probe slowatan2_inexact (int @var{$arg1}, double @var{$arg2}, double @var{$arg3}, double @var{$arg4})
+This probe is hit when the @code{atan} function is called with an input that
+results in multiple precision computation and none of the multiple precision
+computations result in an accurate result. Argument @var{$arg1} is the maximum
+precision with which computations were performed. Arguments @var{$arg2} and
+@var{$arg3} are inputs to the @code{atan2} function and @var{$arg4} is the
+computed result.
+@end deftp
+
+@deftp Probe slowatan (int @var{$arg1}, double @var{$arg2}, double @var{$arg3})
+This probe is hit when the @code{atan} function is called with an input that
+results in multiple precision computation. Argument @var{$arg1} is the
+precision with which computation succeeded. Argument @var{$arg2} is the
+input to the @code{atan} function and @var{$arg3} is the computed result.
+@end deftp
+
+@deftp Probe slowatan_inexact (int @var{$arg1}, double @var{$arg2}, double @var{$arg3})
+This probe is hit when the @code{atan} function is called with an input that
+results in multiple precision computation and none of the multiple precision
+computations result in an accurate result. Argument @var{$arg1} is the maximum
+precision with which computations were performed. Argument @var{$arg2} is the
+input to the @code{atan} function and @var{$arg3} is the computed result.
+@end deftp
+
+@deftp Probe slowtan (double @var{$arg1}, double @var{$arg2})
+This probe is hit when the @code{tan} function is called with an input that
+results in multiple precision computation with precision 32. Argument
+@var{$arg1} is the input to the function and @var{$arg2} is the computed
+result.
+@end deftp
+
+@deftp Probe slowasin (double @var{$arg1}, double @var{$arg2})
+This probe is hit when the @code{asin} function is called with an input that
+results in multiple precision computation with precision 32. Argument
+@var{$arg1} is the input to the function and @var{$arg2} is the computed
+result.
+@end deftp
+
+@deftp Probe slowacos (double @var{$arg1}, double @var{$arg2})
+This probe is hit when the @code{acos} function is called with an input that
+results in multiple precision computation with precision 32. Argument
+@var{$arg1} is the input to the function and @var{$arg2} is the computed
+result.
+@end deftp
+
+@deftp Probe slowsin (double @var{$arg1}, double @var{$arg2})
+This probe is hit when the @code{sin} function is called with an input that
+results in multiple precision computation with precision 32. Argument
+@var{$arg1} is the input to the function and @var{$arg2} is the computed
+result.
+@end deftp
+
+@deftp Probe slowcos (double @var{$arg1}, double @var{$arg2})
+This probe is hit when the @code{cos} function is called with an input that
+results in multiple precision computation with precision 32. Argument
+@var{$arg1} is the input to the function and @var{$arg2} is the computed
+result.
+@end deftp
+
+@deftp Probe slowsin_dx (double @var{$arg1}, double @var{$arg2}, double @var{$arg3})
+This probe is hit when the @code{sin} function is called with an input that
+results in multiple precision computation with precision 32. Argument
+@var{$arg1} is the input to the function, @var{$arg2} is the error bound of
+@var{$arg1} and @var{$arg3} is the computed result.
+@end deftp
+
+@deftp Probe slowcos_dx (double @var{$arg1}, double @var{$arg2}, double @var{$arg3})
+This probe is hit when the @code{cos} function is called with an input that
+results in multiple precision computation with precision 32. Argument
+@var{$arg1} is the input to the function, @var{$arg2} is the error bound of
+@var{$arg1} and @var{$arg3} is the computed result.
+@end deftp
diff --git a/manual/socket.texi b/manual/socket.texi
index e187402abd..4c7e623b29 100644
--- a/manual/socket.texi
+++ b/manual/socket.texi
@@ -1290,37 +1290,42 @@ pointer and the size of the buffer in the @var{buf} and @var{buflen}
parameters.
A pointer to the buffer, in which the result is stored, is available in
-@code{*@var{result}} after the function call successfully returned. If
-an error occurs or if no entry is found, the pointer @code{*@var{result}}
-is a null pointer. Success is signalled by a zero return value. If the
-function failed the return value is an error number. In addition to the
-errors defined for @code{gethostbyname} it can also be @code{ERANGE}.
-In this case the call should be repeated with a larger buffer.
-Additional error information is not stored in the global variable
-@code{h_errno} but instead in the object pointed to by @var{h_errnop}.
+@code{*@var{result}} after the function call successfully returned. The
+buffer passed as the @var{buf} parameter can be freed only once the caller
+has finished with the result hostent struct, or has copied it including all
+the other memory that it points to. If an error occurs or if no entry is
+found, the pointer @code{*@var{result}} is a null pointer. Success is
+signalled by a zero return value. If the function failed the return value
+is an error number. In addition to the errors defined for
+@code{gethostbyname} it can also be @code{ERANGE}. In this case the call
+should be repeated with a larger buffer. Additional error information is
+not stored in the global variable @code{h_errno} but instead in the object
+pointed to by @var{h_errnop}.
Here's a small example:
@smallexample
struct hostent *
gethostname (char *host)
@{
- struct hostent hostbuf, *hp;
+ struct hostent *hostbuf, *hp;
size_t hstbuflen;
char *tmphstbuf;
int res;
int herr;
+ hostbuf = malloc (sizeof (struct hostent));
hstbuflen = 1024;
- /* Allocate buffer, remember to free it to avoid memory leakage. */
tmphstbuf = malloc (hstbuflen);
- while ((res = gethostbyname_r (host, &hostbuf, tmphstbuf, hstbuflen,
+ while ((res = gethostbyname_r (host, hostbuf, tmphstbuf, hstbuflen,
&hp, &herr)) == ERANGE)
@{
/* Enlarge the buffer. */
hstbuflen *= 2;
tmphstbuf = realloc (tmphstbuf, hstbuflen);
@}
+
+ free (tmphstbuf);
/* Check for errors. */
if (res || hp == NULL)
return NULL;
diff --git a/manual/startup.texi b/manual/startup.texi
index a2777141c2..edd1de47be 100644
--- a/manual/startup.texi
+++ b/manual/startup.texi
@@ -625,7 +625,8 @@ basis there may be information that is not available any other way.
This function is used to inquire about the entries in the auxiliary
vector. The @var{type} argument should be one of the @samp{AT_} symbols
defined in @file{elf.h}. If a matching entry is found, the value is
-returned; if the entry is not found, zero is returned.
+returned; if the entry is not found, zero is returned and @code{errno} is
+set to @code{ENOENT}.
@end deftypefun
For some platforms, the key @code{AT_HWCAP} is the easiest way to inquire
diff --git a/manual/string.texi b/manual/string.texi
index 2a164a9523..1e45d9ddbc 100644
--- a/manual/string.texi
+++ b/manual/string.texi
@@ -955,8 +955,8 @@ The @code{strncat} function could be implemented like this:
char *
strncat (char *to, const char *from, size_t size)
@{
- to[strlen (to) + size] = '\0';
- strncpy (to + strlen (to), from, size);
+ memcpy (to + strlen (to), from, strnlen (from, size));
+ to[strlen (to) + strnlen (from, size)] = '\0';
return to;
@}
@end group
@@ -982,8 +982,8 @@ wchar_t *
wcsncat (wchar_t *restrict wto, const wchar_t *restrict wfrom,
size_t size)
@{
- wto[wcslen (to) + size] = L'\0';
- wcsncpy (wto + wcslen (wto), wfrom, size);
+ memcpy (wto + wcslen (wto), wfrom, wcsnlen (wfrom, size) * sizeof (wchar_t));
+ wto[wcslen (to) + wcsnlen (wfrom, size)] = '\0';
return wto;
@}
@end group
@@ -1370,7 +1370,7 @@ int
compare_elements (const void *v1, const void *v2)
@{
char * const *p1 = v1;
- char * const *p1 = v2;
+ char * const *p2 = v2;
return strcoll (*p1, *p2);
@}
diff --git a/manual/texinfo.tex b/manual/texinfo.tex
index 332943d9e6..a06709bedc 100644
--- a/manual/texinfo.tex
+++ b/manual/texinfo.tex
@@ -3,7 +3,7 @@
% Load plain if necessary, i.e., if running under initex.
\expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
%
-\def\texinfoversion{2013-06-21.17}
+\def\texinfoversion{2013-11-26.10}
%
% Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
% 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -281,9 +281,9 @@
\toks6=\expandafter{\prevsectiondefs}%
\toks8=\expandafter{\lastcolordefs}%
\mark{%
- \the\toks0 \the\toks2
- \noexpand\or \the\toks4 \the\toks6
- \noexpand\else \the\toks8
+ \the\toks0 \the\toks2 % 0: top marks (\last...)
+ \noexpand\or \the\toks4 \the\toks6 % 1: bottom marks (default, \prev...)
+ \noexpand\else \the\toks8 % 2: color marks
}%
}
% \topmark doesn't work for the very first chapter (after the title
@@ -322,10 +322,13 @@
%
% Do this outside of the \shipout so @code etc. will be expanded in
% the headline as they should be, not taken literally (outputting ''code).
+ \def\commmonheadfootline{\let\hsize=\pagewidth \texinfochars}
+ %
\ifodd\pageno \getoddheadingmarks \else \getevenheadingmarks \fi
- \setbox\headlinebox = \vbox{\let\hsize=\pagewidth \makeheadline}%
+ \global\setbox\headlinebox = \vbox{\commmonheadfootline \makeheadline}%
+ %
\ifodd\pageno \getoddfootingmarks \else \getevenfootingmarks \fi
- \setbox\footlinebox = \vbox{\let\hsize=\pagewidth \makefootline}%
+ \global\setbox\footlinebox = \vbox{\commmonheadfootline \makefootline}%
%
{%
% Have to do this stuff outside the \shipout because we want it to
@@ -1138,7 +1141,9 @@ output) for that.)}
% Color manipulation macros based on pdfcolor.tex,
% except using rgb instead of cmyk; the latter is said to render as a
% very dark gray on-screen and a very dark halftone in print, instead
- % of actual black.
+ % of actual black. The dark red here is dark enough to print on paper as
+ % nearly black, but still distinguishable for online viewing. We use
+ % black by default, though.
\def\rgbDarkRed{0.50 0.09 0.12}
\def\rgbBlack{0 0 0}
%
@@ -1248,10 +1253,9 @@ output) for that.)}
% used to mark target names; must be expandable.
\def\pdfmkpgn#1{#1}
%
- % by default, use a color that is dark enough to print on paper as
- % nearly black, but still distinguishable for online viewing.
- \def\urlcolor{\rgbDarkRed}
- \def\linkcolor{\rgbDarkRed}
+ % by default, use black for everything.
+ \def\urlcolor{\rgbBlack}
+ \def\linkcolor{\rgbBlack}
\def\endlink{\setcolor{\maincolor}\pdfendlink}
%
% Adding outlines to PDF; macros for calculating structure of outlines
@@ -2377,8 +2381,10 @@ end
\ifx\next,%
\else\ifx\next-%
\else\ifx\next.%
+ \else\ifx\next\.%
+ \else\ifx\next\comma%
\else\ptexslash
- \fi\fi\fi
+ \fi\fi\fi\fi\fi
\aftersmartic
}
@@ -2519,7 +2525,9 @@ end
\ifx\codedashprev\codedash
\else \discretionary{}{}{}\fi
\fi
- \global\let\codedashprev=\next
+ % we need the space after the = for the case when \next itself is a
+ % space token; it would get swallowed otherwise. As in @code{- a}.
+ \global\let\codedashprev= \next
}
}
\def\normaldash{-}
@@ -2571,33 +2579,17 @@ end
% second argument specifying the text to display and an optional third
% arg as text to display instead of (rather than in addition to) the url
% itself. First (mandatory) arg is the url.
-% (This \urefnobreak definition isn't used now, leaving it for a while
-% for comparison.)
-\def\urefnobreak#1{\dourefnobreak #1,,,\finish}
-\def\dourefnobreak#1,#2,#3,#4\finish{\begingroup
- \unsepspaces
- \pdfurl{#1}%
- \setbox0 = \hbox{\ignorespaces #3}%
- \ifdim\wd0 > 0pt
- \unhbox0 % third arg given, show only that
- \else
- \setbox0 = \hbox{\ignorespaces #2}%
- \ifdim\wd0 > 0pt
- \ifpdf
- \unhbox0 % PDF: 2nd arg given, show only it
- \else
- \unhbox0\ (\code{#1})% DVI: 2nd arg given, show both it and url
- \fi
- \else
- \code{#1}% only url given, so show it
- \fi
- \fi
- \endlink
-\endgroup}
-% This \urefbreak definition is the active one.
+% secret option to allow changing PDF output to show only the second
+% arg (if given), and not the url (which is then just the link target).
+\newif\ifurefurlonlylink
+
+% The main macro is \urefbreak, which allows breaking at expected
+% places within the url. (There used to be another version, which
+% didn't support automatic breaking.)
\def\urefbreak{\begingroup \urefcatcodes \dourefbreak}
\let\uref=\urefbreak
+%
\def\dourefbreak#1{\urefbreakfinish #1,,,\finish}
\def\urefbreakfinish#1,#2,#3,#4\finish{% doesn't work in @example
\unsepspaces
@@ -2606,12 +2598,19 @@ end
\ifdim\wd0 > 0pt
\unhbox0 % third arg given, show only that
\else
- \setbox0 = \hbox{\ignorespaces #2}%
+ \setbox0 = \hbox{\ignorespaces #2}% look for second arg
\ifdim\wd0 > 0pt
\ifpdf
- \unhbox0 % PDF: 2nd arg given, show only it
+ \ifurefurlonlylink
+ % PDF plus option to not display url, show just arg
+ \unhbox0
+ \else
+ % PDF, normally display both arg and url for consistency,
+ % visibility, if the pdf is eventually used to print, etc.
+ \unhbox0\ (\urefcode{#1})%
+ \fi
\else
- \unhbox0\ (\urefcode{#1})% DVI: 2nd arg given, show both it and url
+ \unhbox0\ (\urefcode{#1})% DVI, always show arg and url
\fi
\else
\urefcode{#1}% only url given, so show it
@@ -2887,6 +2886,15 @@ end
\def\inlinefmtname{#1}%
\ifx\inlinefmtname\outfmtnametex \ignorespaces #2\fi
}
+%
+% @inlinefmtifelse{FMTNAME,THEN-TEXT,ELSE-TEXT} expands THEN-TEXT if
+% FMTNAME is tex, else ELSE-TEXT.
+\long\def\inlinefmtifelse#1{\doinlinefmtifelse #1,,,\finish}
+\long\def\doinlinefmtifelse#1,#2,#3,#4,\finish{%
+ \def\inlinefmtname{#1}%
+ \ifx\inlinefmtname\outfmtnametex \ignorespaces #2\else \ignorespaces #3\fi
+}
+%
% For raw, must switch into @tex before parsing the argument, to avoid
% setting catcodes prematurely. Doing it this way means that, for
% example, @inlineraw{html, foo{bar} gets a parse error instead of being
@@ -2903,6 +2911,23 @@ end
\endgroup % close group opened by \tex.
}
+% @inlineifset{VAR, TEXT} expands TEXT if VAR is @set.
+%
+\long\def\inlineifset#1{\doinlineifset #1,\finish}
+\long\def\doinlineifset#1,#2,\finish{%
+ \def\inlinevarname{#1}%
+ \expandafter\ifx\csname SET\inlinevarname\endcsname\relax
+ \else\ignorespaces#2\fi
+}
+
+% @inlineifclear{VAR, TEXT} expands TEXT if VAR is not @set.
+%
+\long\def\inlineifclear#1{\doinlineifclear #1,\finish}
+\long\def\doinlineifclear#1,#2,\finish{%
+ \def\inlinevarname{#1}%
+ \expandafter\ifx\csname SET\inlinevarname\endcsname\relax \ignorespaces#2\fi
+}
+
\message{glyphs,}
% and logos.
@@ -3658,7 +3683,7 @@ end
\parskip=\smallskipamount
\ifdim\parskip=0pt \parskip=2pt \fi
%
- % Try typesetting the item mark that if the document erroneously says
+ % Try typesetting the item mark so that if the document erroneously says
% something like @itemize @samp (intending @table), there's an error
% right away at the @itemize. It's not the best error message in the
% world, but it's better than leaving it to the @item. This means if
@@ -4198,7 +4223,7 @@ end
\def\value{\begingroup\makevalueexpandable\valuexxx}
\def\valuexxx#1{\expandablevalue{#1}\endgroup}
{
- \catcode`\- = \active \catcode`\_ = \active
+ \catcode`\-=\active \catcode`\_=\active
%
\gdef\makevalueexpandable{%
\let\value = \expandablevalue
@@ -4219,6 +4244,11 @@ end
% it will fail (although perhaps we could fix that with sufficient work
% to do a one-level expansion on the result, instead of complete).
%
+% Unfortunately, this has the consequence that when _ is in the *value*
+% of an @set, it does not print properly in the roman fonts (get the cmr
+% dot accent at position 126 instead). No fix comes to mind, and it's
+% been this way since 2003 or earlier, so just ignore it.
+%
\def\expandablevalue#1{%
\expandafter\ifx\csname SET#1\endcsname\relax
{[No value for ``#1'']}%
@@ -5905,7 +5935,7 @@ end
%
% Now the second mark, after the heading break. No break points
% between here and the heading.
- \let\prevsectiondefs=\lastsectiondefs
+ \global\let\prevsectiondefs=\lastsectiondefs
\domark
%
% Only insert the space after the number if we have a section number.
@@ -6272,8 +6302,8 @@ end
\catcode `\|=\other
\catcode `\<=\other
\catcode `\>=\other
- \catcode`\`=\other
- \catcode`\'=\other
+ \catcode `\`=\other
+ \catcode `\'=\other
\escapechar=`\\
%
% ' is active in math mode (mathcode"8000). So reset it, and all our
@@ -6297,7 +6327,7 @@ end
\let\/=\ptexslash
\let\*=\ptexstar
\let\t=\ptext
- \expandafter \let\csname top\endcsname=\ptextop % outer
+ \expandafter \let\csname top\endcsname=\ptextop % we've made it outer
\let\frenchspacing=\plainfrenchspacing
%
\def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}%
@@ -9940,11 +9970,9 @@ directory should work if nowhere else does.}
\catcode`\"=\active
\def\activedoublequote{{\tt\char34}}
\let"=\activedoublequote
-\catcode`\~=\active
-\def~{{\tt\char126}}
+\catcode`\~=\active \def\activetilde{{\tt\char126}} \let~ = \activetilde
\chardef\hat=`\^
-\catcode`\^=\active
-\def^{{\tt \hat}}
+\catcode`\^=\active \def\activehat{{\tt \hat}} \let^ = \activehat
\catcode`\_=\active
\def_{\ifusingtt\normalunderscore\_}
@@ -9954,16 +9982,26 @@ directory should work if nowhere else does.}
\catcode`\|=\active
\def|{{\tt\char124}}
+
\chardef \less=`\<
-\catcode`\<=\active
-\def<{{\tt \less}}
+\catcode`\<=\active \def\activeless{{\tt \less}}\let< = \activeless
\chardef \gtr=`\>
-\catcode`\>=\active
-\def>{{\tt \gtr}}
-\catcode`\+=\active
-\def+{{\tt \char 43}}
-\catcode`\$=\active
-\def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+\catcode`\>=\active \def\activegtr{{\tt \gtr}}\let> = \activegtr
+\catcode`\+=\active \def+{{\tt \char 43}}
+\catcode`\$=\active \def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix
+
+% used for headline/footline in the output routine, in case the page
+% breaks in the middle of an @tex block.
+\def\texinfochars{%
+ \let< = \activeless
+ \let> = \activegtr
+ \let~ = \activetilde
+ \let^ = \activehat
+ \markupsetuplqdefault \markupsetuprqdefault
+ \let\b = \strong
+ \let\i = \smartitalic
+ % in principle, all other definitions in \tex have to be undone too.
+}
% If a .fmt file is being used, characters that might appear in a file
% name cannot be active until we have parsed the command line.
diff --git a/manual/threads.texi b/manual/threads.texi
index a23ac261ef..9a5ef6a987 100644
--- a/manual/threads.texi
+++ b/manual/threads.texi
@@ -1,5 +1,5 @@
@node POSIX Threads
-@c @node POSIX Threads, , Cryptographic Functions, Top
+@c @node POSIX Threads, Internal Probes, Cryptographic Functions, Top
@chapter POSIX Threads
@c %MENU% POSIX Threads
@cindex pthreads
@@ -69,7 +69,7 @@ function returns @math{0} on success and a non-zero error code on
failure.
@end deftypefun
-@deftypefun int pthread_getattr_default_np (pthread_attr_t *@var{attr})
+@deftypefun int pthread_setattr_default_np (pthread_attr_t *@var{attr})
Set the default attribute values to match the values in @var{attr}. The
function returns @math{0} on success and a non-zero error code on failure.
The following error codes are defined for this function:
diff --git a/manual/time.texi b/manual/time.texi
index ff31e284fd..e7e8647ee2 100644
--- a/manual/time.texi
+++ b/manual/time.texi
@@ -687,9 +687,8 @@ The return value is the null pointer if @var{time} cannot be represented
as a broken-down time; typically this is because the year cannot fit into
an @code{int}.
-Calling @code{localtime} has one other effect: it sets the variable
-@code{tzname} with information about the current time zone. @xref{Time
-Zone Functions}.
+Calling @code{localtime} also sets the current time zone as if
+@code{tzset} were called. @xref{Time Zone Functions}.
@end deftypefun
Using the @code{localtime} function is a big problem in multi-threaded
@@ -739,25 +738,28 @@ object the result was written into, i.e., it returns @var{resultp}.
@comment time.h
@comment ISO
@deftypefun time_t mktime (struct tm *@var{brokentime})
-The @code{mktime} function is used to convert a broken-down time structure
-to a simple time representation. It also ``normalizes'' the contents of
-the broken-down time structure, by filling in the day of week and day of
-year based on the other date and time components.
+The @code{mktime} function converts a broken-down time structure to a
+simple time representation. It also normalizes the contents of the
+broken-down time structure, and fills in some components based on the
+values of the others.
The @code{mktime} function ignores the specified contents of the
-@code{tm_wday} and @code{tm_yday} members of the broken-down time
+@code{tm_wday}, @code{tm_yday}, @code{tm_gmtoff}, and @code{tm_zone}
+members of the broken-down time
structure. It uses the values of the other components to determine the
calendar time; it's permissible for these components to have
unnormalized values outside their normal ranges. The last thing that
@code{mktime} does is adjust the components of the @var{brokentime}
-structure (including the @code{tm_wday} and @code{tm_yday}).
+structure, including the members that were initally ignored.
If the specified broken-down time cannot be represented as a simple time,
@code{mktime} returns a value of @code{(time_t)(-1)} and does not modify
the contents of @var{brokentime}.
-Calling @code{mktime} also sets the variable @code{tzname} with
-information about the current time zone. @xref{Time Zone Functions}.
+Calling @code{mktime} also sets the current time zone as if
+@code{tzset} were called; @code{mktime} uses this information instead
+of @var{brokentime}'s initial @code{tm_gmtoff} and @code{tm_zone}
+members. @xref{Time Zone Functions}.
@end deftypefun
@comment time.h
@@ -1053,8 +1055,8 @@ rather than in broken-down local time format. It is equivalent to
asctime (localtime (@var{time}))
@end smallexample
-@code{ctime} sets the variable @code{tzname}, because @code{localtime}
-does so. @xref{Time Zone Functions}.
+Calling @code{ctime} also sets the current time zone as if
+@code{tzset} were called. @xref{Time Zone Functions}.
@end deftypefun
@comment time.h
@@ -1081,7 +1083,8 @@ This function is similar to the @code{sprintf} function (@pxref{Formatted
Input}), but the conversion specifications that can appear in the format
template @var{template} are specialized for printing components of the date
and time @var{brokentime} according to the locale currently specified for
-time conversion (@pxref{Locales}).
+time conversion (@pxref{Locales}) and the current time zone
+(@pxref{Time Zone Functions}).
Ordinary characters appearing in the @var{template} are copied to the
output string @var{s}; this can include multibyte character sequences.
@@ -1392,9 +1395,10 @@ if (len == 0 && buf[0] != '\0')
If @var{s} is a null pointer, @code{strftime} does not actually write
anything, but instead returns the number of characters it would have written.
-According to POSIX.1 every call to @code{strftime} implies a call to
-@code{tzset}. So the contents of the environment variable @code{TZ}
-is examined before any output is produced.
+Calling @code{strftime} also sets the current time zone as if
+@code{tzset} were called; @code{strftime} uses this information
+instead of @var{brokentime}'s @code{tm_gmtoff} and @code{tm_zone}
+members. @xref{Time Zone Functions}.
For an example of @code{strftime}, see @ref{Time Functions Example}.
@end deftypefun
@@ -2037,7 +2041,7 @@ to get a Coordinated Universal Time value. It has syntax like
[@code{+}|@code{-}]@var{hh}[@code{:}@var{mm}[@code{:}@var{ss}]]. This
is positive if the local time zone is west of the Prime Meridian and
negative if it is east. The hour must be between @code{0} and
-@code{23}, and the minute and seconds between @code{0} and @code{59}.
+@code{24}, and the minute and seconds between @code{0} and @code{59}.
For example, here is how we would specify Eastern Standard Time, but
without any Daylight Saving Time alternative:
@@ -2082,17 +2086,51 @@ between @code{1} and @code{12}.
The @var{time} fields specify when, in the local time currently in
effect, the change to the other time occurs. If omitted, the default is
-@code{02:00:00}.
-
-For example, here is how you would specify the Eastern time zone in the
-United States, including the appropriate Daylight Saving Time and its dates
-of applicability. The normal offset from UTC is 5 hours; since this is
+@code{02:00:00}. The hours part of the time fields can range from
+@minus{}167 through 167; this is an extension to POSIX.1, which allows
+only the range 0 through 24.
+
+Here are some example @code{TZ} values, including the appropriate
+Daylight Saving Time and its dates of applicability. In North
+American Eastern Standard Time (EST) and Eastern Daylight Time (EDT),
+the normal offset from UTC is 5 hours; since this is
west of the prime meridian, the sign is positive. Summer time begins on
-the first Sunday in April at 2:00am, and ends on the last Sunday in October
+March's second Sunday at 2:00am, and ends on November's first Sunday
at 2:00am.
@smallexample
-EST+5EDT,M4.1.0/2,M10.5.0/2
+EST+5EDT,M3.2.0/2,M11.1.0/2
+@end smallexample
+
+Israel Standard Time (IST) and Israel Daylight Time (IDT) are 2 hours
+ahead of the prime meridian in winter, springing forward an hour on
+March's fourth Tuesday at 26:00 (i.e., 02:00 on the first Friday on or
+after March 23), and falling back on October's last Sunday at 02:00.
+
+@smallexample
+IST-2IDT,M3.4.4/26,M10.5.0
+@end smallexample
+
+Western Argentina Summer Time (WARST) is 3 hours behind the prime
+meridian all year. There is a dummy fall-back transition on December
+31 at 25:00 daylight saving time (i.e., 24:00 standard time,
+equivalent to January 1 at 00:00 standard time), and a simultaneous
+spring-forward transition on January 1 at 00:00 standard time, so
+daylight saving time is in effect all year and the initial @code{WART}
+is a placeholder.
+
+@smallexample
+WART4WARST,J1/0,J365/25
+@end smallexample
+
+Western Greenland Time (WGT) and Western Greenland Summer Time (WGST)
+are 3 hours behind UTC in the winter. Its clocks follow the European
+Union rules of springing forward by one hour on March's last Sunday at
+01:00 UTC (@minus{}02:00 local time) and falling back on October's
+last Sunday at 01:00 UTC (@minus{}01:00 local time).
+
+@smallexample
+WGT3WGST,M3.5.0/-2,M10.5.0/-1
@end smallexample
The schedule of Daylight Saving Time in any particular jurisdiction has
diff --git a/math/Makefile b/math/Makefile
index 3ed78fc9c3..d178789fb5 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -87,9 +87,11 @@ long-c-yes = $(calls:=l)
# Rules for the test suite.
tests = test-matherr test-fenv atest-exp atest-sincos atest-exp2 basic-test \
- test-misc test-fpucw tst-definitions test-tgmath test-tgmath-ret \
- bug-nextafter bug-nexttoward bug-tgmath1 test-tgmath-int \
- test-tgmath2 test-powl tst-CMPLX tst-CMPLX2 test-snan
+ test-misc test-fpucw test-fpucw-ieee tst-definitions test-tgmath \
+ test-tgmath-ret bug-nextafter bug-nexttoward bug-tgmath1 \
+ test-tgmath-int test-tgmath2 test-powl tst-CMPLX tst-CMPLX2 test-snan \
+ test-fenv-tls $(tests-static)
+tests-static = test-fpucw-static test-fpucw-ieee-static
# We do the `long double' tests only if this data type is available and
# distinct from `double'.
test-longdouble-yes = test-ldouble test-ildoubl
@@ -110,7 +112,8 @@ ulps-file = $(firstword $(wildcard $(sysdirs:%=%/libm-test-ulps)))
$(addprefix $(objpfx), $(libm-tests-generated)): $(objpfx)libm-test.stmp
-$(objpfx)libm-test.stmp: $(ulps-file) libm-test.inc gen-libm-test.pl
+$(objpfx)libm-test.stmp: $(ulps-file) libm-test.inc gen-libm-test.pl \
+ auto-libm-test-out
$(make-target-directory)
$(PERL) gen-libm-test.pl -u $< -o "$(objpfx)"
@echo > $@
@@ -217,7 +220,8 @@ $(objpfx)libieee.a: $(objpfx)ieee-math.o
$(LN_S) $(<F) $(@F)
ifeq ($(build-shared),yes)
-$(addprefix $(objpfx),$(tests)): $(objpfx)libm.so$(libm.so-version)
+$(addprefix $(objpfx),$(filter-out $(tests-static),$(tests))): $(objpfx)libm.so$(libm.so-version)
+$(addprefix $(objpfx),$(tests-static)): $(objpfx)libm.a
else
$(addprefix $(objpfx),$(tests)): $(objpfx)libm.a
endif
@@ -229,3 +233,4 @@ gmp-objs = $(patsubst %,$(common-objpfx)stdlib/%.o,\
$(objpfx)atest-exp: $(gmp-objs)
$(objpfx)atest-sincos: $(gmp-objs)
$(objpfx)atest-exp2: $(gmp-objs)
+$(objpfx)test-fenv-tls: $(common-objpfx)nptl/libpthread.so
diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
new file mode 100644
index 0000000000..383fd018b4
--- /dev/null
+++ b/math/auto-libm-test-in
@@ -0,0 +1,1580 @@
+# libm test inputs for gen-auto-libm-tests.c.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
+# This file is part of the GNU C Library.
+#
+# The GNU C Library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License, or (at your option) any later version.
+#
+# The GNU C Library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with the GNU C Library; if not, see
+# <http://www.gnu.org/licenses/>. */
+
+acos 0
+acos -0
+acos 1
+acos -1
+acos 0.5
+acos -0.5
+acos 0.75
+acos 2e-17
+acos 0.0625
+acos 0x0.ffffffp0
+acos -0x0.ffffffp0
+acos 0x0.ffffffff8p0
+acos -0x0.ffffffff8p0
+acos 0x0.ffffffffffffp0
+acos -0x0.ffffffffffffp0
+acos 0x0.ffffffffffffffffp0
+acos -0x0.ffffffffffffffffp0
+
+acosh 1
+acosh 7
+
+asin 0
+asin -0
+asin 0.5
+asin -0.5
+asin 1.0
+asin -1.0
+asin 0.75
+asin 0x0.ffffffp0
+asin -0x0.ffffffp0
+asin 0x0.ffffffff8p0
+asin -0x0.ffffffff8p0
+asin 0x0.ffffffffffffp0
+asin -0x0.ffffffffffffp0
+asin 0x0.ffffffffffffffffp0
+asin -0x0.ffffffffffffffffp0
+
+asinh 0
+asinh -0
+asinh 0.75
+
+atan 0
+atan -0
+atan max
+atan -max
+atan 1
+atan -1
+atan 0.75
+# Bug 15319: underflow exception may be missing.
+atan 0x1p-100 missing-underflow
+atan 0x1p-600 missing-underflow
+atan 0x1p-10000 missing-underflow
+
+# atan2 (0,x) == 0 for x > 0.
+atan2 0 1
+# atan2 (-0,x) == -0 for x > 0.
+atan2 -0 1
+atan2 0 0
+atan2 -0 0
+# atan2 (+0,x) == +pi for x < 0.
+atan2 0 -1
+# atan2 (-0,x) == -pi for x < 0.
+atan2 -0 -1
+atan2 0 -0
+atan2 -0 -0
+# atan2 (y,+0) == pi/2 for y > 0.
+atan2 1 0
+# atan2 (y,-0) == pi/2 for y > 0.
+atan2 1 -0
+# atan2 (y,+0) == -pi/2 for y < 0.
+atan2 -1 0
+# atan2 (y,-0) == -pi/2 for y < 0.
+atan2 -1 -0
+atan2 max max
+atan2 max min
+atan2 -max -min
+atan2 0.75 1
+atan2 -0.75 1.0
+atan2 0.75 -1.0
+atan2 -0.75 -1.0
+atan2 0.390625 .00029
+atan2 1.390625 0.9296875
+atan2 -0.00756827042671106339 -.001792735857538728036
+atan2 0x1.00000000000001p0 0x1.00000000000001p0
+
+atanh 0
+atanh -0
+atanh 0.75
+
+# cabs (x,y) == cabs (y,x).
+cabs 0.75 12.390625
+# cabs (x,y) == cabs (-x,y).
+cabs -12.390625 0.75
+# cabs (x,y) == cabs (-y,x).
+cabs -0.75 12.390625
+# cabs (x,y) == cabs (-x,-y).
+cabs -12.390625 -0.75
+# cabs (x,y) == cabs (-y,-x).
+cabs -0.75 -12.390625
+# cabs (x,0) == fabs (x).
+cabs -0.75 0
+cabs 0.75 0
+cabs -1.0 0
+cabs 1.0 0
+cabs -5.7e7 0
+cabs 5.7e7 0
+cabs 0.75 1.25
+
+# carg (x + i 0) == 0 for x > 0.
+carg 2.0 0
+# carg (x - i 0) == -0 for x > 0.
+carg 2.0 -0
+carg 0 0
+carg 0 -0
+# carg (x + i 0) == +pi for x < 0.
+carg -2.0 0
+# carg (x - i 0) == -pi for x < 0.
+carg -2.0 -0
+carg -0 0
+carg -0 -0
+# carg (+0 + i y) == pi/2 for y > 0.
+carg 0 2.0
+# carg (-0 + i y) == pi/2 for y > 0.
+carg -0 2.0
+# carg (+0 + i y) == -pi/2 for y < 0.
+carg 0 -2.0
+# carg (-0 + i y) == -pi/2 for y < 0.
+carg -0 -2.0
+
+cbrt 0.0
+cbrt -0
+cbrt -0.001
+cbrt 8
+cbrt -27.0
+cbrt 0.9921875
+cbrt 0.75
+cbrt 0x1p16383
+cbrt 0x1p-16383
+
+cos 0
+cos -0
+cos pi/3
+cos 2pi/3
+cos pi/2
+cos 0.75
+cos 0x1p65
+cos -0x1p65
+cos 0.80190127184058835
+cos 0x1.442f74p+15
+cos 1e22
+cos 0x1p1023
+cos 0x1p16383
+cos 0x1p+120
+cos 0x1p+127
+cos 0x1.fffff8p+127
+cos 0x1.fffffep+127
+cos 0x1p+50
+cos 0x1p+28
+cos 0x1.000000cf4a2a2p0
+cos 0x1.0000010b239a9p0
+cos 0x1.00000162a932bp0
+cos 0x1.000002d452a10p0
+cos 0x1.000005bc7d86dp0
+cos 1
+cos 2
+cos 3
+cos 4
+cos 5
+cos 6
+cos 7
+cos 8
+cos 9
+cos 10
+
+cosh 0
+cosh -0
+cosh 0.75
+cosh 709.8893558127259666434838436543941497802734375
+cosh -709.8893558127259666434838436543941497802734375
+cosh 22
+cosh 23
+cosh 24
+
+erf 0
+erf -0
+erf 0.125
+erf 0.75
+erf 1.25
+erf 2.0
+erf 4.125
+erf 27.0
+erf -27.0
+erf -0x1.fffffffffffff8p-2
+
+erfc 0.0
+erfc -0
+erfc 0.125
+erfc 0.75
+erfc 1.25
+erfc 2.0
+erfc 0x1.f7303cp+1
+erfc 4.125
+erfc 0x1.ffa002p+2
+erfc 0x1.ffffc8p+2
+erfc -0x1.fffffffffffff8p-2
+erfc 26.0
+erfc 27.0
+erfc 28.0
+erfc 0x1.ffff56789abcdef0123456789a8p+2
+erfc 100
+erfc 106
+erfc 106.5
+erfc 106.625
+erfc 107
+erfc 108
+erfc 1000
+erfc max
+
+exp 0
+exp -0
+exp 1
+exp 2
+exp 3
+exp 0.75
+exp 50.0
+exp 88.72269439697265625
+exp 709.75
+# Bug 16284: results on directed rounding may be incorrect.
+exp 1000.0 xfail-rounding:dbl-64
+exp 710 xfail-rounding:dbl-64
+exp -1234
+# Bug 16284: results on directed rounding may be incorrect.
+exp 1e5 xfail-rounding:dbl-64
+exp max xfail-rounding:dbl-64
+exp -7.4444006192138124e+02
+exp -0x1.75f113c30b1c8p+9
+exp -max
+
+exp10 0
+exp10 -0
+exp10 3
+exp10 -1
+exp10 36
+exp10 -36
+exp10 305
+exp10 -305
+exp10 4932
+exp10 -4932
+exp10 1e5
+exp10 -1e5
+exp10 1e6
+exp10 -1e6
+exp10 max
+exp10 -max
+exp10 0.75
+
+exp2 0
+exp2 -0
+exp2 10
+exp2 -1
+exp2 1e6
+exp2 -1e6
+exp2 max
+exp2 -max
+exp2 0.75
+exp2 100.5
+exp2 127
+exp2 -149
+exp2 1000.25
+exp2 1023
+exp2 -1074
+exp2 16383
+exp2 -16400
+
+expm1 0
+expm1 -0
+expm1 1
+expm1 0.75
+expm1 50.0
+expm1 127.0
+expm1 500.0
+expm1 11356.25
+expm1 -10.0
+expm1 -16.0
+expm1 -17.0
+expm1 -18.0
+expm1 -36.0
+expm1 -37.0
+expm1 -38.0
+expm1 -44.0
+expm1 -45.0
+expm1 -46.0
+expm1 -73.0
+expm1 -74.0
+expm1 -75.0
+expm1 -78.0
+expm1 -79.0
+expm1 -80.0
+expm1 -100.0
+expm1 -1000.0
+expm1 -10000.0
+expm1 -100000.0
+expm1 100000.0
+expm1 max
+expm1 -max
+expm1 0x1p-2
+expm1 -0x1p-2
+expm1 0x1p-10
+expm1 -0x1p-10
+expm1 0x1p-20
+expm1 -0x1p-20
+expm1 0x1p-29
+expm1 -0x1p-29
+expm1 0x1p-32
+expm1 -0x1p-32
+expm1 0x1p-50
+expm1 -0x1p-50
+expm1 0x1p-64
+expm1 -0x1p-64
+expm1 0x1p-100
+expm1 -0x1p-100
+
+hypot 0 0
+hypot 0 -0
+hypot -0 0
+hypot -0 -0
+# hypot (x,y) == hypot (+-x, +-y).
+hypot 0.7 12.4
+hypot -0.7 12.4
+hypot 0.7 -12.4
+hypot -0.7 -12.4
+hypot 12.4 0.7
+hypot -12.4 0.7
+hypot 12.4 -0.7
+hypot -12.4 -0.7
+# hypot (x,0) == fabs (x).
+hypot 0.75 0
+hypot -0.75 0
+hypot -5.7e7 0
+hypot 0.75 1.25
+hypot 1.0 0x1p-61
+hypot 0x1p+0 0x1.fp-129
+hypot 0x1.23456789abcdef0123456789ab8p-500 0x1.23456789abcdef0123456789ab8p-500
+hypot 0x3p125 0x4p125 no-test-inline:flt-32
+hypot 0x1.234566p-126 0x1.234566p-126 no-test-inline:flt-32
+hypot 0x3p1021 0x4p1021 no-test-inline:dbl-64
+hypot 0x1p+0 0x0.3ep-1022 no-test-inline:dbl-64
+hypot 0x3p16381 0x4p16381 no-test-inline
+hypot 0x1p-149 0x1p-149
+hypot 0x1p-1074 0x1p-1074
+hypot 0x1p-16445 0x1p-16445 no-test-inline
+hypot 0x1p-16494 0x1p-16494 no-test-inline
+hypot 0x0.fffffep-126 0x0.fp-127
+hypot 0x0.fffffep-126 0x0.fp-130
+hypot 0x0.fffffffffffffp-1022 0x0.fp-1023
+hypot 0x0.fffffffffffffp-1022 0x0.fp-1026
+hypot 0x0.ffffffp-16382 0x0.fp-16383 no-test-inline
+hypot 0x0.ffffffp-16382 0x0.fp-16386 no-test-inline
+hypot 0 min_subnorm no-test-inline
+
+j0 -1.0
+j0 0.0
+j0 0.125
+j0 0.75
+j0 1.0
+j0 1.5
+j0 2.0
+j0 8.0
+j0 10.0
+j0 4.0
+j0 -4.0
+j0 0x1.d7ce3ap+107
+j0 -0x1.001000001p+593
+j0 0x1p1023
+j0 0x1p16382
+j0 0x1p16383
+
+j1 -1.0
+j1 0.0
+j1 0.125
+j1 0.75
+j1 1.0
+j1 1.5
+j1 2.0
+j1 8.0
+j1 10.0
+j1 0x1.3ffp+74
+j1 0x1.ff00000000002p+840
+j1 0x1p1023
+j1 0x1p16382
+j1 0x1p16383
+
+# jn (0, x) == j0 (x).
+jn 0 -1.0
+jn 0 0.0
+jn 0 0.125
+jn 0 0.75
+jn 0 1.0
+jn 0 1.5
+jn 0 2.0
+jn 0 8.0
+jn 0 10.0
+jn 0 4.0
+jn 0 -4.0
+
+# jn (1, x) == j1 (x).
+jn 1 -1.0
+jn 1 0.0
+jn 1 0.125
+jn 1 0.75
+jn 1 1.0
+jn 1 1.5
+jn 1 2.0
+jn 1 8.0
+jn 1 10.0
+
+jn 3 -1.0
+jn 3 0.0
+jn 3 0.125
+jn 3 0.75
+jn 3 1.0
+jn 3 2.0
+jn 3 10.0
+
+jn 10 -1.0
+jn 10 0.0
+jn 10 0.125
+jn 10 0.75
+jn 10 1.0
+jn 10 2.0
+jn 10 10.0
+
+jn 2 2.4048255576957729
+jn 3 2.4048255576957729
+jn 4 2.4048255576957729
+jn 5 2.4048255576957729
+jn 6 2.4048255576957729
+jn 7 2.4048255576957729
+jn 8 2.4048255576957729
+jn 9 2.4048255576957729
+
+jn 2 0x1.ffff62p+99
+jn 2 0x1p127
+jn 2 0x1p1023
+jn 2 0x1p16383
+
+lgamma max
+lgamma 1
+lgamma 3
+lgamma 0.5
+lgamma -0.5
+lgamma 0.7
+lgamma 1.2
+lgamma 0x1p-5
+lgamma -0x1p-5
+lgamma 0x1p-10
+lgamma -0x1p-10
+lgamma 0x1p-15
+lgamma -0x1p-15
+lgamma 0x1p-20
+lgamma -0x1p-20
+lgamma 0x1p-25
+lgamma -0x1p-25
+lgamma 0x1p-30
+lgamma -0x1p-30
+lgamma 0x1p-40
+lgamma -0x1p-40
+lgamma 0x1p-50
+lgamma -0x1p-50
+lgamma 0x1p-60
+lgamma -0x1p-60
+lgamma 0x1p-64
+lgamma -0x1p-64
+lgamma 0x1p-70
+lgamma -0x1p-70
+lgamma 0x1p-100
+lgamma -0x1p-100
+lgamma 0x1p-126
+lgamma -0x1p-126
+lgamma 0x1p-149
+lgamma -0x1p-149
+lgamma 0x1p-200
+lgamma -0x1p-200
+lgamma 0x1p-500
+lgamma -0x1p-500
+lgamma 0x1p-1000
+lgamma -0x1p-1000
+lgamma 0x1p-1022
+lgamma -0x1p-1022
+lgamma 0x1p-1074
+lgamma -0x1p-1074
+lgamma 0x1p-5000
+lgamma -0x1p-5000
+lgamma 0x1p-10000
+lgamma -0x1p-10000
+lgamma 0x1p-16382
+lgamma -0x1p-16382
+lgamma 0x1p-16445
+lgamma -0x1p-16445
+lgamma 0x1p-16494
+lgamma -0x1p-16494
+
+log 1
+log e
+log 1/e
+log 2
+log 10
+log 0.75
+log min
+log min_subnorm
+
+log10 1
+log10 0.1
+log10 10.0
+log10 100.0
+log10 10000.0
+log10 e
+log10 0.75
+log10 min
+log10 min_subnorm
+
+log1p 0
+log1p -0
+log1p e-1
+log1p -0.25
+log1p -0.875
+# Bug 16339: underflow exception may be missing.
+log1p min missing-underflow
+log1p min_subnorm missing-underflow
+log1p -min missing-underflow
+log1p -min_subnorm missing-underflow
+
+log2 1
+log2 e
+log2 2.0
+log2 16.0
+log2 256.0
+log2 0.75
+log2 min
+log2 min_subnorm
+
+pow 0 0
+pow 0 -0
+pow -0 0
+pow -0 -0
+
+pow 10 0
+pow 10 -0
+pow -10 0
+pow -10 -0
+
+pow 1 1
+pow 1 -1
+pow 1 1.25
+pow 1 -1.25
+pow 1 0x1p62
+pow 1 0x1p63
+pow 1 0x1p64
+pow 1 0x1p72
+pow 1 min_subnorm
+pow 1 -min_subnorm
+
+# pow (x, +-0) == 1.
+pow 32.75 0
+pow 32.75 -0
+pow -32.75 0
+pow -32.75 -0
+pow 0x1p72 0
+pow 0x1p72 -0
+pow 0x1p-72 0
+pow 0x1p-72 -0
+
+pow 0x1p72 0x1p72
+pow 10 -0x1p72
+pow max max
+pow 10 -max
+
+pow 0 1
+pow 0 11
+
+pow -0 1
+pow -0 11
+
+pow 0 2
+pow 0 11.1
+
+pow -0 2
+pow -0 11.1
+
+# pow (+0, y) == +0 for y an odd integer > 0.
+pow 0.0 27
+pow 0.0 0xffffff
+pow 0.0 0x1.fffffffffffffp+52
+pow 0.0 0x1.fffffffffffffffep+63
+pow 0.0 0x1.ffffffffffffffffffffffffff8p+105
+pow 0.0 0x1.ffffffffffffffffffffffffffffp+112
+
+# pow (-0, y) == -0 for y an odd integer > 0.
+pow -0 27
+pow -0 0xffffff
+pow -0 0x1fffffe
+pow -0 0x1.fffffffffffffp+52
+pow -0 0x1.fffffffffffffp+53
+pow -0 0x1.fffffffffffffffep+63
+pow -0 0x1.fffffffffffffffep+64
+pow -0 0x1.ffffffffffffffffffffffffff8p+105
+pow -0 0x1.ffffffffffffffffffffffffff8p+106
+pow -0 0x1.ffffffffffffffffffffffffffffp+112
+pow -0 0x1.ffffffffffffffffffffffffffffp+113
+
+# pow (+0, y) == +0 for y > 0 and not an odd integer.
+pow 0.0 4
+pow 0.0 0x1p24
+pow 0.0 0x1p127
+pow 0.0 max
+pow 0.0 min_subnorm
+
+# pow (-0, y) == +0 for y > 0 and not an odd integer.
+pow -0 4
+pow -0 0x1p24
+pow -0 0x1p127
+pow -0 max
+pow -0 min_subnorm
+
+pow 16 0.25
+pow 0x1p64 0.125
+pow 2 4
+pow 256 8
+
+pow 0.75 1.25
+
+pow -7.49321e+133 -9.80818e+16
+
+pow -1.0 -0xffffff
+pow -1.0 -0x1fffffe
+pow -1.0 -0x1.fffffffffffffp+52
+pow -1.0 -0x1.fffffffffffffp+53
+pow -1.0 -0x1.fffffffffffffffep+63
+pow -1.0 -0x1.fffffffffffffffep+64
+pow -1.0 -0x1.ffffffffffffffffffffffffff8p+105
+pow -1.0 -0x1.ffffffffffffffffffffffffff8p+106
+pow -1.0 -0x1.ffffffffffffffffffffffffffffp+112
+pow -1.0 -0x1.ffffffffffffffffffffffffffffp+113
+pow -1.0 -max
+
+pow -1.0 0xffffff
+pow -1.0 0x1fffffe
+pow -1.0 0x1.fffffffffffffp+52
+pow -1.0 0x1.fffffffffffffp+53
+pow -1.0 0x1.fffffffffffffffep+63
+pow -1.0 0x1.fffffffffffffffep+64
+pow -1.0 0x1.ffffffffffffffffffffffffff8p+105
+pow -1.0 0x1.ffffffffffffffffffffffffff8p+106
+pow -1.0 0x1.ffffffffffffffffffffffffffffp+112
+pow -1.0 0x1.ffffffffffffffffffffffffffffp+113
+pow -1.0 max
+
+pow -2.0 126
+pow -2.0 127
+pow -2.0 -126
+pow -2.0 -127
+
+pow -2.0 -0xffffff
+pow -2.0 -0x1fffffe
+pow -2.0 -0x1.fffffffffffffp+52
+pow -2.0 -0x1.fffffffffffffp+53
+pow -2.0 -0x1.fffffffffffffffep+63
+pow -2.0 -0x1.fffffffffffffffep+64
+pow -2.0 -0x1.ffffffffffffffffffffffffff8p+105
+pow -2.0 -0x1.ffffffffffffffffffffffffff8p+106
+pow -2.0 -0x1.ffffffffffffffffffffffffffffp+112
+pow -2.0 -0x1.ffffffffffffffffffffffffffffp+113
+pow -2.0 -max
+
+pow -2.0 0xffffff
+pow -2.0 0x1fffffe
+pow -2.0 0x1.fffffffffffffp+52
+pow -2.0 0x1.fffffffffffffp+53
+pow -2.0 0x1.fffffffffffffffep+63
+pow -2.0 0x1.fffffffffffffffep+64
+pow -2.0 0x1.ffffffffffffffffffffffffff8p+105
+pow -2.0 0x1.ffffffffffffffffffffffffff8p+106
+pow -2.0 0x1.ffffffffffffffffffffffffffffp+112
+pow -2.0 0x1.ffffffffffffffffffffffffffffp+113
+pow -2.0 max
+
+pow -max -2
+pow -max -3
+pow -max 2
+pow -max 3
+
+pow -max -0xffffff
+pow -max -0x1fffffe
+pow -max -0x1.fffffffffffffp+52
+pow -max -0x1.fffffffffffffp+53
+pow -max -0x1.fffffffffffffffep+63
+pow -max -0x1.fffffffffffffffep+64
+pow -max -0x1.ffffffffffffffffffffffffff8p+105
+pow -max -0x1.ffffffffffffffffffffffffff8p+106
+pow -max -0x1.ffffffffffffffffffffffffffffp+112
+pow -max -0x1.ffffffffffffffffffffffffffffp+113
+pow -max -max
+
+pow -max 0xffffff
+pow -max 0x1fffffe
+pow -max 0x1.fffffffffffffp+52
+pow -max 0x1.fffffffffffffp+53
+pow -max 0x1.fffffffffffffffep+63
+pow -max 0x1.fffffffffffffffep+64
+pow -max 0x1.ffffffffffffffffffffffffff8p+105
+pow -max 0x1.ffffffffffffffffffffffffff8p+106
+pow -max 0x1.ffffffffffffffffffffffffffffp+112
+pow -max 0x1.ffffffffffffffffffffffffffffp+113
+pow -max max
+
+pow -0.5 126
+pow -0.5 127
+pow -0.5 -126
+pow -0.5 -127
+
+pow -0.5 -0xffffff
+pow -0.5 -0x1fffffe
+pow -0.5 -0x1.fffffffffffffp+52
+pow -0.5 -0x1.fffffffffffffp+53
+pow -0.5 -0x1.fffffffffffffffep+63
+pow -0.5 -0x1.fffffffffffffffep+64
+pow -0.5 -0x1.ffffffffffffffffffffffffff8p+105
+pow -0.5 -0x1.ffffffffffffffffffffffffff8p+106
+pow -0.5 -0x1.ffffffffffffffffffffffffffffp+112
+pow -0.5 -0x1.ffffffffffffffffffffffffffffp+113
+pow -0.5 -max
+
+pow -0.5 0xffffff
+pow -0.5 0x1fffffe
+pow -0.5 0x1.fffffffffffffp+52
+pow -0.5 0x1.fffffffffffffp+53
+pow -0.5 0x1.fffffffffffffffep+63
+pow -0.5 0x1.fffffffffffffffep+64
+pow -0.5 0x1.ffffffffffffffffffffffffff8p+105
+pow -0.5 0x1.ffffffffffffffffffffffffff8p+106
+pow -0.5 0x1.ffffffffffffffffffffffffffffp+112
+pow -0.5 0x1.ffffffffffffffffffffffffffffp+113
+pow -0.5 max
+
+pow -min -2
+pow -min -3
+pow -min 1
+pow -min 2
+pow -min 3
+
+pow -min -0xffffff
+pow -min -0x1fffffe
+pow -min -0x1.fffffffffffffp+52
+pow -min -0x1.fffffffffffffp+53
+pow -min -0x1.fffffffffffffffep+63
+pow -min -0x1.fffffffffffffffep+64
+pow -min -0x1.ffffffffffffffffffffffffff8p+105
+pow -min -0x1.ffffffffffffffffffffffffff8p+106
+pow -min -0x1.ffffffffffffffffffffffffffffp+112
+pow -min -0x1.ffffffffffffffffffffffffffffp+113
+pow -min -max
+
+pow -min 0xffffff
+pow -min 0x1fffffe
+pow -min 0x1.fffffffffffffp+52
+pow -min 0x1.fffffffffffffp+53
+pow -min 0x1.fffffffffffffffep+63
+pow -min 0x1.fffffffffffffffep+64
+pow -min 0x1.ffffffffffffffffffffffffff8p+105
+pow -min 0x1.ffffffffffffffffffffffffff8p+106
+pow -min 0x1.ffffffffffffffffffffffffffffp+112
+pow -min 0x1.ffffffffffffffffffffffffffffp+113
+pow -min max
+
+pow 0x0.ffffffp0 10
+pow 0x0.ffffffp0 100
+pow 0x0.ffffffp0 1000
+pow 0x0.ffffffp0 0x1p24
+pow 0x0.ffffffp0 0x1p30
+pow 0x0.ffffffp0 0x1.234566p30
+pow 0x0.ffffffp0 -10
+pow 0x0.ffffffp0 -100
+pow 0x0.ffffffp0 -1000
+pow 0x0.ffffffp0 -0x1p24
+pow 0x0.ffffffp0 -0x1p30
+pow 0x0.ffffffp0 -0x1.234566p30
+pow 0x1.000002p0 0x1p24
+pow 0x1.000002p0 0x1.234566p29
+pow 0x1.000002p0 -0x1.234566p29
+
+pow 0x0.fffffffffffff8p0 0x1.23456789abcdfp62
+pow 0x0.fffffffffffff8p0 -0x1.23456789abcdfp62
+pow 0x1.0000000000001p0 0x1.23456789abcdfp61
+pow 0x1.0000000000001p0 -0x1.23456789abcdfp61
+
+pow 0x0.ffffffffffffffffp0 0x1.23456789abcdef0ep77
+pow 0x0.ffffffffffffffffp0 -0x1.23456789abcdef0ep77
+pow 0x1.0000000000000002p0 0x1.23456789abcdef0ep76
+pow 0x1.0000000000000002p0 -0x1.23456789abcdef0ep76
+
+pow 0x0.ffffffffffffffffffffffffffff8p0 0x1.23456789abcdef0123456789abcdp126
+pow 0x0.ffffffffffffffffffffffffffff8p0 -0x1.23456789abcdef0123456789abcdp126
+pow 0x1.0000000000000000000000000001p0 0x1.23456789abcdef0123456789abcdp125
+pow 0x1.0000000000000000000000000001p0 -0x1.23456789abcdef0123456789abcdp125
+
+pow 1e4932 0.75
+pow 1e4928 0.75
+pow 1e4924 0.75
+pow 1e4920 0.75
+pow 10.0 4932.0
+pow 10.0 4931.0
+pow 10.0 4930.0
+pow 10.0 4929.0
+pow 10.0 -4931.0
+pow 10.0 -4930.0
+pow 10.0 -4929.0
+pow 1e27 182.0
+pow 1e27 -182.0
+
+pow min_subnorm min_subnorm
+pow min_subnorm -min_subnorm
+pow max min_subnorm
+pow max -min_subnorm
+pow 0.99 min_subnorm
+pow 0.99 -min_subnorm
+pow 1.01 min_subnorm
+pow 1.01 -min_subnorm
+
+pow 2.0 -100000.0
+
+pow 1.0625 1.125
+pow 1.5 1.03125
+
+sin 0
+sin -0
+sin pi/6
+sin -pi/6
+sin pi/2
+sin -pi/2
+sin 0.75
+sin 0x1p65
+sin -0x1p65
+sin 0x1.7f4134p+103
+sin 0.80190127184058835
+sin 2.522464e-1
+sin 1e22
+sin 0x1p1023
+sin 0x1p16383
+sin 0x1p+120
+sin 0x1p+127
+sin 0x1.fffff8p+127
+sin 0x1.fffffep+127
+sin 0x1p+50
+sin 0x1p+28
+sin 0.93340582292648832662962377071381
+sin 2.3328432680770916363144351635128
+sin 3.7439477503636453548097051680088
+sin 3.9225160069792437411706487182528
+sin 4.0711651639931289992091478779912
+sin 4.7858438478542097982426639646292
+sin 5.9840767662578002727968851104379
+sin 1
+sin 2
+sin 3
+sin 4
+sin 5
+sin 6
+sin 7
+sin 8
+sin 9
+sin 10
+
+sincos 0
+sincos -0
+sincos pi/2
+sincos pi/6
+sincos pi/3
+sincos 0.75
+sincos 0x1p65
+sincos -0x1p65
+sincos 0.80190127184058835
+sincos 1e22
+sincos 0x1p1023
+sincos 0x1p16383
+sincos 0x1p+120
+sincos 0x1p+127
+sincos 0x1.fffff8p+127
+sincos 0x1.fffffep+127
+sincos 0x1p+50
+sincos 0x1p+28
+
+sinh 0
+sinh -0
+sinh 0.75
+sinh 0x8p-32
+sinh 22
+sinh 23
+sinh 24
+
+sqrt 0
+sqrt -0
+sqrt 2209
+sqrt 4
+sqrt 2
+sqrt 0.25
+sqrt 6642.25
+sqrt 15190.5625
+sqrt 0.75
+sqrt 0x1.fffffffffffffp+1023
+sqrt 0x1.ffffffffffffbp+1023
+sqrt 0x1.ffffffffffff7p+1023
+sqrt 0x1.ffffffffffff3p+1023
+sqrt 0x1.fffffffffffefp+1023
+sqrt 0x1.fffffffffffebp+1023
+sqrt 0x1.fffffffffffe7p+1023
+sqrt 0x1.fffffffffffe3p+1023
+sqrt 0x1.fffffffffffdfp+1023
+sqrt 0x1.fffffffffffdbp+1023
+sqrt 0x1.fffffffffffd7p+1023
+sqrt 0x1.0000000000003p-1022
+sqrt 0x1.0000000000007p-1022
+sqrt 0x1.000000000000bp-1022
+sqrt 0x1.000000000000fp-1022
+sqrt 0x1.0000000000013p-1022
+sqrt 0x1.0000000000017p-1022
+sqrt 0x1.000000000001bp-1022
+sqrt 0x1.000000000001fp-1022
+sqrt 0x1.0000000000023p-1022
+sqrt 0x1.0000000000027p-1022
+sqrt 0x1.000000000002bp-1022
+sqrt 0x1.000000000002fp-1022
+sqrt 0x1.0000000000033p-1022
+sqrt 0x1.0000000000037p-1022
+sqrt 0x1.7167bc36eaa3bp+6
+sqrt 0x1.7570994273ad7p+6
+sqrt 0x1.7dae969442fe6p+6
+sqrt 0x1.7f8444fcf67e5p+6
+sqrt 0x1.8364650e63a54p+6
+sqrt 0x1.85bedd274edd8p+6
+sqrt 0x1.8609cf496ab77p+6
+sqrt 0x1.873849c70a375p+6
+sqrt 0x1.8919c962cbaaep+6
+sqrt 0x1.8de4493e22dc6p+6
+sqrt 0x1.924829a17a288p+6
+sqrt 0x1.92702cd992f12p+6
+sqrt 0x1.92b763a8311fdp+6
+sqrt 0x1.947da013c7293p+6
+sqrt 0x1.9536091c494d2p+6
+sqrt 0x1.61b04c6p-1019
+sqrt 0x1.93789f1p-1018
+sqrt 0x1.a1989b4p-1018
+sqrt 0x1.f93bc9p-1018
+sqrt 0x1.2f675e3p-1017
+sqrt 0x1.a158508p-1017
+sqrt 0x1.cd31f078p-1017
+sqrt 0x1.33b43b08p-1016
+sqrt 0x1.6e66a858p-1016
+sqrt 0x1.8661cbf8p-1016
+sqrt 0x1.bbb221b4p-1016
+sqrt 0x1.c4942f3cp-1016
+sqrt 0x1.dbb258c8p-1016
+sqrt 0x1.57103ea4p-1015
+sqrt 0x1.9b294f88p-1015
+sqrt 0x1.0000000000001p+0
+sqrt 0x1.fffffffffffffp-1
+
+tan 0
+tan -0
+tan pi/4
+tan 0.75
+tan 0x1p65
+tan -0x1p65
+tan 0xc.9p-4
+tan 0xc.908p-4
+tan 0xc.90cp-4
+tan 0xc.90ep-4
+tan 0xc.90fp-4
+tan 0xc.90f8p-4
+tan 0xc.90fcp-4
+tan 0xc.90fdp-4
+tan 0xc.90fd8p-4
+tan 0xc.90fdap-4
+tan 0xc.ap-4
+tan 0xc.98p-4
+tan 0xc.94p-4
+tan 0xc.92p-4
+tan 0xc.91p-4
+tan 0xc.90fep-4
+tan 0xc.90fdcp-4
+tan 0xc.90fdbp-4
+tan -0xc.9p-4
+tan -0xc.908p-4
+tan -0xc.90cp-4
+tan -0xc.90ep-4
+tan -0xc.90fp-4
+tan -0xc.90f8p-4
+tan -0xc.90fcp-4
+tan -0xc.90fdp-4
+tan -0xc.90fd8p-4
+tan -0xc.90fdap-4
+tan -0xc.ap-4
+tan -0xc.98p-4
+tan -0xc.94p-4
+tan -0xc.92p-4
+tan -0xc.91p-4
+tan -0xc.90fep-4
+tan -0xc.90fdcp-4
+tan -0xc.90fdbp-4
+tan 1e22
+tan 0x1p1023
+tan 0x1p16383
+tan 1
+tan 2
+tan 3
+tan 4
+tan 5
+tan 6
+tan 7
+tan 8
+tan 9
+tan 10
+
+tanh 0
+tanh -0
+tanh 0.75
+tanh -0.75
+tanh 1.0
+tanh -1.0
+tanh 0x1p-57
+
+tgamma 0.5
+tgamma -0.5
+
+tgamma 1
+tgamma 2
+tgamma 3
+tgamma 4
+tgamma 5
+tgamma 6
+tgamma 7
+tgamma 8
+tgamma 9
+tgamma 10
+
+tgamma 0.7
+tgamma 1.2
+
+tgamma 1.5
+tgamma 2.5
+tgamma 3.5
+tgamma 4.5
+tgamma 5.5
+tgamma 6.5
+tgamma 7.5
+tgamma 8.5
+tgamma 9.5
+tgamma -1.5
+tgamma -2.5
+tgamma -3.5
+tgamma -4.5
+tgamma -5.5
+tgamma -6.5
+tgamma -7.5
+tgamma -8.5
+tgamma -9.5
+tgamma 0x1p-24
+tgamma -0x1p-24
+tgamma 0x1p-53
+tgamma -0x1p-53
+tgamma 0x1p-64
+tgamma -0x1p-64
+tgamma 0x1p-106
+tgamma -0x1p-106
+tgamma 0x1p-113
+tgamma -0x1p-113
+tgamma 0x1p-127
+tgamma -0x1p-127
+tgamma 0x1p-128
+tgamma -0x1p-128
+tgamma 0x1p-149
+tgamma -0x1p-149
+tgamma 0x1p-1023
+tgamma -0x1p-1023
+tgamma 0x1p-1024
+tgamma -0x1p-1024
+tgamma 0x1p-1074
+tgamma -0x1p-1074
+tgamma 0x1p-16383
+tgamma -0x1p-16383
+tgamma 0x1p-16384
+tgamma -0x1p-16384
+tgamma 0x1p-16445
+tgamma -0x1p-16445
+tgamma 0x1p-16494
+tgamma -0x1p-16494
+tgamma 0x8.00001p0
+tgamma 0x7.fffff8p0
+tgamma 0x7.000008p0
+tgamma 0x6.fffff8p0
+tgamma 0x6.000008p0
+tgamma 0x5.fffff8p0
+tgamma 0x5.000008p0
+tgamma 0x4.fffff8p0
+tgamma 0x4.000008p0
+tgamma 0x3.fffffcp0
+tgamma 0x3.000004p0
+tgamma 0x2.fffffcp0
+tgamma 0x2.000004p0
+tgamma 0x1.fffffep0
+tgamma 0x1.000002p0
+tgamma 0x0.ffffffp0
+tgamma -0x0.ffffffp0
+tgamma -0x1.000002p0
+tgamma -0x1.fffffep0
+tgamma -0x2.000004p0
+tgamma -0x2.fffffcp0
+tgamma -0x3.000004p0
+tgamma -0x3.fffffcp0
+tgamma -0x4.000008p0
+tgamma -0x4.fffff8p0
+tgamma -0x5.000008p0
+tgamma -0x5.fffff8p0
+tgamma -0x6.000008p0
+tgamma -0x6.fffff8p0
+tgamma -0x7.000008p0
+tgamma -0x7.fffff8p0
+tgamma -0x8.00001p0
+tgamma -0x9.fffffp0
+tgamma -0xa.00001p0
+tgamma -0x13.ffffep0
+tgamma -0x14.00002p0
+tgamma -0x1d.ffffep0
+tgamma -0x1e.00002p0
+tgamma -0x27.ffffcp0
+tgamma -0x28.00004p0
+tgamma -0x28.ffffcp0
+tgamma -0x29.00004p0
+tgamma -0x29.ffffcp0
+tgamma -0x2a.00004p0
+tgamma 0x8.0000000000008p0
+tgamma 0x7.ffffffffffffcp0
+tgamma 0x7.0000000000004p0
+tgamma 0x6.ffffffffffffcp0
+tgamma 0x6.0000000000004p0
+tgamma 0x5.ffffffffffffcp0
+tgamma 0x5.0000000000004p0
+tgamma 0x4.ffffffffffffcp0
+tgamma 0x4.0000000000004p0
+tgamma 0x3.ffffffffffffep0
+tgamma 0x3.0000000000002p0
+tgamma 0x2.ffffffffffffep0
+tgamma 0x2.0000000000002p0
+tgamma 0x1.fffffffffffffp0
+tgamma 0x1.0000000000001p0
+tgamma 0x0.fffffffffffff8p0
+tgamma -0x0.fffffffffffff8p0
+tgamma -0x1.0000000000001p0
+tgamma -0x1.fffffffffffffp0
+tgamma -0x2.0000000000002p0
+tgamma -0x2.ffffffffffffep0
+tgamma -0x3.0000000000002p0
+tgamma -0x3.ffffffffffffep0
+tgamma -0x4.0000000000004p0
+tgamma -0x4.ffffffffffffcp0
+tgamma -0x5.0000000000004p0
+tgamma -0x5.ffffffffffffcp0
+tgamma -0x6.0000000000004p0
+tgamma -0x6.ffffffffffffcp0
+tgamma -0x7.0000000000004p0
+tgamma -0x7.ffffffffffffcp0
+tgamma -0x8.0000000000008p0
+tgamma -0x9.ffffffffffff8p0
+tgamma -0xa.0000000000008p0
+tgamma -0x13.ffffffffffffp0
+tgamma -0x14.000000000001p0
+tgamma -0x1d.ffffffffffffp0
+tgamma -0x1e.000000000001p0
+tgamma -0x27.fffffffffffep0
+tgamma -0x28.000000000002p0
+tgamma -0x28.fffffffffffep0
+tgamma -0x29.000000000002p0
+tgamma -0x29.fffffffffffep0
+tgamma -0x2a.000000000002p0
+tgamma -0x31.fffffffffffep0
+tgamma -0x32.000000000002p0
+tgamma -0x63.fffffffffffcp0
+tgamma -0x64.000000000004p0
+tgamma -0x95.fffffffffff8p0
+tgamma -0x96.000000000008p0
+tgamma -0xb4.fffffffffff8p0
+tgamma -0xb5.000000000008p0
+tgamma -0xb5.fffffffffff8p0
+tgamma -0xb6.000000000008p0
+tgamma -0xb6.fffffffffff8p0
+tgamma -0xb7.000000000008p0
+tgamma -0xb7.fffffffffff8p0
+tgamma -0xb8.000000000008p0
+tgamma 0x8.00000000000000000000000004p0
+tgamma 0x7.fffffffffffffffffffffffffep0
+tgamma 0x7.00000000000000000000000002p0
+tgamma 0x6.fffffffffffffffffffffffffep0
+tgamma 0x6.00000000000000000000000002p0
+tgamma 0x5.fffffffffffffffffffffffffep0
+tgamma 0x5.00000000000000000000000002p0
+tgamma 0x4.fffffffffffffffffffffffffep0
+tgamma 0x4.00000000000000000000000002p0
+tgamma 0x3.ffffffffffffffffffffffffffp0
+tgamma 0x3.00000000000000000000000001p0
+tgamma 0x2.ffffffffffffffffffffffffffp0
+tgamma 0x2.00000000000000000000000001p0
+tgamma 0x1.ffffffffffffffffffffffffff8p0
+tgamma 0x1.000000000000000000000000008p0
+tgamma 0x0.ffffffffffffffffffffffffffcp0
+tgamma -0x0.ffffffffffffffffffffffffffcp0
+tgamma -0x1.000000000000000000000000008p0
+tgamma -0x1.ffffffffffffffffffffffffff8p0
+tgamma -0x2.00000000000000000000000001p0
+tgamma -0x2.ffffffffffffffffffffffffffp0
+tgamma -0x3.00000000000000000000000001p0
+tgamma -0x3.ffffffffffffffffffffffffffp0
+tgamma -0x4.00000000000000000000000002p0
+tgamma -0x4.fffffffffffffffffffffffffep0
+tgamma -0x5.00000000000000000000000002p0
+tgamma -0x5.fffffffffffffffffffffffffep0
+tgamma -0x6.00000000000000000000000002p0
+tgamma -0x6.fffffffffffffffffffffffffep0
+tgamma -0x7.00000000000000000000000002p0
+tgamma -0x7.fffffffffffffffffffffffffep0
+tgamma -0x8.00000000000000000000000004p0
+tgamma -0x9.fffffffffffffffffffffffffcp0
+tgamma -0xa.00000000000000000000000004p0
+tgamma -0x13.fffffffffffffffffffffffff8p0
+tgamma -0x14.00000000000000000000000008p0
+tgamma -0x1d.fffffffffffffffffffffffff8p0
+tgamma -0x1e.00000000000000000000000008p0
+tgamma -0x27.fffffffffffffffffffffffffp0
+tgamma -0x28.0000000000000000000000001p0
+tgamma -0x28.fffffffffffffffffffffffffp0
+tgamma -0x29.0000000000000000000000001p0
+tgamma -0x29.fffffffffffffffffffffffffp0
+tgamma -0x2a.0000000000000000000000001p0
+tgamma -0x31.fffffffffffffffffffffffffp0
+tgamma -0x32.0000000000000000000000001p0
+tgamma -0x63.ffffffffffffffffffffffffep0
+tgamma -0x64.0000000000000000000000002p0
+tgamma -0x95.ffffffffffffffffffffffffcp0
+tgamma -0x96.0000000000000000000000004p0
+tgamma -0xb4.ffffffffffffffffffffffffcp0
+tgamma -0xb5.0000000000000000000000004p0
+tgamma -0xb5.ffffffffffffffffffffffffcp0
+tgamma -0xb6.0000000000000000000000004p0
+tgamma -0xb6.ffffffffffffffffffffffffcp0
+tgamma -0xb7.0000000000000000000000004p0
+tgamma -0xb7.ffffffffffffffffffffffffcp0
+tgamma -0xb8.0000000000000000000000004p0
+tgamma -0xbb.ffffffffffffffffffffffffcp0
+tgamma -0xbc.0000000000000000000000004p0
+tgamma -0xbc.ffffffffffffffffffffffffcp0
+tgamma -0xbd.0000000000000000000000004p0
+tgamma -0xbd.ffffffffffffffffffffffffcp0
+tgamma -0xbe.0000000000000000000000004p0
+tgamma -0xbe.ffffffffffffffffffffffffcp0
+tgamma -0xbf.0000000000000000000000004p0
+tgamma 0x8.000000000000001p0
+tgamma 0x7.fffffffffffffff8p0
+tgamma 0x7.0000000000000008p0
+tgamma 0x6.fffffffffffffff8p0
+tgamma 0x6.0000000000000008p0
+tgamma 0x5.fffffffffffffff8p0
+tgamma 0x5.0000000000000008p0
+tgamma 0x4.fffffffffffffff8p0
+tgamma 0x4.0000000000000008p0
+tgamma 0x3.fffffffffffffffcp0
+tgamma 0x3.0000000000000004p0
+tgamma 0x2.fffffffffffffffcp0
+tgamma 0x2.0000000000000004p0
+tgamma 0x1.fffffffffffffffep0
+tgamma 0x1.0000000000000002p0
+tgamma 0x0.ffffffffffffffffp0
+tgamma -0x0.ffffffffffffffffp0
+tgamma -0x1.0000000000000002p0
+tgamma -0x1.fffffffffffffffep0
+tgamma -0x2.0000000000000004p0
+tgamma -0x2.fffffffffffffffcp0
+tgamma -0x3.0000000000000004p0
+tgamma -0x3.fffffffffffffffcp0
+tgamma -0x4.0000000000000008p0
+tgamma -0x4.fffffffffffffff8p0
+tgamma -0x5.0000000000000008p0
+tgamma -0x5.fffffffffffffff8p0
+tgamma -0x6.0000000000000008p0
+tgamma -0x6.fffffffffffffff8p0
+tgamma -0x7.0000000000000008p0
+tgamma -0x7.fffffffffffffff8p0
+tgamma -0x8.000000000000001p0
+tgamma -0x9.fffffffffffffffp0
+tgamma -0xa.000000000000001p0
+tgamma -0x13.ffffffffffffffep0
+tgamma -0x14.000000000000002p0
+tgamma -0x1d.ffffffffffffffep0
+tgamma -0x1e.000000000000002p0
+tgamma -0x27.ffffffffffffffcp0
+tgamma -0x28.000000000000004p0
+tgamma -0x28.ffffffffffffffcp0
+tgamma -0x29.000000000000004p0
+tgamma -0x29.ffffffffffffffcp0
+tgamma -0x2a.000000000000004p0
+tgamma -0x31.ffffffffffffffcp0
+tgamma -0x32.000000000000004p0
+tgamma -0x63.ffffffffffffff8p0
+tgamma -0x64.000000000000008p0
+tgamma -0x95.ffffffffffffffp0
+tgamma -0x96.00000000000001p0
+tgamma -0xb4.ffffffffffffffp0
+tgamma -0xb5.00000000000001p0
+tgamma -0xb5.ffffffffffffffp0
+tgamma -0xb6.00000000000001p0
+tgamma -0xb6.ffffffffffffffp0
+tgamma -0xb7.00000000000001p0
+tgamma -0xb7.ffffffffffffffp0
+tgamma -0xb8.00000000000001p0
+tgamma -0xbb.ffffffffffffffp0
+tgamma -0xbc.00000000000001p0
+tgamma -0xbc.ffffffffffffffp0
+tgamma -0xbd.00000000000001p0
+tgamma -0xbd.ffffffffffffffp0
+tgamma -0xbe.00000000000001p0
+tgamma -0xbe.ffffffffffffffp0
+tgamma -0xbf.00000000000001p0
+tgamma -0xf9.ffffffffffffffp0
+tgamma -0xfa.00000000000001p0
+tgamma -0x1f3.fffffffffffffep0
+tgamma -0x1f4.00000000000002p0
+tgamma -0x2ed.fffffffffffffcp0
+tgamma -0x2ee.00000000000004p0
+tgamma -0x3e7.fffffffffffffcp0
+tgamma -0x3e8.00000000000004p0
+tgamma -0x4e1.fffffffffffff8p0
+tgamma -0x4e2.00000000000008p0
+tgamma -0x5db.fffffffffffff8p0
+tgamma -0x5dc.00000000000008p0
+tgamma -0x6d5.fffffffffffff8p0
+tgamma -0x6d6.00000000000008p0
+tgamma -0x6e2.fffffffffffff8p0
+tgamma -0x6e3.00000000000008p0
+tgamma -0x6e3.fffffffffffff8p0
+tgamma -0x6e4.00000000000008p0
+tgamma -0x6e4.fffffffffffff8p0
+tgamma -0x6e5.00000000000008p0
+tgamma -0x6e5.fffffffffffff8p0
+tgamma -0x6e6.00000000000008p0
+tgamma 0x8.0000000000000000000000000008p0
+tgamma 0x7.fffffffffffffffffffffffffffcp0
+tgamma 0x7.0000000000000000000000000004p0
+tgamma 0x6.fffffffffffffffffffffffffffcp0
+tgamma 0x6.0000000000000000000000000004p0
+tgamma 0x5.fffffffffffffffffffffffffffcp0
+tgamma 0x5.0000000000000000000000000004p0
+tgamma 0x4.fffffffffffffffffffffffffffcp0
+tgamma 0x4.0000000000000000000000000004p0
+tgamma 0x3.fffffffffffffffffffffffffffep0
+tgamma 0x3.0000000000000000000000000002p0
+tgamma 0x2.fffffffffffffffffffffffffffep0
+tgamma 0x2.0000000000000000000000000002p0
+tgamma 0x1.ffffffffffffffffffffffffffffp0
+tgamma 0x1.0000000000000000000000000001p0
+tgamma 0x0.ffffffffffffffffffffffffffff8p0
+tgamma -0x0.ffffffffffffffffffffffffffff8p0
+tgamma -0x1.0000000000000000000000000001p0
+tgamma -0x1.ffffffffffffffffffffffffffffp0
+tgamma -0x2.0000000000000000000000000002p0
+tgamma -0x2.fffffffffffffffffffffffffffep0
+tgamma -0x3.0000000000000000000000000002p0
+tgamma -0x3.fffffffffffffffffffffffffffep0
+tgamma -0x4.0000000000000000000000000004p0
+tgamma -0x4.fffffffffffffffffffffffffffcp0
+tgamma -0x5.0000000000000000000000000004p0
+tgamma -0x5.fffffffffffffffffffffffffffcp0
+tgamma -0x6.0000000000000000000000000004p0
+tgamma -0x6.fffffffffffffffffffffffffffcp0
+tgamma -0x7.0000000000000000000000000004p0
+tgamma -0x7.fffffffffffffffffffffffffffcp0
+tgamma -0x8.0000000000000000000000000008p0
+tgamma -0x9.fffffffffffffffffffffffffff8p0
+tgamma -0xa.0000000000000000000000000008p0
+tgamma -0x13.fffffffffffffffffffffffffffp0
+tgamma -0x14.000000000000000000000000001p0
+tgamma -0x1d.fffffffffffffffffffffffffffp0
+tgamma -0x1e.000000000000000000000000001p0
+tgamma -0x27.ffffffffffffffffffffffffffep0
+tgamma -0x28.000000000000000000000000002p0
+tgamma -0x28.ffffffffffffffffffffffffffep0
+tgamma -0x29.000000000000000000000000002p0
+tgamma -0x29.ffffffffffffffffffffffffffep0
+tgamma -0x2a.000000000000000000000000002p0
+tgamma -0x31.ffffffffffffffffffffffffffep0
+tgamma -0x32.000000000000000000000000002p0
+tgamma -0x63.ffffffffffffffffffffffffffcp0
+tgamma -0x64.000000000000000000000000004p0
+tgamma -0x95.ffffffffffffffffffffffffff8p0
+tgamma -0x96.000000000000000000000000008p0
+tgamma -0xb4.ffffffffffffffffffffffffff8p0
+tgamma -0xb5.000000000000000000000000008p0
+tgamma -0xb5.ffffffffffffffffffffffffff8p0
+tgamma -0xb6.000000000000000000000000008p0
+tgamma -0xb6.ffffffffffffffffffffffffff8p0
+tgamma -0xb7.000000000000000000000000008p0
+tgamma -0xb7.ffffffffffffffffffffffffff8p0
+tgamma -0xb8.000000000000000000000000008p0
+tgamma -0xbb.ffffffffffffffffffffffffff8p0
+tgamma -0xbc.000000000000000000000000008p0
+tgamma -0xbc.ffffffffffffffffffffffffff8p0
+tgamma -0xbd.000000000000000000000000008p0
+tgamma -0xbd.ffffffffffffffffffffffffff8p0
+tgamma -0xbe.000000000000000000000000008p0
+tgamma -0xbe.ffffffffffffffffffffffffff8p0
+tgamma -0xbf.000000000000000000000000008p0
+tgamma -0xf9.ffffffffffffffffffffffffff8p0
+tgamma -0xfa.000000000000000000000000008p0
+tgamma -0x1f3.ffffffffffffffffffffffffffp0
+tgamma -0x1f4.00000000000000000000000001p0
+tgamma -0x2ed.fffffffffffffffffffffffffep0
+tgamma -0x2ee.00000000000000000000000002p0
+tgamma -0x3e7.fffffffffffffffffffffffffep0
+tgamma -0x3e8.00000000000000000000000002p0
+tgamma -0x4e1.fffffffffffffffffffffffffcp0
+tgamma -0x4e2.00000000000000000000000004p0
+tgamma -0x5db.fffffffffffffffffffffffffcp0
+tgamma -0x5dc.00000000000000000000000004p0
+tgamma -0x6d5.fffffffffffffffffffffffffcp0
+tgamma -0x6d6.00000000000000000000000004p0
+tgamma -0x6e2.fffffffffffffffffffffffffcp0
+tgamma -0x6e3.00000000000000000000000004p0
+tgamma -0x6e3.fffffffffffffffffffffffffcp0
+tgamma -0x6e4.00000000000000000000000004p0
+tgamma -0x6e4.fffffffffffffffffffffffffcp0
+tgamma -0x6e5.00000000000000000000000004p0
+tgamma -0x6e5.fffffffffffffffffffffffffcp0
+tgamma -0x6e6.00000000000000000000000004p0
+tgamma -0x6eb.fffffffffffffffffffffffffcp0
+tgamma -0x6ec.00000000000000000000000004p0
+tgamma -0x6ec.fffffffffffffffffffffffffcp0
+tgamma -0x6ed.00000000000000000000000004p0
+tgamma -0x6ed.fffffffffffffffffffffffffcp0
+tgamma -0x6ee.00000000000000000000000004p0
+tgamma -0x6ee.fffffffffffffffffffffffffcp0
+tgamma -0x6ef.00000000000000000000000004p0
+tgamma -0x1.0a32a2p+5
+tgamma -0x1.5800000080001p+7
+tgamma 18.5
+tgamma 19.5
+tgamma 23.5
+tgamma 29.5
+tgamma 30.5
+tgamma 31.5
+tgamma 32.5
+tgamma 33.5
+tgamma 34.5
+tgamma 0x2.30a43cp+4
+tgamma 0x2.30a44p+4
+tgamma 0xa.b9fd72b0fb238p+4
+tgamma 0xa.b9fd72b0fb24p+4
+tgamma 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4
+tgamma 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4
+tgamma 0x6.db8c603359a97108p+8
+tgamma 0x6.db8c603359a9711p+8
+tgamma 0x6.db8c603359a971081bc4a2e9dfdp+8
+tgamma 0x6.db8c603359a971081bc4a2e9dfd4p+8
+tgamma 1e3
+tgamma -100000.5
+
+y0 0.125
+y0 0.75
+y0 1.0
+y0 1.5
+y0 2.0
+y0 8.0
+y0 10.0
+y0 0x1.3ffp+74
+y0 0x1.ff00000000002p+840
+y0 0x1p1023
+y0 0x1p16382
+y0 0x1p16383
+y0 0x1p-10
+y0 0x1p-20
+y0 0x1p-30
+y0 0x1p-40
+y0 0x1p-50
+y0 0x1p-60
+y0 0x1p-70
+y0 0x1p-80
+y0 0x1p-90
+y0 0x1p-100
+y0 0x1p-110
+
+y1 0.125
+y1 0.75
+y1 1.0
+y1 1.5
+y1 2.0
+y1 8.0
+y1 10.0
+y1 0x1.27e204p+99
+y1 0x1.001000001p+593
+y1 0x1p1023
+y1 0x1p16382
+y1 0x1p16383
+y1 0x1p-10
+y1 0x1p-20
+y1 0x1p-30
+y1 0x1p-40
+y1 0x1p-50
+y1 0x1p-60
+y1 0x1p-70
+y1 0x1p-80
+y1 0x1p-90
+y1 0x1p-100
+y1 0x1p-110
+
+# yn (0, x) == y0 (x).
+yn 0 0.125
+yn 0 0.75
+yn 0 1.0
+yn 0 1.5
+yn 0 2.0
+yn 0 8.0
+yn 0 10.0
+
+# yn (1, x) == y1 (x).
+yn 1 0.125
+yn 1 0.75
+yn 1 1.0
+yn 1 1.5
+yn 1 2.0
+yn 1 8.0
+yn 1 10.0
+
+# yn (-1, x) == -y1 (x).
+yn -1 1.0
+
+# yn (3, x).
+yn 3 0.125
+yn 3 0.75
+yn 3 1.0
+yn 3 2.0
+yn 3 10.0
+
+# yn (10, x).
+yn 10 0.125
+yn 10 0.75
+yn 10 1.0
+yn 10 2.0
+yn 10 10.0
+
+yn -10 1.0
+
+yn 10 min
+
+yn 2 0x1.ffff62p+99
+yn 2 0x1p127
+yn 2 0x1p1023
+yn 2 0x1p16383
diff --git a/math/auto-libm-test-out b/math/auto-libm-test-out
new file mode 100644
index 0000000000..54cfbde32c
--- /dev/null
+++ b/math/auto-libm-test-out
@@ -0,0 +1,97681 @@
+acos 0
+= acos downward flt-32 0x0p+0f : 0x1.921fb4p+0f : inexact-ok
+= acos tonearest flt-32 0x0p+0f : 0x1.921fb6p+0f : inexact-ok
+= acos towardzero flt-32 0x0p+0f : 0x1.921fb4p+0f : inexact-ok
+= acos upward flt-32 0x0p+0f : 0x1.921fb6p+0f : inexact-ok
+= acos downward dbl-64 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos tonearest dbl-64 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos towardzero dbl-64 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos upward dbl-64 0x0p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= acos downward ldbl-128 0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= acos tonearest ldbl-128 0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= acos towardzero ldbl-128 0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= acos upward ldbl-128 0x0p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x0p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+acos -0
+= acos downward flt-32 -0x0p+0f : 0x1.921fb4p+0f : inexact-ok
+= acos tonearest flt-32 -0x0p+0f : 0x1.921fb6p+0f : inexact-ok
+= acos towardzero flt-32 -0x0p+0f : 0x1.921fb4p+0f : inexact-ok
+= acos upward flt-32 -0x0p+0f : 0x1.921fb6p+0f : inexact-ok
+= acos downward dbl-64 -0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos tonearest dbl-64 -0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos towardzero dbl-64 -0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos upward dbl-64 -0x0p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= acos downward ldbl-96-intel -0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= acos upward ldbl-96-intel -0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= acos downward ldbl-96-m68k -0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= acos upward ldbl-96-m68k -0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= acos downward ldbl-128 -0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= acos tonearest ldbl-128 -0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= acos towardzero ldbl-128 -0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= acos upward ldbl-128 -0x0p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= acos downward ldbl-128ibm -0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= acos upward ldbl-128ibm -0x0p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+acos 1
+= acos downward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos tonearest flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos towardzero flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos upward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos downward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos tonearest dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos towardzero dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos upward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+acos -1
+= acos downward flt-32 -0x1p+0f : 0x3.243f68p+0f : inexact-ok
+= acos tonearest flt-32 -0x1p+0f : 0x3.243f6cp+0f : inexact-ok
+= acos towardzero flt-32 -0x1p+0f : 0x3.243f68p+0f : inexact-ok
+= acos upward flt-32 -0x1p+0f : 0x3.243f6cp+0f : inexact-ok
+= acos downward dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos tonearest dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos towardzero dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos upward dbl-64 -0x1p+0 : 0x3.243f6a8885a32p+0 : inexact-ok
+= acos downward ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos upward ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos downward ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos upward ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos downward ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos tonearest ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos towardzero ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos upward ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e0372p+0L : inexact-ok
+= acos downward ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos upward ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+acos 0.5
+= acos downward flt-32 0x8p-4f : 0x1.0c1522p+0f : inexact-ok
+= acos tonearest flt-32 0x8p-4f : 0x1.0c1524p+0f : inexact-ok
+= acos towardzero flt-32 0x8p-4f : 0x1.0c1522p+0f : inexact-ok
+= acos upward flt-32 0x8p-4f : 0x1.0c1524p+0f : inexact-ok
+= acos downward dbl-64 0x8p-4 : 0x1.0c152382d7365p+0 : inexact-ok
+= acos tonearest dbl-64 0x8p-4 : 0x1.0c152382d7366p+0 : inexact-ok
+= acos towardzero dbl-64 0x8p-4 : 0x1.0c152382d7365p+0 : inexact-ok
+= acos upward dbl-64 0x8p-4 : 0x1.0c152382d7366p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x8p-4L : 0x1.0c152382d7365846p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x8p-4L : 0x1.0c152382d7365846p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x8p-4L : 0x1.0c152382d7365846p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x8p-4L : 0x1.0c152382d7365848p+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x8p-4L : 0x1.0c152382d7365846p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x8p-4L : 0x1.0c152382d7365846p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x8p-4L : 0x1.0c152382d7365846p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x8p-4L : 0x1.0c152382d7365848p+0L : inexact-ok
+= acos downward ldbl-128 0x8p-4L : 0x1.0c152382d73658465bb32e0f567ap+0L : inexact-ok
+= acos tonearest ldbl-128 0x8p-4L : 0x1.0c152382d73658465bb32e0f567bp+0L : inexact-ok
+= acos towardzero ldbl-128 0x8p-4L : 0x1.0c152382d73658465bb32e0f567ap+0L : inexact-ok
+= acos upward ldbl-128 0x8p-4L : 0x1.0c152382d73658465bb32e0f567bp+0L : inexact-ok
+= acos downward ldbl-128ibm 0x8p-4L : 0x1.0c152382d73658465bb32e0f56p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x8p-4L : 0x1.0c152382d73658465bb32e0f568p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x8p-4L : 0x1.0c152382d73658465bb32e0f56p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x8p-4L : 0x1.0c152382d73658465bb32e0f568p+0L : inexact-ok
+acos -0.5
+= acos downward flt-32 -0x8p-4f : 0x2.182a44p+0f : inexact-ok
+= acos tonearest flt-32 -0x8p-4f : 0x2.182a48p+0f : inexact-ok
+= acos towardzero flt-32 -0x8p-4f : 0x2.182a44p+0f : inexact-ok
+= acos upward flt-32 -0x8p-4f : 0x2.182a48p+0f : inexact-ok
+= acos downward dbl-64 -0x8p-4 : 0x2.182a4705ae6cap+0 : inexact-ok
+= acos tonearest dbl-64 -0x8p-4 : 0x2.182a4705ae6ccp+0 : inexact-ok
+= acos towardzero dbl-64 -0x8p-4 : 0x2.182a4705ae6cap+0 : inexact-ok
+= acos upward dbl-64 -0x8p-4 : 0x2.182a4705ae6ccp+0 : inexact-ok
+= acos downward ldbl-96-intel -0x8p-4L : 0x2.182a4705ae6cb08cp+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0x8p-4L : 0x2.182a4705ae6cb08cp+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0x8p-4L : 0x2.182a4705ae6cb08cp+0L : inexact-ok
+= acos upward ldbl-96-intel -0x8p-4L : 0x2.182a4705ae6cb09p+0L : inexact-ok
+= acos downward ldbl-96-m68k -0x8p-4L : 0x2.182a4705ae6cb08cp+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0x8p-4L : 0x2.182a4705ae6cb08cp+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0x8p-4L : 0x2.182a4705ae6cb08cp+0L : inexact-ok
+= acos upward ldbl-96-m68k -0x8p-4L : 0x2.182a4705ae6cb09p+0L : inexact-ok
+= acos downward ldbl-128 -0x8p-4L : 0x2.182a4705ae6cb08cb7665c1eacf4p+0L : inexact-ok
+= acos tonearest ldbl-128 -0x8p-4L : 0x2.182a4705ae6cb08cb7665c1eacf6p+0L : inexact-ok
+= acos towardzero ldbl-128 -0x8p-4L : 0x2.182a4705ae6cb08cb7665c1eacf4p+0L : inexact-ok
+= acos upward ldbl-128 -0x8p-4L : 0x2.182a4705ae6cb08cb7665c1eacf6p+0L : inexact-ok
+= acos downward ldbl-128ibm -0x8p-4L : 0x2.182a4705ae6cb08cb7665c1eacp+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0x8p-4L : 0x2.182a4705ae6cb08cb7665c1eadp+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0x8p-4L : 0x2.182a4705ae6cb08cb7665c1eacp+0L : inexact-ok
+= acos upward ldbl-128ibm -0x8p-4L : 0x2.182a4705ae6cb08cb7665c1eadp+0L : inexact-ok
+acos 0.75
+= acos downward flt-32 0xcp-4f : 0xb.9051cp-4f : inexact-ok
+= acos tonearest flt-32 0xcp-4f : 0xb.9051dp-4f : inexact-ok
+= acos towardzero flt-32 0xcp-4f : 0xb.9051cp-4f : inexact-ok
+= acos upward flt-32 0xcp-4f : 0xb.9051dp-4f : inexact-ok
+= acos downward dbl-64 0xcp-4 : 0xb.9051c960ecaap-4 : inexact-ok
+= acos tonearest dbl-64 0xcp-4 : 0xb.9051c960ecaa8p-4 : inexact-ok
+= acos towardzero dbl-64 0xcp-4 : 0xb.9051c960ecaap-4 : inexact-ok
+= acos upward dbl-64 0xcp-4 : 0xb.9051c960ecaa8p-4 : inexact-ok
+= acos downward ldbl-96-intel 0xcp-4L : 0xb.9051c960ecaa428p-4L : inexact-ok
+= acos tonearest ldbl-96-intel 0xcp-4L : 0xb.9051c960ecaa429p-4L : inexact-ok
+= acos towardzero ldbl-96-intel 0xcp-4L : 0xb.9051c960ecaa428p-4L : inexact-ok
+= acos upward ldbl-96-intel 0xcp-4L : 0xb.9051c960ecaa429p-4L : inexact-ok
+= acos downward ldbl-96-m68k 0xcp-4L : 0xb.9051c960ecaa428p-4L : inexact-ok
+= acos tonearest ldbl-96-m68k 0xcp-4L : 0xb.9051c960ecaa429p-4L : inexact-ok
+= acos towardzero ldbl-96-m68k 0xcp-4L : 0xb.9051c960ecaa428p-4L : inexact-ok
+= acos upward ldbl-96-m68k 0xcp-4L : 0xb.9051c960ecaa429p-4L : inexact-ok
+= acos downward ldbl-128 0xcp-4L : 0xb.9051c960ecaa428dd6deb6696c7p-4L : inexact-ok
+= acos tonearest ldbl-128 0xcp-4L : 0xb.9051c960ecaa428dd6deb6696c7p-4L : inexact-ok
+= acos towardzero ldbl-128 0xcp-4L : 0xb.9051c960ecaa428dd6deb6696c7p-4L : inexact-ok
+= acos upward ldbl-128 0xcp-4L : 0xb.9051c960ecaa428dd6deb6696c78p-4L : inexact-ok
+= acos downward ldbl-128ibm 0xcp-4L : 0xb.9051c960ecaa428dd6deb6696cp-4L : inexact-ok
+= acos tonearest ldbl-128ibm 0xcp-4L : 0xb.9051c960ecaa428dd6deb6696cp-4L : inexact-ok
+= acos towardzero ldbl-128ibm 0xcp-4L : 0xb.9051c960ecaa428dd6deb6696cp-4L : inexact-ok
+= acos upward ldbl-128ibm 0xcp-4L : 0xb.9051c960ecaa428dd6deb6697p-4L : inexact-ok
+acos 2e-17
+= acos downward flt-32 0x1.70ef56p-56f : 0x1.921fb4p+0f : inexact-ok
+= acos tonearest flt-32 0x1.70ef56p-56f : 0x1.921fb6p+0f : inexact-ok
+= acos towardzero flt-32 0x1.70ef56p-56f : 0x1.921fb4p+0f : inexact-ok
+= acos upward flt-32 0x1.70ef56p-56f : 0x1.921fb6p+0f : inexact-ok
+= acos downward dbl-64 0x1.70ef56p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos tonearest dbl-64 0x1.70ef56p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos towardzero dbl-64 0x1.70ef56p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos upward dbl-64 0x1.70ef56p-56 : 0x1.921fb54442d19p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x1.70ef56p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1.70ef56p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1.70ef56p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1.70ef56p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1.70ef56p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1.70ef56p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1.70ef56p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1.70ef56p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-128 0x1.70ef56p-56L : 0x1.921fb54442d182f89a36c51701b8p+0L : inexact-ok
+= acos tonearest ldbl-128 0x1.70ef56p-56L : 0x1.921fb54442d182f89a36c51701b8p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1.70ef56p-56L : 0x1.921fb54442d182f89a36c51701b8p+0L : inexact-ok
+= acos upward ldbl-128 0x1.70ef56p-56L : 0x1.921fb54442d182f89a36c51701b9p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1.70ef56p-56L : 0x1.921fb54442d182f89a36c517018p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1.70ef56p-56L : 0x1.921fb54442d182f89a36c517018p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1.70ef56p-56L : 0x1.921fb54442d182f89a36c517018p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1.70ef56p-56L : 0x1.921fb54442d182f89a36c51702p+0L : inexact-ok
+= acos downward flt-32 0x1.70ef54p-56f : 0x1.921fb4p+0f : inexact-ok
+= acos tonearest flt-32 0x1.70ef54p-56f : 0x1.921fb6p+0f : inexact-ok
+= acos towardzero flt-32 0x1.70ef54p-56f : 0x1.921fb4p+0f : inexact-ok
+= acos upward flt-32 0x1.70ef54p-56f : 0x1.921fb6p+0f : inexact-ok
+= acos downward dbl-64 0x1.70ef54p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos tonearest dbl-64 0x1.70ef54p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos towardzero dbl-64 0x1.70ef54p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos upward dbl-64 0x1.70ef54p-56 : 0x1.921fb54442d19p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x1.70ef54p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1.70ef54p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1.70ef54p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1.70ef54p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1.70ef54p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1.70ef54p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1.70ef54p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1.70ef54p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-128 0x1.70ef54p-56L : 0x1.921fb54442d182f89a38c51701b8p+0L : inexact-ok
+= acos tonearest ldbl-128 0x1.70ef54p-56L : 0x1.921fb54442d182f89a38c51701b8p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1.70ef54p-56L : 0x1.921fb54442d182f89a38c51701b8p+0L : inexact-ok
+= acos upward ldbl-128 0x1.70ef54p-56L : 0x1.921fb54442d182f89a38c51701b9p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1.70ef54p-56L : 0x1.921fb54442d182f89a38c517018p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1.70ef54p-56L : 0x1.921fb54442d182f89a38c517018p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1.70ef54p-56L : 0x1.921fb54442d182f89a38c517018p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1.70ef54p-56L : 0x1.921fb54442d182f89a38c51702p+0L : inexact-ok
+= acos downward dbl-64 0x1.70ef54646d497p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos tonearest dbl-64 0x1.70ef54646d497p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos towardzero dbl-64 0x1.70ef54646d497p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos upward dbl-64 0x1.70ef54646d497p-56 : 0x1.921fb54442d19p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1.70ef54646d497p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1.70ef54646d497p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-128 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f89a3860a9b848p+0L : inexact-ok
+= acos tonearest ldbl-128 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f89a3860a9b848p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f89a3860a9b848p+0L : inexact-ok
+= acos upward ldbl-128 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f89a3860a9b849p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1.70ef54646d497p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos downward dbl-64 0x1.70ef54646d496p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos tonearest dbl-64 0x1.70ef54646d496p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos towardzero dbl-64 0x1.70ef54646d496p-56 : 0x1.921fb54442d18p+0 : inexact-ok
+= acos upward dbl-64 0x1.70ef54646d496p-56 : 0x1.921fb54442d19p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1.70ef54646d496p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1.70ef54646d496p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-128 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f89a3860a9b858p+0L : inexact-ok
+= acos tonearest ldbl-128 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f89a3860a9b858p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f89a3860a9b858p+0L : inexact-ok
+= acos upward ldbl-128 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f89a3860a9b859p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1.70ef54646d496p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos downward ldbl-96-intel 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-128 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos tonearest ldbl-128 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos upward ldbl-128 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1.70ef54646d496894p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos downward ldbl-96-intel 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f8p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182fap+0L : inexact-ok
+= acos downward ldbl-128 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos tonearest ldbl-128 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos upward ldbl-128 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1.70ef54646d496892p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos downward ldbl-128 0x1.70ef54646d496892137dfd73f5aap-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos tonearest ldbl-128 0x1.70ef54646d496892137dfd73f5aap-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1.70ef54646d496892137dfd73f5aap-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos upward ldbl-128 0x1.70ef54646d496892137dfd73f5aap-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos downward ldbl-128 0x1.70ef54646d496892137dfd73f5a9p-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos tonearest ldbl-128 0x1.70ef54646d496892137dfd73f5a9p-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1.70ef54646d496892137dfd73f5a9p-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos upward ldbl-128 0x1.70ef54646d496892137dfd73f5a9p-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos downward ldbl-128 0x1.70ef54646d496892137dfd73f6p-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos tonearest ldbl-128 0x1.70ef54646d496892137dfd73f6p-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1.70ef54646d496892137dfd73f6p-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos upward ldbl-128 0x1.70ef54646d496892137dfd73f6p-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1.70ef54646d496892137dfd73f6p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1.70ef54646d496892137dfd73f6p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1.70ef54646d496892137dfd73f6p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1.70ef54646d496892137dfd73f6p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos downward ldbl-128 0x1.70ef54646d496892137dfd73f58p-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos tonearest ldbl-128 0x1.70ef54646d496892137dfd73f58p-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1.70ef54646d496892137dfd73f58p-56L : 0x1.921fb54442d182f89a3860a9b84fp+0L : inexact-ok
+= acos upward ldbl-128 0x1.70ef54646d496892137dfd73f58p-56L : 0x1.921fb54442d182f89a3860a9b85p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1.70ef54646d496892137dfd73f58p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1.70ef54646d496892137dfd73f58p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1.70ef54646d496892137dfd73f58p-56L : 0x1.921fb54442d182f89a3860a9b8p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1.70ef54646d496892137dfd73f58p-56L : 0x1.921fb54442d182f89a3860a9b88p+0L : inexact-ok
+acos 0.0625
+= acos downward flt-32 0x1p-4f : 0x1.821d08p+0f : inexact-ok
+= acos tonearest flt-32 0x1p-4f : 0x1.821d0ap+0f : inexact-ok
+= acos towardzero flt-32 0x1p-4f : 0x1.821d08p+0f : inexact-ok
+= acos upward flt-32 0x1p-4f : 0x1.821d0ap+0f : inexact-ok
+= acos downward dbl-64 0x1p-4 : 0x1.821d0965ad9b6p+0 : inexact-ok
+= acos tonearest dbl-64 0x1p-4 : 0x1.821d0965ad9b7p+0 : inexact-ok
+= acos towardzero dbl-64 0x1p-4 : 0x1.821d0965ad9b6p+0 : inexact-ok
+= acos upward dbl-64 0x1p-4 : 0x1.821d0965ad9b7p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x1p-4L : 0x1.821d0965ad9b6b22p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1p-4L : 0x1.821d0965ad9b6b24p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1p-4L : 0x1.821d0965ad9b6b22p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1p-4L : 0x1.821d0965ad9b6b24p+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1p-4L : 0x1.821d0965ad9b6b22p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1p-4L : 0x1.821d0965ad9b6b24p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1p-4L : 0x1.821d0965ad9b6b22p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1p-4L : 0x1.821d0965ad9b6b24p+0L : inexact-ok
+= acos downward ldbl-128 0x1p-4L : 0x1.821d0965ad9b6b237e01535f8603p+0L : inexact-ok
+= acos tonearest ldbl-128 0x1p-4L : 0x1.821d0965ad9b6b237e01535f8604p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1p-4L : 0x1.821d0965ad9b6b237e01535f8603p+0L : inexact-ok
+= acos upward ldbl-128 0x1p-4L : 0x1.821d0965ad9b6b237e01535f8604p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1p-4L : 0x1.821d0965ad9b6b237e01535f86p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1p-4L : 0x1.821d0965ad9b6b237e01535f86p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1p-4L : 0x1.821d0965ad9b6b237e01535f86p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1p-4L : 0x1.821d0965ad9b6b237e01535f868p+0L : inexact-ok
+acos 0x0.ffffffp0
+= acos downward flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos tonearest flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos towardzero flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos upward flt-32 0xf.fffffp-4f : 0x1.6a09e8p-12f : inexact-ok
+= acos downward dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3aap-12 : inexact-ok
+= acos tonearest dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3abp-12 : inexact-ok
+= acos towardzero dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3aap-12 : inexact-ok
+= acos upward dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3abp-12 : inexact-ok
+= acos downward ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos upward ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos downward ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db029p-12L : inexact-ok
+= acos tonearest ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db02ap-12L : inexact-ok
+= acos towardzero ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db029p-12L : inexact-ok
+= acos upward ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db02ap-12L : inexact-ok
+= acos downward ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos upward ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db08p-12L : inexact-ok
+acos -0x0.ffffffp0
+= acos downward flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos tonearest flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos towardzero flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos upward flt-32 -0xf.fffffp-4f : 0x3.2428ccp+0f : inexact-ok
+= acos downward dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d41p+0 : inexact-ok
+= acos tonearest dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d412p+0 : inexact-ok
+= acos towardzero dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d41p+0 : inexact-ok
+= acos upward dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d412p+0 : inexact-ok
+= acos downward ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos upward ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d41152cp+0L : inexact-ok
+= acos downward ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos upward ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d41152cp+0L : inexact-ok
+= acos downward ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c94p+0L : inexact-ok
+= acos tonearest ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c96p+0L : inexact-ok
+= acos towardzero ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c94p+0L : inexact-ok
+= acos upward ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c96p+0L : inexact-ok
+= acos downward ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1cp+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1dp+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1cp+0L : inexact-ok
+= acos upward ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1dp+0L : inexact-ok
+acos 0x0.ffffffff8p0
+= acos downward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos tonearest flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos towardzero flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos upward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos downward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos tonearest dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos towardzero dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos upward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos tonearest flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos towardzero flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos upward flt-32 0xf.fffffp-4f : 0x1.6a09e8p-12f : inexact-ok
+= acos downward dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3aap-12 : inexact-ok
+= acos tonearest dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3abp-12 : inexact-ok
+= acos towardzero dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3aap-12 : inexact-ok
+= acos upward dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3abp-12 : inexact-ok
+= acos downward ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos upward ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos downward ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db029p-12L : inexact-ok
+= acos tonearest ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db02ap-12L : inexact-ok
+= acos towardzero ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db029p-12L : inexact-ok
+= acos upward ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db02ap-12L : inexact-ok
+= acos downward ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos upward ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db08p-12L : inexact-ok
+= acos downward dbl-64 0xf.fffffff8p-4 : 0x1.000000000aaaap-16 : inexact-ok
+= acos tonearest dbl-64 0xf.fffffff8p-4 : 0x1.000000000aaabp-16 : inexact-ok
+= acos towardzero dbl-64 0xf.fffffff8p-4 : 0x1.000000000aaaap-16 : inexact-ok
+= acos upward dbl-64 0xf.fffffff8p-4 : 0x1.000000000aaabp-16 : inexact-ok
+= acos downward ldbl-96-intel 0xf.fffffff8p-4L : 0x1.000000000aaaaaaap-16L : inexact-ok
+= acos tonearest ldbl-96-intel 0xf.fffffff8p-4L : 0x1.000000000aaaaaaap-16L : inexact-ok
+= acos towardzero ldbl-96-intel 0xf.fffffff8p-4L : 0x1.000000000aaaaaaap-16L : inexact-ok
+= acos upward ldbl-96-intel 0xf.fffffff8p-4L : 0x1.000000000aaaaaacp-16L : inexact-ok
+= acos downward ldbl-96-m68k 0xf.fffffff8p-4L : 0x1.000000000aaaaaaap-16L : inexact-ok
+= acos tonearest ldbl-96-m68k 0xf.fffffff8p-4L : 0x1.000000000aaaaaaap-16L : inexact-ok
+= acos towardzero ldbl-96-m68k 0xf.fffffff8p-4L : 0x1.000000000aaaaaaap-16L : inexact-ok
+= acos upward ldbl-96-m68k 0xf.fffffff8p-4L : 0x1.000000000aaaaaacp-16L : inexact-ok
+= acos downward ldbl-128 0xf.fffffff8p-4L : 0x1.000000000aaaaaaaabddddddde0bp-16L : inexact-ok
+= acos tonearest ldbl-128 0xf.fffffff8p-4L : 0x1.000000000aaaaaaaabddddddde0cp-16L : inexact-ok
+= acos towardzero ldbl-128 0xf.fffffff8p-4L : 0x1.000000000aaaaaaaabddddddde0bp-16L : inexact-ok
+= acos upward ldbl-128 0xf.fffffff8p-4L : 0x1.000000000aaaaaaaabddddddde0cp-16L : inexact-ok
+= acos downward ldbl-128ibm 0xf.fffffff8p-4L : 0x1.000000000aaaaaaaabdddddddep-16L : inexact-ok
+= acos tonearest ldbl-128ibm 0xf.fffffff8p-4L : 0x1.000000000aaaaaaaabdddddddep-16L : inexact-ok
+= acos towardzero ldbl-128ibm 0xf.fffffff8p-4L : 0x1.000000000aaaaaaaabdddddddep-16L : inexact-ok
+= acos upward ldbl-128ibm 0xf.fffffff8p-4L : 0x1.000000000aaaaaaaabddddddde8p-16L : inexact-ok
+acos -0x0.ffffffff8p0
+= acos downward flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos tonearest flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos towardzero flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos upward flt-32 -0xf.fffffp-4f : 0x3.2428ccp+0f : inexact-ok
+= acos downward dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d41p+0 : inexact-ok
+= acos tonearest dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d412p+0 : inexact-ok
+= acos towardzero dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d41p+0 : inexact-ok
+= acos upward dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d412p+0 : inexact-ok
+= acos downward ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos upward ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d41152cp+0L : inexact-ok
+= acos downward ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos upward ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d41152cp+0L : inexact-ok
+= acos downward ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c94p+0L : inexact-ok
+= acos tonearest ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c96p+0L : inexact-ok
+= acos towardzero ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c94p+0L : inexact-ok
+= acos upward ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c96p+0L : inexact-ok
+= acos downward ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1cp+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1dp+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1cp+0L : inexact-ok
+= acos upward ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1dp+0L : inexact-ok
+= acos downward flt-32 -0x1p+0f : 0x3.243f68p+0f : inexact-ok
+= acos tonearest flt-32 -0x1p+0f : 0x3.243f6cp+0f : inexact-ok
+= acos towardzero flt-32 -0x1p+0f : 0x3.243f68p+0f : inexact-ok
+= acos upward flt-32 -0x1p+0f : 0x3.243f6cp+0f : inexact-ok
+= acos downward dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos tonearest dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos towardzero dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos upward dbl-64 -0x1p+0 : 0x3.243f6a8885a32p+0 : inexact-ok
+= acos downward ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos upward ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos downward ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos upward ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos downward ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos tonearest ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos towardzero ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos upward ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e0372p+0L : inexact-ok
+= acos downward ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos upward ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+= acos downward dbl-64 -0xf.fffffff8p-4 : 0x3.243e6a8885a2ep+0 : inexact-ok
+= acos tonearest dbl-64 -0xf.fffffff8p-4 : 0x3.243e6a8885a3p+0 : inexact-ok
+= acos towardzero dbl-64 -0xf.fffffff8p-4 : 0x3.243e6a8885a2ep+0 : inexact-ok
+= acos upward dbl-64 -0xf.fffffff8p-4 : 0x3.243e6a8885a3p+0 : inexact-ok
+= acos downward ldbl-96-intel -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28p+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28p+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28p+0L : inexact-ok
+= acos upward ldbl-96-intel -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe2cp+0L : inexact-ok
+= acos downward ldbl-96-m68k -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28p+0L : inexact-ok
+= acos upward ldbl-96-m68k -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe2cp+0L : inexact-ok
+= acos downward ldbl-128 -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28686ede502592p+0L : inexact-ok
+= acos tonearest ldbl-128 -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28686ede502592p+0L : inexact-ok
+= acos towardzero ldbl-128 -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28686ede502592p+0L : inexact-ok
+= acos upward ldbl-128 -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28686ede502594p+0L : inexact-ok
+= acos downward ldbl-128ibm -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28686ede5025p+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28686ede5026p+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28686ede5025p+0L : inexact-ok
+= acos upward ldbl-128ibm -0xf.fffffff8p-4L : 0x3.243e6a8885a2fe28686ede5026p+0L : inexact-ok
+acos 0x0.ffffffffffffp0
+= acos downward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos tonearest flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos towardzero flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos upward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos downward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos tonearest dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos towardzero dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos upward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos tonearest flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos towardzero flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos upward flt-32 0xf.fffffp-4f : 0x1.6a09e8p-12f : inexact-ok
+= acos downward dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3aap-12 : inexact-ok
+= acos tonearest dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3abp-12 : inexact-ok
+= acos towardzero dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3aap-12 : inexact-ok
+= acos upward dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3abp-12 : inexact-ok
+= acos downward ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos upward ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos downward ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db029p-12L : inexact-ok
+= acos tonearest ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db02ap-12L : inexact-ok
+= acos towardzero ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db029p-12L : inexact-ok
+= acos upward ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db02ap-12L : inexact-ok
+= acos downward ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos upward ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db08p-12L : inexact-ok
+= acos downward dbl-64 0xf.fffffffffffp-4 : 0x1.6a09e667f3bcep-24 : inexact-ok
+= acos tonearest dbl-64 0xf.fffffffffffp-4 : 0x1.6a09e667f3bcep-24 : inexact-ok
+= acos towardzero dbl-64 0xf.fffffffffffp-4 : 0x1.6a09e667f3bcep-24 : inexact-ok
+= acos upward dbl-64 0xf.fffffffffffp-4 : 0x1.6a09e667f3bcfp-24 : inexact-ok
+= acos downward ldbl-96-intel 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce734p-24L : inexact-ok
+= acos tonearest ldbl-96-intel 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce734p-24L : inexact-ok
+= acos towardzero ldbl-96-intel 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce734p-24L : inexact-ok
+= acos upward ldbl-96-intel 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce736p-24L : inexact-ok
+= acos downward ldbl-96-m68k 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce734p-24L : inexact-ok
+= acos tonearest ldbl-96-m68k 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce734p-24L : inexact-ok
+= acos towardzero ldbl-96-m68k 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce734p-24L : inexact-ok
+= acos upward ldbl-96-m68k 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce736p-24L : inexact-ok
+= acos downward ldbl-128 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce73430d912615775p-24L : inexact-ok
+= acos tonearest ldbl-128 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce73430d912615775p-24L : inexact-ok
+= acos towardzero ldbl-128 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce73430d912615775p-24L : inexact-ok
+= acos upward ldbl-128 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce73430d912615776p-24L : inexact-ok
+= acos downward ldbl-128ibm 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce73430d9126157p-24L : inexact-ok
+= acos tonearest ldbl-128ibm 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce73430d91261578p-24L : inexact-ok
+= acos towardzero ldbl-128ibm 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce73430d9126157p-24L : inexact-ok
+= acos upward ldbl-128ibm 0xf.fffffffffffp-4L : 0x1.6a09e667f3bce73430d91261578p-24L : inexact-ok
+acos -0x0.ffffffffffffp0
+= acos downward flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos tonearest flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos towardzero flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos upward flt-32 -0xf.fffffp-4f : 0x3.2428ccp+0f : inexact-ok
+= acos downward dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d41p+0 : inexact-ok
+= acos tonearest dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d412p+0 : inexact-ok
+= acos towardzero dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d41p+0 : inexact-ok
+= acos upward dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d412p+0 : inexact-ok
+= acos downward ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos upward ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d41152cp+0L : inexact-ok
+= acos downward ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos upward ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d41152cp+0L : inexact-ok
+= acos downward ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c94p+0L : inexact-ok
+= acos tonearest ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c96p+0L : inexact-ok
+= acos towardzero ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c94p+0L : inexact-ok
+= acos upward ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c96p+0L : inexact-ok
+= acos downward ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1cp+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1dp+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1cp+0L : inexact-ok
+= acos upward ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1dp+0L : inexact-ok
+= acos downward flt-32 -0x1p+0f : 0x3.243f68p+0f : inexact-ok
+= acos tonearest flt-32 -0x1p+0f : 0x3.243f6cp+0f : inexact-ok
+= acos towardzero flt-32 -0x1p+0f : 0x3.243f68p+0f : inexact-ok
+= acos upward flt-32 -0x1p+0f : 0x3.243f6cp+0f : inexact-ok
+= acos downward dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos tonearest dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos towardzero dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos upward dbl-64 -0x1p+0 : 0x3.243f6a8885a32p+0 : inexact-ok
+= acos downward ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos upward ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos downward ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos upward ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos downward ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos tonearest ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos towardzero ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos upward ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e0372p+0L : inexact-ok
+= acos downward ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos upward ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+= acos downward dbl-64 -0xf.fffffffffffp-4 : 0x3.243f691e7bbcap+0 : inexact-ok
+= acos tonearest dbl-64 -0xf.fffffffffffp-4 : 0x3.243f691e7bbcap+0 : inexact-ok
+= acos towardzero dbl-64 -0xf.fffffffffffp-4 : 0x3.243f691e7bbcap+0 : inexact-ok
+= acos upward dbl-64 -0xf.fffffffffffp-4 : 0x3.243f691e7bbccp+0 : inexact-ok
+= acos downward ldbl-96-intel -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0dcp+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0ep+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0dcp+0L : inexact-ok
+= acos upward ldbl-96-intel -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0ep+0L : inexact-ok
+= acos downward ldbl-96-m68k -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0dcp+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0ep+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0dcp+0L : inexact-ok
+= acos upward ldbl-96-m68k -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0ep+0L : inexact-ok
+= acos downward ldbl-128 -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0df563255fd2a5ep+0L : inexact-ok
+= acos tonearest ldbl-128 -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0df563255fd2a5ep+0L : inexact-ok
+= acos towardzero ldbl-128 -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0df563255fd2a5ep+0L : inexact-ok
+= acos upward ldbl-128 -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0df563255fd2a6p+0L : inexact-ok
+= acos downward ldbl-128ibm -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0df563255fd2ap+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0df563255fd2ap+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0df563255fd2ap+0L : inexact-ok
+= acos upward ldbl-128ibm -0xf.fffffffffffp-4L : 0x3.243f691e7bbca0df563255fd2bp+0L : inexact-ok
+acos 0x0.ffffffffffffffffp0
+= acos downward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos tonearest flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos towardzero flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos upward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acos downward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos tonearest dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos towardzero dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos upward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acos downward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos tonearest ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos towardzero ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos upward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acos downward flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos tonearest flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos towardzero flt-32 0xf.fffffp-4f : 0x1.6a09e6p-12f : inexact-ok
+= acos upward flt-32 0xf.fffffp-4f : 0x1.6a09e8p-12f : inexact-ok
+= acos downward dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3aap-12 : inexact-ok
+= acos tonearest dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3abp-12 : inexact-ok
+= acos towardzero dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3aap-12 : inexact-ok
+= acos upward dbl-64 0xf.fffffp-4 : 0x1.6a09e6861f3abp-12 : inexact-ok
+= acos downward ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos upward ldbl-96-intel 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aaddp-12L : inexact-ok
+= acos upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.6a09e6861f3aadd2p-12L : inexact-ok
+= acos downward ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db029p-12L : inexact-ok
+= acos tonearest ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db02ap-12L : inexact-ok
+= acos towardzero ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db029p-12L : inexact-ok
+= acos upward ldbl-128 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db02ap-12L : inexact-ok
+= acos downward ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6dbp-12L : inexact-ok
+= acos upward ldbl-128ibm 0xf.fffffp-4L : 0x1.6a09e6861f3aadd17681ee6db08p-12L : inexact-ok
+= acos downward dbl-64 0xf.ffffffffffff8p-4 : 0x4p-28 : inexact-ok
+= acos tonearest dbl-64 0xf.ffffffffffff8p-4 : 0x4p-28 : inexact-ok
+= acos towardzero dbl-64 0xf.ffffffffffff8p-4 : 0x4p-28 : inexact-ok
+= acos upward dbl-64 0xf.ffffffffffff8p-4 : 0x4.0000000000004p-28 : inexact-ok
+= acos downward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x4.00000000000002a8p-28L : inexact-ok
+= acos tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x4.00000000000002a8p-28L : inexact-ok
+= acos towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x4.00000000000002a8p-28L : inexact-ok
+= acos upward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x4.00000000000002bp-28L : inexact-ok
+= acos downward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x4.00000000000002a8p-28L : inexact-ok
+= acos tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x4.00000000000002a8p-28L : inexact-ok
+= acos towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x4.00000000000002a8p-28L : inexact-ok
+= acos upward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x4.00000000000002bp-28L : inexact-ok
+= acos downward ldbl-128 0xf.ffffffffffff8p-4L : 0x4.00000000000002aaaaaaaaaaaaacp-28L : inexact-ok
+= acos tonearest ldbl-128 0xf.ffffffffffff8p-4L : 0x4.00000000000002aaaaaaaaaaaabp-28L : inexact-ok
+= acos towardzero ldbl-128 0xf.ffffffffffff8p-4L : 0x4.00000000000002aaaaaaaaaaaaacp-28L : inexact-ok
+= acos upward ldbl-128 0xf.ffffffffffff8p-4L : 0x4.00000000000002aaaaaaaaaaaabp-28L : inexact-ok
+= acos downward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x4.00000000000002aaaaaaaaaaaap-28L : inexact-ok
+= acos tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x4.00000000000002aaaaaaaaaaaap-28L : inexact-ok
+= acos towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x4.00000000000002aaaaaaaaaaaap-28L : inexact-ok
+= acos upward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x4.00000000000002aaaaaaaaaaacp-28L : inexact-ok
+= acos downward ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908p-32L : inexact-ok
+= acos tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908p-32L : inexact-ok
+= acos towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908p-32L : inexact-ok
+= acos upward ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc90ap-32L : inexact-ok
+= acos downward ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908p-32L : inexact-ok
+= acos tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908p-32L : inexact-ok
+= acos towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908p-32L : inexact-ok
+= acos upward ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc90ap-32L : inexact-ok
+= acos downward ldbl-128 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908d1269144e98fp-32L : inexact-ok
+= acos tonearest ldbl-128 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908d1269144e99p-32L : inexact-ok
+= acos towardzero ldbl-128 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908d1269144e98fp-32L : inexact-ok
+= acos upward ldbl-128 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908d1269144e99p-32L : inexact-ok
+= acos downward ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908d1269144e98p-32L : inexact-ok
+= acos tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908d1269144e98p-32L : inexact-ok
+= acos towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908d1269144e98p-32L : inexact-ok
+= acos upward ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.6a09e667f3bcc908d1269144eap-32L : inexact-ok
+acos -0x0.ffffffffffffffffp0
+= acos downward flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos tonearest flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos towardzero flt-32 -0xf.fffffp-4f : 0x3.2428c8p+0f : inexact-ok
+= acos upward flt-32 -0xf.fffffp-4f : 0x3.2428ccp+0f : inexact-ok
+= acos downward dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d41p+0 : inexact-ok
+= acos tonearest dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d412p+0 : inexact-ok
+= acos towardzero dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d41p+0 : inexact-ok
+= acos upward dbl-64 -0xf.fffffp-4 : 0x3.2428c9ea1d412p+0 : inexact-ok
+= acos downward ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos upward ldbl-96-intel -0xf.fffffp-4L : 0x3.2428c9ea1d41152cp+0L : inexact-ok
+= acos downward ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d411528p+0L : inexact-ok
+= acos upward ldbl-96-m68k -0xf.fffffp-4L : 0x3.2428c9ea1d41152cp+0L : inexact-ok
+= acos downward ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c94p+0L : inexact-ok
+= acos tonearest ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c96p+0L : inexact-ok
+= acos towardzero ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c94p+0L : inexact-ok
+= acos upward ldbl-128 -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1c96p+0L : inexact-ok
+= acos downward ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1cp+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1dp+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1cp+0L : inexact-ok
+= acos upward ldbl-128ibm -0xf.fffffp-4L : 0x3.2428c9ea1d4115283602220f1dp+0L : inexact-ok
+= acos downward flt-32 -0x1p+0f : 0x3.243f68p+0f : inexact-ok
+= acos tonearest flt-32 -0x1p+0f : 0x3.243f6cp+0f : inexact-ok
+= acos towardzero flt-32 -0x1p+0f : 0x3.243f68p+0f : inexact-ok
+= acos upward flt-32 -0x1p+0f : 0x3.243f6cp+0f : inexact-ok
+= acos downward dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos tonearest dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos towardzero dbl-64 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= acos upward dbl-64 -0x1p+0 : 0x3.243f6a8885a32p+0 : inexact-ok
+= acos downward ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos upward ldbl-96-intel -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos downward ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= acos upward ldbl-96-m68k -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= acos downward ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos tonearest ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos towardzero ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= acos upward ldbl-128 -0x1p+0L : 0x3.243f6a8885a308d313198a2e0372p+0L : inexact-ok
+= acos downward ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= acos upward ldbl-128ibm -0x1p+0L : 0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+= acos downward dbl-64 -0xf.ffffffffffff8p-4 : 0x3.243f6a4885a3p+0 : inexact-ok
+= acos tonearest dbl-64 -0xf.ffffffffffff8p-4 : 0x3.243f6a4885a3p+0 : inexact-ok
+= acos towardzero dbl-64 -0xf.ffffffffffff8p-4 : 0x3.243f6a4885a3p+0 : inexact-ok
+= acos upward dbl-64 -0xf.ffffffffffff8p-4 : 0x3.243f6a4885a32p+0 : inexact-ok
+= acos downward ldbl-96-intel -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308dp+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d4p+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308dp+0L : inexact-ok
+= acos upward ldbl-96-intel -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d4p+0L : inexact-ok
+= acos downward ldbl-96-m68k -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308dp+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d4p+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308dp+0L : inexact-ok
+= acos upward ldbl-96-m68k -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d4p+0L : inexact-ok
+= acos downward ldbl-128 -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d313195f8358c4p+0L : inexact-ok
+= acos tonearest ldbl-128 -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d313195f8358c6p+0L : inexact-ok
+= acos towardzero ldbl-128 -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d313195f8358c4p+0L : inexact-ok
+= acos upward ldbl-128 -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d313195f8358c6p+0L : inexact-ok
+= acos downward ldbl-128ibm -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d313195f8358p+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d313195f8359p+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d313195f8358p+0L : inexact-ok
+= acos upward ldbl-128ibm -0xf.ffffffffffff8p-4L : 0x3.243f6a4885a308d313195f8359p+0L : inexact-ok
+= acos downward ldbl-96-intel -0xf.fffffffffffffffp-4L : 0x3.243f6a871b992268p+0L : inexact-ok
+= acos tonearest ldbl-96-intel -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226cp+0L : inexact-ok
+= acos towardzero ldbl-96-intel -0xf.fffffffffffffffp-4L : 0x3.243f6a871b992268p+0L : inexact-ok
+= acos upward ldbl-96-intel -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226cp+0L : inexact-ok
+= acos downward ldbl-96-m68k -0xf.fffffffffffffffp-4L : 0x3.243f6a871b992268p+0L : inexact-ok
+= acos tonearest ldbl-96-m68k -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226cp+0L : inexact-ok
+= acos towardzero ldbl-96-m68k -0xf.fffffffffffffffp-4L : 0x3.243f6a871b992268p+0L : inexact-ok
+= acos upward ldbl-96-m68k -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226cp+0L : inexact-ok
+= acos downward ldbl-128 -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226b1f5cc1253248p+0L : inexact-ok
+= acos tonearest ldbl-128 -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226b1f5cc125324ap+0L : inexact-ok
+= acos towardzero ldbl-128 -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226b1f5cc1253248p+0L : inexact-ok
+= acos upward ldbl-128 -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226b1f5cc125324ap+0L : inexact-ok
+= acos downward ldbl-128ibm -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226b1f5cc12532p+0L : inexact-ok
+= acos tonearest ldbl-128ibm -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226b1f5cc12532p+0L : inexact-ok
+= acos towardzero ldbl-128ibm -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226b1f5cc12532p+0L : inexact-ok
+= acos upward ldbl-128ibm -0xf.fffffffffffffffp-4L : 0x3.243f6a871b99226b1f5cc12533p+0L : inexact-ok
+acosh 1
+= acosh downward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acosh tonearest flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acosh towardzero flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acosh upward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= acosh downward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acosh tonearest dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acosh towardzero dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acosh upward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= acosh downward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh tonearest ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh towardzero ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh upward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh downward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh tonearest ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh towardzero ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh upward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh downward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh tonearest ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh towardzero ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh upward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh downward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh tonearest ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh towardzero ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= acosh upward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+acosh 7
+= acosh downward flt-32 0x7p+0f : 0x2.a2484cp+0f : inexact-ok
+= acosh tonearest flt-32 0x7p+0f : 0x2.a2485p+0f : inexact-ok
+= acosh towardzero flt-32 0x7p+0f : 0x2.a2484cp+0f : inexact-ok
+= acosh upward flt-32 0x7p+0f : 0x2.a2485p+0f : inexact-ok
+= acosh downward dbl-64 0x7p+0 : 0x2.a2484e3300868p+0 : inexact-ok
+= acosh tonearest dbl-64 0x7p+0 : 0x2.a2484e330086ap+0 : inexact-ok
+= acosh towardzero dbl-64 0x7p+0 : 0x2.a2484e3300868p+0 : inexact-ok
+= acosh upward dbl-64 0x7p+0 : 0x2.a2484e330086ap+0 : inexact-ok
+= acosh downward ldbl-96-intel 0x7p+0L : 0x2.a2484e330086937cp+0L : inexact-ok
+= acosh tonearest ldbl-96-intel 0x7p+0L : 0x2.a2484e330086937cp+0L : inexact-ok
+= acosh towardzero ldbl-96-intel 0x7p+0L : 0x2.a2484e330086937cp+0L : inexact-ok
+= acosh upward ldbl-96-intel 0x7p+0L : 0x2.a2484e330086938p+0L : inexact-ok
+= acosh downward ldbl-96-m68k 0x7p+0L : 0x2.a2484e330086937cp+0L : inexact-ok
+= acosh tonearest ldbl-96-m68k 0x7p+0L : 0x2.a2484e330086937cp+0L : inexact-ok
+= acosh towardzero ldbl-96-m68k 0x7p+0L : 0x2.a2484e330086937cp+0L : inexact-ok
+= acosh upward ldbl-96-m68k 0x7p+0L : 0x2.a2484e330086938p+0L : inexact-ok
+= acosh downward ldbl-128 0x7p+0L : 0x2.a2484e330086937cd097a0311aa4p+0L : inexact-ok
+= acosh tonearest ldbl-128 0x7p+0L : 0x2.a2484e330086937cd097a0311aa6p+0L : inexact-ok
+= acosh towardzero ldbl-128 0x7p+0L : 0x2.a2484e330086937cd097a0311aa4p+0L : inexact-ok
+= acosh upward ldbl-128 0x7p+0L : 0x2.a2484e330086937cd097a0311aa6p+0L : inexact-ok
+= acosh downward ldbl-128ibm 0x7p+0L : 0x2.a2484e330086937cd097a0311ap+0L : inexact-ok
+= acosh tonearest ldbl-128ibm 0x7p+0L : 0x2.a2484e330086937cd097a0311bp+0L : inexact-ok
+= acosh towardzero ldbl-128ibm 0x7p+0L : 0x2.a2484e330086937cd097a0311ap+0L : inexact-ok
+= acosh upward ldbl-128ibm 0x7p+0L : 0x2.a2484e330086937cd097a0311bp+0L : inexact-ok
+asin 0
+= asin downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= asin tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= asin towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= asin upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= asin downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= asin tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= asin towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= asin upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= asin downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= asin upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= asin downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= asin upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= asin downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= asin tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= asin towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= asin upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= asin downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= asin upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+asin -0
+= asin downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= asin tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= asin towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= asin upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= asin downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= asin tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= asin towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= asin upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= asin downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= asin upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= asin downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= asin upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= asin downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= asin tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= asin towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= asin upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= asin downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= asin upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+asin 0.5
+= asin downward flt-32 0x8p-4f : 0x8.60a91p-4f : inexact-ok
+= asin tonearest flt-32 0x8p-4f : 0x8.60a92p-4f : inexact-ok
+= asin towardzero flt-32 0x8p-4f : 0x8.60a91p-4f : inexact-ok
+= asin upward flt-32 0x8p-4f : 0x8.60a92p-4f : inexact-ok
+= asin downward dbl-64 0x8p-4 : 0x8.60a91c16b9b28p-4 : inexact-ok
+= asin tonearest dbl-64 0x8p-4 : 0x8.60a91c16b9b3p-4 : inexact-ok
+= asin towardzero dbl-64 0x8p-4 : 0x8.60a91c16b9b28p-4 : inexact-ok
+= asin upward dbl-64 0x8p-4 : 0x8.60a91c16b9b3p-4 : inexact-ok
+= asin downward ldbl-96-intel 0x8p-4L : 0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin tonearest ldbl-96-intel 0x8p-4L : 0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin towardzero ldbl-96-intel 0x8p-4L : 0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin upward ldbl-96-intel 0x8p-4L : 0x8.60a91c16b9b2c24p-4L : inexact-ok
+= asin downward ldbl-96-m68k 0x8p-4L : 0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin tonearest ldbl-96-m68k 0x8p-4L : 0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin towardzero ldbl-96-m68k 0x8p-4L : 0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin upward ldbl-96-m68k 0x8p-4L : 0x8.60a91c16b9b2c24p-4L : inexact-ok
+= asin downward ldbl-128 0x8p-4L : 0x8.60a91c16b9b2c232dd99707ab3dp-4L : inexact-ok
+= asin tonearest ldbl-128 0x8p-4L : 0x8.60a91c16b9b2c232dd99707ab3d8p-4L : inexact-ok
+= asin towardzero ldbl-128 0x8p-4L : 0x8.60a91c16b9b2c232dd99707ab3dp-4L : inexact-ok
+= asin upward ldbl-128 0x8p-4L : 0x8.60a91c16b9b2c232dd99707ab3d8p-4L : inexact-ok
+= asin downward ldbl-128ibm 0x8p-4L : 0x8.60a91c16b9b2c232dd99707abp-4L : inexact-ok
+= asin tonearest ldbl-128ibm 0x8p-4L : 0x8.60a91c16b9b2c232dd99707ab4p-4L : inexact-ok
+= asin towardzero ldbl-128ibm 0x8p-4L : 0x8.60a91c16b9b2c232dd99707abp-4L : inexact-ok
+= asin upward ldbl-128ibm 0x8p-4L : 0x8.60a91c16b9b2c232dd99707ab4p-4L : inexact-ok
+asin -0.5
+= asin downward flt-32 -0x8p-4f : -0x8.60a92p-4f : inexact-ok
+= asin tonearest flt-32 -0x8p-4f : -0x8.60a92p-4f : inexact-ok
+= asin towardzero flt-32 -0x8p-4f : -0x8.60a91p-4f : inexact-ok
+= asin upward flt-32 -0x8p-4f : -0x8.60a91p-4f : inexact-ok
+= asin downward dbl-64 -0x8p-4 : -0x8.60a91c16b9b3p-4 : inexact-ok
+= asin tonearest dbl-64 -0x8p-4 : -0x8.60a91c16b9b3p-4 : inexact-ok
+= asin towardzero dbl-64 -0x8p-4 : -0x8.60a91c16b9b28p-4 : inexact-ok
+= asin upward dbl-64 -0x8p-4 : -0x8.60a91c16b9b28p-4 : inexact-ok
+= asin downward ldbl-96-intel -0x8p-4L : -0x8.60a91c16b9b2c24p-4L : inexact-ok
+= asin tonearest ldbl-96-intel -0x8p-4L : -0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin towardzero ldbl-96-intel -0x8p-4L : -0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin upward ldbl-96-intel -0x8p-4L : -0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin downward ldbl-96-m68k -0x8p-4L : -0x8.60a91c16b9b2c24p-4L : inexact-ok
+= asin tonearest ldbl-96-m68k -0x8p-4L : -0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin towardzero ldbl-96-m68k -0x8p-4L : -0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin upward ldbl-96-m68k -0x8p-4L : -0x8.60a91c16b9b2c23p-4L : inexact-ok
+= asin downward ldbl-128 -0x8p-4L : -0x8.60a91c16b9b2c232dd99707ab3d8p-4L : inexact-ok
+= asin tonearest ldbl-128 -0x8p-4L : -0x8.60a91c16b9b2c232dd99707ab3d8p-4L : inexact-ok
+= asin towardzero ldbl-128 -0x8p-4L : -0x8.60a91c16b9b2c232dd99707ab3dp-4L : inexact-ok
+= asin upward ldbl-128 -0x8p-4L : -0x8.60a91c16b9b2c232dd99707ab3dp-4L : inexact-ok
+= asin downward ldbl-128ibm -0x8p-4L : -0x8.60a91c16b9b2c232dd99707ab4p-4L : inexact-ok
+= asin tonearest ldbl-128ibm -0x8p-4L : -0x8.60a91c16b9b2c232dd99707ab4p-4L : inexact-ok
+= asin towardzero ldbl-128ibm -0x8p-4L : -0x8.60a91c16b9b2c232dd99707abp-4L : inexact-ok
+= asin upward ldbl-128ibm -0x8p-4L : -0x8.60a91c16b9b2c232dd99707abp-4L : inexact-ok
+asin 1.0
+= asin downward flt-32 0x1p+0f : 0x1.921fb4p+0f : inexact-ok
+= asin tonearest flt-32 0x1p+0f : 0x1.921fb6p+0f : inexact-ok
+= asin towardzero flt-32 0x1p+0f : 0x1.921fb4p+0f : inexact-ok
+= asin upward flt-32 0x1p+0f : 0x1.921fb6p+0f : inexact-ok
+= asin downward dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin tonearest dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin towardzero dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin upward dbl-64 0x1p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= asin downward ldbl-96-intel 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-intel 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin downward ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin downward ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin tonearest ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin towardzero ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin upward ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= asin downward ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin upward ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+asin -1.0
+= asin downward flt-32 -0x1p+0f : -0x1.921fb6p+0f : inexact-ok
+= asin tonearest flt-32 -0x1p+0f : -0x1.921fb6p+0f : inexact-ok
+= asin towardzero flt-32 -0x1p+0f : -0x1.921fb4p+0f : inexact-ok
+= asin upward flt-32 -0x1p+0f : -0x1.921fb4p+0f : inexact-ok
+= asin downward dbl-64 -0x1p+0 : -0x1.921fb54442d19p+0 : inexact-ok
+= asin tonearest dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin towardzero dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin upward dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin downward ldbl-96-intel -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-intel -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin downward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin tonearest ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= asin downward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin upward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+asin 0.75
+= asin downward flt-32 0xcp-4f : 0xd.91a98p-4f : inexact-ok
+= asin tonearest flt-32 0xcp-4f : 0xd.91a99p-4f : inexact-ok
+= asin towardzero flt-32 0xcp-4f : 0xd.91a98p-4f : inexact-ok
+= asin upward flt-32 0xcp-4f : 0xd.91a99p-4f : inexact-ok
+= asin downward dbl-64 0xcp-4 : 0xd.91a98ae3406ep-4 : inexact-ok
+= asin tonearest dbl-64 0xcp-4 : 0xd.91a98ae3406ep-4 : inexact-ok
+= asin towardzero dbl-64 0xcp-4 : 0xd.91a98ae3406ep-4 : inexact-ok
+= asin upward dbl-64 0xcp-4 : 0xd.91a98ae3406e8p-4 : inexact-ok
+= asin downward ldbl-96-intel 0xcp-4L : 0xd.91a98ae3406e04p-4L : inexact-ok
+= asin tonearest ldbl-96-intel 0xcp-4L : 0xd.91a98ae3406e041p-4L : inexact-ok
+= asin towardzero ldbl-96-intel 0xcp-4L : 0xd.91a98ae3406e04p-4L : inexact-ok
+= asin upward ldbl-96-intel 0xcp-4L : 0xd.91a98ae3406e041p-4L : inexact-ok
+= asin downward ldbl-96-m68k 0xcp-4L : 0xd.91a98ae3406e04p-4L : inexact-ok
+= asin tonearest ldbl-96-m68k 0xcp-4L : 0xd.91a98ae3406e041p-4L : inexact-ok
+= asin towardzero ldbl-96-m68k 0xcp-4L : 0xd.91a98ae3406e04p-4L : inexact-ok
+= asin upward ldbl-96-m68k 0xcp-4L : 0xd.91a98ae3406e041p-4L : inexact-ok
+= asin downward ldbl-128 0xcp-4L : 0xd.91a98ae3406e040ac1ed9b06af08p-4L : inexact-ok
+= asin tonearest ldbl-128 0xcp-4L : 0xd.91a98ae3406e040ac1ed9b06af1p-4L : inexact-ok
+= asin towardzero ldbl-128 0xcp-4L : 0xd.91a98ae3406e040ac1ed9b06af08p-4L : inexact-ok
+= asin upward ldbl-128 0xcp-4L : 0xd.91a98ae3406e040ac1ed9b06af1p-4L : inexact-ok
+= asin downward ldbl-128ibm 0xcp-4L : 0xd.91a98ae3406e040ac1ed9b06acp-4L : inexact-ok
+= asin tonearest ldbl-128ibm 0xcp-4L : 0xd.91a98ae3406e040ac1ed9b06bp-4L : inexact-ok
+= asin towardzero ldbl-128ibm 0xcp-4L : 0xd.91a98ae3406e040ac1ed9b06acp-4L : inexact-ok
+= asin upward ldbl-128ibm 0xcp-4L : 0xd.91a98ae3406e040ac1ed9b06bp-4L : inexact-ok
+asin 0x0.ffffffp0
+= asin downward flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin tonearest flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin towardzero flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin upward flt-32 0xf.fffffp-4f : 0x1.920916p+0f : inexact-ok
+= asin downward dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin tonearest dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin towardzero dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin upward dbl-64 0xf.fffffp-4 : 0x1.920914a5da6fap+0 : inexact-ok
+= asin downward ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90cp+0L : inexact-ok
+= asin downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90cp+0L : inexact-ok
+= asin downward ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin tonearest ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin towardzero ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin upward ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81adep+0L : inexact-ok
+= asin downward ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin upward ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+asin -0x0.ffffffp0
+= asin downward flt-32 -0xf.fffffp-4f : -0x1.920916p+0f : inexact-ok
+= asin tonearest flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin towardzero flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin upward flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin downward dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6fap+0 : inexact-ok
+= asin tonearest dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin towardzero dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin upward dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin downward ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90cp+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin downward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90cp+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin tonearest ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok
+= asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok
+= asin downward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin upward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+asin 0x0.ffffffff8p0
+= asin downward flt-32 0x1p+0f : 0x1.921fb4p+0f : inexact-ok
+= asin tonearest flt-32 0x1p+0f : 0x1.921fb6p+0f : inexact-ok
+= asin towardzero flt-32 0x1p+0f : 0x1.921fb4p+0f : inexact-ok
+= asin upward flt-32 0x1p+0f : 0x1.921fb6p+0f : inexact-ok
+= asin downward dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin tonearest dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin towardzero dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin upward dbl-64 0x1p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= asin downward ldbl-96-intel 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-intel 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin downward ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin downward ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin tonearest ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin towardzero ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin upward ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= asin downward ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin upward ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= asin downward flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin tonearest flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin towardzero flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin upward flt-32 0xf.fffffp-4f : 0x1.920916p+0f : inexact-ok
+= asin downward dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin tonearest dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin towardzero dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin upward dbl-64 0xf.fffffp-4 : 0x1.920914a5da6fap+0 : inexact-ok
+= asin downward ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90cp+0L : inexact-ok
+= asin downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90cp+0L : inexact-ok
+= asin downward ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin tonearest ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin towardzero ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin upward ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81adep+0L : inexact-ok
+= asin downward ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin upward ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin downward dbl-64 0xf.fffffff8p-4 : 0x1.921eb54442d17p+0 : inexact-ok
+= asin tonearest dbl-64 0xf.fffffff8p-4 : 0x1.921eb54442d18p+0 : inexact-ok
+= asin towardzero dbl-64 0xf.fffffff8p-4 : 0x1.921eb54442d17p+0 : inexact-ok
+= asin upward dbl-64 0xf.fffffff8p-4 : 0x1.921eb54442d18p+0 : inexact-ok
+= asin downward ldbl-96-intel 0xf.fffffff8p-4L : 0x1.921eb54442d179bep+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0xf.fffffff8p-4L : 0x1.921eb54442d179bep+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0xf.fffffff8p-4L : 0x1.921eb54442d179bep+0L : inexact-ok
+= asin upward ldbl-96-intel 0xf.fffffff8p-4L : 0x1.921eb54442d179cp+0L : inexact-ok
+= asin downward ldbl-96-m68k 0xf.fffffff8p-4L : 0x1.921eb54442d179bep+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0xf.fffffff8p-4L : 0x1.921eb54442d179bep+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0xf.fffffff8p-4L : 0x1.921eb54442d179bep+0L : inexact-ok
+= asin upward ldbl-96-m68k 0xf.fffffff8p-4L : 0x1.921eb54442d179cp+0L : inexact-ok
+= asin downward ldbl-128 0xf.fffffff8p-4L : 0x1.921eb54442d179bedee2193923dap+0L : inexact-ok
+= asin tonearest ldbl-128 0xf.fffffff8p-4L : 0x1.921eb54442d179bedee2193923dap+0L : inexact-ok
+= asin towardzero ldbl-128 0xf.fffffff8p-4L : 0x1.921eb54442d179bedee2193923dap+0L : inexact-ok
+= asin upward ldbl-128 0xf.fffffff8p-4L : 0x1.921eb54442d179bedee2193923dbp+0L : inexact-ok
+= asin downward ldbl-128ibm 0xf.fffffff8p-4L : 0x1.921eb54442d179bedee21939238p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0xf.fffffff8p-4L : 0x1.921eb54442d179bedee2193924p+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0xf.fffffff8p-4L : 0x1.921eb54442d179bedee21939238p+0L : inexact-ok
+= asin upward ldbl-128ibm 0xf.fffffff8p-4L : 0x1.921eb54442d179bedee2193924p+0L : inexact-ok
+asin -0x0.ffffffff8p0
+= asin downward flt-32 -0xf.fffffp-4f : -0x1.920916p+0f : inexact-ok
+= asin tonearest flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin towardzero flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin upward flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin downward dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6fap+0 : inexact-ok
+= asin tonearest dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin towardzero dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin upward dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin downward ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90cp+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin downward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90cp+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin tonearest ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok
+= asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok
+= asin downward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin upward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin downward flt-32 -0x1p+0f : -0x1.921fb6p+0f : inexact-ok
+= asin tonearest flt-32 -0x1p+0f : -0x1.921fb6p+0f : inexact-ok
+= asin towardzero flt-32 -0x1p+0f : -0x1.921fb4p+0f : inexact-ok
+= asin upward flt-32 -0x1p+0f : -0x1.921fb4p+0f : inexact-ok
+= asin downward dbl-64 -0x1p+0 : -0x1.921fb54442d19p+0 : inexact-ok
+= asin tonearest dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin towardzero dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin upward dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin downward ldbl-96-intel -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-intel -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin downward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin tonearest ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= asin downward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin upward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin downward dbl-64 -0xf.fffffff8p-4 : -0x1.921eb54442d18p+0 : inexact-ok
+= asin tonearest dbl-64 -0xf.fffffff8p-4 : -0x1.921eb54442d18p+0 : inexact-ok
+= asin towardzero dbl-64 -0xf.fffffff8p-4 : -0x1.921eb54442d17p+0 : inexact-ok
+= asin upward dbl-64 -0xf.fffffff8p-4 : -0x1.921eb54442d17p+0 : inexact-ok
+= asin downward ldbl-96-intel -0xf.fffffff8p-4L : -0x1.921eb54442d179cp+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0xf.fffffff8p-4L : -0x1.921eb54442d179bep+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0xf.fffffff8p-4L : -0x1.921eb54442d179bep+0L : inexact-ok
+= asin upward ldbl-96-intel -0xf.fffffff8p-4L : -0x1.921eb54442d179bep+0L : inexact-ok
+= asin downward ldbl-96-m68k -0xf.fffffff8p-4L : -0x1.921eb54442d179cp+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0xf.fffffff8p-4L : -0x1.921eb54442d179bep+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0xf.fffffff8p-4L : -0x1.921eb54442d179bep+0L : inexact-ok
+= asin upward ldbl-96-m68k -0xf.fffffff8p-4L : -0x1.921eb54442d179bep+0L : inexact-ok
+= asin downward ldbl-128 -0xf.fffffff8p-4L : -0x1.921eb54442d179bedee2193923dbp+0L : inexact-ok
+= asin tonearest ldbl-128 -0xf.fffffff8p-4L : -0x1.921eb54442d179bedee2193923dap+0L : inexact-ok
+= asin towardzero ldbl-128 -0xf.fffffff8p-4L : -0x1.921eb54442d179bedee2193923dap+0L : inexact-ok
+= asin upward ldbl-128 -0xf.fffffff8p-4L : -0x1.921eb54442d179bedee2193923dap+0L : inexact-ok
+= asin downward ldbl-128ibm -0xf.fffffff8p-4L : -0x1.921eb54442d179bedee2193924p+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0xf.fffffff8p-4L : -0x1.921eb54442d179bedee2193924p+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0xf.fffffff8p-4L : -0x1.921eb54442d179bedee21939238p+0L : inexact-ok
+= asin upward ldbl-128ibm -0xf.fffffff8p-4L : -0x1.921eb54442d179bedee21939238p+0L : inexact-ok
+asin 0x0.ffffffffffffp0
+= asin downward flt-32 0x1p+0f : 0x1.921fb4p+0f : inexact-ok
+= asin tonearest flt-32 0x1p+0f : 0x1.921fb6p+0f : inexact-ok
+= asin towardzero flt-32 0x1p+0f : 0x1.921fb4p+0f : inexact-ok
+= asin upward flt-32 0x1p+0f : 0x1.921fb6p+0f : inexact-ok
+= asin downward dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin tonearest dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin towardzero dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin upward dbl-64 0x1p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= asin downward ldbl-96-intel 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-intel 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin downward ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin downward ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin tonearest ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin towardzero ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin upward ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= asin downward ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin upward ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= asin downward flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin tonearest flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin towardzero flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin upward flt-32 0xf.fffffp-4f : 0x1.920916p+0f : inexact-ok
+= asin downward dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin tonearest dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin towardzero dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin upward dbl-64 0xf.fffffp-4 : 0x1.920914a5da6fap+0 : inexact-ok
+= asin downward ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90cp+0L : inexact-ok
+= asin downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90cp+0L : inexact-ok
+= asin downward ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin tonearest ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin towardzero ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin upward ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81adep+0L : inexact-ok
+= asin downward ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin upward ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin downward dbl-64 0xf.fffffffffffp-4 : 0x1.921fb3da38eb1p+0 : inexact-ok
+= asin tonearest dbl-64 0xf.fffffffffffp-4 : 0x1.921fb3da38eb2p+0 : inexact-ok
+= asin towardzero dbl-64 0xf.fffffffffffp-4 : 0x1.921fb3da38eb1p+0 : inexact-ok
+= asin upward dbl-64 0xf.fffffffffffp-4 : 0x1.921fb3da38eb2p+0 : inexact-ok
+= asin downward ldbl-96-intel 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c74p+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c76p+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c74p+0L : inexact-ok
+= asin upward ldbl-96-intel 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c76p+0L : inexact-ok
+= asin downward ldbl-96-m68k 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c74p+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c76p+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c74p+0L : inexact-ok
+= asin upward ldbl-96-m68k 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c76p+0L : inexact-ok
+= asin downward ldbl-128 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c75cca590e628a5p+0L : inexact-ok
+= asin tonearest ldbl-128 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c75cca590e628a6p+0L : inexact-ok
+= asin towardzero ldbl-128 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c75cca590e628a5p+0L : inexact-ok
+= asin upward ldbl-128 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c75cca590e628a6p+0L : inexact-ok
+= asin downward ldbl-128ibm 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c75cca590e6288p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c75cca590e6288p+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c75cca590e6288p+0L : inexact-ok
+= asin upward ldbl-128ibm 0xf.fffffffffffp-4L : 0x1.921fb3da38eb1c75cca590e629p+0L : inexact-ok
+asin -0x0.ffffffffffffp0
+= asin downward flt-32 -0xf.fffffp-4f : -0x1.920916p+0f : inexact-ok
+= asin tonearest flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin towardzero flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin upward flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin downward dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6fap+0 : inexact-ok
+= asin tonearest dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin towardzero dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin upward dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin downward ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90cp+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin downward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90cp+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin tonearest ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok
+= asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok
+= asin downward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin upward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin downward flt-32 -0x1p+0f : -0x1.921fb6p+0f : inexact-ok
+= asin tonearest flt-32 -0x1p+0f : -0x1.921fb6p+0f : inexact-ok
+= asin towardzero flt-32 -0x1p+0f : -0x1.921fb4p+0f : inexact-ok
+= asin upward flt-32 -0x1p+0f : -0x1.921fb4p+0f : inexact-ok
+= asin downward dbl-64 -0x1p+0 : -0x1.921fb54442d19p+0 : inexact-ok
+= asin tonearest dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin towardzero dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin upward dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin downward ldbl-96-intel -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-intel -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin downward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin tonearest ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= asin downward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin upward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin downward dbl-64 -0xf.fffffffffffp-4 : -0x1.921fb3da38eb2p+0 : inexact-ok
+= asin tonearest dbl-64 -0xf.fffffffffffp-4 : -0x1.921fb3da38eb2p+0 : inexact-ok
+= asin towardzero dbl-64 -0xf.fffffffffffp-4 : -0x1.921fb3da38eb1p+0 : inexact-ok
+= asin upward dbl-64 -0xf.fffffffffffp-4 : -0x1.921fb3da38eb1p+0 : inexact-ok
+= asin downward ldbl-96-intel -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c76p+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c76p+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c74p+0L : inexact-ok
+= asin upward ldbl-96-intel -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c74p+0L : inexact-ok
+= asin downward ldbl-96-m68k -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c76p+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c76p+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c74p+0L : inexact-ok
+= asin upward ldbl-96-m68k -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c74p+0L : inexact-ok
+= asin downward ldbl-128 -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c75cca590e628a6p+0L : inexact-ok
+= asin tonearest ldbl-128 -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c75cca590e628a6p+0L : inexact-ok
+= asin towardzero ldbl-128 -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c75cca590e628a5p+0L : inexact-ok
+= asin upward ldbl-128 -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c75cca590e628a5p+0L : inexact-ok
+= asin downward ldbl-128ibm -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c75cca590e629p+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c75cca590e6288p+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c75cca590e6288p+0L : inexact-ok
+= asin upward ldbl-128ibm -0xf.fffffffffffp-4L : -0x1.921fb3da38eb1c75cca590e6288p+0L : inexact-ok
+asin 0x0.ffffffffffffffffp0
+= asin downward flt-32 0x1p+0f : 0x1.921fb4p+0f : inexact-ok
+= asin tonearest flt-32 0x1p+0f : 0x1.921fb6p+0f : inexact-ok
+= asin towardzero flt-32 0x1p+0f : 0x1.921fb4p+0f : inexact-ok
+= asin upward flt-32 0x1p+0f : 0x1.921fb6p+0f : inexact-ok
+= asin downward dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin tonearest dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin towardzero dbl-64 0x1p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= asin upward dbl-64 0x1p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= asin downward ldbl-96-intel 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-intel 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin downward ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-m68k 0x1p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= asin downward ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin tonearest ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin towardzero ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin upward ldbl-128 0x1p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= asin downward ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin upward ldbl-128ibm 0x1p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= asin downward flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin tonearest flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin towardzero flt-32 0xf.fffffp-4f : 0x1.920914p+0f : inexact-ok
+= asin upward flt-32 0xf.fffffp-4f : 0x1.920916p+0f : inexact-ok
+= asin downward dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin tonearest dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin towardzero dbl-64 0xf.fffffp-4 : 0x1.920914a5da6f9p+0 : inexact-ok
+= asin upward dbl-64 0xf.fffffp-4 : 0x1.920914a5da6fap+0 : inexact-ok
+= asin downward ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-intel 0xf.fffffp-4L : 0x1.920914a5da6f90cp+0L : inexact-ok
+= asin downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.920914a5da6f90cp+0L : inexact-ok
+= asin downward ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin tonearest ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin towardzero ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin upward ldbl-128 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81adep+0L : inexact-ok
+= asin downward ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin upward ldbl-128ibm 0xf.fffffp-4L : 0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin downward dbl-64 0xf.ffffffffffff8p-4 : 0x1.921fb50442d18p+0 : inexact-ok
+= asin tonearest dbl-64 0xf.ffffffffffff8p-4 : 0x1.921fb50442d18p+0 : inexact-ok
+= asin towardzero dbl-64 0xf.ffffffffffff8p-4 : 0x1.921fb50442d18p+0 : inexact-ok
+= asin upward dbl-64 0xf.ffffffffffff8p-4 : 0x1.921fb50442d19p+0 : inexact-ok
+= asin downward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18468p+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.921fb50442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18468p+0L : inexact-ok
+= asin upward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.921fb50442d1846ap+0L : inexact-ok
+= asin downward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18468p+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.921fb50442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18468p+0L : inexact-ok
+= asin upward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.921fb50442d1846ap+0L : inexact-ok
+= asin downward ldbl-128 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18469898c9a6c570dp+0L : inexact-ok
+= asin tonearest ldbl-128 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18469898c9a6c570ep+0L : inexact-ok
+= asin towardzero ldbl-128 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18469898c9a6c570dp+0L : inexact-ok
+= asin upward ldbl-128 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18469898c9a6c570ep+0L : inexact-ok
+= asin downward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18469898c9a6c57p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18469898c9a6c57p+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18469898c9a6c57p+0L : inexact-ok
+= asin upward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.921fb50442d18469898c9a6c578p+0L : inexact-ok
+= asin downward ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79ep+0L : inexact-ok
+= asin tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e02p+0L : inexact-ok
+= asin towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79ep+0L : inexact-ok
+= asin upward ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e02p+0L : inexact-ok
+= asin downward ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79ep+0L : inexact-ok
+= asin tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e02p+0L : inexact-ok
+= asin towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79ep+0L : inexact-ok
+= asin upward ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e02p+0L : inexact-ok
+= asin downward ldbl-128 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e0195cffc0e3091p+0L : inexact-ok
+= asin tonearest ldbl-128 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e0195cffc0e3092p+0L : inexact-ok
+= asin towardzero ldbl-128 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e0195cffc0e3091p+0L : inexact-ok
+= asin upward ldbl-128 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e0195cffc0e3092p+0L : inexact-ok
+= asin downward ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e0195cffc0e308p+0L : inexact-ok
+= asin tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e0195cffc0e308p+0L : inexact-ok
+= asin towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e0195cffc0e308p+0L : inexact-ok
+= asin upward ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.921fb542d8c79e0195cffc0e31p+0L : inexact-ok
+asin -0x0.ffffffffffffffffp0
+= asin downward flt-32 -0xf.fffffp-4f : -0x1.920916p+0f : inexact-ok
+= asin tonearest flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin towardzero flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin upward flt-32 -0xf.fffffp-4f : -0x1.920914p+0f : inexact-ok
+= asin downward dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6fap+0 : inexact-ok
+= asin tonearest dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin towardzero dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin upward dbl-64 -0xf.fffffp-4 : -0x1.920914a5da6f9p+0 : inexact-ok
+= asin downward ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90cp+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-intel -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin downward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90cp+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.920914a5da6f90bep+0L : inexact-ok
+= asin downward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin tonearest ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81addp+0L : inexact-ok
+= asin towardzero ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok
+= asin upward ldbl-128 -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81adcp+0L : inexact-ok
+= asin downward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81bp+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin upward ldbl-128ibm -0xf.fffffp-4L : -0x1.920914a5da6f90beac755cf81a8p+0L : inexact-ok
+= asin downward flt-32 -0x1p+0f : -0x1.921fb6p+0f : inexact-ok
+= asin tonearest flt-32 -0x1p+0f : -0x1.921fb6p+0f : inexact-ok
+= asin towardzero flt-32 -0x1p+0f : -0x1.921fb4p+0f : inexact-ok
+= asin upward flt-32 -0x1p+0f : -0x1.921fb4p+0f : inexact-ok
+= asin downward dbl-64 -0x1p+0 : -0x1.921fb54442d19p+0 : inexact-ok
+= asin tonearest dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin towardzero dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin upward dbl-64 -0x1p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= asin downward ldbl-96-intel -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-intel -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin downward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin upward ldbl-96-m68k -0x1p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= asin downward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin tonearest ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= asin towardzero ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= asin upward ldbl-128 -0x1p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= asin downward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin upward ldbl-128ibm -0x1p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= asin downward dbl-64 -0xf.ffffffffffff8p-4 : -0x1.921fb50442d19p+0 : inexact-ok
+= asin tonearest dbl-64 -0xf.ffffffffffff8p-4 : -0x1.921fb50442d18p+0 : inexact-ok
+= asin towardzero dbl-64 -0xf.ffffffffffff8p-4 : -0x1.921fb50442d18p+0 : inexact-ok
+= asin upward dbl-64 -0xf.ffffffffffff8p-4 : -0x1.921fb50442d18p+0 : inexact-ok
+= asin downward ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x1.921fb50442d1846ap+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x1.921fb50442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18468p+0L : inexact-ok
+= asin upward ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18468p+0L : inexact-ok
+= asin downward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x1.921fb50442d1846ap+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x1.921fb50442d1846ap+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18468p+0L : inexact-ok
+= asin upward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18468p+0L : inexact-ok
+= asin downward ldbl-128 -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c570ep+0L : inexact-ok
+= asin tonearest ldbl-128 -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c570dp+0L : inexact-ok
+= asin towardzero ldbl-128 -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c570dp+0L : inexact-ok
+= asin upward ldbl-128 -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c570dp+0L : inexact-ok
+= asin downward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c578p+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c57p+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c57p+0L : inexact-ok
+= asin upward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x1.921fb50442d18469898c9a6c57p+0L : inexact-ok
+= asin downward ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e02p+0L : inexact-ok
+= asin tonearest ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e02p+0L : inexact-ok
+= asin towardzero ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79ep+0L : inexact-ok
+= asin upward ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79ep+0L : inexact-ok
+= asin downward ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e02p+0L : inexact-ok
+= asin tonearest ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e02p+0L : inexact-ok
+= asin towardzero ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79ep+0L : inexact-ok
+= asin upward ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79ep+0L : inexact-ok
+= asin downward ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e3092p+0L : inexact-ok
+= asin tonearest ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e3091p+0L : inexact-ok
+= asin towardzero ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e3091p+0L : inexact-ok
+= asin upward ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e3091p+0L : inexact-ok
+= asin downward ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e31p+0L : inexact-ok
+= asin tonearest ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e308p+0L : inexact-ok
+= asin towardzero ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e308p+0L : inexact-ok
+= asin upward ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.921fb542d8c79e0195cffc0e308p+0L : inexact-ok
+asinh 0
+= asinh downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= asinh tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= asinh towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= asinh upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= asinh downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= asinh tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= asinh towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= asinh upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= asinh downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= asinh upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+asinh -0
+= asinh downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= asinh tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= asinh towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= asinh upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= asinh downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= asinh tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= asinh towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= asinh upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= asinh downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= asinh upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+asinh 0.75
+= asinh downward flt-32 0xcp-4f : 0xb.17217p-4f : inexact-ok
+= asinh tonearest flt-32 0xcp-4f : 0xb.17218p-4f : inexact-ok
+= asinh towardzero flt-32 0xcp-4f : 0xb.17217p-4f : inexact-ok
+= asinh upward flt-32 0xcp-4f : 0xb.17218p-4f : inexact-ok
+= asinh downward dbl-64 0xcp-4 : 0xb.17217f7d1cf78p-4 : inexact-ok
+= asinh tonearest dbl-64 0xcp-4 : 0xb.17217f7d1cf78p-4 : inexact-ok
+= asinh towardzero dbl-64 0xcp-4 : 0xb.17217f7d1cf78p-4 : inexact-ok
+= asinh upward dbl-64 0xcp-4 : 0xb.17217f7d1cf8p-4 : inexact-ok
+= asinh downward ldbl-96-intel 0xcp-4L : 0xb.17217f7d1cf79abp-4L : inexact-ok
+= asinh tonearest ldbl-96-intel 0xcp-4L : 0xb.17217f7d1cf79acp-4L : inexact-ok
+= asinh towardzero ldbl-96-intel 0xcp-4L : 0xb.17217f7d1cf79abp-4L : inexact-ok
+= asinh upward ldbl-96-intel 0xcp-4L : 0xb.17217f7d1cf79acp-4L : inexact-ok
+= asinh downward ldbl-96-m68k 0xcp-4L : 0xb.17217f7d1cf79abp-4L : inexact-ok
+= asinh tonearest ldbl-96-m68k 0xcp-4L : 0xb.17217f7d1cf79acp-4L : inexact-ok
+= asinh towardzero ldbl-96-m68k 0xcp-4L : 0xb.17217f7d1cf79abp-4L : inexact-ok
+= asinh upward ldbl-96-m68k 0xcp-4L : 0xb.17217f7d1cf79acp-4L : inexact-ok
+= asinh downward ldbl-128 0xcp-4L : 0xb.17217f7d1cf79abc9e3b39803f28p-4L : inexact-ok
+= asinh tonearest ldbl-128 0xcp-4L : 0xb.17217f7d1cf79abc9e3b39803f3p-4L : inexact-ok
+= asinh towardzero ldbl-128 0xcp-4L : 0xb.17217f7d1cf79abc9e3b39803f28p-4L : inexact-ok
+= asinh upward ldbl-128 0xcp-4L : 0xb.17217f7d1cf79abc9e3b39803f3p-4L : inexact-ok
+= asinh downward ldbl-128ibm 0xcp-4L : 0xb.17217f7d1cf79abc9e3b39803cp-4L : inexact-ok
+= asinh tonearest ldbl-128ibm 0xcp-4L : 0xb.17217f7d1cf79abc9e3b39804p-4L : inexact-ok
+= asinh towardzero ldbl-128ibm 0xcp-4L : 0xb.17217f7d1cf79abc9e3b39803cp-4L : inexact-ok
+= asinh upward ldbl-128ibm 0xcp-4L : 0xb.17217f7d1cf79abc9e3b39804p-4L : inexact-ok
+atan 0
+= atan downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+atan -0
+= atan downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= atan tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= atan towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= atan upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= atan downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= atan tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= atan towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= atan upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= atan downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= atan tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= atan towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= atan upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= atan downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= atan tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= atan towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= atan upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= atan downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= atan tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= atan towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= atan upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= atan downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= atan tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= atan towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= atan upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+atan max
+= atan downward flt-32 0xf.fffffp+124f : 0x1.921fb4p+0f : inexact-ok
+= atan tonearest flt-32 0xf.fffffp+124f : 0x1.921fb6p+0f : inexact-ok
+= atan towardzero flt-32 0xf.fffffp+124f : 0x1.921fb4p+0f : inexact-ok
+= atan upward flt-32 0xf.fffffp+124f : 0x1.921fb6p+0f : inexact-ok
+= atan downward dbl-64 0xf.fffffp+124 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan tonearest dbl-64 0xf.fffffp+124 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan towardzero dbl-64 0xf.fffffp+124 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan upward dbl-64 0xf.fffffp+124 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan downward ldbl-96-intel 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan tonearest ldbl-96-intel 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-intel 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-intel 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan downward ldbl-96-m68k 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan tonearest ldbl-96-m68k 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-m68k 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-m68k 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan downward ldbl-128 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan tonearest ldbl-128 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan towardzero ldbl-128 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan upward ldbl-128 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan downward ldbl-128ibm 0xf.fffffp+124L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan tonearest ldbl-128ibm 0xf.fffffp+124L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan towardzero ldbl-128ibm 0xf.fffffp+124L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan upward ldbl-128ibm 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan downward dbl-64 0xf.ffffffffffff8p+1020 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan upward dbl-64 0xf.ffffffffffff8p+1020 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan downward ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan downward ldbl-128 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan tonearest ldbl-128 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan towardzero ldbl-128 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan upward ldbl-128 0xf.fffffffffffffffp+16380L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+atan -max
+= atan downward flt-32 -0xf.fffffp+124f : -0x1.921fb6p+0f : inexact-ok
+= atan tonearest flt-32 -0xf.fffffp+124f : -0x1.921fb6p+0f : inexact-ok
+= atan towardzero flt-32 -0xf.fffffp+124f : -0x1.921fb4p+0f : inexact-ok
+= atan upward flt-32 -0xf.fffffp+124f : -0x1.921fb4p+0f : inexact-ok
+= atan downward dbl-64 -0xf.fffffp+124 : -0x1.921fb54442d19p+0 : inexact-ok
+= atan tonearest dbl-64 -0xf.fffffp+124 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan towardzero dbl-64 -0xf.fffffp+124 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan upward dbl-64 -0xf.fffffp+124 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan downward ldbl-96-intel -0xf.fffffp+124L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan tonearest ldbl-96-intel -0xf.fffffp+124L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-intel -0xf.fffffp+124L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-intel -0xf.fffffp+124L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan downward ldbl-96-m68k -0xf.fffffp+124L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan tonearest ldbl-96-m68k -0xf.fffffp+124L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-m68k -0xf.fffffp+124L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-m68k -0xf.fffffp+124L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan downward ldbl-128 -0xf.fffffp+124L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan tonearest ldbl-128 -0xf.fffffp+124L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan towardzero ldbl-128 -0xf.fffffp+124L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan upward ldbl-128 -0xf.fffffp+124L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan downward ldbl-128ibm -0xf.fffffp+124L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan tonearest ldbl-128ibm -0xf.fffffp+124L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan towardzero ldbl-128ibm -0xf.fffffp+124L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan upward ldbl-128ibm -0xf.fffffp+124L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan downward dbl-64 -0xf.ffffffffffff8p+1020 : -0x1.921fb54442d19p+0 : inexact-ok
+= atan tonearest dbl-64 -0xf.ffffffffffff8p+1020 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan towardzero dbl-64 -0xf.ffffffffffff8p+1020 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan upward dbl-64 -0xf.ffffffffffff8p+1020 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan downward ldbl-96-intel -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-intel -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan downward ldbl-128 -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan tonearest ldbl-128 -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan towardzero ldbl-128 -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan upward ldbl-128 -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan downward ldbl-128ibm -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan upward ldbl-128ibm -0xf.ffffffffffff8p+1020L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan downward ldbl-96-intel -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-intel -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan downward ldbl-128 -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan tonearest ldbl-128 -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan towardzero ldbl-128 -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan upward ldbl-128 -0xf.fffffffffffffffp+16380L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+atan 1
+= atan downward flt-32 0x1p+0f : 0xc.90fdap-4f : inexact-ok
+= atan tonearest flt-32 0x1p+0f : 0xc.90fdbp-4f : inexact-ok
+= atan towardzero flt-32 0x1p+0f : 0xc.90fdap-4f : inexact-ok
+= atan upward flt-32 0x1p+0f : 0xc.90fdbp-4f : inexact-ok
+= atan downward dbl-64 0x1p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan tonearest dbl-64 0x1p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan towardzero dbl-64 0x1p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan upward dbl-64 0x1p+0 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan downward ldbl-96-intel 0x1p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan tonearest ldbl-96-intel 0x1p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan towardzero ldbl-96-intel 0x1p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan upward ldbl-96-intel 0x1p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan downward ldbl-96-m68k 0x1p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan tonearest ldbl-96-m68k 0x1p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan towardzero ldbl-96-m68k 0x1p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan upward ldbl-96-m68k 0x1p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan downward ldbl-128 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan tonearest ldbl-128 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan towardzero ldbl-128 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan upward ldbl-128 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80dc8p-4L : inexact-ok
+= atan downward ldbl-128ibm 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan tonearest ldbl-128ibm 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan towardzero ldbl-128ibm 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan upward ldbl-128ibm 0x1p+0L : 0xc.90fdaa22168c234c4c6628b81p-4L : inexact-ok
+atan -1
+= atan downward flt-32 -0x1p+0f : -0xc.90fdbp-4f : inexact-ok
+= atan tonearest flt-32 -0x1p+0f : -0xc.90fdbp-4f : inexact-ok
+= atan towardzero flt-32 -0x1p+0f : -0xc.90fdap-4f : inexact-ok
+= atan upward flt-32 -0x1p+0f : -0xc.90fdap-4f : inexact-ok
+= atan downward dbl-64 -0x1p+0 : -0xc.90fdaa22168c8p-4 : inexact-ok
+= atan tonearest dbl-64 -0x1p+0 : -0xc.90fdaa22168cp-4 : inexact-ok
+= atan towardzero dbl-64 -0x1p+0 : -0xc.90fdaa22168cp-4 : inexact-ok
+= atan upward dbl-64 -0x1p+0 : -0xc.90fdaa22168cp-4 : inexact-ok
+= atan downward ldbl-96-intel -0x1p+0L : -0xc.90fdaa22168c235p-4L : inexact-ok
+= atan tonearest ldbl-96-intel -0x1p+0L : -0xc.90fdaa22168c235p-4L : inexact-ok
+= atan towardzero ldbl-96-intel -0x1p+0L : -0xc.90fdaa22168c234p-4L : inexact-ok
+= atan upward ldbl-96-intel -0x1p+0L : -0xc.90fdaa22168c234p-4L : inexact-ok
+= atan downward ldbl-96-m68k -0x1p+0L : -0xc.90fdaa22168c235p-4L : inexact-ok
+= atan tonearest ldbl-96-m68k -0x1p+0L : -0xc.90fdaa22168c235p-4L : inexact-ok
+= atan towardzero ldbl-96-m68k -0x1p+0L : -0xc.90fdaa22168c234p-4L : inexact-ok
+= atan upward ldbl-96-m68k -0x1p+0L : -0xc.90fdaa22168c234p-4L : inexact-ok
+= atan downward ldbl-128 -0x1p+0L : -0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan tonearest ldbl-128 -0x1p+0L : -0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan towardzero ldbl-128 -0x1p+0L : -0xc.90fdaa22168c234c4c6628b80db8p-4L : inexact-ok
+= atan upward ldbl-128 -0x1p+0L : -0xc.90fdaa22168c234c4c6628b80db8p-4L : inexact-ok
+= atan downward ldbl-128ibm -0x1p+0L : -0xc.90fdaa22168c234c4c6628b81p-4L : inexact-ok
+= atan tonearest ldbl-128ibm -0x1p+0L : -0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan towardzero ldbl-128ibm -0x1p+0L : -0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan upward ldbl-128ibm -0x1p+0L : -0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+atan 0.75
+= atan downward flt-32 0xcp-4f : 0xa.4bc7dp-4f : inexact-ok
+= atan tonearest flt-32 0xcp-4f : 0xa.4bc7dp-4f : inexact-ok
+= atan towardzero flt-32 0xcp-4f : 0xa.4bc7dp-4f : inexact-ok
+= atan upward flt-32 0xcp-4f : 0xa.4bc7ep-4f : inexact-ok
+= atan downward dbl-64 0xcp-4 : 0xa.4bc7d1934f708p-4 : inexact-ok
+= atan tonearest dbl-64 0xcp-4 : 0xa.4bc7d1934f708p-4 : inexact-ok
+= atan towardzero dbl-64 0xcp-4 : 0xa.4bc7d1934f708p-4 : inexact-ok
+= atan upward dbl-64 0xcp-4 : 0xa.4bc7d1934f71p-4 : inexact-ok
+= atan downward ldbl-96-intel 0xcp-4L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan tonearest ldbl-96-intel 0xcp-4L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan towardzero ldbl-96-intel 0xcp-4L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan upward ldbl-96-intel 0xcp-4L : 0xa.4bc7d1934f70925p-4L : inexact-ok
+= atan downward ldbl-96-m68k 0xcp-4L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan tonearest ldbl-96-m68k 0xcp-4L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan towardzero ldbl-96-m68k 0xcp-4L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan upward ldbl-96-m68k 0xcp-4L : 0xa.4bc7d1934f70925p-4L : inexact-ok
+= atan downward ldbl-128 0xcp-4L : 0xa.4bc7d1934f7092419a87f2a457d8p-4L : inexact-ok
+= atan tonearest ldbl-128 0xcp-4L : 0xa.4bc7d1934f7092419a87f2a457d8p-4L : inexact-ok
+= atan towardzero ldbl-128 0xcp-4L : 0xa.4bc7d1934f7092419a87f2a457d8p-4L : inexact-ok
+= atan upward ldbl-128 0xcp-4L : 0xa.4bc7d1934f7092419a87f2a457ep-4L : inexact-ok
+= atan downward ldbl-128ibm 0xcp-4L : 0xa.4bc7d1934f7092419a87f2a454p-4L : inexact-ok
+= atan tonearest ldbl-128ibm 0xcp-4L : 0xa.4bc7d1934f7092419a87f2a458p-4L : inexact-ok
+= atan towardzero ldbl-128ibm 0xcp-4L : 0xa.4bc7d1934f7092419a87f2a454p-4L : inexact-ok
+= atan upward ldbl-128ibm 0xcp-4L : 0xa.4bc7d1934f7092419a87f2a458p-4L : inexact-ok
+atan 0x1p-100 missing-underflow
+= atan downward flt-32 0x1p-100f : 0xf.fffffp-104f : inexact-ok
+= atan tonearest flt-32 0x1p-100f : 0x1p-100f : inexact-ok
+= atan towardzero flt-32 0x1p-100f : 0xf.fffffp-104f : inexact-ok
+= atan upward flt-32 0x1p-100f : 0x1p-100f : inexact-ok
+= atan downward dbl-64 0x1p-100 : 0xf.ffffffffffff8p-104 : inexact-ok
+= atan tonearest dbl-64 0x1p-100 : 0x1p-100 : inexact-ok
+= atan towardzero dbl-64 0x1p-100 : 0xf.ffffffffffff8p-104 : inexact-ok
+= atan upward dbl-64 0x1p-100 : 0x1p-100 : inexact-ok
+= atan downward ldbl-96-intel 0x1p-100L : 0xf.fffffffffffffffp-104L : inexact-ok
+= atan tonearest ldbl-96-intel 0x1p-100L : 0x1p-100L : inexact-ok
+= atan towardzero ldbl-96-intel 0x1p-100L : 0xf.fffffffffffffffp-104L : inexact-ok
+= atan upward ldbl-96-intel 0x1p-100L : 0x1p-100L : inexact-ok
+= atan downward ldbl-96-m68k 0x1p-100L : 0xf.fffffffffffffffp-104L : inexact-ok
+= atan tonearest ldbl-96-m68k 0x1p-100L : 0x1p-100L : inexact-ok
+= atan towardzero ldbl-96-m68k 0x1p-100L : 0xf.fffffffffffffffp-104L : inexact-ok
+= atan upward ldbl-96-m68k 0x1p-100L : 0x1p-100L : inexact-ok
+= atan downward ldbl-128 0x1p-100L : 0xf.fffffffffffffffffffffffffff8p-104L : inexact-ok
+= atan tonearest ldbl-128 0x1p-100L : 0x1p-100L : inexact-ok
+= atan towardzero ldbl-128 0x1p-100L : 0xf.fffffffffffffffffffffffffff8p-104L : inexact-ok
+= atan upward ldbl-128 0x1p-100L : 0x1p-100L : inexact-ok
+= atan downward ldbl-128ibm 0x1p-100L : 0xf.fffffffffffffffffffffffffcp-104L : inexact-ok
+= atan tonearest ldbl-128ibm 0x1p-100L : 0x1p-100L : inexact-ok
+= atan towardzero ldbl-128ibm 0x1p-100L : 0xf.fffffffffffffffffffffffffcp-104L : inexact-ok
+= atan upward ldbl-128ibm 0x1p-100L : 0x1p-100L : inexact-ok
+atan 0x1p-600 missing-underflow
+= atan downward flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= atan tonearest flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= atan towardzero flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= atan upward flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= atan downward dbl-64 0x8p-152 : 0x7.ffffffffffffcp-152 : inexact-ok
+= atan tonearest dbl-64 0x8p-152 : 0x8p-152 : inexact-ok
+= atan towardzero dbl-64 0x8p-152 : 0x7.ffffffffffffcp-152 : inexact-ok
+= atan upward dbl-64 0x8p-152 : 0x8p-152 : inexact-ok
+= atan downward ldbl-96-intel 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= atan tonearest ldbl-96-intel 0x8p-152L : 0x8p-152L : inexact-ok
+= atan towardzero ldbl-96-intel 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= atan upward ldbl-96-intel 0x8p-152L : 0x8p-152L : inexact-ok
+= atan downward ldbl-96-m68k 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= atan tonearest ldbl-96-m68k 0x8p-152L : 0x8p-152L : inexact-ok
+= atan towardzero ldbl-96-m68k 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= atan upward ldbl-96-m68k 0x8p-152L : 0x8p-152L : inexact-ok
+= atan downward ldbl-128 0x8p-152L : 0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= atan tonearest ldbl-128 0x8p-152L : 0x8p-152L : inexact-ok
+= atan towardzero ldbl-128 0x8p-152L : 0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= atan upward ldbl-128 0x8p-152L : 0x8p-152L : inexact-ok
+= atan downward ldbl-128ibm 0x8p-152L : 0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= atan tonearest ldbl-128ibm 0x8p-152L : 0x8p-152L : inexact-ok
+= atan towardzero ldbl-128ibm 0x8p-152L : 0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= atan upward ldbl-128ibm 0x8p-152L : 0x8p-152L : inexact-ok
+= atan downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward dbl-64 0x1p-600 : 0xf.ffffffffffff8p-604 : inexact-ok
+= atan tonearest dbl-64 0x1p-600 : 0x1p-600 : inexact-ok
+= atan towardzero dbl-64 0x1p-600 : 0xf.ffffffffffff8p-604 : inexact-ok
+= atan upward dbl-64 0x1p-600 : 0x1p-600 : inexact-ok
+= atan downward ldbl-96-intel 0x1p-600L : 0xf.fffffffffffffffp-604L : inexact-ok
+= atan tonearest ldbl-96-intel 0x1p-600L : 0x1p-600L : inexact-ok
+= atan towardzero ldbl-96-intel 0x1p-600L : 0xf.fffffffffffffffp-604L : inexact-ok
+= atan upward ldbl-96-intel 0x1p-600L : 0x1p-600L : inexact-ok
+= atan downward ldbl-96-m68k 0x1p-600L : 0xf.fffffffffffffffp-604L : inexact-ok
+= atan tonearest ldbl-96-m68k 0x1p-600L : 0x1p-600L : inexact-ok
+= atan towardzero ldbl-96-m68k 0x1p-600L : 0xf.fffffffffffffffp-604L : inexact-ok
+= atan upward ldbl-96-m68k 0x1p-600L : 0x1p-600L : inexact-ok
+= atan downward ldbl-128 0x1p-600L : 0xf.fffffffffffffffffffffffffff8p-604L : inexact-ok
+= atan tonearest ldbl-128 0x1p-600L : 0x1p-600L : inexact-ok
+= atan towardzero ldbl-128 0x1p-600L : 0xf.fffffffffffffffffffffffffff8p-604L : inexact-ok
+= atan upward ldbl-128 0x1p-600L : 0x1p-600L : inexact-ok
+= atan downward ldbl-128ibm 0x1p-600L : 0xf.fffffffffffffffffffffffffcp-604L : inexact-ok
+= atan tonearest ldbl-128ibm 0x1p-600L : 0x1p-600L : inexact-ok
+= atan towardzero ldbl-128ibm 0x1p-600L : 0xf.fffffffffffffffffffffffffcp-604L : inexact-ok
+= atan upward ldbl-128ibm 0x1p-600L : 0x1p-600L : inexact-ok
+atan 0x1p-10000 missing-underflow
+= atan downward flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= atan tonearest flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= atan towardzero flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= atan upward flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= atan downward dbl-64 0x8p-152 : 0x7.ffffffffffffcp-152 : inexact-ok
+= atan tonearest dbl-64 0x8p-152 : 0x8p-152 : inexact-ok
+= atan towardzero dbl-64 0x8p-152 : 0x7.ffffffffffffcp-152 : inexact-ok
+= atan upward dbl-64 0x8p-152 : 0x8p-152 : inexact-ok
+= atan downward ldbl-96-intel 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= atan tonearest ldbl-96-intel 0x8p-152L : 0x8p-152L : inexact-ok
+= atan towardzero ldbl-96-intel 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= atan upward ldbl-96-intel 0x8p-152L : 0x8p-152L : inexact-ok
+= atan downward ldbl-96-m68k 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= atan tonearest ldbl-96-m68k 0x8p-152L : 0x8p-152L : inexact-ok
+= atan towardzero ldbl-96-m68k 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= atan upward ldbl-96-m68k 0x8p-152L : 0x8p-152L : inexact-ok
+= atan downward ldbl-128 0x8p-152L : 0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= atan tonearest ldbl-128 0x8p-152L : 0x8p-152L : inexact-ok
+= atan towardzero ldbl-128 0x8p-152L : 0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= atan upward ldbl-128 0x8p-152L : 0x8p-152L : inexact-ok
+= atan downward ldbl-128ibm 0x8p-152L : 0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= atan tonearest ldbl-128ibm 0x8p-152L : 0x8p-152L : inexact-ok
+= atan towardzero ldbl-128ibm 0x8p-152L : 0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= atan upward ldbl-128ibm 0x8p-152L : 0x8p-152L : inexact-ok
+= atan downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atan downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atan downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atan downward dbl-64 0x4p-1076 : 0x0p+0 : inexact-ok underflow underflow-ok errno-erange-ok
+= atan tonearest dbl-64 0x4p-1076 : 0x4p-1076 : inexact-ok underflow underflow-ok errno-erange-ok
+= atan towardzero dbl-64 0x4p-1076 : 0x0p+0 : inexact-ok underflow underflow-ok errno-erange-ok
+= atan upward dbl-64 0x4p-1076 : 0x4p-1076 : inexact-ok underflow underflow-ok errno-erange-ok
+= atan downward ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= atan tonearest ldbl-96-intel 0x4p-1076L : 0x4p-1076L : inexact-ok
+= atan towardzero ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= atan upward ldbl-96-intel 0x4p-1076L : 0x4p-1076L : inexact-ok
+= atan downward ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= atan tonearest ldbl-96-m68k 0x4p-1076L : 0x4p-1076L : inexact-ok
+= atan towardzero ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= atan upward ldbl-96-m68k 0x4p-1076L : 0x4p-1076L : inexact-ok
+= atan downward ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep-1076L : inexact-ok
+= atan tonearest ldbl-128 0x4p-1076L : 0x4p-1076L : inexact-ok
+= atan towardzero ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep-1076L : inexact-ok
+= atan upward ldbl-128 0x4p-1076L : 0x4p-1076L : inexact-ok
+= atan downward ldbl-128ibm 0x4p-1076L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= atan tonearest ldbl-128ibm 0x4p-1076L : 0x4p-1076L : inexact-ok underflow underflow-ok errno-erange-ok
+= atan towardzero ldbl-128ibm 0x4p-1076L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= atan upward ldbl-128ibm 0x4p-1076L : 0x4p-1076L : inexact-ok underflow underflow-ok errno-erange-ok
+= atan downward ldbl-96-intel 0x1p-10000L : 0xf.fffffffffffffffp-10004L : inexact-ok
+= atan tonearest ldbl-96-intel 0x1p-10000L : 0x1p-10000L : inexact-ok
+= atan towardzero ldbl-96-intel 0x1p-10000L : 0xf.fffffffffffffffp-10004L : inexact-ok
+= atan upward ldbl-96-intel 0x1p-10000L : 0x1p-10000L : inexact-ok
+= atan downward ldbl-96-m68k 0x1p-10000L : 0xf.fffffffffffffffp-10004L : inexact-ok
+= atan tonearest ldbl-96-m68k 0x1p-10000L : 0x1p-10000L : inexact-ok
+= atan towardzero ldbl-96-m68k 0x1p-10000L : 0xf.fffffffffffffffp-10004L : inexact-ok
+= atan upward ldbl-96-m68k 0x1p-10000L : 0x1p-10000L : inexact-ok
+= atan downward ldbl-128 0x1p-10000L : 0xf.fffffffffffffffffffffffffff8p-10004L : inexact-ok
+= atan tonearest ldbl-128 0x1p-10000L : 0x1p-10000L : inexact-ok
+= atan towardzero ldbl-128 0x1p-10000L : 0xf.fffffffffffffffffffffffffff8p-10004L : inexact-ok
+= atan upward ldbl-128 0x1p-10000L : 0x1p-10000L : inexact-ok
+atan2 0 1
+= atan2 downward flt-32 0x0p+0f 0x1p+0f : 0x0p+0f : inexact-ok
+= atan2 tonearest flt-32 0x0p+0f 0x1p+0f : 0x0p+0f : inexact-ok
+= atan2 towardzero flt-32 0x0p+0f 0x1p+0f : 0x0p+0f : inexact-ok
+= atan2 upward flt-32 0x0p+0f 0x1p+0f : 0x0p+0f : inexact-ok
+= atan2 downward dbl-64 0x0p+0 0x1p+0 : 0x0p+0 : inexact-ok
+= atan2 tonearest dbl-64 0x0p+0 0x1p+0 : 0x0p+0 : inexact-ok
+= atan2 towardzero dbl-64 0x0p+0 0x1p+0 : 0x0p+0 : inexact-ok
+= atan2 upward dbl-64 0x0p+0 0x1p+0 : 0x0p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 downward ldbl-128 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 upward ldbl-128 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+atan2 -0 1
+= atan2 downward flt-32 -0x0p+0f 0x1p+0f : -0x0p+0f : inexact-ok
+= atan2 tonearest flt-32 -0x0p+0f 0x1p+0f : -0x0p+0f : inexact-ok
+= atan2 towardzero flt-32 -0x0p+0f 0x1p+0f : -0x0p+0f : inexact-ok
+= atan2 upward flt-32 -0x0p+0f 0x1p+0f : -0x0p+0f : inexact-ok
+= atan2 downward dbl-64 -0x0p+0 0x1p+0 : -0x0p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x0p+0 0x1p+0 : -0x0p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x0p+0 0x1p+0 : -0x0p+0 : inexact-ok
+= atan2 upward dbl-64 -0x0p+0 0x1p+0 : -0x0p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+atan2 0 0
+= atan2 downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= atan2 tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= atan2 towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= atan2 upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= atan2 downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+atan2 -0 0
+= atan2 downward flt-32 -0x0p+0f 0x0p+0f : -0x0p+0f : inexact-ok
+= atan2 tonearest flt-32 -0x0p+0f 0x0p+0f : -0x0p+0f : inexact-ok
+= atan2 towardzero flt-32 -0x0p+0f 0x0p+0f : -0x0p+0f : inexact-ok
+= atan2 upward flt-32 -0x0p+0f 0x0p+0f : -0x0p+0f : inexact-ok
+= atan2 downward dbl-64 -0x0p+0 0x0p+0 : -0x0p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x0p+0 0x0p+0 : -0x0p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x0p+0 0x0p+0 : -0x0p+0 : inexact-ok
+= atan2 upward dbl-64 -0x0p+0 0x0p+0 : -0x0p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x0p+0L 0x0p+0L : -0x0p+0L : inexact-ok
+atan2 0 -1
+= atan2 downward flt-32 0x0p+0f -0x1p+0f : 0x3.243f68p+0f : inexact-ok
+= atan2 tonearest flt-32 0x0p+0f -0x1p+0f : 0x3.243f6cp+0f : inexact-ok
+= atan2 towardzero flt-32 0x0p+0f -0x1p+0f : 0x3.243f68p+0f : inexact-ok
+= atan2 upward flt-32 0x0p+0f -0x1p+0f : 0x3.243f6cp+0f : inexact-ok
+= atan2 downward dbl-64 0x0p+0 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 tonearest dbl-64 0x0p+0 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 towardzero dbl-64 0x0p+0 -0x1p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 upward dbl-64 0x0p+0 -0x1p+0 : 0x3.243f6a8885a32p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 downward ldbl-128 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= atan2 upward ldbl-128 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d313198a2e0372p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x0p+0L -0x1p+0L : 0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+atan2 -0 -1
+= atan2 downward flt-32 -0x0p+0f -0x1p+0f : -0x3.243f6cp+0f : inexact-ok
+= atan2 tonearest flt-32 -0x0p+0f -0x1p+0f : -0x3.243f6cp+0f : inexact-ok
+= atan2 towardzero flt-32 -0x0p+0f -0x1p+0f : -0x3.243f68p+0f : inexact-ok
+= atan2 upward flt-32 -0x0p+0f -0x1p+0f : -0x3.243f68p+0f : inexact-ok
+= atan2 downward dbl-64 -0x0p+0 -0x1p+0 : -0x3.243f6a8885a32p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x0p+0 -0x1p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x0p+0 -0x1p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 upward dbl-64 -0x0p+0 -0x1p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= atan2 upward ldbl-128 -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x0p+0L -0x1p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+atan2 0 -0
+= atan2 downward flt-32 0x0p+0f -0x0p+0f : 0x3.243f68p+0f : inexact-ok
+= atan2 tonearest flt-32 0x0p+0f -0x0p+0f : 0x3.243f6cp+0f : inexact-ok
+= atan2 towardzero flt-32 0x0p+0f -0x0p+0f : 0x3.243f68p+0f : inexact-ok
+= atan2 upward flt-32 0x0p+0f -0x0p+0f : 0x3.243f6cp+0f : inexact-ok
+= atan2 downward dbl-64 0x0p+0 -0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 tonearest dbl-64 0x0p+0 -0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 towardzero dbl-64 0x0p+0 -0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 upward dbl-64 0x0p+0 -0x0p+0 : 0x3.243f6a8885a32p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 downward ldbl-128 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= atan2 upward ldbl-128 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d313198a2e0372p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x0p+0L -0x0p+0L : 0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+atan2 -0 -0
+= atan2 downward flt-32 -0x0p+0f -0x0p+0f : -0x3.243f6cp+0f : inexact-ok
+= atan2 tonearest flt-32 -0x0p+0f -0x0p+0f : -0x3.243f6cp+0f : inexact-ok
+= atan2 towardzero flt-32 -0x0p+0f -0x0p+0f : -0x3.243f68p+0f : inexact-ok
+= atan2 upward flt-32 -0x0p+0f -0x0p+0f : -0x3.243f68p+0f : inexact-ok
+= atan2 downward dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a32p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 upward dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= atan2 upward ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+atan2 1 0
+= atan2 downward flt-32 0x1p+0f 0x0p+0f : 0x1.921fb4p+0f : inexact-ok
+= atan2 tonearest flt-32 0x1p+0f 0x0p+0f : 0x1.921fb6p+0f : inexact-ok
+= atan2 towardzero flt-32 0x1p+0f 0x0p+0f : 0x1.921fb4p+0f : inexact-ok
+= atan2 upward flt-32 0x1p+0f 0x0p+0f : 0x1.921fb6p+0f : inexact-ok
+= atan2 downward dbl-64 0x1p+0 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest dbl-64 0x1p+0 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 0x1p+0 0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 0x1p+0 0x0p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0x1p+0L 0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x1p+0L 0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x1p+0L 0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0x1p+0L 0x0p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+atan2 1 -0
+= atan2 downward flt-32 0x1p+0f -0x0p+0f : 0x1.921fb4p+0f : inexact-ok
+= atan2 tonearest flt-32 0x1p+0f -0x0p+0f : 0x1.921fb6p+0f : inexact-ok
+= atan2 towardzero flt-32 0x1p+0f -0x0p+0f : 0x1.921fb4p+0f : inexact-ok
+= atan2 upward flt-32 0x1p+0f -0x0p+0f : 0x1.921fb6p+0f : inexact-ok
+= atan2 downward dbl-64 0x1p+0 -0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest dbl-64 0x1p+0 -0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 0x1p+0 -0x0p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 0x1p+0 -0x0p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1p+0L -0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1p+0L -0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1p+0L -0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1p+0L -0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1p+0L -0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1p+0L -0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1p+0L -0x0p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1p+0L -0x0p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0x1p+0L -0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x1p+0L -0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x1p+0L -0x0p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0x1p+0L -0x0p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1p+0L -0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1p+0L -0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1p+0L -0x0p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1p+0L -0x0p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+atan2 -1 0
+= atan2 downward flt-32 -0x1p+0f 0x0p+0f : -0x1.921fb6p+0f : inexact-ok
+= atan2 tonearest flt-32 -0x1p+0f 0x0p+0f : -0x1.921fb6p+0f : inexact-ok
+= atan2 towardzero flt-32 -0x1p+0f 0x0p+0f : -0x1.921fb4p+0f : inexact-ok
+= atan2 upward flt-32 -0x1p+0f 0x0p+0f : -0x1.921fb4p+0f : inexact-ok
+= atan2 downward dbl-64 -0x1p+0 0x0p+0 : -0x1.921fb54442d19p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1p+0 0x0p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1p+0 0x0p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1p+0 0x0p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1p+0L 0x0p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1p+0L 0x0p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1p+0L 0x0p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1p+0L 0x0p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1p+0L 0x0p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1p+0L 0x0p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1p+0L 0x0p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1p+0L 0x0p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1p+0L 0x0p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1p+0L 0x0p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1p+0L 0x0p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1p+0L 0x0p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1p+0L 0x0p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1p+0L 0x0p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1p+0L 0x0p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1p+0L 0x0p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+atan2 -1 -0
+= atan2 downward flt-32 -0x1p+0f -0x0p+0f : -0x1.921fb6p+0f : inexact-ok
+= atan2 tonearest flt-32 -0x1p+0f -0x0p+0f : -0x1.921fb6p+0f : inexact-ok
+= atan2 towardzero flt-32 -0x1p+0f -0x0p+0f : -0x1.921fb4p+0f : inexact-ok
+= atan2 upward flt-32 -0x1p+0f -0x0p+0f : -0x1.921fb4p+0f : inexact-ok
+= atan2 downward dbl-64 -0x1p+0 -0x0p+0 : -0x1.921fb54442d19p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1p+0 -0x0p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1p+0 -0x0p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1p+0 -0x0p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1p+0L -0x0p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1p+0L -0x0p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1p+0L -0x0p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1p+0L -0x0p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1p+0L -0x0p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1p+0L -0x0p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1p+0L -0x0p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1p+0L -0x0p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1p+0L -0x0p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1p+0L -0x0p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1p+0L -0x0p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1p+0L -0x0p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1p+0L -0x0p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1p+0L -0x0p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1p+0L -0x0p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1p+0L -0x0p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+atan2 max max
+= atan2 downward flt-32 0xf.fffffp+124f 0xf.fffffp+124f : 0xc.90fdap-4f : inexact-ok
+= atan2 tonearest flt-32 0xf.fffffp+124f 0xf.fffffp+124f : 0xc.90fdbp-4f : inexact-ok
+= atan2 towardzero flt-32 0xf.fffffp+124f 0xf.fffffp+124f : 0xc.90fdap-4f : inexact-ok
+= atan2 upward flt-32 0xf.fffffp+124f 0xf.fffffp+124f : 0xc.90fdbp-4f : inexact-ok
+= atan2 downward dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 tonearest dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 towardzero dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 upward dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234c4c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0xc.90fdaa22168c234c4c6628b81p-4L : inexact-ok
+= atan2 downward dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.fffffp-900 : inexact-ok
+= atan2 tonearest dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.fffff00000008p-900 : inexact-ok
+= atan2 towardzero dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.fffffp-900 : inexact-ok
+= atan2 upward dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.fffff00000008p-900 : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007ffp-900L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000008p-900L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007ffp-900L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000008p-900L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007ffp-900L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000008p-900L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007ffp-900L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000008p-900L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007fffff80000003f8p-900L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007fffff80000004p-900L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007fffff80000003f8p-900L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007fffff80000004p-900L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007fffff8p-900L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007fffff80000004p-900L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007fffff8p-900L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffff00000007fffff80000004p-900L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffp-16260L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffff0000000001p-16260L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffp-16260L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffff0000000001p-16260L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffp-16260L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffff0000000001p-16260L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffp-16260L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffff0000000001p-16260L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffff0000000000ffffffp-16260L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffff0000000000ffffffp-16260L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffff0000000000ffffffp-16260L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffff0000000000ffffff0000008p-16260L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffp-16260L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffff00000000000000000000008p-16260L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffp-16260L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffff00000000000000000000008p-16260L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffff00000003fffffc0000004f8p-900L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffff00000003fffffc0000005p-900L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffff00000003fffffc0000004f8p-900L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffff00000003fffffc0000005p-900L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffff00000003fffffc0000004p-900L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffff00000003fffffc0000004p-900L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffff00000003fffffc0000004p-900L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffff00000003fffffc0000008p-900L : inexact-ok
+= atan2 downward dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 downward dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 tonearest dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 towardzero dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 upward dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234c4c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c234c4c6628b81p-4L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff8p-15364L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff801p-15364L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff8p-15364L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff801p-15364L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff8p-15364L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff801p-15364L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff8p-15364L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff801p-15364L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff800ffffffffffff8p-15364L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff801p-15364L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff800ffffffffffff8p-15364L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffff801p-15364L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.ffffffffffff8p-15364L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.ffffffffffff8000000000000008p-15364L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.ffffffffffff8p-15364L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.ffffffffffff8000000000000008p-15364L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c034c4c6628b80fp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c034c4c6628b80fp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c034c4c6628b80fp-4L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c034c4c6628b80f08p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c034c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c034c4c6628b81p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c034c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c034c4c6628b81p-4L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c234c4c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xc.90fdaa22168c23444c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xc.90fdaa22168c23444c6628b80dc8p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xc.90fdaa22168c23444c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xc.90fdaa22168c23444c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c23544c6628b80db8p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c23544c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c23544c6628b80db8p-4L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : 0xc.90fdaa22168c23544c6628b80dcp-4L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xc.90fdaa22168c234c4c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c434c4c6628b80c8p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c434c4c6628b80c8p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c434c4c6628b80c8p-4L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c434c4c6628b80c88p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c434c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c434c4c6628b80cp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c434c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xc.90fdaa22168c434c4c6628b81p-4L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffffc00ffffffffffbf8p-15364L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffffc00ffffffffffcp-15364L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffffc00ffffffffffbf8p-15364L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : 0xf.ffffffffffffc00ffffffffffcp-15364L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.ffffffffffffbffffffffffffcp-15364L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.ffffffffffffbffffffffffffc08p-15364L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.ffffffffffffbffffffffffffcp-15364L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.ffffffffffffbffffffffffffc08p-15364L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c234c4c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xc.90fdaa22168c234c4c6628b81p-4L : inexact-ok
+atan2 max min
+= atan2 downward flt-32 0xf.fffffp+124f 0x4p-128f : 0x1.921fb4p+0f : inexact-ok
+= atan2 tonearest flt-32 0xf.fffffp+124f 0x4p-128f : 0x1.921fb6p+0f : inexact-ok
+= atan2 towardzero flt-32 0xf.fffffp+124f 0x4p-128f : 0x1.921fb4p+0f : inexact-ok
+= atan2 upward flt-32 0xf.fffffp+124f 0x4p-128f : 0x1.921fb6p+0f : inexact-ok
+= atan2 downward dbl-64 0xf.fffffp+124 0x4p-128 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest dbl-64 0xf.fffffp+124 0x4p-128 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 0xf.fffffp+124 0x4p-128 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 0xf.fffffp+124 0x4p-128 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.fffffp+124L 0x4p-128L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 downward dbl-64 0xf.fffffp+124 0x4p-1024 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest dbl-64 0xf.fffffp+124 0x4p-1024 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 0xf.fffffp+124 0x4p-1024 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 0xf.fffffp+124 0x4p-1024 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.fffffp+124L 0x4p-1024L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffp+124L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffp+124L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward dbl-64 0xf.fffffp+124 0x8p-972 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest dbl-64 0xf.fffffp+124 0x8p-972 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 0xf.fffffp+124 0x8p-972 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 0xf.fffffp+124 0x8p-972 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.fffffp+124L 0x8p-972L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 downward dbl-64 0xf.ffffffffffff8p+1020 0x4p-128 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest dbl-64 0xf.ffffffffffff8p+1020 0x4p-128 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 0xf.ffffffffffff8p+1020 0x4p-128 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 0xf.ffffffffffff8p+1020 0x4p-128 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-128L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 downward dbl-64 0xf.ffffffffffff8p+1020 0x4p-1024 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest dbl-64 0xf.ffffffffffff8p+1020 0x4p-1024 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 0xf.ffffffffffff8p+1020 0x4p-1024 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 0xf.ffffffffffff8p+1020 0x4p-1024 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffff8p+1020L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward dbl-64 0xf.ffffffffffff8p+1020 0x8p-972 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 tonearest dbl-64 0xf.ffffffffffff8p+1020 0x8p-972 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 0xf.ffffffffffff8p+1020 0x8p-972 : 0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 0xf.ffffffffffff8p+1020 0x8p-972 : 0x1.921fb54442d19p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x8p-972L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-128L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffp+16380L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-972L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-128L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-972L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-128L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-128L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-128L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-128L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-128L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-128L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1024L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16384L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x2p-16384L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-972L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-972L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-972L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-972L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-972L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-972L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+atan2 -max -min
+= atan2 downward flt-32 -0xf.fffffp+124f -0x4p-128f : -0x1.921fb6p+0f : inexact-ok
+= atan2 tonearest flt-32 -0xf.fffffp+124f -0x4p-128f : -0x1.921fb6p+0f : inexact-ok
+= atan2 towardzero flt-32 -0xf.fffffp+124f -0x4p-128f : -0x1.921fb4p+0f : inexact-ok
+= atan2 upward flt-32 -0xf.fffffp+124f -0x4p-128f : -0x1.921fb4p+0f : inexact-ok
+= atan2 downward dbl-64 -0xf.fffffp+124 -0x4p-128 : -0x1.921fb54442d19p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0xf.fffffp+124 -0x4p-128 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0xf.fffffp+124 -0x4p-128 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 -0xf.fffffp+124 -0x4p-128 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0xf.fffffp+124L -0x4p-128L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 downward dbl-64 -0xf.fffffp+124 -0x4p-1024 : -0x1.921fb54442d19p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0xf.fffffp+124 -0x4p-1024 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0xf.fffffp+124 -0x4p-1024 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 -0xf.fffffp+124 -0x4p-1024 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0xf.fffffp+124L -0x4p-1024L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffp+124L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffp+124L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward dbl-64 -0xf.fffffp+124 -0x8p-972 : -0x1.921fb54442d19p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0xf.fffffp+124 -0x8p-972 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0xf.fffffp+124 -0x8p-972 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 -0xf.fffffp+124 -0x8p-972 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0xf.fffffp+124L -0x8p-972L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 downward dbl-64 -0xf.ffffffffffff8p+1020 -0x4p-128 : -0x1.921fb54442d19p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x4p-128 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x4p-128 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 -0xf.ffffffffffff8p+1020 -0x4p-128 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p-128L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 downward dbl-64 -0xf.ffffffffffff8p+1020 -0x4p-1024 : -0x1.921fb54442d19p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x4p-1024 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x4p-1024 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 -0xf.ffffffffffff8p+1020 -0x4p-1024 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward dbl-64 -0xf.ffffffffffff8p+1020 -0x8p-972 : -0x1.921fb54442d19p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x8p-972 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x8p-972 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 upward dbl-64 -0xf.ffffffffffff8p+1020 -0x8p-972 : -0x1.921fb54442d18p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x8p-972L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-128L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d18468p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x8p-972L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-128L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-128L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-128L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-128L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-972L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-972L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-972L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-972L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-128L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-128L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-128L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-128L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-128L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-128L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-128L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-128L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1024L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p-16384L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-972L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-972L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-972L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-972L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-972L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-972L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-972L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-972L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+atan2 0.75 1
+= atan2 downward flt-32 0xcp-4f 0x1p+0f : 0xa.4bc7dp-4f : inexact-ok
+= atan2 tonearest flt-32 0xcp-4f 0x1p+0f : 0xa.4bc7dp-4f : inexact-ok
+= atan2 towardzero flt-32 0xcp-4f 0x1p+0f : 0xa.4bc7dp-4f : inexact-ok
+= atan2 upward flt-32 0xcp-4f 0x1p+0f : 0xa.4bc7ep-4f : inexact-ok
+= atan2 downward dbl-64 0xcp-4 0x1p+0 : 0xa.4bc7d1934f708p-4 : inexact-ok
+= atan2 tonearest dbl-64 0xcp-4 0x1p+0 : 0xa.4bc7d1934f708p-4 : inexact-ok
+= atan2 towardzero dbl-64 0xcp-4 0x1p+0 : 0xa.4bc7d1934f708p-4 : inexact-ok
+= atan2 upward dbl-64 0xcp-4 0x1p+0 : 0xa.4bc7d1934f71p-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f70925p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f70925p-4L : inexact-ok
+= atan2 downward ldbl-128 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f7092419a87f2a457d8p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f7092419a87f2a457d8p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f7092419a87f2a457d8p-4L : inexact-ok
+= atan2 upward ldbl-128 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f7092419a87f2a457ep-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f7092419a87f2a454p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f7092419a87f2a458p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f7092419a87f2a454p-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0xcp-4L 0x1p+0L : 0xa.4bc7d1934f7092419a87f2a458p-4L : inexact-ok
+atan2 -0.75 1.0
+= atan2 downward flt-32 -0xcp-4f 0x1p+0f : -0xa.4bc7ep-4f : inexact-ok
+= atan2 tonearest flt-32 -0xcp-4f 0x1p+0f : -0xa.4bc7dp-4f : inexact-ok
+= atan2 towardzero flt-32 -0xcp-4f 0x1p+0f : -0xa.4bc7dp-4f : inexact-ok
+= atan2 upward flt-32 -0xcp-4f 0x1p+0f : -0xa.4bc7dp-4f : inexact-ok
+= atan2 downward dbl-64 -0xcp-4 0x1p+0 : -0xa.4bc7d1934f71p-4 : inexact-ok
+= atan2 tonearest dbl-64 -0xcp-4 0x1p+0 : -0xa.4bc7d1934f708p-4 : inexact-ok
+= atan2 towardzero dbl-64 -0xcp-4 0x1p+0 : -0xa.4bc7d1934f708p-4 : inexact-ok
+= atan2 upward dbl-64 -0xcp-4 0x1p+0 : -0xa.4bc7d1934f708p-4 : inexact-ok
+= atan2 downward ldbl-96-intel -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f70925p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 upward ldbl-96-intel -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f70925p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f70924p-4L : inexact-ok
+= atan2 downward ldbl-128 -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f7092419a87f2a457ep-4L : inexact-ok
+= atan2 tonearest ldbl-128 -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f7092419a87f2a457d8p-4L : inexact-ok
+= atan2 towardzero ldbl-128 -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f7092419a87f2a457d8p-4L : inexact-ok
+= atan2 upward ldbl-128 -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f7092419a87f2a457d8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f7092419a87f2a458p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f7092419a87f2a458p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f7092419a87f2a454p-4L : inexact-ok
+= atan2 upward ldbl-128ibm -0xcp-4L 0x1p+0L : -0xa.4bc7d1934f7092419a87f2a454p-4L : inexact-ok
+atan2 0.75 -1.0
+= atan2 downward flt-32 0xcp-4f -0x1p+0f : 0x2.7f82ecp+0f : inexact-ok
+= atan2 tonearest flt-32 0xcp-4f -0x1p+0f : 0x2.7f82ecp+0f : inexact-ok
+= atan2 towardzero flt-32 0xcp-4f -0x1p+0f : 0x2.7f82ecp+0f : inexact-ok
+= atan2 upward flt-32 0xcp-4f -0x1p+0f : 0x2.7f82fp+0f : inexact-ok
+= atan2 downward dbl-64 0xcp-4 -0x1p+0 : 0x2.7f82ed6f50abep+0 : inexact-ok
+= atan2 tonearest dbl-64 0xcp-4 -0x1p+0 : 0x2.7f82ed6f50acp+0 : inexact-ok
+= atan2 towardzero dbl-64 0xcp-4 -0x1p+0 : 0x2.7f82ed6f50abep+0 : inexact-ok
+= atan2 upward dbl-64 0xcp-4 -0x1p+0 : 0x2.7f82ed6f50acp+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffacp+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffbp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffacp+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffbp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffacp+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffbp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffacp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffbp+0L : inexact-ok
+= atan2 downward ldbl-128 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffaef9710b03bdf2p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffaef9710b03bdf2p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffaef9710b03bdf2p+0L : inexact-ok
+= atan2 upward ldbl-128 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffaef9710b03bdf4p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffaef9710b03bdp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffaef9710b03bep+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffaef9710b03bdp+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0xcp-4L -0x1p+0L : 0x2.7f82ed6f50abffaef9710b03bep+0L : inexact-ok
+atan2 -0.75 -1.0
+= atan2 downward flt-32 -0xcp-4f -0x1p+0f : -0x2.7f82fp+0f : inexact-ok
+= atan2 tonearest flt-32 -0xcp-4f -0x1p+0f : -0x2.7f82ecp+0f : inexact-ok
+= atan2 towardzero flt-32 -0xcp-4f -0x1p+0f : -0x2.7f82ecp+0f : inexact-ok
+= atan2 upward flt-32 -0xcp-4f -0x1p+0f : -0x2.7f82ecp+0f : inexact-ok
+= atan2 downward dbl-64 -0xcp-4 -0x1p+0 : -0x2.7f82ed6f50acp+0 : inexact-ok
+= atan2 tonearest dbl-64 -0xcp-4 -0x1p+0 : -0x2.7f82ed6f50acp+0 : inexact-ok
+= atan2 towardzero dbl-64 -0xcp-4 -0x1p+0 : -0x2.7f82ed6f50abep+0 : inexact-ok
+= atan2 upward dbl-64 -0xcp-4 -0x1p+0 : -0x2.7f82ed6f50abep+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffbp+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffbp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffacp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffacp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffbp+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffbp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffacp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffacp+0L : inexact-ok
+= atan2 downward ldbl-128 -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffaef9710b03bdf4p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffaef9710b03bdf2p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffaef9710b03bdf2p+0L : inexact-ok
+= atan2 upward ldbl-128 -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffaef9710b03bdf2p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffaef9710b03bep+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffaef9710b03bep+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffaef9710b03bdp+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0xcp-4L -0x1p+0L : -0x2.7f82ed6f50abffaef9710b03bdp+0L : inexact-ok
+atan2 0.390625 .00029
+= atan2 downward flt-32 0x6.4p-4f 0x1.30164ap-12f : 0x1.91ef0cp+0f : inexact-ok
+= atan2 tonearest flt-32 0x6.4p-4f 0x1.30164ap-12f : 0x1.91ef0ep+0f : inexact-ok
+= atan2 towardzero flt-32 0x6.4p-4f 0x1.30164ap-12f : 0x1.91ef0cp+0f : inexact-ok
+= atan2 upward flt-32 0x6.4p-4f 0x1.30164ap-12f : 0x1.91ef0ep+0f : inexact-ok
+= atan2 downward dbl-64 0x6.4p-4 0x1.30164ap-12 : 0x1.91ef0ddcd8c8cp+0 : inexact-ok
+= atan2 tonearest dbl-64 0x6.4p-4 0x1.30164ap-12 : 0x1.91ef0ddcd8c8cp+0 : inexact-ok
+= atan2 towardzero dbl-64 0x6.4p-4 0x1.30164ap-12 : 0x1.91ef0ddcd8c8cp+0 : inexact-ok
+= atan2 upward dbl-64 0x6.4p-4 0x1.30164ap-12 : 0x1.91ef0ddcd8c8dp+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7aep+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7bp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7aep+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7bp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7aep+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7bp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7aep+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7bp+0L : inexact-ok
+= atan2 downward ldbl-128 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7af32bf86fefb5bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7af32bf86fefb5cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7af32bf86fefb5bp+0L : inexact-ok
+= atan2 upward ldbl-128 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7af32bf86fefb5cp+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7af32bf86fefbp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7af32bf86fefb8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7af32bf86fefbp+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x6.4p-4L 0x1.30164ap-12L : 0x1.91ef0ddcd8c8c7af32bf86fefb8p+0L : inexact-ok
+= atan2 downward flt-32 0x6.4p-4f 0x1.301648p-12f : 0x1.91ef0cp+0f : inexact-ok
+= atan2 tonearest flt-32 0x6.4p-4f 0x1.301648p-12f : 0x1.91ef0ep+0f : inexact-ok
+= atan2 towardzero flt-32 0x6.4p-4f 0x1.301648p-12f : 0x1.91ef0cp+0f : inexact-ok
+= atan2 upward flt-32 0x6.4p-4f 0x1.301648p-12f : 0x1.91ef0ep+0f : inexact-ok
+= atan2 downward dbl-64 0x6.4p-4 0x1.301648p-12 : 0x1.91ef0ddd2ab44p+0 : inexact-ok
+= atan2 tonearest dbl-64 0x6.4p-4 0x1.301648p-12 : 0x1.91ef0ddd2ab45p+0 : inexact-ok
+= atan2 towardzero dbl-64 0x6.4p-4 0x1.301648p-12 : 0x1.91ef0ddd2ab44p+0 : inexact-ok
+= atan2 upward dbl-64 0x6.4p-4 0x1.301648p-12 : 0x1.91ef0ddd2ab45p+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d8p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d8p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d8p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449dap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d8p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d8p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d8p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449dap+0L : inexact-ok
+= atan2 downward ldbl-128 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d869c37032d23fp+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d869c37032d24p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d869c37032d23fp+0L : inexact-ok
+= atan2 upward ldbl-128 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d869c37032d24p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d869c37032d2p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d869c37032d2p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d869c37032d2p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x6.4p-4L 0x1.301648p-12L : 0x1.91ef0ddd2ab449d869c37032d28p+0L : inexact-ok
+= atan2 downward dbl-64 0x6.4p-4 0x1.30164840e171ap-12 : 0x1.91ef0ddd2052cp+0 : inexact-ok
+= atan2 tonearest dbl-64 0x6.4p-4 0x1.30164840e171ap-12 : 0x1.91ef0ddd2052cp+0 : inexact-ok
+= atan2 towardzero dbl-64 0x6.4p-4 0x1.30164840e171ap-12 : 0x1.91ef0ddd2052cp+0 : inexact-ok
+= atan2 upward dbl-64 0x6.4p-4 0x1.30164840e171ap-12 : 0x1.91ef0ddd2052dp+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c768p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c768p+0L : inexact-ok
+= atan2 downward ldbl-128 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c7667bf2f32a78eep+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c7667bf2f32a78efp+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c7667bf2f32a78eep+0L : inexact-ok
+= atan2 upward ldbl-128 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c7667bf2f32a78efp+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c7667bf2f32a788p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c7667bf2f32a79p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c7667bf2f32a788p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x6.4p-4L 0x1.30164840e171ap-12L : 0x1.91ef0ddd2052c7667bf2f32a79p+0L : inexact-ok
+= atan2 downward dbl-64 0x6.4p-4 0x1.30164840e1719p-12 : 0x1.91ef0ddd2052cp+0 : inexact-ok
+= atan2 tonearest dbl-64 0x6.4p-4 0x1.30164840e1719p-12 : 0x1.91ef0ddd2052cp+0 : inexact-ok
+= atan2 towardzero dbl-64 0x6.4p-4 0x1.30164840e1719p-12 : 0x1.91ef0ddd2052cp+0 : inexact-ok
+= atan2 upward dbl-64 0x6.4p-4 0x1.30164840e1719p-12 : 0x1.91ef0ddd2052dp+0 : inexact-ok
+= atan2 downward ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c768p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c76ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c768p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c76ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c768p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c76ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c768p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c76ap+0L : inexact-ok
+= atan2 downward ldbl-128 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c7690b4f0474312bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c7690b4f0474312cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c7690b4f0474312bp+0L : inexact-ok
+= atan2 upward ldbl-128 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c7690b4f0474312cp+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c7690b4f047431p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c7690b4f047431p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c7690b4f047431p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719p-12L : 0x1.91ef0ddd2052c7690b4f0474318p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c768p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c768p+0L : inexact-ok
+= atan2 downward ldbl-128 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766906dd3b4c6bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766906dd3b4c6b1p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766906dd3b4c6bp+0L : inexact-ok
+= atan2 upward ldbl-128 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766906dd3b4c6b1p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766906dd3b4c68p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766906dd3b4c68p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766906dd3b4c68p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f8p-12L : 0x1.91ef0ddd2052c766906dd3b4c7p+0L : inexact-ok
+= atan2 downward ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 upward ldbl-96-intel 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c768p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c766p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c768p+0L : inexact-ok
+= atan2 downward ldbl-128 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c76690bfbf36efe7p+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c76690bfbf36efe8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c76690bfbf36efe7p+0L : inexact-ok
+= atan2 upward ldbl-128 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c76690bfbf36efe8p+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c76690bfbf36ef8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c76690bfbf36fp+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c76690bfbf36ef8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7ep-12L : 0x1.91ef0ddd2052c76690bfbf36fp+0L : inexact-ok
+= atan2 downward ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d3fp-12L : 0x1.91ef0ddd2052c7669080482ae66bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d3fp-12L : 0x1.91ef0ddd2052c7669080482ae66cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d3fp-12L : 0x1.91ef0ddd2052c7669080482ae66bp+0L : inexact-ok
+= atan2 upward ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d3fp-12L : 0x1.91ef0ddd2052c7669080482ae66cp+0L : inexact-ok
+= atan2 downward ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d3ep-12L : 0x1.91ef0ddd2052c7669080482ae66bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d3ep-12L : 0x1.91ef0ddd2052c7669080482ae66cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d3ep-12L : 0x1.91ef0ddd2052c7669080482ae66bp+0L : inexact-ok
+= atan2 upward ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d3ep-12L : 0x1.91ef0ddd2052c7669080482ae66cp+0L : inexact-ok
+= atan2 downward ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d8p-12L : 0x1.91ef0ddd2052c7669080482ae66bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d8p-12L : 0x1.91ef0ddd2052c7669080482ae66cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d8p-12L : 0x1.91ef0ddd2052c7669080482ae66bp+0L : inexact-ok
+= atan2 upward ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d8p-12L : 0x1.91ef0ddd2052c7669080482ae66cp+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d8p-12L : 0x1.91ef0ddd2052c7669080482ae6p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d8p-12L : 0x1.91ef0ddd2052c7669080482ae68p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d8p-12L : 0x1.91ef0ddd2052c7669080482ae6p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1d8p-12L : 0x1.91ef0ddd2052c7669080482ae68p+0L : inexact-ok
+= atan2 downward ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1dp-12L : 0x1.91ef0ddd2052c7669080482ae66cp+0L : inexact-ok
+= atan2 tonearest ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1dp-12L : 0x1.91ef0ddd2052c7669080482ae66cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1dp-12L : 0x1.91ef0ddd2052c7669080482ae66cp+0L : inexact-ok
+= atan2 upward ldbl-128 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1dp-12L : 0x1.91ef0ddd2052c7669080482ae66dp+0L : inexact-ok
+= atan2 downward ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1dp-12L : 0x1.91ef0ddd2052c7669080482ae6p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1dp-12L : 0x1.91ef0ddd2052c7669080482ae68p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1dp-12L : 0x1.91ef0ddd2052c7669080482ae6p+0L : inexact-ok
+= atan2 upward ldbl-128ibm 0x6.4p-4L 0x1.30164840e1719f7f8ca8198f1dp-12L : 0x1.91ef0ddd2052c7669080482ae68p+0L : inexact-ok
+atan2 1.390625 0.9296875
+= atan2 downward flt-32 0x1.64p+0f 0xe.ep-4f : 0xf.b437ap-4f : inexact-ok
+= atan2 tonearest flt-32 0x1.64p+0f 0xe.ep-4f : 0xf.b437ap-4f : inexact-ok
+= atan2 towardzero flt-32 0x1.64p+0f 0xe.ep-4f : 0xf.b437ap-4f : inexact-ok
+= atan2 upward flt-32 0x1.64p+0f 0xe.ep-4f : 0xf.b437bp-4f : inexact-ok
+= atan2 downward dbl-64 0x1.64p+0 0xe.ep-4 : 0xf.b437a7208779p-4 : inexact-ok
+= atan2 tonearest dbl-64 0x1.64p+0 0xe.ep-4 : 0xf.b437a72087798p-4 : inexact-ok
+= atan2 towardzero dbl-64 0x1.64p+0 0xe.ep-4 : 0xf.b437a7208779p-4 : inexact-ok
+= atan2 upward dbl-64 0x1.64p+0 0xe.ep-4 : 0xf.b437a72087798p-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cfp-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cfp-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cfp-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797dp-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cfp-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cfp-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cfp-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797dp-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cf2cd8d81111208p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cf2cd8d81111208p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cf2cd8d81111208p-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cf2cd8d8111121p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cf2cd8d81111p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cf2cd8d811114p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cf2cd8d81111p-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.64p+0L 0xe.ep-4L : 0xf.b437a72087797cf2cd8d811114p-4L : inexact-ok
+atan2 -0.00756827042671106339 -.001792735857538728036
+= atan2 downward flt-32 -0x1.effe8p-8f -0x7.57d1d8p-12f : -0x1.cdaa9ep+0f : inexact-ok
+= atan2 tonearest flt-32 -0x1.effe8p-8f -0x7.57d1d8p-12f : -0x1.cdaa9ep+0f : inexact-ok
+= atan2 towardzero flt-32 -0x1.effe8p-8f -0x7.57d1d8p-12f : -0x1.cdaa9cp+0f : inexact-ok
+= atan2 upward flt-32 -0x1.effe8p-8f -0x7.57d1d8p-12f : -0x1.cdaa9cp+0f : inexact-ok
+= atan2 downward dbl-64 -0x1.effe8p-8 -0x7.57d1d8p-12 : -0x1.cdaa9db2d1b45p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe8p-8 -0x7.57d1d8p-12 : -0x1.cdaa9db2d1b45p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe8p-8 -0x7.57d1d8p-12 : -0x1.cdaa9db2d1b44p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe8p-8 -0x7.57d1d8p-12 : -0x1.cdaa9db2d1b44p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4481p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4481p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480ep+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480ep+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4481p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4481p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480ep+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480ep+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480f9a874bb84e72p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480f9a874bb84e72p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480f9a874bb84e71p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480f9a874bb84e71p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480f9a874bb84e8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480f9a874bb84e8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480f9a874bb84ep+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1d8p-12L : -0x1.cdaa9db2d1b4480f9a874bb84ep+0L : inexact-ok
+= atan2 downward flt-32 -0x1.effe8p-8f -0x7.57d1ep-12f : -0x1.cdaa9ep+0f : inexact-ok
+= atan2 tonearest flt-32 -0x1.effe8p-8f -0x7.57d1ep-12f : -0x1.cdaa9ep+0f : inexact-ok
+= atan2 towardzero flt-32 -0x1.effe8p-8f -0x7.57d1ep-12f : -0x1.cdaa9cp+0f : inexact-ok
+= atan2 upward flt-32 -0x1.effe8p-8f -0x7.57d1ep-12f : -0x1.cdaa9cp+0f : inexact-ok
+= atan2 downward dbl-64 -0x1.effe8p-8 -0x7.57d1ep-12 : -0x1.cdaa9df15fde1p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe8p-8 -0x7.57d1ep-12 : -0x1.cdaa9df15fde1p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe8p-8 -0x7.57d1ep-12 : -0x1.cdaa9df15fdep+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe8p-8 -0x7.57d1ep-12 : -0x1.cdaa9df15fdep+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0914p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0914p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0912p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0912p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0914p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0914p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0912p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0912p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0913df719335d87p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0913df719335d86fp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0913df719335d86fp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0913df719335d86fp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0913df719335d88p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0913df719335d88p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0913df719335d8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1ep-12L : -0x1.cdaa9df15fde0913df719335d8p+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe8p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9de22c46ep+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe8p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9de22c46ep+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe8p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9de22c46dp+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe8p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9de22c46dp+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6cp+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6ap+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6ap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6cp+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6ap+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6ap+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6ap+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6a08ed2c333239p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6a08ed2c333239p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6a08ed2c333238p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6a08ed2c333238p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6a08ed2c33328p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6a08ed2c3332p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6a08ed2c3332p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9de22c46dd6a08ed2c3332p+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe8p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9de22c46ep+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe8p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9de22c46ep+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe8p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9de22c46dp+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe8p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9de22c46dp+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df6p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5ep+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5ep+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5ep+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df6p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5ep+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5ep+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5ep+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5e7a3b2571f0a5p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5e7a3b2571f0a5p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5e7a3b2571f0a4p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5e7a3b2571f0a4p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5e7a3b2571f1p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5e7a3b2571f08p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5e7a3b2571f08p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9de22c46df5e7a3b2571f08p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de96p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de96p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de94p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de94p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de96p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de96p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de94p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de94p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de9520a4c629b208p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de9520a4c629b207p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de9520a4c629b207p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de9520a4c629b207p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de9520a4c629b28p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de9520a4c629b2p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de9520a4c629b2p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9de22c46de9520a4c629b2p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de96p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de96p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de94p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de94p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de96p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de96p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de94p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de94p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de955f32efe8d9ep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de955f32efe8d9dfp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de955f32efe8d9dfp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de955f32efe8d9dfp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de955f32efe8dap+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de955f32efe8dap+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de955f32efe8d98p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9de22c46de955f32efe8d98p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9de22c46de9526e102fad22cp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9de22c46de9526e102fad22cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9de22c46de9526e102fad22bp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9de22c46de9526e102fad22bp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9de22c46de9526e102fad22dp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9de22c46de9526e102fad22cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9de22c46de9526e102fad22cp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9de22c46de9526e102fad22cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9de22c46de9526e102fad22bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9de22c46de9526e102fad22ap+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9de22c46de9526e102fad22ap+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9de22c46de9526e102fad22ap+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9de22c46de9526e102fad28p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9de22c46de9526e102fad2p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9de22c46de9526e102fad2p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9de22c46de9526e102fad2p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9de22c46de9526e102fad23ap+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9de22c46de9526e102fad23ap+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9de22c46de9526e102fad239p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9de22c46de9526e102fad239p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9de22c46de9526e102fad28p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9de22c46de9526e102fad2p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9de22c46de9526e102fad2p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe8p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9de22c46de9526e102fad2p+0L : inexact-ok
+= atan2 downward flt-32 -0x1.effe82p-8f -0x7.57d1d8p-12f : -0x1.cdaa9ep+0f : inexact-ok
+= atan2 tonearest flt-32 -0x1.effe82p-8f -0x7.57d1d8p-12f : -0x1.cdaa9ep+0f : inexact-ok
+= atan2 towardzero flt-32 -0x1.effe82p-8f -0x7.57d1d8p-12f : -0x1.cdaa9cp+0f : inexact-ok
+= atan2 upward flt-32 -0x1.effe82p-8f -0x7.57d1d8p-12f : -0x1.cdaa9cp+0f : inexact-ok
+= atan2 downward dbl-64 -0x1.effe82p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d778c453p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe82p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d778c452p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe82p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d778c452p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe82p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d778c452p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525cp+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525bep+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525bep+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525bep+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525cp+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525bep+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525bep+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525bep+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525be29e0416fa252p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525be29e0416fa252p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525be29e0416fa251p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525be29e0416fa251p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525be29e0416fa28p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525be29e0416fa28p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525be29e0416fa2p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d778c4525be29e0416fa2p+0L : inexact-ok
+= atan2 downward flt-32 -0x1.effe82p-8f -0x7.57d1ep-12f : -0x1.cdaa9ep+0f : inexact-ok
+= atan2 tonearest flt-32 -0x1.effe82p-8f -0x7.57d1ep-12f : -0x1.cdaa9ep+0f : inexact-ok
+= atan2 towardzero flt-32 -0x1.effe82p-8f -0x7.57d1ep-12f : -0x1.cdaa9cp+0f : inexact-ok
+= atan2 upward flt-32 -0x1.effe82p-8f -0x7.57d1ep-12f : -0x1.cdaa9cp+0f : inexact-ok
+= atan2 downward dbl-64 -0x1.effe82p-8 -0x7.57d1ep-12 : -0x1.cdaa9db61a6ebp+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe82p-8 -0x7.57d1ep-12 : -0x1.cdaa9db61a6ebp+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe82p-8 -0x7.57d1ep-12 : -0x1.cdaa9db61a6eap+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe82p-8 -0x7.57d1ep-12 : -0x1.cdaa9db61a6eap+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0cp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0cp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0cp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0c075aa78c1d4ep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0c075aa78c1d4dp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0c075aa78c1d4dp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0c075aa78c1d4dp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0c075aa78c1d8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0c075aa78c1d8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0c075aa78c1dp+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1ep-12L : -0x1.cdaa9db61a6ead0c075aa78c1dp+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe82p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da6e6d79p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe82p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da6e6d79p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe82p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da6e6d78p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe82p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da6e6d78p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f6ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f6ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68821ef0a0a971p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68821ef0a0a971p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68821ef0a0a97p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68821ef0a0a97p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68821ef0a0a98p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68821ef0a0a98p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68821ef0a0a9p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da6e6d78f68821ef0a0a9p+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe82p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da6e6d7ap+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe82p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da6e6d79p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe82p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da6e6d79p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe82p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da6e6d79p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cf36b1c2c2c89p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cf36b1c2c2c89p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cf36b1c2c2c88p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cf36b1c2c2c88p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cf36b1c2c2dp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cf36b1c2c2c8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cf36b1c2c2c8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da6e6d7915cf36b1c2c2c8p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d79094p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d79094p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d79092p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d79092p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d79094p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d79094p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d79092p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d79092p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d7909399d576a70acbp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d7909399d576a70acap+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d7909399d576a70acap+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d7909399d576a70acap+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d7909399d576a70bp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d7909399d576a70bp+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d7909399d576a70a8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da6e6d7909399d576a70a8p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79094p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79094p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79092p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79092p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79094p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79094p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79092p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79092p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79093d863a02c7c3bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79093d863a02c7c3bp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79093d863a02c7c3ap+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79093d863a02c7c3ap+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79093d863a02c7c8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79093d863a02c7cp+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79093d863a02c7cp+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da6e6d79093d863a02c7cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da6e6d79093a011b3726a46p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da6e6d79093a011b3726a45p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da6e6d79093a011b3726a45p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da6e6d79093a011b3726a45p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da6e6d79093a011b3726a46p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da6e6d79093a011b3726a45p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da6e6d79093a011b3726a45p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da6e6d79093a011b3726a45p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da6e6d79093a011b3726a44p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da6e6d79093a011b3726a44p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da6e6d79093a011b3726a43p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da6e6d79093a011b3726a43p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da6e6d79093a011b3726a8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da6e6d79093a011b3726a8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da6e6d79093a011b3726ap+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da6e6d79093a011b3726ap+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da6e6d79093a011b3726a54p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da6e6d79093a011b3726a53p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da6e6d79093a011b3726a53p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da6e6d79093a011b3726a53p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da6e6d79093a011b3726a8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da6e6d79093a011b3726a8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da6e6d79093a011b3726ap+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe82p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da6e6d79093a011b3726ap+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe81f852716p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d786fcfbp+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe81f852716p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d786fcfap+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe81f852716p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d786fcfap+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe81f852716p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d786fcfap+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2bp+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2bp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2aep+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2aep+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2bp+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2bp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2aep+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2aep+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2afd2e41f4d8586p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2afd2e41f4d8586p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2afd2e41f4d8585p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2afd2e41f4d8585p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2afd2e41f4d86p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2afd2e41f4d858p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2afd2e41f4d858p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa2afd2e41f4d858p+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe81f852716p-8 -0x7.57d1ep-12 : -0x1.cdaa9db6fdf93p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe81f852716p-8 -0x7.57d1ep-12 : -0x1.cdaa9db6fdf93p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe81f852716p-8 -0x7.57d1ep-12 : -0x1.cdaa9db6fdf92p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe81f852716p-8 -0x7.57d1ep-12 : -0x1.cdaa9db6fdf92p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adcp+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adcp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adap+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adap+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adcp+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adcp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adap+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adap+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adb3efd640a23eep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adb3efd640a23edp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adb3efd640a23edp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adb3efd640a23edp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adb3efd640a24p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adb3efd640a24p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adb3efd640a238p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92adb3efd640a238p+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe81f852716p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da7ca621p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe81f852716p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da7ca621p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe81f852716p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da7ca62p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe81f852716p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da7ca62p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d02p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d02p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620dp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620dp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d02p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d02p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620dp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620dp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d01e29ac2cea0eep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d01e29ac2cea0eep+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d01e29ac2cea0edp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d01e29ac2cea0edp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d01e29ac2cea1p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d01e29ac2cea1p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d01e29ac2cea08p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620d01e29ac2cea08p+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe81f852716p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da7ca621p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe81f852716p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da7ca621p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe81f852716p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da7ca62p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe81f852716p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da7ca62p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef8p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef6p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef6p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef6p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef8p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef6p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef6p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef6p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef653e6f54698fcp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef653e6f54698fcp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef653e6f54698fbp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef653e6f54698fbp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef653e6f54699p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef653e6f54699p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef653e6f546988p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620ef653e6f546988p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cfa514cf8542fp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cfa514cf8542fp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cfa514cf8542ep+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cfa514cf8542ep+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cfa514cf8548p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cfa514cf854p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cfa514cf854p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620e2cfa514cf854p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2ep+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2cp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2cp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2ep+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2cp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2d38df767ea32ep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2d38df767ea32ep+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2d38df767ea32dp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2d38df767ea32dp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2d38df767ea38p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2d38df767ea3p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2d38df767ea3p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620e2d38df767ea3p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620e2d008d89c3c9cp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620e2d008d89c3c9bfp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620e2d008d89c3c9bfp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620e2d008d89c3c9bfp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620e2d008d89c3c9cp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620e2d008d89c3c9bfp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620e2d008d89c3c9bfp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620e2d008d89c3c9bfp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620e2d008d89c3c9bep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620e2d008d89c3c9bdp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620e2d008d89c3c9bdp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620e2d008d89c3c9bdp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620e2d008d89c3cap+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620e2d008d89c3c98p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620e2d008d89c3c98p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620e2d008d89c3c98p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620e2d008d89c3c9cdp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620e2d008d89c3c9cdp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620e2d008d89c3c9ccp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620e2d008d89c3c9ccp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620e2d008d89c3cap+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620e2d008d89c3cap+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620e2d008d89c3c98p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620e2d008d89c3c98p+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe81f852717p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d786fcfbp+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe81f852717p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d786fcfap+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe81f852717p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d786fcfap+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe81f852717p-8 -0x7.57d1d8p-12 : -0x1.cdaa9d786fcfap+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d4p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d4p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d4p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d4p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5a76cce52e85cp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5a76cce52e85bp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5a76cce52e85bp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5a76cce52e85bp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5a76cce52e88p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5a76cce52e88p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5a76cce52e8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5a76cce52e8p+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe81f852717p-8 -0x7.57d1ep-12 : -0x1.cdaa9db6fdf93p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe81f852717p-8 -0x7.57d1ep-12 : -0x1.cdaa9db6fdf93p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe81f852717p-8 -0x7.57d1ep-12 : -0x1.cdaa9db6fdf92p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe81f852717p-8 -0x7.57d1ep-12 : -0x1.cdaa9db6fdf92p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929011384455c4cc6p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929011384455c4cc5p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929011384455c4cc5p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929011384455c4cc5p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929011384455c4dp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929011384455c4dp+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929011384455c4c8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929011384455c4c8p+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe81f852717p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da7ca621p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe81f852717p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da7ca621p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe81f852717p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da7ca62p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe81f852717p-8 -0x7.57d1de0e51244p-12 : -0x1.cdaa9da7ca62p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b26p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b26p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b26p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b26p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27b722145353aep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27b722145353aep+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27b722145353adp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27b722145353adp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27b722145354p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27b7221453538p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27b7221453538p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27b7221453538p+0L : inexact-ok
+= atan2 downward dbl-64 -0x1.effe81f852717p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da7ca621p+0 : inexact-ok
+= atan2 tonearest dbl-64 -0x1.effe81f852717p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da7ca621p+0 : inexact-ok
+= atan2 towardzero dbl-64 -0x1.effe81f852717p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da7ca62p+0 : inexact-ok
+= atan2 upward dbl-64 -0x1.effe81f852717p-8 -0x7.57d1de0e51248p-12 : -0x1.cdaa9da7ca62p+0 : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c286e46cb4baep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c286e46cb4badp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c286e46cb4badp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c286e46cb4badp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c286e46cb4cp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c286e46cb4b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c286e46cb4b8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c286e46cb4b8p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52ced89e7d06e6p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52ced89e7d06e6p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52ced89e7d06e5p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52ced89e7d06e5p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52ced89e7d07p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52ced89e7d07p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52ced89e7d068p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52ced89e7d068p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c530d66c80355e5p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c530d66c80355e5p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c530d66c80355e4p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c530d66c80355e4p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c530d66c80356p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c530d66c80356p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c530d66c803558p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c530d66c803558p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c52d514db487c77p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c52d514db487c76p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c52d514db487c76p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c52d514db487c76p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c52d514db487c77p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c52d514db487c76p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c52d514db487c76p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c52d514db487c76p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c52d514db487c75p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c52d514db487c74p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c52d514db487c74p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c52d514db487c74p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c52d514db487c8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c52d514db487c8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c52d514db487cp+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c52d514db487cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c52d514db487c84p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c52d514db487c84p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c52d514db487c83p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c52d514db487c83p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c52d514db487dp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c52d514db487c8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c52d514db487c8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852717p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c52d514db487c8p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d8p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d8p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61df7ac272703p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61df7ac272702p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61df7ac272702p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61df7ac272702p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61df7ac27278p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61df7ac2727p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61df7ac2727p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61df7ac2727p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929018a0f23a3f83bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929018a0f23a3f83bp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929018a0f23a3f83ap+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929018a0f23a3f83ap+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929018a0f23a3f88p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929018a0f23a3f8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929018a0f23a3f8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929018a0f23a3f8p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b2ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b2ap+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282dacf27ef281p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282dacf27ef281p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282dacf27ef28p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282dacf27ef28p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282dacf27ef3p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282dacf27ef28p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282dacf27ef28p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282dacf27ef28p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9ef924f6ea81p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9ef924f6ea8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9ef924f6ea8p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9ef924f6ea8p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9ef924f6ebp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9ef924f6ea8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9ef924f6ea8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9ef924f6ea8p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c5345637ca8a5b9p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c5345637ca8a5b9p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c5345637ca8a5b8p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c5345637ca8a5b8p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c5345637ca8a6p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c5345637ca8a58p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c5345637ca8a58p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c5345637ca8a58p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5383f1a62ef4b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5383f1a62ef4b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5383f1a62ef4b7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5383f1a62ef4b7p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5383f1a62ef5p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5383f1a62ef48p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5383f1a62ef48p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5383f1a62ef48p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c534b9fb9741b4ap+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c534b9fb9741b49p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c534b9fb9741b49p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c534b9fb9741b49p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c534b9fb9741b4ap+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c534b9fb9741b49p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c534b9fb9741b49p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c534b9fb9741b49p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c534b9fb9741b48p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c534b9fb9741b48p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c534b9fb9741b47p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c534b9fb9741b47p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c534b9fb9741b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c534b9fb9741b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c534b9fb9741bp+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c534b9fb9741bp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c534b9fb9741b58p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c534b9fb9741b57p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c534b9fb9741b57p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c534b9fb9741b57p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c534b9fb9741b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c534b9fb9741b8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c534b9fb9741bp+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffcp-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c534b9fb9741bp+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d4p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d4p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d6p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d4p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d4p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5e2b23d3d07afp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5e2b23d3d07afp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5e2b23d3d07aep+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5e2b23d3d07aep+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5e2b23d3d08p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5e2b23d3d078p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5e2b23d3d078p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d5e2b23d3d078p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92902p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929014ec9b4802281p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929014ec9b480228p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929014ec9b480228p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929014ec9b480228p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929014ec9b48023p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929014ec9b480228p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929014ec9b480228p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf929014ec9b480228p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b26p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b26p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b28p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b26p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b26p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27f26783692318p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27f26783692317p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27f26783692317p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27f26783692317p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27f2678369238p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27f267836923p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27f267836923p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b27f267836923p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1ep+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c63b3b5e11b17p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c63b3b5e11b17p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c63b3b5e11b16p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c63b3b5e11b16p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c63b3b5e11b8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c63b3b5e11bp+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c63b3b5e11bp+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c63b3b5e11bp+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c530a1e0d92d65p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c530a1e0d92d64fp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c530a1e0d92d64fp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c530a1e0d92d64fp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c530a1e0d92d68p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c530a1e0d92d68p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c530a1e0d92d6p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c530a1e0d92d6p+0L : inexact-ok
+= atan2 downward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 towardzero ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-intel -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 tonearest ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c54p+0L : inexact-ok
+= atan2 towardzero ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 upward ldbl-96-m68k -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c52p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5348ac3719254fp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5348ac3719254ep+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5348ac3719254ep+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5348ac3719254ep+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5348ac3719258p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5348ac3719258p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5348ac371925p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c5348ac371925p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c53105a4a5e4bep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c53105a4a5e4bep+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c53105a4a5e4bdfp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c53105a4a5e4bdfp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c53105a4a5e4bep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c53105a4a5e4bep+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c53105a4a5e4bdfp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c53105a4a5e4bdfp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c53105a4a5e4bdep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c53105a4a5e4bdep+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c53105a4a5e4bddp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c53105a4a5e4bddp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c53105a4a5e4cp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c53105a4a5e4cp+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c53105a4a5e4b8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c53105a4a5e4b8p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c53105a4a5e4beep+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c53105a4a5e4beep+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c53105a4a5e4bedp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c53105a4a5e4bedp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c53105a4a5e4cp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c53105a4a5e4cp+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c53105a4a5e4b8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffep-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c53105a4a5e4b8p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac76549p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac76548p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac76548p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac76548p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e92p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e91p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e91p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e91p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3cp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3bfp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3bfp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbcp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbbfp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbbfp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbbfp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796f8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796f8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796f7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796f7p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f7p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f7p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f6p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f6p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c89p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c89p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c87p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c87p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c86p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c86p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c97p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c96p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c96p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac291p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c96p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac76549p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac76548p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac76548p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac76548p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e92p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e91p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e91p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e91p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3cp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3bfp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3bfp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbcp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbbfp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbbfp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbbfp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796f8p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796f8p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796f7p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796f7p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f7p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f7p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f6p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f6p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c89p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c89p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c87p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c87p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c86p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c86p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c97p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c96p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c96p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac292p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c96p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7654bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7654ap+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7654ap+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7654ap+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7658p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7658p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac765p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac765p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e94p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e93p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e93p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e93p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427fp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e8p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3c2p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3c2p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3c1p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3c1p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de4p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de4p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de38p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de38p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbc2p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbc1p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbc1p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbc1p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dcp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dcp+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395db8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395db8p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796fap+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796fap+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796f9p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796f9p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4797p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4797p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab47968p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab47968p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f9p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f9p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f8p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5f8p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde6p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde6p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde58p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde58p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c8bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c8ap+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c8ap+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c8ap+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c8bp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c8ap+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c8ap+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c8ap+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c89p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c89p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c88p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130dp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c99p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c98p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c98p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c98p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130dp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac28p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7653cp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7653cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7653bp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7653bp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac7658p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac765p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac765p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1d8p-12L : -0x1.cdaa9d786fcfa0d61c33dac765p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e85p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e85p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e84p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e84p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427fp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1ep-12L : -0x1.cdaa9db6fdf92901884b52427e8p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3b4p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3b3p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3b3p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de3b3p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de4p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de38p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de38p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51244p-12L : -0x1.cdaa9da7ca620b282be9211de38p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbb3p+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbb3p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbb2p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dbb2p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395dcp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395db8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395db8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51248p-12L : -0x1.cdaa9da7ca620d1c9d355395db8p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796ecp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796ebp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796ebp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4796ebp+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4797p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab4797p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab47968p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e5124664p-12L : -0x1.cdaa9da7ca620c53439fab47968p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5ebp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5eap+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5eap+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde5eap+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde6p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde6p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde58p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246648p-12L : -0x1.cdaa9da7ca620c53822dd4cde58p+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c7cp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c7cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c7bp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4838p-12L : -0x1.cdaa9da7ca620c5349dbe8130c7bp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c7cp+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c7cp+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c7bp+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca483cp-12L : -0x1.cdaa9da7ca620c5349dbe8130c7bp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c7ap+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c7ap+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c79p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c79p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130cp+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca48p-12L : -0x1.cdaa9da7ca620c5349dbe8130cp+0L : inexact-ok
+= atan2 downward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c8ap+0L : inexact-ok
+= atan2 tonearest ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c89p+0L : inexact-ok
+= atan2 towardzero ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c89p+0L : inexact-ok
+= atan2 upward ldbl-128 -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c89p+0L : inexact-ok
+= atan2 downward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130dp+0L : inexact-ok
+= atan2 tonearest ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+= atan2 towardzero ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+= atan2 upward ldbl-128ibm -0x1.effe81f852716ffc0f3eeb1ac3p-8L -0x7.57d1de0e51246640cc2340ca4ap-12L : -0x1.cdaa9da7ca620c5349dbe8130c8p+0L : inexact-ok
+atan2 0x1.00000000000001p0 0x1.00000000000001p0
+= atan2 downward flt-32 0x1.000002p+0f 0x1.000002p+0f : 0xc.90fdap-4f : inexact-ok
+= atan2 tonearest flt-32 0x1.000002p+0f 0x1.000002p+0f : 0xc.90fdbp-4f : inexact-ok
+= atan2 towardzero flt-32 0x1.000002p+0f 0x1.000002p+0f : 0xc.90fdap-4f : inexact-ok
+= atan2 upward flt-32 0x1.000002p+0f 0x1.000002p+0f : 0xc.90fdbp-4f : inexact-ok
+= atan2 downward dbl-64 0x1.000002p+0 0x1.000002p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 tonearest dbl-64 0x1.000002p+0 0x1.000002p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 towardzero dbl-64 0x1.000002p+0 0x1.000002p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 upward dbl-64 0x1.000002p+0 0x1.000002p+0 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234c4c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.000002p+0L 0x1.000002p+0L : 0xc.90fdaa22168c234c4c6628b81p-4L : inexact-ok
+= atan2 downward flt-32 0x1.000002p+0f 0x1p+0f : 0xc.90fdbp-4f : inexact-ok
+= atan2 tonearest flt-32 0x1.000002p+0f 0x1p+0f : 0xc.90fdcp-4f : inexact-ok
+= atan2 towardzero flt-32 0x1.000002p+0f 0x1p+0f : 0xc.90fdbp-4f : inexact-ok
+= atan2 upward flt-32 0x1.000002p+0f 0x1p+0f : 0xc.90fdcp-4f : inexact-ok
+= atan2 downward dbl-64 0x1.000002p+0 0x1p+0 : 0xc.90fdba22167cp-4 : inexact-ok
+= atan2 tonearest dbl-64 0x1.000002p+0 0x1p+0 : 0xc.90fdba22167cp-4 : inexact-ok
+= atan2 towardzero dbl-64 0x1.000002p+0 0x1p+0 : 0xc.90fdba22167cp-4 : inexact-ok
+= atan2 upward dbl-64 0x1.000002p+0 0x1p+0 : 0xc.90fdba22167c8p-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c235p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c235p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234c5710d362b868p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234c5710d362b87p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234c5710d362b868p-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234c5710d362b87p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234c5710d362b8p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234c5710d362b8p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234c5710d362b8p-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.000002p+0L 0x1p+0L : 0xc.90fdba22167c234c5710d362bcp-4L : inexact-ok
+= atan2 downward dbl-64 0x1.000002p+0 0x1.0000000000001p+0 : 0xc.90fdba22167b8p-4 : inexact-ok
+= atan2 tonearest dbl-64 0x1.000002p+0 0x1.0000000000001p+0 : 0xc.90fdba22167b8p-4 : inexact-ok
+= atan2 towardzero dbl-64 0x1.000002p+0 0x1.0000000000001p+0 : 0xc.90fdba22167b8p-4 : inexact-ok
+= atan2 upward dbl-64 0x1.000002p+0 0x1.0000000000001p+0 : 0xc.90fdba22167cp-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba35p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba35p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba35p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba35p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34c5710d363bc68p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34c5710d363bc7p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34c5710d363bc68p-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34c5710d363bc7p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34c5710d363bcp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34c5710d363bcp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34c5710d363bcp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.000002p+0L 0x1.0000000000001p+0L : 0xc.90fdba22167ba34c5710d363cp-4L : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b5p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b5p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4c5710d362c87p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4c5710d362c87p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4c5710d362c87p-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4c5710d362c878p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4c5710d362c8p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4c5710d362c8p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4c5710d362c8p-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.000002p+0L 0x1.00000000000001p+0L : 0xc.90fdba22167c1b4c5710d362ccp-4L : inexact-ok
+= atan2 downward flt-32 0x1p+0f 0x1.000002p+0f : 0xc.90fd9p-4f : inexact-ok
+= atan2 tonearest flt-32 0x1p+0f 0x1.000002p+0f : 0xc.90fdap-4f : inexact-ok
+= atan2 towardzero flt-32 0x1p+0f 0x1.000002p+0f : 0xc.90fd9p-4f : inexact-ok
+= atan2 upward flt-32 0x1p+0f 0x1.000002p+0f : 0xc.90fdap-4f : inexact-ok
+= atan2 downward dbl-64 0x1p+0 0x1.000002p+0 : 0xc.90fd9a22169cp-4 : inexact-ok
+= atan2 tonearest dbl-64 0x1p+0 0x1.000002p+0 : 0xc.90fd9a22169cp-4 : inexact-ok
+= atan2 towardzero dbl-64 0x1p+0 0x1.000002p+0 : 0xc.90fd9a22169cp-4 : inexact-ok
+= atan2 upward dbl-64 0x1p+0 0x1.000002p+0 : 0xc.90fd9a22169c8p-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c235p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c235p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234c41bb7e0d631p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234c41bb7e0d6318p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234c41bb7e0d631p-4L : inexact-ok
+= atan2 upward ldbl-128 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234c41bb7e0d6318p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234c41bb7e0d6p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234c41bb7e0d64p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234c41bb7e0d6p-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1p+0L 0x1.000002p+0L : 0xc.90fd9a22169c234c41bb7e0d64p-4L : inexact-ok
+= atan2 downward flt-32 0x1p+0f 0x1p+0f : 0xc.90fdap-4f : inexact-ok
+= atan2 tonearest flt-32 0x1p+0f 0x1p+0f : 0xc.90fdbp-4f : inexact-ok
+= atan2 towardzero flt-32 0x1p+0f 0x1p+0f : 0xc.90fdap-4f : inexact-ok
+= atan2 upward flt-32 0x1p+0f 0x1p+0f : 0xc.90fdbp-4f : inexact-ok
+= atan2 downward dbl-64 0x1p+0 0x1p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 tonearest dbl-64 0x1p+0 0x1p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 towardzero dbl-64 0x1p+0 0x1p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 upward dbl-64 0x1p+0 0x1p+0 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1p+0L 0x1p+0L : 0xc.90fdaa22168c234c4c6628b81p-4L : inexact-ok
+= atan2 downward dbl-64 0x1p+0 0x1.0000000000001p+0 : 0xc.90fdaa22168b8p-4 : inexact-ok
+= atan2 tonearest dbl-64 0x1p+0 0x1.0000000000001p+0 : 0xc.90fdaa22168b8p-4 : inexact-ok
+= atan2 towardzero dbl-64 0x1p+0 0x1.0000000000001p+0 : 0xc.90fdaa22168b8p-4 : inexact-ok
+= atan2 upward dbl-64 0x1p+0 0x1.0000000000001p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba35p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba35p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba35p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba35p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34c4c6628b811cp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34c4c6628b811cp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34c4c6628b811cp-4L : inexact-ok
+= atan2 upward ldbl-128 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34c4c6628b811c8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34c4c6628b81p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34c4c6628b81p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34c4c6628b81p-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168ba34c4c6628b814p-4L : inexact-ok
+= atan2 downward ldbl-96-intel 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b5p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b5p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4c4c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4c4c6628b80dc8p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4c4c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4c4c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4c4c6628b80cp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c1b4c4c6628b81p-4L : inexact-ok
+= atan2 downward dbl-64 0x1.0000000000001p+0 0x1.000002p+0 : 0xc.90fd9a22169c8p-4 : inexact-ok
+= atan2 tonearest dbl-64 0x1.0000000000001p+0 0x1.000002p+0 : 0xc.90fd9a22169c8p-4 : inexact-ok
+= atan2 towardzero dbl-64 0x1.0000000000001p+0 0x1.000002p+0 : 0xc.90fd9a22169c8p-4 : inexact-ok
+= atan2 upward dbl-64 0x1.0000000000001p+0 0x1.000002p+0 : 0xc.90fd9a22169dp-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca35p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca35p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca35p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca35p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34c41bb7e0c5f1p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34c41bb7e0c5f18p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34c41bb7e0c5f1p-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34c41bb7e0c5f18p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34c41bb7e0c5cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34c41bb7e0c6p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34c41bb7e0c5cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.0000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169ca34c41bb7e0c6p-4L : inexact-ok
+= atan2 downward dbl-64 0x1.0000000000001p+0 0x1p+0 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan2 tonearest dbl-64 0x1.0000000000001p+0 0x1p+0 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan2 towardzero dbl-64 0x1.0000000000001p+0 0x1p+0 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan2 upward dbl-64 0x1.0000000000001p+0 0x1p+0 : 0xc.90fdaa22168dp-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca35p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca35p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca35p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca35p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34c4c6628b809cp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34c4c6628b809cp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34c4c6628b809cp-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34c4c6628b809c8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34c4c6628b808p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34c4c6628b808p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34c4c6628b808p-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.0000000000001p+0L 0x1p+0L : 0xc.90fdaa22168ca34c4c6628b80cp-4L : inexact-ok
+= atan2 downward dbl-64 0x1.0000000000001p+0 0x1.0000000000001p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 tonearest dbl-64 0x1.0000000000001p+0 0x1.0000000000001p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 towardzero dbl-64 0x1.0000000000001p+0 0x1.0000000000001p+0 : 0xc.90fdaa22168cp-4 : inexact-ok
+= atan2 upward dbl-64 0x1.0000000000001p+0 0x1.0000000000001p+0 : 0xc.90fdaa22168c8p-4 : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.0000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168c234c4c6628b81p-4L : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b5p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b5p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4c4c6628b809cp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4c4c6628b809c8p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4c4c6628b809cp-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4c4c6628b809c8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4c4c6628b808p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4c4c6628b808p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4c4c6628b808p-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.0000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c9b4c4c6628b80cp-4L : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b5p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b5p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4c41bb7e0d531p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4c41bb7e0d531p-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4c41bb7e0d531p-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4c41bb7e0d5318p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4c41bb7e0d5p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4c41bb7e0d54p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4c41bb7e0d5p-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.00000000000001p+0L 0x1.000002p+0L : 0xc.90fd9a22169c2b4c41bb7e0d54p-4L : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b5p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b5p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4c4c6628b80db8p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4c4c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4c4c6628b80db8p-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4c4c6628b80dcp-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4c4c6628b80cp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.00000000000001p+0L 0x1p+0L : 0xc.90fdaa22168c2b4c4c6628b81p-4L : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab5p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab5p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab5p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4c4c6628b811b8p-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4c4c6628b811cp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4c4c6628b811b8p-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4c4c6628b811cp-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4c4c6628b81p-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4c4c6628b81p-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4c4c6628b81p-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.00000000000001p+0L 0x1.0000000000001p+0L : 0xc.90fdaa22168bab4c4c6628b814p-4L : inexact-ok
+= atan2 downward ldbl-96-intel 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-intel 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-intel 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-intel 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-96-m68k 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 tonearest ldbl-96-m68k 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 towardzero ldbl-96-m68k 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234p-4L : inexact-ok
+= atan2 upward ldbl-96-m68k 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c235p-4L : inexact-ok
+= atan2 downward ldbl-128 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 tonearest ldbl-128 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 towardzero ldbl-128 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80dcp-4L : inexact-ok
+= atan2 upward ldbl-128 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80dc8p-4L : inexact-ok
+= atan2 downward ldbl-128ibm 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 tonearest ldbl-128ibm 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 towardzero ldbl-128ibm 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234c4c6628b80cp-4L : inexact-ok
+= atan2 upward ldbl-128ibm 0x1.00000000000001p+0L 0x1.00000000000001p+0L : 0xc.90fdaa22168c234c4c6628b81p-4L : inexact-ok
+atanh 0
+= atanh downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atanh tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atanh towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atanh upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= atanh downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atanh tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atanh towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atanh upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= atanh downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= atanh upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+atanh -0
+= atanh downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= atanh tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= atanh towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= atanh upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= atanh downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= atanh tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= atanh towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= atanh upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= atanh downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= atanh upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+atanh 0.75
+= atanh downward flt-32 0xcp-4f : 0xf.91395p-4f : inexact-ok
+= atanh tonearest flt-32 0xcp-4f : 0xf.91395p-4f : inexact-ok
+= atanh towardzero flt-32 0xcp-4f : 0xf.91395p-4f : inexact-ok
+= atanh upward flt-32 0xcp-4f : 0xf.91396p-4f : inexact-ok
+= atanh downward dbl-64 0xcp-4 : 0xf.913957192d2b8p-4 : inexact-ok
+= atanh tonearest dbl-64 0xcp-4 : 0xf.913957192d2b8p-4 : inexact-ok
+= atanh towardzero dbl-64 0xcp-4 : 0xf.913957192d2b8p-4 : inexact-ok
+= atanh upward dbl-64 0xcp-4 : 0xf.913957192d2cp-4 : inexact-ok
+= atanh downward ldbl-96-intel 0xcp-4L : 0xf.913957192d2baa3p-4L : inexact-ok
+= atanh tonearest ldbl-96-intel 0xcp-4L : 0xf.913957192d2baa3p-4L : inexact-ok
+= atanh towardzero ldbl-96-intel 0xcp-4L : 0xf.913957192d2baa3p-4L : inexact-ok
+= atanh upward ldbl-96-intel 0xcp-4L : 0xf.913957192d2baa4p-4L : inexact-ok
+= atanh downward ldbl-96-m68k 0xcp-4L : 0xf.913957192d2baa3p-4L : inexact-ok
+= atanh tonearest ldbl-96-m68k 0xcp-4L : 0xf.913957192d2baa3p-4L : inexact-ok
+= atanh towardzero ldbl-96-m68k 0xcp-4L : 0xf.913957192d2baa3p-4L : inexact-ok
+= atanh upward ldbl-96-m68k 0xcp-4L : 0xf.913957192d2baa4p-4L : inexact-ok
+= atanh downward ldbl-128 0xcp-4L : 0xf.913957192d2baa37b4a4b67930d8p-4L : inexact-ok
+= atanh tonearest ldbl-128 0xcp-4L : 0xf.913957192d2baa37b4a4b67930ep-4L : inexact-ok
+= atanh towardzero ldbl-128 0xcp-4L : 0xf.913957192d2baa37b4a4b67930d8p-4L : inexact-ok
+= atanh upward ldbl-128 0xcp-4L : 0xf.913957192d2baa37b4a4b67930ep-4L : inexact-ok
+= atanh downward ldbl-128ibm 0xcp-4L : 0xf.913957192d2baa37b4a4b6793p-4L : inexact-ok
+= atanh tonearest ldbl-128ibm 0xcp-4L : 0xf.913957192d2baa37b4a4b6793p-4L : inexact-ok
+= atanh towardzero ldbl-128ibm 0xcp-4L : 0xf.913957192d2baa37b4a4b6793p-4L : inexact-ok
+= atanh upward ldbl-128ibm 0xcp-4L : 0xf.913957192d2baa37b4a4b67934p-4L : inexact-ok
+cabs 0.75 12.390625
+= cabs downward flt-32 0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs tonearest flt-32 0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs towardzero flt-32 0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs upward flt-32 0xcp-4f 0xc.64p+0f : 0xc.69ce4p+0f : inexact-ok
+= cabs downward dbl-64 0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs tonearest dbl-64 0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs towardzero dbl-64 0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs upward dbl-64 0xcp-4 0xc.64p+0 : 0xc.69ce375a71e1p+0 : inexact-ok
+= cabs downward ldbl-96-intel 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-intel 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-intel 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-96-m68k 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-m68k 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-128 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs tonearest ldbl-128 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs towardzero ldbl-128 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs upward ldbl-128 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9fp+0L : inexact-ok
+= cabs downward ldbl-128ibm 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs upward ldbl-128ibm 0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830ccp+0L : inexact-ok
+cabs -12.390625 0.75
+= cabs downward flt-32 -0xc.64p+0f 0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs tonearest flt-32 -0xc.64p+0f 0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs towardzero flt-32 -0xc.64p+0f 0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs upward flt-32 -0xc.64p+0f 0xcp-4f : 0xc.69ce4p+0f : inexact-ok
+= cabs downward dbl-64 -0xc.64p+0 0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs tonearest dbl-64 -0xc.64p+0 0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs towardzero dbl-64 -0xc.64p+0 0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs upward dbl-64 -0xc.64p+0 0xcp-4 : 0xc.69ce375a71e1p+0 : inexact-ok
+= cabs downward ldbl-96-intel -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-intel -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-intel -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-96-m68k -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-m68k -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-128 -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs tonearest ldbl-128 -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs towardzero ldbl-128 -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs upward ldbl-128 -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c9fp+0L : inexact-ok
+= cabs downward ldbl-128ibm -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs upward ldbl-128ibm -0xc.64p+0L 0xcp-4L : 0xc.69ce375a71e09a9df3616830ccp+0L : inexact-ok
+cabs -0.75 12.390625
+= cabs downward flt-32 -0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs tonearest flt-32 -0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs towardzero flt-32 -0xcp-4f 0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs upward flt-32 -0xcp-4f 0xc.64p+0f : 0xc.69ce4p+0f : inexact-ok
+= cabs downward dbl-64 -0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs tonearest dbl-64 -0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs towardzero dbl-64 -0xcp-4 0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs upward dbl-64 -0xcp-4 0xc.64p+0 : 0xc.69ce375a71e1p+0 : inexact-ok
+= cabs downward ldbl-96-intel -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-intel -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-intel -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-96-m68k -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-m68k -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-128 -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs tonearest ldbl-128 -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs towardzero ldbl-128 -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs upward ldbl-128 -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9fp+0L : inexact-ok
+= cabs downward ldbl-128ibm -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs upward ldbl-128ibm -0xcp-4L 0xc.64p+0L : 0xc.69ce375a71e09a9df3616830ccp+0L : inexact-ok
+cabs -12.390625 -0.75
+= cabs downward flt-32 -0xc.64p+0f -0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs tonearest flt-32 -0xc.64p+0f -0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs towardzero flt-32 -0xc.64p+0f -0xcp-4f : 0xc.69ce3p+0f : inexact-ok
+= cabs upward flt-32 -0xc.64p+0f -0xcp-4f : 0xc.69ce4p+0f : inexact-ok
+= cabs downward dbl-64 -0xc.64p+0 -0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs tonearest dbl-64 -0xc.64p+0 -0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs towardzero dbl-64 -0xc.64p+0 -0xcp-4 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs upward dbl-64 -0xc.64p+0 -0xcp-4 : 0xc.69ce375a71e1p+0 : inexact-ok
+= cabs downward ldbl-96-intel -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-intel -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-intel -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-96-m68k -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-m68k -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-128 -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs tonearest ldbl-128 -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs towardzero ldbl-128 -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs upward ldbl-128 -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c9fp+0L : inexact-ok
+= cabs downward ldbl-128ibm -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs upward ldbl-128ibm -0xc.64p+0L -0xcp-4L : 0xc.69ce375a71e09a9df3616830ccp+0L : inexact-ok
+cabs -0.75 -12.390625
+= cabs downward flt-32 -0xcp-4f -0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs tonearest flt-32 -0xcp-4f -0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs towardzero flt-32 -0xcp-4f -0xc.64p+0f : 0xc.69ce3p+0f : inexact-ok
+= cabs upward flt-32 -0xcp-4f -0xc.64p+0f : 0xc.69ce4p+0f : inexact-ok
+= cabs downward dbl-64 -0xcp-4 -0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs tonearest dbl-64 -0xcp-4 -0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs towardzero dbl-64 -0xcp-4 -0xc.64p+0 : 0xc.69ce375a71e08p+0 : inexact-ok
+= cabs upward dbl-64 -0xcp-4 -0xc.64p+0 : 0xc.69ce375a71e1p+0 : inexact-ok
+= cabs downward ldbl-96-intel -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-intel -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-intel -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-96-m68k -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9p+0L : inexact-ok
+= cabs upward ldbl-96-m68k -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09aap+0L : inexact-ok
+= cabs downward ldbl-128 -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs tonearest ldbl-128 -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs towardzero ldbl-128 -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9e8p+0L : inexact-ok
+= cabs upward ldbl-128 -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c9fp+0L : inexact-ok
+= cabs downward ldbl-128ibm -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830c8p+0L : inexact-ok
+= cabs upward ldbl-128ibm -0xcp-4L -0xc.64p+0L : 0xc.69ce375a71e09a9df3616830ccp+0L : inexact-ok
+cabs -0.75 0
+= cabs downward flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs tonearest flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs towardzero flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs upward flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs downward dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs tonearest dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs towardzero dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs upward dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs downward ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+cabs 0.75 0
+= cabs downward flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs tonearest flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs towardzero flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs upward flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= cabs downward dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs tonearest dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs towardzero dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs upward dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= cabs downward ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs downward ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs tonearest ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs towardzero ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= cabs upward ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+cabs -1.0 0
+= cabs downward flt-32 -0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs tonearest flt-32 -0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs towardzero flt-32 -0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs upward flt-32 -0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs downward dbl-64 -0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs tonearest dbl-64 -0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs towardzero dbl-64 -0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs upward dbl-64 -0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs downward ldbl-96-intel -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-96-intel -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-96-intel -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-96-m68k -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-96-m68k -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-128 -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-128 -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-128 -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-128 -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-128ibm -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-128ibm -0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+cabs 1.0 0
+= cabs downward flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs tonearest flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs towardzero flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs upward flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= cabs downward dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs tonearest dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs towardzero dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs upward dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= cabs downward ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs downward ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= cabs upward ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+cabs -5.7e7 0
+= cabs downward flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs tonearest flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs towardzero flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs upward flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs downward dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs tonearest dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs towardzero dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs upward dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs downward ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+cabs 5.7e7 0
+= cabs downward flt-32 0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs tonearest flt-32 0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs towardzero flt-32 0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs upward flt-32 0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= cabs downward dbl-64 0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs tonearest dbl-64 0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs towardzero dbl-64 0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs upward dbl-64 0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= cabs downward ldbl-96-intel 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-96-intel 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-96-intel 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-96-intel 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-96-m68k 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-96-m68k 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-96-m68k 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-96-m68k 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-128 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-128 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-128 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-128 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs downward ldbl-128ibm 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs tonearest ldbl-128ibm 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs towardzero ldbl-128ibm 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= cabs upward ldbl-128ibm 0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+cabs 0.75 1.25
+= cabs downward flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e5p+0f : inexact-ok
+= cabs tonearest flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e5p+0f : inexact-ok
+= cabs towardzero flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e5p+0f : inexact-ok
+= cabs upward flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e52p+0f : inexact-ok
+= cabs downward dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a1p+0 : inexact-ok
+= cabs tonearest dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a2p+0 : inexact-ok
+= cabs towardzero dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a1p+0 : inexact-ok
+= cabs upward dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a2p+0 : inexact-ok
+= cabs downward ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= cabs tonearest ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= cabs towardzero ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= cabs upward ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= cabs downward ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= cabs tonearest ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= cabs towardzero ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= cabs upward ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= cabs downward ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbap+0L : inexact-ok
+= cabs tonearest ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbbp+0L : inexact-ok
+= cabs towardzero ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbap+0L : inexact-ok
+= cabs upward ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbbp+0L : inexact-ok
+= cabs downward ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1f8p+0L : inexact-ok
+= cabs tonearest ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1f8p+0L : inexact-ok
+= cabs towardzero ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1f8p+0L : inexact-ok
+= cabs upward ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f2p+0L : inexact-ok
+carg 2.0 0
+= carg downward flt-32 0x2p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg tonearest flt-32 0x2p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg towardzero flt-32 0x2p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg upward flt-32 0x2p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg downward dbl-64 0x2p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg tonearest dbl-64 0x2p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg towardzero dbl-64 0x2p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg upward dbl-64 0x2p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-128 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-128 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-128 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-128 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x2p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+carg 2.0 -0
+= carg downward flt-32 0x2p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg tonearest flt-32 0x2p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg towardzero flt-32 0x2p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg upward flt-32 0x2p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg downward dbl-64 0x2p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg tonearest dbl-64 0x2p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg towardzero dbl-64 0x2p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg upward dbl-64 0x2p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-128 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-128 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-128 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-128 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x2p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+carg 0 0
+= carg downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= carg downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+carg 0 -0
+= carg downward flt-32 0x0p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg tonearest flt-32 0x0p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg towardzero flt-32 0x0p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg upward flt-32 0x0p+0f -0x0p+0f : -0x0p+0f : inexact-ok
+= carg downward dbl-64 0x0p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg tonearest dbl-64 0x0p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg towardzero dbl-64 0x0p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg upward dbl-64 0x0p+0 -0x0p+0 : -0x0p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-128 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-128 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-128 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-128 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x0p+0L -0x0p+0L : -0x0p+0L : inexact-ok
+carg -2.0 0
+= carg downward flt-32 -0x2p+0f 0x0p+0f : 0x3.243f68p+0f : inexact-ok
+= carg tonearest flt-32 -0x2p+0f 0x0p+0f : 0x3.243f6cp+0f : inexact-ok
+= carg towardzero flt-32 -0x2p+0f 0x0p+0f : 0x3.243f68p+0f : inexact-ok
+= carg upward flt-32 -0x2p+0f 0x0p+0f : 0x3.243f6cp+0f : inexact-ok
+= carg downward dbl-64 -0x2p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg tonearest dbl-64 -0x2p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg towardzero dbl-64 -0x2p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg upward dbl-64 -0x2p+0 0x0p+0 : 0x3.243f6a8885a32p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-intel -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg downward ldbl-128 -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg upward ldbl-128 -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e0372p+0L : inexact-ok
+= carg downward ldbl-128ibm -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x2p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+carg -2.0 -0
+= carg downward flt-32 -0x2p+0f -0x0p+0f : -0x3.243f6cp+0f : inexact-ok
+= carg tonearest flt-32 -0x2p+0f -0x0p+0f : -0x3.243f6cp+0f : inexact-ok
+= carg towardzero flt-32 -0x2p+0f -0x0p+0f : -0x3.243f68p+0f : inexact-ok
+= carg upward flt-32 -0x2p+0f -0x0p+0f : -0x3.243f68p+0f : inexact-ok
+= carg downward dbl-64 -0x2p+0 -0x0p+0 : -0x3.243f6a8885a32p+0 : inexact-ok
+= carg tonearest dbl-64 -0x2p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg towardzero dbl-64 -0x2p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg upward dbl-64 -0x2p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-intel -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg downward ldbl-128 -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= carg upward ldbl-128 -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= carg downward ldbl-128ibm -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x2p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+carg -0 0
+= carg downward flt-32 -0x0p+0f 0x0p+0f : 0x3.243f68p+0f : inexact-ok
+= carg tonearest flt-32 -0x0p+0f 0x0p+0f : 0x3.243f6cp+0f : inexact-ok
+= carg towardzero flt-32 -0x0p+0f 0x0p+0f : 0x3.243f68p+0f : inexact-ok
+= carg upward flt-32 -0x0p+0f 0x0p+0f : 0x3.243f6cp+0f : inexact-ok
+= carg downward dbl-64 -0x0p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg tonearest dbl-64 -0x0p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg towardzero dbl-64 -0x0p+0 0x0p+0 : 0x3.243f6a8885a3p+0 : inexact-ok
+= carg upward dbl-64 -0x0p+0 0x0p+0 : 0x3.243f6a8885a32p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-intel -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg downward ldbl-128 -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg upward ldbl-128 -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e0372p+0L : inexact-ok
+= carg downward ldbl-128ibm -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x0p+0L 0x0p+0L : 0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+carg -0 -0
+= carg downward flt-32 -0x0p+0f -0x0p+0f : -0x3.243f6cp+0f : inexact-ok
+= carg tonearest flt-32 -0x0p+0f -0x0p+0f : -0x3.243f6cp+0f : inexact-ok
+= carg towardzero flt-32 -0x0p+0f -0x0p+0f : -0x3.243f68p+0f : inexact-ok
+= carg upward flt-32 -0x0p+0f -0x0p+0f : -0x3.243f68p+0f : inexact-ok
+= carg downward dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a32p+0 : inexact-ok
+= carg tonearest dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg towardzero dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg upward dbl-64 -0x0p+0 -0x0p+0 : -0x3.243f6a8885a3p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-intel -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d4p+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308dp+0L : inexact-ok
+= carg downward ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e037p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= carg upward ldbl-128 -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e036ep+0L : inexact-ok
+= carg downward ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e04p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x0p+0L -0x0p+0L : -0x3.243f6a8885a308d313198a2e03p+0L : inexact-ok
+carg 0 2.0
+= carg downward flt-32 0x0p+0f 0x2p+0f : 0x1.921fb4p+0f : inexact-ok
+= carg tonearest flt-32 0x0p+0f 0x2p+0f : 0x1.921fb6p+0f : inexact-ok
+= carg towardzero flt-32 0x0p+0f 0x2p+0f : 0x1.921fb4p+0f : inexact-ok
+= carg upward flt-32 0x0p+0f 0x2p+0f : 0x1.921fb6p+0f : inexact-ok
+= carg downward dbl-64 0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg tonearest dbl-64 0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg towardzero dbl-64 0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg upward dbl-64 0x0p+0 0x2p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg downward ldbl-128 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg tonearest ldbl-128 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg towardzero ldbl-128 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg upward ldbl-128 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+carg -0 2.0
+= carg downward flt-32 -0x0p+0f 0x2p+0f : 0x1.921fb4p+0f : inexact-ok
+= carg tonearest flt-32 -0x0p+0f 0x2p+0f : 0x1.921fb6p+0f : inexact-ok
+= carg towardzero flt-32 -0x0p+0f 0x2p+0f : 0x1.921fb4p+0f : inexact-ok
+= carg upward flt-32 -0x0p+0f 0x2p+0f : 0x1.921fb6p+0f : inexact-ok
+= carg downward dbl-64 -0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg tonearest dbl-64 -0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg towardzero dbl-64 -0x0p+0 0x2p+0 : 0x1.921fb54442d18p+0 : inexact-ok
+= carg upward dbl-64 -0x0p+0 0x2p+0 : 0x1.921fb54442d19p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-intel -0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x1.921fb54442d1846ap+0L : inexact-ok
+= carg downward ldbl-128 -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg upward ldbl-128 -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51701b9p+0L : inexact-ok
+= carg downward ldbl-128ibm -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x0p+0L 0x2p+0L : 0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+carg 0 -2.0
+= carg downward flt-32 0x0p+0f -0x2p+0f : -0x1.921fb6p+0f : inexact-ok
+= carg tonearest flt-32 0x0p+0f -0x2p+0f : -0x1.921fb6p+0f : inexact-ok
+= carg towardzero flt-32 0x0p+0f -0x2p+0f : -0x1.921fb4p+0f : inexact-ok
+= carg upward flt-32 0x0p+0f -0x2p+0f : -0x1.921fb4p+0f : inexact-ok
+= carg downward dbl-64 0x0p+0 -0x2p+0 : -0x1.921fb54442d19p+0 : inexact-ok
+= carg tonearest dbl-64 0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg towardzero dbl-64 0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg upward dbl-64 0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg downward ldbl-96-intel 0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg tonearest ldbl-96-intel 0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-intel 0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-intel 0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg downward ldbl-96-m68k 0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg tonearest ldbl-96-m68k 0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-m68k 0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-m68k 0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg downward ldbl-128 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg tonearest ldbl-128 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg towardzero ldbl-128 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= carg upward ldbl-128 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= carg downward ldbl-128ibm 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= carg tonearest ldbl-128ibm 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg towardzero ldbl-128ibm 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg upward ldbl-128ibm 0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+carg -0 -2.0
+= carg downward flt-32 -0x0p+0f -0x2p+0f : -0x1.921fb6p+0f : inexact-ok
+= carg tonearest flt-32 -0x0p+0f -0x2p+0f : -0x1.921fb6p+0f : inexact-ok
+= carg towardzero flt-32 -0x0p+0f -0x2p+0f : -0x1.921fb4p+0f : inexact-ok
+= carg upward flt-32 -0x0p+0f -0x2p+0f : -0x1.921fb4p+0f : inexact-ok
+= carg downward dbl-64 -0x0p+0 -0x2p+0 : -0x1.921fb54442d19p+0 : inexact-ok
+= carg tonearest dbl-64 -0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg towardzero dbl-64 -0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg upward dbl-64 -0x0p+0 -0x2p+0 : -0x1.921fb54442d18p+0 : inexact-ok
+= carg downward ldbl-96-intel -0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg tonearest ldbl-96-intel -0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-intel -0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-intel -0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg downward ldbl-96-m68k -0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg tonearest ldbl-96-m68k -0x0p+0L -0x2p+0L : -0x1.921fb54442d1846ap+0L : inexact-ok
+= carg towardzero ldbl-96-m68k -0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg upward ldbl-96-m68k -0x0p+0L -0x2p+0L : -0x1.921fb54442d18468p+0L : inexact-ok
+= carg downward ldbl-128 -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg tonearest ldbl-128 -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b8p+0L : inexact-ok
+= carg towardzero ldbl-128 -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= carg upward ldbl-128 -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51701b7p+0L : inexact-ok
+= carg downward ldbl-128ibm -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc51702p+0L : inexact-ok
+= carg tonearest ldbl-128ibm -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg towardzero ldbl-128ibm -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+= carg upward ldbl-128ibm -0x0p+0L -0x2p+0L : -0x1.921fb54442d18469898cc517018p+0L : inexact-ok
+cbrt 0.0
+= cbrt downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= cbrt tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= cbrt towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= cbrt upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= cbrt downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= cbrt tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= cbrt towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= cbrt upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= cbrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+cbrt -0
+= cbrt downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= cbrt tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= cbrt towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= cbrt upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= cbrt downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= cbrt tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= cbrt towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= cbrt upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= cbrt downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= cbrt upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+cbrt -0.001
+= cbrt downward flt-32 -0x4.18937p-12f : -0x1.99999ap-4f : inexact-ok
+= cbrt tonearest flt-32 -0x4.18937p-12f : -0x1.999998p-4f : inexact-ok
+= cbrt towardzero flt-32 -0x4.18937p-12f : -0x1.999998p-4f : inexact-ok
+= cbrt upward flt-32 -0x4.18937p-12f : -0x1.999998p-4f : inexact-ok
+= cbrt downward dbl-64 -0x4.18937p-12 : -0x1.999998fbbbbb8p-4 : inexact-ok
+= cbrt tonearest dbl-64 -0x4.18937p-12 : -0x1.999998fbbbbb8p-4 : inexact-ok
+= cbrt towardzero dbl-64 -0x4.18937p-12 : -0x1.999998fbbbbb7p-4 : inexact-ok
+= cbrt upward dbl-64 -0x4.18937p-12 : -0x1.999998fbbbbb7p-4 : inexact-ok
+= cbrt downward ldbl-96-intel -0x4.18937p-12L : -0x1.999998fbbbbb7ee4p-4L : inexact-ok
+= cbrt tonearest ldbl-96-intel -0x4.18937p-12L : -0x1.999998fbbbbb7ee4p-4L : inexact-ok
+= cbrt towardzero ldbl-96-intel -0x4.18937p-12L : -0x1.999998fbbbbb7ee2p-4L : inexact-ok
+= cbrt upward ldbl-96-intel -0x4.18937p-12L : -0x1.999998fbbbbb7ee2p-4L : inexact-ok
+= cbrt downward ldbl-96-m68k -0x4.18937p-12L : -0x1.999998fbbbbb7ee4p-4L : inexact-ok
+= cbrt tonearest ldbl-96-m68k -0x4.18937p-12L : -0x1.999998fbbbbb7ee4p-4L : inexact-ok
+= cbrt towardzero ldbl-96-m68k -0x4.18937p-12L : -0x1.999998fbbbbb7ee2p-4L : inexact-ok
+= cbrt upward ldbl-96-m68k -0x4.18937p-12L : -0x1.999998fbbbbb7ee2p-4L : inexact-ok
+= cbrt downward ldbl-128 -0x4.18937p-12L : -0x1.999998fbbbbb7ee38e11ce06340cp-4L : inexact-ok
+= cbrt tonearest ldbl-128 -0x4.18937p-12L : -0x1.999998fbbbbb7ee38e11ce06340bp-4L : inexact-ok
+= cbrt towardzero ldbl-128 -0x4.18937p-12L : -0x1.999998fbbbbb7ee38e11ce06340bp-4L : inexact-ok
+= cbrt upward ldbl-128 -0x4.18937p-12L : -0x1.999998fbbbbb7ee38e11ce06340bp-4L : inexact-ok
+= cbrt downward ldbl-128ibm -0x4.18937p-12L : -0x1.999998fbbbbb7ee38e11ce06348p-4L : inexact-ok
+= cbrt tonearest ldbl-128ibm -0x4.18937p-12L : -0x1.999998fbbbbb7ee38e11ce0634p-4L : inexact-ok
+= cbrt towardzero ldbl-128ibm -0x4.18937p-12L : -0x1.999998fbbbbb7ee38e11ce0634p-4L : inexact-ok
+= cbrt upward ldbl-128ibm -0x4.18937p-12L : -0x1.999998fbbbbb7ee38e11ce0634p-4L : inexact-ok
+= cbrt downward flt-32 -0x4.189378p-12f : -0x1.99999cp-4f : inexact-ok
+= cbrt tonearest flt-32 -0x4.189378p-12f : -0x1.99999ap-4f : inexact-ok
+= cbrt towardzero flt-32 -0x4.189378p-12f : -0x1.99999ap-4f : inexact-ok
+= cbrt upward flt-32 -0x4.189378p-12f : -0x1.99999ap-4f : inexact-ok
+= cbrt downward dbl-64 -0x4.189378p-12 : -0x1.99999a0666665p-4 : inexact-ok
+= cbrt tonearest dbl-64 -0x4.189378p-12 : -0x1.99999a0666665p-4 : inexact-ok
+= cbrt towardzero dbl-64 -0x4.189378p-12 : -0x1.99999a0666664p-4 : inexact-ok
+= cbrt upward dbl-64 -0x4.189378p-12 : -0x1.99999a0666664p-4 : inexact-ok
+= cbrt downward ldbl-96-intel -0x4.189378p-12L : -0x1.99999a0666664982p-4L : inexact-ok
+= cbrt tonearest ldbl-96-intel -0x4.189378p-12L : -0x1.99999a066666498p-4L : inexact-ok
+= cbrt towardzero ldbl-96-intel -0x4.189378p-12L : -0x1.99999a066666498p-4L : inexact-ok
+= cbrt upward ldbl-96-intel -0x4.189378p-12L : -0x1.99999a066666498p-4L : inexact-ok
+= cbrt downward ldbl-96-m68k -0x4.189378p-12L : -0x1.99999a0666664982p-4L : inexact-ok
+= cbrt tonearest ldbl-96-m68k -0x4.189378p-12L : -0x1.99999a066666498p-4L : inexact-ok
+= cbrt towardzero ldbl-96-m68k -0x4.189378p-12L : -0x1.99999a066666498p-4L : inexact-ok
+= cbrt upward ldbl-96-m68k -0x4.189378p-12L : -0x1.99999a066666498p-4L : inexact-ok
+= cbrt downward ldbl-128 -0x4.189378p-12L : -0x1.99999a0666664980000ccb554e8ap-4L : inexact-ok
+= cbrt tonearest ldbl-128 -0x4.189378p-12L : -0x1.99999a0666664980000ccb554e89p-4L : inexact-ok
+= cbrt towardzero ldbl-128 -0x4.189378p-12L : -0x1.99999a0666664980000ccb554e89p-4L : inexact-ok
+= cbrt upward ldbl-128 -0x4.189378p-12L : -0x1.99999a0666664980000ccb554e89p-4L : inexact-ok
+= cbrt downward ldbl-128ibm -0x4.189378p-12L : -0x1.99999a0666664980000ccb554fp-4L : inexact-ok
+= cbrt tonearest ldbl-128ibm -0x4.189378p-12L : -0x1.99999a0666664980000ccb554e8p-4L : inexact-ok
+= cbrt towardzero ldbl-128ibm -0x4.189378p-12L : -0x1.99999a0666664980000ccb554e8p-4L : inexact-ok
+= cbrt upward ldbl-128ibm -0x4.189378p-12L : -0x1.99999a0666664980000ccb554e8p-4L : inexact-ok
+= cbrt downward dbl-64 -0x4.189374bc6a7ecp-12 : -0x1.999999999999ap-4 : inexact-ok
+= cbrt tonearest dbl-64 -0x4.189374bc6a7ecp-12 : -0x1.9999999999999p-4 : inexact-ok
+= cbrt towardzero dbl-64 -0x4.189374bc6a7ecp-12 : -0x1.9999999999999p-4 : inexact-ok
+= cbrt upward dbl-64 -0x4.189374bc6a7ecp-12 : -0x1.9999999999999p-4 : inexact-ok
+= cbrt downward ldbl-96-intel -0x4.189374bc6a7ecp-12L : -0x1.9999999999999212p-4L : inexact-ok
+= cbrt tonearest ldbl-96-intel -0x4.189374bc6a7ecp-12L : -0x1.9999999999999212p-4L : inexact-ok
+= cbrt towardzero ldbl-96-intel -0x4.189374bc6a7ecp-12L : -0x1.999999999999921p-4L : inexact-ok
+= cbrt upward ldbl-96-intel -0x4.189374bc6a7ecp-12L : -0x1.999999999999921p-4L : inexact-ok
+= cbrt downward ldbl-96-m68k -0x4.189374bc6a7ecp-12L : -0x1.9999999999999212p-4L : inexact-ok
+= cbrt tonearest ldbl-96-m68k -0x4.189374bc6a7ecp-12L : -0x1.9999999999999212p-4L : inexact-ok
+= cbrt towardzero ldbl-96-m68k -0x4.189374bc6a7ecp-12L : -0x1.999999999999921p-4L : inexact-ok
+= cbrt upward ldbl-96-m68k -0x4.189374bc6a7ecp-12L : -0x1.999999999999921p-4L : inexact-ok
+= cbrt downward ldbl-128 -0x4.189374bc6a7ecp-12L : -0x1.99999999999992111111111110eep-4L : inexact-ok
+= cbrt tonearest ldbl-128 -0x4.189374bc6a7ecp-12L : -0x1.99999999999992111111111110edp-4L : inexact-ok
+= cbrt towardzero ldbl-128 -0x4.189374bc6a7ecp-12L : -0x1.99999999999992111111111110edp-4L : inexact-ok
+= cbrt upward ldbl-128 -0x4.189374bc6a7ecp-12L : -0x1.99999999999992111111111110edp-4L : inexact-ok
+= cbrt downward ldbl-128ibm -0x4.189374bc6a7ecp-12L : -0x1.99999999999992111111111111p-4L : inexact-ok
+= cbrt tonearest ldbl-128ibm -0x4.189374bc6a7ecp-12L : -0x1.99999999999992111111111111p-4L : inexact-ok
+= cbrt towardzero ldbl-128ibm -0x4.189374bc6a7ecp-12L : -0x1.999999999999921111111111108p-4L : inexact-ok
+= cbrt upward ldbl-128ibm -0x4.189374bc6a7ecp-12L : -0x1.999999999999921111111111108p-4L : inexact-ok
+= cbrt downward dbl-64 -0x4.189374bc6a7fp-12 : -0x1.999999999999ap-4 : inexact-ok
+= cbrt tonearest dbl-64 -0x4.189374bc6a7fp-12 : -0x1.999999999999ap-4 : inexact-ok
+= cbrt towardzero dbl-64 -0x4.189374bc6a7fp-12 : -0x1.9999999999999p-4 : inexact-ok
+= cbrt upward dbl-64 -0x4.189374bc6a7fp-12 : -0x1.9999999999999p-4 : inexact-ok
+= cbrt downward ldbl-96-intel -0x4.189374bc6a7fp-12L : -0x1.9999999999999a68p-4L : inexact-ok
+= cbrt tonearest ldbl-96-intel -0x4.189374bc6a7fp-12L : -0x1.9999999999999a66p-4L : inexact-ok
+= cbrt towardzero ldbl-96-intel -0x4.189374bc6a7fp-12L : -0x1.9999999999999a66p-4L : inexact-ok
+= cbrt upward ldbl-96-intel -0x4.189374bc6a7fp-12L : -0x1.9999999999999a66p-4L : inexact-ok
+= cbrt downward ldbl-96-m68k -0x4.189374bc6a7fp-12L : -0x1.9999999999999a68p-4L : inexact-ok
+= cbrt tonearest ldbl-96-m68k -0x4.189374bc6a7fp-12L : -0x1.9999999999999a66p-4L : inexact-ok
+= cbrt towardzero ldbl-96-m68k -0x4.189374bc6a7fp-12L : -0x1.9999999999999a66p-4L : inexact-ok
+= cbrt upward ldbl-96-m68k -0x4.189374bc6a7fp-12L : -0x1.9999999999999a66p-4L : inexact-ok
+= cbrt downward ldbl-128 -0x4.189374bc6a7fp-12L : -0x1.9999999999999a66666666666666p-4L : inexact-ok
+= cbrt tonearest ldbl-128 -0x4.189374bc6a7fp-12L : -0x1.9999999999999a66666666666666p-4L : inexact-ok
+= cbrt towardzero ldbl-128 -0x4.189374bc6a7fp-12L : -0x1.9999999999999a66666666666665p-4L : inexact-ok
+= cbrt upward ldbl-128 -0x4.189374bc6a7fp-12L : -0x1.9999999999999a66666666666665p-4L : inexact-ok
+= cbrt downward ldbl-128ibm -0x4.189374bc6a7fp-12L : -0x1.9999999999999a6666666666668p-4L : inexact-ok
+= cbrt tonearest ldbl-128ibm -0x4.189374bc6a7fp-12L : -0x1.9999999999999a6666666666668p-4L : inexact-ok
+= cbrt towardzero ldbl-128ibm -0x4.189374bc6a7fp-12L : -0x1.9999999999999a666666666666p-4L : inexact-ok
+= cbrt upward ldbl-128ibm -0x4.189374bc6a7fp-12L : -0x1.9999999999999a666666666666p-4L : inexact-ok
+= cbrt downward ldbl-96-intel -0x4.189374bc6a7ef9d8p-12L : -0x1.999999999999999ap-4L : inexact-ok
+= cbrt tonearest ldbl-96-intel -0x4.189374bc6a7ef9d8p-12L : -0x1.999999999999999ap-4L : inexact-ok
+= cbrt towardzero ldbl-96-intel -0x4.189374bc6a7ef9d8p-12L : -0x1.9999999999999998p-4L : inexact-ok
+= cbrt upward ldbl-96-intel -0x4.189374bc6a7ef9d8p-12L : -0x1.9999999999999998p-4L : inexact-ok
+= cbrt downward ldbl-96-m68k -0x4.189374bc6a7ef9d8p-12L : -0x1.999999999999999ap-4L : inexact-ok
+= cbrt tonearest ldbl-96-m68k -0x4.189374bc6a7ef9d8p-12L : -0x1.999999999999999ap-4L : inexact-ok
+= cbrt towardzero ldbl-96-m68k -0x4.189374bc6a7ef9d8p-12L : -0x1.9999999999999998p-4L : inexact-ok
+= cbrt upward ldbl-96-m68k -0x4.189374bc6a7ef9d8p-12L : -0x1.9999999999999998p-4L : inexact-ok
+= cbrt downward ldbl-128 -0x4.189374bc6a7ef9d8p-12L : -0x1.9999999999999999311111111111p-4L : inexact-ok
+= cbrt tonearest ldbl-128 -0x4.189374bc6a7ef9d8p-12L : -0x1.9999999999999999311111111111p-4L : inexact-ok
+= cbrt towardzero ldbl-128 -0x4.189374bc6a7ef9d8p-12L : -0x1.999999999999999931111111111p-4L : inexact-ok
+= cbrt upward ldbl-128 -0x4.189374bc6a7ef9d8p-12L : -0x1.999999999999999931111111111p-4L : inexact-ok
+= cbrt downward ldbl-128ibm -0x4.189374bc6a7ef9d8p-12L : -0x1.999999999999999931111111118p-4L : inexact-ok
+= cbrt tonearest ldbl-128ibm -0x4.189374bc6a7ef9d8p-12L : -0x1.99999999999999993111111111p-4L : inexact-ok
+= cbrt towardzero ldbl-128ibm -0x4.189374bc6a7ef9d8p-12L : -0x1.99999999999999993111111111p-4L : inexact-ok
+= cbrt upward ldbl-128ibm -0x4.189374bc6a7ef9d8p-12L : -0x1.99999999999999993111111111p-4L : inexact-ok
+= cbrt downward ldbl-96-intel -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999cp-4L : inexact-ok
+= cbrt tonearest ldbl-96-intel -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999ap-4L : inexact-ok
+= cbrt towardzero ldbl-96-intel -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999ap-4L : inexact-ok
+= cbrt upward ldbl-96-intel -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999ap-4L : inexact-ok
+= cbrt downward ldbl-96-m68k -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999cp-4L : inexact-ok
+= cbrt tonearest ldbl-96-m68k -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999ap-4L : inexact-ok
+= cbrt towardzero ldbl-96-m68k -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999ap-4L : inexact-ok
+= cbrt upward ldbl-96-m68k -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999ap-4L : inexact-ok
+= cbrt downward ldbl-128 -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999a3bbbbbbbbbbcp-4L : inexact-ok
+= cbrt tonearest ldbl-128 -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999a3bbbbbbbbbbbp-4L : inexact-ok
+= cbrt towardzero ldbl-128 -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999a3bbbbbbbbbbbp-4L : inexact-ok
+= cbrt upward ldbl-128 -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999a3bbbbbbbbbbbp-4L : inexact-ok
+= cbrt downward ldbl-128ibm -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999a3bbbbbbbbcp-4L : inexact-ok
+= cbrt tonearest ldbl-128ibm -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999a3bbbbbbbbb8p-4L : inexact-ok
+= cbrt towardzero ldbl-128ibm -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999a3bbbbbbbbb8p-4L : inexact-ok
+= cbrt upward ldbl-128ibm -0x4.189374bc6a7ef9ep-12L : -0x1.999999999999999a3bbbbbbbbb8p-4L : inexact-ok
+= cbrt downward ldbl-128 -0x4.189374bc6a7ef9db22d0e5604188p-12L : -0x1.999999999999999999999999999ap-4L : inexact-ok
+= cbrt tonearest ldbl-128 -0x4.189374bc6a7ef9db22d0e5604188p-12L : -0x1.9999999999999999999999999999p-4L : inexact-ok
+= cbrt towardzero ldbl-128 -0x4.189374bc6a7ef9db22d0e5604188p-12L : -0x1.9999999999999999999999999999p-4L : inexact-ok
+= cbrt upward ldbl-128 -0x4.189374bc6a7ef9db22d0e5604188p-12L : -0x1.9999999999999999999999999999p-4L : inexact-ok
+= cbrt downward ldbl-128 -0x4.189374bc6a7ef9db22d0e560418cp-12L : -0x1.999999999999999999999999999ap-4L : inexact-ok
+= cbrt tonearest ldbl-128 -0x4.189374bc6a7ef9db22d0e560418cp-12L : -0x1.999999999999999999999999999ap-4L : inexact-ok
+= cbrt towardzero ldbl-128 -0x4.189374bc6a7ef9db22d0e560418cp-12L : -0x1.9999999999999999999999999999p-4L : inexact-ok
+= cbrt upward ldbl-128 -0x4.189374bc6a7ef9db22d0e560418cp-12L : -0x1.9999999999999999999999999999p-4L : inexact-ok
+= cbrt downward ldbl-128 -0x4.189374bc6a7ef9db22d0e5604p-12L : -0x1.9999999999999999999999999967p-4L : inexact-ok
+= cbrt tonearest ldbl-128 -0x4.189374bc6a7ef9db22d0e5604p-12L : -0x1.9999999999999999999999999966p-4L : inexact-ok
+= cbrt towardzero ldbl-128 -0x4.189374bc6a7ef9db22d0e5604p-12L : -0x1.9999999999999999999999999966p-4L : inexact-ok
+= cbrt upward ldbl-128 -0x4.189374bc6a7ef9db22d0e5604p-12L : -0x1.9999999999999999999999999966p-4L : inexact-ok
+= cbrt downward ldbl-128ibm -0x4.189374bc6a7ef9db22d0e5604p-12L : -0x1.999999999999999999999999998p-4L : inexact-ok
+= cbrt tonearest ldbl-128ibm -0x4.189374bc6a7ef9db22d0e5604p-12L : -0x1.999999999999999999999999998p-4L : inexact-ok
+= cbrt towardzero ldbl-128ibm -0x4.189374bc6a7ef9db22d0e5604p-12L : -0x1.99999999999999999999999999p-4L : inexact-ok
+= cbrt upward ldbl-128ibm -0x4.189374bc6a7ef9db22d0e5604p-12L : -0x1.99999999999999999999999999p-4L : inexact-ok
+= cbrt downward ldbl-128 -0x4.189374bc6a7ef9db22d0e56042p-12L : -0x1.99999999999999999999999999a9p-4L : inexact-ok
+= cbrt tonearest ldbl-128 -0x4.189374bc6a7ef9db22d0e56042p-12L : -0x1.99999999999999999999999999a9p-4L : inexact-ok
+= cbrt towardzero ldbl-128 -0x4.189374bc6a7ef9db22d0e56042p-12L : -0x1.99999999999999999999999999a8p-4L : inexact-ok
+= cbrt upward ldbl-128 -0x4.189374bc6a7ef9db22d0e56042p-12L : -0x1.99999999999999999999999999a8p-4L : inexact-ok
+= cbrt downward ldbl-128ibm -0x4.189374bc6a7ef9db22d0e56042p-12L : -0x1.9999999999999999999999999ap-4L : inexact-ok
+= cbrt tonearest ldbl-128ibm -0x4.189374bc6a7ef9db22d0e56042p-12L : -0x1.999999999999999999999999998p-4L : inexact-ok
+= cbrt towardzero ldbl-128ibm -0x4.189374bc6a7ef9db22d0e56042p-12L : -0x1.999999999999999999999999998p-4L : inexact-ok
+= cbrt upward ldbl-128ibm -0x4.189374bc6a7ef9db22d0e56042p-12L : -0x1.999999999999999999999999998p-4L : inexact-ok
+cbrt 8
+= cbrt downward flt-32 0x8p+0f : 0x2p+0f : inexact-ok
+= cbrt tonearest flt-32 0x8p+0f : 0x2p+0f : inexact-ok
+= cbrt towardzero flt-32 0x8p+0f : 0x2p+0f : inexact-ok
+= cbrt upward flt-32 0x8p+0f : 0x2p+0f : inexact-ok
+= cbrt downward dbl-64 0x8p+0 : 0x2p+0 : inexact-ok
+= cbrt tonearest dbl-64 0x8p+0 : 0x2p+0 : inexact-ok
+= cbrt towardzero dbl-64 0x8p+0 : 0x2p+0 : inexact-ok
+= cbrt upward dbl-64 0x8p+0 : 0x2p+0 : inexact-ok
+= cbrt downward ldbl-96-intel 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt upward ldbl-96-intel 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt downward ldbl-96-m68k 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt upward ldbl-96-m68k 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt downward ldbl-128 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt tonearest ldbl-128 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt towardzero ldbl-128 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt upward ldbl-128 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt downward ldbl-128ibm 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt tonearest ldbl-128ibm 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt towardzero ldbl-128ibm 0x8p+0L : 0x2p+0L : inexact-ok
+= cbrt upward ldbl-128ibm 0x8p+0L : 0x2p+0L : inexact-ok
+cbrt -27.0
+= cbrt downward flt-32 -0x1.bp+4f : -0x3p+0f : inexact-ok
+= cbrt tonearest flt-32 -0x1.bp+4f : -0x3p+0f : inexact-ok
+= cbrt towardzero flt-32 -0x1.bp+4f : -0x3p+0f : inexact-ok
+= cbrt upward flt-32 -0x1.bp+4f : -0x3p+0f : inexact-ok
+= cbrt downward dbl-64 -0x1.bp+4 : -0x3p+0 : inexact-ok
+= cbrt tonearest dbl-64 -0x1.bp+4 : -0x3p+0 : inexact-ok
+= cbrt towardzero dbl-64 -0x1.bp+4 : -0x3p+0 : inexact-ok
+= cbrt upward dbl-64 -0x1.bp+4 : -0x3p+0 : inexact-ok
+= cbrt downward ldbl-96-intel -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt tonearest ldbl-96-intel -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt towardzero ldbl-96-intel -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt upward ldbl-96-intel -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt downward ldbl-96-m68k -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt tonearest ldbl-96-m68k -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt towardzero ldbl-96-m68k -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt upward ldbl-96-m68k -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt downward ldbl-128 -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt tonearest ldbl-128 -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt towardzero ldbl-128 -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt upward ldbl-128 -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt downward ldbl-128ibm -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt tonearest ldbl-128ibm -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt towardzero ldbl-128ibm -0x1.bp+4L : -0x3p+0L : inexact-ok
+= cbrt upward ldbl-128ibm -0x1.bp+4L : -0x3p+0L : inexact-ok
+cbrt 0.9921875
+= cbrt downward flt-32 0xf.ep-4f : 0xf.f54e3p-4f : inexact-ok
+= cbrt tonearest flt-32 0xf.ep-4f : 0xf.f54e3p-4f : inexact-ok
+= cbrt towardzero flt-32 0xf.ep-4f : 0xf.f54e3p-4f : inexact-ok
+= cbrt upward flt-32 0xf.ep-4f : 0xf.f54e4p-4f : inexact-ok
+= cbrt downward dbl-64 0xf.ep-4 : 0xf.f54e30f23e698p-4 : inexact-ok
+= cbrt tonearest dbl-64 0xf.ep-4 : 0xf.f54e30f23e698p-4 : inexact-ok
+= cbrt towardzero dbl-64 0xf.ep-4 : 0xf.f54e30f23e698p-4 : inexact-ok
+= cbrt upward dbl-64 0xf.ep-4 : 0xf.f54e30f23e6ap-4 : inexact-ok
+= cbrt downward ldbl-96-intel 0xf.ep-4L : 0xf.f54e30f23e69be3p-4L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0xf.ep-4L : 0xf.f54e30f23e69be4p-4L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0xf.ep-4L : 0xf.f54e30f23e69be3p-4L : inexact-ok
+= cbrt upward ldbl-96-intel 0xf.ep-4L : 0xf.f54e30f23e69be4p-4L : inexact-ok
+= cbrt downward ldbl-96-m68k 0xf.ep-4L : 0xf.f54e30f23e69be3p-4L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0xf.ep-4L : 0xf.f54e30f23e69be4p-4L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0xf.ep-4L : 0xf.f54e30f23e69be3p-4L : inexact-ok
+= cbrt upward ldbl-96-m68k 0xf.ep-4L : 0xf.f54e30f23e69be4p-4L : inexact-ok
+= cbrt downward ldbl-128 0xf.ep-4L : 0xf.f54e30f23e69be3850ca030dc7a8p-4L : inexact-ok
+= cbrt tonearest ldbl-128 0xf.ep-4L : 0xf.f54e30f23e69be3850ca030dc7bp-4L : inexact-ok
+= cbrt towardzero ldbl-128 0xf.ep-4L : 0xf.f54e30f23e69be3850ca030dc7a8p-4L : inexact-ok
+= cbrt upward ldbl-128 0xf.ep-4L : 0xf.f54e30f23e69be3850ca030dc7bp-4L : inexact-ok
+= cbrt downward ldbl-128ibm 0xf.ep-4L : 0xf.f54e30f23e69be3850ca030dc4p-4L : inexact-ok
+= cbrt tonearest ldbl-128ibm 0xf.ep-4L : 0xf.f54e30f23e69be3850ca030dc8p-4L : inexact-ok
+= cbrt towardzero ldbl-128ibm 0xf.ep-4L : 0xf.f54e30f23e69be3850ca030dc4p-4L : inexact-ok
+= cbrt upward ldbl-128ibm 0xf.ep-4L : 0xf.f54e30f23e69be3850ca030dc8p-4L : inexact-ok
+cbrt 0.75
+= cbrt downward flt-32 0xcp-4f : 0xe.89768p-4f : inexact-ok
+= cbrt tonearest flt-32 0xcp-4f : 0xe.89768p-4f : inexact-ok
+= cbrt towardzero flt-32 0xcp-4f : 0xe.89768p-4f : inexact-ok
+= cbrt upward flt-32 0xcp-4f : 0xe.89769p-4f : inexact-ok
+= cbrt downward dbl-64 0xcp-4 : 0xe.89768578d13fp-4 : inexact-ok
+= cbrt tonearest dbl-64 0xcp-4 : 0xe.89768578d13f8p-4 : inexact-ok
+= cbrt towardzero dbl-64 0xcp-4 : 0xe.89768578d13fp-4 : inexact-ok
+= cbrt upward dbl-64 0xcp-4 : 0xe.89768578d13f8p-4 : inexact-ok
+= cbrt downward ldbl-96-intel 0xcp-4L : 0xe.89768578d13f79ep-4L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0xcp-4L : 0xe.89768578d13f79fp-4L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0xcp-4L : 0xe.89768578d13f79ep-4L : inexact-ok
+= cbrt upward ldbl-96-intel 0xcp-4L : 0xe.89768578d13f79fp-4L : inexact-ok
+= cbrt downward ldbl-96-m68k 0xcp-4L : 0xe.89768578d13f79ep-4L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0xcp-4L : 0xe.89768578d13f79fp-4L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0xcp-4L : 0xe.89768578d13f79ep-4L : inexact-ok
+= cbrt upward ldbl-96-m68k 0xcp-4L : 0xe.89768578d13f79fp-4L : inexact-ok
+= cbrt downward ldbl-128 0xcp-4L : 0xe.89768578d13f79ed5d709a616d1p-4L : inexact-ok
+= cbrt tonearest ldbl-128 0xcp-4L : 0xe.89768578d13f79ed5d709a616d18p-4L : inexact-ok
+= cbrt towardzero ldbl-128 0xcp-4L : 0xe.89768578d13f79ed5d709a616d1p-4L : inexact-ok
+= cbrt upward ldbl-128 0xcp-4L : 0xe.89768578d13f79ed5d709a616d18p-4L : inexact-ok
+= cbrt downward ldbl-128ibm 0xcp-4L : 0xe.89768578d13f79ed5d709a616cp-4L : inexact-ok
+= cbrt tonearest ldbl-128ibm 0xcp-4L : 0xe.89768578d13f79ed5d709a616cp-4L : inexact-ok
+= cbrt towardzero ldbl-128ibm 0xcp-4L : 0xe.89768578d13f79ed5d709a616cp-4L : inexact-ok
+= cbrt upward ldbl-128ibm 0xcp-4L : 0xe.89768578d13f79ed5d709a617p-4L : inexact-ok
+cbrt 0x1p16383
+= cbrt downward flt-32 0xf.fffffp+124f : 0x6.597fap+40f : inexact-ok
+= cbrt tonearest flt-32 0xf.fffffp+124f : 0x6.597fa8p+40f : inexact-ok
+= cbrt towardzero flt-32 0xf.fffffp+124f : 0x6.597fap+40f : inexact-ok
+= cbrt upward flt-32 0xf.fffffp+124f : 0x6.597fa8p+40f : inexact-ok
+= cbrt downward dbl-64 0xf.fffffp+124 : 0x6.597fa7318655cp+40 : inexact-ok
+= cbrt tonearest dbl-64 0xf.fffffp+124 : 0x6.597fa7318656p+40 : inexact-ok
+= cbrt towardzero dbl-64 0xf.fffffp+124 : 0x6.597fa7318655cp+40 : inexact-ok
+= cbrt upward dbl-64 0xf.fffffp+124 : 0x6.597fa7318656p+40 : inexact-ok
+= cbrt downward ldbl-96-intel 0xf.fffffp+124L : 0x6.597fa7318655fc4p+40L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0x6.597fa7318655fc48p+40L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0x6.597fa7318655fc4p+40L : inexact-ok
+= cbrt upward ldbl-96-intel 0xf.fffffp+124L : 0x6.597fa7318655fc48p+40L : inexact-ok
+= cbrt downward ldbl-96-m68k 0xf.fffffp+124L : 0x6.597fa7318655fc4p+40L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0x6.597fa7318655fc48p+40L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0x6.597fa7318655fc4p+40L : inexact-ok
+= cbrt upward ldbl-96-m68k 0xf.fffffp+124L : 0x6.597fa7318655fc48p+40L : inexact-ok
+= cbrt downward ldbl-128 0xf.fffffp+124L : 0x6.597fa7318655fc467e27422a246p+40L : inexact-ok
+= cbrt tonearest ldbl-128 0xf.fffffp+124L : 0x6.597fa7318655fc467e27422a246p+40L : inexact-ok
+= cbrt towardzero ldbl-128 0xf.fffffp+124L : 0x6.597fa7318655fc467e27422a246p+40L : inexact-ok
+= cbrt upward ldbl-128 0xf.fffffp+124L : 0x6.597fa7318655fc467e27422a2464p+40L : inexact-ok
+= cbrt downward ldbl-128ibm 0xf.fffffp+124L : 0x6.597fa7318655fc467e27422a24p+40L : inexact-ok
+= cbrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0x6.597fa7318655fc467e27422a24p+40L : inexact-ok
+= cbrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0x6.597fa7318655fc467e27422a24p+40L : inexact-ok
+= cbrt upward ldbl-128ibm 0xf.fffffp+124L : 0x6.597fa7318655fc467e27422a26p+40L : inexact-ok
+= cbrt downward dbl-64 0xf.ffffffffffff8p+1020 : 0x2.85145f31ae514p+340 : inexact-ok
+= cbrt tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x2.85145f31ae516p+340 : inexact-ok
+= cbrt towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x2.85145f31ae514p+340 : inexact-ok
+= cbrt upward dbl-64 0xf.ffffffffffff8p+1020 : 0x2.85145f31ae516p+340 : inexact-ok
+= cbrt downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558cp+340L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558cp+340L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558cp+340L : inexact-ok
+= cbrt upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51559p+340L : inexact-ok
+= cbrt downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558cp+340L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558cp+340L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558cp+340L : inexact-ok
+= cbrt upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51559p+340L : inexact-ok
+= cbrt downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558c45623f054decp+340L : inexact-ok
+= cbrt tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558c45623f054decp+340L : inexact-ok
+= cbrt towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558c45623f054decp+340L : inexact-ok
+= cbrt upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558c45623f054deep+340L : inexact-ok
+= cbrt downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558c45623f054dp+340L : inexact-ok
+= cbrt tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558c45623f054ep+340L : inexact-ok
+= cbrt towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558c45623f054dp+340L : inexact-ok
+= cbrt upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x2.85145f31ae51558c45623f054ep+340L : inexact-ok
+= cbrt downward ldbl-96-intel 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt upward ldbl-96-intel 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt downward ldbl-96-m68k 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt upward ldbl-96-m68k 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt downward ldbl-128 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt tonearest ldbl-128 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt towardzero ldbl-128 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt upward ldbl-128 0x8p+16380L : 0x2p+5460L : inexact-ok
+= cbrt downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.85145f31ae5158e8608bd69864eap+340L : inexact-ok
+= cbrt tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.85145f31ae5158e8608bd69864eap+340L : inexact-ok
+= cbrt towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.85145f31ae5158e8608bd69864eap+340L : inexact-ok
+= cbrt upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.85145f31ae5158e8608bd69864ecp+340L : inexact-ok
+= cbrt downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.85145f31ae5158e8608bd69864p+340L : inexact-ok
+= cbrt tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.85145f31ae5158e8608bd69865p+340L : inexact-ok
+= cbrt towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.85145f31ae5158e8608bd69864p+340L : inexact-ok
+= cbrt upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.85145f31ae5158e8608bd69865p+340L : inexact-ok
+cbrt 0x1p-16383
+= cbrt downward flt-32 0x8p-152f : 0x5.0a28b8p-52f : inexact-ok
+= cbrt tonearest flt-32 0x8p-152f : 0x5.0a28cp-52f : inexact-ok
+= cbrt towardzero flt-32 0x8p-152f : 0x5.0a28b8p-52f : inexact-ok
+= cbrt upward flt-32 0x8p-152f : 0x5.0a28cp-52f : inexact-ok
+= cbrt downward dbl-64 0x8p-152 : 0x5.0a28be635ca28p-52 : inexact-ok
+= cbrt tonearest dbl-64 0x8p-152 : 0x5.0a28be635ca2cp-52 : inexact-ok
+= cbrt towardzero dbl-64 0x8p-152 : 0x5.0a28be635ca28p-52 : inexact-ok
+= cbrt upward dbl-64 0x8p-152 : 0x5.0a28be635ca2cp-52 : inexact-ok
+= cbrt downward ldbl-96-intel 0x8p-152L : 0x5.0a28be635ca2b888p-52L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0x8p-152L : 0x5.0a28be635ca2b888p-52L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0x8p-152L : 0x5.0a28be635ca2b888p-52L : inexact-ok
+= cbrt upward ldbl-96-intel 0x8p-152L : 0x5.0a28be635ca2b89p-52L : inexact-ok
+= cbrt downward ldbl-96-m68k 0x8p-152L : 0x5.0a28be635ca2b888p-52L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0x8p-152L : 0x5.0a28be635ca2b888p-52L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0x8p-152L : 0x5.0a28be635ca2b888p-52L : inexact-ok
+= cbrt upward ldbl-96-m68k 0x8p-152L : 0x5.0a28be635ca2b89p-52L : inexact-ok
+= cbrt downward ldbl-128 0x8p-152L : 0x5.0a28be635ca2b888f76adc56f894p-52L : inexact-ok
+= cbrt tonearest ldbl-128 0x8p-152L : 0x5.0a28be635ca2b888f76adc56f894p-52L : inexact-ok
+= cbrt towardzero ldbl-128 0x8p-152L : 0x5.0a28be635ca2b888f76adc56f894p-52L : inexact-ok
+= cbrt upward ldbl-128 0x8p-152L : 0x5.0a28be635ca2b888f76adc56f898p-52L : inexact-ok
+= cbrt downward ldbl-128ibm 0x8p-152L : 0x5.0a28be635ca2b888f76adc56f8p-52L : inexact-ok
+= cbrt tonearest ldbl-128ibm 0x8p-152L : 0x5.0a28be635ca2b888f76adc56f8p-52L : inexact-ok
+= cbrt towardzero ldbl-128ibm 0x8p-152L : 0x5.0a28be635ca2b888f76adc56f8p-52L : inexact-ok
+= cbrt upward ldbl-128ibm 0x8p-152L : 0x5.0a28be635ca2b888f76adc56fap-52L : inexact-ok
+= cbrt downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= cbrt tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= cbrt towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= cbrt upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= cbrt downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= cbrt tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= cbrt towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= cbrt upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= cbrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= cbrt downward dbl-64 0x4p-1076 : 0x4p-360 : inexact-ok
+= cbrt tonearest dbl-64 0x4p-1076 : 0x4p-360 : inexact-ok
+= cbrt towardzero dbl-64 0x4p-1076 : 0x4p-360 : inexact-ok
+= cbrt upward dbl-64 0x4p-1076 : 0x4p-360 : inexact-ok
+= cbrt downward ldbl-96-intel 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt upward ldbl-96-intel 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt downward ldbl-96-m68k 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt upward ldbl-96-m68k 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt downward ldbl-128 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt tonearest ldbl-128 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt towardzero ldbl-128 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt upward ldbl-128 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt downward ldbl-128ibm 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt tonearest ldbl-128ibm 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt towardzero ldbl-128ibm 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt upward ldbl-128ibm 0x4p-1076L : 0x4p-360L : inexact-ok
+= cbrt downward ldbl-96-intel 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt tonearest ldbl-96-intel 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt towardzero ldbl-96-intel 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt upward ldbl-96-intel 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt downward ldbl-96-m68k 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt tonearest ldbl-96-m68k 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt towardzero ldbl-96-m68k 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt upward ldbl-96-m68k 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt downward ldbl-128 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt tonearest ldbl-128 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt towardzero ldbl-128 0x2p-16384L : 0x8p-5464L : inexact-ok
+= cbrt upward ldbl-128 0x2p-16384L : 0x8p-5464L : inexact-ok
+cos 0
+= cos downward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= cos tonearest flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= cos towardzero flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= cos upward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= cos downward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= cos tonearest dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= cos towardzero dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= cos upward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= cos downward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= cos tonearest ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= cos towardzero ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= cos upward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= cos downward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= cos upward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= cos downward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= cos tonearest ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= cos towardzero ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= cos upward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= cos downward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= cos tonearest ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= cos towardzero ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= cos upward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+cos -0
+= cos downward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= cos tonearest flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= cos towardzero flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= cos upward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= cos downward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= cos tonearest dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= cos towardzero dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= cos upward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= cos downward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= cos tonearest ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= cos towardzero ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= cos upward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= cos downward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= cos tonearest ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= cos towardzero ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= cos upward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= cos downward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= cos tonearest ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= cos towardzero ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= cos upward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= cos downward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= cos tonearest ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= cos towardzero ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= cos upward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+cos pi/3
+= cos downward flt-32 0x1.0c1524p+0f : 0x7.fffff8p-4f : inexact-ok
+= cos tonearest flt-32 0x1.0c1524p+0f : 0x7.fffff8p-4f : inexact-ok
+= cos towardzero flt-32 0x1.0c1524p+0f : 0x7.fffff8p-4f : inexact-ok
+= cos upward flt-32 0x1.0c1524p+0f : 0x8p-4f : inexact-ok
+= cos downward dbl-64 0x1.0c1524p+0 : 0x7.fffff939bdd18p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.0c1524p+0 : 0x7.fffff939bdd18p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.0c1524p+0 : 0x7.fffff939bdd18p-4 : inexact-ok
+= cos upward dbl-64 0x1.0c1524p+0 : 0x7.fffff939bdd1cp-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.0c1524p+0L : 0x7.fffff939bdd1803p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.0c1524p+0L : 0x7.fffff939bdd18038p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.0c1524p+0L : 0x7.fffff939bdd1803p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.0c1524p+0L : 0x7.fffff939bdd18038p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.0c1524p+0L : 0x7.fffff939bdd1803p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.0c1524p+0L : 0x7.fffff939bdd18038p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.0c1524p+0L : 0x7.fffff939bdd1803p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.0c1524p+0L : 0x7.fffff939bdd18038p-4L : inexact-ok
+= cos downward ldbl-128 0x1.0c1524p+0L : 0x7.fffff939bdd18035537d20fef1bp-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0c1524p+0L : 0x7.fffff939bdd18035537d20fef1b4p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0c1524p+0L : 0x7.fffff939bdd18035537d20fef1bp-4L : inexact-ok
+= cos upward ldbl-128 0x1.0c1524p+0L : 0x7.fffff939bdd18035537d20fef1b4p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.0c1524p+0L : 0x7.fffff939bdd18035537d20fefp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.0c1524p+0L : 0x7.fffff939bdd18035537d20fef2p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.0c1524p+0L : 0x7.fffff939bdd18035537d20fefp-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.0c1524p+0L : 0x7.fffff939bdd18035537d20fef2p-4L : inexact-ok
+= cos downward flt-32 0x1.0c1522p+0f : 0x8.00001p-4f : inexact-ok
+= cos tonearest flt-32 0x1.0c1522p+0f : 0x8.00001p-4f : inexact-ok
+= cos towardzero flt-32 0x1.0c1522p+0f : 0x8.00001p-4f : inexact-ok
+= cos upward flt-32 0x1.0c1522p+0f : 0x8.00002p-4f : inexact-ok
+= cos downward dbl-64 0x1.0c1522p+0 : 0x8.000014f038b18p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.0c1522p+0 : 0x8.000014f038b18p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.0c1522p+0 : 0x8.000014f038b18p-4 : inexact-ok
+= cos upward dbl-64 0x1.0c1522p+0 : 0x8.000014f038b2p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.0c1522p+0L : 0x8.000014f038b1abp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.0c1522p+0L : 0x8.000014f038b1ab1p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.0c1522p+0L : 0x8.000014f038b1abp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.0c1522p+0L : 0x8.000014f038b1ab1p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.0c1522p+0L : 0x8.000014f038b1abp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.0c1522p+0L : 0x8.000014f038b1ab1p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.0c1522p+0L : 0x8.000014f038b1abp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.0c1522p+0L : 0x8.000014f038b1ab1p-4L : inexact-ok
+= cos downward ldbl-128 0x1.0c1522p+0L : 0x8.000014f038b1ab0e902f68119158p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0c1522p+0L : 0x8.000014f038b1ab0e902f6811916p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0c1522p+0L : 0x8.000014f038b1ab0e902f68119158p-4L : inexact-ok
+= cos upward ldbl-128 0x1.0c1522p+0L : 0x8.000014f038b1ab0e902f6811916p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.0c1522p+0L : 0x8.000014f038b1ab0e902f68119p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.0c1522p+0L : 0x8.000014f038b1ab0e902f68119p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.0c1522p+0L : 0x8.000014f038b1ab0e902f68119p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.0c1522p+0L : 0x8.000014f038b1ab0e902f681194p-4L : inexact-ok
+= cos downward dbl-64 0x1.0c152382d7366p+0 : 0x7.ffffffffffff8p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.0c152382d7366p+0 : 0x7.ffffffffffff8p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.0c152382d7366p+0 : 0x7.ffffffffffff8p-4 : inexact-ok
+= cos upward dbl-64 0x1.0c152382d7366p+0 : 0x7.ffffffffffffcp-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94fp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f8p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94fp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f8p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94fp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f8p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94fp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f8p-4L : inexact-ok
+= cos downward ldbl-128 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f4fdce055d4ed4p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f4fdce055d4ed4p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f4fdce055d4ed4p-4L : inexact-ok
+= cos upward ldbl-128 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f4fdce055d4ed8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f4fdce055d4ep-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f4fdce055d4ep-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f4fdce055d4ep-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.0c152382d7366p+0L : 0x7.ffffffffffff94f4fdce055d5p-4L : inexact-ok
+= cos downward dbl-64 0x1.0c152382d7365p+0 : 0x8p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.0c152382d7365p+0 : 0x8.0000000000008p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.0c152382d7365p+0 : 0x8p-4 : inexact-ok
+= cos upward dbl-64 0x1.0c152382d7365p+0 : 0x8.0000000000008p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.0c152382d7365p+0L : 0x8.00000000000072ap-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.0c152382d7365p+0L : 0x8.00000000000072bp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.0c152382d7365p+0L : 0x8.00000000000072ap-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.0c152382d7365p+0L : 0x8.00000000000072bp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.0c152382d7365p+0L : 0x8.00000000000072ap-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.0c152382d7365p+0L : 0x8.00000000000072bp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.0c152382d7365p+0L : 0x8.00000000000072ap-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.0c152382d7365p+0L : 0x8.00000000000072bp-4L : inexact-ok
+= cos downward ldbl-128 0x1.0c152382d7365p+0L : 0x8.00000000000072a8d510c7c2a248p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0c152382d7365p+0L : 0x8.00000000000072a8d510c7c2a25p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0c152382d7365p+0L : 0x8.00000000000072a8d510c7c2a248p-4L : inexact-ok
+= cos upward ldbl-128 0x1.0c152382d7365p+0L : 0x8.00000000000072a8d510c7c2a25p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.0c152382d7365p+0L : 0x8.00000000000072a8d510c7c2ap-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.0c152382d7365p+0L : 0x8.00000000000072a8d510c7c2a4p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.0c152382d7365p+0L : 0x8.00000000000072a8d510c7c2ap-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.0c152382d7365p+0L : 0x8.00000000000072a8d510c7c2a4p-4L : inexact-ok
+= cos downward ldbl-96-intel 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe8p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe8p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe8p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.0c152382d7365848p+0L : 0x7.fffffffffffffffp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe8p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe8p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe8p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.0c152382d7365848p+0L : 0x7.fffffffffffffffp-4L : inexact-ok
+= cos downward ldbl-128 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe94026ba253198p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe94026ba25319cp-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe94026ba253198p-4L : inexact-ok
+= cos upward ldbl-128 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe94026ba25319cp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe94026ba253p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe94026ba2532p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe94026ba253p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.0c152382d7365848p+0L : 0x7.ffffffffffffffe94026ba2532p-4L : inexact-ok
+= cos downward ldbl-96-intel 0x1.0c152382d7365846p+0L : 0x8p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.0c152382d7365846p+0L : 0x8p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.0c152382d7365846p+0L : 0x8p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.0c152382d7365846p+0L : 0x8.000000000000001p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.0c152382d7365846p+0L : 0x8p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.0c152382d7365846p+0L : 0x8p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.0c152382d7365846p+0L : 0x8p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.0c152382d7365846p+0L : 0x8.000000000000001p-4L : inexact-ok
+= cos downward ldbl-128 0x1.0c152382d7365846p+0L : 0x8.0000000000000004f6a1a27d7e4p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0c152382d7365846p+0L : 0x8.0000000000000004f6a1a27d7e48p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0c152382d7365846p+0L : 0x8.0000000000000004f6a1a27d7e4p-4L : inexact-ok
+= cos upward ldbl-128 0x1.0c152382d7365846p+0L : 0x8.0000000000000004f6a1a27d7e48p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.0c152382d7365846p+0L : 0x8.0000000000000004f6a1a27d7cp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.0c152382d7365846p+0L : 0x8.0000000000000004f6a1a27d8p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.0c152382d7365846p+0L : 0x8.0000000000000004f6a1a27d7cp-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.0c152382d7365846p+0L : 0x8.0000000000000004f6a1a27d8p-4L : inexact-ok
+= cos downward ldbl-128 0x1.0c152382d73658465bb32e0f567bp+0L : 0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0c152382d73658465bb32e0f567bp+0L : 0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0c152382d73658465bb32e0f567bp+0L : 0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= cos upward ldbl-128 0x1.0c152382d73658465bb32e0f567bp+0L : 0x8p-4L : inexact-ok
+= cos downward ldbl-128 0x1.0c152382d73658465bb32e0f567ap+0L : 0x8.0000000000000000000000000008p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0c152382d73658465bb32e0f567ap+0L : 0x8.0000000000000000000000000008p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0c152382d73658465bb32e0f567ap+0L : 0x8.0000000000000000000000000008p-4L : inexact-ok
+= cos upward ldbl-128 0x1.0c152382d73658465bb32e0f567ap+0L : 0x8.000000000000000000000000001p-4L : inexact-ok
+= cos downward ldbl-128 0x1.0c152382d73658465bb32e0f568p+0L : 0x7.ffffffffffffffffffffffffffb8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0c152382d73658465bb32e0f568p+0L : 0x7.ffffffffffffffffffffffffffb8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0c152382d73658465bb32e0f568p+0L : 0x7.ffffffffffffffffffffffffffb8p-4L : inexact-ok
+= cos upward ldbl-128 0x1.0c152382d73658465bb32e0f568p+0L : 0x7.ffffffffffffffffffffffffffbcp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.0c152382d73658465bb32e0f568p+0L : 0x7.fffffffffffffffffffffffffep-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.0c152382d73658465bb32e0f568p+0L : 0x8p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.0c152382d73658465bb32e0f568p+0L : 0x7.fffffffffffffffffffffffffep-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.0c152382d73658465bb32e0f568p+0L : 0x8p-4L : inexact-ok
+= cos downward ldbl-128 0x1.0c152382d73658465bb32e0f56p+0L : 0x8.00000000000000000000000006ap-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0c152382d73658465bb32e0f56p+0L : 0x8.00000000000000000000000006a8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0c152382d73658465bb32e0f56p+0L : 0x8.00000000000000000000000006ap-4L : inexact-ok
+= cos upward ldbl-128 0x1.0c152382d73658465bb32e0f56p+0L : 0x8.00000000000000000000000006a8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.0c152382d73658465bb32e0f56p+0L : 0x8.00000000000000000000000004p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.0c152382d73658465bb32e0f56p+0L : 0x8.00000000000000000000000008p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.0c152382d73658465bb32e0f56p+0L : 0x8.00000000000000000000000004p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.0c152382d73658465bb32e0f56p+0L : 0x8.00000000000000000000000008p-4L : inexact-ok
+cos 2pi/3
+= cos downward flt-32 0x2.182a48p+0f : -0x8.00001p-4f : inexact-ok
+= cos tonearest flt-32 0x2.182a48p+0f : -0x8.00001p-4f : inexact-ok
+= cos towardzero flt-32 0x2.182a48p+0f : -0x8p-4f : inexact-ok
+= cos upward flt-32 0x2.182a48p+0f : -0x8p-4f : inexact-ok
+= cos downward dbl-64 0x2.182a48p+0 : -0x8.00000d8c84578p-4 : inexact-ok
+= cos tonearest dbl-64 0x2.182a48p+0 : -0x8.00000d8c84578p-4 : inexact-ok
+= cos towardzero dbl-64 0x2.182a48p+0 : -0x8.00000d8c8457p-4 : inexact-ok
+= cos upward dbl-64 0x2.182a48p+0 : -0x8.00000d8c8457p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x2.182a48p+0L : -0x8.00000d8c8457431p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2.182a48p+0L : -0x8.00000d8c845743p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2.182a48p+0L : -0x8.00000d8c845743p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2.182a48p+0L : -0x8.00000d8c845743p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2.182a48p+0L : -0x8.00000d8c8457431p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2.182a48p+0L : -0x8.00000d8c845743p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2.182a48p+0L : -0x8.00000d8c845743p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2.182a48p+0L : -0x8.00000d8c845743p-4L : inexact-ok
+= cos downward ldbl-128 0x2.182a48p+0L : -0x8.00000d8c84574300c524d8042748p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.182a48p+0L : -0x8.00000d8c84574300c524d8042748p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.182a48p+0L : -0x8.00000d8c84574300c524d804274p-4L : inexact-ok
+= cos upward ldbl-128 0x2.182a48p+0L : -0x8.00000d8c84574300c524d804274p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.182a48p+0L : -0x8.00000d8c84574300c524d80428p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.182a48p+0L : -0x8.00000d8c84574300c524d80428p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.182a48p+0L : -0x8.00000d8c84574300c524d80424p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.182a48p+0L : -0x8.00000d8c84574300c524d80424p-4L : inexact-ok
+= cos downward flt-32 0x2.182a44p+0f : -0x7.ffffd8p-4f : inexact-ok
+= cos tonearest flt-32 0x2.182a44p+0f : -0x7.ffffd8p-4f : inexact-ok
+= cos towardzero flt-32 0x2.182a44p+0f : -0x7.ffffdp-4f : inexact-ok
+= cos upward flt-32 0x2.182a44p+0f : -0x7.ffffdp-4f : inexact-ok
+= cos downward dbl-64 0x2.182a44p+0 : -0x7.ffffd61f8e66p-4 : inexact-ok
+= cos tonearest dbl-64 0x2.182a44p+0 : -0x7.ffffd61f8e65cp-4 : inexact-ok
+= cos towardzero dbl-64 0x2.182a44p+0 : -0x7.ffffd61f8e65cp-4 : inexact-ok
+= cos upward dbl-64 0x2.182a44p+0 : -0x7.ffffd61f8e65cp-4 : inexact-ok
+= cos downward ldbl-96-intel 0x2.182a44p+0L : -0x7.ffffd61f8e65dcap-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2.182a44p+0L : -0x7.ffffd61f8e65dc98p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2.182a44p+0L : -0x7.ffffd61f8e65dc98p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2.182a44p+0L : -0x7.ffffd61f8e65dc98p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2.182a44p+0L : -0x7.ffffd61f8e65dcap-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2.182a44p+0L : -0x7.ffffd61f8e65dc98p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2.182a44p+0L : -0x7.ffffd61f8e65dc98p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2.182a44p+0L : -0x7.ffffd61f8e65dc98p-4L : inexact-ok
+= cos downward ldbl-128 0x2.182a44p+0L : -0x7.ffffd61f8e65dc9a1c1408dd99bp-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.182a44p+0L : -0x7.ffffd61f8e65dc9a1c1408dd99bp-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.182a44p+0L : -0x7.ffffd61f8e65dc9a1c1408dd99acp-4L : inexact-ok
+= cos upward ldbl-128 0x2.182a44p+0L : -0x7.ffffd61f8e65dc9a1c1408dd99acp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.182a44p+0L : -0x7.ffffd61f8e65dc9a1c1408dd9ap-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.182a44p+0L : -0x7.ffffd61f8e65dc9a1c1408dd9ap-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.182a44p+0L : -0x7.ffffd61f8e65dc9a1c1408dd98p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.182a44p+0L : -0x7.ffffd61f8e65dc9a1c1408dd98p-4L : inexact-ok
+= cos downward dbl-64 0x2.182a4705ae6ccp+0 : -0x8.000000000001p-4 : inexact-ok
+= cos tonearest dbl-64 0x2.182a4705ae6ccp+0 : -0x8.000000000001p-4 : inexact-ok
+= cos towardzero dbl-64 0x2.182a4705ae6ccp+0 : -0x8.0000000000008p-4 : inexact-ok
+= cos upward dbl-64 0x2.182a4705ae6ccp+0 : -0x8.0000000000008p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x2.182a4705ae6ccp+0L : -0x8.000000000000d62p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2.182a4705ae6ccp+0L : -0x8.000000000000d61p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2.182a4705ae6ccp+0L : -0x8.000000000000d61p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2.182a4705ae6ccp+0L : -0x8.000000000000d61p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2.182a4705ae6ccp+0L : -0x8.000000000000d62p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2.182a4705ae6ccp+0L : -0x8.000000000000d61p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2.182a4705ae6ccp+0L : -0x8.000000000000d61p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2.182a4705ae6ccp+0L : -0x8.000000000000d61p-4L : inexact-ok
+= cos downward ldbl-128 0x2.182a4705ae6ccp+0L : -0x8.000000000000d6160463f5455ccp-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.182a4705ae6ccp+0L : -0x8.000000000000d6160463f5455cb8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.182a4705ae6ccp+0L : -0x8.000000000000d6160463f5455cb8p-4L : inexact-ok
+= cos upward ldbl-128 0x2.182a4705ae6ccp+0L : -0x8.000000000000d6160463f5455cb8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.182a4705ae6ccp+0L : -0x8.000000000000d6160463f5456p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.182a4705ae6ccp+0L : -0x8.000000000000d6160463f5455cp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.182a4705ae6ccp+0L : -0x8.000000000000d6160463f5455cp-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.182a4705ae6ccp+0L : -0x8.000000000000d6160463f5455cp-4L : inexact-ok
+= cos downward dbl-64 0x2.182a4705ae6cap+0 : -0x7.ffffffffffff4p-4 : inexact-ok
+= cos tonearest dbl-64 0x2.182a4705ae6cap+0 : -0x7.ffffffffffffp-4 : inexact-ok
+= cos towardzero dbl-64 0x2.182a4705ae6cap+0 : -0x7.ffffffffffffp-4 : inexact-ok
+= cos upward dbl-64 0x2.182a4705ae6cap+0 : -0x7.ffffffffffffp-4 : inexact-ok
+= cos downward ldbl-96-intel 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1abp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1abp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aa8p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aa8p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1abp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1abp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aa8p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aa8p-4L : inexact-ok
+= cos downward ldbl-128 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aae55de707ab4f4p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aae55de707ab4f4p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aae55de707ab4fp-4L : inexact-ok
+= cos upward ldbl-128 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aae55de707ab4fp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aae55de707ab6p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aae55de707ab4p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aae55de707ab4p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.182a4705ae6cap+0L : -0x7.ffffffffffff1aae55de707ab4p-4L : inexact-ok
+= cos downward ldbl-96-intel 0x2.182a4705ae6cb09p+0L : -0x8.000000000000003p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2.182a4705ae6cb09p+0L : -0x8.000000000000003p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2.182a4705ae6cb09p+0L : -0x8.000000000000003p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2.182a4705ae6cb09p+0L : -0x8.000000000000003p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002p-4L : inexact-ok
+= cos downward ldbl-128 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002d7fb28bb59cdp-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002d7fb28bb59cc8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002d7fb28bb59cc8p-4L : inexact-ok
+= cos upward ldbl-128 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002d7fb28bb59cc8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002d7fb28bb5ap-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002d7fb28bb59cp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002d7fb28bb59cp-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.182a4705ae6cb09p+0L : -0x8.000000000000002d7fb28bb59cp-4L : inexact-ok
+= cos downward ldbl-96-intel 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff8p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff8p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffffp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffffp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff8p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff8p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffffp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffffp-4L : inexact-ok
+= cos downward ldbl-128 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff612bcbb050378p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff612bcbb050374p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff612bcbb050374p-4L : inexact-ok
+= cos upward ldbl-128 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff612bcbb050374p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff612bcbb0504p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff612bcbb0504p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff612bcbb0502p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.182a4705ae6cb08cp+0L : -0x7.fffffffffffffff612bcbb0502p-4L : inexact-ok
+= cos downward ldbl-128 0x2.182a4705ae6cb08cb7665c1eacf6p+0L : -0x8.0000000000000000000000000008p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.182a4705ae6cb08cb7665c1eacf6p+0L : -0x8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.182a4705ae6cb08cb7665c1eacf6p+0L : -0x8p-4L : inexact-ok
+= cos upward ldbl-128 0x2.182a4705ae6cb08cb7665c1eacf6p+0L : -0x8p-4L : inexact-ok
+= cos downward ldbl-128 0x2.182a4705ae6cb08cb7665c1eacf4p+0L : -0x7.ffffffffffffffffffffffffffecp-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.182a4705ae6cb08cb7665c1eacf4p+0L : -0x7.ffffffffffffffffffffffffffe8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.182a4705ae6cb08cb7665c1eacf4p+0L : -0x7.ffffffffffffffffffffffffffe8p-4L : inexact-ok
+= cos upward ldbl-128 0x2.182a4705ae6cb08cb7665c1eacf4p+0L : -0x7.ffffffffffffffffffffffffffe8p-4L : inexact-ok
+= cos downward ldbl-128 0x2.182a4705ae6cb08cb7665c1eadp+0L : -0x8.000000000000000000000000009p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.182a4705ae6cb08cb7665c1eadp+0L : -0x8.000000000000000000000000009p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.182a4705ae6cb08cb7665c1eadp+0L : -0x8.0000000000000000000000000088p-4L : inexact-ok
+= cos upward ldbl-128 0x2.182a4705ae6cb08cb7665c1eadp+0L : -0x8.0000000000000000000000000088p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.182a4705ae6cb08cb7665c1eadp+0L : -0x8.00000000000000000000000004p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.182a4705ae6cb08cb7665c1eadp+0L : -0x8p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.182a4705ae6cb08cb7665c1eadp+0L : -0x8p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.182a4705ae6cb08cb7665c1eadp+0L : -0x8p-4L : inexact-ok
+= cos downward ldbl-128 0x2.182a4705ae6cb08cb7665c1eacp+0L : -0x7.fffffffffffffffffffffffff2b4p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.182a4705ae6cb08cb7665c1eacp+0L : -0x7.fffffffffffffffffffffffff2b4p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.182a4705ae6cb08cb7665c1eacp+0L : -0x7.fffffffffffffffffffffffff2bp-4L : inexact-ok
+= cos upward ldbl-128 0x2.182a4705ae6cb08cb7665c1eacp+0L : -0x7.fffffffffffffffffffffffff2bp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.182a4705ae6cb08cb7665c1eacp+0L : -0x7.fffffffffffffffffffffffff4p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.182a4705ae6cb08cb7665c1eacp+0L : -0x7.fffffffffffffffffffffffff2p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.182a4705ae6cb08cb7665c1eacp+0L : -0x7.fffffffffffffffffffffffff2p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.182a4705ae6cb08cb7665c1eacp+0L : -0x7.fffffffffffffffffffffffff2p-4L : inexact-ok
+cos pi/2
+= cos downward flt-32 0x1.921fb6p+0f : -0xb.bbd2fp-28f : inexact-ok
+= cos tonearest flt-32 0x1.921fb6p+0f : -0xb.bbd2ep-28f : inexact-ok
+= cos towardzero flt-32 0x1.921fb6p+0f : -0xb.bbd2ep-28f : inexact-ok
+= cos upward flt-32 0x1.921fb6p+0f : -0xb.bbd2ep-28f : inexact-ok
+= cos downward dbl-64 0x1.921fb6p+0 : -0xb.bbd2e7b967668p-28 : inexact-ok
+= cos tonearest dbl-64 0x1.921fb6p+0 : -0xb.bbd2e7b96766p-28 : inexact-ok
+= cos towardzero dbl-64 0x1.921fb6p+0 : -0xb.bbd2e7b96766p-28 : inexact-ok
+= cos upward dbl-64 0x1.921fb6p+0 : -0xb.bbd2e7b96766p-28 : inexact-ok
+= cos downward ldbl-96-intel 0x1.921fb6p+0L : -0xb.bbd2e7b96766267p-28L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.921fb6p+0L : -0xb.bbd2e7b96766267p-28L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.921fb6p+0L : -0xb.bbd2e7b96766266p-28L : inexact-ok
+= cos upward ldbl-96-intel 0x1.921fb6p+0L : -0xb.bbd2e7b96766266p-28L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.921fb6p+0L : -0xb.bbd2e7b96766267p-28L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.921fb6p+0L : -0xb.bbd2e7b96766267p-28L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.921fb6p+0L : -0xb.bbd2e7b96766266p-28L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.921fb6p+0L : -0xb.bbd2e7b96766266p-28L : inexact-ok
+= cos downward ldbl-128 0x1.921fb6p+0L : -0xb.bbd2e7b96766266f1d18f3ead018p-28L : inexact-ok
+= cos tonearest ldbl-128 0x1.921fb6p+0L : -0xb.bbd2e7b96766266f1d18f3ead01p-28L : inexact-ok
+= cos towardzero ldbl-128 0x1.921fb6p+0L : -0xb.bbd2e7b96766266f1d18f3ead01p-28L : inexact-ok
+= cos upward ldbl-128 0x1.921fb6p+0L : -0xb.bbd2e7b96766266f1d18f3ead01p-28L : inexact-ok
+= cos downward ldbl-128ibm 0x1.921fb6p+0L : -0xb.bbd2e7b96766266f1d18f3ead4p-28L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.921fb6p+0L : -0xb.bbd2e7b96766266f1d18f3eadp-28L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.921fb6p+0L : -0xb.bbd2e7b96766266f1d18f3eadp-28L : inexact-ok
+= cos upward ldbl-128ibm 0x1.921fb6p+0L : -0xb.bbd2e7b96766266f1d18f3eadp-28L : inexact-ok
+= cos downward flt-32 0x1.921fb4p+0f : 0x1.4442dp-24f : inexact-ok
+= cos tonearest flt-32 0x1.921fb4p+0f : 0x1.4442d2p-24f : inexact-ok
+= cos towardzero flt-32 0x1.921fb4p+0f : 0x1.4442dp-24f : inexact-ok
+= cos upward flt-32 0x1.921fb4p+0f : 0x1.4442d2p-24f : inexact-ok
+= cos downward dbl-64 0x1.921fb4p+0 : 0x1.4442d18469893p-24 : inexact-ok
+= cos tonearest dbl-64 0x1.921fb4p+0 : 0x1.4442d18469893p-24 : inexact-ok
+= cos towardzero dbl-64 0x1.921fb4p+0 : 0x1.4442d18469893p-24 : inexact-ok
+= cos upward dbl-64 0x1.921fb4p+0 : 0x1.4442d18469894p-24 : inexact-ok
+= cos downward ldbl-96-intel 0x1.921fb4p+0L : 0x1.4442d1846989361p-24L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.921fb4p+0L : 0x1.4442d1846989361p-24L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.921fb4p+0L : 0x1.4442d1846989361p-24L : inexact-ok
+= cos upward ldbl-96-intel 0x1.921fb4p+0L : 0x1.4442d18469893612p-24L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.921fb4p+0L : 0x1.4442d1846989361p-24L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.921fb4p+0L : 0x1.4442d1846989361p-24L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.921fb4p+0L : 0x1.4442d1846989361p-24L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.921fb4p+0L : 0x1.4442d18469893612p-24L : inexact-ok
+= cos downward ldbl-128 0x1.921fb4p+0L : 0x1.4442d18469893610281a0f9b0e8dp-24L : inexact-ok
+= cos tonearest ldbl-128 0x1.921fb4p+0L : 0x1.4442d18469893610281a0f9b0e8dp-24L : inexact-ok
+= cos towardzero ldbl-128 0x1.921fb4p+0L : 0x1.4442d18469893610281a0f9b0e8dp-24L : inexact-ok
+= cos upward ldbl-128 0x1.921fb4p+0L : 0x1.4442d18469893610281a0f9b0e8ep-24L : inexact-ok
+= cos downward ldbl-128ibm 0x1.921fb4p+0L : 0x1.4442d18469893610281a0f9b0e8p-24L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.921fb4p+0L : 0x1.4442d18469893610281a0f9b0e8p-24L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.921fb4p+0L : 0x1.4442d18469893610281a0f9b0e8p-24L : inexact-ok
+= cos upward ldbl-128ibm 0x1.921fb4p+0L : 0x1.4442d18469893610281a0f9b0fp-24L : inexact-ok
+= cos downward dbl-64 0x1.921fb54442d19p+0 : -0xb.9676733ae8fe8p-56 : inexact-ok
+= cos tonearest dbl-64 0x1.921fb54442d19p+0 : -0xb.9676733ae8fe8p-56 : inexact-ok
+= cos towardzero dbl-64 0x1.921fb54442d19p+0 : -0xb.9676733ae8fep-56 : inexact-ok
+= cos upward dbl-64 0x1.921fb54442d19p+0 : -0xb.9676733ae8fep-56 : inexact-ok
+= cos downward ldbl-96-intel 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47dp-56L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47cp-56L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47cp-56L : inexact-ok
+= cos upward ldbl-96-intel 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47cp-56L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47dp-56L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47cp-56L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47cp-56L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47cp-56L : inexact-ok
+= cos downward ldbl-128 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47c65dadfb63ede8p-56L : inexact-ok
+= cos tonearest ldbl-128 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47c65dadfb63ede8p-56L : inexact-ok
+= cos towardzero ldbl-128 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47c65dadfb63edep-56L : inexact-ok
+= cos upward ldbl-128 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47c65dadfb63edep-56L : inexact-ok
+= cos downward ldbl-128ibm 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47c65dadfb63fp-56L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47c65dadfb63ecp-56L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47c65dadfb63ecp-56L : inexact-ok
+= cos upward ldbl-128ibm 0x1.921fb54442d19p+0L : -0xb.9676733ae8fe47c65dadfb63ecp-56L : inexact-ok
+= cos downward dbl-64 0x1.921fb54442d18p+0 : 0x4.69898cc517018p-56 : inexact-ok
+= cos tonearest dbl-64 0x1.921fb54442d18p+0 : 0x4.69898cc51701cp-56 : inexact-ok
+= cos towardzero dbl-64 0x1.921fb54442d18p+0 : 0x4.69898cc517018p-56 : inexact-ok
+= cos upward dbl-64 0x1.921fb54442d18p+0 : 0x4.69898cc51701cp-56 : inexact-ok
+= cos downward ldbl-96-intel 0x1.921fb54442d18p+0L : 0x4.69898cc51701b838p-56L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.921fb54442d18p+0L : 0x4.69898cc51701b838p-56L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.921fb54442d18p+0L : 0x4.69898cc51701b838p-56L : inexact-ok
+= cos upward ldbl-96-intel 0x1.921fb54442d18p+0L : 0x4.69898cc51701b84p-56L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.921fb54442d18p+0L : 0x4.69898cc51701b838p-56L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.921fb54442d18p+0L : 0x4.69898cc51701b838p-56L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.921fb54442d18p+0L : 0x4.69898cc51701b838p-56L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.921fb54442d18p+0L : 0x4.69898cc51701b84p-56L : inexact-ok
+= cos downward ldbl-128 0x1.921fb54442d18p+0L : 0x4.69898cc51701b839a252049c1104p-56L : inexact-ok
+= cos tonearest ldbl-128 0x1.921fb54442d18p+0L : 0x4.69898cc51701b839a252049c1108p-56L : inexact-ok
+= cos towardzero ldbl-128 0x1.921fb54442d18p+0L : 0x4.69898cc51701b839a252049c1104p-56L : inexact-ok
+= cos upward ldbl-128 0x1.921fb54442d18p+0L : 0x4.69898cc51701b839a252049c1108p-56L : inexact-ok
+= cos downward ldbl-128ibm 0x1.921fb54442d18p+0L : 0x4.69898cc51701b839a252049c1p-56L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.921fb54442d18p+0L : 0x4.69898cc51701b839a252049c12p-56L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.921fb54442d18p+0L : 0x4.69898cc51701b839a252049c1p-56L : inexact-ok
+= cos upward ldbl-128ibm 0x1.921fb54442d18p+0L : 0x4.69898cc51701b839a252049c12p-56L : inexact-ok
+= cos downward ldbl-96-intel 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65ep-68L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= cos upward ldbl-96-intel 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65ep-68L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= cos downward ldbl-128 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65dadfb63eeeb308p-68L : inexact-ok
+= cos tonearest ldbl-128 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65dadfb63eeeb304p-68L : inexact-ok
+= cos towardzero ldbl-128 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65dadfb63eeeb304p-68L : inexact-ok
+= cos upward ldbl-128 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65dadfb63eeeb304p-68L : inexact-ok
+= cos downward ldbl-128ibm 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65dadfb63eeeb4p-68L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65dadfb63eeeb4p-68L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65dadfb63eeeb2p-68L : inexact-ok
+= cos upward ldbl-128ibm 0x1.921fb54442d1846ap+0L : -0x7.6733ae8fe47c65dadfb63eeeb2p-68L : inexact-ok
+= cos downward ldbl-96-intel 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a2p-64L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a2p-64L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a2p-64L : inexact-ok
+= cos upward ldbl-96-intel 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a4p-64L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a2p-64L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a2p-64L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a2p-64L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a4p-64L : inexact-ok
+= cos downward ldbl-128 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a252049c1114cfp-64L : inexact-ok
+= cos tonearest ldbl-128 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a252049c1114dp-64L : inexact-ok
+= cos towardzero ldbl-128 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a252049c1114cfp-64L : inexact-ok
+= cos upward ldbl-128 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a252049c1114dp-64L : inexact-ok
+= cos downward ldbl-128ibm 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a252049c11148p-64L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a252049c1115p-64L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a252049c11148p-64L : inexact-ok
+= cos upward ldbl-128ibm 0x1.921fb54442d18468p+0L : 0x1.898cc51701b839a252049c1115p-64L : inexact-ok
+= cos downward ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : -0xc.65dadfb63eeeb306717fbe882b38p-116L : inexact-ok
+= cos tonearest ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : -0xc.65dadfb63eeeb306717fbe882b38p-116L : inexact-ok
+= cos towardzero ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : -0xc.65dadfb63eeeb306717fbe882b3p-116L : inexact-ok
+= cos upward ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : -0xc.65dadfb63eeeb306717fbe882b3p-116L : inexact-ok
+= cos downward ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0x3.9a252049c1114cf98e804177d4c6p-116L : inexact-ok
+= cos tonearest ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0x3.9a252049c1114cf98e804177d4c8p-116L : inexact-ok
+= cos towardzero ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0x3.9a252049c1114cf98e804177d4c6p-116L : inexact-ok
+= cos upward ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0x3.9a252049c1114cf98e804177d4c8p-116L : inexact-ok
+= cos downward ldbl-128 0x1.921fb54442d18469898cc51702p+0L : -0x4.7c65dadfb63eeeb306717fbe882cp-108L : inexact-ok
+= cos tonearest ldbl-128 0x1.921fb54442d18469898cc51702p+0L : -0x4.7c65dadfb63eeeb306717fbe882cp-108L : inexact-ok
+= cos towardzero ldbl-128 0x1.921fb54442d18469898cc51702p+0L : -0x4.7c65dadfb63eeeb306717fbe8828p-108L : inexact-ok
+= cos upward ldbl-128 0x1.921fb54442d18469898cc51702p+0L : -0x4.7c65dadfb63eeeb306717fbe8828p-108L : inexact-ok
+= cos downward ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : -0x4.7c65dadfb63eeeb306717fbe8ap-108L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : -0x4.7c65dadfb63eeeb306717fbe88p-108L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : -0x4.7c65dadfb63eeeb306717fbe88p-108L : inexact-ok
+= cos upward ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : -0x4.7c65dadfb63eeeb306717fbe88p-108L : inexact-ok
+= cos downward ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0x3.839a252049c1114cf98e804177d4p-108L : inexact-ok
+= cos tonearest ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0x3.839a252049c1114cf98e804177d4p-108L : inexact-ok
+= cos towardzero ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0x3.839a252049c1114cf98e804177d4p-108L : inexact-ok
+= cos upward ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0x3.839a252049c1114cf98e804177d6p-108L : inexact-ok
+= cos downward ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0x3.839a252049c1114cf98e804177p-108L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0x3.839a252049c1114cf98e804178p-108L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0x3.839a252049c1114cf98e804177p-108L : inexact-ok
+= cos upward ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0x3.839a252049c1114cf98e804178p-108L : inexact-ok
+cos 0.75
+= cos downward flt-32 0xcp-4f : 0xb.b4ff6p-4f : inexact-ok
+= cos tonearest flt-32 0xcp-4f : 0xb.b4ff6p-4f : inexact-ok
+= cos towardzero flt-32 0xcp-4f : 0xb.b4ff6p-4f : inexact-ok
+= cos upward flt-32 0xcp-4f : 0xb.b4ff7p-4f : inexact-ok
+= cos downward dbl-64 0xcp-4 : 0xb.b4ff632a908fp-4 : inexact-ok
+= cos tonearest dbl-64 0xcp-4 : 0xb.b4ff632a908f8p-4 : inexact-ok
+= cos towardzero dbl-64 0xcp-4 : 0xb.b4ff632a908fp-4 : inexact-ok
+= cos upward dbl-64 0xcp-4 : 0xb.b4ff632a908f8p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xcp-4L : 0xb.b4ff632a908f73ep-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xcp-4L : 0xb.b4ff632a908f73fp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xcp-4L : 0xb.b4ff632a908f73ep-4L : inexact-ok
+= cos upward ldbl-96-intel 0xcp-4L : 0xb.b4ff632a908f73fp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xcp-4L : 0xb.b4ff632a908f73ep-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xcp-4L : 0xb.b4ff632a908f73fp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xcp-4L : 0xb.b4ff632a908f73ep-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xcp-4L : 0xb.b4ff632a908f73fp-4L : inexact-ok
+= cos downward ldbl-128 0xcp-4L : 0xb.b4ff632a908f73ec151839cb9d98p-4L : inexact-ok
+= cos tonearest ldbl-128 0xcp-4L : 0xb.b4ff632a908f73ec151839cb9d98p-4L : inexact-ok
+= cos towardzero ldbl-128 0xcp-4L : 0xb.b4ff632a908f73ec151839cb9d98p-4L : inexact-ok
+= cos upward ldbl-128 0xcp-4L : 0xb.b4ff632a908f73ec151839cb9dap-4L : inexact-ok
+= cos downward ldbl-128ibm 0xcp-4L : 0xb.b4ff632a908f73ec151839cb9cp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xcp-4L : 0xb.b4ff632a908f73ec151839cb9cp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xcp-4L : 0xb.b4ff632a908f73ec151839cb9cp-4L : inexact-ok
+= cos upward ldbl-128ibm 0xcp-4L : 0xb.b4ff632a908f73ec151839cbap-4L : inexact-ok
+cos 0x1p65
+= cos downward flt-32 0x2p+64f : 0xf.fb701p-4f : inexact-ok
+= cos tonearest flt-32 0x2p+64f : 0xf.fb702p-4f : inexact-ok
+= cos towardzero flt-32 0x2p+64f : 0xf.fb701p-4f : inexact-ok
+= cos upward flt-32 0x2p+64f : 0xf.fb702p-4f : inexact-ok
+= cos downward dbl-64 0x2p+64 : 0xf.fb701e22987f8p-4 : inexact-ok
+= cos tonearest dbl-64 0x2p+64 : 0xf.fb701e22987f8p-4 : inexact-ok
+= cos towardzero dbl-64 0x2p+64 : 0xf.fb701e22987f8p-4 : inexact-ok
+= cos upward dbl-64 0x2p+64 : 0xf.fb701e22988p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x2p+64L : 0xf.fb701e22987fbe6p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2p+64L : 0xf.fb701e22987fbe7p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2p+64L : 0xf.fb701e22987fbe6p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2p+64L : 0xf.fb701e22987fbe7p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2p+64L : 0xf.fb701e22987fbe6p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2p+64L : 0xf.fb701e22987fbe7p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2p+64L : 0xf.fb701e22987fbe6p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2p+64L : 0xf.fb701e22987fbe7p-4L : inexact-ok
+= cos downward ldbl-128 0x2p+64L : 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2p+64L : 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2p+64L : 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= cos upward ldbl-128 0x2p+64L : 0xf.fb701e22987fbe68852ee2bc8978p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2p+64L : 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2p+64L : 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2p+64L : 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2p+64L : 0xf.fb701e22987fbe68852ee2bc8cp-4L : inexact-ok
+cos -0x1p65
+= cos downward flt-32 -0x2p+64f : 0xf.fb701p-4f : inexact-ok
+= cos tonearest flt-32 -0x2p+64f : 0xf.fb702p-4f : inexact-ok
+= cos towardzero flt-32 -0x2p+64f : 0xf.fb701p-4f : inexact-ok
+= cos upward flt-32 -0x2p+64f : 0xf.fb702p-4f : inexact-ok
+= cos downward dbl-64 -0x2p+64 : 0xf.fb701e22987f8p-4 : inexact-ok
+= cos tonearest dbl-64 -0x2p+64 : 0xf.fb701e22987f8p-4 : inexact-ok
+= cos towardzero dbl-64 -0x2p+64 : 0xf.fb701e22987f8p-4 : inexact-ok
+= cos upward dbl-64 -0x2p+64 : 0xf.fb701e22988p-4 : inexact-ok
+= cos downward ldbl-96-intel -0x2p+64L : 0xf.fb701e22987fbe6p-4L : inexact-ok
+= cos tonearest ldbl-96-intel -0x2p+64L : 0xf.fb701e22987fbe7p-4L : inexact-ok
+= cos towardzero ldbl-96-intel -0x2p+64L : 0xf.fb701e22987fbe6p-4L : inexact-ok
+= cos upward ldbl-96-intel -0x2p+64L : 0xf.fb701e22987fbe7p-4L : inexact-ok
+= cos downward ldbl-96-m68k -0x2p+64L : 0xf.fb701e22987fbe6p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k -0x2p+64L : 0xf.fb701e22987fbe7p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k -0x2p+64L : 0xf.fb701e22987fbe6p-4L : inexact-ok
+= cos upward ldbl-96-m68k -0x2p+64L : 0xf.fb701e22987fbe7p-4L : inexact-ok
+= cos downward ldbl-128 -0x2p+64L : 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= cos tonearest ldbl-128 -0x2p+64L : 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= cos towardzero ldbl-128 -0x2p+64L : 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= cos upward ldbl-128 -0x2p+64L : 0xf.fb701e22987fbe68852ee2bc8978p-4L : inexact-ok
+= cos downward ldbl-128ibm -0x2p+64L : 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= cos tonearest ldbl-128ibm -0x2p+64L : 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= cos towardzero ldbl-128ibm -0x2p+64L : 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= cos upward ldbl-128ibm -0x2p+64L : 0xf.fb701e22987fbe68852ee2bc8cp-4L : inexact-ok
+cos 0.80190127184058835
+= cos downward flt-32 0xc.d4967p-4f : 0xb.201e7p-4f : inexact-ok
+= cos tonearest flt-32 0xc.d4967p-4f : 0xb.201e7p-4f : inexact-ok
+= cos towardzero flt-32 0xc.d4967p-4f : 0xb.201e7p-4f : inexact-ok
+= cos upward flt-32 0xc.d4967p-4f : 0xb.201e8p-4f : inexact-ok
+= cos downward dbl-64 0xc.d4967p-4 : 0xb.201e77869a468p-4 : inexact-ok
+= cos tonearest dbl-64 0xc.d4967p-4 : 0xb.201e77869a468p-4 : inexact-ok
+= cos towardzero dbl-64 0xc.d4967p-4 : 0xb.201e77869a468p-4 : inexact-ok
+= cos upward dbl-64 0xc.d4967p-4 : 0xb.201e77869a47p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xc.d4967p-4L : 0xb.201e77869a46ae2p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xc.d4967p-4L : 0xb.201e77869a46ae2p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xc.d4967p-4L : 0xb.201e77869a46ae2p-4L : inexact-ok
+= cos upward ldbl-96-intel 0xc.d4967p-4L : 0xb.201e77869a46ae3p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xc.d4967p-4L : 0xb.201e77869a46ae2p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xc.d4967p-4L : 0xb.201e77869a46ae2p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xc.d4967p-4L : 0xb.201e77869a46ae2p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xc.d4967p-4L : 0xb.201e77869a46ae3p-4L : inexact-ok
+= cos downward ldbl-128 0xc.d4967p-4L : 0xb.201e77869a46ae20ce545c5c67p-4L : inexact-ok
+= cos tonearest ldbl-128 0xc.d4967p-4L : 0xb.201e77869a46ae20ce545c5c67p-4L : inexact-ok
+= cos towardzero ldbl-128 0xc.d4967p-4L : 0xb.201e77869a46ae20ce545c5c67p-4L : inexact-ok
+= cos upward ldbl-128 0xc.d4967p-4L : 0xb.201e77869a46ae20ce545c5c6708p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xc.d4967p-4L : 0xb.201e77869a46ae20ce545c5c64p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xc.d4967p-4L : 0xb.201e77869a46ae20ce545c5c68p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xc.d4967p-4L : 0xb.201e77869a46ae20ce545c5c64p-4L : inexact-ok
+= cos upward ldbl-128ibm 0xc.d4967p-4L : 0xb.201e77869a46ae20ce545c5c68p-4L : inexact-ok
+= cos downward flt-32 0xc.d4966p-4f : 0xb.201e8p-4f : inexact-ok
+= cos tonearest flt-32 0xc.d4966p-4f : 0xb.201e8p-4f : inexact-ok
+= cos towardzero flt-32 0xc.d4966p-4f : 0xb.201e8p-4f : inexact-ok
+= cos upward flt-32 0xc.d4966p-4f : 0xb.201e9p-4f : inexact-ok
+= cos downward dbl-64 0xc.d4966p-4 : 0xb.201e83065041p-4 : inexact-ok
+= cos tonearest dbl-64 0xc.d4966p-4 : 0xb.201e830650418p-4 : inexact-ok
+= cos towardzero dbl-64 0xc.d4966p-4 : 0xb.201e83065041p-4 : inexact-ok
+= cos upward dbl-64 0xc.d4966p-4 : 0xb.201e830650418p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xc.d4966p-4L : 0xb.201e83065041456p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xc.d4966p-4L : 0xb.201e83065041457p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xc.d4966p-4L : 0xb.201e83065041456p-4L : inexact-ok
+= cos upward ldbl-96-intel 0xc.d4966p-4L : 0xb.201e83065041457p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xc.d4966p-4L : 0xb.201e83065041456p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xc.d4966p-4L : 0xb.201e83065041457p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xc.d4966p-4L : 0xb.201e83065041456p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xc.d4966p-4L : 0xb.201e83065041457p-4L : inexact-ok
+= cos downward ldbl-128 0xc.d4966p-4L : 0xb.201e83065041456a084c70f5a12p-4L : inexact-ok
+= cos tonearest ldbl-128 0xc.d4966p-4L : 0xb.201e83065041456a084c70f5a128p-4L : inexact-ok
+= cos towardzero ldbl-128 0xc.d4966p-4L : 0xb.201e83065041456a084c70f5a12p-4L : inexact-ok
+= cos upward ldbl-128 0xc.d4966p-4L : 0xb.201e83065041456a084c70f5a128p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xc.d4966p-4L : 0xb.201e83065041456a084c70f5ap-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xc.d4966p-4L : 0xb.201e83065041456a084c70f5ap-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xc.d4966p-4L : 0xb.201e83065041456a084c70f5ap-4L : inexact-ok
+= cos upward ldbl-128ibm 0xc.d4966p-4L : 0xb.201e83065041456a084c70f5a4p-4L : inexact-ok
+= cos downward dbl-64 0xc.d4966d92d171p-4 : 0xb.201e79450884p-4 : inexact-ok
+= cos tonearest dbl-64 0xc.d4966d92d171p-4 : 0xb.201e794508848p-4 : inexact-ok
+= cos towardzero dbl-64 0xc.d4966d92d171p-4 : 0xb.201e79450884p-4 : inexact-ok
+= cos upward dbl-64 0xc.d4966d92d171p-4 : 0xb.201e794508848p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.201e7945088464p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.201e7945088464p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.201e7945088464p-4L : inexact-ok
+= cos upward ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.201e79450884641p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.201e7945088464p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.201e7945088464p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.201e7945088464p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.201e79450884641p-4L : inexact-ok
+= cos downward ldbl-128 0xc.d4966d92d171p-4L : 0xb.201e794508846402500c44b4f8ep-4L : inexact-ok
+= cos tonearest ldbl-128 0xc.d4966d92d171p-4L : 0xb.201e794508846402500c44b4f8e8p-4L : inexact-ok
+= cos towardzero ldbl-128 0xc.d4966d92d171p-4L : 0xb.201e794508846402500c44b4f8ep-4L : inexact-ok
+= cos upward ldbl-128 0xc.d4966d92d171p-4L : 0xb.201e794508846402500c44b4f8e8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.201e794508846402500c44b4f8p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.201e794508846402500c44b4f8p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.201e794508846402500c44b4f8p-4L : inexact-ok
+= cos upward ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.201e794508846402500c44b4fcp-4L : inexact-ok
+= cos downward dbl-64 0xc.d4966d92d1708p-4 : 0xb.201e794508848p-4 : inexact-ok
+= cos tonearest dbl-64 0xc.d4966d92d1708p-4 : 0xb.201e79450885p-4 : inexact-ok
+= cos towardzero dbl-64 0xc.d4966d92d1708p-4 : 0xb.201e794508848p-4 : inexact-ok
+= cos upward dbl-64 0xc.d4966d92d1708p-4 : 0xb.201e79450885p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.201e79450884cp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.201e79450884cp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.201e79450884cp-4L : inexact-ok
+= cos upward ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.201e79450884c01p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.201e79450884cp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.201e79450884cp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.201e79450884cp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.201e79450884c01p-4L : inexact-ok
+= cos downward ldbl-128 0xc.d4966d92d1708p-4L : 0xb.201e79450884c00000000000c17p-4L : inexact-ok
+= cos tonearest ldbl-128 0xc.d4966d92d1708p-4L : 0xb.201e79450884c00000000000c178p-4L : inexact-ok
+= cos towardzero ldbl-128 0xc.d4966d92d1708p-4L : 0xb.201e79450884c00000000000c17p-4L : inexact-ok
+= cos upward ldbl-128 0xc.d4966d92d1708p-4L : 0xb.201e79450884c00000000000c178p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.201e79450884c00000000000cp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.201e79450884c00000000000cp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.201e79450884c00000000000cp-4L : inexact-ok
+= cos upward ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.201e79450884c00000000000c4p-4L : inexact-ok
+= cos downward ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be2p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1p-4L : inexact-ok
+= cos upward ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be2p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be2p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be2p-4L : inexact-ok
+= cos downward ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1d0c24406973ap-4L : inexact-ok
+= cos tonearest ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1d0c24406973ap-4L : inexact-ok
+= cos towardzero ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1d0c24406973ap-4L : inexact-ok
+= cos upward ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1d0c24406973a8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1d0c2440697p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1d0c24406974p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1d0c2440697p-4L : inexact-ok
+= cos upward ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.201e79450884be1d0c24406974p-4L : inexact-ok
+= cos downward ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.201e79450884be2p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.201e79450884be3p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.201e79450884be2p-4L : inexact-ok
+= cos upward ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.201e79450884be3p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.201e79450884be2p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.201e79450884be3p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.201e79450884be2p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.201e79450884be3p-4L : inexact-ok
+= cos downward ldbl-128 0xc.d4966d92d170829p-4L : 0xb.201e79450884be288bda3ee0dd18p-4L : inexact-ok
+= cos tonearest ldbl-128 0xc.d4966d92d170829p-4L : 0xb.201e79450884be288bda3ee0dd18p-4L : inexact-ok
+= cos towardzero ldbl-128 0xc.d4966d92d170829p-4L : 0xb.201e79450884be288bda3ee0dd18p-4L : inexact-ok
+= cos upward ldbl-128 0xc.d4966d92d170829p-4L : 0xb.201e79450884be288bda3ee0dd2p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.201e79450884be288bda3ee0dcp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.201e79450884be288bda3ee0dcp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.201e79450884be288bda3ee0dcp-4L : inexact-ok
+= cos upward ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.201e79450884be288bda3ee0ep-4L : inexact-ok
+= cos downward ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.201e79450884be22c53e47ed16d8p-4L : inexact-ok
+= cos tonearest ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.201e79450884be22c53e47ed16d8p-4L : inexact-ok
+= cos towardzero ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.201e79450884be22c53e47ed16d8p-4L : inexact-ok
+= cos upward ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.201e79450884be22c53e47ed16ep-4L : inexact-ok
+= cos downward ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.201e79450884be22c53e47ed16ep-4L : inexact-ok
+= cos tonearest ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.201e79450884be22c53e47ed16ep-4L : inexact-ok
+= cos towardzero ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.201e79450884be22c53e47ed16ep-4L : inexact-ok
+= cos upward ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.201e79450884be22c53e47ed16e8p-4L : inexact-ok
+= cos downward ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.201e79450884be22c53e47ed16bp-4L : inexact-ok
+= cos tonearest ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.201e79450884be22c53e47ed16bp-4L : inexact-ok
+= cos towardzero ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.201e79450884be22c53e47ed16bp-4L : inexact-ok
+= cos upward ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.201e79450884be22c53e47ed16b8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.201e79450884be22c53e47ed14p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.201e79450884be22c53e47ed18p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.201e79450884be22c53e47ed14p-4L : inexact-ok
+= cos upward ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.201e79450884be22c53e47ed18p-4L : inexact-ok
+= cos downward ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.201e79450884be22c53e47ed199p-4L : inexact-ok
+= cos tonearest ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.201e79450884be22c53e47ed199p-4L : inexact-ok
+= cos towardzero ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.201e79450884be22c53e47ed199p-4L : inexact-ok
+= cos upward ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.201e79450884be22c53e47ed1998p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.201e79450884be22c53e47ed18p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.201e79450884be22c53e47ed18p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.201e79450884be22c53e47ed18p-4L : inexact-ok
+= cos upward ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.201e79450884be22c53e47ed1cp-4L : inexact-ok
+cos 0x1.442f74p+15
+= cos downward flt-32 0xa.217bap+12f : 0x2.8f3164p-20f : inexact-ok
+= cos tonearest flt-32 0xa.217bap+12f : 0x2.8f3168p-20f : inexact-ok
+= cos towardzero flt-32 0xa.217bap+12f : 0x2.8f3164p-20f : inexact-ok
+= cos upward flt-32 0xa.217bap+12f : 0x2.8f3168p-20f : inexact-ok
+= cos downward dbl-64 0xa.217bap+12 : 0x2.8f31660ce5e42p-20 : inexact-ok
+= cos tonearest dbl-64 0xa.217bap+12 : 0x2.8f31660ce5e42p-20 : inexact-ok
+= cos towardzero dbl-64 0xa.217bap+12 : 0x2.8f31660ce5e42p-20 : inexact-ok
+= cos upward dbl-64 0xa.217bap+12 : 0x2.8f31660ce5e44p-20 : inexact-ok
+= cos downward ldbl-96-intel 0xa.217bap+12L : 0x2.8f31660ce5e42c04p-20L : inexact-ok
+= cos tonearest ldbl-96-intel 0xa.217bap+12L : 0x2.8f31660ce5e42c04p-20L : inexact-ok
+= cos towardzero ldbl-96-intel 0xa.217bap+12L : 0x2.8f31660ce5e42c04p-20L : inexact-ok
+= cos upward ldbl-96-intel 0xa.217bap+12L : 0x2.8f31660ce5e42c08p-20L : inexact-ok
+= cos downward ldbl-96-m68k 0xa.217bap+12L : 0x2.8f31660ce5e42c04p-20L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xa.217bap+12L : 0x2.8f31660ce5e42c04p-20L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xa.217bap+12L : 0x2.8f31660ce5e42c04p-20L : inexact-ok
+= cos upward ldbl-96-m68k 0xa.217bap+12L : 0x2.8f31660ce5e42c08p-20L : inexact-ok
+= cos downward ldbl-128 0xa.217bap+12L : 0x2.8f31660ce5e42c0544355e8e3d04p-20L : inexact-ok
+= cos tonearest ldbl-128 0xa.217bap+12L : 0x2.8f31660ce5e42c0544355e8e3d04p-20L : inexact-ok
+= cos towardzero ldbl-128 0xa.217bap+12L : 0x2.8f31660ce5e42c0544355e8e3d04p-20L : inexact-ok
+= cos upward ldbl-128 0xa.217bap+12L : 0x2.8f31660ce5e42c0544355e8e3d06p-20L : inexact-ok
+= cos downward ldbl-128ibm 0xa.217bap+12L : 0x2.8f31660ce5e42c0544355e8e3dp-20L : inexact-ok
+= cos tonearest ldbl-128ibm 0xa.217bap+12L : 0x2.8f31660ce5e42c0544355e8e3dp-20L : inexact-ok
+= cos towardzero ldbl-128ibm 0xa.217bap+12L : 0x2.8f31660ce5e42c0544355e8e3dp-20L : inexact-ok
+= cos upward ldbl-128ibm 0xa.217bap+12L : 0x2.8f31660ce5e42c0544355e8e3ep-20L : inexact-ok
+cos 1e22
+= cos downward flt-32 0x2.1e19e4p+72f : 0xf.431ddp-4f : inexact-ok
+= cos tonearest flt-32 0x2.1e19e4p+72f : 0xf.431ddp-4f : inexact-ok
+= cos towardzero flt-32 0x2.1e19e4p+72f : 0xf.431ddp-4f : inexact-ok
+= cos upward flt-32 0x2.1e19e4p+72f : 0xf.431dep-4f : inexact-ok
+= cos downward dbl-64 0x2.1e19e4p+72 : 0xf.431dd7a36cf3p-4 : inexact-ok
+= cos tonearest dbl-64 0x2.1e19e4p+72 : 0xf.431dd7a36cf38p-4 : inexact-ok
+= cos towardzero dbl-64 0x2.1e19e4p+72 : 0xf.431dd7a36cf3p-4 : inexact-ok
+= cos upward dbl-64 0x2.1e19e4p+72 : 0xf.431dd7a36cf38p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x2.1e19e4p+72L : 0xf.431dd7a36cf37dep-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2.1e19e4p+72L : 0xf.431dd7a36cf37dep-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2.1e19e4p+72L : 0xf.431dd7a36cf37dep-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2.1e19e4p+72L : 0xf.431dd7a36cf37dfp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2.1e19e4p+72L : 0xf.431dd7a36cf37dep-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2.1e19e4p+72L : 0xf.431dd7a36cf37dep-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2.1e19e4p+72L : 0xf.431dd7a36cf37dep-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2.1e19e4p+72L : 0xf.431dd7a36cf37dfp-4L : inexact-ok
+= cos downward ldbl-128 0x2.1e19e4p+72L : 0xf.431dd7a36cf37de5c74544f6b438p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.1e19e4p+72L : 0xf.431dd7a36cf37de5c74544f6b438p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.1e19e4p+72L : 0xf.431dd7a36cf37de5c74544f6b438p-4L : inexact-ok
+= cos upward ldbl-128 0x2.1e19e4p+72L : 0xf.431dd7a36cf37de5c74544f6b44p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.1e19e4p+72L : 0xf.431dd7a36cf37de5c74544f6b4p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.1e19e4p+72L : 0xf.431dd7a36cf37de5c74544f6b4p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.1e19e4p+72L : 0xf.431dd7a36cf37de5c74544f6b4p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.1e19e4p+72L : 0xf.431dd7a36cf37de5c74544f6b8p-4L : inexact-ok
+= cos downward flt-32 0x2.1e19ep+72f : 0xa.dd6f6p-4f : inexact-ok
+= cos tonearest flt-32 0x2.1e19ep+72f : 0xa.dd6f7p-4f : inexact-ok
+= cos towardzero flt-32 0x2.1e19ep+72f : 0xa.dd6f6p-4f : inexact-ok
+= cos upward flt-32 0x2.1e19ep+72f : 0xa.dd6f7p-4f : inexact-ok
+= cos downward dbl-64 0x2.1e19ep+72 : 0xa.dd6f6bacd206p-4 : inexact-ok
+= cos tonearest dbl-64 0x2.1e19ep+72 : 0xa.dd6f6bacd2068p-4 : inexact-ok
+= cos towardzero dbl-64 0x2.1e19ep+72 : 0xa.dd6f6bacd206p-4 : inexact-ok
+= cos upward dbl-64 0x2.1e19ep+72 : 0xa.dd6f6bacd2068p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x2.1e19ep+72L : 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2.1e19ep+72L : 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2.1e19ep+72L : 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2.1e19ep+72L : 0xa.dd6f6bacd20654dp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2.1e19ep+72L : 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2.1e19ep+72L : 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2.1e19ep+72L : 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2.1e19ep+72L : 0xa.dd6f6bacd20654dp-4L : inexact-ok
+= cos downward ldbl-128 0x2.1e19ep+72L : 0xa.dd6f6bacd20654c1404f52cde16p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.1e19ep+72L : 0xa.dd6f6bacd20654c1404f52cde16p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.1e19ep+72L : 0xa.dd6f6bacd20654c1404f52cde16p-4L : inexact-ok
+= cos upward ldbl-128 0x2.1e19ep+72L : 0xa.dd6f6bacd20654c1404f52cde168p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.1e19ep+72L : 0xa.dd6f6bacd20654c1404f52cdep-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.1e19ep+72L : 0xa.dd6f6bacd20654c1404f52cdep-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.1e19ep+72L : 0xa.dd6f6bacd20654c1404f52cdep-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.1e19ep+72L : 0xa.dd6f6bacd20654c1404f52cde4p-4L : inexact-ok
+= cos downward dbl-64 0x2.1e19e0c9bab24p+72 : 0x8.5f167780e4798p-4 : inexact-ok
+= cos tonearest dbl-64 0x2.1e19e0c9bab24p+72 : 0x8.5f167780e47ap-4 : inexact-ok
+= cos towardzero dbl-64 0x2.1e19e0c9bab24p+72 : 0x8.5f167780e4798p-4 : inexact-ok
+= cos upward dbl-64 0x2.1e19e0c9bab24p+72 : 0x8.5f167780e47ap-4 : inexact-ok
+= cos downward ldbl-96-intel 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9ap-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9ap-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9ap-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9bp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9ap-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9ap-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9ap-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9bp-4L : inexact-ok
+= cos downward ldbl-128 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9a5c86ffce76148p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9a5c86ffce7615p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9a5c86ffce76148p-4L : inexact-ok
+= cos upward ldbl-128 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9a5c86ffce7615p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9a5c86ffce76p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9a5c86ffce76p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9a5c86ffce76p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2.1e19e0c9bab24p+72L : 0x8.5f167780e479c9a5c86ffce764p-4L : inexact-ok
+cos 0x1p1023
+= cos downward flt-32 0xf.fffffp+124f : 0xd.a5f96p-4f : inexact-ok
+= cos tonearest flt-32 0xf.fffffp+124f : 0xd.a5f96p-4f : inexact-ok
+= cos towardzero flt-32 0xf.fffffp+124f : 0xd.a5f96p-4f : inexact-ok
+= cos upward flt-32 0xf.fffffp+124f : 0xd.a5f97p-4f : inexact-ok
+= cos downward dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe68p-4 : inexact-ok
+= cos tonearest dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe7p-4 : inexact-ok
+= cos towardzero dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe68p-4 : inexact-ok
+= cos upward dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe7p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos upward ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos downward ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= cos tonearest ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= cos towardzero ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= cos upward ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2f8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= cos upward ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+= cos downward dbl-64 0x8p+1020 : -0xd.38cf9361195f8p-4 : inexact-ok
+= cos tonearest dbl-64 0x8p+1020 : -0xd.38cf9361195f8p-4 : inexact-ok
+= cos towardzero dbl-64 0x8p+1020 : -0xd.38cf9361195fp-4 : inexact-ok
+= cos upward dbl-64 0x8p+1020 : -0xd.38cf9361195fp-4 : inexact-ok
+= cos downward ldbl-96-intel 0x8p+1020L : -0xd.38cf9361195f50cp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x8p+1020L : -0xd.38cf9361195f50bp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x8p+1020L : -0xd.38cf9361195f50bp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x8p+1020L : -0xd.38cf9361195f50bp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x8p+1020L : -0xd.38cf9361195f50cp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x8p+1020L : -0xd.38cf9361195f50bp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x8p+1020L : -0xd.38cf9361195f50bp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x8p+1020L : -0xd.38cf9361195f50bp-4L : inexact-ok
+= cos downward ldbl-128 0x8p+1020L : -0xd.38cf9361195f50b10fac29dd9038p-4L : inexact-ok
+= cos tonearest ldbl-128 0x8p+1020L : -0xd.38cf9361195f50b10fac29dd9038p-4L : inexact-ok
+= cos towardzero ldbl-128 0x8p+1020L : -0xd.38cf9361195f50b10fac29dd903p-4L : inexact-ok
+= cos upward ldbl-128 0x8p+1020L : -0xd.38cf9361195f50b10fac29dd903p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x8p+1020L : -0xd.38cf9361195f50b10fac29dd94p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x8p+1020L : -0xd.38cf9361195f50b10fac29dd9p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x8p+1020L : -0xd.38cf9361195f50b10fac29dd9p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x8p+1020L : -0xd.38cf9361195f50b10fac29dd9p-4L : inexact-ok
+cos 0x1p16383
+= cos downward flt-32 0xf.fffffp+124f : 0xd.a5f96p-4f : inexact-ok
+= cos tonearest flt-32 0xf.fffffp+124f : 0xd.a5f96p-4f : inexact-ok
+= cos towardzero flt-32 0xf.fffffp+124f : 0xd.a5f96p-4f : inexact-ok
+= cos upward flt-32 0xf.fffffp+124f : 0xd.a5f97p-4f : inexact-ok
+= cos downward dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe68p-4 : inexact-ok
+= cos tonearest dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe7p-4 : inexact-ok
+= cos towardzero dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe68p-4 : inexact-ok
+= cos upward dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe7p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos upward ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos downward ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= cos tonearest ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= cos towardzero ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= cos upward ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2f8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= cos upward ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+= cos downward dbl-64 0xf.ffffffffffff8p+1020 : -0xf.fff31767d5bbp-4 : inexact-ok
+= cos tonearest dbl-64 0xf.ffffffffffff8p+1020 : -0xf.fff31767d5ba8p-4 : inexact-ok
+= cos towardzero dbl-64 0xf.ffffffffffff8p+1020 : -0xf.fff31767d5ba8p-4 : inexact-ok
+= cos upward dbl-64 0xf.ffffffffffff8p+1020 : -0xf.fff31767d5ba8p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9e1p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9ep-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9ep-4L : inexact-ok
+= cos upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9ep-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9e1p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9ep-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9ep-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9ep-4L : inexact-ok
+= cos downward ldbl-128 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9e038d934070f138p-4L : inexact-ok
+= cos tonearest ldbl-128 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9e038d934070f13p-4L : inexact-ok
+= cos towardzero ldbl-128 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9e038d934070f13p-4L : inexact-ok
+= cos upward ldbl-128 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9e038d934070f13p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9e038d934070f4p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9e038d934070fp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9e038d934070fp-4L : inexact-ok
+= cos upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0xf.fff31767d5ba9e038d934070fp-4L : inexact-ok
+= cos downward ldbl-96-intel 0x8p+16380L : 0xe.bcc2fc82ae39ebfp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x8p+16380L : 0xe.bcc2fc82ae39ecp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x8p+16380L : 0xe.bcc2fc82ae39ebfp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x8p+16380L : 0xe.bcc2fc82ae39ecp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x8p+16380L : 0xe.bcc2fc82ae39ebfp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x8p+16380L : 0xe.bcc2fc82ae39ecp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x8p+16380L : 0xe.bcc2fc82ae39ebfp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x8p+16380L : 0xe.bcc2fc82ae39ecp-4L : inexact-ok
+= cos downward ldbl-128 0x8p+16380L : 0xe.bcc2fc82ae39ebf8da5d687bf358p-4L : inexact-ok
+= cos tonearest ldbl-128 0x8p+16380L : 0xe.bcc2fc82ae39ebf8da5d687bf36p-4L : inexact-ok
+= cos towardzero ldbl-128 0x8p+16380L : 0xe.bcc2fc82ae39ebf8da5d687bf358p-4L : inexact-ok
+= cos upward ldbl-128 0x8p+16380L : 0xe.bcc2fc82ae39ebf8da5d687bf36p-4L : inexact-ok
+= cos downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.b773d971a848e75c230605526978p-4L : inexact-ok
+= cos tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.b773d971a848e75c230605526974p-4L : inexact-ok
+= cos towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.b773d971a848e75c230605526974p-4L : inexact-ok
+= cos upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.b773d971a848e75c230605526974p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.b773d971a848e75c230605526ap-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.b773d971a848e75c230605526ap-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.b773d971a848e75c2306055268p-4L : inexact-ok
+= cos upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.b773d971a848e75c2306055268p-4L : inexact-ok
+cos 0x1p+120
+= cos downward flt-32 0x1p+120f : -0xe.d0669p-4f : inexact-ok
+= cos tonearest flt-32 0x1p+120f : -0xe.d0668p-4f : inexact-ok
+= cos towardzero flt-32 0x1p+120f : -0xe.d0668p-4f : inexact-ok
+= cos upward flt-32 0x1p+120f : -0xe.d0668p-4f : inexact-ok
+= cos downward dbl-64 0x1p+120 : -0xe.d06685b36c67p-4 : inexact-ok
+= cos tonearest dbl-64 0x1p+120 : -0xe.d06685b36c67p-4 : inexact-ok
+= cos towardzero dbl-64 0x1p+120 : -0xe.d06685b36c668p-4 : inexact-ok
+= cos upward dbl-64 0x1p+120 : -0xe.d06685b36c668p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1p+120L : -0xe.d06685b36c66c4dp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1p+120L : -0xe.d06685b36c66c4dp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1p+120L : -0xe.d06685b36c66c4cp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1p+120L : -0xe.d06685b36c66c4cp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1p+120L : -0xe.d06685b36c66c4dp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1p+120L : -0xe.d06685b36c66c4dp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1p+120L : -0xe.d06685b36c66c4cp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1p+120L : -0xe.d06685b36c66c4cp-4L : inexact-ok
+= cos downward ldbl-128 0x1p+120L : -0xe.d06685b36c66c4cf35c11f6519p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1p+120L : -0xe.d06685b36c66c4cf35c11f6518f8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1p+120L : -0xe.d06685b36c66c4cf35c11f6518f8p-4L : inexact-ok
+= cos upward ldbl-128 0x1p+120L : -0xe.d06685b36c66c4cf35c11f6518f8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1p+120L : -0xe.d06685b36c66c4cf35c11f651cp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1p+120L : -0xe.d06685b36c66c4cf35c11f6518p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1p+120L : -0xe.d06685b36c66c4cf35c11f6518p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1p+120L : -0xe.d06685b36c66c4cf35c11f6518p-4L : inexact-ok
+cos 0x1p+127
+= cos downward flt-32 0x8p+124f : 0xc.82b8ep-4f : inexact-ok
+= cos tonearest flt-32 0x8p+124f : 0xc.82b8fp-4f : inexact-ok
+= cos towardzero flt-32 0x8p+124f : 0xc.82b8ep-4f : inexact-ok
+= cos upward flt-32 0x8p+124f : 0xc.82b8fp-4f : inexact-ok
+= cos downward dbl-64 0x8p+124 : 0xc.82b8ec98b5e6p-4 : inexact-ok
+= cos tonearest dbl-64 0x8p+124 : 0xc.82b8ec98b5e6p-4 : inexact-ok
+= cos towardzero dbl-64 0x8p+124 : 0xc.82b8ec98b5e6p-4 : inexact-ok
+= cos upward dbl-64 0x8p+124 : 0xc.82b8ec98b5e68p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x8p+124L : 0xc.82b8ec98b5e62fcp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x8p+124L : 0xc.82b8ec98b5e62fdp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x8p+124L : 0xc.82b8ec98b5e62fcp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x8p+124L : 0xc.82b8ec98b5e62fdp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x8p+124L : 0xc.82b8ec98b5e62fcp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x8p+124L : 0xc.82b8ec98b5e62fdp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x8p+124L : 0xc.82b8ec98b5e62fcp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x8p+124L : 0xc.82b8ec98b5e62fdp-4L : inexact-ok
+= cos downward ldbl-128 0x8p+124L : 0xc.82b8ec98b5e62fcf0b09fd10eb28p-4L : inexact-ok
+= cos tonearest ldbl-128 0x8p+124L : 0xc.82b8ec98b5e62fcf0b09fd10eb3p-4L : inexact-ok
+= cos towardzero ldbl-128 0x8p+124L : 0xc.82b8ec98b5e62fcf0b09fd10eb28p-4L : inexact-ok
+= cos upward ldbl-128 0x8p+124L : 0xc.82b8ec98b5e62fcf0b09fd10eb3p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x8p+124L : 0xc.82b8ec98b5e62fcf0b09fd10e8p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x8p+124L : 0xc.82b8ec98b5e62fcf0b09fd10ecp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x8p+124L : 0xc.82b8ec98b5e62fcf0b09fd10e8p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x8p+124L : 0xc.82b8ec98b5e62fcf0b09fd10ecp-4L : inexact-ok
+cos 0x1.fffff8p+127
+= cos downward flt-32 0xf.ffffcp+124f : 0xf.fb2ap-4f : inexact-ok
+= cos tonearest flt-32 0xf.ffffcp+124f : 0xf.fb2ap-4f : inexact-ok
+= cos towardzero flt-32 0xf.ffffcp+124f : 0xf.fb2ap-4f : inexact-ok
+= cos upward flt-32 0xf.ffffcp+124f : 0xf.fb2a1p-4f : inexact-ok
+= cos downward dbl-64 0xf.ffffcp+124 : 0xf.fb2a030c5ae2p-4 : inexact-ok
+= cos tonearest dbl-64 0xf.ffffcp+124 : 0xf.fb2a030c5ae2p-4 : inexact-ok
+= cos towardzero dbl-64 0xf.ffffcp+124 : 0xf.fb2a030c5ae2p-4 : inexact-ok
+= cos upward dbl-64 0xf.ffffcp+124 : 0xf.fb2a030c5ae28p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bep-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdp-4L : inexact-ok
+= cos upward ldbl-96-intel 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bep-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bep-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bep-4L : inexact-ok
+= cos downward ldbl-128 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdfe29fda198eap-4L : inexact-ok
+= cos tonearest ldbl-128 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdfe29fda198eap-4L : inexact-ok
+= cos towardzero ldbl-128 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdfe29fda198eap-4L : inexact-ok
+= cos upward ldbl-128 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdfe29fda198ea8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdfe29fda198cp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdfe29fda199p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdfe29fda198cp-4L : inexact-ok
+= cos upward ldbl-128ibm 0xf.ffffcp+124L : 0xf.fb2a030c5ae20bdfe29fda199p-4L : inexact-ok
+cos 0x1.fffffep+127
+= cos downward flt-32 0xf.fffffp+124f : 0xd.a5f96p-4f : inexact-ok
+= cos tonearest flt-32 0xf.fffffp+124f : 0xd.a5f96p-4f : inexact-ok
+= cos towardzero flt-32 0xf.fffffp+124f : 0xd.a5f96p-4f : inexact-ok
+= cos upward flt-32 0xf.fffffp+124f : 0xd.a5f97p-4f : inexact-ok
+= cos downward dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe68p-4 : inexact-ok
+= cos tonearest dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe7p-4 : inexact-ok
+= cos towardzero dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe68p-4 : inexact-ok
+= cos upward dbl-64 0xf.fffffp+124 : 0xd.a5f963cdefe7p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos upward ldbl-96-intel 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xf.fffffp+124L : 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= cos downward ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= cos tonearest ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= cos towardzero ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= cos upward ldbl-128 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb2f8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= cos upward ldbl-128ibm 0xf.fffffp+124L : 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+cos 0x1p+50
+= cos downward flt-32 0x4p+48f : 0xd.e3b88p-4f : inexact-ok
+= cos tonearest flt-32 0x4p+48f : 0xd.e3b89p-4f : inexact-ok
+= cos towardzero flt-32 0x4p+48f : 0xd.e3b88p-4f : inexact-ok
+= cos upward flt-32 0x4p+48f : 0xd.e3b89p-4f : inexact-ok
+= cos downward dbl-64 0x4p+48 : 0xd.e3b88804f005p-4 : inexact-ok
+= cos tonearest dbl-64 0x4p+48 : 0xd.e3b88804f0058p-4 : inexact-ok
+= cos towardzero dbl-64 0x4p+48 : 0xd.e3b88804f005p-4 : inexact-ok
+= cos upward dbl-64 0x4p+48 : 0xd.e3b88804f0058p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x4p+48L : 0xd.e3b88804f00552dp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x4p+48L : 0xd.e3b88804f00552dp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x4p+48L : 0xd.e3b88804f00552dp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x4p+48L : 0xd.e3b88804f00552ep-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x4p+48L : 0xd.e3b88804f00552dp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x4p+48L : 0xd.e3b88804f00552dp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x4p+48L : 0xd.e3b88804f00552dp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x4p+48L : 0xd.e3b88804f00552ep-4L : inexact-ok
+= cos downward ldbl-128 0x4p+48L : 0xd.e3b88804f00552d6baba709471d8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x4p+48L : 0xd.e3b88804f00552d6baba709471d8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x4p+48L : 0xd.e3b88804f00552d6baba709471d8p-4L : inexact-ok
+= cos upward ldbl-128 0x4p+48L : 0xd.e3b88804f00552d6baba709471ep-4L : inexact-ok
+= cos downward ldbl-128ibm 0x4p+48L : 0xd.e3b88804f00552d6baba70947p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x4p+48L : 0xd.e3b88804f00552d6baba70947p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x4p+48L : 0xd.e3b88804f00552d6baba70947p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x4p+48L : 0xd.e3b88804f00552d6baba709474p-4L : inexact-ok
+cos 0x1p+28
+= cos downward flt-32 0x1p+28f : -0x2.a62bacp-4f : inexact-ok
+= cos tonearest flt-32 0x1p+28f : -0x2.a62ba8p-4f : inexact-ok
+= cos towardzero flt-32 0x1p+28f : -0x2.a62ba8p-4f : inexact-ok
+= cos upward flt-32 0x1p+28f : -0x2.a62ba8p-4f : inexact-ok
+= cos downward dbl-64 0x1p+28 : -0x2.a62ba8824e5bep-4 : inexact-ok
+= cos tonearest dbl-64 0x1p+28 : -0x2.a62ba8824e5bcp-4 : inexact-ok
+= cos towardzero dbl-64 0x1p+28 : -0x2.a62ba8824e5bcp-4 : inexact-ok
+= cos upward dbl-64 0x1p+28 : -0x2.a62ba8824e5bcp-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1p+28L : -0x2.a62ba8824e5bcb08p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1p+28L : -0x2.a62ba8824e5bcb08p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1p+28L : -0x2.a62ba8824e5bcb04p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1p+28L : -0x2.a62ba8824e5bcb04p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1p+28L : -0x2.a62ba8824e5bcb08p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1p+28L : -0x2.a62ba8824e5bcb08p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1p+28L : -0x2.a62ba8824e5bcb04p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1p+28L : -0x2.a62ba8824e5bcb04p-4L : inexact-ok
+= cos downward ldbl-128 0x1p+28L : -0x2.a62ba8824e5bcb065f5f3b8e4f58p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1p+28L : -0x2.a62ba8824e5bcb065f5f3b8e4f56p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1p+28L : -0x2.a62ba8824e5bcb065f5f3b8e4f56p-4L : inexact-ok
+= cos upward ldbl-128 0x1p+28L : -0x2.a62ba8824e5bcb065f5f3b8e4f56p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1p+28L : -0x2.a62ba8824e5bcb065f5f3b8e5p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1p+28L : -0x2.a62ba8824e5bcb065f5f3b8e4fp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1p+28L : -0x2.a62ba8824e5bcb065f5f3b8e4fp-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1p+28L : -0x2.a62ba8824e5bcb065f5f3b8e4fp-4L : inexact-ok
+cos 0x1.000000cf4a2a2p0
+= cos downward flt-32 0x1.000002p+0f : 0x8.a513ep-4f : inexact-ok
+= cos tonearest flt-32 0x1.000002p+0f : 0x8.a513fp-4f : inexact-ok
+= cos towardzero flt-32 0x1.000002p+0f : 0x8.a513ep-4f : inexact-ok
+= cos upward flt-32 0x1.000002p+0f : 0x8.a513fp-4f : inexact-ok
+= cos downward dbl-64 0x1.000002p+0 : 0x8.a513eced2ea5p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.000002p+0 : 0x8.a513eced2ea58p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.000002p+0 : 0x8.a513eced2ea5p-4 : inexact-ok
+= cos upward dbl-64 0x1.000002p+0 : 0x8.a513eced2ea58p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575fp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575fp-4L : inexact-ok
+= cos downward ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos upward ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bep-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c828p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82cp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c828p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82cp-4L : inexact-ok
+= cos downward flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos tonearest flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos towardzero flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos upward flt-32 0x1p+0f : 0x8.a5141p-4f : inexact-ok
+= cos downward dbl-64 0x1p+0 : 0x8.a51407da83458p-4 : inexact-ok
+= cos tonearest dbl-64 0x1p+0 : 0x8.a51407da8346p-4 : inexact-ok
+= cos towardzero dbl-64 0x1p+0 : 0x8.a51407da83458p-4 : inexact-ok
+= cos upward dbl-64 0x1p+0 : 0x8.a51407da8346p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos downward ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos upward ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d976872p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97684p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97688p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97684p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97688p-4L : inexact-ok
+= cos downward dbl-64 0x1.000000cf4a2a2p+0 : 0x8.a513fcf3a90e8p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.000000cf4a2a2p+0 : 0x8.a513fcf3a90fp-4 : inexact-ok
+= cos towardzero dbl-64 0x1.000000cf4a2a2p+0 : 0x8.a513fcf3a90e8p-4 : inexact-ok
+= cos upward dbl-64 0x1.000000cf4a2a2p+0 : 0x8.a513fcf3a90fp-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ecp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ecp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ecp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ec01p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ecp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ecp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ecp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ec01p-4L : inexact-ok
+= cos downward ldbl-128 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ec00000037aea619p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ec00000037aea619p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ec00000037aea619p-4L : inexact-ok
+= cos upward ldbl-128 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ec00000037aea6198p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ec00000037aea6p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ec00000037aea6p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ec00000037aea6p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.000000cf4a2a2p+0L : 0x8.a513fcf3a90ec00000037aea64p-4L : inexact-ok
+cos 0x1.0000010b239a9p0
+= cos downward flt-32 0x1.000002p+0f : 0x8.a513ep-4f : inexact-ok
+= cos tonearest flt-32 0x1.000002p+0f : 0x8.a513fp-4f : inexact-ok
+= cos towardzero flt-32 0x1.000002p+0f : 0x8.a513ep-4f : inexact-ok
+= cos upward flt-32 0x1.000002p+0f : 0x8.a513fp-4f : inexact-ok
+= cos downward dbl-64 0x1.000002p+0 : 0x8.a513eced2ea5p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.000002p+0 : 0x8.a513eced2ea58p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.000002p+0 : 0x8.a513eced2ea5p-4 : inexact-ok
+= cos upward dbl-64 0x1.000002p+0 : 0x8.a513eced2ea58p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575fp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575fp-4L : inexact-ok
+= cos downward ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos upward ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bep-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c828p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82cp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c828p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82cp-4L : inexact-ok
+= cos downward flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos tonearest flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos towardzero flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos upward flt-32 0x1p+0f : 0x8.a5141p-4f : inexact-ok
+= cos downward dbl-64 0x1p+0 : 0x8.a51407da83458p-4 : inexact-ok
+= cos tonearest dbl-64 0x1p+0 : 0x8.a51407da8346p-4 : inexact-ok
+= cos towardzero dbl-64 0x1p+0 : 0x8.a51407da83458p-4 : inexact-ok
+= cos upward dbl-64 0x1p+0 : 0x8.a51407da8346p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos downward ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos upward ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d976872p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97684p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97688p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97684p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97688p-4L : inexact-ok
+= cos downward dbl-64 0x1.0000010b239a9p+0 : 0x8.a513f9cde04ep-4 : inexact-ok
+= cos tonearest dbl-64 0x1.0000010b239a9p+0 : 0x8.a513f9cde04e8p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.0000010b239a9p+0 : 0x8.a513f9cde04ep-4 : inexact-ok
+= cos upward dbl-64 0x1.0000010b239a9p+0 : 0x8.a513f9cde04e8p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e401p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e401p-4L : inexact-ok
+= cos downward ldbl-128 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4000000314b550fp-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4000000314b550f8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4000000314b550fp-4L : inexact-ok
+= cos upward ldbl-128 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4000000314b550f8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4000000314b55p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4000000314b55p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4000000314b55p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.0000010b239a9p+0L : 0x8.a513f9cde04e4000000314b554p-4L : inexact-ok
+cos 0x1.00000162a932bp0
+= cos downward flt-32 0x1.000002p+0f : 0x8.a513ep-4f : inexact-ok
+= cos tonearest flt-32 0x1.000002p+0f : 0x8.a513fp-4f : inexact-ok
+= cos towardzero flt-32 0x1.000002p+0f : 0x8.a513ep-4f : inexact-ok
+= cos upward flt-32 0x1.000002p+0f : 0x8.a513fp-4f : inexact-ok
+= cos downward dbl-64 0x1.000002p+0 : 0x8.a513eced2ea5p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.000002p+0 : 0x8.a513eced2ea58p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.000002p+0 : 0x8.a513eced2ea5p-4 : inexact-ok
+= cos upward dbl-64 0x1.000002p+0 : 0x8.a513eced2ea58p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575fp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575fp-4L : inexact-ok
+= cos downward ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos upward ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bep-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c828p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82cp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c828p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82cp-4L : inexact-ok
+= cos downward flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos tonearest flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos towardzero flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos upward flt-32 0x1p+0f : 0x8.a5141p-4f : inexact-ok
+= cos downward dbl-64 0x1p+0 : 0x8.a51407da83458p-4 : inexact-ok
+= cos tonearest dbl-64 0x1p+0 : 0x8.a51407da8346p-4 : inexact-ok
+= cos towardzero dbl-64 0x1p+0 : 0x8.a51407da83458p-4 : inexact-ok
+= cos upward dbl-64 0x1p+0 : 0x8.a51407da8346p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos downward ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos upward ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d976872p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97684p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97688p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97684p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97688p-4L : inexact-ok
+= cos downward dbl-64 0x1.00000162a932bp+0 : 0x8.a513f53385c58p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.00000162a932bp+0 : 0x8.a513f53385c6p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.00000162a932bp+0 : 0x8.a513f53385c58p-4 : inexact-ok
+= cos upward dbl-64 0x1.00000162a932bp+0 : 0x8.a513f53385c6p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.00000162a932bp+0L : 0x8.a513f53385c5cp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.00000162a932bp+0L : 0x8.a513f53385c5cp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.00000162a932bp+0L : 0x8.a513f53385c5cp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.00000162a932bp+0L : 0x8.a513f53385c5c01p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.00000162a932bp+0L : 0x8.a513f53385c5cp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.00000162a932bp+0L : 0x8.a513f53385c5cp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.00000162a932bp+0L : 0x8.a513f53385c5cp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.00000162a932bp+0L : 0x8.a513f53385c5c01p-4L : inexact-ok
+= cos downward ldbl-128 0x1.00000162a932bp+0L : 0x8.a513f53385c5c0000002a6dfa3ep-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.00000162a932bp+0L : 0x8.a513f53385c5c0000002a6dfa3ep-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.00000162a932bp+0L : 0x8.a513f53385c5c0000002a6dfa3ep-4L : inexact-ok
+= cos upward ldbl-128 0x1.00000162a932bp+0L : 0x8.a513f53385c5c0000002a6dfa3e8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.00000162a932bp+0L : 0x8.a513f53385c5c0000002a6dfap-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.00000162a932bp+0L : 0x8.a513f53385c5c0000002a6dfa4p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.00000162a932bp+0L : 0x8.a513f53385c5c0000002a6dfap-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.00000162a932bp+0L : 0x8.a513f53385c5c0000002a6dfa4p-4L : inexact-ok
+cos 0x1.000002d452a10p0
+= cos downward flt-32 0x1.000004p+0f : 0x8.a513dp-4f : inexact-ok
+= cos tonearest flt-32 0x1.000004p+0f : 0x8.a513dp-4f : inexact-ok
+= cos towardzero flt-32 0x1.000004p+0f : 0x8.a513dp-4f : inexact-ok
+= cos upward flt-32 0x1.000004p+0f : 0x8.a513ep-4f : inexact-ok
+= cos downward dbl-64 0x1.000004p+0 : 0x8.a513d1ffd9e28p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.000004p+0 : 0x8.a513d1ffd9e28p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.000004p+0 : 0x8.a513d1ffd9e28p-4 : inexact-ok
+= cos upward dbl-64 0x1.000004p+0 : 0x8.a513d1ffd9e3p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.000004p+0L : 0x8.a513d1ffd9e28e7p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.000004p+0L : 0x8.a513d1ffd9e28e7p-4L : inexact-ok
+= cos downward ldbl-128 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7fb8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7fcp-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7fb8p-4L : inexact-ok
+= cos upward ldbl-128 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7fcp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7cp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f8p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7cp-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f8p-4L : inexact-ok
+= cos downward flt-32 0x1.000002p+0f : 0x8.a513ep-4f : inexact-ok
+= cos tonearest flt-32 0x1.000002p+0f : 0x8.a513fp-4f : inexact-ok
+= cos towardzero flt-32 0x1.000002p+0f : 0x8.a513ep-4f : inexact-ok
+= cos upward flt-32 0x1.000002p+0f : 0x8.a513fp-4f : inexact-ok
+= cos downward dbl-64 0x1.000002p+0 : 0x8.a513eced2ea5p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.000002p+0 : 0x8.a513eced2ea58p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.000002p+0 : 0x8.a513eced2ea5p-4 : inexact-ok
+= cos upward dbl-64 0x1.000002p+0 : 0x8.a513eced2ea58p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.000002p+0L : 0x8.a513eced2ea575fp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575ep-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.000002p+0L : 0x8.a513eced2ea575fp-4L : inexact-ok
+= cos downward ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bd8p-4L : inexact-ok
+= cos upward ldbl-128 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82bep-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c828p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82cp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c828p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.000002p+0L : 0x8.a513eced2ea575e738a147c82cp-4L : inexact-ok
+= cos downward dbl-64 0x1.000002d452a1p+0 : 0x8.a513e1c291168p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.000002d452a1p+0 : 0x8.a513e1c29117p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.000002d452a1p+0 : 0x8.a513e1c291168p-4 : inexact-ok
+= cos upward dbl-64 0x1.000002d452a1p+0 : 0x8.a513e1c29117p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.000002d452a1p+0L : 0x8.a513e1c29116cp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.000002d452a1p+0L : 0x8.a513e1c29116cp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.000002d452a1p+0L : 0x8.a513e1c29116cp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.000002d452a1p+0L : 0x8.a513e1c29116c01p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.000002d452a1p+0L : 0x8.a513e1c29116cp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.000002d452a1p+0L : 0x8.a513e1c29116cp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.000002d452a1p+0L : 0x8.a513e1c29116cp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.000002d452a1p+0L : 0x8.a513e1c29116c01p-4L : inexact-ok
+= cos downward ldbl-128 0x1.000002d452a1p+0L : 0x8.a513e1c29116c0000003f8dd14b8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.000002d452a1p+0L : 0x8.a513e1c29116c0000003f8dd14cp-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.000002d452a1p+0L : 0x8.a513e1c29116c0000003f8dd14b8p-4L : inexact-ok
+= cos upward ldbl-128 0x1.000002d452a1p+0L : 0x8.a513e1c29116c0000003f8dd14cp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.000002d452a1p+0L : 0x8.a513e1c29116c0000003f8dd14p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.000002d452a1p+0L : 0x8.a513e1c29116c0000003f8dd14p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.000002d452a1p+0L : 0x8.a513e1c29116c0000003f8dd14p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.000002d452a1p+0L : 0x8.a513e1c29116c0000003f8dd18p-4L : inexact-ok
+cos 0x1.000005bc7d86dp0
+= cos downward flt-32 0x1.000006p+0f : 0x8.a513bp-4f : inexact-ok
+= cos tonearest flt-32 0x1.000006p+0f : 0x8.a513bp-4f : inexact-ok
+= cos towardzero flt-32 0x1.000006p+0f : 0x8.a513bp-4f : inexact-ok
+= cos upward flt-32 0x1.000006p+0f : 0x8.a513cp-4f : inexact-ok
+= cos downward dbl-64 0x1.000006p+0 : 0x8.a513b71284fdp-4 : inexact-ok
+= cos tonearest dbl-64 0x1.000006p+0 : 0x8.a513b71284fdp-4 : inexact-ok
+= cos towardzero dbl-64 0x1.000006p+0 : 0x8.a513b71284fdp-4 : inexact-ok
+= cos upward dbl-64 0x1.000006p+0 : 0x8.a513b71284fd8p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.000006p+0L : 0x8.a513b71284fd128p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.000006p+0L : 0x8.a513b71284fd129p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.000006p+0L : 0x8.a513b71284fd128p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.000006p+0L : 0x8.a513b71284fd129p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.000006p+0L : 0x8.a513b71284fd128p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.000006p+0L : 0x8.a513b71284fd129p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.000006p+0L : 0x8.a513b71284fd128p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.000006p+0L : 0x8.a513b71284fd129p-4L : inexact-ok
+= cos downward ldbl-128 0x1.000006p+0L : 0x8.a513b71284fd128eb1ad47d820d8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.000006p+0L : 0x8.a513b71284fd128eb1ad47d820ep-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.000006p+0L : 0x8.a513b71284fd128eb1ad47d820d8p-4L : inexact-ok
+= cos upward ldbl-128 0x1.000006p+0L : 0x8.a513b71284fd128eb1ad47d820ep-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.000006p+0L : 0x8.a513b71284fd128eb1ad47d82p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.000006p+0L : 0x8.a513b71284fd128eb1ad47d82p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.000006p+0L : 0x8.a513b71284fd128eb1ad47d82p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.000006p+0L : 0x8.a513b71284fd128eb1ad47d824p-4L : inexact-ok
+= cos downward flt-32 0x1.000004p+0f : 0x8.a513dp-4f : inexact-ok
+= cos tonearest flt-32 0x1.000004p+0f : 0x8.a513dp-4f : inexact-ok
+= cos towardzero flt-32 0x1.000004p+0f : 0x8.a513dp-4f : inexact-ok
+= cos upward flt-32 0x1.000004p+0f : 0x8.a513ep-4f : inexact-ok
+= cos downward dbl-64 0x1.000004p+0 : 0x8.a513d1ffd9e28p-4 : inexact-ok
+= cos tonearest dbl-64 0x1.000004p+0 : 0x8.a513d1ffd9e28p-4 : inexact-ok
+= cos towardzero dbl-64 0x1.000004p+0 : 0x8.a513d1ffd9e28p-4 : inexact-ok
+= cos upward dbl-64 0x1.000004p+0 : 0x8.a513d1ffd9e3p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.000004p+0L : 0x8.a513d1ffd9e28e7p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.000004p+0L : 0x8.a513d1ffd9e28e6p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.000004p+0L : 0x8.a513d1ffd9e28e7p-4L : inexact-ok
+= cos downward ldbl-128 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7fb8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7fcp-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7fb8p-4L : inexact-ok
+= cos upward ldbl-128 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7fcp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7cp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f8p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f7cp-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.000004p+0L : 0x8.a513d1ffd9e28e629926fb8f8p-4L : inexact-ok
+= cos downward dbl-64 0x1.000005bc7d86dp+0 : 0x8.a513ba9f703dp-4 : inexact-ok
+= cos tonearest dbl-64 0x1.000005bc7d86dp+0 : 0x8.a513ba9f703dp-4 : inexact-ok
+= cos towardzero dbl-64 0x1.000005bc7d86dp+0 : 0x8.a513ba9f703dp-4 : inexact-ok
+= cos upward dbl-64 0x1.000005bc7d86dp+0 : 0x8.a513ba9f703d8p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d4p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d4p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d4p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d4p-4L : inexact-ok
+= cos downward ldbl-128 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb9235418p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb9235418p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb9235418p-4L : inexact-ok
+= cos upward ldbl-128 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb923542p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92354p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92354p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92354p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1.000005bc7d86dp+0L : 0x8.a513ba9f703d3ffffffcb92358p-4L : inexact-ok
+cos 1
+= cos downward flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos tonearest flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos towardzero flt-32 0x1p+0f : 0x8.a514p-4f : inexact-ok
+= cos upward flt-32 0x1p+0f : 0x8.a5141p-4f : inexact-ok
+= cos downward dbl-64 0x1p+0 : 0x8.a51407da83458p-4 : inexact-ok
+= cos tonearest dbl-64 0x1p+0 : 0x8.a51407da8346p-4 : inexact-ok
+= cos towardzero dbl-64 0x1p+0 : 0x8.a51407da83458p-4 : inexact-ok
+= cos upward dbl-64 0x1p+0 : 0x8.a51407da8346p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c91p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x1p+0L : 0x8.a51407da8345c92p-4L : inexact-ok
+= cos downward ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos tonearest ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos towardzero ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d9768718p-4L : inexact-ok
+= cos upward ldbl-128 0x1p+0L : 0x8.a51407da8345c91c2466d976872p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97684p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97688p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97684p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x1p+0L : 0x8.a51407da8345c91c2466d97688p-4L : inexact-ok
+cos 2
+= cos downward flt-32 0x2p+0f : -0x6.a88998p-4f : inexact-ok
+= cos tonearest flt-32 0x2p+0f : -0x6.a88998p-4f : inexact-ok
+= cos towardzero flt-32 0x2p+0f : -0x6.a8899p-4f : inexact-ok
+= cos upward flt-32 0x2p+0f : -0x6.a8899p-4f : inexact-ok
+= cos downward dbl-64 0x2p+0 : -0x6.a88995d4dc814p-4 : inexact-ok
+= cos tonearest dbl-64 0x2p+0 : -0x6.a88995d4dc814p-4 : inexact-ok
+= cos towardzero dbl-64 0x2p+0 : -0x6.a88995d4dc81p-4 : inexact-ok
+= cos upward dbl-64 0x2p+0 : -0x6.a88995d4dc81p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x2p+0L : -0x6.a88995d4dc81291p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x2p+0L : -0x6.a88995d4dc81291p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x2p+0L : -0x6.a88995d4dc812908p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x2p+0L : -0x6.a88995d4dc812908p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x2p+0L : -0x6.a88995d4dc81291p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x2p+0L : -0x6.a88995d4dc81291p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x2p+0L : -0x6.a88995d4dc812908p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x2p+0L : -0x6.a88995d4dc812908p-4L : inexact-ok
+= cos downward ldbl-128 0x2p+0L : -0x6.a88995d4dc81290ccbe2b2edcac4p-4L : inexact-ok
+= cos tonearest ldbl-128 0x2p+0L : -0x6.a88995d4dc81290ccbe2b2edcac4p-4L : inexact-ok
+= cos towardzero ldbl-128 0x2p+0L : -0x6.a88995d4dc81290ccbe2b2edcacp-4L : inexact-ok
+= cos upward ldbl-128 0x2p+0L : -0x6.a88995d4dc81290ccbe2b2edcacp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x2p+0L : -0x6.a88995d4dc81290ccbe2b2edccp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x2p+0L : -0x6.a88995d4dc81290ccbe2b2edcap-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x2p+0L : -0x6.a88995d4dc81290ccbe2b2edcap-4L : inexact-ok
+= cos upward ldbl-128ibm 0x2p+0L : -0x6.a88995d4dc81290ccbe2b2edcap-4L : inexact-ok
+cos 3
+= cos downward flt-32 0x3p+0f : -0xf.d7026p-4f : inexact-ok
+= cos tonearest flt-32 0x3p+0f : -0xf.d7026p-4f : inexact-ok
+= cos towardzero flt-32 0x3p+0f : -0xf.d7025p-4f : inexact-ok
+= cos upward flt-32 0x3p+0f : -0xf.d7025p-4f : inexact-ok
+= cos downward dbl-64 0x3p+0 : -0xf.d7025f42f2e98p-4 : inexact-ok
+= cos tonearest dbl-64 0x3p+0 : -0xf.d7025f42f2e9p-4 : inexact-ok
+= cos towardzero dbl-64 0x3p+0 : -0xf.d7025f42f2e9p-4 : inexact-ok
+= cos upward dbl-64 0x3p+0 : -0xf.d7025f42f2e9p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x3p+0L : -0xf.d7025f42f2e9308p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x3p+0L : -0xf.d7025f42f2e9308p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x3p+0L : -0xf.d7025f42f2e9307p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x3p+0L : -0xf.d7025f42f2e9307p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x3p+0L : -0xf.d7025f42f2e9308p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x3p+0L : -0xf.d7025f42f2e9308p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x3p+0L : -0xf.d7025f42f2e9307p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x3p+0L : -0xf.d7025f42f2e9307p-4L : inexact-ok
+= cos downward ldbl-128 0x3p+0L : -0xf.d7025f42f2e9307dff82fdf6a708p-4L : inexact-ok
+= cos tonearest ldbl-128 0x3p+0L : -0xf.d7025f42f2e9307dff82fdf6a7p-4L : inexact-ok
+= cos towardzero ldbl-128 0x3p+0L : -0xf.d7025f42f2e9307dff82fdf6a7p-4L : inexact-ok
+= cos upward ldbl-128 0x3p+0L : -0xf.d7025f42f2e9307dff82fdf6a7p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x3p+0L : -0xf.d7025f42f2e9307dff82fdf6a8p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x3p+0L : -0xf.d7025f42f2e9307dff82fdf6a8p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x3p+0L : -0xf.d7025f42f2e9307dff82fdf6a4p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x3p+0L : -0xf.d7025f42f2e9307dff82fdf6a4p-4L : inexact-ok
+cos 4
+= cos downward flt-32 0x4p+0f : -0xa.75531p-4f : inexact-ok
+= cos tonearest flt-32 0x4p+0f : -0xa.7553p-4f : inexact-ok
+= cos towardzero flt-32 0x4p+0f : -0xa.7553p-4f : inexact-ok
+= cos upward flt-32 0x4p+0f : -0xa.7553p-4f : inexact-ok
+= cos downward dbl-64 0x4p+0 : -0xa.7553036d92608p-4 : inexact-ok
+= cos tonearest dbl-64 0x4p+0 : -0xa.7553036d92608p-4 : inexact-ok
+= cos towardzero dbl-64 0x4p+0 : -0xa.7553036d926p-4 : inexact-ok
+= cos upward dbl-64 0x4p+0 : -0xa.7553036d926p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x4p+0L : -0xa.7553036d9260624p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x4p+0L : -0xa.7553036d9260623p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x4p+0L : -0xa.7553036d9260623p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x4p+0L : -0xa.7553036d9260623p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x4p+0L : -0xa.7553036d9260624p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x4p+0L : -0xa.7553036d9260623p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x4p+0L : -0xa.7553036d9260623p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x4p+0L : -0xa.7553036d9260623p-4L : inexact-ok
+= cos downward ldbl-128 0x4p+0L : -0xa.7553036d926062336d0e16e3dd5p-4L : inexact-ok
+= cos tonearest ldbl-128 0x4p+0L : -0xa.7553036d926062336d0e16e3dd5p-4L : inexact-ok
+= cos towardzero ldbl-128 0x4p+0L : -0xa.7553036d926062336d0e16e3dd48p-4L : inexact-ok
+= cos upward ldbl-128 0x4p+0L : -0xa.7553036d926062336d0e16e3dd48p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x4p+0L : -0xa.7553036d926062336d0e16e3ep-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x4p+0L : -0xa.7553036d926062336d0e16e3dcp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x4p+0L : -0xa.7553036d926062336d0e16e3dcp-4L : inexact-ok
+= cos upward ldbl-128ibm 0x4p+0L : -0xa.7553036d926062336d0e16e3dcp-4L : inexact-ok
+cos 5
+= cos downward flt-32 0x5p+0f : 0x4.89e158p-4f : inexact-ok
+= cos tonearest flt-32 0x5p+0f : 0x4.89e16p-4f : inexact-ok
+= cos towardzero flt-32 0x5p+0f : 0x4.89e158p-4f : inexact-ok
+= cos upward flt-32 0x5p+0f : 0x4.89e16p-4f : inexact-ok
+= cos downward dbl-64 0x5p+0 : 0x4.89e15c1ad2b64p-4 : inexact-ok
+= cos tonearest dbl-64 0x5p+0 : 0x4.89e15c1ad2b64p-4 : inexact-ok
+= cos towardzero dbl-64 0x5p+0 : 0x4.89e15c1ad2b64p-4 : inexact-ok
+= cos upward dbl-64 0x5p+0 : 0x4.89e15c1ad2b68p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x5p+0L : 0x4.89e15c1ad2b654f8p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x5p+0L : 0x4.89e15c1ad2b654f8p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x5p+0L : 0x4.89e15c1ad2b654f8p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x5p+0L : 0x4.89e15c1ad2b655p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x5p+0L : 0x4.89e15c1ad2b654f8p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x5p+0L : 0x4.89e15c1ad2b654f8p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x5p+0L : 0x4.89e15c1ad2b654f8p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x5p+0L : 0x4.89e15c1ad2b655p-4L : inexact-ok
+= cos downward ldbl-128 0x5p+0L : 0x4.89e15c1ad2b654f99f75a35ee5f8p-4L : inexact-ok
+= cos tonearest ldbl-128 0x5p+0L : 0x4.89e15c1ad2b654f99f75a35ee5fcp-4L : inexact-ok
+= cos towardzero ldbl-128 0x5p+0L : 0x4.89e15c1ad2b654f99f75a35ee5f8p-4L : inexact-ok
+= cos upward ldbl-128 0x5p+0L : 0x4.89e15c1ad2b654f99f75a35ee5fcp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x5p+0L : 0x4.89e15c1ad2b654f99f75a35ee4p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x5p+0L : 0x4.89e15c1ad2b654f99f75a35ee6p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x5p+0L : 0x4.89e15c1ad2b654f99f75a35ee4p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x5p+0L : 0x4.89e15c1ad2b654f99f75a35ee6p-4L : inexact-ok
+cos 6
+= cos downward flt-32 0x6p+0f : 0xf.5cdb8p-4f : inexact-ok
+= cos tonearest flt-32 0x6p+0f : 0xf.5cdb8p-4f : inexact-ok
+= cos towardzero flt-32 0x6p+0f : 0xf.5cdb8p-4f : inexact-ok
+= cos upward flt-32 0x6p+0f : 0xf.5cdb9p-4f : inexact-ok
+= cos downward dbl-64 0x6p+0 : 0xf.5cdb84bc117a8p-4 : inexact-ok
+= cos tonearest dbl-64 0x6p+0 : 0xf.5cdb84bc117a8p-4 : inexact-ok
+= cos towardzero dbl-64 0x6p+0 : 0xf.5cdb84bc117a8p-4 : inexact-ok
+= cos upward dbl-64 0x6p+0 : 0xf.5cdb84bc117bp-4 : inexact-ok
+= cos downward ldbl-96-intel 0x6p+0L : 0xf.5cdb84bc117abd7p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x6p+0L : 0xf.5cdb84bc117abd7p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x6p+0L : 0xf.5cdb84bc117abd7p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x6p+0L : 0xf.5cdb84bc117abd8p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x6p+0L : 0xf.5cdb84bc117abd7p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x6p+0L : 0xf.5cdb84bc117abd7p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x6p+0L : 0xf.5cdb84bc117abd7p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x6p+0L : 0xf.5cdb84bc117abd8p-4L : inexact-ok
+= cos downward ldbl-128 0x6p+0L : 0xf.5cdb84bc117abd74f1e700074a9p-4L : inexact-ok
+= cos tonearest ldbl-128 0x6p+0L : 0xf.5cdb84bc117abd74f1e700074a98p-4L : inexact-ok
+= cos towardzero ldbl-128 0x6p+0L : 0xf.5cdb84bc117abd74f1e700074a9p-4L : inexact-ok
+= cos upward ldbl-128 0x6p+0L : 0xf.5cdb84bc117abd74f1e700074a98p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x6p+0L : 0xf.5cdb84bc117abd74f1e7000748p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x6p+0L : 0xf.5cdb84bc117abd74f1e700074cp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x6p+0L : 0xf.5cdb84bc117abd74f1e7000748p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x6p+0L : 0xf.5cdb84bc117abd74f1e700074cp-4L : inexact-ok
+cos 7
+= cos downward flt-32 0x7p+0f : 0xc.0ffbcp-4f : inexact-ok
+= cos tonearest flt-32 0x7p+0f : 0xc.0ffbdp-4f : inexact-ok
+= cos towardzero flt-32 0x7p+0f : 0xc.0ffbcp-4f : inexact-ok
+= cos upward flt-32 0x7p+0f : 0xc.0ffbdp-4f : inexact-ok
+= cos downward dbl-64 0x7p+0 : 0xc.0ffbcf6c900b8p-4 : inexact-ok
+= cos tonearest dbl-64 0x7p+0 : 0xc.0ffbcf6c900b8p-4 : inexact-ok
+= cos towardzero dbl-64 0x7p+0 : 0xc.0ffbcf6c900b8p-4 : inexact-ok
+= cos upward dbl-64 0x7p+0 : 0xc.0ffbcf6c900cp-4 : inexact-ok
+= cos downward ldbl-96-intel 0x7p+0L : 0xc.0ffbcf6c900baafp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x7p+0L : 0xc.0ffbcf6c900babp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x7p+0L : 0xc.0ffbcf6c900baafp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x7p+0L : 0xc.0ffbcf6c900babp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x7p+0L : 0xc.0ffbcf6c900baafp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x7p+0L : 0xc.0ffbcf6c900babp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x7p+0L : 0xc.0ffbcf6c900baafp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x7p+0L : 0xc.0ffbcf6c900babp-4L : inexact-ok
+= cos downward ldbl-128 0x7p+0L : 0xc.0ffbcf6c900baafbd68c5a99d548p-4L : inexact-ok
+= cos tonearest ldbl-128 0x7p+0L : 0xc.0ffbcf6c900baafbd68c5a99d55p-4L : inexact-ok
+= cos towardzero ldbl-128 0x7p+0L : 0xc.0ffbcf6c900baafbd68c5a99d548p-4L : inexact-ok
+= cos upward ldbl-128 0x7p+0L : 0xc.0ffbcf6c900baafbd68c5a99d55p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x7p+0L : 0xc.0ffbcf6c900baafbd68c5a99d4p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x7p+0L : 0xc.0ffbcf6c900baafbd68c5a99d4p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x7p+0L : 0xc.0ffbcf6c900baafbd68c5a99d4p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x7p+0L : 0xc.0ffbcf6c900baafbd68c5a99d8p-4L : inexact-ok
+cos 8
+= cos downward flt-32 0x8p+0f : -0x2.53f7d8p-4f : inexact-ok
+= cos tonearest flt-32 0x8p+0f : -0x2.53f7d8p-4f : inexact-ok
+= cos towardzero flt-32 0x8p+0f : -0x2.53f7d4p-4f : inexact-ok
+= cos upward flt-32 0x8p+0f : -0x2.53f7d4p-4f : inexact-ok
+= cos downward dbl-64 0x8p+0 : -0x2.53f7d7ec65f28p-4 : inexact-ok
+= cos tonearest dbl-64 0x8p+0 : -0x2.53f7d7ec65f28p-4 : inexact-ok
+= cos towardzero dbl-64 0x8p+0 : -0x2.53f7d7ec65f26p-4 : inexact-ok
+= cos upward dbl-64 0x8p+0 : -0x2.53f7d7ec65f26p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x8p+0L : -0x2.53f7d7ec65f271fp-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x8p+0L : -0x2.53f7d7ec65f271ecp-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x8p+0L : -0x2.53f7d7ec65f271ecp-4L : inexact-ok
+= cos upward ldbl-96-intel 0x8p+0L : -0x2.53f7d7ec65f271ecp-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x8p+0L : -0x2.53f7d7ec65f271fp-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x8p+0L : -0x2.53f7d7ec65f271ecp-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x8p+0L : -0x2.53f7d7ec65f271ecp-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x8p+0L : -0x2.53f7d7ec65f271ecp-4L : inexact-ok
+= cos downward ldbl-128 0x8p+0L : -0x2.53f7d7ec65f271ec91f976afbdcep-4L : inexact-ok
+= cos tonearest ldbl-128 0x8p+0L : -0x2.53f7d7ec65f271ec91f976afbdcep-4L : inexact-ok
+= cos towardzero ldbl-128 0x8p+0L : -0x2.53f7d7ec65f271ec91f976afbdccp-4L : inexact-ok
+= cos upward ldbl-128 0x8p+0L : -0x2.53f7d7ec65f271ec91f976afbdccp-4L : inexact-ok
+= cos downward ldbl-128ibm 0x8p+0L : -0x2.53f7d7ec65f271ec91f976afbep-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x8p+0L : -0x2.53f7d7ec65f271ec91f976afbep-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x8p+0L : -0x2.53f7d7ec65f271ec91f976afbdp-4L : inexact-ok
+= cos upward ldbl-128ibm 0x8p+0L : -0x2.53f7d7ec65f271ec91f976afbdp-4L : inexact-ok
+cos 9
+= cos downward flt-32 0x9p+0f : -0xe.93fd6p-4f : inexact-ok
+= cos tonearest flt-32 0x9p+0f : -0xe.93fd5p-4f : inexact-ok
+= cos towardzero flt-32 0x9p+0f : -0xe.93fd5p-4f : inexact-ok
+= cos upward flt-32 0x9p+0f : -0xe.93fd5p-4f : inexact-ok
+= cos downward dbl-64 0x9p+0 : -0xe.93fd53530cb6p-4 : inexact-ok
+= cos tonearest dbl-64 0x9p+0 : -0xe.93fd53530cb58p-4 : inexact-ok
+= cos towardzero dbl-64 0x9p+0 : -0xe.93fd53530cb58p-4 : inexact-ok
+= cos upward dbl-64 0x9p+0 : -0xe.93fd53530cb58p-4 : inexact-ok
+= cos downward ldbl-96-intel 0x9p+0L : -0xe.93fd53530cb5b83p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0x9p+0L : -0xe.93fd53530cb5b82p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0x9p+0L : -0xe.93fd53530cb5b82p-4L : inexact-ok
+= cos upward ldbl-96-intel 0x9p+0L : -0xe.93fd53530cb5b82p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0x9p+0L : -0xe.93fd53530cb5b83p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0x9p+0L : -0xe.93fd53530cb5b82p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0x9p+0L : -0xe.93fd53530cb5b82p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0x9p+0L : -0xe.93fd53530cb5b82p-4L : inexact-ok
+= cos downward ldbl-128 0x9p+0L : -0xe.93fd53530cb5b8268bb2e8949abp-4L : inexact-ok
+= cos tonearest ldbl-128 0x9p+0L : -0xe.93fd53530cb5b8268bb2e8949aa8p-4L : inexact-ok
+= cos towardzero ldbl-128 0x9p+0L : -0xe.93fd53530cb5b8268bb2e8949aa8p-4L : inexact-ok
+= cos upward ldbl-128 0x9p+0L : -0xe.93fd53530cb5b8268bb2e8949aa8p-4L : inexact-ok
+= cos downward ldbl-128ibm 0x9p+0L : -0xe.93fd53530cb5b8268bb2e8949cp-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0x9p+0L : -0xe.93fd53530cb5b8268bb2e8949cp-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0x9p+0L : -0xe.93fd53530cb5b8268bb2e89498p-4L : inexact-ok
+= cos upward ldbl-128ibm 0x9p+0L : -0xe.93fd53530cb5b8268bb2e89498p-4L : inexact-ok
+cos 10
+= cos downward flt-32 0xap+0f : -0xd.6cd65p-4f : inexact-ok
+= cos tonearest flt-32 0xap+0f : -0xd.6cd64p-4f : inexact-ok
+= cos towardzero flt-32 0xap+0f : -0xd.6cd64p-4f : inexact-ok
+= cos upward flt-32 0xap+0f : -0xd.6cd64p-4f : inexact-ok
+= cos downward dbl-64 0xap+0 : -0xd.6cd64486359p-4 : inexact-ok
+= cos tonearest dbl-64 0xap+0 : -0xd.6cd64486358f8p-4 : inexact-ok
+= cos towardzero dbl-64 0xap+0 : -0xd.6cd64486358f8p-4 : inexact-ok
+= cos upward dbl-64 0xap+0 : -0xd.6cd64486358f8p-4 : inexact-ok
+= cos downward ldbl-96-intel 0xap+0L : -0xd.6cd64486358f905p-4L : inexact-ok
+= cos tonearest ldbl-96-intel 0xap+0L : -0xd.6cd64486358f905p-4L : inexact-ok
+= cos towardzero ldbl-96-intel 0xap+0L : -0xd.6cd64486358f904p-4L : inexact-ok
+= cos upward ldbl-96-intel 0xap+0L : -0xd.6cd64486358f904p-4L : inexact-ok
+= cos downward ldbl-96-m68k 0xap+0L : -0xd.6cd64486358f905p-4L : inexact-ok
+= cos tonearest ldbl-96-m68k 0xap+0L : -0xd.6cd64486358f905p-4L : inexact-ok
+= cos towardzero ldbl-96-m68k 0xap+0L : -0xd.6cd64486358f904p-4L : inexact-ok
+= cos upward ldbl-96-m68k 0xap+0L : -0xd.6cd64486358f904p-4L : inexact-ok
+= cos downward ldbl-128 0xap+0L : -0xd.6cd64486358f904f7e2a0b9994e8p-4L : inexact-ok
+= cos tonearest ldbl-128 0xap+0L : -0xd.6cd64486358f904f7e2a0b9994ep-4L : inexact-ok
+= cos towardzero ldbl-128 0xap+0L : -0xd.6cd64486358f904f7e2a0b9994ep-4L : inexact-ok
+= cos upward ldbl-128 0xap+0L : -0xd.6cd64486358f904f7e2a0b9994ep-4L : inexact-ok
+= cos downward ldbl-128ibm 0xap+0L : -0xd.6cd64486358f904f7e2a0b9998p-4L : inexact-ok
+= cos tonearest ldbl-128ibm 0xap+0L : -0xd.6cd64486358f904f7e2a0b9994p-4L : inexact-ok
+= cos towardzero ldbl-128ibm 0xap+0L : -0xd.6cd64486358f904f7e2a0b9994p-4L : inexact-ok
+= cos upward ldbl-128ibm 0xap+0L : -0xd.6cd64486358f904f7e2a0b9994p-4L : inexact-ok
+cosh 0
+= cosh downward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= cosh tonearest flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= cosh towardzero flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= cosh upward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= cosh downward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= cosh tonearest dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= cosh towardzero dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= cosh upward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= cosh downward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh tonearest ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh towardzero ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh upward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh downward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh tonearest ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh towardzero ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh upward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh downward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh tonearest ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh towardzero ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh upward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh downward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh tonearest ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh towardzero ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= cosh upward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+cosh -0
+= cosh downward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= cosh tonearest flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= cosh towardzero flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= cosh upward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= cosh downward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= cosh tonearest dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= cosh towardzero dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= cosh upward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= cosh downward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh tonearest ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh towardzero ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh upward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh downward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh tonearest ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh towardzero ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh upward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh downward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh tonearest ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh towardzero ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh upward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh downward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh tonearest ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh towardzero ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= cosh upward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+cosh 0.75
+= cosh downward flt-32 0xcp-4f : 0x1.4b705cp+0f : inexact-ok
+= cosh tonearest flt-32 0xcp-4f : 0x1.4b705ep+0f : inexact-ok
+= cosh towardzero flt-32 0xcp-4f : 0x1.4b705cp+0f : inexact-ok
+= cosh upward flt-32 0xcp-4f : 0x1.4b705ep+0f : inexact-ok
+= cosh downward dbl-64 0xcp-4 : 0x1.4b705d1e5d6a7p+0 : inexact-ok
+= cosh tonearest dbl-64 0xcp-4 : 0x1.4b705d1e5d6a8p+0 : inexact-ok
+= cosh towardzero dbl-64 0xcp-4 : 0x1.4b705d1e5d6a7p+0 : inexact-ok
+= cosh upward dbl-64 0xcp-4 : 0x1.4b705d1e5d6a8p+0 : inexact-ok
+= cosh downward ldbl-96-intel 0xcp-4L : 0x1.4b705d1e5d6a787ap+0L : inexact-ok
+= cosh tonearest ldbl-96-intel 0xcp-4L : 0x1.4b705d1e5d6a787ap+0L : inexact-ok
+= cosh towardzero ldbl-96-intel 0xcp-4L : 0x1.4b705d1e5d6a787ap+0L : inexact-ok
+= cosh upward ldbl-96-intel 0xcp-4L : 0x1.4b705d1e5d6a787cp+0L : inexact-ok
+= cosh downward ldbl-96-m68k 0xcp-4L : 0x1.4b705d1e5d6a787ap+0L : inexact-ok
+= cosh tonearest ldbl-96-m68k 0xcp-4L : 0x1.4b705d1e5d6a787ap+0L : inexact-ok
+= cosh towardzero ldbl-96-m68k 0xcp-4L : 0x1.4b705d1e5d6a787ap+0L : inexact-ok
+= cosh upward ldbl-96-m68k 0xcp-4L : 0x1.4b705d1e5d6a787cp+0L : inexact-ok
+= cosh downward ldbl-128 0xcp-4L : 0x1.4b705d1e5d6a787aa2de94beca32p+0L : inexact-ok
+= cosh tonearest ldbl-128 0xcp-4L : 0x1.4b705d1e5d6a787aa2de94beca32p+0L : inexact-ok
+= cosh towardzero ldbl-128 0xcp-4L : 0x1.4b705d1e5d6a787aa2de94beca32p+0L : inexact-ok
+= cosh upward ldbl-128 0xcp-4L : 0x1.4b705d1e5d6a787aa2de94beca33p+0L : inexact-ok
+= cosh downward ldbl-128ibm 0xcp-4L : 0x1.4b705d1e5d6a787aa2de94becap+0L : inexact-ok
+= cosh tonearest ldbl-128ibm 0xcp-4L : 0x1.4b705d1e5d6a787aa2de94becap+0L : inexact-ok
+= cosh towardzero ldbl-128ibm 0xcp-4L : 0x1.4b705d1e5d6a787aa2de94becap+0L : inexact-ok
+= cosh upward ldbl-128ibm 0xcp-4L : 0x1.4b705d1e5d6a787aa2de94beca8p+0L : inexact-ok
+cosh 709.8893558127259666434838436543941497802734375
+= cosh downward flt-32 0x2.c5e3bp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= cosh tonearest flt-32 0x2.c5e3bp+8f : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero flt-32 0x2.c5e3bp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= cosh upward flt-32 0x2.c5e3bp+8f : plus_infty : inexact-ok overflow errno-erange
+= cosh downward dbl-64 0x2.c5e3bp+8 : 0x8.e6960966c8d2p+1020 : inexact-ok
+= cosh tonearest dbl-64 0x2.c5e3bp+8 : 0x8.e6960966c8d2p+1020 : inexact-ok
+= cosh towardzero dbl-64 0x2.c5e3bp+8 : 0x8.e6960966c8d2p+1020 : inexact-ok
+= cosh upward dbl-64 0x2.c5e3bp+8 : 0x8.e6960966c8d28p+1020 : inexact-ok
+= cosh downward ldbl-96-intel 0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh tonearest ldbl-96-intel 0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh towardzero ldbl-96-intel 0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh upward ldbl-96-intel 0x2.c5e3bp+8L : 0x8.e6960966c8d230cp+1020L : inexact-ok
+= cosh downward ldbl-96-m68k 0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh tonearest ldbl-96-m68k 0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh towardzero ldbl-96-m68k 0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh upward ldbl-96-m68k 0x2.c5e3bp+8L : 0x8.e6960966c8d230cp+1020L : inexact-ok
+= cosh downward ldbl-128 0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b878p+1020L : inexact-ok
+= cosh tonearest ldbl-128 0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b88p+1020L : inexact-ok
+= cosh towardzero ldbl-128 0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b878p+1020L : inexact-ok
+= cosh upward ldbl-128 0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b88p+1020L : inexact-ok
+= cosh downward ldbl-128ibm 0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b8p+1020L : inexact-ok
+= cosh tonearest ldbl-128ibm 0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b8p+1020L : inexact-ok
+= cosh towardzero ldbl-128ibm 0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b8p+1020L : inexact-ok
+= cosh upward ldbl-128ibm 0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4bcp+1020L : inexact-ok
+= cosh downward flt-32 0x2.c5e3acp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= cosh tonearest flt-32 0x2.c5e3acp+8f : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero flt-32 0x2.c5e3acp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= cosh upward flt-32 0x2.c5e3acp+8f : plus_infty : inexact-ok overflow errno-erange
+= cosh downward dbl-64 0x2.c5e3acp+8 : 0x8.e6726f55d788p+1020 : inexact-ok
+= cosh tonearest dbl-64 0x2.c5e3acp+8 : 0x8.e6726f55d7888p+1020 : inexact-ok
+= cosh towardzero dbl-64 0x2.c5e3acp+8 : 0x8.e6726f55d788p+1020 : inexact-ok
+= cosh upward dbl-64 0x2.c5e3acp+8 : 0x8.e6726f55d7888p+1020 : inexact-ok
+= cosh downward ldbl-96-intel 0x2.c5e3acp+8L : 0x8.e6726f55d788681p+1020L : inexact-ok
+= cosh tonearest ldbl-96-intel 0x2.c5e3acp+8L : 0x8.e6726f55d788682p+1020L : inexact-ok
+= cosh towardzero ldbl-96-intel 0x2.c5e3acp+8L : 0x8.e6726f55d788681p+1020L : inexact-ok
+= cosh upward ldbl-96-intel 0x2.c5e3acp+8L : 0x8.e6726f55d788682p+1020L : inexact-ok
+= cosh downward ldbl-96-m68k 0x2.c5e3acp+8L : 0x8.e6726f55d788681p+1020L : inexact-ok
+= cosh tonearest ldbl-96-m68k 0x2.c5e3acp+8L : 0x8.e6726f55d788682p+1020L : inexact-ok
+= cosh towardzero ldbl-96-m68k 0x2.c5e3acp+8L : 0x8.e6726f55d788681p+1020L : inexact-ok
+= cosh upward ldbl-96-m68k 0x2.c5e3acp+8L : 0x8.e6726f55d788682p+1020L : inexact-ok
+= cosh downward ldbl-128 0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac3828p+1020L : inexact-ok
+= cosh tonearest ldbl-128 0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac383p+1020L : inexact-ok
+= cosh towardzero ldbl-128 0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac3828p+1020L : inexact-ok
+= cosh upward ldbl-128 0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac383p+1020L : inexact-ok
+= cosh downward ldbl-128ibm 0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac38p+1020L : inexact-ok
+= cosh tonearest ldbl-128ibm 0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac38p+1020L : inexact-ok
+= cosh towardzero ldbl-128ibm 0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac38p+1020L : inexact-ok
+= cosh upward ldbl-128ibm 0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac3cp+1020L : inexact-ok
+= cosh downward dbl-64 0x2.c5e3acd2922a6p+8 : 0x8.e679c177a00b8p+1020 : inexact-ok
+= cosh tonearest dbl-64 0x2.c5e3acd2922a6p+8 : 0x8.e679c177a00cp+1020 : inexact-ok
+= cosh towardzero dbl-64 0x2.c5e3acd2922a6p+8 : 0x8.e679c177a00b8p+1020 : inexact-ok
+= cosh upward dbl-64 0x2.c5e3acd2922a6p+8 : 0x8.e679c177a00cp+1020 : inexact-ok
+= cosh downward ldbl-96-intel 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5p+1020L : inexact-ok
+= cosh tonearest ldbl-96-intel 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb6p+1020L : inexact-ok
+= cosh towardzero ldbl-96-intel 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5p+1020L : inexact-ok
+= cosh upward ldbl-96-intel 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb6p+1020L : inexact-ok
+= cosh downward ldbl-96-m68k 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5p+1020L : inexact-ok
+= cosh tonearest ldbl-96-m68k 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb6p+1020L : inexact-ok
+= cosh towardzero ldbl-96-m68k 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5p+1020L : inexact-ok
+= cosh upward ldbl-96-m68k 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb6p+1020L : inexact-ok
+= cosh downward ldbl-128 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b5868p+1020L : inexact-ok
+= cosh tonearest ldbl-128 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b5868p+1020L : inexact-ok
+= cosh towardzero ldbl-128 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b5868p+1020L : inexact-ok
+= cosh upward ldbl-128 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b587p+1020L : inexact-ok
+= cosh downward ldbl-128ibm 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b58p+1020L : inexact-ok
+= cosh tonearest ldbl-128ibm 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b58p+1020L : inexact-ok
+= cosh towardzero ldbl-128ibm 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b58p+1020L : inexact-ok
+= cosh upward ldbl-128ibm 0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b5cp+1020L : inexact-ok
+cosh -709.8893558127259666434838436543941497802734375
+= cosh downward flt-32 -0x2.c5e3acp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= cosh tonearest flt-32 -0x2.c5e3acp+8f : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero flt-32 -0x2.c5e3acp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= cosh upward flt-32 -0x2.c5e3acp+8f : plus_infty : inexact-ok overflow errno-erange
+= cosh downward dbl-64 -0x2.c5e3acp+8 : 0x8.e6726f55d788p+1020 : inexact-ok
+= cosh tonearest dbl-64 -0x2.c5e3acp+8 : 0x8.e6726f55d7888p+1020 : inexact-ok
+= cosh towardzero dbl-64 -0x2.c5e3acp+8 : 0x8.e6726f55d788p+1020 : inexact-ok
+= cosh upward dbl-64 -0x2.c5e3acp+8 : 0x8.e6726f55d7888p+1020 : inexact-ok
+= cosh downward ldbl-96-intel -0x2.c5e3acp+8L : 0x8.e6726f55d788681p+1020L : inexact-ok
+= cosh tonearest ldbl-96-intel -0x2.c5e3acp+8L : 0x8.e6726f55d788682p+1020L : inexact-ok
+= cosh towardzero ldbl-96-intel -0x2.c5e3acp+8L : 0x8.e6726f55d788681p+1020L : inexact-ok
+= cosh upward ldbl-96-intel -0x2.c5e3acp+8L : 0x8.e6726f55d788682p+1020L : inexact-ok
+= cosh downward ldbl-96-m68k -0x2.c5e3acp+8L : 0x8.e6726f55d788681p+1020L : inexact-ok
+= cosh tonearest ldbl-96-m68k -0x2.c5e3acp+8L : 0x8.e6726f55d788682p+1020L : inexact-ok
+= cosh towardzero ldbl-96-m68k -0x2.c5e3acp+8L : 0x8.e6726f55d788681p+1020L : inexact-ok
+= cosh upward ldbl-96-m68k -0x2.c5e3acp+8L : 0x8.e6726f55d788682p+1020L : inexact-ok
+= cosh downward ldbl-128 -0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac3828p+1020L : inexact-ok
+= cosh tonearest ldbl-128 -0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac383p+1020L : inexact-ok
+= cosh towardzero ldbl-128 -0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac3828p+1020L : inexact-ok
+= cosh upward ldbl-128 -0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac383p+1020L : inexact-ok
+= cosh downward ldbl-128ibm -0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac38p+1020L : inexact-ok
+= cosh tonearest ldbl-128ibm -0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac38p+1020L : inexact-ok
+= cosh towardzero ldbl-128ibm -0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac38p+1020L : inexact-ok
+= cosh upward ldbl-128ibm -0x2.c5e3acp+8L : 0x8.e6726f55d78868187eba9eac3cp+1020L : inexact-ok
+= cosh downward flt-32 -0x2.c5e3bp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= cosh tonearest flt-32 -0x2.c5e3bp+8f : plus_infty : inexact-ok overflow errno-erange
+= cosh towardzero flt-32 -0x2.c5e3bp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= cosh upward flt-32 -0x2.c5e3bp+8f : plus_infty : inexact-ok overflow errno-erange
+= cosh downward dbl-64 -0x2.c5e3bp+8 : 0x8.e6960966c8d2p+1020 : inexact-ok
+= cosh tonearest dbl-64 -0x2.c5e3bp+8 : 0x8.e6960966c8d2p+1020 : inexact-ok
+= cosh towardzero dbl-64 -0x2.c5e3bp+8 : 0x8.e6960966c8d2p+1020 : inexact-ok
+= cosh upward dbl-64 -0x2.c5e3bp+8 : 0x8.e6960966c8d28p+1020 : inexact-ok
+= cosh downward ldbl-96-intel -0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh tonearest ldbl-96-intel -0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh towardzero ldbl-96-intel -0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh upward ldbl-96-intel -0x2.c5e3bp+8L : 0x8.e6960966c8d230cp+1020L : inexact-ok
+= cosh downward ldbl-96-m68k -0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh tonearest ldbl-96-m68k -0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh towardzero ldbl-96-m68k -0x2.c5e3bp+8L : 0x8.e6960966c8d230bp+1020L : inexact-ok
+= cosh upward ldbl-96-m68k -0x2.c5e3bp+8L : 0x8.e6960966c8d230cp+1020L : inexact-ok
+= cosh downward ldbl-128 -0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b878p+1020L : inexact-ok
+= cosh tonearest ldbl-128 -0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b88p+1020L : inexact-ok
+= cosh towardzero ldbl-128 -0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b878p+1020L : inexact-ok
+= cosh upward ldbl-128 -0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b88p+1020L : inexact-ok
+= cosh downward ldbl-128ibm -0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b8p+1020L : inexact-ok
+= cosh tonearest ldbl-128ibm -0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b8p+1020L : inexact-ok
+= cosh towardzero ldbl-128ibm -0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4b8p+1020L : inexact-ok
+= cosh upward ldbl-128ibm -0x2.c5e3bp+8L : 0x8.e6960966c8d230b719596be4bcp+1020L : inexact-ok
+= cosh downward dbl-64 -0x2.c5e3acd2922a6p+8 : 0x8.e679c177a00b8p+1020 : inexact-ok
+= cosh tonearest dbl-64 -0x2.c5e3acd2922a6p+8 : 0x8.e679c177a00cp+1020 : inexact-ok
+= cosh towardzero dbl-64 -0x2.c5e3acd2922a6p+8 : 0x8.e679c177a00b8p+1020 : inexact-ok
+= cosh upward dbl-64 -0x2.c5e3acd2922a6p+8 : 0x8.e679c177a00cp+1020 : inexact-ok
+= cosh downward ldbl-96-intel -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5p+1020L : inexact-ok
+= cosh tonearest ldbl-96-intel -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb6p+1020L : inexact-ok
+= cosh towardzero ldbl-96-intel -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5p+1020L : inexact-ok
+= cosh upward ldbl-96-intel -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb6p+1020L : inexact-ok
+= cosh downward ldbl-96-m68k -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5p+1020L : inexact-ok
+= cosh tonearest ldbl-96-m68k -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb6p+1020L : inexact-ok
+= cosh towardzero ldbl-96-m68k -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5p+1020L : inexact-ok
+= cosh upward ldbl-96-m68k -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb6p+1020L : inexact-ok
+= cosh downward ldbl-128 -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b5868p+1020L : inexact-ok
+= cosh tonearest ldbl-128 -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b5868p+1020L : inexact-ok
+= cosh towardzero ldbl-128 -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b5868p+1020L : inexact-ok
+= cosh upward ldbl-128 -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b587p+1020L : inexact-ok
+= cosh downward ldbl-128ibm -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b58p+1020L : inexact-ok
+= cosh tonearest ldbl-128ibm -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b58p+1020L : inexact-ok
+= cosh towardzero ldbl-128ibm -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b58p+1020L : inexact-ok
+= cosh upward ldbl-128ibm -0x2.c5e3acd2922a6p+8L : 0x8.e679c177a00bfb5aec6fa96b5cp+1020L : inexact-ok
+cosh 22
+= cosh downward flt-32 0x1.6p+4f : 0x6.ad6b68p+28f : inexact-ok
+= cosh tonearest flt-32 0x1.6p+4f : 0x6.ad6b7p+28f : inexact-ok
+= cosh towardzero flt-32 0x1.6p+4f : 0x6.ad6b68p+28f : inexact-ok
+= cosh upward flt-32 0x1.6p+4f : 0x6.ad6b7p+28f : inexact-ok
+= cosh downward dbl-64 0x1.6p+4 : 0x6.ad6b6e710d7fcp+28 : inexact-ok
+= cosh tonearest dbl-64 0x1.6p+4 : 0x6.ad6b6e710d8p+28 : inexact-ok
+= cosh towardzero dbl-64 0x1.6p+4 : 0x6.ad6b6e710d7fcp+28 : inexact-ok
+= cosh upward dbl-64 0x1.6p+4 : 0x6.ad6b6e710d8p+28 : inexact-ok
+= cosh downward ldbl-96-intel 0x1.6p+4L : 0x6.ad6b6e710d7fe078p+28L : inexact-ok
+= cosh tonearest ldbl-96-intel 0x1.6p+4L : 0x6.ad6b6e710d7fe078p+28L : inexact-ok
+= cosh towardzero ldbl-96-intel 0x1.6p+4L : 0x6.ad6b6e710d7fe078p+28L : inexact-ok
+= cosh upward ldbl-96-intel 0x1.6p+4L : 0x6.ad6b6e710d7fe08p+28L : inexact-ok
+= cosh downward ldbl-96-m68k 0x1.6p+4L : 0x6.ad6b6e710d7fe078p+28L : inexact-ok
+= cosh tonearest ldbl-96-m68k 0x1.6p+4L : 0x6.ad6b6e710d7fe078p+28L : inexact-ok
+= cosh towardzero ldbl-96-m68k 0x1.6p+4L : 0x6.ad6b6e710d7fe078p+28L : inexact-ok
+= cosh upward ldbl-96-m68k 0x1.6p+4L : 0x6.ad6b6e710d7fe08p+28L : inexact-ok
+= cosh downward ldbl-128 0x1.6p+4L : 0x6.ad6b6e710d7fe07862bf28dca0ap+28L : inexact-ok
+= cosh tonearest ldbl-128 0x1.6p+4L : 0x6.ad6b6e710d7fe07862bf28dca0a4p+28L : inexact-ok
+= cosh towardzero ldbl-128 0x1.6p+4L : 0x6.ad6b6e710d7fe07862bf28dca0ap+28L : inexact-ok
+= cosh upward ldbl-128 0x1.6p+4L : 0x6.ad6b6e710d7fe07862bf28dca0a4p+28L : inexact-ok
+= cosh downward ldbl-128ibm 0x1.6p+4L : 0x6.ad6b6e710d7fe07862bf28dcap+28L : inexact-ok
+= cosh tonearest ldbl-128ibm 0x1.6p+4L : 0x6.ad6b6e710d7fe07862bf28dcap+28L : inexact-ok
+= cosh towardzero ldbl-128ibm 0x1.6p+4L : 0x6.ad6b6e710d7fe07862bf28dcap+28L : inexact-ok
+= cosh upward ldbl-128ibm 0x1.6p+4L : 0x6.ad6b6e710d7fe07862bf28dca2p+28L : inexact-ok
+cosh 23
+= cosh downward flt-32 0x1.7p+4f : 0x1.226af2p+32f : inexact-ok
+= cosh tonearest flt-32 0x1.7p+4f : 0x1.226af4p+32f : inexact-ok
+= cosh towardzero flt-32 0x1.7p+4f : 0x1.226af2p+32f : inexact-ok
+= cosh upward flt-32 0x1.7p+4f : 0x1.226af4p+32f : inexact-ok
+= cosh downward dbl-64 0x1.7p+4 : 0x1.226af33b1fdcp+32 : inexact-ok
+= cosh tonearest dbl-64 0x1.7p+4 : 0x1.226af33b1fdc1p+32 : inexact-ok
+= cosh towardzero dbl-64 0x1.7p+4 : 0x1.226af33b1fdcp+32 : inexact-ok
+= cosh upward dbl-64 0x1.7p+4 : 0x1.226af33b1fdc1p+32 : inexact-ok
+= cosh downward ldbl-96-intel 0x1.7p+4L : 0x1.226af33b1fdc0a56p+32L : inexact-ok
+= cosh tonearest ldbl-96-intel 0x1.7p+4L : 0x1.226af33b1fdc0a58p+32L : inexact-ok
+= cosh towardzero ldbl-96-intel 0x1.7p+4L : 0x1.226af33b1fdc0a56p+32L : inexact-ok
+= cosh upward ldbl-96-intel 0x1.7p+4L : 0x1.226af33b1fdc0a58p+32L : inexact-ok
+= cosh downward ldbl-96-m68k 0x1.7p+4L : 0x1.226af33b1fdc0a56p+32L : inexact-ok
+= cosh tonearest ldbl-96-m68k 0x1.7p+4L : 0x1.226af33b1fdc0a58p+32L : inexact-ok
+= cosh towardzero ldbl-96-m68k 0x1.7p+4L : 0x1.226af33b1fdc0a56p+32L : inexact-ok
+= cosh upward ldbl-96-m68k 0x1.7p+4L : 0x1.226af33b1fdc0a58p+32L : inexact-ok
+= cosh downward ldbl-128 0x1.7p+4L : 0x1.226af33b1fdc0a57bd4b4ab2311bp+32L : inexact-ok
+= cosh tonearest ldbl-128 0x1.7p+4L : 0x1.226af33b1fdc0a57bd4b4ab2311bp+32L : inexact-ok
+= cosh towardzero ldbl-128 0x1.7p+4L : 0x1.226af33b1fdc0a57bd4b4ab2311bp+32L : inexact-ok
+= cosh upward ldbl-128 0x1.7p+4L : 0x1.226af33b1fdc0a57bd4b4ab2311cp+32L : inexact-ok
+= cosh downward ldbl-128ibm 0x1.7p+4L : 0x1.226af33b1fdc0a57bd4b4ab231p+32L : inexact-ok
+= cosh tonearest ldbl-128ibm 0x1.7p+4L : 0x1.226af33b1fdc0a57bd4b4ab231p+32L : inexact-ok
+= cosh towardzero ldbl-128ibm 0x1.7p+4L : 0x1.226af33b1fdc0a57bd4b4ab231p+32L : inexact-ok
+= cosh upward ldbl-128ibm 0x1.7p+4L : 0x1.226af33b1fdc0a57bd4b4ab2318p+32L : inexact-ok
+cosh 24
+= cosh downward flt-32 0x1.8p+4f : 0x3.156ff4p+32f : inexact-ok
+= cosh tonearest flt-32 0x1.8p+4f : 0x3.156ff8p+32f : inexact-ok
+= cosh towardzero flt-32 0x1.8p+4f : 0x3.156ff4p+32f : inexact-ok
+= cosh upward flt-32 0x1.8p+4f : 0x3.156ff8p+32f : inexact-ok
+= cosh downward dbl-64 0x1.8p+4 : 0x3.156ff6a8ebf6ep+32 : inexact-ok
+= cosh tonearest dbl-64 0x1.8p+4 : 0x3.156ff6a8ebf6ep+32 : inexact-ok
+= cosh towardzero dbl-64 0x1.8p+4 : 0x3.156ff6a8ebf6ep+32 : inexact-ok
+= cosh upward dbl-64 0x1.8p+4 : 0x3.156ff6a8ebf7p+32 : inexact-ok
+= cosh downward ldbl-96-intel 0x1.8p+4L : 0x3.156ff6a8ebf6e66cp+32L : inexact-ok
+= cosh tonearest ldbl-96-intel 0x1.8p+4L : 0x3.156ff6a8ebf6e67p+32L : inexact-ok
+= cosh towardzero ldbl-96-intel 0x1.8p+4L : 0x3.156ff6a8ebf6e66cp+32L : inexact-ok
+= cosh upward ldbl-96-intel 0x1.8p+4L : 0x3.156ff6a8ebf6e67p+32L : inexact-ok
+= cosh downward ldbl-96-m68k 0x1.8p+4L : 0x3.156ff6a8ebf6e66cp+32L : inexact-ok
+= cosh tonearest ldbl-96-m68k 0x1.8p+4L : 0x3.156ff6a8ebf6e67p+32L : inexact-ok
+= cosh towardzero ldbl-96-m68k 0x1.8p+4L : 0x3.156ff6a8ebf6e66cp+32L : inexact-ok
+= cosh upward ldbl-96-m68k 0x1.8p+4L : 0x3.156ff6a8ebf6e67p+32L : inexact-ok
+= cosh downward ldbl-128 0x1.8p+4L : 0x3.156ff6a8ebf6e66f4935281c5faep+32L : inexact-ok
+= cosh tonearest ldbl-128 0x1.8p+4L : 0x3.156ff6a8ebf6e66f4935281c5fbp+32L : inexact-ok
+= cosh towardzero ldbl-128 0x1.8p+4L : 0x3.156ff6a8ebf6e66f4935281c5faep+32L : inexact-ok
+= cosh upward ldbl-128 0x1.8p+4L : 0x3.156ff6a8ebf6e66f4935281c5fbp+32L : inexact-ok
+= cosh downward ldbl-128ibm 0x1.8p+4L : 0x3.156ff6a8ebf6e66f4935281c5fp+32L : inexact-ok
+= cosh tonearest ldbl-128ibm 0x1.8p+4L : 0x3.156ff6a8ebf6e66f4935281c6p+32L : inexact-ok
+= cosh towardzero ldbl-128ibm 0x1.8p+4L : 0x3.156ff6a8ebf6e66f4935281c5fp+32L : inexact-ok
+= cosh upward ldbl-128ibm 0x1.8p+4L : 0x3.156ff6a8ebf6e66f4935281c6p+32L : inexact-ok
+erf 0
+= erf downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= erf tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= erf towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= erf upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= erf downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= erf tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= erf towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= erf upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= erf downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= erf tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= erf towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= erf upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= erf downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= erf tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= erf towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= erf upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= erf downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= erf tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= erf towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= erf upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= erf downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= erf tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= erf towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= erf upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+erf -0
+= erf downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= erf tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= erf towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= erf upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= erf downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= erf tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= erf towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= erf upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= erf downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= erf tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= erf towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= erf upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= erf downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= erf tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= erf towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= erf upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= erf downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= erf tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= erf towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= erf upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= erf downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= erf tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= erf towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= erf upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+erf 0.125
+= erf downward flt-32 0x2p-4f : 0x2.3ebc34p-4f : inexact-ok
+= erf tonearest flt-32 0x2p-4f : 0x2.3ebc34p-4f : inexact-ok
+= erf towardzero flt-32 0x2p-4f : 0x2.3ebc34p-4f : inexact-ok
+= erf upward flt-32 0x2p-4f : 0x2.3ebc38p-4f : inexact-ok
+= erf downward dbl-64 0x2p-4 : 0x2.3ebc346b87712p-4 : inexact-ok
+= erf tonearest dbl-64 0x2p-4 : 0x2.3ebc346b87712p-4 : inexact-ok
+= erf towardzero dbl-64 0x2p-4 : 0x2.3ebc346b87712p-4 : inexact-ok
+= erf upward dbl-64 0x2p-4 : 0x2.3ebc346b87714p-4 : inexact-ok
+= erf downward ldbl-96-intel 0x2p-4L : 0x2.3ebc346b87712e84p-4L : inexact-ok
+= erf tonearest ldbl-96-intel 0x2p-4L : 0x2.3ebc346b87712e84p-4L : inexact-ok
+= erf towardzero ldbl-96-intel 0x2p-4L : 0x2.3ebc346b87712e84p-4L : inexact-ok
+= erf upward ldbl-96-intel 0x2p-4L : 0x2.3ebc346b87712e88p-4L : inexact-ok
+= erf downward ldbl-96-m68k 0x2p-4L : 0x2.3ebc346b87712e84p-4L : inexact-ok
+= erf tonearest ldbl-96-m68k 0x2p-4L : 0x2.3ebc346b87712e84p-4L : inexact-ok
+= erf towardzero ldbl-96-m68k 0x2p-4L : 0x2.3ebc346b87712e84p-4L : inexact-ok
+= erf upward ldbl-96-m68k 0x2p-4L : 0x2.3ebc346b87712e88p-4L : inexact-ok
+= erf downward ldbl-128 0x2p-4L : 0x2.3ebc346b87712e85b6b249f079ep-4L : inexact-ok
+= erf tonearest ldbl-128 0x2p-4L : 0x2.3ebc346b87712e85b6b249f079e2p-4L : inexact-ok
+= erf towardzero ldbl-128 0x2p-4L : 0x2.3ebc346b87712e85b6b249f079ep-4L : inexact-ok
+= erf upward ldbl-128 0x2p-4L : 0x2.3ebc346b87712e85b6b249f079e2p-4L : inexact-ok
+= erf downward ldbl-128ibm 0x2p-4L : 0x2.3ebc346b87712e85b6b249f079p-4L : inexact-ok
+= erf tonearest ldbl-128ibm 0x2p-4L : 0x2.3ebc346b87712e85b6b249f07ap-4L : inexact-ok
+= erf towardzero ldbl-128ibm 0x2p-4L : 0x2.3ebc346b87712e85b6b249f079p-4L : inexact-ok
+= erf upward ldbl-128ibm 0x2p-4L : 0x2.3ebc346b87712e85b6b249f07ap-4L : inexact-ok
+erf 0.75
+= erf downward flt-32 0xcp-4f : 0xb.60e4bp-4f : inexact-ok
+= erf tonearest flt-32 0xcp-4f : 0xb.60e4cp-4f : inexact-ok
+= erf towardzero flt-32 0xcp-4f : 0xb.60e4bp-4f : inexact-ok
+= erf upward flt-32 0xcp-4f : 0xb.60e4cp-4f : inexact-ok
+= erf downward dbl-64 0xcp-4 : 0xb.60e4bace872f8p-4 : inexact-ok
+= erf tonearest dbl-64 0xcp-4 : 0xb.60e4bace872f8p-4 : inexact-ok
+= erf towardzero dbl-64 0xcp-4 : 0xb.60e4bace872f8p-4 : inexact-ok
+= erf upward dbl-64 0xcp-4 : 0xb.60e4bace873p-4 : inexact-ok
+= erf downward ldbl-96-intel 0xcp-4L : 0xb.60e4bace872fb62p-4L : inexact-ok
+= erf tonearest ldbl-96-intel 0xcp-4L : 0xb.60e4bace872fb63p-4L : inexact-ok
+= erf towardzero ldbl-96-intel 0xcp-4L : 0xb.60e4bace872fb62p-4L : inexact-ok
+= erf upward ldbl-96-intel 0xcp-4L : 0xb.60e4bace872fb63p-4L : inexact-ok
+= erf downward ldbl-96-m68k 0xcp-4L : 0xb.60e4bace872fb62p-4L : inexact-ok
+= erf tonearest ldbl-96-m68k 0xcp-4L : 0xb.60e4bace872fb63p-4L : inexact-ok
+= erf towardzero ldbl-96-m68k 0xcp-4L : 0xb.60e4bace872fb62p-4L : inexact-ok
+= erf upward ldbl-96-m68k 0xcp-4L : 0xb.60e4bace872fb63p-4L : inexact-ok
+= erf downward ldbl-128 0xcp-4L : 0xb.60e4bace872fb62865e59788aa68p-4L : inexact-ok
+= erf tonearest ldbl-128 0xcp-4L : 0xb.60e4bace872fb62865e59788aa7p-4L : inexact-ok
+= erf towardzero ldbl-128 0xcp-4L : 0xb.60e4bace872fb62865e59788aa68p-4L : inexact-ok
+= erf upward ldbl-128 0xcp-4L : 0xb.60e4bace872fb62865e59788aa7p-4L : inexact-ok
+= erf downward ldbl-128ibm 0xcp-4L : 0xb.60e4bace872fb62865e59788a8p-4L : inexact-ok
+= erf tonearest ldbl-128ibm 0xcp-4L : 0xb.60e4bace872fb62865e59788acp-4L : inexact-ok
+= erf towardzero ldbl-128ibm 0xcp-4L : 0xb.60e4bace872fb62865e59788a8p-4L : inexact-ok
+= erf upward ldbl-128ibm 0xcp-4L : 0xb.60e4bace872fb62865e59788acp-4L : inexact-ok
+erf 1.25
+= erf downward flt-32 0x1.4p+0f : 0xe.c432ep-4f : inexact-ok
+= erf tonearest flt-32 0x1.4p+0f : 0xe.c432fp-4f : inexact-ok
+= erf towardzero flt-32 0x1.4p+0f : 0xe.c432ep-4f : inexact-ok
+= erf upward flt-32 0x1.4p+0f : 0xe.c432fp-4f : inexact-ok
+= erf downward dbl-64 0x1.4p+0 : 0xe.c432ecc55fp-4 : inexact-ok
+= erf tonearest dbl-64 0x1.4p+0 : 0xe.c432ecc55f008p-4 : inexact-ok
+= erf towardzero dbl-64 0x1.4p+0 : 0xe.c432ecc55fp-4 : inexact-ok
+= erf upward dbl-64 0x1.4p+0 : 0xe.c432ecc55f008p-4 : inexact-ok
+= erf downward ldbl-96-intel 0x1.4p+0L : 0xe.c432ecc55f00406p-4L : inexact-ok
+= erf tonearest ldbl-96-intel 0x1.4p+0L : 0xe.c432ecc55f00406p-4L : inexact-ok
+= erf towardzero ldbl-96-intel 0x1.4p+0L : 0xe.c432ecc55f00406p-4L : inexact-ok
+= erf upward ldbl-96-intel 0x1.4p+0L : 0xe.c432ecc55f00407p-4L : inexact-ok
+= erf downward ldbl-96-m68k 0x1.4p+0L : 0xe.c432ecc55f00406p-4L : inexact-ok
+= erf tonearest ldbl-96-m68k 0x1.4p+0L : 0xe.c432ecc55f00406p-4L : inexact-ok
+= erf towardzero ldbl-96-m68k 0x1.4p+0L : 0xe.c432ecc55f00406p-4L : inexact-ok
+= erf upward ldbl-96-m68k 0x1.4p+0L : 0xe.c432ecc55f00407p-4L : inexact-ok
+= erf downward ldbl-128 0x1.4p+0L : 0xe.c432ecc55f00406276a08d164e28p-4L : inexact-ok
+= erf tonearest ldbl-128 0x1.4p+0L : 0xe.c432ecc55f00406276a08d164e3p-4L : inexact-ok
+= erf towardzero ldbl-128 0x1.4p+0L : 0xe.c432ecc55f00406276a08d164e28p-4L : inexact-ok
+= erf upward ldbl-128 0x1.4p+0L : 0xe.c432ecc55f00406276a08d164e3p-4L : inexact-ok
+= erf downward ldbl-128ibm 0x1.4p+0L : 0xe.c432ecc55f00406276a08d164cp-4L : inexact-ok
+= erf tonearest ldbl-128ibm 0x1.4p+0L : 0xe.c432ecc55f00406276a08d165p-4L : inexact-ok
+= erf towardzero ldbl-128ibm 0x1.4p+0L : 0xe.c432ecc55f00406276a08d164cp-4L : inexact-ok
+= erf upward ldbl-128ibm 0x1.4p+0L : 0xe.c432ecc55f00406276a08d165p-4L : inexact-ok
+erf 2.0
+= erf downward flt-32 0x2p+0f : 0xf.ecd7p-4f : inexact-ok
+= erf tonearest flt-32 0x2p+0f : 0xf.ecd71p-4f : inexact-ok
+= erf towardzero flt-32 0x2p+0f : 0xf.ecd7p-4f : inexact-ok
+= erf upward flt-32 0x2p+0f : 0xf.ecd71p-4f : inexact-ok
+= erf downward dbl-64 0x2p+0 : 0xf.ecd70a13caf18p-4 : inexact-ok
+= erf tonearest dbl-64 0x2p+0 : 0xf.ecd70a13caf18p-4 : inexact-ok
+= erf towardzero dbl-64 0x2p+0 : 0xf.ecd70a13caf18p-4 : inexact-ok
+= erf upward dbl-64 0x2p+0 : 0xf.ecd70a13caf2p-4 : inexact-ok
+= erf downward ldbl-96-intel 0x2p+0L : 0xf.ecd70a13caf1997p-4L : inexact-ok
+= erf tonearest ldbl-96-intel 0x2p+0L : 0xf.ecd70a13caf1997p-4L : inexact-ok
+= erf towardzero ldbl-96-intel 0x2p+0L : 0xf.ecd70a13caf1997p-4L : inexact-ok
+= erf upward ldbl-96-intel 0x2p+0L : 0xf.ecd70a13caf1998p-4L : inexact-ok
+= erf downward ldbl-96-m68k 0x2p+0L : 0xf.ecd70a13caf1997p-4L : inexact-ok
+= erf tonearest ldbl-96-m68k 0x2p+0L : 0xf.ecd70a13caf1997p-4L : inexact-ok
+= erf towardzero ldbl-96-m68k 0x2p+0L : 0xf.ecd70a13caf1997p-4L : inexact-ok
+= erf upward ldbl-96-m68k 0x2p+0L : 0xf.ecd70a13caf1998p-4L : inexact-ok
+= erf downward ldbl-128 0x2p+0L : 0xf.ecd70a13caf19972801904b9a338p-4L : inexact-ok
+= erf tonearest ldbl-128 0x2p+0L : 0xf.ecd70a13caf19972801904b9a34p-4L : inexact-ok
+= erf towardzero ldbl-128 0x2p+0L : 0xf.ecd70a13caf19972801904b9a338p-4L : inexact-ok
+= erf upward ldbl-128 0x2p+0L : 0xf.ecd70a13caf19972801904b9a34p-4L : inexact-ok
+= erf downward ldbl-128ibm 0x2p+0L : 0xf.ecd70a13caf19972801904b9ap-4L : inexact-ok
+= erf tonearest ldbl-128ibm 0x2p+0L : 0xf.ecd70a13caf19972801904b9a4p-4L : inexact-ok
+= erf towardzero ldbl-128ibm 0x2p+0L : 0xf.ecd70a13caf19972801904b9ap-4L : inexact-ok
+= erf upward ldbl-128ibm 0x2p+0L : 0xf.ecd70a13caf19972801904b9a4p-4L : inexact-ok
+erf 4.125
+= erf downward flt-32 0x4.2p+0f : 0xf.fffffp-4f : inexact-ok
+= erf tonearest flt-32 0x4.2p+0f : 0x1p+0f : inexact-ok
+= erf towardzero flt-32 0x4.2p+0f : 0xf.fffffp-4f : inexact-ok
+= erf upward flt-32 0x4.2p+0f : 0x1p+0f : inexact-ok
+= erf downward dbl-64 0x4.2p+0 : 0xf.fffffe8b4e86p-4 : inexact-ok
+= erf tonearest dbl-64 0x4.2p+0 : 0xf.fffffe8b4e86p-4 : inexact-ok
+= erf towardzero dbl-64 0x4.2p+0 : 0xf.fffffe8b4e86p-4 : inexact-ok
+= erf upward dbl-64 0x4.2p+0 : 0xf.fffffe8b4e868p-4 : inexact-ok
+= erf downward ldbl-96-intel 0x4.2p+0L : 0xf.fffffe8b4e862e1p-4L : inexact-ok
+= erf tonearest ldbl-96-intel 0x4.2p+0L : 0xf.fffffe8b4e862e1p-4L : inexact-ok
+= erf towardzero ldbl-96-intel 0x4.2p+0L : 0xf.fffffe8b4e862e1p-4L : inexact-ok
+= erf upward ldbl-96-intel 0x4.2p+0L : 0xf.fffffe8b4e862e2p-4L : inexact-ok
+= erf downward ldbl-96-m68k 0x4.2p+0L : 0xf.fffffe8b4e862e1p-4L : inexact-ok
+= erf tonearest ldbl-96-m68k 0x4.2p+0L : 0xf.fffffe8b4e862e1p-4L : inexact-ok
+= erf towardzero ldbl-96-m68k 0x4.2p+0L : 0xf.fffffe8b4e862e1p-4L : inexact-ok
+= erf upward ldbl-96-m68k 0x4.2p+0L : 0xf.fffffe8b4e862e2p-4L : inexact-ok
+= erf downward ldbl-128 0x4.2p+0L : 0xf.fffffe8b4e862e1457f60d1cddd8p-4L : inexact-ok
+= erf tonearest ldbl-128 0x4.2p+0L : 0xf.fffffe8b4e862e1457f60d1cddd8p-4L : inexact-ok
+= erf towardzero ldbl-128 0x4.2p+0L : 0xf.fffffe8b4e862e1457f60d1cddd8p-4L : inexact-ok
+= erf upward ldbl-128 0x4.2p+0L : 0xf.fffffe8b4e862e1457f60d1cddep-4L : inexact-ok
+= erf downward ldbl-128ibm 0x4.2p+0L : 0xf.fffffe8b4e862e1457f60d1cdcp-4L : inexact-ok
+= erf tonearest ldbl-128ibm 0x4.2p+0L : 0xf.fffffe8b4e862e1457f60d1cdcp-4L : inexact-ok
+= erf towardzero ldbl-128ibm 0x4.2p+0L : 0xf.fffffe8b4e862e1457f60d1cdcp-4L : inexact-ok
+= erf upward ldbl-128ibm 0x4.2p+0L : 0xf.fffffe8b4e862e1457f60d1cep-4L : inexact-ok
+erf 27.0
+= erf downward flt-32 0x1.bp+4f : 0xf.fffffp-4f : inexact-ok
+= erf tonearest flt-32 0x1.bp+4f : 0x1p+0f : inexact-ok
+= erf towardzero flt-32 0x1.bp+4f : 0xf.fffffp-4f : inexact-ok
+= erf upward flt-32 0x1.bp+4f : 0x1p+0f : inexact-ok
+= erf downward dbl-64 0x1.bp+4 : 0xf.ffffffffffff8p-4 : inexact-ok
+= erf tonearest dbl-64 0x1.bp+4 : 0x1p+0 : inexact-ok
+= erf towardzero dbl-64 0x1.bp+4 : 0xf.ffffffffffff8p-4 : inexact-ok
+= erf upward dbl-64 0x1.bp+4 : 0x1p+0 : inexact-ok
+= erf downward ldbl-96-intel 0x1.bp+4L : 0xf.fffffffffffffffp-4L : inexact-ok
+= erf tonearest ldbl-96-intel 0x1.bp+4L : 0x1p+0L : inexact-ok
+= erf towardzero ldbl-96-intel 0x1.bp+4L : 0xf.fffffffffffffffp-4L : inexact-ok
+= erf upward ldbl-96-intel 0x1.bp+4L : 0x1p+0L : inexact-ok
+= erf downward ldbl-96-m68k 0x1.bp+4L : 0xf.fffffffffffffffp-4L : inexact-ok
+= erf tonearest ldbl-96-m68k 0x1.bp+4L : 0x1p+0L : inexact-ok
+= erf towardzero ldbl-96-m68k 0x1.bp+4L : 0xf.fffffffffffffffp-4L : inexact-ok
+= erf upward ldbl-96-m68k 0x1.bp+4L : 0x1p+0L : inexact-ok
+= erf downward ldbl-128 0x1.bp+4L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= erf tonearest ldbl-128 0x1.bp+4L : 0x1p+0L : inexact-ok
+= erf towardzero ldbl-128 0x1.bp+4L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= erf upward ldbl-128 0x1.bp+4L : 0x1p+0L : inexact-ok
+= erf downward ldbl-128ibm 0x1.bp+4L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= erf tonearest ldbl-128ibm 0x1.bp+4L : 0x1p+0L : inexact-ok
+= erf towardzero ldbl-128ibm 0x1.bp+4L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= erf upward ldbl-128ibm 0x1.bp+4L : 0x1p+0L : inexact-ok
+erf -27.0
+= erf downward flt-32 -0x1.bp+4f : -0x1p+0f : inexact-ok
+= erf tonearest flt-32 -0x1.bp+4f : -0x1p+0f : inexact-ok
+= erf towardzero flt-32 -0x1.bp+4f : -0xf.fffffp-4f : inexact-ok
+= erf upward flt-32 -0x1.bp+4f : -0xf.fffffp-4f : inexact-ok
+= erf downward dbl-64 -0x1.bp+4 : -0x1p+0 : inexact-ok
+= erf tonearest dbl-64 -0x1.bp+4 : -0x1p+0 : inexact-ok
+= erf towardzero dbl-64 -0x1.bp+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= erf upward dbl-64 -0x1.bp+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= erf downward ldbl-96-intel -0x1.bp+4L : -0x1p+0L : inexact-ok
+= erf tonearest ldbl-96-intel -0x1.bp+4L : -0x1p+0L : inexact-ok
+= erf towardzero ldbl-96-intel -0x1.bp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= erf upward ldbl-96-intel -0x1.bp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= erf downward ldbl-96-m68k -0x1.bp+4L : -0x1p+0L : inexact-ok
+= erf tonearest ldbl-96-m68k -0x1.bp+4L : -0x1p+0L : inexact-ok
+= erf towardzero ldbl-96-m68k -0x1.bp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= erf upward ldbl-96-m68k -0x1.bp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= erf downward ldbl-128 -0x1.bp+4L : -0x1p+0L : inexact-ok
+= erf tonearest ldbl-128 -0x1.bp+4L : -0x1p+0L : inexact-ok
+= erf towardzero ldbl-128 -0x1.bp+4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= erf upward ldbl-128 -0x1.bp+4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= erf downward ldbl-128ibm -0x1.bp+4L : -0x1p+0L : inexact-ok
+= erf tonearest ldbl-128ibm -0x1.bp+4L : -0x1p+0L : inexact-ok
+= erf towardzero ldbl-128ibm -0x1.bp+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= erf upward ldbl-128ibm -0x1.bp+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+erf -0x1.fffffffffffff8p-2
+= erf downward flt-32 -0x7.fffff8p-4f : -0x8.53f7bp-4f : inexact-ok
+= erf tonearest flt-32 -0x7.fffff8p-4f : -0x8.53f7ap-4f : inexact-ok
+= erf towardzero flt-32 -0x7.fffff8p-4f : -0x8.53f7ap-4f : inexact-ok
+= erf upward flt-32 -0x7.fffff8p-4f : -0x8.53f7ap-4f : inexact-ok
+= erf downward dbl-64 -0x7.fffff8p-4 : -0x8.53f7a704b7be8p-4 : inexact-ok
+= erf tonearest dbl-64 -0x7.fffff8p-4 : -0x8.53f7a704b7bep-4 : inexact-ok
+= erf towardzero dbl-64 -0x7.fffff8p-4 : -0x8.53f7a704b7bep-4 : inexact-ok
+= erf upward dbl-64 -0x7.fffff8p-4 : -0x8.53f7a704b7bep-4 : inexact-ok
+= erf downward ldbl-96-intel -0x7.fffff8p-4L : -0x8.53f7a704b7be2d7p-4L : inexact-ok
+= erf tonearest ldbl-96-intel -0x7.fffff8p-4L : -0x8.53f7a704b7be2d6p-4L : inexact-ok
+= erf towardzero ldbl-96-intel -0x7.fffff8p-4L : -0x8.53f7a704b7be2d6p-4L : inexact-ok
+= erf upward ldbl-96-intel -0x7.fffff8p-4L : -0x8.53f7a704b7be2d6p-4L : inexact-ok
+= erf downward ldbl-96-m68k -0x7.fffff8p-4L : -0x8.53f7a704b7be2d7p-4L : inexact-ok
+= erf tonearest ldbl-96-m68k -0x7.fffff8p-4L : -0x8.53f7a704b7be2d6p-4L : inexact-ok
+= erf towardzero ldbl-96-m68k -0x7.fffff8p-4L : -0x8.53f7a704b7be2d6p-4L : inexact-ok
+= erf upward ldbl-96-m68k -0x7.fffff8p-4L : -0x8.53f7a704b7be2d6p-4L : inexact-ok
+= erf downward ldbl-128 -0x7.fffff8p-4L : -0x8.53f7a704b7be2d643b9e3ae3cbp-4L : inexact-ok
+= erf tonearest ldbl-128 -0x7.fffff8p-4L : -0x8.53f7a704b7be2d643b9e3ae3cbp-4L : inexact-ok
+= erf towardzero ldbl-128 -0x7.fffff8p-4L : -0x8.53f7a704b7be2d643b9e3ae3caf8p-4L : inexact-ok
+= erf upward ldbl-128 -0x7.fffff8p-4L : -0x8.53f7a704b7be2d643b9e3ae3caf8p-4L : inexact-ok
+= erf downward ldbl-128ibm -0x7.fffff8p-4L : -0x8.53f7a704b7be2d643b9e3ae3ccp-4L : inexact-ok
+= erf tonearest ldbl-128ibm -0x7.fffff8p-4L : -0x8.53f7a704b7be2d643b9e3ae3ccp-4L : inexact-ok
+= erf towardzero ldbl-128ibm -0x7.fffff8p-4L : -0x8.53f7a704b7be2d643b9e3ae3c8p-4L : inexact-ok
+= erf upward ldbl-128ibm -0x7.fffff8p-4L : -0x8.53f7a704b7be2d643b9e3ae3c8p-4L : inexact-ok
+= erf downward flt-32 -0x8p-4f : -0x8.53f7bp-4f : inexact-ok
+= erf tonearest flt-32 -0x8p-4f : -0x8.53f7bp-4f : inexact-ok
+= erf towardzero flt-32 -0x8p-4f : -0x8.53f7ap-4f : inexact-ok
+= erf upward flt-32 -0x8p-4f : -0x8.53f7ap-4f : inexact-ok
+= erf downward dbl-64 -0x8p-4 : -0x8.53f7ae0c76e98p-4 : inexact-ok
+= erf tonearest dbl-64 -0x8p-4 : -0x8.53f7ae0c76e9p-4 : inexact-ok
+= erf towardzero dbl-64 -0x8p-4 : -0x8.53f7ae0c76e9p-4 : inexact-ok
+= erf upward dbl-64 -0x8p-4 : -0x8.53f7ae0c76e9p-4 : inexact-ok
+= erf downward ldbl-96-intel -0x8p-4L : -0x8.53f7ae0c76e915fp-4L : inexact-ok
+= erf tonearest ldbl-96-intel -0x8p-4L : -0x8.53f7ae0c76e915fp-4L : inexact-ok
+= erf towardzero ldbl-96-intel -0x8p-4L : -0x8.53f7ae0c76e915ep-4L : inexact-ok
+= erf upward ldbl-96-intel -0x8p-4L : -0x8.53f7ae0c76e915ep-4L : inexact-ok
+= erf downward ldbl-96-m68k -0x8p-4L : -0x8.53f7ae0c76e915fp-4L : inexact-ok
+= erf tonearest ldbl-96-m68k -0x8p-4L : -0x8.53f7ae0c76e915fp-4L : inexact-ok
+= erf towardzero ldbl-96-m68k -0x8p-4L : -0x8.53f7ae0c76e915ep-4L : inexact-ok
+= erf upward ldbl-96-m68k -0x8p-4L : -0x8.53f7ae0c76e915ep-4L : inexact-ok
+= erf downward ldbl-128 -0x8p-4L : -0x8.53f7ae0c76e915e809f1a31a27a8p-4L : inexact-ok
+= erf tonearest ldbl-128 -0x8p-4L : -0x8.53f7ae0c76e915e809f1a31a27a8p-4L : inexact-ok
+= erf towardzero ldbl-128 -0x8p-4L : -0x8.53f7ae0c76e915e809f1a31a27ap-4L : inexact-ok
+= erf upward ldbl-128 -0x8p-4L : -0x8.53f7ae0c76e915e809f1a31a27ap-4L : inexact-ok
+= erf downward ldbl-128ibm -0x8p-4L : -0x8.53f7ae0c76e915e809f1a31a28p-4L : inexact-ok
+= erf tonearest ldbl-128ibm -0x8p-4L : -0x8.53f7ae0c76e915e809f1a31a28p-4L : inexact-ok
+= erf towardzero ldbl-128ibm -0x8p-4L : -0x8.53f7ae0c76e915e809f1a31a24p-4L : inexact-ok
+= erf upward ldbl-128ibm -0x8p-4L : -0x8.53f7ae0c76e915e809f1a31a24p-4L : inexact-ok
+= erf downward dbl-64 -0x7.ffffffffffffcp-4 : -0x8.53f7ae0c76e9p-4 : inexact-ok
+= erf tonearest dbl-64 -0x7.ffffffffffffcp-4 : -0x8.53f7ae0c76e9p-4 : inexact-ok
+= erf towardzero dbl-64 -0x7.ffffffffffffcp-4 : -0x8.53f7ae0c76e88p-4 : inexact-ok
+= erf upward dbl-64 -0x7.ffffffffffffcp-4 : -0x8.53f7ae0c76e88p-4 : inexact-ok
+= erf downward ldbl-96-intel -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddbp-4L : inexact-ok
+= erf tonearest ldbl-96-intel -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddbp-4L : inexact-ok
+= erf towardzero ldbl-96-intel -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddap-4L : inexact-ok
+= erf upward ldbl-96-intel -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddap-4L : inexact-ok
+= erf downward ldbl-96-m68k -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddbp-4L : inexact-ok
+= erf tonearest ldbl-96-m68k -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddbp-4L : inexact-ok
+= erf towardzero ldbl-96-m68k -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddap-4L : inexact-ok
+= erf upward ldbl-96-m68k -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddap-4L : inexact-ok
+= erf downward ldbl-128 -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddaa10a86e7a0498p-4L : inexact-ok
+= erf tonearest ldbl-128 -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddaa10a86e7a049p-4L : inexact-ok
+= erf towardzero ldbl-128 -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddaa10a86e7a049p-4L : inexact-ok
+= erf upward ldbl-128 -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddaa10a86e7a049p-4L : inexact-ok
+= erf downward ldbl-128ibm -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddaa10a86e7a08p-4L : inexact-ok
+= erf tonearest ldbl-128ibm -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddaa10a86e7a04p-4L : inexact-ok
+= erf towardzero ldbl-128ibm -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddaa10a86e7a04p-4L : inexact-ok
+= erf upward ldbl-128ibm -0x7.ffffffffffffcp-4L : -0x8.53f7ae0c76e8ddaa10a86e7a04p-4L : inexact-ok
+= erf downward ldbl-96-intel -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9dp-4L : inexact-ok
+= erf tonearest ldbl-96-intel -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9dp-4L : inexact-ok
+= erf towardzero ldbl-96-intel -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9cp-4L : inexact-ok
+= erf upward ldbl-96-intel -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9cp-4L : inexact-ok
+= erf downward ldbl-96-m68k -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9dp-4L : inexact-ok
+= erf tonearest ldbl-96-m68k -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9dp-4L : inexact-ok
+= erf towardzero ldbl-96-m68k -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9cp-4L : inexact-ok
+= erf upward ldbl-96-m68k -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9cp-4L : inexact-ok
+= erf downward ldbl-128 -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9c90d4d08ca164p-4L : inexact-ok
+= erf tonearest ldbl-128 -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9c90d4d08ca1638p-4L : inexact-ok
+= erf towardzero ldbl-128 -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9c90d4d08ca1638p-4L : inexact-ok
+= erf upward ldbl-128 -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9c90d4d08ca1638p-4L : inexact-ok
+= erf downward ldbl-128ibm -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9c90d4d08ca18p-4L : inexact-ok
+= erf tonearest ldbl-128ibm -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9c90d4d08ca18p-4L : inexact-ok
+= erf towardzero ldbl-128ibm -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9c90d4d08ca14p-4L : inexact-ok
+= erf upward ldbl-128ibm -0x7.ffffffffffffep-4L : -0x8.53f7ae0c76e8f9c90d4d08ca14p-4L : inexact-ok
+erfc 0.0
+= erfc downward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= erfc tonearest flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= erfc towardzero flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= erfc upward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= erfc downward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= erfc tonearest dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= erfc towardzero dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= erfc upward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= erfc downward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc upward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc downward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc upward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc downward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc tonearest ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc towardzero ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc upward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc downward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= erfc upward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+erfc -0
+= erfc downward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= erfc tonearest flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= erfc towardzero flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= erfc upward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= erfc downward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= erfc tonearest dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= erfc towardzero dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= erfc upward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= erfc downward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc tonearest ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc towardzero ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc upward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc downward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc tonearest ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc towardzero ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc upward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc downward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc tonearest ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc towardzero ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc upward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc downward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc tonearest ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc towardzero ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= erfc upward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+erfc 0.125
+= erfc downward flt-32 0x2p-4f : 0xd.c143cp-4f : inexact-ok
+= erfc tonearest flt-32 0x2p-4f : 0xd.c143dp-4f : inexact-ok
+= erfc towardzero flt-32 0x2p-4f : 0xd.c143cp-4f : inexact-ok
+= erfc upward flt-32 0x2p-4f : 0xd.c143dp-4f : inexact-ok
+= erfc downward dbl-64 0x2p-4 : 0xd.c143cb94788e8p-4 : inexact-ok
+= erfc tonearest dbl-64 0x2p-4 : 0xd.c143cb94788fp-4 : inexact-ok
+= erfc towardzero dbl-64 0x2p-4 : 0xd.c143cb94788e8p-4 : inexact-ok
+= erfc upward dbl-64 0x2p-4 : 0xd.c143cb94788fp-4 : inexact-ok
+= erfc downward ldbl-96-intel 0x2p-4L : 0xd.c143cb94788ed17p-4L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x2p-4L : 0xd.c143cb94788ed18p-4L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x2p-4L : 0xd.c143cb94788ed17p-4L : inexact-ok
+= erfc upward ldbl-96-intel 0x2p-4L : 0xd.c143cb94788ed18p-4L : inexact-ok
+= erfc downward ldbl-96-m68k 0x2p-4L : 0xd.c143cb94788ed17p-4L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x2p-4L : 0xd.c143cb94788ed18p-4L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x2p-4L : 0xd.c143cb94788ed17p-4L : inexact-ok
+= erfc upward ldbl-96-m68k 0x2p-4L : 0xd.c143cb94788ed18p-4L : inexact-ok
+= erfc downward ldbl-128 0x2p-4L : 0xd.c143cb94788ed17a494db60f8618p-4L : inexact-ok
+= erfc tonearest ldbl-128 0x2p-4L : 0xd.c143cb94788ed17a494db60f862p-4L : inexact-ok
+= erfc towardzero ldbl-128 0x2p-4L : 0xd.c143cb94788ed17a494db60f8618p-4L : inexact-ok
+= erfc upward ldbl-128 0x2p-4L : 0xd.c143cb94788ed17a494db60f862p-4L : inexact-ok
+= erfc downward ldbl-128ibm 0x2p-4L : 0xd.c143cb94788ed17a494db60f84p-4L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x2p-4L : 0xd.c143cb94788ed17a494db60f88p-4L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x2p-4L : 0xd.c143cb94788ed17a494db60f84p-4L : inexact-ok
+= erfc upward ldbl-128ibm 0x2p-4L : 0xd.c143cb94788ed17a494db60f88p-4L : inexact-ok
+erfc 0.75
+= erfc downward flt-32 0xcp-4f : 0x4.9f1b4p-4f : inexact-ok
+= erfc tonearest flt-32 0xcp-4f : 0x4.9f1b48p-4f : inexact-ok
+= erfc towardzero flt-32 0xcp-4f : 0x4.9f1b4p-4f : inexact-ok
+= erfc upward flt-32 0xcp-4f : 0x4.9f1b48p-4f : inexact-ok
+= erfc downward dbl-64 0xcp-4 : 0x4.9f1b453178d04p-4 : inexact-ok
+= erfc tonearest dbl-64 0xcp-4 : 0x4.9f1b453178d04p-4 : inexact-ok
+= erfc towardzero dbl-64 0xcp-4 : 0x4.9f1b453178d04p-4 : inexact-ok
+= erfc upward dbl-64 0xcp-4 : 0x4.9f1b453178d08p-4 : inexact-ok
+= erfc downward ldbl-96-intel 0xcp-4L : 0x4.9f1b453178d049dp-4L : inexact-ok
+= erfc tonearest ldbl-96-intel 0xcp-4L : 0x4.9f1b453178d049d8p-4L : inexact-ok
+= erfc towardzero ldbl-96-intel 0xcp-4L : 0x4.9f1b453178d049dp-4L : inexact-ok
+= erfc upward ldbl-96-intel 0xcp-4L : 0x4.9f1b453178d049d8p-4L : inexact-ok
+= erfc downward ldbl-96-m68k 0xcp-4L : 0x4.9f1b453178d049dp-4L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0xcp-4L : 0x4.9f1b453178d049d8p-4L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0xcp-4L : 0x4.9f1b453178d049dp-4L : inexact-ok
+= erfc upward ldbl-96-m68k 0xcp-4L : 0x4.9f1b453178d049d8p-4L : inexact-ok
+= erfc downward ldbl-128 0xcp-4L : 0x4.9f1b453178d049d79a1a6877559p-4L : inexact-ok
+= erfc tonearest ldbl-128 0xcp-4L : 0x4.9f1b453178d049d79a1a68775594p-4L : inexact-ok
+= erfc towardzero ldbl-128 0xcp-4L : 0x4.9f1b453178d049d79a1a6877559p-4L : inexact-ok
+= erfc upward ldbl-128 0xcp-4L : 0x4.9f1b453178d049d79a1a68775594p-4L : inexact-ok
+= erfc downward ldbl-128ibm 0xcp-4L : 0x4.9f1b453178d049d79a1a687754p-4L : inexact-ok
+= erfc tonearest ldbl-128ibm 0xcp-4L : 0x4.9f1b453178d049d79a1a687756p-4L : inexact-ok
+= erfc towardzero ldbl-128ibm 0xcp-4L : 0x4.9f1b453178d049d79a1a687754p-4L : inexact-ok
+= erfc upward ldbl-128ibm 0xcp-4L : 0x4.9f1b453178d049d79a1a687756p-4L : inexact-ok
+erfc 1.25
+= erfc downward flt-32 0x1.4p+0f : 0x1.3bcd12p-4f : inexact-ok
+= erfc tonearest flt-32 0x1.4p+0f : 0x1.3bcd14p-4f : inexact-ok
+= erfc towardzero flt-32 0x1.4p+0f : 0x1.3bcd12p-4f : inexact-ok
+= erfc upward flt-32 0x1.4p+0f : 0x1.3bcd14p-4f : inexact-ok
+= erfc downward dbl-64 0x1.4p+0 : 0x1.3bcd133aa0ffbp-4 : inexact-ok
+= erfc tonearest dbl-64 0x1.4p+0 : 0x1.3bcd133aa0ffcp-4 : inexact-ok
+= erfc towardzero dbl-64 0x1.4p+0 : 0x1.3bcd133aa0ffbp-4 : inexact-ok
+= erfc upward dbl-64 0x1.4p+0 : 0x1.3bcd133aa0ffcp-4 : inexact-ok
+= erfc downward ldbl-96-intel 0x1.4p+0L : 0x1.3bcd133aa0ffbf9cp-4L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x1.4p+0L : 0x1.3bcd133aa0ffbf9ep-4L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x1.4p+0L : 0x1.3bcd133aa0ffbf9cp-4L : inexact-ok
+= erfc upward ldbl-96-intel 0x1.4p+0L : 0x1.3bcd133aa0ffbf9ep-4L : inexact-ok
+= erfc downward ldbl-96-m68k 0x1.4p+0L : 0x1.3bcd133aa0ffbf9cp-4L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x1.4p+0L : 0x1.3bcd133aa0ffbf9ep-4L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x1.4p+0L : 0x1.3bcd133aa0ffbf9cp-4L : inexact-ok
+= erfc upward ldbl-96-m68k 0x1.4p+0L : 0x1.3bcd133aa0ffbf9ep-4L : inexact-ok
+= erfc downward ldbl-128 0x1.4p+0L : 0x1.3bcd133aa0ffbf9d895f72e9b1d3p-4L : inexact-ok
+= erfc tonearest ldbl-128 0x1.4p+0L : 0x1.3bcd133aa0ffbf9d895f72e9b1d3p-4L : inexact-ok
+= erfc towardzero ldbl-128 0x1.4p+0L : 0x1.3bcd133aa0ffbf9d895f72e9b1d3p-4L : inexact-ok
+= erfc upward ldbl-128 0x1.4p+0L : 0x1.3bcd133aa0ffbf9d895f72e9b1d4p-4L : inexact-ok
+= erfc downward ldbl-128ibm 0x1.4p+0L : 0x1.3bcd133aa0ffbf9d895f72e9b18p-4L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x1.4p+0L : 0x1.3bcd133aa0ffbf9d895f72e9b2p-4L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x1.4p+0L : 0x1.3bcd133aa0ffbf9d895f72e9b18p-4L : inexact-ok
+= erfc upward ldbl-128ibm 0x1.4p+0L : 0x1.3bcd133aa0ffbf9d895f72e9b2p-4L : inexact-ok
+erfc 2.0
+= erfc downward flt-32 0x2p+0f : 0x1.328f5ep-8f : inexact-ok
+= erfc tonearest flt-32 0x2p+0f : 0x1.328f5ep-8f : inexact-ok
+= erfc towardzero flt-32 0x2p+0f : 0x1.328f5ep-8f : inexact-ok
+= erfc upward flt-32 0x2p+0f : 0x1.328f6p-8f : inexact-ok
+= erfc downward dbl-64 0x2p+0 : 0x1.328f5ec350e66p-8 : inexact-ok
+= erfc tonearest dbl-64 0x2p+0 : 0x1.328f5ec350e67p-8 : inexact-ok
+= erfc towardzero dbl-64 0x2p+0 : 0x1.328f5ec350e66p-8 : inexact-ok
+= erfc upward dbl-64 0x2p+0 : 0x1.328f5ec350e67p-8 : inexact-ok
+= erfc downward ldbl-96-intel 0x2p+0L : 0x1.328f5ec350e668d6p-8L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x2p+0L : 0x1.328f5ec350e668d8p-8L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x2p+0L : 0x1.328f5ec350e668d6p-8L : inexact-ok
+= erfc upward ldbl-96-intel 0x2p+0L : 0x1.328f5ec350e668d8p-8L : inexact-ok
+= erfc downward ldbl-96-m68k 0x2p+0L : 0x1.328f5ec350e668d6p-8L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x2p+0L : 0x1.328f5ec350e668d8p-8L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x2p+0L : 0x1.328f5ec350e668d6p-8L : inexact-ok
+= erfc upward ldbl-96-m68k 0x2p+0L : 0x1.328f5ec350e668d8p-8L : inexact-ok
+= erfc downward ldbl-128 0x2p+0L : 0x1.328f5ec350e668d7fe6fb465cc11p-8L : inexact-ok
+= erfc tonearest ldbl-128 0x2p+0L : 0x1.328f5ec350e668d7fe6fb465cc11p-8L : inexact-ok
+= erfc towardzero ldbl-128 0x2p+0L : 0x1.328f5ec350e668d7fe6fb465cc11p-8L : inexact-ok
+= erfc upward ldbl-128 0x2p+0L : 0x1.328f5ec350e668d7fe6fb465cc12p-8L : inexact-ok
+= erfc downward ldbl-128ibm 0x2p+0L : 0x1.328f5ec350e668d7fe6fb465ccp-8L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x2p+0L : 0x1.328f5ec350e668d7fe6fb465ccp-8L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x2p+0L : 0x1.328f5ec350e668d7fe6fb465ccp-8L : inexact-ok
+= erfc upward ldbl-128ibm 0x2p+0L : 0x1.328f5ec350e668d7fe6fb465cc8p-8L : inexact-ok
+erfc 0x1.f7303cp+1
+= erfc downward flt-32 0x3.ee6078p+0f : 0x7.4334ap-28f : inexact-ok
+= erfc tonearest flt-32 0x3.ee6078p+0f : 0x7.4334a8p-28f : inexact-ok
+= erfc towardzero flt-32 0x3.ee6078p+0f : 0x7.4334ap-28f : inexact-ok
+= erfc upward flt-32 0x3.ee6078p+0f : 0x7.4334a8p-28f : inexact-ok
+= erfc downward dbl-64 0x3.ee6078p+0 : 0x7.4334a54e12088p-28 : inexact-ok
+= erfc tonearest dbl-64 0x3.ee6078p+0 : 0x7.4334a54e1208cp-28 : inexact-ok
+= erfc towardzero dbl-64 0x3.ee6078p+0 : 0x7.4334a54e12088p-28 : inexact-ok
+= erfc upward dbl-64 0x3.ee6078p+0 : 0x7.4334a54e1208cp-28 : inexact-ok
+= erfc downward ldbl-96-intel 0x3.ee6078p+0L : 0x7.4334a54e1208ae18p-28L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x3.ee6078p+0L : 0x7.4334a54e1208ae18p-28L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x3.ee6078p+0L : 0x7.4334a54e1208ae18p-28L : inexact-ok
+= erfc upward ldbl-96-intel 0x3.ee6078p+0L : 0x7.4334a54e1208ae2p-28L : inexact-ok
+= erfc downward ldbl-96-m68k 0x3.ee6078p+0L : 0x7.4334a54e1208ae18p-28L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x3.ee6078p+0L : 0x7.4334a54e1208ae18p-28L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x3.ee6078p+0L : 0x7.4334a54e1208ae18p-28L : inexact-ok
+= erfc upward ldbl-96-m68k 0x3.ee6078p+0L : 0x7.4334a54e1208ae2p-28L : inexact-ok
+= erfc downward ldbl-128 0x3.ee6078p+0L : 0x7.4334a54e1208ae1b8bfa15647bc4p-28L : inexact-ok
+= erfc tonearest ldbl-128 0x3.ee6078p+0L : 0x7.4334a54e1208ae1b8bfa15647bc4p-28L : inexact-ok
+= erfc towardzero ldbl-128 0x3.ee6078p+0L : 0x7.4334a54e1208ae1b8bfa15647bc4p-28L : inexact-ok
+= erfc upward ldbl-128 0x3.ee6078p+0L : 0x7.4334a54e1208ae1b8bfa15647bc8p-28L : inexact-ok
+= erfc downward ldbl-128ibm 0x3.ee6078p+0L : 0x7.4334a54e1208ae1b8bfa15647ap-28L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x3.ee6078p+0L : 0x7.4334a54e1208ae1b8bfa15647cp-28L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x3.ee6078p+0L : 0x7.4334a54e1208ae1b8bfa15647ap-28L : inexact-ok
+= erfc upward ldbl-128ibm 0x3.ee6078p+0L : 0x7.4334a54e1208ae1b8bfa15647cp-28L : inexact-ok
+erfc 4.125
+= erfc downward flt-32 0x4.2p+0f : 0x1.74b178p-28f : inexact-ok
+= erfc tonearest flt-32 0x4.2p+0f : 0x1.74b17ap-28f : inexact-ok
+= erfc towardzero flt-32 0x4.2p+0f : 0x1.74b178p-28f : inexact-ok
+= erfc upward flt-32 0x4.2p+0f : 0x1.74b17ap-28f : inexact-ok
+= erfc downward dbl-64 0x4.2p+0 : 0x1.74b179d1eba8p-28 : inexact-ok
+= erfc tonearest dbl-64 0x4.2p+0 : 0x1.74b179d1eba81p-28 : inexact-ok
+= erfc towardzero dbl-64 0x4.2p+0 : 0x1.74b179d1eba8p-28 : inexact-ok
+= erfc upward dbl-64 0x4.2p+0 : 0x1.74b179d1eba81p-28 : inexact-ok
+= erfc downward ldbl-96-intel 0x4.2p+0L : 0x1.74b179d1eba809f2p-28L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x4.2p+0L : 0x1.74b179d1eba809f2p-28L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x4.2p+0L : 0x1.74b179d1eba809f2p-28L : inexact-ok
+= erfc upward ldbl-96-intel 0x4.2p+0L : 0x1.74b179d1eba809f4p-28L : inexact-ok
+= erfc downward ldbl-96-m68k 0x4.2p+0L : 0x1.74b179d1eba809f2p-28L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x4.2p+0L : 0x1.74b179d1eba809f2p-28L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x4.2p+0L : 0x1.74b179d1eba809f2p-28L : inexact-ok
+= erfc upward ldbl-96-m68k 0x4.2p+0L : 0x1.74b179d1eba809f4p-28L : inexact-ok
+= erfc downward ldbl-128 0x4.2p+0L : 0x1.74b179d1eba809f2e32224074101p-28L : inexact-ok
+= erfc tonearest ldbl-128 0x4.2p+0L : 0x1.74b179d1eba809f2e32224074102p-28L : inexact-ok
+= erfc towardzero ldbl-128 0x4.2p+0L : 0x1.74b179d1eba809f2e32224074101p-28L : inexact-ok
+= erfc upward ldbl-128 0x4.2p+0L : 0x1.74b179d1eba809f2e32224074102p-28L : inexact-ok
+= erfc downward ldbl-128ibm 0x4.2p+0L : 0x1.74b179d1eba809f2e322240741p-28L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x4.2p+0L : 0x1.74b179d1eba809f2e322240741p-28L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x4.2p+0L : 0x1.74b179d1eba809f2e322240741p-28L : inexact-ok
+= erfc upward ldbl-128ibm 0x4.2p+0L : 0x1.74b179d1eba809f2e3222407418p-28L : inexact-ok
+erfc 0x1.ffa002p+2
+= erfc downward flt-32 0x7.fe8008p+0f : 0xf.a3372p-100f : inexact-ok
+= erfc tonearest flt-32 0x7.fe8008p+0f : 0xf.a3372p-100f : inexact-ok
+= erfc towardzero flt-32 0x7.fe8008p+0f : 0xf.a3372p-100f : inexact-ok
+= erfc upward flt-32 0x7.fe8008p+0f : 0xf.a3373p-100f : inexact-ok
+= erfc downward dbl-64 0x7.fe8008p+0 : 0xf.a33725bea2f78p-100 : inexact-ok
+= erfc tonearest dbl-64 0x7.fe8008p+0 : 0xf.a33725bea2f8p-100 : inexact-ok
+= erfc towardzero dbl-64 0x7.fe8008p+0 : 0xf.a33725bea2f78p-100 : inexact-ok
+= erfc upward dbl-64 0x7.fe8008p+0 : 0xf.a33725bea2f8p-100 : inexact-ok
+= erfc downward ldbl-96-intel 0x7.fe8008p+0L : 0xf.a33725bea2f7d7ap-100L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x7.fe8008p+0L : 0xf.a33725bea2f7d7bp-100L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x7.fe8008p+0L : 0xf.a33725bea2f7d7ap-100L : inexact-ok
+= erfc upward ldbl-96-intel 0x7.fe8008p+0L : 0xf.a33725bea2f7d7bp-100L : inexact-ok
+= erfc downward ldbl-96-m68k 0x7.fe8008p+0L : 0xf.a33725bea2f7d7ap-100L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x7.fe8008p+0L : 0xf.a33725bea2f7d7bp-100L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x7.fe8008p+0L : 0xf.a33725bea2f7d7ap-100L : inexact-ok
+= erfc upward ldbl-96-m68k 0x7.fe8008p+0L : 0xf.a33725bea2f7d7bp-100L : inexact-ok
+= erfc downward ldbl-128 0x7.fe8008p+0L : 0xf.a33725bea2f7d7abe8b7461d621p-100L : inexact-ok
+= erfc tonearest ldbl-128 0x7.fe8008p+0L : 0xf.a33725bea2f7d7abe8b7461d621p-100L : inexact-ok
+= erfc towardzero ldbl-128 0x7.fe8008p+0L : 0xf.a33725bea2f7d7abe8b7461d621p-100L : inexact-ok
+= erfc upward ldbl-128 0x7.fe8008p+0L : 0xf.a33725bea2f7d7abe8b7461d6218p-100L : inexact-ok
+= erfc downward ldbl-128ibm 0x7.fe8008p+0L : 0xf.a33725bea2f7d7abe8b7461d6p-100L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x7.fe8008p+0L : 0xf.a33725bea2f7d7abe8b7461d64p-100L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x7.fe8008p+0L : 0xf.a33725bea2f7d7abe8b7461d6p-100L : inexact-ok
+= erfc upward ldbl-128ibm 0x7.fe8008p+0L : 0xf.a33725bea2f7d7abe8b7461d64p-100L : inexact-ok
+erfc 0x1.ffffc8p+2
+= erfc downward flt-32 0x7.ffff2p+0f : 0xe.3b46ep-100f : inexact-ok
+= erfc tonearest flt-32 0x7.ffff2p+0f : 0xe.3b46ep-100f : inexact-ok
+= erfc towardzero flt-32 0x7.ffff2p+0f : 0xe.3b46ep-100f : inexact-ok
+= erfc upward flt-32 0x7.ffff2p+0f : 0xe.3b46fp-100f : inexact-ok
+= erfc downward dbl-64 0x7.ffff2p+0 : 0xe.3b46e15ad978p-100 : inexact-ok
+= erfc tonearest dbl-64 0x7.ffff2p+0 : 0xe.3b46e15ad978p-100 : inexact-ok
+= erfc towardzero dbl-64 0x7.ffff2p+0 : 0xe.3b46e15ad978p-100 : inexact-ok
+= erfc upward dbl-64 0x7.ffff2p+0 : 0xe.3b46e15ad9788p-100 : inexact-ok
+= erfc downward ldbl-96-intel 0x7.ffff2p+0L : 0xe.3b46e15ad97825dp-100L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x7.ffff2p+0L : 0xe.3b46e15ad97825dp-100L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x7.ffff2p+0L : 0xe.3b46e15ad97825dp-100L : inexact-ok
+= erfc upward ldbl-96-intel 0x7.ffff2p+0L : 0xe.3b46e15ad97825ep-100L : inexact-ok
+= erfc downward ldbl-96-m68k 0x7.ffff2p+0L : 0xe.3b46e15ad97825dp-100L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x7.ffff2p+0L : 0xe.3b46e15ad97825dp-100L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x7.ffff2p+0L : 0xe.3b46e15ad97825dp-100L : inexact-ok
+= erfc upward ldbl-96-m68k 0x7.ffff2p+0L : 0xe.3b46e15ad97825ep-100L : inexact-ok
+= erfc downward ldbl-128 0x7.ffff2p+0L : 0xe.3b46e15ad97825d129852878feb8p-100L : inexact-ok
+= erfc tonearest ldbl-128 0x7.ffff2p+0L : 0xe.3b46e15ad97825d129852878fecp-100L : inexact-ok
+= erfc towardzero ldbl-128 0x7.ffff2p+0L : 0xe.3b46e15ad97825d129852878feb8p-100L : inexact-ok
+= erfc upward ldbl-128 0x7.ffff2p+0L : 0xe.3b46e15ad97825d129852878fecp-100L : inexact-ok
+= erfc downward ldbl-128ibm 0x7.ffff2p+0L : 0xe.3b46e15ad97825d129852878fcp-100L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x7.ffff2p+0L : 0xe.3b46e15ad97825d129852879p-100L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x7.ffff2p+0L : 0xe.3b46e15ad97825d129852878fcp-100L : inexact-ok
+= erfc upward ldbl-128ibm 0x7.ffff2p+0L : 0xe.3b46e15ad97825d129852879p-100L : inexact-ok
+erfc -0x1.fffffffffffff8p-2
+= erfc downward flt-32 -0x7.fffff8p-4f : 0x1.853f7ap+0f : inexact-ok
+= erfc tonearest flt-32 -0x7.fffff8p-4f : 0x1.853f7ap+0f : inexact-ok
+= erfc towardzero flt-32 -0x7.fffff8p-4f : 0x1.853f7ap+0f : inexact-ok
+= erfc upward flt-32 -0x7.fffff8p-4f : 0x1.853f7cp+0f : inexact-ok
+= erfc downward dbl-64 -0x7.fffff8p-4 : 0x1.853f7a704b7bep+0 : inexact-ok
+= erfc tonearest dbl-64 -0x7.fffff8p-4 : 0x1.853f7a704b7bep+0 : inexact-ok
+= erfc towardzero dbl-64 -0x7.fffff8p-4 : 0x1.853f7a704b7bep+0 : inexact-ok
+= erfc upward dbl-64 -0x7.fffff8p-4 : 0x1.853f7a704b7bfp+0 : inexact-ok
+= erfc downward ldbl-96-intel -0x7.fffff8p-4L : 0x1.853f7a704b7be2d6p+0L : inexact-ok
+= erfc tonearest ldbl-96-intel -0x7.fffff8p-4L : 0x1.853f7a704b7be2d6p+0L : inexact-ok
+= erfc towardzero ldbl-96-intel -0x7.fffff8p-4L : 0x1.853f7a704b7be2d6p+0L : inexact-ok
+= erfc upward ldbl-96-intel -0x7.fffff8p-4L : 0x1.853f7a704b7be2d8p+0L : inexact-ok
+= erfc downward ldbl-96-m68k -0x7.fffff8p-4L : 0x1.853f7a704b7be2d6p+0L : inexact-ok
+= erfc tonearest ldbl-96-m68k -0x7.fffff8p-4L : 0x1.853f7a704b7be2d6p+0L : inexact-ok
+= erfc towardzero ldbl-96-m68k -0x7.fffff8p-4L : 0x1.853f7a704b7be2d6p+0L : inexact-ok
+= erfc upward ldbl-96-m68k -0x7.fffff8p-4L : 0x1.853f7a704b7be2d8p+0L : inexact-ok
+= erfc downward ldbl-128 -0x7.fffff8p-4L : 0x1.853f7a704b7be2d643b9e3ae3cafp+0L : inexact-ok
+= erfc tonearest ldbl-128 -0x7.fffff8p-4L : 0x1.853f7a704b7be2d643b9e3ae3cbp+0L : inexact-ok
+= erfc towardzero ldbl-128 -0x7.fffff8p-4L : 0x1.853f7a704b7be2d643b9e3ae3cafp+0L : inexact-ok
+= erfc upward ldbl-128 -0x7.fffff8p-4L : 0x1.853f7a704b7be2d643b9e3ae3cbp+0L : inexact-ok
+= erfc downward ldbl-128ibm -0x7.fffff8p-4L : 0x1.853f7a704b7be2d643b9e3ae3c8p+0L : inexact-ok
+= erfc tonearest ldbl-128ibm -0x7.fffff8p-4L : 0x1.853f7a704b7be2d643b9e3ae3c8p+0L : inexact-ok
+= erfc towardzero ldbl-128ibm -0x7.fffff8p-4L : 0x1.853f7a704b7be2d643b9e3ae3c8p+0L : inexact-ok
+= erfc upward ldbl-128ibm -0x7.fffff8p-4L : 0x1.853f7a704b7be2d643b9e3ae3dp+0L : inexact-ok
+= erfc downward flt-32 -0x8p-4f : 0x1.853f7ap+0f : inexact-ok
+= erfc tonearest flt-32 -0x8p-4f : 0x1.853f7ap+0f : inexact-ok
+= erfc towardzero flt-32 -0x8p-4f : 0x1.853f7ap+0f : inexact-ok
+= erfc upward flt-32 -0x8p-4f : 0x1.853f7cp+0f : inexact-ok
+= erfc downward dbl-64 -0x8p-4 : 0x1.853f7ae0c76e9p+0 : inexact-ok
+= erfc tonearest dbl-64 -0x8p-4 : 0x1.853f7ae0c76e9p+0 : inexact-ok
+= erfc towardzero dbl-64 -0x8p-4 : 0x1.853f7ae0c76e9p+0 : inexact-ok
+= erfc upward dbl-64 -0x8p-4 : 0x1.853f7ae0c76eap+0 : inexact-ok
+= erfc downward ldbl-96-intel -0x8p-4L : 0x1.853f7ae0c76e915ep+0L : inexact-ok
+= erfc tonearest ldbl-96-intel -0x8p-4L : 0x1.853f7ae0c76e915ep+0L : inexact-ok
+= erfc towardzero ldbl-96-intel -0x8p-4L : 0x1.853f7ae0c76e915ep+0L : inexact-ok
+= erfc upward ldbl-96-intel -0x8p-4L : 0x1.853f7ae0c76e916p+0L : inexact-ok
+= erfc downward ldbl-96-m68k -0x8p-4L : 0x1.853f7ae0c76e915ep+0L : inexact-ok
+= erfc tonearest ldbl-96-m68k -0x8p-4L : 0x1.853f7ae0c76e915ep+0L : inexact-ok
+= erfc towardzero ldbl-96-m68k -0x8p-4L : 0x1.853f7ae0c76e915ep+0L : inexact-ok
+= erfc upward ldbl-96-m68k -0x8p-4L : 0x1.853f7ae0c76e916p+0L : inexact-ok
+= erfc downward ldbl-128 -0x8p-4L : 0x1.853f7ae0c76e915e809f1a31a27ap+0L : inexact-ok
+= erfc tonearest ldbl-128 -0x8p-4L : 0x1.853f7ae0c76e915e809f1a31a27bp+0L : inexact-ok
+= erfc towardzero ldbl-128 -0x8p-4L : 0x1.853f7ae0c76e915e809f1a31a27ap+0L : inexact-ok
+= erfc upward ldbl-128 -0x8p-4L : 0x1.853f7ae0c76e915e809f1a31a27bp+0L : inexact-ok
+= erfc downward ldbl-128ibm -0x8p-4L : 0x1.853f7ae0c76e915e809f1a31a2p+0L : inexact-ok
+= erfc tonearest ldbl-128ibm -0x8p-4L : 0x1.853f7ae0c76e915e809f1a31a28p+0L : inexact-ok
+= erfc towardzero ldbl-128ibm -0x8p-4L : 0x1.853f7ae0c76e915e809f1a31a2p+0L : inexact-ok
+= erfc upward ldbl-128ibm -0x8p-4L : 0x1.853f7ae0c76e915e809f1a31a28p+0L : inexact-ok
+= erfc downward dbl-64 -0x7.ffffffffffffcp-4 : 0x1.853f7ae0c76e8p+0 : inexact-ok
+= erfc tonearest dbl-64 -0x7.ffffffffffffcp-4 : 0x1.853f7ae0c76e9p+0 : inexact-ok
+= erfc towardzero dbl-64 -0x7.ffffffffffffcp-4 : 0x1.853f7ae0c76e8p+0 : inexact-ok
+= erfc upward dbl-64 -0x7.ffffffffffffcp-4 : 0x1.853f7ae0c76e9p+0 : inexact-ok
+= erfc downward ldbl-96-intel -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddap+0L : inexact-ok
+= erfc tonearest ldbl-96-intel -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddap+0L : inexact-ok
+= erfc towardzero ldbl-96-intel -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddap+0L : inexact-ok
+= erfc upward ldbl-96-intel -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddcp+0L : inexact-ok
+= erfc downward ldbl-96-m68k -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddap+0L : inexact-ok
+= erfc tonearest ldbl-96-m68k -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddap+0L : inexact-ok
+= erfc towardzero ldbl-96-m68k -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddap+0L : inexact-ok
+= erfc upward ldbl-96-m68k -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddcp+0L : inexact-ok
+= erfc downward ldbl-128 -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddaa10a86e7a049p+0L : inexact-ok
+= erfc tonearest ldbl-128 -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddaa10a86e7a049p+0L : inexact-ok
+= erfc towardzero ldbl-128 -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddaa10a86e7a049p+0L : inexact-ok
+= erfc upward ldbl-128 -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddaa10a86e7a04ap+0L : inexact-ok
+= erfc downward ldbl-128ibm -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddaa10a86e7ap+0L : inexact-ok
+= erfc tonearest ldbl-128ibm -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddaa10a86e7a08p+0L : inexact-ok
+= erfc towardzero ldbl-128ibm -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddaa10a86e7ap+0L : inexact-ok
+= erfc upward ldbl-128ibm -0x7.ffffffffffffcp-4L : 0x1.853f7ae0c76e8ddaa10a86e7a08p+0L : inexact-ok
+= erfc downward ldbl-96-intel -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9cp+0L : inexact-ok
+= erfc tonearest ldbl-96-intel -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9cp+0L : inexact-ok
+= erfc towardzero ldbl-96-intel -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9cp+0L : inexact-ok
+= erfc upward ldbl-96-intel -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9ep+0L : inexact-ok
+= erfc downward ldbl-96-m68k -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9cp+0L : inexact-ok
+= erfc tonearest ldbl-96-m68k -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9cp+0L : inexact-ok
+= erfc towardzero ldbl-96-m68k -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9cp+0L : inexact-ok
+= erfc upward ldbl-96-m68k -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9ep+0L : inexact-ok
+= erfc downward ldbl-128 -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9c90d4d08ca163p+0L : inexact-ok
+= erfc tonearest ldbl-128 -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9c90d4d08ca164p+0L : inexact-ok
+= erfc towardzero ldbl-128 -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9c90d4d08ca163p+0L : inexact-ok
+= erfc upward ldbl-128 -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9c90d4d08ca164p+0L : inexact-ok
+= erfc downward ldbl-128ibm -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9c90d4d08ca1p+0L : inexact-ok
+= erfc tonearest ldbl-128ibm -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9c90d4d08ca18p+0L : inexact-ok
+= erfc towardzero ldbl-128ibm -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9c90d4d08ca1p+0L : inexact-ok
+= erfc upward ldbl-128ibm -0x7.ffffffffffffep-4L : 0x1.853f7ae0c76e8f9c90d4d08ca18p+0L : inexact-ok
+erfc 26.0
+= erfc downward flt-32 0x1.ap+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0x1.ap+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0x1.ap+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0x1.ap+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0x1.ap+4 : 0x9.425ff0e6f5118p-984 : inexact-ok
+= erfc tonearest dbl-64 0x1.ap+4 : 0x9.425ff0e6f512p-984 : inexact-ok
+= erfc towardzero dbl-64 0x1.ap+4 : 0x9.425ff0e6f5118p-984 : inexact-ok
+= erfc upward dbl-64 0x1.ap+4 : 0x9.425ff0e6f512p-984 : inexact-ok
+= erfc downward ldbl-96-intel 0x1.ap+4L : 0x9.425ff0e6f511d74p-984L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x1.ap+4L : 0x9.425ff0e6f511d75p-984L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x1.ap+4L : 0x9.425ff0e6f511d74p-984L : inexact-ok
+= erfc upward ldbl-96-intel 0x1.ap+4L : 0x9.425ff0e6f511d75p-984L : inexact-ok
+= erfc downward ldbl-96-m68k 0x1.ap+4L : 0x9.425ff0e6f511d74p-984L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x1.ap+4L : 0x9.425ff0e6f511d75p-984L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x1.ap+4L : 0x9.425ff0e6f511d74p-984L : inexact-ok
+= erfc upward ldbl-96-m68k 0x1.ap+4L : 0x9.425ff0e6f511d75p-984L : inexact-ok
+= erfc downward ldbl-128 0x1.ap+4L : 0x9.425ff0e6f511d74db40cfbbceffp-984L : inexact-ok
+= erfc tonearest ldbl-128 0x1.ap+4L : 0x9.425ff0e6f511d74db40cfbbceffp-984L : inexact-ok
+= erfc towardzero ldbl-128 0x1.ap+4L : 0x9.425ff0e6f511d74db40cfbbceffp-984L : inexact-ok
+= erfc upward ldbl-128 0x1.ap+4L : 0x9.425ff0e6f511d74db40cfbbceff8p-984L : inexact-ok
+= erfc downward ldbl-128ibm 0x1.ap+4L : 0x9.425ff0e6f511d74db40cfb8p-984L : inexact-ok underflow errno-erange-ok
+= erfc tonearest ldbl-128ibm 0x1.ap+4L : 0x9.425ff0e6f511d74db40cfbcp-984L : inexact-ok underflow errno-erange-ok
+= erfc towardzero ldbl-128ibm 0x1.ap+4L : 0x9.425ff0e6f511d74db40cfb8p-984L : inexact-ok underflow errno-erange-ok
+= erfc upward ldbl-128ibm 0x1.ap+4L : 0x9.425ff0e6f511d74db40cfbcp-984L : inexact-ok underflow errno-erange-ok
+erfc 27.0
+= erfc downward flt-32 0x1.bp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0x1.bp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0x1.bp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0x1.bp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0x1.bp+4 : 0x6.783cp-1060 : inexact-ok underflow errno-erange-ok
+= erfc tonearest dbl-64 0x1.bp+4 : 0x6.783cp-1060 : inexact-ok underflow errno-erange-ok
+= erfc towardzero dbl-64 0x1.bp+4 : 0x6.783cp-1060 : inexact-ok underflow errno-erange-ok
+= erfc upward dbl-64 0x1.bp+4 : 0x6.784p-1060 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0x1.bp+4L : 0x6.783c337e0e9d7e8p-1060L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x1.bp+4L : 0x6.783c337e0e9d7e88p-1060L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x1.bp+4L : 0x6.783c337e0e9d7e8p-1060L : inexact-ok
+= erfc upward ldbl-96-intel 0x1.bp+4L : 0x6.783c337e0e9d7e88p-1060L : inexact-ok
+= erfc downward ldbl-96-m68k 0x1.bp+4L : 0x6.783c337e0e9d7e8p-1060L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x1.bp+4L : 0x6.783c337e0e9d7e88p-1060L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x1.bp+4L : 0x6.783c337e0e9d7e8p-1060L : inexact-ok
+= erfc upward ldbl-96-m68k 0x1.bp+4L : 0x6.783c337e0e9d7e88p-1060L : inexact-ok
+= erfc downward ldbl-128 0x1.bp+4L : 0x6.783c337e0e9d7e84c2c58243308cp-1060L : inexact-ok
+= erfc tonearest ldbl-128 0x1.bp+4L : 0x6.783c337e0e9d7e84c2c58243308cp-1060L : inexact-ok
+= erfc towardzero ldbl-128 0x1.bp+4L : 0x6.783c337e0e9d7e84c2c58243308cp-1060L : inexact-ok
+= erfc upward ldbl-128 0x1.bp+4L : 0x6.783c337e0e9d7e84c2c58243309p-1060L : inexact-ok
+= erfc downward ldbl-128ibm 0x1.bp+4L : 0x6.783cp-1060L : inexact-ok underflow errno-erange-ok
+= erfc tonearest ldbl-128ibm 0x1.bp+4L : 0x6.783cp-1060L : inexact-ok underflow errno-erange-ok
+= erfc towardzero ldbl-128ibm 0x1.bp+4L : 0x6.783cp-1060L : inexact-ok underflow errno-erange-ok
+= erfc upward ldbl-128ibm 0x1.bp+4L : 0x6.784p-1060L : inexact-ok underflow errno-erange-ok
+erfc 28.0
+= erfc downward flt-32 0x1.cp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0x1.cp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0x1.cp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0x1.cp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0x1.cp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc tonearest dbl-64 0x1.cp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc towardzero dbl-64 0x1.cp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc upward dbl-64 0x1.cp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0x1.cp+4L : 0x9.cd4b80875a8ec66p-1140L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x1.cp+4L : 0x9.cd4b80875a8ec66p-1140L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x1.cp+4L : 0x9.cd4b80875a8ec66p-1140L : inexact-ok
+= erfc upward ldbl-96-intel 0x1.cp+4L : 0x9.cd4b80875a8ec67p-1140L : inexact-ok
+= erfc downward ldbl-96-m68k 0x1.cp+4L : 0x9.cd4b80875a8ec66p-1140L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x1.cp+4L : 0x9.cd4b80875a8ec66p-1140L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x1.cp+4L : 0x9.cd4b80875a8ec66p-1140L : inexact-ok
+= erfc upward ldbl-96-m68k 0x1.cp+4L : 0x9.cd4b80875a8ec67p-1140L : inexact-ok
+= erfc downward ldbl-128 0x1.cp+4L : 0x9.cd4b80875a8ec6603b9a1f1beadp-1140L : inexact-ok
+= erfc tonearest ldbl-128 0x1.cp+4L : 0x9.cd4b80875a8ec6603b9a1f1bead8p-1140L : inexact-ok
+= erfc towardzero ldbl-128 0x1.cp+4L : 0x9.cd4b80875a8ec6603b9a1f1beadp-1140L : inexact-ok
+= erfc upward ldbl-128 0x1.cp+4L : 0x9.cd4b80875a8ec6603b9a1f1bead8p-1140L : inexact-ok
+= erfc downward ldbl-128ibm 0x1.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0x1.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0x1.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0x1.cp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+erfc 0x1.ffff56789abcdef0123456789a8p+2
+= erfc downward flt-32 0x7.fffd6p+0f : 0xe.3cd88p-100f : inexact-ok
+= erfc tonearest flt-32 0x7.fffd6p+0f : 0xe.3cd88p-100f : inexact-ok
+= erfc towardzero flt-32 0x7.fffd6p+0f : 0xe.3cd88p-100f : inexact-ok
+= erfc upward flt-32 0x7.fffd6p+0f : 0xe.3cd89p-100f : inexact-ok
+= erfc downward dbl-64 0x7.fffd6p+0 : 0xe.3cd883e02b148p-100 : inexact-ok
+= erfc tonearest dbl-64 0x7.fffd6p+0 : 0xe.3cd883e02b15p-100 : inexact-ok
+= erfc towardzero dbl-64 0x7.fffd6p+0 : 0xe.3cd883e02b148p-100 : inexact-ok
+= erfc upward dbl-64 0x7.fffd6p+0 : 0xe.3cd883e02b15p-100 : inexact-ok
+= erfc downward ldbl-96-intel 0x7.fffd6p+0L : 0xe.3cd883e02b14dafp-100L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x7.fffd6p+0L : 0xe.3cd883e02b14dbp-100L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x7.fffd6p+0L : 0xe.3cd883e02b14dafp-100L : inexact-ok
+= erfc upward ldbl-96-intel 0x7.fffd6p+0L : 0xe.3cd883e02b14dbp-100L : inexact-ok
+= erfc downward ldbl-96-m68k 0x7.fffd6p+0L : 0xe.3cd883e02b14dafp-100L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x7.fffd6p+0L : 0xe.3cd883e02b14dbp-100L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x7.fffd6p+0L : 0xe.3cd883e02b14dafp-100L : inexact-ok
+= erfc upward ldbl-96-m68k 0x7.fffd6p+0L : 0xe.3cd883e02b14dbp-100L : inexact-ok
+= erfc downward ldbl-128 0x7.fffd6p+0L : 0xe.3cd883e02b14daf90f0f812035b8p-100L : inexact-ok
+= erfc tonearest ldbl-128 0x7.fffd6p+0L : 0xe.3cd883e02b14daf90f0f812035cp-100L : inexact-ok
+= erfc towardzero ldbl-128 0x7.fffd6p+0L : 0xe.3cd883e02b14daf90f0f812035b8p-100L : inexact-ok
+= erfc upward ldbl-128 0x7.fffd6p+0L : 0xe.3cd883e02b14daf90f0f812035cp-100L : inexact-ok
+= erfc downward ldbl-128ibm 0x7.fffd6p+0L : 0xe.3cd883e02b14daf90f0f812034p-100L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x7.fffd6p+0L : 0xe.3cd883e02b14daf90f0f812034p-100L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x7.fffd6p+0L : 0xe.3cd883e02b14daf90f0f812034p-100L : inexact-ok
+= erfc upward ldbl-128ibm 0x7.fffd6p+0L : 0xe.3cd883e02b14daf90f0f812038p-100L : inexact-ok
+= erfc downward flt-32 0x7.fffd58p+0f : 0xe.3cdfbp-100f : inexact-ok
+= erfc tonearest flt-32 0x7.fffd58p+0f : 0xe.3cdfbp-100f : inexact-ok
+= erfc towardzero flt-32 0x7.fffd58p+0f : 0xe.3cdfbp-100f : inexact-ok
+= erfc upward flt-32 0x7.fffd58p+0f : 0xe.3cdfcp-100f : inexact-ok
+= erfc downward dbl-64 0x7.fffd58p+0 : 0xe.3cdfb051e694p-100 : inexact-ok
+= erfc tonearest dbl-64 0x7.fffd58p+0 : 0xe.3cdfb051e694p-100 : inexact-ok
+= erfc towardzero dbl-64 0x7.fffd58p+0 : 0xe.3cdfb051e694p-100 : inexact-ok
+= erfc upward dbl-64 0x7.fffd58p+0 : 0xe.3cdfb051e6948p-100 : inexact-ok
+= erfc downward ldbl-96-intel 0x7.fffd58p+0L : 0xe.3cdfb051e694315p-100L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x7.fffd58p+0L : 0xe.3cdfb051e694315p-100L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x7.fffd58p+0L : 0xe.3cdfb051e694315p-100L : inexact-ok
+= erfc upward ldbl-96-intel 0x7.fffd58p+0L : 0xe.3cdfb051e694316p-100L : inexact-ok
+= erfc downward ldbl-96-m68k 0x7.fffd58p+0L : 0xe.3cdfb051e694315p-100L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x7.fffd58p+0L : 0xe.3cdfb051e694315p-100L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x7.fffd58p+0L : 0xe.3cdfb051e694315p-100L : inexact-ok
+= erfc upward ldbl-96-m68k 0x7.fffd58p+0L : 0xe.3cdfb051e694316p-100L : inexact-ok
+= erfc downward ldbl-128 0x7.fffd58p+0L : 0xe.3cdfb051e6943150a3c2f2e70a58p-100L : inexact-ok
+= erfc tonearest ldbl-128 0x7.fffd58p+0L : 0xe.3cdfb051e6943150a3c2f2e70a58p-100L : inexact-ok
+= erfc towardzero ldbl-128 0x7.fffd58p+0L : 0xe.3cdfb051e6943150a3c2f2e70a58p-100L : inexact-ok
+= erfc upward ldbl-128 0x7.fffd58p+0L : 0xe.3cdfb051e6943150a3c2f2e70a6p-100L : inexact-ok
+= erfc downward ldbl-128ibm 0x7.fffd58p+0L : 0xe.3cdfb051e6943150a3c2f2e708p-100L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x7.fffd58p+0L : 0xe.3cdfb051e6943150a3c2f2e70cp-100L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x7.fffd58p+0L : 0xe.3cdfb051e6943150a3c2f2e708p-100L : inexact-ok
+= erfc upward ldbl-128ibm 0x7.fffd58p+0L : 0xe.3cdfb051e6943150a3c2f2e70cp-100L : inexact-ok
+= erfc downward dbl-64 0x7.fffd59e26af38p+0 : 0xe.3cddffbbe84b8p-100 : inexact-ok
+= erfc tonearest dbl-64 0x7.fffd59e26af38p+0 : 0xe.3cddffbbe84cp-100 : inexact-ok
+= erfc towardzero dbl-64 0x7.fffd59e26af38p+0 : 0xe.3cddffbbe84b8p-100 : inexact-ok
+= erfc upward dbl-64 0x7.fffd59e26af38p+0 : 0xe.3cddffbbe84cp-100 : inexact-ok
+= erfc downward ldbl-96-intel 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be02p-100L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be02p-100L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be02p-100L : inexact-ok
+= erfc upward ldbl-96-intel 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be03p-100L : inexact-ok
+= erfc downward ldbl-96-m68k 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be02p-100L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be02p-100L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be02p-100L : inexact-ok
+= erfc upward ldbl-96-m68k 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be03p-100L : inexact-ok
+= erfc downward ldbl-128 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be025e570dd9c7cap-100L : inexact-ok
+= erfc tonearest ldbl-128 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be025e570dd9c7cap-100L : inexact-ok
+= erfc towardzero ldbl-128 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be025e570dd9c7cap-100L : inexact-ok
+= erfc upward ldbl-128 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be025e570dd9c7ca8p-100L : inexact-ok
+= erfc downward ldbl-128ibm 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be025e570dd9c7cp-100L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be025e570dd9c7cp-100L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be025e570dd9c7cp-100L : inexact-ok
+= erfc upward ldbl-128ibm 0x7.fffd59e26af38p+0L : 0xe.3cddffbbe84be025e570dd9c8p-100L : inexact-ok
+= erfc downward dbl-64 0x7.fffd59e26af34p+0 : 0xe.3cddffbbe885p-100 : inexact-ok
+= erfc tonearest dbl-64 0x7.fffd59e26af34p+0 : 0xe.3cddffbbe8858p-100 : inexact-ok
+= erfc towardzero dbl-64 0x7.fffd59e26af34p+0 : 0xe.3cddffbbe885p-100 : inexact-ok
+= erfc upward dbl-64 0x7.fffd59e26af34p+0 : 0xe.3cddffbbe8858p-100 : inexact-ok
+= erfc downward ldbl-96-intel 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bp-100L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543cp-100L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bp-100L : inexact-ok
+= erfc upward ldbl-96-intel 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543cp-100L : inexact-ok
+= erfc downward ldbl-96-m68k 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bp-100L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543cp-100L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bp-100L : inexact-ok
+= erfc upward ldbl-96-m68k 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543cp-100L : inexact-ok
+= erfc downward ldbl-128 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bb57f5bfbbaa7p-100L : inexact-ok
+= erfc tonearest ldbl-128 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bb57f5bfbbaa78p-100L : inexact-ok
+= erfc towardzero ldbl-128 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bb57f5bfbbaa7p-100L : inexact-ok
+= erfc upward ldbl-128 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bb57f5bfbbaa78p-100L : inexact-ok
+= erfc downward ldbl-128ibm 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bb57f5bfbba8p-100L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bb57f5bfbbacp-100L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bb57f5bfbba8p-100L : inexact-ok
+= erfc upward ldbl-128ibm 0x7.fffd59e26af34p+0L : 0xe.3cddffbbe88543bb57f5bfbbacp-100L : inexact-ok
+= erfc downward ldbl-96-intel 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa89p-100L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa89p-100L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa89p-100L : inexact-ok
+= erfc upward ldbl-96-intel 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa8ap-100L : inexact-ok
+= erfc downward ldbl-96-m68k 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa89p-100L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa89p-100L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa89p-100L : inexact-ok
+= erfc upward ldbl-96-m68k 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa8ap-100L : inexact-ok
+= erfc downward ldbl-128 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa8965f5d5ffd399p-100L : inexact-ok
+= erfc tonearest ldbl-128 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa8965f5d5ffd3998p-100L : inexact-ok
+= erfc towardzero ldbl-128 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa8965f5d5ffd399p-100L : inexact-ok
+= erfc upward ldbl-128 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa8965f5d5ffd3998p-100L : inexact-ok
+= erfc downward ldbl-128ibm 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa8965f5d5ffd38p-100L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa8965f5d5ffd38p-100L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa8965f5d5ffd38p-100L : inexact-ok
+= erfc upward ldbl-128ibm 0x7.fffd59e26af37bc8p+0L : 0xe.3cddffbbe84fa8965f5d5ffd3cp-100L : inexact-ok
+= erfc downward ldbl-96-intel 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafcp-100L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafcp-100L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafcp-100L : inexact-ok
+= erfc upward ldbl-96-intel 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafdp-100L : inexact-ok
+= erfc downward ldbl-96-m68k 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafcp-100L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafcp-100L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafcp-100L : inexact-ok
+= erfc upward ldbl-96-m68k 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafdp-100L : inexact-ok
+= erfc downward ldbl-128 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafc2d20bb0997108p-100L : inexact-ok
+= erfc tonearest ldbl-128 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafc2d20bb0997108p-100L : inexact-ok
+= erfc towardzero ldbl-128 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafc2d20bb0997108p-100L : inexact-ok
+= erfc upward ldbl-128 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafc2d20bb099711p-100L : inexact-ok
+= erfc downward ldbl-128ibm 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafc2d20bb0997p-100L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafc2d20bb0997p-100L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafc2d20bb0997p-100L : inexact-ok
+= erfc upward ldbl-128ibm 0x7.fffd59e26af37bcp+0L : 0xe.3cddffbbe84fafc2d20bb09974p-100L : inexact-ok
+= erfc downward ldbl-128 0x7.fffd59e26af37bc048d159e26ap+0L : 0xe.3cddffbbe84faf818649c237713p-100L : inexact-ok
+= erfc tonearest ldbl-128 0x7.fffd59e26af37bc048d159e26ap+0L : 0xe.3cddffbbe84faf818649c2377138p-100L : inexact-ok
+= erfc towardzero ldbl-128 0x7.fffd59e26af37bc048d159e26ap+0L : 0xe.3cddffbbe84faf818649c237713p-100L : inexact-ok
+= erfc upward ldbl-128 0x7.fffd59e26af37bc048d159e26ap+0L : 0xe.3cddffbbe84faf818649c2377138p-100L : inexact-ok
+= erfc downward ldbl-128ibm 0x7.fffd59e26af37bc048d159e26ap+0L : 0xe.3cddffbbe84faf818649c2377p-100L : inexact-ok
+= erfc tonearest ldbl-128ibm 0x7.fffd59e26af37bc048d159e26ap+0L : 0xe.3cddffbbe84faf818649c2377p-100L : inexact-ok
+= erfc towardzero ldbl-128ibm 0x7.fffd59e26af37bc048d159e26ap+0L : 0xe.3cddffbbe84faf818649c2377p-100L : inexact-ok
+= erfc upward ldbl-128ibm 0x7.fffd59e26af37bc048d159e26ap+0L : 0xe.3cddffbbe84faf818649c23774p-100L : inexact-ok
+erfc 100
+= erfc downward flt-32 0x6.4p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0x6.4p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0x6.4p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0x6.4p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0x6.4p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc tonearest dbl-64 0x6.4p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc towardzero dbl-64 0x6.4p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc upward dbl-64 0x6.4p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0x6.4p+4L : 0x2.fd514cef7750e588p-14436L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x6.4p+4L : 0x2.fd514cef7750e588p-14436L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x6.4p+4L : 0x2.fd514cef7750e588p-14436L : inexact-ok
+= erfc upward ldbl-96-intel 0x6.4p+4L : 0x2.fd514cef7750e58cp-14436L : inexact-ok
+= erfc downward ldbl-96-m68k 0x6.4p+4L : 0x2.fd514cef7750e588p-14436L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x6.4p+4L : 0x2.fd514cef7750e588p-14436L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x6.4p+4L : 0x2.fd514cef7750e588p-14436L : inexact-ok
+= erfc upward ldbl-96-m68k 0x6.4p+4L : 0x2.fd514cef7750e58cp-14436L : inexact-ok
+= erfc downward ldbl-128 0x6.4p+4L : 0x2.fd514cef7750e58906601ff35dcp-14436L : inexact-ok
+= erfc tonearest ldbl-128 0x6.4p+4L : 0x2.fd514cef7750e58906601ff35dcp-14436L : inexact-ok
+= erfc towardzero ldbl-128 0x6.4p+4L : 0x2.fd514cef7750e58906601ff35dcp-14436L : inexact-ok
+= erfc upward ldbl-128 0x6.4p+4L : 0x2.fd514cef7750e58906601ff35dc2p-14436L : inexact-ok
+= erfc downward ldbl-128ibm 0x6.4p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0x6.4p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0x6.4p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0x6.4p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+erfc 106
+= erfc downward flt-32 0x6.ap+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0x6.ap+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0x6.ap+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0x6.ap+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0x6.ap+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc tonearest dbl-64 0x6.ap+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc towardzero dbl-64 0x6.ap+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc upward dbl-64 0x6.ap+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0x6.ap+4L : 0x5.028a2f1656a432dp-16220L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x6.ap+4L : 0x5.028a2f1656a432d8p-16220L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x6.ap+4L : 0x5.028a2f1656a432dp-16220L : inexact-ok
+= erfc upward ldbl-96-intel 0x6.ap+4L : 0x5.028a2f1656a432d8p-16220L : inexact-ok
+= erfc downward ldbl-96-m68k 0x6.ap+4L : 0x5.028a2f1656a432dp-16220L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x6.ap+4L : 0x5.028a2f1656a432d8p-16220L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x6.ap+4L : 0x5.028a2f1656a432dp-16220L : inexact-ok
+= erfc upward ldbl-96-m68k 0x6.ap+4L : 0x5.028a2f1656a432d8p-16220L : inexact-ok
+= erfc downward ldbl-128 0x6.ap+4L : 0x5.028a2f1656a432d79f76a6f2df48p-16220L : inexact-ok
+= erfc tonearest ldbl-128 0x6.ap+4L : 0x5.028a2f1656a432d79f76a6f2df48p-16220L : inexact-ok
+= erfc towardzero ldbl-128 0x6.ap+4L : 0x5.028a2f1656a432d79f76a6f2df48p-16220L : inexact-ok
+= erfc upward ldbl-128 0x6.ap+4L : 0x5.028a2f1656a432d79f76a6f2df4cp-16220L : inexact-ok
+= erfc downward ldbl-128ibm 0x6.ap+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0x6.ap+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0x6.ap+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0x6.ap+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+erfc 106.5
+= erfc downward flt-32 0x6.a8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0x6.a8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0x6.a8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0x6.a8p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0x6.a8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc tonearest dbl-64 0x6.a8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc towardzero dbl-64 0x6.a8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc upward dbl-64 0x6.a8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a4p-16372L : inexact-ok
+= erfc tonearest ldbl-96-intel 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a4p-16372L : inexact-ok
+= erfc towardzero ldbl-96-intel 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a4p-16372L : inexact-ok
+= erfc upward ldbl-96-intel 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a8p-16372L : inexact-ok
+= erfc downward ldbl-96-m68k 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a4p-16372L : inexact-ok
+= erfc tonearest ldbl-96-m68k 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a4p-16372L : inexact-ok
+= erfc towardzero ldbl-96-m68k 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a4p-16372L : inexact-ok
+= erfc upward ldbl-96-m68k 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a8p-16372L : inexact-ok
+= erfc downward ldbl-128 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a5e595291fc8c4p-16372L : inexact-ok
+= erfc tonearest ldbl-128 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a5e595291fc8c4p-16372L : inexact-ok
+= erfc towardzero ldbl-128 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a5e595291fc8c4p-16372L : inexact-ok
+= erfc upward ldbl-128 0x6.a8p+4L : 0x2.0b5b5b3bbf7d96a5e595291fc8c6p-16372L : inexact-ok
+= erfc downward ldbl-128ibm 0x6.a8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0x6.a8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0x6.a8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0x6.a8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+erfc 106.625
+= erfc downward flt-32 0x6.aap+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0x6.aap+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0x6.aap+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0x6.aap+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0x6.aap+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc tonearest dbl-64 0x6.aap+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc towardzero dbl-64 0x6.aap+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc upward dbl-64 0x6.aap+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0x6.aap+4L : 0x6.0b6ee9978p-16412L : inexact-ok underflow errno-erange-ok
+= erfc tonearest ldbl-96-intel 0x6.aap+4L : 0x6.0b6ee998p-16412L : inexact-ok underflow errno-erange-ok
+= erfc towardzero ldbl-96-intel 0x6.aap+4L : 0x6.0b6ee9978p-16412L : inexact-ok underflow errno-erange-ok
+= erfc upward ldbl-96-intel 0x6.aap+4L : 0x6.0b6ee998p-16412L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-m68k 0x6.aap+4L : 0x6.0b6ee997cp-16412L : inexact-ok underflow errno-erange-ok
+= erfc tonearest ldbl-96-m68k 0x6.aap+4L : 0x6.0b6ee997cp-16412L : inexact-ok underflow errno-erange-ok
+= erfc towardzero ldbl-96-m68k 0x6.aap+4L : 0x6.0b6ee997cp-16412L : inexact-ok underflow errno-erange-ok
+= erfc upward ldbl-96-m68k 0x6.aap+4L : 0x6.0b6ee998p-16412L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128 0x6.aap+4L : 0x6.0b6ee997d3343b5bf2f08p-16412L : inexact-ok underflow errno-erange-ok
+= erfc tonearest ldbl-128 0x6.aap+4L : 0x6.0b6ee997d3343b5bf2f08p-16412L : inexact-ok underflow errno-erange-ok
+= erfc towardzero ldbl-128 0x6.aap+4L : 0x6.0b6ee997d3343b5bf2f08p-16412L : inexact-ok underflow errno-erange-ok
+= erfc upward ldbl-128 0x6.aap+4L : 0x6.0b6ee997d3343b5bf2f0cp-16412L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128ibm 0x6.aap+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0x6.aap+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0x6.aap+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0x6.aap+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+erfc 107
+= erfc downward flt-32 0x6.bp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0x6.bp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0x6.bp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0x6.bp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0x6.bp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc tonearest dbl-64 0x6.bp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc towardzero dbl-64 0x6.bp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc upward dbl-64 0x6.bp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-intel 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-intel 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-intel 0x6.bp+4L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-m68k 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-m68k 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-m68k 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-m68k 0x6.bp+4L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128 0x6.bp+4L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128ibm 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0x6.bp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0x6.bp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+erfc 108
+= erfc downward flt-32 0x6.cp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0x6.cp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0x6.cp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0x6.cp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0x6.cp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc tonearest dbl-64 0x6.cp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc towardzero dbl-64 0x6.cp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc upward dbl-64 0x6.cp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-intel 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-intel 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-intel 0x6.cp+4L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-m68k 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-m68k 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-m68k 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-m68k 0x6.cp+4L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128 0x6.cp+4L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128ibm 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0x6.cp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0x6.cp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+erfc 1000
+= erfc downward flt-32 0x3.e8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0x3.e8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0x3.e8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0x3.e8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0x3.e8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc tonearest dbl-64 0x3.e8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc towardzero dbl-64 0x3.e8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc upward dbl-64 0x3.e8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-intel 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-intel 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-intel 0x3.e8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-m68k 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-m68k 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-m68k 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-m68k 0x3.e8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128 0x3.e8p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128ibm 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0x3.e8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0x3.e8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+erfc max
+= erfc downward flt-32 0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc tonearest flt-32 0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc towardzero flt-32 0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= erfc upward flt-32 0xf.fffffp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc tonearest dbl-64 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc towardzero dbl-64 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc upward dbl-64 0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-intel 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-intel 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-intel 0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-m68k 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-m68k 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-m68k 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-m68k 0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128 0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128ibm 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= erfc downward dbl-64 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= erfc upward dbl-64 0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128 0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= erfc downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= erfc upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+exp 0
+= exp downward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp tonearest flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp towardzero flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp upward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp downward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp tonearest dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp towardzero dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp upward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp downward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp tonearest ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp towardzero ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp upward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp downward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp tonearest ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp towardzero ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp upward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp downward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp tonearest ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp towardzero ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp upward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp downward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= exp tonearest ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= exp towardzero ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= exp upward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+exp -0
+= exp downward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp tonearest flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp towardzero flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp upward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp downward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp tonearest dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp towardzero dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp upward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp downward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp tonearest ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp towardzero ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp upward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp downward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp upward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp downward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp tonearest ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp towardzero ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp upward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp downward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= exp tonearest ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= exp towardzero ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= exp upward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+exp 1
+= exp downward flt-32 0x1p+0f : 0x2.b7e15p+0f : inexact-ok
+= exp tonearest flt-32 0x1p+0f : 0x2.b7e15p+0f : inexact-ok
+= exp towardzero flt-32 0x1p+0f : 0x2.b7e15p+0f : inexact-ok
+= exp upward flt-32 0x1p+0f : 0x2.b7e154p+0f : inexact-ok
+= exp downward dbl-64 0x1p+0 : 0x2.b7e151628aed2p+0 : inexact-ok
+= exp tonearest dbl-64 0x1p+0 : 0x2.b7e151628aed2p+0 : inexact-ok
+= exp towardzero dbl-64 0x1p+0 : 0x2.b7e151628aed2p+0 : inexact-ok
+= exp upward dbl-64 0x1p+0 : 0x2.b7e151628aed4p+0 : inexact-ok
+= exp downward ldbl-96-intel 0x1p+0L : 0x2.b7e151628aed2a68p+0L : inexact-ok
+= exp tonearest ldbl-96-intel 0x1p+0L : 0x2.b7e151628aed2a6cp+0L : inexact-ok
+= exp towardzero ldbl-96-intel 0x1p+0L : 0x2.b7e151628aed2a68p+0L : inexact-ok
+= exp upward ldbl-96-intel 0x1p+0L : 0x2.b7e151628aed2a6cp+0L : inexact-ok
+= exp downward ldbl-96-m68k 0x1p+0L : 0x2.b7e151628aed2a68p+0L : inexact-ok
+= exp tonearest ldbl-96-m68k 0x1p+0L : 0x2.b7e151628aed2a6cp+0L : inexact-ok
+= exp towardzero ldbl-96-m68k 0x1p+0L : 0x2.b7e151628aed2a68p+0L : inexact-ok
+= exp upward ldbl-96-m68k 0x1p+0L : 0x2.b7e151628aed2a6cp+0L : inexact-ok
+= exp downward ldbl-128 0x1p+0L : 0x2.b7e151628aed2a6abf7158809cf4p+0L : inexact-ok
+= exp tonearest ldbl-128 0x1p+0L : 0x2.b7e151628aed2a6abf7158809cf4p+0L : inexact-ok
+= exp towardzero ldbl-128 0x1p+0L : 0x2.b7e151628aed2a6abf7158809cf4p+0L : inexact-ok
+= exp upward ldbl-128 0x1p+0L : 0x2.b7e151628aed2a6abf7158809cf6p+0L : inexact-ok
+= exp downward ldbl-128ibm 0x1p+0L : 0x2.b7e151628aed2a6abf7158809cp+0L : inexact-ok
+= exp tonearest ldbl-128ibm 0x1p+0L : 0x2.b7e151628aed2a6abf7158809dp+0L : inexact-ok
+= exp towardzero ldbl-128ibm 0x1p+0L : 0x2.b7e151628aed2a6abf7158809cp+0L : inexact-ok
+= exp upward ldbl-128ibm 0x1p+0L : 0x2.b7e151628aed2a6abf7158809dp+0L : inexact-ok
+exp 2
+= exp downward flt-32 0x2p+0f : 0x7.639928p+0f : inexact-ok
+= exp tonearest flt-32 0x2p+0f : 0x7.63993p+0f : inexact-ok
+= exp towardzero flt-32 0x2p+0f : 0x7.639928p+0f : inexact-ok
+= exp upward flt-32 0x2p+0f : 0x7.63993p+0f : inexact-ok
+= exp downward dbl-64 0x2p+0 : 0x7.63992e35376b4p+0 : inexact-ok
+= exp tonearest dbl-64 0x2p+0 : 0x7.63992e35376b8p+0 : inexact-ok
+= exp towardzero dbl-64 0x2p+0 : 0x7.63992e35376b4p+0 : inexact-ok
+= exp upward dbl-64 0x2p+0 : 0x7.63992e35376b8p+0 : inexact-ok
+= exp downward ldbl-96-intel 0x2p+0L : 0x7.63992e35376b7308p+0L : inexact-ok
+= exp tonearest ldbl-96-intel 0x2p+0L : 0x7.63992e35376b731p+0L : inexact-ok
+= exp towardzero ldbl-96-intel 0x2p+0L : 0x7.63992e35376b7308p+0L : inexact-ok
+= exp upward ldbl-96-intel 0x2p+0L : 0x7.63992e35376b731p+0L : inexact-ok
+= exp downward ldbl-96-m68k 0x2p+0L : 0x7.63992e35376b7308p+0L : inexact-ok
+= exp tonearest ldbl-96-m68k 0x2p+0L : 0x7.63992e35376b731p+0L : inexact-ok
+= exp towardzero ldbl-96-m68k 0x2p+0L : 0x7.63992e35376b7308p+0L : inexact-ok
+= exp upward ldbl-96-m68k 0x2p+0L : 0x7.63992e35376b731p+0L : inexact-ok
+= exp downward ldbl-128 0x2p+0L : 0x7.63992e35376b730ce8ee881ada28p+0L : inexact-ok
+= exp tonearest ldbl-128 0x2p+0L : 0x7.63992e35376b730ce8ee881ada2cp+0L : inexact-ok
+= exp towardzero ldbl-128 0x2p+0L : 0x7.63992e35376b730ce8ee881ada28p+0L : inexact-ok
+= exp upward ldbl-128 0x2p+0L : 0x7.63992e35376b730ce8ee881ada2cp+0L : inexact-ok
+= exp downward ldbl-128ibm 0x2p+0L : 0x7.63992e35376b730ce8ee881adap+0L : inexact-ok
+= exp tonearest ldbl-128ibm 0x2p+0L : 0x7.63992e35376b730ce8ee881adap+0L : inexact-ok
+= exp towardzero ldbl-128ibm 0x2p+0L : 0x7.63992e35376b730ce8ee881adap+0L : inexact-ok
+= exp upward ldbl-128ibm 0x2p+0L : 0x7.63992e35376b730ce8ee881adcp+0L : inexact-ok
+exp 3
+= exp downward flt-32 0x3p+0f : 0x1.415e5ap+4f : inexact-ok
+= exp tonearest flt-32 0x3p+0f : 0x1.415e5cp+4f : inexact-ok
+= exp towardzero flt-32 0x3p+0f : 0x1.415e5ap+4f : inexact-ok
+= exp upward flt-32 0x3p+0f : 0x1.415e5cp+4f : inexact-ok
+= exp downward dbl-64 0x3p+0 : 0x1.415e5bf6fb105p+4 : inexact-ok
+= exp tonearest dbl-64 0x3p+0 : 0x1.415e5bf6fb106p+4 : inexact-ok
+= exp towardzero dbl-64 0x3p+0 : 0x1.415e5bf6fb105p+4 : inexact-ok
+= exp upward dbl-64 0x3p+0 : 0x1.415e5bf6fb106p+4 : inexact-ok
+= exp downward ldbl-96-intel 0x3p+0L : 0x1.415e5bf6fb105f2cp+4L : inexact-ok
+= exp tonearest ldbl-96-intel 0x3p+0L : 0x1.415e5bf6fb105f2ep+4L : inexact-ok
+= exp towardzero ldbl-96-intel 0x3p+0L : 0x1.415e5bf6fb105f2cp+4L : inexact-ok
+= exp upward ldbl-96-intel 0x3p+0L : 0x1.415e5bf6fb105f2ep+4L : inexact-ok
+= exp downward ldbl-96-m68k 0x3p+0L : 0x1.415e5bf6fb105f2cp+4L : inexact-ok
+= exp tonearest ldbl-96-m68k 0x3p+0L : 0x1.415e5bf6fb105f2ep+4L : inexact-ok
+= exp towardzero ldbl-96-m68k 0x3p+0L : 0x1.415e5bf6fb105f2cp+4L : inexact-ok
+= exp upward ldbl-96-m68k 0x3p+0L : 0x1.415e5bf6fb105f2ep+4L : inexact-ok
+= exp downward ldbl-128 0x3p+0L : 0x1.415e5bf6fb105f2d4bdfc53744c3p+4L : inexact-ok
+= exp tonearest ldbl-128 0x3p+0L : 0x1.415e5bf6fb105f2d4bdfc53744c4p+4L : inexact-ok
+= exp towardzero ldbl-128 0x3p+0L : 0x1.415e5bf6fb105f2d4bdfc53744c3p+4L : inexact-ok
+= exp upward ldbl-128 0x3p+0L : 0x1.415e5bf6fb105f2d4bdfc53744c4p+4L : inexact-ok
+= exp downward ldbl-128ibm 0x3p+0L : 0x1.415e5bf6fb105f2d4bdfc537448p+4L : inexact-ok
+= exp tonearest ldbl-128ibm 0x3p+0L : 0x1.415e5bf6fb105f2d4bdfc53745p+4L : inexact-ok
+= exp towardzero ldbl-128ibm 0x3p+0L : 0x1.415e5bf6fb105f2d4bdfc537448p+4L : inexact-ok
+= exp upward ldbl-128ibm 0x3p+0L : 0x1.415e5bf6fb105f2d4bdfc53745p+4L : inexact-ok
+exp 0.75
+= exp downward flt-32 0xcp-4f : 0x2.1df3b4p+0f : inexact-ok
+= exp tonearest flt-32 0xcp-4f : 0x2.1df3b8p+0f : inexact-ok
+= exp towardzero flt-32 0xcp-4f : 0x2.1df3b4p+0f : inexact-ok
+= exp upward flt-32 0xcp-4f : 0x2.1df3b8p+0f : inexact-ok
+= exp downward dbl-64 0xcp-4 : 0x2.1df3b68cfb9eep+0 : inexact-ok
+= exp tonearest dbl-64 0xcp-4 : 0x2.1df3b68cfb9fp+0 : inexact-ok
+= exp towardzero dbl-64 0xcp-4 : 0x2.1df3b68cfb9eep+0 : inexact-ok
+= exp upward dbl-64 0xcp-4 : 0x2.1df3b68cfb9fp+0 : inexact-ok
+= exp downward ldbl-96-intel 0xcp-4L : 0x2.1df3b68cfb9ef7a8p+0L : inexact-ok
+= exp tonearest ldbl-96-intel 0xcp-4L : 0x2.1df3b68cfb9ef7a8p+0L : inexact-ok
+= exp towardzero ldbl-96-intel 0xcp-4L : 0x2.1df3b68cfb9ef7a8p+0L : inexact-ok
+= exp upward ldbl-96-intel 0xcp-4L : 0x2.1df3b68cfb9ef7acp+0L : inexact-ok
+= exp downward ldbl-96-m68k 0xcp-4L : 0x2.1df3b68cfb9ef7a8p+0L : inexact-ok
+= exp tonearest ldbl-96-m68k 0xcp-4L : 0x2.1df3b68cfb9ef7a8p+0L : inexact-ok
+= exp towardzero ldbl-96-m68k 0xcp-4L : 0x2.1df3b68cfb9ef7a8p+0L : inexact-ok
+= exp upward ldbl-96-m68k 0xcp-4L : 0x2.1df3b68cfb9ef7acp+0L : inexact-ok
+= exp downward ldbl-128 0xcp-4L : 0x2.1df3b68cfb9ef7a986addc7dcee2p+0L : inexact-ok
+= exp tonearest ldbl-128 0xcp-4L : 0x2.1df3b68cfb9ef7a986addc7dcee2p+0L : inexact-ok
+= exp towardzero ldbl-128 0xcp-4L : 0x2.1df3b68cfb9ef7a986addc7dcee2p+0L : inexact-ok
+= exp upward ldbl-128 0xcp-4L : 0x2.1df3b68cfb9ef7a986addc7dcee4p+0L : inexact-ok
+= exp downward ldbl-128ibm 0xcp-4L : 0x2.1df3b68cfb9ef7a986addc7dcep+0L : inexact-ok
+= exp tonearest ldbl-128ibm 0xcp-4L : 0x2.1df3b68cfb9ef7a986addc7dcfp+0L : inexact-ok
+= exp towardzero ldbl-128ibm 0xcp-4L : 0x2.1df3b68cfb9ef7a986addc7dcep+0L : inexact-ok
+= exp upward ldbl-128ibm 0xcp-4L : 0x2.1df3b68cfb9ef7a986addc7dcfp+0L : inexact-ok
+exp 50.0
+= exp downward flt-32 0x3.2p+4f : 0x1.19103ep+72f : inexact-ok
+= exp tonearest flt-32 0x3.2p+4f : 0x1.19103ep+72f : inexact-ok
+= exp towardzero flt-32 0x3.2p+4f : 0x1.19103ep+72f : inexact-ok
+= exp upward flt-32 0x3.2p+4f : 0x1.19104p+72f : inexact-ok
+= exp downward dbl-64 0x3.2p+4 : 0x1.19103e4080b45p+72 : inexact-ok
+= exp tonearest dbl-64 0x3.2p+4 : 0x1.19103e4080b45p+72 : inexact-ok
+= exp towardzero dbl-64 0x3.2p+4 : 0x1.19103e4080b45p+72 : inexact-ok
+= exp upward dbl-64 0x3.2p+4 : 0x1.19103e4080b46p+72 : inexact-ok
+= exp downward ldbl-96-intel 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= exp tonearest ldbl-96-intel 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= exp towardzero ldbl-96-intel 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= exp upward ldbl-96-intel 0x3.2p+4L : 0x1.19103e4080b45666p+72L : inexact-ok
+= exp downward ldbl-96-m68k 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= exp tonearest ldbl-96-m68k 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= exp towardzero ldbl-96-m68k 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= exp upward ldbl-96-m68k 0x3.2p+4L : 0x1.19103e4080b45666p+72L : inexact-ok
+= exp downward ldbl-128 0x3.2p+4L : 0x1.19103e4080b45664d7740cf8c5d8p+72L : inexact-ok
+= exp tonearest ldbl-128 0x3.2p+4L : 0x1.19103e4080b45664d7740cf8c5d9p+72L : inexact-ok
+= exp towardzero ldbl-128 0x3.2p+4L : 0x1.19103e4080b45664d7740cf8c5d8p+72L : inexact-ok
+= exp upward ldbl-128 0x3.2p+4L : 0x1.19103e4080b45664d7740cf8c5d9p+72L : inexact-ok
+= exp downward ldbl-128ibm 0x3.2p+4L : 0x1.19103e4080b45664d7740cf8c58p+72L : inexact-ok
+= exp tonearest ldbl-128ibm 0x3.2p+4L : 0x1.19103e4080b45664d7740cf8c6p+72L : inexact-ok
+= exp towardzero ldbl-128ibm 0x3.2p+4L : 0x1.19103e4080b45664d7740cf8c58p+72L : inexact-ok
+= exp upward ldbl-128ibm 0x3.2p+4L : 0x1.19103e4080b45664d7740cf8c6p+72L : inexact-ok
+exp 88.72269439697265625
+= exp downward flt-32 0x5.8b9028p+4f : 0xf.ff684p+124f : inexact-ok
+= exp tonearest flt-32 0x5.8b9028p+4f : 0xf.ff684p+124f : inexact-ok
+= exp towardzero flt-32 0x5.8b9028p+4f : 0xf.ff684p+124f : inexact-ok
+= exp upward flt-32 0x5.8b9028p+4f : 0xf.ff685p+124f : inexact-ok
+= exp downward dbl-64 0x5.8b9028p+4 : 0xf.ff6844410e1fp+124 : inexact-ok
+= exp tonearest dbl-64 0x5.8b9028p+4 : 0xf.ff6844410e1f8p+124 : inexact-ok
+= exp towardzero dbl-64 0x5.8b9028p+4 : 0xf.ff6844410e1fp+124 : inexact-ok
+= exp upward dbl-64 0x5.8b9028p+4 : 0xf.ff6844410e1f8p+124 : inexact-ok
+= exp downward ldbl-96-intel 0x5.8b9028p+4L : 0xf.ff6844410e1f547p+124L : inexact-ok
+= exp tonearest ldbl-96-intel 0x5.8b9028p+4L : 0xf.ff6844410e1f547p+124L : inexact-ok
+= exp towardzero ldbl-96-intel 0x5.8b9028p+4L : 0xf.ff6844410e1f547p+124L : inexact-ok
+= exp upward ldbl-96-intel 0x5.8b9028p+4L : 0xf.ff6844410e1f548p+124L : inexact-ok
+= exp downward ldbl-96-m68k 0x5.8b9028p+4L : 0xf.ff6844410e1f547p+124L : inexact-ok
+= exp tonearest ldbl-96-m68k 0x5.8b9028p+4L : 0xf.ff6844410e1f547p+124L : inexact-ok
+= exp towardzero ldbl-96-m68k 0x5.8b9028p+4L : 0xf.ff6844410e1f547p+124L : inexact-ok
+= exp upward ldbl-96-m68k 0x5.8b9028p+4L : 0xf.ff6844410e1f548p+124L : inexact-ok
+= exp downward ldbl-128 0x5.8b9028p+4L : 0xf.ff6844410e1f547369129d530d4p+124L : inexact-ok
+= exp tonearest ldbl-128 0x5.8b9028p+4L : 0xf.ff6844410e1f547369129d530d48p+124L : inexact-ok
+= exp towardzero ldbl-128 0x5.8b9028p+4L : 0xf.ff6844410e1f547369129d530d4p+124L : inexact-ok
+= exp upward ldbl-128 0x5.8b9028p+4L : 0xf.ff6844410e1f547369129d530d48p+124L : inexact-ok
+= exp downward ldbl-128ibm 0x5.8b9028p+4L : 0xf.ff6844410e1f547369129d530cp+124L : inexact-ok
+= exp tonearest ldbl-128ibm 0x5.8b9028p+4L : 0xf.ff6844410e1f547369129d530cp+124L : inexact-ok
+= exp towardzero ldbl-128ibm 0x5.8b9028p+4L : 0xf.ff6844410e1f547369129d530cp+124L : inexact-ok
+= exp upward ldbl-128ibm 0x5.8b9028p+4L : 0xf.ff6844410e1f547369129d531p+124L : inexact-ok
+exp 709.75
+= exp downward flt-32 0x2.c5cp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp tonearest flt-32 0x2.c5cp+8f : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero flt-32 0x2.c5cp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp upward flt-32 0x2.c5cp+8f : plus_infty : inexact-ok overflow errno-erange
+= exp downward dbl-64 0x2.c5cp+8 : 0xf.7c2d08f39f968p+1020 : inexact-ok
+= exp tonearest dbl-64 0x2.c5cp+8 : 0xf.7c2d08f39f968p+1020 : inexact-ok
+= exp towardzero dbl-64 0x2.c5cp+8 : 0xf.7c2d08f39f968p+1020 : inexact-ok
+= exp upward dbl-64 0x2.c5cp+8 : 0xf.7c2d08f39f97p+1020 : inexact-ok
+= exp downward ldbl-96-intel 0x2.c5cp+8L : 0xf.7c2d08f39f969a2p+1020L : inexact-ok
+= exp tonearest ldbl-96-intel 0x2.c5cp+8L : 0xf.7c2d08f39f969a2p+1020L : inexact-ok
+= exp towardzero ldbl-96-intel 0x2.c5cp+8L : 0xf.7c2d08f39f969a2p+1020L : inexact-ok
+= exp upward ldbl-96-intel 0x2.c5cp+8L : 0xf.7c2d08f39f969a3p+1020L : inexact-ok
+= exp downward ldbl-96-m68k 0x2.c5cp+8L : 0xf.7c2d08f39f969a2p+1020L : inexact-ok
+= exp tonearest ldbl-96-m68k 0x2.c5cp+8L : 0xf.7c2d08f39f969a2p+1020L : inexact-ok
+= exp towardzero ldbl-96-m68k 0x2.c5cp+8L : 0xf.7c2d08f39f969a2p+1020L : inexact-ok
+= exp upward ldbl-96-m68k 0x2.c5cp+8L : 0xf.7c2d08f39f969a3p+1020L : inexact-ok
+= exp downward ldbl-128 0x2.c5cp+8L : 0xf.7c2d08f39f969a25d99164d121d8p+1020L : inexact-ok
+= exp tonearest ldbl-128 0x2.c5cp+8L : 0xf.7c2d08f39f969a25d99164d121d8p+1020L : inexact-ok
+= exp towardzero ldbl-128 0x2.c5cp+8L : 0xf.7c2d08f39f969a25d99164d121d8p+1020L : inexact-ok
+= exp upward ldbl-128 0x2.c5cp+8L : 0xf.7c2d08f39f969a25d99164d121ep+1020L : inexact-ok
+= exp downward ldbl-128ibm 0x2.c5cp+8L : 0xf.7c2d08f39f969a25d99164d12p+1020L : inexact-ok
+= exp tonearest ldbl-128ibm 0x2.c5cp+8L : 0xf.7c2d08f39f969a25d99164d12p+1020L : inexact-ok
+= exp towardzero ldbl-128ibm 0x2.c5cp+8L : 0xf.7c2d08f39f969a25d99164d12p+1020L : inexact-ok
+= exp upward ldbl-128ibm 0x2.c5cp+8L : 0xf.7c2d08f39f969a25d99164d124p+1020L : inexact-ok
+exp 1000.0 xfail-rounding:dbl-64
+= exp downward flt-32 0x3.e8p+8f : 0xf.fffffp+124f : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest flt-32 0x3.e8p+8f : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero flt-32 0x3.e8p+8f : 0xf.fffffp+124f : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward flt-32 0x3.e8p+8f : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward dbl-64 0x3.e8p+8 : 0xf.ffffffffffff8p+1020 : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest dbl-64 0x3.e8p+8 : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero dbl-64 0x3.e8p+8 : 0xf.ffffffffffff8p+1020 : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward dbl-64 0x3.e8p+8 : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-96-intel 0x3.e8p+8L : 0x6.79c8de6bb5ceb6p+1440L : xfail:dbl-64 inexact-ok
+= exp tonearest ldbl-96-intel 0x3.e8p+8L : 0x6.79c8de6bb5ceb6p+1440L : inexact-ok
+= exp towardzero ldbl-96-intel 0x3.e8p+8L : 0x6.79c8de6bb5ceb6p+1440L : xfail:dbl-64 inexact-ok
+= exp upward ldbl-96-intel 0x3.e8p+8L : 0x6.79c8de6bb5ceb608p+1440L : xfail:dbl-64 inexact-ok
+= exp downward ldbl-96-m68k 0x3.e8p+8L : 0x6.79c8de6bb5ceb6p+1440L : xfail:dbl-64 inexact-ok
+= exp tonearest ldbl-96-m68k 0x3.e8p+8L : 0x6.79c8de6bb5ceb6p+1440L : inexact-ok
+= exp towardzero ldbl-96-m68k 0x3.e8p+8L : 0x6.79c8de6bb5ceb6p+1440L : xfail:dbl-64 inexact-ok
+= exp upward ldbl-96-m68k 0x3.e8p+8L : 0x6.79c8de6bb5ceb608p+1440L : xfail:dbl-64 inexact-ok
+= exp downward ldbl-128 0x3.e8p+8L : 0x6.79c8de6bb5ceb60158acfea8d144p+1440L : xfail:dbl-64 inexact-ok
+= exp tonearest ldbl-128 0x3.e8p+8L : 0x6.79c8de6bb5ceb60158acfea8d148p+1440L : inexact-ok
+= exp towardzero ldbl-128 0x3.e8p+8L : 0x6.79c8de6bb5ceb60158acfea8d144p+1440L : xfail:dbl-64 inexact-ok
+= exp upward ldbl-128 0x3.e8p+8L : 0x6.79c8de6bb5ceb60158acfea8d148p+1440L : xfail:dbl-64 inexact-ok
+= exp downward ldbl-128ibm 0x3.e8p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128ibm 0x3.e8p+8L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128ibm 0x3.e8p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128ibm 0x3.e8p+8L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+exp 710 xfail-rounding:dbl-64
+= exp downward flt-32 0x2.c6p+8f : 0xf.fffffp+124f : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest flt-32 0x2.c6p+8f : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero flt-32 0x2.c6p+8f : 0xf.fffffp+124f : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward flt-32 0x2.c6p+8f : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward dbl-64 0x2.c6p+8 : 0xf.ffffffffffff8p+1020 : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest dbl-64 0x2.c6p+8 : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero dbl-64 0x2.c6p+8 : 0xf.ffffffffffff8p+1020 : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward dbl-64 0x2.c6p+8 : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-96-intel 0x2.c6p+8L : 0x1.3e21a464507f94ap+1024L : xfail:dbl-64 inexact-ok
+= exp tonearest ldbl-96-intel 0x2.c6p+8L : 0x1.3e21a464507f94ap+1024L : inexact-ok
+= exp towardzero ldbl-96-intel 0x2.c6p+8L : 0x1.3e21a464507f94ap+1024L : xfail:dbl-64 inexact-ok
+= exp upward ldbl-96-intel 0x2.c6p+8L : 0x1.3e21a464507f94a2p+1024L : xfail:dbl-64 inexact-ok
+= exp downward ldbl-96-m68k 0x2.c6p+8L : 0x1.3e21a464507f94ap+1024L : xfail:dbl-64 inexact-ok
+= exp tonearest ldbl-96-m68k 0x2.c6p+8L : 0x1.3e21a464507f94ap+1024L : inexact-ok
+= exp towardzero ldbl-96-m68k 0x2.c6p+8L : 0x1.3e21a464507f94ap+1024L : xfail:dbl-64 inexact-ok
+= exp upward ldbl-96-m68k 0x2.c6p+8L : 0x1.3e21a464507f94a2p+1024L : xfail:dbl-64 inexact-ok
+= exp downward ldbl-128 0x2.c6p+8L : 0x1.3e21a464507f94a0ae03700b899cp+1024L : xfail:dbl-64 inexact-ok
+= exp tonearest ldbl-128 0x2.c6p+8L : 0x1.3e21a464507f94a0ae03700b899dp+1024L : inexact-ok
+= exp towardzero ldbl-128 0x2.c6p+8L : 0x1.3e21a464507f94a0ae03700b899cp+1024L : xfail:dbl-64 inexact-ok
+= exp upward ldbl-128 0x2.c6p+8L : 0x1.3e21a464507f94a0ae03700b899dp+1024L : xfail:dbl-64 inexact-ok
+= exp downward ldbl-128ibm 0x2.c6p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128ibm 0x2.c6p+8L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128ibm 0x2.c6p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128ibm 0x2.c6p+8L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+exp -1234
+= exp downward flt-32 -0x4.d2p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp tonearest flt-32 -0x4.d2p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp towardzero flt-32 -0x4.d2p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp upward flt-32 -0x4.d2p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp downward dbl-64 -0x4.d2p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp tonearest dbl-64 -0x4.d2p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp towardzero dbl-64 -0x4.d2p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp upward dbl-64 -0x4.d2p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0x4.d2p+8L : 0xd.202c22e749b3087p-1784L : inexact-ok
+= exp tonearest ldbl-96-intel -0x4.d2p+8L : 0xd.202c22e749b3087p-1784L : inexact-ok
+= exp towardzero ldbl-96-intel -0x4.d2p+8L : 0xd.202c22e749b3087p-1784L : inexact-ok
+= exp upward ldbl-96-intel -0x4.d2p+8L : 0xd.202c22e749b3088p-1784L : inexact-ok
+= exp downward ldbl-96-m68k -0x4.d2p+8L : 0xd.202c22e749b3087p-1784L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x4.d2p+8L : 0xd.202c22e749b3087p-1784L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x4.d2p+8L : 0xd.202c22e749b3087p-1784L : inexact-ok
+= exp upward ldbl-96-m68k -0x4.d2p+8L : 0xd.202c22e749b3088p-1784L : inexact-ok
+= exp downward ldbl-128 -0x4.d2p+8L : 0xd.202c22e749b30873a3228b398b48p-1784L : inexact-ok
+= exp tonearest ldbl-128 -0x4.d2p+8L : 0xd.202c22e749b30873a3228b398b5p-1784L : inexact-ok
+= exp towardzero ldbl-128 -0x4.d2p+8L : 0xd.202c22e749b30873a3228b398b48p-1784L : inexact-ok
+= exp upward ldbl-128 -0x4.d2p+8L : 0xd.202c22e749b30873a3228b398b5p-1784L : inexact-ok
+= exp downward ldbl-128ibm -0x4.d2p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128ibm -0x4.d2p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128ibm -0x4.d2p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128ibm -0x4.d2p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+exp 1e5 xfail-rounding:dbl-64
+= exp downward flt-32 0x1.86ap+16f : 0xf.fffffp+124f : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest flt-32 0x1.86ap+16f : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero flt-32 0x1.86ap+16f : 0xf.fffffp+124f : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward flt-32 0x1.86ap+16f : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward dbl-64 0x1.86ap+16 : 0xf.ffffffffffff8p+1020 : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest dbl-64 0x1.86ap+16 : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero dbl-64 0x1.86ap+16 : 0xf.ffffffffffff8p+1020 : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward dbl-64 0x1.86ap+16 : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-96-intel 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-96-intel 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-96-intel 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-96-intel 0x1.86ap+16L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-96-m68k 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-96-m68k 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-96-m68k 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-96-m68k 0x1.86ap+16L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-128 0x1.86ap+16L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128 0x1.86ap+16L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128 0x1.86ap+16L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-128ibm 0x1.86ap+16L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128ibm 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128ibm 0x1.86ap+16L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128ibm 0x1.86ap+16L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+exp max xfail-rounding:dbl-64
+= exp downward flt-32 0xf.fffffp+124f : 0xf.fffffp+124f : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest flt-32 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+124f : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward flt-32 0xf.fffffp+124f : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward dbl-64 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest dbl-64 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero dbl-64 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward dbl-64 0xf.fffffp+124 : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-96-intel 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-96-intel 0xf.fffffp+124L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-96-m68k 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-96-m68k 0xf.fffffp+124L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-128 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128 0xf.fffffp+124L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-128ibm 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128ibm 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128ibm 0xf.fffffp+124L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest dbl-64 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward dbl-64 0xf.ffffffffffff8p+1020 : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128 0xf.ffffffffffff8p+1020L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-96-intel 0xf.fffffffffffffffp+16380L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-128 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128 0xf.fffffffffffffffp+16380L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+= exp downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : xfail:dbl-64 inexact-ok overflow errno-erange-ok
+= exp upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : xfail:dbl-64 inexact-ok overflow errno-erange
+exp -7.4444006192138124e+02
+= exp downward flt-32 -0x2.e870a4p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp tonearest flt-32 -0x2.e870a4p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp towardzero flt-32 -0x2.e870a4p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp upward flt-32 -0x2.e870a4p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp downward dbl-64 -0x2.e870a4p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp tonearest dbl-64 -0x2.e870a4p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp towardzero dbl-64 -0x2.e870a4p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp upward dbl-64 -0x2.e870a4p+8 : 0x8p-1076 : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0x2.e870a4p+8L : 0x4.001236e259a703f8p-1076L : inexact-ok
+= exp tonearest ldbl-96-intel -0x2.e870a4p+8L : 0x4.001236e259a704p-1076L : inexact-ok
+= exp towardzero ldbl-96-intel -0x2.e870a4p+8L : 0x4.001236e259a703f8p-1076L : inexact-ok
+= exp upward ldbl-96-intel -0x2.e870a4p+8L : 0x4.001236e259a704p-1076L : inexact-ok
+= exp downward ldbl-96-m68k -0x2.e870a4p+8L : 0x4.001236e259a703f8p-1076L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x2.e870a4p+8L : 0x4.001236e259a704p-1076L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x2.e870a4p+8L : 0x4.001236e259a703f8p-1076L : inexact-ok
+= exp upward ldbl-96-m68k -0x2.e870a4p+8L : 0x4.001236e259a704p-1076L : inexact-ok
+= exp downward ldbl-128 -0x2.e870a4p+8L : 0x4.001236e259a703fe35e4572c21b4p-1076L : inexact-ok
+= exp tonearest ldbl-128 -0x2.e870a4p+8L : 0x4.001236e259a703fe35e4572c21b8p-1076L : inexact-ok
+= exp towardzero ldbl-128 -0x2.e870a4p+8L : 0x4.001236e259a703fe35e4572c21b4p-1076L : inexact-ok
+= exp upward ldbl-128 -0x2.e870a4p+8L : 0x4.001236e259a703fe35e4572c21b8p-1076L : inexact-ok
+= exp downward ldbl-128ibm -0x2.e870a4p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp tonearest ldbl-128ibm -0x2.e870a4p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp towardzero ldbl-128ibm -0x2.e870a4p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp upward ldbl-128ibm -0x2.e870a4p+8L : 0x8p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward flt-32 -0x2.e870a8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp tonearest flt-32 -0x2.e870a8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp towardzero flt-32 -0x2.e870a8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp upward flt-32 -0x2.e870a8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp downward dbl-64 -0x2.e870a8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp tonearest dbl-64 -0x2.e870a8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp towardzero dbl-64 -0x2.e870a8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp upward dbl-64 -0x2.e870a8p+8 : 0x8p-1076 : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0x2.e870a8p+8L : 0x4.000236b97e84a93p-1076L : inexact-ok
+= exp tonearest ldbl-96-intel -0x2.e870a8p+8L : 0x4.000236b97e84a93p-1076L : inexact-ok
+= exp towardzero ldbl-96-intel -0x2.e870a8p+8L : 0x4.000236b97e84a93p-1076L : inexact-ok
+= exp upward ldbl-96-intel -0x2.e870a8p+8L : 0x4.000236b97e84a938p-1076L : inexact-ok
+= exp downward ldbl-96-m68k -0x2.e870a8p+8L : 0x4.000236b97e84a93p-1076L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x2.e870a8p+8L : 0x4.000236b97e84a93p-1076L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x2.e870a8p+8L : 0x4.000236b97e84a93p-1076L : inexact-ok
+= exp upward ldbl-96-m68k -0x2.e870a8p+8L : 0x4.000236b97e84a938p-1076L : inexact-ok
+= exp downward ldbl-128 -0x2.e870a8p+8L : 0x4.000236b97e84a932aa555f5e8ce4p-1076L : inexact-ok
+= exp tonearest ldbl-128 -0x2.e870a8p+8L : 0x4.000236b97e84a932aa555f5e8ce4p-1076L : inexact-ok
+= exp towardzero ldbl-128 -0x2.e870a8p+8L : 0x4.000236b97e84a932aa555f5e8ce4p-1076L : inexact-ok
+= exp upward ldbl-128 -0x2.e870a8p+8L : 0x4.000236b97e84a932aa555f5e8ce8p-1076L : inexact-ok
+= exp downward ldbl-128ibm -0x2.e870a8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp tonearest ldbl-128ibm -0x2.e870a8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp towardzero ldbl-128ibm -0x2.e870a8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp upward ldbl-128ibm -0x2.e870a8p+8L : 0x8p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward dbl-64 -0x2.e870a7e5e88cp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp tonearest dbl-64 -0x2.e870a7e5e88cp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp towardzero dbl-64 -0x2.e870a7e5e88cp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp upward dbl-64 -0x2.e870a7e5e88cp+8 : 0x8p-1076 : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa08p-1076L : inexact-ok
+= exp tonearest ldbl-96-intel -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa1p-1076L : inexact-ok
+= exp towardzero ldbl-96-intel -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa08p-1076L : inexact-ok
+= exp upward ldbl-96-intel -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa1p-1076L : inexact-ok
+= exp downward ldbl-96-m68k -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa08p-1076L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa1p-1076L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa08p-1076L : inexact-ok
+= exp upward ldbl-96-m68k -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa1p-1076L : inexact-ok
+= exp downward ldbl-128 -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa0e72d456f74c24p-1076L : inexact-ok
+= exp tonearest ldbl-128 -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa0e72d456f74c28p-1076L : inexact-ok
+= exp towardzero ldbl-128 -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa0e72d456f74c24p-1076L : inexact-ok
+= exp upward ldbl-128 -0x2.e870a7e5e88cp+8L : 0x4.00029f178d98fa0e72d456f74c28p-1076L : inexact-ok
+= exp downward ldbl-128ibm -0x2.e870a7e5e88cp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp tonearest ldbl-128ibm -0x2.e870a7e5e88cp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp towardzero ldbl-128ibm -0x2.e870a7e5e88cp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp upward ldbl-128ibm -0x2.e870a7e5e88cp+8L : 0x8p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward dbl-64 -0x2.e870a7e5e88c2p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp tonearest dbl-64 -0x2.e870a7e5e88c2p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp towardzero dbl-64 -0x2.e870a7e5e88c2p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp upward dbl-64 -0x2.e870a7e5e88c2p+8 : 0x8p-1076 : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9b8p-1076L : inexact-ok
+= exp tonearest ldbl-96-intel -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9b8p-1076L : inexact-ok
+= exp towardzero ldbl-96-intel -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9b8p-1076L : inexact-ok
+= exp upward ldbl-96-intel -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9cp-1076L : inexact-ok
+= exp downward ldbl-96-m68k -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9b8p-1076L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9b8p-1076L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9b8p-1076L : inexact-ok
+= exp upward ldbl-96-m68k -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9cp-1076L : inexact-ok
+= exp downward ldbl-128 -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9ba8fe2abd80f94p-1076L : inexact-ok
+= exp tonearest ldbl-128 -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9ba8fe2abd80f98p-1076L : inexact-ok
+= exp towardzero ldbl-128 -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9ba8fe2abd80f94p-1076L : inexact-ok
+= exp upward ldbl-128 -0x2.e870a7e5e88c2p+8L : 0x4.00029f178d18f9ba8fe2abd80f98p-1076L : inexact-ok
+= exp downward ldbl-128ibm -0x2.e870a7e5e88c2p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp tonearest ldbl-128ibm -0x2.e870a7e5e88c2p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp towardzero ldbl-128ibm -0x2.e870a7e5e88c2p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp upward ldbl-128ibm -0x2.e870a7e5e88c2p+8L : 0x8p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9b8p-1076L : inexact-ok
+= exp tonearest ldbl-96-intel -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9cp-1076L : inexact-ok
+= exp towardzero ldbl-96-intel -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9b8p-1076L : inexact-ok
+= exp upward ldbl-96-intel -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9cp-1076L : inexact-ok
+= exp downward ldbl-96-m68k -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9b8p-1076L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9cp-1076L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9b8p-1076L : inexact-ok
+= exp upward ldbl-96-m68k -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9cp-1076L : inexact-ok
+= exp downward ldbl-128 -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9bd0f851e55aebcp-1076L : inexact-ok
+= exp tonearest ldbl-128 -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9bd0f851e55aecp-1076L : inexact-ok
+= exp towardzero ldbl-128 -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9bd0f851e55aebcp-1076L : inexact-ok
+= exp upward ldbl-128 -0x2.e870a7e5e88c1f0cp+8L : 0x4.00029f178d1cc9bd0f851e55aecp-1076L : inexact-ok
+= exp downward ldbl-128ibm -0x2.e870a7e5e88c1f0cp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp tonearest ldbl-128ibm -0x2.e870a7e5e88c1f0cp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp towardzero ldbl-128ibm -0x2.e870a7e5e88c1f0cp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp upward ldbl-128ibm -0x2.e870a7e5e88c1f0cp+8L : 0x8p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9b8p-1076L : inexact-ok
+= exp tonearest ldbl-96-intel -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9cp-1076L : inexact-ok
+= exp towardzero ldbl-96-intel -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9b8p-1076L : inexact-ok
+= exp upward ldbl-96-intel -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9cp-1076L : inexact-ok
+= exp downward ldbl-96-m68k -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9b8p-1076L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9cp-1076L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9b8p-1076L : inexact-ok
+= exp upward ldbl-96-m68k -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9cp-1076L : inexact-ok
+= exp downward ldbl-128 -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9bd0508c0213bb4p-1076L : inexact-ok
+= exp tonearest ldbl-128 -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9bd0508c0213bb8p-1076L : inexact-ok
+= exp towardzero ldbl-128 -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9bd0508c0213bb4p-1076L : inexact-ok
+= exp upward ldbl-128 -0x2.e870a7e5e88c1f1p+8L : 0x4.00029f178d1cb9bd0508c0213bb8p-1076L : inexact-ok
+= exp downward ldbl-128ibm -0x2.e870a7e5e88c1f1p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp tonearest ldbl-128ibm -0x2.e870a7e5e88c1f1p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp towardzero ldbl-128ibm -0x2.e870a7e5e88c1f1p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp upward ldbl-128ibm -0x2.e870a7e5e88c1f1p+8L : 0x8p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cef2p+8L : 0x4.00029f178d1cbba1a34fc1f1ad4cp-1076L : inexact-ok
+= exp tonearest ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cef2p+8L : 0x4.00029f178d1cbba1a34fc1f1ad4cp-1076L : inexact-ok
+= exp towardzero ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cef2p+8L : 0x4.00029f178d1cbba1a34fc1f1ad4cp-1076L : inexact-ok
+= exp upward ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cef2p+8L : 0x4.00029f178d1cbba1a34fc1f1ad5p-1076L : inexact-ok
+= exp downward ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cef4p+8L : 0x4.00029f178d1cbba1a34fc1f1a54cp-1076L : inexact-ok
+= exp tonearest ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cef4p+8L : 0x4.00029f178d1cbba1a34fc1f1a54cp-1076L : inexact-ok
+= exp towardzero ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cef4p+8L : 0x4.00029f178d1cbba1a34fc1f1a54cp-1076L : inexact-ok
+= exp upward ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cef4p+8L : 0x4.00029f178d1cbba1a34fc1f1a55p-1076L : inexact-ok
+= exp downward ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cep+8L : 0x4.00029f178d1cbba1a34fc1f5754cp-1076L : inexact-ok
+= exp tonearest ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cep+8L : 0x4.00029f178d1cbba1a34fc1f5755p-1076L : inexact-ok
+= exp towardzero ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cep+8L : 0x4.00029f178d1cbba1a34fc1f5754cp-1076L : inexact-ok
+= exp upward ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cep+8L : 0x4.00029f178d1cbba1a34fc1f5755p-1076L : inexact-ok
+= exp downward ldbl-128ibm -0x2.e870a7e5e88c1f0f86d8bda5cep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp tonearest ldbl-128ibm -0x2.e870a7e5e88c1f0f86d8bda5cep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp towardzero ldbl-128ibm -0x2.e870a7e5e88c1f0f86d8bda5cep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp upward ldbl-128ibm -0x2.e870a7e5e88c1f0f86d8bda5cep+8L : 0x8p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cfp+8L : 0x4.00029f178d1cbba1a34fc1f1754cp-1076L : inexact-ok
+= exp tonearest ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cfp+8L : 0x4.00029f178d1cbba1a34fc1f1754cp-1076L : inexact-ok
+= exp towardzero ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cfp+8L : 0x4.00029f178d1cbba1a34fc1f1754cp-1076L : inexact-ok
+= exp upward ldbl-128 -0x2.e870a7e5e88c1f0f86d8bda5cfp+8L : 0x4.00029f178d1cbba1a34fc1f1755p-1076L : inexact-ok
+= exp downward ldbl-128ibm -0x2.e870a7e5e88c1f0f86d8bda5cfp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp tonearest ldbl-128ibm -0x2.e870a7e5e88c1f0f86d8bda5cfp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp towardzero ldbl-128ibm -0x2.e870a7e5e88c1f0f86d8bda5cfp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp upward ldbl-128ibm -0x2.e870a7e5e88c1f0f86d8bda5cfp+8L : 0x8p-1076L : inexact-ok underflow errno-erange-ok
+exp -0x1.75f113c30b1c8p+9
+= exp downward flt-32 -0x2.ebe224p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp tonearest flt-32 -0x2.ebe224p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp towardzero flt-32 -0x2.ebe224p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp upward flt-32 -0x2.ebe224p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp downward dbl-64 -0x2.ebe224p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp tonearest dbl-64 -0x2.ebe224p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp towardzero dbl-64 -0x2.ebe224p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp upward dbl-64 -0x2.ebe224p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b4p-1080L : inexact-ok
+= exp tonearest ldbl-96-intel -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b8p-1080L : inexact-ok
+= exp towardzero ldbl-96-intel -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b4p-1080L : inexact-ok
+= exp upward ldbl-96-intel -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b8p-1080L : inexact-ok
+= exp downward ldbl-96-m68k -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b4p-1080L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b8p-1080L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b4p-1080L : inexact-ok
+= exp upward ldbl-96-m68k -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b8p-1080L : inexact-ok
+= exp downward ldbl-128 -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b7b1e41fe97b6ep-1080L : inexact-ok
+= exp tonearest ldbl-128 -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b7b1e41fe97b6ep-1080L : inexact-ok
+= exp towardzero ldbl-128 -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b7b1e41fe97b6ep-1080L : inexact-ok
+= exp upward ldbl-128 -0x2.ebe224p+8L : 0x2.0b9f4f64aed595b7b1e41fe97b7p-1080L : inexact-ok
+= exp downward ldbl-128ibm -0x2.ebe224p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128ibm -0x2.ebe224p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128ibm -0x2.ebe224p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128ibm -0x2.ebe224p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward flt-32 -0x2.ebe228p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp tonearest flt-32 -0x2.ebe228p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp towardzero flt-32 -0x2.ebe228p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp upward flt-32 -0x2.ebe228p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp downward dbl-64 -0x2.ebe228p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp tonearest dbl-64 -0x2.ebe228p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp towardzero dbl-64 -0x2.ebe228p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp upward dbl-64 -0x2.ebe228p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0x2.ebe228p+8L : 0x2.0b9720f7ce27844cp-1080L : inexact-ok
+= exp tonearest ldbl-96-intel -0x2.ebe228p+8L : 0x2.0b9720f7ce27845p-1080L : inexact-ok
+= exp towardzero ldbl-96-intel -0x2.ebe228p+8L : 0x2.0b9720f7ce27844cp-1080L : inexact-ok
+= exp upward ldbl-96-intel -0x2.ebe228p+8L : 0x2.0b9720f7ce27845p-1080L : inexact-ok
+= exp downward ldbl-96-m68k -0x2.ebe228p+8L : 0x2.0b9720f7ce27844cp-1080L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x2.ebe228p+8L : 0x2.0b9720f7ce27845p-1080L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x2.ebe228p+8L : 0x2.0b9720f7ce27844cp-1080L : inexact-ok
+= exp upward ldbl-96-m68k -0x2.ebe228p+8L : 0x2.0b9720f7ce27845p-1080L : inexact-ok
+= exp downward ldbl-128 -0x2.ebe228p+8L : 0x2.0b9720f7ce27844ea9674284d866p-1080L : inexact-ok
+= exp tonearest ldbl-128 -0x2.ebe228p+8L : 0x2.0b9720f7ce27844ea9674284d868p-1080L : inexact-ok
+= exp towardzero ldbl-128 -0x2.ebe228p+8L : 0x2.0b9720f7ce27844ea9674284d866p-1080L : inexact-ok
+= exp upward ldbl-128 -0x2.ebe228p+8L : 0x2.0b9720f7ce27844ea9674284d868p-1080L : inexact-ok
+= exp downward ldbl-128ibm -0x2.ebe228p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128ibm -0x2.ebe228p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128ibm -0x2.ebe228p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128ibm -0x2.ebe228p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward dbl-64 -0x2.ebe227861639p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp tonearest dbl-64 -0x2.ebe227861639p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp towardzero dbl-64 -0x2.ebe227861639p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp upward dbl-64 -0x2.ebe227861639p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0x2.ebe227861639p+8L : 0x2.0b981a509bab7298p-1080L : inexact-ok
+= exp tonearest ldbl-96-intel -0x2.ebe227861639p+8L : 0x2.0b981a509bab7298p-1080L : inexact-ok
+= exp towardzero ldbl-96-intel -0x2.ebe227861639p+8L : 0x2.0b981a509bab7298p-1080L : inexact-ok
+= exp upward ldbl-96-intel -0x2.ebe227861639p+8L : 0x2.0b981a509bab729cp-1080L : inexact-ok
+= exp downward ldbl-96-m68k -0x2.ebe227861639p+8L : 0x2.0b981a509bab7298p-1080L : inexact-ok
+= exp tonearest ldbl-96-m68k -0x2.ebe227861639p+8L : 0x2.0b981a509bab7298p-1080L : inexact-ok
+= exp towardzero ldbl-96-m68k -0x2.ebe227861639p+8L : 0x2.0b981a509bab7298p-1080L : inexact-ok
+= exp upward ldbl-96-m68k -0x2.ebe227861639p+8L : 0x2.0b981a509bab729cp-1080L : inexact-ok
+= exp downward ldbl-128 -0x2.ebe227861639p+8L : 0x2.0b981a509bab72997118df69cd7ep-1080L : inexact-ok
+= exp tonearest ldbl-128 -0x2.ebe227861639p+8L : 0x2.0b981a509bab72997118df69cd8p-1080L : inexact-ok
+= exp towardzero ldbl-128 -0x2.ebe227861639p+8L : 0x2.0b981a509bab72997118df69cd7ep-1080L : inexact-ok
+= exp upward ldbl-128 -0x2.ebe227861639p+8L : 0x2.0b981a509bab72997118df69cd8p-1080L : inexact-ok
+= exp downward ldbl-128ibm -0x2.ebe227861639p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128ibm -0x2.ebe227861639p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128ibm -0x2.ebe227861639p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128ibm -0x2.ebe227861639p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+exp -max
+= exp downward flt-32 -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp tonearest flt-32 -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp towardzero flt-32 -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp upward flt-32 -0xf.fffffp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp downward dbl-64 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp tonearest dbl-64 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp towardzero dbl-64 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp upward dbl-64 -0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-96-intel -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-96-intel -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-96-intel -0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-m68k -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-96-m68k -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-96-m68k -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-96-m68k -0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-128 -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128 -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128 -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128 -0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-128ibm -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128ibm -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128ibm -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128ibm -0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward dbl-64 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp tonearest dbl-64 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp towardzero dbl-64 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp upward dbl-64 -0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-128 -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128 -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128 -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128 -0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-128 -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128 -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128 -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128 -0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+exp10 0
+= exp10 downward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp10 tonearest flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp10 towardzero flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp10 upward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp10 downward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp10 tonearest dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp10 towardzero dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp10 upward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp10 downward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 tonearest ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 towardzero ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 upward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 downward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 tonearest ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 towardzero ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 upward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 downward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 tonearest ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 towardzero ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 upward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 downward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 tonearest ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 towardzero ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 upward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+exp10 -0
+= exp10 downward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp10 tonearest flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp10 towardzero flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp10 upward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp10 downward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp10 tonearest dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp10 towardzero dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp10 upward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp10 downward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 tonearest ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 towardzero ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 upward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 downward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 tonearest ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 towardzero ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 upward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 downward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 tonearest ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 towardzero ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 upward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 downward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 tonearest ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 towardzero ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= exp10 upward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+exp10 3
+= exp10 downward flt-32 0x3p+0f : 0x3.e8p+8f : inexact-ok
+= exp10 tonearest flt-32 0x3p+0f : 0x3.e8p+8f : inexact-ok
+= exp10 towardzero flt-32 0x3p+0f : 0x3.e8p+8f : inexact-ok
+= exp10 upward flt-32 0x3p+0f : 0x3.e8p+8f : inexact-ok
+= exp10 downward dbl-64 0x3p+0 : 0x3.e8p+8 : inexact-ok
+= exp10 tonearest dbl-64 0x3p+0 : 0x3.e8p+8 : inexact-ok
+= exp10 towardzero dbl-64 0x3p+0 : 0x3.e8p+8 : inexact-ok
+= exp10 upward dbl-64 0x3p+0 : 0x3.e8p+8 : inexact-ok
+= exp10 downward ldbl-96-intel 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 tonearest ldbl-96-intel 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 towardzero ldbl-96-intel 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 upward ldbl-96-intel 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 downward ldbl-96-m68k 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 tonearest ldbl-96-m68k 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 towardzero ldbl-96-m68k 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 upward ldbl-96-m68k 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 downward ldbl-128 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 tonearest ldbl-128 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 towardzero ldbl-128 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 upward ldbl-128 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 downward ldbl-128ibm 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 tonearest ldbl-128ibm 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 towardzero ldbl-128ibm 0x3p+0L : 0x3.e8p+8L : inexact-ok
+= exp10 upward ldbl-128ibm 0x3p+0L : 0x3.e8p+8L : inexact-ok
+exp10 -1
+= exp10 downward flt-32 -0x1p+0f : 0x1.999998p-4f : inexact-ok
+= exp10 tonearest flt-32 -0x1p+0f : 0x1.99999ap-4f : inexact-ok
+= exp10 towardzero flt-32 -0x1p+0f : 0x1.999998p-4f : inexact-ok
+= exp10 upward flt-32 -0x1p+0f : 0x1.99999ap-4f : inexact-ok
+= exp10 downward dbl-64 -0x1p+0 : 0x1.9999999999999p-4 : inexact-ok
+= exp10 tonearest dbl-64 -0x1p+0 : 0x1.999999999999ap-4 : inexact-ok
+= exp10 towardzero dbl-64 -0x1p+0 : 0x1.9999999999999p-4 : inexact-ok
+= exp10 upward dbl-64 -0x1p+0 : 0x1.999999999999ap-4 : inexact-ok
+= exp10 downward ldbl-96-intel -0x1p+0L : 0x1.9999999999999998p-4L : inexact-ok
+= exp10 tonearest ldbl-96-intel -0x1p+0L : 0x1.999999999999999ap-4L : inexact-ok
+= exp10 towardzero ldbl-96-intel -0x1p+0L : 0x1.9999999999999998p-4L : inexact-ok
+= exp10 upward ldbl-96-intel -0x1p+0L : 0x1.999999999999999ap-4L : inexact-ok
+= exp10 downward ldbl-96-m68k -0x1p+0L : 0x1.9999999999999998p-4L : inexact-ok
+= exp10 tonearest ldbl-96-m68k -0x1p+0L : 0x1.999999999999999ap-4L : inexact-ok
+= exp10 towardzero ldbl-96-m68k -0x1p+0L : 0x1.9999999999999998p-4L : inexact-ok
+= exp10 upward ldbl-96-m68k -0x1p+0L : 0x1.999999999999999ap-4L : inexact-ok
+= exp10 downward ldbl-128 -0x1p+0L : 0x1.9999999999999999999999999999p-4L : inexact-ok
+= exp10 tonearest ldbl-128 -0x1p+0L : 0x1.999999999999999999999999999ap-4L : inexact-ok
+= exp10 towardzero ldbl-128 -0x1p+0L : 0x1.9999999999999999999999999999p-4L : inexact-ok
+= exp10 upward ldbl-128 -0x1p+0L : 0x1.999999999999999999999999999ap-4L : inexact-ok
+= exp10 downward ldbl-128ibm -0x1p+0L : 0x1.999999999999999999999999998p-4L : inexact-ok
+= exp10 tonearest ldbl-128ibm -0x1p+0L : 0x1.999999999999999999999999998p-4L : inexact-ok
+= exp10 towardzero ldbl-128ibm -0x1p+0L : 0x1.999999999999999999999999998p-4L : inexact-ok
+= exp10 upward ldbl-128ibm -0x1p+0L : 0x1.9999999999999999999999999ap-4L : inexact-ok
+exp10 36
+= exp10 downward flt-32 0x2.4p+4f : 0xc.097cep+116f : inexact-ok
+= exp10 tonearest flt-32 0x2.4p+4f : 0xc.097cep+116f : inexact-ok
+= exp10 towardzero flt-32 0x2.4p+4f : 0xc.097cep+116f : inexact-ok
+= exp10 upward flt-32 0x2.4p+4f : 0xc.097cfp+116f : inexact-ok
+= exp10 downward dbl-64 0x2.4p+4 : 0xc.097ce7bc9071p+116 : inexact-ok
+= exp10 tonearest dbl-64 0x2.4p+4 : 0xc.097ce7bc90718p+116 : inexact-ok
+= exp10 towardzero dbl-64 0x2.4p+4 : 0xc.097ce7bc9071p+116 : inexact-ok
+= exp10 upward dbl-64 0x2.4p+4 : 0xc.097ce7bc90718p+116 : inexact-ok
+= exp10 downward ldbl-96-intel 0x2.4p+4L : 0xc.097ce7bc90715b3p+116L : inexact-ok
+= exp10 tonearest ldbl-96-intel 0x2.4p+4L : 0xc.097ce7bc90715b3p+116L : inexact-ok
+= exp10 towardzero ldbl-96-intel 0x2.4p+4L : 0xc.097ce7bc90715b3p+116L : inexact-ok
+= exp10 upward ldbl-96-intel 0x2.4p+4L : 0xc.097ce7bc90715b4p+116L : inexact-ok
+= exp10 downward ldbl-96-m68k 0x2.4p+4L : 0xc.097ce7bc90715b3p+116L : inexact-ok
+= exp10 tonearest ldbl-96-m68k 0x2.4p+4L : 0xc.097ce7bc90715b3p+116L : inexact-ok
+= exp10 towardzero ldbl-96-m68k 0x2.4p+4L : 0xc.097ce7bc90715b3p+116L : inexact-ok
+= exp10 upward ldbl-96-m68k 0x2.4p+4L : 0xc.097ce7bc90715b4p+116L : inexact-ok
+= exp10 downward ldbl-128 0x2.4p+4L : 0xc.097ce7bc90715b34b9f1p+116L : inexact-ok
+= exp10 tonearest ldbl-128 0x2.4p+4L : 0xc.097ce7bc90715b34b9f1p+116L : inexact-ok
+= exp10 towardzero ldbl-128 0x2.4p+4L : 0xc.097ce7bc90715b34b9f1p+116L : inexact-ok
+= exp10 upward ldbl-128 0x2.4p+4L : 0xc.097ce7bc90715b34b9f1p+116L : inexact-ok
+= exp10 downward ldbl-128ibm 0x2.4p+4L : 0xc.097ce7bc90715b34b9f1p+116L : inexact-ok
+= exp10 tonearest ldbl-128ibm 0x2.4p+4L : 0xc.097ce7bc90715b34b9f1p+116L : inexact-ok
+= exp10 towardzero ldbl-128ibm 0x2.4p+4L : 0xc.097ce7bc90715b34b9f1p+116L : inexact-ok
+= exp10 upward ldbl-128ibm 0x2.4p+4L : 0xc.097ce7bc90715b34b9f1p+116L : inexact-ok
+exp10 -36
+= exp10 downward flt-32 -0x2.4p+4f : 0x1.544848p-120f : inexact-ok
+= exp10 tonearest flt-32 -0x2.4p+4f : 0x1.54484ap-120f : inexact-ok
+= exp10 towardzero flt-32 -0x2.4p+4f : 0x1.544848p-120f : inexact-ok
+= exp10 upward flt-32 -0x2.4p+4f : 0x1.54484ap-120f : inexact-ok
+= exp10 downward dbl-64 -0x2.4p+4 : 0x1.54484932d2e72p-120 : inexact-ok
+= exp10 tonearest dbl-64 -0x2.4p+4 : 0x1.54484932d2e72p-120 : inexact-ok
+= exp10 towardzero dbl-64 -0x2.4p+4 : 0x1.54484932d2e72p-120 : inexact-ok
+= exp10 upward dbl-64 -0x2.4p+4 : 0x1.54484932d2e73p-120 : inexact-ok
+= exp10 downward ldbl-96-intel -0x2.4p+4L : 0x1.54484932d2e725a4p-120L : inexact-ok
+= exp10 tonearest ldbl-96-intel -0x2.4p+4L : 0x1.54484932d2e725a6p-120L : inexact-ok
+= exp10 towardzero ldbl-96-intel -0x2.4p+4L : 0x1.54484932d2e725a4p-120L : inexact-ok
+= exp10 upward ldbl-96-intel -0x2.4p+4L : 0x1.54484932d2e725a6p-120L : inexact-ok
+= exp10 downward ldbl-96-m68k -0x2.4p+4L : 0x1.54484932d2e725a4p-120L : inexact-ok
+= exp10 tonearest ldbl-96-m68k -0x2.4p+4L : 0x1.54484932d2e725a6p-120L : inexact-ok
+= exp10 towardzero ldbl-96-m68k -0x2.4p+4L : 0x1.54484932d2e725a4p-120L : inexact-ok
+= exp10 upward ldbl-96-m68k -0x2.4p+4L : 0x1.54484932d2e725a6p-120L : inexact-ok
+= exp10 downward ldbl-128 -0x2.4p+4L : 0x1.54484932d2e725a5bbca17a3aba1p-120L : inexact-ok
+= exp10 tonearest ldbl-128 -0x2.4p+4L : 0x1.54484932d2e725a5bbca17a3aba1p-120L : inexact-ok
+= exp10 towardzero ldbl-128 -0x2.4p+4L : 0x1.54484932d2e725a5bbca17a3aba1p-120L : inexact-ok
+= exp10 upward ldbl-128 -0x2.4p+4L : 0x1.54484932d2e725a5bbca17a3aba2p-120L : inexact-ok
+= exp10 downward ldbl-128ibm -0x2.4p+4L : 0x1.54484932d2e725a5bbca17a3ab8p-120L : inexact-ok
+= exp10 tonearest ldbl-128ibm -0x2.4p+4L : 0x1.54484932d2e725a5bbca17a3ab8p-120L : inexact-ok
+= exp10 towardzero ldbl-128ibm -0x2.4p+4L : 0x1.54484932d2e725a5bbca17a3ab8p-120L : inexact-ok
+= exp10 upward ldbl-128ibm -0x2.4p+4L : 0x1.54484932d2e725a5bbca17a3acp-120L : inexact-ok
+exp10 305
+= exp10 downward flt-32 0x1.31p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp10 tonearest flt-32 0x1.31p+8f : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero flt-32 0x1.31p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp10 upward flt-32 0x1.31p+8f : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward dbl-64 0x1.31p+8 : 0x2.474a2dd05b374p+1012 : inexact-ok
+= exp10 tonearest dbl-64 0x1.31p+8 : 0x2.474a2dd05b374p+1012 : inexact-ok
+= exp10 towardzero dbl-64 0x1.31p+8 : 0x2.474a2dd05b374p+1012 : inexact-ok
+= exp10 upward dbl-64 0x1.31p+8 : 0x2.474a2dd05b376p+1012 : inexact-ok
+= exp10 downward ldbl-96-intel 0x1.31p+8L : 0x2.474a2dd05b3749f8p+1012L : inexact-ok
+= exp10 tonearest ldbl-96-intel 0x1.31p+8L : 0x2.474a2dd05b3749f8p+1012L : inexact-ok
+= exp10 towardzero ldbl-96-intel 0x1.31p+8L : 0x2.474a2dd05b3749f8p+1012L : inexact-ok
+= exp10 upward ldbl-96-intel 0x1.31p+8L : 0x2.474a2dd05b3749fcp+1012L : inexact-ok
+= exp10 downward ldbl-96-m68k 0x1.31p+8L : 0x2.474a2dd05b3749f8p+1012L : inexact-ok
+= exp10 tonearest ldbl-96-m68k 0x1.31p+8L : 0x2.474a2dd05b3749f8p+1012L : inexact-ok
+= exp10 towardzero ldbl-96-m68k 0x1.31p+8L : 0x2.474a2dd05b3749f8p+1012L : inexact-ok
+= exp10 upward ldbl-96-m68k 0x1.31p+8L : 0x2.474a2dd05b3749fcp+1012L : inexact-ok
+= exp10 downward ldbl-128 0x1.31p+8L : 0x2.474a2dd05b3749f93370cc755fe8p+1012L : inexact-ok
+= exp10 tonearest ldbl-128 0x1.31p+8L : 0x2.474a2dd05b3749f93370cc755feap+1012L : inexact-ok
+= exp10 towardzero ldbl-128 0x1.31p+8L : 0x2.474a2dd05b3749f93370cc755fe8p+1012L : inexact-ok
+= exp10 upward ldbl-128 0x1.31p+8L : 0x2.474a2dd05b3749f93370cc755feap+1012L : inexact-ok
+= exp10 downward ldbl-128ibm 0x1.31p+8L : 0x2.474a2dd05b3749f93370cc755fp+1012L : inexact-ok
+= exp10 tonearest ldbl-128ibm 0x1.31p+8L : 0x2.474a2dd05b3749f93370cc756p+1012L : inexact-ok
+= exp10 towardzero ldbl-128ibm 0x1.31p+8L : 0x2.474a2dd05b3749f93370cc755fp+1012L : inexact-ok
+= exp10 upward ldbl-128ibm 0x1.31p+8L : 0x2.474a2dd05b3749f93370cc756p+1012L : inexact-ok
+exp10 -305
+= exp10 downward flt-32 -0x1.31p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 tonearest flt-32 -0x1.31p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 towardzero flt-32 -0x1.31p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 upward flt-32 -0x1.31p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp10 downward dbl-64 -0x1.31p+8 : 0x7.05b171494d5d4p-1016 : inexact-ok
+= exp10 tonearest dbl-64 -0x1.31p+8 : 0x7.05b171494d5d4p-1016 : inexact-ok
+= exp10 towardzero dbl-64 -0x1.31p+8 : 0x7.05b171494d5d4p-1016 : inexact-ok
+= exp10 upward dbl-64 -0x1.31p+8 : 0x7.05b171494d5d8p-1016 : inexact-ok
+= exp10 downward ldbl-96-intel -0x1.31p+8L : 0x7.05b171494d5d41ep-1016L : inexact-ok
+= exp10 tonearest ldbl-96-intel -0x1.31p+8L : 0x7.05b171494d5d41ep-1016L : inexact-ok
+= exp10 towardzero ldbl-96-intel -0x1.31p+8L : 0x7.05b171494d5d41ep-1016L : inexact-ok
+= exp10 upward ldbl-96-intel -0x1.31p+8L : 0x7.05b171494d5d41e8p-1016L : inexact-ok
+= exp10 downward ldbl-96-m68k -0x1.31p+8L : 0x7.05b171494d5d41ep-1016L : inexact-ok
+= exp10 tonearest ldbl-96-m68k -0x1.31p+8L : 0x7.05b171494d5d41ep-1016L : inexact-ok
+= exp10 towardzero ldbl-96-m68k -0x1.31p+8L : 0x7.05b171494d5d41ep-1016L : inexact-ok
+= exp10 upward ldbl-96-m68k -0x1.31p+8L : 0x7.05b171494d5d41e8p-1016L : inexact-ok
+= exp10 downward ldbl-128 -0x1.31p+8L : 0x7.05b171494d5d41e198d66d5ff4a4p-1016L : inexact-ok
+= exp10 tonearest ldbl-128 -0x1.31p+8L : 0x7.05b171494d5d41e198d66d5ff4a8p-1016L : inexact-ok
+= exp10 towardzero ldbl-128 -0x1.31p+8L : 0x7.05b171494d5d41e198d66d5ff4a4p-1016L : inexact-ok
+= exp10 upward ldbl-128 -0x1.31p+8L : 0x7.05b171494d5d41e198d66d5ff4a8p-1016L : inexact-ok
+= exp10 downward ldbl-128ibm -0x1.31p+8L : 0x7.05b171494d5d41cp-1016L : inexact-ok underflow errno-erange-ok
+= exp10 tonearest ldbl-128ibm -0x1.31p+8L : 0x7.05b171494d5d42p-1016L : inexact-ok underflow errno-erange-ok
+= exp10 towardzero ldbl-128ibm -0x1.31p+8L : 0x7.05b171494d5d41cp-1016L : inexact-ok underflow errno-erange-ok
+= exp10 upward ldbl-128ibm -0x1.31p+8L : 0x7.05b171494d5d42p-1016L : inexact-ok underflow errno-erange-ok
+exp10 4932
+= exp10 downward flt-32 0x1.344p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp10 tonearest flt-32 0x1.344p+12f : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero flt-32 0x1.344p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp10 upward flt-32 0x1.344p+12f : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward dbl-64 0x1.344p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp10 tonearest dbl-64 0x1.344p+12 : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero dbl-64 0x1.344p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp10 upward dbl-64 0x1.344p+12 : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-intel 0x1.344p+12L : 0xd.72cb2a95c7ef6ccp+16380L : inexact-ok
+= exp10 tonearest ldbl-96-intel 0x1.344p+12L : 0xd.72cb2a95c7ef6cdp+16380L : inexact-ok
+= exp10 towardzero ldbl-96-intel 0x1.344p+12L : 0xd.72cb2a95c7ef6ccp+16380L : inexact-ok
+= exp10 upward ldbl-96-intel 0x1.344p+12L : 0xd.72cb2a95c7ef6cdp+16380L : inexact-ok
+= exp10 downward ldbl-96-m68k 0x1.344p+12L : 0xd.72cb2a95c7ef6ccp+16380L : inexact-ok
+= exp10 tonearest ldbl-96-m68k 0x1.344p+12L : 0xd.72cb2a95c7ef6cdp+16380L : inexact-ok
+= exp10 towardzero ldbl-96-m68k 0x1.344p+12L : 0xd.72cb2a95c7ef6ccp+16380L : inexact-ok
+= exp10 upward ldbl-96-m68k 0x1.344p+12L : 0xd.72cb2a95c7ef6cdp+16380L : inexact-ok
+= exp10 downward ldbl-128 0x1.344p+12L : 0xd.72cb2a95c7ef6cce81bf1e825bap+16380L : inexact-ok
+= exp10 tonearest ldbl-128 0x1.344p+12L : 0xd.72cb2a95c7ef6cce81bf1e825ba8p+16380L : inexact-ok
+= exp10 towardzero ldbl-128 0x1.344p+12L : 0xd.72cb2a95c7ef6cce81bf1e825bap+16380L : inexact-ok
+= exp10 upward ldbl-128 0x1.344p+12L : 0xd.72cb2a95c7ef6cce81bf1e825ba8p+16380L : inexact-ok
+= exp10 downward ldbl-128ibm 0x1.344p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128ibm 0x1.344p+12L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128ibm 0x1.344p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128ibm 0x1.344p+12L : plus_infty : inexact-ok overflow errno-erange
+exp10 -4932
+= exp10 downward flt-32 -0x1.344p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 tonearest flt-32 -0x1.344p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 towardzero flt-32 -0x1.344p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 upward flt-32 -0x1.344p+12f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp10 downward dbl-64 -0x1.344p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 tonearest dbl-64 -0x1.344p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 towardzero dbl-64 -0x1.344p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 upward dbl-64 -0x1.344p+12 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-intel -0x1.344p+12L : 0x1.30923e47949abf8p-16384L : inexact-ok underflow errno-erange-ok
+= exp10 tonearest ldbl-96-intel -0x1.344p+12L : 0x1.30923e47949abf8p-16384L : inexact-ok underflow errno-erange-ok
+= exp10 towardzero ldbl-96-intel -0x1.344p+12L : 0x1.30923e47949abf8p-16384L : inexact-ok underflow errno-erange-ok
+= exp10 upward ldbl-96-intel -0x1.344p+12L : 0x1.30923e47949abf88p-16384L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-m68k -0x1.344p+12L : 0x1.30923e47949abf8p-16384L : inexact-ok underflow errno-erange-ok
+= exp10 tonearest ldbl-96-m68k -0x1.344p+12L : 0x1.30923e47949abf8p-16384L : inexact-ok underflow errno-erange-ok
+= exp10 towardzero ldbl-96-m68k -0x1.344p+12L : 0x1.30923e47949abf8p-16384L : inexact-ok underflow errno-erange-ok
+= exp10 upward ldbl-96-m68k -0x1.344p+12L : 0x1.30923e47949abf84p-16384L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128 -0x1.344p+12L : 0x1.30923e47949abf816b7d38ebc00cp-16384L : inexact-ok underflow errno-erange-ok
+= exp10 tonearest ldbl-128 -0x1.344p+12L : 0x1.30923e47949abf816b7d38ebc01p-16384L : inexact-ok underflow errno-erange-ok
+= exp10 towardzero ldbl-128 -0x1.344p+12L : 0x1.30923e47949abf816b7d38ebc00cp-16384L : inexact-ok underflow errno-erange-ok
+= exp10 upward ldbl-128 -0x1.344p+12L : 0x1.30923e47949abf816b7d38ebc01p-16384L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128ibm -0x1.344p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128ibm -0x1.344p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128ibm -0x1.344p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128ibm -0x1.344p+12L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+exp10 1e5
+= exp10 downward flt-32 0x1.86ap+16f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp10 tonearest flt-32 0x1.86ap+16f : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero flt-32 0x1.86ap+16f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp10 upward flt-32 0x1.86ap+16f : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward dbl-64 0x1.86ap+16 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp10 tonearest dbl-64 0x1.86ap+16 : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero dbl-64 0x1.86ap+16 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp10 upward dbl-64 0x1.86ap+16 : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-intel 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-96-intel 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-96-intel 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-96-intel 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-m68k 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-96-m68k 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-96-m68k 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-96-m68k 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128 0x1.86ap+16L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128 0x1.86ap+16L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128ibm 0x1.86ap+16L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128ibm 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128ibm 0x1.86ap+16L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128ibm 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+exp10 -1e5
+= exp10 downward flt-32 -0x1.86ap+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 tonearest flt-32 -0x1.86ap+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 towardzero flt-32 -0x1.86ap+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 upward flt-32 -0x1.86ap+16f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp10 downward dbl-64 -0x1.86ap+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 tonearest dbl-64 -0x1.86ap+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 towardzero dbl-64 -0x1.86ap+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 upward dbl-64 -0x1.86ap+16 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-intel -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-96-intel -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-96-intel -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-96-intel -0x1.86ap+16L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-m68k -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-96-m68k -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-96-m68k -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-96-m68k -0x1.86ap+16L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128 -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128 -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128 -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128 -0x1.86ap+16L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128ibm -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128ibm -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128ibm -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128ibm -0x1.86ap+16L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+exp10 1e6
+= exp10 downward flt-32 0xf.424p+16f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp10 tonearest flt-32 0xf.424p+16f : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero flt-32 0xf.424p+16f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp10 upward flt-32 0xf.424p+16f : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward dbl-64 0xf.424p+16 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp10 tonearest dbl-64 0xf.424p+16 : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero dbl-64 0xf.424p+16 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp10 upward dbl-64 0xf.424p+16 : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-intel 0xf.424p+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-96-intel 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-96-intel 0xf.424p+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-96-intel 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-m68k 0xf.424p+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-96-m68k 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-96-m68k 0xf.424p+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-96-m68k 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128 0xf.424p+16L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128 0xf.424p+16L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128ibm 0xf.424p+16L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128ibm 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128ibm 0xf.424p+16L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128ibm 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+exp10 -1e6
+= exp10 downward flt-32 -0xf.424p+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 tonearest flt-32 -0xf.424p+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 towardzero flt-32 -0xf.424p+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 upward flt-32 -0xf.424p+16f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp10 downward dbl-64 -0xf.424p+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 tonearest dbl-64 -0xf.424p+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 towardzero dbl-64 -0xf.424p+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 upward dbl-64 -0xf.424p+16 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-intel -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-96-intel -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-96-intel -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-96-intel -0xf.424p+16L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-m68k -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-96-m68k -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-96-m68k -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-96-m68k -0xf.424p+16L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128 -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128 -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128 -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128 -0xf.424p+16L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128ibm -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128ibm -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128ibm -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128ibm -0xf.424p+16L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+exp10 max
+= exp10 downward flt-32 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp10 tonearest flt-32 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp10 upward flt-32 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward dbl-64 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp10 tonearest dbl-64 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero dbl-64 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp10 upward dbl-64 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-96-intel 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-96-intel 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-96-m68k 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-96-m68k 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128ibm 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128ibm 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128ibm 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp10 tonearest dbl-64 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp10 upward dbl-64 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp10 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp10 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+exp10 -max
+= exp10 downward flt-32 -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 tonearest flt-32 -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 towardzero flt-32 -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp10 upward flt-32 -0xf.fffffp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp10 downward dbl-64 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 tonearest dbl-64 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 towardzero dbl-64 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 upward dbl-64 -0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-intel -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-96-intel -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-96-intel -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-96-intel -0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-m68k -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-96-m68k -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-96-m68k -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-96-m68k -0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128 -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128 -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128 -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128 -0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128ibm -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128ibm -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128ibm -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128ibm -0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp10 downward dbl-64 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 tonearest dbl-64 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 towardzero dbl-64 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp10 upward dbl-64 -0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128 -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128 -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128 -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128 -0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128 -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128 -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128 -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128 -0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp10 downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp10 upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+exp10 0.75
+= exp10 downward flt-32 0xcp-4f : 0x5.9f98p+0f : inexact-ok
+= exp10 tonearest flt-32 0xcp-4f : 0x5.9f98p+0f : inexact-ok
+= exp10 towardzero flt-32 0xcp-4f : 0x5.9f98p+0f : inexact-ok
+= exp10 upward flt-32 0xcp-4f : 0x5.9f9808p+0f : inexact-ok
+= exp10 downward dbl-64 0xcp-4 : 0x5.9f9802c8d1894p+0 : inexact-ok
+= exp10 tonearest dbl-64 0xcp-4 : 0x5.9f9802c8d1898p+0 : inexact-ok
+= exp10 towardzero dbl-64 0xcp-4 : 0x5.9f9802c8d1894p+0 : inexact-ok
+= exp10 upward dbl-64 0xcp-4 : 0x5.9f9802c8d1898p+0 : inexact-ok
+= exp10 downward ldbl-96-intel 0xcp-4L : 0x5.9f9802c8d189657p+0L : inexact-ok
+= exp10 tonearest ldbl-96-intel 0xcp-4L : 0x5.9f9802c8d1896578p+0L : inexact-ok
+= exp10 towardzero ldbl-96-intel 0xcp-4L : 0x5.9f9802c8d189657p+0L : inexact-ok
+= exp10 upward ldbl-96-intel 0xcp-4L : 0x5.9f9802c8d1896578p+0L : inexact-ok
+= exp10 downward ldbl-96-m68k 0xcp-4L : 0x5.9f9802c8d189657p+0L : inexact-ok
+= exp10 tonearest ldbl-96-m68k 0xcp-4L : 0x5.9f9802c8d1896578p+0L : inexact-ok
+= exp10 towardzero ldbl-96-m68k 0xcp-4L : 0x5.9f9802c8d189657p+0L : inexact-ok
+= exp10 upward ldbl-96-m68k 0xcp-4L : 0x5.9f9802c8d1896578p+0L : inexact-ok
+= exp10 downward ldbl-128 0xcp-4L : 0x5.9f9802c8d189657416ee3fd818cp+0L : inexact-ok
+= exp10 tonearest ldbl-128 0xcp-4L : 0x5.9f9802c8d189657416ee3fd818c4p+0L : inexact-ok
+= exp10 towardzero ldbl-128 0xcp-4L : 0x5.9f9802c8d189657416ee3fd818cp+0L : inexact-ok
+= exp10 upward ldbl-128 0xcp-4L : 0x5.9f9802c8d189657416ee3fd818c4p+0L : inexact-ok
+= exp10 downward ldbl-128ibm 0xcp-4L : 0x5.9f9802c8d189657416ee3fd818p+0L : inexact-ok
+= exp10 tonearest ldbl-128ibm 0xcp-4L : 0x5.9f9802c8d189657416ee3fd818p+0L : inexact-ok
+= exp10 towardzero ldbl-128ibm 0xcp-4L : 0x5.9f9802c8d189657416ee3fd818p+0L : inexact-ok
+= exp10 upward ldbl-128ibm 0xcp-4L : 0x5.9f9802c8d189657416ee3fd81ap+0L : inexact-ok
+exp2 0
+= exp2 downward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp2 tonearest flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp2 towardzero flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp2 upward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= exp2 downward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp2 tonearest dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp2 towardzero dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp2 upward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= exp2 downward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 tonearest ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 towardzero ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 upward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 downward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 tonearest ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 towardzero ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 upward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 downward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 tonearest ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 towardzero ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 upward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 downward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 tonearest ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 towardzero ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 upward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+exp2 -0
+= exp2 downward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp2 tonearest flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp2 towardzero flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp2 upward flt-32 -0x0p+0f : 0x1p+0f : inexact-ok
+= exp2 downward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp2 tonearest dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp2 towardzero dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp2 upward dbl-64 -0x0p+0 : 0x1p+0 : inexact-ok
+= exp2 downward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 tonearest ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 towardzero ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 upward ldbl-96-intel -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 downward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 tonearest ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 towardzero ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 upward ldbl-96-m68k -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 downward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 tonearest ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 towardzero ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 upward ldbl-128 -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 downward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 tonearest ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 towardzero ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+= exp2 upward ldbl-128ibm -0x0p+0L : 0x1p+0L : inexact-ok
+exp2 10
+= exp2 downward flt-32 0xap+0f : 0x4p+8f : inexact-ok
+= exp2 tonearest flt-32 0xap+0f : 0x4p+8f : inexact-ok
+= exp2 towardzero flt-32 0xap+0f : 0x4p+8f : inexact-ok
+= exp2 upward flt-32 0xap+0f : 0x4p+8f : inexact-ok
+= exp2 downward dbl-64 0xap+0 : 0x4p+8 : inexact-ok
+= exp2 tonearest dbl-64 0xap+0 : 0x4p+8 : inexact-ok
+= exp2 towardzero dbl-64 0xap+0 : 0x4p+8 : inexact-ok
+= exp2 upward dbl-64 0xap+0 : 0x4p+8 : inexact-ok
+= exp2 downward ldbl-96-intel 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 tonearest ldbl-96-intel 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 towardzero ldbl-96-intel 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 upward ldbl-96-intel 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 downward ldbl-96-m68k 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 tonearest ldbl-96-m68k 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 towardzero ldbl-96-m68k 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 upward ldbl-96-m68k 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 downward ldbl-128 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 tonearest ldbl-128 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 towardzero ldbl-128 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 upward ldbl-128 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 downward ldbl-128ibm 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 tonearest ldbl-128ibm 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 towardzero ldbl-128ibm 0xap+0L : 0x4p+8L : inexact-ok
+= exp2 upward ldbl-128ibm 0xap+0L : 0x4p+8L : inexact-ok
+exp2 -1
+= exp2 downward flt-32 -0x1p+0f : 0x8p-4f : inexact-ok
+= exp2 tonearest flt-32 -0x1p+0f : 0x8p-4f : inexact-ok
+= exp2 towardzero flt-32 -0x1p+0f : 0x8p-4f : inexact-ok
+= exp2 upward flt-32 -0x1p+0f : 0x8p-4f : inexact-ok
+= exp2 downward dbl-64 -0x1p+0 : 0x8p-4 : inexact-ok
+= exp2 tonearest dbl-64 -0x1p+0 : 0x8p-4 : inexact-ok
+= exp2 towardzero dbl-64 -0x1p+0 : 0x8p-4 : inexact-ok
+= exp2 upward dbl-64 -0x1p+0 : 0x8p-4 : inexact-ok
+= exp2 downward ldbl-96-intel -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 tonearest ldbl-96-intel -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 towardzero ldbl-96-intel -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 upward ldbl-96-intel -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 downward ldbl-96-m68k -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 tonearest ldbl-96-m68k -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 towardzero ldbl-96-m68k -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 upward ldbl-96-m68k -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 downward ldbl-128 -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 tonearest ldbl-128 -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 towardzero ldbl-128 -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 upward ldbl-128 -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 downward ldbl-128ibm -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 tonearest ldbl-128ibm -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 towardzero ldbl-128ibm -0x1p+0L : 0x8p-4L : inexact-ok
+= exp2 upward ldbl-128ibm -0x1p+0L : 0x8p-4L : inexact-ok
+exp2 1e6
+= exp2 downward flt-32 0xf.424p+16f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp2 tonearest flt-32 0xf.424p+16f : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero flt-32 0xf.424p+16f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp2 upward flt-32 0xf.424p+16f : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward dbl-64 0xf.424p+16 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp2 tonearest dbl-64 0xf.424p+16 : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero dbl-64 0xf.424p+16 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp2 upward dbl-64 0xf.424p+16 : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-96-intel 0xf.424p+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-96-intel 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-96-intel 0xf.424p+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-96-intel 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-96-m68k 0xf.424p+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-96-m68k 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-96-m68k 0xf.424p+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-96-m68k 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-128 0xf.424p+16L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128 0xf.424p+16L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-128ibm 0xf.424p+16L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128ibm 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128ibm 0xf.424p+16L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128ibm 0xf.424p+16L : plus_infty : inexact-ok overflow errno-erange
+exp2 -1e6
+= exp2 downward flt-32 -0xf.424p+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 tonearest flt-32 -0xf.424p+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 towardzero flt-32 -0xf.424p+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 upward flt-32 -0xf.424p+16f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp2 downward dbl-64 -0xf.424p+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 tonearest dbl-64 -0xf.424p+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 towardzero dbl-64 -0xf.424p+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 upward dbl-64 -0xf.424p+16 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-96-intel -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-96-intel -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-96-intel -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-96-intel -0xf.424p+16L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-96-m68k -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-96-m68k -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-96-m68k -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-96-m68k -0xf.424p+16L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-128 -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128 -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128 -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128 -0xf.424p+16L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-128ibm -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128ibm -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128ibm -0xf.424p+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128ibm -0xf.424p+16L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+exp2 max
+= exp2 downward flt-32 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp2 tonearest flt-32 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp2 upward flt-32 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward dbl-64 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp2 tonearest dbl-64 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero dbl-64 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp2 upward dbl-64 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-96-intel 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-96-intel 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-96-m68k 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-96-m68k 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-128 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-128ibm 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128ibm 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128ibm 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp2 tonearest dbl-64 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp2 upward dbl-64 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-128 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+exp2 -max
+= exp2 downward flt-32 -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 tonearest flt-32 -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 towardzero flt-32 -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 upward flt-32 -0xf.fffffp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp2 downward dbl-64 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 tonearest dbl-64 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 towardzero dbl-64 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 upward dbl-64 -0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-96-intel -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-96-intel -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-96-intel -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-96-intel -0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-96-m68k -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-96-m68k -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-96-m68k -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-96-m68k -0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-128 -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128 -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128 -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128 -0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-128ibm -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128ibm -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128ibm -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128ibm -0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp2 downward dbl-64 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 tonearest dbl-64 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 towardzero dbl-64 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 upward dbl-64 -0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-96-intel -0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-128 -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128 -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128 -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128 -0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128ibm -0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-96-intel -0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-128 -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128 -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128 -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128 -0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+exp2 0.75
+= exp2 downward flt-32 0xcp-4f : 0x1.ae89f8p+0f : inexact-ok
+= exp2 tonearest flt-32 0xcp-4f : 0x1.ae89fap+0f : inexact-ok
+= exp2 towardzero flt-32 0xcp-4f : 0x1.ae89f8p+0f : inexact-ok
+= exp2 upward flt-32 0xcp-4f : 0x1.ae89fap+0f : inexact-ok
+= exp2 downward dbl-64 0xcp-4 : 0x1.ae89f995ad3adp+0 : inexact-ok
+= exp2 tonearest dbl-64 0xcp-4 : 0x1.ae89f995ad3adp+0 : inexact-ok
+= exp2 towardzero dbl-64 0xcp-4 : 0x1.ae89f995ad3adp+0 : inexact-ok
+= exp2 upward dbl-64 0xcp-4 : 0x1.ae89f995ad3aep+0 : inexact-ok
+= exp2 downward ldbl-96-intel 0xcp-4L : 0x1.ae89f995ad3ad5e8p+0L : inexact-ok
+= exp2 tonearest ldbl-96-intel 0xcp-4L : 0x1.ae89f995ad3ad5e8p+0L : inexact-ok
+= exp2 towardzero ldbl-96-intel 0xcp-4L : 0x1.ae89f995ad3ad5e8p+0L : inexact-ok
+= exp2 upward ldbl-96-intel 0xcp-4L : 0x1.ae89f995ad3ad5eap+0L : inexact-ok
+= exp2 downward ldbl-96-m68k 0xcp-4L : 0x1.ae89f995ad3ad5e8p+0L : inexact-ok
+= exp2 tonearest ldbl-96-m68k 0xcp-4L : 0x1.ae89f995ad3ad5e8p+0L : inexact-ok
+= exp2 towardzero ldbl-96-m68k 0xcp-4L : 0x1.ae89f995ad3ad5e8p+0L : inexact-ok
+= exp2 upward ldbl-96-m68k 0xcp-4L : 0x1.ae89f995ad3ad5eap+0L : inexact-ok
+= exp2 downward ldbl-128 0xcp-4L : 0x1.ae89f995ad3ad5e8734d1773205ap+0L : inexact-ok
+= exp2 tonearest ldbl-128 0xcp-4L : 0x1.ae89f995ad3ad5e8734d1773205ap+0L : inexact-ok
+= exp2 towardzero ldbl-128 0xcp-4L : 0x1.ae89f995ad3ad5e8734d1773205ap+0L : inexact-ok
+= exp2 upward ldbl-128 0xcp-4L : 0x1.ae89f995ad3ad5e8734d1773205bp+0L : inexact-ok
+= exp2 downward ldbl-128ibm 0xcp-4L : 0x1.ae89f995ad3ad5e8734d17732p+0L : inexact-ok
+= exp2 tonearest ldbl-128ibm 0xcp-4L : 0x1.ae89f995ad3ad5e8734d1773208p+0L : inexact-ok
+= exp2 towardzero ldbl-128ibm 0xcp-4L : 0x1.ae89f995ad3ad5e8734d17732p+0L : inexact-ok
+= exp2 upward ldbl-128ibm 0xcp-4L : 0x1.ae89f995ad3ad5e8734d1773208p+0L : inexact-ok
+exp2 100.5
+= exp2 downward flt-32 0x6.48p+4f : 0x1.6a09e6p+100f : inexact-ok
+= exp2 tonearest flt-32 0x6.48p+4f : 0x1.6a09e6p+100f : inexact-ok
+= exp2 towardzero flt-32 0x6.48p+4f : 0x1.6a09e6p+100f : inexact-ok
+= exp2 upward flt-32 0x6.48p+4f : 0x1.6a09e8p+100f : inexact-ok
+= exp2 downward dbl-64 0x6.48p+4 : 0x1.6a09e667f3bccp+100 : inexact-ok
+= exp2 tonearest dbl-64 0x6.48p+4 : 0x1.6a09e667f3bcdp+100 : inexact-ok
+= exp2 towardzero dbl-64 0x6.48p+4 : 0x1.6a09e667f3bccp+100 : inexact-ok
+= exp2 upward dbl-64 0x6.48p+4 : 0x1.6a09e667f3bcdp+100 : inexact-ok
+= exp2 downward ldbl-96-intel 0x6.48p+4L : 0x1.6a09e667f3bcc908p+100L : inexact-ok
+= exp2 tonearest ldbl-96-intel 0x6.48p+4L : 0x1.6a09e667f3bcc908p+100L : inexact-ok
+= exp2 towardzero ldbl-96-intel 0x6.48p+4L : 0x1.6a09e667f3bcc908p+100L : inexact-ok
+= exp2 upward ldbl-96-intel 0x6.48p+4L : 0x1.6a09e667f3bcc90ap+100L : inexact-ok
+= exp2 downward ldbl-96-m68k 0x6.48p+4L : 0x1.6a09e667f3bcc908p+100L : inexact-ok
+= exp2 tonearest ldbl-96-m68k 0x6.48p+4L : 0x1.6a09e667f3bcc908p+100L : inexact-ok
+= exp2 towardzero ldbl-96-m68k 0x6.48p+4L : 0x1.6a09e667f3bcc908p+100L : inexact-ok
+= exp2 upward ldbl-96-m68k 0x6.48p+4L : 0x1.6a09e667f3bcc90ap+100L : inexact-ok
+= exp2 downward ldbl-128 0x6.48p+4L : 0x1.6a09e667f3bcc908b2fb1366ea95p+100L : inexact-ok
+= exp2 tonearest ldbl-128 0x6.48p+4L : 0x1.6a09e667f3bcc908b2fb1366ea95p+100L : inexact-ok
+= exp2 towardzero ldbl-128 0x6.48p+4L : 0x1.6a09e667f3bcc908b2fb1366ea95p+100L : inexact-ok
+= exp2 upward ldbl-128 0x6.48p+4L : 0x1.6a09e667f3bcc908b2fb1366ea96p+100L : inexact-ok
+= exp2 downward ldbl-128ibm 0x6.48p+4L : 0x1.6a09e667f3bcc908b2fb1366ea8p+100L : inexact-ok
+= exp2 tonearest ldbl-128ibm 0x6.48p+4L : 0x1.6a09e667f3bcc908b2fb1366ea8p+100L : inexact-ok
+= exp2 towardzero ldbl-128ibm 0x6.48p+4L : 0x1.6a09e667f3bcc908b2fb1366ea8p+100L : inexact-ok
+= exp2 upward ldbl-128ibm 0x6.48p+4L : 0x1.6a09e667f3bcc908b2fb1366ebp+100L : inexact-ok
+exp2 127
+= exp2 downward flt-32 0x7.fp+4f : 0x8p+124f : inexact-ok
+= exp2 tonearest flt-32 0x7.fp+4f : 0x8p+124f : inexact-ok
+= exp2 towardzero flt-32 0x7.fp+4f : 0x8p+124f : inexact-ok
+= exp2 upward flt-32 0x7.fp+4f : 0x8p+124f : inexact-ok
+= exp2 downward dbl-64 0x7.fp+4 : 0x8p+124 : inexact-ok
+= exp2 tonearest dbl-64 0x7.fp+4 : 0x8p+124 : inexact-ok
+= exp2 towardzero dbl-64 0x7.fp+4 : 0x8p+124 : inexact-ok
+= exp2 upward dbl-64 0x7.fp+4 : 0x8p+124 : inexact-ok
+= exp2 downward ldbl-96-intel 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 tonearest ldbl-96-intel 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 towardzero ldbl-96-intel 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 upward ldbl-96-intel 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 downward ldbl-96-m68k 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 tonearest ldbl-96-m68k 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 towardzero ldbl-96-m68k 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 upward ldbl-96-m68k 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 downward ldbl-128 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 tonearest ldbl-128 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 towardzero ldbl-128 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 upward ldbl-128 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 downward ldbl-128ibm 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 tonearest ldbl-128ibm 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 towardzero ldbl-128ibm 0x7.fp+4L : 0x8p+124L : inexact-ok
+= exp2 upward ldbl-128ibm 0x7.fp+4L : 0x8p+124L : inexact-ok
+exp2 -149
+= exp2 downward flt-32 -0x9.5p+4f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= exp2 tonearest flt-32 -0x9.5p+4f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= exp2 towardzero flt-32 -0x9.5p+4f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= exp2 upward flt-32 -0x9.5p+4f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= exp2 downward dbl-64 -0x9.5p+4 : 0x8p-152 : inexact-ok
+= exp2 tonearest dbl-64 -0x9.5p+4 : 0x8p-152 : inexact-ok
+= exp2 towardzero dbl-64 -0x9.5p+4 : 0x8p-152 : inexact-ok
+= exp2 upward dbl-64 -0x9.5p+4 : 0x8p-152 : inexact-ok
+= exp2 downward ldbl-96-intel -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 tonearest ldbl-96-intel -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 towardzero ldbl-96-intel -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 upward ldbl-96-intel -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 downward ldbl-96-m68k -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 tonearest ldbl-96-m68k -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 towardzero ldbl-96-m68k -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 upward ldbl-96-m68k -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 downward ldbl-128 -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 tonearest ldbl-128 -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 towardzero ldbl-128 -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 upward ldbl-128 -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 downward ldbl-128ibm -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 tonearest ldbl-128ibm -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 towardzero ldbl-128ibm -0x9.5p+4L : 0x8p-152L : inexact-ok
+= exp2 upward ldbl-128ibm -0x9.5p+4L : 0x8p-152L : inexact-ok
+exp2 1000.25
+= exp2 downward flt-32 0x3.e84p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp2 tonearest flt-32 0x3.e84p+8f : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero flt-32 0x3.e84p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp2 upward flt-32 0x3.e84p+8f : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward dbl-64 0x3.e84p+8 : 0x1.306fe0a31b715p+1000 : inexact-ok
+= exp2 tonearest dbl-64 0x3.e84p+8 : 0x1.306fe0a31b715p+1000 : inexact-ok
+= exp2 towardzero dbl-64 0x3.e84p+8 : 0x1.306fe0a31b715p+1000 : inexact-ok
+= exp2 upward dbl-64 0x3.e84p+8 : 0x1.306fe0a31b716p+1000 : inexact-ok
+= exp2 downward ldbl-96-intel 0x3.e84p+8L : 0x1.306fe0a31b7152dep+1000L : inexact-ok
+= exp2 tonearest ldbl-96-intel 0x3.e84p+8L : 0x1.306fe0a31b7152dep+1000L : inexact-ok
+= exp2 towardzero ldbl-96-intel 0x3.e84p+8L : 0x1.306fe0a31b7152dep+1000L : inexact-ok
+= exp2 upward ldbl-96-intel 0x3.e84p+8L : 0x1.306fe0a31b7152ep+1000L : inexact-ok
+= exp2 downward ldbl-96-m68k 0x3.e84p+8L : 0x1.306fe0a31b7152dep+1000L : inexact-ok
+= exp2 tonearest ldbl-96-m68k 0x3.e84p+8L : 0x1.306fe0a31b7152dep+1000L : inexact-ok
+= exp2 towardzero ldbl-96-m68k 0x3.e84p+8L : 0x1.306fe0a31b7152dep+1000L : inexact-ok
+= exp2 upward ldbl-96-m68k 0x3.e84p+8L : 0x1.306fe0a31b7152ep+1000L : inexact-ok
+= exp2 downward ldbl-128 0x3.e84p+8L : 0x1.306fe0a31b7152de8d5a46305c85p+1000L : inexact-ok
+= exp2 tonearest ldbl-128 0x3.e84p+8L : 0x1.306fe0a31b7152de8d5a46305c86p+1000L : inexact-ok
+= exp2 towardzero ldbl-128 0x3.e84p+8L : 0x1.306fe0a31b7152de8d5a46305c85p+1000L : inexact-ok
+= exp2 upward ldbl-128 0x3.e84p+8L : 0x1.306fe0a31b7152de8d5a46305c86p+1000L : inexact-ok
+= exp2 downward ldbl-128ibm 0x3.e84p+8L : 0x1.306fe0a31b7152de8d5a46305c8p+1000L : inexact-ok
+= exp2 tonearest ldbl-128ibm 0x3.e84p+8L : 0x1.306fe0a31b7152de8d5a46305c8p+1000L : inexact-ok
+= exp2 towardzero ldbl-128ibm 0x3.e84p+8L : 0x1.306fe0a31b7152de8d5a46305c8p+1000L : inexact-ok
+= exp2 upward ldbl-128ibm 0x3.e84p+8L : 0x1.306fe0a31b7152de8d5a46305dp+1000L : inexact-ok
+exp2 1023
+= exp2 downward flt-32 0x3.ffp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp2 tonearest flt-32 0x3.ffp+8f : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero flt-32 0x3.ffp+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp2 upward flt-32 0x3.ffp+8f : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward dbl-64 0x3.ffp+8 : 0x8p+1020 : inexact-ok
+= exp2 tonearest dbl-64 0x3.ffp+8 : 0x8p+1020 : inexact-ok
+= exp2 towardzero dbl-64 0x3.ffp+8 : 0x8p+1020 : inexact-ok
+= exp2 upward dbl-64 0x3.ffp+8 : 0x8p+1020 : inexact-ok
+= exp2 downward ldbl-96-intel 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 tonearest ldbl-96-intel 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 towardzero ldbl-96-intel 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 upward ldbl-96-intel 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 downward ldbl-96-m68k 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 tonearest ldbl-96-m68k 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 towardzero ldbl-96-m68k 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 upward ldbl-96-m68k 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 downward ldbl-128 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 tonearest ldbl-128 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 towardzero ldbl-128 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 upward ldbl-128 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 downward ldbl-128ibm 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 tonearest ldbl-128ibm 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 towardzero ldbl-128ibm 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+= exp2 upward ldbl-128ibm 0x3.ffp+8L : 0x8p+1020L : inexact-ok
+exp2 -1074
+= exp2 downward flt-32 -0x4.32p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 tonearest flt-32 -0x4.32p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 towardzero flt-32 -0x4.32p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 upward flt-32 -0x4.32p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp2 downward dbl-64 -0x4.32p+8 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= exp2 tonearest dbl-64 -0x4.32p+8 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= exp2 towardzero dbl-64 -0x4.32p+8 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= exp2 upward dbl-64 -0x4.32p+8 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= exp2 downward ldbl-96-intel -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 tonearest ldbl-96-intel -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 towardzero ldbl-96-intel -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 upward ldbl-96-intel -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 downward ldbl-96-m68k -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 tonearest ldbl-96-m68k -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 towardzero ldbl-96-m68k -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 upward ldbl-96-m68k -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 downward ldbl-128 -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 tonearest ldbl-128 -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 towardzero ldbl-128 -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 upward ldbl-128 -0x4.32p+8L : 0x4p-1076L : inexact-ok
+= exp2 downward ldbl-128ibm -0x4.32p+8L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= exp2 tonearest ldbl-128ibm -0x4.32p+8L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= exp2 towardzero ldbl-128ibm -0x4.32p+8L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= exp2 upward ldbl-128ibm -0x4.32p+8L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+exp2 16383
+= exp2 downward flt-32 0x3.fffp+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp2 tonearest flt-32 0x3.fffp+12f : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero flt-32 0x3.fffp+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= exp2 upward flt-32 0x3.fffp+12f : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward dbl-64 0x3.fffp+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp2 tonearest dbl-64 0x3.fffp+12 : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero dbl-64 0x3.fffp+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= exp2 upward dbl-64 0x3.fffp+12 : plus_infty : inexact-ok overflow errno-erange
+= exp2 downward ldbl-96-intel 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 tonearest ldbl-96-intel 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 towardzero ldbl-96-intel 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 upward ldbl-96-intel 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 downward ldbl-96-m68k 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 tonearest ldbl-96-m68k 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 towardzero ldbl-96-m68k 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 upward ldbl-96-m68k 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 downward ldbl-128 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 tonearest ldbl-128 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 towardzero ldbl-128 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 upward ldbl-128 0x3.fffp+12L : 0x8p+16380L : inexact-ok
+= exp2 downward ldbl-128ibm 0x3.fffp+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp2 tonearest ldbl-128ibm 0x3.fffp+12L : plus_infty : inexact-ok overflow errno-erange
+= exp2 towardzero ldbl-128ibm 0x3.fffp+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= exp2 upward ldbl-128ibm 0x3.fffp+12L : plus_infty : inexact-ok overflow errno-erange
+exp2 -16400
+= exp2 downward flt-32 -0x4.01p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 tonearest flt-32 -0x4.01p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 towardzero flt-32 -0x4.01p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= exp2 upward flt-32 -0x4.01p+12f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= exp2 downward dbl-64 -0x4.01p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 tonearest dbl-64 -0x4.01p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 towardzero dbl-64 -0x4.01p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= exp2 upward dbl-64 -0x4.01p+12 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= exp2 downward ldbl-96-intel -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 tonearest ldbl-96-intel -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 towardzero ldbl-96-intel -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 upward ldbl-96-intel -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 downward ldbl-96-m68k -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 tonearest ldbl-96-m68k -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 towardzero ldbl-96-m68k -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 upward ldbl-96-m68k -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 downward ldbl-128 -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 tonearest ldbl-128 -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 towardzero ldbl-128 -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 upward ldbl-128 -0x4.01p+12L : 0x1p-16400L : inexact-ok underflow-ok errno-erange-ok
+= exp2 downward ldbl-128ibm -0x4.01p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 tonearest ldbl-128ibm -0x4.01p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 towardzero ldbl-128ibm -0x4.01p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= exp2 upward ldbl-128ibm -0x4.01p+12L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+expm1 0
+= expm1 downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= expm1 tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= expm1 towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= expm1 upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= expm1 downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= expm1 tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= expm1 towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= expm1 upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= expm1 downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= expm1 upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+expm1 -0
+= expm1 downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= expm1 upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= expm1 downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= expm1 upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= expm1 downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= expm1 upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+expm1 1
+= expm1 downward flt-32 0x1p+0f : 0x1.b7e15p+0f : inexact-ok
+= expm1 tonearest flt-32 0x1p+0f : 0x1.b7e152p+0f : inexact-ok
+= expm1 towardzero flt-32 0x1p+0f : 0x1.b7e15p+0f : inexact-ok
+= expm1 upward flt-32 0x1p+0f : 0x1.b7e152p+0f : inexact-ok
+= expm1 downward dbl-64 0x1p+0 : 0x1.b7e151628aed2p+0 : inexact-ok
+= expm1 tonearest dbl-64 0x1p+0 : 0x1.b7e151628aed3p+0 : inexact-ok
+= expm1 towardzero dbl-64 0x1p+0 : 0x1.b7e151628aed2p+0 : inexact-ok
+= expm1 upward dbl-64 0x1p+0 : 0x1.b7e151628aed3p+0 : inexact-ok
+= expm1 downward ldbl-96-intel 0x1p+0L : 0x1.b7e151628aed2a6ap+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x1p+0L : 0x1.b7e151628aed2a6ap+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x1p+0L : 0x1.b7e151628aed2a6ap+0L : inexact-ok
+= expm1 upward ldbl-96-intel 0x1p+0L : 0x1.b7e151628aed2a6cp+0L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x1p+0L : 0x1.b7e151628aed2a6ap+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x1p+0L : 0x1.b7e151628aed2a6ap+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x1p+0L : 0x1.b7e151628aed2a6ap+0L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x1p+0L : 0x1.b7e151628aed2a6cp+0L : inexact-ok
+= expm1 downward ldbl-128 0x1p+0L : 0x1.b7e151628aed2a6abf7158809cf4p+0L : inexact-ok
+= expm1 tonearest ldbl-128 0x1p+0L : 0x1.b7e151628aed2a6abf7158809cf5p+0L : inexact-ok
+= expm1 towardzero ldbl-128 0x1p+0L : 0x1.b7e151628aed2a6abf7158809cf4p+0L : inexact-ok
+= expm1 upward ldbl-128 0x1p+0L : 0x1.b7e151628aed2a6abf7158809cf5p+0L : inexact-ok
+= expm1 downward ldbl-128ibm 0x1p+0L : 0x1.b7e151628aed2a6abf7158809c8p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x1p+0L : 0x1.b7e151628aed2a6abf7158809dp+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x1p+0L : 0x1.b7e151628aed2a6abf7158809c8p+0L : inexact-ok
+= expm1 upward ldbl-128ibm 0x1p+0L : 0x1.b7e151628aed2a6abf7158809dp+0L : inexact-ok
+expm1 0.75
+= expm1 downward flt-32 0xcp-4f : 0x1.1df3b6p+0f : inexact-ok
+= expm1 tonearest flt-32 0xcp-4f : 0x1.1df3b6p+0f : inexact-ok
+= expm1 towardzero flt-32 0xcp-4f : 0x1.1df3b6p+0f : inexact-ok
+= expm1 upward flt-32 0xcp-4f : 0x1.1df3b8p+0f : inexact-ok
+= expm1 downward dbl-64 0xcp-4 : 0x1.1df3b68cfb9efp+0 : inexact-ok
+= expm1 tonearest dbl-64 0xcp-4 : 0x1.1df3b68cfb9efp+0 : inexact-ok
+= expm1 towardzero dbl-64 0xcp-4 : 0x1.1df3b68cfb9efp+0 : inexact-ok
+= expm1 upward dbl-64 0xcp-4 : 0x1.1df3b68cfb9fp+0 : inexact-ok
+= expm1 downward ldbl-96-intel 0xcp-4L : 0x1.1df3b68cfb9ef7a8p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0xcp-4L : 0x1.1df3b68cfb9ef7aap+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0xcp-4L : 0x1.1df3b68cfb9ef7a8p+0L : inexact-ok
+= expm1 upward ldbl-96-intel 0xcp-4L : 0x1.1df3b68cfb9ef7aap+0L : inexact-ok
+= expm1 downward ldbl-96-m68k 0xcp-4L : 0x1.1df3b68cfb9ef7a8p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0xcp-4L : 0x1.1df3b68cfb9ef7aap+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0xcp-4L : 0x1.1df3b68cfb9ef7a8p+0L : inexact-ok
+= expm1 upward ldbl-96-m68k 0xcp-4L : 0x1.1df3b68cfb9ef7aap+0L : inexact-ok
+= expm1 downward ldbl-128 0xcp-4L : 0x1.1df3b68cfb9ef7a986addc7dcee2p+0L : inexact-ok
+= expm1 tonearest ldbl-128 0xcp-4L : 0x1.1df3b68cfb9ef7a986addc7dcee2p+0L : inexact-ok
+= expm1 towardzero ldbl-128 0xcp-4L : 0x1.1df3b68cfb9ef7a986addc7dcee2p+0L : inexact-ok
+= expm1 upward ldbl-128 0xcp-4L : 0x1.1df3b68cfb9ef7a986addc7dcee3p+0L : inexact-ok
+= expm1 downward ldbl-128ibm 0xcp-4L : 0x1.1df3b68cfb9ef7a986addc7dce8p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0xcp-4L : 0x1.1df3b68cfb9ef7a986addc7dcfp+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0xcp-4L : 0x1.1df3b68cfb9ef7a986addc7dce8p+0L : inexact-ok
+= expm1 upward ldbl-128ibm 0xcp-4L : 0x1.1df3b68cfb9ef7a986addc7dcfp+0L : inexact-ok
+expm1 50.0
+= expm1 downward flt-32 0x3.2p+4f : 0x1.19103ep+72f : inexact-ok
+= expm1 tonearest flt-32 0x3.2p+4f : 0x1.19103ep+72f : inexact-ok
+= expm1 towardzero flt-32 0x3.2p+4f : 0x1.19103ep+72f : inexact-ok
+= expm1 upward flt-32 0x3.2p+4f : 0x1.19104p+72f : inexact-ok
+= expm1 downward dbl-64 0x3.2p+4 : 0x1.19103e4080b45p+72 : inexact-ok
+= expm1 tonearest dbl-64 0x3.2p+4 : 0x1.19103e4080b45p+72 : inexact-ok
+= expm1 towardzero dbl-64 0x3.2p+4 : 0x1.19103e4080b45p+72 : inexact-ok
+= expm1 upward dbl-64 0x3.2p+4 : 0x1.19103e4080b46p+72 : inexact-ok
+= expm1 downward ldbl-96-intel 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= expm1 upward ldbl-96-intel 0x3.2p+4L : 0x1.19103e4080b45666p+72L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x3.2p+4L : 0x1.19103e4080b45664p+72L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x3.2p+4L : 0x1.19103e4080b45666p+72L : inexact-ok
+= expm1 downward ldbl-128 0x3.2p+4L : 0x1.19103e4080b45664d6740cf8c5d8p+72L : inexact-ok
+= expm1 tonearest ldbl-128 0x3.2p+4L : 0x1.19103e4080b45664d6740cf8c5d9p+72L : inexact-ok
+= expm1 towardzero ldbl-128 0x3.2p+4L : 0x1.19103e4080b45664d6740cf8c5d8p+72L : inexact-ok
+= expm1 upward ldbl-128 0x3.2p+4L : 0x1.19103e4080b45664d6740cf8c5d9p+72L : inexact-ok
+= expm1 downward ldbl-128ibm 0x3.2p+4L : 0x1.19103e4080b45664d6740cf8c58p+72L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x3.2p+4L : 0x1.19103e4080b45664d6740cf8c6p+72L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x3.2p+4L : 0x1.19103e4080b45664d6740cf8c58p+72L : inexact-ok
+= expm1 upward ldbl-128ibm 0x3.2p+4L : 0x1.19103e4080b45664d6740cf8c6p+72L : inexact-ok
+expm1 127.0
+= expm1 downward flt-32 0x7.fp+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= expm1 tonearest flt-32 0x7.fp+4f : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero flt-32 0x7.fp+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= expm1 upward flt-32 0x7.fp+4f : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward dbl-64 0x7.fp+4 : 0x9.5521837491608p+180 : inexact-ok
+= expm1 tonearest dbl-64 0x7.fp+4 : 0x9.552183749161p+180 : inexact-ok
+= expm1 towardzero dbl-64 0x7.fp+4 : 0x9.5521837491608p+180 : inexact-ok
+= expm1 upward dbl-64 0x7.fp+4 : 0x9.552183749161p+180 : inexact-ok
+= expm1 downward ldbl-96-intel 0x7.fp+4L : 0x9.552183749160e8bp+180L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x7.fp+4L : 0x9.552183749160e8bp+180L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x7.fp+4L : 0x9.552183749160e8bp+180L : inexact-ok
+= expm1 upward ldbl-96-intel 0x7.fp+4L : 0x9.552183749160e8cp+180L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x7.fp+4L : 0x9.552183749160e8bp+180L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x7.fp+4L : 0x9.552183749160e8bp+180L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x7.fp+4L : 0x9.552183749160e8bp+180L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x7.fp+4L : 0x9.552183749160e8cp+180L : inexact-ok
+= expm1 downward ldbl-128 0x7.fp+4L : 0x9.552183749160e8b702888dad9508p+180L : inexact-ok
+= expm1 tonearest ldbl-128 0x7.fp+4L : 0x9.552183749160e8b702888dad951p+180L : inexact-ok
+= expm1 towardzero ldbl-128 0x7.fp+4L : 0x9.552183749160e8b702888dad9508p+180L : inexact-ok
+= expm1 upward ldbl-128 0x7.fp+4L : 0x9.552183749160e8b702888dad951p+180L : inexact-ok
+= expm1 downward ldbl-128ibm 0x7.fp+4L : 0x9.552183749160e8b702888dad94p+180L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x7.fp+4L : 0x9.552183749160e8b702888dad94p+180L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x7.fp+4L : 0x9.552183749160e8b702888dad94p+180L : inexact-ok
+= expm1 upward ldbl-128ibm 0x7.fp+4L : 0x9.552183749160e8b702888dad98p+180L : inexact-ok
+expm1 500.0
+= expm1 downward flt-32 0x1.f4p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= expm1 tonearest flt-32 0x1.f4p+8f : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero flt-32 0x1.f4p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= expm1 upward flt-32 0x1.f4p+8f : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward dbl-64 0x1.f4p+8 : 0x2.8b74553efc87p+720 : inexact-ok
+= expm1 tonearest dbl-64 0x1.f4p+8 : 0x2.8b74553efc872p+720 : inexact-ok
+= expm1 towardzero dbl-64 0x1.f4p+8 : 0x2.8b74553efc87p+720 : inexact-ok
+= expm1 upward dbl-64 0x1.f4p+8 : 0x2.8b74553efc872p+720 : inexact-ok
+= expm1 downward ldbl-96-intel 0x1.f4p+8L : 0x2.8b74553efc87128cp+720L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x1.f4p+8L : 0x2.8b74553efc87129p+720L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x1.f4p+8L : 0x2.8b74553efc87128cp+720L : inexact-ok
+= expm1 upward ldbl-96-intel 0x1.f4p+8L : 0x2.8b74553efc87129p+720L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x1.f4p+8L : 0x2.8b74553efc87128cp+720L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x1.f4p+8L : 0x2.8b74553efc87129p+720L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x1.f4p+8L : 0x2.8b74553efc87128cp+720L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x1.f4p+8L : 0x2.8b74553efc87129p+720L : inexact-ok
+= expm1 downward ldbl-128 0x1.f4p+8L : 0x2.8b74553efc87128fd5d1b2c1ea3ap+720L : inexact-ok
+= expm1 tonearest ldbl-128 0x1.f4p+8L : 0x2.8b74553efc87128fd5d1b2c1ea3ap+720L : inexact-ok
+= expm1 towardzero ldbl-128 0x1.f4p+8L : 0x2.8b74553efc87128fd5d1b2c1ea3ap+720L : inexact-ok
+= expm1 upward ldbl-128 0x1.f4p+8L : 0x2.8b74553efc87128fd5d1b2c1ea3cp+720L : inexact-ok
+= expm1 downward ldbl-128ibm 0x1.f4p+8L : 0x2.8b74553efc87128fd5d1b2c1eap+720L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x1.f4p+8L : 0x2.8b74553efc87128fd5d1b2c1eap+720L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x1.f4p+8L : 0x2.8b74553efc87128fd5d1b2c1eap+720L : inexact-ok
+= expm1 upward ldbl-128ibm 0x1.f4p+8L : 0x2.8b74553efc87128fd5d1b2c1ebp+720L : inexact-ok
+expm1 11356.25
+= expm1 downward flt-32 0x2.c5c4p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= expm1 tonearest flt-32 0x2.c5c4p+12f : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero flt-32 0x2.c5c4p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= expm1 upward flt-32 0x2.c5c4p+12f : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward dbl-64 0x2.c5c4p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= expm1 tonearest dbl-64 0x2.c5c4p+12 : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero dbl-64 0x2.c5c4p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= expm1 upward dbl-64 0x2.c5c4p+12 : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-96-intel 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40cp+16380L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40dp+16380L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40cp+16380L : inexact-ok
+= expm1 upward ldbl-96-intel 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40dp+16380L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40cp+16380L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40dp+16380L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40cp+16380L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40dp+16380L : inexact-ok
+= expm1 downward ldbl-128 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40c9d77771f196c8p+16380L : inexact-ok
+= expm1 tonearest ldbl-128 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40c9d77771f196dp+16380L : inexact-ok
+= expm1 towardzero ldbl-128 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40c9d77771f196c8p+16380L : inexact-ok
+= expm1 upward ldbl-128 0x2.c5c4p+12L : 0xc.2c2b72bac3ba40c9d77771f196dp+16380L : inexact-ok
+= expm1 downward ldbl-128ibm 0x2.c5c4p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128ibm 0x2.c5c4p+12L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128ibm 0x2.c5c4p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128ibm 0x2.c5c4p+12L : plus_infty : inexact-ok overflow errno-erange
+expm1 -10.0
+= expm1 downward flt-32 -0xap+0f : -0xf.ffd07p-4f : inexact-ok
+= expm1 tonearest flt-32 -0xap+0f : -0xf.ffd06p-4f : inexact-ok
+= expm1 towardzero flt-32 -0xap+0f : -0xf.ffd06p-4f : inexact-ok
+= expm1 upward flt-32 -0xap+0f : -0xf.ffd06p-4f : inexact-ok
+= expm1 downward dbl-64 -0xap+0 : -0xf.ffd0650c95378p-4 : inexact-ok
+= expm1 tonearest dbl-64 -0xap+0 : -0xf.ffd0650c9537p-4 : inexact-ok
+= expm1 towardzero dbl-64 -0xap+0 : -0xf.ffd0650c9537p-4 : inexact-ok
+= expm1 upward dbl-64 -0xap+0 : -0xf.ffd0650c9537p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0xap+0L : -0xf.ffd0650c953706dp-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0xap+0L : -0xf.ffd0650c953706dp-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0xap+0L : -0xf.ffd0650c953706cp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0xap+0L : -0xf.ffd0650c953706cp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0xap+0L : -0xf.ffd0650c953706dp-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0xap+0L : -0xf.ffd0650c953706dp-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0xap+0L : -0xf.ffd0650c953706cp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0xap+0L : -0xf.ffd0650c953706cp-4L : inexact-ok
+= expm1 downward ldbl-128 -0xap+0L : -0xf.ffd0650c953706cac749b7155edp-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0xap+0L : -0xf.ffd0650c953706cac749b7155edp-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0xap+0L : -0xf.ffd0650c953706cac749b7155ec8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0xap+0L : -0xf.ffd0650c953706cac749b7155ec8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0xap+0L : -0xf.ffd0650c953706cac749b7156p-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0xap+0L : -0xf.ffd0650c953706cac749b7156p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0xap+0L : -0xf.ffd0650c953706cac749b7155cp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0xap+0L : -0xf.ffd0650c953706cac749b7155cp-4L : inexact-ok
+expm1 -16.0
+= expm1 downward flt-32 -0x1p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 tonearest flt-32 -0x1p+4f : -0xf.ffffep-4f : inexact-ok
+= expm1 towardzero flt-32 -0x1p+4f : -0xf.ffffep-4f : inexact-ok
+= expm1 upward flt-32 -0x1p+4f : -0xf.ffffep-4f : inexact-ok
+= expm1 downward dbl-64 -0x1p+4 : -0xf.ffffe1caa4458p-4 : inexact-ok
+= expm1 tonearest dbl-64 -0x1p+4 : -0xf.ffffe1caa445p-4 : inexact-ok
+= expm1 towardzero dbl-64 -0x1p+4 : -0xf.ffffe1caa445p-4 : inexact-ok
+= expm1 upward dbl-64 -0x1p+4 : -0xf.ffffe1caa445p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x1p+4L : -0xf.ffffe1caa445118p-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x1p+4L : -0xf.ffffe1caa445118p-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x1p+4L : -0xf.ffffe1caa445117p-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x1p+4L : -0xf.ffffe1caa445117p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x1p+4L : -0xf.ffffe1caa445118p-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x1p+4L : -0xf.ffffe1caa445118p-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x1p+4L : -0xf.ffffe1caa445117p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x1p+4L : -0xf.ffffe1caa445117p-4L : inexact-ok
+= expm1 downward ldbl-128 -0x1p+4L : -0xf.ffffe1caa445117a35259a08c0dp-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x1p+4L : -0xf.ffffe1caa445117a35259a08c0c8p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x1p+4L : -0xf.ffffe1caa445117a35259a08c0c8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x1p+4L : -0xf.ffffe1caa445117a35259a08c0c8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x1p+4L : -0xf.ffffe1caa445117a35259a08c4p-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x1p+4L : -0xf.ffffe1caa445117a35259a08cp-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x1p+4L : -0xf.ffffe1caa445117a35259a08cp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x1p+4L : -0xf.ffffe1caa445117a35259a08cp-4L : inexact-ok
+expm1 -17.0
+= expm1 downward flt-32 -0x1.1p+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x1.1p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 towardzero flt-32 -0x1.1p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x1.1p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x1.1p+4 : -0xf.fffff4e30e748p-4 : inexact-ok
+= expm1 tonearest dbl-64 -0x1.1p+4 : -0xf.fffff4e30e748p-4 : inexact-ok
+= expm1 towardzero dbl-64 -0x1.1p+4 : -0xf.fffff4e30e74p-4 : inexact-ok
+= expm1 upward dbl-64 -0x1.1p+4 : -0xf.fffff4e30e74p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x1.1p+4L : -0xf.fffff4e30e7452dp-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x1.1p+4L : -0xf.fffff4e30e7452dp-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x1.1p+4L : -0xf.fffff4e30e7452cp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x1.1p+4L : -0xf.fffff4e30e7452cp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x1.1p+4L : -0xf.fffff4e30e7452dp-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x1.1p+4L : -0xf.fffff4e30e7452dp-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x1.1p+4L : -0xf.fffff4e30e7452cp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x1.1p+4L : -0xf.fffff4e30e7452cp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x1.1p+4L : -0xf.fffff4e30e7452cbb1a1331e22bp-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x1.1p+4L : -0xf.fffff4e30e7452cbb1a1331e22bp-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x1.1p+4L : -0xf.fffff4e30e7452cbb1a1331e22a8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x1.1p+4L : -0xf.fffff4e30e7452cbb1a1331e22a8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x1.1p+4L : -0xf.fffff4e30e7452cbb1a1331e24p-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x1.1p+4L : -0xf.fffff4e30e7452cbb1a1331e24p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x1.1p+4L : -0xf.fffff4e30e7452cbb1a1331e2p-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x1.1p+4L : -0xf.fffff4e30e7452cbb1a1331e2p-4L : inexact-ok
+expm1 -18.0
+= expm1 downward flt-32 -0x1.2p+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x1.2p+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x1.2p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x1.2p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x1.2p+4 : -0xf.fffffbe9675dp-4 : inexact-ok
+= expm1 tonearest dbl-64 -0x1.2p+4 : -0xf.fffffbe9675dp-4 : inexact-ok
+= expm1 towardzero dbl-64 -0x1.2p+4 : -0xf.fffffbe9675c8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x1.2p+4 : -0xf.fffffbe9675c8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x1.2p+4L : -0xf.fffffbe9675ce5ap-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x1.2p+4L : -0xf.fffffbe9675ce5ap-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x1.2p+4L : -0xf.fffffbe9675ce59p-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x1.2p+4L : -0xf.fffffbe9675ce59p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x1.2p+4L : -0xf.fffffbe9675ce5ap-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x1.2p+4L : -0xf.fffffbe9675ce5ap-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x1.2p+4L : -0xf.fffffbe9675ce59p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x1.2p+4L : -0xf.fffffbe9675ce59p-4L : inexact-ok
+= expm1 downward ldbl-128 -0x1.2p+4L : -0xf.fffffbe9675ce59817cddee3aa18p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x1.2p+4L : -0xf.fffffbe9675ce59817cddee3aa18p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x1.2p+4L : -0xf.fffffbe9675ce59817cddee3aa1p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x1.2p+4L : -0xf.fffffbe9675ce59817cddee3aa1p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x1.2p+4L : -0xf.fffffbe9675ce59817cddee3acp-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x1.2p+4L : -0xf.fffffbe9675ce59817cddee3acp-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x1.2p+4L : -0xf.fffffbe9675ce59817cddee3a8p-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x1.2p+4L : -0xf.fffffbe9675ce59817cddee3a8p-4L : inexact-ok
+expm1 -36.0
+= expm1 downward flt-32 -0x2.4p+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x2.4p+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x2.4p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x2.4p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x2.4p+4 : -0xf.ffffffffffffp-4 : inexact-ok
+= expm1 tonearest dbl-64 -0x2.4p+4 : -0xf.ffffffffffffp-4 : inexact-ok
+= expm1 towardzero dbl-64 -0x2.4p+4 : -0xf.fffffffffffe8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x2.4p+4 : -0xf.fffffffffffe8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x2.4p+4L : -0xf.fffffffffffef4ap-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x2.4p+4L : -0xf.fffffffffffef49p-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x2.4p+4L : -0xf.fffffffffffef49p-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x2.4p+4L : -0xf.fffffffffffef49p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x2.4p+4L : -0xf.fffffffffffef4ap-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x2.4p+4L : -0xf.fffffffffffef49p-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x2.4p+4L : -0xf.fffffffffffef49p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x2.4p+4L : -0xf.fffffffffffef49p-4L : inexact-ok
+= expm1 downward ldbl-128 -0x2.4p+4L : -0xf.fffffffffffef493c50221f9c7f8p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x2.4p+4L : -0xf.fffffffffffef493c50221f9c7f8p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x2.4p+4L : -0xf.fffffffffffef493c50221f9c7fp-4L : inexact-ok
+= expm1 upward ldbl-128 -0x2.4p+4L : -0xf.fffffffffffef493c50221f9c7fp-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x2.4p+4L : -0xf.fffffffffffef493c50221f9c8p-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x2.4p+4L : -0xf.fffffffffffef493c50221f9c8p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x2.4p+4L : -0xf.fffffffffffef493c50221f9c4p-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x2.4p+4L : -0xf.fffffffffffef493c50221f9c4p-4L : inexact-ok
+expm1 -37.0
+= expm1 downward flt-32 -0x2.5p+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x2.5p+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x2.5p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x2.5p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x2.5p+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x2.5p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 towardzero dbl-64 -0x2.5p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x2.5p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x2.5p+4L : -0xf.ffffffffffff9dap-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x2.5p+4L : -0xf.ffffffffffff9dap-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x2.5p+4L : -0xf.ffffffffffff9d9p-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x2.5p+4L : -0xf.ffffffffffff9d9p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x2.5p+4L : -0xf.ffffffffffff9dap-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x2.5p+4L : -0xf.ffffffffffff9dap-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x2.5p+4L : -0xf.ffffffffffff9d9p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x2.5p+4L : -0xf.ffffffffffff9d9p-4L : inexact-ok
+= expm1 downward ldbl-128 -0x2.5p+4L : -0xf.ffffffffffff9d9ee380d67eac08p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x2.5p+4L : -0xf.ffffffffffff9d9ee380d67eac08p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x2.5p+4L : -0xf.ffffffffffff9d9ee380d67eacp-4L : inexact-ok
+= expm1 upward ldbl-128 -0x2.5p+4L : -0xf.ffffffffffff9d9ee380d67eacp-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x2.5p+4L : -0xf.ffffffffffff9d9ee380d67ebp-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x2.5p+4L : -0xf.ffffffffffff9d9ee380d67eacp-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x2.5p+4L : -0xf.ffffffffffff9d9ee380d67eacp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x2.5p+4L : -0xf.ffffffffffff9d9ee380d67eacp-4L : inexact-ok
+expm1 -38.0
+= expm1 downward flt-32 -0x2.6p+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x2.6p+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x2.6p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x2.6p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x2.6p+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x2.6p+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x2.6p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x2.6p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x2.6p+4L : -0xf.ffffffffffffdbdp-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x2.6p+4L : -0xf.ffffffffffffdbdp-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x2.6p+4L : -0xf.ffffffffffffdbcp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x2.6p+4L : -0xf.ffffffffffffdbcp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x2.6p+4L : -0xf.ffffffffffffdbdp-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x2.6p+4L : -0xf.ffffffffffffdbdp-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x2.6p+4L : -0xf.ffffffffffffdbcp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x2.6p+4L : -0xf.ffffffffffffdbcp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x2.6p+4L : -0xf.ffffffffffffdbceea52a399f9e8p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x2.6p+4L : -0xf.ffffffffffffdbceea52a399f9ep-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x2.6p+4L : -0xf.ffffffffffffdbceea52a399f9ep-4L : inexact-ok
+= expm1 upward ldbl-128 -0x2.6p+4L : -0xf.ffffffffffffdbceea52a399f9ep-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x2.6p+4L : -0xf.ffffffffffffdbceea52a399fcp-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x2.6p+4L : -0xf.ffffffffffffdbceea52a399f8p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x2.6p+4L : -0xf.ffffffffffffdbceea52a399f8p-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x2.6p+4L : -0xf.ffffffffffffdbceea52a399f8p-4L : inexact-ok
+expm1 -44.0
+= expm1 downward flt-32 -0x2.cp+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x2.cp+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x2.cp+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x2.cp+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x2.cp+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x2.cp+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x2.cp+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x2.cp+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x2.cp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x2.cp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x2.cp+4L : -0xf.ffffffffffffffep-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x2.cp+4L : -0xf.ffffffffffffffep-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x2.cp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x2.cp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x2.cp+4L : -0xf.ffffffffffffffep-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x2.cp+4L : -0xf.ffffffffffffffep-4L : inexact-ok
+= expm1 downward ldbl-128 -0x2.cp+4L : -0xf.ffffffffffffffe908be21e8b718p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x2.cp+4L : -0xf.ffffffffffffffe908be21e8b71p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x2.cp+4L : -0xf.ffffffffffffffe908be21e8b71p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x2.cp+4L : -0xf.ffffffffffffffe908be21e8b71p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x2.cp+4L : -0xf.ffffffffffffffe908be21e8b8p-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x2.cp+4L : -0xf.ffffffffffffffe908be21e8b8p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x2.cp+4L : -0xf.ffffffffffffffe908be21e8b4p-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x2.cp+4L : -0xf.ffffffffffffffe908be21e8b4p-4L : inexact-ok
+expm1 -45.0
+= expm1 downward flt-32 -0x2.dp+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x2.dp+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x2.dp+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x2.dp+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x2.dp+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x2.dp+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x2.dp+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x2.dp+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x2.dp+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x2.dp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x2.dp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x2.dp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x2.dp+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x2.dp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x2.dp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x2.dp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x2.dp+4L : -0xf.fffffffffffffff78d246170056p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x2.dp+4L : -0xf.fffffffffffffff78d246170056p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x2.dp+4L : -0xf.fffffffffffffff78d2461700558p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x2.dp+4L : -0xf.fffffffffffffff78d2461700558p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x2.dp+4L : -0xf.fffffffffffffff78d24617008p-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x2.dp+4L : -0xf.fffffffffffffff78d24617004p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x2.dp+4L : -0xf.fffffffffffffff78d24617004p-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x2.dp+4L : -0xf.fffffffffffffff78d24617004p-4L : inexact-ok
+expm1 -46.0
+= expm1 downward flt-32 -0x2.ep+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x2.ep+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x2.ep+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x2.ep+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x2.ep+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x2.ep+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x2.ep+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x2.ep+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x2.ep+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x2.ep+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x2.ep+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x2.ep+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x2.ep+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x2.ep+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x2.ep+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x2.ep+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x2.ep+4L : -0xf.fffffffffffffffce4543c89ec5p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x2.ep+4L : -0xf.fffffffffffffffce4543c89ec5p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x2.ep+4L : -0xf.fffffffffffffffce4543c89ec48p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x2.ep+4L : -0xf.fffffffffffffffce4543c89ec48p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x2.ep+4L : -0xf.fffffffffffffffce4543c89fp-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x2.ep+4L : -0xf.fffffffffffffffce4543c89ecp-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x2.ep+4L : -0xf.fffffffffffffffce4543c89ecp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x2.ep+4L : -0xf.fffffffffffffffce4543c89ecp-4L : inexact-ok
+expm1 -73.0
+= expm1 downward flt-32 -0x4.9p+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x4.9p+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x4.9p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x4.9p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x4.9p+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x4.9p+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x4.9p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x4.9p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x4.9p+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x4.9p+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x4.9p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x4.9p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x4.9p+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x4.9p+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x4.9p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x4.9p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x4.9p+4L : -0xf.fffffffffffffffffffffffff998p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x4.9p+4L : -0xf.fffffffffffffffffffffffff99p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x4.9p+4L : -0xf.fffffffffffffffffffffffff99p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x4.9p+4L : -0xf.fffffffffffffffffffffffff99p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x4.9p+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x4.9p+4L : -0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x4.9p+4L : -0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x4.9p+4L : -0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+expm1 -74.0
+= expm1 downward flt-32 -0x4.ap+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x4.ap+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x4.ap+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x4.ap+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x4.ap+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x4.ap+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x4.ap+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x4.ap+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x4.ap+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x4.ap+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x4.ap+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x4.ap+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x4.ap+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x4.ap+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x4.ap+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x4.ap+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x4.ap+4L : -0xf.fffffffffffffffffffffffffda8p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x4.ap+4L : -0xf.fffffffffffffffffffffffffdap-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x4.ap+4L : -0xf.fffffffffffffffffffffffffdap-4L : inexact-ok
+= expm1 upward ldbl-128 -0x4.ap+4L : -0xf.fffffffffffffffffffffffffdap-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x4.ap+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x4.ap+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x4.ap+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x4.ap+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 -75.0
+= expm1 downward flt-32 -0x4.bp+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x4.bp+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x4.bp+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x4.bp+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x4.bp+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x4.bp+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x4.bp+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x4.bp+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x4.bp+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x4.bp+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x4.bp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x4.bp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x4.bp+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x4.bp+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x4.bp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x4.bp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x4.bp+4L : -0xf.ffffffffffffffffffffffffff2p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x4.bp+4L : -0xf.ffffffffffffffffffffffffff2p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x4.bp+4L : -0xf.ffffffffffffffffffffffffff18p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x4.bp+4L : -0xf.ffffffffffffffffffffffffff18p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x4.bp+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x4.bp+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x4.bp+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x4.bp+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 -78.0
+= expm1 downward flt-32 -0x4.ep+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x4.ep+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x4.ep+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x4.ep+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x4.ep+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x4.ep+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x4.ep+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x4.ep+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x4.ep+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x4.ep+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x4.ep+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x4.ep+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x4.ep+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x4.ep+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x4.ep+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x4.ep+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x4.ep+4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x4.ep+4L : -0xf.fffffffffffffffffffffffffffp-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x4.ep+4L : -0xf.fffffffffffffffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-128 -0x4.ep+4L : -0xf.fffffffffffffffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x4.ep+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x4.ep+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x4.ep+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x4.ep+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 -79.0
+= expm1 downward flt-32 -0x4.fp+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x4.fp+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x4.fp+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x4.fp+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x4.fp+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x4.fp+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x4.fp+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x4.fp+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x4.fp+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x4.fp+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x4.fp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x4.fp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x4.fp+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x4.fp+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x4.fp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x4.fp+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x4.fp+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0x4.fp+4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x4.fp+4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x4.fp+4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x4.fp+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x4.fp+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x4.fp+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x4.fp+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 -80.0
+= expm1 downward flt-32 -0x5p+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x5p+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x5p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x5p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x5p+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x5p+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x5p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x5p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x5p+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x5p+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x5p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x5p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x5p+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x5p+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x5p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x5p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x5p+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0x5p+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0x5p+4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x5p+4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x5p+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x5p+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x5p+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x5p+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 -100.0
+= expm1 downward flt-32 -0x6.4p+4f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x6.4p+4f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x6.4p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x6.4p+4f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x6.4p+4 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x6.4p+4 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x6.4p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x6.4p+4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x6.4p+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x6.4p+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x6.4p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x6.4p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x6.4p+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x6.4p+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x6.4p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x6.4p+4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x6.4p+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0x6.4p+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0x6.4p+4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x6.4p+4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x6.4p+4L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x6.4p+4L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x6.4p+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x6.4p+4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 -1000.0
+= expm1 downward flt-32 -0x3.e8p+8f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x3.e8p+8f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x3.e8p+8f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x3.e8p+8f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x3.e8p+8 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x3.e8p+8 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x3.e8p+8 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x3.e8p+8 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x3.e8p+8L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x3.e8p+8L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x3.e8p+8L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x3.e8p+8L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x3.e8p+8L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x3.e8p+8L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x3.e8p+8L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x3.e8p+8L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x3.e8p+8L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0x3.e8p+8L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0x3.e8p+8L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x3.e8p+8L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x3.e8p+8L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x3.e8p+8L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x3.e8p+8L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x3.e8p+8L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 -10000.0
+= expm1 downward flt-32 -0x2.71p+12f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x2.71p+12f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x2.71p+12f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x2.71p+12f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x2.71p+12 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x2.71p+12 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x2.71p+12 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x2.71p+12 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x2.71p+12L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x2.71p+12L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x2.71p+12L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x2.71p+12L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x2.71p+12L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x2.71p+12L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x2.71p+12L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x2.71p+12L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x2.71p+12L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0x2.71p+12L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0x2.71p+12L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x2.71p+12L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x2.71p+12L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x2.71p+12L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x2.71p+12L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x2.71p+12L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 -100000.0
+= expm1 downward flt-32 -0x1.86ap+16f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0x1.86ap+16f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0x1.86ap+16f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0x1.86ap+16f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0x1.86ap+16 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0x1.86ap+16 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0x1.86ap+16 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x1.86ap+16 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x1.86ap+16L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x1.86ap+16L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x1.86ap+16L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x1.86ap+16L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x1.86ap+16L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x1.86ap+16L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x1.86ap+16L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x1.86ap+16L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0x1.86ap+16L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0x1.86ap+16L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0x1.86ap+16L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x1.86ap+16L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x1.86ap+16L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x1.86ap+16L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x1.86ap+16L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x1.86ap+16L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 100000.0
+= expm1 downward flt-32 0x1.86ap+16f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= expm1 tonearest flt-32 0x1.86ap+16f : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero flt-32 0x1.86ap+16f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= expm1 upward flt-32 0x1.86ap+16f : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward dbl-64 0x1.86ap+16 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= expm1 tonearest dbl-64 0x1.86ap+16 : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero dbl-64 0x1.86ap+16 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= expm1 upward dbl-64 0x1.86ap+16 : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-96-intel 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-96-intel 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-96-intel 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-96-intel 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-96-m68k 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-96-m68k 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-96-m68k 0x1.86ap+16L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-96-m68k 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-128 0x1.86ap+16L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128 0x1.86ap+16L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-128ibm 0x1.86ap+16L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128ibm 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128ibm 0x1.86ap+16L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128ibm 0x1.86ap+16L : plus_infty : inexact-ok overflow errno-erange
+expm1 max
+= expm1 downward flt-32 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= expm1 tonearest flt-32 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= expm1 upward flt-32 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward dbl-64 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= expm1 tonearest dbl-64 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero dbl-64 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= expm1 upward dbl-64 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-96-intel 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-96-intel 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-96-m68k 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-96-m68k 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-128 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-128ibm 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128ibm 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128ibm 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= expm1 tonearest dbl-64 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= expm1 upward dbl-64 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-96-intel 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-128 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= expm1 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= expm1 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= expm1 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+expm1 -max
+= expm1 downward flt-32 -0xf.fffffp+124f : -0x1p+0f : inexact-ok
+= expm1 tonearest flt-32 -0xf.fffffp+124f : -0x1p+0f : inexact-ok
+= expm1 towardzero flt-32 -0xf.fffffp+124f : -0xf.fffffp-4f : inexact-ok
+= expm1 upward flt-32 -0xf.fffffp+124f : -0xf.fffffp-4f : inexact-ok
+= expm1 downward dbl-64 -0xf.fffffp+124 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0xf.fffffp+124 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0xf.fffffp+124 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0xf.fffffp+124 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0xf.fffffp+124L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0xf.fffffp+124L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0xf.fffffp+124L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0xf.fffffp+124L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0xf.fffffp+124L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0xf.fffffp+124L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0xf.fffffp+124L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0xf.fffffp+124L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0xf.fffffp+124L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0xf.fffffp+124L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0xf.fffffp+124L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0xf.fffffp+124L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0xf.fffffp+124L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0xf.fffffp+124L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0xf.fffffp+124L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0xf.fffffp+124L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 downward dbl-64 -0xf.ffffffffffff8p+1020 : -0x1p+0 : inexact-ok
+= expm1 tonearest dbl-64 -0xf.ffffffffffff8p+1020 : -0x1p+0 : inexact-ok
+= expm1 towardzero dbl-64 -0xf.ffffffffffff8p+1020 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 upward dbl-64 -0xf.ffffffffffff8p+1020 : -0xf.ffffffffffff8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0xf.ffffffffffff8p+1020L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0xf.ffffffffffff8p+1020L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0xf.ffffffffffff8p+1020L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0xf.ffffffffffff8p+1020L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0xf.ffffffffffff8p+1020L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0xf.ffffffffffff8p+1020L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0xf.ffffffffffff8p+1020L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0xf.ffffffffffff8p+1020L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 downward ldbl-96-intel -0xf.fffffffffffffffp+16380L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffp-4L : inexact-ok
+= expm1 downward ldbl-128 -0xf.fffffffffffffffp+16380L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0xf.fffffffffffffffp+16380L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0xf.fffffffffffffffp+16380L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1p+0L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0x1p+0L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+expm1 0x1p-2
+= expm1 downward flt-32 0x4p-4f : 0x4.8b5e38p-4f : inexact-ok
+= expm1 tonearest flt-32 0x4p-4f : 0x4.8b5e4p-4f : inexact-ok
+= expm1 towardzero flt-32 0x4p-4f : 0x4.8b5e38p-4f : inexact-ok
+= expm1 upward flt-32 0x4p-4f : 0x4.8b5e4p-4f : inexact-ok
+= expm1 downward dbl-64 0x4p-4 : 0x4.8b5e3c3e81864p-4 : inexact-ok
+= expm1 tonearest dbl-64 0x4p-4 : 0x4.8b5e3c3e81868p-4 : inexact-ok
+= expm1 towardzero dbl-64 0x4p-4 : 0x4.8b5e3c3e81864p-4 : inexact-ok
+= expm1 upward dbl-64 0x4p-4 : 0x4.8b5e3c3e81868p-4 : inexact-ok
+= expm1 downward ldbl-96-intel 0x4p-4L : 0x4.8b5e3c3e8186676p-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x4p-4L : 0x4.8b5e3c3e81866768p-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x4p-4L : 0x4.8b5e3c3e8186676p-4L : inexact-ok
+= expm1 upward ldbl-96-intel 0x4p-4L : 0x4.8b5e3c3e81866768p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x4p-4L : 0x4.8b5e3c3e8186676p-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x4p-4L : 0x4.8b5e3c3e81866768p-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x4p-4L : 0x4.8b5e3c3e8186676p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x4p-4L : 0x4.8b5e3c3e81866768p-4L : inexact-ok
+= expm1 downward ldbl-128 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baabe4p-4L : inexact-ok
+= expm1 tonearest ldbl-128 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baabe4p-4L : inexact-ok
+= expm1 towardzero ldbl-128 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baabe4p-4L : inexact-ok
+= expm1 upward ldbl-128 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baabe8p-4L : inexact-ok
+= expm1 downward ldbl-128ibm 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baaap-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baacp-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baaap-4L : inexact-ok
+= expm1 upward ldbl-128ibm 0x4p-4L : 0x4.8b5e3c3e81866767bc3b69baacp-4L : inexact-ok
+expm1 -0x1p-2
+= expm1 downward flt-32 -0x4p-4f : -0x3.8a0834p-4f : inexact-ok
+= expm1 tonearest flt-32 -0x4p-4f : -0x3.8a083p-4f : inexact-ok
+= expm1 towardzero flt-32 -0x4p-4f : -0x3.8a083p-4f : inexact-ok
+= expm1 upward flt-32 -0x4p-4f : -0x3.8a083p-4f : inexact-ok
+= expm1 downward dbl-64 -0x4p-4 : -0x3.8a0830a9befaap-4 : inexact-ok
+= expm1 tonearest dbl-64 -0x4p-4 : -0x3.8a0830a9befa8p-4 : inexact-ok
+= expm1 towardzero dbl-64 -0x4p-4 : -0x3.8a0830a9befa8p-4 : inexact-ok
+= expm1 upward dbl-64 -0x4p-4 : -0x3.8a0830a9befa8p-4 : inexact-ok
+= expm1 downward ldbl-96-intel -0x4p-4L : -0x3.8a0830a9befa8bccp-4L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x4p-4L : -0x3.8a0830a9befa8bccp-4L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x4p-4L : -0x3.8a0830a9befa8bc8p-4L : inexact-ok
+= expm1 upward ldbl-96-intel -0x4p-4L : -0x3.8a0830a9befa8bc8p-4L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x4p-4L : -0x3.8a0830a9befa8bccp-4L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x4p-4L : -0x3.8a0830a9befa8bccp-4L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x4p-4L : -0x3.8a0830a9befa8bc8p-4L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x4p-4L : -0x3.8a0830a9befa8bc8p-4L : inexact-ok
+= expm1 downward ldbl-128 -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c972p-4L : inexact-ok
+= expm1 tonearest ldbl-128 -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c97p-4L : inexact-ok
+= expm1 towardzero ldbl-128 -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c97p-4L : inexact-ok
+= expm1 upward ldbl-128 -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c97p-4L : inexact-ok
+= expm1 downward ldbl-128ibm -0x4p-4L : -0x3.8a0830a9befa8bcbea343629cap-4L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c9p-4L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c9p-4L : inexact-ok
+= expm1 upward ldbl-128ibm -0x4p-4L : -0x3.8a0830a9befa8bcbea343629c9p-4L : inexact-ok
+expm1 0x1p-10
+= expm1 downward flt-32 0x4p-12f : 0x4.008008p-12f : inexact-ok
+= expm1 tonearest flt-32 0x4p-12f : 0x4.008008p-12f : inexact-ok
+= expm1 towardzero flt-32 0x4p-12f : 0x4.008008p-12f : inexact-ok
+= expm1 upward flt-32 0x4p-12f : 0x4.00801p-12f : inexact-ok
+= expm1 downward dbl-64 0x4p-12 : 0x4.00800aab555dcp-12 : inexact-ok
+= expm1 tonearest dbl-64 0x4p-12 : 0x4.00800aab555dcp-12 : inexact-ok
+= expm1 towardzero dbl-64 0x4p-12 : 0x4.00800aab555dcp-12 : inexact-ok
+= expm1 upward dbl-64 0x4p-12 : 0x4.00800aab555ep-12 : inexact-ok
+= expm1 downward ldbl-96-intel 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 upward ldbl-96-intel 0x4p-12L : 0x4.00800aab555dde4p-12L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x4p-12L : 0x4.00800aab555dde38p-12L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x4p-12L : 0x4.00800aab555dde4p-12L : inexact-ok
+= expm1 downward ldbl-128 0x4p-12L : 0x4.00800aab555dde38e6ce86e92778p-12L : inexact-ok
+= expm1 tonearest ldbl-128 0x4p-12L : 0x4.00800aab555dde38e6ce86e9277cp-12L : inexact-ok
+= expm1 towardzero ldbl-128 0x4p-12L : 0x4.00800aab555dde38e6ce86e92778p-12L : inexact-ok
+= expm1 upward ldbl-128 0x4p-12L : 0x4.00800aab555dde38e6ce86e9277cp-12L : inexact-ok
+= expm1 downward ldbl-128ibm 0x4p-12L : 0x4.00800aab555dde38e6ce86e926p-12L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x4p-12L : 0x4.00800aab555dde38e6ce86e928p-12L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x4p-12L : 0x4.00800aab555dde38e6ce86e926p-12L : inexact-ok
+= expm1 upward ldbl-128ibm 0x4p-12L : 0x4.00800aab555dde38e6ce86e928p-12L : inexact-ok
+expm1 -0x1p-10
+= expm1 downward flt-32 -0x4p-12f : -0x3.ff800cp-12f : inexact-ok
+= expm1 tonearest flt-32 -0x4p-12f : -0x3.ff800cp-12f : inexact-ok
+= expm1 towardzero flt-32 -0x4p-12f : -0x3.ff8008p-12f : inexact-ok
+= expm1 upward flt-32 -0x4p-12f : -0x3.ff8008p-12f : inexact-ok
+= expm1 downward dbl-64 -0x4p-12 : -0x3.ff800aaa0008ap-12 : inexact-ok
+= expm1 tonearest dbl-64 -0x4p-12 : -0x3.ff800aaa00088p-12 : inexact-ok
+= expm1 towardzero dbl-64 -0x4p-12 : -0x3.ff800aaa00088p-12 : inexact-ok
+= expm1 upward dbl-64 -0x4p-12 : -0x3.ff800aaa00088p-12 : inexact-ok
+= expm1 downward ldbl-96-intel -0x4p-12L : -0x3.ff800aaa0008883p-12L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 upward ldbl-96-intel -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x4p-12L : -0x3.ff800aaa0008883p-12L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x4p-12L : -0x3.ff800aaa0008882cp-12L : inexact-ok
+= expm1 downward ldbl-128 -0x4p-12L : -0x3.ff800aaa0008882d861847853132p-12L : inexact-ok
+= expm1 tonearest ldbl-128 -0x4p-12L : -0x3.ff800aaa0008882d861847853132p-12L : inexact-ok
+= expm1 towardzero ldbl-128 -0x4p-12L : -0x3.ff800aaa0008882d86184785313p-12L : inexact-ok
+= expm1 upward ldbl-128 -0x4p-12L : -0x3.ff800aaa0008882d86184785313p-12L : inexact-ok
+= expm1 downward ldbl-128ibm -0x4p-12L : -0x3.ff800aaa0008882d8618478532p-12L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x4p-12L : -0x3.ff800aaa0008882d8618478531p-12L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x4p-12L : -0x3.ff800aaa0008882d8618478531p-12L : inexact-ok
+= expm1 upward ldbl-128ibm -0x4p-12L : -0x3.ff800aaa0008882d8618478531p-12L : inexact-ok
+expm1 0x1p-20
+= expm1 downward flt-32 0x1p-20f : 0x1.000008p-20f : inexact-ok
+= expm1 tonearest flt-32 0x1p-20f : 0x1.000008p-20f : inexact-ok
+= expm1 towardzero flt-32 0x1p-20f : 0x1.000008p-20f : inexact-ok
+= expm1 upward flt-32 0x1p-20f : 0x1.00000ap-20f : inexact-ok
+= expm1 downward dbl-64 0x1p-20 : 0x1.00000800002aap-20 : inexact-ok
+= expm1 tonearest dbl-64 0x1p-20 : 0x1.00000800002abp-20 : inexact-ok
+= expm1 towardzero dbl-64 0x1p-20 : 0x1.00000800002aap-20 : inexact-ok
+= expm1 upward dbl-64 0x1p-20 : 0x1.00000800002abp-20 : inexact-ok
+= expm1 downward ldbl-96-intel 0x1p-20L : 0x1.00000800002aaaaap-20L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x1p-20L : 0x1.00000800002aaaacp-20L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x1p-20L : 0x1.00000800002aaaaap-20L : inexact-ok
+= expm1 upward ldbl-96-intel 0x1p-20L : 0x1.00000800002aaaacp-20L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x1p-20L : 0x1.00000800002aaaaap-20L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x1p-20L : 0x1.00000800002aaaacp-20L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x1p-20L : 0x1.00000800002aaaaap-20L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x1p-20L : 0x1.00000800002aaaacp-20L : inexact-ok
+= expm1 downward ldbl-128 0x1p-20L : 0x1.00000800002aaaab55555777777dp-20L : inexact-ok
+= expm1 tonearest ldbl-128 0x1p-20L : 0x1.00000800002aaaab55555777777dp-20L : inexact-ok
+= expm1 towardzero ldbl-128 0x1p-20L : 0x1.00000800002aaaab55555777777dp-20L : inexact-ok
+= expm1 upward ldbl-128 0x1p-20L : 0x1.00000800002aaaab55555777777ep-20L : inexact-ok
+= expm1 downward ldbl-128ibm 0x1p-20L : 0x1.00000800002aaaab5555577777p-20L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x1p-20L : 0x1.00000800002aaaab55555777778p-20L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x1p-20L : 0x1.00000800002aaaab5555577777p-20L : inexact-ok
+= expm1 upward ldbl-128ibm 0x1p-20L : 0x1.00000800002aaaab55555777778p-20L : inexact-ok
+expm1 -0x1p-20
+= expm1 downward flt-32 -0x1p-20f : -0xf.ffff9p-24f : inexact-ok
+= expm1 tonearest flt-32 -0x1p-20f : -0xf.ffff8p-24f : inexact-ok
+= expm1 towardzero flt-32 -0x1p-20f : -0xf.ffff8p-24f : inexact-ok
+= expm1 upward flt-32 -0x1p-20f : -0xf.ffff8p-24f : inexact-ok
+= expm1 downward dbl-64 -0x1p-20 : -0xf.ffff800002abp-24 : inexact-ok
+= expm1 tonearest dbl-64 -0x1p-20 : -0xf.ffff800002aa8p-24 : inexact-ok
+= expm1 towardzero dbl-64 -0x1p-20 : -0xf.ffff800002aa8p-24 : inexact-ok
+= expm1 upward dbl-64 -0x1p-20 : -0xf.ffff800002aa8p-24 : inexact-ok
+= expm1 downward ldbl-96-intel -0x1p-20L : -0xf.ffff800002aaaabp-24L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 upward ldbl-96-intel -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x1p-20L : -0xf.ffff800002aaaabp-24L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x1p-20L : -0xf.ffff800002aaaaap-24L : inexact-ok
+= expm1 downward ldbl-128 -0x1p-20L : -0xf.ffff800002aaaaa00000222221c8p-24L : inexact-ok
+= expm1 tonearest ldbl-128 -0x1p-20L : -0xf.ffff800002aaaaa00000222221c8p-24L : inexact-ok
+= expm1 towardzero ldbl-128 -0x1p-20L : -0xf.ffff800002aaaaa00000222221cp-24L : inexact-ok
+= expm1 upward ldbl-128 -0x1p-20L : -0xf.ffff800002aaaaa00000222221cp-24L : inexact-ok
+= expm1 downward ldbl-128ibm -0x1p-20L : -0xf.ffff800002aaaaa00000222224p-24L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x1p-20L : -0xf.ffff800002aaaaa0000022222p-24L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x1p-20L : -0xf.ffff800002aaaaa0000022222p-24L : inexact-ok
+= expm1 upward ldbl-128ibm -0x1p-20L : -0xf.ffff800002aaaaa0000022222p-24L : inexact-ok
+expm1 0x1p-29
+= expm1 downward flt-32 0x8p-32f : 0x8p-32f : inexact-ok
+= expm1 tonearest flt-32 0x8p-32f : 0x8p-32f : inexact-ok
+= expm1 towardzero flt-32 0x8p-32f : 0x8p-32f : inexact-ok
+= expm1 upward flt-32 0x8p-32f : 0x8.00001p-32f : inexact-ok
+= expm1 downward dbl-64 0x8p-32 : 0x8.0000002p-32 : inexact-ok
+= expm1 tonearest dbl-64 0x8p-32 : 0x8.0000002p-32 : inexact-ok
+= expm1 towardzero dbl-64 0x8p-32 : 0x8.0000002p-32 : inexact-ok
+= expm1 upward dbl-64 0x8p-32 : 0x8.0000002000008p-32 : inexact-ok
+= expm1 downward ldbl-96-intel 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 upward ldbl-96-intel 0x8p-32L : 0x8.000000200000006p-32L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x8p-32L : 0x8.000000200000005p-32L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x8p-32L : 0x8.000000200000006p-32L : inexact-ok
+= expm1 downward ldbl-128 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 tonearest ldbl-128 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 towardzero ldbl-128 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 upward ldbl-128 0x8p-32L : 0x8.0000002000000055555556000008p-32L : inexact-ok
+= expm1 downward ldbl-128ibm 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x8p-32L : 0x8.0000002000000055555556p-32L : inexact-ok
+= expm1 upward ldbl-128ibm 0x8p-32L : 0x8.00000020000000555555560004p-32L : inexact-ok
+expm1 -0x1p-29
+= expm1 downward flt-32 -0x8p-32f : -0x8p-32f : inexact-ok
+= expm1 tonearest flt-32 -0x8p-32f : -0x8p-32f : inexact-ok
+= expm1 towardzero flt-32 -0x8p-32f : -0x7.fffff8p-32f : inexact-ok
+= expm1 upward flt-32 -0x8p-32f : -0x7.fffff8p-32f : inexact-ok
+= expm1 downward dbl-64 -0x8p-32 : -0x7.ffffffe000004p-32 : inexact-ok
+= expm1 tonearest dbl-64 -0x8p-32 : -0x7.ffffffep-32 : inexact-ok
+= expm1 towardzero dbl-64 -0x8p-32 : -0x7.ffffffep-32 : inexact-ok
+= expm1 upward dbl-64 -0x8p-32 : -0x7.ffffffep-32 : inexact-ok
+= expm1 downward ldbl-96-intel -0x8p-32L : -0x7.ffffffe000000058p-32L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x8p-32L : -0x7.ffffffe000000058p-32L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x8p-32L : -0x7.ffffffe00000005p-32L : inexact-ok
+= expm1 upward ldbl-96-intel -0x8p-32L : -0x7.ffffffe00000005p-32L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x8p-32L : -0x7.ffffffe000000058p-32L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x8p-32L : -0x7.ffffffe000000058p-32L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x8p-32L : -0x7.ffffffe00000005p-32L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x8p-32L : -0x7.ffffffe00000005p-32L : inexact-ok
+= expm1 downward ldbl-128 -0x8p-32L : -0x7.ffffffe000000055555554aaaaacp-32L : inexact-ok
+= expm1 tonearest ldbl-128 -0x8p-32L : -0x7.ffffffe000000055555554aaaaa8p-32L : inexact-ok
+= expm1 towardzero ldbl-128 -0x8p-32L : -0x7.ffffffe000000055555554aaaaa8p-32L : inexact-ok
+= expm1 upward ldbl-128 -0x8p-32L : -0x7.ffffffe000000055555554aaaaa8p-32L : inexact-ok
+= expm1 downward ldbl-128ibm -0x8p-32L : -0x7.ffffffe000000055555554aaacp-32L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x8p-32L : -0x7.ffffffe000000055555554aaaap-32L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x8p-32L : -0x7.ffffffe000000055555554aaaap-32L : inexact-ok
+= expm1 upward ldbl-128ibm -0x8p-32L : -0x7.ffffffe000000055555554aaaap-32L : inexact-ok
+expm1 0x1p-32
+= expm1 downward flt-32 0x1p-32f : 0x1p-32f : inexact-ok
+= expm1 tonearest flt-32 0x1p-32f : 0x1p-32f : inexact-ok
+= expm1 towardzero flt-32 0x1p-32f : 0x1p-32f : inexact-ok
+= expm1 upward flt-32 0x1p-32f : 0x1.000002p-32f : inexact-ok
+= expm1 downward dbl-64 0x1p-32 : 0x1.000000008p-32 : inexact-ok
+= expm1 tonearest dbl-64 0x1p-32 : 0x1.000000008p-32 : inexact-ok
+= expm1 towardzero dbl-64 0x1p-32 : 0x1.000000008p-32 : inexact-ok
+= expm1 upward dbl-64 0x1p-32 : 0x1.0000000080001p-32 : inexact-ok
+= expm1 downward ldbl-96-intel 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 upward ldbl-96-intel 0x1p-32L : 0x1.0000000080000002p-32L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x1p-32L : 0x1.000000008p-32L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x1p-32L : 0x1.0000000080000002p-32L : inexact-ok
+= expm1 downward ldbl-128 0x1p-32L : 0x1.00000000800000002aaaaaaab555p-32L : inexact-ok
+= expm1 tonearest ldbl-128 0x1p-32L : 0x1.00000000800000002aaaaaaab555p-32L : inexact-ok
+= expm1 towardzero ldbl-128 0x1p-32L : 0x1.00000000800000002aaaaaaab555p-32L : inexact-ok
+= expm1 upward ldbl-128 0x1p-32L : 0x1.00000000800000002aaaaaaab556p-32L : inexact-ok
+= expm1 downward ldbl-128ibm 0x1p-32L : 0x1.00000000800000002aaaaaaab5p-32L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x1p-32L : 0x1.00000000800000002aaaaaaab58p-32L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x1p-32L : 0x1.00000000800000002aaaaaaab5p-32L : inexact-ok
+= expm1 upward ldbl-128ibm 0x1p-32L : 0x1.00000000800000002aaaaaaab58p-32L : inexact-ok
+expm1 -0x1p-32
+= expm1 downward flt-32 -0x1p-32f : -0x1p-32f : inexact-ok
+= expm1 tonearest flt-32 -0x1p-32f : -0x1p-32f : inexact-ok
+= expm1 towardzero flt-32 -0x1p-32f : -0xf.fffffp-36f : inexact-ok
+= expm1 upward flt-32 -0x1p-32f : -0xf.fffffp-36f : inexact-ok
+= expm1 downward dbl-64 -0x1p-32 : -0xf.fffffff800008p-36 : inexact-ok
+= expm1 tonearest dbl-64 -0x1p-32 : -0xf.fffffff8p-36 : inexact-ok
+= expm1 towardzero dbl-64 -0x1p-32 : -0xf.fffffff8p-36 : inexact-ok
+= expm1 upward dbl-64 -0x1p-32 : -0xf.fffffff8p-36 : inexact-ok
+= expm1 downward ldbl-96-intel -0x1p-32L : -0xf.fffffff80000001p-36L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 upward ldbl-96-intel -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x1p-32L : -0xf.fffffff80000001p-36L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x1p-32L : -0xf.fffffff8p-36L : inexact-ok
+= expm1 downward ldbl-128 -0x1p-32L : -0xf.fffffff800000002aaaaaaaap-36L : inexact-ok
+= expm1 tonearest ldbl-128 -0x1p-32L : -0xf.fffffff800000002aaaaaaaap-36L : inexact-ok
+= expm1 towardzero ldbl-128 -0x1p-32L : -0xf.fffffff800000002aaaaaaa9fff8p-36L : inexact-ok
+= expm1 upward ldbl-128 -0x1p-32L : -0xf.fffffff800000002aaaaaaa9fff8p-36L : inexact-ok
+= expm1 downward ldbl-128ibm -0x1p-32L : -0xf.fffffff800000002aaaaaaaap-36L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x1p-32L : -0xf.fffffff800000002aaaaaaaap-36L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x1p-32L : -0xf.fffffff800000002aaaaaaa9fcp-36L : inexact-ok
+= expm1 upward ldbl-128ibm -0x1p-32L : -0xf.fffffff800000002aaaaaaa9fcp-36L : inexact-ok
+expm1 0x1p-50
+= expm1 downward flt-32 0x4p-52f : 0x4p-52f : inexact-ok
+= expm1 tonearest flt-32 0x4p-52f : 0x4p-52f : inexact-ok
+= expm1 towardzero flt-32 0x4p-52f : 0x4p-52f : inexact-ok
+= expm1 upward flt-32 0x4p-52f : 0x4.000008p-52f : inexact-ok
+= expm1 downward dbl-64 0x4p-52 : 0x4.0000000000008p-52 : inexact-ok
+= expm1 tonearest dbl-64 0x4p-52 : 0x4.0000000000008p-52 : inexact-ok
+= expm1 towardzero dbl-64 0x4p-52 : 0x4.0000000000008p-52 : inexact-ok
+= expm1 upward dbl-64 0x4p-52 : 0x4.000000000000cp-52 : inexact-ok
+= expm1 downward ldbl-96-intel 0x4p-52L : 0x4.0000000000008p-52L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x4p-52L : 0x4.0000000000008p-52L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x4p-52L : 0x4.0000000000008p-52L : inexact-ok
+= expm1 upward ldbl-96-intel 0x4p-52L : 0x4.0000000000008008p-52L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x4p-52L : 0x4.0000000000008p-52L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x4p-52L : 0x4.0000000000008p-52L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x4p-52L : 0x4.0000000000008p-52L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x4p-52L : 0x4.0000000000008008p-52L : inexact-ok
+= expm1 downward ldbl-128 0x4p-52L : 0x4.0000000000008000000000000aa8p-52L : inexact-ok
+= expm1 tonearest ldbl-128 0x4p-52L : 0x4.0000000000008000000000000aacp-52L : inexact-ok
+= expm1 towardzero ldbl-128 0x4p-52L : 0x4.0000000000008000000000000aa8p-52L : inexact-ok
+= expm1 upward ldbl-128 0x4p-52L : 0x4.0000000000008000000000000aacp-52L : inexact-ok
+= expm1 downward ldbl-128ibm 0x4p-52L : 0x4.0000000000008000000000000ap-52L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x4p-52L : 0x4.0000000000008000000000000ap-52L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x4p-52L : 0x4.0000000000008000000000000ap-52L : inexact-ok
+= expm1 upward ldbl-128ibm 0x4p-52L : 0x4.0000000000008000000000000cp-52L : inexact-ok
+expm1 -0x1p-50
+= expm1 downward flt-32 -0x4p-52f : -0x4p-52f : inexact-ok
+= expm1 tonearest flt-32 -0x4p-52f : -0x4p-52f : inexact-ok
+= expm1 towardzero flt-32 -0x4p-52f : -0x3.fffffcp-52f : inexact-ok
+= expm1 upward flt-32 -0x4p-52f : -0x3.fffffcp-52f : inexact-ok
+= expm1 downward dbl-64 -0x4p-52 : -0x3.ffffffffffffap-52 : inexact-ok
+= expm1 tonearest dbl-64 -0x4p-52 : -0x3.ffffffffffff8p-52 : inexact-ok
+= expm1 towardzero dbl-64 -0x4p-52 : -0x3.ffffffffffff8p-52 : inexact-ok
+= expm1 upward dbl-64 -0x4p-52 : -0x3.ffffffffffff8p-52 : inexact-ok
+= expm1 downward ldbl-96-intel -0x4p-52L : -0x3.ffffffffffff8004p-52L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x4p-52L : -0x3.ffffffffffff8p-52L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x4p-52L : -0x3.ffffffffffff8p-52L : inexact-ok
+= expm1 upward ldbl-96-intel -0x4p-52L : -0x3.ffffffffffff8p-52L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x4p-52L : -0x3.ffffffffffff8004p-52L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x4p-52L : -0x3.ffffffffffff8p-52L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x4p-52L : -0x3.ffffffffffff8p-52L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x4p-52L : -0x3.ffffffffffff8p-52L : inexact-ok
+= expm1 downward ldbl-128 -0x4p-52L : -0x3.ffffffffffff8000000000000aacp-52L : inexact-ok
+= expm1 tonearest ldbl-128 -0x4p-52L : -0x3.ffffffffffff8000000000000aaap-52L : inexact-ok
+= expm1 towardzero ldbl-128 -0x4p-52L : -0x3.ffffffffffff8000000000000aaap-52L : inexact-ok
+= expm1 upward ldbl-128 -0x4p-52L : -0x3.ffffffffffff8000000000000aaap-52L : inexact-ok
+= expm1 downward ldbl-128ibm -0x4p-52L : -0x3.ffffffffffff8000000000000bp-52L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x4p-52L : -0x3.ffffffffffff8000000000000bp-52L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x4p-52L : -0x3.ffffffffffff8000000000000ap-52L : inexact-ok
+= expm1 upward ldbl-128ibm -0x4p-52L : -0x3.ffffffffffff8000000000000ap-52L : inexact-ok
+expm1 0x1p-64
+= expm1 downward flt-32 0x1p-64f : 0x1p-64f : inexact-ok
+= expm1 tonearest flt-32 0x1p-64f : 0x1p-64f : inexact-ok
+= expm1 towardzero flt-32 0x1p-64f : 0x1p-64f : inexact-ok
+= expm1 upward flt-32 0x1p-64f : 0x1.000002p-64f : inexact-ok
+= expm1 downward dbl-64 0x1p-64 : 0x1p-64 : inexact-ok
+= expm1 tonearest dbl-64 0x1p-64 : 0x1p-64 : inexact-ok
+= expm1 towardzero dbl-64 0x1p-64 : 0x1p-64 : inexact-ok
+= expm1 upward dbl-64 0x1p-64 : 0x1.0000000000001p-64 : inexact-ok
+= expm1 downward ldbl-96-intel 0x1p-64L : 0x1p-64L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x1p-64L : 0x1p-64L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x1p-64L : 0x1p-64L : inexact-ok
+= expm1 upward ldbl-96-intel 0x1p-64L : 0x1.0000000000000002p-64L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x1p-64L : 0x1p-64L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x1p-64L : 0x1p-64L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x1p-64L : 0x1p-64L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x1p-64L : 0x1.0000000000000002p-64L : inexact-ok
+= expm1 downward ldbl-128 0x1p-64L : 0x1.00000000000000008p-64L : inexact-ok
+= expm1 tonearest ldbl-128 0x1p-64L : 0x1.00000000000000008p-64L : inexact-ok
+= expm1 towardzero ldbl-128 0x1p-64L : 0x1.00000000000000008p-64L : inexact-ok
+= expm1 upward ldbl-128 0x1p-64L : 0x1.0000000000000000800000000001p-64L : inexact-ok
+= expm1 downward ldbl-128ibm 0x1p-64L : 0x1.00000000000000008p-64L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x1p-64L : 0x1.00000000000000008p-64L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x1p-64L : 0x1.00000000000000008p-64L : inexact-ok
+= expm1 upward ldbl-128ibm 0x1p-64L : 0x1.000000000000000080000000008p-64L : inexact-ok
+expm1 -0x1p-64
+= expm1 downward flt-32 -0x1p-64f : -0x1p-64f : inexact-ok
+= expm1 tonearest flt-32 -0x1p-64f : -0x1p-64f : inexact-ok
+= expm1 towardzero flt-32 -0x1p-64f : -0xf.fffffp-68f : inexact-ok
+= expm1 upward flt-32 -0x1p-64f : -0xf.fffffp-68f : inexact-ok
+= expm1 downward dbl-64 -0x1p-64 : -0x1p-64 : inexact-ok
+= expm1 tonearest dbl-64 -0x1p-64 : -0x1p-64 : inexact-ok
+= expm1 towardzero dbl-64 -0x1p-64 : -0xf.ffffffffffff8p-68 : inexact-ok
+= expm1 upward dbl-64 -0x1p-64 : -0xf.ffffffffffff8p-68 : inexact-ok
+= expm1 downward ldbl-96-intel -0x1p-64L : -0x1p-64L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x1p-64L : -0xf.fffffffffffffffp-68L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x1p-64L : -0xf.fffffffffffffffp-68L : inexact-ok
+= expm1 upward ldbl-96-intel -0x1p-64L : -0xf.fffffffffffffffp-68L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x1p-64L : -0x1p-64L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x1p-64L : -0xf.fffffffffffffffp-68L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x1p-64L : -0xf.fffffffffffffffp-68L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x1p-64L : -0xf.fffffffffffffffp-68L : inexact-ok
+= expm1 downward ldbl-128 -0x1p-64L : -0xf.fffffffffffffff8p-68L : inexact-ok
+= expm1 tonearest ldbl-128 -0x1p-64L : -0xf.fffffffffffffff8p-68L : inexact-ok
+= expm1 towardzero ldbl-128 -0x1p-64L : -0xf.fffffffffffffff7fffffffffff8p-68L : inexact-ok
+= expm1 upward ldbl-128 -0x1p-64L : -0xf.fffffffffffffff7fffffffffff8p-68L : inexact-ok
+= expm1 downward ldbl-128ibm -0x1p-64L : -0xf.fffffffffffffff8p-68L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x1p-64L : -0xf.fffffffffffffff8p-68L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x1p-64L : -0xf.fffffffffffffff7fffffffffcp-68L : inexact-ok
+= expm1 upward ldbl-128ibm -0x1p-64L : -0xf.fffffffffffffff7fffffffffcp-68L : inexact-ok
+expm1 0x1p-100
+= expm1 downward flt-32 0x1p-100f : 0x1p-100f : inexact-ok
+= expm1 tonearest flt-32 0x1p-100f : 0x1p-100f : inexact-ok
+= expm1 towardzero flt-32 0x1p-100f : 0x1p-100f : inexact-ok
+= expm1 upward flt-32 0x1p-100f : 0x1.000002p-100f : inexact-ok
+= expm1 downward dbl-64 0x1p-100 : 0x1p-100 : inexact-ok
+= expm1 tonearest dbl-64 0x1p-100 : 0x1p-100 : inexact-ok
+= expm1 towardzero dbl-64 0x1p-100 : 0x1p-100 : inexact-ok
+= expm1 upward dbl-64 0x1p-100 : 0x1.0000000000001p-100 : inexact-ok
+= expm1 downward ldbl-96-intel 0x1p-100L : 0x1p-100L : inexact-ok
+= expm1 tonearest ldbl-96-intel 0x1p-100L : 0x1p-100L : inexact-ok
+= expm1 towardzero ldbl-96-intel 0x1p-100L : 0x1p-100L : inexact-ok
+= expm1 upward ldbl-96-intel 0x1p-100L : 0x1.0000000000000002p-100L : inexact-ok
+= expm1 downward ldbl-96-m68k 0x1p-100L : 0x1p-100L : inexact-ok
+= expm1 tonearest ldbl-96-m68k 0x1p-100L : 0x1p-100L : inexact-ok
+= expm1 towardzero ldbl-96-m68k 0x1p-100L : 0x1p-100L : inexact-ok
+= expm1 upward ldbl-96-m68k 0x1p-100L : 0x1.0000000000000002p-100L : inexact-ok
+= expm1 downward ldbl-128 0x1p-100L : 0x1.00000000000000000000000008p-100L : inexact-ok
+= expm1 tonearest ldbl-128 0x1p-100L : 0x1.00000000000000000000000008p-100L : inexact-ok
+= expm1 towardzero ldbl-128 0x1p-100L : 0x1.00000000000000000000000008p-100L : inexact-ok
+= expm1 upward ldbl-128 0x1p-100L : 0x1.0000000000000000000000000801p-100L : inexact-ok
+= expm1 downward ldbl-128ibm 0x1p-100L : 0x1.00000000000000000000000008p-100L : inexact-ok
+= expm1 tonearest ldbl-128ibm 0x1p-100L : 0x1.00000000000000000000000008p-100L : inexact-ok
+= expm1 towardzero ldbl-128ibm 0x1p-100L : 0x1.00000000000000000000000008p-100L : inexact-ok
+= expm1 upward ldbl-128ibm 0x1p-100L : 0x1.000000000000000000000000088p-100L : inexact-ok
+expm1 -0x1p-100
+= expm1 downward flt-32 -0x1p-100f : -0x1p-100f : inexact-ok
+= expm1 tonearest flt-32 -0x1p-100f : -0x1p-100f : inexact-ok
+= expm1 towardzero flt-32 -0x1p-100f : -0xf.fffffp-104f : inexact-ok
+= expm1 upward flt-32 -0x1p-100f : -0xf.fffffp-104f : inexact-ok
+= expm1 downward dbl-64 -0x1p-100 : -0x1p-100 : inexact-ok
+= expm1 tonearest dbl-64 -0x1p-100 : -0x1p-100 : inexact-ok
+= expm1 towardzero dbl-64 -0x1p-100 : -0xf.ffffffffffff8p-104 : inexact-ok
+= expm1 upward dbl-64 -0x1p-100 : -0xf.ffffffffffff8p-104 : inexact-ok
+= expm1 downward ldbl-96-intel -0x1p-100L : -0x1p-100L : inexact-ok
+= expm1 tonearest ldbl-96-intel -0x1p-100L : -0x1p-100L : inexact-ok
+= expm1 towardzero ldbl-96-intel -0x1p-100L : -0xf.fffffffffffffffp-104L : inexact-ok
+= expm1 upward ldbl-96-intel -0x1p-100L : -0xf.fffffffffffffffp-104L : inexact-ok
+= expm1 downward ldbl-96-m68k -0x1p-100L : -0x1p-100L : inexact-ok
+= expm1 tonearest ldbl-96-m68k -0x1p-100L : -0x1p-100L : inexact-ok
+= expm1 towardzero ldbl-96-m68k -0x1p-100L : -0xf.fffffffffffffffp-104L : inexact-ok
+= expm1 upward ldbl-96-m68k -0x1p-100L : -0xf.fffffffffffffffp-104L : inexact-ok
+= expm1 downward ldbl-128 -0x1p-100L : -0xf.ffffffffffffffffffffffff8p-104L : inexact-ok
+= expm1 tonearest ldbl-128 -0x1p-100L : -0xf.ffffffffffffffffffffffff8p-104L : inexact-ok
+= expm1 towardzero ldbl-128 -0x1p-100L : -0xf.ffffffffffffffffffffffff7ff8p-104L : inexact-ok
+= expm1 upward ldbl-128 -0x1p-100L : -0xf.ffffffffffffffffffffffff7ff8p-104L : inexact-ok
+= expm1 downward ldbl-128ibm -0x1p-100L : -0xf.ffffffffffffffffffffffff8p-104L : inexact-ok
+= expm1 tonearest ldbl-128ibm -0x1p-100L : -0xf.ffffffffffffffffffffffff8p-104L : inexact-ok
+= expm1 towardzero ldbl-128ibm -0x1p-100L : -0xf.ffffffffffffffffffffffff7cp-104L : inexact-ok
+= expm1 upward ldbl-128ibm -0x1p-100L : -0xf.ffffffffffffffffffffffff7cp-104L : inexact-ok
+hypot 0 0
+= hypot downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+hypot 0 -0
+= hypot downward flt-32 0x0p+0f -0x0p+0f : 0x0p+0f : inexact-ok
+= hypot tonearest flt-32 0x0p+0f -0x0p+0f : 0x0p+0f : inexact-ok
+= hypot towardzero flt-32 0x0p+0f -0x0p+0f : 0x0p+0f : inexact-ok
+= hypot upward flt-32 0x0p+0f -0x0p+0f : 0x0p+0f : inexact-ok
+= hypot downward dbl-64 0x0p+0 -0x0p+0 : 0x0p+0 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 -0x0p+0 : 0x0p+0 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 -0x0p+0 : 0x0p+0 : inexact-ok
+= hypot upward dbl-64 0x0p+0 -0x0p+0 : 0x0p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+hypot -0 0
+= hypot downward flt-32 -0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot tonearest flt-32 -0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot towardzero flt-32 -0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot upward flt-32 -0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot downward dbl-64 -0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot tonearest dbl-64 -0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot towardzero dbl-64 -0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot upward dbl-64 -0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128 -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128 -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+hypot -0 -0
+= hypot downward flt-32 -0x0p+0f -0x0p+0f : 0x0p+0f : inexact-ok
+= hypot tonearest flt-32 -0x0p+0f -0x0p+0f : 0x0p+0f : inexact-ok
+= hypot towardzero flt-32 -0x0p+0f -0x0p+0f : 0x0p+0f : inexact-ok
+= hypot upward flt-32 -0x0p+0f -0x0p+0f : 0x0p+0f : inexact-ok
+= hypot downward dbl-64 -0x0p+0 -0x0p+0 : 0x0p+0 : inexact-ok
+= hypot tonearest dbl-64 -0x0p+0 -0x0p+0 : 0x0p+0 : inexact-ok
+= hypot towardzero dbl-64 -0x0p+0 -0x0p+0 : 0x0p+0 : inexact-ok
+= hypot upward dbl-64 -0x0p+0 -0x0p+0 : 0x0p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128 -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128 -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0x0p+0L -0x0p+0L : 0x0p+0L : inexact-ok
+hypot 0.7 12.4
+= hypot downward flt-32 0xb.33334p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 0xb.33334p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 0xb.33334p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 0xb.33334p-4f 0xc.66667p+0f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 0xb.33334p-4 0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33334p-4 0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33334p-4 0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33334p-4 0xc.66667p+0 : 0xc.6b7445ac3ff6p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba965p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot downward flt-32 0xb.33334p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 0xb.33334p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 0xb.33334p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 0xb.33334p-4f 0xc.66666p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 0xb.33334p-4 0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33334p-4 0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33334p-4 0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33334p-4 0xc.66666p+0 : 0xc.6b7435b2c2c58p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b91ap+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b94p+0L : inexact-ok
+= hypot downward dbl-64 0xb.33334p-4 0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33334p-4 0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33334p-4 0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33334p-4 0xc.6666666666668p+0 : 0xc.6b743c168e728p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d88p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b004p+0L : inexact-ok
+= hypot downward dbl-64 0xb.33334p-4 0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33334p-4 0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33334p-4 0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33334p-4 0xc.666666666666p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152bp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd15p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d5972p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59cp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot downward flt-32 0xb.33333p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 0xb.33333p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 0xb.33333p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 0xb.33333p-4f 0xc.66667p+0f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 0xb.33333p-4 0xc.66667p+0 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33333p-4 0xc.66667p+0 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33333p-4 0xc.66667p+0 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot upward dbl-64 0xb.33333p-4 0xc.66667p+0 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8108p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d84p+0L : inexact-ok
+= hypot downward flt-32 0xb.33333p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 0xb.33333p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 0xb.33333p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 0xb.33333p-4f 0xc.66666p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 0xb.33333p-4 0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33333p-4 0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33333p-4 0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33333p-4 0xc.66666p+0 : 0xc.6b7435a4550ap+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot downward dbl-64 0xb.33333p-4 0xc.6666666666668p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33333p-4 0xc.6666666666668p+0 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33333p-4 0xc.6666666666668p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33333p-4 0xc.6666666666668p+0 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a428p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a8p+0L : inexact-ok
+= hypot downward dbl-64 0xb.33333p-4 0xc.666666666666p+0 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33333p-4 0xc.666666666666p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33333p-4 0xc.666666666666p+0 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33333p-4 0xc.666666666666p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d08p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73dp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot downward dbl-64 0xb.3333333333338p-4 0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.3333333333338p-4 0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.3333333333338p-4 0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 0xb.3333333333338p-4 0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf98p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot downward dbl-64 0xb.3333333333338p-4 0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.3333333333338p-4 0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.3333333333338p-4 0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 0xb.3333333333338p-4 0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d94958p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d94cp+0L : inexact-ok
+= hypot downward dbl-64 0xb.3333333333338p-4 0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.3333333333338p-4 0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.3333333333338p-4 0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 0xb.3333333333338p-4 0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d058p+0L : inexact-ok
+= hypot downward dbl-64 0xb.3333333333338p-4 0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.3333333333338p-4 0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.3333333333338p-4 0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 0xb.3333333333338p-4 0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aa8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c4p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a753419ap+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a753419984p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot downward dbl-64 0xb.333333333333p-4 0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.333333333333p-4 0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.333333333333p-4 0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 0xb.333333333333p-4 0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be92151798p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517cp+0L : inexact-ok
+= hypot downward dbl-64 0xb.333333333333p-4 0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.333333333333p-4 0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.333333333333p-4 0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 0xb.333333333333p-4 0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d62ap+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d62cp+0L : inexact-ok
+= hypot downward dbl-64 0xb.333333333333p-4 0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.333333333333p-4 0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.333333333333p-4 0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 0xb.333333333333p-4 0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6578p+0L : inexact-ok
+= hypot downward dbl-64 0xb.333333333333p-4 0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.333333333333p-4 0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.333333333333p-4 0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 0xb.333333333333p-4 0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca07p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ead8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49ep+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b4cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a5p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e28p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eab8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410bcp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9a8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4ccp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c45488p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c458p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e65p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87348p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8e8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+hypot -0.7 12.4
+= hypot downward flt-32 -0xb.33333p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 -0xb.33333p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 -0xb.33333p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 -0xb.33333p-4f 0xc.66667p+0f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 -0xb.33333p-4 0xc.66667p+0 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33333p-4 0xc.66667p+0 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33333p-4 0xc.66667p+0 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33333p-4 0xc.66667p+0 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8108p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L 0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d84p+0L : inexact-ok
+= hypot downward flt-32 -0xb.33333p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 -0xb.33333p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 -0xb.33333p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 -0xb.33333p-4f 0xc.66666p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 -0xb.33333p-4 0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33333p-4 0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33333p-4 0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33333p-4 0xc.66666p+0 : 0xc.6b7435a4550ap+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L 0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot downward dbl-64 -0xb.33333p-4 0xc.6666666666668p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33333p-4 0xc.6666666666668p+0 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33333p-4 0xc.6666666666668p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33333p-4 0xc.6666666666668p+0 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a428p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a8p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.33333p-4 0xc.666666666666p+0 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33333p-4 0xc.666666666666p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33333p-4 0xc.666666666666p+0 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33333p-4 0xc.666666666666p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L 0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d08p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73dp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot downward flt-32 -0xb.33334p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 -0xb.33334p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 -0xb.33334p-4f 0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 -0xb.33334p-4f 0xc.66667p+0f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 -0xb.33334p-4 0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33334p-4 0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33334p-4 0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33334p-4 0xc.66667p+0 : 0xc.6b7445ac3ff6p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba965p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L 0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot downward flt-32 -0xb.33334p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 -0xb.33334p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 -0xb.33334p-4f 0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 -0xb.33334p-4f 0xc.66666p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 -0xb.33334p-4 0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33334p-4 0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33334p-4 0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33334p-4 0xc.66666p+0 : 0xc.6b7435b2c2c58p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b91ap+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L 0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b94p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.33334p-4 0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33334p-4 0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33334p-4 0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33334p-4 0xc.6666666666668p+0 : 0xc.6b743c168e728p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d88p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L 0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b004p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.33334p-4 0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33334p-4 0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33334p-4 0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33334p-4 0xc.666666666666p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L 0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152bp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L 0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L 0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd15p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d5972p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.333333333333p-4 0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.333333333333p-4 0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.333333333333p-4 0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.333333333333p-4 0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be92151798p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517cp+0L : inexact-ok
+= hypot downward dbl-64 -0xb.333333333333p-4 0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.333333333333p-4 0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.333333333333p-4 0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.333333333333p-4 0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d62ap+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d62cp+0L : inexact-ok
+= hypot downward dbl-64 -0xb.333333333333p-4 0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.333333333333p-4 0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.333333333333p-4 0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.333333333333p-4 0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6578p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.333333333333p-4 0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.333333333333p-4 0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.333333333333p-4 0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.333333333333p-4 0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca07p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ead8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.3333333333338p-4 0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.3333333333338p-4 0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.3333333333338p-4 0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.3333333333338p-4 0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf98p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot downward dbl-64 -0xb.3333333333338p-4 0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.3333333333338p-4 0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.3333333333338p-4 0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.3333333333338p-4 0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d94958p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d94cp+0L : inexact-ok
+= hypot downward dbl-64 -0xb.3333333333338p-4 0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.3333333333338p-4 0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.3333333333338p-4 0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.3333333333338p-4 0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d058p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.3333333333338p-4 0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.3333333333338p-4 0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.3333333333338p-4 0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.3333333333338p-4 0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aa8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c4p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a753419ap+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a753419984p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410bcp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9a8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4ccp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c45488p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c458p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e65p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87348p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49ep+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b4cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a5p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e28p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eab8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8e8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L 0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+hypot 0.7 -12.4
+= hypot downward flt-32 0xb.33334p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 0xb.33334p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 0xb.33334p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 0xb.33334p-4f -0xc.66666p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 0xb.33334p-4 -0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33334p-4 -0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33334p-4 -0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33334p-4 -0xc.66666p+0 : 0xc.6b7435b2c2c58p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b91ap+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b94p+0L : inexact-ok
+= hypot downward flt-32 0xb.33334p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 0xb.33334p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 0xb.33334p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 0xb.33334p-4f -0xc.66667p+0f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 0xb.33334p-4 -0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33334p-4 -0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33334p-4 -0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33334p-4 -0xc.66667p+0 : 0xc.6b7445ac3ff6p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba965p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot downward dbl-64 0xb.33334p-4 -0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33334p-4 -0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33334p-4 -0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33334p-4 -0xc.666666666666p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152bp+0L : inexact-ok
+= hypot downward dbl-64 0xb.33334p-4 -0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33334p-4 -0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33334p-4 -0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33334p-4 -0xc.6666666666668p+0 : 0xc.6b743c168e728p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d88p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b004p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd15p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d5972p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59cp+0L : inexact-ok
+= hypot downward flt-32 0xb.33333p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 0xb.33333p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 0xb.33333p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 0xb.33333p-4f -0xc.66666p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 0xb.33333p-4 -0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33333p-4 -0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33333p-4 -0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33333p-4 -0xc.66666p+0 : 0xc.6b7435a4550ap+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot downward flt-32 0xb.33333p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 0xb.33333p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 0xb.33333p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 0xb.33333p-4f -0xc.66667p+0f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 0xb.33333p-4 -0xc.66667p+0 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33333p-4 -0xc.66667p+0 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33333p-4 -0xc.66667p+0 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot upward dbl-64 0xb.33333p-4 -0xc.66667p+0 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8108p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d84p+0L : inexact-ok
+= hypot downward dbl-64 0xb.33333p-4 -0xc.666666666666p+0 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33333p-4 -0xc.666666666666p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33333p-4 -0xc.666666666666p+0 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33333p-4 -0xc.666666666666p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot downward dbl-64 0xb.33333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.33333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.33333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot upward dbl-64 0xb.33333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a428p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a8p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d08p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73dp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot downward dbl-64 0xb.3333333333338p-4 -0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.3333333333338p-4 -0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.3333333333338p-4 -0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 0xb.3333333333338p-4 -0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d94958p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d94cp+0L : inexact-ok
+= hypot downward dbl-64 0xb.3333333333338p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.3333333333338p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.3333333333338p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 0xb.3333333333338p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf98p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot downward dbl-64 0xb.3333333333338p-4 -0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.3333333333338p-4 -0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.3333333333338p-4 -0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 0xb.3333333333338p-4 -0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot downward dbl-64 0xb.3333333333338p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.3333333333338p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.3333333333338p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 0xb.3333333333338p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d058p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aa8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a753419984p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c4p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a753419ap+0L : inexact-ok
+= hypot downward dbl-64 0xb.333333333333p-4 -0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.333333333333p-4 -0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.333333333333p-4 -0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 0xb.333333333333p-4 -0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d62ap+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d62cp+0L : inexact-ok
+= hypot downward dbl-64 0xb.333333333333p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.333333333333p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.333333333333p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 0xb.333333333333p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be92151798p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517cp+0L : inexact-ok
+= hypot downward dbl-64 0xb.333333333333p-4 -0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.333333333333p-4 -0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.333333333333p-4 -0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 0xb.333333333333p-4 -0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca07p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot downward dbl-64 0xb.333333333333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 0xb.333333333333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 0xb.333333333333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 0xb.333333333333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6578p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ead8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49ep+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b4cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a5p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eab8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e28p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9a8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4ccp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410bcp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e65p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c45488p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c458p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87348p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8e8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+hypot -0.7 -12.4
+= hypot downward flt-32 -0xb.33333p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 -0xb.33333p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 -0xb.33333p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 -0xb.33333p-4f -0xc.66666p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 -0xb.33333p-4 -0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33333p-4 -0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33333p-4 -0xc.66666p+0 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33333p-4 -0xc.66666p+0 : 0xc.6b7435a4550ap+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L -0xc.66666p+0L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot downward flt-32 -0xb.33333p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 -0xb.33333p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 -0xb.33333p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 -0xb.33333p-4f -0xc.66667p+0f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 -0xb.33333p-4 -0xc.66667p+0 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33333p-4 -0xc.66667p+0 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33333p-4 -0xc.66667p+0 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33333p-4 -0xc.66667p+0 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8108p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L -0xc.66667p+0L : 0xc.6b74459dd23a4dbb5549637d84p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.33333p-4 -0xc.666666666666p+0 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33333p-4 -0xc.666666666666p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33333p-4 -0xc.666666666666p+0 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33333p-4 -0xc.666666666666p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aaa78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L -0xc.666666666666p+0L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot downward dbl-64 -0xb.33333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a428p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0820b6d2b3870767e7a8p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0820b6b92dee04bc9d08p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b73dp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot downward flt-32 -0xb.33334p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 -0xb.33334p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 -0xb.33334p-4f -0xc.66666p+0f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 -0xb.33334p-4f -0xc.66666p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 -0xb.33334p-4 -0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33334p-4 -0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33334p-4 -0xc.66666p+0 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33334p-4 -0xc.66666p+0 : 0xc.6b7435b2c2c58p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b91ap+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L -0xc.66666p+0L : 0xc.6b7435b2c2c5220efb3fac2b94p+0L : inexact-ok
+= hypot downward flt-32 -0xb.33334p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 -0xb.33334p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 -0xb.33334p-4f -0xc.66667p+0f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 -0xb.33334p-4f -0xc.66667p+0f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 -0xb.33334p-4 -0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33334p-4 -0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33334p-4 -0xc.66667p+0 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33334p-4 -0xc.66667p+0 : 0xc.6b7445ac3ff6p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba965p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L -0xc.66667p+0L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.33334p-4 -0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33334p-4 -0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33334p-4 -0xc.666666666666p+0 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33334p-4 -0xc.666666666666p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afd8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L -0xc.666666666666p+0L : 0xc.6b743c168e71bec59e5b152bp+0L : inexact-ok
+= hypot downward dbl-64 -0xb.33334p-4 -0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.33334p-4 -0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.33334p-4 -0xc.6666666666668p+0 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.33334p-4 -0xc.6666666666668p+0 : 0xc.6b743c168e728p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003d88p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L -0xc.6666666666668p+0L : 0xc.6b743c168e723e9187df6b004p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L -0xc.666666666666666p+0L : 0xc.6b743c168e7224fbf55facd15p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L -0xc.666666666666667p+0L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d5972p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c168e722502592b59d59cp+0L : inexact-ok
+= hypot downward dbl-64 -0xb.333333333333p-4 -0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.333333333333p-4 -0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.333333333333p-4 -0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.333333333333p-4 -0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d62ap+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c4007f8f39d62cp+0L : inexact-ok
+= hypot downward dbl-64 -0xb.333333333333p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.333333333333p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.333333333333p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.333333333333p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be92151798p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f410be921517cp+0L : inexact-ok
+= hypot downward dbl-64 -0xb.333333333333p-4 -0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.333333333333p-4 -0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.333333333333p-4 -0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.333333333333p-4 -0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca07p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.333333333333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.333333333333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.333333333333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.333333333333p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6735b4e2f6578p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ead8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.3333333333338p-4 -0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.3333333333338p-4 -0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.3333333333338p-4 -0xc.66666p+0 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.3333333333338p-4 -0xc.66666p+0 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d94958p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c473ed6aa2d94cp+0L : inexact-ok
+= hypot downward dbl-64 -0xb.3333333333338p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.3333333333338p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.3333333333338p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.3333333333338p-4 -0xc.66667p+0 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdf98p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot downward dbl-64 -0xb.3333333333338p-4 -0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.3333333333338p-4 -0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.3333333333338p-4 -0xc.666666666666p+0 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.3333333333338p-4 -0xc.666666666666p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot downward dbl-64 -0xb.3333333333338p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xb.3333333333338p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xb.3333333333338p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 -0xb.3333333333338p-4 -0xc.6666666666668p+0 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6e6c9295d058p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199aa8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a753419984p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199c4p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd579a753419ap+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c9a8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42ea89dd7f4ccp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f34f78410bcp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e65p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c45488p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1845cb5c458p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce36b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87348p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b49ep+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f43653f6b4cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9a5p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a192ca712a0cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33eab8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7e28p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.333333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333338p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.3333333333333333333333333p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666p+0L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66667p+0L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666p+0L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.6666666666668p+0L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666666p+0L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.666666666666667p+0L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.666666666666666666666666666p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.6666666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8e8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666664p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xb.33333333333333333333333334p-4L -0xc.66666666666666666666666668p+0L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+hypot 12.4 0.7
+= hypot downward flt-32 0xc.66667p+0f 0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 0xc.66667p+0f 0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 0xc.66667p+0f 0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 0xc.66667p+0f 0xb.33334p-4f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 0xc.66667p+0 0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66667p+0 0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66667p+0 0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66667p+0 0xb.33334p-4 : 0xc.6b7445ac3ff6p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba965p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot downward flt-32 0xc.66667p+0f 0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 0xc.66667p+0f 0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 0xc.66667p+0f 0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 0xc.66667p+0f 0xb.33333p-4f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 0xc.66667p+0 0xb.33333p-4 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66667p+0 0xb.33333p-4 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66667p+0 0xb.33333p-4 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot upward dbl-64 0xc.66667p+0 0xb.33333p-4 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8108p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d84p+0L : inexact-ok
+= hypot downward dbl-64 0xc.66667p+0 0xb.3333333333338p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66667p+0 0xb.3333333333338p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66667p+0 0xb.3333333333338p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66667p+0 0xb.3333333333338p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf98p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot downward dbl-64 0xc.66667p+0 0xb.333333333333p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66667p+0 0xb.333333333333p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66667p+0 0xb.333333333333p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66667p+0 0xb.333333333333p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be92151798p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49ep+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b4cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410bcp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward flt-32 0xc.66666p+0f 0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 0xc.66666p+0f 0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 0xc.66666p+0f 0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 0xc.66666p+0f 0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 0xc.66666p+0 0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66666p+0 0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66666p+0 0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66666p+0 0xb.33334p-4 : 0xc.6b7435b2c2c58p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b91ap+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b94p+0L : inexact-ok
+= hypot downward flt-32 0xc.66666p+0f 0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 0xc.66666p+0f 0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 0xc.66666p+0f 0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 0xc.66666p+0f 0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 0xc.66666p+0 0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66666p+0 0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66666p+0 0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66666p+0 0xb.33333p-4 : 0xc.6b7435a4550ap+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot downward dbl-64 0xc.66666p+0 0xb.3333333333338p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66666p+0 0xb.3333333333338p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66666p+0 0xb.3333333333338p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66666p+0 0xb.3333333333338p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d94958p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d94cp+0L : inexact-ok
+= hypot downward dbl-64 0xc.66666p+0 0xb.333333333333p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66666p+0 0xb.333333333333p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66666p+0 0xb.333333333333p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66666p+0 0xb.333333333333p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d62ap+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d62cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9a8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4ccp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward dbl-64 0xc.6666666666668p+0 0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.6666666666668p+0 0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.6666666666668p+0 0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot upward dbl-64 0xc.6666666666668p+0 0xb.33334p-4 : 0xc.6b743c168e728p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d88p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b004p+0L : inexact-ok
+= hypot downward dbl-64 0xc.6666666666668p+0 0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.6666666666668p+0 0xb.33333p-4 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.6666666666668p+0 0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot upward dbl-64 0xc.6666666666668p+0 0xb.33333p-4 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a428p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a8p+0L : inexact-ok
+= hypot downward dbl-64 0xc.6666666666668p+0 0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.6666666666668p+0 0xb.3333333333338p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.6666666666668p+0 0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 0xc.6666666666668p+0 0xb.3333333333338p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d058p+0L : inexact-ok
+= hypot downward dbl-64 0xc.6666666666668p+0 0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.6666666666668p+0 0xb.333333333333p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.6666666666668p+0 0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 0xc.6666666666668p+0 0xb.333333333333p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6578p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c45488p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c458p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward dbl-64 0xc.666666666666p+0 0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.666666666666p+0 0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.666666666666p+0 0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot upward dbl-64 0xc.666666666666p+0 0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152bp+0L : inexact-ok
+= hypot downward dbl-64 0xc.666666666666p+0 0xb.33333p-4 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.666666666666p+0 0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.666666666666p+0 0xb.33333p-4 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot upward dbl-64 0xc.666666666666p+0 0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot downward dbl-64 0xc.666666666666p+0 0xb.3333333333338p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.666666666666p+0 0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.666666666666p+0 0xb.3333333333338p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 0xc.666666666666p+0 0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot downward dbl-64 0xc.666666666666p+0 0xb.333333333333p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.666666666666p+0 0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.666666666666p+0 0xb.333333333333p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 0xc.666666666666p+0 0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca07p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a5p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e65p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d08p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ead8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e28p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd15p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eab8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d5972p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aa8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8e8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d59cp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73dp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c4p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a753419ap+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87348p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a753419984p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+hypot -12.4 0.7
+= hypot downward flt-32 -0xc.66666p+0f 0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 -0xc.66666p+0f 0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 -0xc.66666p+0f 0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 -0xc.66666p+0f 0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 -0xc.66666p+0 0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66666p+0 0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66666p+0 0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66666p+0 0xb.33334p-4 : 0xc.6b7435b2c2c58p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b91ap+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L 0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b94p+0L : inexact-ok
+= hypot downward flt-32 -0xc.66666p+0f 0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 -0xc.66666p+0f 0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 -0xc.66666p+0f 0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 -0xc.66666p+0f 0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 -0xc.66666p+0 0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66666p+0 0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66666p+0 0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66666p+0 0xb.33333p-4 : 0xc.6b7435a4550ap+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L 0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot downward dbl-64 -0xc.66666p+0 0xb.3333333333338p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66666p+0 0xb.3333333333338p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66666p+0 0xb.3333333333338p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66666p+0 0xb.3333333333338p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d94958p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L 0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d94cp+0L : inexact-ok
+= hypot downward dbl-64 -0xc.66666p+0 0xb.333333333333p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66666p+0 0xb.333333333333p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66666p+0 0xb.333333333333p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66666p+0 0xb.333333333333p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d62ap+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L 0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d62cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L 0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9a8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L 0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4ccp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward flt-32 -0xc.66667p+0f 0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 -0xc.66667p+0f 0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 -0xc.66667p+0f 0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 -0xc.66667p+0f 0xb.33334p-4f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 -0xc.66667p+0 0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66667p+0 0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66667p+0 0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66667p+0 0xb.33334p-4 : 0xc.6b7445ac3ff6p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba965p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L 0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot downward flt-32 -0xc.66667p+0f 0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 -0xc.66667p+0f 0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 -0xc.66667p+0f 0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 -0xc.66667p+0f 0xb.33333p-4f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 -0xc.66667p+0 0xb.33333p-4 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66667p+0 0xb.33333p-4 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66667p+0 0xb.33333p-4 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66667p+0 0xb.33333p-4 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8108p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L 0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d84p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.66667p+0 0xb.3333333333338p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66667p+0 0xb.3333333333338p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66667p+0 0xb.3333333333338p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66667p+0 0xb.3333333333338p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf98p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L 0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot downward dbl-64 -0xc.66667p+0 0xb.333333333333p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66667p+0 0xb.333333333333p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66667p+0 0xb.333333333333p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66667p+0 0xb.333333333333p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be92151798p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L 0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49ep+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L 0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b4cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L 0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410bcp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.666666666666p+0 0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.666666666666p+0 0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.666666666666p+0 0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.666666666666p+0 0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152bp+0L : inexact-ok
+= hypot downward dbl-64 -0xc.666666666666p+0 0xb.33333p-4 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.666666666666p+0 0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.666666666666p+0 0xb.33333p-4 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.666666666666p+0 0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot downward dbl-64 -0xc.666666666666p+0 0xb.3333333333338p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.666666666666p+0 0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.666666666666p+0 0xb.3333333333338p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.666666666666p+0 0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.666666666666p+0 0xb.333333333333p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.666666666666p+0 0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.666666666666p+0 0xb.333333333333p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.666666666666p+0 0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca07p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a5p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e65p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.6666666666668p+0 0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.6666666666668p+0 0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.6666666666668p+0 0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.6666666666668p+0 0xb.33334p-4 : 0xc.6b743c168e728p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d88p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e723e9187df6b004p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.6666666666668p+0 0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.6666666666668p+0 0xb.33333p-4 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.6666666666668p+0 0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.6666666666668p+0 0xb.33333p-4 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a428p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a8p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.6666666666668p+0 0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.6666666666668p+0 0xb.3333333333338p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.6666666666668p+0 0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.6666666666668p+0 0xb.3333333333338p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d058p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.6666666666668p+0 0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.6666666666668p+0 0xb.333333333333p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.6666666666668p+0 0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.6666666666668p+0 0xb.333333333333p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6578p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c45488p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c458p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd15p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eab8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L 0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d08p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ead8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e28p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d5972p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aa8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8e8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a753419984p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33334p-4L : 0xc.6b743c168e722502592b59d59cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73dp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c4p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a753419ap+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87348p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L 0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+hypot 12.4 -0.7
+= hypot downward flt-32 0xc.66667p+0f -0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 0xc.66667p+0f -0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 0xc.66667p+0f -0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 0xc.66667p+0f -0xb.33333p-4f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 0xc.66667p+0 -0xb.33333p-4 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66667p+0 -0xb.33333p-4 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66667p+0 -0xb.33333p-4 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot upward dbl-64 0xc.66667p+0 -0xb.33333p-4 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8108p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d84p+0L : inexact-ok
+= hypot downward flt-32 0xc.66667p+0f -0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 0xc.66667p+0f -0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 0xc.66667p+0f -0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 0xc.66667p+0f -0xb.33334p-4f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 0xc.66667p+0 -0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66667p+0 -0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66667p+0 -0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66667p+0 -0xb.33334p-4 : 0xc.6b7445ac3ff6p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba965p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot downward dbl-64 0xc.66667p+0 -0xb.333333333333p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66667p+0 -0xb.333333333333p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66667p+0 -0xb.333333333333p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66667p+0 -0xb.333333333333p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be92151798p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517cp+0L : inexact-ok
+= hypot downward dbl-64 0xc.66667p+0 -0xb.3333333333338p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66667p+0 -0xb.3333333333338p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66667p+0 -0xb.3333333333338p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66667p+0 -0xb.3333333333338p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf98p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410bcp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49ep+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b4cp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward flt-32 0xc.66666p+0f -0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 0xc.66666p+0f -0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 0xc.66666p+0f -0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 0xc.66666p+0f -0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 0xc.66666p+0 -0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66666p+0 -0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66666p+0 -0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66666p+0 -0xb.33333p-4 : 0xc.6b7435a4550ap+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot downward flt-32 0xc.66666p+0f -0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 0xc.66666p+0f -0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 0xc.66666p+0f -0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 0xc.66666p+0f -0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 0xc.66666p+0 -0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66666p+0 -0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66666p+0 -0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66666p+0 -0xb.33334p-4 : 0xc.6b7435b2c2c58p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b91ap+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b94p+0L : inexact-ok
+= hypot downward dbl-64 0xc.66666p+0 -0xb.333333333333p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66666p+0 -0xb.333333333333p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66666p+0 -0xb.333333333333p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66666p+0 -0xb.333333333333p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d62ap+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d62cp+0L : inexact-ok
+= hypot downward dbl-64 0xc.66666p+0 -0xb.3333333333338p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.66666p+0 -0xb.3333333333338p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.66666p+0 -0xb.3333333333338p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 0xc.66666p+0 -0xb.3333333333338p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d94958p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d94cp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9a8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4ccp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward dbl-64 0xc.6666666666668p+0 -0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.6666666666668p+0 -0xb.33333p-4 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.6666666666668p+0 -0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot upward dbl-64 0xc.6666666666668p+0 -0xb.33333p-4 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a428p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a8p+0L : inexact-ok
+= hypot downward dbl-64 0xc.6666666666668p+0 -0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.6666666666668p+0 -0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.6666666666668p+0 -0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot upward dbl-64 0xc.6666666666668p+0 -0xb.33334p-4 : 0xc.6b743c168e728p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d88p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b004p+0L : inexact-ok
+= hypot downward dbl-64 0xc.6666666666668p+0 -0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.6666666666668p+0 -0xb.333333333333p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.6666666666668p+0 -0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 0xc.6666666666668p+0 -0xb.333333333333p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6578p+0L : inexact-ok
+= hypot downward dbl-64 0xc.6666666666668p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.6666666666668p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.6666666666668p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 0xc.6666666666668p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d058p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c45488p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c458p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0cp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward dbl-64 0xc.666666666666p+0 -0xb.33333p-4 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.666666666666p+0 -0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.666666666666p+0 -0xb.33333p-4 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot upward dbl-64 0xc.666666666666p+0 -0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot downward dbl-64 0xc.666666666666p+0 -0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.666666666666p+0 -0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.666666666666p+0 -0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot upward dbl-64 0xc.666666666666p+0 -0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152bp+0L : inexact-ok
+= hypot downward dbl-64 0xc.666666666666p+0 -0xb.333333333333p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.666666666666p+0 -0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.666666666666p+0 -0xb.333333333333p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 0xc.666666666666p+0 -0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca07p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot downward dbl-64 0xc.666666666666p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 0xc.666666666666p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 0xc.666666666666p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 0xc.666666666666p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e65p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a5p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d08p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ead8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e28p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd15p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot downward ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eab8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d5972p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aa8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot upward ldbl-128 0xc.6666666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8e8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.666666666666666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73dp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d59cp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c4p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a753419ap+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87348p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a753419984p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+hypot -12.4 -0.7
+= hypot downward flt-32 -0xc.66666p+0f -0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 -0xc.66666p+0f -0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 -0xc.66666p+0f -0xb.33333p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 -0xc.66666p+0f -0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 -0xc.66666p+0 -0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66666p+0 -0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66666p+0 -0xb.33333p-4 : 0xc.6b7435a455098p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66666p+0 -0xb.33333p-4 : 0xc.6b7435a4550ap+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aecp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aedp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40beb8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40becp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40bcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L -0xb.33333p-4L : 0xc.6b7435a45509aec49781cf40cp+0L : inexact-ok
+= hypot downward flt-32 -0xc.66666p+0f -0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot tonearest flt-32 -0xc.66666p+0f -0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot towardzero flt-32 -0xc.66666p+0f -0xb.33334p-4f : 0xc.6b743p+0f : inexact-ok
+= hypot upward flt-32 -0xc.66666p+0f -0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot downward dbl-64 -0xc.66666p+0 -0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66666p+0 -0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66666p+0 -0xb.33334p-4 : 0xc.6b7435b2c2c5p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66666p+0 -0xb.33334p-4 : 0xc.6b7435b2c2c58p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c522p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5221p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9198p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b91ap+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b9p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L -0xb.33334p-4L : 0xc.6b7435b2c2c5220efb3fac2b94p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.66666p+0 -0xb.333333333333p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66666p+0 -0xb.333333333333p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66666p+0 -0xb.333333333333p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66666p+0 -0xb.333333333333p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c41p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d629f8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d62ap+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d628p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L -0xb.333333333333p-4L : 0xc.6b7435a737c8c4007f8f39d62cp+0L : inexact-ok
+= hypot downward dbl-64 -0xc.66666p+0 -0xb.3333333333338p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66666p+0 -0xb.3333333333338p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66666p+0 -0xb.3333333333338p-4 : 0xc.6b7435a737c88p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66666p+0 -0xb.3333333333338p-4 : 0xc.6b7435a737c9p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c47p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c48p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d9495p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d94958p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d948p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L -0xb.3333333333338p-4L : 0xc.6b7435a737c8c473ed6aa2d94cp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c9a8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L -0xb.333333333333333p-4L : 0xc.6b7435a737c8c42ea89dd7f4ccp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c43p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361eap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ea08p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L -0xb.333333333333334p-4L : 0xc.6b7435a737c8c42eb70b9361ecp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9ce8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cfp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970a9cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7435a737c8c42eab80970aap+0L : inexact-ok
+= hypot downward flt-32 -0xc.66667p+0f -0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 -0xc.66667p+0f -0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 -0xc.66667p+0f -0xb.33333p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 -0xc.66667p+0f -0xb.33333p-4f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 -0xc.66667p+0 -0xb.33333p-4 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66667p+0 -0xb.33333p-4 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66667p+0 -0xb.33333p-4 : 0xc.6b74459dd23ap+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66667p+0 -0xb.33333p-4 : 0xc.6b74459dd23a8p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dcp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d81p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8108p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L -0xb.33333p-4L : 0xc.6b74459dd23a4dbb5549637d84p+0L : inexact-ok
+= hypot downward flt-32 -0xc.66667p+0f -0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot tonearest flt-32 -0xc.66667p+0f -0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot towardzero flt-32 -0xc.66667p+0f -0xb.33334p-4f : 0xc.6b744p+0f : inexact-ok
+= hypot upward flt-32 -0xc.66667p+0f -0xb.33334p-4f : 0xc.6b745p+0f : inexact-ok
+= hypot downward dbl-64 -0xc.66667p+0 -0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66667p+0 -0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66667p+0 -0xb.33334p-4 : 0xc.6b7445ac3ff58p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66667p+0 -0xb.33334p-4 : 0xc.6b7445ac3ff6p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae7p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba9648p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba965p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba94p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L -0xb.33334p-4L : 0xc.6b7445ac3ff5ae76c1d736ba98p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.66667p+0 -0xb.333333333333p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66667p+0 -0xb.333333333333p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66667p+0 -0xb.333333333333p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66667p+0 -0xb.333333333333p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f4p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f5p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517978p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be92151798p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be9215178p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L -0xb.333333333333p-4L : 0xc.6b7445a0b4f95f410be921517cp+0L : inexact-ok
+= hypot downward dbl-64 -0xc.66667p+0 -0xb.3333333333338p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.66667p+0 -0xb.3333333333338p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.66667p+0 -0xb.3333333333338p-4 : 0xc.6b7445a0b4f9p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.66667p+0 -0xb.3333333333338p-4 : 0xc.6b7445a0b4f98p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fbp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fcp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf9p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdf98p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcdcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L -0xb.3333333333338p-4L : 0xc.6b7445a0b4f95fb479c3f5dcep+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b868p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b87p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410b8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L -0xb.333333333333333p-4L : 0xc.6b7445a0b4f95f6f34f78410bcp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b49ep+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b48p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L -0xb.333333333333334p-4L : 0xc.6b7445a0b4f95f6f43653f6b4cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d58p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d588p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b7445a0b4f95f6f37da4322d8p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.666666666666p+0 -0xb.33333p-4 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.666666666666p+0 -0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.666666666666p+0 -0xb.33333p-4 : 0xc.6b743c0820b6p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.666666666666p+0 -0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652fp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aaa78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aa8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b652e79d827d9aacp+0L : inexact-ok
+= hypot downward dbl-64 -0xc.666666666666p+0 -0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.666666666666p+0 -0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.666666666666p+0 -0xb.33334p-4 : 0xc.6b743c168e718p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.666666666666p+0 -0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71becp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bedp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afd8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152afcp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e71bec59e5b152bp+0L : inexact-ok
+= hypot downward dbl-64 -0xc.666666666666p+0 -0xb.333333333333p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.666666666666p+0 -0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.666666666666p+0 -0xb.333333333333p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.666666666666p+0 -0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca06f8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca07p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b037566a771c962ca08p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.666666666666p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.666666666666p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.666666666666p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b0375p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.666666666666p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375672p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f4p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a0cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375671adfa4906a1p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e648p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e65p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b037566d59ad7e928e8p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566dp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a48p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9a5p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e98p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b037566d5a945a48e9cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d3cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b037566d59dbaa83d4p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.6666666666668p+0 -0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.6666666666668p+0 -0xb.33333p-4 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.6666666666668p+0 -0xb.33333p-4 : 0xc.6b743c0820b68p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.6666666666668p+0 -0xb.33333p-4 : 0xc.6b743c0820b7p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2bp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a42p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a428p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6d2b3870767e7a8p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.6666666666668p+0 -0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.6666666666668p+0 -0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.6666666666668p+0 -0xb.33334p-4 : 0xc.6b743c168e72p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.6666666666668p+0 -0xb.33334p-4 : 0xc.6b743c168e728p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723eap+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003d88p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b003cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e723e9187df6b004p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.6666666666668p+0 -0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.6666666666668p+0 -0xb.333333333333p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.6666666666668p+0 -0xb.333333333333p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.6666666666668p+0 -0xb.333333333333p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e67p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f65753p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f657538p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6574p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375e6735b4e2f6578p+0L : inexact-ok
+= hypot downward dbl-64 -0xc.6666666666668p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot tonearest dbl-64 -0xc.6666666666668p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot towardzero dbl-64 -0xc.6666666666668p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b03758p+0 : inexact-ok
+= hypot upward dbl-64 -0xc.6666666666668p+0 -0xb.3333333333338p-4 : 0xc.6b743c0b0376p+0 : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6ep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6fp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d78p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057d8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d057cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375e6e6c9295d058p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c4548p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c45488p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c454p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375e6a1845cb5c458p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a088p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0888p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a08p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375e6a192ca712a0cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abbp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8abb8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8a8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.6666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375e6a1873f74d8acp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb2p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbb28p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffb8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b91df4878bffbcp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c68p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14c7p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd14cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e7224fbf55facd15p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f576p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f5768p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f54p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccddc8ce596f58p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5fa8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f5cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd5136a9870f6p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce36b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce34p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd0bf1dcdfce38p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cdp+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eabp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33eab8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd0c004a9b33ecp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28dep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28de8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee28cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd0bf4bf9ee29p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b93p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04cp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04c8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b92dee04bc9d08p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e7225p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72251p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c071p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c0718p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c04p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L -0xb.33334p-4L : 0xc.6b743c168e72250beedcdd5c08p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccep+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccfp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08eadp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ead8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08e8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375ccedc24b8a08ecp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd6p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f31p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f318p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8fp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd613026b7a8f4p+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca18p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ca2p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067c8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1beb5a1067ccp+0L : inexact-ok
+= hypot downward ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-intel -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd2p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e2p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7e28p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd7cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd1bf9c7cbcd8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c215p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2158p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.666666666666667p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd1bee3ccf7c24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7228p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d5971p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679925p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199a98p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25ap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8dp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.666666666666666666666666666p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b723p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7238p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d59718p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d5972p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799258p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a0679926p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aap+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199aa8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871a8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd871bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25a8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e25bp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8d8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8ep+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.6666666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8e8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fc8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6fdp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b6cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d594p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798ff8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06798cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199838p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a753419984p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a75341998p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f4p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86f48p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd86cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e234p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2348p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc67p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc678p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc68p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc4p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666664p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73c8p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b73dp+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b7p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33333p-4L : 0xc.6b743c0820b6b9245853390b74p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598bp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598b8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d598p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33334p-4L : 0xc.6b743c168e722502592b59d59cp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993fp+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067993f8p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a06799p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333p-4L : 0xc.6b743c0b0375cce42c9a067994p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c38p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199c4p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a7534199cp+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.3333333333338p-4L : 0xc.6b743c0b0375cd579a753419ap+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd8734p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87348p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd87p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333333p-4L : 0xc.6b743c0b0375cd1255a88cd874p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e274p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e2748p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e24p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.333333333333334p-4L : 0xc.6b743c0b0375cd126416483e28p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.333333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333338p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.3333333333333333333333333p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot downward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot tonearest ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot towardzero ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca7p+0L : inexact-ok
+= hypot upward ldbl-128 -0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becca78p+0L : inexact-ok
+= hypot downward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becc8p+0L : inexact-ok
+= hypot upward ldbl-128ibm -0xc.66666666666666666666666668p+0L -0xb.33333333333333333333333334p-4L : 0xc.6b743c0b0375cd12588b4becccp+0L : inexact-ok
+hypot 0.75 0
+= hypot downward flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= hypot tonearest flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= hypot towardzero flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= hypot upward flt-32 0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= hypot downward dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= hypot tonearest dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= hypot towardzero dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= hypot upward dbl-64 0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= hypot downward ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot upward ldbl-96-intel 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot downward ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot upward ldbl-96-m68k 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot downward ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot tonearest ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot towardzero ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot upward ldbl-128 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot downward ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot upward ldbl-128ibm 0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+hypot -0.75 0
+= hypot downward flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= hypot tonearest flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= hypot towardzero flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= hypot upward flt-32 -0xcp-4f 0x0p+0f : 0xcp-4f : inexact-ok
+= hypot downward dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= hypot tonearest dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= hypot towardzero dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= hypot upward dbl-64 -0xcp-4 0x0p+0 : 0xcp-4 : inexact-ok
+= hypot downward ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot tonearest ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot towardzero ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot upward ldbl-96-intel -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot downward ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot upward ldbl-96-m68k -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot downward ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot tonearest ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot towardzero ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot upward ldbl-128 -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot downward ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot tonearest ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot towardzero ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+= hypot upward ldbl-128ibm -0xcp-4L 0x0p+0L : 0xcp-4L : inexact-ok
+hypot -5.7e7 0
+= hypot downward flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= hypot tonearest flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= hypot towardzero flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= hypot upward flt-32 -0x3.65c04p+24f 0x0p+0f : 0x3.65c04p+24f : inexact-ok
+= hypot downward dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= hypot tonearest dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= hypot towardzero dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= hypot upward dbl-64 -0x3.65c04p+24 0x0p+0 : 0x3.65c04p+24 : inexact-ok
+= hypot downward ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot tonearest ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot towardzero ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot upward ldbl-96-intel -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot downward ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot tonearest ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot towardzero ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot upward ldbl-96-m68k -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot downward ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot tonearest ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot towardzero ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot upward ldbl-128 -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot downward ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot tonearest ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot towardzero ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+= hypot upward ldbl-128ibm -0x3.65c04p+24L 0x0p+0L : 0x3.65c04p+24L : inexact-ok
+hypot 0.75 1.25
+= hypot downward flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e5p+0f : inexact-ok
+= hypot tonearest flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e5p+0f : inexact-ok
+= hypot towardzero flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e5p+0f : inexact-ok
+= hypot upward flt-32 0xcp-4f 0x1.4p+0f : 0x1.752e52p+0f : inexact-ok
+= hypot downward dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a1p+0 : inexact-ok
+= hypot tonearest dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a2p+0 : inexact-ok
+= hypot towardzero dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a1p+0 : inexact-ok
+= hypot upward dbl-64 0xcp-4 0x1.4p+0 : 0x1.752e50db3a3a2p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= hypot upward ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1ap+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1cp+0L : inexact-ok
+= hypot downward ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbap+0L : inexact-ok
+= hypot tonearest ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbbp+0L : inexact-ok
+= hypot towardzero ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbap+0L : inexact-ok
+= hypot upward ldbl-128 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1fbbp+0L : inexact-ok
+= hypot downward ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1f8p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1f8p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f1f8p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0x1.752e50db3a3a1b1b33b0456f2p+0L : inexact-ok
+hypot 1.0 0x1p-61
+= hypot downward flt-32 0x1p+0f 0x8p-64f : 0x1p+0f : inexact-ok
+= hypot tonearest flt-32 0x1p+0f 0x8p-64f : 0x1p+0f : inexact-ok
+= hypot towardzero flt-32 0x1p+0f 0x8p-64f : 0x1p+0f : inexact-ok
+= hypot upward flt-32 0x1p+0f 0x8p-64f : 0x1.000002p+0f : inexact-ok
+= hypot downward dbl-64 0x1p+0 0x8p-64 : 0x1p+0 : inexact-ok
+= hypot tonearest dbl-64 0x1p+0 0x8p-64 : 0x1p+0 : inexact-ok
+= hypot towardzero dbl-64 0x1p+0 0x8p-64 : 0x1p+0 : inexact-ok
+= hypot upward dbl-64 0x1p+0 0x8p-64 : 0x1.0000000000001p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0x1p+0L 0x8p-64L : 0x1.0000000000000002p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1p+0L 0x8p-64L : 0x1.0000000000000002p+0L : inexact-ok
+= hypot downward ldbl-128 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot tonearest ldbl-128 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot towardzero ldbl-128 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot upward ldbl-128 0x1p+0L 0x8p-64L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1p+0L 0x8p-64L : 0x1p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0x1p+0L 0x8p-64L : 0x1.000000000000000000000000008p+0L : inexact-ok
+hypot 0x1p+0 0x1.fp-129
+= hypot downward flt-32 0x1p+0f 0xf.8p-132f : 0x1p+0f : inexact-ok
+= hypot tonearest flt-32 0x1p+0f 0xf.8p-132f : 0x1p+0f : inexact-ok
+= hypot towardzero flt-32 0x1p+0f 0xf.8p-132f : 0x1p+0f : inexact-ok
+= hypot upward flt-32 0x1p+0f 0xf.8p-132f : 0x1.000002p+0f : inexact-ok
+= hypot downward dbl-64 0x1p+0 0xf.8p-132 : 0x1p+0 : inexact-ok
+= hypot tonearest dbl-64 0x1p+0 0xf.8p-132 : 0x1p+0 : inexact-ok
+= hypot towardzero dbl-64 0x1p+0 0xf.8p-132 : 0x1p+0 : inexact-ok
+= hypot upward dbl-64 0x1p+0 0xf.8p-132 : 0x1.0000000000001p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0x1p+0L 0xf.8p-132L : 0x1.0000000000000002p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1p+0L 0xf.8p-132L : 0x1.0000000000000002p+0L : inexact-ok
+= hypot downward ldbl-128 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot tonearest ldbl-128 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot towardzero ldbl-128 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot upward ldbl-128 0x1p+0L 0xf.8p-132L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1p+0L 0xf.8p-132L : 0x1p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0x1p+0L 0xf.8p-132L : 0x1.000000000000000000000000008p+0L : inexact-ok
+hypot 0x1.23456789abcdef0123456789ab8p-500 0x1.23456789abcdef0123456789ab8p-500
+= hypot downward flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x8p-152f : 0x1p-148f : inexact-ok underflow errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754bp-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3758p-152L : inexact-ok
+= hypot downward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward dbl-64 0x8p-152 0x1.23456789abcdfp-500 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x1.23456789abcdfp-500 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x1.23456789abcdfp-500 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x1.23456789abcdfp-500 : 0x8.0000000000008p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x1.23456789abcdfp-500L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x1.23456789abcdfp-500L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x1.23456789abcdfp-500L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x1.23456789abcdfp-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x1.23456789abcdfp-500L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward dbl-64 0x8p-152 0x1.23456789abcdep-500 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x1.23456789abcdep-500 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x1.23456789abcdep-500 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x1.23456789abcdep-500 : 0x8.0000000000008p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x1.23456789abcdep-500L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x1.23456789abcdep-500L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x1.23456789abcdep-500L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x1.23456789abcdep-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x1.23456789abcdep-500L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x1.23456789abcdef02p-500L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x1.23456789abcdefp-500L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x1.23456789abcdefp-500L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x1.23456789abcdefp-500L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x1.23456789abcdefp-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x1.23456789abcdefp-500L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x1.23456789abcdef0123456789ab8p-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x1.23456789abcdef0123456789ab8p-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x1.23456789abcdef0123456789ab8p-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x1.23456789abcdef0123456789ab8p-500L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x1.23456789abcdef0123456789ab8p-500L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x1.23456789abcdef0123456789ab8p-500L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x1.23456789abcdef0123456789ab8p-500L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x1.23456789abcdef0123456789ab8p-500L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward dbl-64 0x0p+0 0x1.23456789abcdfp-500 : 0x1.23456789abcdfp-500 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x1.23456789abcdfp-500 : 0x1.23456789abcdfp-500 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x1.23456789abcdfp-500 : 0x1.23456789abcdfp-500 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x1.23456789abcdfp-500 : 0x1.23456789abcdfp-500 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x1.23456789abcdfp-500L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot downward dbl-64 0x0p+0 0x1.23456789abcdep-500 : 0x1.23456789abcdep-500 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x1.23456789abcdep-500 : 0x1.23456789abcdep-500 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x1.23456789abcdep-500 : 0x1.23456789abcdep-500 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x1.23456789abcdep-500 : 0x1.23456789abcdep-500 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x1.23456789abcdep-500L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x1.23456789abcdef02p-500L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x1.23456789abcdefp-500L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot downward dbl-64 0x1.23456789abcdfp-500 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x1.23456789abcdfp-500 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x1.23456789abcdfp-500 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x1.23456789abcdfp-500 0x8p-152 : 0x8.0000000000008p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdfp-500L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdfp-500L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdfp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdfp-500L 0x8p-152L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward dbl-64 0x1.23456789abcdfp-500 0x0p+0 : 0x1.23456789abcdfp-500 : inexact-ok
+= hypot tonearest dbl-64 0x1.23456789abcdfp-500 0x0p+0 : 0x1.23456789abcdfp-500 : inexact-ok
+= hypot towardzero dbl-64 0x1.23456789abcdfp-500 0x0p+0 : 0x1.23456789abcdfp-500 : inexact-ok
+= hypot upward dbl-64 0x1.23456789abcdfp-500 0x0p+0 : 0x1.23456789abcdfp-500 : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdfp-500L 0x0p+0L : 0x1.23456789abcdfp-500L : inexact-ok
+= hypot downward dbl-64 0x1.23456789abcdfp-500 0x1.23456789abcdfp-500 : 0x1.9beb67fff20c4p-500 : inexact-ok
+= hypot tonearest dbl-64 0x1.23456789abcdfp-500 0x1.23456789abcdfp-500 : 0x1.9beb67fff20c4p-500 : inexact-ok
+= hypot towardzero dbl-64 0x1.23456789abcdfp-500 0x1.23456789abcdfp-500 : 0x1.9beb67fff20c4p-500 : inexact-ok
+= hypot upward dbl-64 0x1.23456789abcdfp-500 0x1.23456789abcdfp-500 : 0x1.9beb67fff20c5p-500 : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4556p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4558p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4556p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4558p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4556p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4558p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4556p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4558p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4557b0c4775bcc8ep-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4557b0c4775bcc8ep-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4557b0c4775bcc8ep-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4557b0c4775bcc8fp-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4557b0c4775bcc8p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4557b0c4775bcc8p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4557b0c4775bcc8p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c4557b0c4775bcdp-500L : inexact-ok
+= hypot downward dbl-64 0x1.23456789abcdfp-500 0x1.23456789abcdep-500 : 0x1.9beb67fff20c3p-500 : inexact-ok
+= hypot tonearest dbl-64 0x1.23456789abcdfp-500 0x1.23456789abcdep-500 : 0x1.9beb67fff20c4p-500 : inexact-ok
+= hypot towardzero dbl-64 0x1.23456789abcdfp-500 0x1.23456789abcdep-500 : 0x1.9beb67fff20c3p-500 : inexact-ok
+= hypot upward dbl-64 0x1.23456789abcdfp-500 0x1.23456789abcdep-500 : 0x1.9beb67fff20c4p-500 : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a06p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a08p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a06p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a08p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a06p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a08p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a06p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a08p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a07619137bde66dp-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a07619137bde66ep-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a07619137bde66dp-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a07619137bde66ep-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a07619137bde6p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a07619137bde68p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a07619137bde6p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3a07619137bde68p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a6p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a6p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a415db29c9e1e6p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a415db29c9e1e7p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a415db29c9e1e6p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a415db29c9e1e7p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a415db29c9e18p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a415db29c9e2p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a415db29c9e18p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c44a415db29c9e2p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2abd14361ee29p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2abd14361ee2ap-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2abd14361ee29p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2abd14361ee2ap-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2abd14361eep-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2abd14361eep-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2abd14361eep-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c44a2abd14361ee8p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c44a379c6f761e6f8p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c44a379c6f761e6f9p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c44a379c6f761e6f8p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdfp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c44a379c6f761e6f9p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c44a379c6f761e68p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c44a379c6f761e7p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c44a379c6f761e68p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdfp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c44a379c6f761e7p-500L : inexact-ok
+= hypot downward dbl-64 0x1.23456789abcdep-500 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x1.23456789abcdep-500 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x1.23456789abcdep-500 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x1.23456789abcdep-500 0x8p-152 : 0x8.0000000000008p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdep-500L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdep-500L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdep-500L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdep-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdep-500L 0x8p-152L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward dbl-64 0x1.23456789abcdep-500 0x0p+0 : 0x1.23456789abcdep-500 : inexact-ok
+= hypot tonearest dbl-64 0x1.23456789abcdep-500 0x0p+0 : 0x1.23456789abcdep-500 : inexact-ok
+= hypot towardzero dbl-64 0x1.23456789abcdep-500 0x0p+0 : 0x1.23456789abcdep-500 : inexact-ok
+= hypot upward dbl-64 0x1.23456789abcdep-500 0x0p+0 : 0x1.23456789abcdep-500 : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdep-500L 0x0p+0L : 0x1.23456789abcdep-500L : inexact-ok
+= hypot downward dbl-64 0x1.23456789abcdep-500 0x1.23456789abcdfp-500 : 0x1.9beb67fff20c3p-500 : inexact-ok
+= hypot tonearest dbl-64 0x1.23456789abcdep-500 0x1.23456789abcdfp-500 : 0x1.9beb67fff20c4p-500 : inexact-ok
+= hypot towardzero dbl-64 0x1.23456789abcdep-500 0x1.23456789abcdfp-500 : 0x1.9beb67fff20c3p-500 : inexact-ok
+= hypot upward dbl-64 0x1.23456789abcdep-500 0x1.23456789abcdfp-500 : 0x1.9beb67fff20c4p-500 : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a06p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a08p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a06p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a08p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a06p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a08p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a06p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a08p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a07619137bde66dp-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a07619137bde66ep-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a07619137bde66dp-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a07619137bde66ep-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a07619137bde6p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a07619137bde68p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a07619137bde6p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c3a07619137bde68p-500L : inexact-ok
+= hypot downward dbl-64 0x1.23456789abcdep-500 0x1.23456789abcdep-500 : 0x1.9beb67fff20c2p-500 : inexact-ok
+= hypot tonearest dbl-64 0x1.23456789abcdep-500 0x1.23456789abcdep-500 : 0x1.9beb67fff20c3p-500 : inexact-ok
+= hypot towardzero dbl-64 0x1.23456789abcdep-500 0x1.23456789abcdep-500 : 0x1.9beb67fff20c2p-500 : inexact-ok
+= hypot upward dbl-64 0x1.23456789abcdep-500 0x1.23456789abcdep-500 : 0x1.9beb67fff20c3p-500 : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb6p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb8p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb6p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb8p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb6p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb8p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb6p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb8p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb7125df81ffffdp-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb7125df81ffffep-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb7125df81ffffdp-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb7125df81ffffep-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb7125df81fff8p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb7125df82p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb7125df81fff8p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c2eb7125df82p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3953c6a7ea2bfbc1p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3953c6a7ea2bfbc1p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3953c6a7ea2bfbc1p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3953c6a7ea2bfbc2p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3953c6a7ea2bfb8p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3953c6a7ea2bfcp-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3953c6a7ea2bfb8p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c3953c6a7ea2bfcp-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c39525c9e03c40804p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c39525c9e03c40804p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c39525c9e03c40804p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c39525c9e03c40805p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c39525c9e03c408p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c39525c9e03c408p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c39525c9e03c408p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c39525c9e03c4088p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c39532a93b7c400d3p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c39532a93b7c400d3p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c39532a93b7c400d3p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdep-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c39532a93b7c400d4p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c39532a93b7c4008p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c39532a93b7c401p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c39532a93b7c4008p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdep-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c39532a93b7c401p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x8p-152L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x0p+0L : 0x1.23456789abcdef02p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a6p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a6p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a415db29c9e1e6p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a415db29c9e1e7p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a415db29c9e1e6p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a415db29c9e1e7p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a415db29c9e18p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a415db29c9e2p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a415db29c9e18p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a415db29c9e2p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3953c6a7ea2bfbc1p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3953c6a7ea2bfbc1p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3953c6a7ea2bfbc1p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3953c6a7ea2bfbc2p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3953c6a7ea2bfb8p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3953c6a7ea2bfcp-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3953c6a7ea2bfb8p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3953c6a7ea2bfcp-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43f2p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43f2p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43f07af1dc37f73ep-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43f07af1dc37f73fp-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43f07af1dc37f73ep-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43f07af1dc37f73fp-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43f07af1dc37f7p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43f07af1dc37f7p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43f07af1dc37f7p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43f07af1dc37f78p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ef10e7f5d00381p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ef10e7f5d00382p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ef10e7f5d00381p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ef10e7f5d00382p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ef10e7f5d0038p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ef10e7f5d0038p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ef10e7f5d0038p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ef10e7f5d004p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43efdedda9cffc5p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43efdedda9cffc51p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43efdedda9cffc5p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef02p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43efdedda9cffc51p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43efdedda9cffcp-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43efdedda9cffc8p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43efdedda9cffcp-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef02p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43efdedda9cffc8p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdefp-500L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdefp-500L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdefp-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdefp-500L 0x8p-152L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdefp-500L 0x0p+0L : 0x1.23456789abcdefp-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a4p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2abd14361ee29p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2abd14361ee2ap-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2abd14361ee29p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2abd14361ee2ap-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2abd14361eep-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2abd14361eep-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2abd14361eep-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a2abd14361ee8p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3952p-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c3954p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39525c9e03c40804p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39525c9e03c40804p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39525c9e03c40804p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39525c9e03c40805p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39525c9e03c408p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39525c9e03c408p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39525c9e03c408p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39525c9e03c4088p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43fp-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43ef10e7f5d00381p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43ef10e7f5d00382p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43ef10e7f5d00381p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43ef10e7f5d00382p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43ef10e7f5d0038p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43ef10e7f5d0038p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43ef10e7f5d0038p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43ef10e7f5d004p-500L : inexact-ok
+= hypot downward ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ecp-500L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ecp-500L : inexact-ok
+= hypot upward ldbl-96-intel 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot downward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ecp-500L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ecp-500L : inexact-ok
+= hypot upward ldbl-96-m68k 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eep-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eda6de0f680fc5p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eda6de0f680fc5p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eda6de0f680fc5p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eda6de0f680fc6p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eda6de0f680f8p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eda6de0f681p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eda6de0f680f8p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43eda6de0f681p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ee74d3c3680894p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ee74d3c3680894p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ee74d3c3680894p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdefp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ee74d3c3680895p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ee74d3c368088p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ee74d3c368088p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ee74d3c368088p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdefp-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ee74d3c36809p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x8p-152L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x0p+0L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x0p+0L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x0p+0L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x0p+0L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x0p+0L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x0p+0L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x0p+0L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x0p+0L : 0x1.23456789abcdef0123456789ab8p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a379c6f761e6f8p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a379c6f761e6f9p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a379c6f761e6f8p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a379c6f761e6f9p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a379c6f761e68p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a379c6f761e7p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a379c6f761e68p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdfp-500L : 0x1.9beb67fff20c44a379c6f761e7p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39532a93b7c400d3p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39532a93b7c400d3p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39532a93b7c400d3p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39532a93b7c400d4p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39532a93b7c4008p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39532a93b7c401p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39532a93b7c4008p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdep-500L : 0x1.9beb67fff20c39532a93b7c401p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43efdedda9cffc5p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43efdedda9cffc51p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43efdedda9cffc5p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43efdedda9cffc51p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43efdedda9cffcp-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43efdedda9cffc8p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43efdedda9cffcp-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef02p-500L : 0x1.9beb67fff20c43efdedda9cffc8p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ee74d3c3680894p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ee74d3c3680894p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ee74d3c3680894p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ee74d3c3680895p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ee74d3c368088p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ee74d3c368088p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ee74d3c368088p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdefp-500L : 0x1.9beb67fff20c43ee74d3c36809p-500L : inexact-ok
+= hypot downward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ef42c977680163p-500L : inexact-ok
+= hypot tonearest ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ef42c977680163p-500L : inexact-ok
+= hypot towardzero ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ef42c977680163p-500L : inexact-ok
+= hypot upward ldbl-128 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ef42c977680164p-500L : inexact-ok
+= hypot downward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ef42c9776801p-500L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ef42c97768018p-500L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ef42c9776801p-500L : inexact-ok
+= hypot upward ldbl-128ibm 0x1.23456789abcdef0123456789ab8p-500L 0x1.23456789abcdef0123456789ab8p-500L : 0x1.9beb67fff20c43ef42c97768018p-500L : inexact-ok
+hypot 0x3p125 0x4p125 no-test-inline:flt-32
+= hypot downward flt-32 0x6p+124f 0x8p+124f : 0xap+124f : no-test-inline:flt-32 inexact-ok
+= hypot tonearest flt-32 0x6p+124f 0x8p+124f : 0xap+124f : no-test-inline:flt-32 inexact-ok
+= hypot towardzero flt-32 0x6p+124f 0x8p+124f : 0xap+124f : no-test-inline:flt-32 inexact-ok
+= hypot upward flt-32 0x6p+124f 0x8p+124f : 0xap+124f : no-test-inline:flt-32 inexact-ok
+= hypot downward dbl-64 0x6p+124 0x8p+124 : 0xap+124 : no-test-inline:flt-32 inexact-ok
+= hypot tonearest dbl-64 0x6p+124 0x8p+124 : 0xap+124 : no-test-inline:flt-32 inexact-ok
+= hypot towardzero dbl-64 0x6p+124 0x8p+124 : 0xap+124 : no-test-inline:flt-32 inexact-ok
+= hypot upward dbl-64 0x6p+124 0x8p+124 : 0xap+124 : no-test-inline:flt-32 inexact-ok
+= hypot downward ldbl-96-intel 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot tonearest ldbl-96-intel 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot towardzero ldbl-96-intel 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot upward ldbl-96-intel 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot downward ldbl-96-m68k 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot tonearest ldbl-96-m68k 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot towardzero ldbl-96-m68k 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot upward ldbl-96-m68k 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot downward ldbl-128 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot tonearest ldbl-128 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot towardzero ldbl-128 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot upward ldbl-128 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot downward ldbl-128ibm 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot tonearest ldbl-128ibm 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot towardzero ldbl-128ibm 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+= hypot upward ldbl-128ibm 0x6p+124L 0x8p+124L : 0xap+124L : no-test-inline:flt-32 inexact-ok
+hypot 0x1.234566p-126 0x1.234566p-126 no-test-inline:flt-32
+= hypot downward flt-32 0x4.8d1598p-128f 0x4.8d1598p-128f : 0x6.6fad9p-128f : no-test-inline:flt-32 inexact-ok
+= hypot tonearest flt-32 0x4.8d1598p-128f 0x4.8d1598p-128f : 0x6.6fad98p-128f : no-test-inline:flt-32 inexact-ok
+= hypot towardzero flt-32 0x4.8d1598p-128f 0x4.8d1598p-128f : 0x6.6fad9p-128f : no-test-inline:flt-32 inexact-ok
+= hypot upward flt-32 0x4.8d1598p-128f 0x4.8d1598p-128f : 0x6.6fad98p-128f : no-test-inline:flt-32 inexact-ok
+= hypot downward dbl-64 0x4.8d1598p-128 0x4.8d1598p-128 : 0x6.6fad974cd786cp-128 : no-test-inline:flt-32 inexact-ok
+= hypot tonearest dbl-64 0x4.8d1598p-128 0x4.8d1598p-128 : 0x6.6fad974cd786cp-128 : no-test-inline:flt-32 inexact-ok
+= hypot towardzero dbl-64 0x4.8d1598p-128 0x4.8d1598p-128 : 0x6.6fad974cd786cp-128 : no-test-inline:flt-32 inexact-ok
+= hypot upward dbl-64 0x4.8d1598p-128 0x4.8d1598p-128 : 0x6.6fad974cd787p-128 : no-test-inline:flt-32 inexact-ok
+= hypot downward ldbl-96-intel 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d61p-128L : no-test-inline:flt-32 inexact-ok
+= hypot tonearest ldbl-96-intel 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d61p-128L : no-test-inline:flt-32 inexact-ok
+= hypot towardzero ldbl-96-intel 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d61p-128L : no-test-inline:flt-32 inexact-ok
+= hypot upward ldbl-96-intel 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d618p-128L : no-test-inline:flt-32 inexact-ok
+= hypot downward ldbl-96-m68k 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d61p-128L : no-test-inline:flt-32 inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d61p-128L : no-test-inline:flt-32 inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d61p-128L : no-test-inline:flt-32 inexact-ok
+= hypot upward ldbl-96-m68k 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d618p-128L : no-test-inline:flt-32 inexact-ok
+= hypot downward ldbl-128 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d6112b947029048p-128L : no-test-inline:flt-32 inexact-ok
+= hypot tonearest ldbl-128 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d6112b947029048p-128L : no-test-inline:flt-32 inexact-ok
+= hypot towardzero ldbl-128 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d6112b947029048p-128L : no-test-inline:flt-32 inexact-ok
+= hypot upward ldbl-128 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d6112b9470290484p-128L : no-test-inline:flt-32 inexact-ok
+= hypot downward ldbl-128ibm 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d6112b94702904p-128L : no-test-inline:flt-32 inexact-ok
+= hypot tonearest ldbl-128ibm 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d6112b94702904p-128L : no-test-inline:flt-32 inexact-ok
+= hypot towardzero ldbl-128ibm 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d6112b94702904p-128L : no-test-inline:flt-32 inexact-ok
+= hypot upward ldbl-128ibm 0x4.8d1598p-128L 0x4.8d1598p-128L : 0x6.6fad974cd786d6112b94702906p-128L : no-test-inline:flt-32 inexact-ok
+hypot 0x3p1021 0x4p1021 no-test-inline:dbl-64
+= hypot downward flt-32 0xf.fffffp+124f 0xf.fffffp+124f : 0xf.fffffp+124f : no-test-inline:dbl-64 inexact-ok overflow errno-erange-ok
+= hypot tonearest flt-32 0xf.fffffp+124f 0xf.fffffp+124f : plus_infty : no-test-inline:dbl-64 inexact-ok overflow errno-erange
+= hypot towardzero flt-32 0xf.fffffp+124f 0xf.fffffp+124f : 0xf.fffffp+124f : no-test-inline:dbl-64 inexact-ok overflow errno-erange-ok
+= hypot upward flt-32 0xf.fffffp+124f 0xf.fffffp+124f : plus_infty : no-test-inline:dbl-64 inexact-ok overflow errno-erange
+= hypot downward dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0x1.6a09e4fde9d66p+128 : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0x1.6a09e4fde9d66p+128 : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0x1.6a09e4fde9d66p+128 : no-test-inline:dbl-64 inexact-ok
+= hypot upward dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0x1.6a09e4fde9d67p+128 : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66116p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66116p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef82p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef82p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef82p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef83p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef8p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef8p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef8p+128L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3fp+128L : no-test-inline:dbl-64 inexact-ok
+= hypot downward dbl-64 0xf.fffffp+124 0x8p+1020 : 0x8p+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest dbl-64 0xf.fffffp+124 0x8p+1020 : 0x8p+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero dbl-64 0xf.fffffp+124 0x8p+1020 : 0x8p+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot upward dbl-64 0xf.fffffp+124 0x8p+1020 : 0x8.0000000000008p+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-intel 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-intel 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-intel 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-intel 0xf.fffffp+124L 0x8p+1020L : 0x8.000000000000001p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-m68k 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-m68k 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-m68k 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-m68k 0xf.fffffp+124L 0x8p+1020L : 0x8.000000000000001p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128 0xf.fffffp+124L 0x8p+1020L : 0x8.0000000000000000000000000008p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128ibm 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128ibm 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128ibm 0xf.fffffp+124L 0x8p+1020L : 0x8p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128ibm 0xf.fffffp+124L 0x8p+1020L : 0x8.00000000000000000000000004p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward dbl-64 0x6p+1020 0xf.fffffp+124 : 0x6p+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest dbl-64 0x6p+1020 0xf.fffffp+124 : 0x6p+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero dbl-64 0x6p+1020 0xf.fffffp+124 : 0x6p+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot upward dbl-64 0x6p+1020 0xf.fffffp+124 : 0x6.0000000000004p+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-intel 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-intel 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-intel 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-intel 0x6p+1020L 0xf.fffffp+124L : 0x6.0000000000000008p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-m68k 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-m68k 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-m68k 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-m68k 0x6p+1020L 0xf.fffffp+124L : 0x6.0000000000000008p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128 0x6p+1020L 0xf.fffffp+124L : 0x6.0000000000000000000000000004p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128ibm 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128ibm 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128ibm 0x6p+1020L 0xf.fffffp+124L : 0x6p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128ibm 0x6p+1020L 0xf.fffffp+124L : 0x6.00000000000000000000000002p+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward dbl-64 0x6p+1020 0x8p+1020 : 0xap+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest dbl-64 0x6p+1020 0x8p+1020 : 0xap+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero dbl-64 0x6p+1020 0x8p+1020 : 0xap+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot upward dbl-64 0x6p+1020 0x8p+1020 : 0xap+1020 : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-intel 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-intel 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-intel 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-intel 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-m68k 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-m68k 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-m68k 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-m68k 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128ibm 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128ibm 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128ibm 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128ibm 0x6p+1020L 0x8p+1020L : 0xap+1020L : no-test-inline:dbl-64 inexact-ok
+hypot 0x1p+0 0x0.3ep-1022 no-test-inline:dbl-64
+= hypot downward flt-32 0x1p+0f 0x8p-152f : 0x1p+0f : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest flt-32 0x1p+0f 0x8p-152f : 0x1p+0f : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero flt-32 0x1p+0f 0x8p-152f : 0x1p+0f : no-test-inline:dbl-64 inexact-ok
+= hypot upward flt-32 0x1p+0f 0x8p-152f : 0x1.000002p+0f : no-test-inline:dbl-64 inexact-ok
+= hypot downward dbl-64 0x1p+0 0x8p-152 : 0x1p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest dbl-64 0x1p+0 0x8p-152 : 0x1p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero dbl-64 0x1p+0 0x8p-152 : 0x1p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot upward dbl-64 0x1p+0 0x8p-152 : 0x1.0000000000001p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-intel 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-intel 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-intel 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-intel 0x1p+0L 0x8p-152L : 0x1.0000000000000002p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-m68k 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-m68k 0x1p+0L 0x8p-152L : 0x1.0000000000000002p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128 0x1p+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128ibm 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128ibm 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128ibm 0x1p+0L 0x8p-152L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128ibm 0x1p+0L 0x8p-152L : 0x1.000000000000000000000000008p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : no-test-inline:dbl-64 inexact-ok
+= hypot upward flt-32 0x1p+0f 0x0p+0f : 0x1p+0f : no-test-inline:dbl-64 inexact-ok
+= hypot downward dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot upward dbl-64 0x1p+0 0x0p+0 : 0x1p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-intel 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-m68k 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128ibm 0x1p+0L 0x0p+0L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward dbl-64 0x1p+0 0xf.8p-1028 : 0x1p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest dbl-64 0x1p+0 0xf.8p-1028 : 0x1p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero dbl-64 0x1p+0 0xf.8p-1028 : 0x1p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot upward dbl-64 0x1p+0 0xf.8p-1028 : 0x1.0000000000001p+0 : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-intel 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-intel 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-intel 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-intel 0x1p+0L 0xf.8p-1028L : 0x1.0000000000000002p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-96-m68k 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-96-m68k 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-96-m68k 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-96-m68k 0x1p+0L 0xf.8p-1028L : 0x1.0000000000000002p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128 0x1p+0L 0xf.8p-1028L : 0x1.0000000000000000000000000001p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot downward ldbl-128ibm 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot tonearest ldbl-128ibm 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot towardzero ldbl-128ibm 0x1p+0L 0xf.8p-1028L : 0x1p+0L : no-test-inline:dbl-64 inexact-ok
+= hypot upward ldbl-128ibm 0x1p+0L 0xf.8p-1028L : 0x1.000000000000000000000000008p+0L : no-test-inline:dbl-64 inexact-ok
+hypot 0x3p16381 0x4p16381 no-test-inline
+= hypot downward flt-32 0xf.fffffp+124f 0xf.fffffp+124f : 0xf.fffffp+124f : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot tonearest flt-32 0xf.fffffp+124f 0xf.fffffp+124f : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot towardzero flt-32 0xf.fffffp+124f 0xf.fffffp+124f : 0xf.fffffp+124f : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot upward flt-32 0xf.fffffp+124f 0xf.fffffp+124f : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot downward dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0x1.6a09e4fde9d66p+128 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0x1.6a09e4fde9d66p+128 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0x1.6a09e4fde9d66p+128 : no-test-inline inexact-ok
+= hypot upward dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0x1.6a09e4fde9d67p+128 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66116p+128L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114p+128L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66116p+128L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef82p+128L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef82p+128L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef82p+128L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef83p+128L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef8p+128L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef8p+128L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3ef8p+128L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0x1.6a09e4fde9d66114f6320ab3fp+128L : no-test-inline inexact-ok
+= hypot downward dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : no-test-inline inexact-ok
+= hypot upward dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot downward ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff801p+1020L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff801p+1020L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8000000000000008p+1020L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffff80000000000004p+1020L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0xf.fffffp+124L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0xf.fffffp+124L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0xf.fffffp+124L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0xf.fffffp+124L 0x8p+16380L : 0x8.000000000000001p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0xf.fffffp+124L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0xf.fffffp+124L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0xf.fffffp+124L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0xf.fffffp+124L 0x8p+16380L : 0x8.000000000000001p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0xf.fffffp+124L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.fffffp+124L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.fffffp+124L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.fffffp+124L 0x8p+16380L : 0x8.0000000000000000000000000008p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffc08p+1020L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot downward dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : no-test-inline inexact-ok
+= hypot upward dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff801p+1020L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff801p+1020L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8000000000000008p+1020L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff8p+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffff80000000000004p+1020L : no-test-inline inexact-ok
+= hypot downward dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot tonearest dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot towardzero dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot upward dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdb8p+1024L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdb8p+1024L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdb8p+1024L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdbap+1024L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdb8p+1024L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdb8p+1024L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdb8p+1024L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdbap+1024L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdb863c7d3c9044dp+1024L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdb863c7d3c9044dp+1024L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdb863c7d3c9044dp+1024L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcbdb863c7d3c9044ep+1024L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8.000000000000001p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8.000000000000001p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.ffffffffffff8p+1020L 0x8p+16380L : 0x8.0000000000000000000000000008p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.6a09e667f3bcc08c7794a3b07db4p+1024L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.6a09e667f3bcc08c7794a3b07db5p+1024L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.6a09e667f3bcc08c7794a3b07db4p+1024L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.6a09e667f3bcc08c7794a3b07db5p+1024L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot downward ldbl-96-intel 0x6p+16380L 0xf.fffffp+124L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x6p+16380L 0xf.fffffp+124L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x6p+16380L 0xf.fffffp+124L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x6p+16380L 0xf.fffffp+124L : 0x6.0000000000000008p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x6p+16380L 0xf.fffffp+124L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x6p+16380L 0xf.fffffp+124L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x6p+16380L 0xf.fffffp+124L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x6p+16380L 0xf.fffffp+124L : 0x6.0000000000000008p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x6p+16380L 0xf.fffffp+124L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x6p+16380L 0xf.fffffp+124L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x6p+16380L 0xf.fffffp+124L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x6p+16380L 0xf.fffffp+124L : 0x6.0000000000000000000000000004p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6.0000000000000008p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6.0000000000000008p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x6p+16380L 0xf.ffffffffffff8p+1020L : 0x6.0000000000000000000000000004p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x6p+16380L 0x8p+16380L : 0xap+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x6p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x6p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x6p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x6p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x6p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x6.0000000000000000000000000004p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffc08p+1020L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcc08c7794a3b07db4p+1024L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcc08c7794a3b07db5p+1024L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcc08c7794a3b07db4p+1024L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0x1.6a09e667f3bcc08c7794a3b07db5p+1024L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+16380L : 0x8p+16380L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+16380L : 0x8.0000000000000000000000000008p+16380L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.6a09e667f3bcc3608b617397f716p+1024L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.6a09e667f3bcc3608b617397f717p+1024L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.6a09e667f3bcc3608b617397f716p+1024L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1.6a09e667f3bcc3608b617397f717p+1024L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : no-test-inline inexact-ok overflow errno-erange
+= hypot towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : no-test-inline inexact-ok overflow errno-erange-ok
+= hypot upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : no-test-inline inexact-ok overflow errno-erange
+hypot 0x1p-149 0x1p-149
+= hypot downward flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x8p-152f : 0x1p-148f : inexact-ok underflow errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754bp-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3758p-152L : inexact-ok
+hypot 0x1p-1074 0x1p-1074
+= hypot downward flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x8p-152f : 0x1p-148f : inexact-ok underflow errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754bp-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3758p-152L : inexact-ok
+= hypot downward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x4p-1076 : 0x8.0000000000008p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x4p-1076L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x4p-1076 0x8p-152 : 0x8.0000000000008p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= hypot tonearest dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= hypot towardzero dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= hypot upward dbl-64 0x4p-1076 0x4p-1076 : 0x8p-1076 : inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32428p-1076L : inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32428p-1076L : inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa58p-1076L : inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x8p-1076L : inexact-ok underflow errno-erange-ok
+hypot 0x1p-16445 0x1p-16445 no-test-inline
+= hypot downward flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x8p-152f : 0x1p-148f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754bp-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3758p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x4p-1076 : 0x8.0000000000008p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x4p-1076L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8.00000000000000000000000004p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-16448L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-16448L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x4p-1076 0x8p-152 : 0x8.0000000000008p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8.00000000000000000000000004p-152L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward dbl-64 0x4p-1076 0x4p-1076 : 0x8p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32428p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32428p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa58p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x8p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x8p-16448L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-16448L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-16448L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-intel 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-m68k 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-16448L 0x4p-1076L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0x1p-16444L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0xcp-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0xcp-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-128 0x8p-16448L 0x8p-16448L : 0xb.504f333f9de4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128 0x8p-16448L 0x8p-16448L : 0xb.504f333f9de8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128 0x8p-16448L 0x8p-16448L : 0xb.504f333f9de4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128 0x8p-16448L 0x8p-16448L : 0xb.504f333f9de8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+hypot 0x1p-16494 0x1p-16494 no-test-inline
+= hypot downward flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x8p-152f : 0x1p-148f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754bp-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3758p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x4p-1076 : 0x8.0000000000008p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x4p-1076L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8.00000000000000000000000004p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-16448L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-16448L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x4p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x4p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x4p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x4p-16448L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x4p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x4p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x4p-16448L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x4p-16448L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x4p-16496L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x4p-16496L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x4p-16496L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x4p-16496L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x0p+0L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x0p+0L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x4p-1076 0x8p-152 : 0x8.0000000000008p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8.00000000000000000000000004p-152L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward dbl-64 0x4p-1076 0x4p-1076 : 0x8p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32428p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32428p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa58p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x8p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x8p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x8p-16448L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x4p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x4p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x4p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x4p-16448L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x4p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x4p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x4p-16448L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x4p-16448L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x4p-16496L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x4p-16496L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x4p-16496L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x4p-16496L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-16448L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-16448L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-intel 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-m68k 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x8p-16448L 0x0p+0L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-16448L 0x4p-1076L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0x1p-16444L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0xcp-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0xcp-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-128 0x8p-16448L 0x8p-16448L : 0xb.504f333f9de4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128 0x8p-16448L 0x8p-16448L : 0xb.504f333f9de8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128 0x8p-16448L 0x8p-16448L : 0xb.504f333f9de4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128 0x8p-16448L 0x8p-16448L : 0xb.504f333f9de8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-m68k 0x8p-16448L 0x4p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x8p-16448L 0x4p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x8p-16448L 0x4p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-96-m68k 0x8p-16448L 0x4p-16448L : 0xcp-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-128 0x8p-16448L 0x4p-16448L : 0x8.f1bbcdcbfa5p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128 0x8p-16448L 0x4p-16448L : 0x8.f1bbcdcbfa54p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128 0x8p-16448L 0x4p-16448L : 0x8.f1bbcdcbfa5p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128 0x8p-16448L 0x4p-16448L : 0x8.f1bbcdcbfa54p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-128 0x8p-16448L 0x4p-16496L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128 0x8p-16448L 0x4p-16496L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128 0x8p-16448L 0x4p-16496L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128 0x8p-16448L 0x4p-16496L : 0x8.000000000004p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-m68k 0x4p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-16448L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-16448L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-16448L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-16448L 0x0p+0L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x4p-16448L 0x0p+0L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x4p-16448L 0x0p+0L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-m68k 0x4p-16448L 0x0p+0L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x4p-16448L 0x0p+0L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x4p-16448L 0x0p+0L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x4p-16448L 0x0p+0L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x4p-16448L 0x0p+0L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x4p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-16448L 0x4p-1076L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-16448L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-16448L 0x4p-1076L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x4p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x4p-16448L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-96-m68k 0x4p-16448L 0x8p-16448L : 0xcp-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-128 0x4p-16448L 0x8p-16448L : 0x8.f1bbcdcbfa5p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128 0x4p-16448L 0x8p-16448L : 0x8.f1bbcdcbfa54p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128 0x4p-16448L 0x8p-16448L : 0x8.f1bbcdcbfa5p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128 0x4p-16448L 0x8p-16448L : 0x8.f1bbcdcbfa54p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-m68k 0x4p-16448L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x4p-16448L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x4p-16448L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-96-m68k 0x4p-16448L 0x4p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-128 0x4p-16448L 0x4p-16448L : 0x5.a827999fcefp-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128 0x4p-16448L 0x4p-16448L : 0x5.a827999fcef4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128 0x4p-16448L 0x4p-16448L : 0x5.a827999fcefp-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128 0x4p-16448L 0x4p-16448L : 0x5.a827999fcef4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-128 0x4p-16448L 0x4p-16496L : 0x4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128 0x4p-16448L 0x4p-16496L : 0x4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128 0x4p-16448L 0x4p-16496L : 0x4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128 0x4p-16448L 0x4p-16496L : 0x4.000000000004p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-128 0x4p-16496L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-16496L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-16496L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-16496L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-16496L 0x0p+0L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x4p-16496L 0x0p+0L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x4p-16496L 0x0p+0L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x4p-16496L 0x0p+0L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x4p-16496L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-16496L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-16496L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-16496L 0x4p-1076L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-16496L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128 0x4p-16496L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128 0x4p-16496L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128 0x4p-16496L 0x8p-16448L : 0x8.000000000004p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-128 0x4p-16496L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128 0x4p-16496L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128 0x4p-16496L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128 0x4p-16496L 0x4p-16448L : 0x4.000000000004p-16448L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-128 0x4p-16496L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128 0x4p-16496L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128 0x4p-16496L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128 0x4p-16496L 0x4p-16496L : 0x8p-16496L : no-test-inline inexact-ok underflow errno-erange-ok
+hypot 0x0.fffffep-126 0x0.fp-127
+= hypot downward flt-32 0x3.fffff8p-128f 0x1.ep-128f : 0x4.6aeb08p-128f : inexact-ok
+= hypot tonearest flt-32 0x3.fffff8p-128f 0x1.ep-128f : 0x4.6aeb08p-128f : inexact-ok
+= hypot towardzero flt-32 0x3.fffff8p-128f 0x1.ep-128f : 0x4.6aeb08p-128f : inexact-ok
+= hypot upward flt-32 0x3.fffff8p-128f 0x1.ep-128f : 0x4.6aeb1p-128f : inexact-ok
+= hypot downward dbl-64 0x3.fffff8p-128 0x1.ep-128 : 0x4.6aeb08a21ccfp-128 : inexact-ok
+= hypot tonearest dbl-64 0x3.fffff8p-128 0x1.ep-128 : 0x4.6aeb08a21ccf4p-128 : inexact-ok
+= hypot towardzero dbl-64 0x3.fffff8p-128 0x1.ep-128 : 0x4.6aeb08a21ccfp-128 : inexact-ok
+= hypot upward dbl-64 0x3.fffff8p-128 0x1.ep-128 : 0x4.6aeb08a21ccf4p-128 : inexact-ok
+= hypot downward ldbl-96-intel 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217p-128L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217p-128L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217p-128L : inexact-ok
+= hypot upward ldbl-96-intel 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf2178p-128L : inexact-ok
+= hypot downward ldbl-96-m68k 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217p-128L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217p-128L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217p-128L : inexact-ok
+= hypot upward ldbl-96-m68k 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf2178p-128L : inexact-ok
+= hypot downward ldbl-128 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217216526aee20ap-128L : inexact-ok
+= hypot tonearest ldbl-128 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217216526aee20ap-128L : inexact-ok
+= hypot towardzero ldbl-128 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217216526aee20ap-128L : inexact-ok
+= hypot upward ldbl-128 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217216526aee20a4p-128L : inexact-ok
+= hypot downward ldbl-128ibm 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217216526aee2p-128L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217216526aee2p-128L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217216526aee2p-128L : inexact-ok
+= hypot upward ldbl-128ibm 0x3.fffff8p-128L 0x1.ep-128L : 0x4.6aeb08a21ccf217216526aee22p-128L : inexact-ok
+hypot 0x0.fffffep-126 0x0.fp-130
+= hypot downward flt-32 0x3.fffff8p-128f 0x3.cp-132f : 0x4.01c19p-128f : inexact-ok
+= hypot tonearest flt-32 0x3.fffff8p-128f 0x3.cp-132f : 0x4.01c198p-128f : inexact-ok
+= hypot towardzero flt-32 0x3.fffff8p-128f 0x3.cp-132f : 0x4.01c19p-128f : inexact-ok
+= hypot upward flt-32 0x3.fffff8p-128f 0x3.cp-132f : 0x4.01c198p-128f : inexact-ok
+= hypot downward dbl-64 0x3.fffff8p-128 0x3.cp-132 : 0x4.01c1954e5d88cp-128 : inexact-ok
+= hypot tonearest dbl-64 0x3.fffff8p-128 0x3.cp-132 : 0x4.01c1954e5d89p-128 : inexact-ok
+= hypot towardzero dbl-64 0x3.fffff8p-128 0x3.cp-132 : 0x4.01c1954e5d88cp-128 : inexact-ok
+= hypot upward dbl-64 0x3.fffff8p-128 0x3.cp-132 : 0x4.01c1954e5d89p-128 : inexact-ok
+= hypot downward ldbl-96-intel 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f29p-128L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f298p-128L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f29p-128L : inexact-ok
+= hypot upward ldbl-96-intel 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f298p-128L : inexact-ok
+= hypot downward ldbl-96-m68k 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f29p-128L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f298p-128L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f29p-128L : inexact-ok
+= hypot upward ldbl-96-m68k 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f298p-128L : inexact-ok
+= hypot downward ldbl-128 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f297cf6ea10e1d34p-128L : inexact-ok
+= hypot tonearest ldbl-128 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f297cf6ea10e1d38p-128L : inexact-ok
+= hypot towardzero ldbl-128 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f297cf6ea10e1d34p-128L : inexact-ok
+= hypot upward ldbl-128 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f297cf6ea10e1d38p-128L : inexact-ok
+= hypot downward ldbl-128ibm 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f297cf6ea10e1cp-128L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f297cf6ea10e1ep-128L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f297cf6ea10e1cp-128L : inexact-ok
+= hypot upward ldbl-128ibm 0x3.fffff8p-128L 0x3.cp-132L : 0x4.01c1954e5d88f297cf6ea10e1ep-128L : inexact-ok
+hypot 0x0.fffffffffffffp-1022 0x0.fp-1023
+= hypot downward flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x8p-152f : 0x1p-148f : inexact-ok underflow errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754bp-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3758p-152L : inexact-ok
+= hypot downward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward dbl-64 0x8p-152 0x1.ep-1024 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x1.ep-1024 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x1.ep-1024 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x1.ep-1024 : 0x8.0000000000008p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x1.ep-1024L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x1.ep-1024L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x1.ep-1024L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x1.ep-1024L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x1.ep-1024L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward dbl-64 0x0p+0 0x1.ep-1024 : 0x1.ep-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x0p+0 0x1.ep-1024 : 0x1.ep-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x0p+0 0x1.ep-1024 : 0x1.ep-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x0p+0 0x1.ep-1024 : 0x1.ep-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x1.ep-1024L : 0x1.ep-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x3.ffffffffffffcp-1024 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x3.ffffffffffffcp-1024 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x3.ffffffffffffcp-1024 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x3.ffffffffffffcp-1024 0x8p-152 : 0x8.0000000000008p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward dbl-64 0x3.ffffffffffffcp-1024 0x0p+0 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x3.ffffffffffffcp-1024 0x0p+0 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x3.ffffffffffffcp-1024 0x0p+0 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x3.ffffffffffffcp-1024 0x0p+0 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot upward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot downward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot upward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot downward ldbl-128 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot tonearest ldbl-128 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot towardzero ldbl-128 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot upward ldbl-128 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot downward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x3.ffffffffffffcp-1024 0x1.ep-1024 : 0x4.6aeb0fe07e0ecp-1024 : inexact-ok
+= hypot tonearest dbl-64 0x3.ffffffffffffcp-1024 0x1.ep-1024 : 0x4.6aeb0fe07e0ecp-1024 : inexact-ok
+= hypot towardzero dbl-64 0x3.ffffffffffffcp-1024 0x1.ep-1024 : 0x4.6aeb0fe07e0ecp-1024 : inexact-ok
+= hypot upward dbl-64 0x3.ffffffffffffcp-1024 0x1.ep-1024 : 0x4.6aeb0fe07e0fp-1024 : inexact-ok
+= hypot downward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7fp-1024L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7f8p-1024L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7fp-1024L : inexact-ok
+= hypot upward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7f8p-1024L : inexact-ok
+= hypot downward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7fp-1024L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7f8p-1024L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7fp-1024L : inexact-ok
+= hypot upward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7f8p-1024L : inexact-ok
+= hypot downward ldbl-128 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7f47b71873394ep-1024L : inexact-ok
+= hypot tonearest ldbl-128 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7f47b71873394ep-1024L : inexact-ok
+= hypot towardzero ldbl-128 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7f47b71873394ep-1024L : inexact-ok
+= hypot upward ldbl-128 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ec7f47b71873394e4p-1024L : inexact-ok
+= hypot downward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ecp-1024L : inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ecp-1024L : inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0ecp-1024L : inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x1.ep-1024L : 0x4.6aeb0fe07e0fp-1024L : inexact-ok underflow errno-erange-ok
+hypot 0x0.fffffffffffffp-1022 0x0.fp-1026
+= hypot downward flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x8p-152f : 0x1p-148f : inexact-ok underflow errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754bp-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3758p-152L : inexact-ok
+= hypot downward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : inexact-ok
+= hypot downward dbl-64 0x8p-152 0x3.cp-1028 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x3.cp-1028 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x3.cp-1028 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x8p-152 0x3.cp-1028 : 0x8.0000000000008p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x3.cp-1028L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x3.cp-1028L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x3.cp-1028L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x3.cp-1028L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x3.cp-1028L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : inexact-ok
+= hypot downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : inexact-ok
+= hypot downward dbl-64 0x0p+0 0x3.cp-1028 : 0x3.cp-1028 : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x0p+0 0x3.cp-1028 : 0x3.cp-1028 : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x0p+0 0x3.cp-1028 : 0x3.cp-1028 : inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x0p+0 0x3.cp-1028 : 0x3.cp-1028 : inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x3.cp-1028L : 0x3.cp-1028L : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x3.ffffffffffffcp-1024 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot tonearest dbl-64 0x3.ffffffffffffcp-1024 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot towardzero dbl-64 0x3.ffffffffffffcp-1024 0x8p-152 : 0x8p-152 : inexact-ok
+= hypot upward dbl-64 0x3.ffffffffffffcp-1024 0x8p-152 : 0x8.0000000000008p-152 : inexact-ok
+= hypot downward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8.000000000000001p-152L : inexact-ok
+= hypot downward ldbl-128 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : inexact-ok
+= hypot downward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot tonearest ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot towardzero ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8p-152L : inexact-ok
+= hypot upward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x8p-152L : 0x8.00000000000000000000000004p-152L : inexact-ok
+= hypot downward dbl-64 0x3.ffffffffffffcp-1024 0x0p+0 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x3.ffffffffffffcp-1024 0x0p+0 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x3.ffffffffffffcp-1024 0x0p+0 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x3.ffffffffffffcp-1024 0x0p+0 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot upward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot downward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot upward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot downward ldbl-128 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot tonearest ldbl-128 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot towardzero ldbl-128 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot upward ldbl-128 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok
+= hypot downward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x0p+0L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x3.ffffffffffffcp-1024 0x3.cp-1028 : 0x4.01c19d4adbd8p-1024 : inexact-ok
+= hypot tonearest dbl-64 0x3.ffffffffffffcp-1024 0x3.cp-1028 : 0x4.01c19d4adbd84p-1024 : inexact-ok
+= hypot towardzero dbl-64 0x3.ffffffffffffcp-1024 0x3.cp-1028 : 0x4.01c19d4adbd8p-1024 : inexact-ok
+= hypot upward dbl-64 0x3.ffffffffffffcp-1024 0x3.cp-1028 : 0x4.01c19d4adbd84p-1024 : inexact-ok
+= hypot downward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d78p-1024L : inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d8p-1024L : inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d78p-1024L : inexact-ok
+= hypot upward ldbl-96-intel 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d8p-1024L : inexact-ok
+= hypot downward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d78p-1024L : inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d8p-1024L : inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d78p-1024L : inexact-ok
+= hypot upward ldbl-96-m68k 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d8p-1024L : inexact-ok
+= hypot downward ldbl-128 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d7da77fe2ae4ce4p-1024L : inexact-ok
+= hypot tonearest ldbl-128 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d7da77fe2ae4ce8p-1024L : inexact-ok
+= hypot towardzero ldbl-128 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d7da77fe2ae4ce4p-1024L : inexact-ok
+= hypot upward ldbl-128 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd83d7da77fe2ae4ce8p-1024L : inexact-ok
+= hypot downward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd8p-1024L : inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd84p-1024L : inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd8p-1024L : inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128ibm 0x3.ffffffffffffcp-1024L 0x3.cp-1028L : 0x4.01c19d4adbd84p-1024L : inexact-ok underflow errno-erange-ok
+hypot 0x0.ffffffp-16382 0x0.fp-16383 no-test-inline
+= hypot downward flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x8p-152f : 0x1p-148f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754bp-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3758p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x4p-1076 : 0x8.0000000000008p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x4p-1076L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8.00000000000000000000000004p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x1.ep-16384L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x1.ep-16384L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x1.ep-16384L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x1.ep-16384L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x1.ep-16384L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x1.ep-16384L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x1.ep-16384L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x1.ep-16384L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x1.ep-16384L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x1.ep-16384L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x1.ep-16384L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x1.ep-16384L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x0p+0L 0x1.ep-16384L : 0x1.ep-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x4p-1076 0x8p-152 : 0x8.0000000000008p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8.00000000000000000000000004p-152L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward dbl-64 0x4p-1076 0x4p-1076 : 0x8p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32428p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32428p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa58p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x8p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x1.ep-16384L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x1.ep-16384L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x1.ep-16384L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x1.ep-16384L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x1.ep-16384L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x1.ep-16384L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x1.ep-16384L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x1.ep-16384L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x1.ep-16384L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x1.ep-16384L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x1.ep-16384L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x1.ep-16384L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x3.fffffcp-16384L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x3.fffffcp-16384L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x3.fffffcp-16384L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-intel 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x3.fffffcp-16384L 0x4p-1076L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x3.fffffcp-16384L 0x4p-1076L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x3.fffffcp-16384L 0x4p-1076L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe28p-16384L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe28p-16384L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe28p-16384L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe3p-16384L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe28p-16384L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe28p-16384L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe28p-16384L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe3p-16384L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe293db63292cc44p-16384L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe293db63292cc48p-16384L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe293db63292cc44p-16384L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x3.fffffcp-16384L 0x1.ep-16384L : 0x4.6aeb0c414d6ebe293db63292cc48p-16384L : no-test-inline inexact-ok
+hypot 0x0.ffffffp-16382 0x0.fp-16386 no-test-inline
+= hypot downward flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x8p-152f : 0x1p-148f : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de6p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x8p-152 : 0xb.504f333f9de68p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xb.504f333f9de6485p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754a8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754bp-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3754p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xb.504f333f9de6484597d89b3758p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x8p-152f 0x0p+0f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x0p+0 : 0x8p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x0p+0L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x8p-152 0x4p-1076 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x8p-152 0x4p-1076 : 0x8.0000000000008p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x4p-1076L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x8.00000000000000000000000004p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x8p-152L 0x3.cp-16388L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x8p-152L 0x3.cp-16388L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x8p-152L 0x3.cp-16388L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x8p-152L 0x3.cp-16388L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x8p-152L 0x3.cp-16388L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x8p-152L 0x3.cp-16388L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x8p-152L 0x3.cp-16388L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x8p-152L 0x3.cp-16388L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x8p-152L 0x3.cp-16388L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x8p-152L 0x3.cp-16388L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x8p-152L 0x3.cp-16388L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x8p-152L 0x3.cp-16388L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot tonearest flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot towardzero flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot upward flt-32 0x0p+0f 0x0p+0f : 0x0p+0f : no-test-inline inexact-ok
+= hypot downward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x0p+0 0x0p+0 : 0x0p+0 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x0p+0L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x0p+0L 0x3.cp-16388L : 0x3.cp-16388L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x4p-1076 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x4p-1076 0x8p-152 : 0x8.0000000000008p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x8.00000000000000000000000004p-152L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x4p-1076 0x0p+0 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x0p+0L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero dbl-64 0x4p-1076 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward dbl-64 0x4p-1076 0x4p-1076 : 0x8p-1076 : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32428p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef3242p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32428p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa54p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x4p-1076L : 0x5.a827999fcef32422cbec4d9baa58p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot upward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x8p-1076L : no-test-inline inexact-ok underflow errno-erange-ok
+= hypot downward ldbl-96-intel 0x4p-1076L 0x3.cp-16388L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x4p-1076L 0x3.cp-16388L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x4p-1076L 0x3.cp-16388L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x4p-1076L 0x3.cp-16388L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x4p-1076L 0x3.cp-16388L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x4p-1076L 0x3.cp-16388L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x4p-1076L 0x3.cp-16388L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x4p-1076L 0x3.cp-16388L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x4p-1076L 0x3.cp-16388L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x4p-1076L 0x3.cp-16388L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x4p-1076L 0x3.cp-16388L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x4p-1076L 0x3.cp-16388L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x3.fffffcp-16384L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x3.fffffcp-16384L 0x8p-152L : 0x8.000000000000001p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x3.fffffcp-16384L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x3.fffffcp-16384L 0x8p-152L : 0x8.0000000000000000000000000008p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-intel 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x3.fffffcp-16384L 0x0p+0L : 0x3.fffffcp-16384L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x3.fffffcp-16384L 0x4p-1076L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x3.fffffcp-16384L 0x4p-1076L : 0x4.0000000000000008p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x3.fffffcp-16384L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x3.fffffcp-16384L 0x4p-1076L : 0x4.0000000000000000000000000004p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b638p-16384L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b64p-16384L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b638p-16384L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b64p-16384L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b638p-16384L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b64p-16384L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b638p-16384L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b64p-16384L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b63d036a216a4e88p-16384L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b63d036a216a4e8cp-16384L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b63d036a216a4e88p-16384L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x3.fffffcp-16384L 0x3.cp-16388L : 0x4.01c1994c9cb0b63d036a216a4e8cp-16384L : no-test-inline inexact-ok
+hypot 0 min_subnorm no-test-inline
+= hypot downward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward flt-32 0x0p+0f 0x8p-152f : 0x8p-152f : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot tonearest dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot towardzero dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot upward dbl-64 0x0p+0 0x8p-152 : 0x8p-152 : no-test-inline inexact-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x8p-152L : no-test-inline inexact-ok
+= hypot downward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward dbl-64 0x0p+0 0x4p-1076 : 0x4p-1076 : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot upward ldbl-128 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok
+= hypot downward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x4p-1076L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x0p+0L 0x8p-16448L : 0x8p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x0p+0L 0x4p-16448L : 0x4p-16448L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot downward ldbl-128 0x0p+0L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot tonearest ldbl-128 0x0p+0L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot towardzero ldbl-128 0x0p+0L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+= hypot upward ldbl-128 0x0p+0L 0x4p-16496L : 0x4p-16496L : no-test-inline inexact-ok underflow-ok errno-erange-ok
+j0 -1.0
+= j0 downward flt-32 -0x1p+0f : 0xc.3e3fep-4f : inexact-ok
+= j0 tonearest flt-32 -0x1p+0f : 0xc.3e3ffp-4f : inexact-ok
+= j0 towardzero flt-32 -0x1p+0f : 0xc.3e3fep-4f : inexact-ok
+= j0 upward flt-32 -0x1p+0f : 0xc.3e3ffp-4f : inexact-ok
+= j0 downward dbl-64 -0x1p+0 : 0xc.3e3fedebdc778p-4 : inexact-ok
+= j0 tonearest dbl-64 -0x1p+0 : 0xc.3e3fedebdc78p-4 : inexact-ok
+= j0 towardzero dbl-64 -0x1p+0 : 0xc.3e3fedebdc778p-4 : inexact-ok
+= j0 upward dbl-64 -0x1p+0 : 0xc.3e3fedebdc78p-4 : inexact-ok
+= j0 downward ldbl-96-intel -0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= j0 tonearest ldbl-96-intel -0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= j0 towardzero ldbl-96-intel -0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= j0 upward ldbl-96-intel -0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= j0 downward ldbl-96-m68k -0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= j0 tonearest ldbl-96-m68k -0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= j0 towardzero ldbl-96-m68k -0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= j0 upward ldbl-96-m68k -0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= j0 downward ldbl-128 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a6p-4L : inexact-ok
+= j0 tonearest ldbl-128 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a68p-4L : inexact-ok
+= j0 towardzero ldbl-128 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a6p-4L : inexact-ok
+= j0 upward ldbl-128 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a68p-4L : inexact-ok
+= j0 downward ldbl-128ibm -0x1p+0L : 0xc.3e3fedebdc77c1cf1a98611598p-4L : inexact-ok
+= j0 tonearest ldbl-128ibm -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159cp-4L : inexact-ok
+= j0 towardzero ldbl-128ibm -0x1p+0L : 0xc.3e3fedebdc77c1cf1a98611598p-4L : inexact-ok
+= j0 upward ldbl-128ibm -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159cp-4L : inexact-ok
+j0 0.0
+= j0 downward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= j0 tonearest flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= j0 towardzero flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= j0 upward flt-32 0x0p+0f : 0x1p+0f : inexact-ok
+= j0 downward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= j0 tonearest dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= j0 towardzero dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= j0 upward dbl-64 0x0p+0 : 0x1p+0 : inexact-ok
+= j0 downward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 tonearest ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 towardzero ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 upward ldbl-96-intel 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 downward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 upward ldbl-96-m68k 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 downward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 tonearest ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 towardzero ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 upward ldbl-128 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 downward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 tonearest ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 towardzero ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+= j0 upward ldbl-128ibm 0x0p+0L : 0x1p+0L : inexact-ok
+j0 0.125
+= j0 downward flt-32 0x2p-4f : 0xf.f003fp-4f : inexact-ok
+= j0 tonearest flt-32 0x2p-4f : 0xf.f004p-4f : inexact-ok
+= j0 towardzero flt-32 0x2p-4f : 0xf.f003fp-4f : inexact-ok
+= j0 upward flt-32 0x2p-4f : 0xf.f004p-4f : inexact-ok
+= j0 downward dbl-64 0x2p-4 : 0xf.f003ff8e3fff8p-4 : inexact-ok
+= j0 tonearest dbl-64 0x2p-4 : 0xf.f003ff8e3fff8p-4 : inexact-ok
+= j0 towardzero dbl-64 0x2p-4 : 0xf.f003ff8e3fff8p-4 : inexact-ok
+= j0 upward dbl-64 0x2p-4 : 0xf.f003ff8e4p-4 : inexact-ok
+= j0 downward ldbl-96-intel 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= j0 tonearest ldbl-96-intel 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= j0 towardzero ldbl-96-intel 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= j0 upward ldbl-96-intel 0x2p-4L : 0xf.f003ff8e3fffb74p-4L : inexact-ok
+= j0 downward ldbl-96-m68k 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= j0 upward ldbl-96-m68k 0x2p-4L : 0xf.f003ff8e3fffb74p-4L : inexact-ok
+= j0 downward ldbl-128 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5da78p-4L : inexact-ok
+= j0 tonearest ldbl-128 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5da78p-4L : inexact-ok
+= j0 towardzero ldbl-128 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5da78p-4L : inexact-ok
+= j0 upward ldbl-128 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5da8p-4L : inexact-ok
+= j0 downward ldbl-128ibm 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5d8p-4L : inexact-ok
+= j0 tonearest ldbl-128ibm 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5dcp-4L : inexact-ok
+= j0 towardzero ldbl-128ibm 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5d8p-4L : inexact-ok
+= j0 upward ldbl-128ibm 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5dcp-4L : inexact-ok
+j0 0.75
+= j0 downward flt-32 0xcp-4f : 0xd.d3efbp-4f : inexact-ok
+= j0 tonearest flt-32 0xcp-4f : 0xd.d3efbp-4f : inexact-ok
+= j0 towardzero flt-32 0xcp-4f : 0xd.d3efbp-4f : inexact-ok
+= j0 upward flt-32 0xcp-4f : 0xd.d3efcp-4f : inexact-ok
+= j0 downward dbl-64 0xcp-4 : 0xd.d3efb53a950cp-4 : inexact-ok
+= j0 tonearest dbl-64 0xcp-4 : 0xd.d3efb53a950c8p-4 : inexact-ok
+= j0 towardzero dbl-64 0xcp-4 : 0xd.d3efb53a950cp-4 : inexact-ok
+= j0 upward dbl-64 0xcp-4 : 0xd.d3efb53a950c8p-4 : inexact-ok
+= j0 downward ldbl-96-intel 0xcp-4L : 0xd.d3efb53a950c68ep-4L : inexact-ok
+= j0 tonearest ldbl-96-intel 0xcp-4L : 0xd.d3efb53a950c68fp-4L : inexact-ok
+= j0 towardzero ldbl-96-intel 0xcp-4L : 0xd.d3efb53a950c68ep-4L : inexact-ok
+= j0 upward ldbl-96-intel 0xcp-4L : 0xd.d3efb53a950c68fp-4L : inexact-ok
+= j0 downward ldbl-96-m68k 0xcp-4L : 0xd.d3efb53a950c68ep-4L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0xcp-4L : 0xd.d3efb53a950c68fp-4L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0xcp-4L : 0xd.d3efb53a950c68ep-4L : inexact-ok
+= j0 upward ldbl-96-m68k 0xcp-4L : 0xd.d3efb53a950c68fp-4L : inexact-ok
+= j0 downward ldbl-128 0xcp-4L : 0xd.d3efb53a950c68ecf70068c9937p-4L : inexact-ok
+= j0 tonearest ldbl-128 0xcp-4L : 0xd.d3efb53a950c68ecf70068c9937p-4L : inexact-ok
+= j0 towardzero ldbl-128 0xcp-4L : 0xd.d3efb53a950c68ecf70068c9937p-4L : inexact-ok
+= j0 upward ldbl-128 0xcp-4L : 0xd.d3efb53a950c68ecf70068c99378p-4L : inexact-ok
+= j0 downward ldbl-128ibm 0xcp-4L : 0xd.d3efb53a950c68ecf70068c99p-4L : inexact-ok
+= j0 tonearest ldbl-128ibm 0xcp-4L : 0xd.d3efb53a950c68ecf70068c994p-4L : inexact-ok
+= j0 towardzero ldbl-128ibm 0xcp-4L : 0xd.d3efb53a950c68ecf70068c99p-4L : inexact-ok
+= j0 upward ldbl-128ibm 0xcp-4L : 0xd.d3efb53a950c68ecf70068c994p-4L : inexact-ok
+j0 1.0
+= j0 downward flt-32 0x1p+0f : 0xc.3e3fep-4f : inexact-ok
+= j0 tonearest flt-32 0x1p+0f : 0xc.3e3ffp-4f : inexact-ok
+= j0 towardzero flt-32 0x1p+0f : 0xc.3e3fep-4f : inexact-ok
+= j0 upward flt-32 0x1p+0f : 0xc.3e3ffp-4f : inexact-ok
+= j0 downward dbl-64 0x1p+0 : 0xc.3e3fedebdc778p-4 : inexact-ok
+= j0 tonearest dbl-64 0x1p+0 : 0xc.3e3fedebdc78p-4 : inexact-ok
+= j0 towardzero dbl-64 0x1p+0 : 0xc.3e3fedebdc778p-4 : inexact-ok
+= j0 upward dbl-64 0x1p+0 : 0xc.3e3fedebdc78p-4 : inexact-ok
+= j0 downward ldbl-96-intel 0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= j0 tonearest ldbl-96-intel 0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= j0 towardzero ldbl-96-intel 0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= j0 upward ldbl-96-intel 0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= j0 downward ldbl-96-m68k 0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= j0 upward ldbl-96-m68k 0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= j0 downward ldbl-128 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a6p-4L : inexact-ok
+= j0 tonearest ldbl-128 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a68p-4L : inexact-ok
+= j0 towardzero ldbl-128 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a6p-4L : inexact-ok
+= j0 upward ldbl-128 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a68p-4L : inexact-ok
+= j0 downward ldbl-128ibm 0x1p+0L : 0xc.3e3fedebdc77c1cf1a98611598p-4L : inexact-ok
+= j0 tonearest ldbl-128ibm 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159cp-4L : inexact-ok
+= j0 towardzero ldbl-128ibm 0x1p+0L : 0xc.3e3fedebdc77c1cf1a98611598p-4L : inexact-ok
+= j0 upward ldbl-128ibm 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159cp-4L : inexact-ok
+j0 1.5
+= j0 downward flt-32 0x1.8p+0f : 0x8.30723p-4f : inexact-ok
+= j0 tonearest flt-32 0x1.8p+0f : 0x8.30723p-4f : inexact-ok
+= j0 towardzero flt-32 0x1.8p+0f : 0x8.30723p-4f : inexact-ok
+= j0 upward flt-32 0x1.8p+0f : 0x8.30724p-4f : inexact-ok
+= j0 downward dbl-64 0x1.8p+0 : 0x8.30723674b28dp-4 : inexact-ok
+= j0 tonearest dbl-64 0x1.8p+0 : 0x8.30723674b28d8p-4 : inexact-ok
+= j0 towardzero dbl-64 0x1.8p+0 : 0x8.30723674b28dp-4 : inexact-ok
+= j0 upward dbl-64 0x1.8p+0 : 0x8.30723674b28d8p-4 : inexact-ok
+= j0 downward ldbl-96-intel 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= j0 tonearest ldbl-96-intel 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= j0 towardzero ldbl-96-intel 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= j0 upward ldbl-96-intel 0x1.8p+0L : 0x8.30723674b28d6ebp-4L : inexact-ok
+= j0 downward ldbl-96-m68k 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= j0 upward ldbl-96-m68k 0x1.8p+0L : 0x8.30723674b28d6ebp-4L : inexact-ok
+= j0 downward ldbl-128 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b748p-4L : inexact-ok
+= j0 tonearest ldbl-128 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b75p-4L : inexact-ok
+= j0 towardzero ldbl-128 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b748p-4L : inexact-ok
+= j0 upward ldbl-128 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b75p-4L : inexact-ok
+= j0 downward ldbl-128ibm 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b4p-4L : inexact-ok
+= j0 tonearest ldbl-128ibm 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b8p-4L : inexact-ok
+= j0 towardzero ldbl-128ibm 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b4p-4L : inexact-ok
+= j0 upward ldbl-128ibm 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b8p-4L : inexact-ok
+j0 2.0
+= j0 downward flt-32 0x2p+0f : 0x3.950e7cp-4f : inexact-ok
+= j0 tonearest flt-32 0x2p+0f : 0x3.950e8p-4f : inexact-ok
+= j0 towardzero flt-32 0x2p+0f : 0x3.950e7cp-4f : inexact-ok
+= j0 upward flt-32 0x2p+0f : 0x3.950e8p-4f : inexact-ok
+= j0 downward dbl-64 0x2p+0 : 0x3.950e7f6499deep-4 : inexact-ok
+= j0 tonearest dbl-64 0x2p+0 : 0x3.950e7f6499dfp-4 : inexact-ok
+= j0 towardzero dbl-64 0x2p+0 : 0x3.950e7f6499deep-4 : inexact-ok
+= j0 upward dbl-64 0x2p+0 : 0x3.950e7f6499dfp-4 : inexact-ok
+= j0 downward ldbl-96-intel 0x2p+0L : 0x3.950e7f6499def918p-4L : inexact-ok
+= j0 tonearest ldbl-96-intel 0x2p+0L : 0x3.950e7f6499def91cp-4L : inexact-ok
+= j0 towardzero ldbl-96-intel 0x2p+0L : 0x3.950e7f6499def918p-4L : inexact-ok
+= j0 upward ldbl-96-intel 0x2p+0L : 0x3.950e7f6499def91cp-4L : inexact-ok
+= j0 downward ldbl-96-m68k 0x2p+0L : 0x3.950e7f6499def918p-4L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0x2p+0L : 0x3.950e7f6499def91cp-4L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0x2p+0L : 0x3.950e7f6499def918p-4L : inexact-ok
+= j0 upward ldbl-96-m68k 0x2p+0L : 0x3.950e7f6499def91cp-4L : inexact-ok
+= j0 downward ldbl-128 0x2p+0L : 0x3.950e7f6499def91adac0afbc5d8cp-4L : inexact-ok
+= j0 tonearest ldbl-128 0x2p+0L : 0x3.950e7f6499def91adac0afbc5d8cp-4L : inexact-ok
+= j0 towardzero ldbl-128 0x2p+0L : 0x3.950e7f6499def91adac0afbc5d8cp-4L : inexact-ok
+= j0 upward ldbl-128 0x2p+0L : 0x3.950e7f6499def91adac0afbc5d8ep-4L : inexact-ok
+= j0 downward ldbl-128ibm 0x2p+0L : 0x3.950e7f6499def91adac0afbc5dp-4L : inexact-ok
+= j0 tonearest ldbl-128ibm 0x2p+0L : 0x3.950e7f6499def91adac0afbc5ep-4L : inexact-ok
+= j0 towardzero ldbl-128ibm 0x2p+0L : 0x3.950e7f6499def91adac0afbc5dp-4L : inexact-ok
+= j0 upward ldbl-128ibm 0x2p+0L : 0x3.950e7f6499def91adac0afbc5ep-4L : inexact-ok
+j0 8.0
+= j0 downward flt-32 0x8p+0f : 0x2.bf14e8p-4f : inexact-ok
+= j0 tonearest flt-32 0x8p+0f : 0x2.bf14ecp-4f : inexact-ok
+= j0 towardzero flt-32 0x8p+0f : 0x2.bf14e8p-4f : inexact-ok
+= j0 upward flt-32 0x8p+0f : 0x2.bf14ecp-4f : inexact-ok
+= j0 downward dbl-64 0x8p+0 : 0x2.bf14eaafce04ap-4 : inexact-ok
+= j0 tonearest dbl-64 0x8p+0 : 0x2.bf14eaafce04ap-4 : inexact-ok
+= j0 towardzero dbl-64 0x8p+0 : 0x2.bf14eaafce04ap-4 : inexact-ok
+= j0 upward dbl-64 0x8p+0 : 0x2.bf14eaafce04cp-4 : inexact-ok
+= j0 downward ldbl-96-intel 0x8p+0L : 0x2.bf14eaafce04a584p-4L : inexact-ok
+= j0 tonearest ldbl-96-intel 0x8p+0L : 0x2.bf14eaafce04a588p-4L : inexact-ok
+= j0 towardzero ldbl-96-intel 0x8p+0L : 0x2.bf14eaafce04a584p-4L : inexact-ok
+= j0 upward ldbl-96-intel 0x8p+0L : 0x2.bf14eaafce04a588p-4L : inexact-ok
+= j0 downward ldbl-96-m68k 0x8p+0L : 0x2.bf14eaafce04a584p-4L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0x8p+0L : 0x2.bf14eaafce04a588p-4L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0x8p+0L : 0x2.bf14eaafce04a584p-4L : inexact-ok
+= j0 upward ldbl-96-m68k 0x8p+0L : 0x2.bf14eaafce04a588p-4L : inexact-ok
+= j0 downward ldbl-128 0x8p+0L : 0x2.bf14eaafce04a587ded211e82082p-4L : inexact-ok
+= j0 tonearest ldbl-128 0x8p+0L : 0x2.bf14eaafce04a587ded211e82084p-4L : inexact-ok
+= j0 towardzero ldbl-128 0x8p+0L : 0x2.bf14eaafce04a587ded211e82082p-4L : inexact-ok
+= j0 upward ldbl-128 0x8p+0L : 0x2.bf14eaafce04a587ded211e82084p-4L : inexact-ok
+= j0 downward ldbl-128ibm 0x8p+0L : 0x2.bf14eaafce04a587ded211e82p-4L : inexact-ok
+= j0 tonearest ldbl-128ibm 0x8p+0L : 0x2.bf14eaafce04a587ded211e821p-4L : inexact-ok
+= j0 towardzero ldbl-128ibm 0x8p+0L : 0x2.bf14eaafce04a587ded211e82p-4L : inexact-ok
+= j0 upward ldbl-128ibm 0x8p+0L : 0x2.bf14eaafce04a587ded211e821p-4L : inexact-ok
+j0 10.0
+= j0 downward flt-32 0xap+0f : -0x3.ef5a58p-4f : inexact-ok
+= j0 tonearest flt-32 0xap+0f : -0x3.ef5a58p-4f : inexact-ok
+= j0 towardzero flt-32 0xap+0f : -0x3.ef5a54p-4f : inexact-ok
+= j0 upward flt-32 0xap+0f : -0x3.ef5a54p-4f : inexact-ok
+= j0 downward dbl-64 0xap+0 : -0x3.ef5a5713c3ca8p-4 : inexact-ok
+= j0 tonearest dbl-64 0xap+0 : -0x3.ef5a5713c3ca8p-4 : inexact-ok
+= j0 towardzero dbl-64 0xap+0 : -0x3.ef5a5713c3ca6p-4 : inexact-ok
+= j0 upward dbl-64 0xap+0 : -0x3.ef5a5713c3ca6p-4 : inexact-ok
+= j0 downward ldbl-96-intel 0xap+0L : -0x3.ef5a5713c3ca7068p-4L : inexact-ok
+= j0 tonearest ldbl-96-intel 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= j0 towardzero ldbl-96-intel 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= j0 upward ldbl-96-intel 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= j0 downward ldbl-96-m68k 0xap+0L : -0x3.ef5a5713c3ca7068p-4L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= j0 upward ldbl-96-m68k 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= j0 downward ldbl-128 0xap+0L : -0x3.ef5a5713c3ca70644304d7022886p-4L : inexact-ok
+= j0 tonearest ldbl-128 0xap+0L : -0x3.ef5a5713c3ca70644304d7022886p-4L : inexact-ok
+= j0 towardzero ldbl-128 0xap+0L : -0x3.ef5a5713c3ca70644304d7022884p-4L : inexact-ok
+= j0 upward ldbl-128 0xap+0L : -0x3.ef5a5713c3ca70644304d7022884p-4L : inexact-ok
+= j0 downward ldbl-128ibm 0xap+0L : -0x3.ef5a5713c3ca70644304d70229p-4L : inexact-ok
+= j0 tonearest ldbl-128ibm 0xap+0L : -0x3.ef5a5713c3ca70644304d70229p-4L : inexact-ok
+= j0 towardzero ldbl-128ibm 0xap+0L : -0x3.ef5a5713c3ca70644304d70228p-4L : inexact-ok
+= j0 upward ldbl-128ibm 0xap+0L : -0x3.ef5a5713c3ca70644304d70228p-4L : inexact-ok
+j0 4.0
+= j0 downward flt-32 0x4p+0f : -0x6.5ab9c8p-4f : inexact-ok
+= j0 tonearest flt-32 0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= j0 towardzero flt-32 0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= j0 upward flt-32 0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= j0 downward dbl-64 0x4p+0 : -0x6.5ab9c24fa53e8p-4 : inexact-ok
+= j0 tonearest dbl-64 0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= j0 towardzero dbl-64 0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= j0 upward dbl-64 0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= j0 downward ldbl-96-intel 0x4p+0L : -0x6.5ab9c24fa53e5cd8p-4L : inexact-ok
+= j0 tonearest ldbl-96-intel 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 towardzero ldbl-96-intel 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 upward ldbl-96-intel 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 downward ldbl-96-m68k 0x4p+0L : -0x6.5ab9c24fa53e5cd8p-4L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 upward ldbl-96-m68k 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 downward ldbl-128 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d9cp-4L : inexact-ok
+= j0 tonearest ldbl-128 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= j0 towardzero ldbl-128 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= j0 upward ldbl-128 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= j0 downward ldbl-128ibm 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87ep-4L : inexact-ok
+= j0 tonearest ldbl-128ibm 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87ep-4L : inexact-ok
+= j0 towardzero ldbl-128ibm 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87cp-4L : inexact-ok
+= j0 upward ldbl-128ibm 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87cp-4L : inexact-ok
+j0 -4.0
+= j0 downward flt-32 -0x4p+0f : -0x6.5ab9c8p-4f : inexact-ok
+= j0 tonearest flt-32 -0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= j0 towardzero flt-32 -0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= j0 upward flt-32 -0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= j0 downward dbl-64 -0x4p+0 : -0x6.5ab9c24fa53e8p-4 : inexact-ok
+= j0 tonearest dbl-64 -0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= j0 towardzero dbl-64 -0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= j0 upward dbl-64 -0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= j0 downward ldbl-96-intel -0x4p+0L : -0x6.5ab9c24fa53e5cd8p-4L : inexact-ok
+= j0 tonearest ldbl-96-intel -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 towardzero ldbl-96-intel -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 upward ldbl-96-intel -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 downward ldbl-96-m68k -0x4p+0L : -0x6.5ab9c24fa53e5cd8p-4L : inexact-ok
+= j0 tonearest ldbl-96-m68k -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 towardzero ldbl-96-m68k -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 upward ldbl-96-m68k -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= j0 downward ldbl-128 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d9cp-4L : inexact-ok
+= j0 tonearest ldbl-128 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= j0 towardzero ldbl-128 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= j0 upward ldbl-128 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= j0 downward ldbl-128ibm -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87ep-4L : inexact-ok
+= j0 tonearest ldbl-128ibm -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87ep-4L : inexact-ok
+= j0 towardzero ldbl-128ibm -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87cp-4L : inexact-ok
+= j0 upward ldbl-128ibm -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87cp-4L : inexact-ok
+j0 0x1.d7ce3ap+107
+= j0 downward flt-32 0xe.be71dp+104f : 0x1.fffe66p-56f : inexact-ok
+= j0 tonearest flt-32 0xe.be71dp+104f : 0x1.fffe66p-56f : inexact-ok
+= j0 towardzero flt-32 0xe.be71dp+104f : 0x1.fffe66p-56f : inexact-ok
+= j0 upward flt-32 0xe.be71dp+104f : 0x1.fffe68p-56f : inexact-ok
+= j0 downward dbl-64 0xe.be71dp+104 : 0x1.fffe660069bbbp-56 : inexact-ok
+= j0 tonearest dbl-64 0xe.be71dp+104 : 0x1.fffe660069bbbp-56 : inexact-ok
+= j0 towardzero dbl-64 0xe.be71dp+104 : 0x1.fffe660069bbbp-56 : inexact-ok
+= j0 upward dbl-64 0xe.be71dp+104 : 0x1.fffe660069bbcp-56 : inexact-ok
+= j0 downward ldbl-96-intel 0xe.be71dp+104L : 0x1.fffe660069bbb66p-56L : inexact-ok
+= j0 tonearest ldbl-96-intel 0xe.be71dp+104L : 0x1.fffe660069bbb66p-56L : inexact-ok
+= j0 towardzero ldbl-96-intel 0xe.be71dp+104L : 0x1.fffe660069bbb66p-56L : inexact-ok
+= j0 upward ldbl-96-intel 0xe.be71dp+104L : 0x1.fffe660069bbb662p-56L : inexact-ok
+= j0 downward ldbl-96-m68k 0xe.be71dp+104L : 0x1.fffe660069bbb66p-56L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0xe.be71dp+104L : 0x1.fffe660069bbb66p-56L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0xe.be71dp+104L : 0x1.fffe660069bbb66p-56L : inexact-ok
+= j0 upward ldbl-96-m68k 0xe.be71dp+104L : 0x1.fffe660069bbb662p-56L : inexact-ok
+= j0 downward ldbl-128 0xe.be71dp+104L : 0x1.fffe660069bbb660b03a17510b59p-56L : inexact-ok
+= j0 tonearest ldbl-128 0xe.be71dp+104L : 0x1.fffe660069bbb660b03a17510b59p-56L : inexact-ok
+= j0 towardzero ldbl-128 0xe.be71dp+104L : 0x1.fffe660069bbb660b03a17510b59p-56L : inexact-ok
+= j0 upward ldbl-128 0xe.be71dp+104L : 0x1.fffe660069bbb660b03a17510b5ap-56L : inexact-ok
+= j0 downward ldbl-128ibm 0xe.be71dp+104L : 0x1.fffe660069bbb660b03a17510bp-56L : inexact-ok
+= j0 tonearest ldbl-128ibm 0xe.be71dp+104L : 0x1.fffe660069bbb660b03a17510b8p-56L : inexact-ok
+= j0 towardzero ldbl-128ibm 0xe.be71dp+104L : 0x1.fffe660069bbb660b03a17510bp-56L : inexact-ok
+= j0 upward ldbl-128ibm 0xe.be71dp+104L : 0x1.fffe660069bbb660b03a17510b8p-56L : inexact-ok
+j0 -0x1.001000001p+593
+= j0 downward flt-32 -0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 tonearest flt-32 -0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 towardzero flt-32 -0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 upward flt-32 -0xf.fffffp+124f : 0x2.fd3facp-68f : inexact-ok
+= j0 downward dbl-64 -0xf.fffffp+124 : 0x2.fd3fa9dee0898p-68 : inexact-ok
+= j0 tonearest dbl-64 -0xf.fffffp+124 : 0x2.fd3fa9dee089ap-68 : inexact-ok
+= j0 towardzero dbl-64 -0xf.fffffp+124 : 0x2.fd3fa9dee0898p-68 : inexact-ok
+= j0 upward dbl-64 -0xf.fffffp+124 : 0x2.fd3fa9dee089ap-68 : inexact-ok
+= j0 downward ldbl-96-intel -0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 tonearest ldbl-96-intel -0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 towardzero ldbl-96-intel -0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 upward ldbl-96-intel -0xf.fffffp+124L : 0x2.fd3fa9dee0899294p-68L : inexact-ok
+= j0 downward ldbl-96-m68k -0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 tonearest ldbl-96-m68k -0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 towardzero ldbl-96-m68k -0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 upward ldbl-96-m68k -0xf.fffffp+124L : 0x2.fd3fa9dee0899294p-68L : inexact-ok
+= j0 downward ldbl-128 -0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 tonearest ldbl-128 -0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 towardzero ldbl-128 -0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 upward ldbl-128 -0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5616p-68L : inexact-ok
+= j0 downward ldbl-128ibm -0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 tonearest ldbl-128ibm -0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 towardzero ldbl-128ibm -0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 upward ldbl-128ibm -0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc57p-68L : inexact-ok
+= j0 downward dbl-64 -0x2.002000002p+592 : -0x7.ffff5bc14ea2cp-300 : inexact-ok
+= j0 tonearest dbl-64 -0x2.002000002p+592 : -0x7.ffff5bc14ea2cp-300 : inexact-ok
+= j0 towardzero dbl-64 -0x2.002000002p+592 : -0x7.ffff5bc14ea28p-300 : inexact-ok
+= j0 upward dbl-64 -0x2.002000002p+592 : -0x7.ffff5bc14ea28p-300 : inexact-ok
+= j0 downward ldbl-96-intel -0x2.002000002p+592L : -0x7.ffff5bc14ea2a99p-300L : inexact-ok
+= j0 tonearest ldbl-96-intel -0x2.002000002p+592L : -0x7.ffff5bc14ea2a99p-300L : inexact-ok
+= j0 towardzero ldbl-96-intel -0x2.002000002p+592L : -0x7.ffff5bc14ea2a988p-300L : inexact-ok
+= j0 upward ldbl-96-intel -0x2.002000002p+592L : -0x7.ffff5bc14ea2a988p-300L : inexact-ok
+= j0 downward ldbl-96-m68k -0x2.002000002p+592L : -0x7.ffff5bc14ea2a99p-300L : inexact-ok
+= j0 tonearest ldbl-96-m68k -0x2.002000002p+592L : -0x7.ffff5bc14ea2a99p-300L : inexact-ok
+= j0 towardzero ldbl-96-m68k -0x2.002000002p+592L : -0x7.ffff5bc14ea2a988p-300L : inexact-ok
+= j0 upward ldbl-96-m68k -0x2.002000002p+592L : -0x7.ffff5bc14ea2a988p-300L : inexact-ok
+= j0 downward ldbl-128 -0x2.002000002p+592L : -0x7.ffff5bc14ea2a98c2c8b9c03e8cp-300L : inexact-ok
+= j0 tonearest ldbl-128 -0x2.002000002p+592L : -0x7.ffff5bc14ea2a98c2c8b9c03e8bcp-300L : inexact-ok
+= j0 towardzero ldbl-128 -0x2.002000002p+592L : -0x7.ffff5bc14ea2a98c2c8b9c03e8bcp-300L : inexact-ok
+= j0 upward ldbl-128 -0x2.002000002p+592L : -0x7.ffff5bc14ea2a98c2c8b9c03e8bcp-300L : inexact-ok
+= j0 downward ldbl-128ibm -0x2.002000002p+592L : -0x7.ffff5bc14ea2a98c2c8b9c03eap-300L : inexact-ok
+= j0 tonearest ldbl-128ibm -0x2.002000002p+592L : -0x7.ffff5bc14ea2a98c2c8b9c03e8p-300L : inexact-ok
+= j0 towardzero ldbl-128ibm -0x2.002000002p+592L : -0x7.ffff5bc14ea2a98c2c8b9c03e8p-300L : inexact-ok
+= j0 upward ldbl-128ibm -0x2.002000002p+592L : -0x7.ffff5bc14ea2a98c2c8b9c03e8p-300L : inexact-ok
+j0 0x1p1023
+= j0 downward flt-32 0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 tonearest flt-32 0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 towardzero flt-32 0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 upward flt-32 0xf.fffffp+124f : 0x2.fd3facp-68f : inexact-ok
+= j0 downward dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee0898p-68 : inexact-ok
+= j0 tonearest dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee089ap-68 : inexact-ok
+= j0 towardzero dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee0898p-68 : inexact-ok
+= j0 upward dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee089ap-68 : inexact-ok
+= j0 downward ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 tonearest ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 towardzero ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 upward ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee0899294p-68L : inexact-ok
+= j0 downward ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 upward ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee0899294p-68L : inexact-ok
+= j0 downward ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 tonearest ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 towardzero ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 upward ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5616p-68L : inexact-ok
+= j0 downward ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 tonearest ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 towardzero ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 upward ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc57p-68L : inexact-ok
+= j0 downward dbl-64 0x8p+1020 : -0x3.5c4f847797f3p-516 : inexact-ok
+= j0 tonearest dbl-64 0x8p+1020 : -0x3.5c4f847797f3p-516 : inexact-ok
+= j0 towardzero dbl-64 0x8p+1020 : -0x3.5c4f847797f2ep-516 : inexact-ok
+= j0 upward dbl-64 0x8p+1020 : -0x3.5c4f847797f2ep-516 : inexact-ok
+= j0 downward ldbl-96-intel 0x8p+1020L : -0x3.5c4f847797f2fb08p-516L : inexact-ok
+= j0 tonearest ldbl-96-intel 0x8p+1020L : -0x3.5c4f847797f2fb04p-516L : inexact-ok
+= j0 towardzero ldbl-96-intel 0x8p+1020L : -0x3.5c4f847797f2fb04p-516L : inexact-ok
+= j0 upward ldbl-96-intel 0x8p+1020L : -0x3.5c4f847797f2fb04p-516L : inexact-ok
+= j0 downward ldbl-96-m68k 0x8p+1020L : -0x3.5c4f847797f2fb08p-516L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0x8p+1020L : -0x3.5c4f847797f2fb04p-516L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0x8p+1020L : -0x3.5c4f847797f2fb04p-516L : inexact-ok
+= j0 upward ldbl-96-m68k 0x8p+1020L : -0x3.5c4f847797f2fb04p-516L : inexact-ok
+= j0 downward ldbl-128 0x8p+1020L : -0x3.5c4f847797f2fb0411a8a82ca028p-516L : inexact-ok
+= j0 tonearest ldbl-128 0x8p+1020L : -0x3.5c4f847797f2fb0411a8a82ca028p-516L : inexact-ok
+= j0 towardzero ldbl-128 0x8p+1020L : -0x3.5c4f847797f2fb0411a8a82ca026p-516L : inexact-ok
+= j0 upward ldbl-128 0x8p+1020L : -0x3.5c4f847797f2fb0411a8a82ca026p-516L : inexact-ok
+= j0 downward ldbl-128ibm 0x8p+1020L : -0x3.5c4f847797f2fb0411a8a82ca1p-516L : inexact-ok
+= j0 tonearest ldbl-128ibm 0x8p+1020L : -0x3.5c4f847797f2fb0411a8a82cap-516L : inexact-ok
+= j0 towardzero ldbl-128ibm 0x8p+1020L : -0x3.5c4f847797f2fb0411a8a82cap-516L : inexact-ok
+= j0 upward ldbl-128ibm 0x8p+1020L : -0x3.5c4f847797f2fb0411a8a82cap-516L : inexact-ok
+j0 0x1p16382
+= j0 downward flt-32 0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 tonearest flt-32 0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 towardzero flt-32 0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 upward flt-32 0xf.fffffp+124f : 0x2.fd3facp-68f : inexact-ok
+= j0 downward dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee0898p-68 : inexact-ok
+= j0 tonearest dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee089ap-68 : inexact-ok
+= j0 towardzero dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee0898p-68 : inexact-ok
+= j0 upward dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee089ap-68 : inexact-ok
+= j0 downward ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 tonearest ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 towardzero ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 upward ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee0899294p-68L : inexact-ok
+= j0 downward ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 upward ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee0899294p-68L : inexact-ok
+= j0 downward ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 tonearest ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 towardzero ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 upward ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5616p-68L : inexact-ok
+= j0 downward ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 tonearest ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 towardzero ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 upward ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc57p-68L : inexact-ok
+= j0 downward dbl-64 0xf.ffffffffffff8p+1020 : -0x8.fb6ce7294f338p-516 : inexact-ok
+= j0 tonearest dbl-64 0xf.ffffffffffff8p+1020 : -0x8.fb6ce7294f338p-516 : inexact-ok
+= j0 towardzero dbl-64 0xf.ffffffffffff8p+1020 : -0x8.fb6ce7294f33p-516 : inexact-ok
+= j0 upward dbl-64 0xf.ffffffffffff8p+1020 : -0x8.fb6ce7294f33p-516 : inexact-ok
+= j0 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33634p-516L : inexact-ok
+= j0 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33634p-516L : inexact-ok
+= j0 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633p-516L : inexact-ok
+= j0 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633p-516L : inexact-ok
+= j0 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33634p-516L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33634p-516L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633p-516L : inexact-ok
+= j0 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633p-516L : inexact-ok
+= j0 downward ldbl-128 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe2708p-516L : inexact-ok
+= j0 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= j0 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= j0 upward ldbl-128 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= j0 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe28p-516L : inexact-ok
+= j0 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe28p-516L : inexact-ok
+= j0 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe24p-516L : inexact-ok
+= j0 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe24p-516L : inexact-ok
+= j0 downward ldbl-96-intel 0x4p+16380L : -0x1.547d24fb1319013p-8192L : inexact-ok
+= j0 tonearest ldbl-96-intel 0x4p+16380L : -0x1.547d24fb1319013p-8192L : inexact-ok
+= j0 towardzero ldbl-96-intel 0x4p+16380L : -0x1.547d24fb1319012ep-8192L : inexact-ok
+= j0 upward ldbl-96-intel 0x4p+16380L : -0x1.547d24fb1319012ep-8192L : inexact-ok
+= j0 downward ldbl-96-m68k 0x4p+16380L : -0x1.547d24fb1319013p-8192L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0x4p+16380L : -0x1.547d24fb1319013p-8192L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0x4p+16380L : -0x1.547d24fb1319012ep-8192L : inexact-ok
+= j0 upward ldbl-96-m68k 0x4p+16380L : -0x1.547d24fb1319012ep-8192L : inexact-ok
+= j0 downward ldbl-128 0x4p+16380L : -0x1.547d24fb1319012fae0dc6c96322p-8192L : inexact-ok
+= j0 tonearest ldbl-128 0x4p+16380L : -0x1.547d24fb1319012fae0dc6c96321p-8192L : inexact-ok
+= j0 towardzero ldbl-128 0x4p+16380L : -0x1.547d24fb1319012fae0dc6c96321p-8192L : inexact-ok
+= j0 upward ldbl-128 0x4p+16380L : -0x1.547d24fb1319012fae0dc6c96321p-8192L : inexact-ok
+= j0 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= j0 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= j0 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f019023p-516L : inexact-ok
+= j0 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f019023p-516L : inexact-ok
+= j0 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+= j0 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+= j0 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
+= j0 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
+j0 0x1p16383
+= j0 downward flt-32 0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 tonearest flt-32 0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 towardzero flt-32 0xf.fffffp+124f : 0x2.fd3fa8p-68f : inexact-ok
+= j0 upward flt-32 0xf.fffffp+124f : 0x2.fd3facp-68f : inexact-ok
+= j0 downward dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee0898p-68 : inexact-ok
+= j0 tonearest dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee089ap-68 : inexact-ok
+= j0 towardzero dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee0898p-68 : inexact-ok
+= j0 upward dbl-64 0xf.fffffp+124 : 0x2.fd3fa9dee089ap-68 : inexact-ok
+= j0 downward ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 tonearest ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 towardzero ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 upward ldbl-96-intel 0xf.fffffp+124L : 0x2.fd3fa9dee0899294p-68L : inexact-ok
+= j0 downward ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee089929p-68L : inexact-ok
+= j0 upward ldbl-96-m68k 0xf.fffffp+124L : 0x2.fd3fa9dee0899294p-68L : inexact-ok
+= j0 downward ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 tonearest ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 towardzero ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= j0 upward ldbl-128 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc5616p-68L : inexact-ok
+= j0 downward ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 tonearest ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 towardzero ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= j0 upward ldbl-128ibm 0xf.fffffp+124L : 0x2.fd3fa9dee0899291bc853ffc57p-68L : inexact-ok
+= j0 downward dbl-64 0xf.ffffffffffff8p+1020 : -0x8.fb6ce7294f338p-516 : inexact-ok
+= j0 tonearest dbl-64 0xf.ffffffffffff8p+1020 : -0x8.fb6ce7294f338p-516 : inexact-ok
+= j0 towardzero dbl-64 0xf.ffffffffffff8p+1020 : -0x8.fb6ce7294f33p-516 : inexact-ok
+= j0 upward dbl-64 0xf.ffffffffffff8p+1020 : -0x8.fb6ce7294f33p-516 : inexact-ok
+= j0 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33634p-516L : inexact-ok
+= j0 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33634p-516L : inexact-ok
+= j0 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633p-516L : inexact-ok
+= j0 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633p-516L : inexact-ok
+= j0 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33634p-516L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33634p-516L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633p-516L : inexact-ok
+= j0 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633p-516L : inexact-ok
+= j0 downward ldbl-128 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe2708p-516L : inexact-ok
+= j0 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= j0 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= j0 upward ldbl-128 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= j0 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe28p-516L : inexact-ok
+= j0 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe28p-516L : inexact-ok
+= j0 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe24p-516L : inexact-ok
+= j0 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x8.fb6ce7294f33633a6933acbe24p-516L : inexact-ok
+= j0 downward ldbl-96-intel 0x8p+16380L : 0x1.0bab81cdff92082p-8192L : inexact-ok
+= j0 tonearest ldbl-96-intel 0x8p+16380L : 0x1.0bab81cdff920822p-8192L : inexact-ok
+= j0 towardzero ldbl-96-intel 0x8p+16380L : 0x1.0bab81cdff92082p-8192L : inexact-ok
+= j0 upward ldbl-96-intel 0x8p+16380L : 0x1.0bab81cdff920822p-8192L : inexact-ok
+= j0 downward ldbl-96-m68k 0x8p+16380L : 0x1.0bab81cdff92082p-8192L : inexact-ok
+= j0 tonearest ldbl-96-m68k 0x8p+16380L : 0x1.0bab81cdff920822p-8192L : inexact-ok
+= j0 towardzero ldbl-96-m68k 0x8p+16380L : 0x1.0bab81cdff92082p-8192L : inexact-ok
+= j0 upward ldbl-96-m68k 0x8p+16380L : 0x1.0bab81cdff920822p-8192L : inexact-ok
+= j0 downward ldbl-128 0x8p+16380L : 0x1.0bab81cdff9208215a7577214c49p-8192L : inexact-ok
+= j0 tonearest ldbl-128 0x8p+16380L : 0x1.0bab81cdff9208215a7577214c49p-8192L : inexact-ok
+= j0 towardzero ldbl-128 0x8p+16380L : 0x1.0bab81cdff9208215a7577214c49p-8192L : inexact-ok
+= j0 upward ldbl-128 0x8p+16380L : 0x1.0bab81cdff9208215a7577214c4ap-8192L : inexact-ok
+= j0 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= j0 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= j0 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f019023p-516L : inexact-ok
+= j0 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f019023p-516L : inexact-ok
+= j0 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+= j0 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+= j0 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
+= j0 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
+j1 -1.0
+= j1 downward flt-32 -0x1p+0f : -0x7.0a728p-4f : inexact-ok
+= j1 tonearest flt-32 -0x1p+0f : -0x7.0a7278p-4f : inexact-ok
+= j1 towardzero flt-32 -0x1p+0f : -0x7.0a7278p-4f : inexact-ok
+= j1 upward flt-32 -0x1p+0f : -0x7.0a7278p-4f : inexact-ok
+= j1 downward dbl-64 -0x1p+0 : -0x7.0a727ba5c31b4p-4 : inexact-ok
+= j1 tonearest dbl-64 -0x1p+0 : -0x7.0a727ba5c31bp-4 : inexact-ok
+= j1 towardzero dbl-64 -0x1p+0 : -0x7.0a727ba5c31bp-4 : inexact-ok
+= j1 upward dbl-64 -0x1p+0 : -0x7.0a727ba5c31bp-4 : inexact-ok
+= j1 downward ldbl-96-intel -0x1p+0L : -0x7.0a727ba5c31b14ep-4L : inexact-ok
+= j1 tonearest ldbl-96-intel -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 towardzero ldbl-96-intel -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 upward ldbl-96-intel -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 downward ldbl-96-m68k -0x1p+0L : -0x7.0a727ba5c31b14ep-4L : inexact-ok
+= j1 tonearest ldbl-96-m68k -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 towardzero ldbl-96-m68k -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 upward ldbl-96-m68k -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 downward ldbl-128 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e340190074p-4L : inexact-ok
+= j1 tonearest ldbl-128 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019007p-4L : inexact-ok
+= j1 towardzero ldbl-128 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019007p-4L : inexact-ok
+= j1 upward ldbl-128 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019007p-4L : inexact-ok
+= j1 downward ldbl-128ibm -0x1p+0L : -0x7.0a727ba5c31b14d8b9e3401902p-4L : inexact-ok
+= j1 tonearest ldbl-128ibm -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+= j1 towardzero ldbl-128ibm -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+= j1 upward ldbl-128ibm -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+j1 0.0
+= j1 downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= j1 tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= j1 towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= j1 upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= j1 downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= j1 tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= j1 towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= j1 upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= j1 downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= j1 upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+j1 0.125
+= j1 downward flt-32 0x2p-4f : 0xf.f8015p-8f : inexact-ok
+= j1 tonearest flt-32 0x2p-4f : 0xf.f8015p-8f : inexact-ok
+= j1 towardzero flt-32 0x2p-4f : 0xf.f8015p-8f : inexact-ok
+= j1 upward flt-32 0x2p-4f : 0xf.f8016p-8f : inexact-ok
+= j1 downward dbl-64 0x2p-4 : 0xf.f8015538e4fap-8 : inexact-ok
+= j1 tonearest dbl-64 0x2p-4 : 0xf.f8015538e4fa8p-8 : inexact-ok
+= j1 towardzero dbl-64 0x2p-4 : 0xf.f8015538e4fap-8 : inexact-ok
+= j1 upward dbl-64 0x2p-4 : 0xf.f8015538e4fa8p-8 : inexact-ok
+= j1 downward ldbl-96-intel 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= j1 upward ldbl-96-intel 0x2p-4L : 0xf.f8015538e4fa439p-8L : inexact-ok
+= j1 downward ldbl-96-m68k 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= j1 upward ldbl-96-m68k 0x2p-4L : 0xf.f8015538e4fa439p-8L : inexact-ok
+= j1 downward ldbl-128 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0bdp-8L : inexact-ok
+= j1 tonearest ldbl-128 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0bdp-8L : inexact-ok
+= j1 towardzero ldbl-128 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0bdp-8L : inexact-ok
+= j1 upward ldbl-128 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0bd8p-8L : inexact-ok
+= j1 downward ldbl-128ibm 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a08p-8L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0cp-8L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a08p-8L : inexact-ok
+= j1 upward ldbl-128ibm 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0cp-8L : inexact-ok
+j1 0.75
+= j1 downward flt-32 0xcp-4f : 0x5.96807p-4f : inexact-ok
+= j1 tonearest flt-32 0xcp-4f : 0x5.968078p-4f : inexact-ok
+= j1 towardzero flt-32 0xcp-4f : 0x5.96807p-4f : inexact-ok
+= j1 upward flt-32 0xcp-4f : 0x5.968078p-4f : inexact-ok
+= j1 downward dbl-64 0xcp-4 : 0x5.9680759ada2fp-4 : inexact-ok
+= j1 tonearest dbl-64 0xcp-4 : 0x5.9680759ada2fp-4 : inexact-ok
+= j1 towardzero dbl-64 0xcp-4 : 0x5.9680759ada2fp-4 : inexact-ok
+= j1 upward dbl-64 0xcp-4 : 0x5.9680759ada2f4p-4 : inexact-ok
+= j1 downward ldbl-96-intel 0xcp-4L : 0x5.9680759ada2f1dd8p-4L : inexact-ok
+= j1 tonearest ldbl-96-intel 0xcp-4L : 0x5.9680759ada2f1dep-4L : inexact-ok
+= j1 towardzero ldbl-96-intel 0xcp-4L : 0x5.9680759ada2f1dd8p-4L : inexact-ok
+= j1 upward ldbl-96-intel 0xcp-4L : 0x5.9680759ada2f1dep-4L : inexact-ok
+= j1 downward ldbl-96-m68k 0xcp-4L : 0x5.9680759ada2f1dd8p-4L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0xcp-4L : 0x5.9680759ada2f1dep-4L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0xcp-4L : 0x5.9680759ada2f1dd8p-4L : inexact-ok
+= j1 upward ldbl-96-m68k 0xcp-4L : 0x5.9680759ada2f1dep-4L : inexact-ok
+= j1 downward ldbl-128 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bcc0cp-4L : inexact-ok
+= j1 tonearest ldbl-128 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bcc0cp-4L : inexact-ok
+= j1 towardzero ldbl-128 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bcc0cp-4L : inexact-ok
+= j1 upward ldbl-128 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bcc1p-4L : inexact-ok
+= j1 downward ldbl-128ibm 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bccp-4L : inexact-ok
+= j1 tonearest ldbl-128ibm 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bccp-4L : inexact-ok
+= j1 towardzero ldbl-128ibm 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bccp-4L : inexact-ok
+= j1 upward ldbl-128ibm 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bcep-4L : inexact-ok
+j1 1.0
+= j1 downward flt-32 0x1p+0f : 0x7.0a7278p-4f : inexact-ok
+= j1 tonearest flt-32 0x1p+0f : 0x7.0a7278p-4f : inexact-ok
+= j1 towardzero flt-32 0x1p+0f : 0x7.0a7278p-4f : inexact-ok
+= j1 upward flt-32 0x1p+0f : 0x7.0a728p-4f : inexact-ok
+= j1 downward dbl-64 0x1p+0 : 0x7.0a727ba5c31bp-4 : inexact-ok
+= j1 tonearest dbl-64 0x1p+0 : 0x7.0a727ba5c31bp-4 : inexact-ok
+= j1 towardzero dbl-64 0x1p+0 : 0x7.0a727ba5c31bp-4 : inexact-ok
+= j1 upward dbl-64 0x1p+0 : 0x7.0a727ba5c31b4p-4 : inexact-ok
+= j1 downward ldbl-96-intel 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 upward ldbl-96-intel 0x1p+0L : 0x7.0a727ba5c31b14ep-4L : inexact-ok
+= j1 downward ldbl-96-m68k 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= j1 upward ldbl-96-m68k 0x1p+0L : 0x7.0a727ba5c31b14ep-4L : inexact-ok
+= j1 downward ldbl-128 0x1p+0L : 0x7.0a727ba5c31b14d8b9e34019007p-4L : inexact-ok
+= j1 tonearest ldbl-128 0x1p+0L : 0x7.0a727ba5c31b14d8b9e340190074p-4L : inexact-ok
+= j1 towardzero ldbl-128 0x1p+0L : 0x7.0a727ba5c31b14d8b9e34019007p-4L : inexact-ok
+= j1 upward ldbl-128 0x1p+0L : 0x7.0a727ba5c31b14d8b9e340190074p-4L : inexact-ok
+= j1 downward ldbl-128ibm 0x1p+0L : 0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x1p+0L : 0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x1p+0L : 0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+= j1 upward ldbl-128ibm 0x1p+0L : 0x7.0a727ba5c31b14d8b9e3401902p-4L : inexact-ok
+j1 1.5
+= j1 downward flt-32 0x1.8p+0f : 0x8.ed4edp-4f : inexact-ok
+= j1 tonearest flt-32 0x1.8p+0f : 0x8.ed4edp-4f : inexact-ok
+= j1 towardzero flt-32 0x1.8p+0f : 0x8.ed4edp-4f : inexact-ok
+= j1 upward flt-32 0x1.8p+0f : 0x8.ed4eep-4f : inexact-ok
+= j1 downward dbl-64 0x1.8p+0 : 0x8.ed4ed4eb7e408p-4 : inexact-ok
+= j1 tonearest dbl-64 0x1.8p+0 : 0x8.ed4ed4eb7e408p-4 : inexact-ok
+= j1 towardzero dbl-64 0x1.8p+0 : 0x8.ed4ed4eb7e408p-4 : inexact-ok
+= j1 upward dbl-64 0x1.8p+0 : 0x8.ed4ed4eb7e41p-4 : inexact-ok
+= j1 downward ldbl-96-intel 0x1.8p+0L : 0x8.ed4ed4eb7e408aap-4L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x1.8p+0L : 0x8.ed4ed4eb7e408abp-4L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x1.8p+0L : 0x8.ed4ed4eb7e408aap-4L : inexact-ok
+= j1 upward ldbl-96-intel 0x1.8p+0L : 0x8.ed4ed4eb7e408abp-4L : inexact-ok
+= j1 downward ldbl-96-m68k 0x1.8p+0L : 0x8.ed4ed4eb7e408aap-4L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x1.8p+0L : 0x8.ed4ed4eb7e408abp-4L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x1.8p+0L : 0x8.ed4ed4eb7e408aap-4L : inexact-ok
+= j1 upward ldbl-96-m68k 0x1.8p+0L : 0x8.ed4ed4eb7e408abp-4L : inexact-ok
+= j1 downward ldbl-128 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a07549300b8p-4L : inexact-ok
+= j1 tonearest ldbl-128 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a07549300cp-4L : inexact-ok
+= j1 towardzero ldbl-128 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a07549300b8p-4L : inexact-ok
+= j1 upward ldbl-128 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a07549300cp-4L : inexact-ok
+= j1 downward ldbl-128ibm 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a075493p-4L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a075493p-4L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a075493p-4L : inexact-ok
+= j1 upward ldbl-128ibm 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a07549304p-4L : inexact-ok
+j1 2.0
+= j1 downward flt-32 0x2p+0f : 0x9.3a43cp-4f : inexact-ok
+= j1 tonearest flt-32 0x2p+0f : 0x9.3a43dp-4f : inexact-ok
+= j1 towardzero flt-32 0x2p+0f : 0x9.3a43cp-4f : inexact-ok
+= j1 upward flt-32 0x2p+0f : 0x9.3a43dp-4f : inexact-ok
+= j1 downward dbl-64 0x2p+0 : 0x9.3a43cac1b8f78p-4 : inexact-ok
+= j1 tonearest dbl-64 0x2p+0 : 0x9.3a43cac1b8f8p-4 : inexact-ok
+= j1 towardzero dbl-64 0x2p+0 : 0x9.3a43cac1b8f78p-4 : inexact-ok
+= j1 upward dbl-64 0x2p+0 : 0x9.3a43cac1b8f8p-4 : inexact-ok
+= j1 downward ldbl-96-intel 0x2p+0L : 0x9.3a43cac1b8f7ed7p-4L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x2p+0L : 0x9.3a43cac1b8f7ed8p-4L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x2p+0L : 0x9.3a43cac1b8f7ed7p-4L : inexact-ok
+= j1 upward ldbl-96-intel 0x2p+0L : 0x9.3a43cac1b8f7ed8p-4L : inexact-ok
+= j1 downward ldbl-96-m68k 0x2p+0L : 0x9.3a43cac1b8f7ed7p-4L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x2p+0L : 0x9.3a43cac1b8f7ed8p-4L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x2p+0L : 0x9.3a43cac1b8f7ed7p-4L : inexact-ok
+= j1 upward ldbl-96-m68k 0x2p+0L : 0x9.3a43cac1b8f7ed8p-4L : inexact-ok
+= j1 downward ldbl-128 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282b5p-4L : inexact-ok
+= j1 tonearest ldbl-128 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282b5p-4L : inexact-ok
+= j1 towardzero ldbl-128 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282b5p-4L : inexact-ok
+= j1 upward ldbl-128 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282b58p-4L : inexact-ok
+= j1 downward ldbl-128ibm 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f2828p-4L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282cp-4L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f2828p-4L : inexact-ok
+= j1 upward ldbl-128ibm 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282cp-4L : inexact-ok
+j1 8.0
+= j1 downward flt-32 0x8p+0f : 0x3.c11208p-4f : inexact-ok
+= j1 tonearest flt-32 0x8p+0f : 0x3.c1120cp-4f : inexact-ok
+= j1 towardzero flt-32 0x8p+0f : 0x3.c11208p-4f : inexact-ok
+= j1 upward flt-32 0x8p+0f : 0x3.c1120cp-4f : inexact-ok
+= j1 downward dbl-64 0x8p+0 : 0x3.c1120ac30c304p-4 : inexact-ok
+= j1 tonearest dbl-64 0x8p+0 : 0x3.c1120ac30c306p-4 : inexact-ok
+= j1 towardzero dbl-64 0x8p+0 : 0x3.c1120ac30c304p-4 : inexact-ok
+= j1 upward dbl-64 0x8p+0 : 0x3.c1120ac30c306p-4 : inexact-ok
+= j1 downward ldbl-96-intel 0x8p+0L : 0x3.c1120ac30c305a9p-4L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x8p+0L : 0x3.c1120ac30c305a94p-4L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x8p+0L : 0x3.c1120ac30c305a9p-4L : inexact-ok
+= j1 upward ldbl-96-intel 0x8p+0L : 0x3.c1120ac30c305a94p-4L : inexact-ok
+= j1 downward ldbl-96-m68k 0x8p+0L : 0x3.c1120ac30c305a9p-4L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x8p+0L : 0x3.c1120ac30c305a94p-4L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x8p+0L : 0x3.c1120ac30c305a9p-4L : inexact-ok
+= j1 upward ldbl-96-m68k 0x8p+0L : 0x3.c1120ac30c305a94p-4L : inexact-ok
+= j1 downward ldbl-128 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25d24p-4L : inexact-ok
+= j1 tonearest ldbl-128 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25d24p-4L : inexact-ok
+= j1 towardzero ldbl-128 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25d24p-4L : inexact-ok
+= j1 upward ldbl-128 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25d26p-4L : inexact-ok
+= j1 downward ldbl-128ibm 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25dp-4L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25dp-4L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25dp-4L : inexact-ok
+= j1 upward ldbl-128ibm 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25ep-4L : inexact-ok
+j1 10.0
+= j1 downward flt-32 0xap+0f : 0xb.2107ap-8f : inexact-ok
+= j1 tonearest flt-32 0xap+0f : 0xb.2107ap-8f : inexact-ok
+= j1 towardzero flt-32 0xap+0f : 0xb.2107ap-8f : inexact-ok
+= j1 upward flt-32 0xap+0f : 0xb.2107bp-8f : inexact-ok
+= j1 downward dbl-64 0xap+0 : 0xb.2107a7100488p-8 : inexact-ok
+= j1 tonearest dbl-64 0xap+0 : 0xb.2107a71004888p-8 : inexact-ok
+= j1 towardzero dbl-64 0xap+0 : 0xb.2107a7100488p-8 : inexact-ok
+= j1 upward dbl-64 0xap+0 : 0xb.2107a71004888p-8 : inexact-ok
+= j1 downward ldbl-96-intel 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= j1 tonearest ldbl-96-intel 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= j1 towardzero ldbl-96-intel 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= j1 upward ldbl-96-intel 0xap+0L : 0xb.2107a7100488616p-8L : inexact-ok
+= j1 downward ldbl-96-m68k 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= j1 upward ldbl-96-m68k 0xap+0L : 0xb.2107a7100488616p-8L : inexact-ok
+= j1 downward ldbl-128 0xap+0L : 0xb.2107a710048861578f0a8f4f2bf8p-8L : inexact-ok
+= j1 tonearest ldbl-128 0xap+0L : 0xb.2107a710048861578f0a8f4f2bf8p-8L : inexact-ok
+= j1 towardzero ldbl-128 0xap+0L : 0xb.2107a710048861578f0a8f4f2bf8p-8L : inexact-ok
+= j1 upward ldbl-128 0xap+0L : 0xb.2107a710048861578f0a8f4f2cp-8L : inexact-ok
+= j1 downward ldbl-128ibm 0xap+0L : 0xb.2107a710048861578f0a8f4f28p-8L : inexact-ok
+= j1 tonearest ldbl-128ibm 0xap+0L : 0xb.2107a710048861578f0a8f4f2cp-8L : inexact-ok
+= j1 towardzero ldbl-128ibm 0xap+0L : 0xb.2107a710048861578f0a8f4f28p-8L : inexact-ok
+= j1 upward ldbl-128ibm 0xap+0L : 0xb.2107a710048861578f0a8f4f2cp-8L : inexact-ok
+j1 0x1.3ffp+74
+= j1 downward flt-32 0x4.ffcp+72f : 0x1.ffffa2p-40f : inexact-ok
+= j1 tonearest flt-32 0x4.ffcp+72f : 0x1.ffffa2p-40f : inexact-ok
+= j1 towardzero flt-32 0x4.ffcp+72f : 0x1.ffffa2p-40f : inexact-ok
+= j1 upward flt-32 0x4.ffcp+72f : 0x1.ffffa4p-40f : inexact-ok
+= j1 downward dbl-64 0x4.ffcp+72 : 0x1.ffffa2bb93061p-40 : inexact-ok
+= j1 tonearest dbl-64 0x4.ffcp+72 : 0x1.ffffa2bb93061p-40 : inexact-ok
+= j1 towardzero dbl-64 0x4.ffcp+72 : 0x1.ffffa2bb93061p-40 : inexact-ok
+= j1 upward dbl-64 0x4.ffcp+72 : 0x1.ffffa2bb93062p-40 : inexact-ok
+= j1 downward ldbl-96-intel 0x4.ffcp+72L : 0x1.ffffa2bb93061214p-40L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x4.ffcp+72L : 0x1.ffffa2bb93061216p-40L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x4.ffcp+72L : 0x1.ffffa2bb93061214p-40L : inexact-ok
+= j1 upward ldbl-96-intel 0x4.ffcp+72L : 0x1.ffffa2bb93061216p-40L : inexact-ok
+= j1 downward ldbl-96-m68k 0x4.ffcp+72L : 0x1.ffffa2bb93061214p-40L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x4.ffcp+72L : 0x1.ffffa2bb93061216p-40L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x4.ffcp+72L : 0x1.ffffa2bb93061214p-40L : inexact-ok
+= j1 upward ldbl-96-m68k 0x4.ffcp+72L : 0x1.ffffa2bb93061216p-40L : inexact-ok
+= j1 downward ldbl-128 0x4.ffcp+72L : 0x1.ffffa2bb93061215e127257a3893p-40L : inexact-ok
+= j1 tonearest ldbl-128 0x4.ffcp+72L : 0x1.ffffa2bb93061215e127257a3894p-40L : inexact-ok
+= j1 towardzero ldbl-128 0x4.ffcp+72L : 0x1.ffffa2bb93061215e127257a3893p-40L : inexact-ok
+= j1 upward ldbl-128 0x4.ffcp+72L : 0x1.ffffa2bb93061215e127257a3894p-40L : inexact-ok
+= j1 downward ldbl-128ibm 0x4.ffcp+72L : 0x1.ffffa2bb93061215e127257a388p-40L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x4.ffcp+72L : 0x1.ffffa2bb93061215e127257a388p-40L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x4.ffcp+72L : 0x1.ffffa2bb93061215e127257a388p-40L : inexact-ok
+= j1 upward ldbl-128ibm 0x4.ffcp+72L : 0x1.ffffa2bb93061215e127257a39p-40L : inexact-ok
+j1 0x1.ff00000000002p+840
+= j1 downward flt-32 0xf.fffffp+124f : -0xc.69478p-68f : inexact-ok
+= j1 tonearest flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 towardzero flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 upward flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 downward dbl-64 0xf.fffffp+124 : -0xc.6947737b058ap-68 : inexact-ok
+= j1 tonearest dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 towardzero dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 upward dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 downward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 tonearest ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 towardzero ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 upward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 downward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 upward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 downward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= j1 tonearest ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= j1 towardzero ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= j1 upward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= j1 downward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c345238216cp-68L : inexact-ok
+= j1 tonearest ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 towardzero ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 upward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 downward dbl-64 0x1.ff00000000002p+840 : 0x7.fffedaf2ef198p-424 : inexact-ok
+= j1 tonearest dbl-64 0x1.ff00000000002p+840 : 0x7.fffedaf2ef198p-424 : inexact-ok
+= j1 towardzero dbl-64 0x1.ff00000000002p+840 : 0x7.fffedaf2ef198p-424 : inexact-ok
+= j1 upward dbl-64 0x1.ff00000000002p+840 : 0x7.fffedaf2ef19cp-424 : inexact-ok
+= j1 downward ldbl-96-intel 0x1.ff00000000002p+840L : 0x7.fffedaf2ef19876p-424L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x1.ff00000000002p+840L : 0x7.fffedaf2ef198768p-424L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x1.ff00000000002p+840L : 0x7.fffedaf2ef19876p-424L : inexact-ok
+= j1 upward ldbl-96-intel 0x1.ff00000000002p+840L : 0x7.fffedaf2ef198768p-424L : inexact-ok
+= j1 downward ldbl-96-m68k 0x1.ff00000000002p+840L : 0x7.fffedaf2ef19876p-424L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x1.ff00000000002p+840L : 0x7.fffedaf2ef198768p-424L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x1.ff00000000002p+840L : 0x7.fffedaf2ef19876p-424L : inexact-ok
+= j1 upward ldbl-96-m68k 0x1.ff00000000002p+840L : 0x7.fffedaf2ef198768p-424L : inexact-ok
+= j1 downward ldbl-128 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f1b4p-424L : inexact-ok
+= j1 tonearest ldbl-128 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f1b4p-424L : inexact-ok
+= j1 towardzero ldbl-128 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f1b4p-424L : inexact-ok
+= j1 upward ldbl-128 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f1b8p-424L : inexact-ok
+= j1 downward ldbl-128ibm 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97fp-424L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f2p-424L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97fp-424L : inexact-ok
+= j1 upward ldbl-128ibm 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f2p-424L : inexact-ok
+j1 0x1p1023
+= j1 downward flt-32 0xf.fffffp+124f : -0xc.69478p-68f : inexact-ok
+= j1 tonearest flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 towardzero flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 upward flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 downward dbl-64 0xf.fffffp+124 : -0xc.6947737b058ap-68 : inexact-ok
+= j1 tonearest dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 towardzero dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 upward dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 downward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 tonearest ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 towardzero ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 upward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 downward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 upward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 downward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= j1 tonearest ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= j1 towardzero ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= j1 upward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= j1 downward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c345238216cp-68L : inexact-ok
+= j1 tonearest ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 towardzero ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 upward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 downward dbl-64 0x8p+1020 : 0x1.1bd10e60877e2p-512 : inexact-ok
+= j1 tonearest dbl-64 0x8p+1020 : 0x1.1bd10e60877e3p-512 : inexact-ok
+= j1 towardzero dbl-64 0x8p+1020 : 0x1.1bd10e60877e2p-512 : inexact-ok
+= j1 upward dbl-64 0x8p+1020 : 0x1.1bd10e60877e3p-512 : inexact-ok
+= j1 downward ldbl-96-intel 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= j1 upward ldbl-96-intel 0x8p+1020L : 0x1.1bd10e60877e2ce4p-512L : inexact-ok
+= j1 downward ldbl-96-m68k 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= j1 upward ldbl-96-m68k 0x8p+1020L : 0x1.1bd10e60877e2ce4p-512L : inexact-ok
+= j1 downward ldbl-128 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f9698p-512L : inexact-ok
+= j1 tonearest ldbl-128 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f9699p-512L : inexact-ok
+= j1 towardzero ldbl-128 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f9698p-512L : inexact-ok
+= j1 upward ldbl-128 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f9699p-512L : inexact-ok
+= j1 downward ldbl-128ibm 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f968p-512L : inexact-ok
+= j1 tonearest ldbl-128ibm 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f968p-512L : inexact-ok
+= j1 towardzero ldbl-128ibm 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f968p-512L : inexact-ok
+= j1 upward ldbl-128ibm 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f97p-512L : inexact-ok
+j1 0x1p16382
+= j1 downward flt-32 0xf.fffffp+124f : -0xc.69478p-68f : inexact-ok
+= j1 tonearest flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 towardzero flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 upward flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 downward dbl-64 0xf.fffffp+124 : -0xc.6947737b058ap-68 : inexact-ok
+= j1 tonearest dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 towardzero dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 upward dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 downward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 tonearest ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 towardzero ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 upward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 downward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 upward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 downward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= j1 tonearest ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= j1 towardzero ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= j1 upward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= j1 downward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c345238216cp-68L : inexact-ok
+= j1 tonearest ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 towardzero ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 upward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 downward dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= j1 tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= j1 towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= j1 upward dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436acc8p-516 : inexact-ok
+= j1 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= j1 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= j1 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= j1 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= j1 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= j1 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= j1 downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= j1 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa5p-516L : inexact-ok
+= j1 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= j1 upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa5p-516L : inexact-ok
+= j1 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5f8p-516L : inexact-ok
+= j1 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fcp-516L : inexact-ok
+= j1 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5f8p-516L : inexact-ok
+= j1 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fcp-516L : inexact-ok
+= j1 downward ldbl-96-intel 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= j1 upward ldbl-96-intel 0x4p+16380L : 0xe.1ba855ba7e7ba4bp-8196L : inexact-ok
+= j1 downward ldbl-96-m68k 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= j1 upward ldbl-96-m68k 0x4p+16380L : 0xe.1ba855ba7e7ba4bp-8196L : inexact-ok
+= j1 downward ldbl-128 0x4p+16380L : 0xe.1ba855ba7e7ba4a295fe65161a38p-8196L : inexact-ok
+= j1 tonearest ldbl-128 0x4p+16380L : 0xe.1ba855ba7e7ba4a295fe65161a38p-8196L : inexact-ok
+= j1 towardzero ldbl-128 0x4p+16380L : 0xe.1ba855ba7e7ba4a295fe65161a38p-8196L : inexact-ok
+= j1 upward ldbl-128 0x4p+16380L : 0xe.1ba855ba7e7ba4a295fe65161a4p-8196L : inexact-ok
+= j1 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= j1 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= j1 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0250cp-516L : inexact-ok
+= j1 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0250cp-516L : inexact-ok
+= j1 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
+= j1 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
+= j1 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+= j1 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+j1 0x1p16383
+= j1 downward flt-32 0xf.fffffp+124f : -0xc.69478p-68f : inexact-ok
+= j1 tonearest flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 towardzero flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 upward flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= j1 downward dbl-64 0xf.fffffp+124 : -0xc.6947737b058ap-68 : inexact-ok
+= j1 tonearest dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 towardzero dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 upward dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= j1 downward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 tonearest ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 towardzero ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 upward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 downward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 upward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= j1 downward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= j1 tonearest ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= j1 towardzero ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= j1 upward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= j1 downward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c345238216cp-68L : inexact-ok
+= j1 tonearest ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 towardzero ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 upward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= j1 downward dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= j1 tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= j1 towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= j1 upward dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436acc8p-516 : inexact-ok
+= j1 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= j1 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= j1 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= j1 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= j1 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= j1 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= j1 downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= j1 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa5p-516L : inexact-ok
+= j1 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= j1 upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa5p-516L : inexact-ok
+= j1 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5f8p-516L : inexact-ok
+= j1 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fcp-516L : inexact-ok
+= j1 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5f8p-516L : inexact-ok
+= j1 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fcp-516L : inexact-ok
+= j1 downward ldbl-96-intel 0x8p+16380L : -0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= j1 tonearest ldbl-96-intel 0x8p+16380L : -0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= j1 towardzero ldbl-96-intel 0x8p+16380L : -0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= j1 upward ldbl-96-intel 0x8p+16380L : -0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= j1 downward ldbl-96-m68k 0x8p+16380L : -0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= j1 tonearest ldbl-96-m68k 0x8p+16380L : -0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= j1 towardzero ldbl-96-m68k 0x8p+16380L : -0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= j1 upward ldbl-96-m68k 0x8p+16380L : -0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= j1 downward ldbl-128 0x8p+16380L : -0x6.c9bcc4d4937a306ec1ef5722901p-8196L : inexact-ok
+= j1 tonearest ldbl-128 0x8p+16380L : -0x6.c9bcc4d4937a306ec1ef5722901p-8196L : inexact-ok
+= j1 towardzero ldbl-128 0x8p+16380L : -0x6.c9bcc4d4937a306ec1ef5722900cp-8196L : inexact-ok
+= j1 upward ldbl-128 0x8p+16380L : -0x6.c9bcc4d4937a306ec1ef5722900cp-8196L : inexact-ok
+= j1 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= j1 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= j1 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0250cp-516L : inexact-ok
+= j1 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0250cp-516L : inexact-ok
+= j1 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
+= j1 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
+= j1 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+= j1 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+jn 0 -1.0
+= jn downward flt-32 0 -0x1p+0f : 0xc.3e3fep-4f : inexact-ok
+= jn tonearest flt-32 0 -0x1p+0f : 0xc.3e3ffp-4f : inexact-ok
+= jn towardzero flt-32 0 -0x1p+0f : 0xc.3e3fep-4f : inexact-ok
+= jn upward flt-32 0 -0x1p+0f : 0xc.3e3ffp-4f : inexact-ok
+= jn downward dbl-64 0 -0x1p+0 : 0xc.3e3fedebdc778p-4 : inexact-ok
+= jn tonearest dbl-64 0 -0x1p+0 : 0xc.3e3fedebdc78p-4 : inexact-ok
+= jn towardzero dbl-64 0 -0x1p+0 : 0xc.3e3fedebdc778p-4 : inexact-ok
+= jn upward dbl-64 0 -0x1p+0 : 0xc.3e3fedebdc78p-4 : inexact-ok
+= jn downward ldbl-96-intel 0 -0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= jn tonearest ldbl-96-intel 0 -0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 0 -0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= jn upward ldbl-96-intel 0 -0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= jn downward ldbl-96-m68k 0 -0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 -0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 -0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= jn upward ldbl-96-m68k 0 -0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= jn downward ldbl-128 0 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a6p-4L : inexact-ok
+= jn tonearest ldbl-128 0 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a68p-4L : inexact-ok
+= jn towardzero ldbl-128 0 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a6p-4L : inexact-ok
+= jn upward ldbl-128 0 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a68p-4L : inexact-ok
+= jn downward ldbl-128ibm 0 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a98611598p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 0 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159cp-4L : inexact-ok
+= jn towardzero ldbl-128ibm 0 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a98611598p-4L : inexact-ok
+= jn upward ldbl-128ibm 0 -0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159cp-4L : inexact-ok
+jn 0 0.0
+= jn downward flt-32 0 0x0p+0f : 0x1p+0f : inexact-ok
+= jn tonearest flt-32 0 0x0p+0f : 0x1p+0f : inexact-ok
+= jn towardzero flt-32 0 0x0p+0f : 0x1p+0f : inexact-ok
+= jn upward flt-32 0 0x0p+0f : 0x1p+0f : inexact-ok
+= jn downward dbl-64 0 0x0p+0 : 0x1p+0 : inexact-ok
+= jn tonearest dbl-64 0 0x0p+0 : 0x1p+0 : inexact-ok
+= jn towardzero dbl-64 0 0x0p+0 : 0x1p+0 : inexact-ok
+= jn upward dbl-64 0 0x0p+0 : 0x1p+0 : inexact-ok
+= jn downward ldbl-96-intel 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn tonearest ldbl-96-intel 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn towardzero ldbl-96-intel 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn upward ldbl-96-intel 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn downward ldbl-96-m68k 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn upward ldbl-96-m68k 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn downward ldbl-128 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn tonearest ldbl-128 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn towardzero ldbl-128 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn upward ldbl-128 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn downward ldbl-128ibm 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn tonearest ldbl-128ibm 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn towardzero ldbl-128ibm 0 0x0p+0L : 0x1p+0L : inexact-ok
+= jn upward ldbl-128ibm 0 0x0p+0L : 0x1p+0L : inexact-ok
+jn 0 0.125
+= jn downward flt-32 0 0x2p-4f : 0xf.f003fp-4f : inexact-ok
+= jn tonearest flt-32 0 0x2p-4f : 0xf.f004p-4f : inexact-ok
+= jn towardzero flt-32 0 0x2p-4f : 0xf.f003fp-4f : inexact-ok
+= jn upward flt-32 0 0x2p-4f : 0xf.f004p-4f : inexact-ok
+= jn downward dbl-64 0 0x2p-4 : 0xf.f003ff8e3fff8p-4 : inexact-ok
+= jn tonearest dbl-64 0 0x2p-4 : 0xf.f003ff8e3fff8p-4 : inexact-ok
+= jn towardzero dbl-64 0 0x2p-4 : 0xf.f003ff8e3fff8p-4 : inexact-ok
+= jn upward dbl-64 0 0x2p-4 : 0xf.f003ff8e4p-4 : inexact-ok
+= jn downward ldbl-96-intel 0 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 0 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 0 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= jn upward ldbl-96-intel 0 0x2p-4L : 0xf.f003ff8e3fffb74p-4L : inexact-ok
+= jn downward ldbl-96-m68k 0 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 0x2p-4L : 0xf.f003ff8e3fffb73p-4L : inexact-ok
+= jn upward ldbl-96-m68k 0 0x2p-4L : 0xf.f003ff8e3fffb74p-4L : inexact-ok
+= jn downward ldbl-128 0 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5da78p-4L : inexact-ok
+= jn tonearest ldbl-128 0 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5da78p-4L : inexact-ok
+= jn towardzero ldbl-128 0 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5da78p-4L : inexact-ok
+= jn upward ldbl-128 0 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5da8p-4L : inexact-ok
+= jn downward ldbl-128ibm 0 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5d8p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 0 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5dcp-4L : inexact-ok
+= jn towardzero ldbl-128ibm 0 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5d8p-4L : inexact-ok
+= jn upward ldbl-128ibm 0 0x2p-4L : 0xf.f003ff8e3fffb730abe3bbf5dcp-4L : inexact-ok
+jn 0 0.75
+= jn downward flt-32 0 0xcp-4f : 0xd.d3efbp-4f : inexact-ok
+= jn tonearest flt-32 0 0xcp-4f : 0xd.d3efbp-4f : inexact-ok
+= jn towardzero flt-32 0 0xcp-4f : 0xd.d3efbp-4f : inexact-ok
+= jn upward flt-32 0 0xcp-4f : 0xd.d3efcp-4f : inexact-ok
+= jn downward dbl-64 0 0xcp-4 : 0xd.d3efb53a950cp-4 : inexact-ok
+= jn tonearest dbl-64 0 0xcp-4 : 0xd.d3efb53a950c8p-4 : inexact-ok
+= jn towardzero dbl-64 0 0xcp-4 : 0xd.d3efb53a950cp-4 : inexact-ok
+= jn upward dbl-64 0 0xcp-4 : 0xd.d3efb53a950c8p-4 : inexact-ok
+= jn downward ldbl-96-intel 0 0xcp-4L : 0xd.d3efb53a950c68ep-4L : inexact-ok
+= jn tonearest ldbl-96-intel 0 0xcp-4L : 0xd.d3efb53a950c68fp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 0 0xcp-4L : 0xd.d3efb53a950c68ep-4L : inexact-ok
+= jn upward ldbl-96-intel 0 0xcp-4L : 0xd.d3efb53a950c68fp-4L : inexact-ok
+= jn downward ldbl-96-m68k 0 0xcp-4L : 0xd.d3efb53a950c68ep-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 0xcp-4L : 0xd.d3efb53a950c68fp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 0xcp-4L : 0xd.d3efb53a950c68ep-4L : inexact-ok
+= jn upward ldbl-96-m68k 0 0xcp-4L : 0xd.d3efb53a950c68fp-4L : inexact-ok
+= jn downward ldbl-128 0 0xcp-4L : 0xd.d3efb53a950c68ecf70068c9937p-4L : inexact-ok
+= jn tonearest ldbl-128 0 0xcp-4L : 0xd.d3efb53a950c68ecf70068c9937p-4L : inexact-ok
+= jn towardzero ldbl-128 0 0xcp-4L : 0xd.d3efb53a950c68ecf70068c9937p-4L : inexact-ok
+= jn upward ldbl-128 0 0xcp-4L : 0xd.d3efb53a950c68ecf70068c99378p-4L : inexact-ok
+= jn downward ldbl-128ibm 0 0xcp-4L : 0xd.d3efb53a950c68ecf70068c99p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 0 0xcp-4L : 0xd.d3efb53a950c68ecf70068c994p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 0 0xcp-4L : 0xd.d3efb53a950c68ecf70068c99p-4L : inexact-ok
+= jn upward ldbl-128ibm 0 0xcp-4L : 0xd.d3efb53a950c68ecf70068c994p-4L : inexact-ok
+jn 0 1.0
+= jn downward flt-32 0 0x1p+0f : 0xc.3e3fep-4f : inexact-ok
+= jn tonearest flt-32 0 0x1p+0f : 0xc.3e3ffp-4f : inexact-ok
+= jn towardzero flt-32 0 0x1p+0f : 0xc.3e3fep-4f : inexact-ok
+= jn upward flt-32 0 0x1p+0f : 0xc.3e3ffp-4f : inexact-ok
+= jn downward dbl-64 0 0x1p+0 : 0xc.3e3fedebdc778p-4 : inexact-ok
+= jn tonearest dbl-64 0 0x1p+0 : 0xc.3e3fedebdc78p-4 : inexact-ok
+= jn towardzero dbl-64 0 0x1p+0 : 0xc.3e3fedebdc778p-4 : inexact-ok
+= jn upward dbl-64 0 0x1p+0 : 0xc.3e3fedebdc78p-4 : inexact-ok
+= jn downward ldbl-96-intel 0 0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= jn tonearest ldbl-96-intel 0 0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 0 0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= jn upward ldbl-96-intel 0 0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= jn downward ldbl-96-m68k 0 0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 0x1p+0L : 0xc.3e3fedebdc77c1cp-4L : inexact-ok
+= jn upward ldbl-96-m68k 0 0x1p+0L : 0xc.3e3fedebdc77c1dp-4L : inexact-ok
+= jn downward ldbl-128 0 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a6p-4L : inexact-ok
+= jn tonearest ldbl-128 0 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a68p-4L : inexact-ok
+= jn towardzero ldbl-128 0 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a6p-4L : inexact-ok
+= jn upward ldbl-128 0 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159a68p-4L : inexact-ok
+= jn downward ldbl-128ibm 0 0x1p+0L : 0xc.3e3fedebdc77c1cf1a98611598p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 0 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159cp-4L : inexact-ok
+= jn towardzero ldbl-128ibm 0 0x1p+0L : 0xc.3e3fedebdc77c1cf1a98611598p-4L : inexact-ok
+= jn upward ldbl-128ibm 0 0x1p+0L : 0xc.3e3fedebdc77c1cf1a9861159cp-4L : inexact-ok
+jn 0 1.5
+= jn downward flt-32 0 0x1.8p+0f : 0x8.30723p-4f : inexact-ok
+= jn tonearest flt-32 0 0x1.8p+0f : 0x8.30723p-4f : inexact-ok
+= jn towardzero flt-32 0 0x1.8p+0f : 0x8.30723p-4f : inexact-ok
+= jn upward flt-32 0 0x1.8p+0f : 0x8.30724p-4f : inexact-ok
+= jn downward dbl-64 0 0x1.8p+0 : 0x8.30723674b28dp-4 : inexact-ok
+= jn tonearest dbl-64 0 0x1.8p+0 : 0x8.30723674b28d8p-4 : inexact-ok
+= jn towardzero dbl-64 0 0x1.8p+0 : 0x8.30723674b28dp-4 : inexact-ok
+= jn upward dbl-64 0 0x1.8p+0 : 0x8.30723674b28d8p-4 : inexact-ok
+= jn downward ldbl-96-intel 0 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= jn tonearest ldbl-96-intel 0 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= jn towardzero ldbl-96-intel 0 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= jn upward ldbl-96-intel 0 0x1.8p+0L : 0x8.30723674b28d6ebp-4L : inexact-ok
+= jn downward ldbl-96-m68k 0 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 0x1.8p+0L : 0x8.30723674b28d6eap-4L : inexact-ok
+= jn upward ldbl-96-m68k 0 0x1.8p+0L : 0x8.30723674b28d6ebp-4L : inexact-ok
+= jn downward ldbl-128 0 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b748p-4L : inexact-ok
+= jn tonearest ldbl-128 0 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b75p-4L : inexact-ok
+= jn towardzero ldbl-128 0 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b748p-4L : inexact-ok
+= jn upward ldbl-128 0 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b75p-4L : inexact-ok
+= jn downward ldbl-128ibm 0 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b4p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 0 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b8p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 0 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b4p-4L : inexact-ok
+= jn upward ldbl-128ibm 0 0x1.8p+0L : 0x8.30723674b28d6ea4efdbfbb4b8p-4L : inexact-ok
+jn 0 2.0
+= jn downward flt-32 0 0x2p+0f : 0x3.950e7cp-4f : inexact-ok
+= jn tonearest flt-32 0 0x2p+0f : 0x3.950e8p-4f : inexact-ok
+= jn towardzero flt-32 0 0x2p+0f : 0x3.950e7cp-4f : inexact-ok
+= jn upward flt-32 0 0x2p+0f : 0x3.950e8p-4f : inexact-ok
+= jn downward dbl-64 0 0x2p+0 : 0x3.950e7f6499deep-4 : inexact-ok
+= jn tonearest dbl-64 0 0x2p+0 : 0x3.950e7f6499dfp-4 : inexact-ok
+= jn towardzero dbl-64 0 0x2p+0 : 0x3.950e7f6499deep-4 : inexact-ok
+= jn upward dbl-64 0 0x2p+0 : 0x3.950e7f6499dfp-4 : inexact-ok
+= jn downward ldbl-96-intel 0 0x2p+0L : 0x3.950e7f6499def918p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 0 0x2p+0L : 0x3.950e7f6499def91cp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 0 0x2p+0L : 0x3.950e7f6499def918p-4L : inexact-ok
+= jn upward ldbl-96-intel 0 0x2p+0L : 0x3.950e7f6499def91cp-4L : inexact-ok
+= jn downward ldbl-96-m68k 0 0x2p+0L : 0x3.950e7f6499def918p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 0x2p+0L : 0x3.950e7f6499def91cp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 0x2p+0L : 0x3.950e7f6499def918p-4L : inexact-ok
+= jn upward ldbl-96-m68k 0 0x2p+0L : 0x3.950e7f6499def91cp-4L : inexact-ok
+= jn downward ldbl-128 0 0x2p+0L : 0x3.950e7f6499def91adac0afbc5d8cp-4L : inexact-ok
+= jn tonearest ldbl-128 0 0x2p+0L : 0x3.950e7f6499def91adac0afbc5d8cp-4L : inexact-ok
+= jn towardzero ldbl-128 0 0x2p+0L : 0x3.950e7f6499def91adac0afbc5d8cp-4L : inexact-ok
+= jn upward ldbl-128 0 0x2p+0L : 0x3.950e7f6499def91adac0afbc5d8ep-4L : inexact-ok
+= jn downward ldbl-128ibm 0 0x2p+0L : 0x3.950e7f6499def91adac0afbc5dp-4L : inexact-ok
+= jn tonearest ldbl-128ibm 0 0x2p+0L : 0x3.950e7f6499def91adac0afbc5ep-4L : inexact-ok
+= jn towardzero ldbl-128ibm 0 0x2p+0L : 0x3.950e7f6499def91adac0afbc5dp-4L : inexact-ok
+= jn upward ldbl-128ibm 0 0x2p+0L : 0x3.950e7f6499def91adac0afbc5ep-4L : inexact-ok
+jn 0 8.0
+= jn downward flt-32 0 0x8p+0f : 0x2.bf14e8p-4f : inexact-ok
+= jn tonearest flt-32 0 0x8p+0f : 0x2.bf14ecp-4f : inexact-ok
+= jn towardzero flt-32 0 0x8p+0f : 0x2.bf14e8p-4f : inexact-ok
+= jn upward flt-32 0 0x8p+0f : 0x2.bf14ecp-4f : inexact-ok
+= jn downward dbl-64 0 0x8p+0 : 0x2.bf14eaafce04ap-4 : inexact-ok
+= jn tonearest dbl-64 0 0x8p+0 : 0x2.bf14eaafce04ap-4 : inexact-ok
+= jn towardzero dbl-64 0 0x8p+0 : 0x2.bf14eaafce04ap-4 : inexact-ok
+= jn upward dbl-64 0 0x8p+0 : 0x2.bf14eaafce04cp-4 : inexact-ok
+= jn downward ldbl-96-intel 0 0x8p+0L : 0x2.bf14eaafce04a584p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 0 0x8p+0L : 0x2.bf14eaafce04a588p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 0 0x8p+0L : 0x2.bf14eaafce04a584p-4L : inexact-ok
+= jn upward ldbl-96-intel 0 0x8p+0L : 0x2.bf14eaafce04a588p-4L : inexact-ok
+= jn downward ldbl-96-m68k 0 0x8p+0L : 0x2.bf14eaafce04a584p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 0x8p+0L : 0x2.bf14eaafce04a588p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 0x8p+0L : 0x2.bf14eaafce04a584p-4L : inexact-ok
+= jn upward ldbl-96-m68k 0 0x8p+0L : 0x2.bf14eaafce04a588p-4L : inexact-ok
+= jn downward ldbl-128 0 0x8p+0L : 0x2.bf14eaafce04a587ded211e82082p-4L : inexact-ok
+= jn tonearest ldbl-128 0 0x8p+0L : 0x2.bf14eaafce04a587ded211e82084p-4L : inexact-ok
+= jn towardzero ldbl-128 0 0x8p+0L : 0x2.bf14eaafce04a587ded211e82082p-4L : inexact-ok
+= jn upward ldbl-128 0 0x8p+0L : 0x2.bf14eaafce04a587ded211e82084p-4L : inexact-ok
+= jn downward ldbl-128ibm 0 0x8p+0L : 0x2.bf14eaafce04a587ded211e82p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 0 0x8p+0L : 0x2.bf14eaafce04a587ded211e821p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 0 0x8p+0L : 0x2.bf14eaafce04a587ded211e82p-4L : inexact-ok
+= jn upward ldbl-128ibm 0 0x8p+0L : 0x2.bf14eaafce04a587ded211e821p-4L : inexact-ok
+jn 0 10.0
+= jn downward flt-32 0 0xap+0f : -0x3.ef5a58p-4f : inexact-ok
+= jn tonearest flt-32 0 0xap+0f : -0x3.ef5a58p-4f : inexact-ok
+= jn towardzero flt-32 0 0xap+0f : -0x3.ef5a54p-4f : inexact-ok
+= jn upward flt-32 0 0xap+0f : -0x3.ef5a54p-4f : inexact-ok
+= jn downward dbl-64 0 0xap+0 : -0x3.ef5a5713c3ca8p-4 : inexact-ok
+= jn tonearest dbl-64 0 0xap+0 : -0x3.ef5a5713c3ca8p-4 : inexact-ok
+= jn towardzero dbl-64 0 0xap+0 : -0x3.ef5a5713c3ca6p-4 : inexact-ok
+= jn upward dbl-64 0 0xap+0 : -0x3.ef5a5713c3ca6p-4 : inexact-ok
+= jn downward ldbl-96-intel 0 0xap+0L : -0x3.ef5a5713c3ca7068p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 0 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 0 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= jn upward ldbl-96-intel 0 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= jn downward ldbl-96-m68k 0 0xap+0L : -0x3.ef5a5713c3ca7068p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= jn upward ldbl-96-m68k 0 0xap+0L : -0x3.ef5a5713c3ca7064p-4L : inexact-ok
+= jn downward ldbl-128 0 0xap+0L : -0x3.ef5a5713c3ca70644304d7022886p-4L : inexact-ok
+= jn tonearest ldbl-128 0 0xap+0L : -0x3.ef5a5713c3ca70644304d7022886p-4L : inexact-ok
+= jn towardzero ldbl-128 0 0xap+0L : -0x3.ef5a5713c3ca70644304d7022884p-4L : inexact-ok
+= jn upward ldbl-128 0 0xap+0L : -0x3.ef5a5713c3ca70644304d7022884p-4L : inexact-ok
+= jn downward ldbl-128ibm 0 0xap+0L : -0x3.ef5a5713c3ca70644304d70229p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 0 0xap+0L : -0x3.ef5a5713c3ca70644304d70229p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 0 0xap+0L : -0x3.ef5a5713c3ca70644304d70228p-4L : inexact-ok
+= jn upward ldbl-128ibm 0 0xap+0L : -0x3.ef5a5713c3ca70644304d70228p-4L : inexact-ok
+jn 0 4.0
+= jn downward flt-32 0 0x4p+0f : -0x6.5ab9c8p-4f : inexact-ok
+= jn tonearest flt-32 0 0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= jn towardzero flt-32 0 0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= jn upward flt-32 0 0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= jn downward dbl-64 0 0x4p+0 : -0x6.5ab9c24fa53e8p-4 : inexact-ok
+= jn tonearest dbl-64 0 0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= jn towardzero dbl-64 0 0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= jn upward dbl-64 0 0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= jn downward ldbl-96-intel 0 0x4p+0L : -0x6.5ab9c24fa53e5cd8p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 0 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 0 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn upward ldbl-96-intel 0 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn downward ldbl-96-m68k 0 0x4p+0L : -0x6.5ab9c24fa53e5cd8p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn upward ldbl-96-m68k 0 0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn downward ldbl-128 0 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d9cp-4L : inexact-ok
+= jn tonearest ldbl-128 0 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= jn towardzero ldbl-128 0 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= jn upward ldbl-128 0 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= jn downward ldbl-128ibm 0 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87ep-4L : inexact-ok
+= jn tonearest ldbl-128ibm 0 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87ep-4L : inexact-ok
+= jn towardzero ldbl-128ibm 0 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87cp-4L : inexact-ok
+= jn upward ldbl-128ibm 0 0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87cp-4L : inexact-ok
+jn 0 -4.0
+= jn downward flt-32 0 -0x4p+0f : -0x6.5ab9c8p-4f : inexact-ok
+= jn tonearest flt-32 0 -0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= jn towardzero flt-32 0 -0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= jn upward flt-32 0 -0x4p+0f : -0x6.5ab9cp-4f : inexact-ok
+= jn downward dbl-64 0 -0x4p+0 : -0x6.5ab9c24fa53e8p-4 : inexact-ok
+= jn tonearest dbl-64 0 -0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= jn towardzero dbl-64 0 -0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= jn upward dbl-64 0 -0x4p+0 : -0x6.5ab9c24fa53e4p-4 : inexact-ok
+= jn downward ldbl-96-intel 0 -0x4p+0L : -0x6.5ab9c24fa53e5cd8p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 0 -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 0 -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn upward ldbl-96-intel 0 -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn downward ldbl-96-m68k 0 -0x4p+0L : -0x6.5ab9c24fa53e5cd8p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 0 -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 0 -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn upward ldbl-96-m68k 0 -0x4p+0L : -0x6.5ab9c24fa53e5cdp-4L : inexact-ok
+= jn downward ldbl-128 0 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d9cp-4L : inexact-ok
+= jn tonearest ldbl-128 0 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= jn towardzero ldbl-128 0 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= jn upward ldbl-128 0 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87d98p-4L : inexact-ok
+= jn downward ldbl-128ibm 0 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87ep-4L : inexact-ok
+= jn tonearest ldbl-128ibm 0 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87ep-4L : inexact-ok
+= jn towardzero ldbl-128ibm 0 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87cp-4L : inexact-ok
+= jn upward ldbl-128ibm 0 -0x4p+0L : -0x6.5ab9c24fa53e5cd1657dfde87cp-4L : inexact-ok
+jn 1 -1.0
+= jn downward flt-32 1 -0x1p+0f : -0x7.0a728p-4f : inexact-ok
+= jn tonearest flt-32 1 -0x1p+0f : -0x7.0a7278p-4f : inexact-ok
+= jn towardzero flt-32 1 -0x1p+0f : -0x7.0a7278p-4f : inexact-ok
+= jn upward flt-32 1 -0x1p+0f : -0x7.0a7278p-4f : inexact-ok
+= jn downward dbl-64 1 -0x1p+0 : -0x7.0a727ba5c31b4p-4 : inexact-ok
+= jn tonearest dbl-64 1 -0x1p+0 : -0x7.0a727ba5c31bp-4 : inexact-ok
+= jn towardzero dbl-64 1 -0x1p+0 : -0x7.0a727ba5c31bp-4 : inexact-ok
+= jn upward dbl-64 1 -0x1p+0 : -0x7.0a727ba5c31bp-4 : inexact-ok
+= jn downward ldbl-96-intel 1 -0x1p+0L : -0x7.0a727ba5c31b14ep-4L : inexact-ok
+= jn tonearest ldbl-96-intel 1 -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 1 -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn upward ldbl-96-intel 1 -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn downward ldbl-96-m68k 1 -0x1p+0L : -0x7.0a727ba5c31b14ep-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn upward ldbl-96-m68k 1 -0x1p+0L : -0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn downward ldbl-128 1 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e340190074p-4L : inexact-ok
+= jn tonearest ldbl-128 1 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019007p-4L : inexact-ok
+= jn towardzero ldbl-128 1 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019007p-4L : inexact-ok
+= jn upward ldbl-128 1 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019007p-4L : inexact-ok
+= jn downward ldbl-128ibm 1 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e3401902p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 1 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 1 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+= jn upward ldbl-128ibm 1 -0x1p+0L : -0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+jn 1 0.0
+= jn downward flt-32 1 0x0p+0f : 0x0p+0f : inexact-ok
+= jn tonearest flt-32 1 0x0p+0f : 0x0p+0f : inexact-ok
+= jn towardzero flt-32 1 0x0p+0f : 0x0p+0f : inexact-ok
+= jn upward flt-32 1 0x0p+0f : 0x0p+0f : inexact-ok
+= jn downward dbl-64 1 0x0p+0 : 0x0p+0 : inexact-ok
+= jn tonearest dbl-64 1 0x0p+0 : 0x0p+0 : inexact-ok
+= jn towardzero dbl-64 1 0x0p+0 : 0x0p+0 : inexact-ok
+= jn upward dbl-64 1 0x0p+0 : 0x0p+0 : inexact-ok
+= jn downward ldbl-96-intel 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-96-intel 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn downward ldbl-128 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-128 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-128 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-128 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn downward ldbl-128ibm 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-128ibm 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-128ibm 1 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-128ibm 1 0x0p+0L : 0x0p+0L : inexact-ok
+jn 1 0.125
+= jn downward flt-32 1 0x2p-4f : 0xf.f8015p-8f : inexact-ok
+= jn tonearest flt-32 1 0x2p-4f : 0xf.f8015p-8f : inexact-ok
+= jn towardzero flt-32 1 0x2p-4f : 0xf.f8015p-8f : inexact-ok
+= jn upward flt-32 1 0x2p-4f : 0xf.f8016p-8f : inexact-ok
+= jn downward dbl-64 1 0x2p-4 : 0xf.f8015538e4fap-8 : inexact-ok
+= jn tonearest dbl-64 1 0x2p-4 : 0xf.f8015538e4fa8p-8 : inexact-ok
+= jn towardzero dbl-64 1 0x2p-4 : 0xf.f8015538e4fap-8 : inexact-ok
+= jn upward dbl-64 1 0x2p-4 : 0xf.f8015538e4fa8p-8 : inexact-ok
+= jn downward ldbl-96-intel 1 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= jn upward ldbl-96-intel 1 0x2p-4L : 0xf.f8015538e4fa439p-8L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x2p-4L : 0xf.f8015538e4fa438p-8L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x2p-4L : 0xf.f8015538e4fa439p-8L : inexact-ok
+= jn downward ldbl-128 1 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0bdp-8L : inexact-ok
+= jn tonearest ldbl-128 1 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0bdp-8L : inexact-ok
+= jn towardzero ldbl-128 1 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0bdp-8L : inexact-ok
+= jn upward ldbl-128 1 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0bd8p-8L : inexact-ok
+= jn downward ldbl-128ibm 1 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a08p-8L : inexact-ok
+= jn tonearest ldbl-128ibm 1 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0cp-8L : inexact-ok
+= jn towardzero ldbl-128ibm 1 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a08p-8L : inexact-ok
+= jn upward ldbl-128ibm 1 0x2p-4L : 0xf.f8015538e4fa43825ff72a8a0cp-8L : inexact-ok
+jn 1 0.75
+= jn downward flt-32 1 0xcp-4f : 0x5.96807p-4f : inexact-ok
+= jn tonearest flt-32 1 0xcp-4f : 0x5.968078p-4f : inexact-ok
+= jn towardzero flt-32 1 0xcp-4f : 0x5.96807p-4f : inexact-ok
+= jn upward flt-32 1 0xcp-4f : 0x5.968078p-4f : inexact-ok
+= jn downward dbl-64 1 0xcp-4 : 0x5.9680759ada2fp-4 : inexact-ok
+= jn tonearest dbl-64 1 0xcp-4 : 0x5.9680759ada2fp-4 : inexact-ok
+= jn towardzero dbl-64 1 0xcp-4 : 0x5.9680759ada2fp-4 : inexact-ok
+= jn upward dbl-64 1 0xcp-4 : 0x5.9680759ada2f4p-4 : inexact-ok
+= jn downward ldbl-96-intel 1 0xcp-4L : 0x5.9680759ada2f1dd8p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0xcp-4L : 0x5.9680759ada2f1dep-4L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0xcp-4L : 0x5.9680759ada2f1dd8p-4L : inexact-ok
+= jn upward ldbl-96-intel 1 0xcp-4L : 0x5.9680759ada2f1dep-4L : inexact-ok
+= jn downward ldbl-96-m68k 1 0xcp-4L : 0x5.9680759ada2f1dd8p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0xcp-4L : 0x5.9680759ada2f1dep-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0xcp-4L : 0x5.9680759ada2f1dd8p-4L : inexact-ok
+= jn upward ldbl-96-m68k 1 0xcp-4L : 0x5.9680759ada2f1dep-4L : inexact-ok
+= jn downward ldbl-128 1 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bcc0cp-4L : inexact-ok
+= jn tonearest ldbl-128 1 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bcc0cp-4L : inexact-ok
+= jn towardzero ldbl-128 1 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bcc0cp-4L : inexact-ok
+= jn upward ldbl-128 1 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bcc1p-4L : inexact-ok
+= jn downward ldbl-128ibm 1 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bccp-4L : inexact-ok
+= jn tonearest ldbl-128ibm 1 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bccp-4L : inexact-ok
+= jn towardzero ldbl-128ibm 1 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bccp-4L : inexact-ok
+= jn upward ldbl-128ibm 1 0xcp-4L : 0x5.9680759ada2f1ddd24ac845bcep-4L : inexact-ok
+jn 1 1.0
+= jn downward flt-32 1 0x1p+0f : 0x7.0a7278p-4f : inexact-ok
+= jn tonearest flt-32 1 0x1p+0f : 0x7.0a7278p-4f : inexact-ok
+= jn towardzero flt-32 1 0x1p+0f : 0x7.0a7278p-4f : inexact-ok
+= jn upward flt-32 1 0x1p+0f : 0x7.0a728p-4f : inexact-ok
+= jn downward dbl-64 1 0x1p+0 : 0x7.0a727ba5c31bp-4 : inexact-ok
+= jn tonearest dbl-64 1 0x1p+0 : 0x7.0a727ba5c31bp-4 : inexact-ok
+= jn towardzero dbl-64 1 0x1p+0 : 0x7.0a727ba5c31bp-4 : inexact-ok
+= jn upward dbl-64 1 0x1p+0 : 0x7.0a727ba5c31b4p-4 : inexact-ok
+= jn downward ldbl-96-intel 1 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn upward ldbl-96-intel 1 0x1p+0L : 0x7.0a727ba5c31b14ep-4L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x1p+0L : 0x7.0a727ba5c31b14d8p-4L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x1p+0L : 0x7.0a727ba5c31b14ep-4L : inexact-ok
+= jn downward ldbl-128 1 0x1p+0L : 0x7.0a727ba5c31b14d8b9e34019007p-4L : inexact-ok
+= jn tonearest ldbl-128 1 0x1p+0L : 0x7.0a727ba5c31b14d8b9e340190074p-4L : inexact-ok
+= jn towardzero ldbl-128 1 0x1p+0L : 0x7.0a727ba5c31b14d8b9e34019007p-4L : inexact-ok
+= jn upward ldbl-128 1 0x1p+0L : 0x7.0a727ba5c31b14d8b9e340190074p-4L : inexact-ok
+= jn downward ldbl-128ibm 1 0x1p+0L : 0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 1 0x1p+0L : 0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 1 0x1p+0L : 0x7.0a727ba5c31b14d8b9e34019p-4L : inexact-ok
+= jn upward ldbl-128ibm 1 0x1p+0L : 0x7.0a727ba5c31b14d8b9e3401902p-4L : inexact-ok
+jn 1 1.5
+= jn downward flt-32 1 0x1.8p+0f : 0x8.ed4edp-4f : inexact-ok
+= jn tonearest flt-32 1 0x1.8p+0f : 0x8.ed4edp-4f : inexact-ok
+= jn towardzero flt-32 1 0x1.8p+0f : 0x8.ed4edp-4f : inexact-ok
+= jn upward flt-32 1 0x1.8p+0f : 0x8.ed4eep-4f : inexact-ok
+= jn downward dbl-64 1 0x1.8p+0 : 0x8.ed4ed4eb7e408p-4 : inexact-ok
+= jn tonearest dbl-64 1 0x1.8p+0 : 0x8.ed4ed4eb7e408p-4 : inexact-ok
+= jn towardzero dbl-64 1 0x1.8p+0 : 0x8.ed4ed4eb7e408p-4 : inexact-ok
+= jn upward dbl-64 1 0x1.8p+0 : 0x8.ed4ed4eb7e41p-4 : inexact-ok
+= jn downward ldbl-96-intel 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aap-4L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x1.8p+0L : 0x8.ed4ed4eb7e408abp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aap-4L : inexact-ok
+= jn upward ldbl-96-intel 1 0x1.8p+0L : 0x8.ed4ed4eb7e408abp-4L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aap-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x1.8p+0L : 0x8.ed4ed4eb7e408abp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aap-4L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x1.8p+0L : 0x8.ed4ed4eb7e408abp-4L : inexact-ok
+= jn downward ldbl-128 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a07549300b8p-4L : inexact-ok
+= jn tonearest ldbl-128 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a07549300cp-4L : inexact-ok
+= jn towardzero ldbl-128 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a07549300b8p-4L : inexact-ok
+= jn upward ldbl-128 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a07549300cp-4L : inexact-ok
+= jn downward ldbl-128ibm 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a075493p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a075493p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a075493p-4L : inexact-ok
+= jn upward ldbl-128ibm 1 0x1.8p+0L : 0x8.ed4ed4eb7e408aa88a07549304p-4L : inexact-ok
+jn 1 2.0
+= jn downward flt-32 1 0x2p+0f : 0x9.3a43cp-4f : inexact-ok
+= jn tonearest flt-32 1 0x2p+0f : 0x9.3a43dp-4f : inexact-ok
+= jn towardzero flt-32 1 0x2p+0f : 0x9.3a43cp-4f : inexact-ok
+= jn upward flt-32 1 0x2p+0f : 0x9.3a43dp-4f : inexact-ok
+= jn downward dbl-64 1 0x2p+0 : 0x9.3a43cac1b8f78p-4 : inexact-ok
+= jn tonearest dbl-64 1 0x2p+0 : 0x9.3a43cac1b8f8p-4 : inexact-ok
+= jn towardzero dbl-64 1 0x2p+0 : 0x9.3a43cac1b8f78p-4 : inexact-ok
+= jn upward dbl-64 1 0x2p+0 : 0x9.3a43cac1b8f8p-4 : inexact-ok
+= jn downward ldbl-96-intel 1 0x2p+0L : 0x9.3a43cac1b8f7ed7p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x2p+0L : 0x9.3a43cac1b8f7ed8p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x2p+0L : 0x9.3a43cac1b8f7ed7p-4L : inexact-ok
+= jn upward ldbl-96-intel 1 0x2p+0L : 0x9.3a43cac1b8f7ed8p-4L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x2p+0L : 0x9.3a43cac1b8f7ed7p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x2p+0L : 0x9.3a43cac1b8f7ed8p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x2p+0L : 0x9.3a43cac1b8f7ed7p-4L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x2p+0L : 0x9.3a43cac1b8f7ed8p-4L : inexact-ok
+= jn downward ldbl-128 1 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282b5p-4L : inexact-ok
+= jn tonearest ldbl-128 1 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282b5p-4L : inexact-ok
+= jn towardzero ldbl-128 1 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282b5p-4L : inexact-ok
+= jn upward ldbl-128 1 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282b58p-4L : inexact-ok
+= jn downward ldbl-128ibm 1 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f2828p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 1 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282cp-4L : inexact-ok
+= jn towardzero ldbl-128ibm 1 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f2828p-4L : inexact-ok
+= jn upward ldbl-128ibm 1 0x2p+0L : 0x9.3a43cac1b8f7ed7b828f5f282cp-4L : inexact-ok
+jn 1 8.0
+= jn downward flt-32 1 0x8p+0f : 0x3.c11208p-4f : inexact-ok
+= jn tonearest flt-32 1 0x8p+0f : 0x3.c1120cp-4f : inexact-ok
+= jn towardzero flt-32 1 0x8p+0f : 0x3.c11208p-4f : inexact-ok
+= jn upward flt-32 1 0x8p+0f : 0x3.c1120cp-4f : inexact-ok
+= jn downward dbl-64 1 0x8p+0 : 0x3.c1120ac30c304p-4 : inexact-ok
+= jn tonearest dbl-64 1 0x8p+0 : 0x3.c1120ac30c306p-4 : inexact-ok
+= jn towardzero dbl-64 1 0x8p+0 : 0x3.c1120ac30c304p-4 : inexact-ok
+= jn upward dbl-64 1 0x8p+0 : 0x3.c1120ac30c306p-4 : inexact-ok
+= jn downward ldbl-96-intel 1 0x8p+0L : 0x3.c1120ac30c305a9p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0x8p+0L : 0x3.c1120ac30c305a94p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0x8p+0L : 0x3.c1120ac30c305a9p-4L : inexact-ok
+= jn upward ldbl-96-intel 1 0x8p+0L : 0x3.c1120ac30c305a94p-4L : inexact-ok
+= jn downward ldbl-96-m68k 1 0x8p+0L : 0x3.c1120ac30c305a9p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0x8p+0L : 0x3.c1120ac30c305a94p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0x8p+0L : 0x3.c1120ac30c305a9p-4L : inexact-ok
+= jn upward ldbl-96-m68k 1 0x8p+0L : 0x3.c1120ac30c305a94p-4L : inexact-ok
+= jn downward ldbl-128 1 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25d24p-4L : inexact-ok
+= jn tonearest ldbl-128 1 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25d24p-4L : inexact-ok
+= jn towardzero ldbl-128 1 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25d24p-4L : inexact-ok
+= jn upward ldbl-128 1 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25d26p-4L : inexact-ok
+= jn downward ldbl-128ibm 1 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25dp-4L : inexact-ok
+= jn tonearest ldbl-128ibm 1 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25dp-4L : inexact-ok
+= jn towardzero ldbl-128ibm 1 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25dp-4L : inexact-ok
+= jn upward ldbl-128ibm 1 0x8p+0L : 0x3.c1120ac30c305a93c61d86d25ep-4L : inexact-ok
+jn 1 10.0
+= jn downward flt-32 1 0xap+0f : 0xb.2107ap-8f : inexact-ok
+= jn tonearest flt-32 1 0xap+0f : 0xb.2107ap-8f : inexact-ok
+= jn towardzero flt-32 1 0xap+0f : 0xb.2107ap-8f : inexact-ok
+= jn upward flt-32 1 0xap+0f : 0xb.2107bp-8f : inexact-ok
+= jn downward dbl-64 1 0xap+0 : 0xb.2107a7100488p-8 : inexact-ok
+= jn tonearest dbl-64 1 0xap+0 : 0xb.2107a71004888p-8 : inexact-ok
+= jn towardzero dbl-64 1 0xap+0 : 0xb.2107a7100488p-8 : inexact-ok
+= jn upward dbl-64 1 0xap+0 : 0xb.2107a71004888p-8 : inexact-ok
+= jn downward ldbl-96-intel 1 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= jn tonearest ldbl-96-intel 1 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= jn towardzero ldbl-96-intel 1 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= jn upward ldbl-96-intel 1 0xap+0L : 0xb.2107a7100488616p-8L : inexact-ok
+= jn downward ldbl-96-m68k 1 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 1 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 1 0xap+0L : 0xb.2107a7100488615p-8L : inexact-ok
+= jn upward ldbl-96-m68k 1 0xap+0L : 0xb.2107a7100488616p-8L : inexact-ok
+= jn downward ldbl-128 1 0xap+0L : 0xb.2107a710048861578f0a8f4f2bf8p-8L : inexact-ok
+= jn tonearest ldbl-128 1 0xap+0L : 0xb.2107a710048861578f0a8f4f2bf8p-8L : inexact-ok
+= jn towardzero ldbl-128 1 0xap+0L : 0xb.2107a710048861578f0a8f4f2bf8p-8L : inexact-ok
+= jn upward ldbl-128 1 0xap+0L : 0xb.2107a710048861578f0a8f4f2cp-8L : inexact-ok
+= jn downward ldbl-128ibm 1 0xap+0L : 0xb.2107a710048861578f0a8f4f28p-8L : inexact-ok
+= jn tonearest ldbl-128ibm 1 0xap+0L : 0xb.2107a710048861578f0a8f4f2cp-8L : inexact-ok
+= jn towardzero ldbl-128ibm 1 0xap+0L : 0xb.2107a710048861578f0a8f4f28p-8L : inexact-ok
+= jn upward ldbl-128ibm 1 0xap+0L : 0xb.2107a710048861578f0a8f4f2cp-8L : inexact-ok
+jn 3 -1.0
+= jn downward flt-32 3 -0x1p+0f : -0x5.021aap-8f : inexact-ok
+= jn tonearest flt-32 3 -0x1p+0f : -0x5.021aap-8f : inexact-ok
+= jn towardzero flt-32 3 -0x1p+0f : -0x5.021a98p-8f : inexact-ok
+= jn upward flt-32 3 -0x1p+0f : -0x5.021a98p-8f : inexact-ok
+= jn downward dbl-64 3 -0x1p+0 : -0x5.021a9d8e3de8cp-8 : inexact-ok
+= jn tonearest dbl-64 3 -0x1p+0 : -0x5.021a9d8e3de8cp-8 : inexact-ok
+= jn towardzero dbl-64 3 -0x1p+0 : -0x5.021a9d8e3de88p-8 : inexact-ok
+= jn upward dbl-64 3 -0x1p+0 : -0x5.021a9d8e3de88p-8 : inexact-ok
+= jn downward ldbl-96-intel 3 -0x1p+0L : -0x5.021a9d8e3de8ab1p-8L : inexact-ok
+= jn tonearest ldbl-96-intel 3 -0x1p+0L : -0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn towardzero ldbl-96-intel 3 -0x1p+0L : -0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn upward ldbl-96-intel 3 -0x1p+0L : -0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn downward ldbl-96-m68k 3 -0x1p+0L : -0x5.021a9d8e3de8ab1p-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 -0x1p+0L : -0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 -0x1p+0L : -0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn upward ldbl-96-m68k 3 -0x1p+0L : -0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn downward ldbl-128 3 -0x1p+0L : -0x5.021a9d8e3de8ab0aad53c589980cp-8L : inexact-ok
+= jn tonearest ldbl-128 3 -0x1p+0L : -0x5.021a9d8e3de8ab0aad53c589980cp-8L : inexact-ok
+= jn towardzero ldbl-128 3 -0x1p+0L : -0x5.021a9d8e3de8ab0aad53c5899808p-8L : inexact-ok
+= jn upward ldbl-128 3 -0x1p+0L : -0x5.021a9d8e3de8ab0aad53c5899808p-8L : inexact-ok
+= jn downward ldbl-128ibm 3 -0x1p+0L : -0x5.021a9d8e3de8ab0aad53c5899ap-8L : inexact-ok
+= jn tonearest ldbl-128ibm 3 -0x1p+0L : -0x5.021a9d8e3de8ab0aad53c58998p-8L : inexact-ok
+= jn towardzero ldbl-128ibm 3 -0x1p+0L : -0x5.021a9d8e3de8ab0aad53c58998p-8L : inexact-ok
+= jn upward ldbl-128ibm 3 -0x1p+0L : -0x5.021a9d8e3de8ab0aad53c58998p-8L : inexact-ok
+jn 3 0.0
+= jn downward flt-32 3 0x0p+0f : 0x0p+0f : inexact-ok
+= jn tonearest flt-32 3 0x0p+0f : 0x0p+0f : inexact-ok
+= jn towardzero flt-32 3 0x0p+0f : 0x0p+0f : inexact-ok
+= jn upward flt-32 3 0x0p+0f : 0x0p+0f : inexact-ok
+= jn downward dbl-64 3 0x0p+0 : 0x0p+0 : inexact-ok
+= jn tonearest dbl-64 3 0x0p+0 : 0x0p+0 : inexact-ok
+= jn towardzero dbl-64 3 0x0p+0 : 0x0p+0 : inexact-ok
+= jn upward dbl-64 3 0x0p+0 : 0x0p+0 : inexact-ok
+= jn downward ldbl-96-intel 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-96-intel 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn downward ldbl-96-m68k 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-96-m68k 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn downward ldbl-128 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-128 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-128 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-128 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn downward ldbl-128ibm 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-128ibm 3 0x0p+0L : 0x0p+0L : inexact-ok
+jn 3 0.125
+= jn downward flt-32 3 0x2p-4f : 0x2.aa001p-16f : inexact-ok
+= jn tonearest flt-32 3 0x2p-4f : 0x2.aa001p-16f : inexact-ok
+= jn towardzero flt-32 3 0x2p-4f : 0x2.aa001p-16f : inexact-ok
+= jn upward flt-32 3 0x2p-4f : 0x2.aa0014p-16f : inexact-ok
+= jn downward dbl-64 3 0x2p-4 : 0x2.aa0011101e5fep-16 : inexact-ok
+= jn tonearest dbl-64 3 0x2p-4 : 0x2.aa0011101e5fep-16 : inexact-ok
+= jn towardzero dbl-64 3 0x2p-4 : 0x2.aa0011101e5fep-16 : inexact-ok
+= jn upward dbl-64 3 0x2p-4 : 0x2.aa0011101e6p-16 : inexact-ok
+= jn downward ldbl-96-intel 3 0x2p-4L : 0x2.aa0011101e5fe5c4p-16L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0x2p-4L : 0x2.aa0011101e5fe5c8p-16L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0x2p-4L : 0x2.aa0011101e5fe5c4p-16L : inexact-ok
+= jn upward ldbl-96-intel 3 0x2p-4L : 0x2.aa0011101e5fe5c8p-16L : inexact-ok
+= jn downward ldbl-96-m68k 3 0x2p-4L : 0x2.aa0011101e5fe5c4p-16L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0x2p-4L : 0x2.aa0011101e5fe5c8p-16L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0x2p-4L : 0x2.aa0011101e5fe5c4p-16L : inexact-ok
+= jn upward ldbl-96-m68k 3 0x2p-4L : 0x2.aa0011101e5fe5c8p-16L : inexact-ok
+= jn downward ldbl-128 3 0x2p-4L : 0x2.aa0011101e5fe5c6e5fdd8a1ee1ep-16L : inexact-ok
+= jn tonearest ldbl-128 3 0x2p-4L : 0x2.aa0011101e5fe5c6e5fdd8a1ee1ep-16L : inexact-ok
+= jn towardzero ldbl-128 3 0x2p-4L : 0x2.aa0011101e5fe5c6e5fdd8a1ee1ep-16L : inexact-ok
+= jn upward ldbl-128 3 0x2p-4L : 0x2.aa0011101e5fe5c6e5fdd8a1ee2p-16L : inexact-ok
+= jn downward ldbl-128ibm 3 0x2p-4L : 0x2.aa0011101e5fe5c6e5fdd8a1eep-16L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x2p-4L : 0x2.aa0011101e5fe5c6e5fdd8a1eep-16L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x2p-4L : 0x2.aa0011101e5fe5c6e5fdd8a1eep-16L : inexact-ok
+= jn upward ldbl-128ibm 3 0x2p-4L : 0x2.aa0011101e5fe5c6e5fdd8a1efp-16L : inexact-ok
+jn 3 0.75
+= jn downward flt-32 3 0xcp-4f : 0x2.2c0854p-8f : inexact-ok
+= jn tonearest flt-32 3 0xcp-4f : 0x2.2c0854p-8f : inexact-ok
+= jn towardzero flt-32 3 0xcp-4f : 0x2.2c0854p-8f : inexact-ok
+= jn upward flt-32 3 0xcp-4f : 0x2.2c0858p-8f : inexact-ok
+= jn downward dbl-64 3 0xcp-4 : 0x2.2c085554665bp-8 : inexact-ok
+= jn tonearest dbl-64 3 0xcp-4 : 0x2.2c085554665bp-8 : inexact-ok
+= jn towardzero dbl-64 3 0xcp-4 : 0x2.2c085554665bp-8 : inexact-ok
+= jn upward dbl-64 3 0xcp-4 : 0x2.2c085554665b2p-8 : inexact-ok
+= jn downward ldbl-96-intel 3 0xcp-4L : 0x2.2c085554665b0988p-8L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0xcp-4L : 0x2.2c085554665b098cp-8L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0xcp-4L : 0x2.2c085554665b0988p-8L : inexact-ok
+= jn upward ldbl-96-intel 3 0xcp-4L : 0x2.2c085554665b098cp-8L : inexact-ok
+= jn downward ldbl-96-m68k 3 0xcp-4L : 0x2.2c085554665b0988p-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0xcp-4L : 0x2.2c085554665b098cp-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0xcp-4L : 0x2.2c085554665b0988p-8L : inexact-ok
+= jn upward ldbl-96-m68k 3 0xcp-4L : 0x2.2c085554665b098cp-8L : inexact-ok
+= jn downward ldbl-128 3 0xcp-4L : 0x2.2c085554665b098a31fc3a7224dp-8L : inexact-ok
+= jn tonearest ldbl-128 3 0xcp-4L : 0x2.2c085554665b098a31fc3a7224dp-8L : inexact-ok
+= jn towardzero ldbl-128 3 0xcp-4L : 0x2.2c085554665b098a31fc3a7224dp-8L : inexact-ok
+= jn upward ldbl-128 3 0xcp-4L : 0x2.2c085554665b098a31fc3a7224d2p-8L : inexact-ok
+= jn downward ldbl-128ibm 3 0xcp-4L : 0x2.2c085554665b098a31fc3a7224p-8L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0xcp-4L : 0x2.2c085554665b098a31fc3a7225p-8L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0xcp-4L : 0x2.2c085554665b098a31fc3a7224p-8L : inexact-ok
+= jn upward ldbl-128ibm 3 0xcp-4L : 0x2.2c085554665b098a31fc3a7225p-8L : inexact-ok
+jn 3 1.0
+= jn downward flt-32 3 0x1p+0f : 0x5.021a98p-8f : inexact-ok
+= jn tonearest flt-32 3 0x1p+0f : 0x5.021aap-8f : inexact-ok
+= jn towardzero flt-32 3 0x1p+0f : 0x5.021a98p-8f : inexact-ok
+= jn upward flt-32 3 0x1p+0f : 0x5.021aap-8f : inexact-ok
+= jn downward dbl-64 3 0x1p+0 : 0x5.021a9d8e3de88p-8 : inexact-ok
+= jn tonearest dbl-64 3 0x1p+0 : 0x5.021a9d8e3de8cp-8 : inexact-ok
+= jn towardzero dbl-64 3 0x1p+0 : 0x5.021a9d8e3de88p-8 : inexact-ok
+= jn upward dbl-64 3 0x1p+0 : 0x5.021a9d8e3de8cp-8 : inexact-ok
+= jn downward ldbl-96-intel 3 0x1p+0L : 0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0x1p+0L : 0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0x1p+0L : 0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn upward ldbl-96-intel 3 0x1p+0L : 0x5.021a9d8e3de8ab1p-8L : inexact-ok
+= jn downward ldbl-96-m68k 3 0x1p+0L : 0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0x1p+0L : 0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0x1p+0L : 0x5.021a9d8e3de8ab08p-8L : inexact-ok
+= jn upward ldbl-96-m68k 3 0x1p+0L : 0x5.021a9d8e3de8ab1p-8L : inexact-ok
+= jn downward ldbl-128 3 0x1p+0L : 0x5.021a9d8e3de8ab0aad53c589980cp-8L : inexact-ok
+= jn tonearest ldbl-128 3 0x1p+0L : 0x5.021a9d8e3de8ab0aad53c589980cp-8L : inexact-ok
+= jn towardzero ldbl-128 3 0x1p+0L : 0x5.021a9d8e3de8ab0aad53c589980cp-8L : inexact-ok
+= jn upward ldbl-128 3 0x1p+0L : 0x5.021a9d8e3de8ab0aad53c589981p-8L : inexact-ok
+= jn downward ldbl-128ibm 3 0x1p+0L : 0x5.021a9d8e3de8ab0aad53c58998p-8L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x1p+0L : 0x5.021a9d8e3de8ab0aad53c58998p-8L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x1p+0L : 0x5.021a9d8e3de8ab0aad53c58998p-8L : inexact-ok
+= jn upward ldbl-128ibm 3 0x1p+0L : 0x5.021a9d8e3de8ab0aad53c5899ap-8L : inexact-ok
+jn 3 2.0
+= jn downward flt-32 3 0x2p+0f : 0x2.1026c8p-4f : inexact-ok
+= jn tonearest flt-32 3 0x2p+0f : 0x2.1026ccp-4f : inexact-ok
+= jn towardzero flt-32 3 0x2p+0f : 0x2.1026c8p-4f : inexact-ok
+= jn upward flt-32 3 0x2p+0f : 0x2.1026ccp-4f : inexact-ok
+= jn downward dbl-64 3 0x2p+0 : 0x2.1026cbf88539ep-4 : inexact-ok
+= jn tonearest dbl-64 3 0x2p+0 : 0x2.1026cbf8853ap-4 : inexact-ok
+= jn towardzero dbl-64 3 0x2p+0 : 0x2.1026cbf88539ep-4 : inexact-ok
+= jn upward dbl-64 3 0x2p+0 : 0x2.1026cbf8853ap-4 : inexact-ok
+= jn downward ldbl-96-intel 3 0x2p+0L : 0x2.1026cbf88539fb44p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0x2p+0L : 0x2.1026cbf88539fb44p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0x2p+0L : 0x2.1026cbf88539fb44p-4L : inexact-ok
+= jn upward ldbl-96-intel 3 0x2p+0L : 0x2.1026cbf88539fb48p-4L : inexact-ok
+= jn downward ldbl-96-m68k 3 0x2p+0L : 0x2.1026cbf88539fb44p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0x2p+0L : 0x2.1026cbf88539fb44p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0x2p+0L : 0x2.1026cbf88539fb44p-4L : inexact-ok
+= jn upward ldbl-96-m68k 3 0x2p+0L : 0x2.1026cbf88539fb48p-4L : inexact-ok
+= jn downward ldbl-128 3 0x2p+0L : 0x2.1026cbf88539fb45cd0dffaf7038p-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2p+0L : 0x2.1026cbf88539fb45cd0dffaf703ap-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2p+0L : 0x2.1026cbf88539fb45cd0dffaf7038p-4L : inexact-ok
+= jn upward ldbl-128 3 0x2p+0L : 0x2.1026cbf88539fb45cd0dffaf703ap-4L : inexact-ok
+= jn downward ldbl-128ibm 3 0x2p+0L : 0x2.1026cbf88539fb45cd0dffaf7p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x2p+0L : 0x2.1026cbf88539fb45cd0dffaf7p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x2p+0L : 0x2.1026cbf88539fb45cd0dffaf7p-4L : inexact-ok
+= jn upward ldbl-128ibm 3 0x2p+0L : 0x2.1026cbf88539fb45cd0dffaf71p-4L : inexact-ok
+jn 3 10.0
+= jn downward flt-32 3 0xap+0f : 0xe.f1f37p-8f : inexact-ok
+= jn tonearest flt-32 3 0xap+0f : 0xe.f1f37p-8f : inexact-ok
+= jn towardzero flt-32 3 0xap+0f : 0xe.f1f37p-8f : inexact-ok
+= jn upward flt-32 3 0xap+0f : 0xe.f1f38p-8f : inexact-ok
+= jn downward dbl-64 3 0xap+0 : 0xe.f1f374e066028p-8 : inexact-ok
+= jn tonearest dbl-64 3 0xap+0 : 0xe.f1f374e06603p-8 : inexact-ok
+= jn towardzero dbl-64 3 0xap+0 : 0xe.f1f374e066028p-8 : inexact-ok
+= jn upward dbl-64 3 0xap+0 : 0xe.f1f374e06603p-8 : inexact-ok
+= jn downward ldbl-96-intel 3 0xap+0L : 0xe.f1f374e06602c7ap-8L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0xap+0L : 0xe.f1f374e06602c7bp-8L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0xap+0L : 0xe.f1f374e06602c7ap-8L : inexact-ok
+= jn upward ldbl-96-intel 3 0xap+0L : 0xe.f1f374e06602c7bp-8L : inexact-ok
+= jn downward ldbl-96-m68k 3 0xap+0L : 0xe.f1f374e06602c7ap-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0xap+0L : 0xe.f1f374e06602c7bp-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0xap+0L : 0xe.f1f374e06602c7ap-8L : inexact-ok
+= jn upward ldbl-96-m68k 3 0xap+0L : 0xe.f1f374e06602c7bp-8L : inexact-ok
+= jn downward ldbl-128 3 0xap+0L : 0xe.f1f374e06602c7ac005cf0b07eb8p-8L : inexact-ok
+= jn tonearest ldbl-128 3 0xap+0L : 0xe.f1f374e06602c7ac005cf0b07eb8p-8L : inexact-ok
+= jn towardzero ldbl-128 3 0xap+0L : 0xe.f1f374e06602c7ac005cf0b07eb8p-8L : inexact-ok
+= jn upward ldbl-128 3 0xap+0L : 0xe.f1f374e06602c7ac005cf0b07ecp-8L : inexact-ok
+= jn downward ldbl-128ibm 3 0xap+0L : 0xe.f1f374e06602c7ac005cf0b07cp-8L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0xap+0L : 0xe.f1f374e06602c7ac005cf0b08p-8L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0xap+0L : 0xe.f1f374e06602c7ac005cf0b07cp-8L : inexact-ok
+= jn upward ldbl-128ibm 3 0xap+0L : 0xe.f1f374e06602c7ac005cf0b08p-8L : inexact-ok
+jn 10 -1.0
+= jn downward flt-32 10 -0x1p+0f : 0x1.213d3ap-32f : inexact-ok
+= jn tonearest flt-32 10 -0x1p+0f : 0x1.213d3cp-32f : inexact-ok
+= jn towardzero flt-32 10 -0x1p+0f : 0x1.213d3ap-32f : inexact-ok
+= jn upward flt-32 10 -0x1p+0f : 0x1.213d3cp-32f : inexact-ok
+= jn downward dbl-64 10 -0x1p+0 : 0x1.213d3baa4f295p-32 : inexact-ok
+= jn tonearest dbl-64 10 -0x1p+0 : 0x1.213d3baa4f296p-32 : inexact-ok
+= jn towardzero dbl-64 10 -0x1p+0 : 0x1.213d3baa4f295p-32 : inexact-ok
+= jn upward dbl-64 10 -0x1p+0 : 0x1.213d3baa4f296p-32 : inexact-ok
+= jn downward ldbl-96-intel 10 -0x1p+0L : 0x1.213d3baa4f2958d8p-32L : inexact-ok
+= jn tonearest ldbl-96-intel 10 -0x1p+0L : 0x1.213d3baa4f2958dap-32L : inexact-ok
+= jn towardzero ldbl-96-intel 10 -0x1p+0L : 0x1.213d3baa4f2958d8p-32L : inexact-ok
+= jn upward ldbl-96-intel 10 -0x1p+0L : 0x1.213d3baa4f2958dap-32L : inexact-ok
+= jn downward ldbl-96-m68k 10 -0x1p+0L : 0x1.213d3baa4f2958d8p-32L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 -0x1p+0L : 0x1.213d3baa4f2958dap-32L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 -0x1p+0L : 0x1.213d3baa4f2958d8p-32L : inexact-ok
+= jn upward ldbl-96-m68k 10 -0x1p+0L : 0x1.213d3baa4f2958dap-32L : inexact-ok
+= jn downward ldbl-128 10 -0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b77p-32L : inexact-ok
+= jn tonearest ldbl-128 10 -0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b77p-32L : inexact-ok
+= jn towardzero ldbl-128 10 -0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b77p-32L : inexact-ok
+= jn upward ldbl-128 10 -0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b78p-32L : inexact-ok
+= jn downward ldbl-128ibm 10 -0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84bp-32L : inexact-ok
+= jn tonearest ldbl-128ibm 10 -0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b8p-32L : inexact-ok
+= jn towardzero ldbl-128ibm 10 -0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84bp-32L : inexact-ok
+= jn upward ldbl-128ibm 10 -0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b8p-32L : inexact-ok
+jn 10 0.0
+= jn downward flt-32 10 0x0p+0f : 0x0p+0f : inexact-ok
+= jn tonearest flt-32 10 0x0p+0f : 0x0p+0f : inexact-ok
+= jn towardzero flt-32 10 0x0p+0f : 0x0p+0f : inexact-ok
+= jn upward flt-32 10 0x0p+0f : 0x0p+0f : inexact-ok
+= jn downward dbl-64 10 0x0p+0 : 0x0p+0 : inexact-ok
+= jn tonearest dbl-64 10 0x0p+0 : 0x0p+0 : inexact-ok
+= jn towardzero dbl-64 10 0x0p+0 : 0x0p+0 : inexact-ok
+= jn upward dbl-64 10 0x0p+0 : 0x0p+0 : inexact-ok
+= jn downward ldbl-96-intel 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-96-intel 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn downward ldbl-96-m68k 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-96-m68k 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn downward ldbl-128 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-128 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-128 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-128 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn downward ldbl-128ibm 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn tonearest ldbl-128ibm 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn towardzero ldbl-128ibm 10 0x0p+0L : 0x0p+0L : inexact-ok
+= jn upward ldbl-128ibm 10 0x0p+0L : 0x0p+0L : inexact-ok
+jn 10 0.125
+= jn downward flt-32 10 0x2p-4f : 0x4.9f2858p-64f : inexact-ok
+= jn tonearest flt-32 10 0x2p-4f : 0x4.9f2858p-64f : inexact-ok
+= jn towardzero flt-32 10 0x2p-4f : 0x4.9f2858p-64f : inexact-ok
+= jn upward flt-32 10 0x2p-4f : 0x4.9f286p-64f : inexact-ok
+= jn downward dbl-64 10 0x2p-4 : 0x4.9f28594420d0cp-64 : inexact-ok
+= jn tonearest dbl-64 10 0x2p-4 : 0x4.9f28594420d0cp-64 : inexact-ok
+= jn towardzero dbl-64 10 0x2p-4 : 0x4.9f28594420d0cp-64 : inexact-ok
+= jn upward dbl-64 10 0x2p-4 : 0x4.9f28594420d1p-64 : inexact-ok
+= jn downward ldbl-96-intel 10 0x2p-4L : 0x4.9f28594420d0db2p-64L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0x2p-4L : 0x4.9f28594420d0db28p-64L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0x2p-4L : 0x4.9f28594420d0db2p-64L : inexact-ok
+= jn upward ldbl-96-intel 10 0x2p-4L : 0x4.9f28594420d0db28p-64L : inexact-ok
+= jn downward ldbl-96-m68k 10 0x2p-4L : 0x4.9f28594420d0db2p-64L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0x2p-4L : 0x4.9f28594420d0db28p-64L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0x2p-4L : 0x4.9f28594420d0db2p-64L : inexact-ok
+= jn upward ldbl-96-m68k 10 0x2p-4L : 0x4.9f28594420d0db28p-64L : inexact-ok
+= jn downward ldbl-128 10 0x2p-4L : 0x4.9f28594420d0db24be7085a75f2cp-64L : inexact-ok
+= jn tonearest ldbl-128 10 0x2p-4L : 0x4.9f28594420d0db24be7085a75f3p-64L : inexact-ok
+= jn towardzero ldbl-128 10 0x2p-4L : 0x4.9f28594420d0db24be7085a75f2cp-64L : inexact-ok
+= jn upward ldbl-128 10 0x2p-4L : 0x4.9f28594420d0db24be7085a75f3p-64L : inexact-ok
+= jn downward ldbl-128ibm 10 0x2p-4L : 0x4.9f28594420d0db24be7085a75ep-64L : inexact-ok
+= jn tonearest ldbl-128ibm 10 0x2p-4L : 0x4.9f28594420d0db24be7085a76p-64L : inexact-ok
+= jn towardzero ldbl-128ibm 10 0x2p-4L : 0x4.9f28594420d0db24be7085a75ep-64L : inexact-ok
+= jn upward ldbl-128ibm 10 0x2p-4L : 0x4.9f28594420d0db24be7085a76p-64L : inexact-ok
+jn 10 0.75
+= jn downward flt-32 10 0xcp-4f : 0x1.0737ap-36f : inexact-ok
+= jn tonearest flt-32 10 0xcp-4f : 0x1.0737a2p-36f : inexact-ok
+= jn towardzero flt-32 10 0xcp-4f : 0x1.0737ap-36f : inexact-ok
+= jn upward flt-32 10 0xcp-4f : 0x1.0737a2p-36f : inexact-ok
+= jn downward dbl-64 10 0xcp-4 : 0x1.0737a10f99b9p-36 : inexact-ok
+= jn tonearest dbl-64 10 0xcp-4 : 0x1.0737a10f99b9p-36 : inexact-ok
+= jn towardzero dbl-64 10 0xcp-4 : 0x1.0737a10f99b9p-36 : inexact-ok
+= jn upward dbl-64 10 0xcp-4 : 0x1.0737a10f99b91p-36 : inexact-ok
+= jn downward ldbl-96-intel 10 0xcp-4L : 0x1.0737a10f99b90732p-36L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0xcp-4L : 0x1.0737a10f99b90732p-36L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0xcp-4L : 0x1.0737a10f99b90732p-36L : inexact-ok
+= jn upward ldbl-96-intel 10 0xcp-4L : 0x1.0737a10f99b90734p-36L : inexact-ok
+= jn downward ldbl-96-m68k 10 0xcp-4L : 0x1.0737a10f99b90732p-36L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0xcp-4L : 0x1.0737a10f99b90732p-36L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0xcp-4L : 0x1.0737a10f99b90732p-36L : inexact-ok
+= jn upward ldbl-96-m68k 10 0xcp-4L : 0x1.0737a10f99b90734p-36L : inexact-ok
+= jn downward ldbl-128 10 0xcp-4L : 0x1.0737a10f99b90732aa4c2ac32d5p-36L : inexact-ok
+= jn tonearest ldbl-128 10 0xcp-4L : 0x1.0737a10f99b90732aa4c2ac32d51p-36L : inexact-ok
+= jn towardzero ldbl-128 10 0xcp-4L : 0x1.0737a10f99b90732aa4c2ac32d5p-36L : inexact-ok
+= jn upward ldbl-128 10 0xcp-4L : 0x1.0737a10f99b90732aa4c2ac32d51p-36L : inexact-ok
+= jn downward ldbl-128ibm 10 0xcp-4L : 0x1.0737a10f99b90732aa4c2ac32dp-36L : inexact-ok
+= jn tonearest ldbl-128ibm 10 0xcp-4L : 0x1.0737a10f99b90732aa4c2ac32d8p-36L : inexact-ok
+= jn towardzero ldbl-128ibm 10 0xcp-4L : 0x1.0737a10f99b90732aa4c2ac32dp-36L : inexact-ok
+= jn upward ldbl-128ibm 10 0xcp-4L : 0x1.0737a10f99b90732aa4c2ac32d8p-36L : inexact-ok
+jn 10 1.0
+= jn downward flt-32 10 0x1p+0f : 0x1.213d3ap-32f : inexact-ok
+= jn tonearest flt-32 10 0x1p+0f : 0x1.213d3cp-32f : inexact-ok
+= jn towardzero flt-32 10 0x1p+0f : 0x1.213d3ap-32f : inexact-ok
+= jn upward flt-32 10 0x1p+0f : 0x1.213d3cp-32f : inexact-ok
+= jn downward dbl-64 10 0x1p+0 : 0x1.213d3baa4f295p-32 : inexact-ok
+= jn tonearest dbl-64 10 0x1p+0 : 0x1.213d3baa4f296p-32 : inexact-ok
+= jn towardzero dbl-64 10 0x1p+0 : 0x1.213d3baa4f295p-32 : inexact-ok
+= jn upward dbl-64 10 0x1p+0 : 0x1.213d3baa4f296p-32 : inexact-ok
+= jn downward ldbl-96-intel 10 0x1p+0L : 0x1.213d3baa4f2958d8p-32L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0x1p+0L : 0x1.213d3baa4f2958dap-32L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0x1p+0L : 0x1.213d3baa4f2958d8p-32L : inexact-ok
+= jn upward ldbl-96-intel 10 0x1p+0L : 0x1.213d3baa4f2958dap-32L : inexact-ok
+= jn downward ldbl-96-m68k 10 0x1p+0L : 0x1.213d3baa4f2958d8p-32L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0x1p+0L : 0x1.213d3baa4f2958dap-32L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0x1p+0L : 0x1.213d3baa4f2958d8p-32L : inexact-ok
+= jn upward ldbl-96-m68k 10 0x1p+0L : 0x1.213d3baa4f2958dap-32L : inexact-ok
+= jn downward ldbl-128 10 0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b77p-32L : inexact-ok
+= jn tonearest ldbl-128 10 0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b77p-32L : inexact-ok
+= jn towardzero ldbl-128 10 0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b77p-32L : inexact-ok
+= jn upward ldbl-128 10 0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b78p-32L : inexact-ok
+= jn downward ldbl-128ibm 10 0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84bp-32L : inexact-ok
+= jn tonearest ldbl-128ibm 10 0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b8p-32L : inexact-ok
+= jn towardzero ldbl-128ibm 10 0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84bp-32L : inexact-ok
+= jn upward ldbl-128ibm 10 0x1p+0L : 0x1.213d3baa4f2958d9d02fd1c84b8p-32L : inexact-ok
+jn 10 2.0
+= jn downward flt-32 10 0x2p+0f : 0x4.3859ap-24f : inexact-ok
+= jn tonearest flt-32 10 0x2p+0f : 0x4.3859a8p-24f : inexact-ok
+= jn towardzero flt-32 10 0x2p+0f : 0x4.3859ap-24f : inexact-ok
+= jn upward flt-32 10 0x2p+0f : 0x4.3859a8p-24f : inexact-ok
+= jn downward dbl-64 10 0x2p+0 : 0x4.3859a588db868p-24 : inexact-ok
+= jn tonearest dbl-64 10 0x2p+0 : 0x4.3859a588db86cp-24 : inexact-ok
+= jn towardzero dbl-64 10 0x2p+0 : 0x4.3859a588db868p-24 : inexact-ok
+= jn upward dbl-64 10 0x2p+0 : 0x4.3859a588db86cp-24 : inexact-ok
+= jn downward ldbl-96-intel 10 0x2p+0L : 0x4.3859a588db86b2a8p-24L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0x2p+0L : 0x4.3859a588db86b2a8p-24L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0x2p+0L : 0x4.3859a588db86b2a8p-24L : inexact-ok
+= jn upward ldbl-96-intel 10 0x2p+0L : 0x4.3859a588db86b2bp-24L : inexact-ok
+= jn downward ldbl-96-m68k 10 0x2p+0L : 0x4.3859a588db86b2a8p-24L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0x2p+0L : 0x4.3859a588db86b2a8p-24L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0x2p+0L : 0x4.3859a588db86b2a8p-24L : inexact-ok
+= jn upward ldbl-96-m68k 10 0x2p+0L : 0x4.3859a588db86b2bp-24L : inexact-ok
+= jn downward ldbl-128 10 0x2p+0L : 0x4.3859a588db86b2abf118b634e7d8p-24L : inexact-ok
+= jn tonearest ldbl-128 10 0x2p+0L : 0x4.3859a588db86b2abf118b634e7d8p-24L : inexact-ok
+= jn towardzero ldbl-128 10 0x2p+0L : 0x4.3859a588db86b2abf118b634e7d8p-24L : inexact-ok
+= jn upward ldbl-128 10 0x2p+0L : 0x4.3859a588db86b2abf118b634e7dcp-24L : inexact-ok
+= jn downward ldbl-128ibm 10 0x2p+0L : 0x4.3859a588db86b2abf118b634e6p-24L : inexact-ok
+= jn tonearest ldbl-128ibm 10 0x2p+0L : 0x4.3859a588db86b2abf118b634e8p-24L : inexact-ok
+= jn towardzero ldbl-128ibm 10 0x2p+0L : 0x4.3859a588db86b2abf118b634e6p-24L : inexact-ok
+= jn upward ldbl-128ibm 10 0x2p+0L : 0x4.3859a588db86b2abf118b634e8p-24L : inexact-ok
+jn 10 10.0
+= jn downward flt-32 10 0xap+0f : 0x3.51dcfp-4f : inexact-ok
+= jn tonearest flt-32 10 0xap+0f : 0x3.51dcf4p-4f : inexact-ok
+= jn towardzero flt-32 10 0xap+0f : 0x3.51dcfp-4f : inexact-ok
+= jn upward flt-32 10 0xap+0f : 0x3.51dcf4p-4f : inexact-ok
+= jn downward dbl-64 10 0xap+0 : 0x3.51dcf3a5d595ep-4 : inexact-ok
+= jn tonearest dbl-64 10 0xap+0 : 0x3.51dcf3a5d596p-4 : inexact-ok
+= jn towardzero dbl-64 10 0xap+0 : 0x3.51dcf3a5d595ep-4 : inexact-ok
+= jn upward dbl-64 10 0xap+0 : 0x3.51dcf3a5d596p-4 : inexact-ok
+= jn downward ldbl-96-intel 10 0xap+0L : 0x3.51dcf3a5d595f328p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 10 0xap+0L : 0x3.51dcf3a5d595f328p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 10 0xap+0L : 0x3.51dcf3a5d595f328p-4L : inexact-ok
+= jn upward ldbl-96-intel 10 0xap+0L : 0x3.51dcf3a5d595f32cp-4L : inexact-ok
+= jn downward ldbl-96-m68k 10 0xap+0L : 0x3.51dcf3a5d595f328p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 10 0xap+0L : 0x3.51dcf3a5d595f328p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 10 0xap+0L : 0x3.51dcf3a5d595f328p-4L : inexact-ok
+= jn upward ldbl-96-m68k 10 0xap+0L : 0x3.51dcf3a5d595f32cp-4L : inexact-ok
+= jn downward ldbl-128 10 0xap+0L : 0x3.51dcf3a5d595f32918e1e89dda18p-4L : inexact-ok
+= jn tonearest ldbl-128 10 0xap+0L : 0x3.51dcf3a5d595f32918e1e89dda18p-4L : inexact-ok
+= jn towardzero ldbl-128 10 0xap+0L : 0x3.51dcf3a5d595f32918e1e89dda18p-4L : inexact-ok
+= jn upward ldbl-128 10 0xap+0L : 0x3.51dcf3a5d595f32918e1e89dda1ap-4L : inexact-ok
+= jn downward ldbl-128ibm 10 0xap+0L : 0x3.51dcf3a5d595f32918e1e89ddap-4L : inexact-ok
+= jn tonearest ldbl-128ibm 10 0xap+0L : 0x3.51dcf3a5d595f32918e1e89ddap-4L : inexact-ok
+= jn towardzero ldbl-128ibm 10 0xap+0L : 0x3.51dcf3a5d595f32918e1e89ddap-4L : inexact-ok
+= jn upward ldbl-128ibm 10 0xap+0L : 0x3.51dcf3a5d595f32918e1e89ddbp-4L : inexact-ok
+jn 2 2.4048255576957729
+= jn downward flt-32 2 0x2.67a2a8p+0f : 0x6.e877cp-4f : inexact-ok
+= jn tonearest flt-32 2 0x2.67a2a8p+0f : 0x6.e877cp-4f : inexact-ok
+= jn towardzero flt-32 2 0x2.67a2a8p+0f : 0x6.e877cp-4f : inexact-ok
+= jn upward flt-32 2 0x2.67a2a8p+0f : 0x6.e877c8p-4f : inexact-ok
+= jn downward dbl-64 2 0x2.67a2a8p+0 : 0x6.e877c013823b4p-4 : inexact-ok
+= jn tonearest dbl-64 2 0x2.67a2a8p+0 : 0x6.e877c013823b8p-4 : inexact-ok
+= jn towardzero dbl-64 2 0x2.67a2a8p+0 : 0x6.e877c013823b4p-4 : inexact-ok
+= jn upward dbl-64 2 0x2.67a2a8p+0 : 0x6.e877c013823b8p-4 : inexact-ok
+= jn downward ldbl-96-intel 2 0x2.67a2a8p+0L : 0x6.e877c013823b69dp-4L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d8p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0x2.67a2a8p+0L : 0x6.e877c013823b69dp-4L : inexact-ok
+= jn upward ldbl-96-intel 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d8p-4L : inexact-ok
+= jn downward ldbl-96-m68k 2 0x2.67a2a8p+0L : 0x6.e877c013823b69dp-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d8p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0x2.67a2a8p+0L : 0x6.e877c013823b69dp-4L : inexact-ok
+= jn upward ldbl-96-m68k 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d8p-4L : inexact-ok
+= jn downward ldbl-128 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d4ce163ac993b4p-4L : inexact-ok
+= jn tonearest ldbl-128 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d4ce163ac993b4p-4L : inexact-ok
+= jn towardzero ldbl-128 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d4ce163ac993b4p-4L : inexact-ok
+= jn upward ldbl-128 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d4ce163ac993b8p-4L : inexact-ok
+= jn downward ldbl-128ibm 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d4ce163ac992p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d4ce163ac994p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d4ce163ac992p-4L : inexact-ok
+= jn upward ldbl-128ibm 2 0x2.67a2a8p+0L : 0x6.e877c013823b69d4ce163ac994p-4L : inexact-ok
+= jn downward flt-32 2 0x2.67a2a4p+0f : 0x6.e877bp-4f : inexact-ok
+= jn tonearest flt-32 2 0x2.67a2a4p+0f : 0x6.e877b8p-4f : inexact-ok
+= jn towardzero flt-32 2 0x2.67a2a4p+0f : 0x6.e877bp-4f : inexact-ok
+= jn upward flt-32 2 0x2.67a2a4p+0f : 0x6.e877b8p-4f : inexact-ok
+= jn downward dbl-64 2 0x2.67a2a4p+0 : 0x6.e877b5d4dc14p-4 : inexact-ok
+= jn tonearest dbl-64 2 0x2.67a2a4p+0 : 0x6.e877b5d4dc14p-4 : inexact-ok
+= jn towardzero dbl-64 2 0x2.67a2a4p+0 : 0x6.e877b5d4dc14p-4 : inexact-ok
+= jn upward dbl-64 2 0x2.67a2a4p+0 : 0x6.e877b5d4dc144p-4 : inexact-ok
+= jn downward ldbl-96-intel 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402a8p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402bp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402a8p-4L : inexact-ok
+= jn upward ldbl-96-intel 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402bp-4L : inexact-ok
+= jn downward ldbl-96-m68k 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402a8p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402bp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402a8p-4L : inexact-ok
+= jn upward ldbl-96-m68k 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402bp-4L : inexact-ok
+= jn downward ldbl-128 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402af1a88bb1c2edcp-4L : inexact-ok
+= jn tonearest ldbl-128 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402af1a88bb1c2edcp-4L : inexact-ok
+= jn towardzero ldbl-128 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402af1a88bb1c2edcp-4L : inexact-ok
+= jn upward ldbl-128 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402af1a88bb1c2eep-4L : inexact-ok
+= jn downward ldbl-128ibm 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402af1a88bb1c2ep-4L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402af1a88bb1c2ep-4L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402af1a88bb1c2ep-4L : inexact-ok
+= jn upward ldbl-128ibm 2 0x2.67a2a4p+0L : 0x6.e877b5d4dc1402af1a88bb1c3p-4L : inexact-ok
+= jn downward dbl-64 2 0x2.67a2a5d2e3682p+0 : 0x6.e877ba80a5254p-4 : inexact-ok
+= jn tonearest dbl-64 2 0x2.67a2a5d2e3682p+0 : 0x6.e877ba80a5254p-4 : inexact-ok
+= jn towardzero dbl-64 2 0x2.67a2a5d2e3682p+0 : 0x6.e877ba80a5254p-4 : inexact-ok
+= jn upward dbl-64 2 0x2.67a2a5d2e3682p+0 : 0x6.e877ba80a5258p-4 : inexact-ok
+= jn downward ldbl-96-intel 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c58p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c58p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c58p-4L : inexact-ok
+= jn upward ldbl-96-intel 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c6p-4L : inexact-ok
+= jn downward ldbl-96-m68k 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c58p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c58p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c58p-4L : inexact-ok
+= jn upward ldbl-96-m68k 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c6p-4L : inexact-ok
+= jn downward ldbl-128 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c5bd53e04ec11a8p-4L : inexact-ok
+= jn tonearest ldbl-128 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c5bd53e04ec11acp-4L : inexact-ok
+= jn towardzero ldbl-128 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c5bd53e04ec11a8p-4L : inexact-ok
+= jn upward ldbl-128 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c5bd53e04ec11acp-4L : inexact-ok
+= jn downward ldbl-128ibm 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c5bd53e04ec1p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c5bd53e04ec12p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c5bd53e04ec1p-4L : inexact-ok
+= jn upward ldbl-128ibm 2 0x2.67a2a5d2e3682p+0L : 0x6.e877ba80a5254c5bd53e04ec12p-4L : inexact-ok
+= jn downward dbl-64 2 0x2.67a2a5d2e368p+0 : 0x6.e877ba80a524cp-4 : inexact-ok
+= jn tonearest dbl-64 2 0x2.67a2a5d2e368p+0 : 0x6.e877ba80a525p-4 : inexact-ok
+= jn towardzero dbl-64 2 0x2.67a2a5d2e368p+0 : 0x6.e877ba80a524cp-4 : inexact-ok
+= jn upward dbl-64 2 0x2.67a2a5d2e368p+0 : 0x6.e877ba80a525p-4 : inexact-ok
+= jn downward ldbl-96-intel 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa6p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa68p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa6p-4L : inexact-ok
+= jn upward ldbl-96-intel 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa68p-4L : inexact-ok
+= jn downward ldbl-96-m68k 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa6p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa68p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa6p-4L : inexact-ok
+= jn upward ldbl-96-m68k 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa68p-4L : inexact-ok
+= jn downward ldbl-128 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa66a3f0c772dcecp-4L : inexact-ok
+= jn tonearest ldbl-128 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa66a3f0c772dcecp-4L : inexact-ok
+= jn towardzero ldbl-128 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa66a3f0c772dcecp-4L : inexact-ok
+= jn upward ldbl-128 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa66a3f0c772dcfp-4L : inexact-ok
+= jn downward ldbl-128ibm 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa66a3f0c772dcp-4L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa66a3f0c772dcp-4L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa66a3f0c772dcp-4L : inexact-ok
+= jn upward ldbl-128ibm 2 0x2.67a2a5d2e368p+0L : 0x6.e877ba80a524fa66a3f0c772dep-4L : inexact-ok
+= jn downward ldbl-96-intel 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcfp-4L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf8p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcfp-4L : inexact-ok
+= jn upward ldbl-96-intel 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf8p-4L : inexact-ok
+= jn downward ldbl-96-m68k 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcfp-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf8p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcfp-4L : inexact-ok
+= jn upward ldbl-96-m68k 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf8p-4L : inexact-ok
+= jn downward ldbl-128 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf64d7b315ea6c4p-4L : inexact-ok
+= jn tonearest ldbl-128 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf64d7b315ea6c4p-4L : inexact-ok
+= jn towardzero ldbl-128 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf64d7b315ea6c4p-4L : inexact-ok
+= jn upward ldbl-128 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf64d7b315ea6c8p-4L : inexact-ok
+= jn downward ldbl-128ibm 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf64d7b315ea6p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf64d7b315ea6p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf64d7b315ea6p-4L : inexact-ok
+= jn upward ldbl-128ibm 2 0x2.67a2a5d2e36801p+0L : 0x6.e877ba80a524fcf64d7b315ea8p-4L : inexact-ok
+= jn downward ldbl-96-intel 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fce8p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcfp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fce8p-4L : inexact-ok
+= jn upward ldbl-96-intel 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcfp-4L : inexact-ok
+= jn downward ldbl-96-m68k 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fce8p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcfp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fce8p-4L : inexact-ok
+= jn upward ldbl-96-m68k 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcfp-4L : inexact-ok
+= jn downward ldbl-128 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcec0ed507b6f79cp-4L : inexact-ok
+= jn tonearest ldbl-128 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcec0ed507b6f79cp-4L : inexact-ok
+= jn towardzero ldbl-128 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcec0ed507b6f79cp-4L : inexact-ok
+= jn upward ldbl-128 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcec0ed507b6f7ap-4L : inexact-ok
+= jn downward ldbl-128ibm 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcec0ed507b6f6p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcec0ed507b6f8p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcec0ed507b6f6p-4L : inexact-ok
+= jn upward ldbl-128ibm 2 0x2.67a2a5d2e36800fcp+0L : 0x6.e877ba80a524fcec0ed507b6f8p-4L : inexact-ok
+= jn downward ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x6.e877ba80a524fcee5679bdeb0eccp-4L : inexact-ok
+= jn tonearest ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x6.e877ba80a524fcee5679bdeb0eccp-4L : inexact-ok
+= jn towardzero ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x6.e877ba80a524fcee5679bdeb0eccp-4L : inexact-ok
+= jn upward ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x6.e877ba80a524fcee5679bdeb0edp-4L : inexact-ok
+= jn downward ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x6.e877ba80a524fcee5679bdeb0ec4p-4L : inexact-ok
+= jn tonearest ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x6.e877ba80a524fcee5679bdeb0ec8p-4L : inexact-ok
+= jn towardzero ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x6.e877ba80a524fcee5679bdeb0ec4p-4L : inexact-ok
+= jn upward ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x6.e877ba80a524fcee5679bdeb0ec8p-4L : inexact-ok
+= jn downward ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.e877ba80a524fcee5679bdeb105p-4L : inexact-ok
+= jn tonearest ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.e877ba80a524fcee5679bdeb105p-4L : inexact-ok
+= jn towardzero ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.e877ba80a524fcee5679bdeb105p-4L : inexact-ok
+= jn upward ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.e877ba80a524fcee5679bdeb1054p-4L : inexact-ok
+= jn downward ldbl-128ibm 2 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.e877ba80a524fcee5679bdeb1p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.e877ba80a524fcee5679bdeb1p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.e877ba80a524fcee5679bdeb1p-4L : inexact-ok
+= jn upward ldbl-128ibm 2 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.e877ba80a524fcee5679bdeb12p-4L : inexact-ok
+= jn downward ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.e877ba80a524fcee5679bdeb0dcp-4L : inexact-ok
+= jn tonearest ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.e877ba80a524fcee5679bdeb0dc4p-4L : inexact-ok
+= jn towardzero ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.e877ba80a524fcee5679bdeb0dcp-4L : inexact-ok
+= jn upward ldbl-128 2 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.e877ba80a524fcee5679bdeb0dc4p-4L : inexact-ok
+= jn downward ldbl-128ibm 2 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.e877ba80a524fcee5679bdeb0cp-4L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.e877ba80a524fcee5679bdeb0ep-4L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.e877ba80a524fcee5679bdeb0cp-4L : inexact-ok
+= jn upward ldbl-128ibm 2 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.e877ba80a524fcee5679bdeb0ep-4L : inexact-ok
+jn 3 2.4048255576957729
+= jn downward flt-32 3 0x2.67a2a8p+0f : 0x3.2f1a8cp-4f : inexact-ok
+= jn tonearest flt-32 3 0x2.67a2a8p+0f : 0x3.2f1a8cp-4f : inexact-ok
+= jn towardzero flt-32 3 0x2.67a2a8p+0f : 0x3.2f1a8cp-4f : inexact-ok
+= jn upward flt-32 3 0x2.67a2a8p+0f : 0x3.2f1a9p-4f : inexact-ok
+= jn downward dbl-64 3 0x2.67a2a8p+0 : 0x3.2f1a8cba6907ap-4 : inexact-ok
+= jn tonearest dbl-64 3 0x2.67a2a8p+0 : 0x3.2f1a8cba6907cp-4 : inexact-ok
+= jn towardzero dbl-64 3 0x2.67a2a8p+0 : 0x3.2f1a8cba6907ap-4 : inexact-ok
+= jn upward dbl-64 3 0x2.67a2a8p+0 : 0x3.2f1a8cba6907cp-4 : inexact-ok
+= jn downward ldbl-96-intel 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb64p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6p-4L : inexact-ok
+= jn upward ldbl-96-intel 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb64p-4L : inexact-ok
+= jn downward ldbl-96-m68k 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb64p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6p-4L : inexact-ok
+= jn upward ldbl-96-m68k 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb64p-4L : inexact-ok
+= jn downward ldbl-128 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6218bedbdc8ee4p-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6218bedbdc8ee6p-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6218bedbdc8ee4p-4L : inexact-ok
+= jn upward ldbl-128 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6218bedbdc8ee6p-4L : inexact-ok
+= jn downward ldbl-128ibm 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6218bedbdc8ep-4L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6218bedbdc8fp-4L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6218bedbdc8ep-4L : inexact-ok
+= jn upward ldbl-128ibm 3 0x2.67a2a8p+0L : 0x3.2f1a8cba6907bb6218bedbdc8fp-4L : inexact-ok
+= jn downward flt-32 3 0x2.67a2a4p+0f : 0x3.2f1a8p-4f : inexact-ok
+= jn tonearest flt-32 3 0x2.67a2a4p+0f : 0x3.2f1a8p-4f : inexact-ok
+= jn towardzero flt-32 3 0x2.67a2a4p+0f : 0x3.2f1a8p-4f : inexact-ok
+= jn upward flt-32 3 0x2.67a2a4p+0f : 0x3.2f1a84p-4f : inexact-ok
+= jn downward dbl-64 3 0x2.67a2a4p+0 : 0x3.2f1a80fbe12cp-4 : inexact-ok
+= jn tonearest dbl-64 3 0x2.67a2a4p+0 : 0x3.2f1a80fbe12cp-4 : inexact-ok
+= jn towardzero dbl-64 3 0x2.67a2a4p+0 : 0x3.2f1a80fbe12cp-4 : inexact-ok
+= jn upward dbl-64 3 0x2.67a2a4p+0 : 0x3.2f1a80fbe12c2p-4 : inexact-ok
+= jn downward ldbl-96-intel 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d38p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d38p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d38p-4L : inexact-ok
+= jn upward ldbl-96-intel 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d3cp-4L : inexact-ok
+= jn downward ldbl-96-m68k 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d38p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d38p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d38p-4L : inexact-ok
+= jn upward ldbl-96-m68k 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d3cp-4L : inexact-ok
+= jn downward ldbl-128 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d39ed8c1d8cce62p-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d39ed8c1d8cce62p-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d39ed8c1d8cce62p-4L : inexact-ok
+= jn upward ldbl-128 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d39ed8c1d8cce64p-4L : inexact-ok
+= jn downward ldbl-128ibm 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d39ed8c1d8ccep-4L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d39ed8c1d8ccep-4L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d39ed8c1d8ccep-4L : inexact-ok
+= jn upward ldbl-128ibm 3 0x2.67a2a4p+0L : 0x3.2f1a80fbe12c0d39ed8c1d8ccfp-4L : inexact-ok
+= jn downward dbl-64 3 0x2.67a2a5d2e3682p+0 : 0x3.2f1a8656b1accp-4 : inexact-ok
+= jn tonearest dbl-64 3 0x2.67a2a5d2e3682p+0 : 0x3.2f1a8656b1accp-4 : inexact-ok
+= jn towardzero dbl-64 3 0x2.67a2a5d2e3682p+0 : 0x3.2f1a8656b1accp-4 : inexact-ok
+= jn upward dbl-64 3 0x2.67a2a5d2e3682p+0 : 0x3.2f1a8656b1acep-4 : inexact-ok
+= jn downward ldbl-96-intel 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc43p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc43p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc43p-4L : inexact-ok
+= jn upward ldbl-96-intel 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc434p-4L : inexact-ok
+= jn downward ldbl-96-m68k 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc43p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc43p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc43p-4L : inexact-ok
+= jn upward ldbl-96-m68k 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc434p-4L : inexact-ok
+= jn downward ldbl-128 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc431747ce21909d4p-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc431747ce21909d6p-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc431747ce21909d4p-4L : inexact-ok
+= jn upward ldbl-128 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc431747ce21909d6p-4L : inexact-ok
+= jn downward ldbl-128ibm 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc431747ce21909p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc431747ce2190ap-4L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc431747ce21909p-4L : inexact-ok
+= jn upward ldbl-128ibm 3 0x2.67a2a5d2e3682p+0L : 0x3.2f1a8656b1acc431747ce2190ap-4L : inexact-ok
+= jn downward dbl-64 3 0x2.67a2a5d2e368p+0 : 0x3.2f1a8656b1ac6p-4 : inexact-ok
+= jn tonearest dbl-64 3 0x2.67a2a5d2e368p+0 : 0x3.2f1a8656b1ac6p-4 : inexact-ok
+= jn towardzero dbl-64 3 0x2.67a2a5d2e368p+0 : 0x3.2f1a8656b1ac6p-4 : inexact-ok
+= jn upward dbl-64 3 0x2.67a2a5d2e368p+0 : 0x3.2f1a8656b1ac8p-4 : inexact-ok
+= jn downward ldbl-96-intel 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663cp-4L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663cp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663cp-4L : inexact-ok
+= jn upward ldbl-96-intel 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac664p-4L : inexact-ok
+= jn downward ldbl-96-m68k 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663cp-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663cp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663cp-4L : inexact-ok
+= jn upward ldbl-96-m68k 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac664p-4L : inexact-ok
+= jn downward ldbl-128 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663d35a28b05560cp-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663d35a28b05560ep-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663d35a28b05560cp-4L : inexact-ok
+= jn upward ldbl-128 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663d35a28b05560ep-4L : inexact-ok
+= jn downward ldbl-128ibm 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663d35a28b0556p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663d35a28b0556p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663d35a28b0556p-4L : inexact-ok
+= jn upward ldbl-128ibm 3 0x2.67a2a5d2e368p+0L : 0x3.2f1a8656b1ac663d35a28b0557p-4L : inexact-ok
+= jn downward ldbl-96-intel 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cp-4L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cp-4L : inexact-ok
+= jn upward ldbl-96-intel 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac693p-4L : inexact-ok
+= jn downward ldbl-96-m68k 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cp-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cp-4L : inexact-ok
+= jn upward ldbl-96-m68k 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac693p-4L : inexact-ok
+= jn downward ldbl-128 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cd7995dbdf3a2p-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cd7995dbdf3a4p-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cd7995dbdf3a2p-4L : inexact-ok
+= jn upward ldbl-128 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cd7995dbdf3a4p-4L : inexact-ok
+= jn downward ldbl-128ibm 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cd7995dbdf3p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cd7995dbdf4p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cd7995dbdf3p-4L : inexact-ok
+= jn upward ldbl-128ibm 3 0x2.67a2a5d2e36801p+0L : 0x3.2f1a8656b1ac692cd7995dbdf4p-4L : inexact-ok
+= jn downward ldbl-96-intel 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac692p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac692p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac692p-4L : inexact-ok
+= jn upward ldbl-96-intel 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac6924p-4L : inexact-ok
+= jn downward ldbl-96-m68k 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac692p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac692p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac692p-4L : inexact-ok
+= jn upward ldbl-96-m68k 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac6924p-4L : inexact-ok
+= jn downward ldbl-128 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac692119118273112cp-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac692119118273112cp-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac692119118273112cp-4L : inexact-ok
+= jn upward ldbl-128 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac692119118273112ep-4L : inexact-ok
+= jn downward ldbl-128ibm 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac69211911827311p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac69211911827311p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac69211911827311p-4L : inexact-ok
+= jn upward ldbl-128ibm 3 0x2.67a2a5d2e36800fcp+0L : 0x3.2f1a8656b1ac69211911827312p-4L : inexact-ok
+= jn downward ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x3.2f1a8656b1ac6923b62403c2608p-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x3.2f1a8656b1ac6923b62403c2608p-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x3.2f1a8656b1ac6923b62403c2608p-4L : inexact-ok
+= jn upward ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x3.2f1a8656b1ac6923b62403c26082p-4L : inexact-ok
+= jn downward ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x3.2f1a8656b1ac6923b62403c2607ap-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x3.2f1a8656b1ac6923b62403c2607cp-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x3.2f1a8656b1ac6923b62403c2607ap-4L : inexact-ok
+= jn upward ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x3.2f1a8656b1ac6923b62403c2607cp-4L : inexact-ok
+= jn downward ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x3.2f1a8656b1ac6923b62403c2623ep-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x3.2f1a8656b1ac6923b62403c2624p-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x3.2f1a8656b1ac6923b62403c2623ep-4L : inexact-ok
+= jn upward ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x3.2f1a8656b1ac6923b62403c2624p-4L : inexact-ok
+= jn downward ldbl-128ibm 3 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x3.2f1a8656b1ac6923b62403c262p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x3.2f1a8656b1ac6923b62403c262p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x3.2f1a8656b1ac6923b62403c262p-4L : inexact-ok
+= jn upward ldbl-128ibm 3 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x3.2f1a8656b1ac6923b62403c263p-4L : inexact-ok
+= jn downward ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x3.2f1a8656b1ac6923b62403c25f4ep-4L : inexact-ok
+= jn tonearest ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x3.2f1a8656b1ac6923b62403c25f5p-4L : inexact-ok
+= jn towardzero ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x3.2f1a8656b1ac6923b62403c25f4ep-4L : inexact-ok
+= jn upward ldbl-128 3 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x3.2f1a8656b1ac6923b62403c25f5p-4L : inexact-ok
+= jn downward ldbl-128ibm 3 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x3.2f1a8656b1ac6923b62403c25fp-4L : inexact-ok
+= jn tonearest ldbl-128ibm 3 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x3.2f1a8656b1ac6923b62403c25fp-4L : inexact-ok
+= jn towardzero ldbl-128ibm 3 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x3.2f1a8656b1ac6923b62403c25fp-4L : inexact-ok
+= jn upward ldbl-128ibm 3 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x3.2f1a8656b1ac6923b62403c26p-4L : inexact-ok
+jn 4 2.4048255576957729
+= jn downward flt-32 4 0x2.67a2a8p+0f : 0x1.0933dp-4f : inexact-ok
+= jn tonearest flt-32 4 0x2.67a2a8p+0f : 0x1.0933dp-4f : inexact-ok
+= jn towardzero flt-32 4 0x2.67a2a8p+0f : 0x1.0933dp-4f : inexact-ok
+= jn upward flt-32 4 0x2.67a2a8p+0f : 0x1.0933d2p-4f : inexact-ok
+= jn downward dbl-64 4 0x2.67a2a8p+0 : 0x1.0933d0091440cp-4 : inexact-ok
+= jn tonearest dbl-64 4 0x2.67a2a8p+0 : 0x1.0933d0091440dp-4 : inexact-ok
+= jn towardzero dbl-64 4 0x2.67a2a8p+0 : 0x1.0933d0091440cp-4 : inexact-ok
+= jn upward dbl-64 4 0x2.67a2a8p+0 : 0x1.0933d0091440dp-4 : inexact-ok
+= jn downward ldbl-96-intel 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccacp-4L : inexact-ok
+= jn tonearest ldbl-96-intel 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccacp-4L : inexact-ok
+= jn towardzero ldbl-96-intel 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccacp-4L : inexact-ok
+= jn upward ldbl-96-intel 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccaep-4L : inexact-ok
+= jn downward ldbl-96-m68k 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccacp-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccacp-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccacp-4L : inexact-ok
+= jn upward ldbl-96-m68k 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccaep-4L : inexact-ok
+= jn downward ldbl-128 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccac79775018468cp-4L : inexact-ok
+= jn tonearest ldbl-128 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccac79775018468dp-4L : inexact-ok
+= jn towardzero ldbl-128 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccac79775018468cp-4L : inexact-ok
+= jn upward ldbl-128 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccac79775018468dp-4L : inexact-ok
+= jn downward ldbl-128ibm 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccac79775018468p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccac79775018468p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccac79775018468p-4L : inexact-ok
+= jn upward ldbl-128ibm 4 0x2.67a2a8p+0L : 0x1.0933d0091440ccac7977501847p-4L : inexact-ok
+= jn downward flt-32 4 0x2.67a2a4p+0f : 0x1.0933cap-4f : inexact-ok
+= jn tonearest flt-32 4 0x2.67a2a4p+0f : 0x1.0933cap-4f : inexact-ok
+= jn towardzero flt-32 4 0x2.67a2a4p+0f : 0x1.0933cap-4f : inexact-ok
+= jn upward flt-32 4 0x2.67a2a4p+0f : 0x1.0933ccp-4f : inexact-ok
+= jn downward dbl-64 4 0x2.67a2a4p+0 : 0x1.0933ca3121ef3p-4 : inexact-ok
+= jn tonearest dbl-64 4 0x2.67a2a4p+0 : 0x1.0933ca3121ef3p-4 : inexact-ok
+= jn towardzero dbl-64 4 0x2.67a2a4p+0 : 0x1.0933ca3121ef3p-4 : inexact-ok
+= jn upward dbl-64 4 0x2.67a2a4p+0 : 0x1.0933ca3121ef4p-4 : inexact-ok
+= jn downward ldbl-96-intel 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ecp-4L : inexact-ok
+= jn tonearest ldbl-96-intel 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34eep-4L : inexact-ok
+= jn towardzero ldbl-96-intel 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ecp-4L : inexact-ok
+= jn upward ldbl-96-intel 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34eep-4L : inexact-ok
+= jn downward ldbl-96-m68k 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ecp-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34eep-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ecp-4L : inexact-ok
+= jn upward ldbl-96-m68k 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34eep-4L : inexact-ok
+= jn downward ldbl-128 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ed2012c04120bcp-4L : inexact-ok
+= jn tonearest ldbl-128 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ed2012c04120bdp-4L : inexact-ok
+= jn towardzero ldbl-128 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ed2012c04120bcp-4L : inexact-ok
+= jn upward ldbl-128 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ed2012c04120bdp-4L : inexact-ok
+= jn downward ldbl-128ibm 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ed2012c041208p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ed2012c041208p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ed2012c041208p-4L : inexact-ok
+= jn upward ldbl-128ibm 4 0x2.67a2a4p+0L : 0x1.0933ca3121ef34ed2012c04121p-4L : inexact-ok
+= jn downward dbl-64 4 0x2.67a2a5d2e3682p+0 : 0x1.0933ccdb33e9fp-4 : inexact-ok
+= jn tonearest dbl-64 4 0x2.67a2a5d2e3682p+0 : 0x1.0933ccdb33eap-4 : inexact-ok
+= jn towardzero dbl-64 4 0x2.67a2a5d2e3682p+0 : 0x1.0933ccdb33e9fp-4 : inexact-ok
+= jn upward dbl-64 4 0x2.67a2a5d2e3682p+0 : 0x1.0933ccdb33eap-4 : inexact-ok
+= jn downward ldbl-96-intel 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48p-4L : inexact-ok
+= jn upward ldbl-96-intel 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe4ap-4L : inexact-ok
+= jn downward ldbl-96-m68k 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48p-4L : inexact-ok
+= jn upward ldbl-96-m68k 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe4ap-4L : inexact-ok
+= jn downward ldbl-128 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48e277a5faf45cp-4L : inexact-ok
+= jn tonearest ldbl-128 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48e277a5faf45cp-4L : inexact-ok
+= jn towardzero ldbl-128 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48e277a5faf45cp-4L : inexact-ok
+= jn upward ldbl-128 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48e277a5faf45dp-4L : inexact-ok
+= jn downward ldbl-128ibm 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48e277a5faf4p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48e277a5faf48p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48e277a5faf4p-4L : inexact-ok
+= jn upward ldbl-128ibm 4 0x2.67a2a5d2e3682p+0L : 0x1.0933ccdb33e9fe48e277a5faf48p-4L : inexact-ok
+= jn downward dbl-64 4 0x2.67a2a5d2e368p+0 : 0x1.0933ccdb33e9cp-4 : inexact-ok
+= jn tonearest dbl-64 4 0x2.67a2a5d2e368p+0 : 0x1.0933ccdb33e9dp-4 : inexact-ok
+= jn towardzero dbl-64 4 0x2.67a2a5d2e368p+0 : 0x1.0933ccdb33e9cp-4 : inexact-ok
+= jn upward dbl-64 4 0x2.67a2a5d2e368p+0 : 0x1.0933ccdb33e9dp-4 : inexact-ok
+= jn downward ldbl-96-intel 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf88p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf8ap-4L : inexact-ok
+= jn towardzero ldbl-96-intel 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf88p-4L : inexact-ok
+= jn upward ldbl-96-intel 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf8ap-4L : inexact-ok
+= jn downward ldbl-96-m68k 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf88p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf8ap-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf88p-4L : inexact-ok
+= jn upward ldbl-96-m68k 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf8ap-4L : inexact-ok
+= jn downward ldbl-128 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf894ff1cd022ca1p-4L : inexact-ok
+= jn tonearest ldbl-128 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf894ff1cd022ca2p-4L : inexact-ok
+= jn towardzero ldbl-128 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf894ff1cd022ca1p-4L : inexact-ok
+= jn upward ldbl-128 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf894ff1cd022ca2p-4L : inexact-ok
+= jn downward ldbl-128ibm 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf894ff1cd022c8p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf894ff1cd022c8p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf894ff1cd022c8p-4L : inexact-ok
+= jn upward ldbl-128ibm 4 0x2.67a2a5d2e368p+0L : 0x1.0933ccdb33e9cf894ff1cd022dp-4L : inexact-ok
+= jn downward ldbl-96-intel 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0fep-4L : inexact-ok
+= jn tonearest ldbl-96-intel 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d1p-4L : inexact-ok
+= jn towardzero ldbl-96-intel 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0fep-4L : inexact-ok
+= jn upward ldbl-96-intel 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d1p-4L : inexact-ok
+= jn downward ldbl-96-m68k 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0fep-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d1p-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0fep-4L : inexact-ok
+= jn upward ldbl-96-m68k 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d1p-4L : inexact-ok
+= jn downward ldbl-128 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0ff4c85fbc9f2ccp-4L : inexact-ok
+= jn tonearest ldbl-128 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0ff4c85fbc9f2cdp-4L : inexact-ok
+= jn towardzero ldbl-128 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0ff4c85fbc9f2ccp-4L : inexact-ok
+= jn upward ldbl-128 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0ff4c85fbc9f2cdp-4L : inexact-ok
+= jn downward ldbl-128ibm 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0ff4c85fbc9f28p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0ff4c85fbc9f3p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0ff4c85fbc9f28p-4L : inexact-ok
+= jn upward ldbl-128ibm 4 0x2.67a2a5d2e36801p+0L : 0x1.0933ccdb33e9d0ff4c85fbc9f3p-4L : inexact-ok
+= jn downward ldbl-96-intel 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f8p-4L : inexact-ok
+= jn tonearest ldbl-96-intel 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0fap-4L : inexact-ok
+= jn towardzero ldbl-96-intel 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f8p-4L : inexact-ok
+= jn upward ldbl-96-intel 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0fap-4L : inexact-ok
+= jn downward ldbl-96-m68k 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f8p-4L : inexact-ok
+= jn tonearest ldbl-96-m68k 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0fap-4L : inexact-ok
+= jn towardzero ldbl-96-m68k 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f8p-4L : inexact-ok
+= jn upward ldbl-96-m68k 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0fap-4L : inexact-ok
+= jn downward ldbl-128 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f97493ab0ed3b3p-4L : inexact-ok
+= jn tonearest ldbl-128 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f97493ab0ed3b4p-4L : inexact-ok
+= jn towardzero ldbl-128 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f97493ab0ed3b3p-4L : inexact-ok
+= jn upward ldbl-128 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f97493ab0ed3b4p-4L : inexact-ok
+= jn downward ldbl-128ibm 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f97493ab0ed38p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f97493ab0ed38p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f97493ab0ed38p-4L : inexact-ok
+= jn upward ldbl-128ibm 4 0x2.67a2a5d2e36800fcp+0L : 0x1.0933ccdb33e9d0f97493ab0ed4p-4L : inexact-ok
+= jn downward ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x1.0933ccdb33e9d0fac17bf7b397b1p-4L : inexact-ok
+= jn tonearest ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x1.0933ccdb33e9d0fac17bf7b397b1p-4L : inexact-ok
+= jn towardzero ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x1.0933ccdb33e9d0fac17bf7b397b1p-4L : inexact-ok
+= jn upward ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x1.0933ccdb33e9d0fac17bf7b397b2p-4L : inexact-ok
+= jn downward ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x1.0933ccdb33e9d0fac17bf7b397aep-4L : inexact-ok
+= jn tonearest ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x1.0933ccdb33e9d0fac17bf7b397aep-4L : inexact-ok
+= jn towardzero ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x1.0933ccdb33e9d0fac17bf7b397aep-4L : inexact-ok
+= jn upward ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x1.0933ccdb33e9d0fac17bf7b397afp-4L : inexact-ok
+= jn downward ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x1.0933ccdb33e9d0fac17bf7b3988fp-4L : inexact-ok
+= jn tonearest ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x1.0933ccdb33e9d0fac17bf7b3988fp-4L : inexact-ok
+= jn towardzero ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x1.0933ccdb33e9d0fac17bf7b3988fp-4L : inexact-ok
+= jn upward ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x1.0933ccdb33e9d0fac17bf7b3989p-4L : inexact-ok
+= jn downward ldbl-128ibm 4 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x1.0933ccdb33e9d0fac17bf7b3988p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 4 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x1.0933ccdb33e9d0fac17bf7b3988p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 4 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x1.0933ccdb33e9d0fac17bf7b3988p-4L : inexact-ok
+= jn upward ldbl-128ibm 4 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x1.0933ccdb33e9d0fac17bf7b399p-4L : inexact-ok
+= jn downward ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x1.0933ccdb33e9d0fac17bf7b39719p-4L : inexact-ok
+= jn tonearest ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x1.0933ccdb33e9d0fac17bf7b39719p-4L : inexact-ok
+= jn towardzero ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x1.0933ccdb33e9d0fac17bf7b39719p-4L : inexact-ok
+= jn upward ldbl-128 4 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x1.0933ccdb33e9d0fac17bf7b3971ap-4L : inexact-ok
+= jn downward ldbl-128ibm 4 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x1.0933ccdb33e9d0fac17bf7b397p-4L : inexact-ok
+= jn tonearest ldbl-128ibm 4 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x1.0933ccdb33e9d0fac17bf7b397p-4L : inexact-ok
+= jn towardzero ldbl-128ibm 4 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x1.0933ccdb33e9d0fac17bf7b397p-4L : inexact-ok
+= jn upward ldbl-128ibm 4 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x1.0933ccdb33e9d0fac17bf7b3978p-4L : inexact-ok
+jn 5 2.4048255576957729
+= jn downward flt-32 5 0x2.67a2a8p+0f : 0x4.3215fp-8f : inexact-ok
+= jn tonearest flt-32 5 0x2.67a2a8p+0f : 0x4.3215fp-8f : inexact-ok
+= jn towardzero flt-32 5 0x2.67a2a8p+0f : 0x4.3215fp-8f : inexact-ok
+= jn upward flt-32 5 0x2.67a2a8p+0f : 0x4.3215f8p-8f : inexact-ok
+= jn downward dbl-64 5 0x2.67a2a8p+0 : 0x4.3215f0a87047p-8 : inexact-ok
+= jn tonearest dbl-64 5 0x2.67a2a8p+0 : 0x4.3215f0a87047p-8 : inexact-ok
+= jn towardzero dbl-64 5 0x2.67a2a8p+0 : 0x4.3215f0a87047p-8 : inexact-ok
+= jn upward dbl-64 5 0x2.67a2a8p+0 : 0x4.3215f0a870474p-8 : inexact-ok
+= jn downward ldbl-96-intel 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a3p-8L : inexact-ok
+= jn tonearest ldbl-96-intel 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a3p-8L : inexact-ok
+= jn towardzero ldbl-96-intel 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a3p-8L : inexact-ok
+= jn upward ldbl-96-intel 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a38p-8L : inexact-ok
+= jn downward ldbl-96-m68k 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a3p-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a3p-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a3p-8L : inexact-ok
+= jn upward ldbl-96-m68k 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a38p-8L : inexact-ok
+= jn downward ldbl-128 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a307b29df5ec01cp-8L : inexact-ok
+= jn tonearest ldbl-128 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a307b29df5ec02p-8L : inexact-ok
+= jn towardzero ldbl-128 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a307b29df5ec01cp-8L : inexact-ok
+= jn upward ldbl-128 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a307b29df5ec02p-8L : inexact-ok
+= jn downward ldbl-128ibm 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a307b29df5ecp-8L : inexact-ok
+= jn tonearest ldbl-128ibm 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a307b29df5ecp-8L : inexact-ok
+= jn towardzero ldbl-128ibm 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a307b29df5ecp-8L : inexact-ok
+= jn upward ldbl-128ibm 5 0x2.67a2a8p+0L : 0x4.3215f0a870471a307b29df5ec2p-8L : inexact-ok
+= jn downward flt-32 5 0x2.67a2a4p+0f : 0x4.3215dp-8f : inexact-ok
+= jn tonearest flt-32 5 0x2.67a2a4p+0f : 0x4.3215dp-8f : inexact-ok
+= jn towardzero flt-32 5 0x2.67a2a4p+0f : 0x4.3215dp-8f : inexact-ok
+= jn upward flt-32 5 0x2.67a2a4p+0f : 0x4.3215d8p-8f : inexact-ok
+= jn downward dbl-64 5 0x2.67a2a4p+0 : 0x4.3215d1403d64p-8 : inexact-ok
+= jn tonearest dbl-64 5 0x2.67a2a4p+0 : 0x4.3215d1403d644p-8 : inexact-ok
+= jn towardzero dbl-64 5 0x2.67a2a4p+0 : 0x4.3215d1403d64p-8 : inexact-ok
+= jn upward dbl-64 5 0x2.67a2a4p+0 : 0x4.3215d1403d644p-8 : inexact-ok
+= jn downward ldbl-96-intel 5 0x2.67a2a4p+0L : 0x4.3215d1403d642608p-8L : inexact-ok
+= jn tonearest ldbl-96-intel 5 0x2.67a2a4p+0L : 0x4.3215d1403d64261p-8L : inexact-ok
+= jn towardzero ldbl-96-intel 5 0x2.67a2a4p+0L : 0x4.3215d1403d642608p-8L : inexact-ok
+= jn upward ldbl-96-intel 5 0x2.67a2a4p+0L : 0x4.3215d1403d64261p-8L : inexact-ok
+= jn downward ldbl-96-m68k 5 0x2.67a2a4p+0L : 0x4.3215d1403d642608p-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 5 0x2.67a2a4p+0L : 0x4.3215d1403d64261p-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 5 0x2.67a2a4p+0L : 0x4.3215d1403d642608p-8L : inexact-ok
+= jn upward ldbl-96-m68k 5 0x2.67a2a4p+0L : 0x4.3215d1403d64261p-8L : inexact-ok
+= jn downward ldbl-128 5 0x2.67a2a4p+0L : 0x4.3215d1403d64260fb600f2449d74p-8L : inexact-ok
+= jn tonearest ldbl-128 5 0x2.67a2a4p+0L : 0x4.3215d1403d64260fb600f2449d78p-8L : inexact-ok
+= jn towardzero ldbl-128 5 0x2.67a2a4p+0L : 0x4.3215d1403d64260fb600f2449d74p-8L : inexact-ok
+= jn upward ldbl-128 5 0x2.67a2a4p+0L : 0x4.3215d1403d64260fb600f2449d78p-8L : inexact-ok
+= jn downward ldbl-128ibm 5 0x2.67a2a4p+0L : 0x4.3215d1403d64260fb600f2449cp-8L : inexact-ok
+= jn tonearest ldbl-128ibm 5 0x2.67a2a4p+0L : 0x4.3215d1403d64260fb600f2449ep-8L : inexact-ok
+= jn towardzero ldbl-128ibm 5 0x2.67a2a4p+0L : 0x4.3215d1403d64260fb600f2449cp-8L : inexact-ok
+= jn upward ldbl-128ibm 5 0x2.67a2a4p+0L : 0x4.3215d1403d64260fb600f2449ep-8L : inexact-ok
+= jn downward dbl-64 5 0x2.67a2a5d2e3682p+0 : 0x4.3215df922202p-8 : inexact-ok
+= jn tonearest dbl-64 5 0x2.67a2a5d2e3682p+0 : 0x4.3215df922202p-8 : inexact-ok
+= jn towardzero dbl-64 5 0x2.67a2a5d2e3682p+0 : 0x4.3215df922202p-8 : inexact-ok
+= jn upward dbl-64 5 0x2.67a2a5d2e3682p+0 : 0x4.3215df9222024p-8 : inexact-ok
+= jn downward ldbl-96-intel 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166p-8L : inexact-ok
+= jn tonearest ldbl-96-intel 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df9222021668p-8L : inexact-ok
+= jn towardzero ldbl-96-intel 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166p-8L : inexact-ok
+= jn upward ldbl-96-intel 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df9222021668p-8L : inexact-ok
+= jn downward ldbl-96-m68k 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166p-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df9222021668p-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166p-8L : inexact-ok
+= jn upward ldbl-96-m68k 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df9222021668p-8L : inexact-ok
+= jn downward ldbl-128 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166769a33760502p-8L : inexact-ok
+= jn tonearest ldbl-128 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166769a33760502p-8L : inexact-ok
+= jn towardzero ldbl-128 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166769a33760502p-8L : inexact-ok
+= jn upward ldbl-128 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166769a337605024p-8L : inexact-ok
+= jn downward ldbl-128ibm 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166769a337605p-8L : inexact-ok
+= jn tonearest ldbl-128ibm 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166769a337605p-8L : inexact-ok
+= jn towardzero ldbl-128ibm 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166769a337605p-8L : inexact-ok
+= jn upward ldbl-128ibm 5 0x2.67a2a5d2e3682p+0L : 0x4.3215df922202166769a3376052p-8L : inexact-ok
+= jn downward dbl-64 5 0x2.67a2a5d2e368p+0 : 0x4.3215df922201p-8 : inexact-ok
+= jn tonearest dbl-64 5 0x2.67a2a5d2e368p+0 : 0x4.3215df922201p-8 : inexact-ok
+= jn towardzero dbl-64 5 0x2.67a2a5d2e368p+0 : 0x4.3215df922201p-8 : inexact-ok
+= jn upward dbl-64 5 0x2.67a2a5d2e368p+0 : 0x4.3215df9222014p-8 : inexact-ok
+= jn downward ldbl-96-intel 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b2p-8L : inexact-ok
+= jn tonearest ldbl-96-intel 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b28p-8L : inexact-ok
+= jn towardzero ldbl-96-intel 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b2p-8L : inexact-ok
+= jn upward ldbl-96-intel 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b28p-8L : inexact-ok
+= jn downward ldbl-96-m68k 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b2p-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b28p-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b2p-8L : inexact-ok
+= jn upward ldbl-96-m68k 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b28p-8L : inexact-ok
+= jn downward ldbl-128 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b25d2c7cad726dp-8L : inexact-ok
+= jn tonearest ldbl-128 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b25d2c7cad726d4p-8L : inexact-ok
+= jn towardzero ldbl-128 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b25d2c7cad726dp-8L : inexact-ok
+= jn upward ldbl-128 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b25d2c7cad726d4p-8L : inexact-ok
+= jn downward ldbl-128ibm 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b25d2c7cad726p-8L : inexact-ok
+= jn tonearest ldbl-128ibm 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b25d2c7cad726p-8L : inexact-ok
+= jn towardzero ldbl-128ibm 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b25d2c7cad726p-8L : inexact-ok
+= jn upward ldbl-128ibm 5 0x2.67a2a5d2e368p+0L : 0x4.3215df9222011b25d2c7cad728p-8L : inexact-ok
+= jn downward ldbl-96-intel 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122f8p-8L : inexact-ok
+= jn tonearest ldbl-96-intel 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220123p-8L : inexact-ok
+= jn towardzero ldbl-96-intel 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122f8p-8L : inexact-ok
+= jn upward ldbl-96-intel 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220123p-8L : inexact-ok
+= jn downward ldbl-96-m68k 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122f8p-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220123p-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122f8p-8L : inexact-ok
+= jn upward ldbl-96-m68k 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220123p-8L : inexact-ok
+= jn downward ldbl-128 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122ffdf7ea63b6f78p-8L : inexact-ok
+= jn tonearest ldbl-128 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122ffdf7ea63b6f78p-8L : inexact-ok
+= jn towardzero ldbl-128 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122ffdf7ea63b6f78p-8L : inexact-ok
+= jn upward ldbl-128 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122ffdf7ea63b6f7cp-8L : inexact-ok
+= jn downward ldbl-128ibm 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122ffdf7ea63b6ep-8L : inexact-ok
+= jn tonearest ldbl-128ibm 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122ffdf7ea63b7p-8L : inexact-ok
+= jn towardzero ldbl-128ibm 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122ffdf7ea63b6ep-8L : inexact-ok
+= jn upward ldbl-128ibm 5 0x2.67a2a5d2e36801p+0L : 0x4.3215df92220122ffdf7ea63b7p-8L : inexact-ok
+= jn downward ldbl-96-intel 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122ep-8L : inexact-ok
+= jn tonearest ldbl-96-intel 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122ep-8L : inexact-ok
+= jn towardzero ldbl-96-intel 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122ep-8L : inexact-ok
+= jn upward ldbl-96-intel 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122e8p-8L : inexact-ok
+= jn downward ldbl-96-m68k 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122ep-8L : inexact-ok
+= jn tonearest ldbl-96-m68k 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122ep-8L : inexact-ok
+= jn towardzero ldbl-96-m68k 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122ep-8L : inexact-ok
+= jn upward ldbl-96-m68k 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122e8p-8L : inexact-ok
+= jn downward ldbl-128 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122e0774bcacdde54p-8L : inexact-ok
+= jn tonearest ldbl-128 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122e0774bcacdde58p-8L : inexact-ok
+= jn towardzero ldbl-128 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122e0774bcacdde54p-8L : inexact-ok
+= jn upward ldbl-128 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122e0774bcacdde58p-8L : inexact-ok
+= jn downward ldbl-128ibm 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122e0774bcacddep-8L : inexact-ok
+= jn tonearest ldbl-128ibm 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122e0774bcacddep-8L : inexact-ok
+= jn towardzero ldbl-128ibm 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122e0774bcacddep-8L : inexact-ok
+= jn upward ldbl-128ibm 5 0x2.67a2a5d2e36800fcp+0L : 0x4.3215df92220122e0774bcacdep-8L : inexact-ok
+= jn downward ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x4.3215df92220122e7748f1e2e7868p-8L : inexact-ok
+= jn tonearest ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x4.3215df92220122e7748f1e2e7868p-8L : inexact-ok
+= jn towardzero ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x4.3215df92220122e7748f1e2e7868p-8L : inexact-ok
+= jn upward ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x4.3215df92220122e7748f1e2e786cp-8L : inexact-ok
+= jn downward ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x4.3215df92220122e7748f1e2e7858p-8L : inexact-ok
+= jn tonearest ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x4.3215df92220122e7748f1e2e7858p-8L : inexact-ok
+= jn towardzero ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x4.3215df92220122e7748f1e2e7858p-8L : inexact-ok
+= jn upward ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x4.3215df92220122e7748f1e2e785cp-8L : inexact-ok
+= jn downward ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x4.3215df92220122e7748f1e2e7d1p-8L : inexact-ok
+= jn tonearest ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x4.3215df92220122e7748f1e2e7d14p-8L : inexact-ok
+= jn towardzero ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x4.3215df92220122e7748f1e2e7d1p-8L : inexact-ok
+= jn upward ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x4.3215df92220122e7748f1e2e7d14p-8L : inexact-ok
+= jn downward ldbl-128ibm 5 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x4.3215df92220122e7748f1e2e7cp-8L : inexact-ok
+= jn tonearest ldbl-128ibm 5 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x4.3215df92220122e7748f1e2e7ep-8L : inexact-ok
+= jn towardzero ldbl-128ibm 5 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x4.3215df92220122e7748f1e2e7cp-8L : inexact-ok
+= jn upward ldbl-128ibm 5 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x4.3215df92220122e7748f1e2e7ep-8L : inexact-ok
+= jn downward ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x4.3215df92220122e7748f1e2e7538p-8L : inexact-ok
+= jn tonearest ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x4.3215df92220122e7748f1e2e7538p-8L : inexact-ok
+= jn towardzero ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x4.3215df92220122e7748f1e2e7538p-8L : inexact-ok
+= jn upward ldbl-128 5 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x4.3215df92220122e7748f1e2e753cp-8L : inexact-ok
+= jn downward ldbl-128ibm 5 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x4.3215df92220122e7748f1e2e74p-8L : inexact-ok
+= jn tonearest ldbl-128ibm 5 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x4.3215df92220122e7748f1e2e76p-8L : inexact-ok
+= jn towardzero ldbl-128ibm 5 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x4.3215df92220122e7748f1e2e74p-8L : inexact-ok
+= jn upward ldbl-128ibm 5 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x4.3215df92220122e7748f1e2e76p-8L : inexact-ok
+jn 6 2.4048255576957729
+= jn downward flt-32 6 0x2.67a2a8p+0f : 0xd.f2364p-12f : inexact-ok
+= jn tonearest flt-32 6 0x2.67a2a8p+0f : 0xd.f2364p-12f : inexact-ok
+= jn towardzero flt-32 6 0x2.67a2a8p+0f : 0xd.f2364p-12f : inexact-ok
+= jn upward flt-32 6 0x2.67a2a8p+0f : 0xd.f2365p-12f : inexact-ok
+= jn downward dbl-64 6 0x2.67a2a8p+0 : 0xd.f23646259085p-12 : inexact-ok
+= jn tonearest dbl-64 6 0x2.67a2a8p+0 : 0xd.f236462590858p-12 : inexact-ok
+= jn towardzero dbl-64 6 0x2.67a2a8p+0 : 0xd.f23646259085p-12 : inexact-ok
+= jn upward dbl-64 6 0x2.67a2a8p+0 : 0xd.f236462590858p-12 : inexact-ok
+= jn downward ldbl-96-intel 6 0x2.67a2a8p+0L : 0xd.f2364625908550ap-12L : inexact-ok
+= jn tonearest ldbl-96-intel 6 0x2.67a2a8p+0L : 0xd.f2364625908550ap-12L : inexact-ok
+= jn towardzero ldbl-96-intel 6 0x2.67a2a8p+0L : 0xd.f2364625908550ap-12L : inexact-ok
+= jn upward ldbl-96-intel 6 0x2.67a2a8p+0L : 0xd.f2364625908550bp-12L : inexact-ok
+= jn downward ldbl-96-m68k 6 0x2.67a2a8p+0L : 0xd.f2364625908550ap-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 6 0x2.67a2a8p+0L : 0xd.f2364625908550ap-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 6 0x2.67a2a8p+0L : 0xd.f2364625908550ap-12L : inexact-ok
+= jn upward ldbl-96-m68k 6 0x2.67a2a8p+0L : 0xd.f2364625908550bp-12L : inexact-ok
+= jn downward ldbl-128 6 0x2.67a2a8p+0L : 0xd.f2364625908550a2021a5c597718p-12L : inexact-ok
+= jn tonearest ldbl-128 6 0x2.67a2a8p+0L : 0xd.f2364625908550a2021a5c59772p-12L : inexact-ok
+= jn towardzero ldbl-128 6 0x2.67a2a8p+0L : 0xd.f2364625908550a2021a5c597718p-12L : inexact-ok
+= jn upward ldbl-128 6 0x2.67a2a8p+0L : 0xd.f2364625908550a2021a5c59772p-12L : inexact-ok
+= jn downward ldbl-128ibm 6 0x2.67a2a8p+0L : 0xd.f2364625908550a2021a5c5974p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 6 0x2.67a2a8p+0L : 0xd.f2364625908550a2021a5c5978p-12L : inexact-ok
+= jn towardzero ldbl-128ibm 6 0x2.67a2a8p+0L : 0xd.f2364625908550a2021a5c5974p-12L : inexact-ok
+= jn upward ldbl-128ibm 6 0x2.67a2a8p+0L : 0xd.f2364625908550a2021a5c5978p-12L : inexact-ok
+= jn downward flt-32 6 0x2.67a2a4p+0f : 0xd.f235cp-12f : inexact-ok
+= jn tonearest flt-32 6 0x2.67a2a4p+0f : 0xd.f235cp-12f : inexact-ok
+= jn towardzero flt-32 6 0x2.67a2a4p+0f : 0xd.f235cp-12f : inexact-ok
+= jn upward flt-32 6 0x2.67a2a4p+0f : 0xd.f235dp-12f : inexact-ok
+= jn downward dbl-64 6 0x2.67a2a4p+0 : 0xd.f235c4ce90858p-12 : inexact-ok
+= jn tonearest dbl-64 6 0x2.67a2a4p+0 : 0xd.f235c4ce90858p-12 : inexact-ok
+= jn towardzero dbl-64 6 0x2.67a2a4p+0 : 0xd.f235c4ce90858p-12 : inexact-ok
+= jn upward dbl-64 6 0x2.67a2a4p+0 : 0xd.f235c4ce9086p-12 : inexact-ok
+= jn downward ldbl-96-intel 6 0x2.67a2a4p+0L : 0xd.f235c4ce9085834p-12L : inexact-ok
+= jn tonearest ldbl-96-intel 6 0x2.67a2a4p+0L : 0xd.f235c4ce9085834p-12L : inexact-ok
+= jn towardzero ldbl-96-intel 6 0x2.67a2a4p+0L : 0xd.f235c4ce9085834p-12L : inexact-ok
+= jn upward ldbl-96-intel 6 0x2.67a2a4p+0L : 0xd.f235c4ce9085835p-12L : inexact-ok
+= jn downward ldbl-96-m68k 6 0x2.67a2a4p+0L : 0xd.f235c4ce9085834p-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 6 0x2.67a2a4p+0L : 0xd.f235c4ce9085834p-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 6 0x2.67a2a4p+0L : 0xd.f235c4ce9085834p-12L : inexact-ok
+= jn upward ldbl-96-m68k 6 0x2.67a2a4p+0L : 0xd.f235c4ce9085835p-12L : inexact-ok
+= jn downward ldbl-128 6 0x2.67a2a4p+0L : 0xd.f235c4ce9085834528296300188p-12L : inexact-ok
+= jn tonearest ldbl-128 6 0x2.67a2a4p+0L : 0xd.f235c4ce90858345282963001888p-12L : inexact-ok
+= jn towardzero ldbl-128 6 0x2.67a2a4p+0L : 0xd.f235c4ce9085834528296300188p-12L : inexact-ok
+= jn upward ldbl-128 6 0x2.67a2a4p+0L : 0xd.f235c4ce90858345282963001888p-12L : inexact-ok
+= jn downward ldbl-128ibm 6 0x2.67a2a4p+0L : 0xd.f235c4ce908583452829630018p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 6 0x2.67a2a4p+0L : 0xd.f235c4ce908583452829630018p-12L : inexact-ok
+= jn towardzero ldbl-128ibm 6 0x2.67a2a4p+0L : 0xd.f235c4ce908583452829630018p-12L : inexact-ok
+= jn upward ldbl-128ibm 6 0x2.67a2a4p+0L : 0xd.f235c4ce90858345282963001cp-12L : inexact-ok
+= jn downward dbl-64 6 0x2.67a2a5d2e3682p+0 : 0xd.f235ffc760bf8p-12 : inexact-ok
+= jn tonearest dbl-64 6 0x2.67a2a5d2e3682p+0 : 0xd.f235ffc760bf8p-12 : inexact-ok
+= jn towardzero dbl-64 6 0x2.67a2a5d2e3682p+0 : 0xd.f235ffc760bf8p-12 : inexact-ok
+= jn upward dbl-64 6 0x2.67a2a5d2e3682p+0 : 0xd.f235ffc760cp-12 : inexact-ok
+= jn downward ldbl-96-intel 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa11p-12L : inexact-ok
+= jn tonearest ldbl-96-intel 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa11p-12L : inexact-ok
+= jn towardzero ldbl-96-intel 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa11p-12L : inexact-ok
+= jn upward ldbl-96-intel 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa12p-12L : inexact-ok
+= jn downward ldbl-96-m68k 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa11p-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa11p-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa11p-12L : inexact-ok
+= jn upward ldbl-96-m68k 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa12p-12L : inexact-ok
+= jn downward ldbl-128 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa113967f78979b68p-12L : inexact-ok
+= jn tonearest ldbl-128 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa113967f78979b68p-12L : inexact-ok
+= jn towardzero ldbl-128 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa113967f78979b68p-12L : inexact-ok
+= jn upward ldbl-128 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa113967f78979b7p-12L : inexact-ok
+= jn downward ldbl-128ibm 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa113967f789798p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa113967f78979cp-12L : inexact-ok
+= jn towardzero ldbl-128ibm 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa113967f789798p-12L : inexact-ok
+= jn upward ldbl-128ibm 6 0x2.67a2a5d2e3682p+0L : 0xd.f235ffc760bfa113967f78979cp-12L : inexact-ok
+= jn downward dbl-64 6 0x2.67a2a5d2e368p+0 : 0xd.f235ffc760bb8p-12 : inexact-ok
+= jn tonearest dbl-64 6 0x2.67a2a5d2e368p+0 : 0xd.f235ffc760bb8p-12 : inexact-ok
+= jn towardzero dbl-64 6 0x2.67a2a5d2e368p+0 : 0xd.f235ffc760bb8p-12 : inexact-ok
+= jn upward dbl-64 6 0x2.67a2a5d2e368p+0 : 0xd.f235ffc760bcp-12 : inexact-ok
+= jn downward ldbl-96-intel 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965p-12L : inexact-ok
+= jn tonearest ldbl-96-intel 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb966p-12L : inexact-ok
+= jn towardzero ldbl-96-intel 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965p-12L : inexact-ok
+= jn upward ldbl-96-intel 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb966p-12L : inexact-ok
+= jn downward ldbl-96-m68k 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965p-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb966p-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965p-12L : inexact-ok
+= jn upward ldbl-96-m68k 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb966p-12L : inexact-ok
+= jn downward ldbl-128 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965b97d021a19cdp-12L : inexact-ok
+= jn tonearest ldbl-128 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965b97d021a19cd8p-12L : inexact-ok
+= jn towardzero ldbl-128 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965b97d021a19cdp-12L : inexact-ok
+= jn upward ldbl-128 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965b97d021a19cd8p-12L : inexact-ok
+= jn downward ldbl-128ibm 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965b97d021a19cp-12L : inexact-ok
+= jn tonearest ldbl-128ibm 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965b97d021a19cp-12L : inexact-ok
+= jn towardzero ldbl-128ibm 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965b97d021a19cp-12L : inexact-ok
+= jn upward ldbl-128ibm 6 0x2.67a2a5d2e368p+0L : 0xd.f235ffc760bb965b97d021a1ap-12L : inexact-ok
+= jn downward ldbl-96-intel 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6bp-12L : inexact-ok
+= jn tonearest ldbl-96-intel 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6bp-12L : inexact-ok
+= jn towardzero ldbl-96-intel 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6bp-12L : inexact-ok
+= jn upward ldbl-96-intel 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6cp-12L : inexact-ok
+= jn downward ldbl-96-m68k 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6bp-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6bp-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6bp-12L : inexact-ok
+= jn upward ldbl-96-m68k 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6cp-12L : inexact-ok
+= jn downward ldbl-128 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6b157c59c59493p-12L : inexact-ok
+= jn tonearest ldbl-128 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6b157c59c59493p-12L : inexact-ok
+= jn towardzero ldbl-128 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6b157c59c59493p-12L : inexact-ok
+= jn upward ldbl-128 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6b157c59c594938p-12L : inexact-ok
+= jn downward ldbl-128ibm 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6b157c59c5948p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6b157c59c5948p-12L : inexact-ok
+= jn towardzero ldbl-128ibm 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6b157c59c5948p-12L : inexact-ok
+= jn upward ldbl-128ibm 6 0x2.67a2a5d2e36801p+0L : 0xd.f235ffc760bbb6b157c59c594cp-12L : inexact-ok
+= jn downward ldbl-96-intel 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63p-12L : inexact-ok
+= jn tonearest ldbl-96-intel 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63p-12L : inexact-ok
+= jn towardzero ldbl-96-intel 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63p-12L : inexact-ok
+= jn upward ldbl-96-intel 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb64p-12L : inexact-ok
+= jn downward ldbl-96-m68k 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63p-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63p-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63p-12L : inexact-ok
+= jn upward ldbl-96-m68k 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb64p-12L : inexact-ok
+= jn downward ldbl-128 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63000c5c66e6a78p-12L : inexact-ok
+= jn tonearest ldbl-128 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63000c5c66e6a8p-12L : inexact-ok
+= jn towardzero ldbl-128 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63000c5c66e6a78p-12L : inexact-ok
+= jn upward ldbl-128 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63000c5c66e6a8p-12L : inexact-ok
+= jn downward ldbl-128ibm 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63000c5c66e68p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63000c5c66e6cp-12L : inexact-ok
+= jn towardzero ldbl-128ibm 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63000c5c66e68p-12L : inexact-ok
+= jn upward ldbl-128ibm 6 0x2.67a2a5d2e36800fcp+0L : 0xd.f235ffc760bbb63000c5c66e6cp-12L : inexact-ok
+= jn downward ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0xd.f235ffc760bbb64cc948621e247p-12L : inexact-ok
+= jn tonearest ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0xd.f235ffc760bbb64cc948621e2478p-12L : inexact-ok
+= jn towardzero ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0xd.f235ffc760bbb64cc948621e247p-12L : inexact-ok
+= jn upward ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0xd.f235ffc760bbb64cc948621e2478p-12L : inexact-ok
+= jn downward ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0xd.f235ffc760bbb64cc948621e243p-12L : inexact-ok
+= jn tonearest ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0xd.f235ffc760bbb64cc948621e2438p-12L : inexact-ok
+= jn towardzero ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0xd.f235ffc760bbb64cc948621e243p-12L : inexact-ok
+= jn upward ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0xd.f235ffc760bbb64cc948621e2438p-12L : inexact-ok
+= jn downward ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.f235ffc760bbb64cc948621e37a8p-12L : inexact-ok
+= jn tonearest ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.f235ffc760bbb64cc948621e37a8p-12L : inexact-ok
+= jn towardzero ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.f235ffc760bbb64cc948621e37a8p-12L : inexact-ok
+= jn upward ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.f235ffc760bbb64cc948621e37bp-12L : inexact-ok
+= jn downward ldbl-128ibm 6 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.f235ffc760bbb64cc948621e34p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 6 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.f235ffc760bbb64cc948621e38p-12L : inexact-ok
+= jn towardzero ldbl-128ibm 6 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.f235ffc760bbb64cc948621e34p-12L : inexact-ok
+= jn upward ldbl-128ibm 6 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.f235ffc760bbb64cc948621e38p-12L : inexact-ok
+= jn downward ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.f235ffc760bbb64cc948621e175p-12L : inexact-ok
+= jn tonearest ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.f235ffc760bbb64cc948621e175p-12L : inexact-ok
+= jn towardzero ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.f235ffc760bbb64cc948621e175p-12L : inexact-ok
+= jn upward ldbl-128 6 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.f235ffc760bbb64cc948621e1758p-12L : inexact-ok
+= jn downward ldbl-128ibm 6 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.f235ffc760bbb64cc948621e14p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 6 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.f235ffc760bbb64cc948621e18p-12L : inexact-ok
+= jn towardzero ldbl-128ibm 6 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.f235ffc760bbb64cc948621e14p-12L : inexact-ok
+= jn upward ldbl-128ibm 6 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.f235ffc760bbb64cc948621e18p-12L : inexact-ok
+jn 7 2.4048255576957729
+= jn downward flt-32 7 0x2.67a2a8p+0f : 0x2.75de1cp-12f : inexact-ok
+= jn tonearest flt-32 7 0x2.67a2a8p+0f : 0x2.75de1cp-12f : inexact-ok
+= jn towardzero flt-32 7 0x2.67a2a8p+0f : 0x2.75de1cp-12f : inexact-ok
+= jn upward flt-32 7 0x2.67a2a8p+0f : 0x2.75de2p-12f : inexact-ok
+= jn downward dbl-64 7 0x2.67a2a8p+0 : 0x2.75de1cf04f92ap-12 : inexact-ok
+= jn tonearest dbl-64 7 0x2.67a2a8p+0 : 0x2.75de1cf04f92ap-12 : inexact-ok
+= jn towardzero dbl-64 7 0x2.67a2a8p+0 : 0x2.75de1cf04f92ap-12 : inexact-ok
+= jn upward dbl-64 7 0x2.67a2a8p+0 : 0x2.75de1cf04f92cp-12 : inexact-ok
+= jn downward ldbl-96-intel 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f4p-12L : inexact-ok
+= jn tonearest ldbl-96-intel 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f4p-12L : inexact-ok
+= jn towardzero ldbl-96-intel 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f4p-12L : inexact-ok
+= jn upward ldbl-96-intel 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f8p-12L : inexact-ok
+= jn downward ldbl-96-m68k 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f4p-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f4p-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f4p-12L : inexact-ok
+= jn upward ldbl-96-m68k 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f8p-12L : inexact-ok
+= jn downward ldbl-128 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f52a473bb1a996p-12L : inexact-ok
+= jn tonearest ldbl-128 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f52a473bb1a996p-12L : inexact-ok
+= jn towardzero ldbl-128 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f52a473bb1a996p-12L : inexact-ok
+= jn upward ldbl-128 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f52a473bb1a998p-12L : inexact-ok
+= jn downward ldbl-128ibm 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f52a473bb1a9p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f52a473bb1aap-12L : inexact-ok
+= jn towardzero ldbl-128ibm 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f52a473bb1a9p-12L : inexact-ok
+= jn upward ldbl-128ibm 7 0x2.67a2a8p+0L : 0x2.75de1cf04f92a6f52a473bb1aap-12L : inexact-ok
+= jn downward flt-32 7 0x2.67a2a4p+0f : 0x2.75dep-12f : inexact-ok
+= jn tonearest flt-32 7 0x2.67a2a4p+0f : 0x2.75dep-12f : inexact-ok
+= jn towardzero flt-32 7 0x2.67a2a4p+0f : 0x2.75dep-12f : inexact-ok
+= jn upward flt-32 7 0x2.67a2a4p+0f : 0x2.75de04p-12f : inexact-ok
+= jn downward dbl-64 7 0x2.67a2a4p+0 : 0x2.75de01cd2ca96p-12 : inexact-ok
+= jn tonearest dbl-64 7 0x2.67a2a4p+0 : 0x2.75de01cd2ca96p-12 : inexact-ok
+= jn towardzero dbl-64 7 0x2.67a2a4p+0 : 0x2.75de01cd2ca96p-12 : inexact-ok
+= jn upward dbl-64 7 0x2.67a2a4p+0 : 0x2.75de01cd2ca98p-12 : inexact-ok
+= jn downward ldbl-96-intel 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964dp-12L : inexact-ok
+= jn tonearest ldbl-96-intel 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964dp-12L : inexact-ok
+= jn towardzero ldbl-96-intel 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964dp-12L : inexact-ok
+= jn upward ldbl-96-intel 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964d4p-12L : inexact-ok
+= jn downward ldbl-96-m68k 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964dp-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964dp-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964dp-12L : inexact-ok
+= jn upward ldbl-96-m68k 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964d4p-12L : inexact-ok
+= jn downward ldbl-128 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964d00a4c077dfab4p-12L : inexact-ok
+= jn tonearest ldbl-128 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964d00a4c077dfab4p-12L : inexact-ok
+= jn towardzero ldbl-128 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964d00a4c077dfab4p-12L : inexact-ok
+= jn upward ldbl-128 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964d00a4c077dfab6p-12L : inexact-ok
+= jn downward ldbl-128ibm 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964d00a4c077dfap-12L : inexact-ok
+= jn tonearest ldbl-128ibm 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964d00a4c077dfbp-12L : inexact-ok
+= jn towardzero ldbl-128ibm 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964d00a4c077dfap-12L : inexact-ok
+= jn upward ldbl-128ibm 7 0x2.67a2a4p+0L : 0x2.75de01cd2ca964d00a4c077dfbp-12L : inexact-ok
+= jn downward dbl-64 7 0x2.67a2a5d2e3682p+0 : 0x2.75de0e2cb0bap-12 : inexact-ok
+= jn tonearest dbl-64 7 0x2.67a2a5d2e3682p+0 : 0x2.75de0e2cb0bap-12 : inexact-ok
+= jn towardzero dbl-64 7 0x2.67a2a5d2e3682p+0 : 0x2.75de0e2cb0bap-12 : inexact-ok
+= jn upward dbl-64 7 0x2.67a2a5d2e3682p+0 : 0x2.75de0e2cb0ba2p-12 : inexact-ok
+= jn downward ldbl-96-intel 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fcp-12L : inexact-ok
+= jn tonearest ldbl-96-intel 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fcp-12L : inexact-ok
+= jn towardzero ldbl-96-intel 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fcp-12L : inexact-ok
+= jn upward ldbl-96-intel 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fc4p-12L : inexact-ok
+= jn downward ldbl-96-m68k 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fcp-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fcp-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fcp-12L : inexact-ok
+= jn upward ldbl-96-m68k 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fc4p-12L : inexact-ok
+= jn downward ldbl-128 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fc1388cdd19bf64p-12L : inexact-ok
+= jn tonearest ldbl-128 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fc1388cdd19bf66p-12L : inexact-ok
+= jn towardzero ldbl-128 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fc1388cdd19bf64p-12L : inexact-ok
+= jn upward ldbl-128 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fc1388cdd19bf66p-12L : inexact-ok
+= jn downward ldbl-128ibm 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fc1388cdd19bfp-12L : inexact-ok
+= jn tonearest ldbl-128ibm 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fc1388cdd19bfp-12L : inexact-ok
+= jn towardzero ldbl-128ibm 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fc1388cdd19bfp-12L : inexact-ok
+= jn upward ldbl-128ibm 7 0x2.67a2a5d2e3682p+0L : 0x2.75de0e2cb0ba0fc1388cdd19cp-12L : inexact-ok
+= jn downward dbl-64 7 0x2.67a2a5d2e368p+0 : 0x2.75de0e2cb0b92p-12 : inexact-ok
+= jn tonearest dbl-64 7 0x2.67a2a5d2e368p+0 : 0x2.75de0e2cb0b94p-12 : inexact-ok
+= jn towardzero dbl-64 7 0x2.67a2a5d2e368p+0 : 0x2.75de0e2cb0b92p-12 : inexact-ok
+= jn upward dbl-64 7 0x2.67a2a5d2e368p+0 : 0x2.75de0e2cb0b94p-12 : inexact-ok
+= jn downward ldbl-96-intel 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8p-12L : inexact-ok
+= jn tonearest ldbl-96-intel 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8p-12L : inexact-ok
+= jn towardzero ldbl-96-intel 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8p-12L : inexact-ok
+= jn upward ldbl-96-intel 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936acp-12L : inexact-ok
+= jn downward ldbl-96-m68k 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8p-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8p-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8p-12L : inexact-ok
+= jn upward ldbl-96-m68k 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936acp-12L : inexact-ok
+= jn downward ldbl-128 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8219a9175e6d6p-12L : inexact-ok
+= jn tonearest ldbl-128 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8219a9175e6d6p-12L : inexact-ok
+= jn towardzero ldbl-128 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8219a9175e6d6p-12L : inexact-ok
+= jn upward ldbl-128 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8219a9175e6d8p-12L : inexact-ok
+= jn downward ldbl-128ibm 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8219a9175e6p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8219a9175e7p-12L : inexact-ok
+= jn towardzero ldbl-128ibm 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8219a9175e6p-12L : inexact-ok
+= jn upward ldbl-128ibm 7 0x2.67a2a5d2e368p+0L : 0x2.75de0e2cb0b936a8219a9175e7p-12L : inexact-ok
+= jn downward ldbl-96-intel 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d7p-12L : inexact-ok
+= jn tonearest ldbl-96-intel 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d7p-12L : inexact-ok
+= jn towardzero ldbl-96-intel 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d7p-12L : inexact-ok
+= jn upward ldbl-96-intel 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d74p-12L : inexact-ok
+= jn downward ldbl-96-m68k 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d7p-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d7p-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d7p-12L : inexact-ok
+= jn upward ldbl-96-m68k 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d74p-12L : inexact-ok
+= jn downward ldbl-128 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d70ea5223d304a8p-12L : inexact-ok
+= jn tonearest ldbl-128 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d70ea5223d304aap-12L : inexact-ok
+= jn towardzero ldbl-128 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d70ea5223d304a8p-12L : inexact-ok
+= jn upward ldbl-128 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d70ea5223d304aap-12L : inexact-ok
+= jn downward ldbl-128ibm 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d70ea5223d304p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d70ea5223d305p-12L : inexact-ok
+= jn towardzero ldbl-128ibm 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d70ea5223d304p-12L : inexact-ok
+= jn upward ldbl-128ibm 7 0x2.67a2a5d2e36801p+0L : 0x2.75de0e2cb0b93d70ea5223d305p-12L : inexact-ok
+= jn downward ldbl-96-intel 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d54p-12L : inexact-ok
+= jn tonearest ldbl-96-intel 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d54p-12L : inexact-ok
+= jn towardzero ldbl-96-intel 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d54p-12L : inexact-ok
+= jn upward ldbl-96-intel 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d58p-12L : inexact-ok
+= jn downward ldbl-96-m68k 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d54p-12L : inexact-ok
+= jn tonearest ldbl-96-m68k 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d54p-12L : inexact-ok
+= jn towardzero ldbl-96-m68k 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d54p-12L : inexact-ok
+= jn upward ldbl-96-m68k 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d58p-12L : inexact-ok
+= jn downward ldbl-128 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d55c72f45899032p-12L : inexact-ok
+= jn tonearest ldbl-128 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d55c72f45899032p-12L : inexact-ok
+= jn towardzero ldbl-128 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d55c72f45899032p-12L : inexact-ok
+= jn upward ldbl-128 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d55c72f45899034p-12L : inexact-ok
+= jn downward ldbl-128ibm 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d55c72f45899p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d55c72f45899p-12L : inexact-ok
+= jn towardzero ldbl-128ibm 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d55c72f45899p-12L : inexact-ok
+= jn upward ldbl-128ibm 7 0x2.67a2a5d2e36800fcp+0L : 0x2.75de0e2cb0b93d55c72f458991p-12L : inexact-ok
+= jn downward ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x2.75de0e2cb0b93d5bd132aa3aa1bap-12L : inexact-ok
+= jn tonearest ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x2.75de0e2cb0b93d5bd132aa3aa1bcp-12L : inexact-ok
+= jn towardzero ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x2.75de0e2cb0b93d5bd132aa3aa1bap-12L : inexact-ok
+= jn upward ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x2.75de0e2cb0b93d5bd132aa3aa1bcp-12L : inexact-ok
+= jn downward ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x2.75de0e2cb0b93d5bd132aa3aa1acp-12L : inexact-ok
+= jn tonearest ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x2.75de0e2cb0b93d5bd132aa3aa1aep-12L : inexact-ok
+= jn towardzero ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x2.75de0e2cb0b93d5bd132aa3aa1acp-12L : inexact-ok
+= jn upward ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x2.75de0e2cb0b93d5bd132aa3aa1aep-12L : inexact-ok
+= jn downward ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x2.75de0e2cb0b93d5bd132aa3aa5c2p-12L : inexact-ok
+= jn tonearest ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x2.75de0e2cb0b93d5bd132aa3aa5c2p-12L : inexact-ok
+= jn towardzero ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x2.75de0e2cb0b93d5bd132aa3aa5c2p-12L : inexact-ok
+= jn upward ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x2.75de0e2cb0b93d5bd132aa3aa5c4p-12L : inexact-ok
+= jn downward ldbl-128ibm 7 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x2.75de0e2cb0b93d5bd132aa3aa5p-12L : inexact-ok
+= jn tonearest ldbl-128ibm 7 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x2.75de0e2cb0b93d5bd132aa3aa6p-12L : inexact-ok
+= jn towardzero ldbl-128ibm 7 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x2.75de0e2cb0b93d5bd132aa3aa5p-12L : inexact-ok
+= jn upward ldbl-128ibm 7 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x2.75de0e2cb0b93d5bd132aa3aa6p-12L : inexact-ok
+= jn downward ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x2.75de0e2cb0b93d5bd132aa3a9ef8p-12L : inexact-ok
+= jn tonearest ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x2.75de0e2cb0b93d5bd132aa3a9efap-12L : inexact-ok
+= jn towardzero ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x2.75de0e2cb0b93d5bd132aa3a9ef8p-12L : inexact-ok
+= jn upward ldbl-128 7 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x2.75de0e2cb0b93d5bd132aa3a9efap-12L : inexact-ok
+= jn downward ldbl-128ibm 7 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x2.75de0e2cb0b93d5bd132aa3a9ep-12L : inexact-ok
+= jn tonearest ldbl-128ibm 7 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x2.75de0e2cb0b93d5bd132aa3a9fp-12L : inexact-ok
+= jn towardzero ldbl-128ibm 7 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x2.75de0e2cb0b93d5bd132aa3a9ep-12L : inexact-ok
+= jn upward ldbl-128ibm 7 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x2.75de0e2cb0b93d5bd132aa3a9fp-12L : inexact-ok
+jn 8 2.4048255576957729
+= jn downward flt-32 8 0x2.67a2a8p+0f : 0x6.0a493p-16f : inexact-ok
+= jn tonearest flt-32 8 0x2.67a2a8p+0f : 0x6.0a4938p-16f : inexact-ok
+= jn towardzero flt-32 8 0x2.67a2a8p+0f : 0x6.0a493p-16f : inexact-ok
+= jn upward flt-32 8 0x2.67a2a8p+0f : 0x6.0a4938p-16f : inexact-ok
+= jn downward dbl-64 8 0x2.67a2a8p+0 : 0x6.0a49341bba59cp-16 : inexact-ok
+= jn tonearest dbl-64 8 0x2.67a2a8p+0 : 0x6.0a49341bba5ap-16 : inexact-ok
+= jn towardzero dbl-64 8 0x2.67a2a8p+0 : 0x6.0a49341bba59cp-16 : inexact-ok
+= jn upward dbl-64 8 0x2.67a2a8p+0 : 0x6.0a49341bba5ap-16 : inexact-ok
+= jn downward ldbl-96-intel 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e678p-16L : inexact-ok
+= jn tonearest ldbl-96-intel 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e68p-16L : inexact-ok
+= jn towardzero ldbl-96-intel 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e678p-16L : inexact-ok
+= jn upward ldbl-96-intel 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e68p-16L : inexact-ok
+= jn downward ldbl-96-m68k 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e678p-16L : inexact-ok
+= jn tonearest ldbl-96-m68k 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e68p-16L : inexact-ok
+= jn towardzero ldbl-96-m68k 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e678p-16L : inexact-ok
+= jn upward ldbl-96-m68k 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e68p-16L : inexact-ok
+= jn downward ldbl-128 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e67ed8dd8194c32cp-16L : inexact-ok
+= jn tonearest ldbl-128 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e67ed8dd8194c33p-16L : inexact-ok
+= jn towardzero ldbl-128 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e67ed8dd8194c32cp-16L : inexact-ok
+= jn upward ldbl-128 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e67ed8dd8194c33p-16L : inexact-ok
+= jn downward ldbl-128ibm 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e67ed8dd8194c2p-16L : inexact-ok
+= jn tonearest ldbl-128ibm 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e67ed8dd8194c4p-16L : inexact-ok
+= jn towardzero ldbl-128ibm 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e67ed8dd8194c2p-16L : inexact-ok
+= jn upward ldbl-128ibm 8 0x2.67a2a8p+0L : 0x6.0a49341bba59e67ed8dd8194c4p-16L : inexact-ok
+= jn downward flt-32 8 0x2.67a2a4p+0f : 0x6.0a48ep-16f : inexact-ok
+= jn tonearest flt-32 8 0x2.67a2a4p+0f : 0x6.0a48e8p-16f : inexact-ok
+= jn towardzero flt-32 8 0x2.67a2a4p+0f : 0x6.0a48ep-16f : inexact-ok
+= jn upward flt-32 8 0x2.67a2a4p+0f : 0x6.0a48e8p-16f : inexact-ok
+= jn downward dbl-64 8 0x2.67a2a4p+0 : 0x6.0a48e703faf9p-16 : inexact-ok
+= jn tonearest dbl-64 8 0x2.67a2a4p+0 : 0x6.0a48e703faf9p-16 : inexact-ok
+= jn towardzero dbl-64 8 0x2.67a2a4p+0 : 0x6.0a48e703faf9p-16 : inexact-ok
+= jn upward dbl-64 8 0x2.67a2a4p+0 : 0x6.0a48e703faf94p-16 : inexact-ok
+= jn downward ldbl-96-intel 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b8p-16L : inexact-ok
+= jn tonearest ldbl-96-intel 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b8p-16L : inexact-ok
+= jn towardzero ldbl-96-intel 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b8p-16L : inexact-ok
+= jn upward ldbl-96-intel 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914cp-16L : inexact-ok
+= jn downward ldbl-96-m68k 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b8p-16L : inexact-ok
+= jn tonearest ldbl-96-m68k 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b8p-16L : inexact-ok
+= jn towardzero ldbl-96-m68k 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b8p-16L : inexact-ok
+= jn upward ldbl-96-m68k 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914cp-16L : inexact-ok
+= jn downward ldbl-128 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b831a31c6280ccp-16L : inexact-ok
+= jn tonearest ldbl-128 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b831a31c6280ccp-16L : inexact-ok
+= jn towardzero ldbl-128 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b831a31c6280ccp-16L : inexact-ok
+= jn upward ldbl-128 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b831a31c6280dp-16L : inexact-ok
+= jn downward ldbl-128ibm 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b831a31c628p-16L : inexact-ok
+= jn tonearest ldbl-128ibm 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b831a31c628p-16L : inexact-ok
+= jn towardzero ldbl-128ibm 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b831a31c628p-16L : inexact-ok
+= jn upward ldbl-128ibm 8 0x2.67a2a4p+0L : 0x6.0a48e703faf914b831a31c6282p-16L : inexact-ok
+= jn downward dbl-64 8 0x2.67a2a5d2e3682p+0 : 0x6.0a490a2a68024p-16 : inexact-ok
+= jn tonearest dbl-64 8 0x2.67a2a5d2e3682p+0 : 0x6.0a490a2a68028p-16 : inexact-ok
+= jn towardzero dbl-64 8 0x2.67a2a5d2e3682p+0 : 0x6.0a490a2a68024p-16 : inexact-ok
+= jn upward dbl-64 8 0x2.67a2a5d2e3682p+0 : 0x6.0a490a2a68028p-16 : inexact-ok
+= jn downward ldbl-96-intel 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260bp-16L : inexact-ok
+= jn tonearest ldbl-96-intel 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260bp-16L : inexact-ok
+= jn towardzero ldbl-96-intel 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260bp-16L : inexact-ok
+= jn upward ldbl-96-intel 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260b8p-16L : inexact-ok
+= jn downward ldbl-96-m68k 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260bp-16L : inexact-ok
+= jn tonearest ldbl-96-m68k 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260bp-16L : inexact-ok
+= jn towardzero ldbl-96-m68k 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260bp-16L : inexact-ok
+= jn upward ldbl-96-m68k 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260b8p-16L : inexact-ok
+= jn downward ldbl-128 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260b3a0ba158a1ef4p-16L : inexact-ok
+= jn tonearest ldbl-128 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260b3a0ba158a1ef8p-16L : inexact-ok
+= jn towardzero ldbl-128 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260b3a0ba158a1ef4p-16L : inexact-ok
+= jn upward ldbl-128 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260b3a0ba158a1ef8p-16L : inexact-ok
+= jn downward ldbl-128ibm 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260b3a0ba158a1ep-16L : inexact-ok
+= jn tonearest ldbl-128ibm 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260b3a0ba158a1ep-16L : inexact-ok
+= jn towardzero ldbl-128ibm 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260b3a0ba158a1ep-16L : inexact-ok
+= jn upward ldbl-128ibm 8 0x2.67a2a5d2e3682p+0L : 0x6.0a490a2a680260b3a0ba158a2p-16L : inexact-ok
+= jn downward dbl-64 8 0x2.67a2a5d2e368p+0 : 0x6.0a490a2a67ffcp-16 : inexact-ok
+= jn tonearest dbl-64 8 0x2.67a2a5d2e368p+0 : 0x6.0a490a2a68p-16 : inexact-ok
+= jn towardzero dbl-64 8 0x2.67a2a5d2e368p+0 : 0x6.0a490a2a67ffcp-16 : inexact-ok
+= jn upward dbl-64 8 0x2.67a2a5d2e368p+0 : 0x6.0a490a2a68p-16 : inexact-ok
+= jn downward ldbl-96-intel 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7fp-16L : inexact-ok
+= jn tonearest ldbl-96-intel 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f8p-16L : inexact-ok
+= jn towardzero ldbl-96-intel 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7fp-16L : inexact-ok
+= jn upward ldbl-96-intel 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f8p-16L : inexact-ok
+= jn downward ldbl-96-m68k 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7fp-16L : inexact-ok
+= jn tonearest ldbl-96-m68k 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f8p-16L : inexact-ok
+= jn towardzero ldbl-96-m68k 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7fp-16L : inexact-ok
+= jn upward ldbl-96-m68k 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f8p-16L : inexact-ok
+= jn downward ldbl-128 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f5a6dd34db8034p-16L : inexact-ok
+= jn tonearest ldbl-128 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f5a6dd34db8034p-16L : inexact-ok
+= jn towardzero ldbl-128 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f5a6dd34db8034p-16L : inexact-ok
+= jn upward ldbl-128 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f5a6dd34db8038p-16L : inexact-ok
+= jn downward ldbl-128ibm 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f5a6dd34db8p-16L : inexact-ok
+= jn tonearest ldbl-128ibm 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f5a6dd34db8p-16L : inexact-ok
+= jn towardzero ldbl-128ibm 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f5a6dd34db8p-16L : inexact-ok
+= jn upward ldbl-128ibm 8 0x2.67a2a5d2e368p+0L : 0x6.0a490a2a67fff7f5a6dd34db82p-16L : inexact-ok
+= jn downward ldbl-96-intel 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b38p-16L : inexact-ok
+= jn tonearest ldbl-96-intel 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b38p-16L : inexact-ok
+= jn towardzero ldbl-96-intel 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b38p-16L : inexact-ok
+= jn upward ldbl-96-intel 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b4p-16L : inexact-ok
+= jn downward ldbl-96-m68k 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b38p-16L : inexact-ok
+= jn tonearest ldbl-96-m68k 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b38p-16L : inexact-ok
+= jn towardzero ldbl-96-m68k 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b38p-16L : inexact-ok
+= jn upward ldbl-96-m68k 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b4p-16L : inexact-ok
+= jn downward ldbl-128 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b3b96ac1be0f1f4p-16L : inexact-ok
+= jn tonearest ldbl-128 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b3b96ac1be0f1f8p-16L : inexact-ok
+= jn towardzero ldbl-128 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b3b96ac1be0f1f4p-16L : inexact-ok
+= jn upward ldbl-128 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b3b96ac1be0f1f8p-16L : inexact-ok
+= jn downward ldbl-128ibm 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b3b96ac1be0fp-16L : inexact-ok
+= jn tonearest ldbl-128ibm 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b3b96ac1be0f2p-16L : inexact-ok
+= jn towardzero ldbl-128ibm 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b3b96ac1be0fp-16L : inexact-ok
+= jn upward ldbl-128ibm 8 0x2.67a2a5d2e36801p+0L : 0x6.0a490a2a68000b3b96ac1be0f2p-16L : inexact-ok
+= jn downward ldbl-96-intel 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000ae8p-16L : inexact-ok
+= jn tonearest ldbl-96-intel 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000afp-16L : inexact-ok
+= jn towardzero ldbl-96-intel 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000ae8p-16L : inexact-ok
+= jn upward ldbl-96-intel 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000afp-16L : inexact-ok
+= jn downward ldbl-96-m68k 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000ae8p-16L : inexact-ok
+= jn tonearest ldbl-96-m68k 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000afp-16L : inexact-ok
+= jn towardzero ldbl-96-m68k 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000ae8p-16L : inexact-ok
+= jn upward ldbl-96-m68k 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000afp-16L : inexact-ok
+= jn downward ldbl-128 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000aee7eece044dc3p-16L : inexact-ok
+= jn tonearest ldbl-128 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000aee7eece044dc3p-16L : inexact-ok
+= jn towardzero ldbl-128 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000aee7eece044dc3p-16L : inexact-ok
+= jn upward ldbl-128 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000aee7eece044dc34p-16L : inexact-ok
+= jn downward ldbl-128ibm 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000aee7eece044dcp-16L : inexact-ok
+= jn tonearest ldbl-128ibm 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000aee7eece044dcp-16L : inexact-ok
+= jn towardzero ldbl-128ibm 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000aee7eece044dcp-16L : inexact-ok
+= jn upward ldbl-128ibm 8 0x2.67a2a5d2e36800fcp+0L : 0x6.0a490a2a68000aee7eece044dep-16L : inexact-ok
+= jn downward ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x6.0a490a2a68000affa6e9591725c4p-16L : inexact-ok
+= jn tonearest ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x6.0a490a2a68000affa6e9591725c8p-16L : inexact-ok
+= jn towardzero ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x6.0a490a2a68000affa6e9591725c4p-16L : inexact-ok
+= jn upward ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0x6.0a490a2a68000affa6e9591725c8p-16L : inexact-ok
+= jn downward ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x6.0a490a2a68000affa6e9591725ap-16L : inexact-ok
+= jn tonearest ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x6.0a490a2a68000affa6e9591725ap-16L : inexact-ok
+= jn towardzero ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x6.0a490a2a68000affa6e9591725ap-16L : inexact-ok
+= jn upward ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0x6.0a490a2a68000affa6e9591725a4p-16L : inexact-ok
+= jn downward ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.0a490a2a68000affa6e959173138p-16L : inexact-ok
+= jn tonearest ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.0a490a2a68000affa6e959173138p-16L : inexact-ok
+= jn towardzero ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.0a490a2a68000affa6e959173138p-16L : inexact-ok
+= jn upward ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.0a490a2a68000affa6e95917313cp-16L : inexact-ok
+= jn downward ldbl-128ibm 8 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.0a490a2a68000affa6e959173p-16L : inexact-ok
+= jn tonearest ldbl-128ibm 8 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.0a490a2a68000affa6e9591732p-16L : inexact-ok
+= jn towardzero ldbl-128ibm 8 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.0a490a2a68000affa6e959173p-16L : inexact-ok
+= jn upward ldbl-128ibm 8 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0x6.0a490a2a68000affa6e9591732p-16L : inexact-ok
+= jn downward ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.0a490a2a68000affa6e959171dfp-16L : inexact-ok
+= jn tonearest ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.0a490a2a68000affa6e959171df4p-16L : inexact-ok
+= jn towardzero ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.0a490a2a68000affa6e959171dfp-16L : inexact-ok
+= jn upward ldbl-128 8 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.0a490a2a68000affa6e959171df4p-16L : inexact-ok
+= jn downward ldbl-128ibm 8 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.0a490a2a68000affa6e959171cp-16L : inexact-ok
+= jn tonearest ldbl-128ibm 8 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.0a490a2a68000affa6e959171ep-16L : inexact-ok
+= jn towardzero ldbl-128ibm 8 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.0a490a2a68000affa6e959171cp-16L : inexact-ok
+= jn upward ldbl-128ibm 8 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0x6.0a490a2a68000affa6e959171ep-16L : inexact-ok
+jn 9 2.4048255576957729
+= jn downward flt-32 9 0x2.67a2a8p+0f : 0xd.2014bp-20f : inexact-ok
+= jn tonearest flt-32 9 0x2.67a2a8p+0f : 0xd.2014bp-20f : inexact-ok
+= jn towardzero flt-32 9 0x2.67a2a8p+0f : 0xd.2014bp-20f : inexact-ok
+= jn upward flt-32 9 0x2.67a2a8p+0f : 0xd.2014cp-20f : inexact-ok
+= jn downward dbl-64 9 0x2.67a2a8p+0 : 0xd.2014b73aef588p-20 : inexact-ok
+= jn tonearest dbl-64 9 0x2.67a2a8p+0 : 0xd.2014b73aef59p-20 : inexact-ok
+= jn towardzero dbl-64 9 0x2.67a2a8p+0 : 0xd.2014b73aef588p-20 : inexact-ok
+= jn upward dbl-64 9 0x2.67a2a8p+0 : 0xd.2014b73aef59p-20 : inexact-ok
+= jn downward ldbl-96-intel 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3fp-20L : inexact-ok
+= jn tonearest ldbl-96-intel 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3fp-20L : inexact-ok
+= jn towardzero ldbl-96-intel 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3fp-20L : inexact-ok
+= jn upward ldbl-96-intel 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c4p-20L : inexact-ok
+= jn downward ldbl-96-m68k 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3fp-20L : inexact-ok
+= jn tonearest ldbl-96-m68k 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3fp-20L : inexact-ok
+= jn towardzero ldbl-96-m68k 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3fp-20L : inexact-ok
+= jn upward ldbl-96-m68k 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c4p-20L : inexact-ok
+= jn downward ldbl-128 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3f33c7316090878p-20L : inexact-ok
+= jn tonearest ldbl-128 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3f33c731609088p-20L : inexact-ok
+= jn towardzero ldbl-128 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3f33c7316090878p-20L : inexact-ok
+= jn upward ldbl-128 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3f33c731609088p-20L : inexact-ok
+= jn downward ldbl-128ibm 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3f33c73160908p-20L : inexact-ok
+= jn tonearest ldbl-128ibm 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3f33c73160908p-20L : inexact-ok
+= jn towardzero ldbl-128ibm 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3f33c73160908p-20L : inexact-ok
+= jn upward ldbl-128ibm 9 0x2.67a2a8p+0L : 0xd.2014b73aef58c3f33c7316090cp-20L : inexact-ok
+= jn downward flt-32 9 0x2.67a2a4p+0f : 0xd.2013fp-20f : inexact-ok
+= jn tonearest flt-32 9 0x2.67a2a4p+0f : 0xd.2014p-20f : inexact-ok
+= jn towardzero flt-32 9 0x2.67a2a4p+0f : 0xd.2013fp-20f : inexact-ok
+= jn upward flt-32 9 0x2.67a2a4p+0f : 0xd.2014p-20f : inexact-ok
+= jn downward dbl-64 9 0x2.67a2a4p+0 : 0xd.2013f924ba5p-20 : inexact-ok
+= jn tonearest dbl-64 9 0x2.67a2a4p+0 : 0xd.2013f924ba5p-20 : inexact-ok
+= jn towardzero dbl-64 9 0x2.67a2a4p+0 : 0xd.2013f924ba5p-20 : inexact-ok
+= jn upward dbl-64 9 0x2.67a2a4p+0 : 0xd.2013f924ba508p-20 : inexact-ok
+= jn downward ldbl-96-intel 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bbp-20L : inexact-ok
+= jn tonearest ldbl-96-intel 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bbp-20L : inexact-ok
+= jn towardzero ldbl-96-intel 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bbp-20L : inexact-ok
+= jn upward ldbl-96-intel 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bcp-20L : inexact-ok
+= jn downward ldbl-96-m68k 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bbp-20L : inexact-ok
+= jn tonearest ldbl-96-m68k 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bbp-20L : inexact-ok
+= jn towardzero ldbl-96-m68k 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bbp-20L : inexact-ok
+= jn upward ldbl-96-m68k 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bcp-20L : inexact-ok
+= jn downward ldbl-128 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bb0e7f429c0cbdp-20L : inexact-ok
+= jn tonearest ldbl-128 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bb0e7f429c0cbdp-20L : inexact-ok
+= jn towardzero ldbl-128 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bb0e7f429c0cbdp-20L : inexact-ok
+= jn upward ldbl-128 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bb0e7f429c0cbd8p-20L : inexact-ok
+= jn downward ldbl-128ibm 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bb0e7f429c0c8p-20L : inexact-ok
+= jn tonearest ldbl-128ibm 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bb0e7f429c0ccp-20L : inexact-ok
+= jn towardzero ldbl-128ibm 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bb0e7f429c0c8p-20L : inexact-ok
+= jn upward ldbl-128ibm 9 0x2.67a2a4p+0L : 0xd.2013f924ba500bb0e7f429c0ccp-20L : inexact-ok
+= jn downward dbl-64 9 0x2.67a2a5d2e3682p+0 : 0xd.20144fd00b07p-20 : inexact-ok
+= jn tonearest dbl-64 9 0x2.67a2a5d2e3682p+0 : 0xd.20144fd00b078p-20 : inexact-ok
+= jn towardzero dbl-64 9 0x2.67a2a5d2e3682p+0 : 0xd.20144fd00b07p-20 : inexact-ok
+= jn upward dbl-64 9 0x2.67a2a5d2e3682p+0 : 0xd.20144fd00b078p-20 : inexact-ok
+= jn downward ldbl-96-intel 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769bp-20L : inexact-ok
+= jn tonearest ldbl-96-intel 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769bp-20L : inexact-ok
+= jn towardzero ldbl-96-intel 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769bp-20L : inexact-ok
+= jn upward ldbl-96-intel 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769cp-20L : inexact-ok
+= jn downward ldbl-96-m68k 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769bp-20L : inexact-ok
+= jn tonearest ldbl-96-m68k 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769bp-20L : inexact-ok
+= jn towardzero ldbl-96-m68k 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769bp-20L : inexact-ok
+= jn upward ldbl-96-m68k 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769cp-20L : inexact-ok
+= jn downward ldbl-128 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769b515a432a40fdp-20L : inexact-ok
+= jn tonearest ldbl-128 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769b515a432a40fdp-20L : inexact-ok
+= jn towardzero ldbl-128 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769b515a432a40fdp-20L : inexact-ok
+= jn upward ldbl-128 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769b515a432a40fd8p-20L : inexact-ok
+= jn downward ldbl-128ibm 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769b515a432a40cp-20L : inexact-ok
+= jn tonearest ldbl-128ibm 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769b515a432a41p-20L : inexact-ok
+= jn towardzero ldbl-128ibm 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769b515a432a40cp-20L : inexact-ok
+= jn upward ldbl-128ibm 9 0x2.67a2a5d2e3682p+0L : 0xd.20144fd00b0769b515a432a41p-20L : inexact-ok
+= jn downward dbl-64 9 0x2.67a2a5d2e368p+0 : 0xd.20144fd00b01p-20 : inexact-ok
+= jn tonearest dbl-64 9 0x2.67a2a5d2e368p+0 : 0xd.20144fd00b018p-20 : inexact-ok
+= jn towardzero dbl-64 9 0x2.67a2a5d2e368p+0 : 0xd.20144fd00b01p-20 : inexact-ok
+= jn upward dbl-64 9 0x2.67a2a5d2e368p+0 : 0xd.20144fd00b018p-20 : inexact-ok
+= jn downward ldbl-96-intel 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b0179p-20L : inexact-ok
+= jn tonearest ldbl-96-intel 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b0179p-20L : inexact-ok
+= jn towardzero ldbl-96-intel 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b0179p-20L : inexact-ok
+= jn upward ldbl-96-intel 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b01791p-20L : inexact-ok
+= jn downward ldbl-96-m68k 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b0179p-20L : inexact-ok
+= jn tonearest ldbl-96-m68k 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b0179p-20L : inexact-ok
+= jn towardzero ldbl-96-m68k 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b0179p-20L : inexact-ok
+= jn upward ldbl-96-m68k 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b01791p-20L : inexact-ok
+= jn downward ldbl-128 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b01790370b1a1e9048p-20L : inexact-ok
+= jn tonearest ldbl-128 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b01790370b1a1e90488p-20L : inexact-ok
+= jn towardzero ldbl-128 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b01790370b1a1e9048p-20L : inexact-ok
+= jn upward ldbl-128 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b01790370b1a1e90488p-20L : inexact-ok
+= jn downward ldbl-128ibm 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b01790370b1a1e904p-20L : inexact-ok
+= jn tonearest ldbl-128ibm 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b01790370b1a1e904p-20L : inexact-ok
+= jn towardzero ldbl-128ibm 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b01790370b1a1e904p-20L : inexact-ok
+= jn upward ldbl-128ibm 9 0x2.67a2a5d2e368p+0L : 0xd.20144fd00b01790370b1a1e908p-20L : inexact-ok
+= jn downward ldbl-96-intel 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a88p-20L : inexact-ok
+= jn tonearest ldbl-96-intel 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a89p-20L : inexact-ok
+= jn towardzero ldbl-96-intel 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a88p-20L : inexact-ok
+= jn upward ldbl-96-intel 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a89p-20L : inexact-ok
+= jn downward ldbl-96-m68k 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a88p-20L : inexact-ok
+= jn tonearest ldbl-96-m68k 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a89p-20L : inexact-ok
+= jn towardzero ldbl-96-m68k 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a88p-20L : inexact-ok
+= jn upward ldbl-96-m68k 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a89p-20L : inexact-ok
+= jn downward ldbl-128 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a888fdd9366ed3b8p-20L : inexact-ok
+= jn tonearest ldbl-128 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a888fdd9366ed3cp-20L : inexact-ok
+= jn towardzero ldbl-128 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a888fdd9366ed3b8p-20L : inexact-ok
+= jn upward ldbl-128 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a888fdd9366ed3cp-20L : inexact-ok
+= jn downward ldbl-128ibm 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a888fdd9366edp-20L : inexact-ok
+= jn tonearest ldbl-128ibm 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a888fdd9366ed4p-20L : inexact-ok
+= jn towardzero ldbl-128ibm 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a888fdd9366edp-20L : inexact-ok
+= jn upward ldbl-128ibm 9 0x2.67a2a5d2e36801p+0L : 0xd.20144fd00b01a888fdd9366ed4p-20L : inexact-ok
+= jn downward ldbl-96-intel 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cp-20L : inexact-ok
+= jn tonearest ldbl-96-intel 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7dp-20L : inexact-ok
+= jn towardzero ldbl-96-intel 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cp-20L : inexact-ok
+= jn upward ldbl-96-intel 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7dp-20L : inexact-ok
+= jn downward ldbl-96-m68k 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cp-20L : inexact-ok
+= jn tonearest ldbl-96-m68k 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7dp-20L : inexact-ok
+= jn towardzero ldbl-96-m68k 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cp-20L : inexact-ok
+= jn upward ldbl-96-m68k 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7dp-20L : inexact-ok
+= jn downward ldbl-128 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cae7a4981cbc78p-20L : inexact-ok
+= jn tonearest ldbl-128 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cae7a4981cbc8p-20L : inexact-ok
+= jn towardzero ldbl-128 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cae7a4981cbc78p-20L : inexact-ok
+= jn upward ldbl-128 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cae7a4981cbc8p-20L : inexact-ok
+= jn downward ldbl-128ibm 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cae7a4981cbcp-20L : inexact-ok
+= jn tonearest ldbl-128ibm 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cae7a4981cbcp-20L : inexact-ok
+= jn towardzero ldbl-128ibm 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cae7a4981cbcp-20L : inexact-ok
+= jn upward ldbl-128ibm 9 0x2.67a2a5d2e36800fcp+0L : 0xd.20144fd00b01a7cae7a4981ccp-20L : inexact-ok
+= jn downward ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0xd.20144fd00b01a7f534e9c14b5858p-20L : inexact-ok
+= jn tonearest ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0xd.20144fd00b01a7f534e9c14b5858p-20L : inexact-ok
+= jn towardzero ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0xd.20144fd00b01a7f534e9c14b5858p-20L : inexact-ok
+= jn upward ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10ca68p+0L : 0xd.20144fd00b01a7f534e9c14b586p-20L : inexact-ok
+= jn downward ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0xd.20144fd00b01a7f534e9c14b57f8p-20L : inexact-ok
+= jn tonearest ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0xd.20144fd00b01a7f534e9c14b57f8p-20L : inexact-ok
+= jn towardzero ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0xd.20144fd00b01a7f534e9c14b57f8p-20L : inexact-ok
+= jn upward ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10ca66p+0L : 0xd.20144fd00b01a7f534e9c14b58p-20L : inexact-ok
+= jn downward ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.20144fd00b01a7f534e9c14b749p-20L : inexact-ok
+= jn tonearest ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.20144fd00b01a7f534e9c14b749p-20L : inexact-ok
+= jn towardzero ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.20144fd00b01a7f534e9c14b749p-20L : inexact-ok
+= jn upward ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.20144fd00b01a7f534e9c14b7498p-20L : inexact-ok
+= jn downward ldbl-128ibm 9 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.20144fd00b01a7f534e9c14b74p-20L : inexact-ok
+= jn tonearest ldbl-128ibm 9 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.20144fd00b01a7f534e9c14b74p-20L : inexact-ok
+= jn towardzero ldbl-128ibm 9 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.20144fd00b01a7f534e9c14b74p-20L : inexact-ok
+= jn upward ldbl-128ibm 9 0x2.67a2a5d2e36800fce3e16f10cbp+0L : 0xd.20144fd00b01a7f534e9c14b78p-20L : inexact-ok
+= jn downward ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.20144fd00b01a7f534e9c14b4508p-20L : inexact-ok
+= jn tonearest ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.20144fd00b01a7f534e9c14b451p-20L : inexact-ok
+= jn towardzero ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.20144fd00b01a7f534e9c14b4508p-20L : inexact-ok
+= jn upward ldbl-128 9 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.20144fd00b01a7f534e9c14b451p-20L : inexact-ok
+= jn downward ldbl-128ibm 9 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.20144fd00b01a7f534e9c14b44p-20L : inexact-ok
+= jn tonearest ldbl-128ibm 9 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.20144fd00b01a7f534e9c14b44p-20L : inexact-ok
+= jn towardzero ldbl-128ibm 9 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.20144fd00b01a7f534e9c14b44p-20L : inexact-ok
+= jn upward ldbl-128ibm 9 0x2.67a2a5d2e36800fce3e16f10cap+0L : 0xd.20144fd00b01a7f534e9c14b48p-20L : inexact-ok
+jn 2 0x1.ffff62p+99
+= jn downward flt-32 2 0xf.fffb1p+96f : -0x1.ffbc8cp-52f : inexact-ok
+= jn tonearest flt-32 2 0xf.fffb1p+96f : -0x1.ffbc8cp-52f : inexact-ok
+= jn towardzero flt-32 2 0xf.fffb1p+96f : -0x1.ffbc8ap-52f : inexact-ok
+= jn upward flt-32 2 0xf.fffb1p+96f : -0x1.ffbc8ap-52f : inexact-ok
+= jn downward dbl-64 2 0xf.fffb1p+96 : -0x1.ffbc8bdea325bp-52 : inexact-ok
+= jn tonearest dbl-64 2 0xf.fffb1p+96 : -0x1.ffbc8bdea325ap-52 : inexact-ok
+= jn towardzero dbl-64 2 0xf.fffb1p+96 : -0x1.ffbc8bdea325ap-52 : inexact-ok
+= jn upward dbl-64 2 0xf.fffb1p+96 : -0x1.ffbc8bdea325ap-52 : inexact-ok
+= jn downward ldbl-96-intel 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a8p-52L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6p-52L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6p-52L : inexact-ok
+= jn upward ldbl-96-intel 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6p-52L : inexact-ok
+= jn downward ldbl-96-m68k 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a8p-52L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6p-52L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6p-52L : inexact-ok
+= jn upward ldbl-96-m68k 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6p-52L : inexact-ok
+= jn downward ldbl-128 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6acac69a1ecf9p-52L : inexact-ok
+= jn tonearest ldbl-128 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6acac69a1ecf9p-52L : inexact-ok
+= jn towardzero ldbl-128 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6acac69a1ecf8p-52L : inexact-ok
+= jn upward ldbl-128 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6acac69a1ecf8p-52L : inexact-ok
+= jn downward ldbl-128ibm 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6acac69a1edp-52L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6acac69a1edp-52L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6acac69a1ec8p-52L : inexact-ok
+= jn upward ldbl-128ibm 2 0xf.fffb1p+96L : -0x1.ffbc8bdea325a0a6acac69a1ec8p-52L : inexact-ok
+jn 2 0x1p127
+= jn downward flt-32 2 0x8p+124f : -0x1.1f0b6p-64f : inexact-ok
+= jn tonearest flt-32 2 0x8p+124f : -0x1.1f0b6p-64f : inexact-ok
+= jn towardzero flt-32 2 0x8p+124f : -0x1.1f0b5ep-64f : inexact-ok
+= jn upward flt-32 2 0x8p+124f : -0x1.1f0b5ep-64f : inexact-ok
+= jn downward dbl-64 2 0x8p+124 : -0x1.1f0b5f9725113p-64 : inexact-ok
+= jn tonearest dbl-64 2 0x8p+124 : -0x1.1f0b5f9725112p-64 : inexact-ok
+= jn towardzero dbl-64 2 0x8p+124 : -0x1.1f0b5f9725112p-64 : inexact-ok
+= jn upward dbl-64 2 0x8p+124 : -0x1.1f0b5f9725112p-64 : inexact-ok
+= jn downward ldbl-96-intel 2 0x8p+124L : -0x1.1f0b5f972511213ep-64L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0x8p+124L : -0x1.1f0b5f972511213ep-64L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0x8p+124L : -0x1.1f0b5f972511213cp-64L : inexact-ok
+= jn upward ldbl-96-intel 2 0x8p+124L : -0x1.1f0b5f972511213cp-64L : inexact-ok
+= jn downward ldbl-96-m68k 2 0x8p+124L : -0x1.1f0b5f972511213ep-64L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0x8p+124L : -0x1.1f0b5f972511213ep-64L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0x8p+124L : -0x1.1f0b5f972511213cp-64L : inexact-ok
+= jn upward ldbl-96-m68k 2 0x8p+124L : -0x1.1f0b5f972511213cp-64L : inexact-ok
+= jn downward ldbl-128 2 0x8p+124L : -0x1.1f0b5f972511213d156ea4060903p-64L : inexact-ok
+= jn tonearest ldbl-128 2 0x8p+124L : -0x1.1f0b5f972511213d156ea4060903p-64L : inexact-ok
+= jn towardzero ldbl-128 2 0x8p+124L : -0x1.1f0b5f972511213d156ea4060902p-64L : inexact-ok
+= jn upward ldbl-128 2 0x8p+124L : -0x1.1f0b5f972511213d156ea4060902p-64L : inexact-ok
+= jn downward ldbl-128ibm 2 0x8p+124L : -0x1.1f0b5f972511213d156ea406098p-64L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0x8p+124L : -0x1.1f0b5f972511213d156ea40609p-64L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0x8p+124L : -0x1.1f0b5f972511213d156ea40609p-64L : inexact-ok
+= jn upward ldbl-128ibm 2 0x8p+124L : -0x1.1f0b5f972511213d156ea40609p-64L : inexact-ok
+jn 2 0x1p1023
+= jn downward flt-32 2 0xf.fffffp+124f : -0x2.fd3facp-68f : inexact-ok
+= jn tonearest flt-32 2 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= jn towardzero flt-32 2 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= jn upward flt-32 2 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= jn downward dbl-64 2 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= jn tonearest dbl-64 2 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= jn towardzero dbl-64 2 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= jn upward dbl-64 2 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= jn downward ldbl-96-intel 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn upward ldbl-96-intel 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn downward ldbl-96-m68k 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn upward ldbl-96-m68k 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn downward ldbl-128 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= jn tonearest ldbl-128 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= jn towardzero ldbl-128 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= jn upward ldbl-128 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= jn downward ldbl-128ibm 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc57p-68L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= jn upward ldbl-128ibm 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= jn downward dbl-64 2 0x8p+1020 : 0x3.5c4f847797f2ep-516 : inexact-ok
+= jn tonearest dbl-64 2 0x8p+1020 : 0x3.5c4f847797f3p-516 : inexact-ok
+= jn towardzero dbl-64 2 0x8p+1020 : 0x3.5c4f847797f2ep-516 : inexact-ok
+= jn upward dbl-64 2 0x8p+1020 : 0x3.5c4f847797f3p-516 : inexact-ok
+= jn downward ldbl-96-intel 2 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= jn upward ldbl-96-intel 2 0x8p+1020L : 0x3.5c4f847797f2fb08p-516L : inexact-ok
+= jn downward ldbl-96-m68k 2 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= jn upward ldbl-96-m68k 2 0x8p+1020L : 0x3.5c4f847797f2fb08p-516L : inexact-ok
+= jn downward ldbl-128 2 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82ca028p-516L : inexact-ok
+= jn tonearest ldbl-128 2 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82ca028p-516L : inexact-ok
+= jn towardzero ldbl-128 2 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82ca028p-516L : inexact-ok
+= jn upward ldbl-128 2 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82ca02ap-516L : inexact-ok
+= jn downward ldbl-128ibm 2 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82cap-516L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82cap-516L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82cap-516L : inexact-ok
+= jn upward ldbl-128ibm 2 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82ca1p-516L : inexact-ok
+jn 2 0x1p16383
+= jn downward flt-32 2 0xf.fffffp+124f : -0x2.fd3facp-68f : inexact-ok
+= jn tonearest flt-32 2 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= jn towardzero flt-32 2 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= jn upward flt-32 2 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= jn downward dbl-64 2 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= jn tonearest dbl-64 2 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= jn towardzero dbl-64 2 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= jn upward dbl-64 2 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= jn downward ldbl-96-intel 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn upward ldbl-96-intel 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn downward ldbl-96-m68k 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn upward ldbl-96-m68k 2 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= jn downward ldbl-128 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= jn tonearest ldbl-128 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= jn towardzero ldbl-128 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= jn upward ldbl-128 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= jn downward ldbl-128ibm 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc57p-68L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= jn upward ldbl-128ibm 2 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= jn downward dbl-64 2 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f33p-516 : inexact-ok
+= jn tonearest dbl-64 2 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f338p-516 : inexact-ok
+= jn towardzero dbl-64 2 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f33p-516 : inexact-ok
+= jn upward dbl-64 2 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f338p-516 : inexact-ok
+= jn downward ldbl-96-intel 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= jn upward ldbl-96-intel 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= jn downward ldbl-96-m68k 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= jn upward ldbl-96-m68k 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= jn downward ldbl-128 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= jn tonearest ldbl-128 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= jn towardzero ldbl-128 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= jn upward ldbl-128 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe2708p-516L : inexact-ok
+= jn downward ldbl-128ibm 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe24p-516L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe28p-516L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe24p-516L : inexact-ok
+= jn upward ldbl-128ibm 2 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe28p-516L : inexact-ok
+= jn downward ldbl-96-intel 2 0x8p+16380L : -0x1.0bab81cdff920822p-8192L : inexact-ok
+= jn tonearest ldbl-96-intel 2 0x8p+16380L : -0x1.0bab81cdff920822p-8192L : inexact-ok
+= jn towardzero ldbl-96-intel 2 0x8p+16380L : -0x1.0bab81cdff92082p-8192L : inexact-ok
+= jn upward ldbl-96-intel 2 0x8p+16380L : -0x1.0bab81cdff92082p-8192L : inexact-ok
+= jn downward ldbl-96-m68k 2 0x8p+16380L : -0x1.0bab81cdff920822p-8192L : inexact-ok
+= jn tonearest ldbl-96-m68k 2 0x8p+16380L : -0x1.0bab81cdff920822p-8192L : inexact-ok
+= jn towardzero ldbl-96-m68k 2 0x8p+16380L : -0x1.0bab81cdff92082p-8192L : inexact-ok
+= jn upward ldbl-96-m68k 2 0x8p+16380L : -0x1.0bab81cdff92082p-8192L : inexact-ok
+= jn downward ldbl-128 2 0x8p+16380L : -0x1.0bab81cdff9208215a7577214c4ap-8192L : inexact-ok
+= jn tonearest ldbl-128 2 0x8p+16380L : -0x1.0bab81cdff9208215a7577214c49p-8192L : inexact-ok
+= jn towardzero ldbl-128 2 0x8p+16380L : -0x1.0bab81cdff9208215a7577214c49p-8192L : inexact-ok
+= jn upward ldbl-128 2 0x8p+16380L : -0x1.0bab81cdff9208215a7577214c49p-8192L : inexact-ok
+= jn downward ldbl-128 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= jn tonearest ldbl-128 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= jn towardzero ldbl-128 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= jn upward ldbl-128 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f019024p-516L : inexact-ok
+= jn downward ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
+= jn tonearest ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+= jn towardzero ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
+= jn upward ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+lgamma max
+= lgamma downward flt-32 0xf.fffffp+124f : 0xf.fffffp+124f 1 : inexact-ok overflow errno-erange-ok
+= lgamma tonearest flt-32 0xf.fffffp+124f : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+124f 1 : inexact-ok overflow errno-erange-ok
+= lgamma upward flt-32 0xf.fffffp+124f : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma downward dbl-64 0xf.fffffp+124 : 0x5.7b90ba32fdbcp+132 1 : inexact-ok
+= lgamma tonearest dbl-64 0xf.fffffp+124 : 0x5.7b90ba32fdbcp+132 1 : inexact-ok
+= lgamma towardzero dbl-64 0xf.fffffp+124 : 0x5.7b90ba32fdbcp+132 1 : inexact-ok
+= lgamma upward dbl-64 0xf.fffffp+124 : 0x5.7b90ba32fdbc4p+132 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0xf.fffffp+124L : 0x5.7b90ba32fdbc16c8p+132L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0xf.fffffp+124L : 0x5.7b90ba32fdbc16dp+132L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0xf.fffffp+124L : 0x5.7b90ba32fdbc16c8p+132L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0xf.fffffp+124L : 0x5.7b90ba32fdbc16dp+132L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0xf.fffffp+124L : 0x5.7b90ba32fdbc16c8p+132L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0xf.fffffp+124L : 0x5.7b90ba32fdbc16dp+132L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0xf.fffffp+124L : 0x5.7b90ba32fdbc16c8p+132L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0xf.fffffp+124L : 0x5.7b90ba32fdbc16dp+132L 1 : inexact-ok
+= lgamma downward ldbl-128 0xf.fffffp+124L : 0x5.7b90ba32fdbc16cfd352e91badf8p+132L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xf.fffffp+124L : 0x5.7b90ba32fdbc16cfd352e91badfcp+132L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xf.fffffp+124L : 0x5.7b90ba32fdbc16cfd352e91badf8p+132L 1 : inexact-ok
+= lgamma upward ldbl-128 0xf.fffffp+124L : 0x5.7b90ba32fdbc16cfd352e91badfcp+132L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xf.fffffp+124L : 0x5.7b90ba32fdbc16cfd352e91bacp+132L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0xf.fffffp+124L : 0x5.7b90ba32fdbc16cfd352e91baep+132L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0xf.fffffp+124L : 0x5.7b90ba32fdbc16cfd352e91bacp+132L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0xf.fffffp+124L : 0x5.7b90ba32fdbc16cfd352e91baep+132L 1 : inexact-ok
+= lgamma downward dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 1 : inexact-ok overflow errno-erange-ok
+= lgamma tonearest dbl-64 0xf.ffffffffffff8p+1020 : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 1 : inexact-ok overflow errno-erange-ok
+= lgamma upward dbl-64 0xf.ffffffffffff8p+1020 : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd08p+1032L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd08p+1032L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd08p+1032L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd084p+1032L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd08p+1032L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd08p+1032L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd08p+1032L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd084p+1032L 1 : inexact-ok
+= lgamma downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd080e48fd4262096p+1032L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd080e48fd4262096p+1032L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd080e48fd4262096p+1032L 1 : inexact-ok
+= lgamma upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x2.c4c85fdf473dd080e48fd4262098p+1032L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L 1 : inexact-ok overflow errno-erange-ok
+= lgamma tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L 1 : inexact-ok overflow errno-erange-ok
+= lgamma upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma downward ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L 1 : inexact-ok overflow errno-erange-ok
+= lgamma tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L 1 : inexact-ok overflow errno-erange-ok
+= lgamma upward ldbl-96-intel 0xf.fffffffffffffffp+16380L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L 1 : inexact-ok overflow errno-erange-ok
+= lgamma tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L 1 : inexact-ok overflow errno-erange-ok
+= lgamma upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma downward ldbl-128 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L 1 : inexact-ok overflow errno-erange-ok
+= lgamma tonearest ldbl-128 0xf.fffffffffffffffp+16380L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma towardzero ldbl-128 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L 1 : inexact-ok overflow errno-erange-ok
+= lgamma upward ldbl-128 0xf.fffffffffffffffp+16380L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L 1 : inexact-ok overflow errno-erange-ok
+= lgamma tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L 1 : inexact-ok overflow errno-erange-ok
+= lgamma upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.c4c85fdf473ddb98060f5143177ep+1032L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.c4c85fdf473ddb98060f5143178p+1032L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.c4c85fdf473ddb98060f5143177ep+1032L 1 : inexact-ok
+= lgamma upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.c4c85fdf473ddb98060f5143178p+1032L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L 1 : inexact-ok overflow errno-erange-ok
+= lgamma tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty 1 : inexact-ok overflow errno-erange
+= lgamma towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L 1 : inexact-ok overflow errno-erange-ok
+= lgamma upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty 1 : inexact-ok overflow errno-erange
+lgamma 1
+= lgamma downward flt-32 0x1p+0f : 0x0p+0f 1 : inexact-ok
+= lgamma tonearest flt-32 0x1p+0f : 0x0p+0f 1 : inexact-ok
+= lgamma towardzero flt-32 0x1p+0f : 0x0p+0f 1 : inexact-ok
+= lgamma upward flt-32 0x1p+0f : 0x0p+0f 1 : inexact-ok
+= lgamma downward dbl-64 0x1p+0 : 0x0p+0 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1p+0 : 0x0p+0 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1p+0 : 0x0p+0 1 : inexact-ok
+= lgamma upward dbl-64 0x1p+0 : 0x0p+0 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1p+0L : 0x0p+0L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1p+0L : 0x0p+0L 1 : inexact-ok
+lgamma 3
+= lgamma downward flt-32 0x3p+0f : 0xb.17217p-4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x3p+0f : 0xb.17218p-4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x3p+0f : 0xb.17217p-4f 1 : inexact-ok
+= lgamma upward flt-32 0x3p+0f : 0xb.17218p-4f 1 : inexact-ok
+= lgamma downward dbl-64 0x3p+0 : 0xb.17217f7d1cf78p-4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x3p+0 : 0xb.17217f7d1cf78p-4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x3p+0 : 0xb.17217f7d1cf78p-4 1 : inexact-ok
+= lgamma upward dbl-64 0x3p+0 : 0xb.17217f7d1cf8p-4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x3p+0L : 0xb.17217f7d1cf79abp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x3p+0L : 0xb.17217f7d1cf79acp-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x3p+0L : 0xb.17217f7d1cf79abp-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x3p+0L : 0xb.17217f7d1cf79acp-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x3p+0L : 0xb.17217f7d1cf79abp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x3p+0L : 0xb.17217f7d1cf79acp-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x3p+0L : 0xb.17217f7d1cf79abp-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x3p+0L : 0xb.17217f7d1cf79acp-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x3p+0L : 0xb.17217f7d1cf79abc9e3b39803f28p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x3p+0L : 0xb.17217f7d1cf79abc9e3b39803f3p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x3p+0L : 0xb.17217f7d1cf79abc9e3b39803f28p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x3p+0L : 0xb.17217f7d1cf79abc9e3b39803f3p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x3p+0L : 0xb.17217f7d1cf79abc9e3b39803cp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x3p+0L : 0xb.17217f7d1cf79abc9e3b39804p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x3p+0L : 0xb.17217f7d1cf79abc9e3b39803cp-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x3p+0L : 0xb.17217f7d1cf79abc9e3b39804p-4L 1 : inexact-ok
+lgamma 0.5
+= lgamma downward flt-32 0x8p-4f : 0x9.28682p-4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-4f : 0x9.28682p-4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-4f : 0x9.28682p-4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-4f : 0x9.28683p-4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-4 : 0x9.28682473d0de8p-4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-4 : 0x9.28682473d0de8p-4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-4 : 0x9.28682473d0de8p-4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-4 : 0x9.28682473d0dfp-4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-4L : 0x9.28682473d0de85ep-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-4L : 0x9.28682473d0de85fp-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-4L : 0x9.28682473d0de85ep-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-4L : 0x9.28682473d0de85fp-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-4L : 0x9.28682473d0de85ep-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-4L : 0x9.28682473d0de85fp-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-4L : 0x9.28682473d0de85ep-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-4L : 0x9.28682473d0de85fp-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-4L : 0x9.28682473d0de85eafcab635421f8p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-4L : 0x9.28682473d0de85eafcab635421f8p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-4L : 0x9.28682473d0de85eafcab635421f8p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-4L : 0x9.28682473d0de85eafcab635422p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-4L : 0x9.28682473d0de85eafcab63542p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-4L : 0x9.28682473d0de85eafcab63542p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-4L : 0x9.28682473d0de85eafcab63542p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-4L : 0x9.28682473d0de85eafcab635424p-4L 1 : inexact-ok
+lgamma -0.5
+= lgamma downward flt-32 -0x8p-4f : 0x1.43f89ap+0f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-4f : 0x1.43f89ap+0f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-4f : 0x1.43f89ap+0f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-4f : 0x1.43f89cp+0f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-4 : 0x1.43f89a3f0edd6p+0 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-4 : 0x1.43f89a3f0edd6p+0 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-4 : 0x1.43f89a3f0edd6p+0 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-4 : 0x1.43f89a3f0edd7p+0 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-4L : 0x1.43f89a3f0edd620ap+0L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-4L : 0x1.43f89a3f0edd620ap+0L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-4L : 0x1.43f89a3f0edd620ap+0L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-4L : 0x1.43f89a3f0edd620cp+0L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-4L : 0x1.43f89a3f0edd620ap+0L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-4L : 0x1.43f89a3f0edd620ap+0L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-4L : 0x1.43f89a3f0edd620ap+0L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-4L : 0x1.43f89a3f0edd620cp+0L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-4L : 0x1.43f89a3f0edd620a79ae69cd4612p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-4L : 0x1.43f89a3f0edd620a79ae69cd4613p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-4L : 0x1.43f89a3f0edd620a79ae69cd4612p+0L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-4L : 0x1.43f89a3f0edd620a79ae69cd4613p+0L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-4L : 0x1.43f89a3f0edd620a79ae69cd46p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-4L : 0x1.43f89a3f0edd620a79ae69cd46p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-4L : 0x1.43f89a3f0edd620a79ae69cd46p+0L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-4L : 0x1.43f89a3f0edd620a79ae69cd468p+0L -1 : inexact-ok
+lgamma 0.7
+= lgamma downward flt-32 0xb.33334p-4f : 0x4.2c831p-4f 1 : inexact-ok
+= lgamma tonearest flt-32 0xb.33334p-4f : 0x4.2c831p-4f 1 : inexact-ok
+= lgamma towardzero flt-32 0xb.33334p-4f : 0x4.2c831p-4f 1 : inexact-ok
+= lgamma upward flt-32 0xb.33334p-4f : 0x4.2c8318p-4f 1 : inexact-ok
+= lgamma downward dbl-64 0xb.33334p-4 : 0x4.2c8312a971bbcp-4 1 : inexact-ok
+= lgamma tonearest dbl-64 0xb.33334p-4 : 0x4.2c8312a971bcp-4 1 : inexact-ok
+= lgamma towardzero dbl-64 0xb.33334p-4 : 0x4.2c8312a971bbcp-4 1 : inexact-ok
+= lgamma upward dbl-64 0xb.33334p-4 : 0x4.2c8312a971bcp-4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0xb.33334p-4L : 0x4.2c8312a971bbf728p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0xb.33334p-4L : 0x4.2c8312a971bbf728p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0xb.33334p-4L : 0x4.2c8312a971bbf728p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0xb.33334p-4L : 0x4.2c8312a971bbf73p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0xb.33334p-4L : 0x4.2c8312a971bbf728p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0xb.33334p-4L : 0x4.2c8312a971bbf728p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0xb.33334p-4L : 0x4.2c8312a971bbf728p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0xb.33334p-4L : 0x4.2c8312a971bbf73p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0xb.33334p-4L : 0x4.2c8312a971bbf7287f1c24c96238p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xb.33334p-4L : 0x4.2c8312a971bbf7287f1c24c96238p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xb.33334p-4L : 0x4.2c8312a971bbf7287f1c24c96238p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0xb.33334p-4L : 0x4.2c8312a971bbf7287f1c24c9623cp-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xb.33334p-4L : 0x4.2c8312a971bbf7287f1c24c962p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0xb.33334p-4L : 0x4.2c8312a971bbf7287f1c24c962p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0xb.33334p-4L : 0x4.2c8312a971bbf7287f1c24c962p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0xb.33334p-4L : 0x4.2c8312a971bbf7287f1c24c964p-4L 1 : inexact-ok
+= lgamma downward flt-32 0xb.33333p-4f : 0x4.2c832p-4f 1 : inexact-ok
+= lgamma tonearest flt-32 0xb.33333p-4f : 0x4.2c8328p-4f 1 : inexact-ok
+= lgamma towardzero flt-32 0xb.33333p-4f : 0x4.2c832p-4f 1 : inexact-ok
+= lgamma upward flt-32 0xb.33333p-4f : 0x4.2c8328p-4f 1 : inexact-ok
+= lgamma downward dbl-64 0xb.33333p-4 : 0x4.2c83262ea9194p-4 1 : inexact-ok
+= lgamma tonearest dbl-64 0xb.33333p-4 : 0x4.2c83262ea9194p-4 1 : inexact-ok
+= lgamma towardzero dbl-64 0xb.33333p-4 : 0x4.2c83262ea9194p-4 1 : inexact-ok
+= lgamma upward dbl-64 0xb.33333p-4 : 0x4.2c83262ea9198p-4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0xb.33333p-4L : 0x4.2c83262ea919546p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0xb.33333p-4L : 0x4.2c83262ea9195468p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0xb.33333p-4L : 0x4.2c83262ea919546p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0xb.33333p-4L : 0x4.2c83262ea9195468p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0xb.33333p-4L : 0x4.2c83262ea919546p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0xb.33333p-4L : 0x4.2c83262ea9195468p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0xb.33333p-4L : 0x4.2c83262ea919546p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0xb.33333p-4L : 0x4.2c83262ea9195468p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0xb.33333p-4L : 0x4.2c83262ea91954655f5ec606838p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xb.33333p-4L : 0x4.2c83262ea91954655f5ec6068384p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xb.33333p-4L : 0x4.2c83262ea91954655f5ec606838p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0xb.33333p-4L : 0x4.2c83262ea91954655f5ec6068384p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xb.33333p-4L : 0x4.2c83262ea91954655f5ec60682p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0xb.33333p-4L : 0x4.2c83262ea91954655f5ec60684p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0xb.33333p-4L : 0x4.2c83262ea91954655f5ec60682p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0xb.33333p-4L : 0x4.2c83262ea91954655f5ec60684p-4L 1 : inexact-ok
+= lgamma downward dbl-64 0xb.3333333333338p-4 : 0x4.2c832247379c4p-4 1 : inexact-ok
+= lgamma tonearest dbl-64 0xb.3333333333338p-4 : 0x4.2c832247379c4p-4 1 : inexact-ok
+= lgamma towardzero dbl-64 0xb.3333333333338p-4 : 0x4.2c832247379c4p-4 1 : inexact-ok
+= lgamma upward dbl-64 0xb.3333333333338p-4 : 0x4.2c832247379c8p-4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0xb.3333333333338p-4L : 0x4.2c832247379c436p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0xb.3333333333338p-4L : 0x4.2c832247379c436p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0xb.3333333333338p-4L : 0x4.2c832247379c436p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0xb.3333333333338p-4L : 0x4.2c832247379c4368p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0xb.3333333333338p-4L : 0x4.2c832247379c436p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0xb.3333333333338p-4L : 0x4.2c832247379c436p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0xb.3333333333338p-4L : 0x4.2c832247379c436p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0xb.3333333333338p-4L : 0x4.2c832247379c4368p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0xb.3333333333338p-4L : 0x4.2c832247379c4363b0be5aa54848p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xb.3333333333338p-4L : 0x4.2c832247379c4363b0be5aa54848p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xb.3333333333338p-4L : 0x4.2c832247379c4363b0be5aa54848p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0xb.3333333333338p-4L : 0x4.2c832247379c4363b0be5aa5484cp-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xb.3333333333338p-4L : 0x4.2c832247379c4363b0be5aa548p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0xb.3333333333338p-4L : 0x4.2c832247379c4363b0be5aa548p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0xb.3333333333338p-4L : 0x4.2c832247379c4363b0be5aa548p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0xb.3333333333338p-4L : 0x4.2c832247379c4363b0be5aa54ap-4L 1 : inexact-ok
+= lgamma downward dbl-64 0xb.333333333333p-4 : 0x4.2c832247379ccp-4 1 : inexact-ok
+= lgamma tonearest dbl-64 0xb.333333333333p-4 : 0x4.2c832247379ccp-4 1 : inexact-ok
+= lgamma towardzero dbl-64 0xb.333333333333p-4 : 0x4.2c832247379ccp-4 1 : inexact-ok
+= lgamma upward dbl-64 0xb.333333333333p-4 : 0x4.2c832247379dp-4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0xb.333333333333p-4L : 0x4.2c832247379cdf88p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0xb.333333333333p-4L : 0x4.2c832247379cdf9p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0xb.333333333333p-4L : 0x4.2c832247379cdf88p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0xb.333333333333p-4L : 0x4.2c832247379cdf9p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0xb.333333333333p-4L : 0x4.2c832247379cdf88p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0xb.333333333333p-4L : 0x4.2c832247379cdf9p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0xb.333333333333p-4L : 0x4.2c832247379cdf88p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0xb.333333333333p-4L : 0x4.2c832247379cdf9p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0xb.333333333333p-4L : 0x4.2c832247379cdf8d6c1618623c54p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xb.333333333333p-4L : 0x4.2c832247379cdf8d6c1618623c58p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xb.333333333333p-4L : 0x4.2c832247379cdf8d6c1618623c54p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0xb.333333333333p-4L : 0x4.2c832247379cdf8d6c1618623c58p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xb.333333333333p-4L : 0x4.2c832247379cdf8d6c1618623cp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0xb.333333333333p-4L : 0x4.2c832247379cdf8d6c1618623cp-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0xb.333333333333p-4L : 0x4.2c832247379cdf8d6c1618623cp-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0xb.333333333333p-4L : 0x4.2c832247379cdf8d6c1618623ep-4L 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0xb.333333333333334p-4L : 0x4.2c832247379ca1p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0xb.333333333333334p-4L : 0x4.2c832247379ca108p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0xb.333333333333334p-4L : 0x4.2c832247379ca1p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0xb.333333333333334p-4L : 0x4.2c832247379ca108p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0xb.333333333333334p-4L : 0x4.2c832247379ca1p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0xb.333333333333334p-4L : 0x4.2c832247379ca108p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0xb.333333333333334p-4L : 0x4.2c832247379ca1p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0xb.333333333333334p-4L : 0x4.2c832247379ca108p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0xb.333333333333334p-4L : 0x4.2c832247379ca106b69376ea134p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xb.333333333333334p-4L : 0x4.2c832247379ca106b69376ea1344p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xb.333333333333334p-4L : 0x4.2c832247379ca106b69376ea134p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0xb.333333333333334p-4L : 0x4.2c832247379ca106b69376ea1344p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xb.333333333333334p-4L : 0x4.2c832247379ca106b69376ea12p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0xb.333333333333334p-4L : 0x4.2c832247379ca106b69376ea14p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0xb.333333333333334p-4L : 0x4.2c832247379ca106b69376ea12p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0xb.333333333333334p-4L : 0x4.2c832247379ca106b69376ea14p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0xb.333333333333333p-4L : 0x4.2c832247379ca118p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0xb.333333333333333p-4L : 0x4.2c832247379ca118p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0xb.333333333333333p-4L : 0x4.2c832247379ca118p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0xb.333333333333333p-4L : 0x4.2c832247379ca12p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0xb.333333333333333p-4L : 0x4.2c832247379ca118p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0xb.333333333333333p-4L : 0x4.2c832247379ca118p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0xb.333333333333333p-4L : 0x4.2c832247379ca118p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0xb.333333333333333p-4L : 0x4.2c832247379ca12p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0xb.333333333333333p-4L : 0x4.2c832247379ca11a3bcae1e1caep-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xb.333333333333333p-4L : 0x4.2c832247379ca11a3bcae1e1cae4p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xb.333333333333333p-4L : 0x4.2c832247379ca11a3bcae1e1caep-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0xb.333333333333333p-4L : 0x4.2c832247379ca11a3bcae1e1cae4p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xb.333333333333333p-4L : 0x4.2c832247379ca11a3bcae1e1cap-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0xb.333333333333333p-4L : 0x4.2c832247379ca11a3bcae1e1cap-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0xb.333333333333333p-4L : 0x4.2c832247379ca11a3bcae1e1cap-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0xb.333333333333333p-4L : 0x4.2c832247379ca11a3bcae1e1ccp-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0xb.3333333333333333333333333338p-4L : 0x4.2c832247379ca11654596616a62p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xb.3333333333333333333333333338p-4L : 0x4.2c832247379ca11654596616a624p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xb.3333333333333333333333333338p-4L : 0x4.2c832247379ca11654596616a62p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0xb.3333333333333333333333333338p-4L : 0x4.2c832247379ca11654596616a624p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0xb.333333333333333333333333333p-4L : 0x4.2c832247379ca11654596616a62cp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xb.333333333333333333333333333p-4L : 0x4.2c832247379ca11654596616a62cp-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xb.333333333333333333333333333p-4L : 0x4.2c832247379ca11654596616a62cp-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0xb.333333333333333333333333333p-4L : 0x4.2c832247379ca11654596616a63p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0xb.33333333333333333333333334p-4L : 0x4.2c832247379ca11654596616a52cp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xb.33333333333333333333333334p-4L : 0x4.2c832247379ca11654596616a53p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xb.33333333333333333333333334p-4L : 0x4.2c832247379ca11654596616a52cp-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0xb.33333333333333333333333334p-4L : 0x4.2c832247379ca11654596616a53p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xb.33333333333333333333333334p-4L : 0x4.2c832247379ca11654596616a4p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L : 0x4.2c832247379ca11654596616a6p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L : 0x4.2c832247379ca11654596616a4p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0xb.33333333333333333333333334p-4L : 0x4.2c832247379ca11654596616a6p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0xb.3333333333333333333333333p-4L : 0x4.2c832247379ca11654596616aa1p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0xb.3333333333333333333333333p-4L : 0x4.2c832247379ca11654596616aa1p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0xb.3333333333333333333333333p-4L : 0x4.2c832247379ca11654596616aa1p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0xb.3333333333333333333333333p-4L : 0x4.2c832247379ca11654596616aa14p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0xb.3333333333333333333333333p-4L : 0x4.2c832247379ca11654596616aap-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L : 0x4.2c832247379ca11654596616aap-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L : 0x4.2c832247379ca11654596616aap-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0xb.3333333333333333333333333p-4L : 0x4.2c832247379ca11654596616acp-4L 1 : inexact-ok
+lgamma 1.2
+= lgamma downward flt-32 0x1.333334p+0f : -0x1.5db13ep-4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x1.333334p+0f : -0x1.5db13cp-4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x1.333334p+0f : -0x1.5db13cp-4f 1 : inexact-ok
+= lgamma upward flt-32 0x1.333334p+0f : -0x1.5db13cp-4f 1 : inexact-ok
+= lgamma downward dbl-64 0x1.333334p+0 : -0x1.5db13c7af7432p-4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1.333334p+0 : -0x1.5db13c7af7432p-4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1.333334p+0 : -0x1.5db13c7af7431p-4 1 : inexact-ok
+= lgamma upward dbl-64 0x1.333334p+0 : -0x1.5db13c7af7431p-4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1.333334p+0L : -0x1.5db13c7af7431d56p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1.333334p+0L : -0x1.5db13c7af7431d54p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1.333334p+0L : -0x1.5db13c7af7431d54p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1.333334p+0L : -0x1.5db13c7af7431d54p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1.333334p+0L : -0x1.5db13c7af7431d56p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1.333334p+0L : -0x1.5db13c7af7431d54p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1.333334p+0L : -0x1.5db13c7af7431d54p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1.333334p+0L : -0x1.5db13c7af7431d54p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1.333334p+0L : -0x1.5db13c7af7431d54a91acd0484e2p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1.333334p+0L : -0x1.5db13c7af7431d54a91acd0484e1p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1.333334p+0L : -0x1.5db13c7af7431d54a91acd0484e1p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1.333334p+0L : -0x1.5db13c7af7431d54a91acd0484e1p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1.333334p+0L : -0x1.5db13c7af7431d54a91acd0485p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1.333334p+0L : -0x1.5db13c7af7431d54a91acd0485p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1.333334p+0L : -0x1.5db13c7af7431d54a91acd04848p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1.333334p+0L : -0x1.5db13c7af7431d54a91acd04848p-4L 1 : inexact-ok
+= lgamma downward flt-32 0x1.333332p+0f : -0x1.5db134p-4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x1.333332p+0f : -0x1.5db134p-4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x1.333332p+0f : -0x1.5db132p-4f 1 : inexact-ok
+= lgamma upward flt-32 0x1.333332p+0f : -0x1.5db132p-4f 1 : inexact-ok
+= lgamma downward dbl-64 0x1.333332p+0 : -0x1.5db1333b26a22p-4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1.333332p+0 : -0x1.5db1333b26a22p-4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1.333332p+0 : -0x1.5db1333b26a21p-4 1 : inexact-ok
+= lgamma upward dbl-64 0x1.333332p+0 : -0x1.5db1333b26a21p-4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1.333332p+0L : -0x1.5db1333b26a21d94p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1.333332p+0L : -0x1.5db1333b26a21d94p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1.333332p+0L : -0x1.5db1333b26a21d92p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1.333332p+0L : -0x1.5db1333b26a21d92p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1.333332p+0L : -0x1.5db1333b26a21d94p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1.333332p+0L : -0x1.5db1333b26a21d94p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1.333332p+0L : -0x1.5db1333b26a21d92p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1.333332p+0L : -0x1.5db1333b26a21d92p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1.333332p+0L : -0x1.5db1333b26a21d93053dff519c41p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1.333332p+0L : -0x1.5db1333b26a21d93053dff519c4p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1.333332p+0L : -0x1.5db1333b26a21d93053dff519c4p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1.333332p+0L : -0x1.5db1333b26a21d93053dff519c4p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1.333332p+0L : -0x1.5db1333b26a21d93053dff519c8p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1.333332p+0L : -0x1.5db1333b26a21d93053dff519c8p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1.333332p+0L : -0x1.5db1333b26a21d93053dff519cp-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1.333332p+0L : -0x1.5db1333b26a21d93053dff519cp-4L 1 : inexact-ok
+= lgamma downward dbl-64 0x1.3333333333334p+0 : -0x1.5db138c7d70cbp-4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1.3333333333334p+0 : -0x1.5db138c7d70cbp-4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1.3333333333334p+0 : -0x1.5db138c7d70cap-4 1 : inexact-ok
+= lgamma upward dbl-64 0x1.3333333333334p+0 : -0x1.5db138c7d70cap-4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfep-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfep-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfcp-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfcp-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfep-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfep-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfcp-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfcp-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfd0f2a4555835dp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfd0f2a4555835dp-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfd0f2a4555835cp-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfd0f2a4555835cp-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfd0f2a4555838p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfd0f2a4555838p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfd0f2a455583p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1.3333333333334p+0L : -0x1.5db138c7d70cadfd0f2a455583p-4L 1 : inexact-ok
+= lgamma downward dbl-64 0x1.3333333333333p+0 : -0x1.5db138c7d70c7p-4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1.3333333333333p+0 : -0x1.5db138c7d70c6p-4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1.3333333333333p+0 : -0x1.5db138c7d70c6p-4 1 : inexact-ok
+= lgamma upward dbl-64 0x1.3333333333333p+0 : -0x1.5db138c7d70c6p-4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1.3333333333333p+0L : -0x1.5db138c7d70c64p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fep-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fep-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fep-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1.3333333333333p+0L : -0x1.5db138c7d70c64p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fep-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fep-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fep-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fe8a632b0ceafap-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fe8a632b0ceafap-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fe8a632b0ceaf9p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fe8a632b0ceaf9p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fe8a632b0cebp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fe8a632b0cebp-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fe8a632b0cea8p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1.3333333333333p+0L : -0x1.5db138c7d70c63fe8a632b0cea8p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72dp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cep-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cep-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cep-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72dp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cep-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cep-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cep-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cebe78070ff51cp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cebe78070ff51bp-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cebe78070ff51bp-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cebe78070ff51bp-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cebe78070ff58p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cebe78070ff5p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cebe78070ff5p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1.3333333333333334p+0L : -0x1.5db138c7d70c72cebe78070ff5p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c6p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c6p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c4p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c4p-4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c6p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c6p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c4p-4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c4p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c57ea76e2cac08p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c57ea76e2cac07p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c57ea76e2cac07p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c57ea76e2cac07p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c57ea76e2cac8p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c57ea76e2cacp-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c57ea76e2cacp-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1.3333333333333332p+0L : -0x1.5db138c7d70c72c57ea76e2cacp-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1.3333333333333333333333333334p+0L : -0x1.5db138c7d70c72cb0b57c9e83e4bp-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1.3333333333333333333333333334p+0L : -0x1.5db138c7d70c72cb0b57c9e83e4ap-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1.3333333333333333333333333334p+0L : -0x1.5db138c7d70c72cb0b57c9e83e4ap-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1.3333333333333333333333333334p+0L : -0x1.5db138c7d70c72cb0b57c9e83e4ap-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1.3333333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83e46p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1.3333333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83e45p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1.3333333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83e45p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1.3333333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83e45p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1.333333333333333333333333338p+0L : -0x1.5db138c7d70c72cb0b57c9e83faap-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1.333333333333333333333333338p+0L : -0x1.5db138c7d70c72cb0b57c9e83faap-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1.333333333333333333333333338p+0L : -0x1.5db138c7d70c72cb0b57c9e83fa9p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1.333333333333333333333333338p+0L : -0x1.5db138c7d70c72cb0b57c9e83fa9p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1.333333333333333333333333338p+0L : -0x1.5db138c7d70c72cb0b57c9e84p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1.333333333333333333333333338p+0L : -0x1.5db138c7d70c72cb0b57c9e83f8p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1.333333333333333333333333338p+0L : -0x1.5db138c7d70c72cb0b57c9e83f8p-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1.333333333333333333333333338p+0L : -0x1.5db138c7d70c72cb0b57c9e83f8p-4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1.33333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83d5ap-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1.33333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83d5ap-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1.33333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83d59p-4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1.33333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83d59p-4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1.33333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83d8p-4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1.33333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83d8p-4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1.33333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83dp-4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1.33333333333333333333333333p+0L : -0x1.5db138c7d70c72cb0b57c9e83dp-4L 1 : inexact-ok
+lgamma 0x1p-5
+= lgamma downward flt-32 0x8p-8f : 0x3.72d02cp+0f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-8f : 0x3.72d03p+0f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-8f : 0x3.72d02cp+0f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-8f : 0x3.72d03p+0f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-8 : 0x3.72d02ef880f8cp+0 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-8 : 0x3.72d02ef880f8cp+0 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-8 : 0x3.72d02ef880f8cp+0 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-8 : 0x3.72d02ef880f8ep+0 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-8L : 0x3.72d02ef880f8c914p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-8L : 0x3.72d02ef880f8c918p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-8L : 0x3.72d02ef880f8c914p+0L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-8L : 0x3.72d02ef880f8c918p+0L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-8L : 0x3.72d02ef880f8c914p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-8L : 0x3.72d02ef880f8c918p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-8L : 0x3.72d02ef880f8c914p+0L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-8L : 0x3.72d02ef880f8c918p+0L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-8L : 0x3.72d02ef880f8c917fc232be05e8ep+0L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-8L : 0x3.72d02ef880f8c917fc232be05e9p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-8L : 0x3.72d02ef880f8c917fc232be05e8ep+0L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-8L : 0x3.72d02ef880f8c917fc232be05e9p+0L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-8L : 0x3.72d02ef880f8c917fc232be05ep+0L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-8L : 0x3.72d02ef880f8c917fc232be05fp+0L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-8L : 0x3.72d02ef880f8c917fc232be05ep+0L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-8L : 0x3.72d02ef880f8c917fc232be05fp+0L 1 : inexact-ok
+lgamma -0x1p-5
+= lgamma downward flt-32 -0x8p-8f : 0x3.7c0e0cp+0f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-8f : 0x3.7c0e1p+0f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-8f : 0x3.7c0e0cp+0f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-8f : 0x3.7c0e1p+0f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-8 : 0x3.7c0e0ff92f048p+0 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-8 : 0x3.7c0e0ff92f04ap+0 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-8 : 0x3.7c0e0ff92f048p+0 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-8 : 0x3.7c0e0ff92f04ap+0 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-8L : 0x3.7c0e0ff92f049584p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-8L : 0x3.7c0e0ff92f049588p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-8L : 0x3.7c0e0ff92f049584p+0L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-8L : 0x3.7c0e0ff92f049588p+0L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-8L : 0x3.7c0e0ff92f049584p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-8L : 0x3.7c0e0ff92f049588p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-8L : 0x3.7c0e0ff92f049584p+0L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-8L : 0x3.7c0e0ff92f049588p+0L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-8L : 0x3.7c0e0ff92f04958709ad5a1ae648p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-8L : 0x3.7c0e0ff92f04958709ad5a1ae648p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-8L : 0x3.7c0e0ff92f04958709ad5a1ae648p+0L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-8L : 0x3.7c0e0ff92f04958709ad5a1ae64ap+0L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-8L : 0x3.7c0e0ff92f04958709ad5a1ae6p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-8L : 0x3.7c0e0ff92f04958709ad5a1ae6p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-8L : 0x3.7c0e0ff92f04958709ad5a1ae6p+0L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-8L : 0x3.7c0e0ff92f04958709ad5a1ae7p+0L -1 : inexact-ok
+lgamma 0x1p-10
+= lgamma downward flt-32 0x4p-12f : 0x6.ee5008p+0f 1 : inexact-ok
+= lgamma tonearest flt-32 0x4p-12f : 0x6.ee5008p+0f 1 : inexact-ok
+= lgamma towardzero flt-32 0x4p-12f : 0x6.ee5008p+0f 1 : inexact-ok
+= lgamma upward flt-32 0x4p-12f : 0x6.ee501p+0f 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-12 : 0x6.ee500bbb72644p+0 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-12 : 0x6.ee500bbb72644p+0 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-12 : 0x6.ee500bbb72644p+0 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-12 : 0x6.ee500bbb72648p+0 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-12L : 0x6.ee500bbb72645fc8p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-12L : 0x6.ee500bbb72645fdp+0L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-12L : 0x6.ee500bbb72645fc8p+0L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-12L : 0x6.ee500bbb72645fdp+0L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-12L : 0x6.ee500bbb72645fc8p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-12L : 0x6.ee500bbb72645fdp+0L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-12L : 0x6.ee500bbb72645fc8p+0L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-12L : 0x6.ee500bbb72645fdp+0L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-12L : 0x6.ee500bbb72645fcecb166c9d8c6p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-12L : 0x6.ee500bbb72645fcecb166c9d8c64p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-12L : 0x6.ee500bbb72645fcecb166c9d8c6p+0L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-12L : 0x6.ee500bbb72645fcecb166c9d8c64p+0L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-12L : 0x6.ee500bbb72645fcecb166c9d8cp+0L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-12L : 0x6.ee500bbb72645fcecb166c9d8cp+0L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-12L : 0x6.ee500bbb72645fcecb166c9d8cp+0L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-12L : 0x6.ee500bbb72645fcecb166c9d8ep+0L 1 : inexact-ok
+lgamma -0x1p-10
+= lgamma downward flt-32 -0x4p-12f : 0x6.ee99e8p+0f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x4p-12f : 0x6.ee99fp+0f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x4p-12f : 0x6.ee99e8p+0f -1 : inexact-ok
+= lgamma upward flt-32 -0x4p-12f : 0x6.ee99fp+0f -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-12 : 0x6.ee99edf298bdcp+0 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-12 : 0x6.ee99edf298bep+0 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-12 : 0x6.ee99edf298bdcp+0 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-12 : 0x6.ee99edf298bep+0 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-12L : 0x6.ee99edf298bdfe38p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-12L : 0x6.ee99edf298bdfe38p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-12L : 0x6.ee99edf298bdfe38p+0L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-12L : 0x6.ee99edf298bdfe4p+0L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-12L : 0x6.ee99edf298bdfe38p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-12L : 0x6.ee99edf298bdfe38p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-12L : 0x6.ee99edf298bdfe38p+0L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-12L : 0x6.ee99edf298bdfe4p+0L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-12L : 0x6.ee99edf298bdfe3b9118d8828c54p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-12L : 0x6.ee99edf298bdfe3b9118d8828c58p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-12L : 0x6.ee99edf298bdfe3b9118d8828c54p+0L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-12L : 0x6.ee99edf298bdfe3b9118d8828c58p+0L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-12L : 0x6.ee99edf298bdfe3b9118d8828cp+0L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-12L : 0x6.ee99edf298bdfe3b9118d8828cp+0L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-12L : 0x6.ee99edf298bdfe3b9118d8828cp+0L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-12L : 0x6.ee99edf298bdfe3b9118d8828ep+0L -1 : inexact-ok
+lgamma 0x1p-15
+= lgamma downward flt-32 0x2p-16f : 0xa.65ae3p+0f 1 : inexact-ok
+= lgamma tonearest flt-32 0x2p-16f : 0xa.65ae4p+0f 1 : inexact-ok
+= lgamma towardzero flt-32 0x2p-16f : 0xa.65ae3p+0f 1 : inexact-ok
+= lgamma upward flt-32 0x2p-16f : 0xa.65ae4p+0f 1 : inexact-ok
+= lgamma downward dbl-64 0x2p-16 : 0xa.65ae3fffc5928p+0 1 : inexact-ok
+= lgamma tonearest dbl-64 0x2p-16 : 0xa.65ae3fffc5928p+0 1 : inexact-ok
+= lgamma towardzero dbl-64 0x2p-16 : 0xa.65ae3fffc5928p+0 1 : inexact-ok
+= lgamma upward dbl-64 0x2p-16 : 0xa.65ae3fffc593p+0 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x2p-16L : 0xa.65ae3fffc592bd6p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x2p-16L : 0xa.65ae3fffc592bd6p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x2p-16L : 0xa.65ae3fffc592bd6p+0L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x2p-16L : 0xa.65ae3fffc592bd7p+0L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x2p-16L : 0xa.65ae3fffc592bd6p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x2p-16L : 0xa.65ae3fffc592bd6p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x2p-16L : 0xa.65ae3fffc592bd6p+0L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x2p-16L : 0xa.65ae3fffc592bd7p+0L 1 : inexact-ok
+= lgamma downward ldbl-128 0x2p-16L : 0xa.65ae3fffc592bd634ed0d84877p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x2p-16L : 0xa.65ae3fffc592bd634ed0d8487708p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x2p-16L : 0xa.65ae3fffc592bd634ed0d84877p+0L 1 : inexact-ok
+= lgamma upward ldbl-128 0x2p-16L : 0xa.65ae3fffc592bd634ed0d8487708p+0L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x2p-16L : 0xa.65ae3fffc592bd634ed0d84874p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x2p-16L : 0xa.65ae3fffc592bd634ed0d84878p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x2p-16L : 0xa.65ae3fffc592bd634ed0d84874p+0L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x2p-16L : 0xa.65ae3fffc592bd634ed0d84878p+0L 1 : inexact-ok
+lgamma -0x1p-15
+= lgamma downward flt-32 -0x2p-16f : 0xa.65b08p+0f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x2p-16f : 0xa.65b09p+0f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x2p-16f : 0xa.65b08p+0f -1 : inexact-ok
+= lgamma upward flt-32 -0x2p-16f : 0xa.65b09p+0f -1 : inexact-ok
+= lgamma downward dbl-64 -0x2p-16 : 0xa.65b08f116527p+0 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x2p-16 : 0xa.65b08f116527p+0 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x2p-16 : 0xa.65b08f116527p+0 -1 : inexact-ok
+= lgamma upward dbl-64 -0x2p-16 : 0xa.65b08f1165278p+0 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x2p-16L : 0xa.65b08f1165271d5p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x2p-16L : 0xa.65b08f1165271d6p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x2p-16L : 0xa.65b08f1165271d5p+0L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x2p-16L : 0xa.65b08f1165271d6p+0L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x2p-16L : 0xa.65b08f1165271d5p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x2p-16L : 0xa.65b08f1165271d6p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x2p-16L : 0xa.65b08f1165271d5p+0L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x2p-16L : 0xa.65b08f1165271d6p+0L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x2p-16L : 0xa.65b08f1165271d5bc46c11c53e68p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x2p-16L : 0xa.65b08f1165271d5bc46c11c53e68p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x2p-16L : 0xa.65b08f1165271d5bc46c11c53e68p+0L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x2p-16L : 0xa.65b08f1165271d5bc46c11c53e7p+0L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x2p-16L : 0xa.65b08f1165271d5bc46c11c53cp+0L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x2p-16L : 0xa.65b08f1165271d5bc46c11c54p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x2p-16L : 0xa.65b08f1165271d5bc46c11c53cp+0L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x2p-16L : 0xa.65b08f1165271d5bc46c11c54p+0L -1 : inexact-ok
+lgamma 0x1p-20
+= lgamma downward flt-32 0x1p-20f : 0xd.dce9dp+0f 1 : inexact-ok
+= lgamma tonearest flt-32 0x1p-20f : 0xd.dce9dp+0f 1 : inexact-ok
+= lgamma towardzero flt-32 0x1p-20f : 0xd.dce9dp+0f 1 : inexact-ok
+= lgamma upward flt-32 0x1p-20f : 0xd.dce9ep+0f 1 : inexact-ok
+= lgamma downward dbl-64 0x1p-20 : 0xd.dce9d6201e898p+0 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1p-20 : 0xd.dce9d6201e8ap+0 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1p-20 : 0xd.dce9d6201e898p+0 1 : inexact-ok
+= lgamma upward dbl-64 0x1p-20 : 0xd.dce9d6201e8ap+0 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p-20L : 0xd.dce9d6201e89d6bp+0L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p-20L : 0xd.dce9d6201e89d6cp+0L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p-20L : 0xd.dce9d6201e89d6bp+0L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p-20L : 0xd.dce9d6201e89d6cp+0L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p-20L : 0xd.dce9d6201e89d6bp+0L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p-20L : 0xd.dce9d6201e89d6cp+0L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p-20L : 0xd.dce9d6201e89d6bp+0L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p-20L : 0xd.dce9d6201e89d6cp+0L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p-20L : 0xd.dce9d6201e89d6bd62b2e7a79c18p+0L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p-20L : 0xd.dce9d6201e89d6bd62b2e7a79c18p+0L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p-20L : 0xd.dce9d6201e89d6bd62b2e7a79c18p+0L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p-20L : 0xd.dce9d6201e89d6bd62b2e7a79c2p+0L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1p-20L : 0xd.dce9d6201e89d6bd62b2e7a79cp+0L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1p-20L : 0xd.dce9d6201e89d6bd62b2e7a79cp+0L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1p-20L : 0xd.dce9d6201e89d6bd62b2e7a79cp+0L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1p-20L : 0xd.dce9d6201e89d6bd62b2e7a7ap+0L 1 : inexact-ok
+lgamma -0x1p-20
+= lgamma downward flt-32 -0x1p-20f : 0xd.dce9ep+0f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x1p-20f : 0xd.dce9fp+0f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x1p-20f : 0xd.dce9ep+0f -1 : inexact-ok
+= lgamma upward flt-32 -0x1p-20f : 0xd.dce9fp+0f -1 : inexact-ok
+= lgamma downward dbl-64 -0x1p-20 : 0xd.dce9e898ab86p+0 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x1p-20 : 0xd.dce9e898ab868p+0 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x1p-20 : 0xd.dce9e898ab86p+0 -1 : inexact-ok
+= lgamma upward dbl-64 -0x1p-20 : 0xd.dce9e898ab868p+0 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x1p-20L : 0xd.dce9e898ab86468p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x1p-20L : 0xd.dce9e898ab86468p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x1p-20L : 0xd.dce9e898ab86468p+0L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x1p-20L : 0xd.dce9e898ab86469p+0L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x1p-20L : 0xd.dce9e898ab86468p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x1p-20L : 0xd.dce9e898ab86468p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x1p-20L : 0xd.dce9e898ab86468p+0L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x1p-20L : 0xd.dce9e898ab86469p+0L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x1p-20L : 0xd.dce9e898ab8646804e122fd4c418p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x1p-20L : 0xd.dce9e898ab8646804e122fd4c418p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x1p-20L : 0xd.dce9e898ab8646804e122fd4c418p+0L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x1p-20L : 0xd.dce9e898ab8646804e122fd4c42p+0L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x1p-20L : 0xd.dce9e898ab8646804e122fd4c4p+0L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x1p-20L : 0xd.dce9e898ab8646804e122fd4c4p+0L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x1p-20L : 0xd.dce9e898ab8646804e122fd4c4p+0L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x1p-20L : 0xd.dce9e898ab8646804e122fd4c8p+0L -1 : inexact-ok
+lgamma 0x1p-25
+= lgamma downward flt-32 0x8p-28f : 0x1.154244p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-28f : 0x1.154246p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-28f : 0x1.154244p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-28f : 0x1.154246p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-28 : 0x1.1542456e99b0fp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-28 : 0x1.1542456e99b0fp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-28 : 0x1.1542456e99b0fp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-28 : 0x1.1542456e99b1p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-28L : 0x1.1542456e99b0f24ap+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-28L : 0x1.1542456e99b0f24ap+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-28L : 0x1.1542456e99b0f24ap+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-28L : 0x1.1542456e99b0f24cp+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-28L : 0x1.1542456e99b0f24ap+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-28L : 0x1.1542456e99b0f24ap+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-28L : 0x1.1542456e99b0f24ap+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-28L : 0x1.1542456e99b0f24cp+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-28L : 0x1.1542456e99b0f24ab2b908b14803p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-28L : 0x1.1542456e99b0f24ab2b908b14804p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-28L : 0x1.1542456e99b0f24ab2b908b14803p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-28L : 0x1.1542456e99b0f24ab2b908b14804p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-28L : 0x1.1542456e99b0f24ab2b908b148p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-28L : 0x1.1542456e99b0f24ab2b908b148p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-28L : 0x1.1542456e99b0f24ab2b908b148p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-28L : 0x1.1542456e99b0f24ab2b908b1488p+4L 1 : inexact-ok
+lgamma -0x1p-25
+= lgamma downward flt-32 -0x8p-28f : 0x1.154244p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-28f : 0x1.154246p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-28f : 0x1.154244p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-28f : 0x1.154246p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-28 : 0x1.15424577d5f77p+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-28 : 0x1.15424577d5f77p+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-28 : 0x1.15424577d5f77p+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-28 : 0x1.15424577d5f78p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-28L : 0x1.15424577d5f77082p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-28L : 0x1.15424577d5f77082p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-28L : 0x1.15424577d5f77082p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-28L : 0x1.15424577d5f77084p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-28L : 0x1.15424577d5f77082p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-28L : 0x1.15424577d5f77082p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-28L : 0x1.15424577d5f77082p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-28L : 0x1.15424577d5f77084p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-28L : 0x1.15424577d5f770828dc71d4bb9a6p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-28L : 0x1.15424577d5f770828dc71d4bb9a7p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-28L : 0x1.15424577d5f770828dc71d4bb9a6p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-28L : 0x1.15424577d5f770828dc71d4bb9a7p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-28L : 0x1.15424577d5f770828dc71d4bb98p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-28L : 0x1.15424577d5f770828dc71d4bb98p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-28L : 0x1.15424577d5f770828dc71d4bb98p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-28L : 0x1.15424577d5f770828dc71d4bbap+4L -1 : inexact-ok
+lgamma 0x1p-30
+= lgamma downward flt-32 0x4p-32f : 0x1.4cb5ecp+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x4p-32f : 0x1.4cb5ecp+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x4p-32f : 0x1.4cb5ecp+4f 1 : inexact-ok
+= lgamma upward flt-32 0x4p-32f : 0x1.4cb5eep+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-32 : 0x1.4cb5ecf08473ep+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-32 : 0x1.4cb5ecf08473fp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-32 : 0x1.4cb5ecf08473ep+4 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-32 : 0x1.4cb5ecf08473fp+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-32L : 0x1.4cb5ecf08473ea2ap+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-32L : 0x1.4cb5ecf08473ea2ap+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-32L : 0x1.4cb5ecf08473ea2ap+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-32L : 0x1.4cb5ecf08473ea2cp+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-32L : 0x1.4cb5ecf08473ea2ap+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-32L : 0x1.4cb5ecf08473ea2ap+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-32L : 0x1.4cb5ecf08473ea2ap+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-32L : 0x1.4cb5ecf08473ea2cp+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-32L : 0x1.4cb5ecf08473ea2a0dabf1e4d0e9p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-32L : 0x1.4cb5ecf08473ea2a0dabf1e4d0e9p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-32L : 0x1.4cb5ecf08473ea2a0dabf1e4d0e9p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-32L : 0x1.4cb5ecf08473ea2a0dabf1e4d0eap+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-32L : 0x1.4cb5ecf08473ea2a0dabf1e4d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-32L : 0x1.4cb5ecf08473ea2a0dabf1e4d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-32L : 0x1.4cb5ecf08473ea2a0dabf1e4d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-32L : 0x1.4cb5ecf08473ea2a0dabf1e4d1p+4L 1 : inexact-ok
+lgamma -0x1p-30
+= lgamma downward flt-32 -0x4p-32f : 0x1.4cb5ecp+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x4p-32f : 0x1.4cb5ecp+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x4p-32f : 0x1.4cb5ecp+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x4p-32f : 0x1.4cb5eep+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-32 : 0x1.4cb5ecf0ce561p+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-32 : 0x1.4cb5ecf0ce562p+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-32 : 0x1.4cb5ecf0ce561p+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-32 : 0x1.4cb5ecf0ce562p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-32L : 0x1.4cb5ecf0ce561e1ap+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-32L : 0x1.4cb5ecf0ce561e1cp+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-32L : 0x1.4cb5ecf0ce561e1ap+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-32L : 0x1.4cb5ecf0ce561e1cp+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-32L : 0x1.4cb5ecf0ce561e1ap+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-32L : 0x1.4cb5ecf0ce561e1cp+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-32L : 0x1.4cb5ecf0ce561e1ap+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-32L : 0x1.4cb5ecf0ce561e1cp+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-32L : 0x1.4cb5ecf0ce561e1bcc8455ba6e63p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-32L : 0x1.4cb5ecf0ce561e1bcc8455ba6e63p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-32L : 0x1.4cb5ecf0ce561e1bcc8455ba6e63p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-32L : 0x1.4cb5ecf0ce561e1bcc8455ba6e64p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-32L : 0x1.4cb5ecf0ce561e1bcc8455ba6ep+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-32L : 0x1.4cb5ecf0ce561e1bcc8455ba6e8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-32L : 0x1.4cb5ecf0ce561e1bcc8455ba6ep+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-32L : 0x1.4cb5ecf0ce561e1bcc8455ba6e8p+4L -1 : inexact-ok
+lgamma 0x1p-40
+= lgamma downward flt-32 0x1p-40f : 0x1.bb9d3ap+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x1p-40f : 0x1.bb9d3cp+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x1p-40f : 0x1.bb9d3ap+4f 1 : inexact-ok
+= lgamma upward flt-32 0x1p-40f : 0x1.bb9d3cp+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x1p-40 : 0x1.bb9d3beb8c7d7p+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1p-40 : 0x1.bb9d3beb8c7d7p+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1p-40 : 0x1.bb9d3beb8c7d7p+4 1 : inexact-ok
+= lgamma upward dbl-64 0x1p-40 : 0x1.bb9d3beb8c7d8p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p-40L : 0x1.bb9d3beb8c7d73e6p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p-40L : 0x1.bb9d3beb8c7d73e6p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p-40L : 0x1.bb9d3beb8c7d73e6p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p-40L : 0x1.bb9d3beb8c7d73e8p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p-40L : 0x1.bb9d3beb8c7d73e6p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p-40L : 0x1.bb9d3beb8c7d73e6p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p-40L : 0x1.bb9d3beb8c7d73e6p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p-40L : 0x1.bb9d3beb8c7d73e8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p-40L : 0x1.bb9d3beb8c7d73e6fa81731862c3p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p-40L : 0x1.bb9d3beb8c7d73e6fa81731862c3p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p-40L : 0x1.bb9d3beb8c7d73e6fa81731862c3p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p-40L : 0x1.bb9d3beb8c7d73e6fa81731862c4p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1p-40L : 0x1.bb9d3beb8c7d73e6fa817318628p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1p-40L : 0x1.bb9d3beb8c7d73e6fa81731863p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1p-40L : 0x1.bb9d3beb8c7d73e6fa817318628p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1p-40L : 0x1.bb9d3beb8c7d73e6fa81731863p+4L 1 : inexact-ok
+lgamma -0x1p-40
+= lgamma downward flt-32 -0x1p-40f : 0x1.bb9d3ap+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x1p-40f : 0x1.bb9d3cp+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x1p-40f : 0x1.bb9d3ap+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x1p-40f : 0x1.bb9d3cp+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x1p-40 : 0x1.bb9d3beb8c8fep+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x1p-40 : 0x1.bb9d3beb8c8ffp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x1p-40 : 0x1.bb9d3beb8c8fep+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x1p-40 : 0x1.bb9d3beb8c8ffp+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x1p-40L : 0x1.bb9d3beb8c8fec72p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x1p-40L : 0x1.bb9d3beb8c8fec74p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x1p-40L : 0x1.bb9d3beb8c8fec72p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x1p-40L : 0x1.bb9d3beb8c8fec74p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x1p-40L : 0x1.bb9d3beb8c8fec72p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x1p-40L : 0x1.bb9d3beb8c8fec74p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x1p-40L : 0x1.bb9d3beb8c8fec72p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x1p-40L : 0x1.bb9d3beb8c8fec74p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x1p-40L : 0x1.bb9d3beb8c8fec73f6f12931575dp+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x1p-40L : 0x1.bb9d3beb8c8fec73f6f12931575ep+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x1p-40L : 0x1.bb9d3beb8c8fec73f6f12931575dp+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x1p-40L : 0x1.bb9d3beb8c8fec73f6f12931575ep+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x1p-40L : 0x1.bb9d3beb8c8fec73f6f1293157p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x1p-40L : 0x1.bb9d3beb8c8fec73f6f12931578p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x1p-40L : 0x1.bb9d3beb8c8fec73f6f1293157p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x1p-40L : 0x1.bb9d3beb8c8fec73f6f12931578p+4L -1 : inexact-ok
+lgamma 0x1p-50
+= lgamma downward flt-32 0x4p-52f : 0x2.2a8488p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x4p-52f : 0x2.2a848cp+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x4p-52f : 0x2.2a8488p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x4p-52f : 0x2.2a848cp+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-52 : 0x2.2a848ae66fa84p+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-52 : 0x2.2a848ae66fa86p+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-52 : 0x2.2a848ae66fa84p+4 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-52 : 0x2.2a848ae66fa86p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-52L : 0x2.2a848ae66fa859e8p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-52L : 0x2.2a848ae66fa859e8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-52L : 0x2.2a848ae66fa859e8p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-52L : 0x2.2a848ae66fa859ecp+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-52L : 0x2.2a848ae66fa859e8p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-52L : 0x2.2a848ae66fa859e8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-52L : 0x2.2a848ae66fa859e8p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-52L : 0x2.2a848ae66fa859ecp+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-52L : 0x2.2a848ae66fa859e9c54803444a0ap+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-52L : 0x2.2a848ae66fa859e9c54803444a0cp+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-52L : 0x2.2a848ae66fa859e9c54803444a0ap+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-52L : 0x2.2a848ae66fa859e9c54803444a0cp+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-52L : 0x2.2a848ae66fa859e9c54803444ap+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-52L : 0x2.2a848ae66fa859e9c54803444ap+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-52L : 0x2.2a848ae66fa859e9c54803444ap+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-52L : 0x2.2a848ae66fa859e9c54803444bp+4L 1 : inexact-ok
+lgamma -0x1p-50
+= lgamma downward flt-32 -0x4p-52f : 0x2.2a8488p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x4p-52f : 0x2.2a848cp+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x4p-52f : 0x2.2a8488p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x4p-52f : 0x2.2a848cp+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-52 : 0x2.2a848ae66fa84p+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-52 : 0x2.2a848ae66fa86p+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-52 : 0x2.2a848ae66fa84p+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-52 : 0x2.2a848ae66fa86p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-52L : 0x2.2a848ae66fa85e84p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-52L : 0x2.2a848ae66fa85e88p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-52L : 0x2.2a848ae66fa85e84p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-52L : 0x2.2a848ae66fa85e88p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-52L : 0x2.2a848ae66fa85e84p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-52L : 0x2.2a848ae66fa85e88p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-52L : 0x2.2a848ae66fa85e84p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-52L : 0x2.2a848ae66fa85e88p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-52L : 0x2.2a848ae66fa85e87e8871f31d048p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-52L : 0x2.2a848ae66fa85e87e8871f31d048p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-52L : 0x2.2a848ae66fa85e87e8871f31d048p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-52L : 0x2.2a848ae66fa85e87e8871f31d04ap+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-52L : 0x2.2a848ae66fa85e87e8871f31dp+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-52L : 0x2.2a848ae66fa85e87e8871f31dp+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-52L : 0x2.2a848ae66fa85e87e8871f31dp+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-52L : 0x2.2a848ae66fa85e87e8871f31d1p+4L -1 : inexact-ok
+lgamma 0x1p-60
+= lgamma downward flt-32 0x1p-60f : 0x2.996bd8p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x1p-60f : 0x2.996bd8p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x1p-60f : 0x2.996bd8p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x1p-60f : 0x2.996bdcp+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x1p-60 : 0x2.996bd9e152cap+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1p-60 : 0x2.996bd9e152cap+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1p-60 : 0x2.996bd9e152cap+4 1 : inexact-ok
+= lgamma upward dbl-64 0x1p-60 : 0x2.996bd9e152ca2p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p-60L : 0x2.996bd9e152ca084p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p-60L : 0x2.996bd9e152ca0844p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p-60L : 0x2.996bd9e152ca084p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p-60L : 0x2.996bd9e152ca0844p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p-60L : 0x2.996bd9e152ca084p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p-60L : 0x2.996bd9e152ca0844p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p-60L : 0x2.996bd9e152ca084p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p-60L : 0x2.996bd9e152ca0844p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p-60L : 0x2.996bd9e152ca0843a1517996911ep+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p-60L : 0x2.996bd9e152ca0843a1517996911ep+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p-60L : 0x2.996bd9e152ca0843a1517996911ep+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p-60L : 0x2.996bd9e152ca0843a1517996912p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1p-60L : 0x2.996bd9e152ca0843a151799691p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1p-60L : 0x2.996bd9e152ca0843a151799691p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1p-60L : 0x2.996bd9e152ca0843a151799691p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1p-60L : 0x2.996bd9e152ca0843a151799692p+4L 1 : inexact-ok
+lgamma -0x1p-60
+= lgamma downward flt-32 -0x1p-60f : 0x2.996bd8p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x1p-60f : 0x2.996bd8p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x1p-60f : 0x2.996bd8p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x1p-60f : 0x2.996bdcp+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x1p-60 : 0x2.996bd9e152cap+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x1p-60 : 0x2.996bd9e152cap+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x1p-60 : 0x2.996bd9e152cap+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x1p-60 : 0x2.996bd9e152ca2p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x1p-60L : 0x2.996bd9e152ca0844p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x1p-60L : 0x2.996bd9e152ca0844p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x1p-60L : 0x2.996bd9e152ca0844p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x1p-60L : 0x2.996bd9e152ca0848p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x1p-60L : 0x2.996bd9e152ca0844p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x1p-60L : 0x2.996bd9e152ca0844p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x1p-60L : 0x2.996bd9e152ca0844p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x1p-60L : 0x2.996bd9e152ca0848p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x1p-60L : 0x2.996bd9e152ca0844c8da495d8c7ep+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x1p-60L : 0x2.996bd9e152ca0844c8da495d8c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x1p-60L : 0x2.996bd9e152ca0844c8da495d8c7ep+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x1p-60L : 0x2.996bd9e152ca0844c8da495d8c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x1p-60L : 0x2.996bd9e152ca0844c8da495d8cp+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x1p-60L : 0x2.996bd9e152ca0844c8da495d8cp+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x1p-60L : 0x2.996bd9e152ca0844c8da495d8cp+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x1p-60L : 0x2.996bd9e152ca0844c8da495d8dp+4L -1 : inexact-ok
+lgamma 0x1p-64
+= lgamma downward flt-32 0x1p-64f : 0x2.c5c85cp+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x1p-64f : 0x2.c5c86p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x1p-64f : 0x2.c5c85cp+4f 1 : inexact-ok
+= lgamma upward flt-32 0x1p-64f : 0x2.c5c86p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x1p-64 : 0x2.c5c85fdf473dep+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1p-64 : 0x2.c5c85fdf473dep+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1p-64 : 0x2.c5c85fdf473dep+4 1 : inexact-ok
+= lgamma upward dbl-64 0x1p-64 : 0x2.c5c85fdf473ep+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p-64L : 0x2.c5c85fdf473de6acp+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p-64L : 0x2.c5c85fdf473de6bp+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p-64L : 0x2.c5c85fdf473de6acp+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p-64L : 0x2.c5c85fdf473de6bp+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p-64L : 0x2.c5c85fdf473de6acp+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p-64L : 0x2.c5c85fdf473de6bp+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p-64L : 0x2.c5c85fdf473de6acp+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p-64L : 0x2.c5c85fdf473de6bp+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p-64L : 0x2.c5c85fdf473de6af1e5287e1d7fp+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p-64L : 0x2.c5c85fdf473de6af1e5287e1d7fp+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p-64L : 0x2.c5c85fdf473de6af1e5287e1d7fp+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p-64L : 0x2.c5c85fdf473de6af1e5287e1d7f2p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1p-64L : 0x2.c5c85fdf473de6af1e5287e1d7p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1p-64L : 0x2.c5c85fdf473de6af1e5287e1d8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1p-64L : 0x2.c5c85fdf473de6af1e5287e1d7p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1p-64L : 0x2.c5c85fdf473de6af1e5287e1d8p+4L 1 : inexact-ok
+lgamma -0x1p-64
+= lgamma downward flt-32 -0x1p-64f : 0x2.c5c85cp+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x1p-64f : 0x2.c5c86p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x1p-64f : 0x2.c5c85cp+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x1p-64f : 0x2.c5c86p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x1p-64 : 0x2.c5c85fdf473dep+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x1p-64 : 0x2.c5c85fdf473dep+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x1p-64 : 0x2.c5c85fdf473dep+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x1p-64 : 0x2.c5c85fdf473ep+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x1p-64L : 0x2.c5c85fdf473de6acp+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x1p-64L : 0x2.c5c85fdf473de6bp+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x1p-64L : 0x2.c5c85fdf473de6acp+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x1p-64L : 0x2.c5c85fdf473de6bp+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x1p-64L : 0x2.c5c85fdf473de6acp+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x1p-64L : 0x2.c5c85fdf473de6bp+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x1p-64L : 0x2.c5c85fdf473de6acp+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x1p-64L : 0x2.c5c85fdf473de6bp+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x1p-64L : 0x2.c5c85fdf473de6af30cb14de47a6p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x1p-64L : 0x2.c5c85fdf473de6af30cb14de47a6p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x1p-64L : 0x2.c5c85fdf473de6af30cb14de47a6p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x1p-64L : 0x2.c5c85fdf473de6af30cb14de47a8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x1p-64L : 0x2.c5c85fdf473de6af30cb14de47p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x1p-64L : 0x2.c5c85fdf473de6af30cb14de48p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x1p-64L : 0x2.c5c85fdf473de6af30cb14de47p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x1p-64L : 0x2.c5c85fdf473de6af30cb14de48p+4L -1 : inexact-ok
+lgamma 0x1p-70
+= lgamma downward flt-32 0x4p-72f : 0x3.085328p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x4p-72f : 0x3.085328p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x4p-72f : 0x3.085328p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x4p-72f : 0x3.08532cp+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-72 : 0x3.085328dc35ebap+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-72 : 0x3.085328dc35ebcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-72 : 0x3.085328dc35ebap+4 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-72 : 0x3.085328dc35ebcp+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-72L : 0x3.085328dc35ebb44cp+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-72L : 0x3.085328dc35ebb45p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-72L : 0x3.085328dc35ebb44cp+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-72L : 0x3.085328dc35ebb45p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-72L : 0x3.085328dc35ebb44cp+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-72L : 0x3.085328dc35ebb45p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-72L : 0x3.085328dc35ebb44cp+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-72L : 0x3.085328dc35ebb45p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-72L : 0x3.085328dc35ebb44f931f409f1866p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-72L : 0x3.085328dc35ebb44f931f409f1868p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-72L : 0x3.085328dc35ebb44f931f409f1866p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-72L : 0x3.085328dc35ebb44f931f409f1868p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-72L : 0x3.085328dc35ebb44f931f409f18p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-72L : 0x3.085328dc35ebb44f931f409f18p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-72L : 0x3.085328dc35ebb44f931f409f18p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-72L : 0x3.085328dc35ebb44f931f409f19p+4L 1 : inexact-ok
+lgamma -0x1p-70
+= lgamma downward flt-32 -0x4p-72f : 0x3.085328p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x4p-72f : 0x3.085328p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x4p-72f : 0x3.085328p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x4p-72f : 0x3.08532cp+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-72 : 0x3.085328dc35ebap+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-72 : 0x3.085328dc35ebcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-72 : 0x3.085328dc35ebap+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-72 : 0x3.085328dc35ebcp+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-72L : 0x3.085328dc35ebb44cp+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-72L : 0x3.085328dc35ebb45p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-72L : 0x3.085328dc35ebb44cp+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-72L : 0x3.085328dc35ebb45p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-72L : 0x3.085328dc35ebb44cp+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-72L : 0x3.085328dc35ebb45p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-72L : 0x3.085328dc35ebb44cp+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-72L : 0x3.085328dc35ebb45p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-72L : 0x3.085328dc35ebb44f936922d30a26p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-72L : 0x3.085328dc35ebb44f936922d30a26p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-72L : 0x3.085328dc35ebb44f936922d30a26p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-72L : 0x3.085328dc35ebb44f936922d30a28p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-72L : 0x3.085328dc35ebb44f936922d30ap+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-72L : 0x3.085328dc35ebb44f936922d30ap+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-72L : 0x3.085328dc35ebb44f936922d30ap+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-72L : 0x3.085328dc35ebb44f936922d30bp+4L -1 : inexact-ok
+lgamma 0x1p-100
+= lgamma downward flt-32 0x1p-100f : 0x4.55091p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x1p-100f : 0x4.550918p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x1p-100f : 0x4.55091p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x1p-100f : 0x4.550918p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x1p-100 : 0x4.550915ccdf508p+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1p-100 : 0x4.550915ccdf50cp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1p-100 : 0x4.550915ccdf508p+4 1 : inexact-ok
+= lgamma upward dbl-64 0x1p-100 : 0x4.550915ccdf50cp+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p-100L : 0x4.550915ccdf50b87p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p-100L : 0x4.550915ccdf50b87p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p-100L : 0x4.550915ccdf50b87p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p-100L : 0x4.550915ccdf50b878p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p-100L : 0x4.550915ccdf50b87p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p-100L : 0x4.550915ccdf50b87p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p-100L : 0x4.550915ccdf50b87p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p-100L : 0x4.550915ccdf50b878p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p-100L : 0x4.550915ccdf50b871adcf22761818p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p-100L : 0x4.550915ccdf50b871adcf2276181cp+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p-100L : 0x4.550915ccdf50b871adcf22761818p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p-100L : 0x4.550915ccdf50b871adcf2276181cp+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1p-100L : 0x4.550915ccdf50b871adcf227618p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1p-100L : 0x4.550915ccdf50b871adcf227618p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1p-100L : 0x4.550915ccdf50b871adcf227618p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1p-100L : 0x4.550915ccdf50b871adcf22761ap+4L 1 : inexact-ok
+lgamma -0x1p-100
+= lgamma downward flt-32 -0x1p-100f : 0x4.55091p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x1p-100f : 0x4.550918p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x1p-100f : 0x4.55091p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x1p-100f : 0x4.550918p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x1p-100 : 0x4.550915ccdf508p+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x1p-100 : 0x4.550915ccdf50cp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x1p-100 : 0x4.550915ccdf508p+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x1p-100 : 0x4.550915ccdf50cp+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x1p-100L : 0x4.550915ccdf50b87p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x1p-100L : 0x4.550915ccdf50b87p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x1p-100L : 0x4.550915ccdf50b87p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x1p-100L : 0x4.550915ccdf50b878p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x1p-100L : 0x4.550915ccdf50b87p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x1p-100L : 0x4.550915ccdf50b87p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x1p-100L : 0x4.550915ccdf50b87p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x1p-100L : 0x4.550915ccdf50b878p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x1p-100L : 0x4.550915ccdf50b871adcf2276194p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x1p-100L : 0x4.550915ccdf50b871adcf22761944p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x1p-100L : 0x4.550915ccdf50b871adcf2276194p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x1p-100L : 0x4.550915ccdf50b871adcf22761944p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x1p-100L : 0x4.550915ccdf50b871adcf227618p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x1p-100L : 0x4.550915ccdf50b871adcf22761ap+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x1p-100L : 0x4.550915ccdf50b871adcf227618p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x1p-100L : 0x4.550915ccdf50b871adcf22761ap+4L -1 : inexact-ok
+lgamma 0x1p-126
+= lgamma downward flt-32 0x4p-128f : 0x5.756278p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x4p-128f : 0x5.75628p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x4p-128f : 0x5.756278p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x4p-128f : 0x5.75628p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-128 : 0x5.75627cbf9441cp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-128 : 0x5.75627cbf9441cp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-128 : 0x5.75627cbf9441cp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-128 : 0x5.75627cbf9442p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-128L : 0x5.75627cbf9441de28p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-128L : 0x5.75627cbf9441de28p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-128L : 0x5.75627cbf9441de28p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-128L : 0x5.75627cbf9441de3p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-128L : 0x5.75627cbf9441de28p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-128L : 0x5.75627cbf9441de28p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-128L : 0x5.75627cbf9441de28p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-128L : 0x5.75627cbf9441de3p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-128L : 0x5.75627cbf9441de28d5e1264d1f18p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-128L : 0x5.75627cbf9441de28d5e1264d1f18p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-128L : 0x5.75627cbf9441de28d5e1264d1f18p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-128L : 0x5.75627cbf9441de28d5e1264d1f1cp+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-128L : 0x5.75627cbf9441de28d5e1264d1ep+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-128L : 0x5.75627cbf9441de28d5e1264d2p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-128L : 0x5.75627cbf9441de28d5e1264d1ep+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-128L : 0x5.75627cbf9441de28d5e1264d2p+4L 1 : inexact-ok
+lgamma -0x1p-126
+= lgamma downward flt-32 -0x4p-128f : 0x5.756278p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x4p-128f : 0x5.75628p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x4p-128f : 0x5.756278p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x4p-128f : 0x5.75628p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-128 : 0x5.75627cbf9441cp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-128 : 0x5.75627cbf9441cp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-128 : 0x5.75627cbf9441cp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-128 : 0x5.75627cbf9442p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-128L : 0x5.75627cbf9441de28p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-128L : 0x5.75627cbf9441de28p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-128L : 0x5.75627cbf9441de28p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-128L : 0x5.75627cbf9441de3p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-128L : 0x5.75627cbf9441de28p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-128L : 0x5.75627cbf9441de28p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-128L : 0x5.75627cbf9441de28p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-128L : 0x5.75627cbf9441de3p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-128L : 0x5.75627cbf9441de28d5e1264d1f18p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-128L : 0x5.75627cbf9441de28d5e1264d1f18p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-128L : 0x5.75627cbf9441de28d5e1264d1f18p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-128L : 0x5.75627cbf9441de28d5e1264d1f1cp+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-128L : 0x5.75627cbf9441de28d5e1264d1ep+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-128L : 0x5.75627cbf9441de28d5e1264d2p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-128L : 0x5.75627cbf9441de28d5e1264d1ep+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-128L : 0x5.75627cbf9441de28d5e1264d2p+4L -1 : inexact-ok
+lgamma 0x1p-149
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+lgamma -0x1p-149
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+lgamma 0x1p-200
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+= lgamma downward dbl-64 0x1p-200 : 0x8.aa122b99bea1p+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1p-200 : 0x8.aa122b99bea18p+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1p-200 : 0x8.aa122b99bea1p+4 1 : inexact-ok
+= lgamma upward dbl-64 0x1p-200 : 0x8.aa122b99bea18p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p-200L : 0x8.aa122b99bea170ep+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p-200L : 0x8.aa122b99bea170ep+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p-200L : 0x8.aa122b99bea170ep+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p-200L : 0x8.aa122b99bea170fp+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p-200L : 0x8.aa122b99bea170ep+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p-200L : 0x8.aa122b99bea170ep+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p-200L : 0x8.aa122b99bea170ep+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p-200L : 0x8.aa122b99bea170fp+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p-200L : 0x8.aa122b99bea170e35b9e44ec3158p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p-200L : 0x8.aa122b99bea170e35b9e44ec316p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p-200L : 0x8.aa122b99bea170e35b9e44ec3158p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p-200L : 0x8.aa122b99bea170e35b9e44ec316p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1p-200L : 0x8.aa122b99bea170e35b9e44ec3p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1p-200L : 0x8.aa122b99bea170e35b9e44ec3p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1p-200L : 0x8.aa122b99bea170e35b9e44ec3p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1p-200L : 0x8.aa122b99bea170e35b9e44ec34p+4L 1 : inexact-ok
+lgamma -0x1p-200
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+= lgamma downward dbl-64 -0x1p-200 : 0x8.aa122b99bea1p+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x1p-200 : 0x8.aa122b99bea18p+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x1p-200 : 0x8.aa122b99bea1p+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x1p-200 : 0x8.aa122b99bea18p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x1p-200L : 0x8.aa122b99bea170ep+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x1p-200L : 0x8.aa122b99bea170ep+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x1p-200L : 0x8.aa122b99bea170ep+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x1p-200L : 0x8.aa122b99bea170fp+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x1p-200L : 0x8.aa122b99bea170ep+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x1p-200L : 0x8.aa122b99bea170ep+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x1p-200L : 0x8.aa122b99bea170ep+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x1p-200L : 0x8.aa122b99bea170fp+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x1p-200L : 0x8.aa122b99bea170e35b9e44ec3158p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x1p-200L : 0x8.aa122b99bea170e35b9e44ec316p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x1p-200L : 0x8.aa122b99bea170e35b9e44ec3158p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x1p-200L : 0x8.aa122b99bea170e35b9e44ec316p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x1p-200L : 0x8.aa122b99bea170e35b9e44ec3p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x1p-200L : 0x8.aa122b99bea170e35b9e44ec3p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x1p-200L : 0x8.aa122b99bea170e35b9e44ec3p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x1p-200L : 0x8.aa122b99bea170e35b9e44ec34p+4L -1 : inexact-ok
+lgamma 0x1p-500
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+= lgamma downward dbl-64 0x1p-500 : 0x1.5a92d6d005c93p+8 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1p-500 : 0x1.5a92d6d005c94p+8 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1p-500 : 0x1.5a92d6d005c93p+8 1 : inexact-ok
+= lgamma upward dbl-64 0x1p-500 : 0x1.5a92d6d005c94p+8 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p-500L : 0x1.5a92d6d005c939a2p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p-500L : 0x1.5a92d6d005c939a4p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p-500L : 0x1.5a92d6d005c939a2p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p-500L : 0x1.5a92d6d005c939a4p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p-500L : 0x1.5a92d6d005c939a2p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p-500L : 0x1.5a92d6d005c939a4p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p-500L : 0x1.5a92d6d005c939a2p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p-500L : 0x1.5a92d6d005c939a4p+8L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p-500L : 0x1.5a92d6d005c939a38650bac4e7b6p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p-500L : 0x1.5a92d6d005c939a38650bac4e7b7p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p-500L : 0x1.5a92d6d005c939a38650bac4e7b6p+8L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p-500L : 0x1.5a92d6d005c939a38650bac4e7b7p+8L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1p-500L : 0x1.5a92d6d005c939a38650bac4e78p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1p-500L : 0x1.5a92d6d005c939a38650bac4e78p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1p-500L : 0x1.5a92d6d005c939a38650bac4e78p+8L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1p-500L : 0x1.5a92d6d005c939a38650bac4e8p+8L 1 : inexact-ok
+lgamma -0x1p-500
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+= lgamma downward dbl-64 -0x1p-500 : 0x1.5a92d6d005c93p+8 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x1p-500 : 0x1.5a92d6d005c94p+8 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x1p-500 : 0x1.5a92d6d005c93p+8 -1 : inexact-ok
+= lgamma upward dbl-64 -0x1p-500 : 0x1.5a92d6d005c94p+8 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x1p-500L : 0x1.5a92d6d005c939a2p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x1p-500L : 0x1.5a92d6d005c939a4p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x1p-500L : 0x1.5a92d6d005c939a2p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x1p-500L : 0x1.5a92d6d005c939a4p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x1p-500L : 0x1.5a92d6d005c939a2p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x1p-500L : 0x1.5a92d6d005c939a4p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x1p-500L : 0x1.5a92d6d005c939a2p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x1p-500L : 0x1.5a92d6d005c939a4p+8L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x1p-500L : 0x1.5a92d6d005c939a38650bac4e7b6p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x1p-500L : 0x1.5a92d6d005c939a38650bac4e7b7p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x1p-500L : 0x1.5a92d6d005c939a38650bac4e7b6p+8L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x1p-500L : 0x1.5a92d6d005c939a38650bac4e7b7p+8L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x1p-500L : 0x1.5a92d6d005c939a38650bac4e78p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x1p-500L : 0x1.5a92d6d005c939a38650bac4e78p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x1p-500L : 0x1.5a92d6d005c939a38650bac4e78p+8L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x1p-500L : 0x1.5a92d6d005c939a38650bac4e8p+8L -1 : inexact-ok
+lgamma 0x1p-1000
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+= lgamma downward dbl-64 0x1p-1000 : 0x2.b525ada00b926p+8 1 : inexact-ok
+= lgamma tonearest dbl-64 0x1p-1000 : 0x2.b525ada00b928p+8 1 : inexact-ok
+= lgamma towardzero dbl-64 0x1p-1000 : 0x2.b525ada00b926p+8 1 : inexact-ok
+= lgamma upward dbl-64 0x1p-1000 : 0x2.b525ada00b928p+8 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p-1000L : 0x2.b525ada00b927344p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p-1000L : 0x2.b525ada00b927348p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p-1000L : 0x2.b525ada00b927344p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p-1000L : 0x2.b525ada00b927348p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p-1000L : 0x2.b525ada00b927344p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p-1000L : 0x2.b525ada00b927348p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p-1000L : 0x2.b525ada00b927344p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p-1000L : 0x2.b525ada00b927348p+8L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p-1000L : 0x2.b525ada00b9273470ca17589cf6cp+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p-1000L : 0x2.b525ada00b9273470ca17589cf6ep+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p-1000L : 0x2.b525ada00b9273470ca17589cf6cp+8L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p-1000L : 0x2.b525ada00b9273470ca17589cf6ep+8L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x1p-1000L : 0x2.b525ada00b9273470ca17589cfp+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x1p-1000L : 0x2.b525ada00b9273470ca17589cfp+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x1p-1000L : 0x2.b525ada00b9273470ca17589cfp+8L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x1p-1000L : 0x2.b525ada00b9273470ca17589dp+8L 1 : inexact-ok
+lgamma -0x1p-1000
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+= lgamma downward dbl-64 -0x1p-1000 : 0x2.b525ada00b926p+8 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x1p-1000 : 0x2.b525ada00b928p+8 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x1p-1000 : 0x2.b525ada00b926p+8 -1 : inexact-ok
+= lgamma upward dbl-64 -0x1p-1000 : 0x2.b525ada00b928p+8 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x1p-1000L : 0x2.b525ada00b927344p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x1p-1000L : 0x2.b525ada00b927348p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x1p-1000L : 0x2.b525ada00b927344p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x1p-1000L : 0x2.b525ada00b927348p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x1p-1000L : 0x2.b525ada00b927344p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x1p-1000L : 0x2.b525ada00b927348p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x1p-1000L : 0x2.b525ada00b927344p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x1p-1000L : 0x2.b525ada00b927348p+8L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x1p-1000L : 0x2.b525ada00b9273470ca17589cf6cp+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x1p-1000L : 0x2.b525ada00b9273470ca17589cf6ep+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x1p-1000L : 0x2.b525ada00b9273470ca17589cf6cp+8L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x1p-1000L : 0x2.b525ada00b9273470ca17589cf6ep+8L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x1p-1000L : 0x2.b525ada00b9273470ca17589cfp+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x1p-1000L : 0x2.b525ada00b9273470ca17589cfp+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x1p-1000L : 0x2.b525ada00b9273470ca17589cfp+8L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x1p-1000L : 0x2.b525ada00b9273470ca17589dp+8L -1 : inexact-ok
+lgamma 0x1p-1022
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-1024 : 0x2.c4657baf579a4p+8 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-1024 : 0x2.c4657baf579a4p+8 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-1024 : 0x2.c4657baf579a4p+8 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-1024 : 0x2.c4657baf579a6p+8 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-1024L : 0x2.c4657baf579a47b8p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-1024L : 0x2.c4657baf579a47bcp+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-1024L : 0x2.c4657baf579a47b8p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-1024L : 0x2.c4657baf579a47bcp+8L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-1024L : 0x2.c4657baf579a47b8p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-1024L : 0x2.c4657baf579a47bcp+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-1024L : 0x2.c4657baf579a47b8p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-1024L : 0x2.c4657baf579a47bcp+8L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfc2p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfc4p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfc2p+8L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfc4p+8L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfp+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8ep+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfp+8L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8ep+8L 1 : inexact-ok
+lgamma -0x1p-1022
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-1024 : 0x2.c4657baf579a4p+8 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-1024 : 0x2.c4657baf579a4p+8 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-1024 : 0x2.c4657baf579a4p+8 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-1024 : 0x2.c4657baf579a6p+8 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-1024L : 0x2.c4657baf579a47b8p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-1024L : 0x2.c4657baf579a47bcp+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-1024L : 0x2.c4657baf579a47b8p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-1024L : 0x2.c4657baf579a47bcp+8L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-1024L : 0x2.c4657baf579a47b8p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-1024L : 0x2.c4657baf579a47bcp+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-1024L : 0x2.c4657baf579a47b8p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-1024L : 0x2.c4657baf579a47bcp+8L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfc2p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfc4p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfc2p+8L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfc4p+8L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfp+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8ep+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8dfp+8L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-1024L : 0x2.c4657baf579a47bbcffb06f8ep+8L -1 : inexact-ok
+lgamma 0x1p-1074
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-1076 : 0x2.e870a88dae388p+8 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+lgamma -0x1p-1074
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-1076 : 0x2.e870a88dae388p+8 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+lgamma 0x1p-5000
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-1076 : 0x2.e870a88dae388p+8 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p-5000L : 0xd.89bc642039dc406p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p-5000L : 0xd.89bc642039dc406p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p-5000L : 0xd.89bc642039dc406p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p-5000L : 0xd.89bc642039dc407p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p-5000L : 0xd.89bc642039dc406p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p-5000L : 0xd.89bc642039dc406p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p-5000L : 0xd.89bc642039dc406p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p-5000L : 0xd.89bc642039dc407p+8L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p-5000L : 0xd.89bc642039dc40633f274bb10d2p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p-5000L : 0xd.89bc642039dc40633f274bb10d2p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p-5000L : 0xd.89bc642039dc40633f274bb10d2p+8L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p-5000L : 0xd.89bc642039dc40633f274bb10d28p+8L 1 : inexact-ok
+lgamma -0x1p-5000
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-1076 : 0x2.e870a88dae388p+8 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x1p-5000L : 0xd.89bc642039dc406p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x1p-5000L : 0xd.89bc642039dc406p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x1p-5000L : 0xd.89bc642039dc406p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x1p-5000L : 0xd.89bc642039dc407p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x1p-5000L : 0xd.89bc642039dc406p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x1p-5000L : 0xd.89bc642039dc406p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x1p-5000L : 0xd.89bc642039dc406p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x1p-5000L : 0xd.89bc642039dc407p+8L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x1p-5000L : 0xd.89bc642039dc40633f274bb10d2p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x1p-5000L : 0xd.89bc642039dc40633f274bb10d2p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x1p-5000L : 0xd.89bc642039dc40633f274bb10d2p+8L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x1p-5000L : 0xd.89bc642039dc40633f274bb10d28p+8L -1 : inexact-ok
+lgamma 0x1p-10000
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-1076 : 0x2.e870a88dae388p+8 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x1p-10000L : 0x1.b1378c84073b880cp+12L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x1p-10000L : 0x1.b1378c84073b880cp+12L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x1p-10000L : 0x1.b1378c84073b880cp+12L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x1p-10000L : 0x1.b1378c84073b880ep+12L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x1p-10000L : 0x1.b1378c84073b880cp+12L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x1p-10000L : 0x1.b1378c84073b880cp+12L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x1p-10000L : 0x1.b1378c84073b880cp+12L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x1p-10000L : 0x1.b1378c84073b880ep+12L 1 : inexact-ok
+= lgamma downward ldbl-128 0x1p-10000L : 0x1.b1378c84073b880c67e4e97621a4p+12L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x1p-10000L : 0x1.b1378c84073b880c67e4e97621a4p+12L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x1p-10000L : 0x1.b1378c84073b880c67e4e97621a4p+12L 1 : inexact-ok
+= lgamma upward ldbl-128 0x1p-10000L : 0x1.b1378c84073b880c67e4e97621a5p+12L 1 : inexact-ok
+lgamma -0x1p-10000
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-1076 : 0x2.e870a88dae388p+8 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x1p-10000L : 0x1.b1378c84073b880cp+12L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x1p-10000L : 0x1.b1378c84073b880cp+12L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x1p-10000L : 0x1.b1378c84073b880cp+12L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x1p-10000L : 0x1.b1378c84073b880ep+12L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x1p-10000L : 0x1.b1378c84073b880cp+12L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x1p-10000L : 0x1.b1378c84073b880cp+12L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x1p-10000L : 0x1.b1378c84073b880cp+12L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x1p-10000L : 0x1.b1378c84073b880ep+12L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x1p-10000L : 0x1.b1378c84073b880c67e4e97621a4p+12L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x1p-10000L : 0x1.b1378c84073b880c67e4e97621a4p+12L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x1p-10000L : 0x1.b1378c84073b880c67e4e97621a4p+12L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x1p-10000L : 0x1.b1378c84073b880c67e4e97621a5p+12L -1 : inexact-ok
+lgamma 0x1p-16382
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-1076 : 0x2.e870a88dae388p+8 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-16384L : 0x2.c5b2319c4843acbcp+12L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-16384L : 0x2.c5b2319c4843accp+12L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-16384L : 0x2.c5b2319c4843acbcp+12L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-16384L : 0x2.c5b2319c4843accp+12L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-16384L : 0x2.c5b2319c4843acbcp+12L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-16384L : 0x2.c5b2319c4843accp+12L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-16384L : 0x2.c5b2319c4843acbcp+12L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-16384L : 0x2.c5b2319c4843accp+12L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-16384L : 0x2.c5b2319c4843acbff21591e99ccap+12L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-16384L : 0x2.c5b2319c4843acbff21591e99cccp+12L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-16384L : 0x2.c5b2319c4843acbff21591e99ccap+12L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-16384L : 0x2.c5b2319c4843acbff21591e99cccp+12L 1 : inexact-ok
+lgamma -0x1p-16382
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-1076 : 0x2.e870a88dae388p+8 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-16384L : 0x2.c5b2319c4843acbcp+12L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-16384L : 0x2.c5b2319c4843accp+12L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-16384L : 0x2.c5b2319c4843acbcp+12L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-16384L : 0x2.c5b2319c4843accp+12L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-16384L : 0x2.c5b2319c4843acbcp+12L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-16384L : 0x2.c5b2319c4843accp+12L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-16384L : 0x2.c5b2319c4843acbcp+12L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-16384L : 0x2.c5b2319c4843accp+12L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-16384L : 0x2.c5b2319c4843acbff21591e99ccap+12L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-16384L : 0x2.c5b2319c4843acbff21591e99cccp+12L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-16384L : 0x2.c5b2319c4843acbff21591e99ccap+12L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-16384L : 0x2.c5b2319c4843acbff21591e99cccp+12L -1 : inexact-ok
+lgamma 0x1p-16445
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-1076 : 0x2.e870a88dae388p+8 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35cp+12L 1 : inexact-ok
+lgamma -0x1p-16445
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-1076 : 0x2.e870a88dae388p+8 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35cp+12L -1 : inexact-ok
+lgamma 0x1p-16494
+= lgamma downward flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma tonearest flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma towardzero flt-32 0x8p-152f : 0x6.747678p+4f 1 : inexact-ok
+= lgamma upward flt-32 0x8p-152f : 0x6.74768p+4f 1 : inexact-ok
+= lgamma downward dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma tonearest dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma towardzero dbl-64 0x8p-152 : 0x6.74767f33d1dcp+4 1 : inexact-ok
+= lgamma upward dbl-64 0x8p-152 : 0x6.74767f33d1dc4p+4 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d08p+4L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-152L : 0x6.74767f33d1dc1d1p+4L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L 1 : inexact-ok
+= lgamma downward dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma tonearest dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma towardzero dbl-64 0x4p-1076 : 0x2.e870a88dae386p+8 1 : inexact-ok
+= lgamma upward dbl-64 0x4p-1076 : 0x2.e870a88dae388p+8 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c7p+8L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-1076L : 0x2.e870a88dae386c74p+8L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L 1 : inexact-ok
+= lgamma downward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma tonearest ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma towardzero ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L 1 : inexact-ok
+= lgamma upward ldbl-128ibm 0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L 1 : inexact-ok
+= lgamma downward ldbl-96-intel 0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L 1 : inexact-ok
+= lgamma tonearest ldbl-96-intel 0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L 1 : inexact-ok
+= lgamma towardzero ldbl-96-intel 0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L 1 : inexact-ok
+= lgamma upward ldbl-96-intel 0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L 1 : inexact-ok
+= lgamma downward ldbl-128 0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L 1 : inexact-ok
+= lgamma upward ldbl-128 0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35cp+12L 1 : inexact-ok
+= lgamma downward ldbl-96-m68k 0x4p-16448L : 0x2.c877f9fc278aeaa4p+12L 1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k 0x4p-16448L : 0x2.c877f9fc278aeaa8p+12L 1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k 0x4p-16448L : 0x2.c877f9fc278aeaa4p+12L 1 : inexact-ok
+= lgamma upward ldbl-96-m68k 0x4p-16448L : 0x2.c877f9fc278aeaa8p+12L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-16448L : 0x2.c877f9fc278aeaa6a13d20b7fcdap+12L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-16448L : 0x2.c877f9fc278aeaa6a13d20b7fcdcp+12L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-16448L : 0x2.c877f9fc278aeaa6a13d20b7fcdap+12L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-16448L : 0x2.c877f9fc278aeaa6a13d20b7fcdcp+12L 1 : inexact-ok
+= lgamma downward ldbl-128 0x4p-16496L : 0x2.ca8c50440f005913a49acbd2c4e6p+12L 1 : inexact-ok
+= lgamma tonearest ldbl-128 0x4p-16496L : 0x2.ca8c50440f005913a49acbd2c4e8p+12L 1 : inexact-ok
+= lgamma towardzero ldbl-128 0x4p-16496L : 0x2.ca8c50440f005913a49acbd2c4e6p+12L 1 : inexact-ok
+= lgamma upward ldbl-128 0x4p-16496L : 0x2.ca8c50440f005913a49acbd2c4e8p+12L 1 : inexact-ok
+lgamma -0x1p-16494
+= lgamma downward flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma tonearest flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma towardzero flt-32 -0x8p-152f : 0x6.747678p+4f -1 : inexact-ok
+= lgamma upward flt-32 -0x8p-152f : 0x6.74768p+4f -1 : inexact-ok
+= lgamma downward dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x8p-152 : 0x6.74767f33d1dcp+4 -1 : inexact-ok
+= lgamma upward dbl-64 -0x8p-152 : 0x6.74767f33d1dc4p+4 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d08p+4L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-152L : 0x6.74767f33d1dc1d1p+4L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4c8p+4L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a4p+4L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x8p-152L : 0x6.74767f33d1dc1d0fc8187877a6p+4L -1 : inexact-ok
+= lgamma downward dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma tonearest dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma towardzero dbl-64 -0x4p-1076 : 0x2.e870a88dae386p+8 -1 : inexact-ok
+= lgamma upward dbl-64 -0x4p-1076 : 0x2.e870a88dae388p+8 -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c7p+8L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-1076L : 0x2.e870a88dae386c74p+8L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c09p+8L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c092p+8L -1 : inexact-ok
+= lgamma downward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma tonearest ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma towardzero ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773cp+8L -1 : inexact-ok
+= lgamma upward ldbl-128ibm -0x4p-1076L : 0x2.e870a88dae386c72b4fd4773c1p+8L -1 : inexact-ok
+= lgamma downward ldbl-96-intel -0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L -1 : inexact-ok
+= lgamma tonearest ldbl-96-intel -0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L -1 : inexact-ok
+= lgamma towardzero ldbl-96-intel -0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L -1 : inexact-ok
+= lgamma upward ldbl-96-intel -0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x8p-16448L : 0x2.c86ce2daa80dcdacp+12L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x8p-16448L : 0x2.c86ce2daa80dcdbp+12L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35ap+12L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x8p-16448L : 0x2.c86ce2daa80dcdaf0680827cc35cp+12L -1 : inexact-ok
+= lgamma downward ldbl-96-m68k -0x4p-16448L : 0x2.c877f9fc278aeaa4p+12L -1 : inexact-ok
+= lgamma tonearest ldbl-96-m68k -0x4p-16448L : 0x2.c877f9fc278aeaa8p+12L -1 : inexact-ok
+= lgamma towardzero ldbl-96-m68k -0x4p-16448L : 0x2.c877f9fc278aeaa4p+12L -1 : inexact-ok
+= lgamma upward ldbl-96-m68k -0x4p-16448L : 0x2.c877f9fc278aeaa8p+12L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-16448L : 0x2.c877f9fc278aeaa6a13d20b7fcdap+12L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-16448L : 0x2.c877f9fc278aeaa6a13d20b7fcdcp+12L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-16448L : 0x2.c877f9fc278aeaa6a13d20b7fcdap+12L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-16448L : 0x2.c877f9fc278aeaa6a13d20b7fcdcp+12L -1 : inexact-ok
+= lgamma downward ldbl-128 -0x4p-16496L : 0x2.ca8c50440f005913a49acbd2c4e6p+12L -1 : inexact-ok
+= lgamma tonearest ldbl-128 -0x4p-16496L : 0x2.ca8c50440f005913a49acbd2c4e8p+12L -1 : inexact-ok
+= lgamma towardzero ldbl-128 -0x4p-16496L : 0x2.ca8c50440f005913a49acbd2c4e6p+12L -1 : inexact-ok
+= lgamma upward ldbl-128 -0x4p-16496L : 0x2.ca8c50440f005913a49acbd2c4e8p+12L -1 : inexact-ok
+log 1
+= log downward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log tonearest flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log towardzero flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log upward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log downward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log tonearest dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log towardzero dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log upward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log downward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log tonearest ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log towardzero ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log upward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log downward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log tonearest ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log towardzero ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log upward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log downward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log tonearest ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log towardzero ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log upward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log downward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= log tonearest ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= log towardzero ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= log upward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+log e
+= log downward flt-32 0x2.b7e154p+0f : 0x1p+0f : inexact-ok
+= log tonearest flt-32 0x2.b7e154p+0f : 0x1p+0f : inexact-ok
+= log towardzero flt-32 0x2.b7e154p+0f : 0x1p+0f : inexact-ok
+= log upward flt-32 0x2.b7e154p+0f : 0x1.000002p+0f : inexact-ok
+= log downward dbl-64 0x2.b7e154p+0 : 0x1.000000f647925p+0 : inexact-ok
+= log tonearest dbl-64 0x2.b7e154p+0 : 0x1.000000f647926p+0 : inexact-ok
+= log towardzero dbl-64 0x2.b7e154p+0 : 0x1.000000f647925p+0 : inexact-ok
+= log upward dbl-64 0x2.b7e154p+0 : 0x1.000000f647926p+0 : inexact-ok
+= log downward ldbl-96-intel 0x2.b7e154p+0L : 0x1.000000f647925f34p+0L : inexact-ok
+= log tonearest ldbl-96-intel 0x2.b7e154p+0L : 0x1.000000f647925f34p+0L : inexact-ok
+= log towardzero ldbl-96-intel 0x2.b7e154p+0L : 0x1.000000f647925f34p+0L : inexact-ok
+= log upward ldbl-96-intel 0x2.b7e154p+0L : 0x1.000000f647925f36p+0L : inexact-ok
+= log downward ldbl-96-m68k 0x2.b7e154p+0L : 0x1.000000f647925f34p+0L : inexact-ok
+= log tonearest ldbl-96-m68k 0x2.b7e154p+0L : 0x1.000000f647925f34p+0L : inexact-ok
+= log towardzero ldbl-96-m68k 0x2.b7e154p+0L : 0x1.000000f647925f34p+0L : inexact-ok
+= log upward ldbl-96-m68k 0x2.b7e154p+0L : 0x1.000000f647925f36p+0L : inexact-ok
+= log downward ldbl-128 0x2.b7e154p+0L : 0x1.000000f647925f34d03716a8b6ccp+0L : inexact-ok
+= log tonearest ldbl-128 0x2.b7e154p+0L : 0x1.000000f647925f34d03716a8b6ccp+0L : inexact-ok
+= log towardzero ldbl-128 0x2.b7e154p+0L : 0x1.000000f647925f34d03716a8b6ccp+0L : inexact-ok
+= log upward ldbl-128 0x2.b7e154p+0L : 0x1.000000f647925f34d03716a8b6cdp+0L : inexact-ok
+= log downward ldbl-128ibm 0x2.b7e154p+0L : 0x1.000000f647925f34d03716a8b68p+0L : inexact-ok
+= log tonearest ldbl-128ibm 0x2.b7e154p+0L : 0x1.000000f647925f34d03716a8b7p+0L : inexact-ok
+= log towardzero ldbl-128ibm 0x2.b7e154p+0L : 0x1.000000f647925f34d03716a8b68p+0L : inexact-ok
+= log upward ldbl-128ibm 0x2.b7e154p+0L : 0x1.000000f647925f34d03716a8b7p+0L : inexact-ok
+= log downward flt-32 0x2.b7e15p+0f : 0xf.fffffp-4f : inexact-ok
+= log tonearest flt-32 0x2.b7e15p+0f : 0xf.fffffp-4f : inexact-ok
+= log towardzero flt-32 0x2.b7e15p+0f : 0xf.fffffp-4f : inexact-ok
+= log upward flt-32 0x2.b7e15p+0f : 0x1p+0f : inexact-ok
+= log downward dbl-64 0x2.b7e15p+0 : 0xf.fffff7d922f5p-4 : inexact-ok
+= log tonearest dbl-64 0x2.b7e15p+0 : 0xf.fffff7d922f5p-4 : inexact-ok
+= log towardzero dbl-64 0x2.b7e15p+0 : 0xf.fffff7d922f5p-4 : inexact-ok
+= log upward dbl-64 0x2.b7e15p+0 : 0xf.fffff7d922f58p-4 : inexact-ok
+= log downward ldbl-96-intel 0x2.b7e15p+0L : 0xf.fffff7d922f51a2p-4L : inexact-ok
+= log tonearest ldbl-96-intel 0x2.b7e15p+0L : 0xf.fffff7d922f51a3p-4L : inexact-ok
+= log towardzero ldbl-96-intel 0x2.b7e15p+0L : 0xf.fffff7d922f51a2p-4L : inexact-ok
+= log upward ldbl-96-intel 0x2.b7e15p+0L : 0xf.fffff7d922f51a3p-4L : inexact-ok
+= log downward ldbl-96-m68k 0x2.b7e15p+0L : 0xf.fffff7d922f51a2p-4L : inexact-ok
+= log tonearest ldbl-96-m68k 0x2.b7e15p+0L : 0xf.fffff7d922f51a3p-4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x2.b7e15p+0L : 0xf.fffff7d922f51a2p-4L : inexact-ok
+= log upward ldbl-96-m68k 0x2.b7e15p+0L : 0xf.fffff7d922f51a3p-4L : inexact-ok
+= log downward ldbl-128 0x2.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e821p-4L : inexact-ok
+= log tonearest ldbl-128 0x2.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e821p-4L : inexact-ok
+= log towardzero ldbl-128 0x2.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e821p-4L : inexact-ok
+= log upward ldbl-128 0x2.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e8218p-4L : inexact-ok
+= log downward ldbl-128ibm 0x2.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e8p-4L : inexact-ok
+= log tonearest ldbl-128ibm 0x2.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e84p-4L : inexact-ok
+= log towardzero ldbl-128ibm 0x2.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e8p-4L : inexact-ok
+= log upward ldbl-128ibm 0x2.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e84p-4L : inexact-ok
+= log downward dbl-64 0x2.b7e151628aed4p+0 : 0x1p+0 : inexact-ok
+= log tonearest dbl-64 0x2.b7e151628aed4p+0 : 0x1p+0 : inexact-ok
+= log towardzero dbl-64 0x2.b7e151628aed4p+0 : 0x1p+0 : inexact-ok
+= log upward dbl-64 0x2.b7e151628aed4p+0 : 0x1.0000000000001p+0 : inexact-ok
+= log downward ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x1.00000000000007fp+0L : inexact-ok
+= log tonearest ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x1.00000000000007fp+0L : inexact-ok
+= log towardzero ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x1.00000000000007fp+0L : inexact-ok
+= log upward ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x1.00000000000007f2p+0L : inexact-ok
+= log downward ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x1.00000000000007fp+0L : inexact-ok
+= log tonearest ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x1.00000000000007fp+0L : inexact-ok
+= log towardzero ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x1.00000000000007fp+0L : inexact-ok
+= log upward ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x1.00000000000007f2p+0L : inexact-ok
+= log downward ldbl-128 0x2.b7e151628aed4p+0L : 0x1.00000000000007f0a06e4ddb0222p+0L : inexact-ok
+= log tonearest ldbl-128 0x2.b7e151628aed4p+0L : 0x1.00000000000007f0a06e4ddb0222p+0L : inexact-ok
+= log towardzero ldbl-128 0x2.b7e151628aed4p+0L : 0x1.00000000000007f0a06e4ddb0222p+0L : inexact-ok
+= log upward ldbl-128 0x2.b7e151628aed4p+0L : 0x1.00000000000007f0a06e4ddb0223p+0L : inexact-ok
+= log downward ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x1.00000000000007f0a06e4ddb02p+0L : inexact-ok
+= log tonearest ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x1.00000000000007f0a06e4ddb02p+0L : inexact-ok
+= log towardzero ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x1.00000000000007f0a06e4ddb02p+0L : inexact-ok
+= log upward ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x1.00000000000007f0a06e4ddb028p+0L : inexact-ok
+= log downward dbl-64 0x2.b7e151628aed2p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= log tonearest dbl-64 0x2.b7e151628aed2p+0 : 0x1p+0 : inexact-ok
+= log towardzero dbl-64 0x2.b7e151628aed2p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= log upward dbl-64 0x2.b7e151628aed2p+0 : 0x1p+0 : inexact-ok
+= log downward ldbl-96-intel 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2ap-4L : inexact-ok
+= log tonearest ldbl-96-intel 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2bp-4L : inexact-ok
+= log towardzero ldbl-96-intel 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2ap-4L : inexact-ok
+= log upward ldbl-96-intel 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2bp-4L : inexact-ok
+= log downward ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2ap-4L : inexact-ok
+= log tonearest ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2bp-4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2ap-4L : inexact-ok
+= log upward ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2bp-4L : inexact-ok
+= log downward ldbl-128 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2af55337636657p-4L : inexact-ok
+= log tonearest ldbl-128 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2af553376366578p-4L : inexact-ok
+= log towardzero ldbl-128 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2af55337636657p-4L : inexact-ok
+= log upward ldbl-128 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2af553376366578p-4L : inexact-ok
+= log downward ldbl-128ibm 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2af5533763664p-4L : inexact-ok
+= log tonearest ldbl-128ibm 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2af5533763664p-4L : inexact-ok
+= log towardzero ldbl-128ibm 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2af5533763664p-4L : inexact-ok
+= log upward ldbl-128ibm 0x2.b7e151628aed2p+0L : 0xf.ffffffffffffc2af5533763668p-4L : inexact-ok
+= log downward ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log tonearest ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log towardzero ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log upward ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x1.0000000000000002p+0L : inexact-ok
+= log downward ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log tonearest ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log towardzero ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log upward ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x1.0000000000000002p+0L : inexact-ok
+= log downward ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49ac3p+0L : inexact-ok
+= log tonearest ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49ac4p+0L : inexact-ok
+= log towardzero ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49ac3p+0L : inexact-ok
+= log upward ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49ac4p+0L : inexact-ok
+= log downward ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49a8p+0L : inexact-ok
+= log tonearest ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49bp+0L : inexact-ok
+= log towardzero ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49a8p+0L : inexact-ok
+= log upward ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49bp+0L : inexact-ok
+= log downward ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= log tonearest ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= log towardzero ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= log upward ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= log downward ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= log tonearest ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= log upward ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= log downward ldbl-128 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffefd37c671cbdp-4L : inexact-ok
+= log tonearest ldbl-128 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffefd37c671cbd08p-4L : inexact-ok
+= log towardzero ldbl-128 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffefd37c671cbdp-4L : inexact-ok
+= log upward ldbl-128 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffefd37c671cbd08p-4L : inexact-ok
+= log downward ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffefd37c671cbcp-4L : inexact-ok
+= log tonearest ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffefd37c671cbcp-4L : inexact-ok
+= log towardzero ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffefd37c671cbcp-4L : inexact-ok
+= log upward ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0xf.ffffffffffffffefd37c671ccp-4L : inexact-ok
+= log downward ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x1p+0L : inexact-ok
+= log tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x1p+0L : inexact-ok
+= log towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x1p+0L : inexact-ok
+= log upward ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= log downward ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log upward ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0x1p+0L : inexact-ok
+= log downward ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.0000000000000000000000000004p+0L : inexact-ok
+= log tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.0000000000000000000000000004p+0L : inexact-ok
+= log towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.0000000000000000000000000004p+0L : inexact-ok
+= log upward ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.0000000000000000000000000005p+0L : inexact-ok
+= log downward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1p+0L : inexact-ok
+= log tonearest ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1p+0L : inexact-ok
+= log towardzero ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1p+0L : inexact-ok
+= log upward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= log downward ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0xf.fffffffffffffffffffffffffa58p-4L : inexact-ok
+= log tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0xf.fffffffffffffffffffffffffa6p-4L : inexact-ok
+= log towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0xf.fffffffffffffffffffffffffa58p-4L : inexact-ok
+= log upward ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0xf.fffffffffffffffffffffffffa6p-4L : inexact-ok
+= log downward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= log tonearest ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= log towardzero ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= log upward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+log 1/e
+= log downward flt-32 0x5.e2d59p-4f : -0x1p+0f : inexact-ok
+= log tonearest flt-32 0x5.e2d59p-4f : -0x1p+0f : inexact-ok
+= log towardzero flt-32 0x5.e2d59p-4f : -0xf.fffffp-4f : inexact-ok
+= log upward flt-32 0x5.e2d59p-4f : -0xf.fffffp-4f : inexact-ok
+= log downward dbl-64 0x5.e2d59p-4 : -0xf.fffff952d5f58p-4 : inexact-ok
+= log tonearest dbl-64 0x5.e2d59p-4 : -0xf.fffff952d5f5p-4 : inexact-ok
+= log towardzero dbl-64 0x5.e2d59p-4 : -0xf.fffff952d5f5p-4 : inexact-ok
+= log upward dbl-64 0x5.e2d59p-4 : -0xf.fffff952d5f5p-4 : inexact-ok
+= log downward ldbl-96-intel 0x5.e2d59p-4L : -0xf.fffff952d5f52bap-4L : inexact-ok
+= log tonearest ldbl-96-intel 0x5.e2d59p-4L : -0xf.fffff952d5f52b9p-4L : inexact-ok
+= log towardzero ldbl-96-intel 0x5.e2d59p-4L : -0xf.fffff952d5f52b9p-4L : inexact-ok
+= log upward ldbl-96-intel 0x5.e2d59p-4L : -0xf.fffff952d5f52b9p-4L : inexact-ok
+= log downward ldbl-96-m68k 0x5.e2d59p-4L : -0xf.fffff952d5f52bap-4L : inexact-ok
+= log tonearest ldbl-96-m68k 0x5.e2d59p-4L : -0xf.fffff952d5f52b9p-4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x5.e2d59p-4L : -0xf.fffff952d5f52b9p-4L : inexact-ok
+= log upward ldbl-96-m68k 0x5.e2d59p-4L : -0xf.fffff952d5f52b9p-4L : inexact-ok
+= log downward ldbl-128 0x5.e2d59p-4L : -0xf.fffff952d5f52b972627765c7b8p-4L : inexact-ok
+= log tonearest ldbl-128 0x5.e2d59p-4L : -0xf.fffff952d5f52b972627765c7b8p-4L : inexact-ok
+= log towardzero ldbl-128 0x5.e2d59p-4L : -0xf.fffff952d5f52b972627765c7b78p-4L : inexact-ok
+= log upward ldbl-128 0x5.e2d59p-4L : -0xf.fffff952d5f52b972627765c7b78p-4L : inexact-ok
+= log downward ldbl-128ibm 0x5.e2d59p-4L : -0xf.fffff952d5f52b972627765c7cp-4L : inexact-ok
+= log tonearest ldbl-128ibm 0x5.e2d59p-4L : -0xf.fffff952d5f52b972627765c7cp-4L : inexact-ok
+= log towardzero ldbl-128ibm 0x5.e2d59p-4L : -0xf.fffff952d5f52b972627765c78p-4L : inexact-ok
+= log upward ldbl-128ibm 0x5.e2d59p-4L : -0xf.fffff952d5f52b972627765c78p-4L : inexact-ok
+= log downward flt-32 0x5.e2d588p-4f : -0x1.000002p+0f : inexact-ok
+= log tonearest flt-32 0x5.e2d588p-4f : -0x1p+0f : inexact-ok
+= log towardzero flt-32 0x5.e2d588p-4f : -0x1p+0f : inexact-ok
+= log upward flt-32 0x5.e2d588p-4f : -0x1p+0f : inexact-ok
+= log downward dbl-64 0x5.e2d588p-4 : -0x1.000000f11e086p+0 : inexact-ok
+= log tonearest dbl-64 0x5.e2d588p-4 : -0x1.000000f11e086p+0 : inexact-ok
+= log towardzero dbl-64 0x5.e2d588p-4 : -0x1.000000f11e085p+0 : inexact-ok
+= log upward dbl-64 0x5.e2d588p-4 : -0x1.000000f11e085p+0 : inexact-ok
+= log downward ldbl-96-intel 0x5.e2d588p-4L : -0x1.000000f11e085f44p+0L : inexact-ok
+= log tonearest ldbl-96-intel 0x5.e2d588p-4L : -0x1.000000f11e085f42p+0L : inexact-ok
+= log towardzero ldbl-96-intel 0x5.e2d588p-4L : -0x1.000000f11e085f42p+0L : inexact-ok
+= log upward ldbl-96-intel 0x5.e2d588p-4L : -0x1.000000f11e085f42p+0L : inexact-ok
+= log downward ldbl-96-m68k 0x5.e2d588p-4L : -0x1.000000f11e085f44p+0L : inexact-ok
+= log tonearest ldbl-96-m68k 0x5.e2d588p-4L : -0x1.000000f11e085f42p+0L : inexact-ok
+= log towardzero ldbl-96-m68k 0x5.e2d588p-4L : -0x1.000000f11e085f42p+0L : inexact-ok
+= log upward ldbl-96-m68k 0x5.e2d588p-4L : -0x1.000000f11e085f42p+0L : inexact-ok
+= log downward ldbl-128 0x5.e2d588p-4L : -0x1.000000f11e085f422347d5acdb97p+0L : inexact-ok
+= log tonearest ldbl-128 0x5.e2d588p-4L : -0x1.000000f11e085f422347d5acdb97p+0L : inexact-ok
+= log towardzero ldbl-128 0x5.e2d588p-4L : -0x1.000000f11e085f422347d5acdb96p+0L : inexact-ok
+= log upward ldbl-128 0x5.e2d588p-4L : -0x1.000000f11e085f422347d5acdb96p+0L : inexact-ok
+= log downward ldbl-128ibm 0x5.e2d588p-4L : -0x1.000000f11e085f422347d5acdcp+0L : inexact-ok
+= log tonearest ldbl-128ibm 0x5.e2d588p-4L : -0x1.000000f11e085f422347d5acdb8p+0L : inexact-ok
+= log towardzero ldbl-128ibm 0x5.e2d588p-4L : -0x1.000000f11e085f422347d5acdb8p+0L : inexact-ok
+= log upward ldbl-128ibm 0x5.e2d588p-4L : -0x1.000000f11e085f422347d5acdb8p+0L : inexact-ok
+= log downward dbl-64 0x5.e2d58d8b3bcep-4 : -0x1p+0 : inexact-ok
+= log tonearest dbl-64 0x5.e2d58d8b3bcep-4 : -0x1p+0 : inexact-ok
+= log towardzero dbl-64 0x5.e2d58d8b3bcep-4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= log upward dbl-64 0x5.e2d58d8b3bcep-4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= log downward ldbl-96-intel 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd91p-4L : inexact-ok
+= log tonearest ldbl-96-intel 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd91p-4L : inexact-ok
+= log towardzero ldbl-96-intel 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd9p-4L : inexact-ok
+= log upward ldbl-96-intel 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd9p-4L : inexact-ok
+= log downward ldbl-96-m68k 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd91p-4L : inexact-ok
+= log tonearest ldbl-96-m68k 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd91p-4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd9p-4L : inexact-ok
+= log upward ldbl-96-m68k 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd9p-4L : inexact-ok
+= log downward ldbl-128 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd90c7882a506a588p-4L : inexact-ok
+= log tonearest ldbl-128 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd90c7882a506a58p-4L : inexact-ok
+= log towardzero ldbl-128 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd90c7882a506a58p-4L : inexact-ok
+= log upward ldbl-128 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd90c7882a506a58p-4L : inexact-ok
+= log downward ldbl-128ibm 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd90c7882a506a8p-4L : inexact-ok
+= log tonearest ldbl-128ibm 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd90c7882a506a4p-4L : inexact-ok
+= log towardzero ldbl-128ibm 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd90c7882a506a4p-4L : inexact-ok
+= log upward ldbl-128ibm 0x5.e2d58d8b3bcep-4L : -0xf.ffffffffffffd90c7882a506a4p-4L : inexact-ok
+= log downward dbl-64 0x5.e2d58d8b3bcdcp-4 : -0x1.0000000000001p+0 : inexact-ok
+= log tonearest dbl-64 0x5.e2d58d8b3bcdcp-4 : -0x1.0000000000001p+0 : inexact-ok
+= log towardzero dbl-64 0x5.e2d58d8b3bcdcp-4 : -0x1p+0 : inexact-ok
+= log upward dbl-64 0x5.e2d58d8b3bcdcp-4 : -0x1p+0 : inexact-ok
+= log downward ldbl-96-intel 0x5.e2d58d8b3bcdcp-4L : -0x1.0000000000000872p+0L : inexact-ok
+= log tonearest ldbl-96-intel 0x5.e2d58d8b3bcdcp-4L : -0x1.000000000000087p+0L : inexact-ok
+= log towardzero ldbl-96-intel 0x5.e2d58d8b3bcdcp-4L : -0x1.000000000000087p+0L : inexact-ok
+= log upward ldbl-96-intel 0x5.e2d58d8b3bcdcp-4L : -0x1.000000000000087p+0L : inexact-ok
+= log downward ldbl-96-m68k 0x5.e2d58d8b3bcdcp-4L : -0x1.0000000000000872p+0L : inexact-ok
+= log tonearest ldbl-96-m68k 0x5.e2d58d8b3bcdcp-4L : -0x1.000000000000087p+0L : inexact-ok
+= log towardzero ldbl-96-m68k 0x5.e2d58d8b3bcdcp-4L : -0x1.000000000000087p+0L : inexact-ok
+= log upward ldbl-96-m68k 0x5.e2d58d8b3bcdcp-4L : -0x1.000000000000087p+0L : inexact-ok
+= log downward ldbl-128 0x5.e2d58d8b3bcdcp-4L : -0x1.00000000000008704ccdb47c1f23p+0L : inexact-ok
+= log tonearest ldbl-128 0x5.e2d58d8b3bcdcp-4L : -0x1.00000000000008704ccdb47c1f22p+0L : inexact-ok
+= log towardzero ldbl-128 0x5.e2d58d8b3bcdcp-4L : -0x1.00000000000008704ccdb47c1f22p+0L : inexact-ok
+= log upward ldbl-128 0x5.e2d58d8b3bcdcp-4L : -0x1.00000000000008704ccdb47c1f22p+0L : inexact-ok
+= log downward ldbl-128ibm 0x5.e2d58d8b3bcdcp-4L : -0x1.00000000000008704ccdb47c1f8p+0L : inexact-ok
+= log tonearest ldbl-128ibm 0x5.e2d58d8b3bcdcp-4L : -0x1.00000000000008704ccdb47c1fp+0L : inexact-ok
+= log towardzero ldbl-128ibm 0x5.e2d58d8b3bcdcp-4L : -0x1.00000000000008704ccdb47c1fp+0L : inexact-ok
+= log upward ldbl-128ibm 0x5.e2d58d8b3bcdcp-4L : -0x1.00000000000008704ccdb47c1fp+0L : inexact-ok
+= log downward ldbl-96-intel 0x5.e2d58d8b3bcdf1bp-4L : -0x1p+0L : inexact-ok
+= log tonearest ldbl-96-intel 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= log towardzero ldbl-96-intel 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= log upward ldbl-96-intel 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= log downward ldbl-96-m68k 0x5.e2d58d8b3bcdf1bp-4L : -0x1p+0L : inexact-ok
+= log tonearest ldbl-96-m68k 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= log upward ldbl-96-m68k 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= log downward ldbl-128 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffff4415f776b07c8p-4L : inexact-ok
+= log tonearest ldbl-128 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffff4415f776b07cp-4L : inexact-ok
+= log towardzero ldbl-128 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffff4415f776b07cp-4L : inexact-ok
+= log upward ldbl-128 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffff4415f776b07cp-4L : inexact-ok
+= log downward ldbl-128ibm 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffff4415f776b08p-4L : inexact-ok
+= log tonearest ldbl-128ibm 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffff4415f776b08p-4L : inexact-ok
+= log towardzero ldbl-128ibm 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffff4415f776b04p-4L : inexact-ok
+= log upward ldbl-128ibm 0x5.e2d58d8b3bcdf1bp-4L : -0xf.fffffffffffffff4415f776b04p-4L : inexact-ok
+= log downward ldbl-96-intel 0x5.e2d58d8b3bcdf1a8p-4L : -0x1.0000000000000002p+0L : inexact-ok
+= log tonearest ldbl-96-intel 0x5.e2d58d8b3bcdf1a8p-4L : -0x1p+0L : inexact-ok
+= log towardzero ldbl-96-intel 0x5.e2d58d8b3bcdf1a8p-4L : -0x1p+0L : inexact-ok
+= log upward ldbl-96-intel 0x5.e2d58d8b3bcdf1a8p-4L : -0x1p+0L : inexact-ok
+= log downward ldbl-96-m68k 0x5.e2d58d8b3bcdf1a8p-4L : -0x1.0000000000000002p+0L : inexact-ok
+= log tonearest ldbl-96-m68k 0x5.e2d58d8b3bcdf1a8p-4L : -0x1p+0L : inexact-ok
+= log towardzero ldbl-96-m68k 0x5.e2d58d8b3bcdf1a8p-4L : -0x1p+0L : inexact-ok
+= log upward ldbl-96-m68k 0x5.e2d58d8b3bcdf1a8p-4L : -0x1p+0L : inexact-ok
+= log downward ldbl-128 0x5.e2d58d8b3bcdf1a8p-4L : -0x1.0000000000000000a006a027f5f3p+0L : inexact-ok
+= log tonearest ldbl-128 0x5.e2d58d8b3bcdf1a8p-4L : -0x1.0000000000000000a006a027f5f3p+0L : inexact-ok
+= log towardzero ldbl-128 0x5.e2d58d8b3bcdf1a8p-4L : -0x1.0000000000000000a006a027f5f2p+0L : inexact-ok
+= log upward ldbl-128 0x5.e2d58d8b3bcdf1a8p-4L : -0x1.0000000000000000a006a027f5f2p+0L : inexact-ok
+= log downward ldbl-128ibm 0x5.e2d58d8b3bcdf1a8p-4L : -0x1.0000000000000000a006a027f6p+0L : inexact-ok
+= log tonearest ldbl-128ibm 0x5.e2d58d8b3bcdf1a8p-4L : -0x1.0000000000000000a006a027f6p+0L : inexact-ok
+= log towardzero ldbl-128ibm 0x5.e2d58d8b3bcdf1a8p-4L : -0x1.0000000000000000a006a027f58p+0L : inexact-ok
+= log upward ldbl-128ibm 0x5.e2d58d8b3bcdf1a8p-4L : -0x1.0000000000000000a006a027f58p+0L : inexact-ok
+= log downward ldbl-128 0x5.e2d58d8b3bcdf1abadec7829055p-4L : -0x1p+0L : inexact-ok
+= log tonearest ldbl-128 0x5.e2d58d8b3bcdf1abadec7829055p-4L : -0x1p+0L : inexact-ok
+= log towardzero ldbl-128 0x5.e2d58d8b3bcdf1abadec7829055p-4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log upward ldbl-128 0x5.e2d58d8b3bcdf1abadec7829055p-4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log downward ldbl-128 0x5.e2d58d8b3bcdf1abadec7829054cp-4L : -0x1.0000000000000000000000000001p+0L : inexact-ok
+= log tonearest ldbl-128 0x5.e2d58d8b3bcdf1abadec7829054cp-4L : -0x1p+0L : inexact-ok
+= log towardzero ldbl-128 0x5.e2d58d8b3bcdf1abadec7829054cp-4L : -0x1p+0L : inexact-ok
+= log upward ldbl-128 0x5.e2d58d8b3bcdf1abadec7829054cp-4L : -0x1p+0L : inexact-ok
+= log downward ldbl-128 0x5.e2d58d8b3bcdf1abadec782906p-4L : -0xf.fffffffffffffffffffffffffe2p-4L : inexact-ok
+= log tonearest ldbl-128 0x5.e2d58d8b3bcdf1abadec782906p-4L : -0xf.fffffffffffffffffffffffffe2p-4L : inexact-ok
+= log towardzero ldbl-128 0x5.e2d58d8b3bcdf1abadec782906p-4L : -0xf.fffffffffffffffffffffffffe18p-4L : inexact-ok
+= log upward ldbl-128 0x5.e2d58d8b3bcdf1abadec782906p-4L : -0xf.fffffffffffffffffffffffffe18p-4L : inexact-ok
+= log downward ldbl-128ibm 0x5.e2d58d8b3bcdf1abadec782906p-4L : -0x1p+0L : inexact-ok
+= log tonearest ldbl-128ibm 0x5.e2d58d8b3bcdf1abadec782906p-4L : -0x1p+0L : inexact-ok
+= log towardzero ldbl-128ibm 0x5.e2d58d8b3bcdf1abadec782906p-4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= log upward ldbl-128ibm 0x5.e2d58d8b3bcdf1abadec782906p-4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= log downward ldbl-128 0x5.e2d58d8b3bcdf1abadec782904p-4L : -0x1.0000000000000000000000000039p+0L : inexact-ok
+= log tonearest ldbl-128 0x5.e2d58d8b3bcdf1abadec782904p-4L : -0x1.0000000000000000000000000039p+0L : inexact-ok
+= log towardzero ldbl-128 0x5.e2d58d8b3bcdf1abadec782904p-4L : -0x1.0000000000000000000000000038p+0L : inexact-ok
+= log upward ldbl-128 0x5.e2d58d8b3bcdf1abadec782904p-4L : -0x1.0000000000000000000000000038p+0L : inexact-ok
+= log downward ldbl-128ibm 0x5.e2d58d8b3bcdf1abadec782904p-4L : -0x1.000000000000000000000000008p+0L : inexact-ok
+= log tonearest ldbl-128ibm 0x5.e2d58d8b3bcdf1abadec782904p-4L : -0x1p+0L : inexact-ok
+= log towardzero ldbl-128ibm 0x5.e2d58d8b3bcdf1abadec782904p-4L : -0x1p+0L : inexact-ok
+= log upward ldbl-128ibm 0x5.e2d58d8b3bcdf1abadec782904p-4L : -0x1p+0L : inexact-ok
+log 2
+= log downward flt-32 0x2p+0f : 0xb.17217p-4f : inexact-ok
+= log tonearest flt-32 0x2p+0f : 0xb.17218p-4f : inexact-ok
+= log towardzero flt-32 0x2p+0f : 0xb.17217p-4f : inexact-ok
+= log upward flt-32 0x2p+0f : 0xb.17218p-4f : inexact-ok
+= log downward dbl-64 0x2p+0 : 0xb.17217f7d1cf78p-4 : inexact-ok
+= log tonearest dbl-64 0x2p+0 : 0xb.17217f7d1cf78p-4 : inexact-ok
+= log towardzero dbl-64 0x2p+0 : 0xb.17217f7d1cf78p-4 : inexact-ok
+= log upward dbl-64 0x2p+0 : 0xb.17217f7d1cf8p-4 : inexact-ok
+= log downward ldbl-96-intel 0x2p+0L : 0xb.17217f7d1cf79abp-4L : inexact-ok
+= log tonearest ldbl-96-intel 0x2p+0L : 0xb.17217f7d1cf79acp-4L : inexact-ok
+= log towardzero ldbl-96-intel 0x2p+0L : 0xb.17217f7d1cf79abp-4L : inexact-ok
+= log upward ldbl-96-intel 0x2p+0L : 0xb.17217f7d1cf79acp-4L : inexact-ok
+= log downward ldbl-96-m68k 0x2p+0L : 0xb.17217f7d1cf79abp-4L : inexact-ok
+= log tonearest ldbl-96-m68k 0x2p+0L : 0xb.17217f7d1cf79acp-4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x2p+0L : 0xb.17217f7d1cf79abp-4L : inexact-ok
+= log upward ldbl-96-m68k 0x2p+0L : 0xb.17217f7d1cf79acp-4L : inexact-ok
+= log downward ldbl-128 0x2p+0L : 0xb.17217f7d1cf79abc9e3b39803f28p-4L : inexact-ok
+= log tonearest ldbl-128 0x2p+0L : 0xb.17217f7d1cf79abc9e3b39803f3p-4L : inexact-ok
+= log towardzero ldbl-128 0x2p+0L : 0xb.17217f7d1cf79abc9e3b39803f28p-4L : inexact-ok
+= log upward ldbl-128 0x2p+0L : 0xb.17217f7d1cf79abc9e3b39803f3p-4L : inexact-ok
+= log downward ldbl-128ibm 0x2p+0L : 0xb.17217f7d1cf79abc9e3b39803cp-4L : inexact-ok
+= log tonearest ldbl-128ibm 0x2p+0L : 0xb.17217f7d1cf79abc9e3b39804p-4L : inexact-ok
+= log towardzero ldbl-128ibm 0x2p+0L : 0xb.17217f7d1cf79abc9e3b39803cp-4L : inexact-ok
+= log upward ldbl-128ibm 0x2p+0L : 0xb.17217f7d1cf79abc9e3b39804p-4L : inexact-ok
+log 10
+= log downward flt-32 0xap+0f : 0x2.4d7634p+0f : inexact-ok
+= log tonearest flt-32 0xap+0f : 0x2.4d7638p+0f : inexact-ok
+= log towardzero flt-32 0xap+0f : 0x2.4d7634p+0f : inexact-ok
+= log upward flt-32 0xap+0f : 0x2.4d7638p+0f : inexact-ok
+= log downward dbl-64 0xap+0 : 0x2.4d763776aaa2ap+0 : inexact-ok
+= log tonearest dbl-64 0xap+0 : 0x2.4d763776aaa2cp+0 : inexact-ok
+= log towardzero dbl-64 0xap+0 : 0x2.4d763776aaa2ap+0 : inexact-ok
+= log upward dbl-64 0xap+0 : 0x2.4d763776aaa2cp+0 : inexact-ok
+= log downward ldbl-96-intel 0xap+0L : 0x2.4d763776aaa2b058p+0L : inexact-ok
+= log tonearest ldbl-96-intel 0xap+0L : 0x2.4d763776aaa2b05cp+0L : inexact-ok
+= log towardzero ldbl-96-intel 0xap+0L : 0x2.4d763776aaa2b058p+0L : inexact-ok
+= log upward ldbl-96-intel 0xap+0L : 0x2.4d763776aaa2b05cp+0L : inexact-ok
+= log downward ldbl-96-m68k 0xap+0L : 0x2.4d763776aaa2b058p+0L : inexact-ok
+= log tonearest ldbl-96-m68k 0xap+0L : 0x2.4d763776aaa2b05cp+0L : inexact-ok
+= log towardzero ldbl-96-m68k 0xap+0L : 0x2.4d763776aaa2b058p+0L : inexact-ok
+= log upward ldbl-96-m68k 0xap+0L : 0x2.4d763776aaa2b05cp+0L : inexact-ok
+= log downward ldbl-128 0xap+0L : 0x2.4d763776aaa2b05ba95b58ae0b4cp+0L : inexact-ok
+= log tonearest ldbl-128 0xap+0L : 0x2.4d763776aaa2b05ba95b58ae0b4cp+0L : inexact-ok
+= log towardzero ldbl-128 0xap+0L : 0x2.4d763776aaa2b05ba95b58ae0b4cp+0L : inexact-ok
+= log upward ldbl-128 0xap+0L : 0x2.4d763776aaa2b05ba95b58ae0b4ep+0L : inexact-ok
+= log downward ldbl-128ibm 0xap+0L : 0x2.4d763776aaa2b05ba95b58ae0bp+0L : inexact-ok
+= log tonearest ldbl-128ibm 0xap+0L : 0x2.4d763776aaa2b05ba95b58ae0bp+0L : inexact-ok
+= log towardzero ldbl-128ibm 0xap+0L : 0x2.4d763776aaa2b05ba95b58ae0bp+0L : inexact-ok
+= log upward ldbl-128ibm 0xap+0L : 0x2.4d763776aaa2b05ba95b58ae0cp+0L : inexact-ok
+log 0.75
+= log downward flt-32 0xcp-4f : -0x4.9a5888p-4f : inexact-ok
+= log tonearest flt-32 0xcp-4f : -0x4.9a5888p-4f : inexact-ok
+= log towardzero flt-32 0xcp-4f : -0x4.9a588p-4f : inexact-ok
+= log upward flt-32 0xcp-4f : -0x4.9a588p-4f : inexact-ok
+= log downward dbl-64 0xcp-4 : -0x4.9a58844d36e4cp-4 : inexact-ok
+= log tonearest dbl-64 0xcp-4 : -0x4.9a58844d36e48p-4 : inexact-ok
+= log towardzero dbl-64 0xcp-4 : -0x4.9a58844d36e48p-4 : inexact-ok
+= log upward dbl-64 0xcp-4 : -0x4.9a58844d36e48p-4 : inexact-ok
+= log downward ldbl-96-intel 0xcp-4L : -0x4.9a58844d36e49e1p-4L : inexact-ok
+= log tonearest ldbl-96-intel 0xcp-4L : -0x4.9a58844d36e49e1p-4L : inexact-ok
+= log towardzero ldbl-96-intel 0xcp-4L : -0x4.9a58844d36e49e08p-4L : inexact-ok
+= log upward ldbl-96-intel 0xcp-4L : -0x4.9a58844d36e49e08p-4L : inexact-ok
+= log downward ldbl-96-m68k 0xcp-4L : -0x4.9a58844d36e49e1p-4L : inexact-ok
+= log tonearest ldbl-96-m68k 0xcp-4L : -0x4.9a58844d36e49e1p-4L : inexact-ok
+= log towardzero ldbl-96-m68k 0xcp-4L : -0x4.9a58844d36e49e08p-4L : inexact-ok
+= log upward ldbl-96-m68k 0xcp-4L : -0x4.9a58844d36e49e08p-4L : inexact-ok
+= log downward ldbl-128 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02aa8p-4L : inexact-ok
+= log tonearest ldbl-128 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02aa8p-4L : inexact-ok
+= log towardzero ldbl-128 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02aa4p-4L : inexact-ok
+= log upward ldbl-128 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02aa4p-4L : inexact-ok
+= log downward ldbl-128ibm 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02cp-4L : inexact-ok
+= log tonearest ldbl-128ibm 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02ap-4L : inexact-ok
+= log towardzero ldbl-128ibm 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02ap-4L : inexact-ok
+= log upward ldbl-128ibm 0xcp-4L : -0x4.9a58844d36e49e0efadd9db02ap-4L : inexact-ok
+log min
+= log downward flt-32 0x4p-128f : -0x5.75628p+4f : inexact-ok
+= log tonearest flt-32 0x4p-128f : -0x5.75628p+4f : inexact-ok
+= log towardzero flt-32 0x4p-128f : -0x5.756278p+4f : inexact-ok
+= log upward flt-32 0x4p-128f : -0x5.756278p+4f : inexact-ok
+= log downward dbl-64 0x4p-128 : -0x5.75627cbf9442p+4 : inexact-ok
+= log tonearest dbl-64 0x4p-128 : -0x5.75627cbf9441cp+4 : inexact-ok
+= log towardzero dbl-64 0x4p-128 : -0x5.75627cbf9441cp+4 : inexact-ok
+= log upward dbl-64 0x4p-128 : -0x5.75627cbf9441cp+4 : inexact-ok
+= log downward ldbl-96-intel 0x4p-128L : -0x5.75627cbf9441de3p+4L : inexact-ok
+= log tonearest ldbl-96-intel 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log towardzero ldbl-96-intel 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log upward ldbl-96-intel 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log downward ldbl-96-m68k 0x4p-128L : -0x5.75627cbf9441de3p+4L : inexact-ok
+= log tonearest ldbl-96-m68k 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log upward ldbl-96-m68k 0x4p-128L : -0x5.75627cbf9441de28p+4L : inexact-ok
+= log downward ldbl-128 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1f1cp+4L : inexact-ok
+= log tonearest ldbl-128 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1f18p+4L : inexact-ok
+= log towardzero ldbl-128 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1f18p+4L : inexact-ok
+= log upward ldbl-128 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1f18p+4L : inexact-ok
+= log downward ldbl-128ibm 0x4p-128L : -0x5.75627cbf9441de28d5e1264d2p+4L : inexact-ok
+= log tonearest ldbl-128ibm 0x4p-128L : -0x5.75627cbf9441de28d5e1264d2p+4L : inexact-ok
+= log towardzero ldbl-128ibm 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1ep+4L : inexact-ok
+= log upward ldbl-128ibm 0x4p-128L : -0x5.75627cbf9441de28d5e1264d1ep+4L : inexact-ok
+= log downward dbl-64 0x4p-1024 : -0x2.c4657baf579a6p+8 : inexact-ok
+= log tonearest dbl-64 0x4p-1024 : -0x2.c4657baf579a4p+8 : inexact-ok
+= log towardzero dbl-64 0x4p-1024 : -0x2.c4657baf579a4p+8 : inexact-ok
+= log upward dbl-64 0x4p-1024 : -0x2.c4657baf579a4p+8 : inexact-ok
+= log downward ldbl-96-intel 0x4p-1024L : -0x2.c4657baf579a47bcp+8L : inexact-ok
+= log tonearest ldbl-96-intel 0x4p-1024L : -0x2.c4657baf579a47bcp+8L : inexact-ok
+= log towardzero ldbl-96-intel 0x4p-1024L : -0x2.c4657baf579a47b8p+8L : inexact-ok
+= log upward ldbl-96-intel 0x4p-1024L : -0x2.c4657baf579a47b8p+8L : inexact-ok
+= log downward ldbl-96-m68k 0x4p-1024L : -0x2.c4657baf579a47bcp+8L : inexact-ok
+= log tonearest ldbl-96-m68k 0x4p-1024L : -0x2.c4657baf579a47bcp+8L : inexact-ok
+= log towardzero ldbl-96-m68k 0x4p-1024L : -0x2.c4657baf579a47b8p+8L : inexact-ok
+= log upward ldbl-96-m68k 0x4p-1024L : -0x2.c4657baf579a47b8p+8L : inexact-ok
+= log downward ldbl-128 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfc4p+8L : inexact-ok
+= log tonearest ldbl-128 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfc4p+8L : inexact-ok
+= log towardzero ldbl-128 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfc2p+8L : inexact-ok
+= log upward ldbl-128 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfc2p+8L : inexact-ok
+= log downward ldbl-128ibm 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8ep+8L : inexact-ok
+= log tonearest ldbl-128ibm 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8ep+8L : inexact-ok
+= log towardzero ldbl-128ibm 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfp+8L : inexact-ok
+= log upward ldbl-128ibm 0x4p-1024L : -0x2.c4657baf579a47bbcffb06f8dfp+8L : inexact-ok
+= log downward ldbl-96-intel 0x4p-16384L : -0x2.c5b2319c4843accp+12L : inexact-ok
+= log tonearest ldbl-96-intel 0x4p-16384L : -0x2.c5b2319c4843accp+12L : inexact-ok
+= log towardzero ldbl-96-intel 0x4p-16384L : -0x2.c5b2319c4843acbcp+12L : inexact-ok
+= log upward ldbl-96-intel 0x4p-16384L : -0x2.c5b2319c4843acbcp+12L : inexact-ok
+= log downward ldbl-96-m68k 0x4p-16384L : -0x2.c5b2319c4843accp+12L : inexact-ok
+= log tonearest ldbl-96-m68k 0x4p-16384L : -0x2.c5b2319c4843accp+12L : inexact-ok
+= log towardzero ldbl-96-m68k 0x4p-16384L : -0x2.c5b2319c4843acbcp+12L : inexact-ok
+= log upward ldbl-96-m68k 0x4p-16384L : -0x2.c5b2319c4843acbcp+12L : inexact-ok
+= log downward ldbl-128 0x4p-16384L : -0x2.c5b2319c4843acbff21591e99cccp+12L : inexact-ok
+= log tonearest ldbl-128 0x4p-16384L : -0x2.c5b2319c4843acbff21591e99ccap+12L : inexact-ok
+= log towardzero ldbl-128 0x4p-16384L : -0x2.c5b2319c4843acbff21591e99ccap+12L : inexact-ok
+= log upward ldbl-128 0x4p-16384L : -0x2.c5b2319c4843acbff21591e99ccap+12L : inexact-ok
+= log downward ldbl-96-intel 0x2p-16384L : -0x2.c5bd48bdc7c0c9b8p+12L : inexact-ok
+= log tonearest ldbl-96-intel 0x2p-16384L : -0x2.c5bd48bdc7c0c9b8p+12L : inexact-ok
+= log towardzero ldbl-96-intel 0x2p-16384L : -0x2.c5bd48bdc7c0c9b4p+12L : inexact-ok
+= log upward ldbl-96-intel 0x2p-16384L : -0x2.c5bd48bdc7c0c9b4p+12L : inexact-ok
+= log downward ldbl-96-m68k 0x2p-16384L : -0x2.c5bd48bdc7c0c9b8p+12L : inexact-ok
+= log tonearest ldbl-96-m68k 0x2p-16384L : -0x2.c5bd48bdc7c0c9b8p+12L : inexact-ok
+= log towardzero ldbl-96-m68k 0x2p-16384L : -0x2.c5bd48bdc7c0c9b4p+12L : inexact-ok
+= log upward ldbl-96-m68k 0x2p-16384L : -0x2.c5bd48bdc7c0c9b4p+12L : inexact-ok
+= log downward ldbl-128 0x2p-16384L : -0x2.c5bd48bdc7c0c9b78cd23024d64cp+12L : inexact-ok
+= log tonearest ldbl-128 0x2p-16384L : -0x2.c5bd48bdc7c0c9b78cd23024d64cp+12L : inexact-ok
+= log towardzero ldbl-128 0x2p-16384L : -0x2.c5bd48bdc7c0c9b78cd23024d64ap+12L : inexact-ok
+= log upward ldbl-128 0x2p-16384L : -0x2.c5bd48bdc7c0c9b78cd23024d64ap+12L : inexact-ok
+= log downward dbl-64 0x8p-972 : -0x2.9fa8dcb9092a6p+8 : inexact-ok
+= log tonearest dbl-64 0x8p-972 : -0x2.9fa8dcb9092a6p+8 : inexact-ok
+= log towardzero dbl-64 0x8p-972 : -0x2.9fa8dcb9092a4p+8 : inexact-ok
+= log upward dbl-64 0x8p-972 : -0x2.9fa8dcb9092a4p+8 : inexact-ok
+= log downward ldbl-96-intel 0x8p-972L : -0x2.9fa8dcb9092a538cp+8L : inexact-ok
+= log tonearest ldbl-96-intel 0x8p-972L : -0x2.9fa8dcb9092a538cp+8L : inexact-ok
+= log towardzero ldbl-96-intel 0x8p-972L : -0x2.9fa8dcb9092a5388p+8L : inexact-ok
+= log upward ldbl-96-intel 0x8p-972L : -0x2.9fa8dcb9092a5388p+8L : inexact-ok
+= log downward ldbl-96-m68k 0x8p-972L : -0x2.9fa8dcb9092a538cp+8L : inexact-ok
+= log tonearest ldbl-96-m68k 0x8p-972L : -0x2.9fa8dcb9092a538cp+8L : inexact-ok
+= log towardzero ldbl-96-m68k 0x8p-972L : -0x2.9fa8dcb9092a5388p+8L : inexact-ok
+= log upward ldbl-96-m68k 0x8p-972L : -0x2.9fa8dcb9092a5388p+8L : inexact-ok
+= log downward ldbl-128 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66f4p+8L : inexact-ok
+= log tonearest ldbl-128 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66f2p+8L : inexact-ok
+= log towardzero ldbl-128 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66f2p+8L : inexact-ok
+= log upward ldbl-128 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66f2p+8L : inexact-ok
+= log downward ldbl-128ibm 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca67p+8L : inexact-ok
+= log tonearest ldbl-128ibm 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca67p+8L : inexact-ok
+= log towardzero ldbl-128ibm 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66p+8L : inexact-ok
+= log upward ldbl-128ibm 0x8p-972L : -0x2.9fa8dcb9092a538b3f2ee2ca66p+8L : inexact-ok
+log min_subnorm
+= log downward flt-32 0x8p-152f : -0x6.74768p+4f : inexact-ok
+= log tonearest flt-32 0x8p-152f : -0x6.74768p+4f : inexact-ok
+= log towardzero flt-32 0x8p-152f : -0x6.747678p+4f : inexact-ok
+= log upward flt-32 0x8p-152f : -0x6.747678p+4f : inexact-ok
+= log downward dbl-64 0x8p-152 : -0x6.74767f33d1dc4p+4 : inexact-ok
+= log tonearest dbl-64 0x8p-152 : -0x6.74767f33d1dcp+4 : inexact-ok
+= log towardzero dbl-64 0x8p-152 : -0x6.74767f33d1dcp+4 : inexact-ok
+= log upward dbl-64 0x8p-152 : -0x6.74767f33d1dcp+4 : inexact-ok
+= log downward ldbl-96-intel 0x8p-152L : -0x6.74767f33d1dc1d1p+4L : inexact-ok
+= log tonearest ldbl-96-intel 0x8p-152L : -0x6.74767f33d1dc1d1p+4L : inexact-ok
+= log towardzero ldbl-96-intel 0x8p-152L : -0x6.74767f33d1dc1d08p+4L : inexact-ok
+= log upward ldbl-96-intel 0x8p-152L : -0x6.74767f33d1dc1d08p+4L : inexact-ok
+= log downward ldbl-96-m68k 0x8p-152L : -0x6.74767f33d1dc1d1p+4L : inexact-ok
+= log tonearest ldbl-96-m68k 0x8p-152L : -0x6.74767f33d1dc1d1p+4L : inexact-ok
+= log towardzero ldbl-96-m68k 0x8p-152L : -0x6.74767f33d1dc1d08p+4L : inexact-ok
+= log upward ldbl-96-m68k 0x8p-152L : -0x6.74767f33d1dc1d08p+4L : inexact-ok
+= log downward ldbl-128 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4c8p+4L : inexact-ok
+= log tonearest ldbl-128 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4c4p+4L : inexact-ok
+= log towardzero ldbl-128 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4c4p+4L : inexact-ok
+= log upward ldbl-128 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4c4p+4L : inexact-ok
+= log downward ldbl-128ibm 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a6p+4L : inexact-ok
+= log tonearest ldbl-128ibm 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4p+4L : inexact-ok
+= log towardzero ldbl-128ibm 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4p+4L : inexact-ok
+= log upward ldbl-128ibm 0x8p-152L : -0x6.74767f33d1dc1d0fc8187877a4p+4L : inexact-ok
+= log downward dbl-64 0x4p-1076 : -0x2.e870a88dae388p+8 : inexact-ok
+= log tonearest dbl-64 0x4p-1076 : -0x2.e870a88dae386p+8 : inexact-ok
+= log towardzero dbl-64 0x4p-1076 : -0x2.e870a88dae386p+8 : inexact-ok
+= log upward dbl-64 0x4p-1076 : -0x2.e870a88dae386p+8 : inexact-ok
+= log downward ldbl-96-intel 0x4p-1076L : -0x2.e870a88dae386c74p+8L : inexact-ok
+= log tonearest ldbl-96-intel 0x4p-1076L : -0x2.e870a88dae386c74p+8L : inexact-ok
+= log towardzero ldbl-96-intel 0x4p-1076L : -0x2.e870a88dae386c7p+8L : inexact-ok
+= log upward ldbl-96-intel 0x4p-1076L : -0x2.e870a88dae386c7p+8L : inexact-ok
+= log downward ldbl-96-m68k 0x4p-1076L : -0x2.e870a88dae386c74p+8L : inexact-ok
+= log tonearest ldbl-96-m68k 0x4p-1076L : -0x2.e870a88dae386c74p+8L : inexact-ok
+= log towardzero ldbl-96-m68k 0x4p-1076L : -0x2.e870a88dae386c7p+8L : inexact-ok
+= log upward ldbl-96-m68k 0x4p-1076L : -0x2.e870a88dae386c7p+8L : inexact-ok
+= log downward ldbl-128 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c092p+8L : inexact-ok
+= log tonearest ldbl-128 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c09p+8L : inexact-ok
+= log towardzero ldbl-128 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c09p+8L : inexact-ok
+= log upward ldbl-128 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c09p+8L : inexact-ok
+= log downward ldbl-128ibm 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c1p+8L : inexact-ok
+= log tonearest ldbl-128ibm 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773c1p+8L : inexact-ok
+= log towardzero ldbl-128ibm 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773cp+8L : inexact-ok
+= log upward ldbl-128ibm 0x4p-1076L : -0x2.e870a88dae386c72b4fd4773cp+8L : inexact-ok
+= log downward ldbl-96-intel 0x8p-16448L : -0x2.c86ce2daa80dcdbp+12L : inexact-ok
+= log tonearest ldbl-96-intel 0x8p-16448L : -0x2.c86ce2daa80dcdbp+12L : inexact-ok
+= log towardzero ldbl-96-intel 0x8p-16448L : -0x2.c86ce2daa80dcdacp+12L : inexact-ok
+= log upward ldbl-96-intel 0x8p-16448L : -0x2.c86ce2daa80dcdacp+12L : inexact-ok
+= log downward ldbl-96-m68k 0x8p-16448L : -0x2.c86ce2daa80dcdbp+12L : inexact-ok
+= log tonearest ldbl-96-m68k 0x8p-16448L : -0x2.c86ce2daa80dcdbp+12L : inexact-ok
+= log towardzero ldbl-96-m68k 0x8p-16448L : -0x2.c86ce2daa80dcdacp+12L : inexact-ok
+= log upward ldbl-96-m68k 0x8p-16448L : -0x2.c86ce2daa80dcdacp+12L : inexact-ok
+= log downward ldbl-128 0x8p-16448L : -0x2.c86ce2daa80dcdaf0680827cc35cp+12L : inexact-ok
+= log tonearest ldbl-128 0x8p-16448L : -0x2.c86ce2daa80dcdaf0680827cc35ap+12L : inexact-ok
+= log towardzero ldbl-128 0x8p-16448L : -0x2.c86ce2daa80dcdaf0680827cc35ap+12L : inexact-ok
+= log upward ldbl-128 0x8p-16448L : -0x2.c86ce2daa80dcdaf0680827cc35ap+12L : inexact-ok
+= log downward ldbl-96-m68k 0x4p-16448L : -0x2.c877f9fc278aeaa8p+12L : inexact-ok
+= log tonearest ldbl-96-m68k 0x4p-16448L : -0x2.c877f9fc278aeaa8p+12L : inexact-ok
+= log towardzero ldbl-96-m68k 0x4p-16448L : -0x2.c877f9fc278aeaa4p+12L : inexact-ok
+= log upward ldbl-96-m68k 0x4p-16448L : -0x2.c877f9fc278aeaa4p+12L : inexact-ok
+= log downward ldbl-128 0x4p-16448L : -0x2.c877f9fc278aeaa6a13d20b7fcdcp+12L : inexact-ok
+= log tonearest ldbl-128 0x4p-16448L : -0x2.c877f9fc278aeaa6a13d20b7fcdap+12L : inexact-ok
+= log towardzero ldbl-128 0x4p-16448L : -0x2.c877f9fc278aeaa6a13d20b7fcdap+12L : inexact-ok
+= log upward ldbl-128 0x4p-16448L : -0x2.c877f9fc278aeaa6a13d20b7fcdap+12L : inexact-ok
+= log downward ldbl-128 0x4p-16496L : -0x2.ca8c50440f005913a49acbd2c4e8p+12L : inexact-ok
+= log tonearest ldbl-128 0x4p-16496L : -0x2.ca8c50440f005913a49acbd2c4e6p+12L : inexact-ok
+= log towardzero ldbl-128 0x4p-16496L : -0x2.ca8c50440f005913a49acbd2c4e6p+12L : inexact-ok
+= log upward ldbl-128 0x4p-16496L : -0x2.ca8c50440f005913a49acbd2c4e6p+12L : inexact-ok
+log10 1
+= log10 downward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log10 tonearest flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log10 towardzero flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log10 upward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log10 downward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log10 tonearest dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log10 towardzero dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log10 upward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log10 downward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 upward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 downward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 upward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 downward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 tonearest ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 towardzero ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 upward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 downward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= log10 upward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+log10 0.1
+= log10 downward flt-32 0x1.99999ap-4f : -0x1p+0f : inexact-ok
+= log10 tonearest flt-32 0x1.99999ap-4f : -0x1p+0f : inexact-ok
+= log10 towardzero flt-32 0x1.99999ap-4f : -0xf.fffffp-4f : inexact-ok
+= log10 upward flt-32 0x1.99999ap-4f : -0xf.fffffp-4f : inexact-ok
+= log10 downward dbl-64 0x1.99999ap-4 : -0xf.fffffe43484fp-4 : inexact-ok
+= log10 tonearest dbl-64 0x1.99999ap-4 : -0xf.fffffe43484fp-4 : inexact-ok
+= log10 towardzero dbl-64 0x1.99999ap-4 : -0xf.fffffe43484e8p-4 : inexact-ok
+= log10 upward dbl-64 0x1.99999ap-4 : -0xf.fffffe43484e8p-4 : inexact-ok
+= log10 downward ldbl-96-intel 0x1.99999ap-4L : -0xf.fffffe43484ee53p-4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x1.99999ap-4L : -0xf.fffffe43484ee53p-4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x1.99999ap-4L : -0xf.fffffe43484ee52p-4L : inexact-ok
+= log10 upward ldbl-96-intel 0x1.99999ap-4L : -0xf.fffffe43484ee52p-4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x1.99999ap-4L : -0xf.fffffe43484ee53p-4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x1.99999ap-4L : -0xf.fffffe43484ee53p-4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x1.99999ap-4L : -0xf.fffffe43484ee52p-4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x1.99999ap-4L : -0xf.fffffe43484ee52p-4L : inexact-ok
+= log10 downward ldbl-128 0x1.99999ap-4L : -0xf.fffffe43484ee528a53ddf8bb518p-4L : inexact-ok
+= log10 tonearest ldbl-128 0x1.99999ap-4L : -0xf.fffffe43484ee528a53ddf8bb51p-4L : inexact-ok
+= log10 towardzero ldbl-128 0x1.99999ap-4L : -0xf.fffffe43484ee528a53ddf8bb51p-4L : inexact-ok
+= log10 upward ldbl-128 0x1.99999ap-4L : -0xf.fffffe43484ee528a53ddf8bb51p-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x1.99999ap-4L : -0xf.fffffe43484ee528a53ddf8bb8p-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x1.99999ap-4L : -0xf.fffffe43484ee528a53ddf8bb4p-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x1.99999ap-4L : -0xf.fffffe43484ee528a53ddf8bb4p-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x1.99999ap-4L : -0xf.fffffe43484ee528a53ddf8bb4p-4L : inexact-ok
+= log10 downward flt-32 0x1.999998p-4f : -0x1.000002p+0f : inexact-ok
+= log10 tonearest flt-32 0x1.999998p-4f : -0x1p+0f : inexact-ok
+= log10 towardzero flt-32 0x1.999998p-4f : -0x1p+0f : inexact-ok
+= log10 upward flt-32 0x1.999998p-4f : -0x1p+0f : inexact-ok
+= log10 downward dbl-64 0x1.999998p-4 : -0x1.0000006f2dec9p+0 : inexact-ok
+= log10 tonearest dbl-64 0x1.999998p-4 : -0x1.0000006f2dec9p+0 : inexact-ok
+= log10 towardzero dbl-64 0x1.999998p-4 : -0x1.0000006f2dec8p+0 : inexact-ok
+= log10 upward dbl-64 0x1.999998p-4 : -0x1.0000006f2dec8p+0 : inexact-ok
+= log10 downward ldbl-96-intel 0x1.999998p-4L : -0x1.0000006f2dec8c34p+0L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x1.999998p-4L : -0x1.0000006f2dec8c32p+0L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x1.999998p-4L : -0x1.0000006f2dec8c32p+0L : inexact-ok
+= log10 upward ldbl-96-intel 0x1.999998p-4L : -0x1.0000006f2dec8c32p+0L : inexact-ok
+= log10 downward ldbl-96-m68k 0x1.999998p-4L : -0x1.0000006f2dec8c34p+0L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x1.999998p-4L : -0x1.0000006f2dec8c32p+0L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x1.999998p-4L : -0x1.0000006f2dec8c32p+0L : inexact-ok
+= log10 upward ldbl-96-m68k 0x1.999998p-4L : -0x1.0000006f2dec8c32p+0L : inexact-ok
+= log10 downward ldbl-128 0x1.999998p-4L : -0x1.0000006f2dec8c328a8827b3ace5p+0L : inexact-ok
+= log10 tonearest ldbl-128 0x1.999998p-4L : -0x1.0000006f2dec8c328a8827b3ace4p+0L : inexact-ok
+= log10 towardzero ldbl-128 0x1.999998p-4L : -0x1.0000006f2dec8c328a8827b3ace4p+0L : inexact-ok
+= log10 upward ldbl-128 0x1.999998p-4L : -0x1.0000006f2dec8c328a8827b3ace4p+0L : inexact-ok
+= log10 downward ldbl-128ibm 0x1.999998p-4L : -0x1.0000006f2dec8c328a8827b3adp+0L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x1.999998p-4L : -0x1.0000006f2dec8c328a8827b3adp+0L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x1.999998p-4L : -0x1.0000006f2dec8c328a8827b3ac8p+0L : inexact-ok
+= log10 upward ldbl-128ibm 0x1.999998p-4L : -0x1.0000006f2dec8c328a8827b3ac8p+0L : inexact-ok
+= log10 downward dbl-64 0x1.999999999999ap-4 : -0x1p+0 : inexact-ok
+= log10 tonearest dbl-64 0x1.999999999999ap-4 : -0x1p+0 : inexact-ok
+= log10 towardzero dbl-64 0x1.999999999999ap-4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= log10 upward dbl-64 0x1.999999999999ap-4 : -0xf.ffffffffffff8p-4 : inexact-ok
+= log10 downward ldbl-96-intel 0x1.999999999999ap-4L : -0xf.ffffffffffffe44p-4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x1.999999999999ap-4L : -0xf.ffffffffffffe43p-4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x1.999999999999ap-4L : -0xf.ffffffffffffe43p-4L : inexact-ok
+= log10 upward ldbl-96-intel 0x1.999999999999ap-4L : -0xf.ffffffffffffe43p-4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x1.999999999999ap-4L : -0xf.ffffffffffffe44p-4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x1.999999999999ap-4L : -0xf.ffffffffffffe43p-4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x1.999999999999ap-4L : -0xf.ffffffffffffe43p-4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x1.999999999999ap-4L : -0xf.ffffffffffffe43p-4L : inexact-ok
+= log10 downward ldbl-128 0x1.999999999999ap-4L : -0xf.ffffffffffffe43484ead91af208p-4L : inexact-ok
+= log10 tonearest ldbl-128 0x1.999999999999ap-4L : -0xf.ffffffffffffe43484ead91af2p-4L : inexact-ok
+= log10 towardzero ldbl-128 0x1.999999999999ap-4L : -0xf.ffffffffffffe43484ead91af2p-4L : inexact-ok
+= log10 upward ldbl-128 0x1.999999999999ap-4L : -0xf.ffffffffffffe43484ead91af2p-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x1.999999999999ap-4L : -0xf.ffffffffffffe43484ead91af4p-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x1.999999999999ap-4L : -0xf.ffffffffffffe43484ead91af4p-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x1.999999999999ap-4L : -0xf.ffffffffffffe43484ead91afp-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x1.999999999999ap-4L : -0xf.ffffffffffffe43484ead91afp-4L : inexact-ok
+= log10 downward dbl-64 0x1.9999999999999p-4 : -0x1.0000000000001p+0 : inexact-ok
+= log10 tonearest dbl-64 0x1.9999999999999p-4 : -0x1p+0 : inexact-ok
+= log10 towardzero dbl-64 0x1.9999999999999p-4 : -0x1p+0 : inexact-ok
+= log10 upward dbl-64 0x1.9999999999999p-4 : -0x1p+0 : inexact-ok
+= log10 downward ldbl-96-intel 0x1.9999999999999p-4L : -0x1.000000000000029cp+0L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x1.9999999999999p-4L : -0x1.000000000000029cp+0L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x1.9999999999999p-4L : -0x1.000000000000029ap+0L : inexact-ok
+= log10 upward ldbl-96-intel 0x1.9999999999999p-4L : -0x1.000000000000029ap+0L : inexact-ok
+= log10 downward ldbl-96-m68k 0x1.9999999999999p-4L : -0x1.000000000000029cp+0L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x1.9999999999999p-4L : -0x1.000000000000029cp+0L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x1.9999999999999p-4L : -0x1.000000000000029ap+0L : inexact-ok
+= log10 upward ldbl-96-m68k 0x1.9999999999999p-4L : -0x1.000000000000029ap+0L : inexact-ok
+= log10 downward ldbl-128 0x1.9999999999999p-4L : -0x1.000000000000029b1389fba5795dp+0L : inexact-ok
+= log10 tonearest ldbl-128 0x1.9999999999999p-4L : -0x1.000000000000029b1389fba5795cp+0L : inexact-ok
+= log10 towardzero ldbl-128 0x1.9999999999999p-4L : -0x1.000000000000029b1389fba5795cp+0L : inexact-ok
+= log10 upward ldbl-128 0x1.9999999999999p-4L : -0x1.000000000000029b1389fba5795cp+0L : inexact-ok
+= log10 downward ldbl-128ibm 0x1.9999999999999p-4L : -0x1.000000000000029b1389fba5798p+0L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x1.9999999999999p-4L : -0x1.000000000000029b1389fba5798p+0L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x1.9999999999999p-4L : -0x1.000000000000029b1389fba579p+0L : inexact-ok
+= log10 upward ldbl-128ibm 0x1.9999999999999p-4L : -0x1.000000000000029b1389fba579p+0L : inexact-ok
+= log10 downward ldbl-96-intel 0x1.999999999999999ap-4L : -0x1p+0L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x1.999999999999999ap-4L : -0x1p+0L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x1.999999999999999ap-4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= log10 upward ldbl-96-intel 0x1.999999999999999ap-4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x1.999999999999999ap-4L : -0x1p+0L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x1.999999999999999ap-4L : -0x1p+0L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x1.999999999999999ap-4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x1.999999999999999ap-4L : -0xf.fffffffffffffffp-4L : inexact-ok
+= log10 downward ldbl-128 0x1.999999999999999ap-4L : -0xf.fffffffffffffffe43484ead91bp-4L : inexact-ok
+= log10 tonearest ldbl-128 0x1.999999999999999ap-4L : -0xf.fffffffffffffffe43484ead91bp-4L : inexact-ok
+= log10 towardzero ldbl-128 0x1.999999999999999ap-4L : -0xf.fffffffffffffffe43484ead91a8p-4L : inexact-ok
+= log10 upward ldbl-128 0x1.999999999999999ap-4L : -0xf.fffffffffffffffe43484ead91a8p-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x1.999999999999999ap-4L : -0xf.fffffffffffffffe43484ead94p-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x1.999999999999999ap-4L : -0xf.fffffffffffffffe43484ead9p-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x1.999999999999999ap-4L : -0xf.fffffffffffffffe43484ead9p-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x1.999999999999999ap-4L : -0xf.fffffffffffffffe43484ead9p-4L : inexact-ok
+= log10 downward ldbl-96-intel 0x1.9999999999999998p-4L : -0x1.0000000000000002p+0L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x1.9999999999999998p-4L : -0x1p+0L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x1.9999999999999998p-4L : -0x1p+0L : inexact-ok
+= log10 upward ldbl-96-intel 0x1.9999999999999998p-4L : -0x1p+0L : inexact-ok
+= log10 downward ldbl-96-m68k 0x1.9999999999999998p-4L : -0x1.0000000000000002p+0L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x1.9999999999999998p-4L : -0x1p+0L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x1.9999999999999998p-4L : -0x1p+0L : inexact-ok
+= log10 upward ldbl-96-m68k 0x1.9999999999999998p-4L : -0x1p+0L : inexact-ok
+= log10 downward ldbl-128 0x1.9999999999999998p-4L : -0x1.00000000000000006f2dec549b94p+0L : inexact-ok
+= log10 tonearest ldbl-128 0x1.9999999999999998p-4L : -0x1.00000000000000006f2dec549b94p+0L : inexact-ok
+= log10 towardzero ldbl-128 0x1.9999999999999998p-4L : -0x1.00000000000000006f2dec549b93p+0L : inexact-ok
+= log10 upward ldbl-128 0x1.9999999999999998p-4L : -0x1.00000000000000006f2dec549b93p+0L : inexact-ok
+= log10 downward ldbl-128ibm 0x1.9999999999999998p-4L : -0x1.00000000000000006f2dec549cp+0L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x1.9999999999999998p-4L : -0x1.00000000000000006f2dec549b8p+0L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x1.9999999999999998p-4L : -0x1.00000000000000006f2dec549b8p+0L : inexact-ok
+= log10 upward ldbl-128ibm 0x1.9999999999999998p-4L : -0x1.00000000000000006f2dec549b8p+0L : inexact-ok
+= log10 downward ldbl-128 0x1.999999999999999999999999999ap-4L : -0x1p+0L : inexact-ok
+= log10 tonearest ldbl-128 0x1.999999999999999999999999999ap-4L : -0x1p+0L : inexact-ok
+= log10 towardzero ldbl-128 0x1.999999999999999999999999999ap-4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log10 upward ldbl-128 0x1.999999999999999999999999999ap-4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log10 downward ldbl-128 0x1.9999999999999999999999999999p-4L : -0x1p+0L : inexact-ok
+= log10 tonearest ldbl-128 0x1.9999999999999999999999999999p-4L : -0x1p+0L : inexact-ok
+= log10 towardzero ldbl-128 0x1.9999999999999999999999999999p-4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log10 upward ldbl-128 0x1.9999999999999999999999999999p-4L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log10 downward ldbl-128 0x1.9999999999999999999999999ap-4L : -0xf.fffffffffffffffffffffffffe48p-4L : inexact-ok
+= log10 tonearest ldbl-128 0x1.9999999999999999999999999ap-4L : -0xf.fffffffffffffffffffffffffe4p-4L : inexact-ok
+= log10 towardzero ldbl-128 0x1.9999999999999999999999999ap-4L : -0xf.fffffffffffffffffffffffffe4p-4L : inexact-ok
+= log10 upward ldbl-128 0x1.9999999999999999999999999ap-4L : -0xf.fffffffffffffffffffffffffe4p-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x1.9999999999999999999999999ap-4L : -0x1p+0L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x1.9999999999999999999999999ap-4L : -0x1p+0L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x1.9999999999999999999999999ap-4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x1.9999999999999999999999999ap-4L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= log10 downward ldbl-128 0x1.999999999999999999999999998p-4L : -0x1.0000000000000000000000000007p+0L : inexact-ok
+= log10 tonearest ldbl-128 0x1.999999999999999999999999998p-4L : -0x1.0000000000000000000000000007p+0L : inexact-ok
+= log10 towardzero ldbl-128 0x1.999999999999999999999999998p-4L : -0x1.0000000000000000000000000006p+0L : inexact-ok
+= log10 upward ldbl-128 0x1.999999999999999999999999998p-4L : -0x1.0000000000000000000000000006p+0L : inexact-ok
+= log10 downward ldbl-128ibm 0x1.999999999999999999999999998p-4L : -0x1.000000000000000000000000008p+0L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x1.999999999999999999999999998p-4L : -0x1p+0L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x1.999999999999999999999999998p-4L : -0x1p+0L : inexact-ok
+= log10 upward ldbl-128ibm 0x1.999999999999999999999999998p-4L : -0x1p+0L : inexact-ok
+log10 10.0
+= log10 downward flt-32 0xap+0f : 0x1p+0f : inexact-ok
+= log10 tonearest flt-32 0xap+0f : 0x1p+0f : inexact-ok
+= log10 towardzero flt-32 0xap+0f : 0x1p+0f : inexact-ok
+= log10 upward flt-32 0xap+0f : 0x1p+0f : inexact-ok
+= log10 downward dbl-64 0xap+0 : 0x1p+0 : inexact-ok
+= log10 tonearest dbl-64 0xap+0 : 0x1p+0 : inexact-ok
+= log10 towardzero dbl-64 0xap+0 : 0x1p+0 : inexact-ok
+= log10 upward dbl-64 0xap+0 : 0x1p+0 : inexact-ok
+= log10 downward ldbl-96-intel 0xap+0L : 0x1p+0L : inexact-ok
+= log10 tonearest ldbl-96-intel 0xap+0L : 0x1p+0L : inexact-ok
+= log10 towardzero ldbl-96-intel 0xap+0L : 0x1p+0L : inexact-ok
+= log10 upward ldbl-96-intel 0xap+0L : 0x1p+0L : inexact-ok
+= log10 downward ldbl-96-m68k 0xap+0L : 0x1p+0L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0xap+0L : 0x1p+0L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0xap+0L : 0x1p+0L : inexact-ok
+= log10 upward ldbl-96-m68k 0xap+0L : 0x1p+0L : inexact-ok
+= log10 downward ldbl-128 0xap+0L : 0x1p+0L : inexact-ok
+= log10 tonearest ldbl-128 0xap+0L : 0x1p+0L : inexact-ok
+= log10 towardzero ldbl-128 0xap+0L : 0x1p+0L : inexact-ok
+= log10 upward ldbl-128 0xap+0L : 0x1p+0L : inexact-ok
+= log10 downward ldbl-128ibm 0xap+0L : 0x1p+0L : inexact-ok
+= log10 tonearest ldbl-128ibm 0xap+0L : 0x1p+0L : inexact-ok
+= log10 towardzero ldbl-128ibm 0xap+0L : 0x1p+0L : inexact-ok
+= log10 upward ldbl-128ibm 0xap+0L : 0x1p+0L : inexact-ok
+log10 100.0
+= log10 downward flt-32 0x6.4p+4f : 0x2p+0f : inexact-ok
+= log10 tonearest flt-32 0x6.4p+4f : 0x2p+0f : inexact-ok
+= log10 towardzero flt-32 0x6.4p+4f : 0x2p+0f : inexact-ok
+= log10 upward flt-32 0x6.4p+4f : 0x2p+0f : inexact-ok
+= log10 downward dbl-64 0x6.4p+4 : 0x2p+0 : inexact-ok
+= log10 tonearest dbl-64 0x6.4p+4 : 0x2p+0 : inexact-ok
+= log10 towardzero dbl-64 0x6.4p+4 : 0x2p+0 : inexact-ok
+= log10 upward dbl-64 0x6.4p+4 : 0x2p+0 : inexact-ok
+= log10 downward ldbl-96-intel 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 upward ldbl-96-intel 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 downward ldbl-96-m68k 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 upward ldbl-96-m68k 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 downward ldbl-128 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 tonearest ldbl-128 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 towardzero ldbl-128 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 upward ldbl-128 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 downward ldbl-128ibm 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x6.4p+4L : 0x2p+0L : inexact-ok
+= log10 upward ldbl-128ibm 0x6.4p+4L : 0x2p+0L : inexact-ok
+log10 10000.0
+= log10 downward flt-32 0x2.71p+12f : 0x4p+0f : inexact-ok
+= log10 tonearest flt-32 0x2.71p+12f : 0x4p+0f : inexact-ok
+= log10 towardzero flt-32 0x2.71p+12f : 0x4p+0f : inexact-ok
+= log10 upward flt-32 0x2.71p+12f : 0x4p+0f : inexact-ok
+= log10 downward dbl-64 0x2.71p+12 : 0x4p+0 : inexact-ok
+= log10 tonearest dbl-64 0x2.71p+12 : 0x4p+0 : inexact-ok
+= log10 towardzero dbl-64 0x2.71p+12 : 0x4p+0 : inexact-ok
+= log10 upward dbl-64 0x2.71p+12 : 0x4p+0 : inexact-ok
+= log10 downward ldbl-96-intel 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 upward ldbl-96-intel 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 downward ldbl-96-m68k 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 upward ldbl-96-m68k 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 downward ldbl-128 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 tonearest ldbl-128 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 towardzero ldbl-128 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 upward ldbl-128 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 downward ldbl-128ibm 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x2.71p+12L : 0x4p+0L : inexact-ok
+= log10 upward ldbl-128ibm 0x2.71p+12L : 0x4p+0L : inexact-ok
+log10 e
+= log10 downward flt-32 0x2.b7e154p+0f : 0x6.f2dec8p-4f : inexact-ok
+= log10 tonearest flt-32 0x2.b7e154p+0f : 0x6.f2dec8p-4f : inexact-ok
+= log10 towardzero flt-32 0x2.b7e154p+0f : 0x6.f2dec8p-4f : inexact-ok
+= log10 upward flt-32 0x2.b7e154p+0f : 0x6.f2dedp-4f : inexact-ok
+= log10 downward dbl-64 0x2.b7e154p+0 : 0x6.f2decbf90caap-4 : inexact-ok
+= log10 tonearest dbl-64 0x2.b7e154p+0 : 0x6.f2decbf90caap-4 : inexact-ok
+= log10 towardzero dbl-64 0x2.b7e154p+0 : 0x6.f2decbf90caap-4 : inexact-ok
+= log10 upward dbl-64 0x2.b7e154p+0 : 0x6.f2decbf90caa4p-4 : inexact-ok
+= log10 downward ldbl-96-intel 0x2.b7e154p+0L : 0x6.f2decbf90caa02dp-4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x2.b7e154p+0L : 0x6.f2decbf90caa02d8p-4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x2.b7e154p+0L : 0x6.f2decbf90caa02dp-4L : inexact-ok
+= log10 upward ldbl-96-intel 0x2.b7e154p+0L : 0x6.f2decbf90caa02d8p-4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x2.b7e154p+0L : 0x6.f2decbf90caa02dp-4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x2.b7e154p+0L : 0x6.f2decbf90caa02d8p-4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x2.b7e154p+0L : 0x6.f2decbf90caa02dp-4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x2.b7e154p+0L : 0x6.f2decbf90caa02d8p-4L : inexact-ok
+= log10 downward ldbl-128 0x2.b7e154p+0L : 0x6.f2decbf90caa02d54f7e1f665b18p-4L : inexact-ok
+= log10 tonearest ldbl-128 0x2.b7e154p+0L : 0x6.f2decbf90caa02d54f7e1f665b1cp-4L : inexact-ok
+= log10 towardzero ldbl-128 0x2.b7e154p+0L : 0x6.f2decbf90caa02d54f7e1f665b18p-4L : inexact-ok
+= log10 upward ldbl-128 0x2.b7e154p+0L : 0x6.f2decbf90caa02d54f7e1f665b1cp-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x2.b7e154p+0L : 0x6.f2decbf90caa02d54f7e1f665ap-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x2.b7e154p+0L : 0x6.f2decbf90caa02d54f7e1f665cp-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x2.b7e154p+0L : 0x6.f2decbf90caa02d54f7e1f665ap-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x2.b7e154p+0L : 0x6.f2decbf90caa02d54f7e1f665cp-4L : inexact-ok
+= log10 downward flt-32 0x2.b7e15p+0f : 0x6.f2decp-4f : inexact-ok
+= log10 tonearest flt-32 0x2.b7e15p+0f : 0x6.f2decp-4f : inexact-ok
+= log10 towardzero flt-32 0x2.b7e15p+0f : 0x6.f2decp-4f : inexact-ok
+= log10 upward flt-32 0x2.b7e15p+0f : 0x6.f2dec8p-4f : inexact-ok
+= log10 downward dbl-64 0x2.b7e15p+0 : 0x6.f2dec1bf69104p-4 : inexact-ok
+= log10 tonearest dbl-64 0x2.b7e15p+0 : 0x6.f2dec1bf69108p-4 : inexact-ok
+= log10 towardzero dbl-64 0x2.b7e15p+0 : 0x6.f2dec1bf69104p-4 : inexact-ok
+= log10 upward dbl-64 0x2.b7e15p+0 : 0x6.f2dec1bf69108p-4 : inexact-ok
+= log10 downward ldbl-96-intel 0x2.b7e15p+0L : 0x6.f2dec1bf69107298p-4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x2.b7e15p+0L : 0x6.f2dec1bf691072ap-4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x2.b7e15p+0L : 0x6.f2dec1bf69107298p-4L : inexact-ok
+= log10 upward ldbl-96-intel 0x2.b7e15p+0L : 0x6.f2dec1bf691072ap-4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x2.b7e15p+0L : 0x6.f2dec1bf69107298p-4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x2.b7e15p+0L : 0x6.f2dec1bf691072ap-4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x2.b7e15p+0L : 0x6.f2dec1bf69107298p-4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x2.b7e15p+0L : 0x6.f2dec1bf691072ap-4L : inexact-ok
+= log10 downward ldbl-128 0x2.b7e15p+0L : 0x6.f2dec1bf6910729e025b16fcf01cp-4L : inexact-ok
+= log10 tonearest ldbl-128 0x2.b7e15p+0L : 0x6.f2dec1bf6910729e025b16fcf01cp-4L : inexact-ok
+= log10 towardzero ldbl-128 0x2.b7e15p+0L : 0x6.f2dec1bf6910729e025b16fcf01cp-4L : inexact-ok
+= log10 upward ldbl-128 0x2.b7e15p+0L : 0x6.f2dec1bf6910729e025b16fcf02p-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x2.b7e15p+0L : 0x6.f2dec1bf6910729e025b16fcfp-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x2.b7e15p+0L : 0x6.f2dec1bf6910729e025b16fcfp-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x2.b7e15p+0L : 0x6.f2dec1bf6910729e025b16fcfp-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x2.b7e15p+0L : 0x6.f2dec1bf6910729e025b16fcf2p-4L : inexact-ok
+= log10 downward dbl-64 0x2.b7e151628aed4p+0 : 0x6.f2dec549b943cp-4 : inexact-ok
+= log10 tonearest dbl-64 0x2.b7e151628aed4p+0 : 0x6.f2dec549b943cp-4 : inexact-ok
+= log10 towardzero dbl-64 0x2.b7e151628aed4p+0 : 0x6.f2dec549b943cp-4 : inexact-ok
+= log10 upward dbl-64 0x2.b7e151628aed4p+0 : 0x6.f2dec549b944p-4 : inexact-ok
+= log10 downward ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3dp-4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d8p-4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3dp-4L : inexact-ok
+= log10 upward ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d8p-4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3dp-4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d8p-4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3dp-4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d8p-4L : inexact-ok
+= log10 downward ldbl-128 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d5cde502b1ap-4L : inexact-ok
+= log10 tonearest ldbl-128 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d5cde502b1a004p-4L : inexact-ok
+= log10 towardzero ldbl-128 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d5cde502b1ap-4L : inexact-ok
+= log10 upward ldbl-128 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d5cde502b1a004p-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d5cde502b1ap-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d5cde502b1ap-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d5cde502b1ap-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x6.f2dec549b943c3d5cde502b1a2p-4L : inexact-ok
+= log10 downward dbl-64 0x2.b7e151628aed2p+0 : 0x6.f2dec549b9434p-4 : inexact-ok
+= log10 tonearest dbl-64 0x2.b7e151628aed2p+0 : 0x6.f2dec549b9438p-4 : inexact-ok
+= log10 towardzero dbl-64 0x2.b7e151628aed2p+0 : 0x6.f2dec549b9434p-4 : inexact-ok
+= log10 upward dbl-64 0x2.b7e151628aed2p+0 : 0x6.f2dec549b9438p-4 : inexact-ok
+= log10 downward ldbl-96-intel 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208p-4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208p-4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208p-4L : inexact-ok
+= log10 upward ldbl-96-intel 0x2.b7e151628aed2p+0L : 0x6.f2dec549b943721p-4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208p-4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208p-4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208p-4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0x6.f2dec549b943721p-4L : inexact-ok
+= log10 downward ldbl-128 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208b105fe9ad56p-4L : inexact-ok
+= log10 tonearest ldbl-128 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208b105fe9ad564p-4L : inexact-ok
+= log10 towardzero ldbl-128 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208b105fe9ad56p-4L : inexact-ok
+= log10 upward ldbl-128 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208b105fe9ad564p-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208b105fe9ad4p-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208b105fe9ad6p-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208b105fe9ad4p-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x2.b7e151628aed2p+0L : 0x6.f2dec549b9437208b105fe9ad6p-4L : inexact-ok
+= log10 downward ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438ca8p-4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cbp-4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438ca8p-4L : inexact-ok
+= log10 upward ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cbp-4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438ca8p-4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cbp-4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438ca8p-4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cbp-4L : inexact-ok
+= log10 downward ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cacde4d208fc208p-4L : inexact-ok
+= log10 tonearest ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cacde4d208fc20cp-4L : inexact-ok
+= log10 towardzero ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cacde4d208fc208p-4L : inexact-ok
+= log10 upward ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cacde4d208fc20cp-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cacde4d208fc2p-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cacde4d208fc2p-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cacde4d208fc2p-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x6.f2dec549b9438cacde4d208fc4p-4L : inexact-ok
+= log10 downward ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438cap-4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438cap-4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438cap-4L : inexact-ok
+= log10 upward ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438ca8p-4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438cap-4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438cap-4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438cap-4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438ca8p-4L : inexact-ok
+= log10 downward ldbl-128 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438ca2a4a984af3f3p-4L : inexact-ok
+= log10 tonearest ldbl-128 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438ca2a4a984af3f3p-4L : inexact-ok
+= log10 towardzero ldbl-128 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438ca2a4a984af3f3p-4L : inexact-ok
+= log10 upward ldbl-128 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438ca2a4a984af3f34p-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438ca2a4a984af3ep-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438ca2a4a984af4p-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438ca2a4a984af3ep-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0x6.f2dec549b9438ca2a4a984af4p-4L : inexact-ok
+= log10 downward ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x6.f2dec549b9438ca9aadd557d69ap-4L : inexact-ok
+= log10 tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x6.f2dec549b9438ca9aadd557d69ap-4L : inexact-ok
+= log10 towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x6.f2dec549b9438ca9aadd557d69ap-4L : inexact-ok
+= log10 upward ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x6.f2dec549b9438ca9aadd557d69a4p-4L : inexact-ok
+= log10 downward ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0x6.f2dec549b9438ca9aadd557d699cp-4L : inexact-ok
+= log10 tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0x6.f2dec549b9438ca9aadd557d699cp-4L : inexact-ok
+= log10 towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0x6.f2dec549b9438ca9aadd557d699cp-4L : inexact-ok
+= log10 upward ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0x6.f2dec549b9438ca9aadd557d69ap-4L : inexact-ok
+= log10 downward ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x6.f2dec549b9438ca9aadd557d69b8p-4L : inexact-ok
+= log10 tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x6.f2dec549b9438ca9aadd557d69bcp-4L : inexact-ok
+= log10 towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x6.f2dec549b9438ca9aadd557d69b8p-4L : inexact-ok
+= log10 upward ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x6.f2dec549b9438ca9aadd557d69bcp-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x6.f2dec549b9438ca9aadd557d68p-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x6.f2dec549b9438ca9aadd557d6ap-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x6.f2dec549b9438ca9aadd557d68p-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x6.f2dec549b9438ca9aadd557d6ap-4L : inexact-ok
+= log10 downward ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0x6.f2dec549b9438ca9aadd557d672cp-4L : inexact-ok
+= log10 tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0x6.f2dec549b9438ca9aadd557d672cp-4L : inexact-ok
+= log10 towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0x6.f2dec549b9438ca9aadd557d672cp-4L : inexact-ok
+= log10 upward ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0x6.f2dec549b9438ca9aadd557d673p-4L : inexact-ok
+= log10 downward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0x6.f2dec549b9438ca9aadd557d66p-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0x6.f2dec549b9438ca9aadd557d68p-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0x6.f2dec549b9438ca9aadd557d66p-4L : inexact-ok
+= log10 upward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0x6.f2dec549b9438ca9aadd557d68p-4L : inexact-ok
+log10 0.75
+= log10 downward flt-32 0xcp-4f : -0x1.ffbfc4p-4f : inexact-ok
+= log10 tonearest flt-32 0xcp-4f : -0x1.ffbfc2p-4f : inexact-ok
+= log10 towardzero flt-32 0xcp-4f : -0x1.ffbfc2p-4f : inexact-ok
+= log10 upward flt-32 0xcp-4f : -0x1.ffbfc2p-4f : inexact-ok
+= log10 downward dbl-64 0xcp-4 : -0x1.ffbfc2bbc7804p-4 : inexact-ok
+= log10 tonearest dbl-64 0xcp-4 : -0x1.ffbfc2bbc7803p-4 : inexact-ok
+= log10 towardzero dbl-64 0xcp-4 : -0x1.ffbfc2bbc7803p-4 : inexact-ok
+= log10 upward dbl-64 0xcp-4 : -0x1.ffbfc2bbc7803p-4 : inexact-ok
+= log10 downward ldbl-96-intel 0xcp-4L : -0x1.ffbfc2bbc780375ap-4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0xcp-4L : -0x1.ffbfc2bbc7803758p-4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0xcp-4L : -0x1.ffbfc2bbc7803758p-4L : inexact-ok
+= log10 upward ldbl-96-intel 0xcp-4L : -0x1.ffbfc2bbc7803758p-4L : inexact-ok
+= log10 downward ldbl-96-m68k 0xcp-4L : -0x1.ffbfc2bbc780375ap-4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0xcp-4L : -0x1.ffbfc2bbc7803758p-4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0xcp-4L : -0x1.ffbfc2bbc7803758p-4L : inexact-ok
+= log10 upward ldbl-96-m68k 0xcp-4L : -0x1.ffbfc2bbc7803758p-4L : inexact-ok
+= log10 downward ldbl-128 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84f39p-4L : inexact-ok
+= log10 tonearest ldbl-128 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84f38p-4L : inexact-ok
+= log10 towardzero ldbl-128 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84f38p-4L : inexact-ok
+= log10 upward ldbl-128 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84f38p-4L : inexact-ok
+= log10 downward ldbl-128ibm 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84f8p-4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84fp-4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84fp-4L : inexact-ok
+= log10 upward ldbl-128ibm 0xcp-4L : -0x1.ffbfc2bbc780375837c4b0b84fp-4L : inexact-ok
+log10 min
+= log10 downward flt-32 0x4p-128f : -0x2.5ee064p+4f : inexact-ok
+= log10 tonearest flt-32 0x4p-128f : -0x2.5ee06p+4f : inexact-ok
+= log10 towardzero flt-32 0x4p-128f : -0x2.5ee06p+4f : inexact-ok
+= log10 upward flt-32 0x4p-128f : -0x2.5ee06p+4f : inexact-ok
+= log10 downward dbl-64 0x4p-128 : -0x2.5ee0606b9f82ep+4 : inexact-ok
+= log10 tonearest dbl-64 0x4p-128 : -0x2.5ee0606b9f82ep+4 : inexact-ok
+= log10 towardzero dbl-64 0x4p-128 : -0x2.5ee0606b9f82cp+4 : inexact-ok
+= log10 upward dbl-64 0x4p-128 : -0x2.5ee0606b9f82cp+4 : inexact-ok
+= log10 downward ldbl-96-intel 0x4p-128L : -0x2.5ee0606b9f82deecp+4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 upward ldbl-96-intel 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x4p-128L : -0x2.5ee0606b9f82deecp+4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x4p-128L : -0x2.5ee0606b9f82dee8p+4L : inexact-ok
+= log10 downward ldbl-128 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156d3ap+4L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156d3ap+4L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156d38p+4L : inexact-ok
+= log10 upward ldbl-128 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156d38p+4L : inexact-ok
+= log10 downward ldbl-128ibm 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156ep+4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156dp+4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156dp+4L : inexact-ok
+= log10 upward ldbl-128ibm 0x4p-128L : -0x2.5ee0606b9f82dee8b52cd1156dp+4L : inexact-ok
+= log10 downward dbl-64 0x4p-1024 : -0x1.33a7146f72a42p+8 : inexact-ok
+= log10 tonearest dbl-64 0x4p-1024 : -0x1.33a7146f72a42p+8 : inexact-ok
+= log10 towardzero dbl-64 0x4p-1024 : -0x1.33a7146f72a41p+8 : inexact-ok
+= log10 upward dbl-64 0x4p-1024 : -0x1.33a7146f72a41p+8 : inexact-ok
+= log10 downward ldbl-96-intel 0x4p-1024L : -0x1.33a7146f72a41f3ap+8L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x4p-1024L : -0x1.33a7146f72a41f3ap+8L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x4p-1024L : -0x1.33a7146f72a41f38p+8L : inexact-ok
+= log10 upward ldbl-96-intel 0x4p-1024L : -0x1.33a7146f72a41f38p+8L : inexact-ok
+= log10 downward ldbl-96-m68k 0x4p-1024L : -0x1.33a7146f72a41f3ap+8L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x4p-1024L : -0x1.33a7146f72a41f3ap+8L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x4p-1024L : -0x1.33a7146f72a41f38p+8L : inexact-ok
+= log10 upward ldbl-96-m68k 0x4p-1024L : -0x1.33a7146f72a41f38p+8L : inexact-ok
+= log10 downward ldbl-128 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6aeep+8L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6aedp+8L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6aedp+8L : inexact-ok
+= log10 upward ldbl-128 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6aedp+8L : inexact-ok
+= log10 downward ldbl-128ibm 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6bp+8L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6bp+8L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6a8p+8L : inexact-ok
+= log10 upward ldbl-128ibm 0x4p-1024L : -0x1.33a7146f72a41f39868329fe6a8p+8L : inexact-ok
+= log10 downward ldbl-96-intel 0x4p-16384L : -0x1.343793004f503232p+12L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x4p-16384L : -0x1.343793004f503232p+12L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x4p-16384L : -0x1.343793004f50323p+12L : inexact-ok
+= log10 upward ldbl-96-intel 0x4p-16384L : -0x1.343793004f50323p+12L : inexact-ok
+= log10 downward ldbl-96-m68k 0x4p-16384L : -0x1.343793004f503232p+12L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x4p-16384L : -0x1.343793004f503232p+12L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x4p-16384L : -0x1.343793004f50323p+12L : inexact-ok
+= log10 upward ldbl-96-m68k 0x4p-16384L : -0x1.343793004f50323p+12L : inexact-ok
+= log10 downward ldbl-128 0x4p-16384L : -0x1.343793004f503231a589bac27c39p+12L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-16384L : -0x1.343793004f503231a589bac27c38p+12L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-16384L : -0x1.343793004f503231a589bac27c38p+12L : inexact-ok
+= log10 upward ldbl-128 0x4p-16384L : -0x1.343793004f503231a589bac27c38p+12L : inexact-ok
+= log10 downward ldbl-96-intel 0x2p-16384L : -0x1.343c6405237810b2p+12L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x2p-16384L : -0x1.343c6405237810b2p+12L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x2p-16384L : -0x1.343c6405237810bp+12L : inexact-ok
+= log10 upward ldbl-96-intel 0x2p-16384L : -0x1.343c6405237810bp+12L : inexact-ok
+= log10 downward ldbl-96-m68k 0x2p-16384L : -0x1.343c6405237810b2p+12L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x2p-16384L : -0x1.343c6405237810b2p+12L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x2p-16384L : -0x1.343c6405237810bp+12L : inexact-ok
+= log10 upward ldbl-96-m68k 0x2p-16384L : -0x1.343c6405237810bp+12L : inexact-ok
+= log10 downward ldbl-128 0x2p-16384L : -0x1.343c6405237810b1624e370d4999p+12L : inexact-ok
+= log10 tonearest ldbl-128 0x2p-16384L : -0x1.343c6405237810b1624e370d4999p+12L : inexact-ok
+= log10 towardzero ldbl-128 0x2p-16384L : -0x1.343c6405237810b1624e370d4998p+12L : inexact-ok
+= log10 upward ldbl-128 0x2p-16384L : -0x1.343c6405237810b1624e370d4998p+12L : inexact-ok
+= log10 downward dbl-64 0x8p-972 : -0x1.23b2b470ae932p+8 : inexact-ok
+= log10 tonearest dbl-64 0x8p-972 : -0x1.23b2b470ae932p+8 : inexact-ok
+= log10 towardzero dbl-64 0x8p-972 : -0x1.23b2b470ae931p+8 : inexact-ok
+= log10 upward dbl-64 0x8p-972 : -0x1.23b2b470ae931p+8 : inexact-ok
+= log10 downward ldbl-96-intel 0x8p-972L : -0x1.23b2b470ae93181ap+8L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 upward ldbl-96-intel 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 downward ldbl-96-m68k 0x8p-972L : -0x1.23b2b470ae93181ap+8L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 upward ldbl-96-m68k 0x8p-972L : -0x1.23b2b470ae931818p+8L : inexact-ok
+= log10 downward ldbl-128 0x8p-972L : -0x1.23b2b470ae9318183ba772361bbep+8L : inexact-ok
+= log10 tonearest ldbl-128 0x8p-972L : -0x1.23b2b470ae9318183ba772361bbdp+8L : inexact-ok
+= log10 towardzero ldbl-128 0x8p-972L : -0x1.23b2b470ae9318183ba772361bbdp+8L : inexact-ok
+= log10 upward ldbl-128 0x8p-972L : -0x1.23b2b470ae9318183ba772361bbdp+8L : inexact-ok
+= log10 downward ldbl-128ibm 0x8p-972L : -0x1.23b2b470ae9318183ba772361cp+8L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x8p-972L : -0x1.23b2b470ae9318183ba772361b8p+8L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x8p-972L : -0x1.23b2b470ae9318183ba772361b8p+8L : inexact-ok
+= log10 upward ldbl-128ibm 0x8p-972L : -0x1.23b2b470ae9318183ba772361b8p+8L : inexact-ok
+log10 min_subnorm
+= log10 downward flt-32 0x8p-152f : -0x2.cda7dp+4f : inexact-ok
+= log10 tonearest flt-32 0x8p-152f : -0x2.cda7dp+4f : inexact-ok
+= log10 towardzero flt-32 0x8p-152f : -0x2.cda7ccp+4f : inexact-ok
+= log10 upward flt-32 0x8p-152f : -0x2.cda7ccp+4f : inexact-ok
+= log10 downward dbl-64 0x8p-152 : -0x2.cda7cf7b34806p+4 : inexact-ok
+= log10 tonearest dbl-64 0x8p-152 : -0x2.cda7cf7b34806p+4 : inexact-ok
+= log10 towardzero dbl-64 0x8p-152 : -0x2.cda7cf7b34804p+4 : inexact-ok
+= log10 upward dbl-64 0x8p-152 : -0x2.cda7cf7b34804p+4 : inexact-ok
+= log10 downward ldbl-96-intel 0x8p-152L : -0x2.cda7cf7b348058ep+4L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x8p-152L : -0x2.cda7cf7b348058ep+4L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x8p-152L : -0x2.cda7cf7b348058dcp+4L : inexact-ok
+= log10 upward ldbl-96-intel 0x8p-152L : -0x2.cda7cf7b348058dcp+4L : inexact-ok
+= log10 downward ldbl-96-m68k 0x8p-152L : -0x2.cda7cf7b348058ep+4L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x8p-152L : -0x2.cda7cf7b348058ep+4L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x8p-152L : -0x2.cda7cf7b348058dcp+4L : inexact-ok
+= log10 upward ldbl-96-m68k 0x8p-152L : -0x2.cda7cf7b348058dcp+4L : inexact-ok
+= log10 downward ldbl-128 0x8p-152L : -0x2.cda7cf7b348058de5c578989157cp+4L : inexact-ok
+= log10 tonearest ldbl-128 0x8p-152L : -0x2.cda7cf7b348058de5c578989157cp+4L : inexact-ok
+= log10 towardzero ldbl-128 0x8p-152L : -0x2.cda7cf7b348058de5c578989157ap+4L : inexact-ok
+= log10 upward ldbl-128 0x8p-152L : -0x2.cda7cf7b348058de5c578989157ap+4L : inexact-ok
+= log10 downward ldbl-128ibm 0x8p-152L : -0x2.cda7cf7b348058de5c57898916p+4L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x8p-152L : -0x2.cda7cf7b348058de5c57898915p+4L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x8p-152L : -0x2.cda7cf7b348058de5c57898915p+4L : inexact-ok
+= log10 upward ldbl-128ibm 0x8p-152L : -0x2.cda7cf7b348058de5c57898915p+4L : inexact-ok
+= log10 downward dbl-64 0x4p-1076 : -0x1.434e6420f4374p+8 : inexact-ok
+= log10 tonearest dbl-64 0x4p-1076 : -0x1.434e6420f4374p+8 : inexact-ok
+= log10 towardzero dbl-64 0x4p-1076 : -0x1.434e6420f4373p+8 : inexact-ok
+= log10 upward dbl-64 0x4p-1076 : -0x1.434e6420f4373p+8 : inexact-ok
+= log10 downward ldbl-96-intel 0x4p-1076L : -0x1.434e6420f4373e6p+8L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x4p-1076L : -0x1.434e6420f4373e6p+8L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x4p-1076L : -0x1.434e6420f4373e5ep+8L : inexact-ok
+= log10 upward ldbl-96-intel 0x4p-1076L : -0x1.434e6420f4373e5ep+8L : inexact-ok
+= log10 downward ldbl-96-m68k 0x4p-1076L : -0x1.434e6420f4373e6p+8L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x4p-1076L : -0x1.434e6420f4373e6p+8L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x4p-1076L : -0x1.434e6420f4373e5ep+8L : inexact-ok
+= log10 upward ldbl-96-m68k 0x4p-1076L : -0x1.434e6420f4373e5ep+8L : inexact-ok
+= log10 downward ldbl-128 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e419p+8L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e418p+8L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e418p+8L : inexact-ok
+= log10 upward ldbl-128 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e418p+8L : inexact-ok
+= log10 downward ldbl-128ibm 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e48p+8L : inexact-ok
+= log10 tonearest ldbl-128ibm 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e4p+8L : inexact-ok
+= log10 towardzero ldbl-128ibm 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e4p+8L : inexact-ok
+= log10 upward ldbl-128ibm 0x4p-1076L : -0x1.434e6420f4373e5f05171d19e4p+8L : inexact-ok
+= log10 downward ldbl-96-intel 0x8p-16448L : -0x1.35670330851ff3a2p+12L : inexact-ok
+= log10 tonearest ldbl-96-intel 0x8p-16448L : -0x1.35670330851ff3a2p+12L : inexact-ok
+= log10 towardzero ldbl-96-intel 0x8p-16448L : -0x1.35670330851ff3ap+12L : inexact-ok
+= log10 upward ldbl-96-intel 0x8p-16448L : -0x1.35670330851ff3ap+12L : inexact-ok
+= log10 downward ldbl-96-m68k 0x8p-16448L : -0x1.35670330851ff3a2p+12L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x8p-16448L : -0x1.35670330851ff3a2p+12L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x8p-16448L : -0x1.35670330851ff3ap+12L : inexact-ok
+= log10 upward ldbl-96-m68k 0x8p-16448L : -0x1.35670330851ff3ap+12L : inexact-ok
+= log10 downward ldbl-128 0x8p-16448L : -0x1.35670330851ff3a119e4512b06efp+12L : inexact-ok
+= log10 tonearest ldbl-128 0x8p-16448L : -0x1.35670330851ff3a119e4512b06efp+12L : inexact-ok
+= log10 towardzero ldbl-128 0x8p-16448L : -0x1.35670330851ff3a119e4512b06eep+12L : inexact-ok
+= log10 upward ldbl-128 0x8p-16448L : -0x1.35670330851ff3a119e4512b06eep+12L : inexact-ok
+= log10 downward ldbl-96-m68k 0x4p-16448L : -0x1.356bd4355947d222p+12L : inexact-ok
+= log10 tonearest ldbl-96-m68k 0x4p-16448L : -0x1.356bd4355947d22p+12L : inexact-ok
+= log10 towardzero ldbl-96-m68k 0x4p-16448L : -0x1.356bd4355947d22p+12L : inexact-ok
+= log10 upward ldbl-96-m68k 0x4p-16448L : -0x1.356bd4355947d22p+12L : inexact-ok
+= log10 downward ldbl-128 0x4p-16448L : -0x1.356bd4355947d220d6a8cd75d45p+12L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-16448L : -0x1.356bd4355947d220d6a8cd75d44fp+12L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-16448L : -0x1.356bd4355947d220d6a8cd75d44fp+12L : inexact-ok
+= log10 upward ldbl-128 0x4p-16448L : -0x1.356bd4355947d220d6a8cd75d44fp+12L : inexact-ok
+= log10 downward ldbl-128 0x4p-16496L : -0x1.3653051d20c18a143b801b7c5661p+12L : inexact-ok
+= log10 tonearest ldbl-128 0x4p-16496L : -0x1.3653051d20c18a143b801b7c566p+12L : inexact-ok
+= log10 towardzero ldbl-128 0x4p-16496L : -0x1.3653051d20c18a143b801b7c566p+12L : inexact-ok
+= log10 upward ldbl-128 0x4p-16496L : -0x1.3653051d20c18a143b801b7c566p+12L : inexact-ok
+log1p 0
+= log1p downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= log1p tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= log1p towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= log1p upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= log1p downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= log1p tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= log1p towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= log1p upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= log1p downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= log1p upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+log1p -0
+= log1p downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= log1p tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= log1p towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= log1p upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= log1p downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= log1p tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= log1p towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= log1p upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= log1p downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= log1p upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+log1p e-1
+= log1p downward flt-32 0x1.b7e152p+0f : 0x1p+0f : inexact-ok
+= log1p tonearest flt-32 0x1.b7e152p+0f : 0x1p+0f : inexact-ok
+= log1p towardzero flt-32 0x1.b7e152p+0f : 0x1p+0f : inexact-ok
+= log1p upward flt-32 0x1.b7e152p+0f : 0x1.000002p+0f : inexact-ok
+= log1p downward dbl-64 0x1.b7e152p+0 : 0x1.00000039ece11p+0 : inexact-ok
+= log1p tonearest dbl-64 0x1.b7e152p+0 : 0x1.00000039ece12p+0 : inexact-ok
+= log1p towardzero dbl-64 0x1.b7e152p+0 : 0x1.00000039ece11p+0 : inexact-ok
+= log1p upward dbl-64 0x1.b7e152p+0 : 0x1.00000039ece12p+0 : inexact-ok
+= log1p downward ldbl-96-intel 0x1.b7e152p+0L : 0x1.00000039ece11db6p+0L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x1.b7e152p+0L : 0x1.00000039ece11db6p+0L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x1.b7e152p+0L : 0x1.00000039ece11db6p+0L : inexact-ok
+= log1p upward ldbl-96-intel 0x1.b7e152p+0L : 0x1.00000039ece11db8p+0L : inexact-ok
+= log1p downward ldbl-96-m68k 0x1.b7e152p+0L : 0x1.00000039ece11db6p+0L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x1.b7e152p+0L : 0x1.00000039ece11db6p+0L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x1.b7e152p+0L : 0x1.00000039ece11db6p+0L : inexact-ok
+= log1p upward ldbl-96-m68k 0x1.b7e152p+0L : 0x1.00000039ece11db8p+0L : inexact-ok
+= log1p downward ldbl-128 0x1.b7e152p+0L : 0x1.00000039ece11db67b8f96c29c55p+0L : inexact-ok
+= log1p tonearest ldbl-128 0x1.b7e152p+0L : 0x1.00000039ece11db67b8f96c29c56p+0L : inexact-ok
+= log1p towardzero ldbl-128 0x1.b7e152p+0L : 0x1.00000039ece11db67b8f96c29c55p+0L : inexact-ok
+= log1p upward ldbl-128 0x1.b7e152p+0L : 0x1.00000039ece11db67b8f96c29c56p+0L : inexact-ok
+= log1p downward ldbl-128ibm 0x1.b7e152p+0L : 0x1.00000039ece11db67b8f96c29cp+0L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x1.b7e152p+0L : 0x1.00000039ece11db67b8f96c29c8p+0L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x1.b7e152p+0L : 0x1.00000039ece11db67b8f96c29cp+0L : inexact-ok
+= log1p upward ldbl-128ibm 0x1.b7e152p+0L : 0x1.00000039ece11db67b8f96c29c8p+0L : inexact-ok
+= log1p downward flt-32 0x1.b7e15p+0f : 0xf.fffffp-4f : inexact-ok
+= log1p tonearest flt-32 0x1.b7e15p+0f : 0xf.fffffp-4f : inexact-ok
+= log1p towardzero flt-32 0x1.b7e15p+0f : 0xf.fffffp-4f : inexact-ok
+= log1p upward flt-32 0x1.b7e15p+0f : 0x1p+0f : inexact-ok
+= log1p downward dbl-64 0x1.b7e15p+0 : 0xf.fffff7d922f5p-4 : inexact-ok
+= log1p tonearest dbl-64 0x1.b7e15p+0 : 0xf.fffff7d922f5p-4 : inexact-ok
+= log1p towardzero dbl-64 0x1.b7e15p+0 : 0xf.fffff7d922f5p-4 : inexact-ok
+= log1p upward dbl-64 0x1.b7e15p+0 : 0xf.fffff7d922f58p-4 : inexact-ok
+= log1p downward ldbl-96-intel 0x1.b7e15p+0L : 0xf.fffff7d922f51a2p-4L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x1.b7e15p+0L : 0xf.fffff7d922f51a3p-4L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x1.b7e15p+0L : 0xf.fffff7d922f51a2p-4L : inexact-ok
+= log1p upward ldbl-96-intel 0x1.b7e15p+0L : 0xf.fffff7d922f51a3p-4L : inexact-ok
+= log1p downward ldbl-96-m68k 0x1.b7e15p+0L : 0xf.fffff7d922f51a2p-4L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x1.b7e15p+0L : 0xf.fffff7d922f51a3p-4L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x1.b7e15p+0L : 0xf.fffff7d922f51a2p-4L : inexact-ok
+= log1p upward ldbl-96-m68k 0x1.b7e15p+0L : 0xf.fffff7d922f51a3p-4L : inexact-ok
+= log1p downward ldbl-128 0x1.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e821p-4L : inexact-ok
+= log1p tonearest ldbl-128 0x1.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e821p-4L : inexact-ok
+= log1p towardzero ldbl-128 0x1.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e821p-4L : inexact-ok
+= log1p upward ldbl-128 0x1.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e8218p-4L : inexact-ok
+= log1p downward ldbl-128ibm 0x1.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e8p-4L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x1.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e84p-4L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x1.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e8p-4L : inexact-ok
+= log1p upward ldbl-128ibm 0x1.b7e15p+0L : 0xf.fffff7d922f51a2d208d1c4e84p-4L : inexact-ok
+= log1p downward dbl-64 0x1.b7e151628aed3p+0 : 0x1p+0 : inexact-ok
+= log1p tonearest dbl-64 0x1.b7e151628aed3p+0 : 0x1p+0 : inexact-ok
+= log1p towardzero dbl-64 0x1.b7e151628aed3p+0 : 0x1p+0 : inexact-ok
+= log1p upward dbl-64 0x1.b7e151628aed3p+0 : 0x1.0000000000001p+0 : inexact-ok
+= log1p downward ldbl-96-intel 0x1.b7e151628aed3p+0L : 0x1.000000000000020cp+0L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x1.b7e151628aed3p+0L : 0x1.000000000000020ep+0L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x1.b7e151628aed3p+0L : 0x1.000000000000020cp+0L : inexact-ok
+= log1p upward ldbl-96-intel 0x1.b7e151628aed3p+0L : 0x1.000000000000020ep+0L : inexact-ok
+= log1p downward ldbl-96-m68k 0x1.b7e151628aed3p+0L : 0x1.000000000000020cp+0L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x1.b7e151628aed3p+0L : 0x1.000000000000020ep+0L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x1.b7e151628aed3p+0L : 0x1.000000000000020cp+0L : inexact-ok
+= log1p upward ldbl-96-m68k 0x1.b7e151628aed3p+0L : 0x1.000000000000020ep+0L : inexact-ok
+= log1p downward ldbl-128 0x1.b7e151628aed3p+0L : 0x1.000000000000020dcae0c29f344ep+0L : inexact-ok
+= log1p tonearest ldbl-128 0x1.b7e151628aed3p+0L : 0x1.000000000000020dcae0c29f344ep+0L : inexact-ok
+= log1p towardzero ldbl-128 0x1.b7e151628aed3p+0L : 0x1.000000000000020dcae0c29f344ep+0L : inexact-ok
+= log1p upward ldbl-128 0x1.b7e151628aed3p+0L : 0x1.000000000000020dcae0c29f344fp+0L : inexact-ok
+= log1p downward ldbl-128ibm 0x1.b7e151628aed3p+0L : 0x1.000000000000020dcae0c29f34p+0L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x1.b7e151628aed3p+0L : 0x1.000000000000020dcae0c29f348p+0L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x1.b7e151628aed3p+0L : 0x1.000000000000020dcae0c29f34p+0L : inexact-ok
+= log1p upward ldbl-128ibm 0x1.b7e151628aed3p+0L : 0x1.000000000000020dcae0c29f348p+0L : inexact-ok
+= log1p downward dbl-64 0x1.b7e151628aed2p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= log1p tonearest dbl-64 0x1.b7e151628aed2p+0 : 0x1p+0 : inexact-ok
+= log1p towardzero dbl-64 0x1.b7e151628aed2p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= log1p upward dbl-64 0x1.b7e151628aed2p+0 : 0x1p+0 : inexact-ok
+= log1p downward ldbl-96-intel 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2ap-4L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2bp-4L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2ap-4L : inexact-ok
+= log1p upward ldbl-96-intel 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2bp-4L : inexact-ok
+= log1p downward ldbl-96-m68k 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2ap-4L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2bp-4L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2ap-4L : inexact-ok
+= log1p upward ldbl-96-m68k 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2bp-4L : inexact-ok
+= log1p downward ldbl-128 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2af55337636657p-4L : inexact-ok
+= log1p tonearest ldbl-128 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2af553376366578p-4L : inexact-ok
+= log1p towardzero ldbl-128 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2af55337636657p-4L : inexact-ok
+= log1p upward ldbl-128 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2af553376366578p-4L : inexact-ok
+= log1p downward ldbl-128ibm 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2af5533763664p-4L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2af5533763664p-4L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2af5533763664p-4L : inexact-ok
+= log1p upward ldbl-128ibm 0x1.b7e151628aed2p+0L : 0xf.ffffffffffffc2af5533763668p-4L : inexact-ok
+= log1p downward ldbl-96-intel 0x1.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x1.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x1.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log1p upward ldbl-96-intel 0x1.b7e151628aed2a6cp+0L : 0x1.0000000000000002p+0L : inexact-ok
+= log1p downward ldbl-96-m68k 0x1.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x1.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x1.b7e151628aed2a6cp+0L : 0x1p+0L : inexact-ok
+= log1p upward ldbl-96-m68k 0x1.b7e151628aed2a6cp+0L : 0x1.0000000000000002p+0L : inexact-ok
+= log1p downward ldbl-128 0x1.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49ac3p+0L : inexact-ok
+= log1p tonearest ldbl-128 0x1.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49ac4p+0L : inexact-ok
+= log1p towardzero ldbl-128 0x1.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49ac3p+0L : inexact-ok
+= log1p upward ldbl-128 0x1.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49ac4p+0L : inexact-ok
+= log1p downward ldbl-128ibm 0x1.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49a8p+0L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x1.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49bp+0L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x1.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49a8p+0L : inexact-ok
+= log1p upward ldbl-128ibm 0x1.b7e151628aed2a6cp+0L : 0x1.000000000000000075ed29d49bp+0L : inexact-ok
+= log1p downward ldbl-96-intel 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x1.b7e151628aed2a6ap+0L : 0x1p+0L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= log1p upward ldbl-96-intel 0x1.b7e151628aed2a6ap+0L : 0x1p+0L : inexact-ok
+= log1p downward ldbl-96-m68k 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x1.b7e151628aed2a6ap+0L : 0x1p+0L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= log1p upward ldbl-96-m68k 0x1.b7e151628aed2a6ap+0L : 0x1p+0L : inexact-ok
+= log1p downward ldbl-128 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffb9927823334ap-4L : inexact-ok
+= log1p tonearest ldbl-128 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffb9927823334ap-4L : inexact-ok
+= log1p towardzero ldbl-128 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffb9927823334ap-4L : inexact-ok
+= log1p upward ldbl-128 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffb9927823334a8p-4L : inexact-ok
+= log1p downward ldbl-128ibm 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffb9927823334p-4L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffb9927823334p-4L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffb9927823334p-4L : inexact-ok
+= log1p upward ldbl-128ibm 0x1.b7e151628aed2a6ap+0L : 0xf.fffffffffffffffb9927823338p-4L : inexact-ok
+= log1p downward ldbl-128 0x1.b7e151628aed2a6abf7158809cf5p+0L : 0x1p+0L : inexact-ok
+= log1p tonearest ldbl-128 0x1.b7e151628aed2a6abf7158809cf5p+0L : 0x1p+0L : inexact-ok
+= log1p towardzero ldbl-128 0x1.b7e151628aed2a6abf7158809cf5p+0L : 0x1p+0L : inexact-ok
+= log1p upward ldbl-128 0x1.b7e151628aed2a6abf7158809cf5p+0L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= log1p downward ldbl-128 0x1.b7e151628aed2a6abf7158809cf4p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log1p tonearest ldbl-128 0x1.b7e151628aed2a6abf7158809cf4p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log1p towardzero ldbl-128 0x1.b7e151628aed2a6abf7158809cf4p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= log1p upward ldbl-128 0x1.b7e151628aed2a6abf7158809cf4p+0L : 0x1p+0L : inexact-ok
+= log1p downward ldbl-128 0x1.b7e151628aed2a6abf7158809dp+0L : 0x1.0000000000000000000000000004p+0L : inexact-ok
+= log1p tonearest ldbl-128 0x1.b7e151628aed2a6abf7158809dp+0L : 0x1.0000000000000000000000000004p+0L : inexact-ok
+= log1p towardzero ldbl-128 0x1.b7e151628aed2a6abf7158809dp+0L : 0x1.0000000000000000000000000004p+0L : inexact-ok
+= log1p upward ldbl-128 0x1.b7e151628aed2a6abf7158809dp+0L : 0x1.0000000000000000000000000005p+0L : inexact-ok
+= log1p downward ldbl-128ibm 0x1.b7e151628aed2a6abf7158809dp+0L : 0x1p+0L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x1.b7e151628aed2a6abf7158809dp+0L : 0x1p+0L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x1.b7e151628aed2a6abf7158809dp+0L : 0x1p+0L : inexact-ok
+= log1p upward ldbl-128ibm 0x1.b7e151628aed2a6abf7158809dp+0L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= log1p downward ldbl-128 0x1.b7e151628aed2a6abf7158809c8p+0L : 0xf.fffffffffffffffffffffffffd48p-4L : inexact-ok
+= log1p tonearest ldbl-128 0x1.b7e151628aed2a6abf7158809c8p+0L : 0xf.fffffffffffffffffffffffffd5p-4L : inexact-ok
+= log1p towardzero ldbl-128 0x1.b7e151628aed2a6abf7158809c8p+0L : 0xf.fffffffffffffffffffffffffd48p-4L : inexact-ok
+= log1p upward ldbl-128 0x1.b7e151628aed2a6abf7158809c8p+0L : 0xf.fffffffffffffffffffffffffd5p-4L : inexact-ok
+= log1p downward ldbl-128ibm 0x1.b7e151628aed2a6abf7158809c8p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x1.b7e151628aed2a6abf7158809c8p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x1.b7e151628aed2a6abf7158809c8p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= log1p upward ldbl-128ibm 0x1.b7e151628aed2a6abf7158809c8p+0L : 0x1p+0L : inexact-ok
+log1p -0.25
+= log1p downward flt-32 -0x4p-4f : -0x4.9a5888p-4f : inexact-ok
+= log1p tonearest flt-32 -0x4p-4f : -0x4.9a5888p-4f : inexact-ok
+= log1p towardzero flt-32 -0x4p-4f : -0x4.9a588p-4f : inexact-ok
+= log1p upward flt-32 -0x4p-4f : -0x4.9a588p-4f : inexact-ok
+= log1p downward dbl-64 -0x4p-4 : -0x4.9a58844d36e4cp-4 : inexact-ok
+= log1p tonearest dbl-64 -0x4p-4 : -0x4.9a58844d36e48p-4 : inexact-ok
+= log1p towardzero dbl-64 -0x4p-4 : -0x4.9a58844d36e48p-4 : inexact-ok
+= log1p upward dbl-64 -0x4p-4 : -0x4.9a58844d36e48p-4 : inexact-ok
+= log1p downward ldbl-96-intel -0x4p-4L : -0x4.9a58844d36e49e1p-4L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x4p-4L : -0x4.9a58844d36e49e1p-4L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x4p-4L : -0x4.9a58844d36e49e08p-4L : inexact-ok
+= log1p upward ldbl-96-intel -0x4p-4L : -0x4.9a58844d36e49e08p-4L : inexact-ok
+= log1p downward ldbl-96-m68k -0x4p-4L : -0x4.9a58844d36e49e1p-4L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x4p-4L : -0x4.9a58844d36e49e1p-4L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x4p-4L : -0x4.9a58844d36e49e08p-4L : inexact-ok
+= log1p upward ldbl-96-m68k -0x4p-4L : -0x4.9a58844d36e49e08p-4L : inexact-ok
+= log1p downward ldbl-128 -0x4p-4L : -0x4.9a58844d36e49e0efadd9db02aa8p-4L : inexact-ok
+= log1p tonearest ldbl-128 -0x4p-4L : -0x4.9a58844d36e49e0efadd9db02aa8p-4L : inexact-ok
+= log1p towardzero ldbl-128 -0x4p-4L : -0x4.9a58844d36e49e0efadd9db02aa4p-4L : inexact-ok
+= log1p upward ldbl-128 -0x4p-4L : -0x4.9a58844d36e49e0efadd9db02aa4p-4L : inexact-ok
+= log1p downward ldbl-128ibm -0x4p-4L : -0x4.9a58844d36e49e0efadd9db02cp-4L : inexact-ok
+= log1p tonearest ldbl-128ibm -0x4p-4L : -0x4.9a58844d36e49e0efadd9db02ap-4L : inexact-ok
+= log1p towardzero ldbl-128ibm -0x4p-4L : -0x4.9a58844d36e49e0efadd9db02ap-4L : inexact-ok
+= log1p upward ldbl-128ibm -0x4p-4L : -0x4.9a58844d36e49e0efadd9db02ap-4L : inexact-ok
+log1p -0.875
+= log1p downward flt-32 -0xep-4f : -0x2.145648p+0f : inexact-ok
+= log1p tonearest flt-32 -0xep-4f : -0x2.145648p+0f : inexact-ok
+= log1p towardzero flt-32 -0xep-4f : -0x2.145644p+0f : inexact-ok
+= log1p upward flt-32 -0xep-4f : -0x2.145644p+0f : inexact-ok
+= log1p downward dbl-64 -0xep-4 : -0x2.145647e7756e8p+0 : inexact-ok
+= log1p tonearest dbl-64 -0xep-4 : -0x2.145647e7756e6p+0 : inexact-ok
+= log1p towardzero dbl-64 -0xep-4 : -0x2.145647e7756e6p+0 : inexact-ok
+= log1p upward dbl-64 -0xep-4 : -0x2.145647e7756e6p+0 : inexact-ok
+= log1p downward ldbl-96-intel -0xep-4L : -0x2.145647e7756e6d04p+0L : inexact-ok
+= log1p tonearest ldbl-96-intel -0xep-4L : -0x2.145647e7756e6d04p+0L : inexact-ok
+= log1p towardzero ldbl-96-intel -0xep-4L : -0x2.145647e7756e6dp+0L : inexact-ok
+= log1p upward ldbl-96-intel -0xep-4L : -0x2.145647e7756e6dp+0L : inexact-ok
+= log1p downward ldbl-96-m68k -0xep-4L : -0x2.145647e7756e6d04p+0L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0xep-4L : -0x2.145647e7756e6d04p+0L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0xep-4L : -0x2.145647e7756e6dp+0L : inexact-ok
+= log1p upward ldbl-96-m68k -0xep-4L : -0x2.145647e7756e6dp+0L : inexact-ok
+= log1p downward ldbl-128 -0xep-4L : -0x2.145647e7756e6d035dab1ac80bdap+0L : inexact-ok
+= log1p tonearest ldbl-128 -0xep-4L : -0x2.145647e7756e6d035dab1ac80bd8p+0L : inexact-ok
+= log1p towardzero ldbl-128 -0xep-4L : -0x2.145647e7756e6d035dab1ac80bd8p+0L : inexact-ok
+= log1p upward ldbl-128 -0xep-4L : -0x2.145647e7756e6d035dab1ac80bd8p+0L : inexact-ok
+= log1p downward ldbl-128ibm -0xep-4L : -0x2.145647e7756e6d035dab1ac80cp+0L : inexact-ok
+= log1p tonearest ldbl-128ibm -0xep-4L : -0x2.145647e7756e6d035dab1ac80cp+0L : inexact-ok
+= log1p towardzero ldbl-128ibm -0xep-4L : -0x2.145647e7756e6d035dab1ac80bp+0L : inexact-ok
+= log1p upward ldbl-128ibm -0xep-4L : -0x2.145647e7756e6d035dab1ac80bp+0L : inexact-ok
+log1p min missing-underflow
+= log1p downward flt-32 0x4p-128f : 0x3.fffff8p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest flt-32 0x4p-128f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero flt-32 0x4p-128f : 0x3.fffff8p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p upward flt-32 0x4p-128f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p downward dbl-64 0x4p-128 : 0x3.ffffffffffffep-128 : inexact-ok
+= log1p tonearest dbl-64 0x4p-128 : 0x4p-128 : inexact-ok
+= log1p towardzero dbl-64 0x4p-128 : 0x3.ffffffffffffep-128 : inexact-ok
+= log1p upward dbl-64 0x4p-128 : 0x4p-128 : inexact-ok
+= log1p downward ldbl-96-intel 0x4p-128L : 0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x4p-128L : 0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p upward ldbl-96-intel 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p downward ldbl-96-m68k 0x4p-128L : 0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x4p-128L : 0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p upward ldbl-96-m68k 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p downward ldbl-128 0x4p-128L : 0x3.fffffffffffffffffffffffffffep-128L : inexact-ok
+= log1p tonearest ldbl-128 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p towardzero ldbl-128 0x4p-128L : 0x3.fffffffffffffffffffffffffffep-128L : inexact-ok
+= log1p upward ldbl-128 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p downward ldbl-128ibm 0x4p-128L : 0x3.ffffffffffffffffffffffffffp-128L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x4p-128L : 0x3.ffffffffffffffffffffffffffp-128L : inexact-ok
+= log1p upward ldbl-128ibm 0x4p-128L : 0x4p-128L : inexact-ok
+= log1p downward dbl-64 0x4p-1024 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest dbl-64 0x4p-1024 : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero dbl-64 0x4p-1024 : 0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p upward dbl-64 0x4p-1024 : 0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel 0x4p-1024L : 0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x4p-1024L : 0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p upward ldbl-96-intel 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p downward ldbl-96-m68k 0x4p-1024L : 0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x4p-1024L : 0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p upward ldbl-96-m68k 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p downward ldbl-128 0x4p-1024L : 0x3.fffffffffffffffffffffffffffep-1024L : inexact-ok
+= log1p tonearest ldbl-128 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-128 0x4p-1024L : 0x3.fffffffffffffffffffffffffffep-1024L : inexact-ok
+= log1p upward ldbl-128 0x4p-1024L : 0x4p-1024L : inexact-ok
+= log1p downward ldbl-128ibm 0x4p-1024L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm 0x4p-1024L : 0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm 0x4p-1024L : 0x3.ffffffffffffcp-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm 0x4p-1024L : 0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel 0x4p-16384L : 0x3.fffffffffffffff8p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel 0x4p-16384L : 0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel 0x4p-16384L : 0x3.fffffffffffffff8p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel 0x4p-16384L : 0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k 0x4p-16384L : 0x3.fffffffffffffffcp-16384L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x4p-16384L : 0x4p-16384L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x4p-16384L : 0x3.fffffffffffffffcp-16384L : inexact-ok
+= log1p upward ldbl-96-m68k 0x4p-16384L : 0x4p-16384L : inexact-ok
+= log1p downward ldbl-128 0x4p-16384L : 0x3.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 0x4p-16384L : 0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 0x4p-16384L : 0x3.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-128 0x4p-16384L : 0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel 0x2p-16384L : 0x1.fffffffffffffff8p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel 0x2p-16384L : 0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel 0x2p-16384L : 0x1.fffffffffffffff8p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel 0x2p-16384L : 0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k 0x2p-16384L : 0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k 0x2p-16384L : 0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k 0x2p-16384L : 0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k 0x2p-16384L : 0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-128 0x2p-16384L : 0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 0x2p-16384L : 0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 0x2p-16384L : 0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 0x2p-16384L : 0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward dbl-64 0x8p-972 : 0x7.ffffffffffffcp-972 : inexact-ok
+= log1p tonearest dbl-64 0x8p-972 : 0x8p-972 : inexact-ok
+= log1p towardzero dbl-64 0x8p-972 : 0x7.ffffffffffffcp-972 : inexact-ok
+= log1p upward dbl-64 0x8p-972 : 0x8p-972 : inexact-ok
+= log1p downward ldbl-96-intel 0x8p-972L : 0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x8p-972L : 0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p upward ldbl-96-intel 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p downward ldbl-96-m68k 0x8p-972L : 0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x8p-972L : 0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p upward ldbl-96-m68k 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p downward ldbl-128 0x8p-972L : 0x7.fffffffffffffffffffffffffffcp-972L : inexact-ok
+= log1p tonearest ldbl-128 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p towardzero ldbl-128 0x8p-972L : 0x7.fffffffffffffffffffffffffffcp-972L : inexact-ok
+= log1p upward ldbl-128 0x8p-972L : 0x8p-972L : inexact-ok
+= log1p downward ldbl-128ibm 0x8p-972L : 0x7.fffffffffffffffffffffffffcp-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm 0x8p-972L : 0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm 0x8p-972L : 0x7.fffffffffffffffffffffffffcp-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm 0x8p-972L : 0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+log1p min_subnorm missing-underflow
+= log1p downward flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero flt-32 0x8p-152f : 0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward flt-32 0x8p-152f : 0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward dbl-64 0x8p-152 : 0x7.ffffffffffffcp-152 : inexact-ok
+= log1p tonearest dbl-64 0x8p-152 : 0x8p-152 : inexact-ok
+= log1p towardzero dbl-64 0x8p-152 : 0x7.ffffffffffffcp-152 : inexact-ok
+= log1p upward dbl-64 0x8p-152 : 0x8p-152 : inexact-ok
+= log1p downward ldbl-96-intel 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p upward ldbl-96-intel 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p downward ldbl-96-m68k 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x8p-152L : 0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p upward ldbl-96-m68k 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p downward ldbl-128 0x8p-152L : 0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= log1p tonearest ldbl-128 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p towardzero ldbl-128 0x8p-152L : 0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= log1p upward ldbl-128 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p downward ldbl-128ibm 0x8p-152L : 0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= log1p tonearest ldbl-128ibm 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p towardzero ldbl-128ibm 0x8p-152L : 0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= log1p upward ldbl-128ibm 0x8p-152L : 0x8p-152L : inexact-ok
+= log1p downward dbl-64 0x4p-1076 : 0x0p+0 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest dbl-64 0x4p-1076 : 0x4p-1076 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero dbl-64 0x4p-1076 : 0x0p+0 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward dbl-64 0x4p-1076 : 0x4p-1076 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p tonearest ldbl-96-intel 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p upward ldbl-96-intel 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p downward ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p tonearest ldbl-96-m68k 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p upward ldbl-96-m68k 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p downward ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep-1076L : inexact-ok
+= log1p tonearest ldbl-128 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep-1076L : inexact-ok
+= log1p upward ldbl-128 0x4p-1076L : 0x4p-1076L : inexact-ok
+= log1p downward ldbl-128ibm 0x4p-1076L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm 0x4p-1076L : 0x4p-1076L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm 0x4p-1076L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm 0x4p-1076L : 0x4p-1076L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel 0x8p-16448L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel 0x8p-16448L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k 0x8p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k 0x8p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 0x8p-16448L : 0x7.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 0x8p-16448L : 0x7.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 0x8p-16448L : 0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k 0x4p-16448L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k 0x4p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k 0x4p-16448L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k 0x4p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 0x4p-16448L : 0x3.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 0x4p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 0x4p-16448L : 0x3.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 0x4p-16448L : 0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 0x4p-16496L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 0x4p-16496L : 0x4p-16496L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 0x4p-16496L : 0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 0x4p-16496L : 0x4p-16496L : inexact-ok underflow underflow-ok errno-erange-ok
+log1p -min missing-underflow
+= log1p downward flt-32 -0x4p-128f : -0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest flt-32 -0x4p-128f : -0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero flt-32 -0x4p-128f : -0x3.fffff8p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p upward flt-32 -0x4p-128f : -0x3.fffff8p-128f : inexact-ok underflow-ok errno-erange-ok
+= log1p downward dbl-64 -0x4p-128 : -0x4p-128 : inexact-ok
+= log1p tonearest dbl-64 -0x4p-128 : -0x4p-128 : inexact-ok
+= log1p towardzero dbl-64 -0x4p-128 : -0x3.ffffffffffffep-128 : inexact-ok
+= log1p upward dbl-64 -0x4p-128 : -0x3.ffffffffffffep-128 : inexact-ok
+= log1p downward ldbl-96-intel -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p upward ldbl-96-intel -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p downward ldbl-96-m68k -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p upward ldbl-96-m68k -0x4p-128L : -0x3.fffffffffffffffcp-128L : inexact-ok
+= log1p downward ldbl-128 -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p tonearest ldbl-128 -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p towardzero ldbl-128 -0x4p-128L : -0x3.fffffffffffffffffffffffffffep-128L : inexact-ok
+= log1p upward ldbl-128 -0x4p-128L : -0x3.fffffffffffffffffffffffffffep-128L : inexact-ok
+= log1p downward ldbl-128ibm -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p tonearest ldbl-128ibm -0x4p-128L : -0x4p-128L : inexact-ok
+= log1p towardzero ldbl-128ibm -0x4p-128L : -0x3.ffffffffffffffffffffffffffp-128L : inexact-ok
+= log1p upward ldbl-128ibm -0x4p-128L : -0x3.ffffffffffffffffffffffffffp-128L : inexact-ok
+= log1p downward dbl-64 -0x4p-1024 : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest dbl-64 -0x4p-1024 : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero dbl-64 -0x4p-1024 : -0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p upward dbl-64 -0x4p-1024 : -0x3.ffffffffffffcp-1024 : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p upward ldbl-96-intel -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p downward ldbl-96-m68k -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p upward ldbl-96-m68k -0x4p-1024L : -0x3.fffffffffffffffcp-1024L : inexact-ok
+= log1p downward ldbl-128 -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p tonearest ldbl-128 -0x4p-1024L : -0x4p-1024L : inexact-ok
+= log1p towardzero ldbl-128 -0x4p-1024L : -0x3.fffffffffffffffffffffffffffep-1024L : inexact-ok
+= log1p upward ldbl-128 -0x4p-1024L : -0x3.fffffffffffffffffffffffffffep-1024L : inexact-ok
+= log1p downward ldbl-128ibm -0x4p-1024L : -0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm -0x4p-1024L : -0x4p-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm -0x4p-1024L : -0x3.ffffffffffffcp-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm -0x4p-1024L : -0x3.ffffffffffffcp-1024L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel -0x4p-16384L : -0x3.fffffffffffffff8p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel -0x4p-16384L : -0x3.fffffffffffffff8p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k -0x4p-16384L : -0x4p-16384L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x4p-16384L : -0x4p-16384L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x4p-16384L : -0x3.fffffffffffffffcp-16384L : inexact-ok
+= log1p upward ldbl-96-m68k -0x4p-16384L : -0x3.fffffffffffffffcp-16384L : inexact-ok
+= log1p downward ldbl-128 -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 -0x4p-16384L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 -0x4p-16384L : -0x3.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-128 -0x4p-16384L : -0x3.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel -0x2p-16384L : -0x1.fffffffffffffff8p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel -0x2p-16384L : -0x1.fffffffffffffff8p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k -0x2p-16384L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k -0x2p-16384L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k -0x2p-16384L : -0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k -0x2p-16384L : -0x1.fffffffffffffffcp-16384L : inexact-ok underflow-ok errno-erange-ok
+= log1p downward ldbl-128 -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 -0x2p-16384L : -0x2p-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 -0x2p-16384L : -0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 -0x2p-16384L : -0x1.fffffffffffffffffffffffffffcp-16384L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward dbl-64 -0x8p-972 : -0x8p-972 : inexact-ok
+= log1p tonearest dbl-64 -0x8p-972 : -0x8p-972 : inexact-ok
+= log1p towardzero dbl-64 -0x8p-972 : -0x7.ffffffffffffcp-972 : inexact-ok
+= log1p upward dbl-64 -0x8p-972 : -0x7.ffffffffffffcp-972 : inexact-ok
+= log1p downward ldbl-96-intel -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p upward ldbl-96-intel -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p downward ldbl-96-m68k -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p upward ldbl-96-m68k -0x8p-972L : -0x7.fffffffffffffff8p-972L : inexact-ok
+= log1p downward ldbl-128 -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p tonearest ldbl-128 -0x8p-972L : -0x8p-972L : inexact-ok
+= log1p towardzero ldbl-128 -0x8p-972L : -0x7.fffffffffffffffffffffffffffcp-972L : inexact-ok
+= log1p upward ldbl-128 -0x8p-972L : -0x7.fffffffffffffffffffffffffffcp-972L : inexact-ok
+= log1p downward ldbl-128ibm -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm -0x8p-972L : -0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm -0x8p-972L : -0x7.fffffffffffffffffffffffffcp-972L : inexact-ok underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm -0x8p-972L : -0x7.fffffffffffffffffffffffffcp-972L : inexact-ok underflow-ok errno-erange-ok
+log1p -min_subnorm missing-underflow
+= log1p downward flt-32 -0x8p-152f : -0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest flt-32 -0x8p-152f : -0x8p-152f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero flt-32 -0x8p-152f : -0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward flt-32 -0x8p-152f : -0x0p+0f : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward dbl-64 -0x8p-152 : -0x8p-152 : inexact-ok
+= log1p tonearest dbl-64 -0x8p-152 : -0x8p-152 : inexact-ok
+= log1p towardzero dbl-64 -0x8p-152 : -0x7.ffffffffffffcp-152 : inexact-ok
+= log1p upward dbl-64 -0x8p-152 : -0x7.ffffffffffffcp-152 : inexact-ok
+= log1p downward ldbl-96-intel -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x8p-152L : -0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p upward ldbl-96-intel -0x8p-152L : -0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p downward ldbl-96-m68k -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x8p-152L : -0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p upward ldbl-96-m68k -0x8p-152L : -0x7.fffffffffffffff8p-152L : inexact-ok
+= log1p downward ldbl-128 -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p tonearest ldbl-128 -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p towardzero ldbl-128 -0x8p-152L : -0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= log1p upward ldbl-128 -0x8p-152L : -0x7.fffffffffffffffffffffffffffcp-152L : inexact-ok
+= log1p downward ldbl-128ibm -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p tonearest ldbl-128ibm -0x8p-152L : -0x8p-152L : inexact-ok
+= log1p towardzero ldbl-128ibm -0x8p-152L : -0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= log1p upward ldbl-128ibm -0x8p-152L : -0x7.fffffffffffffffffffffffffep-152L : inexact-ok
+= log1p downward dbl-64 -0x4p-1076 : -0x4p-1076 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest dbl-64 -0x4p-1076 : -0x4p-1076 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero dbl-64 -0x4p-1076 : -0x0p+0 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward dbl-64 -0x4p-1076 : -0x0p+0 : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p tonearest ldbl-96-intel -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p upward ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p downward ldbl-96-m68k -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p tonearest ldbl-96-m68k -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p upward ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp-1076L : inexact-ok
+= log1p downward ldbl-128 -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p tonearest ldbl-128 -0x4p-1076L : -0x4p-1076L : inexact-ok
+= log1p towardzero ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep-1076L : inexact-ok
+= log1p upward ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep-1076L : inexact-ok
+= log1p downward ldbl-128ibm -0x4p-1076L : -0x4p-1076L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128ibm -0x4p-1076L : -0x4p-1076L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128ibm -0x4p-1076L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128ibm -0x4p-1076L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-intel -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-intel -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-intel -0x8p-16448L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-intel -0x8p-16448L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k -0x8p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k -0x8p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 -0x8p-16448L : -0x8p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 -0x8p-16448L : -0x7.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 -0x8p-16448L : -0x7.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-96-m68k -0x4p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-96-m68k -0x4p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-96-m68k -0x4p-16448L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-96-m68k -0x4p-16448L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 -0x4p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 -0x4p-16448L : -0x4p-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 -0x4p-16448L : -0x3.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 -0x4p-16448L : -0x3.fffffffffffcp-16448L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p downward ldbl-128 -0x4p-16496L : -0x4p-16496L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p tonearest ldbl-128 -0x4p-16496L : -0x4p-16496L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p towardzero ldbl-128 -0x4p-16496L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+= log1p upward ldbl-128 -0x4p-16496L : -0x0p+0L : inexact-ok underflow underflow-ok errno-erange-ok
+log2 1
+= log2 downward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log2 tonearest flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log2 towardzero flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log2 upward flt-32 0x1p+0f : 0x0p+0f : inexact-ok
+= log2 downward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log2 tonearest dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log2 towardzero dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log2 upward dbl-64 0x1p+0 : 0x0p+0 : inexact-ok
+= log2 downward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 upward ldbl-96-intel 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 downward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 towardzero ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 upward ldbl-128 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x1p+0L : 0x0p+0L : inexact-ok
+log2 e
+= log2 downward flt-32 0x2.b7e154p+0f : 0x1.715476p+0f : inexact-ok
+= log2 tonearest flt-32 0x2.b7e154p+0f : 0x1.715478p+0f : inexact-ok
+= log2 towardzero flt-32 0x2.b7e154p+0f : 0x1.715476p+0f : inexact-ok
+= log2 upward flt-32 0x2.b7e154p+0f : 0x1.715478p+0f : inexact-ok
+= log2 downward dbl-64 0x2.b7e154p+0 : 0x1.715477b6069b2p+0 : inexact-ok
+= log2 tonearest dbl-64 0x2.b7e154p+0 : 0x1.715477b6069b3p+0 : inexact-ok
+= log2 towardzero dbl-64 0x2.b7e154p+0 : 0x1.715477b6069b2p+0 : inexact-ok
+= log2 upward dbl-64 0x2.b7e154p+0 : 0x1.715477b6069b3p+0 : inexact-ok
+= log2 downward ldbl-96-intel 0x2.b7e154p+0L : 0x1.715477b6069b2d4ap+0L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x2.b7e154p+0L : 0x1.715477b6069b2d4cp+0L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x2.b7e154p+0L : 0x1.715477b6069b2d4ap+0L : inexact-ok
+= log2 upward ldbl-96-intel 0x2.b7e154p+0L : 0x1.715477b6069b2d4cp+0L : inexact-ok
+= log2 downward ldbl-96-m68k 0x2.b7e154p+0L : 0x1.715477b6069b2d4ap+0L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x2.b7e154p+0L : 0x1.715477b6069b2d4cp+0L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x2.b7e154p+0L : 0x1.715477b6069b2d4ap+0L : inexact-ok
+= log2 upward ldbl-96-m68k 0x2.b7e154p+0L : 0x1.715477b6069b2d4cp+0L : inexact-ok
+= log2 downward ldbl-128 0x2.b7e154p+0L : 0x1.715477b6069b2d4b70c9ce6a329p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2.b7e154p+0L : 0x1.715477b6069b2d4b70c9ce6a329p+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2.b7e154p+0L : 0x1.715477b6069b2d4b70c9ce6a329p+0L : inexact-ok
+= log2 upward ldbl-128 0x2.b7e154p+0L : 0x1.715477b6069b2d4b70c9ce6a3291p+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x2.b7e154p+0L : 0x1.715477b6069b2d4b70c9ce6a328p+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x2.b7e154p+0L : 0x1.715477b6069b2d4b70c9ce6a328p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x2.b7e154p+0L : 0x1.715477b6069b2d4b70c9ce6a328p+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x2.b7e154p+0L : 0x1.715477b6069b2d4b70c9ce6a33p+0L : inexact-ok
+= log2 downward flt-32 0x2.b7e15p+0f : 0x1.715474p+0f : inexact-ok
+= log2 tonearest flt-32 0x2.b7e15p+0f : 0x1.715476p+0f : inexact-ok
+= log2 towardzero flt-32 0x2.b7e15p+0f : 0x1.715474p+0f : inexact-ok
+= log2 upward flt-32 0x2.b7e15p+0f : 0x1.715476p+0f : inexact-ok
+= log2 downward dbl-64 0x2.b7e15p+0 : 0x1.715475968cddcp+0 : inexact-ok
+= log2 tonearest dbl-64 0x2.b7e15p+0 : 0x1.715475968cddcp+0 : inexact-ok
+= log2 towardzero dbl-64 0x2.b7e15p+0 : 0x1.715475968cddcp+0 : inexact-ok
+= log2 upward dbl-64 0x2.b7e15p+0 : 0x1.715475968cdddp+0 : inexact-ok
+= log2 downward ldbl-96-intel 0x2.b7e15p+0L : 0x1.715475968cddc4e6p+0L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x2.b7e15p+0L : 0x1.715475968cddc4e6p+0L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x2.b7e15p+0L : 0x1.715475968cddc4e6p+0L : inexact-ok
+= log2 upward ldbl-96-intel 0x2.b7e15p+0L : 0x1.715475968cddc4e8p+0L : inexact-ok
+= log2 downward ldbl-96-m68k 0x2.b7e15p+0L : 0x1.715475968cddc4e6p+0L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x2.b7e15p+0L : 0x1.715475968cddc4e6p+0L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x2.b7e15p+0L : 0x1.715475968cddc4e6p+0L : inexact-ok
+= log2 upward ldbl-96-m68k 0x2.b7e15p+0L : 0x1.715475968cddc4e8p+0L : inexact-ok
+= log2 downward ldbl-128 0x2.b7e15p+0L : 0x1.715475968cddc4e6c2b1cbd1a7c7p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2.b7e15p+0L : 0x1.715475968cddc4e6c2b1cbd1a7c8p+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2.b7e15p+0L : 0x1.715475968cddc4e6c2b1cbd1a7c7p+0L : inexact-ok
+= log2 upward ldbl-128 0x2.b7e15p+0L : 0x1.715475968cddc4e6c2b1cbd1a7c8p+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x2.b7e15p+0L : 0x1.715475968cddc4e6c2b1cbd1a78p+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x2.b7e15p+0L : 0x1.715475968cddc4e6c2b1cbd1a8p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x2.b7e15p+0L : 0x1.715475968cddc4e6c2b1cbd1a78p+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x2.b7e15p+0L : 0x1.715475968cddc4e6c2b1cbd1a8p+0L : inexact-ok
+= log2 downward dbl-64 0x2.b7e151628aed4p+0 : 0x1.71547652b82fep+0 : inexact-ok
+= log2 tonearest dbl-64 0x2.b7e151628aed4p+0 : 0x1.71547652b82ffp+0 : inexact-ok
+= log2 towardzero dbl-64 0x2.b7e151628aed4p+0 : 0x1.71547652b82fep+0 : inexact-ok
+= log2 upward dbl-64 0x2.b7e151628aed4p+0 : 0x1.71547652b82ffp+0 : inexact-ok
+= log2 downward ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x1.71547652b82feceap+0L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x1.71547652b82fececp+0L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x1.71547652b82feceap+0L : inexact-ok
+= log2 upward ldbl-96-intel 0x2.b7e151628aed4p+0L : 0x1.71547652b82fececp+0L : inexact-ok
+= log2 downward ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x1.71547652b82feceap+0L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x1.71547652b82fececp+0L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x1.71547652b82feceap+0L : inexact-ok
+= log2 upward ldbl-96-m68k 0x2.b7e151628aed4p+0L : 0x1.71547652b82fececp+0L : inexact-ok
+= log2 downward ldbl-128 0x2.b7e151628aed4p+0L : 0x1.71547652b82fecebf2ef1ac7b6ddp+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2.b7e151628aed4p+0L : 0x1.71547652b82fecebf2ef1ac7b6dep+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2.b7e151628aed4p+0L : 0x1.71547652b82fecebf2ef1ac7b6ddp+0L : inexact-ok
+= log2 upward ldbl-128 0x2.b7e151628aed4p+0L : 0x1.71547652b82fecebf2ef1ac7b6dep+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x1.71547652b82fecebf2ef1ac7b68p+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x1.71547652b82fecebf2ef1ac7b7p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x1.71547652b82fecebf2ef1ac7b68p+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x2.b7e151628aed4p+0L : 0x1.71547652b82fecebf2ef1ac7b7p+0L : inexact-ok
+= log2 downward dbl-64 0x2.b7e151628aed2p+0 : 0x1.71547652b82fdp+0 : inexact-ok
+= log2 tonearest dbl-64 0x2.b7e151628aed2p+0 : 0x1.71547652b82fep+0 : inexact-ok
+= log2 towardzero dbl-64 0x2.b7e151628aed2p+0 : 0x1.71547652b82fdp+0 : inexact-ok
+= log2 upward dbl-64 0x2.b7e151628aed2p+0 : 0x1.71547652b82fep+0 : inexact-ok
+= log2 downward ldbl-96-intel 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbfp+0L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbfp+0L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbfp+0L : inexact-ok
+= log2 upward ldbl-96-intel 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbf2p+0L : inexact-ok
+= log2 downward ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbfp+0L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbfp+0L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbfp+0L : inexact-ok
+= log2 upward ldbl-96-m68k 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbf2p+0L : inexact-ok
+= log2 downward ldbl-128 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbf024ffffda5e62p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbf024ffffda5e62p+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbf024ffffda5e62p+0L : inexact-ok
+= log2 upward ldbl-128 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbf024ffffda5e63p+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbf024ffffda5ep+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbf024ffffda5e8p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbf024ffffda5ep+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x2.b7e151628aed2p+0L : 0x1.71547652b82fdbf024ffffda5e8p+0L : inexact-ok
+= log2 downward ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe178p+0L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe178p+0L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe178p+0L : inexact-ok
+= log2 upward ldbl-96-intel 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe17ap+0L : inexact-ok
+= log2 downward ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe178p+0L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe178p+0L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe178p+0L : inexact-ok
+= log2 upward ldbl-96-m68k 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe17ap+0L : inexact-ok
+= log2 downward ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe1782731bf3f6b29p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe1782731bf3f6b29p+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe1782731bf3f6b29p+0L : inexact-ok
+= log2 upward ldbl-128 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe1782731bf3f6b2ap+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe1782731bf3f6bp+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe1782731bf3f6bp+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe1782731bf3f6bp+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x2.b7e151628aed2a6cp+0L : 0x1.71547652b82fe1782731bf3f6b8p+0L : inexact-ok
+= log2 downward ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe176p+0L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe176p+0L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe176p+0L : inexact-ok
+= log2 upward ldbl-96-intel 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe178p+0L : inexact-ok
+= log2 downward ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe176p+0L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe176p+0L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe176p+0L : inexact-ok
+= log2 upward ldbl-96-m68k 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe178p+0L : inexact-ok
+= log2 downward ldbl-128 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe17607b8015c0d7ep+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe17607b8015c0d7ep+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe17607b8015c0d7ep+0L : inexact-ok
+= log2 upward ldbl-128 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe17607b8015c0d7fp+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe17607b8015c0dp+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe17607b8015c0d8p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe17607b8015c0dp+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x2.b7e151628aed2a68p+0L : 0x1.71547652b82fe17607b8015c0d8p+0L : inexact-ok
+= log2 downward ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x1.71547652b82fe1777d0ffda0d23bp+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x1.71547652b82fe1777d0ffda0d23bp+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x1.71547652b82fe1777d0ffda0d23bp+0L : inexact-ok
+= log2 upward ldbl-128 0x2.b7e151628aed2a6abf7158809cf6p+0L : 0x1.71547652b82fe1777d0ffda0d23cp+0L : inexact-ok
+= log2 downward ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0x1.71547652b82fe1777d0ffda0d239p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0x1.71547652b82fe1777d0ffda0d23ap+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0x1.71547652b82fe1777d0ffda0d239p+0L : inexact-ok
+= log2 upward ldbl-128 0x2.b7e151628aed2a6abf7158809cf4p+0L : 0x1.71547652b82fe1777d0ffda0d23ap+0L : inexact-ok
+= log2 downward ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.71547652b82fe1777d0ffda0d24p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.71547652b82fe1777d0ffda0d24p+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.71547652b82fe1777d0ffda0d24p+0L : inexact-ok
+= log2 upward ldbl-128 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.71547652b82fe1777d0ffda0d241p+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.71547652b82fe1777d0ffda0d2p+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.71547652b82fe1777d0ffda0d28p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.71547652b82fe1777d0ffda0d2p+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809dp+0L : 0x1.71547652b82fe1777d0ffda0d28p+0L : inexact-ok
+= log2 downward ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0x1.71547652b82fe1777d0ffda0d1b8p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0x1.71547652b82fe1777d0ffda0d1b8p+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0x1.71547652b82fe1777d0ffda0d1b8p+0L : inexact-ok
+= log2 upward ldbl-128 0x2.b7e151628aed2a6abf7158809cp+0L : 0x1.71547652b82fe1777d0ffda0d1b9p+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0x1.71547652b82fe1777d0ffda0d18p+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0x1.71547652b82fe1777d0ffda0d18p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0x1.71547652b82fe1777d0ffda0d18p+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x2.b7e151628aed2a6abf7158809cp+0L : 0x1.71547652b82fe1777d0ffda0d2p+0L : inexact-ok
+log2 2.0
+= log2 downward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= log2 tonearest flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= log2 towardzero flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= log2 upward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= log2 downward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= log2 tonearest dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= log2 towardzero dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= log2 upward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= log2 downward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 upward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 downward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 upward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 downward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 towardzero ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 upward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+log2 16.0
+= log2 downward flt-32 0x1p+4f : 0x4p+0f : inexact-ok
+= log2 tonearest flt-32 0x1p+4f : 0x4p+0f : inexact-ok
+= log2 towardzero flt-32 0x1p+4f : 0x4p+0f : inexact-ok
+= log2 upward flt-32 0x1p+4f : 0x4p+0f : inexact-ok
+= log2 downward dbl-64 0x1p+4 : 0x4p+0 : inexact-ok
+= log2 tonearest dbl-64 0x1p+4 : 0x4p+0 : inexact-ok
+= log2 towardzero dbl-64 0x1p+4 : 0x4p+0 : inexact-ok
+= log2 upward dbl-64 0x1p+4 : 0x4p+0 : inexact-ok
+= log2 downward ldbl-96-intel 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 upward ldbl-96-intel 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 downward ldbl-128 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 towardzero ldbl-128 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 upward ldbl-128 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1p+4L : 0x4p+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x1p+4L : 0x4p+0L : inexact-ok
+log2 256.0
+= log2 downward flt-32 0x1p+8f : 0x8p+0f : inexact-ok
+= log2 tonearest flt-32 0x1p+8f : 0x8p+0f : inexact-ok
+= log2 towardzero flt-32 0x1p+8f : 0x8p+0f : inexact-ok
+= log2 upward flt-32 0x1p+8f : 0x8p+0f : inexact-ok
+= log2 downward dbl-64 0x1p+8 : 0x8p+0 : inexact-ok
+= log2 tonearest dbl-64 0x1p+8 : 0x8p+0 : inexact-ok
+= log2 towardzero dbl-64 0x1p+8 : 0x8p+0 : inexact-ok
+= log2 upward dbl-64 0x1p+8 : 0x8p+0 : inexact-ok
+= log2 downward ldbl-96-intel 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 upward ldbl-96-intel 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 downward ldbl-96-m68k 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 upward ldbl-96-m68k 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 downward ldbl-128 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 tonearest ldbl-128 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 towardzero ldbl-128 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 upward ldbl-128 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 downward ldbl-128ibm 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x1p+8L : 0x8p+0L : inexact-ok
+= log2 upward ldbl-128ibm 0x1p+8L : 0x8p+0L : inexact-ok
+log2 0.75
+= log2 downward flt-32 0xcp-4f : -0x6.a3fe6p-4f : inexact-ok
+= log2 tonearest flt-32 0xcp-4f : -0x6.a3fe6p-4f : inexact-ok
+= log2 towardzero flt-32 0xcp-4f : -0x6.a3fe58p-4f : inexact-ok
+= log2 upward flt-32 0xcp-4f : -0x6.a3fe58p-4f : inexact-ok
+= log2 downward dbl-64 0xcp-4 : -0x6.a3fe5c604297cp-4 : inexact-ok
+= log2 tonearest dbl-64 0xcp-4 : -0x6.a3fe5c6042978p-4 : inexact-ok
+= log2 towardzero dbl-64 0xcp-4 : -0x6.a3fe5c6042978p-4 : inexact-ok
+= log2 upward dbl-64 0xcp-4 : -0x6.a3fe5c6042978p-4 : inexact-ok
+= log2 downward ldbl-96-intel 0xcp-4L : -0x6.a3fe5c6042978608p-4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0xcp-4L : -0x6.a3fe5c6042978608p-4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0xcp-4L : -0x6.a3fe5c60429786p-4L : inexact-ok
+= log2 upward ldbl-96-intel 0xcp-4L : -0x6.a3fe5c60429786p-4L : inexact-ok
+= log2 downward ldbl-96-m68k 0xcp-4L : -0x6.a3fe5c6042978608p-4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0xcp-4L : -0x6.a3fe5c6042978608p-4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0xcp-4L : -0x6.a3fe5c60429786p-4L : inexact-ok
+= log2 upward ldbl-96-m68k 0xcp-4L : -0x6.a3fe5c60429786p-4L : inexact-ok
+= log2 downward ldbl-128 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f9748p-4L : inexact-ok
+= log2 tonearest ldbl-128 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f9744p-4L : inexact-ok
+= log2 towardzero ldbl-128 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f9744p-4L : inexact-ok
+= log2 upward ldbl-128 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f9744p-4L : inexact-ok
+= log2 downward ldbl-128ibm 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f98p-4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f98p-4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f96p-4L : inexact-ok
+= log2 upward ldbl-128ibm 0xcp-4L : -0x6.a3fe5c6042978605ff4edf5f96p-4L : inexact-ok
+log2 min
+= log2 downward flt-32 0x4p-128f : -0x7.ep+4f : inexact-ok
+= log2 tonearest flt-32 0x4p-128f : -0x7.ep+4f : inexact-ok
+= log2 towardzero flt-32 0x4p-128f : -0x7.ep+4f : inexact-ok
+= log2 upward flt-32 0x4p-128f : -0x7.ep+4f : inexact-ok
+= log2 downward dbl-64 0x4p-128 : -0x7.ep+4 : inexact-ok
+= log2 tonearest dbl-64 0x4p-128 : -0x7.ep+4 : inexact-ok
+= log2 towardzero dbl-64 0x4p-128 : -0x7.ep+4 : inexact-ok
+= log2 upward dbl-64 0x4p-128 : -0x7.ep+4 : inexact-ok
+= log2 downward ldbl-96-intel 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 upward ldbl-96-intel 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 downward ldbl-96-m68k 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 upward ldbl-96-m68k 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 downward ldbl-128 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 upward ldbl-128 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 downward ldbl-128ibm 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 upward ldbl-128ibm 0x4p-128L : -0x7.ep+4L : inexact-ok
+= log2 downward dbl-64 0x4p-1024 : -0x3.fep+8 : inexact-ok
+= log2 tonearest dbl-64 0x4p-1024 : -0x3.fep+8 : inexact-ok
+= log2 towardzero dbl-64 0x4p-1024 : -0x3.fep+8 : inexact-ok
+= log2 upward dbl-64 0x4p-1024 : -0x3.fep+8 : inexact-ok
+= log2 downward ldbl-96-intel 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 upward ldbl-96-intel 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 downward ldbl-128 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 upward ldbl-128 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 downward ldbl-128ibm 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 upward ldbl-128ibm 0x4p-1024L : -0x3.fep+8L : inexact-ok
+= log2 downward ldbl-96-intel 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 upward ldbl-96-intel 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 downward ldbl-96-m68k 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 upward ldbl-96-m68k 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 downward ldbl-128 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 upward ldbl-128 0x4p-16384L : -0x3.ffep+12L : inexact-ok
+= log2 downward ldbl-96-intel 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 upward ldbl-96-intel 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 downward ldbl-96-m68k 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 upward ldbl-96-m68k 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 downward ldbl-128 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 tonearest ldbl-128 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 towardzero ldbl-128 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 upward ldbl-128 0x2p-16384L : -0x3.fffp+12L : inexact-ok
+= log2 downward dbl-64 0x8p-972 : -0x3.c9p+8 : inexact-ok
+= log2 tonearest dbl-64 0x8p-972 : -0x3.c9p+8 : inexact-ok
+= log2 towardzero dbl-64 0x8p-972 : -0x3.c9p+8 : inexact-ok
+= log2 upward dbl-64 0x8p-972 : -0x3.c9p+8 : inexact-ok
+= log2 downward ldbl-96-intel 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 upward ldbl-96-intel 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 downward ldbl-128 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 tonearest ldbl-128 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 towardzero ldbl-128 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 upward ldbl-128 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 downward ldbl-128ibm 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x8p-972L : -0x3.c9p+8L : inexact-ok
+= log2 upward ldbl-128ibm 0x8p-972L : -0x3.c9p+8L : inexact-ok
+log2 min_subnorm
+= log2 downward flt-32 0x8p-152f : -0x9.5p+4f : inexact-ok
+= log2 tonearest flt-32 0x8p-152f : -0x9.5p+4f : inexact-ok
+= log2 towardzero flt-32 0x8p-152f : -0x9.5p+4f : inexact-ok
+= log2 upward flt-32 0x8p-152f : -0x9.5p+4f : inexact-ok
+= log2 downward dbl-64 0x8p-152 : -0x9.5p+4 : inexact-ok
+= log2 tonearest dbl-64 0x8p-152 : -0x9.5p+4 : inexact-ok
+= log2 towardzero dbl-64 0x8p-152 : -0x9.5p+4 : inexact-ok
+= log2 upward dbl-64 0x8p-152 : -0x9.5p+4 : inexact-ok
+= log2 downward ldbl-96-intel 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 upward ldbl-96-intel 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 downward ldbl-96-m68k 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 upward ldbl-96-m68k 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 downward ldbl-128 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 tonearest ldbl-128 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 towardzero ldbl-128 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 upward ldbl-128 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 downward ldbl-128ibm 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 upward ldbl-128ibm 0x8p-152L : -0x9.5p+4L : inexact-ok
+= log2 downward dbl-64 0x4p-1076 : -0x4.32p+8 : inexact-ok
+= log2 tonearest dbl-64 0x4p-1076 : -0x4.32p+8 : inexact-ok
+= log2 towardzero dbl-64 0x4p-1076 : -0x4.32p+8 : inexact-ok
+= log2 upward dbl-64 0x4p-1076 : -0x4.32p+8 : inexact-ok
+= log2 downward ldbl-96-intel 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 upward ldbl-96-intel 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 downward ldbl-96-m68k 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 upward ldbl-96-m68k 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 downward ldbl-128 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 upward ldbl-128 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 downward ldbl-128ibm 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 tonearest ldbl-128ibm 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 towardzero ldbl-128ibm 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 upward ldbl-128ibm 0x4p-1076L : -0x4.32p+8L : inexact-ok
+= log2 downward ldbl-96-intel 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 tonearest ldbl-96-intel 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 towardzero ldbl-96-intel 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 upward ldbl-96-intel 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 downward ldbl-96-m68k 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 upward ldbl-96-m68k 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 downward ldbl-128 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 tonearest ldbl-128 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 towardzero ldbl-128 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 upward ldbl-128 0x8p-16448L : -0x4.03dp+12L : inexact-ok
+= log2 downward ldbl-96-m68k 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 tonearest ldbl-96-m68k 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 towardzero ldbl-96-m68k 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 upward ldbl-96-m68k 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 downward ldbl-128 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 upward ldbl-128 0x4p-16448L : -0x4.03ep+12L : inexact-ok
+= log2 downward ldbl-128 0x4p-16496L : -0x4.06ep+12L : inexact-ok
+= log2 tonearest ldbl-128 0x4p-16496L : -0x4.06ep+12L : inexact-ok
+= log2 towardzero ldbl-128 0x4p-16496L : -0x4.06ep+12L : inexact-ok
+= log2 upward ldbl-128 0x4p-16496L : -0x4.06ep+12L : inexact-ok
+pow 0 0
+= pow downward flt-32 0x0p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+pow 0 -0
+= pow downward flt-32 0x0p+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+pow -0 0
+= pow downward flt-32 -0x0p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x0p+0L : 0x1p+0L : inexact-ok
+pow -0 -0
+= pow downward flt-32 -0x0p+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L -0x0p+0L : 0x1p+0L : inexact-ok
+pow 10 0
+= pow downward flt-32 0xap+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0xap+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0xap+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0xap+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0xap+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xap+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xap+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xap+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+pow 10 -0
+= pow downward flt-32 0xap+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0xap+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0xap+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0xap+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0xap+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xap+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xap+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xap+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+pow -10 0
+= pow downward flt-32 -0xap+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0xap+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0xap+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0xap+0f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0xap+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0xap+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0xap+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0xap+0 0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0xap+0L 0x0p+0L : 0x1p+0L : inexact-ok
+pow -10 -0
+= pow downward flt-32 -0xap+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0xap+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0xap+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0xap+0f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0xap+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0xap+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0xap+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0xap+0 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0xap+0L -0x0p+0L : 0x1p+0L : inexact-ok
+pow 1 1
+= pow downward flt-32 0x1p+0f 0x1p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x1p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x1p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x1p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x1p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x1p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x1p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x1p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x1p+0L : 0x1p+0L : inexact-ok
+pow 1 -1
+= pow downward flt-32 0x1p+0f -0x1p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x1p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x1p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x1p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x1p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x1p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x1p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x1p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x1p+0L : 0x1p+0L : inexact-ok
+pow 1 1.25
+= pow downward flt-32 0x1p+0f 0x1.4p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x1.4p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x1.4p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x1.4p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x1.4p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x1.4p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x1.4p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x1.4p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x1.4p+0L : 0x1p+0L : inexact-ok
+pow 1 -1.25
+= pow downward flt-32 0x1p+0f -0x1.4p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x1.4p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x1.4p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x1.4p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x1.4p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x1.4p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x1.4p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x1.4p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x1.4p+0L : 0x1p+0L : inexact-ok
+pow 1 0x1p62
+= pow downward flt-32 0x1p+0f 0x4p+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x4p+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x4p+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x4p+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x4p+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x4p+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x4p+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x4p+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4p+60L : 0x1p+0L : inexact-ok
+pow 1 0x1p63
+= pow downward flt-32 0x1p+0f 0x8p+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x8p+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x8p+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x8p+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x8p+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x8p+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x8p+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x8p+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x8p+60L : 0x1p+0L : inexact-ok
+pow 1 0x1p64
+= pow downward flt-32 0x1p+0f 0x1p+64f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x1p+64f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x1p+64f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x1p+64f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x1p+64 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x1p+64 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x1p+64 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x1p+64 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+pow 1 0x1p72
+= pow downward flt-32 0x1p+0f 0x1p+72f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x1p+72f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x1p+72f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x1p+72f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x1p+72 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x1p+72 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x1p+72 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x1p+72 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x1p+72L : 0x1p+0L : inexact-ok
+pow 1 min_subnorm
+= pow downward flt-32 0x1p+0f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+pow 1 -min_subnorm
+= pow downward flt-32 0x1p+0f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+pow 32.75 0
+= pow downward flt-32 0x2.0cp+4f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x2.0cp+4f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x2.0cp+4f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x2.0cp+4f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x2.0cp+4 0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x2.0cp+4 0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x2.0cp+4 0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x2.0cp+4 0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+pow 32.75 -0
+= pow downward flt-32 0x2.0cp+4f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x2.0cp+4f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x2.0cp+4f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x2.0cp+4f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x2.0cp+4 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x2.0cp+4 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x2.0cp+4 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x2.0cp+4 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+pow -32.75 0
+= pow downward flt-32 -0x2.0cp+4f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x2.0cp+4f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x2.0cp+4f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x2.0cp+4f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x2.0cp+4 0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x2.0cp+4 0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x2.0cp+4 0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x2.0cp+4 0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x2.0cp+4L 0x0p+0L : 0x1p+0L : inexact-ok
+pow -32.75 -0
+= pow downward flt-32 -0x2.0cp+4f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x2.0cp+4f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x2.0cp+4f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x2.0cp+4f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x2.0cp+4 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x2.0cp+4 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x2.0cp+4 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x2.0cp+4 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x2.0cp+4L -0x0p+0L : 0x1p+0L : inexact-ok
+pow 0x1p72 0
+= pow downward flt-32 0x1p+72f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+72f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+72f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+72f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+72 0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+72 0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+72 0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+72 0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+72L 0x0p+0L : 0x1p+0L : inexact-ok
+pow 0x1p72 -0
+= pow downward flt-32 0x1p+72f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+72f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+72f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+72f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+72 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+72 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+72 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+72 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+72L -0x0p+0L : 0x1p+0L : inexact-ok
+pow 0x1p-72 0
+= pow downward flt-32 0x1p-72f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p-72f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p-72f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p-72f 0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p-72 0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p-72 0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p-72 0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p-72 0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p-72L 0x0p+0L : 0x1p+0L : inexact-ok
+pow 0x1p-72 -0
+= pow downward flt-32 0x1p-72f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p-72f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p-72f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p-72f -0x0p+0f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p-72 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p-72 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p-72 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p-72 -0x0p+0 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p-72L -0x0p+0L : 0x1p+0L : inexact-ok
+pow 0x1p72 0x1p72
+= pow downward flt-32 0x1p+72f 0x1p+72f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0x1p+72f 0x1p+72f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0x1p+72f 0x1p+72f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0x1p+72f 0x1p+72f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1p+72 0x1p+72 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1p+72 0x1p+72 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1p+72 0x1p+72 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1p+72 0x1p+72 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1p+72L 0x1p+72L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1p+72L 0x1p+72L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1p+72L 0x1p+72L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1p+72L 0x1p+72L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1p+72L 0x1p+72L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1p+72L 0x1p+72L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1p+72L 0x1p+72L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1p+72L 0x1p+72L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1p+72L 0x1p+72L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1p+72L 0x1p+72L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1p+72L 0x1p+72L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1p+72L 0x1p+72L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1p+72L 0x1p+72L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1p+72L 0x1p+72L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1p+72L 0x1p+72L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1p+72L 0x1p+72L : plus_infty : inexact-ok overflow errno-erange
+pow 10 -0x1p72
+= pow downward flt-32 0xap+0f -0x1p+72f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xap+0f -0x1p+72f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xap+0f -0x1p+72f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xap+0f -0x1p+72f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xap+0 -0x1p+72 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xap+0 -0x1p+72 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xap+0 -0x1p+72 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xap+0 -0x1p+72 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xap+0L -0x1p+72L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xap+0L -0x1p+72L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xap+0L -0x1p+72L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L -0x1p+72L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xap+0L -0x1p+72L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow max max
+= pow downward flt-32 0xf.fffffp+124f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xf.fffffp+124f 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xf.fffffp+124f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xf.fffffp+124f 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp+124 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp+124 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp+124 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp+124 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.ffffffffffff8p+1020 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+pow 10 -max
+= pow downward flt-32 0xap+0f -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xap+0f -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xap+0f -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xap+0f -0xf.fffffp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xap+0 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xap+0 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xap+0 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xap+0 -0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xap+0L -0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xap+0L -0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xap+0L -0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xap+0L -0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xap+0 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xap+0 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xap+0 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xap+0 -0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xap+0L -0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xap+0L -0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xap+0L -0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xap+0L -0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xap+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xap+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xap+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xap+0L -0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xap+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xap+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xap+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xap+0L -0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xap+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xap+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xap+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xap+0L -0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xap+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xap+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xap+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xap+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xap+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xap+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xap+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xap+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xap+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xap+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xap+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow 0 1
+= pow downward flt-32 0x0p+0f 0x1p+0f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x1p+0f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x1p+0f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x1p+0f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x1p+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x1p+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x1p+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x1p+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x1p+0L : 0x0p+0L : inexact-ok
+pow 0 11
+= pow downward flt-32 0x0p+0f 0xbp+0f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0xbp+0f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0xbp+0f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0xbp+0f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0xbp+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0xbp+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0xbp+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0xbp+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xbp+0L : 0x0p+0L : inexact-ok
+pow -0 1
+= pow downward flt-32 -0x0p+0f 0x1p+0f : -0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x1p+0f : -0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x1p+0f : -0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x1p+0f : -0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1p+0 : -0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1p+0 : -0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1p+0 : -0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1p+0 : -0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1p+0L : -0x0p+0L : inexact-ok
+pow -0 11
+= pow downward flt-32 -0x0p+0f 0xbp+0f : -0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0xbp+0f : -0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0xbp+0f : -0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0xbp+0f : -0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0xbp+0 : -0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0xbp+0 : -0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0xbp+0 : -0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0xbp+0 : -0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xbp+0L : -0x0p+0L : inexact-ok
+pow 0 2
+= pow downward flt-32 0x0p+0f 0x2p+0f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x2p+0f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x2p+0f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x2p+0f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x2p+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x2p+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x2p+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x2p+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+pow 0 11.1
+= pow downward flt-32 0x0p+0f 0xb.1999ap+0f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0xb.1999ap+0f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0xb.1999ap+0f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0xb.1999ap+0f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0xb.1999ap+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0xb.1999ap+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0xb.1999ap+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0xb.1999ap+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow downward flt-32 0x0p+0f 0xb.19999p+0f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0xb.19999p+0f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0xb.19999p+0f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0xb.19999p+0f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0xb.19999p+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0xb.19999p+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0xb.19999p+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0xb.19999p+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 0x0p+0 0xb.19999999999ap+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0xb.19999999999ap+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0xb.19999999999ap+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0xb.19999999999ap+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 0x0p+0 0xb.1999999999998p+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0xb.1999999999998p+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0xb.1999999999998p+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0xb.1999999999998p+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xb.19999999999999999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xb.19999999999999999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xb.19999999999999999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xb.19999999999999999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xb.1999999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xb.1999999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xb.1999999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xb.1999999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+pow -0 2
+= pow downward flt-32 -0x0p+0f 0x2p+0f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x2p+0f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x2p+0f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x2p+0f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x2p+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x2p+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x2p+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x2p+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x2p+0L : 0x0p+0L : inexact-ok
+pow -0 11.1
+= pow downward flt-32 -0x0p+0f 0xb.1999ap+0f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0xb.1999ap+0f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0xb.1999ap+0f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0xb.1999ap+0f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0xb.1999ap+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0xb.1999ap+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0xb.1999ap+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0xb.1999ap+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xb.1999ap+0L : 0x0p+0L : inexact-ok
+= pow downward flt-32 -0x0p+0f 0xb.19999p+0f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0xb.19999p+0f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0xb.19999p+0f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0xb.19999p+0f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0xb.19999p+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0xb.19999p+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0xb.19999p+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0xb.19999p+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xb.19999p+0L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0xb.19999999999ap+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0xb.19999999999ap+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0xb.19999999999ap+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0xb.19999999999ap+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xb.19999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0xb.1999999999998p+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0xb.1999999999998p+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0xb.1999999999998p+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0xb.1999999999998p+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xb.1999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xb.19999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xb.199999999999999p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xb.19999999999999999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xb.19999999999999999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xb.19999999999999999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xb.19999999999999999999999999ap+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xb.1999999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xb.1999999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xb.1999999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xb.1999999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xb.1999999999999999999999999cp+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xb.19999999999999999999999998p+0L : 0x0p+0L : inexact-ok
+pow 0.0 27
+= pow downward flt-32 0x0p+0f 0x1.bp+4f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x1.bp+4f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x1.bp+4f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x1.bp+4f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x1.bp+4 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x1.bp+4 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x1.bp+4 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x1.bp+4 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x1.bp+4L : 0x0p+0L : inexact-ok
+pow 0.0 0xffffff
+= pow downward flt-32 0x0p+0f 0xf.fffffp+20f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0xf.fffffp+20f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0xf.fffffp+20f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0xf.fffffp+20f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0xf.fffffp+20 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0xf.fffffp+20 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0xf.fffffp+20 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0xf.fffffp+20 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xf.fffffp+20L : 0x0p+0L : inexact-ok
+pow 0.0 0x1.fffffffffffffp+52
+= pow downward flt-32 0x0p+0f 0x2p+52f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x2p+52f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x2p+52f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x2p+52f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x2p+52 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x2p+52 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x2p+52 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x2p+52 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow downward flt-32 0x0p+0f 0x1.fffffep+52f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x1.fffffep+52f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x1.fffffep+52f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x1.fffffep+52f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x1.fffffep+52 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x1.fffffep+52 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x1.fffffep+52 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x1.fffffep+52 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 0x0p+0 0x1.fffffffffffffp+52 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x1.fffffffffffffp+52 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x1.fffffffffffffp+52 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x1.fffffffffffffp+52 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x1.fffffffffffffp+52L : 0x0p+0L : inexact-ok
+pow 0.0 0x1.fffffffffffffffep+63
+= pow downward flt-32 0x0p+0f 0x1p+64f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x1p+64f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x1p+64f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x1p+64f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x1p+64 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x1p+64 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x1p+64 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x1p+64 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow downward flt-32 0x0p+0f 0xf.fffffp+60f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0xf.fffffp+60f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0xf.fffffp+60f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0xf.fffffp+60f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0xf.fffffp+60 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0xf.fffffp+60 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0xf.fffffp+60 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0xf.fffffp+60 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 0x0p+0 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xf.fffffffffffffffp+60L : 0x0p+0L : inexact-ok
+pow 0.0 0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 0x0p+0f 0x4p+104f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x4p+104f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x4p+104f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x4p+104f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x4p+104 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x4p+104 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x4p+104 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x4p+104 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow downward flt-32 0x0p+0f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x3.fffffcp+104 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x3.fffffcp+104 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x3.fffffcp+104 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x3.fffffcp+104 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 0x0p+0 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : 0x0p+0L : inexact-ok
+pow 0.0 0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 0x0p+0f 0x2p+112f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x2p+112f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x2p+112f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x2p+112f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x2p+112 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x2p+112 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x2p+112 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x2p+112 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow downward flt-32 0x0p+0f 0x1.fffffep+112f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x1.fffffep+112f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x1.fffffep+112f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x1.fffffep+112f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x1.fffffep+112 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x1.fffffep+112 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x1.fffffep+112 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x1.fffffep+112 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 0x0p+0 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1.ffffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1.ffffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1.ffffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1.ffffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+pow -0 27
+= pow downward flt-32 -0x0p+0f 0x1.bp+4f : -0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x1.bp+4f : -0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x1.bp+4f : -0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x1.bp+4f : -0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1.bp+4 : -0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1.bp+4 : -0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1.bp+4 : -0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1.bp+4 : -0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.bp+4L : -0x0p+0L : inexact-ok
+pow -0 0xffffff
+= pow downward flt-32 -0x0p+0f 0xf.fffffp+20f : -0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0xf.fffffp+20f : -0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0xf.fffffp+20f : -0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0xf.fffffp+20f : -0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0xf.fffffp+20 : -0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0xf.fffffp+20 : -0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0xf.fffffp+20 : -0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0xf.fffffp+20 : -0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xf.fffffp+20L : -0x0p+0L : inexact-ok
+pow -0 0x1fffffe
+= pow downward flt-32 -0x0p+0f 0x1.fffffep+24f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x1.fffffep+24f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x1.fffffep+24f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x1.fffffep+24f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1.fffffep+24 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1.fffffep+24 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1.fffffep+24 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1.fffffep+24 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.fffffep+24L : 0x0p+0L : inexact-ok
+pow -0 0x1.fffffffffffffp+52
+= pow downward flt-32 -0x0p+0f 0x2p+52f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x2p+52f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x2p+52f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x2p+52f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x2p+52 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x2p+52 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x2p+52 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x2p+52 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x2p+52L : 0x0p+0L : inexact-ok
+= pow downward flt-32 -0x0p+0f 0x1.fffffep+52f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x1.fffffep+52f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x1.fffffep+52f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x1.fffffep+52f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1.fffffep+52 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1.fffffep+52 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1.fffffep+52 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1.fffffep+52 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.fffffep+52L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok
+pow -0 0x1.fffffffffffffp+53
+= pow downward flt-32 -0x0p+0f 0x4p+52f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x4p+52f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x4p+52f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x4p+52f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x4p+52 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x4p+52 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x4p+52 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x4p+52 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x4p+52L : 0x0p+0L : inexact-ok
+= pow downward flt-32 -0x0p+0f 0x3.fffffcp+52f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x3.fffffcp+52f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x3.fffffcp+52f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x3.fffffcp+52f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x3.fffffcp+52 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x3.fffffcp+52 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x3.fffffcp+52 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x3.fffffcp+52 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok
+pow -0 0x1.fffffffffffffffep+63
+= pow downward flt-32 -0x0p+0f 0x1p+64f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x1p+64f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x1p+64f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x1p+64f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1p+64 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1p+64 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1p+64 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1p+64 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1p+64L : 0x0p+0L : inexact-ok
+= pow downward flt-32 -0x0p+0f 0xf.fffffp+60f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0xf.fffffp+60f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0xf.fffffp+60f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0xf.fffffp+60f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0xf.fffffp+60 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0xf.fffffp+60 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0xf.fffffp+60 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0xf.fffffp+60 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xf.fffffp+60L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok
+pow -0 0x1.fffffffffffffffep+64
+= pow downward flt-32 -0x0p+0f 0x2p+64f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x2p+64f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x2p+64f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x2p+64f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x2p+64 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x2p+64 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x2p+64 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x2p+64 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x2p+64L : 0x0p+0L : inexact-ok
+= pow downward flt-32 -0x0p+0f 0x1.fffffep+64f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x1.fffffep+64f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x1.fffffep+64f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x1.fffffep+64f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1.fffffep+64 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1.fffffep+64 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1.fffffep+64 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1.fffffep+64 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.fffffep+64L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok
+pow -0 0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0x0p+0f 0x4p+104f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x4p+104f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x4p+104f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x4p+104f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x4p+104 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x4p+104 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x4p+104 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x4p+104 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x4p+104L : 0x0p+0L : inexact-ok
+= pow downward flt-32 -0x0p+0f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x3.fffffcp+104 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x3.fffffcp+104 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x3.fffffcp+104 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x3.fffffcp+104 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok
+pow -0 0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0x0p+0f 0x8p+104f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x8p+104f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x8p+104f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x8p+104f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x8p+104 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x8p+104 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x8p+104 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x8p+104 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x8p+104L : 0x0p+0L : inexact-ok
+= pow downward flt-32 -0x0p+0f 0x7.fffff8p+104f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x7.fffff8p+104f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x7.fffff8p+104f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x7.fffff8p+104f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x7.fffff8p+104 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x7.fffff8p+104 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x7.fffff8p+104 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x7.fffff8p+104 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok
+pow -0 0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0x0p+0f 0x2p+112f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x2p+112f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x2p+112f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x2p+112f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x2p+112 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x2p+112 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x2p+112 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x2p+112 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x2p+112L : 0x0p+0L : inexact-ok
+= pow downward flt-32 -0x0p+0f 0x1.fffffep+112f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x1.fffffep+112f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x1.fffffep+112f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x1.fffffep+112f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1.fffffep+112 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1.fffffep+112 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1.fffffep+112 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1.fffffep+112 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.fffffep+112L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok
+pow -0 0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0x0p+0f 0x4p+112f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x4p+112f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x4p+112f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x4p+112f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x4p+112 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x4p+112 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x4p+112 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x4p+112 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x4p+112L : 0x0p+0L : inexact-ok
+= pow downward flt-32 -0x0p+0f 0x3.fffffcp+112f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x3.fffffcp+112f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x3.fffffcp+112f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x3.fffffcp+112f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x3.fffffcp+112 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x3.fffffcp+112 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x3.fffffcp+112 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x3.fffffcp+112 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok
+pow 0.0 4
+= pow downward flt-32 0x0p+0f 0x4p+0f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x4p+0f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x4p+0f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x4p+0f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x4p+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x4p+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x4p+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x4p+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+pow 0.0 0x1p24
+= pow downward flt-32 0x0p+0f 0x1p+24f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x1p+24f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x1p+24f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x1p+24f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x1p+24 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x1p+24 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x1p+24 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x1p+24 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+pow 0.0 0x1p127
+= pow downward flt-32 0x0p+0f 0x8p+124f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x8p+124f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x8p+124f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x8p+124f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x8p+124 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x8p+124 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x8p+124 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x8p+124 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+pow 0.0 max
+= pow downward flt-32 0x0p+0f 0xf.fffffp+124f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0xf.fffffp+124f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0xf.fffffp+124f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0xf.fffffp+124f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0xf.fffffp+124 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0xf.fffffp+124 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0xf.fffffp+124 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0xf.fffffp+124 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 0x0p+0 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+pow 0.0 min_subnorm
+= pow downward flt-32 0x0p+0f 0x8p-152f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 0x0p+0f 0x8p-152f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 0x0p+0f 0x8p-152f : 0x0p+0f : inexact-ok
+= pow upward flt-32 0x0p+0f 0x8p-152f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 0x0p+0L 0x4p-16496L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 0x0p+0L 0x4p-16496L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 0x0p+0L 0x4p-16496L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 0x0p+0L 0x4p-16496L : 0x0p+0L : inexact-ok
+pow -0 4
+= pow downward flt-32 -0x0p+0f 0x4p+0f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x4p+0f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x4p+0f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x4p+0f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x4p+0 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x4p+0 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x4p+0 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x4p+0 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x4p+0L : 0x0p+0L : inexact-ok
+pow -0 0x1p24
+= pow downward flt-32 -0x0p+0f 0x1p+24f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x1p+24f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x1p+24f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x1p+24f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x1p+24 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x1p+24 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x1p+24 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x1p+24 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x1p+24L : 0x0p+0L : inexact-ok
+pow -0 0x1p127
+= pow downward flt-32 -0x0p+0f 0x8p+124f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x8p+124f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x8p+124f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x8p+124f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x8p+124 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x8p+124 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x8p+124 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x8p+124 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x8p+124L : 0x0p+0L : inexact-ok
+pow -0 max
+= pow downward flt-32 -0x0p+0f 0xf.fffffp+124f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0xf.fffffp+124f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0xf.fffffp+124f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0xf.fffffp+124f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0xf.fffffp+124 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0xf.fffffp+124 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0xf.fffffp+124 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0xf.fffffp+124 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xf.fffffp+124L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok
+pow -0 min_subnorm
+= pow downward flt-32 -0x0p+0f 0x8p-152f : 0x0p+0f : inexact-ok
+= pow tonearest flt-32 -0x0p+0f 0x8p-152f : 0x0p+0f : inexact-ok
+= pow towardzero flt-32 -0x0p+0f 0x8p-152f : 0x0p+0f : inexact-ok
+= pow upward flt-32 -0x0p+0f 0x8p-152f : 0x0p+0f : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x8p-152 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x8p-152L : 0x0p+0L : inexact-ok
+= pow downward dbl-64 -0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= pow tonearest dbl-64 -0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= pow towardzero dbl-64 -0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= pow upward dbl-64 -0x0p+0 0x4p-1076 : 0x0p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x0p+0L 0x4p-1076L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x8p-16448L : 0x0p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x4p-16448L : 0x0p+0L : inexact-ok
+= pow downward ldbl-128 -0x0p+0L 0x4p-16496L : 0x0p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x0p+0L 0x4p-16496L : 0x0p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x0p+0L 0x4p-16496L : 0x0p+0L : inexact-ok
+= pow upward ldbl-128 -0x0p+0L 0x4p-16496L : 0x0p+0L : inexact-ok
+pow 16 0.25
+= pow downward flt-32 0x1p+4f 0x4p-4f : 0x2p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+4f 0x4p-4f : 0x2p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+4f 0x4p-4f : 0x2p+0f : inexact-ok
+= pow upward flt-32 0x1p+4f 0x4p-4f : 0x2p+0f : inexact-ok
+= pow downward dbl-64 0x1p+4 0x4p-4 : 0x2p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+4 0x4p-4 : 0x2p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+4 0x4p-4 : 0x2p+0 : inexact-ok
+= pow upward dbl-64 0x1p+4 0x4p-4 : 0x2p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+4L 0x4p-4L : 0x2p+0L : inexact-ok
+pow 0x1p64 0.125
+= pow downward flt-32 0x1p+64f 0x2p-4f : 0x1p+8f : inexact-ok
+= pow tonearest flt-32 0x1p+64f 0x2p-4f : 0x1p+8f : inexact-ok
+= pow towardzero flt-32 0x1p+64f 0x2p-4f : 0x1p+8f : inexact-ok
+= pow upward flt-32 0x1p+64f 0x2p-4f : 0x1p+8f : inexact-ok
+= pow downward dbl-64 0x1p+64 0x2p-4 : 0x1p+8 : inexact-ok
+= pow tonearest dbl-64 0x1p+64 0x2p-4 : 0x1p+8 : inexact-ok
+= pow towardzero dbl-64 0x1p+64 0x2p-4 : 0x1p+8 : inexact-ok
+= pow upward dbl-64 0x1p+64 0x2p-4 : 0x1p+8 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow downward ldbl-128 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow tonearest ldbl-128 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow towardzero ldbl-128 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow upward ldbl-128 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+64L 0x2p-4L : 0x1p+8L : inexact-ok
+pow 2 4
+= pow downward flt-32 0x2p+0f 0x4p+0f : 0x1p+4f : inexact-ok
+= pow tonearest flt-32 0x2p+0f 0x4p+0f : 0x1p+4f : inexact-ok
+= pow towardzero flt-32 0x2p+0f 0x4p+0f : 0x1p+4f : inexact-ok
+= pow upward flt-32 0x2p+0f 0x4p+0f : 0x1p+4f : inexact-ok
+= pow downward dbl-64 0x2p+0 0x4p+0 : 0x1p+4 : inexact-ok
+= pow tonearest dbl-64 0x2p+0 0x4p+0 : 0x1p+4 : inexact-ok
+= pow towardzero dbl-64 0x2p+0 0x4p+0 : 0x1p+4 : inexact-ok
+= pow upward dbl-64 0x2p+0 0x4p+0 : 0x1p+4 : inexact-ok
+= pow downward ldbl-96-intel 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow towardzero ldbl-96-intel 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow upward ldbl-96-intel 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow downward ldbl-96-m68k 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow upward ldbl-96-m68k 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow downward ldbl-128 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow tonearest ldbl-128 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow towardzero ldbl-128 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow upward ldbl-128 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow downward ldbl-128ibm 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow towardzero ldbl-128ibm 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+= pow upward ldbl-128ibm 0x2p+0L 0x4p+0L : 0x1p+4L : inexact-ok
+pow 256 8
+= pow downward flt-32 0x1p+8f 0x8p+0f : 0x1p+64f : inexact-ok
+= pow tonearest flt-32 0x1p+8f 0x8p+0f : 0x1p+64f : inexact-ok
+= pow towardzero flt-32 0x1p+8f 0x8p+0f : 0x1p+64f : inexact-ok
+= pow upward flt-32 0x1p+8f 0x8p+0f : 0x1p+64f : inexact-ok
+= pow downward dbl-64 0x1p+8 0x8p+0 : 0x1p+64 : inexact-ok
+= pow tonearest dbl-64 0x1p+8 0x8p+0 : 0x1p+64 : inexact-ok
+= pow towardzero dbl-64 0x1p+8 0x8p+0 : 0x1p+64 : inexact-ok
+= pow upward dbl-64 0x1p+8 0x8p+0 : 0x1p+64 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow downward ldbl-128 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow tonearest ldbl-128 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow towardzero ldbl-128 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow upward ldbl-128 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+8L 0x8p+0L : 0x1p+64L : inexact-ok
+pow 0.75 1.25
+= pow downward flt-32 0xcp-4f 0x1.4p+0f : 0xb.2ad17p-4f : inexact-ok
+= pow tonearest flt-32 0xcp-4f 0x1.4p+0f : 0xb.2ad17p-4f : inexact-ok
+= pow towardzero flt-32 0xcp-4f 0x1.4p+0f : 0xb.2ad17p-4f : inexact-ok
+= pow upward flt-32 0xcp-4f 0x1.4p+0f : 0xb.2ad18p-4f : inexact-ok
+= pow downward dbl-64 0xcp-4 0x1.4p+0 : 0xb.2ad170c81b418p-4 : inexact-ok
+= pow tonearest dbl-64 0xcp-4 0x1.4p+0 : 0xb.2ad170c81b418p-4 : inexact-ok
+= pow towardzero dbl-64 0xcp-4 0x1.4p+0 : 0xb.2ad170c81b418p-4 : inexact-ok
+= pow upward dbl-64 0xcp-4 0x1.4p+0 : 0xb.2ad170c81b42p-4 : inexact-ok
+= pow downward ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183dp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183dp-4L : inexact-ok
+= pow towardzero ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183dp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183ep-4L : inexact-ok
+= pow downward ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183dp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183dp-4L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183dp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183ep-4L : inexact-ok
+= pow downward ldbl-128 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183d3186cfafacccp-4L : inexact-ok
+= pow tonearest ldbl-128 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183d3186cfafaccc8p-4L : inexact-ok
+= pow towardzero ldbl-128 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183d3186cfafacccp-4L : inexact-ok
+= pow upward ldbl-128 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183d3186cfafaccc8p-4L : inexact-ok
+= pow downward ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183d3186cfafaccp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183d3186cfafaccp-4L : inexact-ok
+= pow towardzero ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183d3186cfafaccp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xcp-4L 0x1.4p+0L : 0xb.2ad170c81b4183d3186cfafadp-4L : inexact-ok
+pow -7.49321e+133 -9.80818e+16
+= pow downward flt-32 -0xf.fffffp+124f -0x1.5c74ep+56f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x1.5c74ep+56f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x1.5c74ep+56f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x1.5c74ep+56f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1.5c74ep+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1.5c74ep+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1.5c74ep+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1.5c74ep+56 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.5c74ep+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74ep+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.5c74ep+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.5c74ep+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0xf.fffffp+124f -0x1.5c74e2p+56f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x1.5c74e2p+56f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x1.5c74e2p+56f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x1.5c74e2p+56f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1.5c74e2p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1.5c74e2p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1.5c74e2p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1.5c74e2p+56 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.5c74e2p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1.5c74e09fee5p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1.5c74e09fee5p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1.5c74e09fee5p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1.5c74e09fee5p+56 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.5c74e09fee5p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74ep+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74ep+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74ep+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74ep+56 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74ep+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74e2p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74e2p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74e2p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74e2p+56 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74e2p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74e09fee5p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74e09fee5p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74e09fee5p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x1.a64503155bc0fp+444 -0x1.5c74e09fee5p+56 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0fp+444L -0x1.5c74e09fee5p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74ep+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74ep+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74ep+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74ep+56 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74ep+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74e2p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74e2p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74e2p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74e2p+56 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74e2p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74e09fee5p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74e09fee5p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74e09fee5p+56 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x1.a64503155bc1p+444 -0x1.5c74e09fee5p+56 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc1p+444L -0x1.5c74e09fee5p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74ep+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74e2p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67ap+444L -0x1.5c74e09fee5p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74ep+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74e2p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67cp+444L -0x1.5c74e09fee5p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74ep+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74e2p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c507p+444L -0x1.5c74e09fee5p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74ep+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74e2p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c508p+444L -0x1.5c74e09fee5p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74ep+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74ep+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e2p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e2p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e09fee5p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c5p+444L -0x1.5c74e09fee5p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74ep+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74ep+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74ep+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e2p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e2p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e2p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e09fee5p+56L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e09fee5p+56L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x1.a64503155bc0f67a206bd9b6c58p+444L -0x1.5c74e09fee5p+56L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -1.0 -0xffffff
+= pow downward flt-32 -0x1p+0f -0xf.fffffp+20f : -0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0xf.fffffp+20f : -0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0xf.fffffp+20f : -0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0xf.fffffp+20f : -0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0xf.fffffp+20 : -0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0xf.fffffp+20 : -0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0xf.fffffp+20 : -0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0xf.fffffp+20 : -0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0xf.fffffp+20L : -0x1p+0L : inexact-ok
+pow -1.0 -0x1fffffe
+= pow downward flt-32 -0x1p+0f -0x1.fffffep+24f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x1.fffffep+24f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x1.fffffep+24f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x1.fffffep+24f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x1.fffffep+24 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x1.fffffep+24 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x1.fffffep+24 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x1.fffffep+24 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1.fffffep+24L : 0x1p+0L : inexact-ok
+pow -1.0 -0x1.fffffffffffffp+52
+= pow downward flt-32 -0x1p+0f -0x1.fffffep+52f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x1.fffffep+52f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x1.fffffep+52f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x1.fffffep+52f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x1.fffffep+52 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x1.fffffep+52 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x1.fffffep+52 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x1.fffffep+52 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f -0x2p+52f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x2p+52f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x2p+52f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x2p+52f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x2p+52 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x2p+52 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x2p+52 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x2p+52 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x2p+52L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x1.fffffffffffffp+52 : -0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x1.fffffffffffffp+52 : -0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x1.fffffffffffffp+52 : -0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x1.fffffffffffffp+52 : -0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+pow -1.0 -0x1.fffffffffffffp+53
+= pow downward flt-32 -0x1p+0f -0x3.fffffcp+52f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x3.fffffcp+52f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x3.fffffcp+52f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x3.fffffcp+52f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x3.fffffcp+52 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x3.fffffcp+52 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x3.fffffcp+52 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x3.fffffcp+52 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f -0x4p+52f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x4p+52f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x4p+52f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x4p+52f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x4p+52 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x4p+52 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x4p+52 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x4p+52 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x4p+52L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x3.ffffffffffffep+52 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x3.ffffffffffffep+52 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x3.ffffffffffffep+52 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x3.ffffffffffffep+52 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+pow -1.0 -0x1.fffffffffffffffep+63
+= pow downward flt-32 -0x1p+0f -0xf.fffffp+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0xf.fffffp+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0xf.fffffp+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0xf.fffffp+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0xf.fffffp+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0xf.fffffp+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0xf.fffffp+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0xf.fffffp+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f -0x1p+64f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x1p+64f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x1p+64f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x1p+64f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x1p+64 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x1p+64 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x1p+64 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x1p+64 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0xf.ffffffffffff8p+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0xf.ffffffffffff8p+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0xf.ffffffffffff8p+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0xf.ffffffffffff8p+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+pow -1.0 -0x1.fffffffffffffffep+64
+= pow downward flt-32 -0x1p+0f -0x1.fffffep+64f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x1.fffffep+64f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x1.fffffep+64f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x1.fffffep+64f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x1.fffffep+64 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x1.fffffep+64 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x1.fffffep+64 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x1.fffffep+64 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f -0x2p+64f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x2p+64f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x2p+64f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x2p+64f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x2p+64 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x2p+64 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x2p+64 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x2p+64 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x2p+64L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x1.fffffffffffffp+64 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x1.fffffffffffffp+64 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x1.fffffffffffffp+64 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x1.fffffffffffffp+64 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+pow -1.0 -0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0x1p+0f -0x3.fffffcp+104f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x3.fffffcp+104f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x3.fffffcp+104f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x3.fffffcp+104f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x3.fffffcp+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x3.fffffcp+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x3.fffffcp+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x3.fffffcp+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f -0x4p+104f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x4p+104f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x4p+104f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x4p+104f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x4p+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x4p+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x4p+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x4p+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x4p+104L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x3.ffffffffffffep+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x3.ffffffffffffep+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x3.ffffffffffffep+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x3.ffffffffffffep+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+pow -1.0 -0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0x1p+0f -0x7.fffff8p+104f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x7.fffff8p+104f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x7.fffff8p+104f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x7.fffff8p+104f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x7.fffff8p+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x7.fffff8p+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x7.fffff8p+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x7.fffff8p+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f -0x8p+104f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x8p+104f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x8p+104f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x8p+104f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x8p+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x8p+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x8p+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x8p+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x8p+104L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x7.ffffffffffffcp+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x7.ffffffffffffcp+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x7.ffffffffffffcp+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x7.ffffffffffffcp+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+pow -1.0 -0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0x1p+0f -0x1.fffffep+112f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x1.fffffep+112f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x1.fffffep+112f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x1.fffffep+112f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x1.fffffep+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x1.fffffep+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x1.fffffep+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x1.fffffep+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f -0x2p+112f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x2p+112f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x2p+112f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x2p+112f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x2p+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x2p+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x2p+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x2p+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x2p+112L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x1.fffffffffffffp+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x1.fffffffffffffp+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x1.fffffffffffffp+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x1.fffffffffffffp+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.ffffffffffffffffffffffffffffp+112L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.ffffffffffffffffffffffffffffp+112L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.ffffffffffffffffffffffffffffp+112L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.ffffffffffffffffffffffffffffp+112L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+pow -1.0 -0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0x1p+0f -0x3.fffffcp+112f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x3.fffffcp+112f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x3.fffffcp+112f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x3.fffffcp+112f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x3.fffffcp+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x3.fffffcp+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x3.fffffcp+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x3.fffffcp+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f -0x4p+112f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0x4p+112f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0x4p+112f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0x4p+112f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x4p+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x4p+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x4p+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x4p+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x4p+112L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0x3.ffffffffffffep+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0x3.ffffffffffffep+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0x3.ffffffffffffep+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0x3.ffffffffffffep+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.fffffffffffffffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.fffffffffffffffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.fffffffffffffffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.fffffffffffffffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+pow -1.0 -max
+= pow downward flt-32 -0x1p+0f -0xf.fffffp+124f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f -0xf.fffffp+124f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f -0xf.fffffp+124f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f -0xf.fffffp+124f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0xf.fffffp+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0xf.fffffp+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0xf.fffffp+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0xf.fffffp+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 -0xf.ffffffffffff8p+1020 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 -0xf.ffffffffffff8p+1020 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 -0xf.ffffffffffff8p+1020 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 -0xf.ffffffffffff8p+1020 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+pow -1.0 0xffffff
+= pow downward flt-32 -0x1p+0f 0xf.fffffp+20f : -0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0xf.fffffp+20f : -0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0xf.fffffp+20f : -0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0xf.fffffp+20f : -0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0xf.fffffp+20 : -0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0xf.fffffp+20 : -0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0xf.fffffp+20 : -0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0xf.fffffp+20 : -0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0xf.fffffp+20L : -0x1p+0L : inexact-ok
+pow -1.0 0x1fffffe
+= pow downward flt-32 -0x1p+0f 0x1.fffffep+24f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x1.fffffep+24f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x1.fffffep+24f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x1.fffffep+24f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x1.fffffep+24 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x1.fffffep+24 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x1.fffffep+24 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x1.fffffep+24 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1.fffffep+24L : 0x1p+0L : inexact-ok
+pow -1.0 0x1.fffffffffffffp+52
+= pow downward flt-32 -0x1p+0f 0x2p+52f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x2p+52f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x2p+52f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x2p+52f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x2p+52 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x2p+52 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x2p+52 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x2p+52 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x2p+52L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f 0x1.fffffep+52f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x1.fffffep+52f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x1.fffffep+52f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x1.fffffep+52f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x1.fffffep+52 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x1.fffffep+52 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x1.fffffep+52 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x1.fffffep+52 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1.fffffep+52L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x1.fffffffffffffp+52 : -0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x1.fffffffffffffp+52 : -0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x1.fffffffffffffp+52 : -0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x1.fffffffffffffp+52 : -0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+52L : -0x1p+0L : inexact-ok
+pow -1.0 0x1.fffffffffffffp+53
+= pow downward flt-32 -0x1p+0f 0x4p+52f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x4p+52f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x4p+52f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x4p+52f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x4p+52 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x4p+52 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x4p+52 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x4p+52 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x4p+52L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f 0x3.fffffcp+52f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x3.fffffcp+52f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x3.fffffcp+52f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x3.fffffcp+52f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x3.fffffcp+52 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x3.fffffcp+52 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x3.fffffcp+52 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x3.fffffcp+52 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x3.fffffcp+52L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x3.ffffffffffffep+52 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x3.ffffffffffffep+52 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x3.ffffffffffffep+52 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x3.ffffffffffffep+52 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+52L : 0x1p+0L : inexact-ok
+pow -1.0 0x1.fffffffffffffffep+63
+= pow downward flt-32 -0x1p+0f 0x1p+64f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x1p+64f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x1p+64f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x1p+64f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x1p+64 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x1p+64 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x1p+64 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x1p+64 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1p+64L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f 0xf.fffffp+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0xf.fffffp+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0xf.fffffp+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0xf.fffffp+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0xf.fffffp+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0xf.fffffp+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0xf.fffffp+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0xf.fffffp+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0xf.fffffp+60L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 0xf.ffffffffffff8p+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0xf.ffffffffffff8p+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0xf.ffffffffffff8p+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0xf.ffffffffffff8p+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0xf.ffffffffffff8p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0xf.fffffffffffffffp+60L : -0x1p+0L : inexact-ok
+pow -1.0 0x1.fffffffffffffffep+64
+= pow downward flt-32 -0x1p+0f 0x2p+64f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x2p+64f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x2p+64f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x2p+64f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x2p+64 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x2p+64 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x2p+64 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x2p+64 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x2p+64L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f 0x1.fffffep+64f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x1.fffffep+64f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x1.fffffep+64f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x1.fffffep+64f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x1.fffffep+64 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x1.fffffep+64 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x1.fffffep+64 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x1.fffffep+64 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1.fffffep+64L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x1.fffffffffffffp+64 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x1.fffffffffffffp+64 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x1.fffffffffffffp+64 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x1.fffffffffffffp+64 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1.fffffffffffffffep+64L : 0x1p+0L : inexact-ok
+pow -1.0 0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0x1p+0f 0x4p+104f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x4p+104f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x4p+104f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x4p+104f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x4p+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x4p+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x4p+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x4p+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x4p+104L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f 0x3.fffffcp+104f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x3.fffffcp+104f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x3.fffffcp+104f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x3.fffffcp+104f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x3.fffffcp+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x3.fffffcp+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x3.fffffcp+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x3.fffffcp+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x3.fffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x3.ffffffffffffep+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x3.ffffffffffffep+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x3.ffffffffffffep+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x3.ffffffffffffep+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x3.fffffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0x1p+0L : inexact-ok
+pow -1.0 0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0x1p+0f 0x8p+104f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x8p+104f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x8p+104f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x8p+104f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x8p+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x8p+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x8p+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x8p+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x8p+104L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f 0x7.fffff8p+104f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x7.fffff8p+104f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x7.fffff8p+104f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x7.fffff8p+104f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x7.fffff8p+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x7.fffff8p+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x7.fffff8p+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x7.fffff8p+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x7.fffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x7.ffffffffffffcp+104 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x7.ffffffffffffcp+104 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x7.ffffffffffffcp+104 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x7.ffffffffffffcp+104 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x7.ffffffffffffcp+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x7.fffffffffffffff8p+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x7.fffffffffffffffffffffffffep+104L : 0x1p+0L : inexact-ok
+pow -1.0 0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0x1p+0f 0x2p+112f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x2p+112f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x2p+112f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x2p+112f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x2p+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x2p+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x2p+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x2p+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x2p+112L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f 0x1.fffffep+112f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x1.fffffep+112f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x1.fffffep+112f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x1.fffffep+112f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x1.fffffep+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x1.fffffep+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x1.fffffep+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x1.fffffep+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1.fffffep+112L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x1.fffffffffffffp+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x1.fffffffffffffp+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x1.fffffffffffffp+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x1.fffffffffffffp+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1.fffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1.fffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.ffffffffffffffffffffffffffffp+112L : -0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.ffffffffffffffffffffffffffffp+112L : -0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.ffffffffffffffffffffffffffffp+112L : -0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.ffffffffffffffffffffffffffffp+112L : -0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0x1p+0L : inexact-ok
+pow -1.0 0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0x1p+0f 0x4p+112f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x4p+112f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x4p+112f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x4p+112f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x4p+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x4p+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x4p+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x4p+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x4p+112L : 0x1p+0L : inexact-ok
+= pow downward flt-32 -0x1p+0f 0x3.fffffcp+112f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0x3.fffffcp+112f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0x3.fffffcp+112f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0x3.fffffcp+112f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x3.fffffcp+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x3.fffffcp+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x3.fffffcp+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x3.fffffcp+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x3.fffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 0x3.ffffffffffffep+112 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0x3.ffffffffffffep+112 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0x3.ffffffffffffep+112 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0x3.ffffffffffffep+112 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x3.ffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x3.fffffffffffffffcp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.fffffffffffffffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.fffffffffffffffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.fffffffffffffffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.fffffffffffffffffffffffffffep+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0x1p+0L : inexact-ok
+pow -1.0 max
+= pow downward flt-32 -0x1p+0f 0xf.fffffp+124f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 -0x1p+0f 0xf.fffffp+124f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 -0x1p+0f 0xf.fffffp+124f : 0x1p+0f : inexact-ok
+= pow upward flt-32 -0x1p+0f 0xf.fffffp+124f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 -0x1p+0 0xf.fffffp+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0xf.fffffp+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0xf.fffffp+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0xf.fffffp+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0xf.fffffp+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 -0x1p+0 0xf.ffffffffffff8p+1020 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 -0x1p+0 0xf.ffffffffffff8p+1020 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 -0x1p+0 0xf.ffffffffffff8p+1020 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 -0x1p+0 0xf.ffffffffffff8p+1020 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0xf.ffffffffffff8p+1020L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0xf.fffffffffffffffp+16380L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 -0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 -0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 -0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 -0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm -0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm -0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm -0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm -0x1p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x1p+0L : inexact-ok
+pow -2.0 126
+= pow downward flt-32 -0x2p+0f 0x7.ep+4f : 0x4p+124f : inexact-ok
+= pow tonearest flt-32 -0x2p+0f 0x7.ep+4f : 0x4p+124f : inexact-ok
+= pow towardzero flt-32 -0x2p+0f 0x7.ep+4f : 0x4p+124f : inexact-ok
+= pow upward flt-32 -0x2p+0f 0x7.ep+4f : 0x4p+124f : inexact-ok
+= pow downward dbl-64 -0x2p+0 0x7.ep+4 : 0x4p+124 : inexact-ok
+= pow tonearest dbl-64 -0x2p+0 0x7.ep+4 : 0x4p+124 : inexact-ok
+= pow towardzero dbl-64 -0x2p+0 0x7.ep+4 : 0x4p+124 : inexact-ok
+= pow upward dbl-64 -0x2p+0 0x7.ep+4 : 0x4p+124 : inexact-ok
+= pow downward ldbl-96-intel -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow towardzero ldbl-96-intel -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow downward ldbl-96-m68k -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow downward ldbl-128 -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow towardzero ldbl-128 -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow upward ldbl-128 -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow downward ldbl-128ibm -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow towardzero ldbl-128ibm -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x7.ep+4L : 0x4p+124L : inexact-ok
+pow -2.0 127
+= pow downward flt-32 -0x2p+0f 0x7.fp+4f : -0x8p+124f : inexact-ok
+= pow tonearest flt-32 -0x2p+0f 0x7.fp+4f : -0x8p+124f : inexact-ok
+= pow towardzero flt-32 -0x2p+0f 0x7.fp+4f : -0x8p+124f : inexact-ok
+= pow upward flt-32 -0x2p+0f 0x7.fp+4f : -0x8p+124f : inexact-ok
+= pow downward dbl-64 -0x2p+0 0x7.fp+4 : -0x8p+124 : inexact-ok
+= pow tonearest dbl-64 -0x2p+0 0x7.fp+4 : -0x8p+124 : inexact-ok
+= pow towardzero dbl-64 -0x2p+0 0x7.fp+4 : -0x8p+124 : inexact-ok
+= pow upward dbl-64 -0x2p+0 0x7.fp+4 : -0x8p+124 : inexact-ok
+= pow downward ldbl-96-intel -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow towardzero ldbl-96-intel -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow downward ldbl-96-m68k -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow downward ldbl-128 -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow towardzero ldbl-128 -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow upward ldbl-128 -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow downward ldbl-128ibm -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow towardzero ldbl-128ibm -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x7.fp+4L : -0x8p+124L : inexact-ok
+pow -2.0 -126
+= pow downward flt-32 -0x2p+0f -0x7.ep+4f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f -0x7.ep+4f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero flt-32 -0x2p+0f -0x7.ep+4f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow upward flt-32 -0x2p+0f -0x7.ep+4f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x7.ep+4 : 0x4p-128 : inexact-ok
+= pow tonearest dbl-64 -0x2p+0 -0x7.ep+4 : 0x4p-128 : inexact-ok
+= pow towardzero dbl-64 -0x2p+0 -0x7.ep+4 : 0x4p-128 : inexact-ok
+= pow upward dbl-64 -0x2p+0 -0x7.ep+4 : 0x4p-128 : inexact-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow tonearest ldbl-96-intel -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow towardzero ldbl-96-intel -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow upward ldbl-96-intel -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow upward ldbl-96-m68k -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow downward ldbl-128 -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow tonearest ldbl-128 -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow towardzero ldbl-128 -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow upward ldbl-128 -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow tonearest ldbl-128ibm -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow towardzero ldbl-128ibm -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow upward ldbl-128ibm -0x2p+0L -0x7.ep+4L : 0x4p-128L : inexact-ok
+pow -2.0 -127
+= pow downward flt-32 -0x2p+0f -0x7.fp+4f : -0x2p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f -0x7.fp+4f : -0x2p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero flt-32 -0x2p+0f -0x7.fp+4f : -0x2p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow upward flt-32 -0x2p+0f -0x7.fp+4f : -0x2p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x7.fp+4 : -0x2p-128 : inexact-ok
+= pow tonearest dbl-64 -0x2p+0 -0x7.fp+4 : -0x2p-128 : inexact-ok
+= pow towardzero dbl-64 -0x2p+0 -0x7.fp+4 : -0x2p-128 : inexact-ok
+= pow upward dbl-64 -0x2p+0 -0x7.fp+4 : -0x2p-128 : inexact-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow tonearest ldbl-96-intel -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow towardzero ldbl-96-intel -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow upward ldbl-96-intel -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow upward ldbl-96-m68k -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow downward ldbl-128 -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow tonearest ldbl-128 -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow towardzero ldbl-128 -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow upward ldbl-128 -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow tonearest ldbl-128ibm -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow towardzero ldbl-128ibm -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow upward ldbl-128ibm -0x2p+0L -0x7.fp+4L : -0x2p-128L : inexact-ok
+pow -2.0 -0xffffff
+= pow downward flt-32 -0x2p+0f -0xf.fffffp+20f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f -0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x2p+0 -0xf.fffffp+20 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 -0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L -0xf.fffffp+20L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L -0xf.fffffp+20L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x2p+0L -0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L -0xf.fffffp+20L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -2.0 -0x1fffffe
+= pow downward flt-32 -0x2p+0f -0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x1.fffffep+24f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x1.fffffep+24 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x1.fffffep+24L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x1.fffffep+24L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1.fffffep+24L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -2.0 -0x1.fffffffffffffp+52
+= pow downward flt-32 -0x2p+0f -0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x1.fffffep+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x1.fffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x1.fffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x1.fffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1.fffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x2p+0f -0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x2p+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x2p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x2p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x2p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x2p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x1.fffffffffffffp+52 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 -0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+52L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+52L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x2p+0L -0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+52L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -2.0 -0x1.fffffffffffffp+53
+= pow downward flt-32 -0x2p+0f -0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x3.fffffcp+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x3.fffffcp+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x3.fffffcp+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x3.fffffcp+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x3.fffffcp+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x2p+0f -0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x4p+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x4p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x4p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x4p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x4p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x3.ffffffffffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -2.0 -0x1.fffffffffffffffep+63
+= pow downward flt-32 -0x2p+0f -0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0xf.fffffp+60f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0xf.fffffp+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0xf.fffffp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0xf.fffffp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0xf.fffffp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x2p+0f -0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x1p+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x1p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x1p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x1p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0xf.ffffffffffff8p+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0xf.ffffffffffff8p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0xf.ffffffffffff8p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0xf.ffffffffffff8p+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0xf.fffffffffffffffp+60L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L -0xf.fffffffffffffffp+60L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x2p+0L -0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L -0xf.fffffffffffffffp+60L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -2.0 -0x1.fffffffffffffffep+64
+= pow downward flt-32 -0x2p+0f -0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x1.fffffep+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x1.fffffep+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x1.fffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x1.fffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1.fffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x2p+0f -0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x2p+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x2p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x2p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x2p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x2p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x1.fffffffffffffp+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x1.fffffffffffffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1.fffffffffffffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -2.0 -0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0x2p+0f -0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x3.fffffcp+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x3.fffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x3.fffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x3.fffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x3.fffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x2p+0f -0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x4p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x4p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x4p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x4p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x4p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x3.ffffffffffffep+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x3.fffffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -2.0 -0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0x2p+0f -0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x7.fffff8p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x7.fffff8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x7.fffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x7.fffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x7.fffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x2p+0f -0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x8p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x7.ffffffffffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x7.ffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x7.ffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x7.ffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x7.fffffffffffffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x7.fffffffffffffffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -2.0 -0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0x2p+0f -0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x1.fffffep+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x1.fffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x1.fffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x1.fffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1.fffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x2p+0f -0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x2p+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x2p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x2p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x2p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x2p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x1.fffffffffffffp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x1.fffffffffffffp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1.fffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x1.fffffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x1.fffffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1.fffffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x2p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -2.0 -0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0x2p+0f -0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x3.fffffcp+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x3.fffffcp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x3.fffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x3.fffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x3.fffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x2p+0f -0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0x4p+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x4p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x4p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x4p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x4p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0x3.ffffffffffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x3.ffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x3.ffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x3.ffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x3.fffffffffffffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0x3.ffffffffffffffffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -2.0 -max
+= pow downward flt-32 -0x2p+0f -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x2p+0f -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x2p+0f -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x2p+0f -0xf.fffffp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x2p+0 -0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x2p+0L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -2.0 0xffffff
+= pow downward flt-32 -0x2p+0f 0xf.fffffp+20f : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest flt-32 -0x2p+0f 0xf.fffffp+20f : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0xf.fffffp+20f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0xf.fffffp+20f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x2p+0 0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -2.0 0x1fffffe
+= pow downward flt-32 -0x2p+0f 0x1.fffffep+24f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x1.fffffep+24f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x1.fffffep+24f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x1.fffffep+24f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+pow -2.0 0x1.fffffffffffffp+52
+= pow downward flt-32 -0x2p+0f 0x2p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x2p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x2p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x2p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x2p+0f 0x1.fffffep+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x1.fffffep+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x1.fffffep+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x1.fffffep+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x2p+0 0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -2.0 0x1.fffffffffffffp+53
+= pow downward flt-32 -0x2p+0f 0x4p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x4p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x4p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x4p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x2p+0f 0x3.fffffcp+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x3.fffffcp+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x3.fffffcp+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x3.fffffcp+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+pow -2.0 0x1.fffffffffffffffep+63
+= pow downward flt-32 -0x2p+0f 0x1p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x1p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x1p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x1p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x2p+0f 0xf.fffffp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0xf.fffffp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0xf.fffffp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0xf.fffffp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p+0L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p+0L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p+0L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -2.0 0x1.fffffffffffffffep+64
+= pow downward flt-32 -0x2p+0f 0x2p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x2p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x2p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x2p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x2p+0f 0x1.fffffep+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x1.fffffep+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x1.fffffep+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x1.fffffep+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+pow -2.0 0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0x2p+0f 0x4p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x4p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x4p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x4p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x2p+0f 0x3.fffffcp+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x3.fffffcp+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x3.fffffcp+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x3.fffffcp+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x2p+0L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x2p+0L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -2.0 0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0x2p+0f 0x8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x2p+0f 0x7.fffff8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x7.fffff8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x7.fffff8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x7.fffff8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+pow -2.0 0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0x2p+0f 0x2p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x2p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x2p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x2p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x2p+0f 0x1.fffffep+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x1.fffffep+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x1.fffffep+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x1.fffffep+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p+0L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x2p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+pow -2.0 0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0x2p+0f 0x4p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x4p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x4p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x4p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x2p+0f 0x3.fffffcp+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0x3.fffffcp+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0x3.fffffcp+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0x3.fffffcp+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+pow -2.0 max
+= pow downward flt-32 -0x2p+0f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x2p+0f 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x2p+0f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x2p+0f 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x2p+0 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x2p+0 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x2p+0 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x2p+0 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p+0L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p+0L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p+0L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p+0L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p+0L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p+0L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p+0L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p+0L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x2p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x2p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x2p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x2p+0L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+pow -max -2
+= pow downward flt-32 -0xf.fffffp+124f -0x2p+0f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x2p+0f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x2p+0f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x2p+0f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x2p+0 : 0x1.000002000003p-256 : inexact-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x2p+0 : 0x1.000002000003p-256 : inexact-ok
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x2p+0 : 0x1.000002000003p-256 : inexact-ok
+= pow upward dbl-64 -0xf.fffffp+124 -0x2p+0 : 0x1.0000020000031p-256 : inexact-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003p-256L : inexact-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003p-256L : inexact-ok
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003p-256L : inexact-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x2p+0L : 0x1.0000020000030002p-256L : inexact-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003p-256L : inexact-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003p-256L : inexact-ok
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003p-256L : inexact-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x2p+0L : 0x1.0000020000030002p-256L : inexact-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003000004000005p-256L : inexact-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003000004000005p-256L : inexact-ok
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003000004000005p-256L : inexact-ok
+= pow upward ldbl-128 -0xf.fffffp+124L -0x2p+0L : 0x1.0000020000030000040000050001p-256L : inexact-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003000004000005p-256L : inexact-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003000004000005p-256L : inexact-ok
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003000004000005p-256L : inexact-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x2p+0L : 0x1.000002000003000004000005008p-256L : inexact-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+0 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+0 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+0 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+0 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.0000000000001p-2048L : inexact-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.0000000000001p-2048L : inexact-ok
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.0000000000001p-2048L : inexact-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.0000000000001002p-2048L : inexact-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.0000000000001p-2048L : inexact-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.0000000000001p-2048L : inexact-ok
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.0000000000001p-2048L : inexact-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.0000000000001002p-2048L : inexact-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.00000000000010000000000000cp-2048L : inexact-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.00000000000010000000000000cp-2048L : inexact-ok
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.00000000000010000000000000cp-2048L : inexact-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x1.00000000000010000000000000c1p-2048L : inexact-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+0L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+0L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+0L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+0L : 0x1.00000000000008000000000000bp-2048L : inexact-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+0L : 0x1.00000000000008000000000000bp-2048L : inexact-ok
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+0L : 0x1.00000000000008000000000000bp-2048L : inexact-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+0L : 0x1.00000000000008000000000000b1p-2048L : inexact-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+0L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -max -3
+= pow downward flt-32 -0xf.fffffp+124f -0x3p+0f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f -0x3p+0f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x3p+0f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x3p+0f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 -0x3p+0 : -0x1.0000030000061p-384 : inexact-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x3p+0 : -0x1.000003000006p-384 : inexact-ok
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x3p+0 : -0x1.000003000006p-384 : inexact-ok
+= pow upward dbl-64 -0xf.fffffp+124 -0x3p+0 : -0x1.000003000006p-384 : inexact-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x3p+0L : -0x1.0000030000060002p-384L : inexact-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x3p+0L : -0x1.000003000006p-384L : inexact-ok
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x3p+0L : -0x1.000003000006p-384L : inexact-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x3p+0L : -0x1.000003000006p-384L : inexact-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x3p+0L : -0x1.0000030000060002p-384L : inexact-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x3p+0L : -0x1.000003000006p-384L : inexact-ok
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x3p+0L : -0x1.000003000006p-384L : inexact-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x3p+0L : -0x1.000003000006p-384L : inexact-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3p+0L : -0x1.00000300000600000a00000fp-384L : inexact-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3p+0L : -0x1.00000300000600000a00000fp-384L : inexact-ok
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3p+0L : -0x1.00000300000600000a00000effffp-384L : inexact-ok
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3p+0L : -0x1.00000300000600000a00000effffp-384L : inexact-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3p+0L : -0x1.00000300000600000a00000fp-384L : inexact-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3p+0L : -0x1.00000300000600000a00000fp-384L : inexact-ok
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3p+0L : -0x1.00000300000600000a00000eff8p-384L : inexact-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3p+0L : -0x1.00000300000600000a00000eff8p-384L : inexact-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x3p+0 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x3p+0 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x3p+0 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x3p+0 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.0000000000001802p-3072L : inexact-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.00000000000018p-3072L : inexact-ok
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.00000000000018p-3072L : inexact-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.00000000000018p-3072L : inexact-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.0000000000001802p-3072L : inexact-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.00000000000018p-3072L : inexact-ok
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.00000000000018p-3072L : inexact-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.00000000000018p-3072L : inexact-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.000000000000180000000000018p-3072L : inexact-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.000000000000180000000000018p-3072L : inexact-ok
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.000000000000180000000000017fp-3072L : inexact-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x1.000000000000180000000000017fp-3072L : inexact-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3p+0L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3p+0L : -0x1.0000000000000c0000000000012p-3072L : inexact-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3p+0L : -0x1.0000000000000c0000000000012p-3072L : inexact-ok
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3p+0L : -0x1.0000000000000c0000000000011fp-3072L : inexact-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3p+0L : -0x1.0000000000000c0000000000011fp-3072L : inexact-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3p+0L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -max 2
+= pow downward flt-32 -0xf.fffffp+124f 0x2p+0f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x2p+0f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x2p+0f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x2p+0f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x2p+0 : 0xf.ffffe000001p+252 : inexact-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x2p+0 : 0xf.ffffe000001p+252 : inexact-ok
+= pow towardzero dbl-64 -0xf.fffffp+124 0x2p+0 : 0xf.ffffe000001p+252 : inexact-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x2p+0 : 0xf.ffffe000001p+252 : inexact-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow downward ldbl-128 -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x2p+0L : 0xf.ffffe000001p+252L : inexact-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x2p+0 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x2p+0 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x2p+0 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x2p+0 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffffp+2044L : inexact-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffffp+2044L : inexact-ok
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffffp+2044L : inexact-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffff001p+2044L : inexact-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffffp+2044L : inexact-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffffp+2044L : inexact-ok
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffffp+2044L : inexact-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffff001p+2044L : inexact-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffff00000000000004p+2044L : inexact-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffff00000000000004p+2044L : inexact-ok
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffff00000000000004p+2044L : inexact-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffff00000000000004p+2044L : inexact-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+0L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+0L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+0L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+0L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+0L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+0L : 0xf.ffffffffffff7ffffffffffff9p+2044L : inexact-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+0L : 0xf.ffffffffffff7ffffffffffff9p+2044L : inexact-ok
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+0L : 0xf.ffffffffffff7ffffffffffff9p+2044L : inexact-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+0L : 0xf.ffffffffffff7ffffffffffff908p+2044L : inexact-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+0L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+0L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+pow -max 3
+= pow downward flt-32 -0xf.fffffp+124f 0x3p+0f : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f 0x3p+0f : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x3p+0f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x3p+0f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 0x3p+0 : -0xf.ffffd000003p+380 : inexact-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x3p+0 : -0xf.ffffd000003p+380 : inexact-ok
+= pow towardzero dbl-64 -0xf.fffffp+124 0x3p+0 : -0xf.ffffd000002f8p+380 : inexact-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x3p+0 : -0xf.ffffd000002f8p+380 : inexact-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000003p+380L : inexact-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000003p+380L : inexact-ok
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffp+380L : inexact-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffp+380L : inexact-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000003p+380L : inexact-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000003p+380L : inexact-ok
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffp+380L : inexact-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffp+380L : inexact-ok
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffffp+380L : inexact-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffffp+380L : inexact-ok
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffffp+380L : inexact-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffffp+380L : inexact-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffffp+380L : inexact-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffffp+380L : inexact-ok
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffffp+380L : inexact-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3p+0L : -0xf.ffffd000002ffffffp+380L : inexact-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x3p+0 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x3p+0 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x3p+0 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x3p+0 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe801p+3068L : inexact-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe8p+3068L : inexact-ok
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe8p+3068L : inexact-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe8p+3068L : inexact-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe801p+3068L : inexact-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe8p+3068L : inexact-ok
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe8p+3068L : inexact-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe8p+3068L : inexact-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe8000000000000cp+3068L : inexact-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe8000000000000cp+3068L : inexact-ok
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe8000000000000bf8p+3068L : inexact-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.fffffffffffe8000000000000bf8p+3068L : inexact-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3p+0L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3p+0L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3p+0L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3p+0L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3p+0L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3p+0L : -0xf.ffffffffffff3ffffffffffff7p+3068L : inexact-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3p+0L : -0xf.ffffffffffff3ffffffffffff7p+3068L : inexact-ok
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3p+0L : -0xf.ffffffffffff3ffffffffffff6f8p+3068L : inexact-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3p+0L : -0xf.ffffffffffff3ffffffffffff6f8p+3068L : inexact-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3p+0L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3p+0L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -max -0xffffff
+= pow downward flt-32 -0xf.fffffp+124f -0xf.fffffp+20f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f -0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 -0xf.fffffp+20 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 -0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+20L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+20L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L -0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+20L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+20 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+20L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -max -0x1fffffe
+= pow downward flt-32 -0xf.fffffp+124f -0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x1.fffffep+24f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1.fffffep+24 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+24L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+24L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+24L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+24 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+24L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+24L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -max -0x1.fffffffffffffp+52
+= pow downward flt-32 -0xf.fffffp+124f -0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x1.fffffep+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1.fffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0xf.fffffp+124f -0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x2p+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x2p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x2p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x2p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x2p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+52 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+52 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+52L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -max -0x1.fffffffffffffp+53
+= pow downward flt-32 -0xf.fffffp+124f -0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x3.fffffcp+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x3.fffffcp+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0xf.fffffp+124f -0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x4p+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x4p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x4p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x4p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x4p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -max -0x1.fffffffffffffffep+63
+= pow downward flt-32 -0xf.fffffp+124f -0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0xf.fffffp+60f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0xf.fffffp+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0xf.fffffp+124f -0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x1p+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0xf.ffffffffffff8p+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffff8p+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x1p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0xf.ffffffffffff8p+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+60L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -max -0x1.fffffffffffffffep+64
+= pow downward flt-32 -0xf.fffffp+124f -0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x1.fffffep+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1.fffffep+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0xf.fffffp+124f -0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x2p+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x2p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x2p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x2p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x2p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -max -0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0xf.fffffp+124f -0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x3.fffffcp+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x3.fffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0xf.fffffp+124f -0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x4p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x4p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x4p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x4p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x4p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3.fffffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+104L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -max -0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0xf.fffffp+124f -0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x7.fffff8p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x7.fffff8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x7.fffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x7.fffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x7.fffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0xf.fffffp+124f -0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x8p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x7.ffffffffffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x7.ffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x7.fffffffffffffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x7.fffffffffffffffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x7.fffff8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x7.ffffffffffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.ffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.ffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x7.fffffffffffffffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -max -0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0xf.fffffp+124f -0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x1.fffffep+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1.fffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0xf.fffffp+124f -0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x2p+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x2p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x2p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x2p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x2p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x1.fffffffffffffp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.fffffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x2p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x2p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x1.fffffffffffffp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.fffffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x2p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.fffffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -max -0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0xf.fffffp+124f -0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x3.fffffcp+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x3.fffffcp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x3.fffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3.fffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0xf.fffffp+124f -0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0x4p+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x4p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x4p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x4p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x4p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0x3.ffffffffffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3.fffffffffffffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0x3.ffffffffffffffffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.fffffcp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x4p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x4p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0x3.ffffffffffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x4p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0x3.ffffffffffffffffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -max -max
+= pow downward flt-32 -0xf.fffffp+124f -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f -0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0xf.fffffp+124f -0xf.fffffp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.fffffp+124 -0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffp+124L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.fffffp+124L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 -0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 -0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L -0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -max 0xffffff
+= pow downward flt-32 -0xf.fffffp+124f 0xf.fffffp+20f : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest flt-32 -0xf.fffffp+124f 0xf.fffffp+20f : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0xf.fffffp+20f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0xf.fffffp+20f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0xf.fffffp+124 0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -max 0x1fffffe
+= pow downward flt-32 -0xf.fffffp+124f 0x1.fffffep+24f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x1.fffffep+24f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x1.fffffep+24f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x1.fffffep+24f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+pow -max 0x1.fffffffffffffp+52
+= pow downward flt-32 -0xf.fffffp+124f 0x2p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x2p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x2p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x2p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0xf.fffffp+124f 0x1.fffffep+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x1.fffffep+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x1.fffffep+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x1.fffffep+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -max 0x1.fffffffffffffp+53
+= pow downward flt-32 -0xf.fffffp+124f 0x4p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x4p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x4p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x4p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0xf.fffffp+124f 0x3.fffffcp+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x3.fffffcp+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x3.fffffcp+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x3.fffffcp+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+pow -max 0x1.fffffffffffffffep+63
+= pow downward flt-32 -0xf.fffffp+124f 0x1p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x1p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x1p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x1p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0xf.fffffp+124f 0xf.fffffp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0xf.fffffp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0xf.fffffp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0xf.fffffp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -max 0x1.fffffffffffffffep+64
+= pow downward flt-32 -0xf.fffffp+124f 0x2p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x2p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x2p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x2p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0xf.fffffp+124f 0x1.fffffep+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x1.fffffep+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x1.fffffep+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x1.fffffep+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+pow -max 0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0xf.fffffp+124f 0x4p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x4p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x4p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x4p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0xf.fffffp+124f 0x3.fffffcp+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x3.fffffcp+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x3.fffffcp+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x3.fffffcp+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -max 0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0xf.fffffp+124f 0x8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0xf.fffffp+124f 0x7.fffff8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x7.fffff8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x7.fffff8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x7.fffff8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+pow -max 0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0xf.fffffp+124f 0x2p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x2p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x2p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x2p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0xf.fffffp+124f 0x1.fffffep+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x1.fffffep+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x1.fffffep+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x1.fffffep+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+pow -max 0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0xf.fffffp+124f 0x4p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x4p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x4p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x4p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0xf.fffffp+124f 0x3.fffffcp+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0x3.fffffcp+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0x3.fffffcp+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0x3.fffffcp+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+pow -max max
+= pow downward flt-32 -0xf.fffffp+124f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0xf.fffffp+124f 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0xf.fffffp+124f 0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0xf.fffffp+124f 0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.fffffp+124 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.fffffp+124 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.fffffp+124 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.fffffp+124L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0xf.ffffffffffff8p+1020 0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffff8p+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffp+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p+16380L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0xf.ffffffffffffbffffffffffffcp+1020L 0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+pow -0.5 126
+= pow downward flt-32 -0x8p-4f 0x7.ep+4f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f 0x7.ep+4f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero flt-32 -0x8p-4f 0x7.ep+4f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow upward flt-32 -0x8p-4f 0x7.ep+4f : 0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x7.ep+4 : 0x4p-128 : inexact-ok
+= pow tonearest dbl-64 -0x8p-4 0x7.ep+4 : 0x4p-128 : inexact-ok
+= pow towardzero dbl-64 -0x8p-4 0x7.ep+4 : 0x4p-128 : inexact-ok
+= pow upward dbl-64 -0x8p-4 0x7.ep+4 : 0x4p-128 : inexact-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow tonearest ldbl-96-intel -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow towardzero ldbl-96-intel -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow upward ldbl-96-intel -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow upward ldbl-96-m68k -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow downward ldbl-128 -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow tonearest ldbl-128 -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow towardzero ldbl-128 -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow upward ldbl-128 -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow tonearest ldbl-128ibm -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow towardzero ldbl-128ibm -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+= pow upward ldbl-128ibm -0x8p-4L 0x7.ep+4L : 0x4p-128L : inexact-ok
+pow -0.5 127
+= pow downward flt-32 -0x8p-4f 0x7.fp+4f : -0x2p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f 0x7.fp+4f : -0x2p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero flt-32 -0x8p-4f 0x7.fp+4f : -0x2p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow upward flt-32 -0x8p-4f 0x7.fp+4f : -0x2p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x7.fp+4 : -0x2p-128 : inexact-ok
+= pow tonearest dbl-64 -0x8p-4 0x7.fp+4 : -0x2p-128 : inexact-ok
+= pow towardzero dbl-64 -0x8p-4 0x7.fp+4 : -0x2p-128 : inexact-ok
+= pow upward dbl-64 -0x8p-4 0x7.fp+4 : -0x2p-128 : inexact-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow tonearest ldbl-96-intel -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow towardzero ldbl-96-intel -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow upward ldbl-96-intel -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow upward ldbl-96-m68k -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow downward ldbl-128 -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow tonearest ldbl-128 -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow towardzero ldbl-128 -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow upward ldbl-128 -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow tonearest ldbl-128ibm -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow towardzero ldbl-128ibm -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+= pow upward ldbl-128ibm -0x8p-4L 0x7.fp+4L : -0x2p-128L : inexact-ok
+pow -0.5 -126
+= pow downward flt-32 -0x8p-4f -0x7.ep+4f : 0x4p+124f : inexact-ok
+= pow tonearest flt-32 -0x8p-4f -0x7.ep+4f : 0x4p+124f : inexact-ok
+= pow towardzero flt-32 -0x8p-4f -0x7.ep+4f : 0x4p+124f : inexact-ok
+= pow upward flt-32 -0x8p-4f -0x7.ep+4f : 0x4p+124f : inexact-ok
+= pow downward dbl-64 -0x8p-4 -0x7.ep+4 : 0x4p+124 : inexact-ok
+= pow tonearest dbl-64 -0x8p-4 -0x7.ep+4 : 0x4p+124 : inexact-ok
+= pow towardzero dbl-64 -0x8p-4 -0x7.ep+4 : 0x4p+124 : inexact-ok
+= pow upward dbl-64 -0x8p-4 -0x7.ep+4 : 0x4p+124 : inexact-ok
+= pow downward ldbl-96-intel -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow towardzero ldbl-96-intel -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow downward ldbl-96-m68k -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow downward ldbl-128 -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow towardzero ldbl-128 -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow upward ldbl-128 -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow downward ldbl-128ibm -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow towardzero ldbl-128ibm -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x7.ep+4L : 0x4p+124L : inexact-ok
+pow -0.5 -127
+= pow downward flt-32 -0x8p-4f -0x7.fp+4f : -0x8p+124f : inexact-ok
+= pow tonearest flt-32 -0x8p-4f -0x7.fp+4f : -0x8p+124f : inexact-ok
+= pow towardzero flt-32 -0x8p-4f -0x7.fp+4f : -0x8p+124f : inexact-ok
+= pow upward flt-32 -0x8p-4f -0x7.fp+4f : -0x8p+124f : inexact-ok
+= pow downward dbl-64 -0x8p-4 -0x7.fp+4 : -0x8p+124 : inexact-ok
+= pow tonearest dbl-64 -0x8p-4 -0x7.fp+4 : -0x8p+124 : inexact-ok
+= pow towardzero dbl-64 -0x8p-4 -0x7.fp+4 : -0x8p+124 : inexact-ok
+= pow upward dbl-64 -0x8p-4 -0x7.fp+4 : -0x8p+124 : inexact-ok
+= pow downward ldbl-96-intel -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow towardzero ldbl-96-intel -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow downward ldbl-96-m68k -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow downward ldbl-128 -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow towardzero ldbl-128 -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow upward ldbl-128 -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow downward ldbl-128ibm -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow towardzero ldbl-128ibm -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x7.fp+4L : -0x8p+124L : inexact-ok
+pow -0.5 -0xffffff
+= pow downward flt-32 -0x8p-4f -0xf.fffffp+20f : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest flt-32 -0x8p-4f -0xf.fffffp+20f : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0xf.fffffp+20f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0xf.fffffp+20f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 -0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 -0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -0.5 -0x1fffffe
+= pow downward flt-32 -0x8p-4f -0x1.fffffep+24f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x1.fffffep+24f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x1.fffffep+24f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x1.fffffep+24f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+pow -0.5 -0x1.fffffffffffffp+52
+= pow downward flt-32 -0x8p-4f -0x1.fffffep+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x1.fffffep+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x1.fffffep+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x1.fffffep+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x8p-4f -0x2p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x2p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x2p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x2p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 -0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -0.5 -0x1.fffffffffffffp+53
+= pow downward flt-32 -0x8p-4f -0x3.fffffcp+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x3.fffffcp+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x3.fffffcp+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x3.fffffcp+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x8p-4f -0x4p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x4p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x4p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x4p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+pow -0.5 -0x1.fffffffffffffffep+63
+= pow downward flt-32 -0x8p-4f -0xf.fffffp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0xf.fffffp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0xf.fffffp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0xf.fffffp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x8p-4f -0x1p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x1p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x1p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x1p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -0.5 -0x1.fffffffffffffffep+64
+= pow downward flt-32 -0x8p-4f -0x1.fffffep+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x1.fffffep+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x1.fffffep+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x1.fffffep+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x8p-4f -0x2p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x2p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x2p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x2p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+pow -0.5 -0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0x8p-4f -0x3.fffffcp+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x3.fffffcp+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x3.fffffcp+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x3.fffffcp+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x8p-4f -0x4p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x4p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x4p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x4p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -0.5 -0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0x8p-4f -0x7.fffff8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x7.fffff8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x7.fffff8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x7.fffff8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x8p-4f -0x8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+pow -0.5 -0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0x8p-4f -0x1.fffffep+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x1.fffffep+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x1.fffffep+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x1.fffffep+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x8p-4f -0x2p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x2p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x2p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x2p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+pow -0.5 -0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0x8p-4f -0x3.fffffcp+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x3.fffffcp+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x3.fffffcp+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x3.fffffcp+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x8p-4f -0x4p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0x4p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0x4p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0x4p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+pow -0.5 -max
+= pow downward flt-32 -0x8p-4f -0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f -0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x8p-4f -0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x8p-4f -0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-4 -0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 -0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 -0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-4 -0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-4L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-4L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-4L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-4L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-4L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+pow -0.5 0xffffff
+= pow downward flt-32 -0x8p-4f 0xf.fffffp+20f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow tonearest flt-32 -0x8p-4f 0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x8p-4 0xf.fffffp+20 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L 0xf.fffffp+20L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L 0xf.fffffp+20L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x8p-4L 0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L 0xf.fffffp+20L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -0.5 0x1fffffe
+= pow downward flt-32 -0x8p-4f 0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x1.fffffep+24f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x1.fffffep+24 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x1.fffffep+24L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x1.fffffep+24L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1.fffffep+24L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -0.5 0x1.fffffffffffffp+52
+= pow downward flt-32 -0x8p-4f 0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x2p+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x2p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x2p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x2p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x2p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x8p-4f 0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x1.fffffep+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x1.fffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x1.fffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x1.fffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1.fffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x1.fffffffffffffp+52 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-4 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+52L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+52L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x8p-4L 0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+52L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -0.5 0x1.fffffffffffffp+53
+= pow downward flt-32 -0x8p-4f 0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x4p+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x4p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x4p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x4p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x4p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x8p-4f 0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x3.fffffcp+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x3.fffffcp+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x3.fffffcp+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x3.fffffcp+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x3.fffffcp+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x3.ffffffffffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -0.5 0x1.fffffffffffffffep+63
+= pow downward flt-32 -0x8p-4f 0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x1p+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x1p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x1p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x1p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x8p-4f 0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0xf.fffffp+60f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0xf.fffffp+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0xf.fffffp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0xf.fffffp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0xf.fffffp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0xf.ffffffffffff8p+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0xf.ffffffffffff8p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0xf.ffffffffffff8p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0xf.ffffffffffff8p+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0xf.fffffffffffffffp+60L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-4L 0xf.fffffffffffffffp+60L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x8p-4L 0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L 0xf.fffffffffffffffp+60L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -0.5 0x1.fffffffffffffffep+64
+= pow downward flt-32 -0x8p-4f 0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x2p+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x2p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x2p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x2p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x2p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x8p-4f 0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x1.fffffep+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x1.fffffep+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x1.fffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x1.fffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1.fffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x1.fffffffffffffp+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x1.fffffffffffffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1.fffffffffffffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -0.5 0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0x8p-4f 0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x4p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x4p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x4p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x4p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x4p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x8p-4f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x3.fffffcp+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x3.fffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x3.fffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x3.fffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x3.fffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x3.ffffffffffffep+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x3.fffffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x8p-4L 0x3.ffffffffffffffffffffffffffp+104L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-4L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -0.5 0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0x8p-4f 0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x8p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x8p-4f 0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x7.fffff8p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x7.fffff8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x7.fffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x7.fffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x7.fffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x7.ffffffffffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x7.ffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x7.ffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x7.ffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x7.fffffffffffffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x7.fffffffffffffffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -0.5 0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0x8p-4f 0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x2p+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x2p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x2p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x2p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x2p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x8p-4f 0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x1.fffffep+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x1.fffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x1.fffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x1.fffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1.fffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x1.fffffffffffffp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x1.fffffffffffffp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1.fffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x1.fffffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x1.fffffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1.fffffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-4L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x8p-4L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -0.5 0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0x8p-4f 0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x4p+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x4p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x4p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x4p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x4p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x8p-4f 0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0x3.fffffcp+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x3.fffffcp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x3.fffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x3.fffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x3.fffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0x3.ffffffffffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x3.ffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x3.ffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x3.ffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x3.fffffffffffffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0x3.ffffffffffffffffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -0.5 max
+= pow downward flt-32 -0x8p-4f 0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x8p-4f 0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x8p-4f 0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x8p-4f 0xf.fffffp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-4 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-4 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-4 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-4 0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-4L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-4L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-4L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-4L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-4L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-4L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-4L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-4L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -min -2
+= pow downward flt-32 -0x4p-128f -0x2p+0f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x2p+0f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x2p+0f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x2p+0f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x2p+0 : 0x1p+252 : inexact-ok
+= pow tonearest dbl-64 -0x4p-128 -0x2p+0 : 0x1p+252 : inexact-ok
+= pow towardzero dbl-64 -0x4p-128 -0x2p+0 : 0x1p+252 : inexact-ok
+= pow upward dbl-64 -0x4p-128 -0x2p+0 : 0x1p+252 : inexact-ok
+= pow downward ldbl-96-intel -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow towardzero ldbl-96-intel -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow downward ldbl-96-m68k -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow downward ldbl-128 -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow towardzero ldbl-128 -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow upward ldbl-128 -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow downward ldbl-128ibm -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow towardzero ldbl-128ibm -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x2p+0L : 0x1p+252L : inexact-ok
+= pow downward dbl-64 -0x4p-1024 -0x2p+0 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x2p+0 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x2p+0 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x2p+0 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow downward ldbl-96-m68k -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow downward ldbl-128 -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow towardzero ldbl-128 -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow upward ldbl-128 -0x4p-1024L -0x2p+0L : 0x1p+2044L : inexact-ok
+= pow downward ldbl-128ibm -0x4p-1024L -0x2p+0L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x2p+0L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x2p+0L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x2p+0L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x2p+0L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x2p+0L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x2p+0L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x2p+0 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x2p+0 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x2p+0 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x2p+0 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow towardzero ldbl-96-intel -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow downward ldbl-96-m68k -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow downward ldbl-128 -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow towardzero ldbl-128 -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow upward ldbl-128 -0x8p-972L -0x2p+0L : 0x4p+1936L : inexact-ok
+= pow downward ldbl-128ibm -0x8p-972L -0x2p+0L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x2p+0L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x2p+0L : plus_infty : inexact-ok overflow errno-erange
+pow -min -3
+= pow downward flt-32 -0x4p-128f -0x3p+0f : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest flt-32 -0x4p-128f -0x3p+0f : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x3p+0f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x3p+0f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 -0x3p+0 : -0x4p+376 : inexact-ok
+= pow tonearest dbl-64 -0x4p-128 -0x3p+0 : -0x4p+376 : inexact-ok
+= pow towardzero dbl-64 -0x4p-128 -0x3p+0 : -0x4p+376 : inexact-ok
+= pow upward dbl-64 -0x4p-128 -0x3p+0 : -0x4p+376 : inexact-ok
+= pow downward ldbl-96-intel -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow towardzero ldbl-96-intel -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow downward ldbl-96-m68k -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow downward ldbl-128 -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow towardzero ldbl-128 -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow upward ldbl-128 -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow downward ldbl-128ibm -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3p+0L : -0x4p+376L : inexact-ok
+= pow downward dbl-64 -0x4p-1024 -0x3p+0 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 -0x3p+0 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x3p+0 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x3p+0 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow downward ldbl-96-m68k -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow downward ldbl-128 -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow towardzero ldbl-128 -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3p+0L : -0x4p+3064L : inexact-ok
+= pow downward ldbl-128ibm -0x4p-1024L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3p+0L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3p+0L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3p+0L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3p+0L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x3p+0L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3p+0L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3p+0L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 -0x3p+0 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 -0x3p+0 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x3p+0 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x3p+0 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow towardzero ldbl-96-intel -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow downward ldbl-96-m68k -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow downward ldbl-128 -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow towardzero ldbl-128 -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow upward ldbl-128 -0x8p-972L -0x3p+0L : -0x8p+2904L : inexact-ok
+= pow downward ldbl-128ibm -0x8p-972L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3p+0L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3p+0L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3p+0L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -min 1
+= pow downward flt-32 -0x4p-128f 0x1p+0f : -0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f 0x1p+0f : -0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero flt-32 -0x4p-128f 0x1p+0f : -0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow upward flt-32 -0x4p-128f 0x1p+0f : -0x4p-128f : inexact-ok underflow-ok errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x1p+0 : -0x4p-128 : inexact-ok
+= pow tonearest dbl-64 -0x4p-128 0x1p+0 : -0x4p-128 : inexact-ok
+= pow towardzero dbl-64 -0x4p-128 0x1p+0 : -0x4p-128 : inexact-ok
+= pow upward dbl-64 -0x4p-128 0x1p+0 : -0x4p-128 : inexact-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow upward ldbl-96-intel -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow downward ldbl-128 -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow tonearest ldbl-128 -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow towardzero ldbl-128 -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow upward ldbl-128 -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow upward ldbl-128ibm -0x4p-128L 0x1p+0L : -0x4p-128L : inexact-ok
+= pow downward dbl-64 -0x4p-1024 0x1p+0 : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 0x1p+0 : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero dbl-64 -0x4p-1024 0x1p+0 : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 0x1p+0 : -0x4p-1024 : inexact-ok underflow-ok errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow upward ldbl-96-intel -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow tonearest ldbl-128 -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow towardzero ldbl-128 -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow upward ldbl-128 -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok underflow-ok errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L 0x1p+0L : -0x4p-1024L : inexact-ok underflow-ok errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero ldbl-128 -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L 0x1p+0L : -0x4p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero ldbl-128 -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L 0x1p+0L : -0x2p-16384L : inexact-ok underflow-ok errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x1p+0 : -0x8p-972 : inexact-ok
+= pow tonearest dbl-64 -0x8p-972 0x1p+0 : -0x8p-972 : inexact-ok
+= pow towardzero dbl-64 -0x8p-972 0x1p+0 : -0x8p-972 : inexact-ok
+= pow upward dbl-64 -0x8p-972 0x1p+0 : -0x8p-972 : inexact-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow upward ldbl-96-intel -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow upward ldbl-96-m68k -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow downward ldbl-128 -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow tonearest ldbl-128 -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow towardzero ldbl-128 -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow upward ldbl-128 -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L 0x1p+0L : -0x8p-972L : inexact-ok underflow-ok errno-erange-ok
+pow -min 2
+= pow downward flt-32 -0x4p-128f 0x2p+0f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x2p+0f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x2p+0f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x2p+0f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x2p+0 : 0x1p-252 : inexact-ok
+= pow tonearest dbl-64 -0x4p-128 0x2p+0 : 0x1p-252 : inexact-ok
+= pow towardzero dbl-64 -0x4p-128 0x2p+0 : 0x1p-252 : inexact-ok
+= pow upward dbl-64 -0x4p-128 0x2p+0 : 0x1p-252 : inexact-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow tonearest ldbl-96-intel -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow towardzero ldbl-96-intel -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow upward ldbl-96-intel -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow downward ldbl-128 -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow tonearest ldbl-128 -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow towardzero ldbl-128 -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow upward ldbl-128 -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow tonearest ldbl-128ibm -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow towardzero ldbl-128ibm -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow upward ldbl-128ibm -0x4p-128L 0x2p+0L : 0x1p-252L : inexact-ok
+= pow downward dbl-64 -0x4p-1024 0x2p+0 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x2p+0 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x2p+0 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x2p+0 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow upward ldbl-96-intel -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow downward ldbl-128 -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow tonearest ldbl-128 -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow towardzero ldbl-128 -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow upward ldbl-128 -0x4p-1024L 0x2p+0L : 0x1p-2044L : inexact-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x2p+0L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x2p+0L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x2p+0L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x2p+0L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x2p+0L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x2p+0L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x2p+0L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x2p+0 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x2p+0 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x2p+0 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x2p+0 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow tonearest ldbl-96-intel -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow towardzero ldbl-96-intel -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow upward ldbl-96-intel -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow upward ldbl-96-m68k -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow downward ldbl-128 -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow tonearest ldbl-128 -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow towardzero ldbl-128 -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow upward ldbl-128 -0x8p-972L 0x2p+0L : 0x4p-1940L : inexact-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x2p+0L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x2p+0L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -min 3
+= pow downward flt-32 -0x4p-128f 0x3p+0f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f 0x3p+0f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x3p+0f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x3p+0f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x4p-128 0x3p+0 : -0x4p-380 : inexact-ok
+= pow tonearest dbl-64 -0x4p-128 0x3p+0 : -0x4p-380 : inexact-ok
+= pow towardzero dbl-64 -0x4p-128 0x3p+0 : -0x4p-380 : inexact-ok
+= pow upward dbl-64 -0x4p-128 0x3p+0 : -0x4p-380 : inexact-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow tonearest ldbl-96-intel -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow towardzero ldbl-96-intel -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow upward ldbl-96-intel -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow downward ldbl-128 -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow tonearest ldbl-128 -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow towardzero ldbl-128 -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow upward ldbl-128 -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow upward ldbl-128ibm -0x4p-128L 0x3p+0L : -0x4p-380L : inexact-ok
+= pow downward dbl-64 -0x4p-1024 0x3p+0 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 0x3p+0 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x3p+0 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x3p+0 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow upward ldbl-96-intel -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow upward ldbl-96-m68k -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow tonearest ldbl-128 -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow towardzero ldbl-128 -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow upward ldbl-128 -0x4p-1024L 0x3p+0L : -0x4p-3068L : inexact-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x3p+0L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L 0x3p+0L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L 0x3p+0L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L 0x3p+0L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L 0x3p+0L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L 0x3p+0L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L 0x3p+0L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x8p-972 0x3p+0 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 0x3p+0 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x3p+0 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x3p+0 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow tonearest ldbl-96-intel -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow towardzero ldbl-96-intel -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow upward ldbl-96-intel -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow upward ldbl-96-m68k -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow downward ldbl-128 -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow tonearest ldbl-128 -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow towardzero ldbl-128 -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow upward ldbl-128 -0x8p-972L 0x3p+0L : -0x2p-2908L : inexact-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x3p+0L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3p+0L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -min -0xffffff
+= pow downward flt-32 -0x4p-128f -0xf.fffffp+20f : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest flt-32 -0x4p-128f -0xf.fffffp+20f : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0xf.fffffp+20f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0xf.fffffp+20f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 -0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 -0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 -0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 -0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 -0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 -0xf.fffffp+20 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0xf.fffffp+20 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0xf.fffffp+20L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0xf.fffffp+20L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L -0xf.fffffp+20L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0xf.fffffp+20L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -min -0x1fffffe
+= pow downward flt-32 -0x4p-128f -0x1.fffffep+24f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x1.fffffep+24f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x1.fffffep+24f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x1.fffffep+24f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x1.fffffep+24 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x1.fffffep+24 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x1.fffffep+24L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.fffffep+24L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1.fffffep+24L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1.fffffep+24L : plus_infty : inexact-ok overflow errno-erange
+pow -min -0x1.fffffffffffffp+52
+= pow downward flt-32 -0x4p-128f -0x1.fffffep+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x1.fffffep+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x1.fffffep+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x1.fffffep+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x4p-128f -0x2p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x2p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x2p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x2p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 -0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 -0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 -0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 -0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x1.fffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x1.fffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x1.fffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.fffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1.fffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1.fffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x2p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x2p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x2p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x2p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x2p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x2p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 -0x1.fffffffffffffp+52 : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x1.fffffffffffffp+52 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.fffffffffffffp+52L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+52L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+52L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -min -0x1.fffffffffffffp+53
+= pow downward flt-32 -0x4p-128f -0x3.fffffcp+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x3.fffffcp+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x3.fffffcp+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x3.fffffcp+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x4p-128f -0x4p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x4p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x4p+52f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x4p+52f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x3.fffffcp+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x3.fffffcp+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x3.fffffcp+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.fffffcp+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3.fffffcp+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3.fffffcp+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x4p+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x4p+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x4p+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x4p+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x4p+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x4p+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x3.ffffffffffffep+52 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x3.ffffffffffffep+52 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.ffffffffffffep+52L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+52L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+52L : plus_infty : inexact-ok overflow errno-erange
+pow -min -0x1.fffffffffffffffep+63
+= pow downward flt-32 -0x4p-128f -0xf.fffffp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0xf.fffffp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0xf.fffffp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0xf.fffffp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x4p-128f -0x1p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x1p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x1p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x1p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 -0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 -0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0xf.fffffp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0xf.fffffp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0xf.fffffp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0xf.fffffp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0xf.fffffp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0xf.fffffp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x1p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x1p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x1p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0xf.ffffffffffff8p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0xf.ffffffffffff8p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0xf.ffffffffffff8p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0xf.ffffffffffff8p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0xf.ffffffffffff8p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0xf.fffffffffffffffp+60L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L -0xf.fffffffffffffffp+60L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0xf.fffffffffffffffp+60L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -min -0x1.fffffffffffffffep+64
+= pow downward flt-32 -0x4p-128f -0x1.fffffep+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x1.fffffep+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x1.fffffep+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x1.fffffep+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x4p-128f -0x2p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x2p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x2p+64f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x2p+64f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x1.fffffep+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x1.fffffep+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x1.fffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.fffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1.fffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1.fffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x2p+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x2p+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x2p+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x2p+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x2p+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x2p+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x1.fffffffffffffp+64 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x1.fffffffffffffp+64 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.fffffffffffffp+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.fffffffffffffffep+64L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1.fffffffffffffffep+64L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1.fffffffffffffffep+64L : plus_infty : inexact-ok overflow errno-erange
+pow -min -0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0x4p-128f -0x3.fffffcp+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x3.fffffcp+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x3.fffffcp+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x3.fffffcp+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x4p-128f -0x4p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x4p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x4p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x4p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 -0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 -0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x3.fffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x3.fffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x3.fffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.fffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3.fffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3.fffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x4p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x4p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x4p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x4p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x4p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x4p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x3.ffffffffffffep+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x3.ffffffffffffep+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.ffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.fffffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3.fffffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3.fffffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3.ffffffffffffffffffffffffffp+104L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3.ffffffffffffffffffffffffffp+104L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+pow -min -0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0x4p-128f -0x7.fffff8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x7.fffff8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x7.fffff8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x7.fffff8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x4p-128f -0x8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x8p+104f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x8p+104f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x7.fffff8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x7.fffff8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x7.fffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x7.fffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x7.fffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x7.fffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x8p+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x8p+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x7.ffffffffffffcp+104 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x7.ffffffffffffcp+104 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x7.ffffffffffffcp+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x7.ffffffffffffcp+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x7.ffffffffffffcp+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x7.fffffffffffffff8p+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x7.fffffffffffffff8p+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x7.fffffffffffffff8p+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x7.fffffffffffffffffffffffffep+104L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x7.fffffffffffffffffffffffffep+104L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x7.fffffffffffffffffffffffffep+104L : plus_infty : inexact-ok overflow errno-erange
+pow -min -0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0x4p-128f -0x1.fffffep+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x1.fffffep+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x1.fffffep+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x1.fffffep+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x4p-128f -0x2p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x2p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x2p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x2p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x1.fffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x1.fffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x1.fffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.fffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1.fffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1.fffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x2p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x2p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x2p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x2p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x2p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x2p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x1.fffffffffffffp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x1.fffffffffffffp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.fffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1.fffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.fffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1.fffffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1.fffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L -0x1.ffffffffffffffffffffffffffffp+112L : minus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.ffffffffffffffffffffffffffffp+112L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x1.ffffffffffffffffffffffffff8p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x1.ffffffffffffffffffffffffff8p+112L : plus_infty : inexact-ok overflow errno-erange
+pow -min -0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0x4p-128f -0x3.fffffcp+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x3.fffffcp+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x3.fffffcp+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x3.fffffcp+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 -0x4p-128f -0x4p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0x4p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0x4p+112f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0x4p+112f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x3.fffffcp+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x3.fffffcp+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x3.fffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.fffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3.fffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3.fffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x4p+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x4p+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x4p+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x4p+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x4p+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x4p+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0x3.ffffffffffffep+112 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0x3.ffffffffffffep+112 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.ffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3.ffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.fffffffffffffffcp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3.fffffffffffffffcp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3.fffffffffffffffcp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.fffffffffffffffffffffffffffep+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.fffffffffffffffffffffffffffep+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0x3.ffffffffffffffffffffffffffp+112L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0x3.ffffffffffffffffffffffffffp+112L : plus_infty : inexact-ok overflow errno-erange
+pow -min -max
+= pow downward flt-32 -0x4p-128f -0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f -0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 -0x4p-128f -0xf.fffffp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 -0x4p-128f -0xf.fffffp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-128 -0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 -0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 -0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-128 -0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-128L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-128L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-128L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-128L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-128L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x4p-1024 -0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 -0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 -0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x4p-1024 -0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-1024L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-1024L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-1024L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x4p-1024L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x4p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x4p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x4p-16384L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x2p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x2p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x2p-16384L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0xf.fffffp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0xf.fffffp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0xf.fffffp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0xf.fffffp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0xf.fffffp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0xf.fffffp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 -0x8p-972 -0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 -0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 -0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 -0x8p-972 -0xf.ffffffffffff8p+1020 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0xf.ffffffffffff8p+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0xf.ffffffffffff8p+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel -0x8p-972L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k -0x8p-972L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0xf.fffffffffffffffp+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0xf.fffffffffffffffp+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0xf.fffffffffffffffffffffffffff8p+16380L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0xf.fffffffffffffffffffffffffff8p+16380L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 -0x8p-972L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 -0x8p-972L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L -0xf.ffffffffffffbffffffffffffcp+1020L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm -0x8p-972L -0xf.ffffffffffffbffffffffffffcp+1020L : plus_infty : inexact-ok overflow errno-erange
+pow -min 0xffffff
+= pow downward flt-32 -0x4p-128f 0xf.fffffp+20f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow tonearest flt-32 -0x4p-128f 0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0xf.fffffp+20f : -0x0p+0f : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x4p-128 0xf.fffffp+20 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L 0xf.fffffp+20L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L 0xf.fffffp+20L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-128L 0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L 0xf.fffffp+20L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x4p-1024 0xf.fffffp+20 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L 0xf.fffffp+20L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L 0xf.fffffp+20L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L 0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L 0xf.fffffp+20L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L 0xf.fffffp+20L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L 0xf.fffffp+20L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L 0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L 0xf.fffffp+20L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L 0xf.fffffp+20L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L 0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x8p-972 0xf.fffffp+20 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0xf.fffffp+20 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L 0xf.fffffp+20L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L 0xf.fffffp+20L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x8p-972L 0xf.fffffp+20L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L 0xf.fffffp+20L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0xf.fffffp+20L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -min 0x1fffffe
+= pow downward flt-32 -0x4p-128f 0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x1.fffffep+24f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x1.fffffep+24f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x1.fffffep+24 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x1.fffffep+24L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x1.fffffep+24L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1.fffffep+24L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x1.fffffep+24 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x1.fffffep+24L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1.fffffep+24L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1.fffffep+24L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x1.fffffep+24L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1.fffffep+24L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x1.fffffep+24L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1.fffffep+24L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x1.fffffep+24 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x1.fffffep+24 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x1.fffffep+24L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x1.fffffep+24L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.fffffep+24L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1.fffffep+24L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1.fffffep+24L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -min 0x1.fffffffffffffp+52
+= pow downward flt-32 -0x4p-128f 0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x2p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x2p+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x2p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x2p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x2p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x2p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x4p-128f 0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x1.fffffep+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x1.fffffep+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x1.fffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x1.fffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x1.fffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1.fffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x1.fffffffffffffp+52 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-128 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+52L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+52L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-128L 0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+52L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x4p-1024 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x2p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x2p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x2p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x2p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x1.fffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x1.fffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1.fffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1.fffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x1.fffffffffffffp+52 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x4p-1024 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+52L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+52L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+52L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x2p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x2p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x1.fffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1.fffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+52L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+52L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x2p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x2p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x1.fffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1.fffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+52L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+52L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x8p-972 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x2p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x2p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x2p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x2p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x2p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x2p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x2p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x1.fffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x1.fffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x1.fffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x1.fffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.fffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1.fffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1.fffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x1.fffffffffffffp+52 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow tonearest dbl-64 -0x8p-972 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x1.fffffffffffffp+52 : -0x0p+0 : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+52L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+52L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x8p-972L 0x1.fffffffffffffp+52L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+52L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+52L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -min 0x1.fffffffffffffp+53
+= pow downward flt-32 -0x4p-128f 0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x4p+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x4p+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x4p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x4p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x4p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x4p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x4p-128f 0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x3.fffffcp+52f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x3.fffffcp+52f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x3.fffffcp+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x3.fffffcp+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x3.fffffcp+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x3.fffffcp+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x3.ffffffffffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x4p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x4p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x4p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x4p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x3.fffffcp+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x3.fffffcp+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3.fffffcp+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x3.ffffffffffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x4p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x4p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x3.fffffcp+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x4p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x4p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x3.fffffcp+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x4p+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x4p+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x4p+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x4p+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x4p+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x4p+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x4p+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x3.fffffcp+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x3.fffffcp+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x3.fffffcp+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x3.fffffcp+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.fffffcp+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3.fffffcp+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3.fffffcp+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x3.ffffffffffffep+52 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x3.ffffffffffffep+52 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+52L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+52L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.ffffffffffffep+52L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+52L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+52L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -min 0x1.fffffffffffffffep+63
+= pow downward flt-32 -0x4p-128f 0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x1p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x1p+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x1p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x1p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x1p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x4p-128f 0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0xf.fffffp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0xf.fffffp+60f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0xf.fffffp+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0xf.fffffp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0xf.fffffp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0xf.fffffp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0xf.ffffffffffff8p+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0xf.ffffffffffff8p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0xf.ffffffffffff8p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0xf.ffffffffffff8p+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0xf.fffffffffffffffp+60L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-128L 0xf.fffffffffffffffp+60L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-128L 0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L 0xf.fffffffffffffffp+60L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x4p-1024 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x1p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x1p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0xf.fffffp+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0xf.fffffp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0xf.fffffp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0xf.fffffp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0xf.ffffffffffff8p+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0xf.ffffffffffff8p+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x1p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0xf.fffffp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0xf.fffffp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x1p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0xf.fffffp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0xf.fffffp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x8p-972 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x1p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x1p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x1p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x1p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0xf.fffffp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0xf.fffffp+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0xf.fffffp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0xf.fffffp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0xf.fffffp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0xf.fffffp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0xf.fffffp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0xf.ffffffffffff8p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0xf.ffffffffffff8p+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0xf.ffffffffffff8p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0xf.ffffffffffff8p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0xf.ffffffffffff8p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0xf.ffffffffffff8p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0xf.ffffffffffff8p+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0xf.fffffffffffffffp+60L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-intel -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-m68k -0x8p-972L 0xf.fffffffffffffffp+60L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-96-m68k -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x8p-972L 0xf.fffffffffffffffp+60L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L 0xf.fffffffffffffffp+60L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0xf.fffffffffffffffp+60L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -min 0x1.fffffffffffffffep+64
+= pow downward flt-32 -0x4p-128f 0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x2p+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x2p+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x2p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x2p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x2p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x2p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x4p-128f 0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x1.fffffep+64f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x1.fffffep+64f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x1.fffffep+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x1.fffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x1.fffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1.fffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x1.fffffffffffffp+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x1.fffffffffffffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1.fffffffffffffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x2p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x2p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x2p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x2p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x1.fffffep+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x1.fffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1.fffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1.fffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x1.fffffffffffffp+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x2p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x2p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x1.fffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1.fffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x2p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x2p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x1.fffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1.fffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x2p+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x2p+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x2p+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x2p+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x2p+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x2p+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x2p+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x1.fffffep+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x1.fffffep+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x1.fffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x1.fffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.fffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1.fffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1.fffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x1.fffffffffffffp+64 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x1.fffffffffffffp+64 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.fffffffffffffp+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x1.fffffffffffffffep+64L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffffep+64L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.fffffffffffffffep+64L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1.fffffffffffffffep+64L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1.fffffffffffffffep+64L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -min 0x1.ffffffffffffffffffffffffff8p+105
+= pow downward flt-32 -0x4p-128f 0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x4p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x4p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x4p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x4p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x4p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x4p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x4p-128f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x3.fffffcp+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x3.fffffcp+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x3.fffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x3.fffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x3.fffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x3.fffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x3.ffffffffffffep+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x3.fffffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x4p-128L 0x3.ffffffffffffffffffffffffffp+104L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x4p-1024 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x4p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x4p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x4p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x4p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x3.fffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x3.fffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3.fffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x3.ffffffffffffep+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3.fffffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+104L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x4p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x4p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x4p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x3.fffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-96-intel -0x2p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x4p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x4p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x3.fffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward dbl-64 -0x8p-972 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x4p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x4p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x4p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x4p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x4p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x4p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x4p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x3.fffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x3.fffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x3.fffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x3.fffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.fffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3.fffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3.fffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x3.ffffffffffffep+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x3.ffffffffffffep+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.ffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3.fffffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.ffffffffffffffffffffffffffp+104L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128ibm -0x8p-972L 0x3.ffffffffffffffffffffffffffp+104L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3.ffffffffffffffffffffffffffp+104L : -0x0p+0L : inexact-ok underflow errno-erange
+pow -min 0x1.ffffffffffffffffffffffffff8p+106
+= pow downward flt-32 -0x4p-128f 0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x8p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x4p-128f 0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x7.fffff8p+104f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x7.fffff8p+104f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x7.fffff8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x7.fffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x7.fffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x7.fffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x7.ffffffffffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x7.ffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x7.ffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x7.ffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x7.fffffffffffffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x7.fffffffffffffffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x7.fffff8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x7.fffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x7.fffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x7.fffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x7.ffffffffffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x7.ffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x7.fffffffffffffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x7.fffffffffffffffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x7.fffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x7.fffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x7.fffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x7.fffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x7.fffff8p+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x7.fffff8p+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x7.fffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x7.fffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x7.fffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x7.fffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x7.fffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x7.ffffffffffffcp+104 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x7.ffffffffffffcp+104 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x7.ffffffffffffcp+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x7.ffffffffffffcp+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x7.ffffffffffffcp+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x7.ffffffffffffcp+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x7.ffffffffffffcp+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x7.fffffffffffffff8p+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x7.fffffffffffffffffffffffffep+104L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x7.fffffffffffffffffffffffffep+104L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x7.fffffffffffffffffffffffffep+104L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -min 0x1.ffffffffffffffffffffffffffffp+112
+= pow downward flt-32 -0x4p-128f 0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x2p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x2p+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x2p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x2p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x2p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x2p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x4p-128f 0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x1.fffffep+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x1.fffffep+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x1.fffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x1.fffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x1.fffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1.fffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x1.fffffffffffffp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x1.fffffffffffffp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1.fffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x1.fffffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x1.fffffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1.fffffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-128L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-128L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x2p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x2p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x2p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x2p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x1.fffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x1.fffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1.fffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1.fffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x1.fffffffffffffp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1.fffffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-1024L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x2p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x2p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x1.fffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1.fffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x4p-16384L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x2p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x2p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x1.fffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1.fffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x2p-16384L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x2p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x2p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x2p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x2p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x2p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x2p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x2p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x1.fffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x1.fffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x1.fffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x1.fffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.fffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1.fffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1.fffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x1.fffffffffffffp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x1.fffffffffffffp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x1.fffffffffffffp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.fffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1.fffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x1.fffffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x1.fffffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.fffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1.fffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1.fffffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x1.ffffffffffffffffffffffffffffp+112L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow tonearest ldbl-128 -0x8p-972L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.ffffffffffffffffffffffffffffp+112L : -0x0p+0L : inexact-ok underflow errno-erange
+= pow downward ldbl-128 -0x8p-972L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x1.ffffffffffffffffffffffffff8p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x1.ffffffffffffffffffffffffff8p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -min 0x1.ffffffffffffffffffffffffffffp+113
+= pow downward flt-32 -0x4p-128f 0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x4p+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x4p+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x4p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x4p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x4p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x4p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 -0x4p-128f 0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0x3.fffffcp+112f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0x3.fffffcp+112f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x3.fffffcp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x3.fffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x3.fffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x3.fffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0x3.ffffffffffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x3.ffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x3.ffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x3.ffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x3.fffffffffffffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0x3.ffffffffffffffffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x4p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x4p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x4p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x4p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x3.fffffcp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x3.fffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x3.fffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3.fffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0x3.ffffffffffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x3.ffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x3.ffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3.fffffffffffffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0x3.ffffffffffffffffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x4p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x4p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x3.fffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x3.fffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x3.ffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x3.ffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x4p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x4p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x3.fffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x3.fffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x3.ffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x3.ffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x4p+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x4p+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x4p+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x4p+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x4p+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x4p+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x4p+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x3.fffffcp+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x3.fffffcp+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x3.fffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x3.fffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.fffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3.fffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3.fffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0x3.ffffffffffffep+112 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0x3.ffffffffffffep+112 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x3.ffffffffffffep+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x3.ffffffffffffep+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.ffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3.ffffffffffffep+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3.fffffffffffffffcp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.fffffffffffffffffffffffffffep+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.fffffffffffffffffffffffffffep+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0x3.ffffffffffffffffffffffffffp+112L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0x3.ffffffffffffffffffffffffffp+112L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0x3.ffffffffffffffffffffffffffp+112L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow -min max
+= pow downward flt-32 -0x4p-128f 0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 -0x4p-128f 0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 -0x4p-128f 0xf.fffffp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 -0x4p-128f 0xf.fffffp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-128 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-128 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-128 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-128 0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-128L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-128L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-128L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-128L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-128L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-128L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-128L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-128L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x4p-1024 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x4p-1024 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x4p-1024 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x4p-1024 0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-1024L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-1024L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-1024L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-1024L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x4p-1024L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x4p-1024L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x4p-1024L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x4p-1024L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x4p-16384L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x4p-16384L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x4p-16384L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x4p-16384L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x2p-16384L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x2p-16384L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x2p-16384L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x2p-16384L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0xf.fffffp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0xf.fffffp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0xf.fffffp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0xf.fffffp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0xf.fffffp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0xf.fffffp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0xf.fffffp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 -0x8p-972 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 -0x8p-972 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 -0x8p-972 0xf.ffffffffffff8p+1020 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 -0x8p-972 0xf.ffffffffffff8p+1020 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0xf.ffffffffffff8p+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0xf.fffffffffffffffp+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0xf.fffffffffffffffffffffffffff8p+16380L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 -0x8p-972L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 -0x8p-972L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 -0x8p-972L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 -0x8p-972L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm -0x8p-972L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm -0x8p-972L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm -0x8p-972L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm -0x8p-972L 0xf.ffffffffffffbffffffffffffcp+1020L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow 0x0.ffffffp0 10
+= pow downward flt-32 0xf.fffffp-4f 0xap+0f : 0xf.ffff6p-4f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f 0xap+0f : 0xf.ffff6p-4f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f 0xap+0f : 0xf.ffff6p-4f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f 0xap+0f : 0xf.ffff7p-4f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 0xap+0 : 0xf.ffff600002cf8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 0xap+0 : 0xf.ffff600002dp-4 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 0xap+0 : 0xf.ffff600002cf8p-4 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 0xap+0 : 0xf.ffff600002dp-4 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002dp-4L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002dp-4L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002dp-4L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002dp-4L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffff880000d1ffffp-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffff880000d1ffffp-4L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffff880000d1ffffp-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffff880000d1ffff8p-4L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffff880000d1ffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffff880000d2p-4L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffff880000d1ffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0xap+0L : 0xf.ffff600002cffff880000d2p-4L : inexact-ok
+pow 0x0.ffffffp0 100
+= pow downward flt-32 0xf.fffffp-4f 0x6.4p+4f : 0xf.fff9cp-4f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f 0x6.4p+4f : 0xf.fff9cp-4f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f 0x6.4p+4f : 0xf.fff9cp-4f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f 0x6.4p+4f : 0xf.fff9dp-4f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 0x6.4p+4 : 0xf.fff9c001355f8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 0x6.4p+4 : 0xf.fff9c001356p-4 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 0x6.4p+4 : 0xf.fff9c001355f8p-4 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 0x6.4p+4 : 0xf.fff9c001356p-4 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd88p-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd88p-4L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd88p-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd89p-4L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd88p-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd88p-4L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd88p-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd89p-4L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd885c3bd5448334p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd885c3bd54483348p-4L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd885c3bd5448334p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd885c3bd54483348p-4L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd885c3bd54483p-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd885c3bd544834p-4L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd885c3bd54483p-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x6.4p+4L : 0xf.fff9c001355fd885c3bd544834p-4L : inexact-ok
+pow 0x0.ffffffp0 1000
+= pow downward flt-32 0xf.fffffp-4f 0x3.e8p+8f : 0xf.ffc18p-4f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f 0x3.e8p+8f : 0xf.ffc18p-4f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f 0x3.e8p+8f : 0xf.ffc18p-4f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f 0x3.e8p+8f : 0xf.ffc19p-4f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 0x3.e8p+8 : 0xf.ffc18079f2218p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 0x3.e8p+8 : 0xf.ffc18079f2218p-4 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 0x3.e8p+8 : 0xf.ffc18079f2218p-4 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 0x3.e8p+8 : 0xf.ffc18079f222p-4 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887p-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221888p-4L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887p-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221888p-4L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887p-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221888p-4L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887p-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221888p-4L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887cc9faaa72e718p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887cc9faaa72e72p-4L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887cc9faaa72e718p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887cc9faaa72e72p-4L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887cc9faaa72e4p-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887cc9faaa72e8p-4L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887cc9faaa72e4p-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x3.e8p+8L : 0xf.ffc18079f221887cc9faaa72e8p-4L : inexact-ok
+pow 0x0.ffffffp0 0x1p24
+= pow downward flt-32 0xf.fffffp-4f 0x1p+24f : 0x5.e2d588p-4f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f 0x1p+24f : 0x5.e2d588p-4f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f 0x1p+24f : 0x5.e2d588p-4f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f 0x1p+24f : 0x5.e2d59p-4f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 0x1p+24 : 0x5.e2d58a99d105cp-4 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 0x1p+24 : 0x5.e2d58a99d106p-4 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 0x1p+24 : 0x5.e2d58a99d105cp-4 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 0x1p+24 : 0x5.e2d58a99d106p-4 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22p-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22p-4L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22p-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f228p-4L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22p-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22p-4L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22p-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f228p-4L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22148d9aa4810b8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22148d9aa4810bcp-4L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22148d9aa4810b8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22148d9aa4810bcp-4L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22148d9aa481p-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22148d9aa481p-4L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22148d9aa481p-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x1p+24L : 0x5.e2d58a99d105f22148d9aa4812p-4L : inexact-ok
+pow 0x0.ffffffp0 0x1p30
+= pow downward flt-32 0xf.fffffp-4f 0x4p+28f : 0xc.b4e8ap-96f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f 0x4p+28f : 0xc.b4e8ap-96f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f 0x4p+28f : 0xc.b4e8ap-96f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f 0x4p+28f : 0xc.b4e8bp-96f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 0x4p+28 : 0xc.b4e8a2f3c38ep-96 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 0x4p+28 : 0xc.b4e8a2f3c38e8p-96 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 0x4p+28 : 0xc.b4e8a2f3c38ep-96 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 0x4p+28 : 0xc.b4e8a2f3c38e8p-96 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ap-96L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77bp-96L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ap-96L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77bp-96L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ap-96L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77bp-96L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ap-96L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77bp-96L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ad07f54c04c79p-96L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ad07f54c04c79p-96L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ad07f54c04c79p-96L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ad07f54c04c798p-96L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ad07f54c04c4p-96L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ad07f54c04c8p-96L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ad07f54c04c4p-96L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4p+28L : 0xc.b4e8a2f3c38e77ad07f54c04c8p-96L : inexact-ok
+pow 0x0.ffffffp0 0x1.234566p30
+= pow downward flt-32 0xf.fffffp-4f 0x4.8d1598p+28f : 0x7.b4fa18p-108f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f 0x4.8d1598p+28f : 0x7.b4fa2p-108f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f 0x4.8d1598p+28f : 0x7.b4fa18p-108f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f 0x4.8d1598p+28f : 0x7.b4fa2p-108f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 0x4.8d1598p+28 : 0x7.b4fa1e8fc264cp-108 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 0x4.8d1598p+28 : 0x7.b4fa1e8fc265p-108 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 0x4.8d1598p+28 : 0x7.b4fa1e8fc264cp-108 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 0x4.8d1598p+28 : 0x7.b4fa1e8fc265p-108 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5bp-108L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b8p-108L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5bp-108L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b8p-108L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5bp-108L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b8p-108L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5bp-108L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b8p-108L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b778223ea4719cp-108L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b778223ea471ap-108L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b778223ea4719cp-108L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b778223ea471ap-108L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b778223ea47p-108L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b778223ea472p-108L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b778223ea47p-108L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+28L : 0x7.b4fa1e8fc264e5b778223ea472p-108L : inexact-ok
+pow 0x0.ffffffp0 -10
+= pow downward flt-32 0xf.fffffp-4f -0xap+0f : 0x1.00000ap+0f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0xap+0f : 0x1.00000ap+0f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f -0xap+0f : 0x1.00000ap+0f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f -0xap+0f : 0x1.00000cp+0f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 -0xap+0 : 0x1.00000a000037p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0xap+0 : 0x1.00000a000037p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 -0xap+0 : 0x1.00000a000037p+0 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 -0xap+0 : 0x1.00000a0000371p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0xap+0L : 0x1.00000a000037p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0xap+0L : 0x1.00000a000037p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0xap+0L : 0x1.00000a000037p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0xap+0L : 0x1.00000a0000370002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0xap+0L : 0x1.00000a000037p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0xap+0L : 0x1.00000a000037p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0xap+0L : 0x1.00000a000037p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0xap+0L : 0x1.00000a0000370002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L -0xap+0L : 0x1.00000a0000370000dc0002cb0007p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0xap+0L : 0x1.00000a0000370000dc0002cb0008p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L -0xap+0L : 0x1.00000a0000370000dc0002cb0007p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0xap+0L : 0x1.00000a0000370000dc0002cb0008p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0xap+0L : 0x1.00000a0000370000dc0002cbp+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0xap+0L : 0x1.00000a0000370000dc0002cbp+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0xap+0L : 0x1.00000a0000370000dc0002cbp+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0xap+0L : 0x1.00000a0000370000dc0002cb008p+0L : inexact-ok
+pow 0x0.ffffffp0 -100
+= pow downward flt-32 0xf.fffffp-4f -0x6.4p+4f : 0x1.000064p+0f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x6.4p+4f : 0x1.000064p+0f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f -0x6.4p+4f : 0x1.000064p+0f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f -0x6.4p+4f : 0x1.000066p+0f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 -0x6.4p+4 : 0x1.0000640013bap+0 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x6.4p+4 : 0x1.0000640013bap+0 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 -0x6.4p+4 : 0x1.0000640013bap+0 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x6.4p+4 : 0x1.0000640013ba1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029ep+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029ep+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029ep+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba02ap+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029ep+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029ep+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029ep+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba02ap+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029eb44376a07b3cp+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029eb44376a07b3dp+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029eb44376a07b3cp+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029eb44376a07b3dp+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029eb44376a07bp+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029eb44376a07bp+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029eb44376a07bp+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x6.4p+4L : 0x1.0000640013ba029eb44376a07b8p+0L : inexact-ok
+pow 0x0.ffffffp0 -1000
+= pow downward flt-32 0xf.fffffp-4f -0x3.e8p+8f : 0x1.0003e8p+0f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x3.e8p+8f : 0x1.0003e8p+0f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f -0x3.e8p+8f : 0x1.0003e8p+0f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f -0x3.e8p+8f : 0x1.0003eap+0f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 -0x3.e8p+8 : 0x1.0003e807a31dfp+0 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x3.e8p+8 : 0x1.0003e807a31dfp+0 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 -0x3.e8p+8 : 0x1.0003e807a31dfp+0 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x3.e8p+8 : 0x1.0003e807a31ep+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6ccp+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cep+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6ccp+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cep+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6ccp+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cep+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6ccp+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cep+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cdda7c3a40d85ep+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cdda7c3a40d85fp+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cdda7c3a40d85ep+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cdda7c3a40d85fp+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cdda7c3a40d8p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cdda7c3a40d88p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cdda7c3a40d8p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x3.e8p+8L : 0x1.0003e807a31df6cdda7c3a40d88p+0L : inexact-ok
+pow 0x0.ffffffp0 -0x1p24
+= pow downward flt-32 0xf.fffffp-4f -0x1p+24f : 0x2.b7e15p+0f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x1p+24f : 0x2.b7e154p+0f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f -0x1p+24f : 0x2.b7e15p+0f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f -0x1p+24f : 0x2.b7e154p+0f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 -0x1p+24 : 0x2.b7e152be7b97p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x1p+24 : 0x2.b7e152be7b972p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 -0x1p+24 : 0x2.b7e152be7b97p+0 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x1p+24 : 0x2.b7e152be7b972p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aap+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa4p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aap+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa4p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aap+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa4p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aap+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa4p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa2272ed5772124p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa2272ed5772126p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa2272ed5772124p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa2272ed5772126p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa2272ed57721p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa2272ed57721p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa2272ed57721p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x1p+24L : 0x2.b7e152be7b971aa2272ed57722p+0L : inexact-ok
+pow 0x0.ffffffp0 -0x1p30
+= pow downward flt-32 0xf.fffffp-4f -0x4p+28f : 0x1.4259aap+92f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x4p+28f : 0x1.4259acp+92f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f -0x4p+28f : 0x1.4259aap+92f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f -0x4p+28f : 0x1.4259acp+92f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 -0x4p+28 : 0x1.4259ab1a8c764p+92 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x4p+28 : 0x1.4259ab1a8c765p+92 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 -0x4p+28 : 0x1.4259ab1a8c764p+92 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x4p+28 : 0x1.4259ab1a8c765p+92 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d24p+92L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d24p+92L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d24p+92L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d26p+92L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d24p+92L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d24p+92L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d24p+92L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d26p+92L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d243a58c5120fa1p+92L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d243a58c5120fa2p+92L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d243a58c5120fa1p+92L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d243a58c5120fa2p+92L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d243a58c5120f8p+92L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d243a58c5120f8p+92L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d243a58c5120f8p+92L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4p+28L : 0x1.4259ab1a8c764d243a58c5121p+92L : inexact-ok
+pow 0x0.ffffffp0 -0x1.234566p30
+= pow downward flt-32 0xf.fffffp-4f -0x4.8d1598p+28f : 0x2.13780cp+104f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x4.8d1598p+28f : 0x2.13780cp+104f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp-4f -0x4.8d1598p+28f : 0x2.13780cp+104f : inexact-ok
+= pow upward flt-32 0xf.fffffp-4f -0x4.8d1598p+28f : 0x2.13781p+104f : inexact-ok
+= pow downward dbl-64 0xf.fffffp-4 -0x4.8d1598p+28 : 0x2.13780c1d4b144p+104 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x4.8d1598p+28 : 0x2.13780c1d4b144p+104 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp-4 -0x4.8d1598p+28 : 0x2.13780c1d4b144p+104 : inexact-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x4.8d1598p+28 : 0x2.13780c1d4b146p+104 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441bp+104L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b4p+104L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441bp+104L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b4p+104L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441bp+104L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b4p+104L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441bp+104L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b4p+104L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b2aba1fdfa1688p+104L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b2aba1fdfa168ap+104L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b2aba1fdfa1688p+104L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b2aba1fdfa168ap+104L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b2aba1fdfa16p+104L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b2aba1fdfa17p+104L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b2aba1fdfa16p+104L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+28L : 0x2.13780c1d4b1441b2aba1fdfa17p+104L : inexact-ok
+pow 0x1.000002p0 0x1p24
+= pow downward flt-32 0x1.000002p+0f 0x1p+24f : 0x7.639918p+0f : inexact-ok
+= pow tonearest flt-32 0x1.000002p+0f 0x1p+24f : 0x7.63992p+0f : inexact-ok
+= pow towardzero flt-32 0x1.000002p+0f 0x1p+24f : 0x7.639918p+0f : inexact-ok
+= pow upward flt-32 0x1.000002p+0f 0x1p+24f : 0x7.63992p+0f : inexact-ok
+= pow downward dbl-64 0x1.000002p+0 0x1p+24 : 0x7.63991f6e05318p+0 : inexact-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x1p+24 : 0x7.63991f6e05318p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.000002p+0 0x1p+24 : 0x7.63991f6e05318p+0 : inexact-ok
+= pow upward dbl-64 0x1.000002p+0 0x1p+24 : 0x7.63991f6e0531cp+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e05318418p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e05318418p+0L : inexact-ok
+= pow downward ldbl-128 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841345850fad35f8p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841345850fad35fcp+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841345850fad35f8p+0L : inexact-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841345850fad35fcp+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841345850fad34p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841345850fad36p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841345850fad34p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x1p+24L : 0x7.63991f6e0531841345850fad36p+0L : inexact-ok
+pow 0x1.000002p0 0x1.234566p29
+= pow downward flt-32 0x1.000002p+0f 0x2.468accp+28f : 0x2.137728p+104f : inexact-ok
+= pow tonearest flt-32 0x1.000002p+0f 0x2.468accp+28f : 0x2.137728p+104f : inexact-ok
+= pow towardzero flt-32 0x1.000002p+0f 0x2.468accp+28f : 0x2.137728p+104f : inexact-ok
+= pow upward flt-32 0x1.000002p+0f 0x2.468accp+28f : 0x2.13772cp+104f : inexact-ok
+= pow downward dbl-64 0x1.000002p+0 0x2.468accp+28 : 0x2.1377295ae8b6ap+104 : inexact-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x2.468accp+28 : 0x2.1377295ae8b6ap+104 : inexact-ok
+= pow towardzero dbl-64 0x1.000002p+0 0x2.468accp+28 : 0x2.1377295ae8b6ap+104 : inexact-ok
+= pow upward dbl-64 0x1.000002p+0 0x2.468accp+28 : 0x2.1377295ae8b6cp+104 : inexact-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a038p+104L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a038p+104L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a038p+104L : inexact-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a03cp+104L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a038p+104L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a038p+104L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a038p+104L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a03cp+104L : inexact-ok
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a0384e9b11247d06p+104L : inexact-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a0384e9b11247d06p+104L : inexact-ok
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a0384e9b11247d06p+104L : inexact-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a0384e9b11247d08p+104L : inexact-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a0384e9b11247dp+104L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a0384e9b11247dp+104L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a0384e9b11247dp+104L : inexact-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468accp+28L : 0x2.1377295ae8b6a0384e9b11247ep+104L : inexact-ok
+pow 0x1.000002p0 -0x1.234566p29
+= pow downward flt-32 0x1.000002p+0f -0x2.468accp+28f : 0x7.b4fd68p-108f : inexact-ok
+= pow tonearest flt-32 0x1.000002p+0f -0x2.468accp+28f : 0x7.b4fd68p-108f : inexact-ok
+= pow towardzero flt-32 0x1.000002p+0f -0x2.468accp+28f : 0x7.b4fd68p-108f : inexact-ok
+= pow upward flt-32 0x1.000002p+0f -0x2.468accp+28f : 0x7.b4fd7p-108f : inexact-ok
+= pow downward dbl-64 0x1.000002p+0 -0x2.468accp+28 : 0x7.b4fd685e23a28p-108 : inexact-ok
+= pow tonearest dbl-64 0x1.000002p+0 -0x2.468accp+28 : 0x7.b4fd685e23a2cp-108 : inexact-ok
+= pow towardzero dbl-64 0x1.000002p+0 -0x2.468accp+28 : 0x7.b4fd685e23a28p-108 : inexact-ok
+= pow upward dbl-64 0x1.000002p+0 -0x2.468accp+28 : 0x7.b4fd685e23a2cp-108 : inexact-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8ap-108L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a8p-108L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8ap-108L : inexact-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a8p-108L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8ap-108L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a8p-108L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8ap-108L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a8p-108L : inexact-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a632449d5b10bp-108L : inexact-ok
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a632449d5b10b4p-108L : inexact-ok
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a632449d5b10bp-108L : inexact-ok
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a632449d5b10b4p-108L : inexact-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a632449d5b1p-108L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a632449d5b1p-108L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a632449d5b1p-108L : inexact-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468accp+28L : 0x7.b4fd685e23a2b8a632449d5b12p-108L : inexact-ok
+pow 0x0.fffffffffffff8p0 0x1.23456789abcdfp62
+= pow downward flt-32 0x1p+0f 0x4.8d15ap+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x4.8d15ap+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x4.8d15ap+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x4.8d15ap+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x4.8d15ap+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x4.8d15ap+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x4.8d15ap+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x4.8d15ap+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f 0x4.8d1598p+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x4.8d1598p+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x4.8d1598p+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x4.8d1598p+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x4.8d1598p+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x4.8d1598p+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x4.8d1598p+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x4.8d1598p+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x4.8d159e26af37cp+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x4.8d159e26af37cp+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x4.8d159e26af37cp+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x4.8d159e26af37cp+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0xf.fffffp-4f 0x4.8d15ap+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xf.fffffp-4f 0x4.8d15ap+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f 0x4.8d15ap+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xf.fffffp-4f 0x4.8d15ap+60f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x4.8d15ap+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x4.8d15ap+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x4.8d15ap+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x4.8d15ap+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4.8d15ap+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d15ap+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d15ap+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d15ap+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d15ap+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 0xf.fffffp-4f 0x4.8d1598p+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xf.fffffp-4f 0x4.8d1598p+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f 0x4.8d1598p+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xf.fffffp-4f 0x4.8d1598p+60f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x4.8d1598p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x4.8d1598p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x4.8d1598p+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x4.8d1598p+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d1598p+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x4.8d159e26af37cp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x4.8d159e26af37cp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x4.8d159e26af37cp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x4.8d159e26af37cp+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37cp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x4.8d15ap+60 : 0xb.dea0deefbcfc8p-844 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x4.8d15ap+60 : 0xb.dea0deefbcfdp-844 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x4.8d15ap+60 : 0xb.dea0deefbcfc8p-844 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x4.8d15ap+60 : 0xb.dea0deefbcfdp-844 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6dp-844L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6dp-844L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6dp-844L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6ep-844L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6dp-844L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6dp-844L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6dp-844L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6ep-844L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6d489bb0f8fe77p-844L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6d489bb0f8fe778p-844L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6d489bb0f8fe77p-844L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6d489bb0f8fe778p-844L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6d489bb0f8fe4p-844L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6d489bb0f8fe8p-844L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6d489bb0f8fe4p-844L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d15ap+60L : 0xb.dea0deefbcfce6d489bb0f8fe8p-844L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x4.8d1598p+60 : 0xb.ded059d22e41p-844 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x4.8d1598p+60 : 0xb.ded059d22e418p-844 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x4.8d1598p+60 : 0xb.ded059d22e41p-844 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x4.8d1598p+60 : 0xb.ded059d22e418p-844 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416ecp-844L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416edp-844L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416ecp-844L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416edp-844L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416ecp-844L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416edp-844L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416ecp-844L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416edp-844L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416eceb14d3bd3a31p-844L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416eceb14d3bd3a31p-844L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416eceb14d3bd3a31p-844L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416eceb14d3bd3a318p-844L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416eceb14d3bd3ap-844L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416eceb14d3bd3a4p-844L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416eceb14d3bd3ap-844L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d1598p+60L : 0xb.ded059d22e416eceb14d3bd3a4p-844L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af37cp+60 : 0xb.deabd7ffdaefp-844 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af37cp+60 : 0xb.deabd7ffdaef8p-844 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af37cp+60 : 0xb.deabd7ffdaefp-844 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af37cp+60 : 0xb.deabd7ffdaef8p-844 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65fp-844L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65fp-844L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65fp-844L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef66p-844L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65fp-844L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65fp-844L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65fp-844L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef66p-844L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65f284a1ad1d5b5p-844L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65f284a1ad1d5b5p-844L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65f284a1ad1d5b5p-844L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65f284a1ad1d5b58p-844L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65f284a1ad1d58p-844L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65f284a1ad1d5cp-844L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65f284a1ad1d58p-844L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+60L : 0xb.deabd7ffdaef65f284a1ad1d5cp-844L : inexact-ok
+pow 0x0.fffffffffffff8p0 -0x1.23456789abcdfp62
+= pow downward flt-32 0x1p+0f -0x4.8d1598p+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x4.8d1598p+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x4.8d1598p+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x4.8d1598p+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x4.8d1598p+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x4.8d1598p+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x4.8d1598p+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x4.8d1598p+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d1598p+60L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f -0x4.8d15ap+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x4.8d15ap+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x4.8d15ap+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x4.8d15ap+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x4.8d15ap+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x4.8d15ap+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x4.8d15ap+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x4.8d15ap+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d15ap+60L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x4.8d159e26af37cp+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x4.8d159e26af37cp+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x4.8d159e26af37cp+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x4.8d159e26af37cp+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37cp+60L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0xf.fffffp-4f -0x4.8d1598p+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x4.8d1598p+60f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f -0x4.8d1598p+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xf.fffffp-4f -0x4.8d1598p+60f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x4.8d1598p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x4.8d1598p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x4.8d1598p+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x4.8d1598p+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d1598p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d1598p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d1598p+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d1598p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 0xf.fffffp-4f -0x4.8d15ap+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x4.8d15ap+60f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f -0x4.8d15ap+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xf.fffffp-4f -0x4.8d15ap+60f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x4.8d15ap+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x4.8d15ap+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x4.8d15ap+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x4.8d15ap+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4.8d15ap+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4.8d15ap+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4.8d15ap+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4.8d15ap+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d15ap+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4.8d15ap+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4.8d15ap+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d15ap+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d15ap+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d15ap+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d15ap+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d15ap+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d15ap+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d15ap+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d15ap+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d15ap+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x4.8d159e26af37cp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x4.8d159e26af37cp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x4.8d159e26af37cp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x4.8d159e26af37cp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37cp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d1598p+60 : 0x1.590f9a6586a16p+840 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x4.8d1598p+60 : 0x1.590f9a6586a17p+840 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x4.8d1598p+60 : 0x1.590f9a6586a16p+840 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d1598p+60 : 0x1.590f9a6586a17p+840 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8p+840L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8p+840L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8p+840L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cdap+840L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8p+840L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8p+840L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8p+840L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cdap+840L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8802ac0e10965p+840L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8802ac0e10965p+840L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8802ac0e10965p+840L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8802ac0e10966p+840L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8802ac0e109p+840L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8802ac0e1098p+840L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8802ac0e109p+840L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d1598p+60L : 0x1.590f9a6586a16cd8802ac0e1098p+840L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d15ap+60 : 0x1.5914feaeb8c2bp+840 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x4.8d15ap+60 : 0x1.5914feaeb8c2cp+840 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x4.8d15ap+60 : 0x1.5914feaeb8c2bp+840 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d15ap+60 : 0x1.5914feaeb8c2cp+840 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3ep+840L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb4p+840L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3ep+840L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb4p+840L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3ep+840L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb4p+840L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3ep+840L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb4p+840L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3f4dc103bc9a17p+840L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3f4dc103bc9a17p+840L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3f4dc103bc9a17p+840L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3f4dc103bc9a18p+840L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3f4dc103bc9ap+840L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3f4dc103bc9ap+840L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3f4dc103bc9ap+840L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d15ap+60L : 0x1.5914feaeb8c2bb3f4dc103bc9a8p+840L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af37cp+60 : 0x1.5913bfacf4afp+840 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af37cp+60 : 0x1.5913bfacf4afp+840 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af37cp+60 : 0x1.5913bfacf4afp+840 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af37cp+60 : 0x1.5913bfacf4af1p+840 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af0236p+840L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af0236p+840L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af0236p+840L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af0238p+840L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af0236p+840L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af0236p+840L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af0236p+840L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af0238p+840L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af023616e6e4d86b73p+840L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af023616e6e4d86b73p+840L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af023616e6e4d86b73p+840L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af023616e6e4d86b74p+840L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af023616e6e4d86bp+840L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af023616e6e4d86b8p+840L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af023616e6e4d86bp+840L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+60L : 0x1.5913bfacf4af023616e6e4d86b8p+840L : inexact-ok
+pow 0x1.0000000000001p0 0x1.23456789abcdfp61
+= pow downward flt-32 0x1.000002p+0f 0x2.468adp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0x1.000002p+0f 0x2.468adp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f 0x2.468adp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0x1.000002p+0f 0x2.468adp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x2.468adp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x2.468adp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x2.468adp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x2.468adp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x2.468adp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x2.468adp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x2.468adp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x2.468adp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x2.468adp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x2.468adp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x2.468adp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x2.468adp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468adp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468adp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468adp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468adp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468adp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468adp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468adp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468adp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 0x1.000002p+0f 0x2.468accp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0x1.000002p+0f 0x2.468accp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f 0x2.468accp+60f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0x1.000002p+0f 0x2.468accp+60f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x2.468accp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x2.468accp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x2.468accp+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x2.468accp+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x2.468accp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x2.468accp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x2.468accp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x2.468accp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468accp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468accp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468accp+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468accp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468accp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468accp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468accp+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468accp+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x2.468acf13579bep+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x2.468acf13579bep+60 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x2.468acf13579bep+60 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x2.468acf13579bep+60 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bep+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bep+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bep+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bep+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bep+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bep+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bep+60L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bep+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468acf13579bep+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468acf13579bep+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468acf13579bep+60L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468acf13579bep+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bep+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bep+60L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bep+60L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bep+60L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 0x1p+0f 0x2.468adp+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x2.468adp+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x2.468adp+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x2.468adp+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468adp+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468adp+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468adp+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468adp+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f 0x2.468accp+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x2.468accp+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x2.468accp+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x2.468accp+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468accp+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468accp+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468accp+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468accp+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468acf13579bep+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468acf13579bep+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468acf13579bep+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468acf13579bep+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.0000000000001p+0 0x2.468adp+60 : 0x1.5914feaeb89dep+840 : inexact-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x2.468adp+60 : 0x1.5914feaeb89dfp+840 : inexact-ok
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x2.468adp+60 : 0x1.5914feaeb89dep+840 : inexact-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x2.468adp+60 : 0x1.5914feaeb89dfp+840 : inexact-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec34p+840L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec36p+840L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec34p+840L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec36p+840L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec34p+840L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec36p+840L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec34p+840L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec36p+840L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec35255637d0b4e2p+840L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec35255637d0b4e2p+840L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec35255637d0b4e2p+840L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec35255637d0b4e3p+840L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec35255637d0b48p+840L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec35255637d0b5p+840L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec35255637d0b48p+840L : inexact-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468adp+60L : 0x1.5914feaeb89dec35255637d0b5p+840L : inexact-ok
+= pow downward dbl-64 0x1.0000000000001p+0 0x2.468accp+60 : 0x1.590f9a65867c9p+840 : inexact-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x2.468accp+60 : 0x1.590f9a65867cap+840 : inexact-ok
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x2.468accp+60 : 0x1.590f9a65867c9p+840 : inexact-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x2.468accp+60 : 0x1.590f9a65867cap+840 : inexact-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e6p+840L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e62p+840L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e6p+840L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e62p+840L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e6p+840L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e62p+840L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e6p+840L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e62p+840L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e61d3750ccab8a6p+840L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e61d3750ccab8a7p+840L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e61d3750ccab8a6p+840L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e61d3750ccab8a7p+840L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e61d3750ccab88p+840L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e61d3750ccab88p+840L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e61d3750ccab88p+840L : inexact-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468accp+60L : 0x1.590f9a65867c9e61d3750ccab9p+840L : inexact-ok
+= pow downward dbl-64 0x1.0000000000001p+0 0x2.468acf13579bep+60 : 0x1.5913bfacf48a3p+840 : inexact-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x2.468acf13579bep+60 : 0x1.5913bfacf48a3p+840 : inexact-ok
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x2.468acf13579bep+60 : 0x1.5913bfacf48a3p+840 : inexact-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x2.468acf13579bep+60 : 0x1.5913bfacf48a4p+840 : inexact-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334ep+840L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334ep+840L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334ep+840L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a335p+840L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334ep+840L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334ep+840L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334ep+840L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a335p+840L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334e04740e2bacb8p+840L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334e04740e2bacb9p+840L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334e04740e2bacb8p+840L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334e04740e2bacb9p+840L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334e04740e2bac8p+840L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334e04740e2bac8p+840L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334e04740e2bac8p+840L : inexact-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bep+60L : 0x1.5913bfacf48a334e04740e2badp+840L : inexact-ok
+pow 0x1.0000000000001p0 -0x1.23456789abcdfp61
+= pow downward flt-32 0x1.000002p+0f -0x2.468accp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0x1.000002p+0f -0x2.468accp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f -0x2.468accp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0x1.000002p+0f -0x2.468accp+60f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x2.468accp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x2.468accp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x2.468accp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x2.468accp+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x2.468accp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468accp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468accp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468accp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 0x1.000002p+0f -0x2.468adp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0x1.000002p+0f -0x2.468adp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f -0x2.468adp+60f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0x1.000002p+0f -0x2.468adp+60f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x2.468adp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x2.468adp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x2.468adp+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x2.468adp+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x2.468adp+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x2.468adp+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468adp+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468adp+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468adp+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x2.468acf13579bep+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x2.468acf13579bep+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x2.468acf13579bep+60 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x2.468acf13579bep+60 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bep+60L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 0x1p+0f -0x2.468accp+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x2.468accp+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x2.468accp+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x2.468accp+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468accp+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468accp+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468accp+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468accp+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468accp+60L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f -0x2.468adp+60f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x2.468adp+60f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x2.468adp+60f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x2.468adp+60f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468adp+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468adp+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468adp+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468adp+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468adp+60L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468acf13579bep+60 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468acf13579bep+60 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468acf13579bep+60 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468acf13579bep+60 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+60L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x2.468accp+60 : 0xb.ded059d22f858p-844 : inexact-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x2.468accp+60 : 0xb.ded059d22f858p-844 : inexact-ok
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x2.468accp+60 : 0xb.ded059d22f858p-844 : inexact-ok
+= pow upward dbl-64 0x1.0000000000001p+0 -0x2.468accp+60 : 0xb.ded059d22f86p-844 : inexact-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ap-844L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592bp-844L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ap-844L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592bp-844L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ap-844L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592bp-844L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ap-844L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592bp-844L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ad9a28ad84a298p-844L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ad9a28ad84a2ap-844L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ad9a28ad84a298p-844L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ad9a28ad84a2ap-844L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ad9a28ad84ap-844L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ad9a28ad84a4p-844L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ad9a28ad84ap-844L : inexact-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468accp+60L : 0xb.ded059d22f8592ad9a28ad84a4p-844L : inexact-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x2.468adp+60 : 0xb.dea0deefbe41p-844 : inexact-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x2.468adp+60 : 0xb.dea0deefbe41p-844 : inexact-ok
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x2.468adp+60 : 0xb.dea0deefbe41p-844 : inexact-ok
+= pow upward dbl-64 0x1.0000000000001p+0 -0x2.468adp+60 : 0xb.dea0deefbe418p-844 : inexact-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105ap-844L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105ap-844L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105ap-844L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105bp-844L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105ap-844L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105ap-844L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105ap-844L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105bp-844L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105a526fa1915e99p-844L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105a526fa1915e998p-844L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105a526fa1915e99p-844L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105a526fa1915e998p-844L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105a526fa1915e8p-844L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105a526fa1915e8p-844L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105a526fa1915e8p-844L : inexact-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468adp+60L : 0xb.dea0deefbe4105a526fa1915ecp-844L : inexact-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bep+60 : 0xb.deabd7ffdc338p-844 : inexact-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bep+60 : 0xb.deabd7ffdc338p-844 : inexact-ok
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bep+60 : 0xb.deabd7ffdc338p-844 : inexact-ok
+= pow upward dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bep+60 : 0xb.deabd7ffdc34p-844 : inexact-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ep-844L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385fp-844L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ep-844L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385fp-844L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ep-844L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385fp-844L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ep-844L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385fp-844L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ee405985fd8ef8p-844L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ee405985fd8ef8p-844L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ee405985fd8ef8p-844L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ee405985fd8fp-844L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ee405985fd8cp-844L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ee405985fd9p-844L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ee405985fd8cp-844L : inexact-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bep+60L : 0xb.deabd7ffdc3385ee405985fd9p-844L : inexact-ok
+pow 0x0.ffffffffffffffffp0 0x1.23456789abcdef0ep77
+= pow downward flt-32 0x1p+0f 0x2.468adp+76f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x2.468adp+76f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x2.468adp+76f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x2.468adp+76f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468adp+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468adp+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468adp+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468adp+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f 0x2.468accp+76f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x2.468accp+76f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x2.468accp+76f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x2.468accp+76f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468accp+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468accp+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468accp+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468accp+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468acf13579bep+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468acf13579bep+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468acf13579bep+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468acf13579bep+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468acf13579bcp+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468acf13579bcp+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468acf13579bcp+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468acf13579bcp+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0xf.fffffp-4f 0x2.468adp+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xf.fffffp-4f 0x2.468adp+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f 0x2.468adp+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xf.fffffp-4f 0x2.468adp+76f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x2.468adp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x2.468adp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x2.468adp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x2.468adp+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x2.468adp+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x2.468adp+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x2.468adp+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x2.468adp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 0xf.fffffp-4f 0x2.468accp+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xf.fffffp-4f 0x2.468accp+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f 0x2.468accp+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xf.fffffp-4f 0x2.468accp+76f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x2.468accp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x2.468accp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x2.468accp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x2.468accp+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x2.468accp+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x2.468accp+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x2.468accp+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x2.468accp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x2.468acf13579bep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x2.468acf13579bep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x2.468acf13579bep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x2.468acf13579bep+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bep+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x2.468acf13579bcp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x2.468acf13579bcp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x2.468acf13579bcp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x2.468acf13579bcp+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bcp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x2.468acf13579bde1cp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x2.468adp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x2.468adp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x2.468adp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x2.468adp+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468adp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x2.468accp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x2.468accp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x2.468accp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x2.468accp+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468accp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x2.468acf13579bep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x2.468acf13579bep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x2.468acf13579bep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x2.468acf13579bep+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bep+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x2.468acf13579bcp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x2.468acf13579bcp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x2.468acf13579bcp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x2.468acf13579bcp+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bcp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x2.468acf13579bde1cp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b4p-13448L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b4p-13448L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b4p-13448L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b44p-13448L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b4p-13448L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b4p-13448L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b4p-13448L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b44p-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b4143e88e857df2p-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b4143e88e857df2p-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b4143e88e857df2p-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x2.2785707939b37b4143e88e857df4p-13448L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468adp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f4p-13448L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f4p-13448L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f4p-13448L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f8p-13448L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f4p-13448L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f4p-13448L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f4p-13448L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f8p-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f40d2812a4964p-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f40d2812a4964p-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f40d2812a4964p-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x2.280f6312f34af8f40d2812a49642p-13448L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468accp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba441cp-13448L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba442p-13448L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba441cp-13448L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba442p-13448L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba441cp-13448L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba442p-13448L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba441cp-13448L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba442p-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba441f36a9ee2dd268p-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba441f36a9ee2dd268p-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba441f36a9ee2dd268p-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x2.27a54f0197ba441f36a9ee2dd26ap-13448L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bep+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ebcp-13448L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ebcp-13448L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ebcp-13448L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ecp-13448L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ebcp-13448L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ebcp-13448L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ebcp-13448L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ecp-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ebd39ddb200b1p-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ebd39ddb200b1p-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ebd39ddb200b1p-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x2.27a54f019c098ebd39ddb200b102p-13448L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bcp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7364p-13448L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7368p-13448L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7364p-13448L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7368p-13448L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7364p-13448L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7368p-13448L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7364p-13448L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7368p-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7367cc9a1fca4a62p-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7367cc9a1fca4a62p-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7367cc9a1fca4a62p-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x2.27a54f0197fb7367cc9a1fca4a64p-13448L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x2.468acf13579bde1cp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow 0x0.ffffffffffffffffp0 -0x1.23456789abcdef0ep77
+= pow downward flt-32 0x1p+0f -0x2.468accp+76f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x2.468accp+76f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x2.468accp+76f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x2.468accp+76f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468accp+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468accp+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468accp+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468accp+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468accp+76L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f -0x2.468adp+76f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x2.468adp+76f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x2.468adp+76f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x2.468adp+76f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468adp+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468adp+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468adp+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468adp+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468adp+76L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468acf13579bcp+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468acf13579bcp+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468acf13579bcp+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468acf13579bcp+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468acf13579bcp+76L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468acf13579bep+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468acf13579bep+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468acf13579bep+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468acf13579bep+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468acf13579bde1cp+76L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0xf.fffffp-4f -0x2.468accp+76f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x2.468accp+76f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f -0x2.468accp+76f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xf.fffffp-4f -0x2.468accp+76f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x2.468accp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x2.468accp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x2.468accp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x2.468accp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x2.468accp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x2.468accp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x2.468accp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x2.468accp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x2.468accp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x2.468accp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x2.468accp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x2.468accp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 0xf.fffffp-4f -0x2.468adp+76f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x2.468adp+76f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f -0x2.468adp+76f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xf.fffffp-4f -0x2.468adp+76f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x2.468adp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x2.468adp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x2.468adp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x2.468adp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x2.468adp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x2.468adp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x2.468adp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x2.468adp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x2.468adp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x2.468adp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x2.468adp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x2.468adp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x2.468acf13579bcp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x2.468acf13579bcp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x2.468acf13579bcp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x2.468acf13579bcp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bcp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bcp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x2.468acf13579bep+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x2.468acf13579bep+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x2.468acf13579bep+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x2.468acf13579bep+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x2.468accp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x2.468accp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x2.468accp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x2.468accp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468accp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468accp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468accp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468accp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x2.468accp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x2.468accp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468accp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468accp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x2.468adp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x2.468adp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x2.468adp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x2.468adp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468adp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468adp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468adp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468adp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x2.468adp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x2.468adp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468adp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468adp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x2.468acf13579bcp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x2.468acf13579bcp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x2.468acf13579bcp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x2.468acf13579bcp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x2.468acf13579bep+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x2.468acf13579bep+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x2.468acf13579bep+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x2.468acf13579bep+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b3648p+13444L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b3648p+13444L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b3648p+13444L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b365p+13444L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b3648p+13444L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b3648p+13444L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b3648p+13444L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b365p+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b364949a01fc586dcp+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b364949a01fc586dcp+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b364949a01fc586dcp+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0x7.6b632ba5541b364949a01fc586ep+13444L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468accp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468accp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eacep+13444L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eace8p+13444L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eacep+13444L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eace8p+13444L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eacep+13444L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eace8p+13444L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eacep+13444L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eace8p+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eace796c53e935074p+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eace796c53e935074p+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eace796c53e935074p+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0x7.6d3e3fd0495eace796c53e935078p+13444L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468adp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468adp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f18p+13444L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f2p+13444L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f18p+13444L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f2p+13444L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f18p+13444L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f2p+13444L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f18p+13444L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f2p+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f1ed93a2bfa5e28p+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f1ed93a2bfa5e28p+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f1ed93a2bfa5e28p+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0x7.6cd0697cdc7d6f1ed93a2bfa5e2cp+13444L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bcp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ffp+13444L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ffp+13444L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ffp+13444L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ff8p+13444L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ffp+13444L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ffp+13444L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ffp+13444L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ff8p+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ff1d3020079764p+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ff1d3020079764p+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ff1d3020079764p+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0x7.6cd0697ceb570ff1d30200797644p+13444L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea76745p+13444L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea76745p+13444L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea76745p+13444L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea767458p+13444L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea76745p+13444L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea76745p+13444L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea76745p+13444L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea767458p+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea7674515bff3eb50558p+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea7674515bff3eb50558p+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea7674515bff3eb50558p+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0x7.6cd0697cea7674515bff3eb5055cp+13444L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x2.468acf13579bde1cp+76L : plus_infty : inexact-ok overflow errno-erange
+pow 0x1.0000000000000002p0 0x1.23456789abcdef0ep76
+= pow downward flt-32 0x1.000002p+0f 0x1.234568p+76f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0x1.000002p+0f 0x1.234568p+76f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f 0x1.234568p+76f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0x1.000002p+0f 0x1.234568p+76f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x1.234568p+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x1.234568p+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x1.234568p+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x1.234568p+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x1.234568p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x1.234568p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x1.234568p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x1.234568p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x1.234568p+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x1.234568p+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x1.234568p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x1.234568p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 0x1.000002p+0f 0x1.234566p+76f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0x1.000002p+0f 0x1.234566p+76f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f 0x1.234566p+76f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0x1.000002p+0f 0x1.234566p+76f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x1.234566p+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x1.234566p+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x1.234566p+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x1.234566p+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x1.234566p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x1.234566p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x1.234566p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x1.234566p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x1.234566p+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x1.234566p+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x1.234566p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x1.234566p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x1.23456789abcdfp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x1.23456789abcdfp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x1.23456789abcdfp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x1.23456789abcdfp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdfp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdfp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x1.23456789abcdep+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x1.23456789abcdep+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x1.23456789abcdep+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x1.23456789abcdep+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 0x1p+0f 0x1.234568p+76f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x1.234568p+76f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x1.234568p+76f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x1.234568p+76f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x1.234568p+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x1.234568p+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x1.234568p+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x1.234568p+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f 0x1.234566p+76f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x1.234566p+76f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x1.234566p+76f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x1.234566p+76f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x1.234566p+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x1.234566p+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x1.234566p+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x1.234566p+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x1.23456789abcdfp+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x1.23456789abcdfp+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x1.23456789abcdfp+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x1.23456789abcdfp+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x1.23456789abcdep+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x1.23456789abcdep+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x1.23456789abcdep+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x1.23456789abcdep+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.0000000000001p+0 0x1.234568p+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x1.234568p+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x1.234568p+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x1.234568p+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x1.234568p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x1.234568p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.234568p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x1.234568p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x1.234568p+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x1.234568p+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x1.234568p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x1.234568p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.0000000000001p+0 0x1.234566p+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x1.234566p+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x1.234566p+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x1.234566p+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x1.234566p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x1.234566p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.234566p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x1.234566p+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x1.234566p+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x1.234566p+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x1.234566p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x1.234566p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.0000000000001p+0 0x1.23456789abcdfp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x1.23456789abcdfp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x1.23456789abcdfp+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x1.23456789abcdfp+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.0000000000001p+0 0x1.23456789abcdep+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x1.23456789abcdep+76 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x1.23456789abcdep+76 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x1.23456789abcdep+76 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d1748p+13444L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d175p+13444L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d1748p+13444L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d175p+13444L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d1748p+13444L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d175p+13444L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d1748p+13444L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d175p+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d174e5c23d27d2b3p+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d174e5c23d27d2b3p+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d174e5c23d27d2b3p+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x1.234568p+76L : 0x7.6d3e3fd0495d174e5c23d27d2b34p+13444L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x1.234568p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x1.234568p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x1.234568p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a11p+13444L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a118p+13444L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a11p+13444L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a118p+13444L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a11p+13444L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a118p+13444L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a11p+13444L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a118p+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a1156b69e5bafb4cp+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a1156b69e5bafb4cp+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a1156b69e5bafb4cp+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x1.234566p+76L : 0x7.6b632ba55419a1156b69e5bafb5p+13444L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x1.234566p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x1.234566p+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x1.234566p+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a7p+13444L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a7p+13444L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a7p+13444L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a78p+13444L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a7p+13444L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a7p+13444L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a7p+13444L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a78p+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a700798d8825d58p+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a700798d8825d5cp+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a700798d8825d58p+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0x7.6cd0697ceb557a700798d8825d5cp+13444L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdfp+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd998p+13444L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd9ap+13444L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd998p+13444L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd9ap+13444L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd998p+13444L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd9ap+13444L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd998p+13444L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd9ap+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd99d0dd1072e5f1cp+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd99d0dd1072e5f2p+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd99d0dd1072e5f1cp+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0x7.6cd0697cdc7bd99d0dd1072e5f2p+13444L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74dec8p+13444L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74dedp+13444L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74dec8p+13444L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74dedp+13444L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74dec8p+13444L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74dedp+13444L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74dec8p+13444L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74dedp+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74decf909616edd858p+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74decf909616edd85cp+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74decf909616edd858p+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0x7.6cd0697cea74decf909616edd85cp+13444L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x1.23456789abcdef0ep+76L : plus_infty : inexact-ok overflow errno-erange
+pow 0x1.0000000000000002p0 -0x1.23456789abcdef0ep76
+= pow downward flt-32 0x1.000002p+0f -0x1.234566p+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0x1.000002p+0f -0x1.234566p+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f -0x1.234566p+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0x1.000002p+0f -0x1.234566p+76f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x1.234566p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x1.234566p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x1.234566p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x1.234566p+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x1.234566p+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x1.234566p+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x1.234566p+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x1.234566p+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 0x1.000002p+0f -0x1.234568p+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0x1.000002p+0f -0x1.234568p+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f -0x1.234568p+76f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0x1.000002p+0f -0x1.234568p+76f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x1.234568p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x1.234568p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x1.234568p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x1.234568p+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x1.234568p+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x1.234568p+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x1.234568p+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x1.234568p+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x1.23456789abcdep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x1.23456789abcdep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x1.23456789abcdep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x1.23456789abcdep+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdep+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x1.23456789abcdfp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x1.23456789abcdfp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x1.23456789abcdfp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x1.23456789abcdfp+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdfp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x1.23456789abcdef0ep+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 0x1p+0f -0x1.234566p+76f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x1.234566p+76f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x1.234566p+76f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x1.234566p+76f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x1.234566p+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x1.234566p+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x1.234566p+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x1.234566p+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x1.234566p+76L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f -0x1.234568p+76f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x1.234568p+76f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x1.234568p+76f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x1.234568p+76f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x1.234568p+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x1.234568p+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x1.234568p+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x1.234568p+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x1.234568p+76L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x1.23456789abcdep+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x1.23456789abcdep+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x1.23456789abcdep+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x1.23456789abcdep+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x1.23456789abcdep+76L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x1.23456789abcdfp+76 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x1.23456789abcdfp+76 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x1.23456789abcdfp+76 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x1.23456789abcdfp+76 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x1.23456789abcdfp+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x1.23456789abcdef0ep+76L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x1.234566p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x1.234566p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x1.234566p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.0000000000001p+0 -0x1.234566p+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x1.234566p+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x1.234566p+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x1.234566p+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x1.234566p+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x1.234568p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x1.234568p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x1.234568p+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.0000000000001p+0 -0x1.234568p+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x1.234568p+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x1.234568p+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x1.234568p+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x1.234568p+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x1.23456789abcdep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x1.23456789abcdep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x1.23456789abcdep+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.0000000000001p+0 -0x1.23456789abcdep+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdep+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x1.23456789abcdfp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x1.23456789abcdfp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x1.23456789abcdfp+76 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.0000000000001p+0 -0x1.23456789abcdfp+76 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdfp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x1.23456789abcdef0ep+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6eb8p-13448L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6eb8p-13448L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6eb8p-13448L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6ebcp-13448L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6eb8p-13448L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6eb8p-13448L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6eb8p-13448L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6ebcp-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6eb9e43b04ab4386p-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6eb9e43b04ab4386p-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6eb9e43b04ab4386p-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x2.280f6312f34b6eb9e43b04ab4388p-13448L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x1.234566p+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0e8p-13448L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0e8p-13448L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0e8p-13448L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0ecp-13448L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0e8p-13448L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0e8p-13448L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0e8p-13448L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0ecp-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0e9ae026e1371dap-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0e9ae026e1371dcp-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0e9ae026e1371dap-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x2.2785707939b3f0e9ae026e1371dcp-13448L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x1.234568p+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a046cp-13448L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a046cp-13448L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a046cp-13448L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a047p-13448L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a046cp-13448L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a046cp-13448L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a046cp-13448L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a047p-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a046c7044704dd8ecp-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a046c7044704dd8ecp-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a046c7044704dd8ecp-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x2.27a54f019c0a046c7044704dd8eep-13448L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdep+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9ccp-13448L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9dp-13448L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9ccp-13448L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9dp-13448L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9ccp-13448L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9dp-13448L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9ccp-13448L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9dp-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9ce6d10ab8fa25ep-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9ce6d10ab8fa25ep-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9ce6d10ab8fa25ep-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x2.27a54f0197bab9ce6d10ab8fa26p-13448L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdfp+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe914p-13448L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe918p-13448L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe914p-13448L : inexact-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe918p-13448L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe914p-13448L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe918p-13448L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe914p-13448L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe918p-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe9170300dd3a01eap-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe9170300dd3a01ecp-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe9170300dd3a01eap-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x2.27a54f0197fbe9170300dd3a01ecp-13448L : inexact-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x1.23456789abcdef0ep+76L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow 0x0.ffffffffffffffffffffffffffff8p0 0x1.23456789abcdef0123456789abcdp126
+= pow downward flt-32 0x1p+0f 0x4.8d15ap+124f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x4.8d15ap+124f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x4.8d15ap+124f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x4.8d15ap+124f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x4.8d15ap+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x4.8d15ap+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x4.8d15ap+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x4.8d15ap+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f 0x4.8d1598p+124f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x4.8d1598p+124f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x4.8d1598p+124f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x4.8d1598p+124f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x4.8d1598p+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x4.8d1598p+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x4.8d1598p+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x4.8d1598p+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x4.8d159e26af37cp+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x4.8d159e26af37cp+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x4.8d159e26af37cp+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x4.8d159e26af37cp+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x4.8d159e26af378p+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x4.8d159e26af378p+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x4.8d159e26af378p+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x4.8d159e26af378p+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0xf.fffffp-4f 0x4.8d15ap+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xf.fffffp-4f 0x4.8d15ap+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f 0x4.8d15ap+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xf.fffffp-4f 0x4.8d15ap+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x4.8d15ap+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x4.8d15ap+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x4.8d15ap+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x4.8d15ap+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4.8d15ap+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d15ap+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d15ap+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d15ap+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 0xf.fffffp-4f 0x4.8d1598p+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xf.fffffp-4f 0x4.8d1598p+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f 0x4.8d1598p+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xf.fffffp-4f 0x4.8d1598p+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x4.8d1598p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x4.8d1598p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x4.8d1598p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x4.8d1598p+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4.8d1598p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d1598p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d1598p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d1598p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x4.8d159e26af37cp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x4.8d159e26af37cp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x4.8d159e26af37cp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x4.8d159e26af37cp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37cp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.fffffp-4 0x4.8d159e26af378p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.fffffp-4 0x4.8d159e26af378p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 0x4.8d159e26af378p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.fffffp-4 0x4.8d159e26af378p+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af378p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc08p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bcp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x4.8d15ap+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x4.8d15ap+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x4.8d15ap+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x4.8d15ap+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d15ap+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x4.8d1598p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x4.8d1598p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x4.8d1598p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x4.8d1598p+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d1598p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af37cp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af37cp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af37cp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af37cp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af378p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af378p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af378p+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xf.ffffffffffff8p-4 0x4.8d159e26af378p+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d15ap+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d1598p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37cp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af378p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc08p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bcp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d15ap+124L : 0x2.2785707939b3a279674683b4b8dap-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d15ap+124L : 0x2.2785707939b3a279674683b4b8dap-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d15ap+124L : 0x2.2785707939b3a279674683b4b8dap-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d15ap+124L : 0x2.2785707939b3a279674683b4b8dcp-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d1598p+124L : 0x2.280f6312f34b2035ff83b8a6b996p-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d1598p+124L : 0x2.280f6312f34b2035ff83b8a6b996p-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d1598p+124L : 0x2.280f6312f34b2035ff83b8a6b996p-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d1598p+124L : 0x2.280f6312f34b2035ff83b8a6b998p-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x2.27a54f0197ba6b599e2182a3abfcp-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x2.27a54f0197ba6b599e2182a3abfep-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x2.27a54f0197ba6b599e2182a3abfcp-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37cp+124L : 0x2.27a54f0197ba6b599e2182a3abfep-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x2.27a54f019c09b5f7a15546c4fd3cp-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x2.27a54f019c09b5f7a15546c4fd3ep-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x2.27a54f019c09b5f7a15546c4fd3cp-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af378p+124L : 0x2.27a54f019c09b5f7a15546c4fd3ep-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x2.27a54f0197fed61a2a9418409b0ap-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x2.27a54f0197fed61a2a9418409b0cp-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x2.27a54f0197fed61a2a9418409b0ap-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc08p+124L : 0x2.27a54f0197fed61a2a9418409b0cp-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x2.27a54f0197ff60037e547e4061cep-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x2.27a54f0197ff60037e547e4061dp-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x2.27a54f0197ff60037e547e4061cep-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bcp+124L : 0x2.27a54f0197ff60037e547e4061dp-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x2.27a54f0197ff118eaf65554afc3ep-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x2.27a54f0197ff118eaf65554afc4p-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x2.27a54f0197ff118eaf65554afc3ep-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x2.27a54f0197ff118eaf65554afc4p-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x2.27a54f0197ff118eaf65553d3f8p-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x2.27a54f0197ff118eaf65553d3f82p-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x2.27a54f0197ff118eaf65553d3f8p-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x2.27a54f0197ff118eaf65553d3f82p-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x2.27a54f0197ff118eaf65555fb9d6p-13448L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x2.27a54f0197ff118eaf65555fb9d6p-13448L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x2.27a54f0197ff118eaf65555fb9d6p-13448L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x2.27a54f0197ff118eaf65555fb9d8p-13448L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d15ap+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d15ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d15ap+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d1598p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d1598p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d1598p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37cp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37cp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37cp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af378p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af378p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af378p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc08p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc08p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc08p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bcp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bcp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26af34p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26bp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L 0x4.8d159e26af37bc048d159e26aep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow 0x0.ffffffffffffffffffffffffffff8p0 -0x1.23456789abcdef0123456789abcdp126
+= pow downward flt-32 0x1p+0f -0x4.8d1598p+124f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x4.8d1598p+124f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x4.8d1598p+124f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x4.8d1598p+124f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x4.8d1598p+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x4.8d1598p+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x4.8d1598p+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x4.8d1598p+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d1598p+124L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f -0x4.8d15ap+124f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x4.8d15ap+124f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x4.8d15ap+124f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x4.8d15ap+124f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x4.8d15ap+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x4.8d15ap+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x4.8d15ap+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x4.8d15ap+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d15ap+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x4.8d159e26af378p+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x4.8d159e26af378p+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x4.8d159e26af378p+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x4.8d159e26af378p+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d159e26af378p+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x4.8d159e26af37cp+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x4.8d159e26af37cp+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x4.8d159e26af37cp+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x4.8d159e26af37cp+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37cp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc08p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26af34p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26af34p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26af34p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26af34p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc048d159e26aep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x4.8d159e26af37bc048d159e26bp+124L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0xf.fffffp-4f -0x4.8d1598p+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x4.8d1598p+124f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f -0x4.8d1598p+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xf.fffffp-4f -0x4.8d1598p+124f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x4.8d1598p+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x4.8d1598p+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x4.8d1598p+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x4.8d1598p+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 0xf.fffffp-4f -0x4.8d15ap+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xf.fffffp-4f -0x4.8d15ap+124f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xf.fffffp-4f -0x4.8d15ap+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xf.fffffp-4f -0x4.8d15ap+124f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x4.8d15ap+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x4.8d15ap+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x4.8d15ap+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x4.8d15ap+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d15ap+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d15ap+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x4.8d159e26af378p+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x4.8d159e26af378p+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x4.8d159e26af378p+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x4.8d159e26af378p+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af378p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af378p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.fffffp-4 -0x4.8d159e26af37cp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.fffffp-4 -0x4.8d159e26af37cp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.fffffp-4 -0x4.8d159e26af37cp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.fffffp-4 -0x4.8d159e26af37cp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d1598p+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x4.8d1598p+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x4.8d1598p+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d1598p+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d15ap+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x4.8d15ap+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x4.8d15ap+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d15ap+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af378p+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af378p+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af378p+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af378p+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af37cp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af37cp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af37cp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xf.ffffffffffff8p-4 -0x4.8d159e26af37cp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26af34p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26af34p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d1598p+124L : 0x7.6b632ba5541aaf37ff8e0c6ce798p+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d1598p+124L : 0x7.6b632ba5541aaf37ff8e0c6ce79cp+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d1598p+124L : 0x7.6b632ba5541aaf37ff8e0c6ce798p+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d1598p+124L : 0x7.6b632ba5541aaf37ff8e0c6ce79cp+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d15ap+124L : 0x7.6d3e3fd0495e25b4833a1a8c28acp+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d15ap+124L : 0x7.6d3e3fd0495e25b4833a1a8c28bp+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d15ap+124L : 0x7.6d3e3fd0495e25b4833a1a8c28acp+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d15ap+124L : 0x7.6d3e3fd0495e25b4833a1a8c28bp+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0x7.6cd0697cdc7ce7f3956c750bedc8p+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0x7.6cd0697cdc7ce7f3956c750bedc8p+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0x7.6cd0697cdc7ce7f3956c750bedc8p+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af378p+124L : 0x7.6cd0697cdc7ce7f3956c750bedccp+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0x7.6cd0697ceb5688c68f34487ca7ecp+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0x7.6cd0697ceb5688c68f34487ca7ecp+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0x7.6cd0697ceb5688c68f34487ca7ecp+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37cp+124L : 0x7.6cd0697ceb5688c68f34487ca7fp+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0x7.6cd0697cea68eeb95f96ec852fecp+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0x7.6cd0697cea68eeb95f96ec852ffp+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0x7.6cd0697cea68eeb95f96ec852fecp+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bcp+124L : 0x7.6cd0697cea68eeb95f96ec852ffp+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0x7.6cd0697cea6ac9ed79f6271fa7p+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0x7.6cd0697cea6ac9ed79f6271fa704p+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0x7.6cd0697cea6ac9ed79f6271fa7p+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc08p+124L : 0x7.6cd0697cea6ac9ed79f6271fa704p+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0x7.6cd0697cea69fd0fe7325c5cb3ccp+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0x7.6cd0697cea69fd0fe7325c5cb3ccp+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0x7.6cd0697cea69fd0fe7325c5cb3ccp+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0x7.6cd0697cea69fd0fe7325c5cb3dp+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0x7.6cd0697cea69fd0fe7325c153c74p+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0x7.6cd0697cea69fd0fe7325c153c78p+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0x7.6cd0697cea69fd0fe7325c153c74p+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0x7.6cd0697cea69fd0fe7325c153c78p+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0x7.6cd0697cea69fd0fe7325c8c097cp+13444L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0x7.6cd0697cea69fd0fe7325c8c097cp+13444L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0x7.6cd0697cea69fd0fe7325c8c097cp+13444L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0x7.6cd0697cea69fd0fe7325c8c098p+13444L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d1598p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d1598p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d1598p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d1598p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d15ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d15ap+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d15ap+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d15ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af378p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af378p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af378p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af378p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37cp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37cp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37cp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37cp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc08p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc08p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc08p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc08p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26af34p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26aep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26aep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26bp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L -0x4.8d159e26af37bc048d159e26bp+124L : plus_infty : inexact-ok overflow errno-erange
+pow 0x1.0000000000000000000000000001p0 0x1.23456789abcdef0123456789abcdp125
+= pow downward flt-32 0x1.000002p+0f 0x2.468adp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0x1.000002p+0f 0x2.468adp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f 0x2.468adp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0x1.000002p+0f 0x2.468adp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x2.468adp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x2.468adp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x2.468adp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x2.468adp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468adp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468adp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 0x1.000002p+0f 0x2.468accp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0x1.000002p+0f 0x2.468accp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f 0x2.468accp+124f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0x1.000002p+0f 0x2.468accp+124f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x2.468accp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x2.468accp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x2.468accp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x2.468accp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468accp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468accp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x2.468acf13579bep+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x2.468acf13579bep+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x2.468acf13579bep+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x2.468acf13579bep+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.000002p+0 0x2.468acf13579bcp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.000002p+0 0x2.468acf13579bcp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 0x2.468acf13579bcp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.000002p+0 0x2.468acf13579bcp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde04p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde04p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bdep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bdep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf13579ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf13579ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000002p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000002p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 0x1p+0f 0x2.468adp+124f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x2.468adp+124f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x2.468adp+124f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x2.468adp+124f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468adp+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468adp+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468adp+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468adp+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f 0x2.468accp+124f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f 0x2.468accp+124f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f 0x2.468accp+124f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f 0x2.468accp+124f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468accp+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468accp+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468accp+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468accp+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468acf13579bep+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468acf13579bep+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468acf13579bep+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468acf13579bep+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 0x2.468acf13579bcp+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 0x2.468acf13579bcp+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 0x2.468acf13579bcp+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 0x2.468acf13579bcp+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.0000000000001p+0 0x2.468adp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x2.468adp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x2.468adp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x2.468adp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468adp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468adp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468adp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468adp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.0000000000001p+0 0x2.468accp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x2.468accp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x2.468accp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x2.468accp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468accp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468accp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468accp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468accp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.0000000000001p+0 0x2.468acf13579bep+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x2.468acf13579bep+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x2.468acf13579bep+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x2.468acf13579bep+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x1.0000000000001p+0 0x2.468acf13579bcp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x1.0000000000001p+0 0x2.468acf13579bcp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 0x2.468acf13579bcp+124 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x1.0000000000001p+0 0x2.468acf13579bcp+124 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf13579ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf13579ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x2.468adp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468adp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468adp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x2.468accp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468accp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468accp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf13579ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf13579ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468adp+124L : 0x7.6d3e3fd0495e25b4833a1a8b5dep+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468adp+124L : 0x7.6d3e3fd0495e25b4833a1a8b5de4p+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468adp+124L : 0x7.6d3e3fd0495e25b4833a1a8b5dep+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468adp+124L : 0x7.6d3e3fd0495e25b4833a1a8b5de4p+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468accp+124L : 0x7.6b632ba5541aaf37ff8e0c6c1dp+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468accp+124L : 0x7.6b632ba5541aaf37ff8e0c6c1dp+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468accp+124L : 0x7.6b632ba5541aaf37ff8e0c6c1dp+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468accp+124L : 0x7.6b632ba5541aaf37ff8e0c6c1d04p+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bep+124L : 0x7.6cd0697ceb5688c68f34487bdd2cp+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bep+124L : 0x7.6cd0697ceb5688c68f34487bdd2cp+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bep+124L : 0x7.6cd0697ceb5688c68f34487bdd2cp+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bep+124L : 0x7.6cd0697ceb5688c68f34487bdd3p+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bcp+124L : 0x7.6cd0697cdc7ce7f3956c750b2304p+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bcp+124L : 0x7.6cd0697cdc7ce7f3956c750b2308p+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bcp+124L : 0x7.6cd0697cdc7ce7f3956c750b2304p+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bcp+124L : 0x7.6cd0697cdc7ce7f3956c750b2308p+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde04p+124L : 0x7.6cd0697cea6ac9ed79f6271edc4p+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde04p+124L : 0x7.6cd0697cea6ac9ed79f6271edc44p+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde04p+124L : 0x7.6cd0697cea6ac9ed79f6271edc4p+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde04p+124L : 0x7.6cd0697cea6ac9ed79f6271edc44p+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bdep+124L : 0x7.6cd0697cea68eeb95f96ec84652cp+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bdep+124L : 0x7.6cd0697cea68eeb95f96ec84652cp+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bdep+124L : 0x7.6cd0697cea68eeb95f96ec84652cp+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bdep+124L : 0x7.6cd0697cea68eeb95f96ec84653p+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0x7.6cd0697cea69fd0fe7325c5be908p+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0x7.6cd0697cea69fd0fe7325c5be90cp+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0x7.6cd0697cea69fd0fe7325c5be908p+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0x7.6cd0697cea69fd0fe7325c5be90cp+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x7.6cd0697cea69fd0fe7325c8b3ebcp+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x7.6cd0697cea69fd0fe7325c8b3ebcp+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x7.6cd0697cea69fd0fe7325c8b3ebcp+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf1358p+124L : 0x7.6cd0697cea69fd0fe7325c8b3ecp+13444L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x7.6cd0697cea69fd0fe7325c1471b4p+13444L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x7.6cd0697cea69fd0fe7325c1471b4p+13444L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x7.6cd0697cea69fd0fe7325c1471b4p+13444L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L 0x2.468acf13579bde02468acf1357p+124L : 0x7.6cd0697cea69fd0fe7325c1471b8p+13444L : inexact-ok
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468adp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468adp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468adp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468adp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468adp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468accp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468accp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468accp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468accp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468accp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bcp+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bcp+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bcp+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde04p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde04p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde04p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde04p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bdep+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bdep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bdep+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bdep+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf13579ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf13579ap+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf13579ap+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1358p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1358p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1357p+124L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L 0x2.468acf13579bde02468acf1357p+124L : plus_infty : inexact-ok overflow errno-erange
+pow 0x1.0000000000000000000000000001p0 -0x1.23456789abcdef0123456789abcdp125
+= pow downward flt-32 0x1.000002p+0f -0x2.468accp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0x1.000002p+0f -0x2.468accp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f -0x2.468accp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0x1.000002p+0f -0x2.468accp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x2.468accp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x2.468accp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x2.468accp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x2.468accp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x2.468accp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x2.468accp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468accp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468accp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 0x1.000002p+0f -0x2.468adp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0x1.000002p+0f -0x2.468adp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0x1.000002p+0f -0x2.468adp+124f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0x1.000002p+0f -0x2.468adp+124f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x2.468adp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x2.468adp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x2.468adp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x2.468adp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x2.468adp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x2.468adp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468adp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468adp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x2.468acf13579bcp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x2.468acf13579bcp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x2.468acf13579bcp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x2.468acf13579bcp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bcp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.000002p+0 -0x2.468acf13579bep+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.000002p+0 -0x2.468acf13579bep+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.000002p+0 -0x2.468acf13579bep+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.000002p+0 -0x2.468acf13579bep+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bdep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde04p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 0x1p+0f -0x2.468accp+124f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x2.468accp+124f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x2.468accp+124f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x2.468accp+124f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468accp+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468accp+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468accp+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468accp+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468accp+124L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1p+0f -0x2.468adp+124f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1p+0f -0x2.468adp+124f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1p+0f -0x2.468adp+124f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1p+0f -0x2.468adp+124f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468adp+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468adp+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468adp+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468adp+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468adp+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468acf13579bcp+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468acf13579bcp+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468acf13579bcp+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468acf13579bcp+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468acf13579bcp+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1p+0 -0x2.468acf13579bep+124 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1p+0 -0x2.468acf13579bep+124 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1p+0 -0x2.468acf13579bep+124 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1p+0 -0x2.468acf13579bep+124 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468acf13579bep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468acf13579bdep+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468acf13579bde04p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x2.468accp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x2.468accp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x2.468accp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.0000000000001p+0 -0x2.468accp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468accp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468accp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468accp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468accp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x2.468adp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x2.468adp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x2.468adp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.0000000000001p+0 -0x2.468adp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468adp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468adp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468adp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468adp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bcp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bcp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bcp+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bcp+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bcp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bep+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bep+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bep+124 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x1.0000000000001p+0 -0x2.468acf13579bep+124 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bdep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde04p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468accp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468adp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bcp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bdep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde04p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.0000000000000002p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468accp+124L : 0x2.280f6312f34b2035ff83b8a6f478p-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468accp+124L : 0x2.280f6312f34b2035ff83b8a6f47ap-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468accp+124L : 0x2.280f6312f34b2035ff83b8a6f478p-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468accp+124L : 0x2.280f6312f34b2035ff83b8a6f47ap-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468adp+124L : 0x2.2785707939b3a279674683b4f3aep-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468adp+124L : 0x2.2785707939b3a279674683b4f3aep-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468adp+124L : 0x2.2785707939b3a279674683b4f3aep-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468adp+124L : 0x2.2785707939b3a279674683b4f3bp-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bcp+124L : 0x2.27a54f019c09b5f7a15546c53814p-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bcp+124L : 0x2.27a54f019c09b5f7a15546c53814p-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bcp+124L : 0x2.27a54f019c09b5f7a15546c53814p-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bcp+124L : 0x2.27a54f019c09b5f7a15546c53816p-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bep+124L : 0x2.27a54f0197ba6b599e2182a3e6d4p-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bep+124L : 0x2.27a54f0197ba6b599e2182a3e6d6p-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bep+124L : 0x2.27a54f0197ba6b599e2182a3e6d4p-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bep+124L : 0x2.27a54f0197ba6b599e2182a3e6d6p-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bdep+124L : 0x2.27a54f0197ff60037e547e409ca6p-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bdep+124L : 0x2.27a54f0197ff60037e547e409ca8p-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bdep+124L : 0x2.27a54f0197ff60037e547e409ca6p-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bdep+124L : 0x2.27a54f0197ff60037e547e409ca8p-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde04p+124L : 0x2.27a54f0197fed61a2a941840d5e2p-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde04p+124L : 0x2.27a54f0197fed61a2a941840d5e4p-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde04p+124L : 0x2.27a54f0197fed61a2a941840d5e2p-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde04p+124L : 0x2.27a54f0197fed61a2a941840d5e4p-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x2.27a54f0197ff118eaf65554b3716p-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x2.27a54f0197ff118eaf65554b3718p-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x2.27a54f0197ff118eaf65554b3716p-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x2.27a54f0197ff118eaf65554b3718p-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x2.27a54f0197ff118eaf65555ff4aep-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x2.27a54f0197ff118eaf65555ff4aep-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x2.27a54f0197ff118eaf65555ff4aep-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x2.27a54f0197ff118eaf65555ff4bp-13448L : inexact-ok
+= pow downward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x2.27a54f0197ff118eaf65553d7a58p-13448L : inexact-ok
+= pow tonearest ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x2.27a54f0197ff118eaf65553d7a5ap-13448L : inexact-ok
+= pow towardzero ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x2.27a54f0197ff118eaf65553d7a58p-13448L : inexact-ok
+= pow upward ldbl-128 0x1.0000000000000000000000000001p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x2.27a54f0197ff118eaf65553d7a5ap-13448L : inexact-ok
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468accp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468accp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468accp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468adp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468adp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468adp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bcp+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bcp+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bcp+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bdep+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bdep+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bdep+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde04p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde04p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde04p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf13579ap+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1357p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x1.000000000000000000000000008p+0L -0x2.468acf13579bde02468acf1358p+124L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow 1e4932 0.75
+= pow downward flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow upward flt-32 0xf.fffffp+124f 0xcp-4f : 0x1p+96f : inexact-ok
+= pow downward dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffep+92 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffe8p+92 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffep+92 : inexact-ok
+= pow upward dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffe8p+92 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa5f8p+92L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa6p+92L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa5f8p+92L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa6p+92L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa8p+92L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0x1p+768 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffff98p+764L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffff98p+764L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffffap+764L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffffffffffffcp+764L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffffffffffffcp+764L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-96-intel 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7p+12284L : inexact-ok
+= pow tonearest ldbl-96-intel 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d8p+12284L : inexact-ok
+= pow towardzero ldbl-96-intel 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7p+12284L : inexact-ok
+= pow upward ldbl-96-intel 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d8p+12284L : inexact-ok
+= pow downward ldbl-96-m68k 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7p+12284L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d8p+12284L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7p+12284L : inexact-ok
+= pow upward ldbl-96-m68k 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d8p+12284L : inexact-ok
+= pow downward ldbl-128 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7f974f16449c28p+12284L : inexact-ok
+= pow tonearest ldbl-128 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7f974f16449c28p+12284L : inexact-ok
+= pow towardzero ldbl-128 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7f974f16449c28p+12284L : inexact-ok
+= pow upward ldbl-128 0xd.72cb2a95c7ef6cdp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7f974f16449c3p+12284L : inexact-ok
+= pow downward ldbl-96-intel 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7p+12284L : inexact-ok
+= pow tonearest ldbl-96-intel 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7p+12284L : inexact-ok
+= pow towardzero ldbl-96-intel 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7p+12284L : inexact-ok
+= pow upward ldbl-96-intel 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d8p+12284L : inexact-ok
+= pow downward ldbl-96-m68k 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7p+12284L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7p+12284L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d7p+12284L : inexact-ok
+= pow upward ldbl-96-m68k 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d8p+12284L : inexact-ok
+= pow downward ldbl-128 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d730ef2400ce76p+12284L : inexact-ok
+= pow tonearest ldbl-128 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d730ef2400ce768p+12284L : inexact-ok
+= pow towardzero ldbl-128 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d730ef2400ce76p+12284L : inexact-ok
+= pow upward ldbl-128 0xd.72cb2a95c7ef6ccp+16380L 0xcp-4L : 0xe.0b9d894b9a782d730ef2400ce768p+12284L : inexact-ok
+= pow downward ldbl-128 0xd.72cb2a95c7ef6cce81bf1e825ba8p+16380L 0xcp-4L : 0xe.0b9d894b9a782d7e6be49bb6cdb8p+12284L : inexact-ok
+= pow tonearest ldbl-128 0xd.72cb2a95c7ef6cce81bf1e825ba8p+16380L 0xcp-4L : 0xe.0b9d894b9a782d7e6be49bb6cdb8p+12284L : inexact-ok
+= pow towardzero ldbl-128 0xd.72cb2a95c7ef6cce81bf1e825ba8p+16380L 0xcp-4L : 0xe.0b9d894b9a782d7e6be49bb6cdb8p+12284L : inexact-ok
+= pow upward ldbl-128 0xd.72cb2a95c7ef6cce81bf1e825ba8p+16380L 0xcp-4L : 0xe.0b9d894b9a782d7e6be49bb6cdcp+12284L : inexact-ok
+= pow downward ldbl-128 0xd.72cb2a95c7ef6cce81bf1e825bap+16380L 0xcp-4L : 0xe.0b9d894b9a782d7e6be49bb6cdbp+12284L : inexact-ok
+= pow tonearest ldbl-128 0xd.72cb2a95c7ef6cce81bf1e825bap+16380L 0xcp-4L : 0xe.0b9d894b9a782d7e6be49bb6cdb8p+12284L : inexact-ok
+= pow towardzero ldbl-128 0xd.72cb2a95c7ef6cce81bf1e825bap+16380L 0xcp-4L : 0xe.0b9d894b9a782d7e6be49bb6cdbp+12284L : inexact-ok
+= pow upward ldbl-128 0xd.72cb2a95c7ef6cce81bf1e825bap+16380L 0xcp-4L : 0xe.0b9d894b9a782d7e6be49bb6cdb8p+12284L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcep+764L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffce8p+764L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcep+764L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffce8p+764L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffdp+764L : inexact-ok
+pow 1e4928 0.75
+= pow downward flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow upward flt-32 0xf.fffffp+124f 0xcp-4f : 0x1p+96f : inexact-ok
+= pow downward dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffep+92 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffe8p+92 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffep+92 : inexact-ok
+= pow upward dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffe8p+92 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa5f8p+92L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa6p+92L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa5f8p+92L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa6p+92L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa8p+92L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0x1p+768 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffff98p+764L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffff98p+764L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffffap+764L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffffffffffffcp+764L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffffffffffffcp+764L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-96-intel 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736a8p+12276L : inexact-ok
+= pow tonearest ldbl-96-intel 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736acp+12276L : inexact-ok
+= pow towardzero ldbl-96-intel 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736a8p+12276L : inexact-ok
+= pow upward ldbl-96-intel 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736acp+12276L : inexact-ok
+= pow downward ldbl-96-m68k 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736a8p+12276L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736acp+12276L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736a8p+12276L : inexact-ok
+= pow upward ldbl-96-m68k 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736acp+12276L : inexact-ok
+= pow downward ldbl-128 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736aa1652034cbe46p+12276L : inexact-ok
+= pow tonearest ldbl-128 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736aa1652034cbe48p+12276L : inexact-ok
+= pow towardzero ldbl-128 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736aa1652034cbe46p+12276L : inexact-ok
+= pow upward ldbl-128 0x5.822b137da851af4p+16368L 0xcp-4L : 0x3.987a3fd1d18736aa1652034cbe48p+12276L : inexact-ok
+= pow downward ldbl-96-intel 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a4p+12276L : inexact-ok
+= pow tonearest ldbl-96-intel 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a8p+12276L : inexact-ok
+= pow towardzero ldbl-96-intel 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a4p+12276L : inexact-ok
+= pow upward ldbl-96-intel 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a8p+12276L : inexact-ok
+= pow downward ldbl-96-m68k 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a4p+12276L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a8p+12276L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a4p+12276L : inexact-ok
+= pow upward ldbl-96-m68k 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a8p+12276L : inexact-ok
+= pow downward ldbl-128 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a62bb5005b55c8p+12276L : inexact-ok
+= pow tonearest ldbl-128 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a62bb5005b55cap+12276L : inexact-ok
+= pow towardzero ldbl-128 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a62bb5005b55c8p+12276L : inexact-ok
+= pow upward ldbl-128 0x5.822b137da851af38p+16368L 0xcp-4L : 0x3.987a3fd1d18736a62bb5005b55cap+12276L : inexact-ok
+= pow downward ldbl-128 0x5.822b137da851af3ac7c7ef01602p+16368L 0xcp-4L : 0x3.987a3fd1d18736a7882a23c44d3ep+12276L : inexact-ok
+= pow tonearest ldbl-128 0x5.822b137da851af3ac7c7ef01602p+16368L 0xcp-4L : 0x3.987a3fd1d18736a7882a23c44d4p+12276L : inexact-ok
+= pow towardzero ldbl-128 0x5.822b137da851af3ac7c7ef01602p+16368L 0xcp-4L : 0x3.987a3fd1d18736a7882a23c44d3ep+12276L : inexact-ok
+= pow upward ldbl-128 0x5.822b137da851af3ac7c7ef01602p+16368L 0xcp-4L : 0x3.987a3fd1d18736a7882a23c44d4p+12276L : inexact-ok
+= pow downward ldbl-128 0x5.822b137da851af3ac7c7ef01601cp+16368L 0xcp-4L : 0x3.987a3fd1d18736a7882a23c44d3cp+12276L : inexact-ok
+= pow tonearest ldbl-128 0x5.822b137da851af3ac7c7ef01601cp+16368L 0xcp-4L : 0x3.987a3fd1d18736a7882a23c44d3ep+12276L : inexact-ok
+= pow towardzero ldbl-128 0x5.822b137da851af3ac7c7ef01601cp+16368L 0xcp-4L : 0x3.987a3fd1d18736a7882a23c44d3cp+12276L : inexact-ok
+= pow upward ldbl-128 0x5.822b137da851af3ac7c7ef01601cp+16368L 0xcp-4L : 0x3.987a3fd1d18736a7882a23c44d3ep+12276L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcep+764L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffce8p+764L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcep+764L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffce8p+764L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffdp+764L : inexact-ok
+pow 1e4924 0.75
+= pow downward flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow upward flt-32 0xf.fffffp+124f 0xcp-4f : 0x1p+96f : inexact-ok
+= pow downward dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffep+92 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffe8p+92 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffep+92 : inexact-ok
+= pow upward dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffe8p+92 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa5f8p+92L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa6p+92L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa5f8p+92L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa6p+92L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa8p+92L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0x1p+768 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffff98p+764L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffff98p+764L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffffap+764L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffffffffffffcp+764L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffffffffffffcp+764L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-96-intel 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f67p+12264L : inexact-ok
+= pow tonearest ldbl-96-intel 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f67p+12264L : inexact-ok
+= pow towardzero ldbl-96-intel 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f67p+12264L : inexact-ok
+= pow upward ldbl-96-intel 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f68p+12264L : inexact-ok
+= pow downward ldbl-96-m68k 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f67p+12264L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f67p+12264L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f67p+12264L : inexact-ok
+= pow upward ldbl-96-m68k 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f68p+12264L : inexact-ok
+= pow downward ldbl-128 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f67174a6137ed358p+12264L : inexact-ok
+= pow tonearest ldbl-128 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f67174a6137ed36p+12264L : inexact-ok
+= pow towardzero ldbl-128 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f67174a6137ed358p+12264L : inexact-ok
+= pow upward ldbl-128 0x2.419adc280021754p+16356L 0xcp-4L : 0xe.ba46a73274d9f67174a6137ed36p+12264L : inexact-ok
+= pow downward ldbl-96-intel 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f65p+12264L : inexact-ok
+= pow tonearest ldbl-96-intel 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f66p+12264L : inexact-ok
+= pow towardzero ldbl-96-intel 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f65p+12264L : inexact-ok
+= pow upward ldbl-96-intel 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f66p+12264L : inexact-ok
+= pow downward ldbl-96-m68k 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f65p+12264L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f66p+12264L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f65p+12264L : inexact-ok
+= pow upward ldbl-96-m68k 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f66p+12264L : inexact-ok
+= pow downward ldbl-128 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f65ddf9504c7c8e8p+12264L : inexact-ok
+= pow tonearest ldbl-128 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f65ddf9504c7c8e8p+12264L : inexact-ok
+= pow towardzero ldbl-128 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f65ddf9504c7c8e8p+12264L : inexact-ok
+= pow upward ldbl-128 0x2.419adc280021753cp+16356L 0xcp-4L : 0xe.ba46a73274d9f65ddf9504c7c8fp+12264L : inexact-ok
+= pow downward ldbl-128 0x2.419adc280021753d599cd97ff2f2p+16356L 0xcp-4L : 0xe.ba46a73274d9f6647b8de25f71a8p+12264L : inexact-ok
+= pow tonearest ldbl-128 0x2.419adc280021753d599cd97ff2f2p+16356L 0xcp-4L : 0xe.ba46a73274d9f6647b8de25f71a8p+12264L : inexact-ok
+= pow towardzero ldbl-128 0x2.419adc280021753d599cd97ff2f2p+16356L 0xcp-4L : 0xe.ba46a73274d9f6647b8de25f71a8p+12264L : inexact-ok
+= pow upward ldbl-128 0x2.419adc280021753d599cd97ff2f2p+16356L 0xcp-4L : 0xe.ba46a73274d9f6647b8de25f71bp+12264L : inexact-ok
+= pow downward ldbl-128 0x2.419adc280021753d599cd97ff2fp+16356L 0xcp-4L : 0xe.ba46a73274d9f6647b8de25f71ap+12264L : inexact-ok
+= pow tonearest ldbl-128 0x2.419adc280021753d599cd97ff2fp+16356L 0xcp-4L : 0xe.ba46a73274d9f6647b8de25f71ap+12264L : inexact-ok
+= pow towardzero ldbl-128 0x2.419adc280021753d599cd97ff2fp+16356L 0xcp-4L : 0xe.ba46a73274d9f6647b8de25f71ap+12264L : inexact-ok
+= pow upward ldbl-128 0x2.419adc280021753d599cd97ff2fp+16356L 0xcp-4L : 0xe.ba46a73274d9f6647b8de25f71a8p+12264L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcep+764L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffce8p+764L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcep+764L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffce8p+764L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffdp+764L : inexact-ok
+pow 1e4920 0.75
+= pow downward flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp+124f 0xcp-4f : 0xf.fffffp+92f : inexact-ok
+= pow upward flt-32 0xf.fffffp+124f 0xcp-4f : 0x1p+96f : inexact-ok
+= pow downward dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffep+92 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffe8p+92 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffep+92 : inexact-ok
+= pow upward dbl-64 0xf.fffffp+124 0xcp-4 : 0xf.fffff3fffffe8p+92 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7ffp+92L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe8p+92L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa5f8p+92L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa6p+92L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa5f8p+92L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa6p+92L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa4p+92L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L 0xcp-4L : 0xf.fffff3fffffe7fffff5fffffa8p+92L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0xf.ffffffffffff8p+764 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p+1020 0xcp-4 : 0x1p+768 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffp+764L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffff98p+764L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffff98p+764L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9fffffffffffffap+764L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffffffffffffcp+764L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffff9ffffffffffffcp+764L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0xcp-4L : 0xf.ffffffffffffap+764L : inexact-ok
+= pow downward ldbl-96-intel 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a578p+12256L : inexact-ok
+= pow tonearest ldbl-96-intel 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a57cp+12256L : inexact-ok
+= pow towardzero ldbl-96-intel 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a578p+12256L : inexact-ok
+= pow upward ldbl-96-intel 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a57cp+12256L : inexact-ok
+= pow downward ldbl-96-m68k 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a578p+12256L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a57cp+12256L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a578p+12256L : inexact-ok
+= pow upward ldbl-96-m68k 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a57cp+12256L : inexact-ok
+= pow downward ldbl-128 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a57be7c8faeb1b1p+12256L : inexact-ok
+= pow tonearest ldbl-128 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a57be7c8faeb1b1p+12256L : inexact-ok
+= pow towardzero ldbl-128 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a57be7c8faeb1b1p+12256L : inexact-ok
+= pow upward ldbl-128 0xe.c96440ebeed5893p+16340L 0xcp-4L : 0x3.c530cea47806a57be7c8faeb1b12p+12256L : inexact-ok
+= pow downward ldbl-96-intel 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a578p+12256L : inexact-ok
+= pow tonearest ldbl-96-intel 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a578p+12256L : inexact-ok
+= pow towardzero ldbl-96-intel 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a578p+12256L : inexact-ok
+= pow upward ldbl-96-intel 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a57cp+12256L : inexact-ok
+= pow downward ldbl-96-m68k 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a578p+12256L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a578p+12256L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a578p+12256L : inexact-ok
+= pow upward ldbl-96-m68k 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a57cp+12256L : inexact-ok
+= pow downward ldbl-128 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a578d87e509e816cp+12256L : inexact-ok
+= pow tonearest ldbl-128 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a578d87e509e816ep+12256L : inexact-ok
+= pow towardzero ldbl-128 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a578d87e509e816cp+12256L : inexact-ok
+= pow upward ldbl-128 0xe.c96440ebeed5892p+16340L 0xcp-4L : 0x3.c530cea47806a578d87e509e816ep+12256L : inexact-ok
+= pow downward ldbl-128 0xe.c96440ebeed58925ede59e838e9p+16340L 0xcp-4L : 0x3.c530cea47806a579fac410fdcf44p+12256L : inexact-ok
+= pow tonearest ldbl-128 0xe.c96440ebeed58925ede59e838e9p+16340L 0xcp-4L : 0x3.c530cea47806a579fac410fdcf44p+12256L : inexact-ok
+= pow towardzero ldbl-128 0xe.c96440ebeed58925ede59e838e9p+16340L 0xcp-4L : 0x3.c530cea47806a579fac410fdcf44p+12256L : inexact-ok
+= pow upward ldbl-128 0xe.c96440ebeed58925ede59e838e9p+16340L 0xcp-4L : 0x3.c530cea47806a579fac410fdcf46p+12256L : inexact-ok
+= pow downward ldbl-128 0xe.c96440ebeed58925ede59e838e88p+16340L 0xcp-4L : 0x3.c530cea47806a579fac410fdcf42p+12256L : inexact-ok
+= pow tonearest ldbl-128 0xe.c96440ebeed58925ede59e838e88p+16340L 0xcp-4L : 0x3.c530cea47806a579fac410fdcf44p+12256L : inexact-ok
+= pow towardzero ldbl-128 0xe.c96440ebeed58925ede59e838e88p+16340L 0xcp-4L : 0x3.c530cea47806a579fac410fdcf42p+12256L : inexact-ok
+= pow upward ldbl-128 0xe.c96440ebeed58925ede59e838e88p+16340L 0xcp-4L : 0x3.c530cea47806a579fac410fdcf44p+12256L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcep+764L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffce8p+764L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcep+764L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffce8p+764L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffcffffffffffffcp+764L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0xcp-4L : 0xf.ffffffffffffdp+764L : inexact-ok
+pow 10.0 4932.0
+= pow downward flt-32 0xap+0f 0x1.344p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xap+0f 0x1.344p+12f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xap+0f 0x1.344p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xap+0f 0x1.344p+12f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xap+0 0x1.344p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xap+0 0x1.344p+12 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xap+0 0x1.344p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xap+0 0x1.344p+12 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6ccp+16380L : inexact-ok
+= pow tonearest ldbl-96-intel 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6cdp+16380L : inexact-ok
+= pow towardzero ldbl-96-intel 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6ccp+16380L : inexact-ok
+= pow upward ldbl-96-intel 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6cdp+16380L : inexact-ok
+= pow downward ldbl-96-m68k 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6ccp+16380L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6cdp+16380L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6ccp+16380L : inexact-ok
+= pow upward ldbl-96-m68k 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6cdp+16380L : inexact-ok
+= pow downward ldbl-128 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6cce81bf1e825bap+16380L : inexact-ok
+= pow tonearest ldbl-128 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6cce81bf1e825ba8p+16380L : inexact-ok
+= pow towardzero ldbl-128 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6cce81bf1e825bap+16380L : inexact-ok
+= pow upward ldbl-128 0xap+0L 0x1.344p+12L : 0xd.72cb2a95c7ef6cce81bf1e825ba8p+16380L : inexact-ok
+= pow downward ldbl-128ibm 0xap+0L 0x1.344p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xap+0L 0x1.344p+12L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L 0x1.344p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xap+0L 0x1.344p+12L : plus_infty : inexact-ok overflow errno-erange
+pow 10.0 4931.0
+= pow downward flt-32 0xap+0f 0x1.343p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xap+0f 0x1.343p+12f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xap+0f 0x1.343p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xap+0f 0x1.343p+12f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xap+0 0x1.343p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xap+0 0x1.343p+12 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xap+0 0x1.343p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xap+0 0x1.343p+12 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xap+0L 0x1.343p+12L : 0x1.584784422d97f146p+16380L : inexact-ok
+= pow tonearest ldbl-96-intel 0xap+0L 0x1.343p+12L : 0x1.584784422d97f148p+16380L : inexact-ok
+= pow towardzero ldbl-96-intel 0xap+0L 0x1.343p+12L : 0x1.584784422d97f146p+16380L : inexact-ok
+= pow upward ldbl-96-intel 0xap+0L 0x1.343p+12L : 0x1.584784422d97f148p+16380L : inexact-ok
+= pow downward ldbl-96-m68k 0xap+0L 0x1.343p+12L : 0x1.584784422d97f146p+16380L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xap+0L 0x1.343p+12L : 0x1.584784422d97f148p+16380L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xap+0L 0x1.343p+12L : 0x1.584784422d97f146p+16380L : inexact-ok
+= pow upward ldbl-96-m68k 0xap+0L 0x1.343p+12L : 0x1.584784422d97f148p+16380L : inexact-ok
+= pow downward ldbl-128 0xap+0L 0x1.343p+12L : 0x1.584784422d97f147d9c64fd9d5f7p+16380L : inexact-ok
+= pow tonearest ldbl-128 0xap+0L 0x1.343p+12L : 0x1.584784422d97f147d9c64fd9d5f7p+16380L : inexact-ok
+= pow towardzero ldbl-128 0xap+0L 0x1.343p+12L : 0x1.584784422d97f147d9c64fd9d5f7p+16380L : inexact-ok
+= pow upward ldbl-128 0xap+0L 0x1.343p+12L : 0x1.584784422d97f147d9c64fd9d5f8p+16380L : inexact-ok
+= pow downward ldbl-128ibm 0xap+0L 0x1.343p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xap+0L 0x1.343p+12L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L 0x1.343p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xap+0L 0x1.343p+12L : plus_infty : inexact-ok overflow errno-erange
+pow 10.0 4930.0
+= pow downward flt-32 0xap+0f 0x1.342p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xap+0f 0x1.342p+12f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xap+0f 0x1.342p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xap+0f 0x1.342p+12f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xap+0 0x1.342p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xap+0 0x1.342p+12 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xap+0 0x1.342p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xap+0 0x1.342p+12 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe87p+16376L : inexact-ok
+= pow tonearest ldbl-96-intel 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe874p+16376L : inexact-ok
+= pow towardzero ldbl-96-intel 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe87p+16376L : inexact-ok
+= pow upward ldbl-96-intel 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe874p+16376L : inexact-ok
+= pow downward ldbl-96-m68k 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe87p+16376L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe874p+16376L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe87p+16376L : inexact-ok
+= pow upward ldbl-96-m68k 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe874p+16376L : inexact-ok
+= pow downward ldbl-128 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe872f60a195c898ap+16376L : inexact-ok
+= pow tonearest ldbl-128 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe872f60a195c898cp+16376L : inexact-ok
+= pow towardzero ldbl-128 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe872f60a195c898ap+16376L : inexact-ok
+= pow upward ldbl-128 0xap+0L 0x1.342p+12L : 0x2.26d8d39d15bfe872f60a195c898cp+16376L : inexact-ok
+= pow downward ldbl-128ibm 0xap+0L 0x1.342p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xap+0L 0x1.342p+12L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L 0x1.342p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xap+0L 0x1.342p+12L : plus_infty : inexact-ok overflow errno-erange
+pow 10.0 4929.0
+= pow downward flt-32 0xap+0f 0x1.341p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0xap+0f 0x1.341p+12f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0xap+0f 0x1.341p+12f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0xap+0f 0x1.341p+12f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0xap+0 0x1.341p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0xap+0 0x1.341p+12 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0xap+0 0x1.341p+12 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0xap+0 0x1.341p+12 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d84p+16372L : inexact-ok
+= pow tonearest ldbl-96-intel 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d84p+16372L : inexact-ok
+= pow towardzero ldbl-96-intel 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d84p+16372L : inexact-ok
+= pow upward ldbl-96-intel 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d88p+16372L : inexact-ok
+= pow downward ldbl-96-m68k 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d84p+16372L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d84p+16372L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d84p+16372L : inexact-ok
+= pow upward ldbl-96-m68k 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d88p+16372L : inexact-ok
+= pow downward ldbl-128 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d84bcdcf560dc12p+16372L : inexact-ok
+= pow tonearest ldbl-128 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d84bcdcf560dc12p+16372L : inexact-ok
+= pow towardzero ldbl-128 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d84bcdcf560dc12p+16372L : inexact-ok
+= pow upward ldbl-128 0xap+0L 0x1.341p+12L : 0x3.715aec2e89330d84bcdcf560dc14p+16372L : inexact-ok
+= pow downward ldbl-128ibm 0xap+0L 0x1.341p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0xap+0L 0x1.341p+12L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L 0x1.341p+12L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0xap+0L 0x1.341p+12L : plus_infty : inexact-ok overflow errno-erange
+pow 10.0 -4931.0
+= pow downward flt-32 0xap+0f -0x1.343p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xap+0f -0x1.343p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xap+0f -0x1.343p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xap+0f -0x1.343p+12f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xap+0 -0x1.343p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xap+0 -0x1.343p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xap+0 -0x1.343p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xap+0 -0x1.343p+12 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7bp-16384L : inexact-ok
+= pow tonearest ldbl-96-intel 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7b1p-16384L : inexact-ok
+= pow towardzero ldbl-96-intel 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7bp-16384L : inexact-ok
+= pow upward ldbl-96-intel 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7b1p-16384L : inexact-ok
+= pow downward ldbl-96-m68k 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7bp-16384L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7b1p-16384L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7bp-16384L : inexact-ok
+= pow upward ldbl-96-m68k 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7b1p-16384L : inexact-ok
+= pow downward ldbl-128 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7b0e32e439358088p-16384L : inexact-ok
+= pow tonearest ldbl-128 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7b0e32e43935809p-16384L : inexact-ok
+= pow towardzero ldbl-128 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7b0e32e439358088p-16384L : inexact-ok
+= pow upward ldbl-128 0xap+0L -0x1.343p+12L : 0xb.e5b66ecbce0b7b0e32e43935809p-16384L : inexact-ok
+= pow downward ldbl-128ibm 0xap+0L -0x1.343p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xap+0L -0x1.343p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L -0x1.343p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xap+0L -0x1.343p+12L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow 10.0 -4930.0
+= pow downward flt-32 0xap+0f -0x1.342p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xap+0f -0x1.342p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xap+0f -0x1.342p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xap+0f -0x1.342p+12f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xap+0 -0x1.342p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xap+0 -0x1.342p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xap+0 -0x1.342p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xap+0 -0x1.342p+12 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72ce8p-16380L : inexact-ok
+= pow tonearest ldbl-96-intel 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72ce8p-16380L : inexact-ok
+= pow towardzero ldbl-96-intel 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72ce8p-16380L : inexact-ok
+= pow upward ldbl-96-intel 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72cfp-16380L : inexact-ok
+= pow downward ldbl-96-m68k 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72ce8p-16380L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72ce8p-16380L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72ce8p-16380L : inexact-ok
+= pow upward ldbl-96-m68k 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72cfp-16380L : inexact-ok
+= pow downward ldbl-128 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72ce8dfcea3c17058p-16380L : inexact-ok
+= pow tonearest ldbl-128 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72ce8dfcea3c17058p-16380L : inexact-ok
+= pow towardzero ldbl-128 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72ce8dfcea3c17058p-16380L : inexact-ok
+= pow upward ldbl-128 0xap+0L -0x1.342p+12L : 0x7.6f92053f60c72ce8dfcea3c1705cp-16380L : inexact-ok
+= pow downward ldbl-128ibm 0xap+0L -0x1.342p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xap+0L -0x1.342p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L -0x1.342p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xap+0L -0x1.342p+12L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow 10.0 -4929.0
+= pow downward flt-32 0xap+0f -0x1.341p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0xap+0f -0x1.341p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0xap+0f -0x1.341p+12f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0xap+0f -0x1.341p+12f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0xap+0 -0x1.341p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0xap+0 -0x1.341p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0xap+0 -0x1.341p+12 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0xap+0 -0x1.341p+12 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c1p-16376L : inexact-ok
+= pow tonearest ldbl-96-intel 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c1p-16376L : inexact-ok
+= pow towardzero ldbl-96-intel 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c1p-16376L : inexact-ok
+= pow upward ldbl-96-intel 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c18p-16376L : inexact-ok
+= pow downward ldbl-96-m68k 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c1p-16376L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c1p-16376L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c1p-16376L : inexact-ok
+= pow upward ldbl-96-m68k 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c18p-16376L : inexact-ok
+= pow downward ldbl-128 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c118be12658e634p-16376L : inexact-ok
+= pow tonearest ldbl-128 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c118be12658e638p-16376L : inexact-ok
+= pow towardzero ldbl-128 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c118be12658e634p-16376L : inexact-ok
+= pow upward ldbl-128 0xap+0L -0x1.341p+12L : 0x4.a5bb43479c7c7c118be12658e638p-16376L : inexact-ok
+= pow downward ldbl-128ibm 0xap+0L -0x1.341p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0xap+0L -0x1.341p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0xap+0L -0x1.341p+12L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0xap+0L -0x1.341p+12L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow 1e27 182.0
+= pow downward flt-32 0x3.3b2e4p+88f 0xb.6p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0x3.3b2e4p+88f 0xb.6p+4f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0x3.3b2e4p+88f 0xb.6p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0x3.3b2e4p+88f 0xb.6p+4f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x3.3b2e4p+88 0xb.6p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x3.3b2e4p+88 0xb.6p+4 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x3.3b2e4p+88 0xb.6p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x3.3b2e4p+88 0xb.6p+4 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b7p+16320L : inexact-ok
+= pow tonearest ldbl-96-intel 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b7p+16320L : inexact-ok
+= pow towardzero ldbl-96-intel 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b7p+16320L : inexact-ok
+= pow upward ldbl-96-intel 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b8p+16320L : inexact-ok
+= pow downward ldbl-96-m68k 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b7p+16320L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b7p+16320L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b7p+16320L : inexact-ok
+= pow upward ldbl-96-m68k 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b8p+16320L : inexact-ok
+= pow downward ldbl-128 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b733ee7fcf0356p+16320L : inexact-ok
+= pow tonearest ldbl-128 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b733ee7fcf03568p+16320L : inexact-ok
+= pow towardzero ldbl-128 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b733ee7fcf0356p+16320L : inexact-ok
+= pow upward ldbl-128 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.8150d73a5bad7b733ee7fcf03568p+16320L : inexact-ok
+= pow downward ldbl-128ibm 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x3.3b2e4p+88L 0xb.6p+4L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x3.3b2e4p+88L 0xb.6p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x3.3b2e4p+88L 0xb.6p+4L : plus_infty : inexact-ok overflow errno-erange
+= pow downward flt-32 0x3.3b2e3cp+88f 0xb.6p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow tonearest flt-32 0x3.3b2e3cp+88f 0xb.6p+4f : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero flt-32 0x3.3b2e3cp+88f 0xb.6p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= pow upward flt-32 0x3.3b2e3cp+88f 0xb.6p+4f : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x3.3b2e3cp+88 0xb.6p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x3.3b2e3cp+88 0xb.6p+4 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x3.3b2e3cp+88 0xb.6p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x3.3b2e3cp+88 0xb.6p+4 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f1fp+16320L : inexact-ok
+= pow tonearest ldbl-96-intel 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f2p+16320L : inexact-ok
+= pow towardzero ldbl-96-intel 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f1fp+16320L : inexact-ok
+= pow upward ldbl-96-intel 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f2p+16320L : inexact-ok
+= pow downward ldbl-96-m68k 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f1fp+16320L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f2p+16320L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f1fp+16320L : inexact-ok
+= pow upward ldbl-96-m68k 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f2p+16320L : inexact-ok
+= pow downward ldbl-128 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f1fe3091f957b8p+16320L : inexact-ok
+= pow tonearest ldbl-128 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f1fe3091f957b808p+16320L : inexact-ok
+= pow towardzero ldbl-128 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f1fe3091f957b8p+16320L : inexact-ok
+= pow upward ldbl-128 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.814331dd58d7f1fe3091f957b808p+16320L : inexact-ok
+= pow downward ldbl-128ibm 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x3.3b2e3cp+88L 0xb.6p+4L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x3.3b2e3cp+88L 0xb.6p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x3.3b2e3cp+88L 0xb.6p+4L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x3.3b2e3c9fd0804p+88 0xb.6p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x3.3b2e3c9fd0804p+88 0xb.6p+4 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x3.3b2e3c9fd0804p+88 0xb.6p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x3.3b2e3c9fd0804p+88 0xb.6p+4 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d49p+16320L : inexact-ok
+= pow tonearest ldbl-96-intel 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d4ap+16320L : inexact-ok
+= pow towardzero ldbl-96-intel 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d49p+16320L : inexact-ok
+= pow upward ldbl-96-intel 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d4ap+16320L : inexact-ok
+= pow downward ldbl-96-m68k 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d49p+16320L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d4ap+16320L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d49p+16320L : inexact-ok
+= pow upward ldbl-96-m68k 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d4ap+16320L : inexact-ok
+= pow downward ldbl-128 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d49f982ecfb4a598p+16320L : inexact-ok
+= pow tonearest ldbl-128 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d49f982ecfb4a5ap+16320L : inexact-ok
+= pow towardzero ldbl-128 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d49f982ecfb4a598p+16320L : inexact-ok
+= pow upward ldbl-128 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.814553110d16d49f982ecfb4a5ap+16320L : inexact-ok
+= pow downward ldbl-128ibm 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x3.3b2e3c9fd0804p+88L 0xb.6p+4L : plus_infty : inexact-ok overflow errno-erange
+= pow downward dbl-64 0x3.3b2e3c9fd0802p+88 0xb.6p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow tonearest dbl-64 0x3.3b2e3c9fd0802p+88 0xb.6p+4 : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero dbl-64 0x3.3b2e3c9fd0802p+88 0xb.6p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= pow upward dbl-64 0x3.3b2e3c9fd0802p+88 0xb.6p+4 : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9dp+16320L : inexact-ok
+= pow tonearest ldbl-96-intel 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9ep+16320L : inexact-ok
+= pow towardzero ldbl-96-intel 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9dp+16320L : inexact-ok
+= pow upward ldbl-96-intel 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9ep+16320L : inexact-ok
+= pow downward ldbl-96-m68k 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9dp+16320L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9ep+16320L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9dp+16320L : inexact-ok
+= pow upward ldbl-96-m68k 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9ep+16320L : inexact-ok
+= pow downward ldbl-128 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9d85e5c85e60ad8p+16320L : inexact-ok
+= pow tonearest ldbl-128 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9d85e5c85e60aep+16320L : inexact-ok
+= pow towardzero ldbl-128 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9d85e5c85e60ad8p+16320L : inexact-ok
+= pow upward ldbl-128 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.814553110ca9a9d85e5c85e60aep+16320L : inexact-ok
+= pow downward ldbl-128ibm 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x3.3b2e3c9fd0802p+88L 0xb.6p+4L : plus_infty : inexact-ok overflow errno-erange
+= pow downward ldbl-96-intel 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46bp+16320L : inexact-ok
+= pow tonearest ldbl-96-intel 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46cp+16320L : inexact-ok
+= pow towardzero ldbl-96-intel 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46bp+16320L : inexact-ok
+= pow upward ldbl-96-intel 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46cp+16320L : inexact-ok
+= pow downward ldbl-96-m68k 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46bp+16320L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46cp+16320L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46bp+16320L : inexact-ok
+= pow upward ldbl-96-m68k 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46cp+16320L : inexact-ok
+= pow downward ldbl-128 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46bcd557baf08b4p+16320L : inexact-ok
+= pow tonearest ldbl-128 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46bcd557baf08b4p+16320L : inexact-ok
+= pow towardzero ldbl-128 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46bcd557baf08b4p+16320L : inexact-ok
+= pow upward ldbl-128 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.814553110d0c46bcd557baf08b48p+16320L : inexact-ok
+= pow downward ldbl-128ibm 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow tonearest ldbl-128ibm 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : plus_infty : inexact-ok overflow errno-erange
+= pow towardzero ldbl-128ibm 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= pow upward ldbl-128ibm 0x3.3b2e3c9fd0803ce8p+88L 0xb.6p+4L : plus_infty : inexact-ok overflow errno-erange
+pow 1e27 -182.0
+= pow downward flt-32 0x3.3b2e4p+88f -0xb.6p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0x3.3b2e4p+88f -0xb.6p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0x3.3b2e4p+88f -0xb.6p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0x3.3b2e4p+88f -0xb.6p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x3.3b2e4p+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x3.3b2e4p+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x3.3b2e4p+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x3.3b2e4p+88 -0xb.6p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378cap-16324L : inexact-ok
+= pow tonearest ldbl-96-intel 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378ccp-16324L : inexact-ok
+= pow towardzero ldbl-96-intel 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378cap-16324L : inexact-ok
+= pow upward ldbl-96-intel 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378ccp-16324L : inexact-ok
+= pow downward ldbl-96-m68k 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378cap-16324L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378ccp-16324L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378cap-16324L : inexact-ok
+= pow upward ldbl-96-m68k 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378ccp-16324L : inexact-ok
+= pow downward ldbl-128 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378cb5c00d333fc55p-16324L : inexact-ok
+= pow tonearest ldbl-128 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378cb5c00d333fc56p-16324L : inexact-ok
+= pow towardzero ldbl-128 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378cb5c00d333fc55p-16324L : inexact-ok
+= pow upward ldbl-128 0x3.3b2e4p+88L -0xb.6p+4L : 0x1.082ba3a73f5378cb5c00d333fc56p-16324L : inexact-ok
+= pow downward ldbl-128ibm 0x3.3b2e4p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x3.3b2e4p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x3.3b2e4p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x3.3b2e4p+88L -0xb.6p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward flt-32 0x3.3b2e3cp+88f -0xb.6p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0x3.3b2e3cp+88f -0xb.6p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0x3.3b2e3cp+88f -0xb.6p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0x3.3b2e3cp+88f -0xb.6p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x3.3b2e3cp+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x3.3b2e3cp+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x3.3b2e3cp+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x3.3b2e3cp+88 -0xb.6p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b884p-16324L : inexact-ok
+= pow tonearest ldbl-96-intel 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b886p-16324L : inexact-ok
+= pow towardzero ldbl-96-intel 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b884p-16324L : inexact-ok
+= pow upward ldbl-96-intel 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b886p-16324L : inexact-ok
+= pow downward ldbl-96-m68k 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b884p-16324L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b886p-16324L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b884p-16324L : inexact-ok
+= pow upward ldbl-96-m68k 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b886p-16324L : inexact-ok
+= pow downward ldbl-128 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b8855031b7dcc992p-16324L : inexact-ok
+= pow tonearest ldbl-128 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b8855031b7dcc993p-16324L : inexact-ok
+= pow towardzero ldbl-128 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b8855031b7dcc992p-16324L : inexact-ok
+= pow upward ldbl-128 0x3.3b2e3cp+88L -0xb.6p+4L : 0x1.082c8c269868b8855031b7dcc993p-16324L : inexact-ok
+= pow downward ldbl-128ibm 0x3.3b2e3cp+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x3.3b2e3cp+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x3.3b2e3cp+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x3.3b2e3cp+88L -0xb.6p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x3.3b2e3c9fd0804p+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x3.3b2e3c9fd0804p+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x3.3b2e3c9fd0804p+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x3.3b2e3c9fd0804p+88 -0xb.6p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca757ep-16324L : inexact-ok
+= pow tonearest ldbl-96-intel 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca757ep-16324L : inexact-ok
+= pow towardzero ldbl-96-intel 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca757ep-16324L : inexact-ok
+= pow upward ldbl-96-intel 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca758p-16324L : inexact-ok
+= pow downward ldbl-96-m68k 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca757ep-16324L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca757ep-16324L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca757ep-16324L : inexact-ok
+= pow upward ldbl-96-m68k 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca758p-16324L : inexact-ok
+= pow downward ldbl-128 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca757ea9a3d6b23512p-16324L : inexact-ok
+= pow tonearest ldbl-128 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca757ea9a3d6b23513p-16324L : inexact-ok
+= pow towardzero ldbl-128 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca757ea9a3d6b23512p-16324L : inexact-ok
+= pow upward ldbl-128 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x1.082c67dd6dca757ea9a3d6b23513p-16324L : inexact-ok
+= pow downward ldbl-128ibm 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x3.3b2e3c9fd0804p+88L -0xb.6p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x3.3b2e3c9fd0802p+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x3.3b2e3c9fd0802p+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x3.3b2e3c9fd0802p+88 -0xb.6p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x3.3b2e3c9fd0802p+88 -0xb.6p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97ap-16324L : inexact-ok
+= pow tonearest ldbl-96-intel 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97cp-16324L : inexact-ok
+= pow towardzero ldbl-96-intel 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97ap-16324L : inexact-ok
+= pow upward ldbl-96-intel 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97cp-16324L : inexact-ok
+= pow downward ldbl-96-m68k 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97ap-16324L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97cp-16324L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97ap-16324L : inexact-ok
+= pow upward ldbl-96-m68k 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97cp-16324L : inexact-ok
+= pow downward ldbl-128 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97ba866a31b29bcp-16324L : inexact-ok
+= pow tonearest ldbl-128 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97ba866a31b29bdp-16324L : inexact-ok
+= pow towardzero ldbl-128 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97ba866a31b29bcp-16324L : inexact-ok
+= pow upward ldbl-128 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x1.082c67dd6dd1b97ba866a31b29bdp-16324L : inexact-ok
+= pow downward ldbl-128ibm 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x3.3b2e3c9fd0802p+88L -0xb.6p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb295p-16324L : inexact-ok
+= pow tonearest ldbl-96-intel 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb2952p-16324L : inexact-ok
+= pow towardzero ldbl-96-intel 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb295p-16324L : inexact-ok
+= pow upward ldbl-96-intel 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb2952p-16324L : inexact-ok
+= pow downward ldbl-96-m68k 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb295p-16324L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb2952p-16324L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb295p-16324L : inexact-ok
+= pow upward ldbl-96-m68k 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb2952p-16324L : inexact-ok
+= pow downward ldbl-128 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb29515f452bf31bbdp-16324L : inexact-ok
+= pow tonearest ldbl-128 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb29515f452bf31bbep-16324L : inexact-ok
+= pow towardzero ldbl-128 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb29515f452bf31bbdp-16324L : inexact-ok
+= pow upward ldbl-128 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x1.082c67dd6dcb29515f452bf31bbep-16324L : inexact-ok
+= pow downward ldbl-128ibm 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x3.3b2e3c9fd0803ce8p+88L -0xb.6p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow min_subnorm min_subnorm
+= pow downward flt-32 0x8p-152f 0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow tonearest flt-32 0x8p-152f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x8p-152f 0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow upward flt-32 0x8p-152f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x8p-152 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x8p-152 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x8p-152 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x8p-152 0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x8p-152L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-152L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-152L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-152L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-152L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-152L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-152L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-152L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x8p-152L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-152L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x8p-152L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x8p-152L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x8p-152L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x8p-152L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x8p-152L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x8p-152 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x8p-152 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x8p-152 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x8p-152 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-152L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-152L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-152L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-152L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x8p-152L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-152L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x8p-152L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x8p-152L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x8p-152L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x8p-152L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-152L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-152L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-152L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-152L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-152L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x8p-152L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-152L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x8p-152L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-152L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-152L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-152L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-152L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-152L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x8p-152L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-152L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x8p-152L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-152L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x8p-152L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-152L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x8p-152L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x4p-1076 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x4p-1076 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x4p-1076 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x4p-1076 0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x4p-1076L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x4p-1076L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-1076L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-1076L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-1076L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-1076L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-1076L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x4p-1076L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x4p-1076L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x4p-1076 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x4p-1076 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x4p-1076 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x4p-1076 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x4p-1076L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-1076L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-1076L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-1076L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-1076L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-1076L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x4p-1076L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x4p-1076L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-1076L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-1076L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-1076L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-1076L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-1076L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-1076L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-1076L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-1076L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-1076L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-1076L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-1076L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-1076L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-1076L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-1076L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-1076L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-1076L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-1076L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x8p-16448L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-16448L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-16448L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-16448L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-16448L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-16448L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x8p-16448L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-16448L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x8p-16448L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-16448L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-16448L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-16448L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x8p-16448L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-16448L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x8p-16448L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-16448L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-16448L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-16448L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x8p-16448L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-16448L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x8p-16448L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-16448L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-16448L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-16448L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-16448L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-16448L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x8p-16448L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-16448L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x8p-16448L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-16448L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x8p-16448L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-16448L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x8p-16448L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-16448L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-16448L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-16448L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-16448L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16448L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16448L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16448L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-16448L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-16448L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-16448L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-16448L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-16448L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16448L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16448L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16448L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-16448L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-16448L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-16448L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-16448L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-16448L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16448L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16448L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16448L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-16448L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-16448L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-16448L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-16448L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-16448L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16448L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16448L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16448L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-16448L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16448L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16448L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16448L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-16448L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16496L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16496L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16496L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-16496L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16496L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16496L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16496L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-16496L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16496L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16496L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16496L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-16496L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16496L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16496L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16496L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-16496L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16496L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16496L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16496L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x4p-16496L 0x4p-16496L : 0x1p+0L : inexact-ok
+pow min_subnorm -min_subnorm
+= pow downward flt-32 0x8p-152f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x8p-152f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x8p-152f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x8p-152f -0x8p-152f : 0x1.000002p+0f : inexact-ok
+= pow downward dbl-64 0x8p-152 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x8p-152 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x8p-152 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x8p-152 -0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-152L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-152L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x8p-152L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x8p-152L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x8p-152L -0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0x8p-152 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x8p-152 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x8p-152 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x8p-152 -0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-152L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-152L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x8p-152L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x8p-152L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x8p-152L -0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x8p-152L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-152L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-152L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-152L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-152L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-152L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-152L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-152L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-152L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x8p-152L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-152L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x8p-152L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-152L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-152L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-152L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-152L -0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-152L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x8p-152L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-152L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x8p-152L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-152L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x8p-152L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-152L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x8p-152L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward dbl-64 0x4p-1076 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x4p-1076 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x4p-1076 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x4p-1076 -0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x4p-1076L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-1076L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-1076L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x4p-1076L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x4p-1076L -0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0x4p-1076 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x4p-1076 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x4p-1076 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x4p-1076 -0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x4p-1076L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-1076L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-1076L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x4p-1076L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x4p-1076L -0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x4p-1076L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x4p-1076L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x4p-1076L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x4p-1076L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-1076L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-1076L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-1076L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-1076L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-1076L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-1076L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-1076L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-1076L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-1076L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-1076L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-1076L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-1076L -0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-1076L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-1076L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-1076L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-1076L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-1076L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-1076L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-1076L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-1076L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x8p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-16448L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-16448L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x8p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x8p-16448L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x8p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-16448L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-16448L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x8p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x8p-16448L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x8p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x8p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x8p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x8p-16448L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-16448L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x8p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x8p-16448L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x8p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x8p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x8p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x8p-16448L -0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x8p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x8p-16448L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x8p-16448L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x8p-16448L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x8p-16448L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x8p-16448L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-16448L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16448L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-16448L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-16448L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16448L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-16448L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-16448L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16448L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-16448L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x4p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x4p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x4p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x4p-16448L -0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16448L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-16448L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16448L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16448L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16448L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-16448L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16496L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16496L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16496L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-16496L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16496L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16496L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16496L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-16496L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16496L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16496L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16496L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-16496L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16496L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16496L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16496L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-16496L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x4p-16496L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x4p-16496L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x4p-16496L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x4p-16496L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+pow max min_subnorm
+= pow downward flt-32 0xf.fffffp+124f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp+124f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp+124f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0xf.fffffp+124f 0x8p-152f : 0x1.000002p+0f : inexact-ok
+= pow downward dbl-64 0xf.fffffp+124 0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp+124 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp+124 0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.fffffp+124 0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0xf.fffffp+124 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp+124 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp+124 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.fffffp+124 0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp+124L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L 0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p+1020 0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p+1020 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p+1020 0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p+1020 0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p+1020 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p+1020 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p+1020 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p+1020 0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L 0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L 0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+pow max -min_subnorm
+= pow downward flt-32 0xf.fffffp+124f -0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow tonearest flt-32 0xf.fffffp+124f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0xf.fffffp+124f -0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow upward flt-32 0xf.fffffp+124f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0xf.fffffp+124 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp+124 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp+124 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.fffffp+124 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp+124L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp+124L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0xf.fffffp+124 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.fffffp+124 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.fffffp+124 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.fffffp+124 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp+124L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.fffffp+124L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.fffffp+124L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.fffffp+124L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.fffffp+124L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffp+124L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffp+124L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffp+124L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffp+124L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffp+124L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffp+124L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffp+124L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffp+124L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffp+124L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffp+124L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffp+124L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffp+124L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p+1020 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p+1020 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p+1020 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p+1020 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0xf.ffffffffffff8p+1020 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.ffffffffffff8p+1020 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.ffffffffffff8p+1020 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.ffffffffffff8p+1020 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffff8p+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffff8p+1020L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.fffffffffffffffp+16380L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffp+16380L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.fffffffffffffffffffffffffff8p+16380L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L -0x4p-16496L : 0x1p+0L : inexact-ok
+pow 0.99 min_subnorm
+= pow downward flt-32 0xf.d70a4p-4f 0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow tonearest flt-32 0xf.d70a4p-4f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0xf.d70a4p-4f 0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow upward flt-32 0xf.d70a4p-4f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0xf.d70a4p-4 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a4p-4 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a4p-4 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.d70a4p-4 0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a4p-4 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a4p-4 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a4p-4 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.d70a4p-4 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a4p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a4p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a4p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a4p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a4p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a4p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a4p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a4p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a4p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a4p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a4p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a4p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0xf.d70a3p-4f 0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow tonearest flt-32 0xf.d70a3p-4f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0xf.d70a3p-4f 0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow upward flt-32 0xf.d70a3p-4f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0xf.d70a3p-4 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3p-4 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3p-4 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.d70a3p-4 0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a3p-4 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3p-4 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3p-4 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.d70a3p-4 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a3d70a3d78p-4 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3d70a3d78p-4 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3d70a3d78p-4 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.d70a3d70a3d78p-4 0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d78p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a3d70a3d78p-4 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3d70a3d78p-4 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3d70a3d78p-4 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.d70a3d70a3d78p-4 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d78p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d78p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d78p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a3d70a3d7p-4 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3d70a3d7p-4 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3d70a3d7p-4 0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.d70a3d70a3d7p-4 0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d7p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a3d70a3d7p-4 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3d70a3d7p-4 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3d70a3d7p-4 0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0xf.d70a3d70a3d7p-4 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d7p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d7p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d7p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a4p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L 0x4p-16496L : 0x1p+0L : inexact-ok
+pow 0.99 -min_subnorm
+= pow downward flt-32 0xf.d70a4p-4f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0xf.d70a4p-4f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0xf.d70a4p-4f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0xf.d70a4p-4f -0x8p-152f : 0x1.000002p+0f : inexact-ok
+= pow downward dbl-64 0xf.d70a4p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a4p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a4p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.d70a4p-4 -0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a4p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a4p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a4p-4L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a4p-4L -0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a4p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a4p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a4p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.d70a4p-4 -0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a4p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a4p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a4p-4L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a4p-4L -0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a4p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a4p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a4p-4L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a4p-4L -0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a4p-4L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a4p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a4p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a4p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a4p-4L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward flt-32 0xf.d70a3p-4f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0xf.d70a3p-4f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0xf.d70a3p-4f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0xf.d70a3p-4f -0x8p-152f : 0x1.000002p+0f : inexact-ok
+= pow downward dbl-64 0xf.d70a3p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.d70a3p-4 -0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3p-4L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3p-4L -0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a3p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.d70a3p-4 -0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3p-4L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3p-4L -0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3p-4L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3p-4L -0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3p-4L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3p-4L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a3d70a3d78p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3d70a3d78p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3d70a3d78p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.d70a3d70a3d78p-4 -0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d78p-4L -0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a3d70a3d78p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3d70a3d78p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3d70a3d78p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.d70a3d70a3d78p-4 -0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d78p-4L -0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d78p-4L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d78p-4L -0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d78p-4L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a3d70a3d7p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3d70a3d7p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3d70a3d7p-4 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.d70a3d70a3d7p-4 -0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d7p-4L -0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0xf.d70a3d70a3d7p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0xf.d70a3d70a3d7p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0xf.d70a3d70a3d7p-4 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0xf.d70a3d70a3d7p-4 -0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d7p-4L -0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d7p-4L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d7p-4L -0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d7p-4L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L -0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a4p-4L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L -0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3p-4L -0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0xf.d70a3d70a3d70a3p-4L -0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3p-4L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d78p-4L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3d7p-4L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a4p-4L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0xf.d70a3d70a3d70a3d70a3d70a3cp-4L -0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+pow 1.01 min_subnorm
+= pow downward flt-32 0x1.028f5ep+0f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1.028f5ep+0f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1.028f5ep+0f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1.028f5ep+0f 0x8p-152f : 0x1.000002p+0f : inexact-ok
+= pow downward dbl-64 0x1.028f5ep+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5ep+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5ep+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1.028f5ep+0 0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5ep+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5ep+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5ep+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5ep+0L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5ep+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5ep+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5ep+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1.028f5ep+0 0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5ep+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5ep+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5ep+0L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5ep+0L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5ep+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5ep+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5ep+0L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5ep+0L 0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5ep+0L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5ep+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5ep+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5ep+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5ep+0L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward flt-32 0x1.028f5cp+0f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow tonearest flt-32 0x1.028f5cp+0f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1.028f5cp+0f 0x8p-152f : 0x1p+0f : inexact-ok
+= pow upward flt-32 0x1.028f5cp+0f 0x8p-152f : 0x1.000002p+0f : inexact-ok
+= pow downward dbl-64 0x1.028f5cp+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5cp+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5cp+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1.028f5cp+0 0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5cp+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5cp+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5cp+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5cp+0L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5cp+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5cp+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5cp+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1.028f5cp+0 0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5cp+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5cp+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5cp+0L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5cp+0L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5cp+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5cp+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5cp+0L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5cp+0L 0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5cp+0L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5cp+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5cp+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5cp+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5cp+0L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5c28f5c29p+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5c28f5c29p+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5c28f5c29p+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1.028f5c28f5c29p+0 0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c29p+0L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5c28f5c29p+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5c28f5c29p+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5c28f5c29p+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1.028f5c28f5c29p+0 0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c29p+0L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c29p+0L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c29p+0L 0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c29p+0L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5c28f5c28p+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5c28f5c28p+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5c28f5c28p+0 0x8p-152 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1.028f5c28f5c28p+0 0x8p-152 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28p+0L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5c28f5c28p+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5c28f5c28p+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5c28f5c28p+0 0x4p-1076 : 0x1p+0 : inexact-ok
+= pow upward dbl-64 0x1.028f5c28f5c28p+0 0x4p-1076 : 0x1.0000000000001p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28p+0L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28p+0L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28p+0L 0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28p+0L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L 0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5ep+0L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L 0x4p-16448L : 0x1.0000000000000002p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5cp+0L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-152L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-152L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-152L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-1076L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-1076L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-1076L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x8p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-16448L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-16448L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-16496L : 0x1p+0L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L 0x4p-16496L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+pow 1.01 -min_subnorm
+= pow downward flt-32 0x1.028f5ep+0f -0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow tonearest flt-32 0x1.028f5ep+0f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1.028f5ep+0f -0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow upward flt-32 0x1.028f5ep+0f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1.028f5ep+0 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5ep+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5ep+0 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x1.028f5ep+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5ep+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5ep+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5ep+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5ep+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5ep+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5ep+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5ep+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5ep+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5ep+0 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5ep+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5ep+0 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x1.028f5ep+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5ep+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5ep+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5ep+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5ep+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5ep+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5ep+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5ep+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5ep+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5ep+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5ep+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5ep+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5ep+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward flt-32 0x1.028f5cp+0f -0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow tonearest flt-32 0x1.028f5cp+0f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow towardzero flt-32 0x1.028f5cp+0f -0x8p-152f : 0xf.fffffp-4f : inexact-ok
+= pow upward flt-32 0x1.028f5cp+0f -0x8p-152f : 0x1p+0f : inexact-ok
+= pow downward dbl-64 0x1.028f5cp+0 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5cp+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5cp+0 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x1.028f5cp+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5cp+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5cp+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5cp+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5cp+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5cp+0 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5cp+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5cp+0 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x1.028f5cp+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5cp+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5cp+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5cp+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5cp+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5cp+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5cp+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5cp+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5cp+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5cp+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5cp+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5cp+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5cp+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5c28f5c29p+0 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5c28f5c29p+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5c28f5c29p+0 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x1.028f5c28f5c29p+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c29p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c29p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c29p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c29p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c29p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c29p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c29p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c29p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5c28f5c29p+0 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5c28f5c29p+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5c28f5c29p+0 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x1.028f5c28f5c29p+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c29p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c29p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c29p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c29p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5c28f5c28p+0 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5c28f5c28p+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5c28f5c28p+0 -0x8p-152 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x1.028f5c28f5c28p+0 -0x8p-152 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward dbl-64 0x1.028f5c28f5c28p+0 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow tonearest dbl-64 0x1.028f5c28f5c28p+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.028f5c28f5c28p+0 -0x4p-1076 : 0xf.ffffffffffff8p-4 : inexact-ok
+= pow upward dbl-64 0x1.028f5c28f5c28p+0 -0x4p-1076 : 0x1p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5ep+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5ep+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5ep+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-intel 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x4p-16448L : 0xf.fffffffffffffffp-4L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.028f5c28f5c28f5cp+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5cp+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c29p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c28p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5c8p+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-152L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-152L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-1076L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= pow upward ldbl-128ibm 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-1076L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x8p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-16448L : 0x1p+0L : inexact-ok
+= pow downward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow tonearest ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= pow upward ldbl-128 0x1.028f5c28f5c28f5c28f5c28f5cp+0L -0x4p-16496L : 0x1p+0L : inexact-ok
+pow 2.0 -100000.0
+= pow downward flt-32 0x2p+0f -0x1.86ap+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow tonearest flt-32 0x2p+0f -0x1.86ap+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow towardzero flt-32 0x2p+0f -0x1.86ap+16f : 0x0p+0f : inexact-ok underflow errno-erange
+= pow upward flt-32 0x2p+0f -0x1.86ap+16f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= pow downward dbl-64 0x2p+0 -0x1.86ap+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow tonearest dbl-64 0x2p+0 -0x1.86ap+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow towardzero dbl-64 0x2p+0 -0x1.86ap+16 : 0x0p+0 : inexact-ok underflow errno-erange
+= pow upward dbl-64 0x2p+0 -0x1.86ap+16 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-intel 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-intel 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-intel 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-intel 0x2p+0L -0x1.86ap+16L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-96-m68k 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-96-m68k 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-96-m68k 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-96-m68k 0x2p+0L -0x1.86ap+16L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128 0x2p+0L -0x1.86ap+16L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= pow downward ldbl-128ibm 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow tonearest ldbl-128ibm 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow towardzero ldbl-128ibm 0x2p+0L -0x1.86ap+16L : 0x0p+0L : inexact-ok underflow errno-erange
+= pow upward ldbl-128ibm 0x2p+0L -0x1.86ap+16L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+pow 1.0625 1.125
+= pow downward flt-32 0x1.1p+0f 0x1.2p+0f : 0x1.1211aep+0f : inexact-ok
+= pow tonearest flt-32 0x1.1p+0f 0x1.2p+0f : 0x1.1211aep+0f : inexact-ok
+= pow towardzero flt-32 0x1.1p+0f 0x1.2p+0f : 0x1.1211aep+0f : inexact-ok
+= pow upward flt-32 0x1.1p+0f 0x1.2p+0f : 0x1.1211bp+0f : inexact-ok
+= pow downward dbl-64 0x1.1p+0 0x1.2p+0 : 0x1.1211ae603c374p+0 : inexact-ok
+= pow tonearest dbl-64 0x1.1p+0 0x1.2p+0 : 0x1.1211ae603c375p+0 : inexact-ok
+= pow towardzero dbl-64 0x1.1p+0 0x1.2p+0 : 0x1.1211ae603c374p+0 : inexact-ok
+= pow upward dbl-64 0x1.1p+0 0x1.2p+0 : 0x1.1211ae603c375p+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d4p+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d4p+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d4p+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d42p+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d4p+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d4p+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d4p+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d42p+0L : inexact-ok
+= pow downward ldbl-128 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d40159530102074p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d40159530102074p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d40159530102074p+0L : inexact-ok
+= pow upward ldbl-128 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d40159530102075p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d40159530102p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d4015953010208p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d40159530102p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.1p+0L 0x1.2p+0L : 0x1.1211ae603c374d4015953010208p+0L : inexact-ok
+pow 1.5 1.03125
+= pow downward flt-32 0x1.8p+0f 0x1.08p+0f : 0x1.84e582p+0f : inexact-ok
+= pow tonearest flt-32 0x1.8p+0f 0x1.08p+0f : 0x1.84e584p+0f : inexact-ok
+= pow towardzero flt-32 0x1.8p+0f 0x1.08p+0f : 0x1.84e582p+0f : inexact-ok
+= pow upward flt-32 0x1.8p+0f 0x1.08p+0f : 0x1.84e584p+0f : inexact-ok
+= pow downward dbl-64 0x1.8p+0 0x1.08p+0 : 0x1.84e58377727acp+0 : inexact-ok
+= pow tonearest dbl-64 0x1.8p+0 0x1.08p+0 : 0x1.84e58377727acp+0 : inexact-ok
+= pow towardzero dbl-64 0x1.8p+0 0x1.08p+0 : 0x1.84e58377727acp+0 : inexact-ok
+= pow upward dbl-64 0x1.8p+0 0x1.08p+0 : 0x1.84e58377727adp+0 : inexact-ok
+= pow downward ldbl-96-intel 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18cp+0L : inexact-ok
+= pow tonearest ldbl-96-intel 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18cp+0L : inexact-ok
+= pow towardzero ldbl-96-intel 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18cp+0L : inexact-ok
+= pow upward ldbl-96-intel 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18ep+0L : inexact-ok
+= pow downward ldbl-96-m68k 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18cp+0L : inexact-ok
+= pow tonearest ldbl-96-m68k 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18cp+0L : inexact-ok
+= pow towardzero ldbl-96-m68k 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18cp+0L : inexact-ok
+= pow upward ldbl-96-m68k 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18ep+0L : inexact-ok
+= pow downward ldbl-128 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18c4b0e8b54f091p+0L : inexact-ok
+= pow tonearest ldbl-128 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18c4b0e8b54f091p+0L : inexact-ok
+= pow towardzero ldbl-128 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18c4b0e8b54f091p+0L : inexact-ok
+= pow upward ldbl-128 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18c4b0e8b54f092p+0L : inexact-ok
+= pow downward ldbl-128ibm 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18c4b0e8b54f08p+0L : inexact-ok
+= pow tonearest ldbl-128ibm 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18c4b0e8b54f08p+0L : inexact-ok
+= pow towardzero ldbl-128ibm 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18c4b0e8b54f08p+0L : inexact-ok
+= pow upward ldbl-128ibm 0x1.8p+0L 0x1.08p+0L : 0x1.84e58377727ac18c4b0e8b54f1p+0L : inexact-ok
+sin 0
+= sin downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= sin tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= sin towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= sin upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= sin downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= sin tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= sin towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= sin upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= sin downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= sin tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= sin towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= sin upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= sin downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= sin upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= sin downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= sin tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= sin towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= sin upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= sin downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= sin tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= sin towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= sin upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+sin -0
+= sin downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= sin tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= sin towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= sin upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= sin downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= sin tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= sin towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= sin upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= sin downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= sin tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= sin towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= sin upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= sin downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= sin upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= sin downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= sin tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= sin towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= sin upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= sin downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= sin tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= sin towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= sin upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+sin pi/6
+= sin downward flt-32 0x8.60a92p-4f : 0x8p-4f : inexact-ok
+= sin tonearest flt-32 0x8.60a92p-4f : 0x8p-4f : inexact-ok
+= sin towardzero flt-32 0x8.60a92p-4f : 0x8p-4f : inexact-ok
+= sin upward flt-32 0x8.60a92p-4f : 0x8.00001p-4f : inexact-ok
+= sin downward dbl-64 0x8.60a92p-4 : 0x8.0000036321168p-4 : inexact-ok
+= sin tonearest dbl-64 0x8.60a92p-4 : 0x8.0000036321168p-4 : inexact-ok
+= sin towardzero dbl-64 0x8.60a92p-4 : 0x8.0000036321168p-4 : inexact-ok
+= sin upward dbl-64 0x8.60a92p-4 : 0x8.000003632117p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x8.60a92p-4L : 0x8.000003632116885p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x8.60a92p-4L : 0x8.000003632116885p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x8.60a92p-4L : 0x8.000003632116885p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x8.60a92p-4L : 0x8.000003632116886p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x8.60a92p-4L : 0x8.000003632116885p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x8.60a92p-4L : 0x8.000003632116885p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x8.60a92p-4L : 0x8.000003632116885p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x8.60a92p-4L : 0x8.000003632116886p-4L : inexact-ok
+= sin downward ldbl-128 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4b8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4cp-4L : inexact-ok
+= sin towardzero ldbl-128 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4b8p-4L : inexact-ok
+= sin upward ldbl-128 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4cp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b8p-4L : inexact-ok
+= sin downward flt-32 0x8.60a91p-4f : 0x7.fffffp-4f : inexact-ok
+= sin tonearest flt-32 0x8.60a91p-4f : 0x7.fffff8p-4f : inexact-ok
+= sin towardzero flt-32 0x8.60a91p-4f : 0x7.fffffp-4f : inexact-ok
+= sin upward flt-32 0x8.60a91p-4f : 0x7.fffff8p-4f : inexact-ok
+= sin downward dbl-64 0x8.60a91p-4 : 0x7.fffff587e3a04p-4 : inexact-ok
+= sin tonearest dbl-64 0x8.60a91p-4 : 0x7.fffff587e3a04p-4 : inexact-ok
+= sin towardzero dbl-64 0x8.60a91p-4 : 0x7.fffff587e3a04p-4 : inexact-ok
+= sin upward dbl-64 0x8.60a91p-4 : 0x7.fffff587e3a08p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x8.60a91p-4L : 0x7.fffff587e3a050c8p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x8.60a91p-4L : 0x7.fffff587e3a050dp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x8.60a91p-4L : 0x7.fffff587e3a050c8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x8.60a91p-4L : 0x7.fffff587e3a050dp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x8.60a91p-4L : 0x7.fffff587e3a050c8p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x8.60a91p-4L : 0x7.fffff587e3a050dp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x8.60a91p-4L : 0x7.fffff587e3a050c8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x8.60a91p-4L : 0x7.fffff587e3a050dp-4L : inexact-ok
+= sin downward ldbl-128 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc728p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc728p-4L : inexact-ok
+= sin towardzero ldbl-128 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc728p-4L : inexact-ok
+= sin upward ldbl-128 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc72cp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc6p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc8p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc6p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc8p-4L : inexact-ok
+= sin downward dbl-64 0x8.60a91c16b9b3p-4 : 0x8p-4 : inexact-ok
+= sin tonearest dbl-64 0x8.60a91c16b9b3p-4 : 0x8p-4 : inexact-ok
+= sin towardzero dbl-64 0x8.60a91c16b9b3p-4 : 0x8p-4 : inexact-ok
+= sin upward dbl-64 0x8.60a91c16b9b3p-4 : 0x8.0000000000008p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x8.60a91c16b9b3p-4L : 0x8.000000000000359p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x8.60a91c16b9b3p-4L : 0x8.000000000000359p-4L : inexact-ok
+= sin downward ldbl-128 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5157ep-4L : inexact-ok
+= sin tonearest ldbl-128 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5157ep-4L : inexact-ok
+= sin towardzero ldbl-128 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5157ep-4L : inexact-ok
+= sin upward ldbl-128 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5157e8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5154p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5158p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5154p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5158p-4L : inexact-ok
+= sin downward dbl-64 0x8.60a91c16b9b28p-4 : 0x7.ffffffffffffcp-4 : inexact-ok
+= sin tonearest dbl-64 0x8.60a91c16b9b28p-4 : 0x7.ffffffffffffcp-4 : inexact-ok
+= sin towardzero dbl-64 0x8.60a91c16b9b28p-4 : 0x7.ffffffffffffcp-4 : inexact-ok
+= sin upward dbl-64 0x8.60a91c16b9b28p-4 : 0x8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6bp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6bp-4L : inexact-ok
+= sin downward ldbl-128 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eae08p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eae0cp-4L : inexact-ok
+= sin towardzero ldbl-128 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eae08p-4L : inexact-ok
+= sin upward ldbl-128 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eae0cp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eaep-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eaep-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eaep-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1ebp-4L : inexact-ok
+= sin downward ldbl-96-intel 0x8.60a91c16b9b2c24p-4L : 0x8p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000001p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x8.60a91c16b9b2c24p-4L : 0x8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000001p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x8.60a91c16b9b2c24p-4L : 0x8p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000001p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x8.60a91c16b9b2c24p-4L : 0x8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000001p-4L : inexact-ok
+= sin downward ldbl-128 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed673p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed673p-4L : inexact-ok
+= sin towardzero ldbl-128 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed673p-4L : inexact-ok
+= sin upward ldbl-128 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed6738p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed64p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed68p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed64p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed68p-4L : inexact-ok
+= sin downward ldbl-96-intel 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffff8p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x8.60a91c16b9b2c23p-4L : 0x8p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x8.60a91c16b9b2c23p-4L : 0x8p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffff8p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x8.60a91c16b9b2c23p-4L : 0x8p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x8.60a91c16b9b2c23p-4L : 0x8p-4L : inexact-ok
+= sin downward ldbl-128 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec140dcp-4L : inexact-ok
+= sin tonearest ldbl-128 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec140dcp-4L : inexact-ok
+= sin towardzero ldbl-128 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec140dcp-4L : inexact-ok
+= sin upward ldbl-128 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec140ep-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec14p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec14p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec14p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec142p-4L : inexact-ok
+= sin downward ldbl-128 0x8.60a91c16b9b2c232dd99707ab3d8p-4L : 0x8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8.60a91c16b9b2c232dd99707ab3d8p-4L : 0x8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x8.60a91c16b9b2c232dd99707ab3d8p-4L : 0x8p-4L : inexact-ok
+= sin upward ldbl-128 0x8.60a91c16b9b2c232dd99707ab3d8p-4L : 0x8.0000000000000000000000000008p-4L : inexact-ok
+= sin downward ldbl-128 0x8.60a91c16b9b2c232dd99707ab3dp-4L : 0x7.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8.60a91c16b9b2c232dd99707ab3dp-4L : 0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= sin towardzero ldbl-128 0x8.60a91c16b9b2c232dd99707ab3dp-4L : 0x7.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 0x8.60a91c16b9b2c232dd99707ab3dp-4L : 0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= sin downward ldbl-128 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8.000000000000000000000000002p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8.000000000000000000000000002p-4L : inexact-ok
+= sin towardzero ldbl-128 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8.000000000000000000000000002p-4L : inexact-ok
+= sin upward ldbl-128 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8.0000000000000000000000000028p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8.00000000000000000000000004p-4L : inexact-ok
+= sin downward ldbl-128 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcacp-4L : inexact-ok
+= sin tonearest ldbl-128 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcacp-4L : inexact-ok
+= sin towardzero ldbl-128 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcacp-4L : inexact-ok
+= sin upward ldbl-128 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcbp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffep-4L : inexact-ok
+sin -pi/6
+= sin downward flt-32 -0x8.60a91p-4f : -0x7.fffff8p-4f : inexact-ok
+= sin tonearest flt-32 -0x8.60a91p-4f : -0x7.fffff8p-4f : inexact-ok
+= sin towardzero flt-32 -0x8.60a91p-4f : -0x7.fffffp-4f : inexact-ok
+= sin upward flt-32 -0x8.60a91p-4f : -0x7.fffffp-4f : inexact-ok
+= sin downward dbl-64 -0x8.60a91p-4 : -0x7.fffff587e3a08p-4 : inexact-ok
+= sin tonearest dbl-64 -0x8.60a91p-4 : -0x7.fffff587e3a04p-4 : inexact-ok
+= sin towardzero dbl-64 -0x8.60a91p-4 : -0x7.fffff587e3a04p-4 : inexact-ok
+= sin upward dbl-64 -0x8.60a91p-4 : -0x7.fffff587e3a04p-4 : inexact-ok
+= sin downward ldbl-96-intel -0x8.60a91p-4L : -0x7.fffff587e3a050dp-4L : inexact-ok
+= sin tonearest ldbl-96-intel -0x8.60a91p-4L : -0x7.fffff587e3a050dp-4L : inexact-ok
+= sin towardzero ldbl-96-intel -0x8.60a91p-4L : -0x7.fffff587e3a050c8p-4L : inexact-ok
+= sin upward ldbl-96-intel -0x8.60a91p-4L : -0x7.fffff587e3a050c8p-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x8.60a91p-4L : -0x7.fffff587e3a050dp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x8.60a91p-4L : -0x7.fffff587e3a050dp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x8.60a91p-4L : -0x7.fffff587e3a050c8p-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x8.60a91p-4L : -0x7.fffff587e3a050c8p-4L : inexact-ok
+= sin downward ldbl-128 -0x8.60a91p-4L : -0x7.fffff587e3a050cf967fba7bc728p-4L : inexact-ok
+= sin tonearest ldbl-128 -0x8.60a91p-4L : -0x7.fffff587e3a050cf967fba7bc728p-4L : inexact-ok
+= sin towardzero ldbl-128 -0x8.60a91p-4L : -0x7.fffff587e3a050cf967fba7bc724p-4L : inexact-ok
+= sin upward ldbl-128 -0x8.60a91p-4L : -0x7.fffff587e3a050cf967fba7bc724p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x8.60a91p-4L : -0x7.fffff587e3a050cf967fba7bc8p-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x8.60a91p-4L : -0x7.fffff587e3a050cf967fba7bc8p-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x8.60a91p-4L : -0x7.fffff587e3a050cf967fba7bc6p-4L : inexact-ok
+= sin upward ldbl-128ibm -0x8.60a91p-4L : -0x7.fffff587e3a050cf967fba7bc6p-4L : inexact-ok
+= sin downward flt-32 -0x8.60a92p-4f : -0x8.00001p-4f : inexact-ok
+= sin tonearest flt-32 -0x8.60a92p-4f : -0x8p-4f : inexact-ok
+= sin towardzero flt-32 -0x8.60a92p-4f : -0x8p-4f : inexact-ok
+= sin upward flt-32 -0x8.60a92p-4f : -0x8p-4f : inexact-ok
+= sin downward dbl-64 -0x8.60a92p-4 : -0x8.000003632117p-4 : inexact-ok
+= sin tonearest dbl-64 -0x8.60a92p-4 : -0x8.0000036321168p-4 : inexact-ok
+= sin towardzero dbl-64 -0x8.60a92p-4 : -0x8.0000036321168p-4 : inexact-ok
+= sin upward dbl-64 -0x8.60a92p-4 : -0x8.0000036321168p-4 : inexact-ok
+= sin downward ldbl-96-intel -0x8.60a92p-4L : -0x8.000003632116886p-4L : inexact-ok
+= sin tonearest ldbl-96-intel -0x8.60a92p-4L : -0x8.000003632116885p-4L : inexact-ok
+= sin towardzero ldbl-96-intel -0x8.60a92p-4L : -0x8.000003632116885p-4L : inexact-ok
+= sin upward ldbl-96-intel -0x8.60a92p-4L : -0x8.000003632116885p-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x8.60a92p-4L : -0x8.000003632116886p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x8.60a92p-4L : -0x8.000003632116885p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x8.60a92p-4L : -0x8.000003632116885p-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x8.60a92p-4L : -0x8.000003632116885p-4L : inexact-ok
+= sin downward ldbl-128 -0x8.60a92p-4L : -0x8.0000036321168852c4130c64b4cp-4L : inexact-ok
+= sin tonearest ldbl-128 -0x8.60a92p-4L : -0x8.0000036321168852c4130c64b4cp-4L : inexact-ok
+= sin towardzero ldbl-128 -0x8.60a92p-4L : -0x8.0000036321168852c4130c64b4b8p-4L : inexact-ok
+= sin upward ldbl-128 -0x8.60a92p-4L : -0x8.0000036321168852c4130c64b4b8p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x8.60a92p-4L : -0x8.0000036321168852c4130c64b8p-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x8.60a92p-4L : -0x8.0000036321168852c4130c64b4p-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x8.60a92p-4L : -0x8.0000036321168852c4130c64b4p-4L : inexact-ok
+= sin upward ldbl-128ibm -0x8.60a92p-4L : -0x8.0000036321168852c4130c64b4p-4L : inexact-ok
+= sin downward dbl-64 -0x8.60a91c16b9b28p-4 : -0x8p-4 : inexact-ok
+= sin tonearest dbl-64 -0x8.60a91c16b9b28p-4 : -0x7.ffffffffffffcp-4 : inexact-ok
+= sin towardzero dbl-64 -0x8.60a91c16b9b28p-4 : -0x7.ffffffffffffcp-4 : inexact-ok
+= sin upward dbl-64 -0x8.60a91c16b9b28p-4 : -0x7.ffffffffffffcp-4 : inexact-ok
+= sin downward ldbl-96-intel -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6bp-4L : inexact-ok
+= sin tonearest ldbl-96-intel -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin towardzero ldbl-96-intel -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin upward ldbl-96-intel -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6bp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6a8p-4L : inexact-ok
+= sin downward ldbl-128 -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6ab95779c1eae0cp-4L : inexact-ok
+= sin tonearest ldbl-128 -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6ab95779c1eae08p-4L : inexact-ok
+= sin towardzero ldbl-128 -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6ab95779c1eae08p-4L : inexact-ok
+= sin upward ldbl-128 -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6ab95779c1eae08p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6ab95779c1ebp-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6ab95779c1eaep-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6ab95779c1eaep-4L : inexact-ok
+= sin upward ldbl-128ibm -0x8.60a91c16b9b28p-4L : -0x7.ffffffffffffc6ab95779c1eaep-4L : inexact-ok
+= sin downward dbl-64 -0x8.60a91c16b9b3p-4 : -0x8.0000000000008p-4 : inexact-ok
+= sin tonearest dbl-64 -0x8.60a91c16b9b3p-4 : -0x8p-4 : inexact-ok
+= sin towardzero dbl-64 -0x8.60a91c16b9b3p-4 : -0x8p-4 : inexact-ok
+= sin upward dbl-64 -0x8.60a91c16b9b3p-4 : -0x8p-4 : inexact-ok
+= sin downward ldbl-96-intel -0x8.60a91c16b9b3p-4L : -0x8.000000000000359p-4L : inexact-ok
+= sin tonearest ldbl-96-intel -0x8.60a91c16b9b3p-4L : -0x8.000000000000358p-4L : inexact-ok
+= sin towardzero ldbl-96-intel -0x8.60a91c16b9b3p-4L : -0x8.000000000000358p-4L : inexact-ok
+= sin upward ldbl-96-intel -0x8.60a91c16b9b3p-4L : -0x8.000000000000358p-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x8.60a91c16b9b3p-4L : -0x8.000000000000359p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x8.60a91c16b9b3p-4L : -0x8.000000000000358p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x8.60a91c16b9b3p-4L : -0x8.000000000000358p-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x8.60a91c16b9b3p-4L : -0x8.000000000000358p-4L : inexact-ok
+= sin downward ldbl-128 -0x8.60a91c16b9b3p-4L : -0x8.00000000000035858118fd5157e8p-4L : inexact-ok
+= sin tonearest ldbl-128 -0x8.60a91c16b9b3p-4L : -0x8.00000000000035858118fd5157ep-4L : inexact-ok
+= sin towardzero ldbl-128 -0x8.60a91c16b9b3p-4L : -0x8.00000000000035858118fd5157ep-4L : inexact-ok
+= sin upward ldbl-128 -0x8.60a91c16b9b3p-4L : -0x8.00000000000035858118fd5157ep-4L : inexact-ok
+= sin downward ldbl-128ibm -0x8.60a91c16b9b3p-4L : -0x8.00000000000035858118fd5158p-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x8.60a91c16b9b3p-4L : -0x8.00000000000035858118fd5158p-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x8.60a91c16b9b3p-4L : -0x8.00000000000035858118fd5154p-4L : inexact-ok
+= sin upward ldbl-128ibm -0x8.60a91c16b9b3p-4L : -0x8.00000000000035858118fd5154p-4L : inexact-ok
+= sin downward ldbl-96-intel -0x8.60a91c16b9b2c23p-4L : -0x8p-4L : inexact-ok
+= sin tonearest ldbl-96-intel -0x8.60a91c16b9b2c23p-4L : -0x8p-4L : inexact-ok
+= sin towardzero ldbl-96-intel -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-96-intel -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffff8p-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x8.60a91c16b9b2c23p-4L : -0x8p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x8.60a91c16b9b2c23p-4L : -0x8p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffff8p-4L : inexact-ok
+= sin downward ldbl-128 -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffffd84af2ec140ep-4L : inexact-ok
+= sin tonearest ldbl-128 -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffffd84af2ec140dcp-4L : inexact-ok
+= sin towardzero ldbl-128 -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffffd84af2ec140dcp-4L : inexact-ok
+= sin upward ldbl-128 -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffffd84af2ec140dcp-4L : inexact-ok
+= sin downward ldbl-128ibm -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffffd84af2ec142p-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffffd84af2ec14p-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffffd84af2ec14p-4L : inexact-ok
+= sin upward ldbl-128ibm -0x8.60a91c16b9b2c23p-4L : -0x7.fffffffffffffffd84af2ec14p-4L : inexact-ok
+= sin downward ldbl-96-intel -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000001p-4L : inexact-ok
+= sin tonearest ldbl-96-intel -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000001p-4L : inexact-ok
+= sin towardzero ldbl-96-intel -0x8.60a91c16b9b2c24p-4L : -0x8p-4L : inexact-ok
+= sin upward ldbl-96-intel -0x8.60a91c16b9b2c24p-4L : -0x8p-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000001p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000001p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x8.60a91c16b9b2c24p-4L : -0x8p-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x8.60a91c16b9b2c24p-4L : -0x8p-4L : inexact-ok
+= sin downward ldbl-128 -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000000b5feca2ed6738p-4L : inexact-ok
+= sin tonearest ldbl-128 -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000000b5feca2ed673p-4L : inexact-ok
+= sin towardzero ldbl-128 -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000000b5feca2ed673p-4L : inexact-ok
+= sin upward ldbl-128 -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000000b5feca2ed673p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000000b5feca2ed68p-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000000b5feca2ed68p-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000000b5feca2ed64p-4L : inexact-ok
+= sin upward ldbl-128ibm -0x8.60a91c16b9b2c24p-4L : -0x8.000000000000000b5feca2ed64p-4L : inexact-ok
+= sin downward ldbl-128 -0x8.60a91c16b9b2c232dd99707ab3dp-4L : -0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= sin tonearest ldbl-128 -0x8.60a91c16b9b2c232dd99707ab3dp-4L : -0x7.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin towardzero ldbl-128 -0x8.60a91c16b9b2c232dd99707ab3dp-4L : -0x7.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 -0x8.60a91c16b9b2c232dd99707ab3dp-4L : -0x7.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin downward ldbl-128 -0x8.60a91c16b9b2c232dd99707ab3d8p-4L : -0x8p-4L : inexact-ok
+= sin tonearest ldbl-128 -0x8.60a91c16b9b2c232dd99707ab3d8p-4L : -0x8p-4L : inexact-ok
+= sin towardzero ldbl-128 -0x8.60a91c16b9b2c232dd99707ab3d8p-4L : -0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128 -0x8.60a91c16b9b2c232dd99707ab3d8p-4L : -0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= sin downward ldbl-128 -0x8.60a91c16b9b2c232dd99707abp-4L : -0x7.fffffffffffffffffffffffffcbp-4L : inexact-ok
+= sin tonearest ldbl-128 -0x8.60a91c16b9b2c232dd99707abp-4L : -0x7.fffffffffffffffffffffffffcacp-4L : inexact-ok
+= sin towardzero ldbl-128 -0x8.60a91c16b9b2c232dd99707abp-4L : -0x7.fffffffffffffffffffffffffcacp-4L : inexact-ok
+= sin upward ldbl-128 -0x8.60a91c16b9b2c232dd99707abp-4L : -0x7.fffffffffffffffffffffffffcacp-4L : inexact-ok
+= sin downward ldbl-128ibm -0x8.60a91c16b9b2c232dd99707abp-4L : -0x7.fffffffffffffffffffffffffep-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x8.60a91c16b9b2c232dd99707abp-4L : -0x7.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x8.60a91c16b9b2c232dd99707abp-4L : -0x7.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm -0x8.60a91c16b9b2c232dd99707abp-4L : -0x7.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin downward ldbl-128 -0x8.60a91c16b9b2c232dd99707ab4p-4L : -0x8.0000000000000000000000000028p-4L : inexact-ok
+= sin tonearest ldbl-128 -0x8.60a91c16b9b2c232dd99707ab4p-4L : -0x8.000000000000000000000000002p-4L : inexact-ok
+= sin towardzero ldbl-128 -0x8.60a91c16b9b2c232dd99707ab4p-4L : -0x8.000000000000000000000000002p-4L : inexact-ok
+= sin upward ldbl-128 -0x8.60a91c16b9b2c232dd99707ab4p-4L : -0x8.000000000000000000000000002p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x8.60a91c16b9b2c232dd99707ab4p-4L : -0x8.00000000000000000000000004p-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x8.60a91c16b9b2c232dd99707ab4p-4L : -0x8p-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x8.60a91c16b9b2c232dd99707ab4p-4L : -0x8p-4L : inexact-ok
+= sin upward ldbl-128ibm -0x8.60a91c16b9b2c232dd99707ab4p-4L : -0x8p-4L : inexact-ok
+sin pi/2
+= sin downward flt-32 0x1.921fb6p+0f : 0xf.fffffp-4f : inexact-ok
+= sin tonearest flt-32 0x1.921fb6p+0f : 0x1p+0f : inexact-ok
+= sin towardzero flt-32 0x1.921fb6p+0f : 0xf.fffffp-4f : inexact-ok
+= sin upward flt-32 0x1.921fb6p+0f : 0x1p+0f : inexact-ok
+= sin downward dbl-64 0x1.921fb6p+0 : 0xf.fffffffffffb8p-4 : inexact-ok
+= sin tonearest dbl-64 0x1.921fb6p+0 : 0xf.fffffffffffb8p-4 : inexact-ok
+= sin towardzero dbl-64 0x1.921fb6p+0 : 0xf.fffffffffffb8p-4 : inexact-ok
+= sin upward dbl-64 0x1.921fb6p+0 : 0xf.fffffffffffcp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x1.921fb6p+0L : 0xf.fffffffffffbb2ap-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x1.921fb6p+0L : 0xf.fffffffffffbb2ap-4L : inexact-ok
+= sin downward ldbl-128 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a11498p-4L : inexact-ok
+= sin tonearest ldbl-128 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a114988p-4L : inexact-ok
+= sin towardzero ldbl-128 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a11498p-4L : inexact-ok
+= sin upward ldbl-128 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a114988p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a1148p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a1148p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a1148p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a114cp-4L : inexact-ok
+= sin downward flt-32 0x1.921fb4p+0f : 0xf.fffffp-4f : inexact-ok
+= sin tonearest flt-32 0x1.921fb4p+0f : 0x1p+0f : inexact-ok
+= sin towardzero flt-32 0x1.921fb4p+0f : 0xf.fffffp-4f : inexact-ok
+= sin upward flt-32 0x1.921fb4p+0f : 0x1p+0f : inexact-ok
+= sin downward dbl-64 0x1.921fb4p+0 : 0xf.fffffffffff3p-4 : inexact-ok
+= sin tonearest dbl-64 0x1.921fb4p+0 : 0xf.fffffffffff3p-4 : inexact-ok
+= sin towardzero dbl-64 0x1.921fb4p+0 : 0xf.fffffffffff3p-4 : inexact-ok
+= sin upward dbl-64 0x1.921fb4p+0 : 0xf.fffffffffff38p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x1.921fb4p+0L : 0xf.fffffffffff32a4p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x1.921fb4p+0L : 0xf.fffffffffff32a4p-4L : inexact-ok
+= sin downward ldbl-128 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e136dp-4L : inexact-ok
+= sin tonearest ldbl-128 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e136d8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e136dp-4L : inexact-ok
+= sin upward ldbl-128 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e136d8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e134p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e138p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e134p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e138p-4L : inexact-ok
+= sin downward dbl-64 0x1.921fb54442d19p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= sin tonearest dbl-64 0x1.921fb54442d19p+0 : 0x1p+0 : inexact-ok
+= sin towardzero dbl-64 0x1.921fb54442d19p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= sin upward dbl-64 0x1.921fb54442d19p+0 : 0x1p+0 : inexact-ok
+= sin downward ldbl-96-intel 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x1.921fb54442d19p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-intel 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x1.921fb54442d19p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-96-m68k 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x1.921fb54442d19p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x1.921fb54442d19p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffbc8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffbdp-4L : inexact-ok
+= sin towardzero ldbl-128 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffbc8p-4L : inexact-ok
+= sin upward ldbl-128 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffbdp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin downward dbl-64 0x1.921fb54442d18p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= sin tonearest dbl-64 0x1.921fb54442d18p+0 : 0x1p+0 : inexact-ok
+= sin towardzero dbl-64 0x1.921fb54442d18p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= sin upward dbl-64 0x1.921fb54442d18p+0 : 0x1p+0 : inexact-ok
+= sin downward ldbl-96-intel 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x1.921fb54442d18p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-intel 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x1.921fb54442d18p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-96-m68k 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x1.921fb54442d18p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x1.921fb54442d18p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128 0x1.921fb54442d18p+0L : 0xf.ffffffffffffffffffffffffff6p-4L : inexact-ok
+= sin tonearest ldbl-128 0x1.921fb54442d18p+0L : 0xf.ffffffffffffffffffffffffff68p-4L : inexact-ok
+= sin towardzero ldbl-128 0x1.921fb54442d18p+0L : 0xf.ffffffffffffffffffffffffff6p-4L : inexact-ok
+= sin upward ldbl-128 0x1.921fb54442d18p+0L : 0xf.ffffffffffffffffffffffffff68p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1.921fb54442d18p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1.921fb54442d18p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-96-intel 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x1.921fb54442d1846ap+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-intel 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x1.921fb54442d1846ap+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-96-m68k 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x1.921fb54442d1846ap+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x1.921fb54442d1846ap+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x1.921fb54442d1846ap+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 0x1.921fb54442d1846ap+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128ibm 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1.921fb54442d1846ap+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1.921fb54442d1846ap+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-96-intel 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x1.921fb54442d18468p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-intel 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x1.921fb54442d18468p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x1.921fb54442d18468p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 0x1.921fb54442d18468p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128ibm 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1.921fb54442d18468p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1.921fb54442d18468p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128 0x1.921fb54442d18469898cc51702p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x1.921fb54442d18469898cc51702p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 0x1.921fb54442d18469898cc51702p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 0x1.921fb54442d18469898cc51702p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0x1p+0L : inexact-ok
+= sin downward ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0x1p+0L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0x1p+0L : inexact-ok
+sin -pi/2
+= sin downward flt-32 -0x1.921fb6p+0f : -0x1p+0f : inexact-ok
+= sin tonearest flt-32 -0x1.921fb6p+0f : -0x1p+0f : inexact-ok
+= sin towardzero flt-32 -0x1.921fb6p+0f : -0xf.fffffp-4f : inexact-ok
+= sin upward flt-32 -0x1.921fb6p+0f : -0xf.fffffp-4f : inexact-ok
+= sin downward dbl-64 -0x1.921fb6p+0 : -0xf.fffffffffffcp-4 : inexact-ok
+= sin tonearest dbl-64 -0x1.921fb6p+0 : -0xf.fffffffffffb8p-4 : inexact-ok
+= sin towardzero dbl-64 -0x1.921fb6p+0 : -0xf.fffffffffffb8p-4 : inexact-ok
+= sin upward dbl-64 -0x1.921fb6p+0 : -0xf.fffffffffffb8p-4 : inexact-ok
+= sin downward ldbl-96-intel -0x1.921fb6p+0L : -0xf.fffffffffffbb2ap-4L : inexact-ok
+= sin tonearest ldbl-96-intel -0x1.921fb6p+0L : -0xf.fffffffffffbb29p-4L : inexact-ok
+= sin towardzero ldbl-96-intel -0x1.921fb6p+0L : -0xf.fffffffffffbb29p-4L : inexact-ok
+= sin upward ldbl-96-intel -0x1.921fb6p+0L : -0xf.fffffffffffbb29p-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x1.921fb6p+0L : -0xf.fffffffffffbb2ap-4L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x1.921fb6p+0L : -0xf.fffffffffffbb29p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x1.921fb6p+0L : -0xf.fffffffffffbb29p-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x1.921fb6p+0L : -0xf.fffffffffffbb29p-4L : inexact-ok
+= sin downward ldbl-128 -0x1.921fb6p+0L : -0xf.fffffffffffbb290924e3a114988p-4L : inexact-ok
+= sin tonearest ldbl-128 -0x1.921fb6p+0L : -0xf.fffffffffffbb290924e3a114988p-4L : inexact-ok
+= sin towardzero ldbl-128 -0x1.921fb6p+0L : -0xf.fffffffffffbb290924e3a11498p-4L : inexact-ok
+= sin upward ldbl-128 -0x1.921fb6p+0L : -0xf.fffffffffffbb290924e3a11498p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x1.921fb6p+0L : -0xf.fffffffffffbb290924e3a114cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x1.921fb6p+0L : -0xf.fffffffffffbb290924e3a1148p-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x1.921fb6p+0L : -0xf.fffffffffffbb290924e3a1148p-4L : inexact-ok
+= sin upward ldbl-128ibm -0x1.921fb6p+0L : -0xf.fffffffffffbb290924e3a1148p-4L : inexact-ok
+= sin downward flt-32 -0x1.921fb4p+0f : -0x1p+0f : inexact-ok
+= sin tonearest flt-32 -0x1.921fb4p+0f : -0x1p+0f : inexact-ok
+= sin towardzero flt-32 -0x1.921fb4p+0f : -0xf.fffffp-4f : inexact-ok
+= sin upward flt-32 -0x1.921fb4p+0f : -0xf.fffffp-4f : inexact-ok
+= sin downward dbl-64 -0x1.921fb4p+0 : -0xf.fffffffffff38p-4 : inexact-ok
+= sin tonearest dbl-64 -0x1.921fb4p+0 : -0xf.fffffffffff3p-4 : inexact-ok
+= sin towardzero dbl-64 -0x1.921fb4p+0 : -0xf.fffffffffff3p-4 : inexact-ok
+= sin upward dbl-64 -0x1.921fb4p+0 : -0xf.fffffffffff3p-4 : inexact-ok
+= sin downward ldbl-96-intel -0x1.921fb4p+0L : -0xf.fffffffffff32a4p-4L : inexact-ok
+= sin tonearest ldbl-96-intel -0x1.921fb4p+0L : -0xf.fffffffffff32a3p-4L : inexact-ok
+= sin towardzero ldbl-96-intel -0x1.921fb4p+0L : -0xf.fffffffffff32a3p-4L : inexact-ok
+= sin upward ldbl-96-intel -0x1.921fb4p+0L : -0xf.fffffffffff32a3p-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x1.921fb4p+0L : -0xf.fffffffffff32a4p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x1.921fb4p+0L : -0xf.fffffffffff32a3p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x1.921fb4p+0L : -0xf.fffffffffff32a3p-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x1.921fb4p+0L : -0xf.fffffffffff32a3p-4L : inexact-ok
+= sin downward ldbl-128 -0x1.921fb4p+0L : -0xf.fffffffffff32a3661c108e136d8p-4L : inexact-ok
+= sin tonearest ldbl-128 -0x1.921fb4p+0L : -0xf.fffffffffff32a3661c108e136dp-4L : inexact-ok
+= sin towardzero ldbl-128 -0x1.921fb4p+0L : -0xf.fffffffffff32a3661c108e136dp-4L : inexact-ok
+= sin upward ldbl-128 -0x1.921fb4p+0L : -0xf.fffffffffff32a3661c108e136dp-4L : inexact-ok
+= sin downward ldbl-128ibm -0x1.921fb4p+0L : -0xf.fffffffffff32a3661c108e138p-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x1.921fb4p+0L : -0xf.fffffffffff32a3661c108e138p-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x1.921fb4p+0L : -0xf.fffffffffff32a3661c108e134p-4L : inexact-ok
+= sin upward ldbl-128ibm -0x1.921fb4p+0L : -0xf.fffffffffff32a3661c108e134p-4L : inexact-ok
+= sin downward dbl-64 -0x1.921fb54442d19p+0 : -0x1p+0 : inexact-ok
+= sin tonearest dbl-64 -0x1.921fb54442d19p+0 : -0x1p+0 : inexact-ok
+= sin towardzero dbl-64 -0x1.921fb54442d19p+0 : -0xf.ffffffffffff8p-4 : inexact-ok
+= sin upward dbl-64 -0x1.921fb54442d19p+0 : -0xf.ffffffffffff8p-4 : inexact-ok
+= sin downward ldbl-96-intel -0x1.921fb54442d19p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-96-intel -0x1.921fb54442d19p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-intel -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-intel -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x1.921fb54442d19p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x1.921fb54442d19p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin downward ldbl-128 -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffffffffffffbdp-4L : inexact-ok
+= sin tonearest ldbl-128 -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffffffffffffbc8p-4L : inexact-ok
+= sin towardzero ldbl-128 -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffffffffffffbc8p-4L : inexact-ok
+= sin upward ldbl-128 -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffffffffffffbc8p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin tonearest ldbl-128ibm -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin towardzero ldbl-128ibm -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128ibm -0x1.921fb54442d19p+0L : -0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= sin downward dbl-64 -0x1.921fb54442d18p+0 : -0x1p+0 : inexact-ok
+= sin tonearest dbl-64 -0x1.921fb54442d18p+0 : -0x1p+0 : inexact-ok
+= sin towardzero dbl-64 -0x1.921fb54442d18p+0 : -0xf.ffffffffffff8p-4 : inexact-ok
+= sin upward dbl-64 -0x1.921fb54442d18p+0 : -0xf.ffffffffffff8p-4 : inexact-ok
+= sin downward ldbl-96-intel -0x1.921fb54442d18p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-96-intel -0x1.921fb54442d18p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-intel -0x1.921fb54442d18p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-intel -0x1.921fb54442d18p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x1.921fb54442d18p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x1.921fb54442d18p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x1.921fb54442d18p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x1.921fb54442d18p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin downward ldbl-128 -0x1.921fb54442d18p+0L : -0xf.ffffffffffffffffffffffffff68p-4L : inexact-ok
+= sin tonearest ldbl-128 -0x1.921fb54442d18p+0L : -0xf.ffffffffffffffffffffffffff6p-4L : inexact-ok
+= sin towardzero ldbl-128 -0x1.921fb54442d18p+0L : -0xf.ffffffffffffffffffffffffff6p-4L : inexact-ok
+= sin upward ldbl-128 -0x1.921fb54442d18p+0L : -0xf.ffffffffffffffffffffffffff6p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x1.921fb54442d18p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128ibm -0x1.921fb54442d18p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128ibm -0x1.921fb54442d18p+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm -0x1.921fb54442d18p+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin downward ldbl-96-intel -0x1.921fb54442d1846ap+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-96-intel -0x1.921fb54442d1846ap+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-intel -0x1.921fb54442d1846ap+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-intel -0x1.921fb54442d1846ap+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x1.921fb54442d1846ap+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x1.921fb54442d1846ap+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x1.921fb54442d1846ap+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x1.921fb54442d1846ap+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin downward ldbl-128 -0x1.921fb54442d1846ap+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128 -0x1.921fb54442d1846ap+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 -0x1.921fb54442d1846ap+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 -0x1.921fb54442d1846ap+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x1.921fb54442d1846ap+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128ibm -0x1.921fb54442d1846ap+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128ibm -0x1.921fb54442d1846ap+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm -0x1.921fb54442d1846ap+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin downward ldbl-96-intel -0x1.921fb54442d18468p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-96-intel -0x1.921fb54442d18468p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-intel -0x1.921fb54442d18468p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-intel -0x1.921fb54442d18468p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin downward ldbl-96-m68k -0x1.921fb54442d18468p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x1.921fb54442d18468p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x1.921fb54442d18468p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin upward ldbl-96-m68k -0x1.921fb54442d18468p+0L : -0xf.fffffffffffffffp-4L : inexact-ok
+= sin downward ldbl-128 -0x1.921fb54442d18468p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128 -0x1.921fb54442d18468p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 -0x1.921fb54442d18468p+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 -0x1.921fb54442d18468p+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x1.921fb54442d18468p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128ibm -0x1.921fb54442d18468p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128ibm -0x1.921fb54442d18468p+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm -0x1.921fb54442d18468p+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin downward ldbl-128 -0x1.921fb54442d18469898cc51701b9p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128 -0x1.921fb54442d18469898cc51701b9p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 -0x1.921fb54442d18469898cc51701b9p+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 -0x1.921fb54442d18469898cc51701b9p+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin downward ldbl-128 -0x1.921fb54442d18469898cc51701b8p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128 -0x1.921fb54442d18469898cc51701b8p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 -0x1.921fb54442d18469898cc51701b8p+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 -0x1.921fb54442d18469898cc51701b8p+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin downward ldbl-128 -0x1.921fb54442d18469898cc51702p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128 -0x1.921fb54442d18469898cc51702p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 -0x1.921fb54442d18469898cc51702p+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 -0x1.921fb54442d18469898cc51702p+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x1.921fb54442d18469898cc51702p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128ibm -0x1.921fb54442d18469898cc51702p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128ibm -0x1.921fb54442d18469898cc51702p+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm -0x1.921fb54442d18469898cc51702p+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin downward ldbl-128 -0x1.921fb54442d18469898cc517018p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128 -0x1.921fb54442d18469898cc517018p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128 -0x1.921fb54442d18469898cc517018p+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin upward ldbl-128 -0x1.921fb54442d18469898cc517018p+0L : -0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= sin downward ldbl-128ibm -0x1.921fb54442d18469898cc517018p+0L : -0x1p+0L : inexact-ok
+= sin tonearest ldbl-128ibm -0x1.921fb54442d18469898cc517018p+0L : -0x1p+0L : inexact-ok
+= sin towardzero ldbl-128ibm -0x1.921fb54442d18469898cc517018p+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= sin upward ldbl-128ibm -0x1.921fb54442d18469898cc517018p+0L : -0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+sin 0.75
+= sin downward flt-32 0xcp-4f : 0xa.e7fep-4f : inexact-ok
+= sin tonearest flt-32 0xcp-4f : 0xa.e7fe1p-4f : inexact-ok
+= sin towardzero flt-32 0xcp-4f : 0xa.e7fep-4f : inexact-ok
+= sin upward flt-32 0xcp-4f : 0xa.e7fe1p-4f : inexact-ok
+= sin downward dbl-64 0xcp-4 : 0xa.e7fe0b5fc7868p-4 : inexact-ok
+= sin tonearest dbl-64 0xcp-4 : 0xa.e7fe0b5fc7868p-4 : inexact-ok
+= sin towardzero dbl-64 0xcp-4 : 0xa.e7fe0b5fc7868p-4 : inexact-ok
+= sin upward dbl-64 0xcp-4 : 0xa.e7fe0b5fc787p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xcp-4L : 0xa.e7fe0b5fc786b2dp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xcp-4L : 0xa.e7fe0b5fc786b2ep-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xcp-4L : 0xa.e7fe0b5fc786b2dp-4L : inexact-ok
+= sin upward ldbl-96-intel 0xcp-4L : 0xa.e7fe0b5fc786b2ep-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xcp-4L : 0xa.e7fe0b5fc786b2dp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xcp-4L : 0xa.e7fe0b5fc786b2ep-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xcp-4L : 0xa.e7fe0b5fc786b2dp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xcp-4L : 0xa.e7fe0b5fc786b2ep-4L : inexact-ok
+= sin downward ldbl-128 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af1408p-4L : inexact-ok
+= sin tonearest ldbl-128 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af1408p-4L : inexact-ok
+= sin towardzero ldbl-128 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af1408p-4L : inexact-ok
+= sin upward ldbl-128 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af141p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af14p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af14p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af14p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af18p-4L : inexact-ok
+sin 0x1p65
+= sin downward flt-32 0x2p+64f : -0xc.143e2p-8f : inexact-ok
+= sin tonearest flt-32 0x2p+64f : -0xc.143e1p-8f : inexact-ok
+= sin towardzero flt-32 0x2p+64f : -0xc.143e1p-8f : inexact-ok
+= sin upward flt-32 0x2p+64f : -0xc.143e1p-8f : inexact-ok
+= sin downward dbl-64 0x2p+64 : -0xc.143e153b0702p-8 : inexact-ok
+= sin tonearest dbl-64 0x2p+64 : -0xc.143e153b0702p-8 : inexact-ok
+= sin towardzero dbl-64 0x2p+64 : -0xc.143e153b07018p-8 : inexact-ok
+= sin upward dbl-64 0x2p+64 : -0xc.143e153b07018p-8 : inexact-ok
+= sin downward ldbl-96-intel 0x2p+64L : -0xc.143e153b0701e81p-8L : inexact-ok
+= sin tonearest ldbl-96-intel 0x2p+64L : -0xc.143e153b0701e8p-8L : inexact-ok
+= sin towardzero ldbl-96-intel 0x2p+64L : -0xc.143e153b0701e8p-8L : inexact-ok
+= sin upward ldbl-96-intel 0x2p+64L : -0xc.143e153b0701e8p-8L : inexact-ok
+= sin downward ldbl-96-m68k 0x2p+64L : -0xc.143e153b0701e81p-8L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x2p+64L : -0xc.143e153b0701e8p-8L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x2p+64L : -0xc.143e153b0701e8p-8L : inexact-ok
+= sin upward ldbl-96-m68k 0x2p+64L : -0xc.143e153b0701e8p-8L : inexact-ok
+= sin downward ldbl-128 0x2p+64L : -0xc.143e153b0701e800f9b8a47b75b8p-8L : inexact-ok
+= sin tonearest ldbl-128 0x2p+64L : -0xc.143e153b0701e800f9b8a47b75bp-8L : inexact-ok
+= sin towardzero ldbl-128 0x2p+64L : -0xc.143e153b0701e800f9b8a47b75bp-8L : inexact-ok
+= sin upward ldbl-128 0x2p+64L : -0xc.143e153b0701e800f9b8a47b75bp-8L : inexact-ok
+= sin downward ldbl-128ibm 0x2p+64L : -0xc.143e153b0701e800f9b8a47b78p-8L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2p+64L : -0xc.143e153b0701e800f9b8a47b74p-8L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2p+64L : -0xc.143e153b0701e800f9b8a47b74p-8L : inexact-ok
+= sin upward ldbl-128ibm 0x2p+64L : -0xc.143e153b0701e800f9b8a47b74p-8L : inexact-ok
+sin -0x1p65
+= sin downward flt-32 -0x2p+64f : 0xc.143e1p-8f : inexact-ok
+= sin tonearest flt-32 -0x2p+64f : 0xc.143e1p-8f : inexact-ok
+= sin towardzero flt-32 -0x2p+64f : 0xc.143e1p-8f : inexact-ok
+= sin upward flt-32 -0x2p+64f : 0xc.143e2p-8f : inexact-ok
+= sin downward dbl-64 -0x2p+64 : 0xc.143e153b07018p-8 : inexact-ok
+= sin tonearest dbl-64 -0x2p+64 : 0xc.143e153b0702p-8 : inexact-ok
+= sin towardzero dbl-64 -0x2p+64 : 0xc.143e153b07018p-8 : inexact-ok
+= sin upward dbl-64 -0x2p+64 : 0xc.143e153b0702p-8 : inexact-ok
+= sin downward ldbl-96-intel -0x2p+64L : 0xc.143e153b0701e8p-8L : inexact-ok
+= sin tonearest ldbl-96-intel -0x2p+64L : 0xc.143e153b0701e8p-8L : inexact-ok
+= sin towardzero ldbl-96-intel -0x2p+64L : 0xc.143e153b0701e8p-8L : inexact-ok
+= sin upward ldbl-96-intel -0x2p+64L : 0xc.143e153b0701e81p-8L : inexact-ok
+= sin downward ldbl-96-m68k -0x2p+64L : 0xc.143e153b0701e8p-8L : inexact-ok
+= sin tonearest ldbl-96-m68k -0x2p+64L : 0xc.143e153b0701e8p-8L : inexact-ok
+= sin towardzero ldbl-96-m68k -0x2p+64L : 0xc.143e153b0701e8p-8L : inexact-ok
+= sin upward ldbl-96-m68k -0x2p+64L : 0xc.143e153b0701e81p-8L : inexact-ok
+= sin downward ldbl-128 -0x2p+64L : 0xc.143e153b0701e800f9b8a47b75bp-8L : inexact-ok
+= sin tonearest ldbl-128 -0x2p+64L : 0xc.143e153b0701e800f9b8a47b75b8p-8L : inexact-ok
+= sin towardzero ldbl-128 -0x2p+64L : 0xc.143e153b0701e800f9b8a47b75bp-8L : inexact-ok
+= sin upward ldbl-128 -0x2p+64L : 0xc.143e153b0701e800f9b8a47b75b8p-8L : inexact-ok
+= sin downward ldbl-128ibm -0x2p+64L : 0xc.143e153b0701e800f9b8a47b74p-8L : inexact-ok
+= sin tonearest ldbl-128ibm -0x2p+64L : 0xc.143e153b0701e800f9b8a47b74p-8L : inexact-ok
+= sin towardzero ldbl-128ibm -0x2p+64L : 0xc.143e153b0701e800f9b8a47b74p-8L : inexact-ok
+= sin upward ldbl-128ibm -0x2p+64L : 0xc.143e153b0701e800f9b8a47b78p-8L : inexact-ok
+sin 0x1.7f4134p+103
+= sin downward flt-32 0xb.fa09ap+100f : -0x1.1e7cfap-24f : inexact-ok
+= sin tonearest flt-32 0xb.fa09ap+100f : -0x1.1e7cfap-24f : inexact-ok
+= sin towardzero flt-32 0xb.fa09ap+100f : -0x1.1e7cf8p-24f : inexact-ok
+= sin upward flt-32 0xb.fa09ap+100f : -0x1.1e7cf8p-24f : inexact-ok
+= sin downward dbl-64 0xb.fa09ap+100 : -0x1.1e7cf9ec10917p-24 : inexact-ok
+= sin tonearest dbl-64 0xb.fa09ap+100 : -0x1.1e7cf9ec10917p-24 : inexact-ok
+= sin towardzero dbl-64 0xb.fa09ap+100 : -0x1.1e7cf9ec10916p-24 : inexact-ok
+= sin upward dbl-64 0xb.fa09ap+100 : -0x1.1e7cf9ec10916p-24 : inexact-ok
+= sin downward ldbl-96-intel 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c26p-24L : inexact-ok
+= sin tonearest ldbl-96-intel 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c24p-24L : inexact-ok
+= sin towardzero ldbl-96-intel 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c24p-24L : inexact-ok
+= sin upward ldbl-96-intel 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c24p-24L : inexact-ok
+= sin downward ldbl-96-m68k 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c26p-24L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c24p-24L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c24p-24L : inexact-ok
+= sin upward ldbl-96-m68k 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c24p-24L : inexact-ok
+= sin downward ldbl-128 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c247834e44dabf2p-24L : inexact-ok
+= sin tonearest ldbl-128 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c247834e44dabf1p-24L : inexact-ok
+= sin towardzero ldbl-128 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c247834e44dabf1p-24L : inexact-ok
+= sin upward ldbl-128 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c247834e44dabf1p-24L : inexact-ok
+= sin downward ldbl-128ibm 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c247834e44dacp-24L : inexact-ok
+= sin tonearest ldbl-128ibm 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c247834e44dacp-24L : inexact-ok
+= sin towardzero ldbl-128ibm 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c247834e44dab8p-24L : inexact-ok
+= sin upward ldbl-128ibm 0xb.fa09ap+100L : -0x1.1e7cf9ec10916c247834e44dab8p-24L : inexact-ok
+sin 0.80190127184058835
+= sin downward flt-32 0xc.d4967p-4f : 0xb.7fb6p-4f : inexact-ok
+= sin tonearest flt-32 0xc.d4967p-4f : 0xb.7fb6p-4f : inexact-ok
+= sin towardzero flt-32 0xc.d4967p-4f : 0xb.7fb6p-4f : inexact-ok
+= sin upward flt-32 0xc.d4967p-4f : 0xb.7fb61p-4f : inexact-ok
+= sin downward dbl-64 0xc.d4967p-4 : 0xb.7fb6002758778p-4 : inexact-ok
+= sin tonearest dbl-64 0xc.d4967p-4 : 0xb.7fb6002758778p-4 : inexact-ok
+= sin towardzero dbl-64 0xc.d4967p-4 : 0xb.7fb6002758778p-4 : inexact-ok
+= sin upward dbl-64 0xc.d4967p-4 : 0xb.7fb600275878p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xc.d4967p-4L : 0xb.7fb600275877a61p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xc.d4967p-4L : 0xb.7fb600275877a61p-4L : inexact-ok
+= sin downward ldbl-128 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3178p-4L : inexact-ok
+= sin tonearest ldbl-128 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3178p-4L : inexact-ok
+= sin towardzero ldbl-128 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3178p-4L : inexact-ok
+= sin upward ldbl-128 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a318p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a34p-4L : inexact-ok
+= sin downward flt-32 0xc.d4966p-4f : 0xb.7fb5fp-4f : inexact-ok
+= sin tonearest flt-32 0xc.d4966p-4f : 0xb.7fb5fp-4f : inexact-ok
+= sin towardzero flt-32 0xc.d4966p-4f : 0xb.7fb5fp-4f : inexact-ok
+= sin upward flt-32 0xc.d4966p-4f : 0xb.7fb6p-4f : inexact-ok
+= sin downward dbl-64 0xc.d4966p-4 : 0xb.7fb5f50739fap-4 : inexact-ok
+= sin tonearest dbl-64 0xc.d4966p-4 : 0xb.7fb5f50739fa8p-4 : inexact-ok
+= sin towardzero dbl-64 0xc.d4966p-4 : 0xb.7fb5f50739fap-4 : inexact-ok
+= sin upward dbl-64 0xc.d4966p-4 : 0xb.7fb5f50739fa8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xc.d4966p-4L : 0xb.7fb5f50739fa5f9p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xc.d4966p-4L : 0xb.7fb5f50739fa5f9p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xc.d4966p-4L : 0xb.7fb5f50739fa5f9p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xc.d4966p-4L : 0xb.7fb5f50739fa5f9p-4L : inexact-ok
+= sin downward ldbl-128 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1b3p-4L : inexact-ok
+= sin tonearest ldbl-128 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1b3p-4L : inexact-ok
+= sin towardzero ldbl-128 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1b3p-4L : inexact-ok
+= sin upward ldbl-128 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1b38p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f18p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1cp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f18p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1cp-4L : inexact-ok
+= sin downward dbl-64 0xc.d4966d92d171p-4 : 0xb.7fb5fe776979p-4 : inexact-ok
+= sin tonearest dbl-64 0xc.d4966d92d171p-4 : 0xb.7fb5fe776979p-4 : inexact-ok
+= sin towardzero dbl-64 0xc.d4966d92d171p-4 : 0xb.7fb5fe776979p-4 : inexact-ok
+= sin upward dbl-64 0xc.d4966d92d171p-4 : 0xb.7fb5fe7769798p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e7p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e7p-4L : inexact-ok
+= sin downward ldbl-128 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cef98p-4L : inexact-ok
+= sin tonearest ldbl-128 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cef98p-4L : inexact-ok
+= sin towardzero ldbl-128 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cef98p-4L : inexact-ok
+= sin upward ldbl-128 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cefap-4L : inexact-ok
+= sin downward ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cecp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cfp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cecp-4L : inexact-ok
+= sin upward ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cfp-4L : inexact-ok
+= sin downward dbl-64 0xc.d4966d92d1708p-4 : 0xb.7fb5fe7769788p-4 : inexact-ok
+= sin tonearest dbl-64 0xc.d4966d92d1708p-4 : 0xb.7fb5fe776979p-4 : inexact-ok
+= sin towardzero dbl-64 0xc.d4966d92d1708p-4 : 0xb.7fb5fe7769788p-4 : inexact-ok
+= sin upward dbl-64 0xc.d4966d92d1708p-4 : 0xb.7fb5fe776979p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e57p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e57p-4L : inexact-ok
+= sin downward ldbl-128 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8cb08p-4L : inexact-ok
+= sin tonearest ldbl-128 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8cb08p-4L : inexact-ok
+= sin towardzero ldbl-128 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8cb08p-4L : inexact-ok
+= sin upward ldbl-128 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8cb1p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8c8p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8ccp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8c8p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8ccp-4L : inexact-ok
+= sin downward ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e73p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e74p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e73p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e74p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e73p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e74p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e73p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e74p-4L : inexact-ok
+= sin downward ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c30dp-4L : inexact-ok
+= sin tonearest ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c30dp-4L : inexact-ok
+= sin towardzero ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c30dp-4L : inexact-ok
+= sin upward ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c30d8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c3p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c3p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c3p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c34p-4L : inexact-ok
+= sin downward ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e73p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e73p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e73p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e73p-4L : inexact-ok
+= sin downward ldbl-128 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa9001072848p-4L : inexact-ok
+= sin tonearest ldbl-128 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa9001072848p-4L : inexact-ok
+= sin towardzero ldbl-128 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa9001072848p-4L : inexact-ok
+= sin upward ldbl-128 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa900107285p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa90010728p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa90010728p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa90010728p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa9001072cp-4L : inexact-ok
+= sin downward ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.7fb5fe776978e732912810356318p-4L : inexact-ok
+= sin tonearest ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.7fb5fe776978e732912810356318p-4L : inexact-ok
+= sin towardzero ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.7fb5fe776978e732912810356318p-4L : inexact-ok
+= sin upward ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.7fb5fe776978e73291281035632p-4L : inexact-ok
+= sin downward ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.7fb5fe776978e73291281035631p-4L : inexact-ok
+= sin tonearest ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.7fb5fe776978e732912810356318p-4L : inexact-ok
+= sin towardzero ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.7fb5fe776978e73291281035631p-4L : inexact-ok
+= sin upward ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.7fb5fe776978e732912810356318p-4L : inexact-ok
+= sin downward ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e73291281035634p-4L : inexact-ok
+= sin tonearest ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e73291281035634p-4L : inexact-ok
+= sin towardzero ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e73291281035634p-4L : inexact-ok
+= sin upward ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e732912810356348p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e732912810356p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e7329128103564p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e732912810356p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e7329128103564p-4L : inexact-ok
+= sin downward ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356078p-4L : inexact-ok
+= sin tonearest ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356078p-4L : inexact-ok
+= sin towardzero ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356078p-4L : inexact-ok
+= sin upward ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e73291281035608p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e7329128103564p-4L : inexact-ok
+sin 2.522464e-1
+= sin downward flt-32 0x4.093388p-4f : 0x3.fe478p-4f : inexact-ok
+= sin tonearest flt-32 0x4.093388p-4f : 0x3.fe478p-4f : inexact-ok
+= sin towardzero flt-32 0x4.093388p-4f : 0x3.fe478p-4f : inexact-ok
+= sin upward flt-32 0x4.093388p-4f : 0x3.fe4784p-4f : inexact-ok
+= sin downward dbl-64 0x4.093388p-4 : 0x3.fe4780403e806p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.093388p-4 : 0x3.fe4780403e808p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.093388p-4 : 0x3.fe4780403e806p-4 : inexact-ok
+= sin upward dbl-64 0x4.093388p-4 : 0x3.fe4780403e808p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.093388p-4L : 0x3.fe4780403e8078c8p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.093388p-4L : 0x3.fe4780403e8078ccp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.093388p-4L : 0x3.fe4780403e8078c8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.093388p-4L : 0x3.fe4780403e8078ccp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.093388p-4L : 0x3.fe4780403e8078c8p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.093388p-4L : 0x3.fe4780403e8078ccp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.093388p-4L : 0x3.fe4780403e8078c8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.093388p-4L : 0x3.fe4780403e8078ccp-4L : inexact-ok
+= sin downward ldbl-128 0x4.093388p-4L : 0x3.fe4780403e8078ca89790118cb8cp-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.093388p-4L : 0x3.fe4780403e8078ca89790118cb8cp-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.093388p-4L : 0x3.fe4780403e8078ca89790118cb8cp-4L : inexact-ok
+= sin upward ldbl-128 0x4.093388p-4L : 0x3.fe4780403e8078ca89790118cb8ep-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.093388p-4L : 0x3.fe4780403e8078ca89790118cbp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.093388p-4L : 0x3.fe4780403e8078ca89790118ccp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.093388p-4L : 0x3.fe4780403e8078ca89790118cbp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.093388p-4L : 0x3.fe4780403e8078ca89790118ccp-4L : inexact-ok
+= sin downward flt-32 0x4.09338p-4f : 0x3.fe4778p-4f : inexact-ok
+= sin tonearest flt-32 0x4.09338p-4f : 0x3.fe4778p-4f : inexact-ok
+= sin towardzero flt-32 0x4.09338p-4f : 0x3.fe4778p-4f : inexact-ok
+= sin upward flt-32 0x4.09338p-4f : 0x3.fe477cp-4f : inexact-ok
+= sin downward dbl-64 0x4.09338p-4 : 0x3.fe4778810e026p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.09338p-4 : 0x3.fe4778810e026p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.09338p-4 : 0x3.fe4778810e026p-4 : inexact-ok
+= sin upward dbl-64 0x4.09338p-4 : 0x3.fe4778810e028p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.09338p-4L : 0x3.fe4778810e026fep-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.09338p-4L : 0x3.fe4778810e026fep-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.09338p-4L : 0x3.fe4778810e026fep-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.09338p-4L : 0x3.fe4778810e026fe4p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.09338p-4L : 0x3.fe4778810e026fep-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.09338p-4L : 0x3.fe4778810e026fep-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.09338p-4L : 0x3.fe4778810e026fep-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.09338p-4L : 0x3.fe4778810e026fe4p-4L : inexact-ok
+= sin downward ldbl-128 0x4.09338p-4L : 0x3.fe4778810e026fe1e37f141da492p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.09338p-4L : 0x3.fe4778810e026fe1e37f141da492p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.09338p-4L : 0x3.fe4778810e026fe1e37f141da492p-4L : inexact-ok
+= sin upward ldbl-128 0x4.09338p-4L : 0x3.fe4778810e026fe1e37f141da494p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.09338p-4L : 0x3.fe4778810e026fe1e37f141da4p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.09338p-4L : 0x3.fe4778810e026fe1e37f141da5p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.09338p-4L : 0x3.fe4778810e026fe1e37f141da4p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.09338p-4L : 0x3.fe4778810e026fe1e37f141da5p-4L : inexact-ok
+= sin downward dbl-64 0x4.093385688a2d4p-4 : 0x3.fe477dbdc7958p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.093385688a2d4p-4 : 0x3.fe477dbdc7958p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.093385688a2d4p-4 : 0x3.fe477dbdc7958p-4 : inexact-ok
+= sin upward dbl-64 0x4.093385688a2d4p-4 : 0x3.fe477dbdc795ap-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dc8p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dccp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dc8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dccp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dc8p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dccp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dc8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dccp-4L : inexact-ok
+= sin downward ldbl-128 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dcbe52ad14f88f2p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dcbe52ad14f88f2p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dcbe52ad14f88f2p-4L : inexact-ok
+= sin upward ldbl-128 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dcbe52ad14f88f4p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dcbe52ad14f88p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dcbe52ad14f89p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dcbe52ad14f88p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.093385688a2d4p-4L : 0x3.fe477dbdc7958dcbe52ad14f89p-4L : inexact-ok
+= sin downward dbl-64 0x4.093385688a2dp-4 : 0x3.fe477dbdc7954p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.093385688a2dp-4 : 0x3.fe477dbdc7954p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.093385688a2dp-4 : 0x3.fe477dbdc7954p-4 : inexact-ok
+= sin upward dbl-64 0x4.093385688a2dp-4 : 0x3.fe477dbdc7956p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fdp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd4p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fdp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd4p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fdp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd4p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fdp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd4p-4L : inexact-ok
+= sin downward ldbl-128 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd2613bf1f96c22p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd2613bf1f96c24p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd2613bf1f96c22p-4L : inexact-ok
+= sin upward ldbl-128 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd2613bf1f96c24p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd2613bf1f96cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd2613bf1f96cp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd2613bf1f96cp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.093385688a2dp-4L : 0x3.fe477dbdc7954fd2613bf1f96dp-4L : inexact-ok
+= sin downward ldbl-96-intel 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956434p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956438p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956434p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956438p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956434p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956438p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956434p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956438p-4L : inexact-ok
+= sin downward ldbl-128 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956437bee74ef98324p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956437bee74ef98326p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956437bee74ef98324p-4L : inexact-ok
+= sin upward ldbl-128 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956437bee74ef98326p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956437bee74ef983p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956437bee74ef983p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956437bee74ef983p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.093385688a2d151p-4L : 0x3.fe477dbdc7956437bee74ef984p-4L : inexact-ok
+= sin downward ldbl-96-intel 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642cp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795643p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642cp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795643p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642cp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795643p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642cp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795643p-4L : inexact-ok
+= sin downward ldbl-128 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642fffb6d11d9862p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642fffb6d11d9862p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642fffb6d11d9862p-4L : inexact-ok
+= sin upward ldbl-128 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642fffb6d11d9864p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642fffb6d11d98p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642fffb6d11d98p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642fffb6d11d98p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.093385688a2d1508p-4L : 0x3.fe477dbdc795642fffb6d11d99p-4L : inexact-ok
+= sin downward ldbl-128 0x4.093385688a2d150c00bf42a08e84p-4L : 0x3.fe477dbdc7956433e0084536147ep-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.093385688a2d150c00bf42a08e84p-4L : 0x3.fe477dbdc7956433e0084536148p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.093385688a2d150c00bf42a08e84p-4L : 0x3.fe477dbdc7956433e0084536147ep-4L : inexact-ok
+= sin upward ldbl-128 0x4.093385688a2d150c00bf42a08e84p-4L : 0x3.fe477dbdc7956433e0084536148p-4L : inexact-ok
+= sin downward ldbl-128 0x4.093385688a2d150c00bf42a08e8p-4L : 0x3.fe477dbdc7956433e0084536147cp-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.093385688a2d150c00bf42a08e8p-4L : 0x3.fe477dbdc7956433e0084536147cp-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.093385688a2d150c00bf42a08e8p-4L : 0x3.fe477dbdc7956433e0084536147cp-4L : inexact-ok
+= sin upward ldbl-128 0x4.093385688a2d150c00bf42a08e8p-4L : 0x3.fe477dbdc7956433e0084536147ep-4L : inexact-ok
+= sin downward ldbl-128 0x4.093385688a2d150c00bf42a09p-4L : 0x3.fe477dbdc7956433e008453615eep-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.093385688a2d150c00bf42a09p-4L : 0x3.fe477dbdc7956433e008453615fp-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.093385688a2d150c00bf42a09p-4L : 0x3.fe477dbdc7956433e008453615eep-4L : inexact-ok
+= sin upward ldbl-128 0x4.093385688a2d150c00bf42a09p-4L : 0x3.fe477dbdc7956433e008453615fp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.093385688a2d150c00bf42a09p-4L : 0x3.fe477dbdc7956433e008453615p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.093385688a2d150c00bf42a09p-4L : 0x3.fe477dbdc7956433e008453616p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.093385688a2d150c00bf42a09p-4L : 0x3.fe477dbdc7956433e008453615p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.093385688a2d150c00bf42a09p-4L : 0x3.fe477dbdc7956433e008453616p-4L : inexact-ok
+= sin downward ldbl-128 0x4.093385688a2d150c00bf42a08ep-4L : 0x3.fe477dbdc7956433e008453614p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.093385688a2d150c00bf42a08ep-4L : 0x3.fe477dbdc7956433e008453614p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.093385688a2d150c00bf42a08ep-4L : 0x3.fe477dbdc7956433e008453614p-4L : inexact-ok
+= sin upward ldbl-128 0x4.093385688a2d150c00bf42a08ep-4L : 0x3.fe477dbdc7956433e00845361402p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.093385688a2d150c00bf42a08ep-4L : 0x3.fe477dbdc7956433e008453614p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.093385688a2d150c00bf42a08ep-4L : 0x3.fe477dbdc7956433e008453614p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.093385688a2d150c00bf42a08ep-4L : 0x3.fe477dbdc7956433e008453614p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.093385688a2d150c00bf42a08ep-4L : 0x3.fe477dbdc7956433e008453615p-4L : inexact-ok
+sin 1e22
+= sin downward flt-32 0x2.1e19e4p+72f : -0x4.cd7e88p-4f : inexact-ok
+= sin tonearest flt-32 0x2.1e19e4p+72f : -0x4.cd7e88p-4f : inexact-ok
+= sin towardzero flt-32 0x2.1e19e4p+72f : -0x4.cd7e8p-4f : inexact-ok
+= sin upward flt-32 0x2.1e19e4p+72f : -0x4.cd7e8p-4f : inexact-ok
+= sin downward dbl-64 0x2.1e19e4p+72 : -0x4.cd7e86c4077cp-4 : inexact-ok
+= sin tonearest dbl-64 0x2.1e19e4p+72 : -0x4.cd7e86c4077cp-4 : inexact-ok
+= sin towardzero dbl-64 0x2.1e19e4p+72 : -0x4.cd7e86c4077bcp-4 : inexact-ok
+= sin upward dbl-64 0x2.1e19e4p+72 : -0x4.cd7e86c4077bcp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0ep-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0ep-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0d8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0d8p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0ep-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0ep-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0d8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0d8p-4L : inexact-ok
+= sin downward ldbl-128 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d196p-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d196p-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d195cp-4L : inexact-ok
+= sin upward ldbl-128 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d195cp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d1ap-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d1ap-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d18p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d18p-4L : inexact-ok
+= sin downward flt-32 0x2.1e19ep+72f : -0xb.becc5p-4f : inexact-ok
+= sin tonearest flt-32 0x2.1e19ep+72f : -0xb.becc4p-4f : inexact-ok
+= sin towardzero flt-32 0x2.1e19ep+72f : -0xb.becc4p-4f : inexact-ok
+= sin upward flt-32 0x2.1e19ep+72f : -0xb.becc4p-4f : inexact-ok
+= sin downward dbl-64 0x2.1e19ep+72 : -0xb.becc47ab1b8c8p-4 : inexact-ok
+= sin tonearest dbl-64 0x2.1e19ep+72 : -0xb.becc47ab1b8c8p-4 : inexact-ok
+= sin towardzero dbl-64 0x2.1e19ep+72 : -0xb.becc47ab1b8cp-4 : inexact-ok
+= sin upward dbl-64 0x2.1e19ep+72 : -0xb.becc47ab1b8cp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x2.1e19ep+72L : -0xb.becc47ab1b8c708p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x2.1e19ep+72L : -0xb.becc47ab1b8c708p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x2.1e19ep+72L : -0xb.becc47ab1b8c707p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x2.1e19ep+72L : -0xb.becc47ab1b8c707p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x2.1e19ep+72L : -0xb.becc47ab1b8c708p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x2.1e19ep+72L : -0xb.becc47ab1b8c708p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x2.1e19ep+72L : -0xb.becc47ab1b8c707p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x2.1e19ep+72L : -0xb.becc47ab1b8c707p-4L : inexact-ok
+= sin downward ldbl-128 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2bcp-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2bcp-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2bb8p-4L : inexact-ok
+= sin upward ldbl-128 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2bb8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2cp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff28p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff28p-4L : inexact-ok
+= sin downward dbl-64 0x2.1e19e0c9bab24p+72 : -0xd.a29d5bb5f9ccp-4 : inexact-ok
+= sin tonearest dbl-64 0x2.1e19e0c9bab24p+72 : -0xd.a29d5bb5f9cb8p-4 : inexact-ok
+= sin towardzero dbl-64 0x2.1e19e0c9bab24p+72 : -0xd.a29d5bb5f9cb8p-4 : inexact-ok
+= sin upward dbl-64 0x2.1e19e0c9bab24p+72 : -0xd.a29d5bb5f9cb8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87ep-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87ep-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L : inexact-ok
+= sin downward ldbl-128 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc991fp-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc991e8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc991e8p-4L : inexact-ok
+= sin upward ldbl-128 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc991e8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc994p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc99p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc99p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc99p-4L : inexact-ok
+sin 0x1p1023
+= sin downward flt-32 0xf.fffffp+124f : -0x8.599b4p-4f : inexact-ok
+= sin tonearest flt-32 0xf.fffffp+124f : -0x8.599b3p-4f : inexact-ok
+= sin towardzero flt-32 0xf.fffffp+124f : -0x8.599b3p-4f : inexact-ok
+= sin upward flt-32 0xf.fffffp+124f : -0x8.599b3p-4f : inexact-ok
+= sin downward dbl-64 0xf.fffffp+124 : -0x8.599b32844abbp-4 : inexact-ok
+= sin tonearest dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 : inexact-ok
+= sin towardzero dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 : inexact-ok
+= sin upward dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin downward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be049ap-4L : inexact-ok
+= sin tonearest ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L : inexact-ok
+= sin towardzero ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L : inexact-ok
+= sin upward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L : inexact-ok
+= sin downward dbl-64 0x8p+1020 : 0x9.0292465edbaf8p-4 : inexact-ok
+= sin tonearest dbl-64 0x8p+1020 : 0x9.0292465edbbp-4 : inexact-ok
+= sin towardzero dbl-64 0x8p+1020 : 0x9.0292465edbaf8p-4 : inexact-ok
+= sin upward dbl-64 0x8p+1020 : 0x9.0292465edbbp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x8p+1020L : 0x9.0292465edbaff2dp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x8p+1020L : 0x9.0292465edbaff2dp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x8p+1020L : 0x9.0292465edbaff2dp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x8p+1020L : 0x9.0292465edbaff2ep-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x8p+1020L : 0x9.0292465edbaff2dp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x8p+1020L : 0x9.0292465edbaff2dp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x8p+1020L : 0x9.0292465edbaff2dp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x8p+1020L : 0x9.0292465edbaff2ep-4L : inexact-ok
+= sin downward ldbl-128 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e55p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e558p-4L : inexact-ok
+= sin towardzero ldbl-128 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e55p-4L : inexact-ok
+= sin upward ldbl-128 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e558p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e4p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e4p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e4p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e8p-4L : inexact-ok
+sin 0x1p16383
+= sin downward flt-32 0xf.fffffp+124f : -0x8.599b4p-4f : inexact-ok
+= sin tonearest flt-32 0xf.fffffp+124f : -0x8.599b3p-4f : inexact-ok
+= sin towardzero flt-32 0xf.fffffp+124f : -0x8.599b3p-4f : inexact-ok
+= sin upward flt-32 0xf.fffffp+124f : -0x8.599b3p-4f : inexact-ok
+= sin downward dbl-64 0xf.fffffp+124 : -0x8.599b32844abbp-4 : inexact-ok
+= sin tonearest dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 : inexact-ok
+= sin towardzero dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 : inexact-ok
+= sin upward dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin downward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be049ap-4L : inexact-ok
+= sin tonearest ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L : inexact-ok
+= sin towardzero ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L : inexact-ok
+= sin upward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L : inexact-ok
+= sin downward dbl-64 0xf.ffffffffffff8p+1020 : 0x1.452fc98b34e96p-8 : inexact-ok
+= sin tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x1.452fc98b34e97p-8 : inexact-ok
+= sin towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x1.452fc98b34e96p-8 : inexact-ok
+= sin upward dbl-64 0xf.ffffffffffff8p+1020 : 0x1.452fc98b34e97p-8 : inexact-ok
+= sin downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b6p-8L : inexact-ok
+= sin tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b62p-8L : inexact-ok
+= sin towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b6p-8L : inexact-ok
+= sin upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b62p-8L : inexact-ok
+= sin downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b6p-8L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b62p-8L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b6p-8L : inexact-ok
+= sin upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b62p-8L : inexact-ok
+= sin downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c84ap-8L : inexact-ok
+= sin tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c84ap-8L : inexact-ok
+= sin towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c84ap-8L : inexact-ok
+= sin upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c84bp-8L : inexact-ok
+= sin downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c8p-8L : inexact-ok
+= sin tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c88p-8L : inexact-ok
+= sin towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c8p-8L : inexact-ok
+= sin upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c88p-8L : inexact-ok
+= sin downward ldbl-96-intel 0x8p+16380L : 0x6.3ad4b2136cc68818p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x8p+16380L : 0x6.3ad4b2136cc6882p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x8p+16380L : 0x6.3ad4b2136cc68818p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x8p+16380L : 0x6.3ad4b2136cc6882p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x8p+16380L : 0x6.3ad4b2136cc68818p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x8p+16380L : 0x6.3ad4b2136cc6882p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x8p+16380L : 0x6.3ad4b2136cc68818p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x8p+16380L : 0x6.3ad4b2136cc6882p-4L : inexact-ok
+= sin downward ldbl-128 0x8p+16380L : 0x6.3ad4b2136cc6881f0ca607c7946p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8p+16380L : 0x6.3ad4b2136cc6881f0ca607c7946p-4L : inexact-ok
+= sin towardzero ldbl-128 0x8p+16380L : 0x6.3ad4b2136cc6881f0ca607c7946p-4L : inexact-ok
+= sin upward ldbl-128 0x8p+16380L : 0x6.3ad4b2136cc6881f0ca607c79464p-4L : inexact-ok
+= sin downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbe6p-4L : inexact-ok
+= sin tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbe6p-4L : inexact-ok
+= sin towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbe58p-4L : inexact-ok
+= sin upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbe58p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fcp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fcp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbcp-4L : inexact-ok
+sin 0x1p+120
+= sin downward flt-32 0x1p+120f : 0x6.0b8d18p-4f : inexact-ok
+= sin tonearest flt-32 0x1p+120f : 0x6.0b8d18p-4f : inexact-ok
+= sin towardzero flt-32 0x1p+120f : 0x6.0b8d18p-4f : inexact-ok
+= sin upward flt-32 0x1p+120f : 0x6.0b8d2p-4f : inexact-ok
+= sin downward dbl-64 0x1p+120 : 0x6.0b8d19579bf2cp-4 : inexact-ok
+= sin tonearest dbl-64 0x1p+120 : 0x6.0b8d19579bf2cp-4 : inexact-ok
+= sin towardzero dbl-64 0x1p+120 : 0x6.0b8d19579bf2cp-4 : inexact-ok
+= sin upward dbl-64 0x1p+120 : 0x6.0b8d19579bf3p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x1p+120L : 0x6.0b8d19579bf2db58p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x1p+120L : 0x6.0b8d19579bf2db6p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x1p+120L : 0x6.0b8d19579bf2db58p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x1p+120L : 0x6.0b8d19579bf2db6p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x1p+120L : 0x6.0b8d19579bf2db58p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x1p+120L : 0x6.0b8d19579bf2db6p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x1p+120L : 0x6.0b8d19579bf2db58p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x1p+120L : 0x6.0b8d19579bf2db6p-4L : inexact-ok
+= sin downward ldbl-128 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f37cp-4L : inexact-ok
+= sin tonearest ldbl-128 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f37cp-4L : inexact-ok
+= sin towardzero ldbl-128 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f37cp-4L : inexact-ok
+= sin upward ldbl-128 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f38p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f2p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f4p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f2p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f4p-4L : inexact-ok
+sin 0x1p+127
+= sin downward flt-32 0x8p+124f : 0x9.f9631p-4f : inexact-ok
+= sin tonearest flt-32 0x8p+124f : 0x9.f9631p-4f : inexact-ok
+= sin towardzero flt-32 0x8p+124f : 0x9.f9631p-4f : inexact-ok
+= sin upward flt-32 0x8p+124f : 0x9.f9632p-4f : inexact-ok
+= sin downward dbl-64 0x8p+124 : 0x9.f963166f215e8p-4 : inexact-ok
+= sin tonearest dbl-64 0x8p+124 : 0x9.f963166f215e8p-4 : inexact-ok
+= sin towardzero dbl-64 0x8p+124 : 0x9.f963166f215e8p-4 : inexact-ok
+= sin upward dbl-64 0x8p+124 : 0x9.f963166f215fp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x8p+124L : 0x9.f963166f215eb89p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x8p+124L : 0x9.f963166f215eb89p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x8p+124L : 0x9.f963166f215eb89p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x8p+124L : 0x9.f963166f215eb8ap-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x8p+124L : 0x9.f963166f215eb89p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x8p+124L : 0x9.f963166f215eb89p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x8p+124L : 0x9.f963166f215eb89p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x8p+124L : 0x9.f963166f215eb8ap-4L : inexact-ok
+= sin downward ldbl-128 0x8p+124L : 0x9.f963166f215eb89381836cafaa28p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8p+124L : 0x9.f963166f215eb89381836cafaa3p-4L : inexact-ok
+= sin towardzero ldbl-128 0x8p+124L : 0x9.f963166f215eb89381836cafaa28p-4L : inexact-ok
+= sin upward ldbl-128 0x8p+124L : 0x9.f963166f215eb89381836cafaa3p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8p+124L : 0x9.f963166f215eb89381836cafa8p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8p+124L : 0x9.f963166f215eb89381836cafacp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8p+124L : 0x9.f963166f215eb89381836cafa8p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8p+124L : 0x9.f963166f215eb89381836cafacp-4L : inexact-ok
+sin 0x1.fffff8p+127
+= sin downward flt-32 0xf.ffffcp+124f : 0xc.6fa5cp-8f : inexact-ok
+= sin tonearest flt-32 0xf.ffffcp+124f : 0xc.6fa5cp-8f : inexact-ok
+= sin towardzero flt-32 0xf.ffffcp+124f : 0xc.6fa5cp-8f : inexact-ok
+= sin upward flt-32 0xf.ffffcp+124f : 0xc.6fa5dp-8f : inexact-ok
+= sin downward dbl-64 0xf.ffffcp+124 : 0xc.6fa5c56659848p-8 : inexact-ok
+= sin tonearest dbl-64 0xf.ffffcp+124 : 0xc.6fa5c5665985p-8 : inexact-ok
+= sin towardzero dbl-64 0xf.ffffcp+124 : 0xc.6fa5c56659848p-8 : inexact-ok
+= sin upward dbl-64 0xf.ffffcp+124 : 0xc.6fa5c5665985p-8 : inexact-ok
+= sin downward ldbl-96-intel 0xf.ffffcp+124L : 0xc.6fa5c5665984d88p-8L : inexact-ok
+= sin tonearest ldbl-96-intel 0xf.ffffcp+124L : 0xc.6fa5c5665984d89p-8L : inexact-ok
+= sin towardzero ldbl-96-intel 0xf.ffffcp+124L : 0xc.6fa5c5665984d88p-8L : inexact-ok
+= sin upward ldbl-96-intel 0xf.ffffcp+124L : 0xc.6fa5c5665984d89p-8L : inexact-ok
+= sin downward ldbl-96-m68k 0xf.ffffcp+124L : 0xc.6fa5c5665984d88p-8L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xf.ffffcp+124L : 0xc.6fa5c5665984d89p-8L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xf.ffffcp+124L : 0xc.6fa5c5665984d88p-8L : inexact-ok
+= sin upward ldbl-96-m68k 0xf.ffffcp+124L : 0xc.6fa5c5665984d89p-8L : inexact-ok
+= sin downward ldbl-128 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1537b8p-8L : inexact-ok
+= sin tonearest ldbl-128 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1537b8p-8L : inexact-ok
+= sin towardzero ldbl-128 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1537b8p-8L : inexact-ok
+= sin upward ldbl-128 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1537cp-8L : inexact-ok
+= sin downward ldbl-128ibm 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1534p-8L : inexact-ok
+= sin tonearest ldbl-128ibm 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1538p-8L : inexact-ok
+= sin towardzero ldbl-128ibm 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1534p-8L : inexact-ok
+= sin upward ldbl-128ibm 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1538p-8L : inexact-ok
+sin 0x1.fffffep+127
+= sin downward flt-32 0xf.fffffp+124f : -0x8.599b4p-4f : inexact-ok
+= sin tonearest flt-32 0xf.fffffp+124f : -0x8.599b3p-4f : inexact-ok
+= sin towardzero flt-32 0xf.fffffp+124f : -0x8.599b3p-4f : inexact-ok
+= sin upward flt-32 0xf.fffffp+124f : -0x8.599b3p-4f : inexact-ok
+= sin downward dbl-64 0xf.fffffp+124 : -0x8.599b32844abbp-4 : inexact-ok
+= sin tonearest dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 : inexact-ok
+= sin towardzero dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 : inexact-ok
+= sin upward dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L : inexact-ok
+= sin downward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be049ap-4L : inexact-ok
+= sin tonearest ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L : inexact-ok
+= sin towardzero ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L : inexact-ok
+= sin upward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L : inexact-ok
+sin 0x1p+50
+= sin downward flt-32 0x4p+48f : 0x7.f13d78p-4f : inexact-ok
+= sin tonearest flt-32 0x4p+48f : 0x7.f13d78p-4f : inexact-ok
+= sin towardzero flt-32 0x4p+48f : 0x7.f13d78p-4f : inexact-ok
+= sin upward flt-32 0x4p+48f : 0x7.f13d8p-4f : inexact-ok
+= sin downward dbl-64 0x4p+48 : 0x7.f13d78eabb768p-4 : inexact-ok
+= sin tonearest dbl-64 0x4p+48 : 0x7.f13d78eabb76cp-4 : inexact-ok
+= sin towardzero dbl-64 0x4p+48 : 0x7.f13d78eabb768p-4 : inexact-ok
+= sin upward dbl-64 0x4p+48 : 0x7.f13d78eabb76cp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4p+48L : 0x7.f13d78eabb76b8bp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4p+48L : 0x7.f13d78eabb76b8bp-4L : inexact-ok
+= sin downward ldbl-128 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6703e4p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6703e8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6703e4p-4L : inexact-ok
+= sin upward ldbl-128 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6703e8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6702p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6704p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6702p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6704p-4L : inexact-ok
+sin 0x1p+28
+= sin downward flt-32 0x1p+28f : -0xf.c777dp-4f : inexact-ok
+= sin tonearest flt-32 0x1p+28f : -0xf.c777cp-4f : inexact-ok
+= sin towardzero flt-32 0x1p+28f : -0xf.c777cp-4f : inexact-ok
+= sin upward flt-32 0x1p+28f : -0xf.c777cp-4f : inexact-ok
+= sin downward dbl-64 0x1p+28 : -0xf.c777c6b36a758p-4 : inexact-ok
+= sin tonearest dbl-64 0x1p+28 : -0xf.c777c6b36a75p-4 : inexact-ok
+= sin towardzero dbl-64 0x1p+28 : -0xf.c777c6b36a75p-4 : inexact-ok
+= sin upward dbl-64 0x1p+28 : -0xf.c777c6b36a75p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x1p+28L : -0xf.c777c6b36a750a6p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x1p+28L : -0xf.c777c6b36a750a6p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x1p+28L : -0xf.c777c6b36a750a5p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x1p+28L : -0xf.c777c6b36a750a5p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x1p+28L : -0xf.c777c6b36a750a6p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x1p+28L : -0xf.c777c6b36a750a6p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x1p+28L : -0xf.c777c6b36a750a5p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x1p+28L : -0xf.c777c6b36a750a5p-4L : inexact-ok
+= sin downward ldbl-128 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a156p-4L : inexact-ok
+= sin tonearest ldbl-128 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a156p-4L : inexact-ok
+= sin towardzero ldbl-128 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a1558p-4L : inexact-ok
+= sin upward ldbl-128 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a1558p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a18p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a14p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a14p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a14p-4L : inexact-ok
+sin 0.93340582292648832662962377071381
+= sin downward flt-32 0xe.ef3bp-4f : 0xc.dbc19p-4f : inexact-ok
+= sin tonearest flt-32 0xe.ef3bp-4f : 0xc.dbc1ap-4f : inexact-ok
+= sin towardzero flt-32 0xe.ef3bp-4f : 0xc.dbc19p-4f : inexact-ok
+= sin upward flt-32 0xe.ef3bp-4f : 0xc.dbc1ap-4f : inexact-ok
+= sin downward dbl-64 0xe.ef3bp-4 : 0xc.dbc19bb4a58a8p-4 : inexact-ok
+= sin tonearest dbl-64 0xe.ef3bp-4 : 0xc.dbc19bb4a58a8p-4 : inexact-ok
+= sin towardzero dbl-64 0xe.ef3bp-4 : 0xc.dbc19bb4a58a8p-4 : inexact-ok
+= sin upward dbl-64 0xe.ef3bp-4 : 0xc.dbc19bb4a58bp-4 : inexact-ok
+= sin downward ldbl-96-intel 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xe.ef3bp-4L : 0xc.dbc19bb4a58a819p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xe.ef3bp-4L : 0xc.dbc19bb4a58a819p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xe.ef3bp-4L : 0xc.dbc19bb4a58a819p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xe.ef3bp-4L : 0xc.dbc19bb4a58a819p-4L : inexact-ok
+= sin downward ldbl-128 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818888614bb13368p-4L : inexact-ok
+= sin tonearest ldbl-128 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818888614bb1337p-4L : inexact-ok
+= sin towardzero ldbl-128 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818888614bb13368p-4L : inexact-ok
+= sin upward ldbl-128 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818888614bb1337p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818888614bb13p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818888614bb134p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818888614bb13p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xe.ef3bp-4L : 0xc.dbc19bb4a58a818888614bb134p-4L : inexact-ok
+= sin downward flt-32 0xe.ef3afp-4f : 0xc.dbc19p-4f : inexact-ok
+= sin tonearest flt-32 0xe.ef3afp-4f : 0xc.dbc19p-4f : inexact-ok
+= sin towardzero flt-32 0xe.ef3afp-4f : 0xc.dbc19p-4f : inexact-ok
+= sin upward flt-32 0xe.ef3afp-4f : 0xc.dbc1ap-4f : inexact-ok
+= sin downward dbl-64 0xe.ef3afp-4 : 0xc.dbc1922f1d9fp-4 : inexact-ok
+= sin tonearest dbl-64 0xe.ef3afp-4 : 0xc.dbc1922f1d9fp-4 : inexact-ok
+= sin towardzero dbl-64 0xe.ef3afp-4 : 0xc.dbc1922f1d9fp-4 : inexact-ok
+= sin upward dbl-64 0xe.ef3afp-4 : 0xc.dbc1922f1d9f8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c7p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c7p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c7p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c8p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c7p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c7p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c7p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c8p-4L : inexact-ok
+= sin downward ldbl-128 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c71bb4e06826528p-4L : inexact-ok
+= sin tonearest ldbl-128 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c71bb4e0682653p-4L : inexact-ok
+= sin towardzero ldbl-128 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c71bb4e06826528p-4L : inexact-ok
+= sin upward ldbl-128 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c71bb4e0682653p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c71bb4e068264p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c71bb4e068264p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c71bb4e068264p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xe.ef3afp-4L : 0xc.dbc1922f1d9f2c71bb4e068268p-4L : inexact-ok
+= sin downward dbl-64 0xe.ef3af1b5d8008p-4 : 0xc.dbc19333ad3bp-4 : inexact-ok
+= sin tonearest dbl-64 0xe.ef3af1b5d8008p-4 : 0xc.dbc19333ad3bp-4 : inexact-ok
+= sin towardzero dbl-64 0xe.ef3af1b5d8008p-4 : 0xc.dbc19333ad3bp-4 : inexact-ok
+= sin upward dbl-64 0xe.ef3af1b5d8008p-4 : 0xc.dbc19333ad3b8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c3p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2p-4L : inexact-ok
+= sin upward ldbl-96-intel 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c3p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c3p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c3p-4L : inexact-ok
+= sin downward ldbl-128 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2c3f7f22cb9868p-4L : inexact-ok
+= sin tonearest ldbl-128 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2c3f7f22cb9868p-4L : inexact-ok
+= sin towardzero ldbl-128 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2c3f7f22cb9868p-4L : inexact-ok
+= sin upward ldbl-128 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2c3f7f22cb987p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2c3f7f22cb98p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2c3f7f22cb98p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2c3f7f22cb98p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xe.ef3af1b5d8008p-4L : 0xc.dbc19333ad3b0c2c3f7f22cb9cp-4L : inexact-ok
+= sin downward dbl-64 0xe.ef3af1b5d8p-4 : 0xc.dbc19333ad3a8p-4 : inexact-ok
+= sin tonearest dbl-64 0xe.ef3af1b5d8p-4 : 0xc.dbc19333ad3a8p-4 : inexact-ok
+= sin towardzero dbl-64 0xe.ef3af1b5d8p-4 : 0xc.dbc19333ad3a8p-4 : inexact-ok
+= sin upward dbl-64 0xe.ef3af1b5d8p-4 : 0xc.dbc19333ad3bp-4 : inexact-ok
+= sin downward ldbl-96-intel 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3acp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffp-4L : inexact-ok
+= sin upward ldbl-96-intel 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3acp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3acp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3acp-4L : inexact-ok
+= sin downward ldbl-128 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffffffc0a0c4958p-4L : inexact-ok
+= sin tonearest ldbl-128 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffffffc0a0c496p-4L : inexact-ok
+= sin towardzero ldbl-128 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffffffc0a0c4958p-4L : inexact-ok
+= sin upward ldbl-128 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffffffc0a0c496p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffffffc0a0c48p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffffffc0a0c48p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffffffc0a0c48p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xe.ef3af1b5d8p-4L : 0xc.dbc19333ad3abffffffc0a0c4cp-4L : inexact-ok
+= sin downward ldbl-96-intel 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3acp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac01p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3acp-4L : inexact-ok
+= sin upward ldbl-96-intel 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac01p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3acp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac01p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3acp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac01p-4L : inexact-ok
+= sin downward ldbl-128 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac0098583fa6f614p-4L : inexact-ok
+= sin tonearest ldbl-128 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac0098583fa6f6148p-4L : inexact-ok
+= sin towardzero ldbl-128 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac0098583fa6f614p-4L : inexact-ok
+= sin upward ldbl-128 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac0098583fa6f6148p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac0098583fa6f6p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac0098583fa6f6p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac0098583fa6f6p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xe.ef3af1b5d800001p-4L : 0xc.dbc19333ad3ac0098583fa6f64p-4L : inexact-ok
+= sin downward ldbl-128 0xe.ef3af1b5d800000000000000014p-4L : 0xc.dbc19333ad3abffffffc0a0c4a18p-4L : inexact-ok
+= sin tonearest ldbl-128 0xe.ef3af1b5d800000000000000014p-4L : 0xc.dbc19333ad3abffffffc0a0c4a18p-4L : inexact-ok
+= sin towardzero ldbl-128 0xe.ef3af1b5d800000000000000014p-4L : 0xc.dbc19333ad3abffffffc0a0c4a18p-4L : inexact-ok
+= sin upward ldbl-128 0xe.ef3af1b5d800000000000000014p-4L : 0xc.dbc19333ad3abffffffc0a0c4a2p-4L : inexact-ok
+= sin downward ldbl-128 0xe.ef3af1b5d8000000000000000138p-4L : 0xc.dbc19333ad3abffffffc0a0c4a1p-4L : inexact-ok
+= sin tonearest ldbl-128 0xe.ef3af1b5d8000000000000000138p-4L : 0xc.dbc19333ad3abffffffc0a0c4a18p-4L : inexact-ok
+= sin towardzero ldbl-128 0xe.ef3af1b5d8000000000000000138p-4L : 0xc.dbc19333ad3abffffffc0a0c4a1p-4L : inexact-ok
+= sin upward ldbl-128 0xe.ef3af1b5d8000000000000000138p-4L : 0xc.dbc19333ad3abffffffc0a0c4a18p-4L : inexact-ok
+= sin downward ldbl-128 0xe.ef3af1b5d80000000000000004p-4L : 0xc.dbc19333ad3abffffffc0a0c4bb8p-4L : inexact-ok
+= sin tonearest ldbl-128 0xe.ef3af1b5d80000000000000004p-4L : 0xc.dbc19333ad3abffffffc0a0c4bcp-4L : inexact-ok
+= sin towardzero ldbl-128 0xe.ef3af1b5d80000000000000004p-4L : 0xc.dbc19333ad3abffffffc0a0c4bb8p-4L : inexact-ok
+= sin upward ldbl-128 0xe.ef3af1b5d80000000000000004p-4L : 0xc.dbc19333ad3abffffffc0a0c4bcp-4L : inexact-ok
+= sin downward ldbl-128ibm 0xe.ef3af1b5d80000000000000004p-4L : 0xc.dbc19333ad3abffffffc0a0c48p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xe.ef3af1b5d80000000000000004p-4L : 0xc.dbc19333ad3abffffffc0a0c4cp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xe.ef3af1b5d80000000000000004p-4L : 0xc.dbc19333ad3abffffffc0a0c48p-4L : inexact-ok
+= sin upward ldbl-128ibm 0xe.ef3af1b5d80000000000000004p-4L : 0xc.dbc19333ad3abffffffc0a0c4cp-4L : inexact-ok
+sin 2.3328432680770916363144351635128
+= sin downward flt-32 0x2.553538p+0f : 0xb.93255p-4f : inexact-ok
+= sin tonearest flt-32 0x2.553538p+0f : 0xb.93256p-4f : inexact-ok
+= sin towardzero flt-32 0x2.553538p+0f : 0xb.93255p-4f : inexact-ok
+= sin upward flt-32 0x2.553538p+0f : 0xb.93256p-4f : inexact-ok
+= sin downward dbl-64 0x2.553538p+0 : 0xb.93255854754ap-4 : inexact-ok
+= sin tonearest dbl-64 0x2.553538p+0 : 0xb.93255854754ap-4 : inexact-ok
+= sin towardzero dbl-64 0x2.553538p+0 : 0xb.93255854754ap-4 : inexact-ok
+= sin upward dbl-64 0x2.553538p+0 : 0xb.93255854754a8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x2.553538p+0L : 0xb.93255854754a36dp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x2.553538p+0L : 0xb.93255854754a36dp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x2.553538p+0L : 0xb.93255854754a36dp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x2.553538p+0L : 0xb.93255854754a36ep-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x2.553538p+0L : 0xb.93255854754a36dp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x2.553538p+0L : 0xb.93255854754a36dp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x2.553538p+0L : 0xb.93255854754a36dp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x2.553538p+0L : 0xb.93255854754a36ep-4L : inexact-ok
+= sin downward ldbl-128 0x2.553538p+0L : 0xb.93255854754a36d261581d7c0da8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.553538p+0L : 0xb.93255854754a36d261581d7c0da8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.553538p+0L : 0xb.93255854754a36d261581d7c0da8p-4L : inexact-ok
+= sin upward ldbl-128 0x2.553538p+0L : 0xb.93255854754a36d261581d7c0dbp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x2.553538p+0L : 0xb.93255854754a36d261581d7c0cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2.553538p+0L : 0xb.93255854754a36d261581d7c0cp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2.553538p+0L : 0xb.93255854754a36d261581d7c0cp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x2.553538p+0L : 0xb.93255854754a36d261581d7c1p-4L : inexact-ok
+= sin downward flt-32 0x2.553534p+0f : 0xb.93258p-4f : inexact-ok
+= sin tonearest flt-32 0x2.553534p+0f : 0xb.93258p-4f : inexact-ok
+= sin towardzero flt-32 0x2.553534p+0f : 0xb.93258p-4f : inexact-ok
+= sin upward flt-32 0x2.553534p+0f : 0xb.93259p-4f : inexact-ok
+= sin downward dbl-64 0x2.553534p+0 : 0xb.9325848408068p-4 : inexact-ok
+= sin tonearest dbl-64 0x2.553534p+0 : 0xb.932584840807p-4 : inexact-ok
+= sin towardzero dbl-64 0x2.553534p+0 : 0xb.9325848408068p-4 : inexact-ok
+= sin upward dbl-64 0x2.553534p+0 : 0xb.932584840807p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x2.553534p+0L : 0xb.932584840806c6p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x2.553534p+0L : 0xb.932584840806c61p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x2.553534p+0L : 0xb.932584840806c6p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x2.553534p+0L : 0xb.932584840806c61p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x2.553534p+0L : 0xb.932584840806c6p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x2.553534p+0L : 0xb.932584840806c61p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x2.553534p+0L : 0xb.932584840806c6p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x2.553534p+0L : 0xb.932584840806c61p-4L : inexact-ok
+= sin downward ldbl-128 0x2.553534p+0L : 0xb.932584840806c6090aefd5f25048p-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.553534p+0L : 0xb.932584840806c6090aefd5f2505p-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.553534p+0L : 0xb.932584840806c6090aefd5f25048p-4L : inexact-ok
+= sin upward ldbl-128 0x2.553534p+0L : 0xb.932584840806c6090aefd5f2505p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x2.553534p+0L : 0xb.932584840806c6090aefd5f25p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2.553534p+0L : 0xb.932584840806c6090aefd5f25p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2.553534p+0L : 0xb.932584840806c6090aefd5f25p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x2.553534p+0L : 0xb.932584840806c6090aefd5f254p-4L : inexact-ok
+= sin downward dbl-64 0x2.5535376715bap+0 : 0xb.93255eeda102p-4 : inexact-ok
+= sin tonearest dbl-64 0x2.5535376715bap+0 : 0xb.93255eeda1028p-4 : inexact-ok
+= sin towardzero dbl-64 0x2.5535376715bap+0 : 0xb.93255eeda102p-4 : inexact-ok
+= sin upward dbl-64 0x2.5535376715bap+0 : 0xb.93255eeda1028p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x2.5535376715bap+0L : 0xb.93255eeda1024p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x2.5535376715bap+0L : 0xb.93255eeda1024p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x2.5535376715bap+0L : 0xb.93255eeda1024p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x2.5535376715bap+0L : 0xb.93255eeda102401p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x2.5535376715bap+0L : 0xb.93255eeda1024p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x2.5535376715bap+0L : 0xb.93255eeda1024p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x2.5535376715bap+0L : 0xb.93255eeda1024p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x2.5535376715bap+0L : 0xb.93255eeda102401p-4L : inexact-ok
+= sin downward ldbl-128 0x2.5535376715bap+0L : 0xb.93255eeda10240000004f6fd44f8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.5535376715bap+0L : 0xb.93255eeda10240000004f6fd44f8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.5535376715bap+0L : 0xb.93255eeda10240000004f6fd44f8p-4L : inexact-ok
+= sin upward ldbl-128 0x2.5535376715bap+0L : 0xb.93255eeda10240000004f6fd45p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x2.5535376715bap+0L : 0xb.93255eeda10240000004f6fd44p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2.5535376715bap+0L : 0xb.93255eeda10240000004f6fd44p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2.5535376715bap+0L : 0xb.93255eeda10240000004f6fd44p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x2.5535376715bap+0L : 0xb.93255eeda10240000004f6fd48p-4L : inexact-ok
+= sin downward dbl-64 0x2.5535376715b9ep+0 : 0xb.93255eeda1038p-4 : inexact-ok
+= sin tonearest dbl-64 0x2.5535376715b9ep+0 : 0xb.93255eeda1038p-4 : inexact-ok
+= sin towardzero dbl-64 0x2.5535376715b9ep+0 : 0xb.93255eeda1038p-4 : inexact-ok
+= sin upward dbl-64 0x2.5535376715b9ep+0 : 0xb.93255eeda104p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x2.5535376715b9ep+0L : 0xb.93255eeda103a18p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x2.5535376715b9ep+0L : 0xb.93255eeda103a18p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x2.5535376715b9ep+0L : 0xb.93255eeda103a18p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x2.5535376715b9ep+0L : 0xb.93255eeda103a18p-4L : inexact-ok
+= sin downward ldbl-128 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17c97f0fb512518p-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17c97f0fb51252p-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17c97f0fb512518p-4L : inexact-ok
+= sin upward ldbl-128 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17c97f0fb51252p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17c97f0fb5124p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17c97f0fb5124p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17c97f0fb5124p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x2.5535376715b9ep+0L : 0xb.93255eeda103a17c97f0fb5128p-4L : inexact-ok
+= sin downward ldbl-96-intel 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102403p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102403p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102403p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102403p-4L : inexact-ok
+= sin downward ldbl-128 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402c2f97f47dcf78p-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402c2f97f47dcf78p-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402c2f97f47dcf78p-4L : inexact-ok
+= sin upward ldbl-128 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402c2f97f47dcf8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402c2f97f47dccp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402c2f97f47ddp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402c2f97f47dccp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x2.5535376715b9fffcp+0L : 0xb.93255eeda102402c2f97f47ddp-4L : inexact-ok
+= sin downward ldbl-128 0x2.5535376715b9ffffffffffffff7ap+0L : 0xb.93255eeda10240000004f6fd4acp-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.5535376715b9ffffffffffffff7ap+0L : 0xb.93255eeda10240000004f6fd4acp-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.5535376715b9ffffffffffffff7ap+0L : 0xb.93255eeda10240000004f6fd4acp-4L : inexact-ok
+= sin upward ldbl-128 0x2.5535376715b9ffffffffffffff7ap+0L : 0xb.93255eeda10240000004f6fd4ac8p-4L : inexact-ok
+= sin downward ldbl-128 0x2.5535376715b9ffffffffffffff78p+0L : 0xb.93255eeda10240000004f6fd4ad8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.5535376715b9ffffffffffffff78p+0L : 0xb.93255eeda10240000004f6fd4ad8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.5535376715b9ffffffffffffff78p+0L : 0xb.93255eeda10240000004f6fd4ad8p-4L : inexact-ok
+= sin upward ldbl-128 0x2.5535376715b9ffffffffffffff78p+0L : 0xb.93255eeda10240000004f6fd4aep-4L : inexact-ok
+= sin downward ldbl-128 0x2.5535376715b9ffffffffffffffp+0L : 0xb.93255eeda10240000004f6fd5p-4L : inexact-ok
+= sin tonearest ldbl-128 0x2.5535376715b9ffffffffffffffp+0L : 0xb.93255eeda10240000004f6fd5008p-4L : inexact-ok
+= sin towardzero ldbl-128 0x2.5535376715b9ffffffffffffffp+0L : 0xb.93255eeda10240000004f6fd5p-4L : inexact-ok
+= sin upward ldbl-128 0x2.5535376715b9ffffffffffffffp+0L : 0xb.93255eeda10240000004f6fd5008p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x2.5535376715b9ffffffffffffffp+0L : 0xb.93255eeda10240000004f6fd5p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2.5535376715b9ffffffffffffffp+0L : 0xb.93255eeda10240000004f6fd5p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2.5535376715b9ffffffffffffffp+0L : 0xb.93255eeda10240000004f6fd5p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x2.5535376715b9ffffffffffffffp+0L : 0xb.93255eeda10240000004f6fd54p-4L : inexact-ok
+sin 3.7439477503636453548097051680088
+= sin downward flt-32 0x3.be736p+0f : -0x9.10bb5p-4f : inexact-ok
+= sin tonearest flt-32 0x3.be736p+0f : -0x9.10bb4p-4f : inexact-ok
+= sin towardzero flt-32 0x3.be736p+0f : -0x9.10bb4p-4f : inexact-ok
+= sin upward flt-32 0x3.be736p+0f : -0x9.10bb4p-4f : inexact-ok
+= sin downward dbl-64 0x3.be736p+0 : -0x9.10bb448d3cb08p-4 : inexact-ok
+= sin tonearest dbl-64 0x3.be736p+0 : -0x9.10bb448d3cbp-4 : inexact-ok
+= sin towardzero dbl-64 0x3.be736p+0 : -0x9.10bb448d3cbp-4 : inexact-ok
+= sin upward dbl-64 0x3.be736p+0 : -0x9.10bb448d3cbp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x3.be736p+0L : -0x9.10bb448d3cb0167p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3.be736p+0L : -0x9.10bb448d3cb0167p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3.be736p+0L : -0x9.10bb448d3cb0166p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3.be736p+0L : -0x9.10bb448d3cb0166p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3.be736p+0L : -0x9.10bb448d3cb0167p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3.be736p+0L : -0x9.10bb448d3cb0167p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3.be736p+0L : -0x9.10bb448d3cb0166p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3.be736p+0L : -0x9.10bb448d3cb0166p-4L : inexact-ok
+= sin downward ldbl-128 0x3.be736p+0L : -0x9.10bb448d3cb0166e220f3af793c8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.be736p+0L : -0x9.10bb448d3cb0166e220f3af793cp-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.be736p+0L : -0x9.10bb448d3cb0166e220f3af793cp-4L : inexact-ok
+= sin upward ldbl-128 0x3.be736p+0L : -0x9.10bb448d3cb0166e220f3af793cp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.be736p+0L : -0x9.10bb448d3cb0166e220f3af794p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.be736p+0L : -0x9.10bb448d3cb0166e220f3af794p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.be736p+0L : -0x9.10bb448d3cb0166e220f3af79p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.be736p+0L : -0x9.10bb448d3cb0166e220f3af79p-4L : inexact-ok
+= sin downward flt-32 0x3.be735cp+0f : -0x9.10bb1p-4f : inexact-ok
+= sin tonearest flt-32 0x3.be735cp+0f : -0x9.10bb1p-4f : inexact-ok
+= sin towardzero flt-32 0x3.be735cp+0f : -0x9.10bbp-4f : inexact-ok
+= sin upward flt-32 0x3.be735cp+0f : -0x9.10bbp-4f : inexact-ok
+= sin downward dbl-64 0x3.be735cp+0 : -0x9.10bb0fd0c39d8p-4 : inexact-ok
+= sin tonearest dbl-64 0x3.be735cp+0 : -0x9.10bb0fd0c39d8p-4 : inexact-ok
+= sin towardzero dbl-64 0x3.be735cp+0 : -0x9.10bb0fd0c39dp-4 : inexact-ok
+= sin upward dbl-64 0x3.be735cp+0 : -0x9.10bb0fd0c39dp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x3.be735cp+0L : -0x9.10bb0fd0c39d5ap-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3.be735cp+0L : -0x9.10bb0fd0c39d5ap-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3.be735cp+0L : -0x9.10bb0fd0c39d59fp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3.be735cp+0L : -0x9.10bb0fd0c39d59fp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3.be735cp+0L : -0x9.10bb0fd0c39d5ap-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3.be735cp+0L : -0x9.10bb0fd0c39d5ap-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3.be735cp+0L : -0x9.10bb0fd0c39d59fp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3.be735cp+0L : -0x9.10bb0fd0c39d59fp-4L : inexact-ok
+= sin downward ldbl-128 0x3.be735cp+0L : -0x9.10bb0fd0c39d59f8b7898e86413p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.be735cp+0L : -0x9.10bb0fd0c39d59f8b7898e86413p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.be735cp+0L : -0x9.10bb0fd0c39d59f8b7898e864128p-4L : inexact-ok
+= sin upward ldbl-128 0x3.be735cp+0L : -0x9.10bb0fd0c39d59f8b7898e864128p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.be735cp+0L : -0x9.10bb0fd0c39d59f8b7898e8644p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.be735cp+0L : -0x9.10bb0fd0c39d59f8b7898e864p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.be735cp+0L : -0x9.10bb0fd0c39d59f8b7898e864p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.be735cp+0L : -0x9.10bb0fd0c39d59f8b7898e864p-4L : inexact-ok
+= sin downward dbl-64 0x3.be735c19beap+0 : -0x9.10bb11242ecap-4 : inexact-ok
+= sin tonearest dbl-64 0x3.be735c19beap+0 : -0x9.10bb11242ecap-4 : inexact-ok
+= sin towardzero dbl-64 0x3.be735c19beap+0 : -0x9.10bb11242ec98p-4 : inexact-ok
+= sin upward dbl-64 0x3.be735c19beap+0 : -0x9.10bb11242ec98p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x3.be735c19beap+0L : -0x9.10bb11242ec9c01p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3.be735c19beap+0L : -0x9.10bb11242ec9cp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3.be735c19beap+0L : -0x9.10bb11242ec9cp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3.be735c19beap+0L : -0x9.10bb11242ec9cp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3.be735c19beap+0L : -0x9.10bb11242ec9c01p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3.be735c19beap+0L : -0x9.10bb11242ec9cp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3.be735c19beap+0L : -0x9.10bb11242ec9cp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3.be735c19beap+0L : -0x9.10bb11242ec9cp-4L : inexact-ok
+= sin downward ldbl-128 0x3.be735c19beap+0L : -0x9.10bb11242ec9c000000287a188ap-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.be735c19beap+0L : -0x9.10bb11242ec9c000000287a188ap-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.be735c19beap+0L : -0x9.10bb11242ec9c000000287a18898p-4L : inexact-ok
+= sin upward ldbl-128 0x3.be735c19beap+0L : -0x9.10bb11242ec9c000000287a18898p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.be735c19beap+0L : -0x9.10bb11242ec9c000000287a18cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.be735c19beap+0L : -0x9.10bb11242ec9c000000287a188p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.be735c19beap+0L : -0x9.10bb11242ec9c000000287a188p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.be735c19beap+0L : -0x9.10bb11242ec9c000000287a188p-4L : inexact-ok
+= sin downward dbl-64 0x3.be735c19be9fep+0 : -0x9.10bb11242ec88p-4 : inexact-ok
+= sin tonearest dbl-64 0x3.be735c19be9fep+0 : -0x9.10bb11242ec8p-4 : inexact-ok
+= sin towardzero dbl-64 0x3.be735c19be9fep+0 : -0x9.10bb11242ec8p-4 : inexact-ok
+= sin upward dbl-64 0x3.be735c19be9fep+0 : -0x9.10bb11242ec8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a2p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a2p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a2p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a2p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1p-4L : inexact-ok
+= sin downward ldbl-128 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1c3545a17906p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1c3545a17905f8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1c3545a17905f8p-4L : inexact-ok
+= sin upward ldbl-128 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1c3545a17905f8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1c3545a17908p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1c3545a17904p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1c3545a17904p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.be735c19be9fep+0L : -0x9.10bb11242ec81a1c3545a17904p-4L : inexact-ok
+= sin downward ldbl-96-intel 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfdp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfdp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfdp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfdp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcp-4L : inexact-ok
+= sin downward ldbl-128 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcb43893004c398p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcb43893004c39p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcb43893004c39p-4L : inexact-ok
+= sin upward ldbl-128 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcb43893004c39p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcb43893004c4p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcb43893004c4p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcb43893004cp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.be735c19be9ffffcp+0L : -0x9.10bb11242ec9bfcb43893004cp-4L : inexact-ok
+= sin downward ldbl-128 0x3.be735c19be9fffffffffffffffeap+0L : -0x9.10bb11242ec9c000000287a1878p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.be735c19be9fffffffffffffffeap+0L : -0x9.10bb11242ec9c000000287a1878p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.be735c19be9fffffffffffffffeap+0L : -0x9.10bb11242ec9c000000287a18778p-4L : inexact-ok
+= sin upward ldbl-128 0x3.be735c19be9fffffffffffffffeap+0L : -0x9.10bb11242ec9c000000287a18778p-4L : inexact-ok
+= sin downward ldbl-128 0x3.be735c19be9fffffffffffffffe8p+0L : -0x9.10bb11242ec9c000000287a18768p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.be735c19be9fffffffffffffffe8p+0L : -0x9.10bb11242ec9c000000287a1876p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.be735c19be9fffffffffffffffe8p+0L : -0x9.10bb11242ec9c000000287a1876p-4L : inexact-ok
+= sin upward ldbl-128 0x3.be735c19be9fffffffffffffffe8p+0L : -0x9.10bb11242ec9c000000287a1876p-4L : inexact-ok
+= sin downward ldbl-128 0x3.be735c19be9fffffffffffffffp+0L : -0x9.10bb11242ec9c000000287a17b78p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.be735c19be9fffffffffffffffp+0L : -0x9.10bb11242ec9c000000287a17b7p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.be735c19be9fffffffffffffffp+0L : -0x9.10bb11242ec9c000000287a17b7p-4L : inexact-ok
+= sin upward ldbl-128 0x3.be735c19be9fffffffffffffffp+0L : -0x9.10bb11242ec9c000000287a17b7p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.be735c19be9fffffffffffffffp+0L : -0x9.10bb11242ec9c000000287a17cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.be735c19be9fffffffffffffffp+0L : -0x9.10bb11242ec9c000000287a17cp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.be735c19be9fffffffffffffffp+0L : -0x9.10bb11242ec9c000000287a178p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.be735c19be9fffffffffffffffp+0L : -0x9.10bb11242ec9c000000287a178p-4L : inexact-ok
+sin 3.9225160069792437411706487182528
+= sin downward flt-32 0x3.ec2a04p+0f : -0xb.4352p-4f : inexact-ok
+= sin tonearest flt-32 0x3.ec2a04p+0f : -0xb.4352p-4f : inexact-ok
+= sin towardzero flt-32 0x3.ec2a04p+0f : -0xb.4351fp-4f : inexact-ok
+= sin upward flt-32 0x3.ec2a04p+0f : -0xb.4351fp-4f : inexact-ok
+= sin downward dbl-64 0x3.ec2a04p+0 : -0xb.4351fdda3d818p-4 : inexact-ok
+= sin tonearest dbl-64 0x3.ec2a04p+0 : -0xb.4351fdda3d818p-4 : inexact-ok
+= sin towardzero dbl-64 0x3.ec2a04p+0 : -0xb.4351fdda3d81p-4 : inexact-ok
+= sin upward dbl-64 0x3.ec2a04p+0 : -0xb.4351fdda3d81p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x3.ec2a04p+0L : -0xb.4351fdda3d81514p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3.ec2a04p+0L : -0xb.4351fdda3d81514p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3.ec2a04p+0L : -0xb.4351fdda3d81513p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3.ec2a04p+0L : -0xb.4351fdda3d81513p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3.ec2a04p+0L : -0xb.4351fdda3d81514p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3.ec2a04p+0L : -0xb.4351fdda3d81514p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3.ec2a04p+0L : -0xb.4351fdda3d81513p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3.ec2a04p+0L : -0xb.4351fdda3d81513p-4L : inexact-ok
+= sin downward ldbl-128 0x3.ec2a04p+0L : -0xb.4351fdda3d81513dedde4fd2cd28p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.ec2a04p+0L : -0xb.4351fdda3d81513dedde4fd2cd2p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.ec2a04p+0L : -0xb.4351fdda3d81513dedde4fd2cd2p-4L : inexact-ok
+= sin upward ldbl-128 0x3.ec2a04p+0L : -0xb.4351fdda3d81513dedde4fd2cd2p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.ec2a04p+0L : -0xb.4351fdda3d81513dedde4fd2dp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.ec2a04p+0L : -0xb.4351fdda3d81513dedde4fd2ccp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.ec2a04p+0L : -0xb.4351fdda3d81513dedde4fd2ccp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.ec2a04p+0L : -0xb.4351fdda3d81513dedde4fd2ccp-4L : inexact-ok
+= sin downward flt-32 0x3.ec2ap+0f : -0xb.4351ep-4f : inexact-ok
+= sin tonearest flt-32 0x3.ec2ap+0f : -0xb.4351dp-4f : inexact-ok
+= sin towardzero flt-32 0x3.ec2ap+0f : -0xb.4351dp-4f : inexact-ok
+= sin upward flt-32 0x3.ec2ap+0f : -0xb.4351dp-4f : inexact-ok
+= sin downward dbl-64 0x3.ec2ap+0 : -0xb.4351d06546e78p-4 : inexact-ok
+= sin tonearest dbl-64 0x3.ec2ap+0 : -0xb.4351d06546e7p-4 : inexact-ok
+= sin towardzero dbl-64 0x3.ec2ap+0 : -0xb.4351d06546e7p-4 : inexact-ok
+= sin upward dbl-64 0x3.ec2ap+0 : -0xb.4351d06546e7p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x3.ec2ap+0L : -0xb.4351d06546e7182p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3.ec2ap+0L : -0xb.4351d06546e7181p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3.ec2ap+0L : -0xb.4351d06546e7181p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3.ec2ap+0L : -0xb.4351d06546e7181p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3.ec2ap+0L : -0xb.4351d06546e7182p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3.ec2ap+0L : -0xb.4351d06546e7181p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3.ec2ap+0L : -0xb.4351d06546e7181p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3.ec2ap+0L : -0xb.4351d06546e7181p-4L : inexact-ok
+= sin downward ldbl-128 0x3.ec2ap+0L : -0xb.4351d06546e7181306453a5b2ec8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.ec2ap+0L : -0xb.4351d06546e7181306453a5b2ecp-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.ec2ap+0L : -0xb.4351d06546e7181306453a5b2ecp-4L : inexact-ok
+= sin upward ldbl-128 0x3.ec2ap+0L : -0xb.4351d06546e7181306453a5b2ecp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.ec2ap+0L : -0xb.4351d06546e7181306453a5b3p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.ec2ap+0L : -0xb.4351d06546e7181306453a5b3p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.ec2ap+0L : -0xb.4351d06546e7181306453a5b2cp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.ec2ap+0L : -0xb.4351d06546e7181306453a5b2cp-4L : inexact-ok
+= sin downward dbl-64 0x3.ec2a0250032a2p+0 : -0xb.4351eaad0985p-4 : inexact-ok
+= sin tonearest dbl-64 0x3.ec2a0250032a2p+0 : -0xb.4351eaad09848p-4 : inexact-ok
+= sin towardzero dbl-64 0x3.ec2a0250032a2p+0 : -0xb.4351eaad09848p-4 : inexact-ok
+= sin upward dbl-64 0x3.ec2a0250032a2p+0 : -0xb.4351eaad09848p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984abbp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984abap-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984abap-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984abap-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984abbp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984abap-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984abap-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984abap-4L : inexact-ok
+= sin downward ldbl-128 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984aba7b4606b57ad68p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984aba7b4606b57ad6p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984aba7b4606b57ad6p-4L : inexact-ok
+= sin upward ldbl-128 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984aba7b4606b57ad6p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984aba7b4606b57bp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984aba7b4606b57acp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984aba7b4606b57acp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.ec2a0250032a2p+0L : -0xb.4351eaad0984aba7b4606b57acp-4L : inexact-ok
+= sin downward dbl-64 0x3.ec2a0250032ap+0 : -0xb.4351eaad09838p-4 : inexact-ok
+= sin tonearest dbl-64 0x3.ec2a0250032ap+0 : -0xb.4351eaad0983p-4 : inexact-ok
+= sin towardzero dbl-64 0x3.ec2a0250032ap+0 : -0xb.4351eaad0983p-4 : inexact-ok
+= sin upward dbl-64 0x3.ec2a0250032ap+0 : -0xb.4351eaad0983p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x3.ec2a0250032ap+0L : -0xb.4351eaad09834p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3.ec2a0250032ap+0L : -0xb.4351eaad09834p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833ffp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833ffp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3.ec2a0250032ap+0L : -0xb.4351eaad09834p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3.ec2a0250032ap+0L : -0xb.4351eaad09834p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833ffp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833ffp-4L : inexact-ok
+= sin downward ldbl-128 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833fffffff47a70dd8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833fffffff47a70dd8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833fffffff47a70ddp-4L : inexact-ok
+= sin upward ldbl-128 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833fffffff47a70ddp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833fffffff47a71p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833fffffff47a70cp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833fffffff47a70cp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.ec2a0250032ap+0L : -0xb.4351eaad09833fffffff47a70cp-4L : inexact-ok
+= sin downward ldbl-96-intel 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983403p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983403p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983403p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983403p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402p-4L : inexact-ok
+= sin downward ldbl-128 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402d74f5d3cb83fp-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402d74f5d3cb83fp-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402d74f5d3cb83e8p-4L : inexact-ok
+= sin upward ldbl-128 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402d74f5d3cb83e8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402d74f5d3cb84p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402d74f5d3cb84p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402d74f5d3cb8p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.ec2a0250032a0004p+0L : -0xb.4351eaad0983402d74f5d3cb8p-4L : inexact-ok
+= sin downward ldbl-128 0x3.ec2a0250032a0000000000000072p+0L : -0xb.4351eaad09833fffffff47a712e8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.ec2a0250032a0000000000000072p+0L : -0xb.4351eaad09833fffffff47a712e8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.ec2a0250032a0000000000000072p+0L : -0xb.4351eaad09833fffffff47a712ep-4L : inexact-ok
+= sin upward ldbl-128 0x3.ec2a0250032a0000000000000072p+0L : -0xb.4351eaad09833fffffff47a712ep-4L : inexact-ok
+= sin downward ldbl-128 0x3.ec2a0250032a000000000000007p+0L : -0xb.4351eaad09833fffffff47a712dp-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.ec2a0250032a000000000000007p+0L : -0xb.4351eaad09833fffffff47a712dp-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.ec2a0250032a000000000000007p+0L : -0xb.4351eaad09833fffffff47a712c8p-4L : inexact-ok
+= sin upward ldbl-128 0x3.ec2a0250032a000000000000007p+0L : -0xb.4351eaad09833fffffff47a712c8p-4L : inexact-ok
+= sin downward ldbl-128 0x3.ec2a0250032a00000000000001p+0L : -0xb.4351eaad09833fffffff47a71938p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3.ec2a0250032a00000000000001p+0L : -0xb.4351eaad09833fffffff47a7193p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3.ec2a0250032a00000000000001p+0L : -0xb.4351eaad09833fffffff47a7193p-4L : inexact-ok
+= sin upward ldbl-128 0x3.ec2a0250032a00000000000001p+0L : -0xb.4351eaad09833fffffff47a7193p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3.ec2a0250032a00000000000001p+0L : -0xb.4351eaad09833fffffff47a71cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3.ec2a0250032a00000000000001p+0L : -0xb.4351eaad09833fffffff47a718p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3.ec2a0250032a00000000000001p+0L : -0xb.4351eaad09833fffffff47a718p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3.ec2a0250032a00000000000001p+0L : -0xb.4351eaad09833fffffff47a718p-4L : inexact-ok
+sin 4.0711651639931289992091478779912
+= sin downward flt-32 0x4.1237e8p+0f : -0xc.d263ap-4f : inexact-ok
+= sin tonearest flt-32 0x4.1237e8p+0f : -0xc.d263ap-4f : inexact-ok
+= sin towardzero flt-32 0x4.1237e8p+0f : -0xc.d2639p-4f : inexact-ok
+= sin upward flt-32 0x4.1237e8p+0f : -0xc.d2639p-4f : inexact-ok
+= sin downward dbl-64 0x4.1237e8p+0 : -0xc.d2639f1afc7f8p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.1237e8p+0 : -0xc.d2639f1afc7f8p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.1237e8p+0 : -0xc.d2639f1afc7fp-4 : inexact-ok
+= sin upward dbl-64 0x4.1237e8p+0 : -0xc.d2639f1afc7fp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.1237e8p+0L : -0xc.d2639f1afc7f46ap-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.1237e8p+0L : -0xc.d2639f1afc7f46ap-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.1237e8p+0L : -0xc.d2639f1afc7f469p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.1237e8p+0L : -0xc.d2639f1afc7f469p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.1237e8p+0L : -0xc.d2639f1afc7f46ap-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.1237e8p+0L : -0xc.d2639f1afc7f46ap-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.1237e8p+0L : -0xc.d2639f1afc7f469p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.1237e8p+0L : -0xc.d2639f1afc7f469p-4L : inexact-ok
+= sin downward ldbl-128 0x4.1237e8p+0L : -0xc.d2639f1afc7f4698649bd4cf58dp-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.1237e8p+0L : -0xc.d2639f1afc7f4698649bd4cf58c8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.1237e8p+0L : -0xc.d2639f1afc7f4698649bd4cf58c8p-4L : inexact-ok
+= sin upward ldbl-128 0x4.1237e8p+0L : -0xc.d2639f1afc7f4698649bd4cf58c8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.1237e8p+0L : -0xc.d2639f1afc7f4698649bd4cf5cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.1237e8p+0L : -0xc.d2639f1afc7f4698649bd4cf58p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.1237e8p+0L : -0xc.d2639f1afc7f4698649bd4cf58p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.1237e8p+0L : -0xc.d2639f1afc7f4698649bd4cf58p-4L : inexact-ok
+= sin downward flt-32 0x4.1237ep+0f : -0xc.d2636p-4f : inexact-ok
+= sin tonearest flt-32 0x4.1237ep+0f : -0xc.d2635p-4f : inexact-ok
+= sin towardzero flt-32 0x4.1237ep+0f : -0xc.d2635p-4f : inexact-ok
+= sin upward flt-32 0x4.1237ep+0f : -0xc.d2635p-4f : inexact-ok
+= sin downward dbl-64 0x4.1237ep+0 : -0xc.d2635289f075p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.1237ep+0 : -0xc.d2635289f075p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.1237ep+0 : -0xc.d2635289f0748p-4 : inexact-ok
+= sin upward dbl-64 0x4.1237ep+0 : -0xc.d2635289f0748p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.1237ep+0L : -0xc.d2635289f074d2cp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.1237ep+0L : -0xc.d2635289f074d2bp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.1237ep+0L : -0xc.d2635289f074d2bp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.1237ep+0L : -0xc.d2635289f074d2bp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.1237ep+0L : -0xc.d2635289f074d2cp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.1237ep+0L : -0xc.d2635289f074d2bp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.1237ep+0L : -0xc.d2635289f074d2bp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.1237ep+0L : -0xc.d2635289f074d2bp-4L : inexact-ok
+= sin downward ldbl-128 0x4.1237ep+0L : -0xc.d2635289f074d2b2df33331ddd4p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.1237ep+0L : -0xc.d2635289f074d2b2df33331ddd4p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.1237ep+0L : -0xc.d2635289f074d2b2df33331ddd38p-4L : inexact-ok
+= sin upward ldbl-128 0x4.1237ep+0L : -0xc.d2635289f074d2b2df33331ddd38p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.1237ep+0L : -0xc.d2635289f074d2b2df33331dep-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.1237ep+0L : -0xc.d2635289f074d2b2df33331ddcp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.1237ep+0L : -0xc.d2635289f074d2b2df33331ddcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.1237ep+0L : -0xc.d2635289f074d2b2df33331ddcp-4L : inexact-ok
+= sin downward dbl-64 0x4.1237e153f7084p+0 : -0xc.d2635f3faf598p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.1237e153f7084p+0 : -0xc.d2635f3faf59p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.1237e153f7084p+0 : -0xc.d2635f3faf59p-4 : inexact-ok
+= sin upward dbl-64 0x4.1237e153f7084p+0 : -0xc.d2635f3faf59p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59249p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59249p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59249p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59249p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248p-4L : inexact-ok
+= sin downward ldbl-128 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248868df5425cd98p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248868df5425cd98p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248868df5425cd9p-4L : inexact-ok
+= sin upward ldbl-128 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248868df5425cd9p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248868df5425dp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248868df5425ccp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248868df5425ccp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.1237e153f7084p+0L : -0xc.d2635f3faf59248868df5425ccp-4L : inexact-ok
+= sin downward dbl-64 0x4.1237e153f708p+0 : -0xc.d2635f3faf57p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.1237e153f708p+0 : -0xc.d2635f3faf568p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.1237e153f708p+0 : -0xc.d2635f3faf568p-4 : inexact-ok
+= sin upward dbl-64 0x4.1237e153f708p+0 : -0xc.d2635f3faf568p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.1237e153f708p+0L : -0xc.d2635f3faf56cp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.1237e153f708p+0L : -0xc.d2635f3faf56cp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.1237e153f708p+0L : -0xc.d2635f3faf56cp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.1237e153f708p+0L : -0xc.d2635f3faf56cp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffp-4L : inexact-ok
+= sin downward ldbl-128 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffffffb0fcac28p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffffffb0fcac28p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffffffb0fcac278p-4L : inexact-ok
+= sin upward ldbl-128 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffffffb0fcac278p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffffffb0fcac4p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffffffb0fcac4p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffffffb0fcacp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.1237e153f708p+0L : -0xc.d2635f3faf56bffffffb0fcacp-4L : inexact-ok
+= sin downward ldbl-96-intel 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c05p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c05p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c05p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c05p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04p-4L : inexact-ok
+= sin downward ldbl-128 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04c91082c534dfp-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04c91082c534de8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04c91082c534de8p-4L : inexact-ok
+= sin upward ldbl-128 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04c91082c534de8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04c91082c535p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04c91082c534cp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04c91082c534cp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.1237e153f7080008p+0L : -0xc.d2635f3faf56c04c91082c534cp-4L : inexact-ok
+= sin downward ldbl-128 0x4.1237e153f7080000000000000004p+0L : -0xc.d2635f3faf56bffffffb0fcac2a8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.1237e153f7080000000000000004p+0L : -0xc.d2635f3faf56bffffffb0fcac2ap-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.1237e153f7080000000000000004p+0L : -0xc.d2635f3faf56bffffffb0fcac2ap-4L : inexact-ok
+= sin upward ldbl-128 0x4.1237e153f7080000000000000004p+0L : -0xc.d2635f3faf56bffffffb0fcac2ap-4L : inexact-ok
+= sin downward ldbl-128 0x4.1237e153f70800000000000002p+0L : -0xc.d2635f3faf56bffffffb0fcad5a8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.1237e153f70800000000000002p+0L : -0xc.d2635f3faf56bffffffb0fcad5ap-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.1237e153f70800000000000002p+0L : -0xc.d2635f3faf56bffffffb0fcad5ap-4L : inexact-ok
+= sin upward ldbl-128 0x4.1237e153f70800000000000002p+0L : -0xc.d2635f3faf56bffffffb0fcad5ap-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.1237e153f70800000000000002p+0L : -0xc.d2635f3faf56bffffffb0fcad8p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.1237e153f70800000000000002p+0L : -0xc.d2635f3faf56bffffffb0fcad4p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.1237e153f70800000000000002p+0L : -0xc.d2635f3faf56bffffffb0fcad4p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.1237e153f70800000000000002p+0L : -0xc.d2635f3faf56bffffffb0fcad4p-4L : inexact-ok
+sin 4.7858438478542097982426639646292
+= sin downward flt-32 0x4.c92d1p+0f : -0xf.f4f47p-4f : inexact-ok
+= sin tonearest flt-32 0x4.c92d1p+0f : -0xf.f4f47p-4f : inexact-ok
+= sin towardzero flt-32 0x4.c92d1p+0f : -0xf.f4f46p-4f : inexact-ok
+= sin upward flt-32 0x4.c92d1p+0f : -0xf.f4f46p-4f : inexact-ok
+= sin downward dbl-64 0x4.c92d1p+0 : -0xf.f4f46a017cb9p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.c92d1p+0 : -0xf.f4f46a017cb88p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.c92d1p+0 : -0xf.f4f46a017cb88p-4 : inexact-ok
+= sin upward dbl-64 0x4.c92d1p+0 : -0xf.f4f46a017cb88p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.c92d1p+0L : -0xf.f4f46a017cb884p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.c92d1p+0L : -0xf.f4f46a017cb884p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.c92d1p+0L : -0xf.f4f46a017cb883fp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.c92d1p+0L : -0xf.f4f46a017cb883fp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.c92d1p+0L : -0xf.f4f46a017cb884p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.c92d1p+0L : -0xf.f4f46a017cb884p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.c92d1p+0L : -0xf.f4f46a017cb883fp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.c92d1p+0L : -0xf.f4f46a017cb883fp-4L : inexact-ok
+= sin downward ldbl-128 0x4.c92d1p+0L : -0xf.f4f46a017cb883f95b64a197e97p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.c92d1p+0L : -0xf.f4f46a017cb883f95b64a197e97p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.c92d1p+0L : -0xf.f4f46a017cb883f95b64a197e968p-4L : inexact-ok
+= sin upward ldbl-128 0x4.c92d1p+0L : -0xf.f4f46a017cb883f95b64a197e968p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.c92d1p+0L : -0xf.f4f46a017cb883f95b64a197ecp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.c92d1p+0L : -0xf.f4f46a017cb883f95b64a197e8p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.c92d1p+0L : -0xf.f4f46a017cb883f95b64a197e8p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.c92d1p+0L : -0xf.f4f46a017cb883f95b64a197e8p-4L : inexact-ok
+= sin downward flt-32 0x4.c92d08p+0f : -0xf.f4f48p-4f : inexact-ok
+= sin tonearest flt-32 0x4.c92d08p+0f : -0xf.f4f47p-4f : inexact-ok
+= sin towardzero flt-32 0x4.c92d08p+0f : -0xf.f4f47p-4f : inexact-ok
+= sin upward flt-32 0x4.c92d08p+0f : -0xf.f4f47p-4f : inexact-ok
+= sin downward dbl-64 0x4.c92d08p+0 : -0xf.f4f4736648dc8p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.c92d08p+0 : -0xf.f4f4736648dcp-4 : inexact-ok
+= sin towardzero dbl-64 0x4.c92d08p+0 : -0xf.f4f4736648dcp-4 : inexact-ok
+= sin upward dbl-64 0x4.c92d08p+0 : -0xf.f4f4736648dcp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.c92d08p+0L : -0xf.f4f4736648dc2a1p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.c92d08p+0L : -0xf.f4f4736648dc2ap-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.c92d08p+0L : -0xf.f4f4736648dc2ap-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.c92d08p+0L : -0xf.f4f4736648dc2ap-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.c92d08p+0L : -0xf.f4f4736648dc2a1p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.c92d08p+0L : -0xf.f4f4736648dc2ap-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.c92d08p+0L : -0xf.f4f4736648dc2ap-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.c92d08p+0L : -0xf.f4f4736648dc2ap-4L : inexact-ok
+= sin downward ldbl-128 0x4.c92d08p+0L : -0xf.f4f4736648dc2a042045142724ap-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.c92d08p+0L : -0xf.f4f4736648dc2a04204514272498p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.c92d08p+0L : -0xf.f4f4736648dc2a04204514272498p-4L : inexact-ok
+= sin upward ldbl-128 0x4.c92d08p+0L : -0xf.f4f4736648dc2a04204514272498p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.c92d08p+0L : -0xf.f4f4736648dc2a042045142728p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.c92d08p+0L : -0xf.f4f4736648dc2a042045142724p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.c92d08p+0L : -0xf.f4f4736648dc2a042045142724p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.c92d08p+0L : -0xf.f4f4736648dc2a042045142724p-4L : inexact-ok
+= sin downward dbl-64 0x4.c92d0ffa4bf04p+0 : -0xf.f4f46a082f28p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.c92d0ffa4bf04p+0 : -0xf.f4f46a082f28p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.c92d0ffa4bf04p+0 : -0xf.f4f46a082f278p-4 : inexact-ok
+= sin upward dbl-64 0x4.c92d0ffa4bf04p+0 : -0xf.f4f46a082f278p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4ep-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4ep-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4dp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4dp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4ep-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4ep-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4dp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4dp-4L : inexact-ok
+= sin downward ldbl-128 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4d98f09e3c6cf38p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4d98f09e3c6cf3p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4d98f09e3c6cf3p-4L : inexact-ok
+= sin upward ldbl-128 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4d98f09e3c6cf3p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4d98f09e3c6dp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4d98f09e3c6dp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4d98f09e3c6ccp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.c92d0ffa4bf04p+0L : -0xf.f4f46a082f27f4d98f09e3c6ccp-4L : inexact-ok
+= sin downward dbl-64 0x4.c92d0ffa4bfp+0 : -0xf.f4f46a082f288p-4 : inexact-ok
+= sin tonearest dbl-64 0x4.c92d0ffa4bfp+0 : -0xf.f4f46a082f288p-4 : inexact-ok
+= sin towardzero dbl-64 0x4.c92d0ffa4bfp+0 : -0xf.f4f46a082f28p-4 : inexact-ok
+= sin upward dbl-64 0x4.c92d0ffa4bfp+0 : -0xf.f4f46a082f28p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f28401p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f284p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f284p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f284p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f28401p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f284p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f284p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f284p-4L : inexact-ok
+= sin downward ldbl-128 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f2840000005480a4ap-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f2840000005480a49f8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f2840000005480a49f8p-4L : inexact-ok
+= sin upward ldbl-128 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f2840000005480a49f8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f2840000005480a4cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f2840000005480a48p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f2840000005480a48p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.c92d0ffa4bfp+0L : -0xf.f4f46a082f2840000005480a48p-4L : inexact-ok
+= sin downward ldbl-96-intel 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f284p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ffp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ffp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ffp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f284p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ffp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ffp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ffp-4L : inexact-ok
+= sin downward ldbl-128 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ff69b37289dc1ap-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ff69b37289dc198p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ff69b37289dc198p-4L : inexact-ok
+= sin upward ldbl-128 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ff69b37289dc198p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ff69b37289dc4p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ff69b37289dcp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ff69b37289dcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.c92d0ffa4bf00008p+0L : -0xf.f4f46a082f283ff69b37289dcp-4L : inexact-ok
+= sin downward ldbl-128 0x4.c92d0ffa4bf0000000000000008cp+0L : -0xf.f4f46a082f2840000005480a4958p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.c92d0ffa4bf0000000000000008cp+0L : -0xf.f4f46a082f2840000005480a4958p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.c92d0ffa4bf0000000000000008cp+0L : -0xf.f4f46a082f2840000005480a495p-4L : inexact-ok
+= sin upward ldbl-128 0x4.c92d0ffa4bf0000000000000008cp+0L : -0xf.f4f46a082f2840000005480a495p-4L : inexact-ok
+= sin downward ldbl-128 0x4.c92d0ffa4bf00000000000000088p+0L : -0xf.f4f46a082f2840000005480a496p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.c92d0ffa4bf00000000000000088p+0L : -0xf.f4f46a082f2840000005480a4958p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.c92d0ffa4bf00000000000000088p+0L : -0xf.f4f46a082f2840000005480a4958p-4L : inexact-ok
+= sin upward ldbl-128 0x4.c92d0ffa4bf00000000000000088p+0L : -0xf.f4f46a082f2840000005480a4958p-4L : inexact-ok
+= sin downward ldbl-128 0x4.c92d0ffa4bf000000000000002p+0L : -0xf.f4f46a082f2840000005480a47a8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4.c92d0ffa4bf000000000000002p+0L : -0xf.f4f46a082f2840000005480a47ap-4L : inexact-ok
+= sin towardzero ldbl-128 0x4.c92d0ffa4bf000000000000002p+0L : -0xf.f4f46a082f2840000005480a47ap-4L : inexact-ok
+= sin upward ldbl-128 0x4.c92d0ffa4bf000000000000002p+0L : -0xf.f4f46a082f2840000005480a47ap-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4.c92d0ffa4bf000000000000002p+0L : -0xf.f4f46a082f2840000005480a48p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4.c92d0ffa4bf000000000000002p+0L : -0xf.f4f46a082f2840000005480a48p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4.c92d0ffa4bf000000000000002p+0L : -0xf.f4f46a082f2840000005480a44p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4.c92d0ffa4bf000000000000002p+0L : -0xf.f4f46a082f2840000005480a44p-4L : inexact-ok
+sin 5.9840767662578002727968851104379
+= sin downward flt-32 0x5.fbec78p+0f : -0x4.b6f61p-4f : inexact-ok
+= sin tonearest flt-32 0x5.fbec78p+0f : -0x4.b6f61p-4f : inexact-ok
+= sin towardzero flt-32 0x5.fbec78p+0f : -0x4.b6f608p-4f : inexact-ok
+= sin upward flt-32 0x5.fbec78p+0f : -0x4.b6f608p-4f : inexact-ok
+= sin downward dbl-64 0x5.fbec78p+0 : -0x4.b6f60ca8d4154p-4 : inexact-ok
+= sin tonearest dbl-64 0x5.fbec78p+0 : -0x4.b6f60ca8d415p-4 : inexact-ok
+= sin towardzero dbl-64 0x5.fbec78p+0 : -0x4.b6f60ca8d415p-4 : inexact-ok
+= sin upward dbl-64 0x5.fbec78p+0 : -0x4.b6f60ca8d415p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bc8p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bcp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bcp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bcp-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bc8p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bcp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bcp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bcp-4L : inexact-ok
+= sin downward ldbl-128 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bc1732b1580fc8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bc1732b1580fc7cp-4L : inexact-ok
+= sin towardzero ldbl-128 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bc1732b1580fc7cp-4L : inexact-ok
+= sin upward ldbl-128 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bc1732b1580fc7cp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bc1732b1580fep-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bc1732b1580fcp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bc1732b1580fcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x5.fbec78p+0L : -0x4.b6f60ca8d4150bc1732b1580fcp-4L : inexact-ok
+= sin downward flt-32 0x5.fbec7p+0f : -0x4.b6f688p-4f : inexact-ok
+= sin tonearest flt-32 0x5.fbec7p+0f : -0x4.b6f688p-4f : inexact-ok
+= sin towardzero flt-32 0x5.fbec7p+0f : -0x4.b6f68p-4f : inexact-ok
+= sin upward flt-32 0x5.fbec7p+0f : -0x4.b6f68p-4f : inexact-ok
+= sin downward dbl-64 0x5.fbec7p+0 : -0x4.b6f686f9ea13p-4 : inexact-ok
+= sin tonearest dbl-64 0x5.fbec7p+0 : -0x4.b6f686f9ea13p-4 : inexact-ok
+= sin towardzero dbl-64 0x5.fbec7p+0 : -0x4.b6f686f9ea12cp-4 : inexact-ok
+= sin upward dbl-64 0x5.fbec7p+0 : -0x4.b6f686f9ea12cp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8fp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8fp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8e8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8e8p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8fp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8fp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8e8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8e8p-4L : inexact-ok
+= sin downward ldbl-128 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8ec702d198cbfa8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8ec702d198cbfa8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8ec702d198cbfa4p-4L : inexact-ok
+= sin upward ldbl-128 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8ec702d198cbfa4p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8ec702d198ccp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8ec702d198ccp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8ec702d198cbep-4L : inexact-ok
+= sin upward ldbl-128ibm 0x5.fbec7p+0L : -0x4.b6f686f9ea12e8ec702d198cbep-4L : inexact-ok
+= sin downward dbl-64 0x5.fbec7477d4a84p+0 : -0x4.b6f642a935a1p-4 : inexact-ok
+= sin tonearest dbl-64 0x5.fbec7477d4a84p+0 : -0x4.b6f642a935a0cp-4 : inexact-ok
+= sin towardzero dbl-64 0x5.fbec7477d4a84p+0 : -0x4.b6f642a935a0cp-4 : inexact-ok
+= sin upward dbl-64 0x5.fbec7477d4a84p+0 : -0x4.b6f642a935a0cp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd78p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd78p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd7p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd7p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd78p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd78p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd7p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd7p-4L : inexact-ok
+= sin downward ldbl-128 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd774f8372f49334p-4L : inexact-ok
+= sin tonearest ldbl-128 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd774f8372f4933p-4L : inexact-ok
+= sin towardzero ldbl-128 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd774f8372f4933p-4L : inexact-ok
+= sin upward ldbl-128 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd774f8372f4933p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd774f8372f494p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd774f8372f494p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd774f8372f492p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x5.fbec7477d4a84p+0L : -0x4.b6f642a935a0cd774f8372f492p-4L : inexact-ok
+= sin downward dbl-64 0x5.fbec7477d4a8p+0 : -0x4.b6f642a935a4cp-4 : inexact-ok
+= sin tonearest dbl-64 0x5.fbec7477d4a8p+0 : -0x4.b6f642a935a48p-4 : inexact-ok
+= sin towardzero dbl-64 0x5.fbec7477d4a8p+0 : -0x4.b6f642a935a48p-4 : inexact-ok
+= sin upward dbl-64 0x5.fbec7477d4a8p+0 : -0x4.b6f642a935a48p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a4ap-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a4ap-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49ff8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49ff8p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a4ap-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a4ap-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49ff8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49ff8p-4L : inexact-ok
+= sin downward ldbl-128 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49fffffff9a1c7cf8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49fffffff9a1c7cf8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49fffffff9a1c7cf4p-4L : inexact-ok
+= sin upward ldbl-128 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49fffffff9a1c7cf4p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49fffffff9a1c7ep-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49fffffff9a1c7cp-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49fffffff9a1c7cp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x5.fbec7477d4a8p+0L : -0x4.b6f642a935a49fffffff9a1c7cp-4L : inexact-ok
+= sin downward ldbl-96-intel 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f88p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f88p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f8p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f8p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f88p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f88p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f8p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f8p-4L : inexact-ok
+= sin downward ldbl-128 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f85aee98a9798p-4L : inexact-ok
+= sin tonearest ldbl-128 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f85aee98a9798p-4L : inexact-ok
+= sin towardzero ldbl-128 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f85aee98a9797fcp-4L : inexact-ok
+= sin upward ldbl-128 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f85aee98a9797fcp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f85aee98a9798p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f85aee98a9798p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f85aee98a9796p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x5.fbec7477d4a80008p+0L : -0x4.b6f642a935a49f85aee98a9796p-4L : inexact-ok
+= sin downward ldbl-128 0x5.fbec7477d4a8000000000000009cp+0L : -0x4.b6f642a935a49fffffff9a1c73a8p-4L : inexact-ok
+= sin tonearest ldbl-128 0x5.fbec7477d4a8000000000000009cp+0L : -0x4.b6f642a935a49fffffff9a1c73a8p-4L : inexact-ok
+= sin towardzero ldbl-128 0x5.fbec7477d4a8000000000000009cp+0L : -0x4.b6f642a935a49fffffff9a1c73a4p-4L : inexact-ok
+= sin upward ldbl-128 0x5.fbec7477d4a8000000000000009cp+0L : -0x4.b6f642a935a49fffffff9a1c73a4p-4L : inexact-ok
+= sin downward ldbl-128 0x5.fbec7477d4a80000000000000098p+0L : -0x4.b6f642a935a49fffffff9a1c73e4p-4L : inexact-ok
+= sin tonearest ldbl-128 0x5.fbec7477d4a80000000000000098p+0L : -0x4.b6f642a935a49fffffff9a1c73e4p-4L : inexact-ok
+= sin towardzero ldbl-128 0x5.fbec7477d4a80000000000000098p+0L : -0x4.b6f642a935a49fffffff9a1c73ep-4L : inexact-ok
+= sin upward ldbl-128 0x5.fbec7477d4a80000000000000098p+0L : -0x4.b6f642a935a49fffffff9a1c73ep-4L : inexact-ok
+= sin downward ldbl-128 0x5.fbec7477d4a800000000000002p+0L : -0x4.b6f642a935a49fffffff9a1c5e64p-4L : inexact-ok
+= sin tonearest ldbl-128 0x5.fbec7477d4a800000000000002p+0L : -0x4.b6f642a935a49fffffff9a1c5e64p-4L : inexact-ok
+= sin towardzero ldbl-128 0x5.fbec7477d4a800000000000002p+0L : -0x4.b6f642a935a49fffffff9a1c5e6p-4L : inexact-ok
+= sin upward ldbl-128 0x5.fbec7477d4a800000000000002p+0L : -0x4.b6f642a935a49fffffff9a1c5e6p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x5.fbec7477d4a800000000000002p+0L : -0x4.b6f642a935a49fffffff9a1c6p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x5.fbec7477d4a800000000000002p+0L : -0x4.b6f642a935a49fffffff9a1c5ep-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x5.fbec7477d4a800000000000002p+0L : -0x4.b6f642a935a49fffffff9a1c5ep-4L : inexact-ok
+= sin upward ldbl-128ibm 0x5.fbec7477d4a800000000000002p+0L : -0x4.b6f642a935a49fffffff9a1c5ep-4L : inexact-ok
+sin 1
+= sin downward flt-32 0x1p+0f : 0xd.76aa4p-4f : inexact-ok
+= sin tonearest flt-32 0x1p+0f : 0xd.76aa4p-4f : inexact-ok
+= sin towardzero flt-32 0x1p+0f : 0xd.76aa4p-4f : inexact-ok
+= sin upward flt-32 0x1p+0f : 0xd.76aa5p-4f : inexact-ok
+= sin downward dbl-64 0x1p+0 : 0xd.76aa47848677p-4 : inexact-ok
+= sin tonearest dbl-64 0x1p+0 : 0xd.76aa47848677p-4 : inexact-ok
+= sin towardzero dbl-64 0x1p+0 : 0xd.76aa47848677p-4 : inexact-ok
+= sin upward dbl-64 0x1p+0 : 0xd.76aa478486778p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x1p+0L : 0xd.76aa4784867702p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x1p+0L : 0xd.76aa47848677021p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x1p+0L : 0xd.76aa4784867702p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x1p+0L : 0xd.76aa47848677021p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x1p+0L : 0xd.76aa4784867702p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x1p+0L : 0xd.76aa47848677021p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x1p+0L : 0xd.76aa4784867702p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x1p+0L : 0xd.76aa47848677021p-4L : inexact-ok
+= sin downward ldbl-128 0x1p+0L : 0xd.76aa47848677020c6e9e909c50fp-4L : inexact-ok
+= sin tonearest ldbl-128 0x1p+0L : 0xd.76aa47848677020c6e9e909c50fp-4L : inexact-ok
+= sin towardzero ldbl-128 0x1p+0L : 0xd.76aa47848677020c6e9e909c50fp-4L : inexact-ok
+= sin upward ldbl-128 0x1p+0L : 0xd.76aa47848677020c6e9e909c50f8p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x1p+0L : 0xd.76aa47848677020c6e9e909c5p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x1p+0L : 0xd.76aa47848677020c6e9e909c5p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x1p+0L : 0xd.76aa47848677020c6e9e909c5p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x1p+0L : 0xd.76aa47848677020c6e9e909c54p-4L : inexact-ok
+sin 2
+= sin downward flt-32 0x2p+0f : 0xe.8c7b7p-4f : inexact-ok
+= sin tonearest flt-32 0x2p+0f : 0xe.8c7b7p-4f : inexact-ok
+= sin towardzero flt-32 0x2p+0f : 0xe.8c7b7p-4f : inexact-ok
+= sin upward flt-32 0x2p+0f : 0xe.8c7b8p-4f : inexact-ok
+= sin downward dbl-64 0x2p+0 : 0xe.8c7b7568da228p-4 : inexact-ok
+= sin tonearest dbl-64 0x2p+0 : 0xe.8c7b7568da23p-4 : inexact-ok
+= sin towardzero dbl-64 0x2p+0 : 0xe.8c7b7568da228p-4 : inexact-ok
+= sin upward dbl-64 0x2p+0 : 0xe.8c7b7568da23p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x2p+0L : 0xe.8c7b7568da22efdp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x2p+0L : 0xe.8c7b7568da22efdp-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x2p+0L : 0xe.8c7b7568da22efdp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x2p+0L : 0xe.8c7b7568da22efep-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x2p+0L : 0xe.8c7b7568da22efdp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x2p+0L : 0xe.8c7b7568da22efdp-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x2p+0L : 0xe.8c7b7568da22efdp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x2p+0L : 0xe.8c7b7568da22efep-4L : inexact-ok
+= sin downward ldbl-128 0x2p+0L : 0xe.8c7b7568da22efd5c240c4004e48p-4L : inexact-ok
+= sin tonearest ldbl-128 0x2p+0L : 0xe.8c7b7568da22efd5c240c4004e5p-4L : inexact-ok
+= sin towardzero ldbl-128 0x2p+0L : 0xe.8c7b7568da22efd5c240c4004e48p-4L : inexact-ok
+= sin upward ldbl-128 0x2p+0L : 0xe.8c7b7568da22efd5c240c4004e5p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x2p+0L : 0xe.8c7b7568da22efd5c240c4004cp-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x2p+0L : 0xe.8c7b7568da22efd5c240c4005p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x2p+0L : 0xe.8c7b7568da22efd5c240c4004cp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x2p+0L : 0xe.8c7b7568da22efd5c240c4005p-4L : inexact-ok
+sin 3
+= sin downward flt-32 0x3p+0f : 0x2.42070cp-4f : inexact-ok
+= sin tonearest flt-32 0x3p+0f : 0x2.42070cp-4f : inexact-ok
+= sin towardzero flt-32 0x3p+0f : 0x2.42070cp-4f : inexact-ok
+= sin upward flt-32 0x3p+0f : 0x2.42071p-4f : inexact-ok
+= sin downward dbl-64 0x3p+0 : 0x2.42070db6daab6p-4 : inexact-ok
+= sin tonearest dbl-64 0x3p+0 : 0x2.42070db6daab6p-4 : inexact-ok
+= sin towardzero dbl-64 0x3p+0 : 0x2.42070db6daab6p-4 : inexact-ok
+= sin upward dbl-64 0x3p+0 : 0x2.42070db6daab8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x3p+0L : 0x2.42070db6daab69ep-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x3p+0L : 0x2.42070db6daab69e4p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x3p+0L : 0x2.42070db6daab69ep-4L : inexact-ok
+= sin upward ldbl-96-intel 0x3p+0L : 0x2.42070db6daab69e4p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x3p+0L : 0x2.42070db6daab69ep-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x3p+0L : 0x2.42070db6daab69e4p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x3p+0L : 0x2.42070db6daab69ep-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x3p+0L : 0x2.42070db6daab69e4p-4L : inexact-ok
+= sin downward ldbl-128 0x3p+0L : 0x2.42070db6daab69e3902e8468315p-4L : inexact-ok
+= sin tonearest ldbl-128 0x3p+0L : 0x2.42070db6daab69e3902e8468315p-4L : inexact-ok
+= sin towardzero ldbl-128 0x3p+0L : 0x2.42070db6daab69e3902e8468315p-4L : inexact-ok
+= sin upward ldbl-128 0x3p+0L : 0x2.42070db6daab69e3902e84683152p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x3p+0L : 0x2.42070db6daab69e3902e846831p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x3p+0L : 0x2.42070db6daab69e3902e846831p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x3p+0L : 0x2.42070db6daab69e3902e846831p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x3p+0L : 0x2.42070db6daab69e3902e846832p-4L : inexact-ok
+sin 4
+= sin downward flt-32 0x4p+0f : -0xc.1bdcfp-4f : inexact-ok
+= sin tonearest flt-32 0x4p+0f : -0xc.1bdcfp-4f : inexact-ok
+= sin towardzero flt-32 0x4p+0f : -0xc.1bdcep-4f : inexact-ok
+= sin upward flt-32 0x4p+0f : -0xc.1bdcep-4f : inexact-ok
+= sin downward dbl-64 0x4p+0 : -0xc.1bdceeee0f578p-4 : inexact-ok
+= sin tonearest dbl-64 0x4p+0 : -0xc.1bdceeee0f57p-4 : inexact-ok
+= sin towardzero dbl-64 0x4p+0 : -0xc.1bdceeee0f57p-4 : inexact-ok
+= sin upward dbl-64 0x4p+0 : -0xc.1bdceeee0f57p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x4p+0L : -0xc.1bdceeee0f57387p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x4p+0L : -0xc.1bdceeee0f57386p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x4p+0L : -0xc.1bdceeee0f57386p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x4p+0L : -0xc.1bdceeee0f57386p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x4p+0L : -0xc.1bdceeee0f57387p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x4p+0L : -0xc.1bdceeee0f57386p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x4p+0L : -0xc.1bdceeee0f57386p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x4p+0L : -0xc.1bdceeee0f57386p-4L : inexact-ok
+= sin downward ldbl-128 0x4p+0L : -0xc.1bdceeee0f5738674c02ad072288p-4L : inexact-ok
+= sin tonearest ldbl-128 0x4p+0L : -0xc.1bdceeee0f5738674c02ad072288p-4L : inexact-ok
+= sin towardzero ldbl-128 0x4p+0L : -0xc.1bdceeee0f5738674c02ad07228p-4L : inexact-ok
+= sin upward ldbl-128 0x4p+0L : -0xc.1bdceeee0f5738674c02ad07228p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x4p+0L : -0xc.1bdceeee0f5738674c02ad0724p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x4p+0L : -0xc.1bdceeee0f5738674c02ad0724p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x4p+0L : -0xc.1bdceeee0f5738674c02ad072p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x4p+0L : -0xc.1bdceeee0f5738674c02ad072p-4L : inexact-ok
+sin 5
+= sin downward flt-32 0x5p+0f : -0xf.57c1p-4f : inexact-ok
+= sin tonearest flt-32 0x5p+0f : -0xf.57c1p-4f : inexact-ok
+= sin towardzero flt-32 0x5p+0f : -0xf.57c0fp-4f : inexact-ok
+= sin upward flt-32 0x5p+0f : -0xf.57c0fp-4f : inexact-ok
+= sin downward dbl-64 0x5p+0 : -0xf.57c0faf04c9ap-4 : inexact-ok
+= sin tonearest dbl-64 0x5p+0 : -0xf.57c0faf04c998p-4 : inexact-ok
+= sin towardzero dbl-64 0x5p+0 : -0xf.57c0faf04c998p-4 : inexact-ok
+= sin upward dbl-64 0x5p+0 : -0xf.57c0faf04c998p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x5p+0L : -0xf.57c0faf04c99914p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x5p+0L : -0xf.57c0faf04c99913p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x5p+0L : -0xf.57c0faf04c99913p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x5p+0L : -0xf.57c0faf04c99913p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x5p+0L : -0xf.57c0faf04c99914p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x5p+0L : -0xf.57c0faf04c99913p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x5p+0L : -0xf.57c0faf04c99913p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x5p+0L : -0xf.57c0faf04c99913p-4L : inexact-ok
+= sin downward ldbl-128 0x5p+0L : -0xf.57c0faf04c999135789f2ab1de3p-4L : inexact-ok
+= sin tonearest ldbl-128 0x5p+0L : -0xf.57c0faf04c999135789f2ab1de3p-4L : inexact-ok
+= sin towardzero ldbl-128 0x5p+0L : -0xf.57c0faf04c999135789f2ab1de28p-4L : inexact-ok
+= sin upward ldbl-128 0x5p+0L : -0xf.57c0faf04c999135789f2ab1de28p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x5p+0L : -0xf.57c0faf04c999135789f2ab1ep-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x5p+0L : -0xf.57c0faf04c999135789f2ab1ep-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x5p+0L : -0xf.57c0faf04c999135789f2ab1dcp-4L : inexact-ok
+= sin upward ldbl-128ibm 0x5p+0L : -0xf.57c0faf04c999135789f2ab1dcp-4L : inexact-ok
+sin 6
+= sin downward flt-32 0x6p+0f : -0x4.787c68p-4f : inexact-ok
+= sin tonearest flt-32 0x6p+0f : -0x4.787c6p-4f : inexact-ok
+= sin towardzero flt-32 0x6p+0f : -0x4.787c6p-4f : inexact-ok
+= sin upward flt-32 0x6p+0f : -0x4.787c6p-4f : inexact-ok
+= sin downward dbl-64 0x6p+0 : -0x4.787c62ac28b04p-4 : inexact-ok
+= sin tonearest dbl-64 0x6p+0 : -0x4.787c62ac28bp-4 : inexact-ok
+= sin towardzero dbl-64 0x6p+0 : -0x4.787c62ac28bp-4 : inexact-ok
+= sin upward dbl-64 0x6p+0 : -0x4.787c62ac28bp-4 : inexact-ok
+= sin downward ldbl-96-intel 0x6p+0L : -0x4.787c62ac28b00eap-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x6p+0L : -0x4.787c62ac28b00e98p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x6p+0L : -0x4.787c62ac28b00e98p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x6p+0L : -0x4.787c62ac28b00e98p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x6p+0L : -0x4.787c62ac28b00eap-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x6p+0L : -0x4.787c62ac28b00e98p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x6p+0L : -0x4.787c62ac28b00e98p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x6p+0L : -0x4.787c62ac28b00e98p-4L : inexact-ok
+= sin downward ldbl-128 0x6p+0L : -0x4.787c62ac28b00e989105113d2888p-4L : inexact-ok
+= sin tonearest ldbl-128 0x6p+0L : -0x4.787c62ac28b00e989105113d2884p-4L : inexact-ok
+= sin towardzero ldbl-128 0x6p+0L : -0x4.787c62ac28b00e989105113d2884p-4L : inexact-ok
+= sin upward ldbl-128 0x6p+0L : -0x4.787c62ac28b00e989105113d2884p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x6p+0L : -0x4.787c62ac28b00e989105113d2ap-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x6p+0L : -0x4.787c62ac28b00e989105113d28p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x6p+0L : -0x4.787c62ac28b00e989105113d28p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x6p+0L : -0x4.787c62ac28b00e989105113d28p-4L : inexact-ok
+sin 7
+= sin downward flt-32 0x7p+0f : 0xa.83046p-4f : inexact-ok
+= sin tonearest flt-32 0x7p+0f : 0xa.83046p-4f : inexact-ok
+= sin towardzero flt-32 0x7p+0f : 0xa.83046p-4f : inexact-ok
+= sin upward flt-32 0x7p+0f : 0xa.83047p-4f : inexact-ok
+= sin downward dbl-64 0x7p+0 : 0xa.830461368504p-4 : inexact-ok
+= sin tonearest dbl-64 0x7p+0 : 0xa.830461368504p-4 : inexact-ok
+= sin towardzero dbl-64 0x7p+0 : 0xa.830461368504p-4 : inexact-ok
+= sin upward dbl-64 0x7p+0 : 0xa.8304613685048p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x7p+0L : 0xa.83046136850421dp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x7p+0L : 0xa.83046136850421ep-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x7p+0L : 0xa.83046136850421dp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x7p+0L : 0xa.83046136850421ep-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x7p+0L : 0xa.83046136850421dp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x7p+0L : 0xa.83046136850421ep-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x7p+0L : 0xa.83046136850421dp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x7p+0L : 0xa.83046136850421ep-4L : inexact-ok
+= sin downward ldbl-128 0x7p+0L : 0xa.83046136850421dd444208fd7788p-4L : inexact-ok
+= sin tonearest ldbl-128 0x7p+0L : 0xa.83046136850421dd444208fd7788p-4L : inexact-ok
+= sin towardzero ldbl-128 0x7p+0L : 0xa.83046136850421dd444208fd7788p-4L : inexact-ok
+= sin upward ldbl-128 0x7p+0L : 0xa.83046136850421dd444208fd779p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x7p+0L : 0xa.83046136850421dd444208fd74p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x7p+0L : 0xa.83046136850421dd444208fd78p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x7p+0L : 0xa.83046136850421dd444208fd74p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x7p+0L : 0xa.83046136850421dd444208fd78p-4L : inexact-ok
+sin 8
+= sin downward flt-32 0x8p+0f : 0xf.d4695p-4f : inexact-ok
+= sin tonearest flt-32 0x8p+0f : 0xf.d4695p-4f : inexact-ok
+= sin towardzero flt-32 0x8p+0f : 0xf.d4695p-4f : inexact-ok
+= sin upward flt-32 0x8p+0f : 0xf.d4696p-4f : inexact-ok
+= sin downward dbl-64 0x8p+0 : 0xf.d469501467bdp-4 : inexact-ok
+= sin tonearest dbl-64 0x8p+0 : 0xf.d469501467bd8p-4 : inexact-ok
+= sin towardzero dbl-64 0x8p+0 : 0xf.d469501467bdp-4 : inexact-ok
+= sin upward dbl-64 0x8p+0 : 0xf.d469501467bd8p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x8p+0L : 0xf.d469501467bd74fp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x8p+0L : 0xf.d469501467bd75p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x8p+0L : 0xf.d469501467bd74fp-4L : inexact-ok
+= sin upward ldbl-96-intel 0x8p+0L : 0xf.d469501467bd75p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x8p+0L : 0xf.d469501467bd74fp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x8p+0L : 0xf.d469501467bd75p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x8p+0L : 0xf.d469501467bd74fp-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x8p+0L : 0xf.d469501467bd75p-4L : inexact-ok
+= sin downward ldbl-128 0x8p+0L : 0xf.d469501467bd74fb158538284668p-4L : inexact-ok
+= sin tonearest ldbl-128 0x8p+0L : 0xf.d469501467bd74fb15853828467p-4L : inexact-ok
+= sin towardzero ldbl-128 0x8p+0L : 0xf.d469501467bd74fb158538284668p-4L : inexact-ok
+= sin upward ldbl-128 0x8p+0L : 0xf.d469501467bd74fb15853828467p-4L : inexact-ok
+= sin downward ldbl-128ibm 0x8p+0L : 0xf.d469501467bd74fb1585382844p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x8p+0L : 0xf.d469501467bd74fb1585382848p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x8p+0L : 0xf.d469501467bd74fb1585382844p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x8p+0L : 0xf.d469501467bd74fb1585382848p-4L : inexact-ok
+sin 9
+= sin downward flt-32 0x9p+0f : 0x6.980988p-4f : inexact-ok
+= sin tonearest flt-32 0x9p+0f : 0x6.98099p-4f : inexact-ok
+= sin towardzero flt-32 0x9p+0f : 0x6.980988p-4f : inexact-ok
+= sin upward flt-32 0x9p+0f : 0x6.98099p-4f : inexact-ok
+= sin downward dbl-64 0x9p+0 : 0x6.98098d830be4p-4 : inexact-ok
+= sin tonearest dbl-64 0x9p+0 : 0x6.98098d830be44p-4 : inexact-ok
+= sin towardzero dbl-64 0x9p+0 : 0x6.98098d830be4p-4 : inexact-ok
+= sin upward dbl-64 0x9p+0 : 0x6.98098d830be44p-4 : inexact-ok
+= sin downward ldbl-96-intel 0x9p+0L : 0x6.98098d830be4248p-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0x9p+0L : 0x6.98098d830be42488p-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0x9p+0L : 0x6.98098d830be4248p-4L : inexact-ok
+= sin upward ldbl-96-intel 0x9p+0L : 0x6.98098d830be42488p-4L : inexact-ok
+= sin downward ldbl-96-m68k 0x9p+0L : 0x6.98098d830be4248p-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0x9p+0L : 0x6.98098d830be42488p-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0x9p+0L : 0x6.98098d830be4248p-4L : inexact-ok
+= sin upward ldbl-96-m68k 0x9p+0L : 0x6.98098d830be42488p-4L : inexact-ok
+= sin downward ldbl-128 0x9p+0L : 0x6.98098d830be42487274a8291c678p-4L : inexact-ok
+= sin tonearest ldbl-128 0x9p+0L : 0x6.98098d830be42487274a8291c67cp-4L : inexact-ok
+= sin towardzero ldbl-128 0x9p+0L : 0x6.98098d830be42487274a8291c678p-4L : inexact-ok
+= sin upward ldbl-128 0x9p+0L : 0x6.98098d830be42487274a8291c67cp-4L : inexact-ok
+= sin downward ldbl-128ibm 0x9p+0L : 0x6.98098d830be42487274a8291c6p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0x9p+0L : 0x6.98098d830be42487274a8291c6p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0x9p+0L : 0x6.98098d830be42487274a8291c6p-4L : inexact-ok
+= sin upward ldbl-128ibm 0x9p+0L : 0x6.98098d830be42487274a8291c8p-4L : inexact-ok
+sin 10
+= sin downward flt-32 0xap+0f : -0x8.b44f8p-4f : inexact-ok
+= sin tonearest flt-32 0xap+0f : -0x8.b44f8p-4f : inexact-ok
+= sin towardzero flt-32 0xap+0f : -0x8.b44f7p-4f : inexact-ok
+= sin upward flt-32 0xap+0f : -0x8.b44f7p-4f : inexact-ok
+= sin downward dbl-64 0xap+0 : -0x8.b44f7af9a7a98p-4 : inexact-ok
+= sin tonearest dbl-64 0xap+0 : -0x8.b44f7af9a7a9p-4 : inexact-ok
+= sin towardzero dbl-64 0xap+0 : -0x8.b44f7af9a7a9p-4 : inexact-ok
+= sin upward dbl-64 0xap+0 : -0x8.b44f7af9a7a9p-4 : inexact-ok
+= sin downward ldbl-96-intel 0xap+0L : -0x8.b44f7af9a7a92cfp-4L : inexact-ok
+= sin tonearest ldbl-96-intel 0xap+0L : -0x8.b44f7af9a7a92cep-4L : inexact-ok
+= sin towardzero ldbl-96-intel 0xap+0L : -0x8.b44f7af9a7a92cep-4L : inexact-ok
+= sin upward ldbl-96-intel 0xap+0L : -0x8.b44f7af9a7a92cep-4L : inexact-ok
+= sin downward ldbl-96-m68k 0xap+0L : -0x8.b44f7af9a7a92cfp-4L : inexact-ok
+= sin tonearest ldbl-96-m68k 0xap+0L : -0x8.b44f7af9a7a92cep-4L : inexact-ok
+= sin towardzero ldbl-96-m68k 0xap+0L : -0x8.b44f7af9a7a92cep-4L : inexact-ok
+= sin upward ldbl-96-m68k 0xap+0L : -0x8.b44f7af9a7a92cep-4L : inexact-ok
+= sin downward ldbl-128 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024e2p-4L : inexact-ok
+= sin tonearest ldbl-128 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024e2p-4L : inexact-ok
+= sin towardzero ldbl-128 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024e18p-4L : inexact-ok
+= sin upward ldbl-128 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024e18p-4L : inexact-ok
+= sin downward ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be025p-4L : inexact-ok
+= sin tonearest ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be025p-4L : inexact-ok
+= sin towardzero ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024cp-4L : inexact-ok
+= sin upward ldbl-128ibm 0xap+0L : -0x8.b44f7af9a7a92ce7fb22be024cp-4L : inexact-ok
+sincos 0
+= sincos downward flt-32 0x0p+0f : 0x0p+0f 0x1p+0f : inexact-ok
+= sincos tonearest flt-32 0x0p+0f : 0x0p+0f 0x1p+0f : inexact-ok
+= sincos towardzero flt-32 0x0p+0f : 0x0p+0f 0x1p+0f : inexact-ok
+= sincos upward flt-32 0x0p+0f : 0x0p+0f 0x1p+0f : inexact-ok
+= sincos downward dbl-64 0x0p+0 : 0x0p+0 0x1p+0 : inexact-ok
+= sincos tonearest dbl-64 0x0p+0 : 0x0p+0 0x1p+0 : inexact-ok
+= sincos towardzero dbl-64 0x0p+0 : 0x0p+0 0x1p+0 : inexact-ok
+= sincos upward dbl-64 0x0p+0 : 0x0p+0 0x1p+0 : inexact-ok
+= sincos downward ldbl-96-intel 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos upward ldbl-96-intel 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos downward ldbl-96-m68k 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos upward ldbl-96-m68k 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos downward ldbl-128 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos tonearest ldbl-128 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos towardzero ldbl-128 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos upward ldbl-128 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos downward ldbl-128ibm 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+= sincos upward ldbl-128ibm 0x0p+0L : 0x0p+0L 0x1p+0L : inexact-ok
+sincos -0
+= sincos downward flt-32 -0x0p+0f : -0x0p+0f 0x1p+0f : inexact-ok
+= sincos tonearest flt-32 -0x0p+0f : -0x0p+0f 0x1p+0f : inexact-ok
+= sincos towardzero flt-32 -0x0p+0f : -0x0p+0f 0x1p+0f : inexact-ok
+= sincos upward flt-32 -0x0p+0f : -0x0p+0f 0x1p+0f : inexact-ok
+= sincos downward dbl-64 -0x0p+0 : -0x0p+0 0x1p+0 : inexact-ok
+= sincos tonearest dbl-64 -0x0p+0 : -0x0p+0 0x1p+0 : inexact-ok
+= sincos towardzero dbl-64 -0x0p+0 : -0x0p+0 0x1p+0 : inexact-ok
+= sincos upward dbl-64 -0x0p+0 : -0x0p+0 0x1p+0 : inexact-ok
+= sincos downward ldbl-96-intel -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos upward ldbl-96-intel -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos downward ldbl-96-m68k -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos upward ldbl-96-m68k -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos downward ldbl-128 -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos tonearest ldbl-128 -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos towardzero ldbl-128 -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos upward ldbl-128 -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos downward ldbl-128ibm -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+= sincos upward ldbl-128ibm -0x0p+0L : -0x0p+0L 0x1p+0L : inexact-ok
+sincos pi/2
+= sincos downward flt-32 0x1.921fb6p+0f : 0xf.fffffp-4f -0xb.bbd2fp-28f : inexact-ok
+= sincos tonearest flt-32 0x1.921fb6p+0f : 0x1p+0f -0xb.bbd2ep-28f : inexact-ok
+= sincos towardzero flt-32 0x1.921fb6p+0f : 0xf.fffffp-4f -0xb.bbd2ep-28f : inexact-ok
+= sincos upward flt-32 0x1.921fb6p+0f : 0x1p+0f -0xb.bbd2ep-28f : inexact-ok
+= sincos downward dbl-64 0x1.921fb6p+0 : 0xf.fffffffffffb8p-4 -0xb.bbd2e7b967668p-28 : inexact-ok
+= sincos tonearest dbl-64 0x1.921fb6p+0 : 0xf.fffffffffffb8p-4 -0xb.bbd2e7b96766p-28 : inexact-ok
+= sincos towardzero dbl-64 0x1.921fb6p+0 : 0xf.fffffffffffb8p-4 -0xb.bbd2e7b96766p-28 : inexact-ok
+= sincos upward dbl-64 0x1.921fb6p+0 : 0xf.fffffffffffcp-4 -0xb.bbd2e7b96766p-28 : inexact-ok
+= sincos downward ldbl-96-intel 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L -0xb.bbd2e7b96766267p-28L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L -0xb.bbd2e7b96766267p-28L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L -0xb.bbd2e7b96766266p-28L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.921fb6p+0L : 0xf.fffffffffffbb2ap-4L -0xb.bbd2e7b96766266p-28L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L -0xb.bbd2e7b96766267p-28L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L -0xb.bbd2e7b96766267p-28L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.921fb6p+0L : 0xf.fffffffffffbb29p-4L -0xb.bbd2e7b96766266p-28L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.921fb6p+0L : 0xf.fffffffffffbb2ap-4L -0xb.bbd2e7b96766266p-28L : inexact-ok
+= sincos downward ldbl-128 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a11498p-4L -0xb.bbd2e7b96766266f1d18f3ead018p-28L : inexact-ok
+= sincos tonearest ldbl-128 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a114988p-4L -0xb.bbd2e7b96766266f1d18f3ead01p-28L : inexact-ok
+= sincos towardzero ldbl-128 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a11498p-4L -0xb.bbd2e7b96766266f1d18f3ead01p-28L : inexact-ok
+= sincos upward ldbl-128 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a114988p-4L -0xb.bbd2e7b96766266f1d18f3ead01p-28L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a1148p-4L -0xb.bbd2e7b96766266f1d18f3ead4p-28L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a1148p-4L -0xb.bbd2e7b96766266f1d18f3eadp-28L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a1148p-4L -0xb.bbd2e7b96766266f1d18f3eadp-28L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.921fb6p+0L : 0xf.fffffffffffbb290924e3a114cp-4L -0xb.bbd2e7b96766266f1d18f3eadp-28L : inexact-ok
+= sincos downward flt-32 0x1.921fb4p+0f : 0xf.fffffp-4f 0x1.4442dp-24f : inexact-ok
+= sincos tonearest flt-32 0x1.921fb4p+0f : 0x1p+0f 0x1.4442d2p-24f : inexact-ok
+= sincos towardzero flt-32 0x1.921fb4p+0f : 0xf.fffffp-4f 0x1.4442dp-24f : inexact-ok
+= sincos upward flt-32 0x1.921fb4p+0f : 0x1p+0f 0x1.4442d2p-24f : inexact-ok
+= sincos downward dbl-64 0x1.921fb4p+0 : 0xf.fffffffffff3p-4 0x1.4442d18469893p-24 : inexact-ok
+= sincos tonearest dbl-64 0x1.921fb4p+0 : 0xf.fffffffffff3p-4 0x1.4442d18469893p-24 : inexact-ok
+= sincos towardzero dbl-64 0x1.921fb4p+0 : 0xf.fffffffffff3p-4 0x1.4442d18469893p-24 : inexact-ok
+= sincos upward dbl-64 0x1.921fb4p+0 : 0xf.fffffffffff38p-4 0x1.4442d18469894p-24 : inexact-ok
+= sincos downward ldbl-96-intel 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L 0x1.4442d1846989361p-24L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L 0x1.4442d1846989361p-24L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L 0x1.4442d1846989361p-24L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.921fb4p+0L : 0xf.fffffffffff32a4p-4L 0x1.4442d18469893612p-24L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L 0x1.4442d1846989361p-24L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L 0x1.4442d1846989361p-24L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.921fb4p+0L : 0xf.fffffffffff32a3p-4L 0x1.4442d1846989361p-24L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.921fb4p+0L : 0xf.fffffffffff32a4p-4L 0x1.4442d18469893612p-24L : inexact-ok
+= sincos downward ldbl-128 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e136dp-4L 0x1.4442d18469893610281a0f9b0e8dp-24L : inexact-ok
+= sincos tonearest ldbl-128 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e136d8p-4L 0x1.4442d18469893610281a0f9b0e8dp-24L : inexact-ok
+= sincos towardzero ldbl-128 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e136dp-4L 0x1.4442d18469893610281a0f9b0e8dp-24L : inexact-ok
+= sincos upward ldbl-128 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e136d8p-4L 0x1.4442d18469893610281a0f9b0e8ep-24L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e134p-4L 0x1.4442d18469893610281a0f9b0e8p-24L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e138p-4L 0x1.4442d18469893610281a0f9b0e8p-24L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e134p-4L 0x1.4442d18469893610281a0f9b0e8p-24L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.921fb4p+0L : 0xf.fffffffffff32a3661c108e138p-4L 0x1.4442d18469893610281a0f9b0fp-24L : inexact-ok
+= sincos downward dbl-64 0x1.921fb54442d19p+0 : 0xf.ffffffffffff8p-4 -0xb.9676733ae8fe8p-56 : inexact-ok
+= sincos tonearest dbl-64 0x1.921fb54442d19p+0 : 0x1p+0 -0xb.9676733ae8fe8p-56 : inexact-ok
+= sincos towardzero dbl-64 0x1.921fb54442d19p+0 : 0xf.ffffffffffff8p-4 -0xb.9676733ae8fep-56 : inexact-ok
+= sincos upward dbl-64 0x1.921fb54442d19p+0 : 0x1p+0 -0xb.9676733ae8fep-56 : inexact-ok
+= sincos downward ldbl-96-intel 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffp-4L -0xb.9676733ae8fe47dp-56L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.921fb54442d19p+0L : 0x1p+0L -0xb.9676733ae8fe47cp-56L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffp-4L -0xb.9676733ae8fe47cp-56L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.921fb54442d19p+0L : 0x1p+0L -0xb.9676733ae8fe47cp-56L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffp-4L -0xb.9676733ae8fe47dp-56L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.921fb54442d19p+0L : 0x1p+0L -0xb.9676733ae8fe47cp-56L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffp-4L -0xb.9676733ae8fe47cp-56L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.921fb54442d19p+0L : 0x1p+0L -0xb.9676733ae8fe47cp-56L : inexact-ok
+= sincos downward ldbl-128 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffbc8p-4L -0xb.9676733ae8fe47c65dadfb63ede8p-56L : inexact-ok
+= sincos tonearest ldbl-128 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffbdp-4L -0xb.9676733ae8fe47c65dadfb63ede8p-56L : inexact-ok
+= sincos towardzero ldbl-128 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffbc8p-4L -0xb.9676733ae8fe47c65dadfb63edep-56L : inexact-ok
+= sincos upward ldbl-128 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffbdp-4L -0xb.9676733ae8fe47c65dadfb63edep-56L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffff8p-4L -0xb.9676733ae8fe47c65dadfb63fp-56L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffcp-4L -0xb.9676733ae8fe47c65dadfb63ecp-56L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffff8p-4L -0xb.9676733ae8fe47c65dadfb63ecp-56L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.921fb54442d19p+0L : 0xf.fffffffffffffffffffffffffcp-4L -0xb.9676733ae8fe47c65dadfb63ecp-56L : inexact-ok
+= sincos downward dbl-64 0x1.921fb54442d18p+0 : 0xf.ffffffffffff8p-4 0x4.69898cc517018p-56 : inexact-ok
+= sincos tonearest dbl-64 0x1.921fb54442d18p+0 : 0x1p+0 0x4.69898cc51701cp-56 : inexact-ok
+= sincos towardzero dbl-64 0x1.921fb54442d18p+0 : 0xf.ffffffffffff8p-4 0x4.69898cc517018p-56 : inexact-ok
+= sincos upward dbl-64 0x1.921fb54442d18p+0 : 0x1p+0 0x4.69898cc51701cp-56 : inexact-ok
+= sincos downward ldbl-96-intel 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffp-4L 0x4.69898cc51701b838p-56L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.921fb54442d18p+0L : 0x1p+0L 0x4.69898cc51701b838p-56L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffp-4L 0x4.69898cc51701b838p-56L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.921fb54442d18p+0L : 0x1p+0L 0x4.69898cc51701b84p-56L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffp-4L 0x4.69898cc51701b838p-56L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.921fb54442d18p+0L : 0x1p+0L 0x4.69898cc51701b838p-56L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffp-4L 0x4.69898cc51701b838p-56L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.921fb54442d18p+0L : 0x1p+0L 0x4.69898cc51701b84p-56L : inexact-ok
+= sincos downward ldbl-128 0x1.921fb54442d18p+0L : 0xf.ffffffffffffffffffffffffff6p-4L 0x4.69898cc51701b839a252049c1104p-56L : inexact-ok
+= sincos tonearest ldbl-128 0x1.921fb54442d18p+0L : 0xf.ffffffffffffffffffffffffff68p-4L 0x4.69898cc51701b839a252049c1108p-56L : inexact-ok
+= sincos towardzero ldbl-128 0x1.921fb54442d18p+0L : 0xf.ffffffffffffffffffffffffff6p-4L 0x4.69898cc51701b839a252049c1104p-56L : inexact-ok
+= sincos upward ldbl-128 0x1.921fb54442d18p+0L : 0xf.ffffffffffffffffffffffffff68p-4L 0x4.69898cc51701b839a252049c1108p-56L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffffffffffffcp-4L 0x4.69898cc51701b839a252049c1p-56L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.921fb54442d18p+0L : 0x1p+0L 0x4.69898cc51701b839a252049c12p-56L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.921fb54442d18p+0L : 0xf.fffffffffffffffffffffffffcp-4L 0x4.69898cc51701b839a252049c1p-56L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.921fb54442d18p+0L : 0x1p+0L 0x4.69898cc51701b839a252049c12p-56L : inexact-ok
+= sincos downward ldbl-96-intel 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffp-4L -0x7.6733ae8fe47c65ep-68L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.921fb54442d1846ap+0L : 0x1p+0L -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffp-4L -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.921fb54442d1846ap+0L : 0x1p+0L -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffp-4L -0x7.6733ae8fe47c65ep-68L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.921fb54442d1846ap+0L : 0x1p+0L -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffp-4L -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.921fb54442d1846ap+0L : 0x1p+0L -0x7.6733ae8fe47c65d8p-68L : inexact-ok
+= sincos downward ldbl-128 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffffffffffffff8p-4L -0x7.6733ae8fe47c65dadfb63eeeb308p-68L : inexact-ok
+= sincos tonearest ldbl-128 0x1.921fb54442d1846ap+0L : 0x1p+0L -0x7.6733ae8fe47c65dadfb63eeeb304p-68L : inexact-ok
+= sincos towardzero ldbl-128 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffffffffffffff8p-4L -0x7.6733ae8fe47c65dadfb63eeeb304p-68L : inexact-ok
+= sincos upward ldbl-128 0x1.921fb54442d1846ap+0L : 0x1p+0L -0x7.6733ae8fe47c65dadfb63eeeb304p-68L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffffffffffffcp-4L -0x7.6733ae8fe47c65dadfb63eeeb4p-68L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.921fb54442d1846ap+0L : 0x1p+0L -0x7.6733ae8fe47c65dadfb63eeeb4p-68L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.921fb54442d1846ap+0L : 0xf.fffffffffffffffffffffffffcp-4L -0x7.6733ae8fe47c65dadfb63eeeb2p-68L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.921fb54442d1846ap+0L : 0x1p+0L -0x7.6733ae8fe47c65dadfb63eeeb2p-68L : inexact-ok
+= sincos downward ldbl-96-intel 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffp-4L 0x1.898cc51701b839a2p-64L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.921fb54442d18468p+0L : 0x1p+0L 0x1.898cc51701b839a2p-64L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffp-4L 0x1.898cc51701b839a2p-64L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.921fb54442d18468p+0L : 0x1p+0L 0x1.898cc51701b839a4p-64L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffp-4L 0x1.898cc51701b839a2p-64L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0x1p+0L 0x1.898cc51701b839a2p-64L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffp-4L 0x1.898cc51701b839a2p-64L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.921fb54442d18468p+0L : 0x1p+0L 0x1.898cc51701b839a4p-64L : inexact-ok
+= sincos downward ldbl-128 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffffffffffffff8p-4L 0x1.898cc51701b839a252049c1114cfp-64L : inexact-ok
+= sincos tonearest ldbl-128 0x1.921fb54442d18468p+0L : 0x1p+0L 0x1.898cc51701b839a252049c1114dp-64L : inexact-ok
+= sincos towardzero ldbl-128 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffffffffffffff8p-4L 0x1.898cc51701b839a252049c1114cfp-64L : inexact-ok
+= sincos upward ldbl-128 0x1.921fb54442d18468p+0L : 0x1p+0L 0x1.898cc51701b839a252049c1114dp-64L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffffffffffffcp-4L 0x1.898cc51701b839a252049c11148p-64L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.921fb54442d18468p+0L : 0x1p+0L 0x1.898cc51701b839a252049c1115p-64L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.921fb54442d18468p+0L : 0xf.fffffffffffffffffffffffffcp-4L 0x1.898cc51701b839a252049c11148p-64L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.921fb54442d18468p+0L : 0x1p+0L 0x1.898cc51701b839a252049c1115p-64L : inexact-ok
+= sincos downward ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : 0xf.fffffffffffffffffffffffffff8p-4L -0xc.65dadfb63eeeb306717fbe882b38p-116L : inexact-ok
+= sincos tonearest ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : 0x1p+0L -0xc.65dadfb63eeeb306717fbe882b38p-116L : inexact-ok
+= sincos towardzero ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : 0xf.fffffffffffffffffffffffffff8p-4L -0xc.65dadfb63eeeb306717fbe882b3p-116L : inexact-ok
+= sincos upward ldbl-128 0x1.921fb54442d18469898cc51701b9p+0L : 0x1p+0L -0xc.65dadfb63eeeb306717fbe882b3p-116L : inexact-ok
+= sincos downward ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0xf.fffffffffffffffffffffffffff8p-4L 0x3.9a252049c1114cf98e804177d4c6p-116L : inexact-ok
+= sincos tonearest ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0x1p+0L 0x3.9a252049c1114cf98e804177d4c8p-116L : inexact-ok
+= sincos towardzero ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0xf.fffffffffffffffffffffffffff8p-4L 0x3.9a252049c1114cf98e804177d4c6p-116L : inexact-ok
+= sincos upward ldbl-128 0x1.921fb54442d18469898cc51701b8p+0L : 0x1p+0L 0x3.9a252049c1114cf98e804177d4c8p-116L : inexact-ok
+= sincos downward ldbl-128 0x1.921fb54442d18469898cc51702p+0L : 0xf.fffffffffffffffffffffffffff8p-4L -0x4.7c65dadfb63eeeb306717fbe882cp-108L : inexact-ok
+= sincos tonearest ldbl-128 0x1.921fb54442d18469898cc51702p+0L : 0x1p+0L -0x4.7c65dadfb63eeeb306717fbe882cp-108L : inexact-ok
+= sincos towardzero ldbl-128 0x1.921fb54442d18469898cc51702p+0L : 0xf.fffffffffffffffffffffffffff8p-4L -0x4.7c65dadfb63eeeb306717fbe8828p-108L : inexact-ok
+= sincos upward ldbl-128 0x1.921fb54442d18469898cc51702p+0L : 0x1p+0L -0x4.7c65dadfb63eeeb306717fbe8828p-108L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : 0xf.fffffffffffffffffffffffffcp-4L -0x4.7c65dadfb63eeeb306717fbe8ap-108L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : 0x1p+0L -0x4.7c65dadfb63eeeb306717fbe88p-108L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : 0xf.fffffffffffffffffffffffffcp-4L -0x4.7c65dadfb63eeeb306717fbe88p-108L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.921fb54442d18469898cc51702p+0L : 0x1p+0L -0x4.7c65dadfb63eeeb306717fbe88p-108L : inexact-ok
+= sincos downward ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0xf.fffffffffffffffffffffffffff8p-4L 0x3.839a252049c1114cf98e804177d4p-108L : inexact-ok
+= sincos tonearest ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0x1p+0L 0x3.839a252049c1114cf98e804177d4p-108L : inexact-ok
+= sincos towardzero ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0xf.fffffffffffffffffffffffffff8p-4L 0x3.839a252049c1114cf98e804177d4p-108L : inexact-ok
+= sincos upward ldbl-128 0x1.921fb54442d18469898cc517018p+0L : 0x1p+0L 0x3.839a252049c1114cf98e804177d6p-108L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0xf.fffffffffffffffffffffffffcp-4L 0x3.839a252049c1114cf98e804177p-108L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0x1p+0L 0x3.839a252049c1114cf98e804178p-108L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0xf.fffffffffffffffffffffffffcp-4L 0x3.839a252049c1114cf98e804177p-108L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.921fb54442d18469898cc517018p+0L : 0x1p+0L 0x3.839a252049c1114cf98e804178p-108L : inexact-ok
+sincos pi/6
+= sincos downward flt-32 0x8.60a92p-4f : 0x8p-4f 0xd.db3d7p-4f : inexact-ok
+= sincos tonearest flt-32 0x8.60a92p-4f : 0x8p-4f 0xd.db3d7p-4f : inexact-ok
+= sincos towardzero flt-32 0x8.60a92p-4f : 0x8p-4f 0xd.db3d7p-4f : inexact-ok
+= sincos upward flt-32 0x8.60a92p-4f : 0x8.00001p-4f 0xd.db3d8p-4f : inexact-ok
+= sincos downward dbl-64 0x8.60a92p-4 : 0x8.0000036321168p-4 0xd.db3d7237832ep-4 : inexact-ok
+= sincos tonearest dbl-64 0x8.60a92p-4 : 0x8.0000036321168p-4 0xd.db3d7237832ep-4 : inexact-ok
+= sincos towardzero dbl-64 0x8.60a92p-4 : 0x8.0000036321168p-4 0xd.db3d7237832ep-4 : inexact-ok
+= sincos upward dbl-64 0x8.60a92p-4 : 0x8.000003632117p-4 0xd.db3d7237832e8p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x8.60a92p-4L : 0x8.000003632116885p-4L 0xd.db3d7237832e30fp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x8.60a92p-4L : 0x8.000003632116885p-4L 0xd.db3d7237832e30fp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x8.60a92p-4L : 0x8.000003632116885p-4L 0xd.db3d7237832e30fp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x8.60a92p-4L : 0x8.000003632116886p-4L 0xd.db3d7237832e31p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x8.60a92p-4L : 0x8.000003632116885p-4L 0xd.db3d7237832e30fp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x8.60a92p-4L : 0x8.000003632116885p-4L 0xd.db3d7237832e30fp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x8.60a92p-4L : 0x8.000003632116885p-4L 0xd.db3d7237832e30fp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x8.60a92p-4L : 0x8.000003632116886p-4L 0xd.db3d7237832e31p-4L : inexact-ok
+= sincos downward ldbl-128 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4b8p-4L 0xd.db3d7237832e30f6465d599654a8p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4cp-4L 0xd.db3d7237832e30f6465d599654a8p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4b8p-4L 0xd.db3d7237832e30f6465d599654a8p-4L : inexact-ok
+= sincos upward ldbl-128 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4cp-4L 0xd.db3d7237832e30f6465d599654bp-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4p-4L 0xd.db3d7237832e30f6465d599654p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4p-4L 0xd.db3d7237832e30f6465d599654p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b4p-4L 0xd.db3d7237832e30f6465d599654p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x8.60a92p-4L : 0x8.0000036321168852c4130c64b8p-4L 0xd.db3d7237832e30f6465d599658p-4L : inexact-ok
+= sincos downward flt-32 0x8.60a91p-4f : 0x7.fffffp-4f 0xd.db3d7p-4f : inexact-ok
+= sincos tonearest flt-32 0x8.60a91p-4f : 0x7.fffff8p-4f 0xd.db3d8p-4f : inexact-ok
+= sincos towardzero flt-32 0x8.60a91p-4f : 0x7.fffffp-4f 0xd.db3d7p-4f : inexact-ok
+= sincos upward flt-32 0x8.60a91p-4f : 0x7.fffff8p-4f 0xd.db3d8p-4f : inexact-ok
+= sincos downward dbl-64 0x8.60a91p-4 : 0x7.fffff587e3a04p-4 0xd.db3d7a37832a8p-4 : inexact-ok
+= sincos tonearest dbl-64 0x8.60a91p-4 : 0x7.fffff587e3a04p-4 0xd.db3d7a37832a8p-4 : inexact-ok
+= sincos towardzero dbl-64 0x8.60a91p-4 : 0x7.fffff587e3a04p-4 0xd.db3d7a37832a8p-4 : inexact-ok
+= sincos upward dbl-64 0x8.60a91p-4 : 0x7.fffff587e3a08p-4 0xd.db3d7a37832bp-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x8.60a91p-4L : 0x7.fffff587e3a050c8p-4L 0xd.db3d7a37832aa67p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x8.60a91p-4L : 0x7.fffff587e3a050dp-4L 0xd.db3d7a37832aa68p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x8.60a91p-4L : 0x7.fffff587e3a050c8p-4L 0xd.db3d7a37832aa67p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x8.60a91p-4L : 0x7.fffff587e3a050dp-4L 0xd.db3d7a37832aa68p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x8.60a91p-4L : 0x7.fffff587e3a050c8p-4L 0xd.db3d7a37832aa67p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x8.60a91p-4L : 0x7.fffff587e3a050dp-4L 0xd.db3d7a37832aa68p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x8.60a91p-4L : 0x7.fffff587e3a050c8p-4L 0xd.db3d7a37832aa67p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x8.60a91p-4L : 0x7.fffff587e3a050dp-4L 0xd.db3d7a37832aa68p-4L : inexact-ok
+= sincos downward ldbl-128 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc728p-4L 0xd.db3d7a37832aa678a274956dfd28p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc728p-4L 0xd.db3d7a37832aa678a274956dfd3p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc728p-4L 0xd.db3d7a37832aa678a274956dfd28p-4L : inexact-ok
+= sincos upward ldbl-128 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc72cp-4L 0xd.db3d7a37832aa678a274956dfd3p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc6p-4L 0xd.db3d7a37832aa678a274956dfcp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc8p-4L 0xd.db3d7a37832aa678a274956dfcp-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc6p-4L 0xd.db3d7a37832aa678a274956dfcp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x8.60a91p-4L : 0x7.fffff587e3a050cf967fba7bc8p-4L 0xd.db3d7a37832aa678a274956ep-4L : inexact-ok
+= sincos downward dbl-64 0x8.60a91c16b9b3p-4 : 0x8p-4 0xd.db3d742c2655p-4 : inexact-ok
+= sincos tonearest dbl-64 0x8.60a91c16b9b3p-4 : 0x8p-4 0xd.db3d742c2655p-4 : inexact-ok
+= sincos towardzero dbl-64 0x8.60a91c16b9b3p-4 : 0x8p-4 0xd.db3d742c2655p-4 : inexact-ok
+= sincos upward dbl-64 0x8.60a91c16b9b3p-4 : 0x8.0000000000008p-4 0xd.db3d742c26558p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L 0xd.db3d742c26551afp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L 0xd.db3d742c26551afp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L 0xd.db3d742c26551afp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x8.60a91c16b9b3p-4L : 0x8.000000000000359p-4L 0xd.db3d742c26551bp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L 0xd.db3d742c26551afp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L 0xd.db3d742c26551afp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x8.60a91c16b9b3p-4L : 0x8.000000000000358p-4L 0xd.db3d742c26551afp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x8.60a91c16b9b3p-4L : 0x8.000000000000359p-4L 0xd.db3d742c26551bp-4L : inexact-ok
+= sincos downward ldbl-128 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5157ep-4L 0xd.db3d742c26551af29a6e23c11f4p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5157ep-4L 0xd.db3d742c26551af29a6e23c11f48p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5157ep-4L 0xd.db3d742c26551af29a6e23c11f4p-4L : inexact-ok
+= sincos upward ldbl-128 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5157e8p-4L 0xd.db3d742c26551af29a6e23c11f48p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5154p-4L 0xd.db3d742c26551af29a6e23c11cp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5158p-4L 0xd.db3d742c26551af29a6e23c12p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5154p-4L 0xd.db3d742c26551af29a6e23c11cp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x8.60a91c16b9b3p-4L : 0x8.00000000000035858118fd5158p-4L 0xd.db3d742c26551af29a6e23c12p-4L : inexact-ok
+= sincos downward dbl-64 0x8.60a91c16b9b28p-4 : 0x7.ffffffffffffcp-4 0xd.db3d742c2655p-4 : inexact-ok
+= sincos tonearest dbl-64 0x8.60a91c16b9b28p-4 : 0x7.ffffffffffffcp-4 0xd.db3d742c26558p-4 : inexact-ok
+= sincos towardzero dbl-64 0x8.60a91c16b9b28p-4 : 0x7.ffffffffffffcp-4 0xd.db3d742c2655p-4 : inexact-ok
+= sincos upward dbl-64 0x8.60a91c16b9b28p-4 : 0x8p-4 0xd.db3d742c26558p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L 0xd.db3d742c26555afp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L 0xd.db3d742c26555afp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L 0xd.db3d742c26555afp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6bp-4L 0xd.db3d742c26555bp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L 0xd.db3d742c26555afp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L 0xd.db3d742c26555afp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6a8p-4L 0xd.db3d742c26555afp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6bp-4L 0xd.db3d742c26555bp-4L : inexact-ok
+= sincos downward ldbl-128 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eae08p-4L 0xd.db3d742c26555af29a6e23c11f3p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eae0cp-4L 0xd.db3d742c26555af29a6e23c11f38p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eae08p-4L 0xd.db3d742c26555af29a6e23c11f3p-4L : inexact-ok
+= sincos upward ldbl-128 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eae0cp-4L 0xd.db3d742c26555af29a6e23c11f38p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eaep-4L 0xd.db3d742c26555af29a6e23c11cp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eaep-4L 0xd.db3d742c26555af29a6e23c12p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1eaep-4L 0xd.db3d742c26555af29a6e23c11cp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x8.60a91c16b9b28p-4L : 0x7.ffffffffffffc6ab95779c1ebp-4L 0xd.db3d742c26555af29a6e23c12p-4L : inexact-ok
+= sincos downward ldbl-96-intel 0x8.60a91c16b9b2c24p-4L : 0x8p-4L 0xd.db3d742c265539dp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000001p-4L 0xd.db3d742c265539dp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x8.60a91c16b9b2c24p-4L : 0x8p-4L 0xd.db3d742c265539dp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000001p-4L 0xd.db3d742c265539ep-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x8.60a91c16b9b2c24p-4L : 0x8p-4L 0xd.db3d742c265539dp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000001p-4L 0xd.db3d742c265539dp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x8.60a91c16b9b2c24p-4L : 0x8p-4L 0xd.db3d742c265539dp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000001p-4L 0xd.db3d742c265539ep-4L : inexact-ok
+= sincos downward ldbl-128 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed673p-4L 0xd.db3d742c265539d29a6e23c11fa8p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed673p-4L 0xd.db3d742c265539d29a6e23c11fbp-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed673p-4L 0xd.db3d742c265539d29a6e23c11fa8p-4L : inexact-ok
+= sincos upward ldbl-128 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed6738p-4L 0xd.db3d742c265539d29a6e23c11fbp-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed64p-4L 0xd.db3d742c265539d29a6e23c11cp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed68p-4L 0xd.db3d742c265539d29a6e23c12p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed64p-4L 0xd.db3d742c265539d29a6e23c11cp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x8.60a91c16b9b2c24p-4L : 0x8.000000000000000b5feca2ed68p-4L 0xd.db3d742c265539d29a6e23c12p-4L : inexact-ok
+= sincos downward ldbl-96-intel 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffff8p-4L 0xd.db3d742c265539dp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x8.60a91c16b9b2c23p-4L : 0x8p-4L 0xd.db3d742c265539ep-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffff8p-4L 0xd.db3d742c265539dp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x8.60a91c16b9b2c23p-4L : 0x8p-4L 0xd.db3d742c265539ep-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffff8p-4L 0xd.db3d742c265539dp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x8.60a91c16b9b2c23p-4L : 0x8p-4L 0xd.db3d742c265539ep-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffff8p-4L 0xd.db3d742c265539dp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x8.60a91c16b9b2c23p-4L : 0x8p-4L 0xd.db3d742c265539ep-4L : inexact-ok
+= sincos downward ldbl-128 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec140dcp-4L 0xd.db3d742c265539da9a6e23c11fa8p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec140dcp-4L 0xd.db3d742c265539da9a6e23c11fbp-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec140dcp-4L 0xd.db3d742c265539da9a6e23c11fa8p-4L : inexact-ok
+= sincos upward ldbl-128 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec140ep-4L 0xd.db3d742c265539da9a6e23c11fbp-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec14p-4L 0xd.db3d742c265539da9a6e23c11cp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec14p-4L 0xd.db3d742c265539da9a6e23c12p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec14p-4L 0xd.db3d742c265539da9a6e23c11cp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x8.60a91c16b9b2c23p-4L : 0x7.fffffffffffffffd84af2ec142p-4L 0xd.db3d742c265539da9a6e23c12p-4L : inexact-ok
+= sincos downward ldbl-128 0x8.60a91c16b9b2c232dd99707ab3d8p-4L : 0x8p-4L 0xd.db3d742c265539d92ba16b83c5cp-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8.60a91c16b9b2c232dd99707ab3d8p-4L : 0x8p-4L 0xd.db3d742c265539d92ba16b83c5cp-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8.60a91c16b9b2c232dd99707ab3d8p-4L : 0x8p-4L 0xd.db3d742c265539d92ba16b83c5cp-4L : inexact-ok
+= sincos upward ldbl-128 0x8.60a91c16b9b2c232dd99707ab3d8p-4L : 0x8.0000000000000000000000000008p-4L 0xd.db3d742c265539d92ba16b83c5c8p-4L : inexact-ok
+= sincos downward ldbl-128 0x8.60a91c16b9b2c232dd99707ab3dp-4L : 0x7.fffffffffffffffffffffffffff8p-4L 0xd.db3d742c265539d92ba16b83c5cp-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8.60a91c16b9b2c232dd99707ab3dp-4L : 0x7.fffffffffffffffffffffffffffcp-4L 0xd.db3d742c265539d92ba16b83c5c8p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8.60a91c16b9b2c232dd99707ab3dp-4L : 0x7.fffffffffffffffffffffffffff8p-4L 0xd.db3d742c265539d92ba16b83c5cp-4L : inexact-ok
+= sincos upward ldbl-128 0x8.60a91c16b9b2c232dd99707ab3dp-4L : 0x7.fffffffffffffffffffffffffffcp-4L 0xd.db3d742c265539d92ba16b83c5c8p-4L : inexact-ok
+= sincos downward ldbl-128 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8.000000000000000000000000002p-4L 0xd.db3d742c265539d92ba16b83c5a8p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8.000000000000000000000000002p-4L 0xd.db3d742c265539d92ba16b83c5bp-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8.000000000000000000000000002p-4L 0xd.db3d742c265539d92ba16b83c5a8p-4L : inexact-ok
+= sincos upward ldbl-128 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8.0000000000000000000000000028p-4L 0xd.db3d742c265539d92ba16b83c5bp-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8p-4L 0xd.db3d742c265539d92ba16b83c4p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8p-4L 0xd.db3d742c265539d92ba16b83c4p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8p-4L 0xd.db3d742c265539d92ba16b83c4p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x8.60a91c16b9b2c232dd99707ab4p-4L : 0x8.00000000000000000000000004p-4L 0xd.db3d742c265539d92ba16b83c8p-4L : inexact-ok
+= sincos downward ldbl-128 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcacp-4L 0xd.db3d742c265539d92ba16b83c7a8p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcacp-4L 0xd.db3d742c265539d92ba16b83c7bp-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcacp-4L 0xd.db3d742c265539d92ba16b83c7a8p-4L : inexact-ok
+= sincos upward ldbl-128 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcbp-4L 0xd.db3d742c265539d92ba16b83c7bp-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcp-4L 0xd.db3d742c265539d92ba16b83c4p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcp-4L 0xd.db3d742c265539d92ba16b83c8p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffcp-4L 0xd.db3d742c265539d92ba16b83c4p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x8.60a91c16b9b2c232dd99707abp-4L : 0x7.fffffffffffffffffffffffffep-4L 0xd.db3d742c265539d92ba16b83c8p-4L : inexact-ok
+sincos pi/3
+= sincos downward flt-32 0x1.0c1524p+0f : 0xd.db3d7p-4f 0x7.fffff8p-4f : inexact-ok
+= sincos tonearest flt-32 0x1.0c1524p+0f : 0xd.db3d8p-4f 0x7.fffff8p-4f : inexact-ok
+= sincos towardzero flt-32 0x1.0c1524p+0f : 0xd.db3d7p-4f 0x7.fffff8p-4f : inexact-ok
+= sincos upward flt-32 0x1.0c1524p+0f : 0xd.db3d8p-4f 0x8p-4f : inexact-ok
+= sincos downward dbl-64 0x1.0c1524p+0 : 0xd.db3d78156ca08p-4 0x7.fffff939bdd18p-4 : inexact-ok
+= sincos tonearest dbl-64 0x1.0c1524p+0 : 0xd.db3d78156ca1p-4 0x7.fffff939bdd18p-4 : inexact-ok
+= sincos towardzero dbl-64 0x1.0c1524p+0 : 0xd.db3d78156ca08p-4 0x7.fffff939bdd18p-4 : inexact-ok
+= sincos upward dbl-64 0x1.0c1524p+0 : 0xd.db3d78156ca1p-4 0x7.fffff939bdd1cp-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x1.0c1524p+0L : 0xd.db3d78156ca0cfbp-4L 0x7.fffff939bdd1803p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.0c1524p+0L : 0xd.db3d78156ca0cfbp-4L 0x7.fffff939bdd18038p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.0c1524p+0L : 0xd.db3d78156ca0cfbp-4L 0x7.fffff939bdd1803p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.0c1524p+0L : 0xd.db3d78156ca0cfcp-4L 0x7.fffff939bdd18038p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.0c1524p+0L : 0xd.db3d78156ca0cfbp-4L 0x7.fffff939bdd1803p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.0c1524p+0L : 0xd.db3d78156ca0cfbp-4L 0x7.fffff939bdd18038p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.0c1524p+0L : 0xd.db3d78156ca0cfbp-4L 0x7.fffff939bdd1803p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.0c1524p+0L : 0xd.db3d78156ca0cfcp-4L 0x7.fffff939bdd18038p-4L : inexact-ok
+= sincos downward ldbl-128 0x1.0c1524p+0L : 0xd.db3d78156ca0cfb4fd88fd27f7d8p-4L 0x7.fffff939bdd18035537d20fef1bp-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1.0c1524p+0L : 0xd.db3d78156ca0cfb4fd88fd27f7ep-4L 0x7.fffff939bdd18035537d20fef1b4p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1.0c1524p+0L : 0xd.db3d78156ca0cfb4fd88fd27f7d8p-4L 0x7.fffff939bdd18035537d20fef1bp-4L : inexact-ok
+= sincos upward ldbl-128 0x1.0c1524p+0L : 0xd.db3d78156ca0cfb4fd88fd27f7ep-4L 0x7.fffff939bdd18035537d20fef1b4p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.0c1524p+0L : 0xd.db3d78156ca0cfb4fd88fd27f4p-4L 0x7.fffff939bdd18035537d20fefp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.0c1524p+0L : 0xd.db3d78156ca0cfb4fd88fd27f8p-4L 0x7.fffff939bdd18035537d20fef2p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.0c1524p+0L : 0xd.db3d78156ca0cfb4fd88fd27f4p-4L 0x7.fffff939bdd18035537d20fefp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.0c1524p+0L : 0xd.db3d78156ca0cfb4fd88fd27f8p-4L 0x7.fffff939bdd18035537d20fef2p-4L : inexact-ok
+= sincos downward flt-32 0x1.0c1522p+0f : 0xd.db3d6p-4f 0x8.00001p-4f : inexact-ok
+= sincos tonearest flt-32 0x1.0c1522p+0f : 0xd.db3d7p-4f 0x8.00001p-4f : inexact-ok
+= sincos towardzero flt-32 0x1.0c1522p+0f : 0xd.db3d6p-4f 0x8.00001p-4f : inexact-ok
+= sincos upward flt-32 0x1.0c1522p+0f : 0xd.db3d7p-4f 0x8.00002p-4f : inexact-ok
+= sincos downward dbl-64 0x1.0c1522p+0 : 0xd.db3d68156c928p-4 0x8.000014f038b18p-4 : inexact-ok
+= sincos tonearest dbl-64 0x1.0c1522p+0 : 0xd.db3d68156c928p-4 0x8.000014f038b18p-4 : inexact-ok
+= sincos towardzero dbl-64 0x1.0c1522p+0 : 0xd.db3d68156c928p-4 0x8.000014f038b18p-4 : inexact-ok
+= sincos upward dbl-64 0x1.0c1522p+0 : 0xd.db3d68156c93p-4 0x8.000014f038b2p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x1.0c1522p+0L : 0xd.db3d68156c92a5bp-4L 0x8.000014f038b1abp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.0c1522p+0L : 0xd.db3d68156c92a5cp-4L 0x8.000014f038b1ab1p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.0c1522p+0L : 0xd.db3d68156c92a5bp-4L 0x8.000014f038b1abp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.0c1522p+0L : 0xd.db3d68156c92a5cp-4L 0x8.000014f038b1ab1p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.0c1522p+0L : 0xd.db3d68156c92a5bp-4L 0x8.000014f038b1abp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.0c1522p+0L : 0xd.db3d68156c92a5cp-4L 0x8.000014f038b1ab1p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.0c1522p+0L : 0xd.db3d68156c92a5bp-4L 0x8.000014f038b1abp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.0c1522p+0L : 0xd.db3d68156c92a5cp-4L 0x8.000014f038b1ab1p-4L : inexact-ok
+= sincos downward ldbl-128 0x1.0c1522p+0L : 0xd.db3d68156c92a5be750863ea3d58p-4L 0x8.000014f038b1ab0e902f68119158p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1.0c1522p+0L : 0xd.db3d68156c92a5be750863ea3d58p-4L 0x8.000014f038b1ab0e902f6811916p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1.0c1522p+0L : 0xd.db3d68156c92a5be750863ea3d58p-4L 0x8.000014f038b1ab0e902f68119158p-4L : inexact-ok
+= sincos upward ldbl-128 0x1.0c1522p+0L : 0xd.db3d68156c92a5be750863ea3d6p-4L 0x8.000014f038b1ab0e902f6811916p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.0c1522p+0L : 0xd.db3d68156c92a5be750863ea3cp-4L 0x8.000014f038b1ab0e902f68119p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.0c1522p+0L : 0xd.db3d68156c92a5be750863ea3cp-4L 0x8.000014f038b1ab0e902f68119p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.0c1522p+0L : 0xd.db3d68156c92a5be750863ea3cp-4L 0x8.000014f038b1ab0e902f68119p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.0c1522p+0L : 0xd.db3d68156c92a5be750863ea4p-4L 0x8.000014f038b1ab0e902f681194p-4L : inexact-ok
+= sincos downward dbl-64 0x1.0c152382d7366p+0 : 0xd.db3d742c2655p-4 0x7.ffffffffffff8p-4 : inexact-ok
+= sincos tonearest dbl-64 0x1.0c152382d7366p+0 : 0xd.db3d742c26558p-4 0x7.ffffffffffff8p-4 : inexact-ok
+= sincos towardzero dbl-64 0x1.0c152382d7366p+0 : 0xd.db3d742c2655p-4 0x7.ffffffffffff8p-4 : inexact-ok
+= sincos upward dbl-64 0x1.0c152382d7366p+0 : 0xd.db3d742c26558p-4 0x7.ffffffffffffcp-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x1.0c152382d7366p+0L : 0xd.db3d742c265577ap-4L 0x7.ffffffffffff94fp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.0c152382d7366p+0L : 0xd.db3d742c265577ap-4L 0x7.ffffffffffff94f8p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.0c152382d7366p+0L : 0xd.db3d742c265577ap-4L 0x7.ffffffffffff94fp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.0c152382d7366p+0L : 0xd.db3d742c265577bp-4L 0x7.ffffffffffff94f8p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.0c152382d7366p+0L : 0xd.db3d742c265577ap-4L 0x7.ffffffffffff94fp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.0c152382d7366p+0L : 0xd.db3d742c265577ap-4L 0x7.ffffffffffff94f8p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.0c152382d7366p+0L : 0xd.db3d742c265577ap-4L 0x7.ffffffffffff94fp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.0c152382d7366p+0L : 0xd.db3d742c265577bp-4L 0x7.ffffffffffff94f8p-4L : inexact-ok
+= sincos downward ldbl-128 0x1.0c152382d7366p+0L : 0xd.db3d742c265577a64e07fb091048p-4L 0x7.ffffffffffff94f4fdce055d4ed4p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1.0c152382d7366p+0L : 0xd.db3d742c265577a64e07fb09105p-4L 0x7.ffffffffffff94f4fdce055d4ed4p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1.0c152382d7366p+0L : 0xd.db3d742c265577a64e07fb091048p-4L 0x7.ffffffffffff94f4fdce055d4ed4p-4L : inexact-ok
+= sincos upward ldbl-128 0x1.0c152382d7366p+0L : 0xd.db3d742c265577a64e07fb09105p-4L 0x7.ffffffffffff94f4fdce055d4ed8p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.0c152382d7366p+0L : 0xd.db3d742c265577a64e07fb091p-4L 0x7.ffffffffffff94f4fdce055d4ep-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.0c152382d7366p+0L : 0xd.db3d742c265577a64e07fb091p-4L 0x7.ffffffffffff94f4fdce055d4ep-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.0c152382d7366p+0L : 0xd.db3d742c265577a64e07fb091p-4L 0x7.ffffffffffff94f4fdce055d4ep-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.0c152382d7366p+0L : 0xd.db3d742c265577a64e07fb0914p-4L 0x7.ffffffffffff94f4fdce055d5p-4L : inexact-ok
+= sincos downward dbl-64 0x1.0c152382d7365p+0 : 0xd.db3d742c26548p-4 0x8p-4 : inexact-ok
+= sincos tonearest dbl-64 0x1.0c152382d7365p+0 : 0xd.db3d742c2655p-4 0x8.0000000000008p-4 : inexact-ok
+= sincos towardzero dbl-64 0x1.0c152382d7365p+0 : 0xd.db3d742c26548p-4 0x8p-4 : inexact-ok
+= sincos upward dbl-64 0x1.0c152382d7365p+0 : 0xd.db3d742c2655p-4 0x8.0000000000008p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7ap-4L 0x8.00000000000072ap-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7ap-4L 0x8.00000000000072bp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7ap-4L 0x8.00000000000072ap-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7bp-4L 0x8.00000000000072bp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7ap-4L 0x8.00000000000072ap-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7ap-4L 0x8.00000000000072bp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7ap-4L 0x8.00000000000072ap-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7bp-4L 0x8.00000000000072bp-4L : inexact-ok
+= sincos downward ldbl-128 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7a64e07fb09101p-4L 0x8.00000000000072a8d510c7c2a248p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7a64e07fb09101p-4L 0x8.00000000000072a8d510c7c2a25p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7a64e07fb09101p-4L 0x8.00000000000072a8d510c7c2a248p-4L : inexact-ok
+= sincos upward ldbl-128 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7a64e07fb091018p-4L 0x8.00000000000072a8d510c7c2a25p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7a64e07fb091p-4L 0x8.00000000000072a8d510c7c2ap-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7a64e07fb091p-4L 0x8.00000000000072a8d510c7c2a4p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7a64e07fb091p-4L 0x8.00000000000072a8d510c7c2ap-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.0c152382d7365p+0L : 0xd.db3d742c2654f7a64e07fb0914p-4L 0x8.00000000000072a8d510c7c2a4p-4L : inexact-ok
+= sincos downward ldbl-96-intel 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539ep-4L 0x7.ffffffffffffffe8p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539ep-4L 0x7.ffffffffffffffe8p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539ep-4L 0x7.ffffffffffffffe8p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539fp-4L 0x7.fffffffffffffffp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539ep-4L 0x7.ffffffffffffffe8p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539ep-4L 0x7.ffffffffffffffe8p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539ep-4L 0x7.ffffffffffffffe8p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539fp-4L 0x7.fffffffffffffffp-4L : inexact-ok
+= sincos downward ldbl-128 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539e64e07fb0911e8p-4L 0x7.ffffffffffffffe94026ba253198p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539e64e07fb0911e8p-4L 0x7.ffffffffffffffe94026ba25319cp-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539e64e07fb0911e8p-4L 0x7.ffffffffffffffe94026ba253198p-4L : inexact-ok
+= sincos upward ldbl-128 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539e64e07fb0911fp-4L 0x7.ffffffffffffffe94026ba25319cp-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539e64e07fb091p-4L 0x7.ffffffffffffffe94026ba253p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539e64e07fb091p-4L 0x7.ffffffffffffffe94026ba2532p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539e64e07fb091p-4L 0x7.ffffffffffffffe94026ba253p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.0c152382d7365848p+0L : 0xd.db3d742c265539e64e07fb0914p-4L 0x7.ffffffffffffffe94026ba2532p-4L : inexact-ok
+= sincos downward ldbl-96-intel 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539dp-4L 0x8p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539dp-4L 0x8p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539dp-4L 0x8p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539ep-4L 0x8.000000000000001p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539dp-4L 0x8p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539dp-4L 0x8p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539dp-4L 0x8p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539ep-4L 0x8.000000000000001p-4L : inexact-ok
+= sincos downward ldbl-128 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539d64e07fb0911e8p-4L 0x8.0000000000000004f6a1a27d7e4p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539d64e07fb0911e8p-4L 0x8.0000000000000004f6a1a27d7e48p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539d64e07fb0911e8p-4L 0x8.0000000000000004f6a1a27d7e4p-4L : inexact-ok
+= sincos upward ldbl-128 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539d64e07fb0911fp-4L 0x8.0000000000000004f6a1a27d7e48p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539d64e07fb091p-4L 0x8.0000000000000004f6a1a27d7cp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539d64e07fb091p-4L 0x8.0000000000000004f6a1a27d8p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539d64e07fb091p-4L 0x8.0000000000000004f6a1a27d7cp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.0c152382d7365846p+0L : 0xd.db3d742c265539d64e07fb0914p-4L 0x8.0000000000000004f6a1a27d8p-4L : inexact-ok
+= sincos downward ldbl-128 0x1.0c152382d73658465bb32e0f567bp+0L : 0xd.db3d742c265539d92ba16b83c5cp-4L 0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1.0c152382d73658465bb32e0f567bp+0L : 0xd.db3d742c265539d92ba16b83c5cp-4L 0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1.0c152382d73658465bb32e0f567bp+0L : 0xd.db3d742c265539d92ba16b83c5cp-4L 0x7.fffffffffffffffffffffffffffcp-4L : inexact-ok
+= sincos upward ldbl-128 0x1.0c152382d73658465bb32e0f567bp+0L : 0xd.db3d742c265539d92ba16b83c5c8p-4L 0x8p-4L : inexact-ok
+= sincos downward ldbl-128 0x1.0c152382d73658465bb32e0f567ap+0L : 0xd.db3d742c265539d92ba16b83c5b8p-4L 0x8.0000000000000000000000000008p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1.0c152382d73658465bb32e0f567ap+0L : 0xd.db3d742c265539d92ba16b83c5b8p-4L 0x8.0000000000000000000000000008p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1.0c152382d73658465bb32e0f567ap+0L : 0xd.db3d742c265539d92ba16b83c5b8p-4L 0x8.0000000000000000000000000008p-4L : inexact-ok
+= sincos upward ldbl-128 0x1.0c152382d73658465bb32e0f567ap+0L : 0xd.db3d742c265539d92ba16b83c5cp-4L 0x8.000000000000000000000000001p-4L : inexact-ok
+= sincos downward ldbl-128 0x1.0c152382d73658465bb32e0f568p+0L : 0xd.db3d742c265539d92ba16b83c5e8p-4L 0x7.ffffffffffffffffffffffffffb8p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1.0c152382d73658465bb32e0f568p+0L : 0xd.db3d742c265539d92ba16b83c5e8p-4L 0x7.ffffffffffffffffffffffffffb8p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1.0c152382d73658465bb32e0f568p+0L : 0xd.db3d742c265539d92ba16b83c5e8p-4L 0x7.ffffffffffffffffffffffffffb8p-4L : inexact-ok
+= sincos upward ldbl-128 0x1.0c152382d73658465bb32e0f568p+0L : 0xd.db3d742c265539d92ba16b83c5fp-4L 0x7.ffffffffffffffffffffffffffbcp-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.0c152382d73658465bb32e0f568p+0L : 0xd.db3d742c265539d92ba16b83c4p-4L 0x7.fffffffffffffffffffffffffep-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.0c152382d73658465bb32e0f568p+0L : 0xd.db3d742c265539d92ba16b83c4p-4L 0x8p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.0c152382d73658465bb32e0f568p+0L : 0xd.db3d742c265539d92ba16b83c4p-4L 0x7.fffffffffffffffffffffffffep-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.0c152382d73658465bb32e0f568p+0L : 0xd.db3d742c265539d92ba16b83c8p-4L 0x8p-4L : inexact-ok
+= sincos downward ldbl-128 0x1.0c152382d73658465bb32e0f56p+0L : 0xd.db3d742c265539d92ba16b83c1e8p-4L 0x8.00000000000000000000000006ap-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1.0c152382d73658465bb32e0f56p+0L : 0xd.db3d742c265539d92ba16b83c1e8p-4L 0x8.00000000000000000000000006a8p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1.0c152382d73658465bb32e0f56p+0L : 0xd.db3d742c265539d92ba16b83c1e8p-4L 0x8.00000000000000000000000006ap-4L : inexact-ok
+= sincos upward ldbl-128 0x1.0c152382d73658465bb32e0f56p+0L : 0xd.db3d742c265539d92ba16b83c1fp-4L 0x8.00000000000000000000000006a8p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x1.0c152382d73658465bb32e0f56p+0L : 0xd.db3d742c265539d92ba16b83cp-4L 0x8.00000000000000000000000004p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1.0c152382d73658465bb32e0f56p+0L : 0xd.db3d742c265539d92ba16b83cp-4L 0x8.00000000000000000000000008p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1.0c152382d73658465bb32e0f56p+0L : 0xd.db3d742c265539d92ba16b83cp-4L 0x8.00000000000000000000000004p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x1.0c152382d73658465bb32e0f56p+0L : 0xd.db3d742c265539d92ba16b83c4p-4L 0x8.00000000000000000000000008p-4L : inexact-ok
+sincos 0.75
+= sincos downward flt-32 0xcp-4f : 0xa.e7fep-4f 0xb.b4ff6p-4f : inexact-ok
+= sincos tonearest flt-32 0xcp-4f : 0xa.e7fe1p-4f 0xb.b4ff6p-4f : inexact-ok
+= sincos towardzero flt-32 0xcp-4f : 0xa.e7fep-4f 0xb.b4ff6p-4f : inexact-ok
+= sincos upward flt-32 0xcp-4f : 0xa.e7fe1p-4f 0xb.b4ff7p-4f : inexact-ok
+= sincos downward dbl-64 0xcp-4 : 0xa.e7fe0b5fc7868p-4 0xb.b4ff632a908fp-4 : inexact-ok
+= sincos tonearest dbl-64 0xcp-4 : 0xa.e7fe0b5fc7868p-4 0xb.b4ff632a908f8p-4 : inexact-ok
+= sincos towardzero dbl-64 0xcp-4 : 0xa.e7fe0b5fc7868p-4 0xb.b4ff632a908fp-4 : inexact-ok
+= sincos upward dbl-64 0xcp-4 : 0xa.e7fe0b5fc787p-4 0xb.b4ff632a908f8p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0xcp-4L : 0xa.e7fe0b5fc786b2dp-4L 0xb.b4ff632a908f73ep-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xcp-4L : 0xa.e7fe0b5fc786b2ep-4L 0xb.b4ff632a908f73fp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xcp-4L : 0xa.e7fe0b5fc786b2dp-4L 0xb.b4ff632a908f73ep-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xcp-4L : 0xa.e7fe0b5fc786b2ep-4L 0xb.b4ff632a908f73fp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xcp-4L : 0xa.e7fe0b5fc786b2dp-4L 0xb.b4ff632a908f73ep-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xcp-4L : 0xa.e7fe0b5fc786b2ep-4L 0xb.b4ff632a908f73fp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xcp-4L : 0xa.e7fe0b5fc786b2dp-4L 0xb.b4ff632a908f73ep-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xcp-4L : 0xa.e7fe0b5fc786b2ep-4L 0xb.b4ff632a908f73fp-4L : inexact-ok
+= sincos downward ldbl-128 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af1408p-4L 0xb.b4ff632a908f73ec151839cb9d98p-4L : inexact-ok
+= sincos tonearest ldbl-128 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af1408p-4L 0xb.b4ff632a908f73ec151839cb9d98p-4L : inexact-ok
+= sincos towardzero ldbl-128 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af1408p-4L 0xb.b4ff632a908f73ec151839cb9d98p-4L : inexact-ok
+= sincos upward ldbl-128 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af141p-4L 0xb.b4ff632a908f73ec151839cb9dap-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af14p-4L 0xb.b4ff632a908f73ec151839cb9cp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af14p-4L 0xb.b4ff632a908f73ec151839cb9cp-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af14p-4L 0xb.b4ff632a908f73ec151839cb9cp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xcp-4L : 0xa.e7fe0b5fc786b2d966e1d6af18p-4L 0xb.b4ff632a908f73ec151839cbap-4L : inexact-ok
+sincos 0x1p65
+= sincos downward flt-32 0x2p+64f : -0xc.143e2p-8f 0xf.fb701p-4f : inexact-ok
+= sincos tonearest flt-32 0x2p+64f : -0xc.143e1p-8f 0xf.fb702p-4f : inexact-ok
+= sincos towardzero flt-32 0x2p+64f : -0xc.143e1p-8f 0xf.fb701p-4f : inexact-ok
+= sincos upward flt-32 0x2p+64f : -0xc.143e1p-8f 0xf.fb702p-4f : inexact-ok
+= sincos downward dbl-64 0x2p+64 : -0xc.143e153b0702p-8 0xf.fb701e22987f8p-4 : inexact-ok
+= sincos tonearest dbl-64 0x2p+64 : -0xc.143e153b0702p-8 0xf.fb701e22987f8p-4 : inexact-ok
+= sincos towardzero dbl-64 0x2p+64 : -0xc.143e153b07018p-8 0xf.fb701e22987f8p-4 : inexact-ok
+= sincos upward dbl-64 0x2p+64 : -0xc.143e153b07018p-8 0xf.fb701e22988p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x2p+64L : -0xc.143e153b0701e81p-8L 0xf.fb701e22987fbe6p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x2p+64L : -0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe7p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x2p+64L : -0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe6p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x2p+64L : -0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe7p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x2p+64L : -0xc.143e153b0701e81p-8L 0xf.fb701e22987fbe6p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x2p+64L : -0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe7p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x2p+64L : -0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe6p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x2p+64L : -0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe7p-4L : inexact-ok
+= sincos downward ldbl-128 0x2p+64L : -0xc.143e153b0701e800f9b8a47b75b8p-8L 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x2p+64L : -0xc.143e153b0701e800f9b8a47b75bp-8L 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x2p+64L : -0xc.143e153b0701e800f9b8a47b75bp-8L 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= sincos upward ldbl-128 0x2p+64L : -0xc.143e153b0701e800f9b8a47b75bp-8L 0xf.fb701e22987fbe68852ee2bc8978p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x2p+64L : -0xc.143e153b0701e800f9b8a47b78p-8L 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x2p+64L : -0xc.143e153b0701e800f9b8a47b74p-8L 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x2p+64L : -0xc.143e153b0701e800f9b8a47b74p-8L 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x2p+64L : -0xc.143e153b0701e800f9b8a47b74p-8L 0xf.fb701e22987fbe68852ee2bc8cp-4L : inexact-ok
+sincos -0x1p65
+= sincos downward flt-32 -0x2p+64f : 0xc.143e1p-8f 0xf.fb701p-4f : inexact-ok
+= sincos tonearest flt-32 -0x2p+64f : 0xc.143e1p-8f 0xf.fb702p-4f : inexact-ok
+= sincos towardzero flt-32 -0x2p+64f : 0xc.143e1p-8f 0xf.fb701p-4f : inexact-ok
+= sincos upward flt-32 -0x2p+64f : 0xc.143e2p-8f 0xf.fb702p-4f : inexact-ok
+= sincos downward dbl-64 -0x2p+64 : 0xc.143e153b07018p-8 0xf.fb701e22987f8p-4 : inexact-ok
+= sincos tonearest dbl-64 -0x2p+64 : 0xc.143e153b0702p-8 0xf.fb701e22987f8p-4 : inexact-ok
+= sincos towardzero dbl-64 -0x2p+64 : 0xc.143e153b07018p-8 0xf.fb701e22987f8p-4 : inexact-ok
+= sincos upward dbl-64 -0x2p+64 : 0xc.143e153b0702p-8 0xf.fb701e22988p-4 : inexact-ok
+= sincos downward ldbl-96-intel -0x2p+64L : 0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe6p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel -0x2p+64L : 0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe7p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel -0x2p+64L : 0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe6p-4L : inexact-ok
+= sincos upward ldbl-96-intel -0x2p+64L : 0xc.143e153b0701e81p-8L 0xf.fb701e22987fbe7p-4L : inexact-ok
+= sincos downward ldbl-96-m68k -0x2p+64L : 0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe6p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k -0x2p+64L : 0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe7p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k -0x2p+64L : 0xc.143e153b0701e8p-8L 0xf.fb701e22987fbe6p-4L : inexact-ok
+= sincos upward ldbl-96-m68k -0x2p+64L : 0xc.143e153b0701e81p-8L 0xf.fb701e22987fbe7p-4L : inexact-ok
+= sincos downward ldbl-128 -0x2p+64L : 0xc.143e153b0701e800f9b8a47b75bp-8L 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= sincos tonearest ldbl-128 -0x2p+64L : 0xc.143e153b0701e800f9b8a47b75b8p-8L 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= sincos towardzero ldbl-128 -0x2p+64L : 0xc.143e153b0701e800f9b8a47b75bp-8L 0xf.fb701e22987fbe68852ee2bc897p-4L : inexact-ok
+= sincos upward ldbl-128 -0x2p+64L : 0xc.143e153b0701e800f9b8a47b75b8p-8L 0xf.fb701e22987fbe68852ee2bc8978p-4L : inexact-ok
+= sincos downward ldbl-128ibm -0x2p+64L : 0xc.143e153b0701e800f9b8a47b74p-8L 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm -0x2p+64L : 0xc.143e153b0701e800f9b8a47b74p-8L 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm -0x2p+64L : 0xc.143e153b0701e800f9b8a47b74p-8L 0xf.fb701e22987fbe68852ee2bc88p-4L : inexact-ok
+= sincos upward ldbl-128ibm -0x2p+64L : 0xc.143e153b0701e800f9b8a47b78p-8L 0xf.fb701e22987fbe68852ee2bc8cp-4L : inexact-ok
+sincos 0.80190127184058835
+= sincos downward flt-32 0xc.d4967p-4f : 0xb.7fb6p-4f 0xb.201e7p-4f : inexact-ok
+= sincos tonearest flt-32 0xc.d4967p-4f : 0xb.7fb6p-4f 0xb.201e7p-4f : inexact-ok
+= sincos towardzero flt-32 0xc.d4967p-4f : 0xb.7fb6p-4f 0xb.201e7p-4f : inexact-ok
+= sincos upward flt-32 0xc.d4967p-4f : 0xb.7fb61p-4f 0xb.201e8p-4f : inexact-ok
+= sincos downward dbl-64 0xc.d4967p-4 : 0xb.7fb6002758778p-4 0xb.201e77869a468p-4 : inexact-ok
+= sincos tonearest dbl-64 0xc.d4967p-4 : 0xb.7fb6002758778p-4 0xb.201e77869a468p-4 : inexact-ok
+= sincos towardzero dbl-64 0xc.d4967p-4 : 0xb.7fb6002758778p-4 0xb.201e77869a468p-4 : inexact-ok
+= sincos upward dbl-64 0xc.d4967p-4 : 0xb.7fb600275878p-4 0xb.201e77869a47p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L 0xb.201e77869a46ae2p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L 0xb.201e77869a46ae2p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L 0xb.201e77869a46ae2p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xc.d4967p-4L : 0xb.7fb600275877a61p-4L 0xb.201e77869a46ae3p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L 0xb.201e77869a46ae2p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L 0xb.201e77869a46ae2p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xc.d4967p-4L : 0xb.7fb600275877a6p-4L 0xb.201e77869a46ae2p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xc.d4967p-4L : 0xb.7fb600275877a61p-4L 0xb.201e77869a46ae3p-4L : inexact-ok
+= sincos downward ldbl-128 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3178p-4L 0xb.201e77869a46ae20ce545c5c67p-4L : inexact-ok
+= sincos tonearest ldbl-128 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3178p-4L 0xb.201e77869a46ae20ce545c5c67p-4L : inexact-ok
+= sincos towardzero ldbl-128 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3178p-4L 0xb.201e77869a46ae20ce545c5c67p-4L : inexact-ok
+= sincos upward ldbl-128 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a318p-4L 0xb.201e77869a46ae20ce545c5c6708p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3p-4L 0xb.201e77869a46ae20ce545c5c64p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3p-4L 0xb.201e77869a46ae20ce545c5c68p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a3p-4L 0xb.201e77869a46ae20ce545c5c64p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xc.d4967p-4L : 0xb.7fb600275877a60011766c8a34p-4L 0xb.201e77869a46ae20ce545c5c68p-4L : inexact-ok
+= sincos downward flt-32 0xc.d4966p-4f : 0xb.7fb5fp-4f 0xb.201e8p-4f : inexact-ok
+= sincos tonearest flt-32 0xc.d4966p-4f : 0xb.7fb5fp-4f 0xb.201e8p-4f : inexact-ok
+= sincos towardzero flt-32 0xc.d4966p-4f : 0xb.7fb5fp-4f 0xb.201e8p-4f : inexact-ok
+= sincos upward flt-32 0xc.d4966p-4f : 0xb.7fb6p-4f 0xb.201e9p-4f : inexact-ok
+= sincos downward dbl-64 0xc.d4966p-4 : 0xb.7fb5f50739fap-4 0xb.201e83065041p-4 : inexact-ok
+= sincos tonearest dbl-64 0xc.d4966p-4 : 0xb.7fb5f50739fa8p-4 0xb.201e830650418p-4 : inexact-ok
+= sincos towardzero dbl-64 0xc.d4966p-4 : 0xb.7fb5f50739fap-4 0xb.201e83065041p-4 : inexact-ok
+= sincos upward dbl-64 0xc.d4966p-4 : 0xb.7fb5f50739fa8p-4 0xb.201e830650418p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8p-4L 0xb.201e83065041456p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xc.d4966p-4L : 0xb.7fb5f50739fa5f9p-4L 0xb.201e83065041457p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8p-4L 0xb.201e83065041456p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xc.d4966p-4L : 0xb.7fb5f50739fa5f9p-4L 0xb.201e83065041457p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8p-4L 0xb.201e83065041456p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xc.d4966p-4L : 0xb.7fb5f50739fa5f9p-4L 0xb.201e83065041457p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8p-4L 0xb.201e83065041456p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xc.d4966p-4L : 0xb.7fb5f50739fa5f9p-4L 0xb.201e83065041457p-4L : inexact-ok
+= sincos downward ldbl-128 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1b3p-4L 0xb.201e83065041456a084c70f5a12p-4L : inexact-ok
+= sincos tonearest ldbl-128 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1b3p-4L 0xb.201e83065041456a084c70f5a128p-4L : inexact-ok
+= sincos towardzero ldbl-128 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1b3p-4L 0xb.201e83065041456a084c70f5a12p-4L : inexact-ok
+= sincos upward ldbl-128 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1b38p-4L 0xb.201e83065041456a084c70f5a128p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f18p-4L 0xb.201e83065041456a084c70f5ap-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1cp-4L 0xb.201e83065041456a084c70f5ap-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f18p-4L 0xb.201e83065041456a084c70f5ap-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xc.d4966p-4L : 0xb.7fb5f50739fa5f8acc8f4f3f1cp-4L 0xb.201e83065041456a084c70f5a4p-4L : inexact-ok
+= sincos downward dbl-64 0xc.d4966d92d171p-4 : 0xb.7fb5fe776979p-4 0xb.201e79450884p-4 : inexact-ok
+= sincos tonearest dbl-64 0xc.d4966d92d171p-4 : 0xb.7fb5fe776979p-4 0xb.201e794508848p-4 : inexact-ok
+= sincos towardzero dbl-64 0xc.d4966d92d171p-4 : 0xb.7fb5fe776979p-4 0xb.201e79450884p-4 : inexact-ok
+= sincos upward dbl-64 0xc.d4966d92d171p-4 : 0xb.7fb5fe7769798p-4 0xb.201e794508848p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L 0xb.201e7945088464p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L 0xb.201e7945088464p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L 0xb.201e7945088464p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e7p-4L 0xb.201e79450884641p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L 0xb.201e7945088464p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L 0xb.201e7945088464p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e6p-4L 0xb.201e7945088464p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e7p-4L 0xb.201e79450884641p-4L : inexact-ok
+= sincos downward ldbl-128 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cef98p-4L 0xb.201e794508846402500c44b4f8ep-4L : inexact-ok
+= sincos tonearest ldbl-128 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cef98p-4L 0xb.201e794508846402500c44b4f8e8p-4L : inexact-ok
+= sincos towardzero ldbl-128 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cef98p-4L 0xb.201e794508846402500c44b4f8ep-4L : inexact-ok
+= sincos upward ldbl-128 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cefap-4L 0xb.201e794508846402500c44b4f8e8p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cecp-4L 0xb.201e794508846402500c44b4f8p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cfp-4L 0xb.201e794508846402500c44b4f8p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cecp-4L 0xb.201e794508846402500c44b4f8p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xc.d4966d92d171p-4L : 0xb.7fb5fe7769793e65c978bd3cfp-4L 0xb.201e794508846402500c44b4fcp-4L : inexact-ok
+= sincos downward dbl-64 0xc.d4966d92d1708p-4 : 0xb.7fb5fe7769788p-4 0xb.201e794508848p-4 : inexact-ok
+= sincos tonearest dbl-64 0xc.d4966d92d1708p-4 : 0xb.7fb5fe776979p-4 0xb.201e79450885p-4 : inexact-ok
+= sincos towardzero dbl-64 0xc.d4966d92d1708p-4 : 0xb.7fb5fe7769788p-4 0xb.201e794508848p-4 : inexact-ok
+= sincos upward dbl-64 0xc.d4966d92d1708p-4 : 0xb.7fb5fe776979p-4 0xb.201e79450885p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L 0xb.201e79450884cp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L 0xb.201e79450884cp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L 0xb.201e79450884cp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e57p-4L 0xb.201e79450884c01p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L 0xb.201e79450884cp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L 0xb.201e79450884cp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e56p-4L 0xb.201e79450884cp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e57p-4L 0xb.201e79450884c01p-4L : inexact-ok
+= sincos downward ldbl-128 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8cb08p-4L 0xb.201e79450884c00000000000c17p-4L : inexact-ok
+= sincos tonearest ldbl-128 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8cb08p-4L 0xb.201e79450884c00000000000c178p-4L : inexact-ok
+= sincos towardzero ldbl-128 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8cb08p-4L 0xb.201e79450884c00000000000c17p-4L : inexact-ok
+= sincos upward ldbl-128 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8cb1p-4L 0xb.201e79450884c00000000000c178p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8c8p-4L 0xb.201e79450884c00000000000cp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8ccp-4L 0xb.201e79450884c00000000000cp-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8c8p-4L 0xb.201e79450884c00000000000cp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xc.d4966d92d1708p-4L : 0xb.7fb5fe776978e564d5ae94f8ccp-4L 0xb.201e79450884c00000000000c4p-4L : inexact-ok
+= sincos downward ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e73p-4L 0xb.201e79450884be1p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e74p-4L 0xb.201e79450884be2p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e73p-4L 0xb.201e79450884be1p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e74p-4L 0xb.201e79450884be2p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e73p-4L 0xb.201e79450884be1p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e74p-4L 0xb.201e79450884be2p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e73p-4L 0xb.201e79450884be1p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e74p-4L 0xb.201e79450884be2p-4L : inexact-ok
+= sincos downward ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c30dp-4L 0xb.201e79450884be1d0c24406973ap-4L : inexact-ok
+= sincos tonearest ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c30dp-4L 0xb.201e79450884be1d0c24406973ap-4L : inexact-ok
+= sincos towardzero ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c30dp-4L 0xb.201e79450884be1d0c24406973ap-4L : inexact-ok
+= sincos upward ldbl-128 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c30d8p-4L 0xb.201e79450884be1d0c24406973a8p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c3p-4L 0xb.201e79450884be1d0c2440697p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c3p-4L 0xb.201e79450884be1d0c24406974p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c3p-4L 0xb.201e79450884be1d0c2440697p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xc.d4966d92d17082ap-4L : 0xb.7fb5fe776978e7381aae7a4c34p-4L 0xb.201e79450884be1d0c24406974p-4L : inexact-ok
+= sincos downward ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72p-4L 0xb.201e79450884be2p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e73p-4L 0xb.201e79450884be3p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72p-4L 0xb.201e79450884be2p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e73p-4L 0xb.201e79450884be3p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72p-4L 0xb.201e79450884be2p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e73p-4L 0xb.201e79450884be3p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72p-4L 0xb.201e79450884be2p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e73p-4L 0xb.201e79450884be3p-4L : inexact-ok
+= sincos downward ldbl-128 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa9001072848p-4L 0xb.201e79450884be288bda3ee0dd18p-4L : inexact-ok
+= sincos tonearest ldbl-128 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa9001072848p-4L 0xb.201e79450884be288bda3ee0dd18p-4L : inexact-ok
+= sincos towardzero ldbl-128 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa9001072848p-4L 0xb.201e79450884be288bda3ee0dd18p-4L : inexact-ok
+= sincos upward ldbl-128 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa900107285p-4L 0xb.201e79450884be288bda3ee0dd2p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa90010728p-4L 0xb.201e79450884be288bda3ee0dcp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa90010728p-4L 0xb.201e79450884be288bda3ee0dcp-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa90010728p-4L 0xb.201e79450884be288bda3ee0dcp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xc.d4966d92d170829p-4L : 0xb.7fb5fe776978e72cfa9001072cp-4L 0xb.201e79450884be288bda3ee0ep-4L : inexact-ok
+= sincos downward ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.7fb5fe776978e732912810356318p-4L 0xb.201e79450884be22c53e47ed16d8p-4L : inexact-ok
+= sincos tonearest ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.7fb5fe776978e732912810356318p-4L 0xb.201e79450884be22c53e47ed16d8p-4L : inexact-ok
+= sincos towardzero ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.7fb5fe776978e732912810356318p-4L 0xb.201e79450884be22c53e47ed16d8p-4L : inexact-ok
+= sincos upward ldbl-128 0xc.d4966d92d17082980965c1a663c8p-4L : 0xb.7fb5fe776978e73291281035632p-4L 0xb.201e79450884be22c53e47ed16ep-4L : inexact-ok
+= sincos downward ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.7fb5fe776978e73291281035631p-4L 0xb.201e79450884be22c53e47ed16ep-4L : inexact-ok
+= sincos tonearest ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.7fb5fe776978e732912810356318p-4L 0xb.201e79450884be22c53e47ed16ep-4L : inexact-ok
+= sincos towardzero ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.7fb5fe776978e73291281035631p-4L 0xb.201e79450884be22c53e47ed16ep-4L : inexact-ok
+= sincos upward ldbl-128 0xc.d4966d92d17082980965c1a663cp-4L : 0xb.7fb5fe776978e732912810356318p-4L 0xb.201e79450884be22c53e47ed16e8p-4L : inexact-ok
+= sincos downward ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e73291281035634p-4L 0xb.201e79450884be22c53e47ed16bp-4L : inexact-ok
+= sincos tonearest ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e73291281035634p-4L 0xb.201e79450884be22c53e47ed16bp-4L : inexact-ok
+= sincos towardzero ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e73291281035634p-4L 0xb.201e79450884be22c53e47ed16bp-4L : inexact-ok
+= sincos upward ldbl-128 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e732912810356348p-4L 0xb.201e79450884be22c53e47ed16b8p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e732912810356p-4L 0xb.201e79450884be22c53e47ed14p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e7329128103564p-4L 0xb.201e79450884be22c53e47ed18p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e732912810356p-4L 0xb.201e79450884be22c53e47ed14p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xc.d4966d92d17082980965c1a664p-4L : 0xb.7fb5fe776978e7329128103564p-4L 0xb.201e79450884be22c53e47ed18p-4L : inexact-ok
+= sincos downward ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356078p-4L 0xb.201e79450884be22c53e47ed199p-4L : inexact-ok
+= sincos tonearest ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356078p-4L 0xb.201e79450884be22c53e47ed199p-4L : inexact-ok
+= sincos towardzero ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356078p-4L 0xb.201e79450884be22c53e47ed199p-4L : inexact-ok
+= sincos upward ldbl-128 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e73291281035608p-4L 0xb.201e79450884be22c53e47ed1998p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356p-4L 0xb.201e79450884be22c53e47ed18p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356p-4L 0xb.201e79450884be22c53e47ed18p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e732912810356p-4L 0xb.201e79450884be22c53e47ed18p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xc.d4966d92d17082980965c1a66p-4L : 0xb.7fb5fe776978e7329128103564p-4L 0xb.201e79450884be22c53e47ed1cp-4L : inexact-ok
+sincos 1e22
+= sincos downward flt-32 0x2.1e19e4p+72f : -0x4.cd7e88p-4f 0xf.431ddp-4f : inexact-ok
+= sincos tonearest flt-32 0x2.1e19e4p+72f : -0x4.cd7e88p-4f 0xf.431ddp-4f : inexact-ok
+= sincos towardzero flt-32 0x2.1e19e4p+72f : -0x4.cd7e8p-4f 0xf.431ddp-4f : inexact-ok
+= sincos upward flt-32 0x2.1e19e4p+72f : -0x4.cd7e8p-4f 0xf.431dep-4f : inexact-ok
+= sincos downward dbl-64 0x2.1e19e4p+72 : -0x4.cd7e86c4077cp-4 0xf.431dd7a36cf3p-4 : inexact-ok
+= sincos tonearest dbl-64 0x2.1e19e4p+72 : -0x4.cd7e86c4077cp-4 0xf.431dd7a36cf38p-4 : inexact-ok
+= sincos towardzero dbl-64 0x2.1e19e4p+72 : -0x4.cd7e86c4077bcp-4 0xf.431dd7a36cf3p-4 : inexact-ok
+= sincos upward dbl-64 0x2.1e19e4p+72 : -0x4.cd7e86c4077bcp-4 0xf.431dd7a36cf38p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0ep-4L 0xf.431dd7a36cf37dep-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0ep-4L 0xf.431dd7a36cf37dep-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0d8p-4L 0xf.431dd7a36cf37dep-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0d8p-4L 0xf.431dd7a36cf37dfp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0ep-4L 0xf.431dd7a36cf37dep-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0ep-4L 0xf.431dd7a36cf37dep-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0d8p-4L 0xf.431dd7a36cf37dep-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0d8p-4L 0xf.431dd7a36cf37dfp-4L : inexact-ok
+= sincos downward ldbl-128 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d196p-4L 0xf.431dd7a36cf37de5c74544f6b438p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d196p-4L 0xf.431dd7a36cf37de5c74544f6b438p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d195cp-4L 0xf.431dd7a36cf37de5c74544f6b438p-4L : inexact-ok
+= sincos upward ldbl-128 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d195cp-4L 0xf.431dd7a36cf37de5c74544f6b44p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d1ap-4L 0xf.431dd7a36cf37de5c74544f6b4p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d1ap-4L 0xf.431dd7a36cf37de5c74544f6b4p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d18p-4L 0xf.431dd7a36cf37de5c74544f6b4p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x2.1e19e4p+72L : -0x4.cd7e86c4077bf0debc87d70d18p-4L 0xf.431dd7a36cf37de5c74544f6b8p-4L : inexact-ok
+= sincos downward flt-32 0x2.1e19ep+72f : -0xb.becc5p-4f 0xa.dd6f6p-4f : inexact-ok
+= sincos tonearest flt-32 0x2.1e19ep+72f : -0xb.becc4p-4f 0xa.dd6f7p-4f : inexact-ok
+= sincos towardzero flt-32 0x2.1e19ep+72f : -0xb.becc4p-4f 0xa.dd6f6p-4f : inexact-ok
+= sincos upward flt-32 0x2.1e19ep+72f : -0xb.becc4p-4f 0xa.dd6f7p-4f : inexact-ok
+= sincos downward dbl-64 0x2.1e19ep+72 : -0xb.becc47ab1b8c8p-4 0xa.dd6f6bacd206p-4 : inexact-ok
+= sincos tonearest dbl-64 0x2.1e19ep+72 : -0xb.becc47ab1b8c8p-4 0xa.dd6f6bacd2068p-4 : inexact-ok
+= sincos towardzero dbl-64 0x2.1e19ep+72 : -0xb.becc47ab1b8cp-4 0xa.dd6f6bacd206p-4 : inexact-ok
+= sincos upward dbl-64 0x2.1e19ep+72 : -0xb.becc47ab1b8cp-4 0xa.dd6f6bacd2068p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x2.1e19ep+72L : -0xb.becc47ab1b8c708p-4L 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x2.1e19ep+72L : -0xb.becc47ab1b8c708p-4L 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x2.1e19ep+72L : -0xb.becc47ab1b8c707p-4L 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x2.1e19ep+72L : -0xb.becc47ab1b8c707p-4L 0xa.dd6f6bacd20654dp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x2.1e19ep+72L : -0xb.becc47ab1b8c708p-4L 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x2.1e19ep+72L : -0xb.becc47ab1b8c708p-4L 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x2.1e19ep+72L : -0xb.becc47ab1b8c707p-4L 0xa.dd6f6bacd20654cp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x2.1e19ep+72L : -0xb.becc47ab1b8c707p-4L 0xa.dd6f6bacd20654dp-4L : inexact-ok
+= sincos downward ldbl-128 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2bcp-4L 0xa.dd6f6bacd20654c1404f52cde16p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2bcp-4L 0xa.dd6f6bacd20654c1404f52cde16p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2bb8p-4L 0xa.dd6f6bacd20654c1404f52cde16p-4L : inexact-ok
+= sincos upward ldbl-128 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2bb8p-4L 0xa.dd6f6bacd20654c1404f52cde168p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2cp-4L 0xa.dd6f6bacd20654c1404f52cdep-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff2cp-4L 0xa.dd6f6bacd20654c1404f52cdep-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff28p-4L 0xa.dd6f6bacd20654c1404f52cdep-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x2.1e19ep+72L : -0xb.becc47ab1b8c70793712c4ff28p-4L 0xa.dd6f6bacd20654c1404f52cde4p-4L : inexact-ok
+= sincos downward dbl-64 0x2.1e19e0c9bab24p+72 : -0xd.a29d5bb5f9ccp-4 0x8.5f167780e4798p-4 : inexact-ok
+= sincos tonearest dbl-64 0x2.1e19e0c9bab24p+72 : -0xd.a29d5bb5f9cb8p-4 0x8.5f167780e47ap-4 : inexact-ok
+= sincos towardzero dbl-64 0x2.1e19e0c9bab24p+72 : -0xd.a29d5bb5f9cb8p-4 0x8.5f167780e4798p-4 : inexact-ok
+= sincos upward dbl-64 0x2.1e19e0c9bab24p+72 : -0xd.a29d5bb5f9cb8p-4 0x8.5f167780e47ap-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87ep-4L 0x8.5f167780e479c9ap-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L 0x8.5f167780e479c9ap-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L 0x8.5f167780e479c9ap-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L 0x8.5f167780e479c9bp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87ep-4L 0x8.5f167780e479c9ap-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L 0x8.5f167780e479c9ap-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L 0x8.5f167780e479c9ap-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87dp-4L 0x8.5f167780e479c9bp-4L : inexact-ok
+= sincos downward ldbl-128 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc991fp-4L 0x8.5f167780e479c9a5c86ffce76148p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc991e8p-4L 0x8.5f167780e479c9a5c86ffce7615p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc991e8p-4L 0x8.5f167780e479c9a5c86ffce76148p-4L : inexact-ok
+= sincos upward ldbl-128 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc991e8p-4L 0x8.5f167780e479c9a5c86ffce7615p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc994p-4L 0x8.5f167780e479c9a5c86ffce76p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc99p-4L 0x8.5f167780e479c9a5c86ffce76p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc99p-4L 0x8.5f167780e479c9a5c86ffce76p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0xd.a29d5bb5f9cb87d14de41dc99p-4L 0x8.5f167780e479c9a5c86ffce764p-4L : inexact-ok
+sincos 0x1p1023
+= sincos downward flt-32 0xf.fffffp+124f : -0x8.599b4p-4f 0xd.a5f96p-4f : inexact-ok
+= sincos tonearest flt-32 0xf.fffffp+124f : -0x8.599b3p-4f 0xd.a5f96p-4f : inexact-ok
+= sincos towardzero flt-32 0xf.fffffp+124f : -0x8.599b3p-4f 0xd.a5f96p-4f : inexact-ok
+= sincos upward flt-32 0xf.fffffp+124f : -0x8.599b3p-4f 0xd.a5f97p-4f : inexact-ok
+= sincos downward dbl-64 0xf.fffffp+124 : -0x8.599b32844abbp-4 0xd.a5f963cdefe68p-4 : inexact-ok
+= sincos tonearest dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 0xd.a5f963cdefe7p-4 : inexact-ok
+= sincos towardzero dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 0xd.a5f963cdefe68p-4 : inexact-ok
+= sincos upward dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 0xd.a5f963cdefe7p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos downward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be049ap-4L 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= sincos tonearest ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= sincos towardzero ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= sincos upward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L 0xd.a5f963cdefe6d529f6b6009fb2f8p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04cp-4L 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+= sincos downward dbl-64 0x8p+1020 : 0x9.0292465edbaf8p-4 -0xd.38cf9361195f8p-4 : inexact-ok
+= sincos tonearest dbl-64 0x8p+1020 : 0x9.0292465edbbp-4 -0xd.38cf9361195f8p-4 : inexact-ok
+= sincos towardzero dbl-64 0x8p+1020 : 0x9.0292465edbaf8p-4 -0xd.38cf9361195fp-4 : inexact-ok
+= sincos upward dbl-64 0x8p+1020 : 0x9.0292465edbbp-4 -0xd.38cf9361195fp-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x8p+1020L : 0x9.0292465edbaff2dp-4L -0xd.38cf9361195f50cp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x8p+1020L : 0x9.0292465edbaff2dp-4L -0xd.38cf9361195f50bp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x8p+1020L : 0x9.0292465edbaff2dp-4L -0xd.38cf9361195f50bp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x8p+1020L : 0x9.0292465edbaff2ep-4L -0xd.38cf9361195f50bp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x8p+1020L : 0x9.0292465edbaff2dp-4L -0xd.38cf9361195f50cp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x8p+1020L : 0x9.0292465edbaff2dp-4L -0xd.38cf9361195f50bp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x8p+1020L : 0x9.0292465edbaff2dp-4L -0xd.38cf9361195f50bp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x8p+1020L : 0x9.0292465edbaff2ep-4L -0xd.38cf9361195f50bp-4L : inexact-ok
+= sincos downward ldbl-128 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e55p-4L -0xd.38cf9361195f50b10fac29dd9038p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e558p-4L -0xd.38cf9361195f50b10fac29dd9038p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e55p-4L -0xd.38cf9361195f50b10fac29dd903p-4L : inexact-ok
+= sincos upward ldbl-128 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e558p-4L -0xd.38cf9361195f50b10fac29dd903p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e4p-4L -0xd.38cf9361195f50b10fac29dd94p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e4p-4L -0xd.38cf9361195f50b10fac29dd9p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e4p-4L -0xd.38cf9361195f50b10fac29dd9p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x8p+1020L : 0x9.0292465edbaff2d2e64a2845e8p-4L -0xd.38cf9361195f50b10fac29dd9p-4L : inexact-ok
+sincos 0x1p16383
+= sincos downward flt-32 0xf.fffffp+124f : -0x8.599b4p-4f 0xd.a5f96p-4f : inexact-ok
+= sincos tonearest flt-32 0xf.fffffp+124f : -0x8.599b3p-4f 0xd.a5f96p-4f : inexact-ok
+= sincos towardzero flt-32 0xf.fffffp+124f : -0x8.599b3p-4f 0xd.a5f96p-4f : inexact-ok
+= sincos upward flt-32 0xf.fffffp+124f : -0x8.599b3p-4f 0xd.a5f97p-4f : inexact-ok
+= sincos downward dbl-64 0xf.fffffp+124 : -0x8.599b32844abbp-4 0xd.a5f963cdefe68p-4 : inexact-ok
+= sincos tonearest dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 0xd.a5f963cdefe7p-4 : inexact-ok
+= sincos towardzero dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 0xd.a5f963cdefe68p-4 : inexact-ok
+= sincos upward dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 0xd.a5f963cdefe7p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos downward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be049ap-4L 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= sincos tonearest ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= sincos towardzero ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= sincos upward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L 0xd.a5f963cdefe6d529f6b6009fb2f8p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04cp-4L 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+= sincos downward dbl-64 0xf.ffffffffffff8p+1020 : 0x1.452fc98b34e96p-8 -0xf.fff31767d5bbp-4 : inexact-ok
+= sincos tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x1.452fc98b34e97p-8 -0xf.fff31767d5ba8p-4 : inexact-ok
+= sincos towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x1.452fc98b34e96p-8 -0xf.fff31767d5ba8p-4 : inexact-ok
+= sincos upward dbl-64 0xf.ffffffffffff8p+1020 : 0x1.452fc98b34e97p-8 -0xf.fff31767d5ba8p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b6p-8L -0xf.fff31767d5ba9e1p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b62p-8L -0xf.fff31767d5ba9ep-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b6p-8L -0xf.fff31767d5ba9ep-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b62p-8L -0xf.fff31767d5ba9ep-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b6p-8L -0xf.fff31767d5ba9e1p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b62p-8L -0xf.fff31767d5ba9ep-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b6p-8L -0xf.fff31767d5ba9ep-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b62p-8L -0xf.fff31767d5ba9ep-4L : inexact-ok
+= sincos downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c84ap-8L -0xf.fff31767d5ba9e038d934070f138p-4L : inexact-ok
+= sincos tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c84ap-8L -0xf.fff31767d5ba9e038d934070f13p-4L : inexact-ok
+= sincos towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c84ap-8L -0xf.fff31767d5ba9e038d934070f13p-4L : inexact-ok
+= sincos upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c84bp-8L -0xf.fff31767d5ba9e038d934070f13p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c8p-8L -0xf.fff31767d5ba9e038d934070f4p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c88p-8L -0xf.fff31767d5ba9e038d934070fp-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c8p-8L -0xf.fff31767d5ba9e038d934070fp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x1.452fc98b34e96b61139b09a7c88p-8L -0xf.fff31767d5ba9e038d934070fp-4L : inexact-ok
+= sincos downward ldbl-96-intel 0x8p+16380L : 0x6.3ad4b2136cc68818p-4L 0xe.bcc2fc82ae39ebfp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x8p+16380L : 0x6.3ad4b2136cc6882p-4L 0xe.bcc2fc82ae39ecp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x8p+16380L : 0x6.3ad4b2136cc68818p-4L 0xe.bcc2fc82ae39ebfp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x8p+16380L : 0x6.3ad4b2136cc6882p-4L 0xe.bcc2fc82ae39ecp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x8p+16380L : 0x6.3ad4b2136cc68818p-4L 0xe.bcc2fc82ae39ebfp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x8p+16380L : 0x6.3ad4b2136cc6882p-4L 0xe.bcc2fc82ae39ecp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x8p+16380L : 0x6.3ad4b2136cc68818p-4L 0xe.bcc2fc82ae39ebfp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x8p+16380L : 0x6.3ad4b2136cc6882p-4L 0xe.bcc2fc82ae39ecp-4L : inexact-ok
+= sincos downward ldbl-128 0x8p+16380L : 0x6.3ad4b2136cc6881f0ca607c7946p-4L 0xe.bcc2fc82ae39ebf8da5d687bf358p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8p+16380L : 0x6.3ad4b2136cc6881f0ca607c7946p-4L 0xe.bcc2fc82ae39ebf8da5d687bf36p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8p+16380L : 0x6.3ad4b2136cc6881f0ca607c7946p-4L 0xe.bcc2fc82ae39ebf8da5d687bf358p-4L : inexact-ok
+= sincos upward ldbl-128 0x8p+16380L : 0x6.3ad4b2136cc6881f0ca607c79464p-4L 0xe.bcc2fc82ae39ebf8da5d687bf36p-4L : inexact-ok
+= sincos downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbe6p-4L -0x5.b773d971a848e75c230605526978p-4L : inexact-ok
+= sincos tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbe6p-4L -0x5.b773d971a848e75c230605526974p-4L : inexact-ok
+= sincos towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbe58p-4L -0x5.b773d971a848e75c230605526974p-4L : inexact-ok
+= sincos upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbe58p-4L -0x5.b773d971a848e75c230605526974p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fcp-4L -0x5.b773d971a848e75c230605526ap-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fcp-4L -0x5.b773d971a848e75c230605526ap-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbcp-4L -0x5.b773d971a848e75c2306055268p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0xe.f1a3e1dc468a921dddb4e37fbcp-4L -0x5.b773d971a848e75c2306055268p-4L : inexact-ok
+sincos 0x1p+120
+= sincos downward flt-32 0x1p+120f : 0x6.0b8d18p-4f -0xe.d0669p-4f : inexact-ok
+= sincos tonearest flt-32 0x1p+120f : 0x6.0b8d18p-4f -0xe.d0668p-4f : inexact-ok
+= sincos towardzero flt-32 0x1p+120f : 0x6.0b8d18p-4f -0xe.d0668p-4f : inexact-ok
+= sincos upward flt-32 0x1p+120f : 0x6.0b8d2p-4f -0xe.d0668p-4f : inexact-ok
+= sincos downward dbl-64 0x1p+120 : 0x6.0b8d19579bf2cp-4 -0xe.d06685b36c67p-4 : inexact-ok
+= sincos tonearest dbl-64 0x1p+120 : 0x6.0b8d19579bf2cp-4 -0xe.d06685b36c67p-4 : inexact-ok
+= sincos towardzero dbl-64 0x1p+120 : 0x6.0b8d19579bf2cp-4 -0xe.d06685b36c668p-4 : inexact-ok
+= sincos upward dbl-64 0x1p+120 : 0x6.0b8d19579bf3p-4 -0xe.d06685b36c668p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x1p+120L : 0x6.0b8d19579bf2db58p-4L -0xe.d06685b36c66c4dp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1p+120L : 0x6.0b8d19579bf2db6p-4L -0xe.d06685b36c66c4dp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1p+120L : 0x6.0b8d19579bf2db58p-4L -0xe.d06685b36c66c4cp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x1p+120L : 0x6.0b8d19579bf2db6p-4L -0xe.d06685b36c66c4cp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1p+120L : 0x6.0b8d19579bf2db58p-4L -0xe.d06685b36c66c4dp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1p+120L : 0x6.0b8d19579bf2db6p-4L -0xe.d06685b36c66c4dp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1p+120L : 0x6.0b8d19579bf2db58p-4L -0xe.d06685b36c66c4cp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1p+120L : 0x6.0b8d19579bf2db6p-4L -0xe.d06685b36c66c4cp-4L : inexact-ok
+= sincos downward ldbl-128 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f37cp-4L -0xe.d06685b36c66c4cf35c11f6519p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f37cp-4L -0xe.d06685b36c66c4cf35c11f6518f8p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f37cp-4L -0xe.d06685b36c66c4cf35c11f6518f8p-4L : inexact-ok
+= sincos upward ldbl-128 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f38p-4L -0xe.d06685b36c66c4cf35c11f6518f8p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f2p-4L -0xe.d06685b36c66c4cf35c11f651cp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f4p-4L -0xe.d06685b36c66c4cf35c11f6518p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f2p-4L -0xe.d06685b36c66c4cf35c11f6518p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x1p+120L : 0x6.0b8d19579bf2db5e5f1aa933f4p-4L -0xe.d06685b36c66c4cf35c11f6518p-4L : inexact-ok
+sincos 0x1p+127
+= sincos downward flt-32 0x8p+124f : 0x9.f9631p-4f 0xc.82b8ep-4f : inexact-ok
+= sincos tonearest flt-32 0x8p+124f : 0x9.f9631p-4f 0xc.82b8fp-4f : inexact-ok
+= sincos towardzero flt-32 0x8p+124f : 0x9.f9631p-4f 0xc.82b8ep-4f : inexact-ok
+= sincos upward flt-32 0x8p+124f : 0x9.f9632p-4f 0xc.82b8fp-4f : inexact-ok
+= sincos downward dbl-64 0x8p+124 : 0x9.f963166f215e8p-4 0xc.82b8ec98b5e6p-4 : inexact-ok
+= sincos tonearest dbl-64 0x8p+124 : 0x9.f963166f215e8p-4 0xc.82b8ec98b5e6p-4 : inexact-ok
+= sincos towardzero dbl-64 0x8p+124 : 0x9.f963166f215e8p-4 0xc.82b8ec98b5e6p-4 : inexact-ok
+= sincos upward dbl-64 0x8p+124 : 0x9.f963166f215fp-4 0xc.82b8ec98b5e68p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x8p+124L : 0x9.f963166f215eb89p-4L 0xc.82b8ec98b5e62fcp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x8p+124L : 0x9.f963166f215eb89p-4L 0xc.82b8ec98b5e62fdp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x8p+124L : 0x9.f963166f215eb89p-4L 0xc.82b8ec98b5e62fcp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x8p+124L : 0x9.f963166f215eb8ap-4L 0xc.82b8ec98b5e62fdp-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x8p+124L : 0x9.f963166f215eb89p-4L 0xc.82b8ec98b5e62fcp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x8p+124L : 0x9.f963166f215eb89p-4L 0xc.82b8ec98b5e62fdp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x8p+124L : 0x9.f963166f215eb89p-4L 0xc.82b8ec98b5e62fcp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x8p+124L : 0x9.f963166f215eb8ap-4L 0xc.82b8ec98b5e62fdp-4L : inexact-ok
+= sincos downward ldbl-128 0x8p+124L : 0x9.f963166f215eb89381836cafaa28p-4L 0xc.82b8ec98b5e62fcf0b09fd10eb28p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x8p+124L : 0x9.f963166f215eb89381836cafaa3p-4L 0xc.82b8ec98b5e62fcf0b09fd10eb3p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x8p+124L : 0x9.f963166f215eb89381836cafaa28p-4L 0xc.82b8ec98b5e62fcf0b09fd10eb28p-4L : inexact-ok
+= sincos upward ldbl-128 0x8p+124L : 0x9.f963166f215eb89381836cafaa3p-4L 0xc.82b8ec98b5e62fcf0b09fd10eb3p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x8p+124L : 0x9.f963166f215eb89381836cafa8p-4L 0xc.82b8ec98b5e62fcf0b09fd10e8p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x8p+124L : 0x9.f963166f215eb89381836cafacp-4L 0xc.82b8ec98b5e62fcf0b09fd10ecp-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x8p+124L : 0x9.f963166f215eb89381836cafa8p-4L 0xc.82b8ec98b5e62fcf0b09fd10e8p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x8p+124L : 0x9.f963166f215eb89381836cafacp-4L 0xc.82b8ec98b5e62fcf0b09fd10ecp-4L : inexact-ok
+sincos 0x1.fffff8p+127
+= sincos downward flt-32 0xf.ffffcp+124f : 0xc.6fa5cp-8f 0xf.fb2ap-4f : inexact-ok
+= sincos tonearest flt-32 0xf.ffffcp+124f : 0xc.6fa5cp-8f 0xf.fb2ap-4f : inexact-ok
+= sincos towardzero flt-32 0xf.ffffcp+124f : 0xc.6fa5cp-8f 0xf.fb2ap-4f : inexact-ok
+= sincos upward flt-32 0xf.ffffcp+124f : 0xc.6fa5dp-8f 0xf.fb2a1p-4f : inexact-ok
+= sincos downward dbl-64 0xf.ffffcp+124 : 0xc.6fa5c56659848p-8 0xf.fb2a030c5ae2p-4 : inexact-ok
+= sincos tonearest dbl-64 0xf.ffffcp+124 : 0xc.6fa5c5665985p-8 0xf.fb2a030c5ae2p-4 : inexact-ok
+= sincos towardzero dbl-64 0xf.ffffcp+124 : 0xc.6fa5c56659848p-8 0xf.fb2a030c5ae2p-4 : inexact-ok
+= sincos upward dbl-64 0xf.ffffcp+124 : 0xc.6fa5c5665985p-8 0xf.fb2a030c5ae28p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0xf.ffffcp+124L : 0xc.6fa5c5665984d88p-8L 0xf.fb2a030c5ae20bdp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xf.ffffcp+124L : 0xc.6fa5c5665984d89p-8L 0xf.fb2a030c5ae20bep-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xf.ffffcp+124L : 0xc.6fa5c5665984d88p-8L 0xf.fb2a030c5ae20bdp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xf.ffffcp+124L : 0xc.6fa5c5665984d89p-8L 0xf.fb2a030c5ae20bep-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xf.ffffcp+124L : 0xc.6fa5c5665984d88p-8L 0xf.fb2a030c5ae20bdp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xf.ffffcp+124L : 0xc.6fa5c5665984d89p-8L 0xf.fb2a030c5ae20bep-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xf.ffffcp+124L : 0xc.6fa5c5665984d88p-8L 0xf.fb2a030c5ae20bdp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xf.ffffcp+124L : 0xc.6fa5c5665984d89p-8L 0xf.fb2a030c5ae20bep-4L : inexact-ok
+= sincos downward ldbl-128 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1537b8p-8L 0xf.fb2a030c5ae20bdfe29fda198eap-4L : inexact-ok
+= sincos tonearest ldbl-128 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1537b8p-8L 0xf.fb2a030c5ae20bdfe29fda198eap-4L : inexact-ok
+= sincos towardzero ldbl-128 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1537b8p-8L 0xf.fb2a030c5ae20bdfe29fda198eap-4L : inexact-ok
+= sincos upward ldbl-128 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1537cp-8L 0xf.fb2a030c5ae20bdfe29fda198ea8p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1534p-8L 0xf.fb2a030c5ae20bdfe29fda198cp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1538p-8L 0xf.fb2a030c5ae20bdfe29fda199p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1534p-8L 0xf.fb2a030c5ae20bdfe29fda198cp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xf.ffffcp+124L : 0xc.6fa5c5665984d8892761be1538p-8L 0xf.fb2a030c5ae20bdfe29fda199p-4L : inexact-ok
+sincos 0x1.fffffep+127
+= sincos downward flt-32 0xf.fffffp+124f : -0x8.599b4p-4f 0xd.a5f96p-4f : inexact-ok
+= sincos tonearest flt-32 0xf.fffffp+124f : -0x8.599b3p-4f 0xd.a5f96p-4f : inexact-ok
+= sincos towardzero flt-32 0xf.fffffp+124f : -0x8.599b3p-4f 0xd.a5f96p-4f : inexact-ok
+= sincos upward flt-32 0xf.fffffp+124f : -0x8.599b3p-4f 0xd.a5f97p-4f : inexact-ok
+= sincos downward dbl-64 0xf.fffffp+124 : -0x8.599b32844abbp-4 0xd.a5f963cdefe68p-4 : inexact-ok
+= sincos tonearest dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 0xd.a5f963cdefe7p-4 : inexact-ok
+= sincos towardzero dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 0xd.a5f963cdefe68p-4 : inexact-ok
+= sincos upward dbl-64 0xf.fffffp+124 : -0x8.599b32844aba8p-4 0xd.a5f963cdefe7p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba907p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d52p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0xf.fffffp+124L : -0x8.599b32844aba906p-4L 0xd.a5f963cdefe6d53p-4L : inexact-ok
+= sincos downward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be049ap-4L 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= sincos tonearest ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= sincos towardzero ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L 0xd.a5f963cdefe6d529f6b6009fb2fp-4L : inexact-ok
+= sincos upward ldbl-128 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04998p-4L 0xd.a5f963cdefe6d529f6b6009fb2f8p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be04cp-4L 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L 0xd.a5f963cdefe6d529f6b6009fbp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0xf.fffffp+124L : -0x8.599b32844aba906cee446be048p-4L 0xd.a5f963cdefe6d529f6b6009fb4p-4L : inexact-ok
+sincos 0x1p+50
+= sincos downward flt-32 0x4p+48f : 0x7.f13d78p-4f 0xd.e3b88p-4f : inexact-ok
+= sincos tonearest flt-32 0x4p+48f : 0x7.f13d78p-4f 0xd.e3b89p-4f : inexact-ok
+= sincos towardzero flt-32 0x4p+48f : 0x7.f13d78p-4f 0xd.e3b88p-4f : inexact-ok
+= sincos upward flt-32 0x4p+48f : 0x7.f13d8p-4f 0xd.e3b89p-4f : inexact-ok
+= sincos downward dbl-64 0x4p+48 : 0x7.f13d78eabb768p-4 0xd.e3b88804f005p-4 : inexact-ok
+= sincos tonearest dbl-64 0x4p+48 : 0x7.f13d78eabb76cp-4 0xd.e3b88804f0058p-4 : inexact-ok
+= sincos towardzero dbl-64 0x4p+48 : 0x7.f13d78eabb768p-4 0xd.e3b88804f005p-4 : inexact-ok
+= sincos upward dbl-64 0x4p+48 : 0x7.f13d78eabb76cp-4 0xd.e3b88804f0058p-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L 0xd.e3b88804f00552dp-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L 0xd.e3b88804f00552dp-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L 0xd.e3b88804f00552dp-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x4p+48L : 0x7.f13d78eabb76b8bp-4L 0xd.e3b88804f00552ep-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L 0xd.e3b88804f00552dp-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L 0xd.e3b88804f00552dp-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x4p+48L : 0x7.f13d78eabb76b8a8p-4L 0xd.e3b88804f00552dp-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x4p+48L : 0x7.f13d78eabb76b8bp-4L 0xd.e3b88804f00552ep-4L : inexact-ok
+= sincos downward ldbl-128 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6703e4p-4L 0xd.e3b88804f00552d6baba709471d8p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6703e8p-4L 0xd.e3b88804f00552d6baba709471d8p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6703e4p-4L 0xd.e3b88804f00552d6baba709471d8p-4L : inexact-ok
+= sincos upward ldbl-128 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6703e8p-4L 0xd.e3b88804f00552d6baba709471ep-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6702p-4L 0xd.e3b88804f00552d6baba70947p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6704p-4L 0xd.e3b88804f00552d6baba70947p-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6702p-4L 0xd.e3b88804f00552d6baba70947p-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x4p+48L : 0x7.f13d78eabb76b8a986d98d6704p-4L 0xd.e3b88804f00552d6baba709474p-4L : inexact-ok
+sincos 0x1p+28
+= sincos downward flt-32 0x1p+28f : -0xf.c777dp-4f -0x2.a62bacp-4f : inexact-ok
+= sincos tonearest flt-32 0x1p+28f : -0xf.c777cp-4f -0x2.a62ba8p-4f : inexact-ok
+= sincos towardzero flt-32 0x1p+28f : -0xf.c777cp-4f -0x2.a62ba8p-4f : inexact-ok
+= sincos upward flt-32 0x1p+28f : -0xf.c777cp-4f -0x2.a62ba8p-4f : inexact-ok
+= sincos downward dbl-64 0x1p+28 : -0xf.c777c6b36a758p-4 -0x2.a62ba8824e5bep-4 : inexact-ok
+= sincos tonearest dbl-64 0x1p+28 : -0xf.c777c6b36a75p-4 -0x2.a62ba8824e5bcp-4 : inexact-ok
+= sincos towardzero dbl-64 0x1p+28 : -0xf.c777c6b36a75p-4 -0x2.a62ba8824e5bcp-4 : inexact-ok
+= sincos upward dbl-64 0x1p+28 : -0xf.c777c6b36a75p-4 -0x2.a62ba8824e5bcp-4 : inexact-ok
+= sincos downward ldbl-96-intel 0x1p+28L : -0xf.c777c6b36a750a6p-4L -0x2.a62ba8824e5bcb08p-4L : inexact-ok
+= sincos tonearest ldbl-96-intel 0x1p+28L : -0xf.c777c6b36a750a6p-4L -0x2.a62ba8824e5bcb08p-4L : inexact-ok
+= sincos towardzero ldbl-96-intel 0x1p+28L : -0xf.c777c6b36a750a5p-4L -0x2.a62ba8824e5bcb04p-4L : inexact-ok
+= sincos upward ldbl-96-intel 0x1p+28L : -0xf.c777c6b36a750a5p-4L -0x2.a62ba8824e5bcb04p-4L : inexact-ok
+= sincos downward ldbl-96-m68k 0x1p+28L : -0xf.c777c6b36a750a6p-4L -0x2.a62ba8824e5bcb08p-4L : inexact-ok
+= sincos tonearest ldbl-96-m68k 0x1p+28L : -0xf.c777c6b36a750a6p-4L -0x2.a62ba8824e5bcb08p-4L : inexact-ok
+= sincos towardzero ldbl-96-m68k 0x1p+28L : -0xf.c777c6b36a750a5p-4L -0x2.a62ba8824e5bcb04p-4L : inexact-ok
+= sincos upward ldbl-96-m68k 0x1p+28L : -0xf.c777c6b36a750a5p-4L -0x2.a62ba8824e5bcb04p-4L : inexact-ok
+= sincos downward ldbl-128 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a156p-4L -0x2.a62ba8824e5bcb065f5f3b8e4f58p-4L : inexact-ok
+= sincos tonearest ldbl-128 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a156p-4L -0x2.a62ba8824e5bcb065f5f3b8e4f56p-4L : inexact-ok
+= sincos towardzero ldbl-128 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a1558p-4L -0x2.a62ba8824e5bcb065f5f3b8e4f56p-4L : inexact-ok
+= sincos upward ldbl-128 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a1558p-4L -0x2.a62ba8824e5bcb065f5f3b8e4f56p-4L : inexact-ok
+= sincos downward ldbl-128ibm 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a18p-4L -0x2.a62ba8824e5bcb065f5f3b8e5p-4L : inexact-ok
+= sincos tonearest ldbl-128ibm 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a14p-4L -0x2.a62ba8824e5bcb065f5f3b8e4fp-4L : inexact-ok
+= sincos towardzero ldbl-128ibm 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a14p-4L -0x2.a62ba8824e5bcb065f5f3b8e4fp-4L : inexact-ok
+= sincos upward ldbl-128ibm 0x1p+28L : -0xf.c777c6b36a750a5fdeb8807a14p-4L -0x2.a62ba8824e5bcb065f5f3b8e4fp-4L : inexact-ok
+sinh 0
+= sinh downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= sinh tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= sinh towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= sinh upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= sinh downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= sinh tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= sinh towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= sinh upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= sinh downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= sinh upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+sinh -0
+= sinh downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= sinh tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= sinh towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= sinh upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= sinh downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= sinh tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= sinh towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= sinh upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= sinh downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= sinh upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+sinh 0.75
+= sinh downward flt-32 0xcp-4f : 0xd.28359p-4f : inexact-ok
+= sinh tonearest flt-32 0xcp-4f : 0xd.28359p-4f : inexact-ok
+= sinh towardzero flt-32 0xcp-4f : 0xd.28359p-4f : inexact-ok
+= sinh upward flt-32 0xcp-4f : 0xd.2835ap-4f : inexact-ok
+= sinh downward dbl-64 0xcp-4 : 0xd.283596e9e3478p-4 : inexact-ok
+= sinh tonearest dbl-64 0xcp-4 : 0xd.283596e9e348p-4 : inexact-ok
+= sinh towardzero dbl-64 0xcp-4 : 0xd.283596e9e3478p-4 : inexact-ok
+= sinh upward dbl-64 0xcp-4 : 0xd.283596e9e348p-4 : inexact-ok
+= sinh downward ldbl-96-intel 0xcp-4L : 0xd.283596e9e347f2ep-4L : inexact-ok
+= sinh tonearest ldbl-96-intel 0xcp-4L : 0xd.283596e9e347f2fp-4L : inexact-ok
+= sinh towardzero ldbl-96-intel 0xcp-4L : 0xd.283596e9e347f2ep-4L : inexact-ok
+= sinh upward ldbl-96-intel 0xcp-4L : 0xd.283596e9e347f2fp-4L : inexact-ok
+= sinh downward ldbl-96-m68k 0xcp-4L : 0xd.283596e9e347f2ep-4L : inexact-ok
+= sinh tonearest ldbl-96-m68k 0xcp-4L : 0xd.283596e9e347f2fp-4L : inexact-ok
+= sinh towardzero ldbl-96-m68k 0xcp-4L : 0xd.283596e9e347f2ep-4L : inexact-ok
+= sinh upward ldbl-96-m68k 0xcp-4L : 0xd.283596e9e347f2fp-4L : inexact-ok
+= sinh downward ldbl-128 0xcp-4L : 0xd.283596e9e347f2ee3cf47bf04af8p-4L : inexact-ok
+= sinh tonearest ldbl-128 0xcp-4L : 0xd.283596e9e347f2ee3cf47bf04bp-4L : inexact-ok
+= sinh towardzero ldbl-128 0xcp-4L : 0xd.283596e9e347f2ee3cf47bf04af8p-4L : inexact-ok
+= sinh upward ldbl-128 0xcp-4L : 0xd.283596e9e347f2ee3cf47bf04bp-4L : inexact-ok
+= sinh downward ldbl-128ibm 0xcp-4L : 0xd.283596e9e347f2ee3cf47bf048p-4L : inexact-ok
+= sinh tonearest ldbl-128ibm 0xcp-4L : 0xd.283596e9e347f2ee3cf47bf04cp-4L : inexact-ok
+= sinh towardzero ldbl-128ibm 0xcp-4L : 0xd.283596e9e347f2ee3cf47bf048p-4L : inexact-ok
+= sinh upward ldbl-128ibm 0xcp-4L : 0xd.283596e9e347f2ee3cf47bf04cp-4L : inexact-ok
+sinh 0x8p-32
+= sinh downward flt-32 0x8p-32f : 0x8p-32f : inexact-ok
+= sinh tonearest flt-32 0x8p-32f : 0x8p-32f : inexact-ok
+= sinh towardzero flt-32 0x8p-32f : 0x8p-32f : inexact-ok
+= sinh upward flt-32 0x8p-32f : 0x8.00001p-32f : inexact-ok
+= sinh downward dbl-64 0x8p-32 : 0x8p-32 : inexact-ok
+= sinh tonearest dbl-64 0x8p-32 : 0x8p-32 : inexact-ok
+= sinh towardzero dbl-64 0x8p-32 : 0x8p-32 : inexact-ok
+= sinh upward dbl-64 0x8p-32 : 0x8.0000000000008p-32 : inexact-ok
+= sinh downward ldbl-96-intel 0x8p-32L : 0x8.000000000000005p-32L : inexact-ok
+= sinh tonearest ldbl-96-intel 0x8p-32L : 0x8.000000000000005p-32L : inexact-ok
+= sinh towardzero ldbl-96-intel 0x8p-32L : 0x8.000000000000005p-32L : inexact-ok
+= sinh upward ldbl-96-intel 0x8p-32L : 0x8.000000000000006p-32L : inexact-ok
+= sinh downward ldbl-96-m68k 0x8p-32L : 0x8.000000000000005p-32L : inexact-ok
+= sinh tonearest ldbl-96-m68k 0x8p-32L : 0x8.000000000000005p-32L : inexact-ok
+= sinh towardzero ldbl-96-m68k 0x8p-32L : 0x8.000000000000005p-32L : inexact-ok
+= sinh upward ldbl-96-m68k 0x8p-32L : 0x8.000000000000006p-32L : inexact-ok
+= sinh downward ldbl-128 0x8p-32L : 0x8.000000000000005555555555555p-32L : inexact-ok
+= sinh tonearest ldbl-128 0x8p-32L : 0x8.0000000000000055555555555558p-32L : inexact-ok
+= sinh towardzero ldbl-128 0x8p-32L : 0x8.000000000000005555555555555p-32L : inexact-ok
+= sinh upward ldbl-128 0x8p-32L : 0x8.0000000000000055555555555558p-32L : inexact-ok
+= sinh downward ldbl-128ibm 0x8p-32L : 0x8.00000000000000555555555554p-32L : inexact-ok
+= sinh tonearest ldbl-128ibm 0x8p-32L : 0x8.00000000000000555555555554p-32L : inexact-ok
+= sinh towardzero ldbl-128ibm 0x8p-32L : 0x8.00000000000000555555555554p-32L : inexact-ok
+= sinh upward ldbl-128ibm 0x8p-32L : 0x8.00000000000000555555555558p-32L : inexact-ok
+sinh 22
+= sinh downward flt-32 0x1.6p+4f : 0x6.ad6b68p+28f : inexact-ok
+= sinh tonearest flt-32 0x1.6p+4f : 0x6.ad6b7p+28f : inexact-ok
+= sinh towardzero flt-32 0x1.6p+4f : 0x6.ad6b68p+28f : inexact-ok
+= sinh upward flt-32 0x1.6p+4f : 0x6.ad6b7p+28f : inexact-ok
+= sinh downward dbl-64 0x1.6p+4 : 0x6.ad6b6e710d7fcp+28 : inexact-ok
+= sinh tonearest dbl-64 0x1.6p+4 : 0x6.ad6b6e710d8p+28 : inexact-ok
+= sinh towardzero dbl-64 0x1.6p+4 : 0x6.ad6b6e710d7fcp+28 : inexact-ok
+= sinh upward dbl-64 0x1.6p+4 : 0x6.ad6b6e710d8p+28 : inexact-ok
+= sinh downward ldbl-96-intel 0x1.6p+4L : 0x6.ad6b6e710d7fe06p+28L : inexact-ok
+= sinh tonearest ldbl-96-intel 0x1.6p+4L : 0x6.ad6b6e710d7fe068p+28L : inexact-ok
+= sinh towardzero ldbl-96-intel 0x1.6p+4L : 0x6.ad6b6e710d7fe06p+28L : inexact-ok
+= sinh upward ldbl-96-intel 0x1.6p+4L : 0x6.ad6b6e710d7fe068p+28L : inexact-ok
+= sinh downward ldbl-96-m68k 0x1.6p+4L : 0x6.ad6b6e710d7fe06p+28L : inexact-ok
+= sinh tonearest ldbl-96-m68k 0x1.6p+4L : 0x6.ad6b6e710d7fe068p+28L : inexact-ok
+= sinh towardzero ldbl-96-m68k 0x1.6p+4L : 0x6.ad6b6e710d7fe06p+28L : inexact-ok
+= sinh upward ldbl-96-m68k 0x1.6p+4L : 0x6.ad6b6e710d7fe068p+28L : inexact-ok
+= sinh downward ldbl-128 0x1.6p+4L : 0x6.ad6b6e710d7fe065377669cb23p+28L : inexact-ok
+= sinh tonearest ldbl-128 0x1.6p+4L : 0x6.ad6b6e710d7fe065377669cb23p+28L : inexact-ok
+= sinh towardzero ldbl-128 0x1.6p+4L : 0x6.ad6b6e710d7fe065377669cb23p+28L : inexact-ok
+= sinh upward ldbl-128 0x1.6p+4L : 0x6.ad6b6e710d7fe065377669cb2304p+28L : inexact-ok
+= sinh downward ldbl-128ibm 0x1.6p+4L : 0x6.ad6b6e710d7fe065377669cb22p+28L : inexact-ok
+= sinh tonearest ldbl-128ibm 0x1.6p+4L : 0x6.ad6b6e710d7fe065377669cb24p+28L : inexact-ok
+= sinh towardzero ldbl-128ibm 0x1.6p+4L : 0x6.ad6b6e710d7fe065377669cb22p+28L : inexact-ok
+= sinh upward ldbl-128ibm 0x1.6p+4L : 0x6.ad6b6e710d7fe065377669cb24p+28L : inexact-ok
+sinh 23
+= sinh downward flt-32 0x1.7p+4f : 0x1.226af2p+32f : inexact-ok
+= sinh tonearest flt-32 0x1.7p+4f : 0x1.226af4p+32f : inexact-ok
+= sinh towardzero flt-32 0x1.7p+4f : 0x1.226af2p+32f : inexact-ok
+= sinh upward flt-32 0x1.7p+4f : 0x1.226af4p+32f : inexact-ok
+= sinh downward dbl-64 0x1.7p+4 : 0x1.226af33b1fdcp+32 : inexact-ok
+= sinh tonearest dbl-64 0x1.7p+4 : 0x1.226af33b1fdc1p+32 : inexact-ok
+= sinh towardzero dbl-64 0x1.7p+4 : 0x1.226af33b1fdcp+32 : inexact-ok
+= sinh upward dbl-64 0x1.7p+4 : 0x1.226af33b1fdc1p+32 : inexact-ok
+= sinh downward ldbl-96-intel 0x1.7p+4L : 0x1.226af33b1fdc0a56p+32L : inexact-ok
+= sinh tonearest ldbl-96-intel 0x1.7p+4L : 0x1.226af33b1fdc0a58p+32L : inexact-ok
+= sinh towardzero ldbl-96-intel 0x1.7p+4L : 0x1.226af33b1fdc0a56p+32L : inexact-ok
+= sinh upward ldbl-96-intel 0x1.7p+4L : 0x1.226af33b1fdc0a58p+32L : inexact-ok
+= sinh downward ldbl-96-m68k 0x1.7p+4L : 0x1.226af33b1fdc0a56p+32L : inexact-ok
+= sinh tonearest ldbl-96-m68k 0x1.7p+4L : 0x1.226af33b1fdc0a58p+32L : inexact-ok
+= sinh towardzero ldbl-96-m68k 0x1.7p+4L : 0x1.226af33b1fdc0a56p+32L : inexact-ok
+= sinh upward ldbl-96-m68k 0x1.7p+4L : 0x1.226af33b1fdc0a58p+32L : inexact-ok
+= sinh downward ldbl-128 0x1.7p+4L : 0x1.226af33b1fdc0a574c76ab21613p+32L : inexact-ok
+= sinh tonearest ldbl-128 0x1.7p+4L : 0x1.226af33b1fdc0a574c76ab216131p+32L : inexact-ok
+= sinh towardzero ldbl-128 0x1.7p+4L : 0x1.226af33b1fdc0a574c76ab21613p+32L : inexact-ok
+= sinh upward ldbl-128 0x1.7p+4L : 0x1.226af33b1fdc0a574c76ab216131p+32L : inexact-ok
+= sinh downward ldbl-128ibm 0x1.7p+4L : 0x1.226af33b1fdc0a574c76ab2161p+32L : inexact-ok
+= sinh tonearest ldbl-128ibm 0x1.7p+4L : 0x1.226af33b1fdc0a574c76ab2161p+32L : inexact-ok
+= sinh towardzero ldbl-128ibm 0x1.7p+4L : 0x1.226af33b1fdc0a574c76ab2161p+32L : inexact-ok
+= sinh upward ldbl-128ibm 0x1.7p+4L : 0x1.226af33b1fdc0a574c76ab21618p+32L : inexact-ok
+sinh 24
+= sinh downward flt-32 0x1.8p+4f : 0x3.156ff4p+32f : inexact-ok
+= sinh tonearest flt-32 0x1.8p+4f : 0x3.156ff8p+32f : inexact-ok
+= sinh towardzero flt-32 0x1.8p+4f : 0x3.156ff4p+32f : inexact-ok
+= sinh upward flt-32 0x1.8p+4f : 0x3.156ff8p+32f : inexact-ok
+= sinh downward dbl-64 0x1.8p+4 : 0x3.156ff6a8ebf6ep+32 : inexact-ok
+= sinh tonearest dbl-64 0x1.8p+4 : 0x3.156ff6a8ebf6ep+32 : inexact-ok
+= sinh towardzero dbl-64 0x1.8p+4 : 0x3.156ff6a8ebf6ep+32 : inexact-ok
+= sinh upward dbl-64 0x1.8p+4 : 0x3.156ff6a8ebf7p+32 : inexact-ok
+= sinh downward ldbl-96-intel 0x1.8p+4L : 0x3.156ff6a8ebf6e66cp+32L : inexact-ok
+= sinh tonearest ldbl-96-intel 0x1.8p+4L : 0x3.156ff6a8ebf6e67p+32L : inexact-ok
+= sinh towardzero ldbl-96-intel 0x1.8p+4L : 0x3.156ff6a8ebf6e66cp+32L : inexact-ok
+= sinh upward ldbl-96-intel 0x1.8p+4L : 0x3.156ff6a8ebf6e67p+32L : inexact-ok
+= sinh downward ldbl-96-m68k 0x1.8p+4L : 0x3.156ff6a8ebf6e66cp+32L : inexact-ok
+= sinh tonearest ldbl-96-m68k 0x1.8p+4L : 0x3.156ff6a8ebf6e67p+32L : inexact-ok
+= sinh towardzero ldbl-96-m68k 0x1.8p+4L : 0x3.156ff6a8ebf6e66cp+32L : inexact-ok
+= sinh upward ldbl-96-m68k 0x1.8p+4L : 0x3.156ff6a8ebf6e67p+32L : inexact-ok
+= sinh downward ldbl-128 0x1.8p+4L : 0x3.156ff6a8ebf6e66f1fb318fc8d6ap+32L : inexact-ok
+= sinh tonearest ldbl-128 0x1.8p+4L : 0x3.156ff6a8ebf6e66f1fb318fc8d6ap+32L : inexact-ok
+= sinh towardzero ldbl-128 0x1.8p+4L : 0x3.156ff6a8ebf6e66f1fb318fc8d6ap+32L : inexact-ok
+= sinh upward ldbl-128 0x1.8p+4L : 0x3.156ff6a8ebf6e66f1fb318fc8d6cp+32L : inexact-ok
+= sinh downward ldbl-128ibm 0x1.8p+4L : 0x3.156ff6a8ebf6e66f1fb318fc8dp+32L : inexact-ok
+= sinh tonearest ldbl-128ibm 0x1.8p+4L : 0x3.156ff6a8ebf6e66f1fb318fc8dp+32L : inexact-ok
+= sinh towardzero ldbl-128ibm 0x1.8p+4L : 0x3.156ff6a8ebf6e66f1fb318fc8dp+32L : inexact-ok
+= sinh upward ldbl-128ibm 0x1.8p+4L : 0x3.156ff6a8ebf6e66f1fb318fc8ep+32L : inexact-ok
+sqrt 0
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+sqrt -0
+= sqrt downward flt-32 -0x0p+0f : -0x0p+0f :
+= sqrt tonearest flt-32 -0x0p+0f : -0x0p+0f :
+= sqrt towardzero flt-32 -0x0p+0f : -0x0p+0f :
+= sqrt upward flt-32 -0x0p+0f : -0x0p+0f :
+= sqrt downward dbl-64 -0x0p+0 : -0x0p+0 :
+= sqrt tonearest dbl-64 -0x0p+0 : -0x0p+0 :
+= sqrt towardzero dbl-64 -0x0p+0 : -0x0p+0 :
+= sqrt upward dbl-64 -0x0p+0 : -0x0p+0 :
+= sqrt downward ldbl-96-intel -0x0p+0L : -0x0p+0L :
+= sqrt tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L :
+= sqrt towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L :
+= sqrt upward ldbl-96-intel -0x0p+0L : -0x0p+0L :
+= sqrt downward ldbl-96-m68k -0x0p+0L : -0x0p+0L :
+= sqrt tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L :
+= sqrt towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L :
+= sqrt upward ldbl-96-m68k -0x0p+0L : -0x0p+0L :
+= sqrt downward ldbl-128 -0x0p+0L : -0x0p+0L :
+= sqrt tonearest ldbl-128 -0x0p+0L : -0x0p+0L :
+= sqrt towardzero ldbl-128 -0x0p+0L : -0x0p+0L :
+= sqrt upward ldbl-128 -0x0p+0L : -0x0p+0L :
+= sqrt downward ldbl-128ibm -0x0p+0L : -0x0p+0L :
+= sqrt tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L :
+= sqrt towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L :
+= sqrt upward ldbl-128ibm -0x0p+0L : -0x0p+0L :
+sqrt 2209
+= sqrt downward flt-32 0x8.a1p+8f : 0x2.fp+4f :
+= sqrt tonearest flt-32 0x8.a1p+8f : 0x2.fp+4f :
+= sqrt towardzero flt-32 0x8.a1p+8f : 0x2.fp+4f :
+= sqrt upward flt-32 0x8.a1p+8f : 0x2.fp+4f :
+= sqrt downward dbl-64 0x8.a1p+8 : 0x2.fp+4 :
+= sqrt tonearest dbl-64 0x8.a1p+8 : 0x2.fp+4 :
+= sqrt towardzero dbl-64 0x8.a1p+8 : 0x2.fp+4 :
+= sqrt upward dbl-64 0x8.a1p+8 : 0x2.fp+4 :
+= sqrt downward ldbl-96-intel 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt tonearest ldbl-96-intel 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt towardzero ldbl-96-intel 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt upward ldbl-96-intel 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt downward ldbl-96-m68k 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt tonearest ldbl-96-m68k 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt towardzero ldbl-96-m68k 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt upward ldbl-96-m68k 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt downward ldbl-128 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt tonearest ldbl-128 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt towardzero ldbl-128 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt upward ldbl-128 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt downward ldbl-128ibm 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt tonearest ldbl-128ibm 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt towardzero ldbl-128ibm 0x8.a1p+8L : 0x2.fp+4L :
+= sqrt upward ldbl-128ibm 0x8.a1p+8L : 0x2.fp+4L :
+sqrt 4
+= sqrt downward flt-32 0x4p+0f : 0x2p+0f :
+= sqrt tonearest flt-32 0x4p+0f : 0x2p+0f :
+= sqrt towardzero flt-32 0x4p+0f : 0x2p+0f :
+= sqrt upward flt-32 0x4p+0f : 0x2p+0f :
+= sqrt downward dbl-64 0x4p+0 : 0x2p+0 :
+= sqrt tonearest dbl-64 0x4p+0 : 0x2p+0 :
+= sqrt towardzero dbl-64 0x4p+0 : 0x2p+0 :
+= sqrt upward dbl-64 0x4p+0 : 0x2p+0 :
+= sqrt downward ldbl-96-intel 0x4p+0L : 0x2p+0L :
+= sqrt tonearest ldbl-96-intel 0x4p+0L : 0x2p+0L :
+= sqrt towardzero ldbl-96-intel 0x4p+0L : 0x2p+0L :
+= sqrt upward ldbl-96-intel 0x4p+0L : 0x2p+0L :
+= sqrt downward ldbl-96-m68k 0x4p+0L : 0x2p+0L :
+= sqrt tonearest ldbl-96-m68k 0x4p+0L : 0x2p+0L :
+= sqrt towardzero ldbl-96-m68k 0x4p+0L : 0x2p+0L :
+= sqrt upward ldbl-96-m68k 0x4p+0L : 0x2p+0L :
+= sqrt downward ldbl-128 0x4p+0L : 0x2p+0L :
+= sqrt tonearest ldbl-128 0x4p+0L : 0x2p+0L :
+= sqrt towardzero ldbl-128 0x4p+0L : 0x2p+0L :
+= sqrt upward ldbl-128 0x4p+0L : 0x2p+0L :
+= sqrt downward ldbl-128ibm 0x4p+0L : 0x2p+0L :
+= sqrt tonearest ldbl-128ibm 0x4p+0L : 0x2p+0L :
+= sqrt towardzero ldbl-128ibm 0x4p+0L : 0x2p+0L :
+= sqrt upward ldbl-128ibm 0x4p+0L : 0x2p+0L :
+sqrt 2
+= sqrt downward flt-32 0x2p+0f : 0x1.6a09e6p+0f : inexact
+= sqrt tonearest flt-32 0x2p+0f : 0x1.6a09e6p+0f : inexact
+= sqrt towardzero flt-32 0x2p+0f : 0x1.6a09e6p+0f : inexact
+= sqrt upward flt-32 0x2p+0f : 0x1.6a09e8p+0f : inexact
+= sqrt downward dbl-64 0x2p+0 : 0x1.6a09e667f3bccp+0 : inexact
+= sqrt tonearest dbl-64 0x2p+0 : 0x1.6a09e667f3bcdp+0 : inexact
+= sqrt towardzero dbl-64 0x2p+0 : 0x1.6a09e667f3bccp+0 : inexact
+= sqrt upward dbl-64 0x2p+0 : 0x1.6a09e667f3bcdp+0 : inexact
+= sqrt downward ldbl-96-intel 0x2p+0L : 0x1.6a09e667f3bcc908p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x2p+0L : 0x1.6a09e667f3bcc908p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x2p+0L : 0x1.6a09e667f3bcc908p+0L : inexact
+= sqrt upward ldbl-96-intel 0x2p+0L : 0x1.6a09e667f3bcc90ap+0L : inexact
+= sqrt downward ldbl-96-m68k 0x2p+0L : 0x1.6a09e667f3bcc908p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x2p+0L : 0x1.6a09e667f3bcc908p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x2p+0L : 0x1.6a09e667f3bcc908p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x2p+0L : 0x1.6a09e667f3bcc90ap+0L : inexact
+= sqrt downward ldbl-128 0x2p+0L : 0x1.6a09e667f3bcc908b2fb1366ea95p+0L : inexact
+= sqrt tonearest ldbl-128 0x2p+0L : 0x1.6a09e667f3bcc908b2fb1366ea95p+0L : inexact
+= sqrt towardzero ldbl-128 0x2p+0L : 0x1.6a09e667f3bcc908b2fb1366ea95p+0L : inexact
+= sqrt upward ldbl-128 0x2p+0L : 0x1.6a09e667f3bcc908b2fb1366ea96p+0L : inexact
+= sqrt downward ldbl-128ibm 0x2p+0L : 0x1.6a09e667f3bcc908b2fb1366ea8p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x2p+0L : 0x1.6a09e667f3bcc908b2fb1366ea8p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x2p+0L : 0x1.6a09e667f3bcc908b2fb1366ea8p+0L : inexact
+= sqrt upward ldbl-128ibm 0x2p+0L : 0x1.6a09e667f3bcc908b2fb1366ebp+0L : inexact
+sqrt 0.25
+= sqrt downward flt-32 0x4p-4f : 0x8p-4f :
+= sqrt tonearest flt-32 0x4p-4f : 0x8p-4f :
+= sqrt towardzero flt-32 0x4p-4f : 0x8p-4f :
+= sqrt upward flt-32 0x4p-4f : 0x8p-4f :
+= sqrt downward dbl-64 0x4p-4 : 0x8p-4 :
+= sqrt tonearest dbl-64 0x4p-4 : 0x8p-4 :
+= sqrt towardzero dbl-64 0x4p-4 : 0x8p-4 :
+= sqrt upward dbl-64 0x4p-4 : 0x8p-4 :
+= sqrt downward ldbl-96-intel 0x4p-4L : 0x8p-4L :
+= sqrt tonearest ldbl-96-intel 0x4p-4L : 0x8p-4L :
+= sqrt towardzero ldbl-96-intel 0x4p-4L : 0x8p-4L :
+= sqrt upward ldbl-96-intel 0x4p-4L : 0x8p-4L :
+= sqrt downward ldbl-96-m68k 0x4p-4L : 0x8p-4L :
+= sqrt tonearest ldbl-96-m68k 0x4p-4L : 0x8p-4L :
+= sqrt towardzero ldbl-96-m68k 0x4p-4L : 0x8p-4L :
+= sqrt upward ldbl-96-m68k 0x4p-4L : 0x8p-4L :
+= sqrt downward ldbl-128 0x4p-4L : 0x8p-4L :
+= sqrt tonearest ldbl-128 0x4p-4L : 0x8p-4L :
+= sqrt towardzero ldbl-128 0x4p-4L : 0x8p-4L :
+= sqrt upward ldbl-128 0x4p-4L : 0x8p-4L :
+= sqrt downward ldbl-128ibm 0x4p-4L : 0x8p-4L :
+= sqrt tonearest ldbl-128ibm 0x4p-4L : 0x8p-4L :
+= sqrt towardzero ldbl-128ibm 0x4p-4L : 0x8p-4L :
+= sqrt upward ldbl-128ibm 0x4p-4L : 0x8p-4L :
+sqrt 6642.25
+= sqrt downward flt-32 0x1.9f24p+12f : 0x5.18p+4f :
+= sqrt tonearest flt-32 0x1.9f24p+12f : 0x5.18p+4f :
+= sqrt towardzero flt-32 0x1.9f24p+12f : 0x5.18p+4f :
+= sqrt upward flt-32 0x1.9f24p+12f : 0x5.18p+4f :
+= sqrt downward dbl-64 0x1.9f24p+12 : 0x5.18p+4 :
+= sqrt tonearest dbl-64 0x1.9f24p+12 : 0x5.18p+4 :
+= sqrt towardzero dbl-64 0x1.9f24p+12 : 0x5.18p+4 :
+= sqrt upward dbl-64 0x1.9f24p+12 : 0x5.18p+4 :
+= sqrt downward ldbl-96-intel 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt tonearest ldbl-96-intel 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt towardzero ldbl-96-intel 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt upward ldbl-96-intel 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt downward ldbl-96-m68k 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt tonearest ldbl-96-m68k 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt towardzero ldbl-96-m68k 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt upward ldbl-96-m68k 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt downward ldbl-128 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt tonearest ldbl-128 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt towardzero ldbl-128 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt upward ldbl-128 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt downward ldbl-128ibm 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt tonearest ldbl-128ibm 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt towardzero ldbl-128ibm 0x1.9f24p+12L : 0x5.18p+4L :
+= sqrt upward ldbl-128ibm 0x1.9f24p+12L : 0x5.18p+4L :
+sqrt 15190.5625
+= sqrt downward flt-32 0x3.b569p+12f : 0x7.b4p+4f :
+= sqrt tonearest flt-32 0x3.b569p+12f : 0x7.b4p+4f :
+= sqrt towardzero flt-32 0x3.b569p+12f : 0x7.b4p+4f :
+= sqrt upward flt-32 0x3.b569p+12f : 0x7.b4p+4f :
+= sqrt downward dbl-64 0x3.b569p+12 : 0x7.b4p+4 :
+= sqrt tonearest dbl-64 0x3.b569p+12 : 0x7.b4p+4 :
+= sqrt towardzero dbl-64 0x3.b569p+12 : 0x7.b4p+4 :
+= sqrt upward dbl-64 0x3.b569p+12 : 0x7.b4p+4 :
+= sqrt downward ldbl-96-intel 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt tonearest ldbl-96-intel 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt towardzero ldbl-96-intel 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt upward ldbl-96-intel 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt downward ldbl-96-m68k 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt tonearest ldbl-96-m68k 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt towardzero ldbl-96-m68k 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt upward ldbl-96-m68k 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt downward ldbl-128 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt tonearest ldbl-128 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt towardzero ldbl-128 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt upward ldbl-128 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt downward ldbl-128ibm 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt tonearest ldbl-128ibm 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt towardzero ldbl-128ibm 0x3.b569p+12L : 0x7.b4p+4L :
+= sqrt upward ldbl-128ibm 0x3.b569p+12L : 0x7.b4p+4L :
+sqrt 0.75
+= sqrt downward flt-32 0xcp-4f : 0xd.db3d7p-4f : inexact
+= sqrt tonearest flt-32 0xcp-4f : 0xd.db3d7p-4f : inexact
+= sqrt towardzero flt-32 0xcp-4f : 0xd.db3d7p-4f : inexact
+= sqrt upward flt-32 0xcp-4f : 0xd.db3d8p-4f : inexact
+= sqrt downward dbl-64 0xcp-4 : 0xd.db3d742c2655p-4 : inexact
+= sqrt tonearest dbl-64 0xcp-4 : 0xd.db3d742c2655p-4 : inexact
+= sqrt towardzero dbl-64 0xcp-4 : 0xd.db3d742c2655p-4 : inexact
+= sqrt upward dbl-64 0xcp-4 : 0xd.db3d742c26558p-4 : inexact
+= sqrt downward ldbl-96-intel 0xcp-4L : 0xd.db3d742c265539dp-4L : inexact
+= sqrt tonearest ldbl-96-intel 0xcp-4L : 0xd.db3d742c265539ep-4L : inexact
+= sqrt towardzero ldbl-96-intel 0xcp-4L : 0xd.db3d742c265539dp-4L : inexact
+= sqrt upward ldbl-96-intel 0xcp-4L : 0xd.db3d742c265539ep-4L : inexact
+= sqrt downward ldbl-96-m68k 0xcp-4L : 0xd.db3d742c265539dp-4L : inexact
+= sqrt tonearest ldbl-96-m68k 0xcp-4L : 0xd.db3d742c265539ep-4L : inexact
+= sqrt towardzero ldbl-96-m68k 0xcp-4L : 0xd.db3d742c265539dp-4L : inexact
+= sqrt upward ldbl-96-m68k 0xcp-4L : 0xd.db3d742c265539ep-4L : inexact
+= sqrt downward ldbl-128 0xcp-4L : 0xd.db3d742c265539d92ba16b83c5cp-4L : inexact
+= sqrt tonearest ldbl-128 0xcp-4L : 0xd.db3d742c265539d92ba16b83c5cp-4L : inexact
+= sqrt towardzero ldbl-128 0xcp-4L : 0xd.db3d742c265539d92ba16b83c5cp-4L : inexact
+= sqrt upward ldbl-128 0xcp-4L : 0xd.db3d742c265539d92ba16b83c5c8p-4L : inexact
+= sqrt downward ldbl-128ibm 0xcp-4L : 0xd.db3d742c265539d92ba16b83c4p-4L : inexact
+= sqrt tonearest ldbl-128ibm 0xcp-4L : 0xd.db3d742c265539d92ba16b83c4p-4L : inexact
+= sqrt towardzero ldbl-128ibm 0xcp-4L : 0xd.db3d742c265539d92ba16b83c4p-4L : inexact
+= sqrt upward ldbl-128ibm 0xcp-4L : 0xd.db3d742c265539d92ba16b83c8p-4L : inexact
+sqrt 0x1.fffffffffffffp+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+508 : inexact
+= sqrt tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+508 : inexact
+= sqrt towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0xf.ffffffffffff8p+508 : inexact
+= sqrt upward dbl-64 0xf.ffffffffffff8p+1020 : 0x1p+512 : inexact
+= sqrt downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact
+= sqrt downward ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbfffffffffffff78p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbfffffffffffff8p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbfffffffffffff78p+508L : inexact
+= sqrt upward ldbl-128 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbfffffffffffff8p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffbffffffffffffcp+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0xf.ffffffffffffcp+508L : inexact
+sqrt 0x1.ffffffffffffbp+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.fffffffffffd8p+1020 : 0xf.fffffffffffe8p+508 : inexact
+= sqrt tonearest dbl-64 0xf.fffffffffffd8p+1020 : 0xf.fffffffffffe8p+508 : inexact
+= sqrt towardzero dbl-64 0xf.fffffffffffd8p+1020 : 0xf.fffffffffffe8p+508 : inexact
+= sqrt upward dbl-64 0xf.fffffffffffd8p+1020 : 0xf.ffffffffffffp+508 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffecp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffecp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffecp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffecp+508L : inexact
+= sqrt downward ldbl-128 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff378p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff38p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff378p+508L : inexact
+= sqrt upward ldbl-128 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff38p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffffp+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff4p+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffffp+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffffffffd8p+1020L : 0xf.fffffffffffebffffffffffff4p+508L : inexact
+sqrt 0x1.ffffffffffff7p+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.fffffffffffb8p+1020 : 0xf.fffffffffffd8p+508 : inexact
+= sqrt tonearest dbl-64 0xf.fffffffffffb8p+1020 : 0xf.fffffffffffd8p+508 : inexact
+= sqrt towardzero dbl-64 0xf.fffffffffffb8p+1020 : 0xf.fffffffffffd8p+508 : inexact
+= sqrt upward dbl-64 0xf.fffffffffffb8p+1020 : 0xf.fffffffffffep+508 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdcp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdcp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdcp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdcp+508L : inexact
+= sqrt downward ldbl-128 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd778p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd78p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd778p+508L : inexact
+= sqrt upward ldbl-128 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd78p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd4p+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd8p+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd4p+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffffffffb8p+1020L : 0xf.fffffffffffdbfffffffffffd8p+508L : inexact
+sqrt 0x1.ffffffffffff3p+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.fffffffffff98p+1020 : 0xf.fffffffffffc8p+508 : inexact
+= sqrt tonearest dbl-64 0xf.fffffffffff98p+1020 : 0xf.fffffffffffc8p+508 : inexact
+= sqrt towardzero dbl-64 0xf.fffffffffff98p+1020 : 0xf.fffffffffffc8p+508 : inexact
+= sqrt upward dbl-64 0xf.fffffffffff98p+1020 : 0xf.fffffffffffdp+508 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffffffff98p+1020L : 0xf.fffffffffffccp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffffffff98p+1020L : 0xf.fffffffffffccp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffffffff98p+1020L : 0xf.fffffffffffccp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffffffff98p+1020L : 0xf.fffffffffffccp+508L : inexact
+= sqrt downward ldbl-128 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffab78p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffab8p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffab78p+508L : inexact
+= sqrt upward ldbl-128 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffab8p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffa8p+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffacp+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffa8p+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffffffff98p+1020L : 0xf.fffffffffffcbfffffffffffacp+508L : inexact
+sqrt 0x1.fffffffffffefp+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.fffffffffff78p+1020 : 0xf.fffffffffffb8p+508 : inexact
+= sqrt tonearest dbl-64 0xf.fffffffffff78p+1020 : 0xf.fffffffffffb8p+508 : inexact
+= sqrt towardzero dbl-64 0xf.fffffffffff78p+1020 : 0xf.fffffffffffb8p+508 : inexact
+= sqrt upward dbl-64 0xf.fffffffffff78p+1020 : 0xf.fffffffffffcp+508 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbcp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbcp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbcp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbcp+508L : inexact
+= sqrt downward ldbl-128 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6f78p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6f8p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6f78p+508L : inexact
+= sqrt upward ldbl-128 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6f8p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6cp+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff7p+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff6cp+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffffffff78p+1020L : 0xf.fffffffffffbbfffffffffff7p+508L : inexact
+sqrt 0x1.fffffffffffebp+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.fffffffffff58p+1020 : 0xf.fffffffffffa8p+508 : inexact
+= sqrt tonearest dbl-64 0xf.fffffffffff58p+1020 : 0xf.fffffffffffa8p+508 : inexact
+= sqrt towardzero dbl-64 0xf.fffffffffff58p+1020 : 0xf.fffffffffffa8p+508 : inexact
+= sqrt upward dbl-64 0xf.fffffffffff58p+1020 : 0xf.fffffffffffbp+508 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffffffff58p+1020L : 0xf.fffffffffffacp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffffffff58p+1020L : 0xf.fffffffffffacp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffffffff58p+1020L : 0xf.fffffffffffacp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffffffff58p+1020L : 0xf.fffffffffffacp+508L : inexact
+= sqrt downward ldbl-128 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff2378p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff238p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff2378p+508L : inexact
+= sqrt upward ldbl-128 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff238p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff2p+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff24p+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff2p+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffffffff58p+1020L : 0xf.fffffffffffabfffffffffff24p+508L : inexact
+sqrt 0x1.fffffffffffe7p+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.fffffffffff38p+1020 : 0xf.fffffffffff98p+508 : inexact
+= sqrt tonearest dbl-64 0xf.fffffffffff38p+1020 : 0xf.fffffffffff98p+508 : inexact
+= sqrt towardzero dbl-64 0xf.fffffffffff38p+1020 : 0xf.fffffffffff98p+508 : inexact
+= sqrt upward dbl-64 0xf.fffffffffff38p+1020 : 0xf.fffffffffffap+508 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9cp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9cp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9cp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9cp+508L : inexact
+= sqrt downward ldbl-128 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffffffffffec778p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffffffffffec78p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffffffffffec778p+508L : inexact
+= sqrt upward ldbl-128 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffffffffffec78p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffffffffffec4p+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffffffffffec8p+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffffffffffec4p+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffffffff38p+1020L : 0xf.fffffffffff9bffffffffffec8p+508L : inexact
+sqrt 0x1.fffffffffffe3p+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.fffffffffff18p+1020 : 0xf.fffffffffff88p+508 : inexact
+= sqrt tonearest dbl-64 0xf.fffffffffff18p+1020 : 0xf.fffffffffff88p+508 : inexact
+= sqrt towardzero dbl-64 0xf.fffffffffff18p+1020 : 0xf.fffffffffff88p+508 : inexact
+= sqrt upward dbl-64 0xf.fffffffffff18p+1020 : 0xf.fffffffffff9p+508 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8cp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8cp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8cp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8cp+508L : inexact
+= sqrt downward ldbl-128 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffffffffffe5b78p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffffffffffe5b8p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffffffffffe5b78p+508L : inexact
+= sqrt upward ldbl-128 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffffffffffe5b8p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffffffffffe58p+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffffffffffe5cp+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffffffffffe58p+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffffffff18p+1020L : 0xf.fffffffffff8bffffffffffe5cp+508L : inexact
+sqrt 0x1.fffffffffffdfp+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.ffffffffffef8p+1020 : 0xf.fffffffffff78p+508 : inexact
+= sqrt tonearest dbl-64 0xf.ffffffffffef8p+1020 : 0xf.fffffffffff78p+508 : inexact
+= sqrt towardzero dbl-64 0xf.ffffffffffef8p+1020 : 0xf.fffffffffff78p+508 : inexact
+= sqrt upward dbl-64 0xf.ffffffffffef8p+1020 : 0xf.fffffffffff8p+508 : inexact
+= sqrt downward ldbl-96-intel 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7cp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7cp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7cp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7cp+508L : inexact
+= sqrt downward ldbl-128 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffffffffffddf78p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffffffffffddf8p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffffffffffddf78p+508L : inexact
+= sqrt upward ldbl-128 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffffffffffddf8p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffffffffffddcp+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffffffffffdep+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffffffffffddcp+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.ffffffffffef8p+1020L : 0xf.fffffffffff7bffffffffffdep+508L : inexact
+sqrt 0x1.fffffffffffdbp+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.ffffffffffed8p+1020 : 0xf.fffffffffff68p+508 : inexact
+= sqrt tonearest dbl-64 0xf.ffffffffffed8p+1020 : 0xf.fffffffffff68p+508 : inexact
+= sqrt towardzero dbl-64 0xf.ffffffffffed8p+1020 : 0xf.fffffffffff68p+508 : inexact
+= sqrt upward dbl-64 0xf.ffffffffffed8p+1020 : 0xf.fffffffffff7p+508 : inexact
+= sqrt downward ldbl-96-intel 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6cp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6cp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6cp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6cp+508L : inexact
+= sqrt downward ldbl-128 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffffffffffd5378p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffffffffffd538p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffffffffffd5378p+508L : inexact
+= sqrt upward ldbl-128 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffffffffffd538p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffffffffffd5p+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffffffffffd54p+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffffffffffd5p+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.ffffffffffed8p+1020L : 0xf.fffffffffff6bffffffffffd54p+508L : inexact
+sqrt 0x1.fffffffffffd7p+1023
+= sqrt downward flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt tonearest flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt towardzero flt-32 0xf.fffffp+124f : 0xf.fffffp+60f : inexact
+= sqrt upward flt-32 0xf.fffffp+124f : 0x1p+64f : inexact
+= sqrt downward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffd8p+60 : inexact
+= sqrt upward dbl-64 0xf.fffffp+124 : 0xf.fffff7fffffep+60 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffdfffp+60L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp+124L : 0xf.fffff7fffffep+60L : inexact
+= sqrt downward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5ff8p+60L : inexact
+= sqrt upward ldbl-128 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff5cp+60L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp+124L : 0xf.fffff7fffffdfffffeffffff6p+60L : inexact
+= sqrt downward dbl-64 0xf.ffffffffffeb8p+1020 : 0xf.fffffffffff58p+508 : inexact
+= sqrt tonearest dbl-64 0xf.ffffffffffeb8p+1020 : 0xf.fffffffffff58p+508 : inexact
+= sqrt towardzero dbl-64 0xf.ffffffffffeb8p+1020 : 0xf.fffffffffff58p+508 : inexact
+= sqrt upward dbl-64 0xf.ffffffffffeb8p+1020 : 0xf.fffffffffff6p+508 : inexact
+= sqrt downward ldbl-96-intel 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffp+508L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5cp+508L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffp+508L : inexact
+= sqrt upward ldbl-96-intel 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5cp+508L : inexact
+= sqrt downward ldbl-96-m68k 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffp+508L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5cp+508L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffp+508L : inexact
+= sqrt upward ldbl-96-m68k 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5cp+508L : inexact
+= sqrt downward ldbl-128 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffffffffffcb778p+508L : inexact
+= sqrt tonearest ldbl-128 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffffffffffcb78p+508L : inexact
+= sqrt towardzero ldbl-128 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffffffffffcb778p+508L : inexact
+= sqrt upward ldbl-128 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffffffffffcb78p+508L : inexact
+= sqrt downward ldbl-128ibm 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffffffffffcb4p+508L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffffffffffcb8p+508L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffffffffffcb4p+508L : inexact
+= sqrt upward ldbl-128ibm 0xf.ffffffffffeb8p+1020L : 0xf.fffffffffff5bffffffffffcb8p+508L : inexact
+sqrt 0x1.0000000000003p-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.000000000000cp-1024 : 0x2.0000000000002p-512 : inexact
+= sqrt tonearest dbl-64 0x4.000000000000cp-1024 : 0x2.0000000000002p-512 : inexact
+= sqrt towardzero dbl-64 0x4.000000000000cp-1024 : 0x2.0000000000002p-512 : inexact
+= sqrt upward dbl-64 0x4.000000000000cp-1024 : 0x2.0000000000004p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.000000000000cp-1024L : 0x2.0000000000002ffcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.000000000000cp-1024L : 0x2.0000000000003p-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.000000000000cp-1024L : 0x2.0000000000002ffcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.000000000000cp-1024L : 0x2.0000000000003p-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.000000000000cp-1024L : 0x2.0000000000002ffcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.000000000000cp-1024L : 0x2.0000000000003p-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.000000000000cp-1024L : 0x2.0000000000002ffcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.000000000000cp-1024L : 0x2.0000000000003p-512L : inexact
+= sqrt downward ldbl-128 0x4.000000000000cp-1024L : 0x2.0000000000002ffffffffffffdcp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.000000000000cp-1024L : 0x2.0000000000002ffffffffffffdcp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.000000000000cp-1024L : 0x2.0000000000002ffffffffffffdcp-512L : inexact
+= sqrt upward ldbl-128 0x4.000000000000cp-1024L : 0x2.0000000000002ffffffffffffdc2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.000000000000cp-1024L : 0x2.0000000000002ffffffffffffdp-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.000000000000cp-1024L : 0x2.0000000000002ffffffffffffep-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.000000000000cp-1024L : 0x2.0000000000002ffffffffffffdp-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.000000000000cp-1024L : 0x2.0000000000002ffffffffffffep-512L : inexact
+sqrt 0x1.0000000000007p-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.000000000001cp-1024 : 0x2.0000000000006p-512 : inexact
+= sqrt tonearest dbl-64 0x4.000000000001cp-1024 : 0x2.0000000000006p-512 : inexact
+= sqrt towardzero dbl-64 0x4.000000000001cp-1024 : 0x2.0000000000006p-512 : inexact
+= sqrt upward dbl-64 0x4.000000000001cp-1024 : 0x2.0000000000008p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.000000000001cp-1024L : 0x2.0000000000006ffcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.000000000001cp-1024L : 0x2.0000000000007p-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.000000000001cp-1024L : 0x2.0000000000006ffcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.000000000001cp-1024L : 0x2.0000000000007p-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.000000000001cp-1024L : 0x2.0000000000006ffcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.000000000001cp-1024L : 0x2.0000000000007p-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.000000000001cp-1024L : 0x2.0000000000006ffcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.000000000001cp-1024L : 0x2.0000000000007p-512L : inexact
+= sqrt downward ldbl-128 0x4.000000000001cp-1024L : 0x2.0000000000006ffffffffffff3cp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.000000000001cp-1024L : 0x2.0000000000006ffffffffffff3cp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.000000000001cp-1024L : 0x2.0000000000006ffffffffffff3cp-512L : inexact
+= sqrt upward ldbl-128 0x4.000000000001cp-1024L : 0x2.0000000000006ffffffffffff3c2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.000000000001cp-1024L : 0x2.0000000000006ffffffffffff3p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.000000000001cp-1024L : 0x2.0000000000006ffffffffffff4p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.000000000001cp-1024L : 0x2.0000000000006ffffffffffff3p-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.000000000001cp-1024L : 0x2.0000000000006ffffffffffff4p-512L : inexact
+sqrt 0x1.000000000000bp-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.000000000002cp-1024 : 0x2.000000000000ap-512 : inexact
+= sqrt tonearest dbl-64 0x4.000000000002cp-1024 : 0x2.000000000000ap-512 : inexact
+= sqrt towardzero dbl-64 0x4.000000000002cp-1024 : 0x2.000000000000ap-512 : inexact
+= sqrt upward dbl-64 0x4.000000000002cp-1024 : 0x2.000000000000cp-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.000000000002cp-1024L : 0x2.000000000000affcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.000000000002cp-1024L : 0x2.000000000000bp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.000000000002cp-1024L : 0x2.000000000000affcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.000000000002cp-1024L : 0x2.000000000000bp-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.000000000002cp-1024L : 0x2.000000000000affcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.000000000002cp-1024L : 0x2.000000000000bp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.000000000002cp-1024L : 0x2.000000000000affcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.000000000002cp-1024L : 0x2.000000000000bp-512L : inexact
+= sqrt downward ldbl-128 0x4.000000000002cp-1024L : 0x2.000000000000afffffffffffe1cp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.000000000002cp-1024L : 0x2.000000000000afffffffffffe1cp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.000000000002cp-1024L : 0x2.000000000000afffffffffffe1cp-512L : inexact
+= sqrt upward ldbl-128 0x4.000000000002cp-1024L : 0x2.000000000000afffffffffffe1c2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.000000000002cp-1024L : 0x2.000000000000afffffffffffe1p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.000000000002cp-1024L : 0x2.000000000000afffffffffffe2p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.000000000002cp-1024L : 0x2.000000000000afffffffffffe1p-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.000000000002cp-1024L : 0x2.000000000000afffffffffffe2p-512L : inexact
+sqrt 0x1.000000000000fp-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.000000000003cp-1024 : 0x2.000000000000ep-512 : inexact
+= sqrt tonearest dbl-64 0x4.000000000003cp-1024 : 0x2.000000000000ep-512 : inexact
+= sqrt towardzero dbl-64 0x4.000000000003cp-1024 : 0x2.000000000000ep-512 : inexact
+= sqrt upward dbl-64 0x4.000000000003cp-1024 : 0x2.000000000001p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.000000000003cp-1024L : 0x2.000000000000effcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.000000000003cp-1024L : 0x2.000000000000fp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.000000000003cp-1024L : 0x2.000000000000effcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.000000000003cp-1024L : 0x2.000000000000fp-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.000000000003cp-1024L : 0x2.000000000000effcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.000000000003cp-1024L : 0x2.000000000000fp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.000000000003cp-1024L : 0x2.000000000000effcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.000000000003cp-1024L : 0x2.000000000000fp-512L : inexact
+= sqrt downward ldbl-128 0x4.000000000003cp-1024L : 0x2.000000000000efffffffffffc7cp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.000000000003cp-1024L : 0x2.000000000000efffffffffffc7cp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.000000000003cp-1024L : 0x2.000000000000efffffffffffc7cp-512L : inexact
+= sqrt upward ldbl-128 0x4.000000000003cp-1024L : 0x2.000000000000efffffffffffc7c2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.000000000003cp-1024L : 0x2.000000000000efffffffffffc7p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.000000000003cp-1024L : 0x2.000000000000efffffffffffc8p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.000000000003cp-1024L : 0x2.000000000000efffffffffffc7p-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.000000000003cp-1024L : 0x2.000000000000efffffffffffc8p-512L : inexact
+sqrt 0x1.0000000000013p-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.000000000004cp-1024 : 0x2.0000000000012p-512 : inexact
+= sqrt tonearest dbl-64 0x4.000000000004cp-1024 : 0x2.0000000000012p-512 : inexact
+= sqrt towardzero dbl-64 0x4.000000000004cp-1024 : 0x2.0000000000012p-512 : inexact
+= sqrt upward dbl-64 0x4.000000000004cp-1024 : 0x2.0000000000014p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.000000000004cp-1024L : 0x2.0000000000012ffcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.000000000004cp-1024L : 0x2.0000000000013p-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.000000000004cp-1024L : 0x2.0000000000012ffcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.000000000004cp-1024L : 0x2.0000000000013p-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.000000000004cp-1024L : 0x2.0000000000012ffcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.000000000004cp-1024L : 0x2.0000000000013p-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.000000000004cp-1024L : 0x2.0000000000012ffcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.000000000004cp-1024L : 0x2.0000000000013p-512L : inexact
+= sqrt downward ldbl-128 0x4.000000000004cp-1024L : 0x2.0000000000012fffffffffffa5cp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.000000000004cp-1024L : 0x2.0000000000012fffffffffffa5cp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.000000000004cp-1024L : 0x2.0000000000012fffffffffffa5cp-512L : inexact
+= sqrt upward ldbl-128 0x4.000000000004cp-1024L : 0x2.0000000000012fffffffffffa5c2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.000000000004cp-1024L : 0x2.0000000000012fffffffffffa5p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.000000000004cp-1024L : 0x2.0000000000012fffffffffffa6p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.000000000004cp-1024L : 0x2.0000000000012fffffffffffa5p-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.000000000004cp-1024L : 0x2.0000000000012fffffffffffa6p-512L : inexact
+sqrt 0x1.0000000000017p-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.000000000005cp-1024 : 0x2.0000000000016p-512 : inexact
+= sqrt tonearest dbl-64 0x4.000000000005cp-1024 : 0x2.0000000000016p-512 : inexact
+= sqrt towardzero dbl-64 0x4.000000000005cp-1024 : 0x2.0000000000016p-512 : inexact
+= sqrt upward dbl-64 0x4.000000000005cp-1024 : 0x2.0000000000018p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.000000000005cp-1024L : 0x2.0000000000016ffcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.000000000005cp-1024L : 0x2.0000000000017p-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.000000000005cp-1024L : 0x2.0000000000016ffcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.000000000005cp-1024L : 0x2.0000000000017p-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.000000000005cp-1024L : 0x2.0000000000016ffcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.000000000005cp-1024L : 0x2.0000000000017p-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.000000000005cp-1024L : 0x2.0000000000016ffcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.000000000005cp-1024L : 0x2.0000000000017p-512L : inexact
+= sqrt downward ldbl-128 0x4.000000000005cp-1024L : 0x2.0000000000016fffffffffff7bcp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.000000000005cp-1024L : 0x2.0000000000016fffffffffff7bcp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.000000000005cp-1024L : 0x2.0000000000016fffffffffff7bcp-512L : inexact
+= sqrt upward ldbl-128 0x4.000000000005cp-1024L : 0x2.0000000000016fffffffffff7bc2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.000000000005cp-1024L : 0x2.0000000000016fffffffffff7bp-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.000000000005cp-1024L : 0x2.0000000000016fffffffffff7cp-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.000000000005cp-1024L : 0x2.0000000000016fffffffffff7bp-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.000000000005cp-1024L : 0x2.0000000000016fffffffffff7cp-512L : inexact
+sqrt 0x1.000000000001bp-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.000000000006cp-1024 : 0x2.000000000001ap-512 : inexact
+= sqrt tonearest dbl-64 0x4.000000000006cp-1024 : 0x2.000000000001ap-512 : inexact
+= sqrt towardzero dbl-64 0x4.000000000006cp-1024 : 0x2.000000000001ap-512 : inexact
+= sqrt upward dbl-64 0x4.000000000006cp-1024 : 0x2.000000000001cp-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.000000000006cp-1024L : 0x2.000000000001affcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.000000000006cp-1024L : 0x2.000000000001bp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.000000000006cp-1024L : 0x2.000000000001affcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.000000000006cp-1024L : 0x2.000000000001bp-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.000000000006cp-1024L : 0x2.000000000001affcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.000000000006cp-1024L : 0x2.000000000001bp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.000000000006cp-1024L : 0x2.000000000001affcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.000000000006cp-1024L : 0x2.000000000001bp-512L : inexact
+= sqrt downward ldbl-128 0x4.000000000006cp-1024L : 0x2.000000000001afffffffffff49cp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.000000000006cp-1024L : 0x2.000000000001afffffffffff49cp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.000000000006cp-1024L : 0x2.000000000001afffffffffff49cp-512L : inexact
+= sqrt upward ldbl-128 0x4.000000000006cp-1024L : 0x2.000000000001afffffffffff49c2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.000000000006cp-1024L : 0x2.000000000001afffffffffff49p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.000000000006cp-1024L : 0x2.000000000001afffffffffff4ap-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.000000000006cp-1024L : 0x2.000000000001afffffffffff49p-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.000000000006cp-1024L : 0x2.000000000001afffffffffff4ap-512L : inexact
+sqrt 0x1.000000000001fp-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.000000000007cp-1024 : 0x2.000000000001ep-512 : inexact
+= sqrt tonearest dbl-64 0x4.000000000007cp-1024 : 0x2.000000000001ep-512 : inexact
+= sqrt towardzero dbl-64 0x4.000000000007cp-1024 : 0x2.000000000001ep-512 : inexact
+= sqrt upward dbl-64 0x4.000000000007cp-1024 : 0x2.000000000002p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.000000000007cp-1024L : 0x2.000000000001effcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.000000000007cp-1024L : 0x2.000000000001fp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.000000000007cp-1024L : 0x2.000000000001effcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.000000000007cp-1024L : 0x2.000000000001fp-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.000000000007cp-1024L : 0x2.000000000001effcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.000000000007cp-1024L : 0x2.000000000001fp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.000000000007cp-1024L : 0x2.000000000001effcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.000000000007cp-1024L : 0x2.000000000001fp-512L : inexact
+= sqrt downward ldbl-128 0x4.000000000007cp-1024L : 0x2.000000000001efffffffffff0fcp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.000000000007cp-1024L : 0x2.000000000001efffffffffff0fcp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.000000000007cp-1024L : 0x2.000000000001efffffffffff0fcp-512L : inexact
+= sqrt upward ldbl-128 0x4.000000000007cp-1024L : 0x2.000000000001efffffffffff0fc2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.000000000007cp-1024L : 0x2.000000000001efffffffffff0fp-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.000000000007cp-1024L : 0x2.000000000001efffffffffff1p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.000000000007cp-1024L : 0x2.000000000001efffffffffff0fp-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.000000000007cp-1024L : 0x2.000000000001efffffffffff1p-512L : inexact
+sqrt 0x1.0000000000023p-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.000000000008cp-1024 : 0x2.0000000000022p-512 : inexact
+= sqrt tonearest dbl-64 0x4.000000000008cp-1024 : 0x2.0000000000022p-512 : inexact
+= sqrt towardzero dbl-64 0x4.000000000008cp-1024 : 0x2.0000000000022p-512 : inexact
+= sqrt upward dbl-64 0x4.000000000008cp-1024 : 0x2.0000000000024p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.000000000008cp-1024L : 0x2.0000000000022ffcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.000000000008cp-1024L : 0x2.0000000000023p-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.000000000008cp-1024L : 0x2.0000000000022ffcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.000000000008cp-1024L : 0x2.0000000000023p-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.000000000008cp-1024L : 0x2.0000000000022ffcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.000000000008cp-1024L : 0x2.0000000000023p-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.000000000008cp-1024L : 0x2.0000000000022ffcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.000000000008cp-1024L : 0x2.0000000000023p-512L : inexact
+= sqrt downward ldbl-128 0x4.000000000008cp-1024L : 0x2.0000000000022ffffffffffecdcp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.000000000008cp-1024L : 0x2.0000000000022ffffffffffecdcp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.000000000008cp-1024L : 0x2.0000000000022ffffffffffecdcp-512L : inexact
+= sqrt upward ldbl-128 0x4.000000000008cp-1024L : 0x2.0000000000022ffffffffffecdc2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.000000000008cp-1024L : 0x2.0000000000022ffffffffffecdp-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.000000000008cp-1024L : 0x2.0000000000022ffffffffffecep-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.000000000008cp-1024L : 0x2.0000000000022ffffffffffecdp-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.000000000008cp-1024L : 0x2.0000000000022ffffffffffecep-512L : inexact
+sqrt 0x1.0000000000027p-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.000000000009cp-1024 : 0x2.0000000000026p-512 : inexact
+= sqrt tonearest dbl-64 0x4.000000000009cp-1024 : 0x2.0000000000026p-512 : inexact
+= sqrt towardzero dbl-64 0x4.000000000009cp-1024 : 0x2.0000000000026p-512 : inexact
+= sqrt upward dbl-64 0x4.000000000009cp-1024 : 0x2.0000000000028p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.000000000009cp-1024L : 0x2.0000000000026ffcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.000000000009cp-1024L : 0x2.0000000000027p-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.000000000009cp-1024L : 0x2.0000000000026ffcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.000000000009cp-1024L : 0x2.0000000000027p-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.000000000009cp-1024L : 0x2.0000000000026ffcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.000000000009cp-1024L : 0x2.0000000000027p-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.000000000009cp-1024L : 0x2.0000000000026ffcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.000000000009cp-1024L : 0x2.0000000000027p-512L : inexact
+= sqrt downward ldbl-128 0x4.000000000009cp-1024L : 0x2.0000000000026ffffffffffe83cp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.000000000009cp-1024L : 0x2.0000000000026ffffffffffe83cp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.000000000009cp-1024L : 0x2.0000000000026ffffffffffe83cp-512L : inexact
+= sqrt upward ldbl-128 0x4.000000000009cp-1024L : 0x2.0000000000026ffffffffffe83c2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.000000000009cp-1024L : 0x2.0000000000026ffffffffffe83p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.000000000009cp-1024L : 0x2.0000000000026ffffffffffe84p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.000000000009cp-1024L : 0x2.0000000000026ffffffffffe83p-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.000000000009cp-1024L : 0x2.0000000000026ffffffffffe84p-512L : inexact
+sqrt 0x1.000000000002bp-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.00000000000acp-1024 : 0x2.000000000002ap-512 : inexact
+= sqrt tonearest dbl-64 0x4.00000000000acp-1024 : 0x2.000000000002ap-512 : inexact
+= sqrt towardzero dbl-64 0x4.00000000000acp-1024 : 0x2.000000000002ap-512 : inexact
+= sqrt upward dbl-64 0x4.00000000000acp-1024 : 0x2.000000000002cp-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.00000000000acp-1024L : 0x2.000000000002affcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.00000000000acp-1024L : 0x2.000000000002bp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.00000000000acp-1024L : 0x2.000000000002affcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.00000000000acp-1024L : 0x2.000000000002bp-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.00000000000acp-1024L : 0x2.000000000002affcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.00000000000acp-1024L : 0x2.000000000002bp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.00000000000acp-1024L : 0x2.000000000002affcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.00000000000acp-1024L : 0x2.000000000002bp-512L : inexact
+= sqrt downward ldbl-128 0x4.00000000000acp-1024L : 0x2.000000000002affffffffffe31cp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.00000000000acp-1024L : 0x2.000000000002affffffffffe31cp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.00000000000acp-1024L : 0x2.000000000002affffffffffe31cp-512L : inexact
+= sqrt upward ldbl-128 0x4.00000000000acp-1024L : 0x2.000000000002affffffffffe31c2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.00000000000acp-1024L : 0x2.000000000002affffffffffe31p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.00000000000acp-1024L : 0x2.000000000002affffffffffe32p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.00000000000acp-1024L : 0x2.000000000002affffffffffe31p-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.00000000000acp-1024L : 0x2.000000000002affffffffffe32p-512L : inexact
+sqrt 0x1.000000000002fp-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.00000000000bcp-1024 : 0x2.000000000002ep-512 : inexact
+= sqrt tonearest dbl-64 0x4.00000000000bcp-1024 : 0x2.000000000002ep-512 : inexact
+= sqrt towardzero dbl-64 0x4.00000000000bcp-1024 : 0x2.000000000002ep-512 : inexact
+= sqrt upward dbl-64 0x4.00000000000bcp-1024 : 0x2.000000000003p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.00000000000bcp-1024L : 0x2.000000000002effcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.00000000000bcp-1024L : 0x2.000000000002fp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.00000000000bcp-1024L : 0x2.000000000002effcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.00000000000bcp-1024L : 0x2.000000000002fp-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.00000000000bcp-1024L : 0x2.000000000002effcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.00000000000bcp-1024L : 0x2.000000000002fp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.00000000000bcp-1024L : 0x2.000000000002effcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.00000000000bcp-1024L : 0x2.000000000002fp-512L : inexact
+= sqrt downward ldbl-128 0x4.00000000000bcp-1024L : 0x2.000000000002effffffffffdd7cp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.00000000000bcp-1024L : 0x2.000000000002effffffffffdd7cp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.00000000000bcp-1024L : 0x2.000000000002effffffffffdd7cp-512L : inexact
+= sqrt upward ldbl-128 0x4.00000000000bcp-1024L : 0x2.000000000002effffffffffdd7c2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.00000000000bcp-1024L : 0x2.000000000002effffffffffdd7p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.00000000000bcp-1024L : 0x2.000000000002effffffffffdd8p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.00000000000bcp-1024L : 0x2.000000000002effffffffffdd7p-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.00000000000bcp-1024L : 0x2.000000000002effffffffffdd8p-512L : inexact
+sqrt 0x1.0000000000033p-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.00000000000ccp-1024 : 0x2.0000000000032p-512 : inexact
+= sqrt tonearest dbl-64 0x4.00000000000ccp-1024 : 0x2.0000000000032p-512 : inexact
+= sqrt towardzero dbl-64 0x4.00000000000ccp-1024 : 0x2.0000000000032p-512 : inexact
+= sqrt upward dbl-64 0x4.00000000000ccp-1024 : 0x2.0000000000034p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.00000000000ccp-1024L : 0x2.0000000000032ffcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.00000000000ccp-1024L : 0x2.0000000000033p-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.00000000000ccp-1024L : 0x2.0000000000032ffcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.00000000000ccp-1024L : 0x2.0000000000033p-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.00000000000ccp-1024L : 0x2.0000000000032ffcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.00000000000ccp-1024L : 0x2.0000000000033p-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.00000000000ccp-1024L : 0x2.0000000000032ffcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.00000000000ccp-1024L : 0x2.0000000000033p-512L : inexact
+= sqrt downward ldbl-128 0x4.00000000000ccp-1024L : 0x2.0000000000032ffffffffffd75cp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.00000000000ccp-1024L : 0x2.0000000000032ffffffffffd75cp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.00000000000ccp-1024L : 0x2.0000000000032ffffffffffd75cp-512L : inexact
+= sqrt upward ldbl-128 0x4.00000000000ccp-1024L : 0x2.0000000000032ffffffffffd75c2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.00000000000ccp-1024L : 0x2.0000000000032ffffffffffd75p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.00000000000ccp-1024L : 0x2.0000000000032ffffffffffd76p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.00000000000ccp-1024L : 0x2.0000000000032ffffffffffd75p-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.00000000000ccp-1024L : 0x2.0000000000032ffffffffffd76p-512L : inexact
+sqrt 0x1.0000000000037p-1022
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x4.00000000000dcp-1024 : 0x2.0000000000036p-512 : inexact
+= sqrt tonearest dbl-64 0x4.00000000000dcp-1024 : 0x2.0000000000036p-512 : inexact
+= sqrt towardzero dbl-64 0x4.00000000000dcp-1024 : 0x2.0000000000036p-512 : inexact
+= sqrt upward dbl-64 0x4.00000000000dcp-1024 : 0x2.0000000000038p-512 : inexact
+= sqrt downward ldbl-96-intel 0x4.00000000000dcp-1024L : 0x2.0000000000036ffcp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x4.00000000000dcp-1024L : 0x2.0000000000037p-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x4.00000000000dcp-1024L : 0x2.0000000000036ffcp-512L : inexact
+= sqrt upward ldbl-96-intel 0x4.00000000000dcp-1024L : 0x2.0000000000037p-512L : inexact
+= sqrt downward ldbl-96-m68k 0x4.00000000000dcp-1024L : 0x2.0000000000036ffcp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x4.00000000000dcp-1024L : 0x2.0000000000037p-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x4.00000000000dcp-1024L : 0x2.0000000000036ffcp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x4.00000000000dcp-1024L : 0x2.0000000000037p-512L : inexact
+= sqrt downward ldbl-128 0x4.00000000000dcp-1024L : 0x2.0000000000036ffffffffffd0bcp-512L : inexact
+= sqrt tonearest ldbl-128 0x4.00000000000dcp-1024L : 0x2.0000000000036ffffffffffd0bcp-512L : inexact
+= sqrt towardzero ldbl-128 0x4.00000000000dcp-1024L : 0x2.0000000000036ffffffffffd0bcp-512L : inexact
+= sqrt upward ldbl-128 0x4.00000000000dcp-1024L : 0x2.0000000000036ffffffffffd0bc2p-512L : inexact
+= sqrt downward ldbl-128ibm 0x4.00000000000dcp-1024L : 0x2.0000000000036ffffffffffd0bp-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x4.00000000000dcp-1024L : 0x2.0000000000036ffffffffffd0cp-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x4.00000000000dcp-1024L : 0x2.0000000000036ffffffffffd0bp-512L : inexact
+= sqrt upward ldbl-128ibm 0x4.00000000000dcp-1024L : 0x2.0000000000036ffffffffffd0cp-512L : inexact
+sqrt 0x1.7167bc36eaa3bp+6
+= sqrt downward flt-32 0x5.c59ef8p+4f : 0x9.9c264p+0f : inexact
+= sqrt tonearest flt-32 0x5.c59ef8p+4f : 0x9.9c264p+0f : inexact
+= sqrt towardzero flt-32 0x5.c59ef8p+4f : 0x9.9c264p+0f : inexact
+= sqrt upward flt-32 0x5.c59ef8p+4f : 0x9.9c265p+0f : inexact
+= sqrt downward dbl-64 0x5.c59ef8p+4 : 0x9.9c2644cd30bb8p+0 : inexact
+= sqrt tonearest dbl-64 0x5.c59ef8p+4 : 0x9.9c2644cd30bb8p+0 : inexact
+= sqrt towardzero dbl-64 0x5.c59ef8p+4 : 0x9.9c2644cd30bb8p+0 : inexact
+= sqrt upward dbl-64 0x5.c59ef8p+4 : 0x9.9c2644cd30bcp+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba3p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2p+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba3p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba3p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba3p+0L : inexact
+= sqrt downward ldbl-128 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2af9770d1a6adp+0L : inexact
+= sqrt tonearest ldbl-128 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2af9770d1a6adp+0L : inexact
+= sqrt towardzero ldbl-128 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2af9770d1a6adp+0L : inexact
+= sqrt upward ldbl-128 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2af9770d1a6ad8p+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2af9770d1a68p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2af9770d1a6cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2af9770d1a68p+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.c59ef8p+4L : 0x9.9c2644cd30bbba2af9770d1a6cp+0L : inexact
+= sqrt downward flt-32 0x5.c59efp+4f : 0x9.9c263p+0f : inexact
+= sqrt tonearest flt-32 0x5.c59efp+4f : 0x9.9c264p+0f : inexact
+= sqrt towardzero flt-32 0x5.c59efp+4f : 0x9.9c263p+0f : inexact
+= sqrt upward flt-32 0x5.c59efp+4f : 0x9.9c264p+0f : inexact
+= sqrt downward dbl-64 0x5.c59efp+4 : 0x9.9c263e244ad48p+0 : inexact
+= sqrt tonearest dbl-64 0x5.c59efp+4 : 0x9.9c263e244ad48p+0 : inexact
+= sqrt towardzero dbl-64 0x5.c59efp+4 : 0x9.9c263e244ad48p+0 : inexact
+= sqrt upward dbl-64 0x5.c59efp+4 : 0x9.9c263e244ad5p+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.c59efp+4L : 0x9.9c263e244ad482ap+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.c59efp+4L : 0x9.9c263e244ad482bp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.c59efp+4L : 0x9.9c263e244ad482ap+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.c59efp+4L : 0x9.9c263e244ad482bp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.c59efp+4L : 0x9.9c263e244ad482ap+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.c59efp+4L : 0x9.9c263e244ad482bp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.c59efp+4L : 0x9.9c263e244ad482ap+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.c59efp+4L : 0x9.9c263e244ad482bp+0L : inexact
+= sqrt downward ldbl-128 0x5.c59efp+4L : 0x9.9c263e244ad482ae439b6ebb7e28p+0L : inexact
+= sqrt tonearest ldbl-128 0x5.c59efp+4L : 0x9.9c263e244ad482ae439b6ebb7e28p+0L : inexact
+= sqrt towardzero ldbl-128 0x5.c59efp+4L : 0x9.9c263e244ad482ae439b6ebb7e28p+0L : inexact
+= sqrt upward ldbl-128 0x5.c59efp+4L : 0x9.9c263e244ad482ae439b6ebb7e3p+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.c59efp+4L : 0x9.9c263e244ad482ae439b6ebb7cp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.c59efp+4L : 0x9.9c263e244ad482ae439b6ebb8p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.c59efp+4L : 0x9.9c263e244ad482ae439b6ebb7cp+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.c59efp+4L : 0x9.9c263e244ad482ae439b6ebb8p+0L : inexact
+= sqrt downward dbl-64 0x5.c59ef0dbaa8ecp+4 : 0x9.9c263edb2866p+0 : inexact
+= sqrt tonearest dbl-64 0x5.c59ef0dbaa8ecp+4 : 0x9.9c263edb28668p+0 : inexact
+= sqrt towardzero dbl-64 0x5.c59ef0dbaa8ecp+4 : 0x9.9c263edb2866p+0 : inexact
+= sqrt upward dbl-64 0x5.c59ef0dbaa8ecp+4 : 0x9.9c263edb28668p+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb28664p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb28664p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb28664p+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb2866401p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb28664p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb28664p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb28664p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb2866401p+0L : inexact
+= sqrt downward ldbl-128 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb286640061abcbed744a8p+0L : inexact
+= sqrt tonearest ldbl-128 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb286640061abcbed744a8p+0L : inexact
+= sqrt towardzero ldbl-128 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb286640061abcbed744a8p+0L : inexact
+= sqrt upward ldbl-128 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb286640061abcbed744bp+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb286640061abcbed744p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb286640061abcbed744p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb286640061abcbed744p+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.c59ef0dbaa8ecp+4L : 0x9.9c263edb286640061abcbed748p+0L : inexact
+sqrt 0x1.7570994273ad7p+6
+= sqrt downward flt-32 0x5.d5c268p+4f : 0x9.a98c3p+0f : inexact
+= sqrt tonearest flt-32 0x5.d5c268p+4f : 0x9.a98c4p+0f : inexact
+= sqrt towardzero flt-32 0x5.d5c268p+4f : 0x9.a98c3p+0f : inexact
+= sqrt upward flt-32 0x5.d5c268p+4f : 0x9.a98c4p+0f : inexact
+= sqrt downward dbl-64 0x5.d5c268p+4 : 0x9.a98c39b89d67p+0 : inexact
+= sqrt tonearest dbl-64 0x5.d5c268p+4 : 0x9.a98c39b89d67p+0 : inexact
+= sqrt towardzero dbl-64 0x5.d5c268p+4 : 0x9.a98c39b89d67p+0 : inexact
+= sqrt upward dbl-64 0x5.d5c268p+4 : 0x9.a98c39b89d678p+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.d5c268p+4L : 0x9.a98c39b89d67018p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.d5c268p+4L : 0x9.a98c39b89d67019p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.d5c268p+4L : 0x9.a98c39b89d67018p+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.d5c268p+4L : 0x9.a98c39b89d67019p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.d5c268p+4L : 0x9.a98c39b89d67018p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.d5c268p+4L : 0x9.a98c39b89d67019p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.d5c268p+4L : 0x9.a98c39b89d67018p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.d5c268p+4L : 0x9.a98c39b89d67019p+0L : inexact
+= sqrt downward ldbl-128 0x5.d5c268p+4L : 0x9.a98c39b89d67018ef271d70ac41p+0L : inexact
+= sqrt tonearest ldbl-128 0x5.d5c268p+4L : 0x9.a98c39b89d67018ef271d70ac418p+0L : inexact
+= sqrt towardzero ldbl-128 0x5.d5c268p+4L : 0x9.a98c39b89d67018ef271d70ac41p+0L : inexact
+= sqrt upward ldbl-128 0x5.d5c268p+4L : 0x9.a98c39b89d67018ef271d70ac418p+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.d5c268p+4L : 0x9.a98c39b89d67018ef271d70ac4p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.d5c268p+4L : 0x9.a98c39b89d67018ef271d70ac4p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.d5c268p+4L : 0x9.a98c39b89d67018ef271d70ac4p+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.d5c268p+4L : 0x9.a98c39b89d67018ef271d70ac8p+0L : inexact
+= sqrt downward flt-32 0x5.d5c26p+4f : 0x9.a98c3p+0f : inexact
+= sqrt tonearest flt-32 0x5.d5c26p+4f : 0x9.a98c3p+0f : inexact
+= sqrt towardzero flt-32 0x5.d5c26p+4f : 0x9.a98c3p+0f : inexact
+= sqrt upward flt-32 0x5.d5c26p+4f : 0x9.a98c4p+0f : inexact
+= sqrt downward dbl-64 0x5.d5c26p+4 : 0x9.a98c3318f39a8p+0 : inexact
+= sqrt tonearest dbl-64 0x5.d5c26p+4 : 0x9.a98c3318f39a8p+0 : inexact
+= sqrt towardzero dbl-64 0x5.d5c26p+4 : 0x9.a98c3318f39a8p+0 : inexact
+= sqrt upward dbl-64 0x5.d5c26p+4 : 0x9.a98c3318f39bp+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.d5c26p+4L : 0x9.a98c3318f39aaffp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.d5c26p+4L : 0x9.a98c3318f39aaffp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.d5c26p+4L : 0x9.a98c3318f39aaffp+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.d5c26p+4L : 0x9.a98c3318f39abp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.d5c26p+4L : 0x9.a98c3318f39aaffp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.d5c26p+4L : 0x9.a98c3318f39aaffp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.d5c26p+4L : 0x9.a98c3318f39aaffp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.d5c26p+4L : 0x9.a98c3318f39abp+0L : inexact
+= sqrt downward ldbl-128 0x5.d5c26p+4L : 0x9.a98c3318f39aaff1fdbe5f0520d8p+0L : inexact
+= sqrt tonearest ldbl-128 0x5.d5c26p+4L : 0x9.a98c3318f39aaff1fdbe5f0520ep+0L : inexact
+= sqrt towardzero ldbl-128 0x5.d5c26p+4L : 0x9.a98c3318f39aaff1fdbe5f0520d8p+0L : inexact
+= sqrt upward ldbl-128 0x5.d5c26p+4L : 0x9.a98c3318f39aaff1fdbe5f0520ep+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.d5c26p+4L : 0x9.a98c3318f39aaff1fdbe5f052p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.d5c26p+4L : 0x9.a98c3318f39aaff1fdbe5f052p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.d5c26p+4L : 0x9.a98c3318f39aaff1fdbe5f052p+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.d5c26p+4L : 0x9.a98c3318f39aaff1fdbe5f0524p+0L : inexact
+= sqrt downward dbl-64 0x5.d5c26509ceb5cp+4 : 0x9.a98c3744dc7f8p+0 : inexact
+= sqrt tonearest dbl-64 0x5.d5c26509ceb5cp+4 : 0x9.a98c3744dc7f8p+0 : inexact
+= sqrt towardzero dbl-64 0x5.d5c26509ceb5cp+4 : 0x9.a98c3744dc7f8p+0 : inexact
+= sqrt upward dbl-64 0x5.d5c26509ceb5cp+4 : 0x9.a98c3744dc8p+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbffp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fcp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbffp+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fcp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbffp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fcp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbffp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fcp+0L : inexact
+= sqrt downward ldbl-128 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbff970920ee38d8p+0L : inexact
+= sqrt tonearest ldbl-128 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbff970920ee38d88p+0L : inexact
+= sqrt towardzero ldbl-128 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbff970920ee38d8p+0L : inexact
+= sqrt upward ldbl-128 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbff970920ee38d88p+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbff970920ee38cp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbff970920ee38cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbff970920ee38cp+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.d5c26509ceb5cp+4L : 0x9.a98c3744dc7fbff970920ee39p+0L : inexact
+sqrt 0x1.7dae969442fe6p+6
+= sqrt downward flt-32 0x5.f6ba6p+4f : 0x9.c4b2p+0f : inexact
+= sqrt tonearest flt-32 0x5.f6ba6p+4f : 0x9.c4b21p+0f : inexact
+= sqrt towardzero flt-32 0x5.f6ba6p+4f : 0x9.c4b2p+0f : inexact
+= sqrt upward flt-32 0x5.f6ba6p+4f : 0x9.c4b21p+0f : inexact
+= sqrt downward dbl-64 0x5.f6ba6p+4 : 0x9.c4b20c8056adp+0 : inexact
+= sqrt tonearest dbl-64 0x5.f6ba6p+4 : 0x9.c4b20c8056ad8p+0 : inexact
+= sqrt towardzero dbl-64 0x5.f6ba6p+4 : 0x9.c4b20c8056adp+0 : inexact
+= sqrt upward dbl-64 0x5.f6ba6p+4 : 0x9.c4b20c8056ad8p+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c7p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c7p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c7p+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c8p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c7p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c7p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c7p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c8p+0L : inexact
+= sqrt downward ldbl-128 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c75de5e878cf818p+0L : inexact
+= sqrt tonearest ldbl-128 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c75de5e878cf82p+0L : inexact
+= sqrt towardzero ldbl-128 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c75de5e878cf818p+0L : inexact
+= sqrt upward ldbl-128 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c75de5e878cf82p+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c75de5e878cf8p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c75de5e878cf8p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c75de5e878cf8p+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.f6ba6p+4L : 0x9.c4b20c8056ad6c75de5e878cfcp+0L : inexact
+= sqrt downward flt-32 0x5.f6ba58p+4f : 0x9.c4b2p+0f : inexact
+= sqrt tonearest flt-32 0x5.f6ba58p+4f : 0x9.c4b2p+0f : inexact
+= sqrt towardzero flt-32 0x5.f6ba58p+4f : 0x9.c4b2p+0f : inexact
+= sqrt upward flt-32 0x5.f6ba58p+4f : 0x9.c4b21p+0f : inexact
+= sqrt downward dbl-64 0x5.f6ba58p+4 : 0x9.c4b205f31564p+0 : inexact
+= sqrt tonearest dbl-64 0x5.f6ba58p+4 : 0x9.c4b205f315648p+0 : inexact
+= sqrt towardzero dbl-64 0x5.f6ba58p+4 : 0x9.c4b205f31564p+0 : inexact
+= sqrt upward dbl-64 0x5.f6ba58p+4 : 0x9.c4b205f315648p+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.f6ba58p+4L : 0x9.c4b205f315647f8p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.f6ba58p+4L : 0x9.c4b205f315647f8p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.f6ba58p+4L : 0x9.c4b205f315647f8p+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.f6ba58p+4L : 0x9.c4b205f315647f9p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.f6ba58p+4L : 0x9.c4b205f315647f8p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.f6ba58p+4L : 0x9.c4b205f315647f8p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.f6ba58p+4L : 0x9.c4b205f315647f8p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.f6ba58p+4L : 0x9.c4b205f315647f9p+0L : inexact
+= sqrt downward ldbl-128 0x5.f6ba58p+4L : 0x9.c4b205f315647f84aa6427849bep+0L : inexact
+= sqrt tonearest ldbl-128 0x5.f6ba58p+4L : 0x9.c4b205f315647f84aa6427849be8p+0L : inexact
+= sqrt towardzero ldbl-128 0x5.f6ba58p+4L : 0x9.c4b205f315647f84aa6427849bep+0L : inexact
+= sqrt upward ldbl-128 0x5.f6ba58p+4L : 0x9.c4b205f315647f84aa6427849be8p+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.f6ba58p+4L : 0x9.c4b205f315647f84aa64278498p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.f6ba58p+4L : 0x9.c4b205f315647f84aa6427849cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.f6ba58p+4L : 0x9.c4b205f315647f84aa64278498p+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.f6ba58p+4L : 0x9.c4b205f315647f84aa6427849cp+0L : inexact
+= sqrt downward dbl-64 0x5.f6ba5a510bf98p+4 : 0x9.c4b207d8c5ba8p+0 : inexact
+= sqrt tonearest dbl-64 0x5.f6ba5a510bf98p+4 : 0x9.c4b207d8c5ba8p+0 : inexact
+= sqrt towardzero dbl-64 0x5.f6ba5a510bf98p+4 : 0x9.c4b207d8c5ba8p+0 : inexact
+= sqrt upward dbl-64 0x5.f6ba5a510bf98p+4 : 0x9.c4b207d8c5bbp+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babffp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5bacp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babffp+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5bacp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babffp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5bacp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babffp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5bacp+0L : inexact
+= sqrt downward ldbl-128 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babfff1af9eff6033p+0L : inexact
+= sqrt tonearest ldbl-128 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babfff1af9eff60338p+0L : inexact
+= sqrt towardzero ldbl-128 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babfff1af9eff6033p+0L : inexact
+= sqrt upward ldbl-128 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babfff1af9eff60338p+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babfff1af9eff6p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babfff1af9eff604p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babfff1af9eff6p+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.f6ba5a510bf98p+4L : 0x9.c4b207d8c5babfff1af9eff604p+0L : inexact
+sqrt 0x1.7f8444fcf67e5p+6
+= sqrt downward flt-32 0x5.fe1118p+4f : 0x9.cab2dp+0f : inexact
+= sqrt tonearest flt-32 0x5.fe1118p+4f : 0x9.cab2dp+0f : inexact
+= sqrt towardzero flt-32 0x5.fe1118p+4f : 0x9.cab2dp+0f : inexact
+= sqrt upward flt-32 0x5.fe1118p+4f : 0x9.cab2ep+0f : inexact
+= sqrt downward dbl-64 0x5.fe1118p+4 : 0x9.cab2d298bebd8p+0 : inexact
+= sqrt tonearest dbl-64 0x5.fe1118p+4 : 0x9.cab2d298bebd8p+0 : inexact
+= sqrt towardzero dbl-64 0x5.fe1118p+4 : 0x9.cab2d298bebd8p+0 : inexact
+= sqrt upward dbl-64 0x5.fe1118p+4 : 0x9.cab2d298bebep+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.fe1118p+4L : 0x9.cab2d298bebd96cp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.fe1118p+4L : 0x9.cab2d298bebd96dp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.fe1118p+4L : 0x9.cab2d298bebd96cp+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.fe1118p+4L : 0x9.cab2d298bebd96dp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.fe1118p+4L : 0x9.cab2d298bebd96cp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.fe1118p+4L : 0x9.cab2d298bebd96dp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.fe1118p+4L : 0x9.cab2d298bebd96cp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.fe1118p+4L : 0x9.cab2d298bebd96dp+0L : inexact
+= sqrt downward ldbl-128 0x5.fe1118p+4L : 0x9.cab2d298bebd96cb80a18484978p+0L : inexact
+= sqrt tonearest ldbl-128 0x5.fe1118p+4L : 0x9.cab2d298bebd96cb80a18484978p+0L : inexact
+= sqrt towardzero ldbl-128 0x5.fe1118p+4L : 0x9.cab2d298bebd96cb80a18484978p+0L : inexact
+= sqrt upward ldbl-128 0x5.fe1118p+4L : 0x9.cab2d298bebd96cb80a184849788p+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.fe1118p+4L : 0x9.cab2d298bebd96cb80a1848494p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.fe1118p+4L : 0x9.cab2d298bebd96cb80a1848498p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.fe1118p+4L : 0x9.cab2d298bebd96cb80a1848494p+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.fe1118p+4L : 0x9.cab2d298bebd96cb80a1848498p+0L : inexact
+= sqrt downward flt-32 0x5.fe111p+4f : 0x9.cab2cp+0f : inexact
+= sqrt tonearest flt-32 0x5.fe111p+4f : 0x9.cab2dp+0f : inexact
+= sqrt towardzero flt-32 0x5.fe111p+4f : 0x9.cab2cp+0f : inexact
+= sqrt upward flt-32 0x5.fe111p+4f : 0x9.cab2dp+0f : inexact
+= sqrt downward dbl-64 0x5.fe111p+4 : 0x9.cab2cc0f81b98p+0 : inexact
+= sqrt tonearest dbl-64 0x5.fe111p+4 : 0x9.cab2cc0f81b98p+0 : inexact
+= sqrt towardzero dbl-64 0x5.fe111p+4 : 0x9.cab2cc0f81b98p+0 : inexact
+= sqrt upward dbl-64 0x5.fe111p+4 : 0x9.cab2cc0f81bap+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.fe111p+4L : 0x9.cab2cc0f81b9a91p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.fe111p+4L : 0x9.cab2cc0f81b9a91p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.fe111p+4L : 0x9.cab2cc0f81b9a91p+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.fe111p+4L : 0x9.cab2cc0f81b9a92p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.fe111p+4L : 0x9.cab2cc0f81b9a91p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.fe111p+4L : 0x9.cab2cc0f81b9a91p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.fe111p+4L : 0x9.cab2cc0f81b9a91p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.fe111p+4L : 0x9.cab2cc0f81b9a92p+0L : inexact
+= sqrt downward ldbl-128 0x5.fe111p+4L : 0x9.cab2cc0f81b9a9129e80476516c8p+0L : inexact
+= sqrt tonearest ldbl-128 0x5.fe111p+4L : 0x9.cab2cc0f81b9a9129e80476516c8p+0L : inexact
+= sqrt towardzero ldbl-128 0x5.fe111p+4L : 0x9.cab2cc0f81b9a9129e80476516c8p+0L : inexact
+= sqrt upward ldbl-128 0x5.fe111p+4L : 0x9.cab2cc0f81b9a9129e80476516dp+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.fe111p+4L : 0x9.cab2cc0f81b9a9129e80476514p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.fe111p+4L : 0x9.cab2cc0f81b9a9129e80476518p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.fe111p+4L : 0x9.cab2cc0f81b9a9129e80476514p+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.fe111p+4L : 0x9.cab2cc0f81b9a9129e80476518p+0L : inexact
+= sqrt downward dbl-64 0x5.fe1113f3d9f94p+4 : 0x9.cab2cf4a334fp+0 : inexact
+= sqrt tonearest dbl-64 0x5.fe1113f3d9f94p+4 : 0x9.cab2cf4a334f8p+0 : inexact
+= sqrt towardzero dbl-64 0x5.fe1113f3d9f94p+4 : 0x9.cab2cf4a334fp+0 : inexact
+= sqrt upward dbl-64 0x5.fe1113f3d9f94p+4 : 0x9.cab2cf4a334f8p+0 : inexact
+= sqrt downward ldbl-96-intel 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f4p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f4p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f4p+0L : inexact
+= sqrt upward ldbl-96-intel 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f401p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f4p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f4p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f4p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f401p+0L : inexact
+= sqrt downward ldbl-128 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f40040a75564c1b1p+0L : inexact
+= sqrt tonearest ldbl-128 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f40040a75564c1b1p+0L : inexact
+= sqrt towardzero ldbl-128 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f40040a75564c1b1p+0L : inexact
+= sqrt upward ldbl-128 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f40040a75564c1b18p+0L : inexact
+= sqrt downward ldbl-128ibm 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f40040a75564c18p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f40040a75564c1cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f40040a75564c18p+0L : inexact
+= sqrt upward ldbl-128ibm 0x5.fe1113f3d9f94p+4L : 0x9.cab2cf4a334f40040a75564c1cp+0L : inexact
+sqrt 0x1.8364650e63a54p+6
+= sqrt downward flt-32 0x6.0d9198p+4f : 0x9.d754fp+0f : inexact
+= sqrt tonearest flt-32 0x6.0d9198p+4f : 0x9.d755p+0f : inexact
+= sqrt towardzero flt-32 0x6.0d9198p+4f : 0x9.d754fp+0f : inexact
+= sqrt upward flt-32 0x6.0d9198p+4f : 0x9.d755p+0f : inexact
+= sqrt downward dbl-64 0x6.0d9198p+4 : 0x9.d754fb02747a8p+0 : inexact
+= sqrt tonearest dbl-64 0x6.0d9198p+4 : 0x9.d754fb02747a8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.0d9198p+4 : 0x9.d754fb02747a8p+0 : inexact
+= sqrt upward dbl-64 0x6.0d9198p+4 : 0x9.d754fb02747bp+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.0d9198p+4L : 0x9.d754fb02747aa6dp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.0d9198p+4L : 0x9.d754fb02747aa6dp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.0d9198p+4L : 0x9.d754fb02747aa6dp+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.0d9198p+4L : 0x9.d754fb02747aa6ep+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.0d9198p+4L : 0x9.d754fb02747aa6dp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.0d9198p+4L : 0x9.d754fb02747aa6dp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.0d9198p+4L : 0x9.d754fb02747aa6dp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.0d9198p+4L : 0x9.d754fb02747aa6ep+0L : inexact
+= sqrt downward ldbl-128 0x6.0d9198p+4L : 0x9.d754fb02747aa6d3627024158ap+0L : inexact
+= sqrt tonearest ldbl-128 0x6.0d9198p+4L : 0x9.d754fb02747aa6d3627024158ap+0L : inexact
+= sqrt towardzero ldbl-128 0x6.0d9198p+4L : 0x9.d754fb02747aa6d3627024158ap+0L : inexact
+= sqrt upward ldbl-128 0x6.0d9198p+4L : 0x9.d754fb02747aa6d3627024158a08p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.0d9198p+4L : 0x9.d754fb02747aa6d36270241588p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.0d9198p+4L : 0x9.d754fb02747aa6d3627024158cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.0d9198p+4L : 0x9.d754fb02747aa6d36270241588p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.0d9198p+4L : 0x9.d754fb02747aa6d3627024158cp+0L : inexact
+= sqrt downward flt-32 0x6.0d919p+4f : 0x9.d754fp+0f : inexact
+= sqrt tonearest flt-32 0x6.0d919p+4f : 0x9.d754fp+0f : inexact
+= sqrt towardzero flt-32 0x6.0d919p+4f : 0x9.d754fp+0f : inexact
+= sqrt upward flt-32 0x6.0d919p+4f : 0x9.d755p+0f : inexact
+= sqrt downward dbl-64 0x6.0d919p+4 : 0x9.d754f4819b758p+0 : inexact
+= sqrt tonearest dbl-64 0x6.0d919p+4 : 0x9.d754f4819b76p+0 : inexact
+= sqrt towardzero dbl-64 0x6.0d919p+4 : 0x9.d754f4819b758p+0 : inexact
+= sqrt upward dbl-64 0x6.0d919p+4 : 0x9.d754f4819b76p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.0d919p+4L : 0x9.d754f4819b75ebep+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.0d919p+4L : 0x9.d754f4819b75ebfp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.0d919p+4L : 0x9.d754f4819b75ebep+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.0d919p+4L : 0x9.d754f4819b75ebfp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.0d919p+4L : 0x9.d754f4819b75ebep+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.0d919p+4L : 0x9.d754f4819b75ebfp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.0d919p+4L : 0x9.d754f4819b75ebep+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.0d919p+4L : 0x9.d754f4819b75ebfp+0L : inexact
+= sqrt downward ldbl-128 0x6.0d919p+4L : 0x9.d754f4819b75ebe926d2e4b1b198p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.0d919p+4L : 0x9.d754f4819b75ebe926d2e4b1b1ap+0L : inexact
+= sqrt towardzero ldbl-128 0x6.0d919p+4L : 0x9.d754f4819b75ebe926d2e4b1b198p+0L : inexact
+= sqrt upward ldbl-128 0x6.0d919p+4L : 0x9.d754f4819b75ebe926d2e4b1b1ap+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.0d919p+4L : 0x9.d754f4819b75ebe926d2e4b1bp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.0d919p+4L : 0x9.d754f4819b75ebe926d2e4b1bp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.0d919p+4L : 0x9.d754f4819b75ebe926d2e4b1bp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.0d919p+4L : 0x9.d754f4819b75ebe926d2e4b1b4p+0L : inexact
+= sqrt downward dbl-64 0x6.0d9194398e95p+4 : 0x9.d754f7f0d1ebp+0 : inexact
+= sqrt tonearest dbl-64 0x6.0d9194398e95p+4 : 0x9.d754f7f0d1eb8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.0d9194398e95p+4 : 0x9.d754f7f0d1ebp+0 : inexact
+= sqrt upward dbl-64 0x6.0d9194398e95p+4 : 0x9.d754f7f0d1eb8p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb4p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb4p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb4p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb401p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb4p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb4p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb4p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb401p+0L : inexact
+= sqrt downward ldbl-128 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb40067ddd2f83bffp+0L : inexact
+= sqrt tonearest ldbl-128 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb40067ddd2f83bff8p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb40067ddd2f83bffp+0L : inexact
+= sqrt upward ldbl-128 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb40067ddd2f83bff8p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb40067ddd2f83bcp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb40067ddd2f83cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb40067ddd2f83bcp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.0d9194398e95p+4L : 0x9.d754f7f0d1eb40067ddd2f83cp+0L : inexact
+sqrt 0x1.85bedd274edd8p+6
+= sqrt downward flt-32 0x6.16fb78p+4f : 0x9.def9p+0f : inexact
+= sqrt tonearest flt-32 0x6.16fb78p+4f : 0x9.def91p+0f : inexact
+= sqrt towardzero flt-32 0x6.16fb78p+4f : 0x9.def9p+0f : inexact
+= sqrt upward flt-32 0x6.16fb78p+4f : 0x9.def91p+0f : inexact
+= sqrt downward dbl-64 0x6.16fb78p+4 : 0x9.def90901b249p+0 : inexact
+= sqrt tonearest dbl-64 0x6.16fb78p+4 : 0x9.def90901b2498p+0 : inexact
+= sqrt towardzero dbl-64 0x6.16fb78p+4 : 0x9.def90901b249p+0 : inexact
+= sqrt upward dbl-64 0x6.16fb78p+4 : 0x9.def90901b2498p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.16fb78p+4L : 0x9.def90901b2497a8p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.16fb78p+4L : 0x9.def90901b2497a9p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.16fb78p+4L : 0x9.def90901b2497a8p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.16fb78p+4L : 0x9.def90901b2497a9p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.16fb78p+4L : 0x9.def90901b2497a8p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.16fb78p+4L : 0x9.def90901b2497a9p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.16fb78p+4L : 0x9.def90901b2497a8p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.16fb78p+4L : 0x9.def90901b2497a9p+0L : inexact
+= sqrt downward ldbl-128 0x6.16fb78p+4L : 0x9.def90901b2497a8da8b1b159094p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.16fb78p+4L : 0x9.def90901b2497a8da8b1b1590948p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.16fb78p+4L : 0x9.def90901b2497a8da8b1b159094p+0L : inexact
+= sqrt upward ldbl-128 0x6.16fb78p+4L : 0x9.def90901b2497a8da8b1b1590948p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.16fb78p+4L : 0x9.def90901b2497a8da8b1b15908p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.16fb78p+4L : 0x9.def90901b2497a8da8b1b15908p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.16fb78p+4L : 0x9.def90901b2497a8da8b1b15908p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.16fb78p+4L : 0x9.def90901b2497a8da8b1b1590cp+0L : inexact
+= sqrt downward flt-32 0x6.16fb7p+4f : 0x9.def9p+0f : inexact
+= sqrt tonearest flt-32 0x6.16fb7p+4f : 0x9.def9p+0f : inexact
+= sqrt towardzero flt-32 0x6.16fb7p+4f : 0x9.def9p+0f : inexact
+= sqrt upward flt-32 0x6.16fb7p+4f : 0x9.def91p+0f : inexact
+= sqrt downward dbl-64 0x6.16fb7p+4 : 0x9.def90285e1fap+0 : inexact
+= sqrt tonearest dbl-64 0x6.16fb7p+4 : 0x9.def90285e1fa8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.16fb7p+4 : 0x9.def90285e1fap+0 : inexact
+= sqrt upward dbl-64 0x6.16fb7p+4 : 0x9.def90285e1fa8p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.16fb7p+4L : 0x9.def90285e1fa539p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.16fb7p+4L : 0x9.def90285e1fa539p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.16fb7p+4L : 0x9.def90285e1fa539p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.16fb7p+4L : 0x9.def90285e1fa53ap+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.16fb7p+4L : 0x9.def90285e1fa539p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.16fb7p+4L : 0x9.def90285e1fa539p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.16fb7p+4L : 0x9.def90285e1fa539p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.16fb7p+4L : 0x9.def90285e1fa53ap+0L : inexact
+= sqrt downward ldbl-128 0x6.16fb7p+4L : 0x9.def90285e1fa5395a1f3d3cfbbb8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.16fb7p+4L : 0x9.def90285e1fa5395a1f3d3cfbbcp+0L : inexact
+= sqrt towardzero ldbl-128 0x6.16fb7p+4L : 0x9.def90285e1fa5395a1f3d3cfbbb8p+0L : inexact
+= sqrt upward ldbl-128 0x6.16fb7p+4L : 0x9.def90285e1fa5395a1f3d3cfbbcp+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.16fb7p+4L : 0x9.def90285e1fa5395a1f3d3cfb8p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.16fb7p+4L : 0x9.def90285e1fa5395a1f3d3cfbcp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.16fb7p+4L : 0x9.def90285e1fa5395a1f3d3cfb8p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.16fb7p+4L : 0x9.def90285e1fa5395a1f3d3cfbcp+0L : inexact
+= sqrt downward dbl-64 0x6.16fb749d3b76p+4 : 0x9.def90643382bp+0 : inexact
+= sqrt tonearest dbl-64 0x6.16fb749d3b76p+4 : 0x9.def90643382b8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.16fb749d3b76p+4 : 0x9.def90643382bp+0 : inexact
+= sqrt upward dbl-64 0x6.16fb749d3b76p+4 : 0x9.def90643382b8p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.16fb749d3b76p+4L : 0x9.def90643382b4p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.16fb749d3b76p+4L : 0x9.def90643382b4p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.16fb749d3b76p+4L : 0x9.def90643382b4p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.16fb749d3b76p+4L : 0x9.def90643382b401p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.16fb749d3b76p+4L : 0x9.def90643382b4p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.16fb749d3b76p+4L : 0x9.def90643382b4p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.16fb749d3b76p+4L : 0x9.def90643382b4p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.16fb749d3b76p+4L : 0x9.def90643382b401p+0L : inexact
+= sqrt downward ldbl-128 0x6.16fb749d3b76p+4L : 0x9.def90643382b40078c6ec55aaep+0L : inexact
+= sqrt tonearest ldbl-128 0x6.16fb749d3b76p+4L : 0x9.def90643382b40078c6ec55aae08p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.16fb749d3b76p+4L : 0x9.def90643382b40078c6ec55aaep+0L : inexact
+= sqrt upward ldbl-128 0x6.16fb749d3b76p+4L : 0x9.def90643382b40078c6ec55aae08p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.16fb749d3b76p+4L : 0x9.def90643382b40078c6ec55aacp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.16fb749d3b76p+4L : 0x9.def90643382b40078c6ec55abp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.16fb749d3b76p+4L : 0x9.def90643382b40078c6ec55aacp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.16fb749d3b76p+4L : 0x9.def90643382b40078c6ec55abp+0L : inexact
+sqrt 0x1.8609cf496ab77p+6
+= sqrt downward flt-32 0x6.18274p+4f : 0x9.dfebfp+0f : inexact
+= sqrt tonearest flt-32 0x6.18274p+4f : 0x9.dfebfp+0f : inexact
+= sqrt towardzero flt-32 0x6.18274p+4f : 0x9.dfebfp+0f : inexact
+= sqrt upward flt-32 0x6.18274p+4f : 0x9.dfecp+0f : inexact
+= sqrt downward dbl-64 0x6.18274p+4 : 0x9.dfebf2f55d738p+0 : inexact
+= sqrt tonearest dbl-64 0x6.18274p+4 : 0x9.dfebf2f55d738p+0 : inexact
+= sqrt towardzero dbl-64 0x6.18274p+4 : 0x9.dfebf2f55d738p+0 : inexact
+= sqrt upward dbl-64 0x6.18274p+4 : 0x9.dfebf2f55d74p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.18274p+4L : 0x9.dfebf2f55d73acp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.18274p+4L : 0x9.dfebf2f55d73acp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.18274p+4L : 0x9.dfebf2f55d73acp+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.18274p+4L : 0x9.dfebf2f55d73ac1p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.18274p+4L : 0x9.dfebf2f55d73acp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.18274p+4L : 0x9.dfebf2f55d73acp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.18274p+4L : 0x9.dfebf2f55d73acp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.18274p+4L : 0x9.dfebf2f55d73ac1p+0L : inexact
+= sqrt downward ldbl-128 0x6.18274p+4L : 0x9.dfebf2f55d73ac019895a5c2c9b8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.18274p+4L : 0x9.dfebf2f55d73ac019895a5c2c9cp+0L : inexact
+= sqrt towardzero ldbl-128 0x6.18274p+4L : 0x9.dfebf2f55d73ac019895a5c2c9b8p+0L : inexact
+= sqrt upward ldbl-128 0x6.18274p+4L : 0x9.dfebf2f55d73ac019895a5c2c9cp+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.18274p+4L : 0x9.dfebf2f55d73ac019895a5c2c8p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.18274p+4L : 0x9.dfebf2f55d73ac019895a5c2c8p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.18274p+4L : 0x9.dfebf2f55d73ac019895a5c2c8p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.18274p+4L : 0x9.dfebf2f55d73ac019895a5c2ccp+0L : inexact
+= sqrt downward flt-32 0x6.182738p+4f : 0x9.dfebep+0f : inexact
+= sqrt tonearest flt-32 0x6.182738p+4f : 0x9.dfebfp+0f : inexact
+= sqrt towardzero flt-32 0x6.182738p+4f : 0x9.dfebep+0f : inexact
+= sqrt upward flt-32 0x6.182738p+4f : 0x9.dfebfp+0f : inexact
+= sqrt downward dbl-64 0x6.182738p+4 : 0x9.dfebec7a2ca3p+0 : inexact
+= sqrt tonearest dbl-64 0x6.182738p+4 : 0x9.dfebec7a2ca38p+0 : inexact
+= sqrt towardzero dbl-64 0x6.182738p+4 : 0x9.dfebec7a2ca3p+0 : inexact
+= sqrt upward dbl-64 0x6.182738p+4 : 0x9.dfebec7a2ca38p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.182738p+4L : 0x9.dfebec7a2ca3556p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.182738p+4L : 0x9.dfebec7a2ca3556p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.182738p+4L : 0x9.dfebec7a2ca3556p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.182738p+4L : 0x9.dfebec7a2ca3557p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.182738p+4L : 0x9.dfebec7a2ca3556p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.182738p+4L : 0x9.dfebec7a2ca3556p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.182738p+4L : 0x9.dfebec7a2ca3556p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.182738p+4L : 0x9.dfebec7a2ca3557p+0L : inexact
+= sqrt downward ldbl-128 0x6.182738p+4L : 0x9.dfebec7a2ca355606b63be1f301p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.182738p+4L : 0x9.dfebec7a2ca355606b63be1f301p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.182738p+4L : 0x9.dfebec7a2ca355606b63be1f301p+0L : inexact
+= sqrt upward ldbl-128 0x6.182738p+4L : 0x9.dfebec7a2ca355606b63be1f3018p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.182738p+4L : 0x9.dfebec7a2ca355606b63be1f3p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.182738p+4L : 0x9.dfebec7a2ca355606b63be1f3p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.182738p+4L : 0x9.dfebec7a2ca355606b63be1f3p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.182738p+4L : 0x9.dfebec7a2ca355606b63be1f34p+0L : inexact
+= sqrt downward dbl-64 0x6.18273d25aaddcp+4 : 0x9.dfebf0a5af55p+0 : inexact
+= sqrt tonearest dbl-64 0x6.18273d25aaddcp+4 : 0x9.dfebf0a5af558p+0 : inexact
+= sqrt towardzero dbl-64 0x6.18273d25aaddcp+4 : 0x9.dfebf0a5af55p+0 : inexact
+= sqrt upward dbl-64 0x6.18273d25aaddcp+4 : 0x9.dfebf0a5af558p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af554p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af554p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af554p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af55401p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af554p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af554p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af554p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af55401p+0L : inexact
+= sqrt downward ldbl-128 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af5540000f31060e2b6p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af5540000f31060e2b68p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af5540000f31060e2b6p+0L : inexact
+= sqrt upward ldbl-128 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af5540000f31060e2b68p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af5540000f31060e28p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af5540000f31060e2cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af5540000f31060e28p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.18273d25aaddcp+4L : 0x9.dfebf0a5af5540000f31060e2cp+0L : inexact
+sqrt 0x1.873849c70a375p+6
+= sqrt downward flt-32 0x6.1ce128p+4f : 0x9.e3bf6p+0f : inexact
+= sqrt tonearest flt-32 0x6.1ce128p+4f : 0x9.e3bf7p+0f : inexact
+= sqrt towardzero flt-32 0x6.1ce128p+4f : 0x9.e3bf6p+0f : inexact
+= sqrt upward flt-32 0x6.1ce128p+4f : 0x9.e3bf7p+0f : inexact
+= sqrt downward dbl-64 0x6.1ce128p+4 : 0x9.e3bf6a5937aap+0 : inexact
+= sqrt tonearest dbl-64 0x6.1ce128p+4 : 0x9.e3bf6a5937aa8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.1ce128p+4 : 0x9.e3bf6a5937aap+0 : inexact
+= sqrt upward dbl-64 0x6.1ce128p+4 : 0x9.e3bf6a5937aa8p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.1ce128p+4L : 0x9.e3bf6a5937aa468p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.1ce128p+4L : 0x9.e3bf6a5937aa469p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.1ce128p+4L : 0x9.e3bf6a5937aa468p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.1ce128p+4L : 0x9.e3bf6a5937aa469p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.1ce128p+4L : 0x9.e3bf6a5937aa468p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.1ce128p+4L : 0x9.e3bf6a5937aa469p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.1ce128p+4L : 0x9.e3bf6a5937aa468p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.1ce128p+4L : 0x9.e3bf6a5937aa469p+0L : inexact
+= sqrt downward ldbl-128 0x6.1ce128p+4L : 0x9.e3bf6a5937aa46890d478fffccp+0L : inexact
+= sqrt tonearest ldbl-128 0x6.1ce128p+4L : 0x9.e3bf6a5937aa46890d478fffcc08p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.1ce128p+4L : 0x9.e3bf6a5937aa46890d478fffccp+0L : inexact
+= sqrt upward ldbl-128 0x6.1ce128p+4L : 0x9.e3bf6a5937aa46890d478fffcc08p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.1ce128p+4L : 0x9.e3bf6a5937aa46890d478fffccp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.1ce128p+4L : 0x9.e3bf6a5937aa46890d478fffccp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.1ce128p+4L : 0x9.e3bf6a5937aa46890d478fffccp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.1ce128p+4L : 0x9.e3bf6a5937aa46890d478fffdp+0L : inexact
+= sqrt downward flt-32 0x6.1ce12p+4f : 0x9.e3bf6p+0f : inexact
+= sqrt tonearest flt-32 0x6.1ce12p+4f : 0x9.e3bf6p+0f : inexact
+= sqrt towardzero flt-32 0x6.1ce12p+4f : 0x9.e3bf6p+0f : inexact
+= sqrt upward flt-32 0x6.1ce12p+4f : 0x9.e3bf7p+0f : inexact
+= sqrt downward dbl-64 0x6.1ce12p+4 : 0x9.e3bf63e088bf8p+0 : inexact
+= sqrt tonearest dbl-64 0x6.1ce12p+4 : 0x9.e3bf63e088bf8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.1ce12p+4 : 0x9.e3bf63e088bf8p+0 : inexact
+= sqrt upward dbl-64 0x6.1ce12p+4 : 0x9.e3bf63e088cp+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.1ce12p+4L : 0x9.e3bf63e088bf989p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.1ce12p+4L : 0x9.e3bf63e088bf98ap+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.1ce12p+4L : 0x9.e3bf63e088bf989p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.1ce12p+4L : 0x9.e3bf63e088bf98ap+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.1ce12p+4L : 0x9.e3bf63e088bf989p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.1ce12p+4L : 0x9.e3bf63e088bf98ap+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.1ce12p+4L : 0x9.e3bf63e088bf989p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.1ce12p+4L : 0x9.e3bf63e088bf98ap+0L : inexact
+= sqrt downward ldbl-128 0x6.1ce12p+4L : 0x9.e3bf63e088bf9899430188403ea8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.1ce12p+4L : 0x9.e3bf63e088bf9899430188403ea8p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.1ce12p+4L : 0x9.e3bf63e088bf9899430188403ea8p+0L : inexact
+= sqrt upward ldbl-128 0x6.1ce12p+4L : 0x9.e3bf63e088bf9899430188403ebp+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.1ce12p+4L : 0x9.e3bf63e088bf9899430188403cp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.1ce12p+4L : 0x9.e3bf63e088bf9899430188404p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.1ce12p+4L : 0x9.e3bf63e088bf9899430188403cp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.1ce12p+4L : 0x9.e3bf63e088bf9899430188404p+0L : inexact
+= sqrt downward dbl-64 0x6.1ce1271c28dd4p+4 : 0x9.e3bf69a0e93f8p+0 : inexact
+= sqrt tonearest dbl-64 0x6.1ce1271c28dd4p+4 : 0x9.e3bf69a0e93f8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.1ce1271c28dd4p+4 : 0x9.e3bf69a0e93f8p+0 : inexact
+= sqrt upward dbl-64 0x6.1ce1271c28dd4p+4 : 0x9.e3bf69a0e94p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fcp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffp+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fcp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fcp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fcp+0L : inexact
+= sqrt downward ldbl-128 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffea021a294fdfp+0L : inexact
+= sqrt tonearest ldbl-128 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffea021a294fdfp+0L : inexact
+= sqrt towardzero ldbl-128 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffea021a294fdfp+0L : inexact
+= sqrt upward ldbl-128 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffea021a294fdf8p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffea021a294fcp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffea021a294fcp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffea021a294fcp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.1ce1271c28dd4p+4L : 0x9.e3bf69a0e93fbffea021a295p+0L : inexact
+sqrt 0x1.8919c962cbaaep+6
+= sqrt downward flt-32 0x6.246728p+4f : 0x9.e9d38p+0f : inexact
+= sqrt tonearest flt-32 0x6.246728p+4f : 0x9.e9d39p+0f : inexact
+= sqrt towardzero flt-32 0x6.246728p+4f : 0x9.e9d38p+0f : inexact
+= sqrt upward flt-32 0x6.246728p+4f : 0x9.e9d39p+0f : inexact
+= sqrt downward dbl-64 0x6.246728p+4 : 0x9.e9d38a9ae728p+0 : inexact
+= sqrt tonearest dbl-64 0x6.246728p+4 : 0x9.e9d38a9ae728p+0 : inexact
+= sqrt towardzero dbl-64 0x6.246728p+4 : 0x9.e9d38a9ae728p+0 : inexact
+= sqrt upward dbl-64 0x6.246728p+4 : 0x9.e9d38a9ae7288p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.246728p+4L : 0x9.e9d38a9ae7283d9p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.246728p+4L : 0x9.e9d38a9ae7283d9p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.246728p+4L : 0x9.e9d38a9ae7283d9p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.246728p+4L : 0x9.e9d38a9ae7283dap+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.246728p+4L : 0x9.e9d38a9ae7283d9p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.246728p+4L : 0x9.e9d38a9ae7283d9p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.246728p+4L : 0x9.e9d38a9ae7283d9p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.246728p+4L : 0x9.e9d38a9ae7283dap+0L : inexact
+= sqrt downward ldbl-128 0x6.246728p+4L : 0x9.e9d38a9ae7283d96dd13217515fp+0L : inexact
+= sqrt tonearest ldbl-128 0x6.246728p+4L : 0x9.e9d38a9ae7283d96dd13217515fp+0L : inexact
+= sqrt towardzero ldbl-128 0x6.246728p+4L : 0x9.e9d38a9ae7283d96dd13217515fp+0L : inexact
+= sqrt upward ldbl-128 0x6.246728p+4L : 0x9.e9d38a9ae7283d96dd13217515f8p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.246728p+4L : 0x9.e9d38a9ae7283d96dd13217514p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.246728p+4L : 0x9.e9d38a9ae7283d96dd13217514p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.246728p+4L : 0x9.e9d38a9ae7283d96dd13217514p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.246728p+4L : 0x9.e9d38a9ae7283d96dd13217518p+0L : inexact
+= sqrt downward flt-32 0x6.24672p+4f : 0x9.e9d38p+0f : inexact
+= sqrt tonearest flt-32 0x6.24672p+4f : 0x9.e9d38p+0f : inexact
+= sqrt towardzero flt-32 0x6.24672p+4f : 0x9.e9d38p+0f : inexact
+= sqrt upward flt-32 0x6.24672p+4f : 0x9.e9d39p+0f : inexact
+= sqrt downward dbl-64 0x6.24672p+4 : 0x9.e9d3842630128p+0 : inexact
+= sqrt tonearest dbl-64 0x6.24672p+4 : 0x9.e9d384263013p+0 : inexact
+= sqrt towardzero dbl-64 0x6.24672p+4 : 0x9.e9d3842630128p+0 : inexact
+= sqrt upward dbl-64 0x6.24672p+4 : 0x9.e9d384263013p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.24672p+4L : 0x9.e9d384263012d63p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.24672p+4L : 0x9.e9d384263012d63p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.24672p+4L : 0x9.e9d384263012d63p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.24672p+4L : 0x9.e9d384263012d64p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.24672p+4L : 0x9.e9d384263012d63p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.24672p+4L : 0x9.e9d384263012d63p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.24672p+4L : 0x9.e9d384263012d63p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.24672p+4L : 0x9.e9d384263012d64p+0L : inexact
+= sqrt downward ldbl-128 0x6.24672p+4L : 0x9.e9d384263012d635564d99c20bf8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.24672p+4L : 0x9.e9d384263012d635564d99c20bf8p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.24672p+4L : 0x9.e9d384263012d635564d99c20bf8p+0L : inexact
+= sqrt upward ldbl-128 0x6.24672p+4L : 0x9.e9d384263012d635564d99c20cp+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.24672p+4L : 0x9.e9d384263012d635564d99c208p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.24672p+4L : 0x9.e9d384263012d635564d99c20cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.24672p+4L : 0x9.e9d384263012d635564d99c208p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.24672p+4L : 0x9.e9d384263012d635564d99c20cp+0L : inexact
+= sqrt downward dbl-64 0x6.2467258b2eab8p+4 : 0x9.e9d3889f7417p+0 : inexact
+= sqrt tonearest dbl-64 0x6.2467258b2eab8p+4 : 0x9.e9d3889f74178p+0 : inexact
+= sqrt towardzero dbl-64 0x6.2467258b2eab8p+4 : 0x9.e9d3889f7417p+0 : inexact
+= sqrt upward dbl-64 0x6.2467258b2eab8p+4 : 0x9.e9d3889f74178p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.2467258b2eab8p+4L : 0x9.e9d3889f74174p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.2467258b2eab8p+4L : 0x9.e9d3889f74174p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.2467258b2eab8p+4L : 0x9.e9d3889f74174p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.2467258b2eab8p+4L : 0x9.e9d3889f7417401p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.2467258b2eab8p+4L : 0x9.e9d3889f74174p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.2467258b2eab8p+4L : 0x9.e9d3889f74174p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.2467258b2eab8p+4L : 0x9.e9d3889f74174p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.2467258b2eab8p+4L : 0x9.e9d3889f7417401p+0L : inexact
+= sqrt downward ldbl-128 0x6.2467258b2eab8p+4L : 0x9.e9d3889f7417400693816cdbf0a8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.2467258b2eab8p+4L : 0x9.e9d3889f7417400693816cdbf0a8p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.2467258b2eab8p+4L : 0x9.e9d3889f7417400693816cdbf0a8p+0L : inexact
+= sqrt upward ldbl-128 0x6.2467258b2eab8p+4L : 0x9.e9d3889f7417400693816cdbf0bp+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.2467258b2eab8p+4L : 0x9.e9d3889f7417400693816cdbfp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.2467258b2eab8p+4L : 0x9.e9d3889f7417400693816cdbfp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.2467258b2eab8p+4L : 0x9.e9d3889f7417400693816cdbfp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.2467258b2eab8p+4L : 0x9.e9d3889f7417400693816cdbf4p+0L : inexact
+sqrt 0x1.8de4493e22dc6p+6
+= sqrt downward flt-32 0x6.379128p+4f : 0x9.f93eap+0f : inexact
+= sqrt tonearest flt-32 0x6.379128p+4f : 0x9.f93eap+0f : inexact
+= sqrt towardzero flt-32 0x6.379128p+4f : 0x9.f93eap+0f : inexact
+= sqrt upward flt-32 0x6.379128p+4f : 0x9.f93ebp+0f : inexact
+= sqrt downward dbl-64 0x6.379128p+4 : 0x9.f93ea4af11cf8p+0 : inexact
+= sqrt tonearest dbl-64 0x6.379128p+4 : 0x9.f93ea4af11dp+0 : inexact
+= sqrt towardzero dbl-64 0x6.379128p+4 : 0x9.f93ea4af11cf8p+0 : inexact
+= sqrt upward dbl-64 0x6.379128p+4 : 0x9.f93ea4af11dp+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.379128p+4L : 0x9.f93ea4af11cfcc4p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.379128p+4L : 0x9.f93ea4af11cfcc5p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.379128p+4L : 0x9.f93ea4af11cfcc4p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.379128p+4L : 0x9.f93ea4af11cfcc5p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.379128p+4L : 0x9.f93ea4af11cfcc4p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.379128p+4L : 0x9.f93ea4af11cfcc5p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.379128p+4L : 0x9.f93ea4af11cfcc4p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.379128p+4L : 0x9.f93ea4af11cfcc5p+0L : inexact
+= sqrt downward ldbl-128 0x6.379128p+4L : 0x9.f93ea4af11cfcc4c7b3ad927d8b8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.379128p+4L : 0x9.f93ea4af11cfcc4c7b3ad927d8cp+0L : inexact
+= sqrt towardzero ldbl-128 0x6.379128p+4L : 0x9.f93ea4af11cfcc4c7b3ad927d8b8p+0L : inexact
+= sqrt upward ldbl-128 0x6.379128p+4L : 0x9.f93ea4af11cfcc4c7b3ad927d8cp+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.379128p+4L : 0x9.f93ea4af11cfcc4c7b3ad927d8p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.379128p+4L : 0x9.f93ea4af11cfcc4c7b3ad927d8p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.379128p+4L : 0x9.f93ea4af11cfcc4c7b3ad927d8p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.379128p+4L : 0x9.f93ea4af11cfcc4c7b3ad927dcp+0L : inexact
+= sqrt downward flt-32 0x6.37912p+4f : 0x9.f93e9p+0f : inexact
+= sqrt tonearest flt-32 0x6.37912p+4f : 0x9.f93eap+0f : inexact
+= sqrt towardzero flt-32 0x6.37912p+4f : 0x9.f93e9p+0f : inexact
+= sqrt upward flt-32 0x6.37912p+4f : 0x9.f93eap+0f : inexact
+= sqrt downward dbl-64 0x6.37912p+4 : 0x9.f93e9e4455af8p+0 : inexact
+= sqrt tonearest dbl-64 0x6.37912p+4 : 0x9.f93e9e4455bp+0 : inexact
+= sqrt towardzero dbl-64 0x6.37912p+4 : 0x9.f93e9e4455af8p+0 : inexact
+= sqrt upward dbl-64 0x6.37912p+4 : 0x9.f93e9e4455bp+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.37912p+4L : 0x9.f93e9e4455afe27p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.37912p+4L : 0x9.f93e9e4455afe27p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.37912p+4L : 0x9.f93e9e4455afe27p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.37912p+4L : 0x9.f93e9e4455afe28p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.37912p+4L : 0x9.f93e9e4455afe27p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.37912p+4L : 0x9.f93e9e4455afe27p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.37912p+4L : 0x9.f93e9e4455afe27p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.37912p+4L : 0x9.f93e9e4455afe28p+0L : inexact
+= sqrt downward ldbl-128 0x6.37912p+4L : 0x9.f93e9e4455afe2757febddb767c8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.37912p+4L : 0x9.f93e9e4455afe2757febddb767c8p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.37912p+4L : 0x9.f93e9e4455afe2757febddb767c8p+0L : inexact
+= sqrt upward ldbl-128 0x6.37912p+4L : 0x9.f93e9e4455afe2757febddb767dp+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.37912p+4L : 0x9.f93e9e4455afe2757febddb764p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.37912p+4L : 0x9.f93e9e4455afe2757febddb768p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.37912p+4L : 0x9.f93e9e4455afe2757febddb764p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.37912p+4L : 0x9.f93e9e4455afe2757febddb768p+0L : inexact
+= sqrt downward dbl-64 0x6.379124f88b718p+4 : 0x9.f93ea24110618p+0 : inexact
+= sqrt tonearest dbl-64 0x6.379124f88b718p+4 : 0x9.f93ea24110618p+0 : inexact
+= sqrt towardzero dbl-64 0x6.379124f88b718p+4 : 0x9.f93ea24110618p+0 : inexact
+= sqrt upward dbl-64 0x6.379124f88b718p+4 : 0x9.f93ea2411062p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.379124f88b718p+4L : 0x9.f93ea2411061cp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffp+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.379124f88b718p+4L : 0x9.f93ea2411061cp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.379124f88b718p+4L : 0x9.f93ea2411061cp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.379124f88b718p+4L : 0x9.f93ea2411061cp+0L : inexact
+= sqrt downward ldbl-128 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffe7e7f96636678p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffe7e7f96636678p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffe7e7f96636678p+0L : inexact
+= sqrt upward ldbl-128 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffe7e7f9663668p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffe7e7f966364p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffe7e7f966368p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffe7e7f966364p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.379124f88b718p+4L : 0x9.f93ea2411061bffe7e7f966368p+0L : inexact
+sqrt 0x1.924829a17a288p+6
+= sqrt downward flt-32 0x6.4920a8p+4f : 0xa.074aap+0f : inexact
+= sqrt tonearest flt-32 0x6.4920a8p+4f : 0xa.074abp+0f : inexact
+= sqrt towardzero flt-32 0x6.4920a8p+4f : 0xa.074aap+0f : inexact
+= sqrt upward flt-32 0x6.4920a8p+4f : 0xa.074abp+0f : inexact
+= sqrt downward dbl-64 0x6.4920a8p+4 : 0xa.074aaaa4fe728p+0 : inexact
+= sqrt tonearest dbl-64 0x6.4920a8p+4 : 0xa.074aaaa4fe728p+0 : inexact
+= sqrt towardzero dbl-64 0x6.4920a8p+4 : 0xa.074aaaa4fe728p+0 : inexact
+= sqrt upward dbl-64 0x6.4920a8p+4 : 0xa.074aaaa4fe73p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.4920a8p+4L : 0xa.074aaaa4fe728dep+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.4920a8p+4L : 0xa.074aaaa4fe728dep+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.4920a8p+4L : 0xa.074aaaa4fe728dep+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.4920a8p+4L : 0xa.074aaaa4fe728dfp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.4920a8p+4L : 0xa.074aaaa4fe728dep+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.4920a8p+4L : 0xa.074aaaa4fe728dep+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.4920a8p+4L : 0xa.074aaaa4fe728dep+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.4920a8p+4L : 0xa.074aaaa4fe728dfp+0L : inexact
+= sqrt downward ldbl-128 0x6.4920a8p+4L : 0xa.074aaaa4fe728de305512ee33ba8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.4920a8p+4L : 0xa.074aaaa4fe728de305512ee33bbp+0L : inexact
+= sqrt towardzero ldbl-128 0x6.4920a8p+4L : 0xa.074aaaa4fe728de305512ee33ba8p+0L : inexact
+= sqrt upward ldbl-128 0x6.4920a8p+4L : 0xa.074aaaa4fe728de305512ee33bbp+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.4920a8p+4L : 0xa.074aaaa4fe728de305512ee338p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.4920a8p+4L : 0xa.074aaaa4fe728de305512ee33cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.4920a8p+4L : 0xa.074aaaa4fe728de305512ee338p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.4920a8p+4L : 0xa.074aaaa4fe728de305512ee33cp+0L : inexact
+= sqrt downward flt-32 0x6.4920ap+4f : 0xa.074aap+0f : inexact
+= sqrt tonearest flt-32 0x6.4920ap+4f : 0xa.074aap+0f : inexact
+= sqrt towardzero flt-32 0x6.4920ap+4f : 0xa.074aap+0f : inexact
+= sqrt upward flt-32 0x6.4920ap+4f : 0xa.074abp+0f : inexact
+= sqrt downward dbl-64 0x6.4920ap+4 : 0xa.074aa4433f5p+0 : inexact
+= sqrt tonearest dbl-64 0x6.4920ap+4 : 0xa.074aa4433f5p+0 : inexact
+= sqrt towardzero dbl-64 0x6.4920ap+4 : 0xa.074aa4433f5p+0 : inexact
+= sqrt upward dbl-64 0x6.4920ap+4 : 0xa.074aa4433f508p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.4920ap+4L : 0xa.074aa4433f5023ap+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.4920ap+4L : 0xa.074aa4433f5023ap+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.4920ap+4L : 0xa.074aa4433f5023ap+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.4920ap+4L : 0xa.074aa4433f5023bp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.4920ap+4L : 0xa.074aa4433f5023ap+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.4920ap+4L : 0xa.074aa4433f5023ap+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.4920ap+4L : 0xa.074aa4433f5023ap+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.4920ap+4L : 0xa.074aa4433f5023bp+0L : inexact
+= sqrt downward ldbl-128 0x6.4920ap+4L : 0xa.074aa4433f5023a592a623bd7a5p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.4920ap+4L : 0xa.074aa4433f5023a592a623bd7a5p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.4920ap+4L : 0xa.074aa4433f5023a592a623bd7a5p+0L : inexact
+= sqrt upward ldbl-128 0x6.4920ap+4L : 0xa.074aa4433f5023a592a623bd7a58p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.4920ap+4L : 0xa.074aa4433f5023a592a623bd78p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.4920ap+4L : 0xa.074aa4433f5023a592a623bd7cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.4920ap+4L : 0xa.074aa4433f5023a592a623bd78p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.4920ap+4L : 0xa.074aa4433f5023a592a623bd7cp+0L : inexact
+= sqrt downward dbl-64 0x6.4920a685e8a2p+4 : 0xa.074aa97761478p+0 : inexact
+= sqrt tonearest dbl-64 0x6.4920a685e8a2p+4 : 0xa.074aa97761478p+0 : inexact
+= sqrt towardzero dbl-64 0x6.4920a685e8a2p+4 : 0xa.074aa97761478p+0 : inexact
+= sqrt upward dbl-64 0x6.4920a685e8a2p+4 : 0xa.074aa9776148p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.4920a685e8a2p+4L : 0xa.074aa9776147cp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffp+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.4920a685e8a2p+4L : 0xa.074aa9776147cp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.4920a685e8a2p+4L : 0xa.074aa9776147cp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.4920a685e8a2p+4L : 0xa.074aa9776147cp+0L : inexact
+= sqrt downward ldbl-128 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffed6639c1d4e8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffed6639c1d4e8p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffed6639c1d4e8p+0L : inexact
+= sqrt upward ldbl-128 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffed6639c1d4e88p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffed6639c1d4cp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffed6639c1d5p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffed6639c1d4cp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.4920a685e8a2p+4L : 0xa.074aa9776147bffed6639c1d5p+0L : inexact
+sqrt 0x1.92702cd992f12p+6
+= sqrt downward flt-32 0x6.49c0b8p+4f : 0xa.07ca5p+0f : inexact
+= sqrt tonearest flt-32 0x6.49c0b8p+4f : 0xa.07ca5p+0f : inexact
+= sqrt towardzero flt-32 0x6.49c0b8p+4f : 0xa.07ca5p+0f : inexact
+= sqrt upward flt-32 0x6.49c0b8p+4f : 0xa.07ca6p+0f : inexact
+= sqrt downward dbl-64 0x6.49c0b8p+4 : 0xa.07ca572a4cf78p+0 : inexact
+= sqrt tonearest dbl-64 0x6.49c0b8p+4 : 0xa.07ca572a4cf8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.49c0b8p+4 : 0xa.07ca572a4cf78p+0 : inexact
+= sqrt upward dbl-64 0x6.49c0b8p+4 : 0xa.07ca572a4cf8p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2ap+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2ap+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2ap+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2bp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2ap+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2ap+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2ap+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2bp+0L : inexact
+= sqrt downward ldbl-128 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2a718b5e0e26dd8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2a718b5e0e26dd8p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2a718b5e0e26dd8p+0L : inexact
+= sqrt upward ldbl-128 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2a718b5e0e26dep+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2a718b5e0e26cp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2a718b5e0e26cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2a718b5e0e26cp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.49c0b8p+4L : 0xa.07ca572a4cf7c2a718b5e0e27p+0L : inexact
+= sqrt downward flt-32 0x6.49c0bp+4f : 0xa.07ca5p+0f : inexact
+= sqrt tonearest flt-32 0x6.49c0bp+4f : 0xa.07ca5p+0f : inexact
+= sqrt towardzero flt-32 0x6.49c0bp+4f : 0xa.07ca5p+0f : inexact
+= sqrt upward flt-32 0x6.49c0bp+4f : 0xa.07ca6p+0f : inexact
+= sqrt downward dbl-64 0x6.49c0bp+4 : 0xa.07ca50c8df108p+0 : inexact
+= sqrt tonearest dbl-64 0x6.49c0bp+4 : 0xa.07ca50c8df108p+0 : inexact
+= sqrt towardzero dbl-64 0x6.49c0bp+4 : 0xa.07ca50c8df108p+0 : inexact
+= sqrt upward dbl-64 0x6.49c0bp+4 : 0xa.07ca50c8df11p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.49c0bp+4L : 0xa.07ca50c8df10bebp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.49c0bp+4L : 0xa.07ca50c8df10bebp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.49c0bp+4L : 0xa.07ca50c8df10bebp+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.49c0bp+4L : 0xa.07ca50c8df10becp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.49c0bp+4L : 0xa.07ca50c8df10bebp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.49c0bp+4L : 0xa.07ca50c8df10bebp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.49c0bp+4L : 0xa.07ca50c8df10bebp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.49c0bp+4L : 0xa.07ca50c8df10becp+0L : inexact
+= sqrt downward ldbl-128 0x6.49c0bp+4L : 0xa.07ca50c8df10beb4ab7d2c2955d8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.49c0bp+4L : 0xa.07ca50c8df10beb4ab7d2c2955ep+0L : inexact
+= sqrt towardzero ldbl-128 0x6.49c0bp+4L : 0xa.07ca50c8df10beb4ab7d2c2955d8p+0L : inexact
+= sqrt upward ldbl-128 0x6.49c0bp+4L : 0xa.07ca50c8df10beb4ab7d2c2955ep+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.49c0bp+4L : 0xa.07ca50c8df10beb4ab7d2c2954p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.49c0bp+4L : 0xa.07ca50c8df10beb4ab7d2c2954p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.49c0bp+4L : 0xa.07ca50c8df10beb4ab7d2c2954p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.49c0bp+4L : 0xa.07ca50c8df10beb4ab7d2c2958p+0L : inexact
+= sqrt downward dbl-64 0x6.49c0b3664bc48p+4 : 0xa.07ca537efeefp+0 : inexact
+= sqrt tonearest dbl-64 0x6.49c0b3664bc48p+4 : 0xa.07ca537efeef8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.49c0b3664bc48p+4 : 0xa.07ca537efeefp+0 : inexact
+= sqrt upward dbl-64 0x6.49c0b3664bc48p+4 : 0xa.07ca537efeef8p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef401p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef401p+0L : inexact
+= sqrt downward ldbl-128 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4007f8bedbd94e3p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4007f8bedbd94e3p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4007f8bedbd94e3p+0L : inexact
+= sqrt upward ldbl-128 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4007f8bedbd94e38p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4007f8bedbd94cp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4007f8bedbd95p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4007f8bedbd94cp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.49c0b3664bc48p+4L : 0xa.07ca537efeef4007f8bedbd95p+0L : inexact
+sqrt 0x1.92b763a8311fdp+6
+= sqrt downward flt-32 0x6.4add9p+4f : 0xa.08ad7p+0f : inexact
+= sqrt tonearest flt-32 0x6.4add9p+4f : 0xa.08ad8p+0f : inexact
+= sqrt towardzero flt-32 0x6.4add9p+4f : 0xa.08ad7p+0f : inexact
+= sqrt upward flt-32 0x6.4add9p+4f : 0xa.08ad8p+0f : inexact
+= sqrt downward dbl-64 0x6.4add9p+4 : 0xa.08ad7c223e15p+0 : inexact
+= sqrt tonearest dbl-64 0x6.4add9p+4 : 0xa.08ad7c223e15p+0 : inexact
+= sqrt towardzero dbl-64 0x6.4add9p+4 : 0xa.08ad7c223e15p+0 : inexact
+= sqrt upward dbl-64 0x6.4add9p+4 : 0xa.08ad7c223e158p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.4add9p+4L : 0xa.08ad7c223e15144p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.4add9p+4L : 0xa.08ad7c223e15144p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.4add9p+4L : 0xa.08ad7c223e15144p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.4add9p+4L : 0xa.08ad7c223e15145p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.4add9p+4L : 0xa.08ad7c223e15144p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.4add9p+4L : 0xa.08ad7c223e15144p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.4add9p+4L : 0xa.08ad7c223e15144p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.4add9p+4L : 0xa.08ad7c223e15145p+0L : inexact
+= sqrt downward ldbl-128 0x6.4add9p+4L : 0xa.08ad7c223e151446a914e7db4298p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.4add9p+4L : 0xa.08ad7c223e151446a914e7db42ap+0L : inexact
+= sqrt towardzero ldbl-128 0x6.4add9p+4L : 0xa.08ad7c223e151446a914e7db4298p+0L : inexact
+= sqrt upward ldbl-128 0x6.4add9p+4L : 0xa.08ad7c223e151446a914e7db42ap+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.4add9p+4L : 0xa.08ad7c223e151446a914e7db4p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.4add9p+4L : 0xa.08ad7c223e151446a914e7db44p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.4add9p+4L : 0xa.08ad7c223e151446a914e7db4p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.4add9p+4L : 0xa.08ad7c223e151446a914e7db44p+0L : inexact
+= sqrt downward flt-32 0x6.4add88p+4f : 0xa.08ad7p+0f : inexact
+= sqrt tonearest flt-32 0x6.4add88p+4f : 0xa.08ad7p+0f : inexact
+= sqrt towardzero flt-32 0x6.4add88p+4f : 0xa.08ad7p+0f : inexact
+= sqrt upward flt-32 0x6.4add88p+4f : 0xa.08ad8p+0f : inexact
+= sqrt downward dbl-64 0x6.4add88p+4 : 0xa.08ad75c1609fp+0 : inexact
+= sqrt tonearest dbl-64 0x6.4add88p+4 : 0xa.08ad75c1609fp+0 : inexact
+= sqrt towardzero dbl-64 0x6.4add88p+4 : 0xa.08ad75c1609fp+0 : inexact
+= sqrt upward dbl-64 0x6.4add88p+4 : 0xa.08ad75c1609f8p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.4add88p+4L : 0xa.08ad75c1609f281p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.4add88p+4L : 0xa.08ad75c1609f282p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.4add88p+4L : 0xa.08ad75c1609f281p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.4add88p+4L : 0xa.08ad75c1609f282p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.4add88p+4L : 0xa.08ad75c1609f281p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.4add88p+4L : 0xa.08ad75c1609f282p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.4add88p+4L : 0xa.08ad75c1609f281p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.4add88p+4L : 0xa.08ad75c1609f282p+0L : inexact
+= sqrt downward ldbl-128 0x6.4add88p+4L : 0xa.08ad75c1609f28197eb9e111fcap+0L : inexact
+= sqrt tonearest ldbl-128 0x6.4add88p+4L : 0xa.08ad75c1609f28197eb9e111fca8p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.4add88p+4L : 0xa.08ad75c1609f28197eb9e111fcap+0L : inexact
+= sqrt upward ldbl-128 0x6.4add88p+4L : 0xa.08ad75c1609f28197eb9e111fca8p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.4add88p+4L : 0xa.08ad75c1609f28197eb9e111fcp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.4add88p+4L : 0xa.08ad75c1609f28197eb9e111fcp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.4add88p+4L : 0xa.08ad75c1609f28197eb9e111fcp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.4add88p+4L : 0xa.08ad75c1609f28197eb9e112p+0L : inexact
+= sqrt downward dbl-64 0x6.4add8ea0c47f4p+4 : 0xa.08ad7b0a34af8p+0 : inexact
+= sqrt tonearest dbl-64 0x6.4add8ea0c47f4p+4 : 0xa.08ad7b0a34af8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.4add8ea0c47f4p+4 : 0xa.08ad7b0a34af8p+0 : inexact
+= sqrt upward dbl-64 0x6.4add8ea0c47f4p+4 : 0xa.08ad7b0a34bp+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbffp+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afcp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbffp+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afcp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbffp+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afcp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbffp+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afcp+0L : inexact
+= sqrt downward ldbl-128 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbff8b29545cf696p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbff8b29545cf6968p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbff8b29545cf696p+0L : inexact
+= sqrt upward ldbl-128 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbff8b29545cf6968p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbff8b29545cf68p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbff8b29545cf68p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbff8b29545cf68p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.4add8ea0c47f4p+4L : 0xa.08ad7b0a34afbff8b29545cf6cp+0L : inexact
+sqrt 0x1.947da013c7293p+6
+= sqrt downward flt-32 0x6.51f688p+4f : 0xa.0e548p+0f : inexact
+= sqrt tonearest flt-32 0x6.51f688p+4f : 0xa.0e549p+0f : inexact
+= sqrt towardzero flt-32 0x6.51f688p+4f : 0xa.0e548p+0f : inexact
+= sqrt upward flt-32 0x6.51f688p+4f : 0xa.0e549p+0f : inexact
+= sqrt downward dbl-64 0x6.51f688p+4 : 0xa.0e548e9fa1b4p+0 : inexact
+= sqrt tonearest dbl-64 0x6.51f688p+4 : 0xa.0e548e9fa1b48p+0 : inexact
+= sqrt towardzero dbl-64 0x6.51f688p+4 : 0xa.0e548e9fa1b4p+0 : inexact
+= sqrt upward dbl-64 0x6.51f688p+4 : 0xa.0e548e9fa1b48p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.51f688p+4L : 0xa.0e548e9fa1b46eep+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.51f688p+4L : 0xa.0e548e9fa1b46efp+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.51f688p+4L : 0xa.0e548e9fa1b46eep+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.51f688p+4L : 0xa.0e548e9fa1b46efp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.51f688p+4L : 0xa.0e548e9fa1b46eep+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.51f688p+4L : 0xa.0e548e9fa1b46efp+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.51f688p+4L : 0xa.0e548e9fa1b46eep+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.51f688p+4L : 0xa.0e548e9fa1b46efp+0L : inexact
+= sqrt downward ldbl-128 0x6.51f688p+4L : 0xa.0e548e9fa1b46eed2440fd35521p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.51f688p+4L : 0xa.0e548e9fa1b46eed2440fd35521p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.51f688p+4L : 0xa.0e548e9fa1b46eed2440fd35521p+0L : inexact
+= sqrt upward ldbl-128 0x6.51f688p+4L : 0xa.0e548e9fa1b46eed2440fd355218p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.51f688p+4L : 0xa.0e548e9fa1b46eed2440fd355p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.51f688p+4L : 0xa.0e548e9fa1b46eed2440fd3554p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.51f688p+4L : 0xa.0e548e9fa1b46eed2440fd355p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.51f688p+4L : 0xa.0e548e9fa1b46eed2440fd3554p+0L : inexact
+= sqrt downward flt-32 0x6.51f68p+4f : 0xa.0e548p+0f : inexact
+= sqrt tonearest flt-32 0x6.51f68p+4f : 0xa.0e549p+0f : inexact
+= sqrt towardzero flt-32 0x6.51f68p+4f : 0xa.0e548p+0f : inexact
+= sqrt upward flt-32 0x6.51f68p+4f : 0xa.0e549p+0f : inexact
+= sqrt downward dbl-64 0x6.51f68p+4 : 0xa.0e5488425a1a8p+0 : inexact
+= sqrt tonearest dbl-64 0x6.51f68p+4 : 0xa.0e5488425a1a8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.51f68p+4 : 0xa.0e5488425a1a8p+0 : inexact
+= sqrt upward dbl-64 0x6.51f68p+4 : 0xa.0e5488425a1bp+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.51f68p+4L : 0xa.0e5488425a1a91ep+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.51f68p+4L : 0xa.0e5488425a1a91ep+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.51f68p+4L : 0xa.0e5488425a1a91ep+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.51f68p+4L : 0xa.0e5488425a1a91fp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.51f68p+4L : 0xa.0e5488425a1a91ep+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.51f68p+4L : 0xa.0e5488425a1a91ep+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.51f68p+4L : 0xa.0e5488425a1a91ep+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.51f68p+4L : 0xa.0e5488425a1a91fp+0L : inexact
+= sqrt downward ldbl-128 0x6.51f68p+4L : 0xa.0e5488425a1a91e23c39fe025e08p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.51f68p+4L : 0xa.0e5488425a1a91e23c39fe025e1p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.51f68p+4L : 0xa.0e5488425a1a91e23c39fe025e08p+0L : inexact
+= sqrt upward ldbl-128 0x6.51f68p+4L : 0xa.0e5488425a1a91e23c39fe025e1p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.51f68p+4L : 0xa.0e5488425a1a91e23c39fe025cp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.51f68p+4L : 0xa.0e5488425a1a91e23c39fe026p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.51f68p+4L : 0xa.0e5488425a1a91e23c39fe025cp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.51f68p+4L : 0xa.0e5488425a1a91e23c39fe026p+0L : inexact
+= sqrt downward dbl-64 0x6.51f6804f1ca4cp+4 : 0xa.0e5488814a07p+0 : inexact
+= sqrt tonearest dbl-64 0x6.51f6804f1ca4cp+4 : 0xa.0e5488814a078p+0 : inexact
+= sqrt towardzero dbl-64 0x6.51f6804f1ca4cp+4 : 0xa.0e5488814a07p+0 : inexact
+= sqrt upward dbl-64 0x6.51f6804f1ca4cp+4 : 0xa.0e5488814a078p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a07401p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a07401p+0L : inexact
+= sqrt downward ldbl-128 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074003b5a5ffdb32c8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074003b5a5ffdb32dp+0L : inexact
+= sqrt towardzero ldbl-128 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074003b5a5ffdb32c8p+0L : inexact
+= sqrt upward ldbl-128 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074003b5a5ffdb32dp+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074003b5a5ffdb3p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074003b5a5ffdb34p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074003b5a5ffdb3p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.51f6804f1ca4cp+4L : 0xa.0e5488814a074003b5a5ffdb34p+0L : inexact
+sqrt 0x1.9536091c494d2p+6
+= sqrt downward flt-32 0x6.54d828p+4f : 0xa.109f1p+0f : inexact
+= sqrt tonearest flt-32 0x6.54d828p+4f : 0xa.109f2p+0f : inexact
+= sqrt towardzero flt-32 0x6.54d828p+4f : 0xa.109f1p+0f : inexact
+= sqrt upward flt-32 0x6.54d828p+4f : 0xa.109f2p+0f : inexact
+= sqrt downward dbl-64 0x6.54d828p+4 : 0xa.109f1c7a37808p+0 : inexact
+= sqrt tonearest dbl-64 0x6.54d828p+4 : 0xa.109f1c7a3781p+0 : inexact
+= sqrt towardzero dbl-64 0x6.54d828p+4 : 0xa.109f1c7a37808p+0 : inexact
+= sqrt upward dbl-64 0x6.54d828p+4 : 0xa.109f1c7a3781p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.54d828p+4L : 0xa.109f1c7a3780ff9p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.54d828p+4L : 0xa.109f1c7a3780ff9p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.54d828p+4L : 0xa.109f1c7a3780ff9p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.54d828p+4L : 0xa.109f1c7a3780ffap+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.54d828p+4L : 0xa.109f1c7a3780ff9p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.54d828p+4L : 0xa.109f1c7a3780ff9p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.54d828p+4L : 0xa.109f1c7a3780ff9p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.54d828p+4L : 0xa.109f1c7a3780ffap+0L : inexact
+= sqrt downward ldbl-128 0x6.54d828p+4L : 0xa.109f1c7a3780ff90f6697001cb1p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.54d828p+4L : 0xa.109f1c7a3780ff90f6697001cb1p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.54d828p+4L : 0xa.109f1c7a3780ff90f6697001cb1p+0L : inexact
+= sqrt upward ldbl-128 0x6.54d828p+4L : 0xa.109f1c7a3780ff90f6697001cb18p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.54d828p+4L : 0xa.109f1c7a3780ff90f6697001c8p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.54d828p+4L : 0xa.109f1c7a3780ff90f6697001ccp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.54d828p+4L : 0xa.109f1c7a3780ff90f6697001c8p+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.54d828p+4L : 0xa.109f1c7a3780ff90f6697001ccp+0L : inexact
+= sqrt downward flt-32 0x6.54d82p+4f : 0xa.109f1p+0f : inexact
+= sqrt tonearest flt-32 0x6.54d82p+4f : 0xa.109f1p+0f : inexact
+= sqrt towardzero flt-32 0x6.54d82p+4f : 0xa.109f1p+0f : inexact
+= sqrt upward flt-32 0x6.54d82p+4f : 0xa.109f2p+0f : inexact
+= sqrt downward dbl-64 0x6.54d82p+4 : 0xa.109f161e62cc8p+0 : inexact
+= sqrt tonearest dbl-64 0x6.54d82p+4 : 0xa.109f161e62cc8p+0 : inexact
+= sqrt towardzero dbl-64 0x6.54d82p+4 : 0xa.109f161e62cc8p+0 : inexact
+= sqrt upward dbl-64 0x6.54d82p+4 : 0xa.109f161e62cdp+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.54d82p+4L : 0xa.109f161e62ccb8ep+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.54d82p+4L : 0xa.109f161e62ccb8ep+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.54d82p+4L : 0xa.109f161e62ccb8ep+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.54d82p+4L : 0xa.109f161e62ccb8fp+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.54d82p+4L : 0xa.109f161e62ccb8ep+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.54d82p+4L : 0xa.109f161e62ccb8ep+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.54d82p+4L : 0xa.109f161e62ccb8ep+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.54d82p+4L : 0xa.109f161e62ccb8fp+0L : inexact
+= sqrt downward ldbl-128 0x6.54d82p+4L : 0xa.109f161e62ccb8e65a0922adbf8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.54d82p+4L : 0xa.109f161e62ccb8e65a0922adbf88p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.54d82p+4L : 0xa.109f161e62ccb8e65a0922adbf8p+0L : inexact
+= sqrt upward ldbl-128 0x6.54d82p+4L : 0xa.109f161e62ccb8e65a0922adbf88p+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.54d82p+4L : 0xa.109f161e62ccb8e65a0922adbcp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.54d82p+4L : 0xa.109f161e62ccb8e65a0922adcp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.54d82p+4L : 0xa.109f161e62ccb8e65a0922adbcp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.54d82p+4L : 0xa.109f161e62ccb8e65a0922adcp+0L : inexact
+= sqrt downward dbl-64 0x6.54d8247125348p+4 : 0xa.109f19a63bd6p+0 : inexact
+= sqrt tonearest dbl-64 0x6.54d8247125348p+4 : 0xa.109f19a63bd68p+0 : inexact
+= sqrt towardzero dbl-64 0x6.54d8247125348p+4 : 0xa.109f19a63bd6p+0 : inexact
+= sqrt upward dbl-64 0x6.54d8247125348p+4 : 0xa.109f19a63bd68p+0 : inexact
+= sqrt downward ldbl-96-intel 0x6.54d8247125348p+4L : 0xa.109f19a63bd64p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.54d8247125348p+4L : 0xa.109f19a63bd64p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.54d8247125348p+4L : 0xa.109f19a63bd64p+0L : inexact
+= sqrt upward ldbl-96-intel 0x6.54d8247125348p+4L : 0xa.109f19a63bd6401p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x6.54d8247125348p+4L : 0xa.109f19a63bd64p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.54d8247125348p+4L : 0xa.109f19a63bd64p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.54d8247125348p+4L : 0xa.109f19a63bd64p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x6.54d8247125348p+4L : 0xa.109f19a63bd6401p+0L : inexact
+= sqrt downward ldbl-128 0x6.54d8247125348p+4L : 0xa.109f19a63bd64002ee4fb2c64dd8p+0L : inexact
+= sqrt tonearest ldbl-128 0x6.54d8247125348p+4L : 0xa.109f19a63bd64002ee4fb2c64dd8p+0L : inexact
+= sqrt towardzero ldbl-128 0x6.54d8247125348p+4L : 0xa.109f19a63bd64002ee4fb2c64dd8p+0L : inexact
+= sqrt upward ldbl-128 0x6.54d8247125348p+4L : 0xa.109f19a63bd64002ee4fb2c64dep+0L : inexact
+= sqrt downward ldbl-128ibm 0x6.54d8247125348p+4L : 0xa.109f19a63bd64002ee4fb2c64cp+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.54d8247125348p+4L : 0xa.109f19a63bd64002ee4fb2c64cp+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.54d8247125348p+4L : 0xa.109f19a63bd64002ee4fb2c64cp+0L : inexact
+= sqrt upward ldbl-128ibm 0x6.54d8247125348p+4L : 0xa.109f19a63bd64002ee4fb2c65p+0L : inexact
+sqrt 0x1.61b04c6p-1019
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x2.c36098cp-1020 : 0x6.a62e23c62d1b4p-512 : inexact
+= sqrt tonearest dbl-64 0x2.c36098cp-1020 : 0x6.a62e23c62d1b4p-512 : inexact
+= sqrt towardzero dbl-64 0x2.c36098cp-1020 : 0x6.a62e23c62d1b4p-512 : inexact
+= sqrt upward dbl-64 0x2.c36098cp-1020 : 0x6.a62e23c62d1b8p-512 : inexact
+= sqrt downward ldbl-96-intel 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ff8p-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x2.c36098cp-1020L : 0x6.a62e23c62d1b6p-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ff8p-512L : inexact
+= sqrt upward ldbl-96-intel 0x2.c36098cp-1020L : 0x6.a62e23c62d1b6p-512L : inexact
+= sqrt downward ldbl-96-m68k 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ff8p-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x2.c36098cp-1020L : 0x6.a62e23c62d1b6p-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ff8p-512L : inexact
+= sqrt upward ldbl-96-m68k 0x2.c36098cp-1020L : 0x6.a62e23c62d1b6p-512L : inexact
+= sqrt downward ldbl-128 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ffe5c81a90f553cp-512L : inexact
+= sqrt tonearest ldbl-128 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ffe5c81a90f554p-512L : inexact
+= sqrt towardzero ldbl-128 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ffe5c81a90f553cp-512L : inexact
+= sqrt upward ldbl-128 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ffe5c81a90f554p-512L : inexact
+= sqrt downward ldbl-128ibm 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ffe5c81a90f54p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ffe5c81a90f56p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ffe5c81a90f54p-512L : inexact
+= sqrt upward ldbl-128ibm 0x2.c36098cp-1020L : 0x6.a62e23c62d1b5ffe5c81a90f56p-512L : inexact
+sqrt 0x1.93789f1p-1018
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x6.4de27c4p-1020 : 0xa.0b15721eac108p-512 : inexact
+= sqrt tonearest dbl-64 0x6.4de27c4p-1020 : 0xa.0b15721eac108p-512 : inexact
+= sqrt towardzero dbl-64 0x6.4de27c4p-1020 : 0xa.0b15721eac108p-512 : inexact
+= sqrt upward dbl-64 0x6.4de27c4p-1020 : 0xa.0b15721eac11p-512 : inexact
+= sqrt downward ldbl-96-intel 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.4de27c4p-1020L : 0xa.0b15721eac10cp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffp-512L : inexact
+= sqrt upward ldbl-96-intel 0x6.4de27c4p-1020L : 0xa.0b15721eac10cp-512L : inexact
+= sqrt downward ldbl-96-m68k 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.4de27c4p-1020L : 0xa.0b15721eac10cp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x6.4de27c4p-1020L : 0xa.0b15721eac10cp-512L : inexact
+= sqrt downward ldbl-128 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffdd9746fa70cap-512L : inexact
+= sqrt tonearest ldbl-128 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffdd9746fa70ca8p-512L : inexact
+= sqrt towardzero ldbl-128 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffdd9746fa70cap-512L : inexact
+= sqrt upward ldbl-128 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffdd9746fa70ca8p-512L : inexact
+= sqrt downward ldbl-128ibm 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffdd9746fa70cp-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffdd9746fa70cp-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffdd9746fa70cp-512L : inexact
+= sqrt upward ldbl-128ibm 0x6.4de27c4p-1020L : 0xa.0b15721eac10bffdd9746fa71p-512L : inexact
+sqrt 0x1.a1989b4p-1018
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x6.86626dp-1020 : 0xa.37b39b75a25d8p-512 : inexact
+= sqrt tonearest dbl-64 0x6.86626dp-1020 : 0xa.37b39b75a25d8p-512 : inexact
+= sqrt towardzero dbl-64 0x6.86626dp-1020 : 0xa.37b39b75a25d8p-512 : inexact
+= sqrt upward dbl-64 0x6.86626dp-1020 : 0xa.37b39b75a25ep-512 : inexact
+= sqrt downward ldbl-96-intel 0x6.86626dp-1020L : 0xa.37b39b75a25dbffp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x6.86626dp-1020L : 0xa.37b39b75a25dcp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x6.86626dp-1020L : 0xa.37b39b75a25dbffp-512L : inexact
+= sqrt upward ldbl-96-intel 0x6.86626dp-1020L : 0xa.37b39b75a25dcp-512L : inexact
+= sqrt downward ldbl-96-m68k 0x6.86626dp-1020L : 0xa.37b39b75a25dbffp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x6.86626dp-1020L : 0xa.37b39b75a25dcp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x6.86626dp-1020L : 0xa.37b39b75a25dbffp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x6.86626dp-1020L : 0xa.37b39b75a25dcp-512L : inexact
+= sqrt downward ldbl-128 0x6.86626dp-1020L : 0xa.37b39b75a25dbffc951409f30528p-512L : inexact
+= sqrt tonearest ldbl-128 0x6.86626dp-1020L : 0xa.37b39b75a25dbffc951409f30528p-512L : inexact
+= sqrt towardzero ldbl-128 0x6.86626dp-1020L : 0xa.37b39b75a25dbffc951409f30528p-512L : inexact
+= sqrt upward ldbl-128 0x6.86626dp-1020L : 0xa.37b39b75a25dbffc951409f3053p-512L : inexact
+= sqrt downward ldbl-128ibm 0x6.86626dp-1020L : 0xa.37b39b75a25dbffc951409f304p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x6.86626dp-1020L : 0xa.37b39b75a25dbffc951409f304p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x6.86626dp-1020L : 0xa.37b39b75a25dbffc951409f304p-512L : inexact
+= sqrt upward ldbl-128ibm 0x6.86626dp-1020L : 0xa.37b39b75a25dbffc951409f308p-512L : inexact
+sqrt 0x1.f93bc9p-1018
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x7.e4ef24p-1020 : 0xb.3d1b76201dd7p-512 : inexact
+= sqrt tonearest dbl-64 0x7.e4ef24p-1020 : 0xb.3d1b76201dd78p-512 : inexact
+= sqrt towardzero dbl-64 0x7.e4ef24p-1020 : 0xb.3d1b76201dd7p-512 : inexact
+= sqrt upward dbl-64 0x7.e4ef24p-1020 : 0xb.3d1b76201dd78p-512 : inexact
+= sqrt downward ldbl-96-intel 0x7.e4ef24p-1020L : 0xb.3d1b76201dd74p-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x7.e4ef24p-1020L : 0xb.3d1b76201dd74p-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x7.e4ef24p-1020L : 0xb.3d1b76201dd74p-512L : inexact
+= sqrt upward ldbl-96-intel 0x7.e4ef24p-1020L : 0xb.3d1b76201dd7401p-512L : inexact
+= sqrt downward ldbl-96-m68k 0x7.e4ef24p-1020L : 0xb.3d1b76201dd74p-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x7.e4ef24p-1020L : 0xb.3d1b76201dd74p-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x7.e4ef24p-1020L : 0xb.3d1b76201dd74p-512L : inexact
+= sqrt upward ldbl-96-m68k 0x7.e4ef24p-1020L : 0xb.3d1b76201dd7401p-512L : inexact
+= sqrt downward ldbl-128 0x7.e4ef24p-1020L : 0xb.3d1b76201dd740065804ad1abeap-512L : inexact
+= sqrt tonearest ldbl-128 0x7.e4ef24p-1020L : 0xb.3d1b76201dd740065804ad1abea8p-512L : inexact
+= sqrt towardzero ldbl-128 0x7.e4ef24p-1020L : 0xb.3d1b76201dd740065804ad1abeap-512L : inexact
+= sqrt upward ldbl-128 0x7.e4ef24p-1020L : 0xb.3d1b76201dd740065804ad1abea8p-512L : inexact
+= sqrt downward ldbl-128ibm 0x7.e4ef24p-1020L : 0xb.3d1b76201dd740065804ad1abcp-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x7.e4ef24p-1020L : 0xb.3d1b76201dd740065804ad1acp-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x7.e4ef24p-1020L : 0xb.3d1b76201dd740065804ad1abcp-512L : inexact
+= sqrt upward ldbl-128ibm 0x7.e4ef24p-1020L : 0xb.3d1b76201dd740065804ad1acp-512L : inexact
+sqrt 0x1.2f675e3p-1017
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x9.7b3af18p-1020 : 0xc.51155b6e7f708p-512 : inexact
+= sqrt tonearest dbl-64 0x9.7b3af18p-1020 : 0xc.51155b6e7f708p-512 : inexact
+= sqrt towardzero dbl-64 0x9.7b3af18p-1020 : 0xc.51155b6e7f708p-512 : inexact
+= sqrt upward dbl-64 0x9.7b3af18p-1020 : 0xc.51155b6e7f71p-512 : inexact
+= sqrt downward ldbl-96-intel 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0x9.7b3af18p-1020L : 0xc.51155b6e7f70cp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffp-512L : inexact
+= sqrt upward ldbl-96-intel 0x9.7b3af18p-1020L : 0xc.51155b6e7f70cp-512L : inexact
+= sqrt downward ldbl-96-m68k 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0x9.7b3af18p-1020L : 0xc.51155b6e7f70cp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffp-512L : inexact
+= sqrt upward ldbl-96-m68k 0x9.7b3af18p-1020L : 0xc.51155b6e7f70cp-512L : inexact
+= sqrt downward ldbl-128 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffcf0277d2b561p-512L : inexact
+= sqrt tonearest ldbl-128 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffcf0277d2b5618p-512L : inexact
+= sqrt towardzero ldbl-128 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffcf0277d2b561p-512L : inexact
+= sqrt upward ldbl-128 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffcf0277d2b5618p-512L : inexact
+= sqrt downward ldbl-128ibm 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffcf0277d2b54p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffcf0277d2b58p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffcf0277d2b54p-512L : inexact
+= sqrt upward ldbl-128ibm 0x9.7b3af18p-1020L : 0xc.51155b6e7f70bffcf0277d2b58p-512L : inexact
+sqrt 0x1.a158508p-1017
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0xd.0ac284p-1020 : 0xe.720c54b67ac48p-512 : inexact
+= sqrt tonearest dbl-64 0xd.0ac284p-1020 : 0xe.720c54b67ac48p-512 : inexact
+= sqrt towardzero dbl-64 0xd.0ac284p-1020 : 0xe.720c54b67ac48p-512 : inexact
+= sqrt upward dbl-64 0xd.0ac284p-1020 : 0xe.720c54b67ac5p-512 : inexact
+= sqrt downward ldbl-96-intel 0xd.0ac284p-1020L : 0xe.720c54b67ac4bffp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0xd.0ac284p-1020L : 0xe.720c54b67ac4cp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0xd.0ac284p-1020L : 0xe.720c54b67ac4bffp-512L : inexact
+= sqrt upward ldbl-96-intel 0xd.0ac284p-1020L : 0xe.720c54b67ac4cp-512L : inexact
+= sqrt downward ldbl-96-m68k 0xd.0ac284p-1020L : 0xe.720c54b67ac4bffp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0xd.0ac284p-1020L : 0xe.720c54b67ac4cp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0xd.0ac284p-1020L : 0xe.720c54b67ac4bffp-512L : inexact
+= sqrt upward ldbl-96-m68k 0xd.0ac284p-1020L : 0xe.720c54b67ac4cp-512L : inexact
+= sqrt downward ldbl-128 0xd.0ac284p-1020L : 0xe.720c54b67ac4bfff3dde8c941bfp-512L : inexact
+= sqrt tonearest ldbl-128 0xd.0ac284p-1020L : 0xe.720c54b67ac4bfff3dde8c941bf8p-512L : inexact
+= sqrt towardzero ldbl-128 0xd.0ac284p-1020L : 0xe.720c54b67ac4bfff3dde8c941bfp-512L : inexact
+= sqrt upward ldbl-128 0xd.0ac284p-1020L : 0xe.720c54b67ac4bfff3dde8c941bf8p-512L : inexact
+= sqrt downward ldbl-128ibm 0xd.0ac284p-1020L : 0xe.720c54b67ac4bfff3dde8c9418p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0xd.0ac284p-1020L : 0xe.720c54b67ac4bfff3dde8c941cp-512L : inexact
+= sqrt towardzero ldbl-128ibm 0xd.0ac284p-1020L : 0xe.720c54b67ac4bfff3dde8c9418p-512L : inexact
+= sqrt upward ldbl-128ibm 0xd.0ac284p-1020L : 0xe.720c54b67ac4bfff3dde8c941cp-512L : inexact
+sqrt 0x1.cd31f078p-1017
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0xe.698f83cp-1020 : 0xf.2f78e32ee6758p-512 : inexact
+= sqrt tonearest dbl-64 0xe.698f83cp-1020 : 0xf.2f78e32ee6758p-512 : inexact
+= sqrt towardzero dbl-64 0xe.698f83cp-1020 : 0xf.2f78e32ee6758p-512 : inexact
+= sqrt upward dbl-64 0xe.698f83cp-1020 : 0xf.2f78e32ee676p-512 : inexact
+= sqrt downward ldbl-96-intel 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffp-512L : inexact
+= sqrt tonearest ldbl-96-intel 0xe.698f83cp-1020L : 0xf.2f78e32ee675cp-512L : inexact
+= sqrt towardzero ldbl-96-intel 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffp-512L : inexact
+= sqrt upward ldbl-96-intel 0xe.698f83cp-1020L : 0xf.2f78e32ee675cp-512L : inexact
+= sqrt downward ldbl-96-m68k 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffp-512L : inexact
+= sqrt tonearest ldbl-96-m68k 0xe.698f83cp-1020L : 0xf.2f78e32ee675cp-512L : inexact
+= sqrt towardzero ldbl-96-m68k 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffp-512L : inexact
+= sqrt upward ldbl-96-m68k 0xe.698f83cp-1020L : 0xf.2f78e32ee675cp-512L : inexact
+= sqrt downward ldbl-128 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffe6792b3ce66fp-512L : inexact
+= sqrt tonearest ldbl-128 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffe6792b3ce66fp-512L : inexact
+= sqrt towardzero ldbl-128 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffe6792b3ce66fp-512L : inexact
+= sqrt upward ldbl-128 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffe6792b3ce66f8p-512L : inexact
+= sqrt downward ldbl-128ibm 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffe6792b3ce64p-512L : inexact
+= sqrt tonearest ldbl-128ibm 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffe6792b3ce68p-512L : inexact
+= sqrt towardzero ldbl-128ibm 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffe6792b3ce64p-512L : inexact
+= sqrt upward ldbl-128ibm 0xe.698f83cp-1020L : 0xf.2f78e32ee675bffe6792b3ce68p-512L : inexact
+sqrt 0x1.33b43b08p-1016
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x1.33b43b08p-1016 : 0x1.18a9f607e1701p-508 : inexact
+= sqrt tonearest dbl-64 0x1.33b43b08p-1016 : 0x1.18a9f607e1701p-508 : inexact
+= sqrt towardzero dbl-64 0x1.33b43b08p-1016 : 0x1.18a9f607e1701p-508 : inexact
+= sqrt upward dbl-64 0x1.33b43b08p-1016 : 0x1.18a9f607e1702p-508 : inexact
+= sqrt downward ldbl-96-intel 0x1.33b43b08p-1016L : 0x1.18a9f607e17017fep-508L : inexact
+= sqrt tonearest ldbl-96-intel 0x1.33b43b08p-1016L : 0x1.18a9f607e17018p-508L : inexact
+= sqrt towardzero ldbl-96-intel 0x1.33b43b08p-1016L : 0x1.18a9f607e17017fep-508L : inexact
+= sqrt upward ldbl-96-intel 0x1.33b43b08p-1016L : 0x1.18a9f607e17018p-508L : inexact
+= sqrt downward ldbl-96-m68k 0x1.33b43b08p-1016L : 0x1.18a9f607e17017fep-508L : inexact
+= sqrt tonearest ldbl-96-m68k 0x1.33b43b08p-1016L : 0x1.18a9f607e17018p-508L : inexact
+= sqrt towardzero ldbl-96-m68k 0x1.33b43b08p-1016L : 0x1.18a9f607e17017fep-508L : inexact
+= sqrt upward ldbl-96-m68k 0x1.33b43b08p-1016L : 0x1.18a9f607e17018p-508L : inexact
+= sqrt downward ldbl-128 0x1.33b43b08p-1016L : 0x1.18a9f607e17017ff715a73e157aep-508L : inexact
+= sqrt tonearest ldbl-128 0x1.33b43b08p-1016L : 0x1.18a9f607e17017ff715a73e157afp-508L : inexact
+= sqrt towardzero ldbl-128 0x1.33b43b08p-1016L : 0x1.18a9f607e17017ff715a73e157aep-508L : inexact
+= sqrt upward ldbl-128 0x1.33b43b08p-1016L : 0x1.18a9f607e17017ff715a73e157afp-508L : inexact
+= sqrt downward ldbl-128ibm 0x1.33b43b08p-1016L : 0x1.18a9f607e17017ff715a73e1578p-508L : inexact
+= sqrt tonearest ldbl-128ibm 0x1.33b43b08p-1016L : 0x1.18a9f607e17017ff715a73e1578p-508L : inexact
+= sqrt towardzero ldbl-128ibm 0x1.33b43b08p-1016L : 0x1.18a9f607e17017ff715a73e1578p-508L : inexact
+= sqrt upward ldbl-128ibm 0x1.33b43b08p-1016L : 0x1.18a9f607e17017ff715a73e158p-508L : inexact
+sqrt 0x1.6e66a858p-1016
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x1.6e66a858p-1016 : 0x1.324402a00b45ep-508 : inexact
+= sqrt tonearest dbl-64 0x1.6e66a858p-1016 : 0x1.324402a00b45fp-508 : inexact
+= sqrt towardzero dbl-64 0x1.6e66a858p-1016 : 0x1.324402a00b45ep-508 : inexact
+= sqrt upward dbl-64 0x1.6e66a858p-1016 : 0x1.324402a00b45fp-508 : inexact
+= sqrt downward ldbl-96-intel 0x1.6e66a858p-1016L : 0x1.324402a00b45e8p-508L : inexact
+= sqrt tonearest ldbl-96-intel 0x1.6e66a858p-1016L : 0x1.324402a00b45e8p-508L : inexact
+= sqrt towardzero ldbl-96-intel 0x1.6e66a858p-1016L : 0x1.324402a00b45e8p-508L : inexact
+= sqrt upward ldbl-96-intel 0x1.6e66a858p-1016L : 0x1.324402a00b45e802p-508L : inexact
+= sqrt downward ldbl-96-m68k 0x1.6e66a858p-1016L : 0x1.324402a00b45e8p-508L : inexact
+= sqrt tonearest ldbl-96-m68k 0x1.6e66a858p-1016L : 0x1.324402a00b45e8p-508L : inexact
+= sqrt towardzero ldbl-96-m68k 0x1.6e66a858p-1016L : 0x1.324402a00b45e8p-508L : inexact
+= sqrt upward ldbl-96-m68k 0x1.6e66a858p-1016L : 0x1.324402a00b45e802p-508L : inexact
+= sqrt downward ldbl-128 0x1.6e66a858p-1016L : 0x1.324402a00b45e800a761e004b929p-508L : inexact
+= sqrt tonearest ldbl-128 0x1.6e66a858p-1016L : 0x1.324402a00b45e800a761e004b92ap-508L : inexact
+= sqrt towardzero ldbl-128 0x1.6e66a858p-1016L : 0x1.324402a00b45e800a761e004b929p-508L : inexact
+= sqrt upward ldbl-128 0x1.6e66a858p-1016L : 0x1.324402a00b45e800a761e004b92ap-508L : inexact
+= sqrt downward ldbl-128ibm 0x1.6e66a858p-1016L : 0x1.324402a00b45e800a761e004b9p-508L : inexact
+= sqrt tonearest ldbl-128ibm 0x1.6e66a858p-1016L : 0x1.324402a00b45e800a761e004b9p-508L : inexact
+= sqrt towardzero ldbl-128ibm 0x1.6e66a858p-1016L : 0x1.324402a00b45e800a761e004b9p-508L : inexact
+= sqrt upward ldbl-128ibm 0x1.6e66a858p-1016L : 0x1.324402a00b45e800a761e004b98p-508L : inexact
+sqrt 0x1.8661cbf8p-1016
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x1.8661cbf8p-1016 : 0x1.3c212046bfdfep-508 : inexact
+= sqrt tonearest dbl-64 0x1.8661cbf8p-1016 : 0x1.3c212046bfdffp-508 : inexact
+= sqrt towardzero dbl-64 0x1.8661cbf8p-1016 : 0x1.3c212046bfdfep-508 : inexact
+= sqrt upward dbl-64 0x1.8661cbf8p-1016 : 0x1.3c212046bfdffp-508 : inexact
+= sqrt downward ldbl-96-intel 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8p-508L : inexact
+= sqrt tonearest ldbl-96-intel 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8p-508L : inexact
+= sqrt towardzero ldbl-96-intel 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8p-508L : inexact
+= sqrt upward ldbl-96-intel 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe802p-508L : inexact
+= sqrt downward ldbl-96-m68k 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8p-508L : inexact
+= sqrt tonearest ldbl-96-m68k 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8p-508L : inexact
+= sqrt towardzero ldbl-96-m68k 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8p-508L : inexact
+= sqrt upward ldbl-96-m68k 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe802p-508L : inexact
+= sqrt downward ldbl-128 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8004a6543b0a63bp-508L : inexact
+= sqrt tonearest ldbl-128 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8004a6543b0a63bp-508L : inexact
+= sqrt towardzero ldbl-128 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8004a6543b0a63bp-508L : inexact
+= sqrt upward ldbl-128 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8004a6543b0a63cp-508L : inexact
+= sqrt downward ldbl-128ibm 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8004a6543b0a6p-508L : inexact
+= sqrt tonearest ldbl-128ibm 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8004a6543b0a6p-508L : inexact
+= sqrt towardzero ldbl-128ibm 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8004a6543b0a6p-508L : inexact
+= sqrt upward ldbl-128ibm 0x1.8661cbf8p-1016L : 0x1.3c212046bfdfe8004a6543b0a68p-508L : inexact
+sqrt 0x1.bbb221b4p-1016
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x1.bbb221b4p-1016 : 0x1.510681b93993p-508 : inexact
+= sqrt tonearest dbl-64 0x1.bbb221b4p-1016 : 0x1.510681b939931p-508 : inexact
+= sqrt towardzero dbl-64 0x1.bbb221b4p-1016 : 0x1.510681b93993p-508 : inexact
+= sqrt upward dbl-64 0x1.bbb221b4p-1016 : 0x1.510681b939931p-508 : inexact
+= sqrt downward ldbl-96-intel 0x1.bbb221b4p-1016L : 0x1.510681b9399308p-508L : inexact
+= sqrt tonearest ldbl-96-intel 0x1.bbb221b4p-1016L : 0x1.510681b9399308p-508L : inexact
+= sqrt towardzero ldbl-96-intel 0x1.bbb221b4p-1016L : 0x1.510681b9399308p-508L : inexact
+= sqrt upward ldbl-96-intel 0x1.bbb221b4p-1016L : 0x1.510681b939930802p-508L : inexact
+= sqrt downward ldbl-96-m68k 0x1.bbb221b4p-1016L : 0x1.510681b9399308p-508L : inexact
+= sqrt tonearest ldbl-96-m68k 0x1.bbb221b4p-1016L : 0x1.510681b9399308p-508L : inexact
+= sqrt towardzero ldbl-96-m68k 0x1.bbb221b4p-1016L : 0x1.510681b9399308p-508L : inexact
+= sqrt upward ldbl-96-m68k 0x1.bbb221b4p-1016L : 0x1.510681b939930802p-508L : inexact
+= sqrt downward ldbl-128 0x1.bbb221b4p-1016L : 0x1.510681b93993080072e1891cced7p-508L : inexact
+= sqrt tonearest ldbl-128 0x1.bbb221b4p-1016L : 0x1.510681b93993080072e1891cced7p-508L : inexact
+= sqrt towardzero ldbl-128 0x1.bbb221b4p-1016L : 0x1.510681b93993080072e1891cced7p-508L : inexact
+= sqrt upward ldbl-128 0x1.bbb221b4p-1016L : 0x1.510681b93993080072e1891cced8p-508L : inexact
+= sqrt downward ldbl-128ibm 0x1.bbb221b4p-1016L : 0x1.510681b93993080072e1891cce8p-508L : inexact
+= sqrt tonearest ldbl-128ibm 0x1.bbb221b4p-1016L : 0x1.510681b93993080072e1891ccfp-508L : inexact
+= sqrt towardzero ldbl-128ibm 0x1.bbb221b4p-1016L : 0x1.510681b93993080072e1891cce8p-508L : inexact
+= sqrt upward ldbl-128ibm 0x1.bbb221b4p-1016L : 0x1.510681b93993080072e1891ccfp-508L : inexact
+sqrt 0x1.c4942f3cp-1016
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x1.c4942f3cp-1016 : 0x1.5461e59227ab5p-508 : inexact
+= sqrt tonearest dbl-64 0x1.c4942f3cp-1016 : 0x1.5461e59227ab5p-508 : inexact
+= sqrt towardzero dbl-64 0x1.c4942f3cp-1016 : 0x1.5461e59227ab5p-508 : inexact
+= sqrt upward dbl-64 0x1.c4942f3cp-1016 : 0x1.5461e59227ab6p-508 : inexact
+= sqrt downward ldbl-96-intel 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57fep-508L : inexact
+= sqrt tonearest ldbl-96-intel 0x1.c4942f3cp-1016L : 0x1.5461e59227ab58p-508L : inexact
+= sqrt towardzero ldbl-96-intel 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57fep-508L : inexact
+= sqrt upward ldbl-96-intel 0x1.c4942f3cp-1016L : 0x1.5461e59227ab58p-508L : inexact
+= sqrt downward ldbl-96-m68k 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57fep-508L : inexact
+= sqrt tonearest ldbl-96-m68k 0x1.c4942f3cp-1016L : 0x1.5461e59227ab58p-508L : inexact
+= sqrt towardzero ldbl-96-m68k 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57fep-508L : inexact
+= sqrt upward ldbl-96-m68k 0x1.c4942f3cp-1016L : 0x1.5461e59227ab58p-508L : inexact
+= sqrt downward ldbl-128 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57ff0ef1d1ea7cc1p-508L : inexact
+= sqrt tonearest ldbl-128 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57ff0ef1d1ea7cc1p-508L : inexact
+= sqrt towardzero ldbl-128 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57ff0ef1d1ea7cc1p-508L : inexact
+= sqrt upward ldbl-128 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57ff0ef1d1ea7cc2p-508L : inexact
+= sqrt downward ldbl-128ibm 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57ff0ef1d1ea7c8p-508L : inexact
+= sqrt tonearest ldbl-128ibm 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57ff0ef1d1ea7dp-508L : inexact
+= sqrt towardzero ldbl-128ibm 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57ff0ef1d1ea7c8p-508L : inexact
+= sqrt upward ldbl-128ibm 0x1.c4942f3cp-1016L : 0x1.5461e59227ab57ff0ef1d1ea7dp-508L : inexact
+sqrt 0x1.dbb258c8p-1016
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x1.dbb258c8p-1016 : 0x1.5cf7b0f78d3aep-508 : inexact
+= sqrt tonearest dbl-64 0x1.dbb258c8p-1016 : 0x1.5cf7b0f78d3afp-508 : inexact
+= sqrt towardzero dbl-64 0x1.dbb258c8p-1016 : 0x1.5cf7b0f78d3aep-508 : inexact
+= sqrt upward dbl-64 0x1.dbb258c8p-1016 : 0x1.5cf7b0f78d3afp-508 : inexact
+= sqrt downward ldbl-96-intel 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8p-508L : inexact
+= sqrt tonearest ldbl-96-intel 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8p-508L : inexact
+= sqrt towardzero ldbl-96-intel 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8p-508L : inexact
+= sqrt upward ldbl-96-intel 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae802p-508L : inexact
+= sqrt downward ldbl-96-m68k 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8p-508L : inexact
+= sqrt tonearest ldbl-96-m68k 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8p-508L : inexact
+= sqrt towardzero ldbl-96-m68k 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8p-508L : inexact
+= sqrt upward ldbl-96-m68k 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae802p-508L : inexact
+= sqrt downward ldbl-128 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8008b2b0f38c32dp-508L : inexact
+= sqrt tonearest ldbl-128 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8008b2b0f38c32ep-508L : inexact
+= sqrt towardzero ldbl-128 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8008b2b0f38c32dp-508L : inexact
+= sqrt upward ldbl-128 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8008b2b0f38c32ep-508L : inexact
+= sqrt downward ldbl-128ibm 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8008b2b0f38c3p-508L : inexact
+= sqrt tonearest ldbl-128ibm 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8008b2b0f38c3p-508L : inexact
+= sqrt towardzero ldbl-128ibm 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8008b2b0f38c3p-508L : inexact
+= sqrt upward ldbl-128ibm 0x1.dbb258c8p-1016L : 0x1.5cf7b0f78d3ae8008b2b0f38c38p-508L : inexact
+sqrt 0x1.57103ea4p-1015
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x2.ae207d48p-1016 : 0x1.a31ab946d340ap-508 : inexact
+= sqrt tonearest dbl-64 0x2.ae207d48p-1016 : 0x1.a31ab946d340bp-508 : inexact
+= sqrt towardzero dbl-64 0x2.ae207d48p-1016 : 0x1.a31ab946d340ap-508 : inexact
+= sqrt upward dbl-64 0x2.ae207d48p-1016 : 0x1.a31ab946d340bp-508 : inexact
+= sqrt downward ldbl-96-intel 0x2.ae207d48p-1016L : 0x1.a31ab946d340a8p-508L : inexact
+= sqrt tonearest ldbl-96-intel 0x2.ae207d48p-1016L : 0x1.a31ab946d340a8p-508L : inexact
+= sqrt towardzero ldbl-96-intel 0x2.ae207d48p-1016L : 0x1.a31ab946d340a8p-508L : inexact
+= sqrt upward ldbl-96-intel 0x2.ae207d48p-1016L : 0x1.a31ab946d340a802p-508L : inexact
+= sqrt downward ldbl-96-m68k 0x2.ae207d48p-1016L : 0x1.a31ab946d340a8p-508L : inexact
+= sqrt tonearest ldbl-96-m68k 0x2.ae207d48p-1016L : 0x1.a31ab946d340a8p-508L : inexact
+= sqrt towardzero ldbl-96-m68k 0x2.ae207d48p-1016L : 0x1.a31ab946d340a8p-508L : inexact
+= sqrt upward ldbl-96-m68k 0x2.ae207d48p-1016L : 0x1.a31ab946d340a802p-508L : inexact
+= sqrt downward ldbl-128 0x2.ae207d48p-1016L : 0x1.a31ab946d340a800ad52925a9b5fp-508L : inexact
+= sqrt tonearest ldbl-128 0x2.ae207d48p-1016L : 0x1.a31ab946d340a800ad52925a9b6p-508L : inexact
+= sqrt towardzero ldbl-128 0x2.ae207d48p-1016L : 0x1.a31ab946d340a800ad52925a9b5fp-508L : inexact
+= sqrt upward ldbl-128 0x2.ae207d48p-1016L : 0x1.a31ab946d340a800ad52925a9b6p-508L : inexact
+= sqrt downward ldbl-128ibm 0x2.ae207d48p-1016L : 0x1.a31ab946d340a800ad52925a9bp-508L : inexact
+= sqrt tonearest ldbl-128ibm 0x2.ae207d48p-1016L : 0x1.a31ab946d340a800ad52925a9b8p-508L : inexact
+= sqrt towardzero ldbl-128ibm 0x2.ae207d48p-1016L : 0x1.a31ab946d340a800ad52925a9bp-508L : inexact
+= sqrt upward ldbl-128ibm 0x2.ae207d48p-1016L : 0x1.a31ab946d340a800ad52925a9b8p-508L : inexact
+sqrt 0x1.9b294f88p-1015
+= sqrt downward flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt tonearest flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt towardzero flt-32 0x8p-152f : 0x2.d413ccp-76f : inexact
+= sqrt upward flt-32 0x8p-152f : 0x2.d413dp-76f : inexact
+= sqrt downward dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt tonearest dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt towardzero dbl-64 0x8p-152 : 0x2.d413cccfe7798p-76 : inexact
+= sqrt upward dbl-64 0x8p-152 : 0x2.d413cccfe779ap-76 : inexact
+= sqrt downward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-intel 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-intel 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt tonearest ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt towardzero ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe779921p-76L : inexact
+= sqrt upward ldbl-96-m68k 0x8p-152L : 0x2.d413cccfe7799214p-76L : inexact
+= sqrt downward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt tonearest ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt towardzero ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52ap-76L : inexact
+= sqrt upward ldbl-128 0x8p-152L : 0x2.d413cccfe779921165f626cdd52cp-76L : inexact
+= sqrt downward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt tonearest ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt towardzero ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd5p-76L : inexact
+= sqrt upward ldbl-128ibm 0x8p-152L : 0x2.d413cccfe779921165f626cdd6p-76L : inexact
+= sqrt downward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt tonearest flt-32 0x0p+0f : 0x0p+0f :
+= sqrt towardzero flt-32 0x0p+0f : 0x0p+0f :
+= sqrt upward flt-32 0x0p+0f : 0x0p+0f :
+= sqrt downward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt tonearest dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt towardzero dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt upward dbl-64 0x0p+0 : 0x0p+0 :
+= sqrt downward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-intel 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-96-m68k 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128 0x0p+0L : 0x0p+0L :
+= sqrt downward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt upward ldbl-128ibm 0x0p+0L : 0x0p+0L :
+= sqrt downward dbl-64 0x3.36529f1p-1016 : 0x1.cad197e28e85ap-508 : inexact
+= sqrt tonearest dbl-64 0x3.36529f1p-1016 : 0x1.cad197e28e85bp-508 : inexact
+= sqrt towardzero dbl-64 0x3.36529f1p-1016 : 0x1.cad197e28e85ap-508 : inexact
+= sqrt upward dbl-64 0x3.36529f1p-1016 : 0x1.cad197e28e85bp-508 : inexact
+= sqrt downward ldbl-96-intel 0x3.36529f1p-1016L : 0x1.cad197e28e85a8p-508L : inexact
+= sqrt tonearest ldbl-96-intel 0x3.36529f1p-1016L : 0x1.cad197e28e85a8p-508L : inexact
+= sqrt towardzero ldbl-96-intel 0x3.36529f1p-1016L : 0x1.cad197e28e85a8p-508L : inexact
+= sqrt upward ldbl-96-intel 0x3.36529f1p-1016L : 0x1.cad197e28e85a802p-508L : inexact
+= sqrt downward ldbl-96-m68k 0x3.36529f1p-1016L : 0x1.cad197e28e85a8p-508L : inexact
+= sqrt tonearest ldbl-96-m68k 0x3.36529f1p-1016L : 0x1.cad197e28e85a8p-508L : inexact
+= sqrt towardzero ldbl-96-m68k 0x3.36529f1p-1016L : 0x1.cad197e28e85a8p-508L : inexact
+= sqrt upward ldbl-96-m68k 0x3.36529f1p-1016L : 0x1.cad197e28e85a802p-508L : inexact
+= sqrt downward ldbl-128 0x3.36529f1p-1016L : 0x1.cad197e28e85a800936f1133685p-508L : inexact
+= sqrt tonearest ldbl-128 0x3.36529f1p-1016L : 0x1.cad197e28e85a800936f11336851p-508L : inexact
+= sqrt towardzero ldbl-128 0x3.36529f1p-1016L : 0x1.cad197e28e85a800936f1133685p-508L : inexact
+= sqrt upward ldbl-128 0x3.36529f1p-1016L : 0x1.cad197e28e85a800936f11336851p-508L : inexact
+= sqrt downward ldbl-128ibm 0x3.36529f1p-1016L : 0x1.cad197e28e85a800936f113368p-508L : inexact
+= sqrt tonearest ldbl-128ibm 0x3.36529f1p-1016L : 0x1.cad197e28e85a800936f1133688p-508L : inexact
+= sqrt towardzero ldbl-128ibm 0x3.36529f1p-1016L : 0x1.cad197e28e85a800936f113368p-508L : inexact
+= sqrt upward ldbl-128ibm 0x3.36529f1p-1016L : 0x1.cad197e28e85a800936f1133688p-508L : inexact
+sqrt 0x1.0000000000001p+0
+= sqrt downward flt-32 0x1.000002p+0f : 0x1p+0f : inexact
+= sqrt tonearest flt-32 0x1.000002p+0f : 0x1p+0f : inexact
+= sqrt towardzero flt-32 0x1.000002p+0f : 0x1p+0f : inexact
+= sqrt upward flt-32 0x1.000002p+0f : 0x1.000002p+0f : inexact
+= sqrt downward dbl-64 0x1.000002p+0 : 0x1.000000ffffff8p+0 : inexact
+= sqrt tonearest dbl-64 0x1.000002p+0 : 0x1.000000ffffff8p+0 : inexact
+= sqrt towardzero dbl-64 0x1.000002p+0 : 0x1.000000ffffff8p+0 : inexact
+= sqrt upward dbl-64 0x1.000002p+0 : 0x1.000000ffffff9p+0 : inexact
+= sqrt downward ldbl-96-intel 0x1.000002p+0L : 0x1.000000ffffff8p+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x1.000002p+0L : 0x1.000000ffffff8p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x1.000002p+0L : 0x1.000000ffffff8p+0L : inexact
+= sqrt upward ldbl-96-intel 0x1.000002p+0L : 0x1.000000ffffff8002p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x1.000002p+0L : 0x1.000000ffffff8p+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x1.000002p+0L : 0x1.000000ffffff8p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x1.000002p+0L : 0x1.000000ffffff8p+0L : inexact
+= sqrt upward ldbl-96-m68k 0x1.000002p+0L : 0x1.000000ffffff8002p+0L : inexact
+= sqrt downward ldbl-128 0x1.000002p+0L : 0x1.000000ffffff8000007fffff6p+0L : inexact
+= sqrt tonearest ldbl-128 0x1.000002p+0L : 0x1.000000ffffff8000007fffff6p+0L : inexact
+= sqrt towardzero ldbl-128 0x1.000002p+0L : 0x1.000000ffffff8000007fffff6p+0L : inexact
+= sqrt upward ldbl-128 0x1.000002p+0L : 0x1.000000ffffff8000007fffff6001p+0L : inexact
+= sqrt downward ldbl-128ibm 0x1.000002p+0L : 0x1.000000ffffff8000007fffff6p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x1.000002p+0L : 0x1.000000ffffff8000007fffff6p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x1.000002p+0L : 0x1.000000ffffff8000007fffff6p+0L : inexact
+= sqrt upward ldbl-128ibm 0x1.000002p+0L : 0x1.000000ffffff8000007fffff608p+0L : inexact
+= sqrt downward flt-32 0x1p+0f : 0x1p+0f :
+= sqrt tonearest flt-32 0x1p+0f : 0x1p+0f :
+= sqrt towardzero flt-32 0x1p+0f : 0x1p+0f :
+= sqrt upward flt-32 0x1p+0f : 0x1p+0f :
+= sqrt downward dbl-64 0x1p+0 : 0x1p+0 :
+= sqrt tonearest dbl-64 0x1p+0 : 0x1p+0 :
+= sqrt towardzero dbl-64 0x1p+0 : 0x1p+0 :
+= sqrt upward dbl-64 0x1p+0 : 0x1p+0 :
+= sqrt downward ldbl-96-intel 0x1p+0L : 0x1p+0L :
+= sqrt tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L :
+= sqrt towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L :
+= sqrt upward ldbl-96-intel 0x1p+0L : 0x1p+0L :
+= sqrt downward ldbl-96-m68k 0x1p+0L : 0x1p+0L :
+= sqrt tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L :
+= sqrt towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L :
+= sqrt upward ldbl-96-m68k 0x1p+0L : 0x1p+0L :
+= sqrt downward ldbl-128 0x1p+0L : 0x1p+0L :
+= sqrt tonearest ldbl-128 0x1p+0L : 0x1p+0L :
+= sqrt towardzero ldbl-128 0x1p+0L : 0x1p+0L :
+= sqrt upward ldbl-128 0x1p+0L : 0x1p+0L :
+= sqrt downward ldbl-128ibm 0x1p+0L : 0x1p+0L :
+= sqrt tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L :
+= sqrt towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L :
+= sqrt upward ldbl-128ibm 0x1p+0L : 0x1p+0L :
+= sqrt downward dbl-64 0x1.0000000000001p+0 : 0x1p+0 : inexact
+= sqrt tonearest dbl-64 0x1.0000000000001p+0 : 0x1p+0 : inexact
+= sqrt towardzero dbl-64 0x1.0000000000001p+0 : 0x1p+0 : inexact
+= sqrt upward dbl-64 0x1.0000000000001p+0 : 0x1.0000000000001p+0 : inexact
+= sqrt downward ldbl-96-intel 0x1.0000000000001p+0L : 0x1.00000000000007fep+0L : inexact
+= sqrt tonearest ldbl-96-intel 0x1.0000000000001p+0L : 0x1.00000000000008p+0L : inexact
+= sqrt towardzero ldbl-96-intel 0x1.0000000000001p+0L : 0x1.00000000000007fep+0L : inexact
+= sqrt upward ldbl-96-intel 0x1.0000000000001p+0L : 0x1.00000000000008p+0L : inexact
+= sqrt downward ldbl-96-m68k 0x1.0000000000001p+0L : 0x1.00000000000007fep+0L : inexact
+= sqrt tonearest ldbl-96-m68k 0x1.0000000000001p+0L : 0x1.00000000000008p+0L : inexact
+= sqrt towardzero ldbl-96-m68k 0x1.0000000000001p+0L : 0x1.00000000000007fep+0L : inexact
+= sqrt upward ldbl-96-m68k 0x1.0000000000001p+0L : 0x1.00000000000008p+0L : inexact
+= sqrt downward ldbl-128 0x1.0000000000001p+0L : 0x1.00000000000007ffffffffffffep+0L : inexact
+= sqrt tonearest ldbl-128 0x1.0000000000001p+0L : 0x1.00000000000007ffffffffffffep+0L : inexact
+= sqrt towardzero ldbl-128 0x1.0000000000001p+0L : 0x1.00000000000007ffffffffffffep+0L : inexact
+= sqrt upward ldbl-128 0x1.0000000000001p+0L : 0x1.00000000000007ffffffffffffe1p+0L : inexact
+= sqrt downward ldbl-128ibm 0x1.0000000000001p+0L : 0x1.00000000000007ffffffffffff8p+0L : inexact
+= sqrt tonearest ldbl-128ibm 0x1.0000000000001p+0L : 0x1.00000000000008p+0L : inexact
+= sqrt towardzero ldbl-128ibm 0x1.0000000000001p+0L : 0x1.00000000000007ffffffffffff8p+0L : inexact
+= sqrt upward ldbl-128ibm 0x1.0000000000001p+0L : 0x1.00000000000008p+0L : inexact
+sqrt 0x1.fffffffffffffp-1
+= sqrt downward flt-32 0x1p+0f : 0x1p+0f :
+= sqrt tonearest flt-32 0x1p+0f : 0x1p+0f :
+= sqrt towardzero flt-32 0x1p+0f : 0x1p+0f :
+= sqrt upward flt-32 0x1p+0f : 0x1p+0f :
+= sqrt downward dbl-64 0x1p+0 : 0x1p+0 :
+= sqrt tonearest dbl-64 0x1p+0 : 0x1p+0 :
+= sqrt towardzero dbl-64 0x1p+0 : 0x1p+0 :
+= sqrt upward dbl-64 0x1p+0 : 0x1p+0 :
+= sqrt downward ldbl-96-intel 0x1p+0L : 0x1p+0L :
+= sqrt tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L :
+= sqrt towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L :
+= sqrt upward ldbl-96-intel 0x1p+0L : 0x1p+0L :
+= sqrt downward ldbl-96-m68k 0x1p+0L : 0x1p+0L :
+= sqrt tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L :
+= sqrt towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L :
+= sqrt upward ldbl-96-m68k 0x1p+0L : 0x1p+0L :
+= sqrt downward ldbl-128 0x1p+0L : 0x1p+0L :
+= sqrt tonearest ldbl-128 0x1p+0L : 0x1p+0L :
+= sqrt towardzero ldbl-128 0x1p+0L : 0x1p+0L :
+= sqrt upward ldbl-128 0x1p+0L : 0x1p+0L :
+= sqrt downward ldbl-128ibm 0x1p+0L : 0x1p+0L :
+= sqrt tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L :
+= sqrt towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L :
+= sqrt upward ldbl-128ibm 0x1p+0L : 0x1p+0L :
+= sqrt downward flt-32 0xf.fffffp-4f : 0xf.fffffp-4f : inexact
+= sqrt tonearest flt-32 0xf.fffffp-4f : 0xf.fffffp-4f : inexact
+= sqrt towardzero flt-32 0xf.fffffp-4f : 0xf.fffffp-4f : inexact
+= sqrt upward flt-32 0xf.fffffp-4f : 0x1p+0f : inexact
+= sqrt downward dbl-64 0xf.fffffp-4 : 0xf.fffff7fffffd8p-4 : inexact
+= sqrt tonearest dbl-64 0xf.fffffp-4 : 0xf.fffff7fffffep-4 : inexact
+= sqrt towardzero dbl-64 0xf.fffffp-4 : 0xf.fffff7fffffd8p-4 : inexact
+= sqrt upward dbl-64 0xf.fffffp-4 : 0xf.fffff7fffffep-4 : inexact
+= sqrt downward ldbl-96-intel 0xf.fffffp-4L : 0xf.fffff7fffffdfffp-4L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.fffffp-4L : 0xf.fffff7fffffep-4L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.fffffp-4L : 0xf.fffff7fffffdfffp-4L : inexact
+= sqrt upward ldbl-96-intel 0xf.fffffp-4L : 0xf.fffff7fffffep-4L : inexact
+= sqrt downward ldbl-96-m68k 0xf.fffffp-4L : 0xf.fffff7fffffdfffp-4L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.fffffp-4L : 0xf.fffff7fffffep-4L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.fffffp-4L : 0xf.fffff7fffffdfffp-4L : inexact
+= sqrt upward ldbl-96-m68k 0xf.fffffp-4L : 0xf.fffff7fffffep-4L : inexact
+= sqrt downward ldbl-128 0xf.fffffp-4L : 0xf.fffff7fffffdfffffeffffff5ff8p-4L : inexact
+= sqrt tonearest ldbl-128 0xf.fffffp-4L : 0xf.fffff7fffffdfffffeffffff6p-4L : inexact
+= sqrt towardzero ldbl-128 0xf.fffffp-4L : 0xf.fffff7fffffdfffffeffffff5ff8p-4L : inexact
+= sqrt upward ldbl-128 0xf.fffffp-4L : 0xf.fffff7fffffdfffffeffffff6p-4L : inexact
+= sqrt downward ldbl-128ibm 0xf.fffffp-4L : 0xf.fffff7fffffdfffffeffffff5cp-4L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.fffffp-4L : 0xf.fffff7fffffdfffffeffffff6p-4L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.fffffp-4L : 0xf.fffff7fffffdfffffeffffff5cp-4L : inexact
+= sqrt upward ldbl-128ibm 0xf.fffffp-4L : 0xf.fffff7fffffdfffffeffffff6p-4L : inexact
+= sqrt downward dbl-64 0xf.ffffffffffff8p-4 : 0xf.ffffffffffff8p-4 : inexact
+= sqrt tonearest dbl-64 0xf.ffffffffffff8p-4 : 0xf.ffffffffffff8p-4 : inexact
+= sqrt towardzero dbl-64 0xf.ffffffffffff8p-4 : 0xf.ffffffffffff8p-4 : inexact
+= sqrt upward dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact
+= sqrt downward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffbffp-4L : inexact
+= sqrt tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffcp-4L : inexact
+= sqrt towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffbffp-4L : inexact
+= sqrt upward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffcp-4L : inexact
+= sqrt downward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffbffp-4L : inexact
+= sqrt tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffcp-4L : inexact
+= sqrt towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffbffp-4L : inexact
+= sqrt upward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffcp-4L : inexact
+= sqrt downward ldbl-128 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffbfffffffffffff78p-4L : inexact
+= sqrt tonearest ldbl-128 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffbfffffffffffff8p-4L : inexact
+= sqrt towardzero ldbl-128 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffbfffffffffffff78p-4L : inexact
+= sqrt upward ldbl-128 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffbfffffffffffff8p-4L : inexact
+= sqrt downward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffbffffffffffffcp-4L : inexact
+= sqrt tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffcp-4L : inexact
+= sqrt towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffbffffffffffffcp-4L : inexact
+= sqrt upward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0xf.ffffffffffffcp-4L : inexact
+tan 0
+= tan downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= tan tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= tan towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= tan upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= tan downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= tan tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= tan towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= tan upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= tan downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= tan upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= tan upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= tan downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= tan tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= tan towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= tan upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= tan downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= tan upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+tan -0
+= tan downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= tan tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= tan towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= tan upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= tan downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= tan tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= tan towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= tan upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= tan downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= tan upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= tan downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= tan upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= tan downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= tan tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= tan towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= tan upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= tan downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= tan upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+tan pi/4
+= tan downward flt-32 0xc.90fdbp-4f : 0x1p+0f : inexact-ok
+= tan tonearest flt-32 0xc.90fdbp-4f : 0x1p+0f : inexact-ok
+= tan towardzero flt-32 0xc.90fdbp-4f : 0x1p+0f : inexact-ok
+= tan upward flt-32 0xc.90fdbp-4f : 0x1.000002p+0f : inexact-ok
+= tan downward dbl-64 0xc.90fdbp-4 : 0x1.000000bbbd2ecp+0 : inexact-ok
+= tan tonearest dbl-64 0xc.90fdbp-4 : 0x1.000000bbbd2ecp+0 : inexact-ok
+= tan towardzero dbl-64 0xc.90fdbp-4 : 0x1.000000bbbd2ecp+0 : inexact-ok
+= tan upward dbl-64 0xc.90fdbp-4 : 0x1.000000bbbd2edp+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fdbp-4L : 0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fdbp-4L : 0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fdbp-4L : 0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fdbp-4L : 0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fdbp-4L : 0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fdbp-4L : 0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fdbp-4L : 0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fdbp-4L : 0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan downward ldbl-128 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff3655a3p+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff3655a3p+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff3655a3p+0L : inexact-ok
+= tan upward ldbl-128 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff3655a4p+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff36558p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff36558p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff36558p+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff3656p+0L : inexact-ok
+= tan downward flt-32 0xc.90fdap-4f : 0xf.ffffep-4f : inexact-ok
+= tan tonearest flt-32 0xc.90fdap-4f : 0xf.fffffp-4f : inexact-ok
+= tan towardzero flt-32 0xc.90fdap-4f : 0xf.ffffep-4f : inexact-ok
+= tan upward flt-32 0xc.90fdap-4f : 0xf.fffffp-4f : inexact-ok
+= tan downward dbl-64 0xc.90fdap-4 : 0xf.ffffebbbd2f48p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.90fdap-4 : 0xf.ffffebbbd2f48p-4 : inexact-ok
+= tan towardzero dbl-64 0xc.90fdap-4 : 0xf.ffffebbbd2f48p-4 : inexact-ok
+= tan upward dbl-64 0xc.90fdap-4 : 0xf.ffffebbbd2f5p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fdap-4L : 0xf.ffffebbbd2f48f4p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fdap-4L : 0xf.ffffebbbd2f48f4p-4L : inexact-ok
+= tan downward ldbl-128 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc0468p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc0468p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc0468p-4L : inexact-ok
+= tan upward ldbl-128 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc047p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc04p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc04p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc04p-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc08p-4L : inexact-ok
+= tan downward dbl-64 0xc.90fdaa22168c8p-4 : 0x1p+0 : inexact-ok
+= tan tonearest dbl-64 0xc.90fdaa22168c8p-4 : 0x1.0000000000001p+0 : inexact-ok
+= tan towardzero dbl-64 0xc.90fdaa22168c8p-4 : 0x1p+0 : inexact-ok
+= tan upward dbl-64 0xc.90fdaa22168c8p-4 : 0x1.0000000000001p+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b96p+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b96p+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b96p+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b98p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b96p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b96p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b96p+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b98p+0L : inexact-ok
+= tan downward ldbl-128 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b9676733ae8fe8ap+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b9676733ae8fe8bp+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b9676733ae8fe8ap+0L : inexact-ok
+= tan upward ldbl-128 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b9676733ae8fe8bp+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b9676733ae8fe8p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b9676733ae8fe8p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b9676733ae8fe8p+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdaa22168c8p-4L : 0x1.0000000000000b9676733ae8ffp+0L : inexact-ok
+= tan downward dbl-64 0xc.90fdaa22168cp-4 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.90fdaa22168cp-4 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tan towardzero dbl-64 0xc.90fdaa22168cp-4 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tan upward dbl-64 0xc.90fdaa22168cp-4 : 0x1p+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb96p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb96p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb96p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb97p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb96p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb96p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb96p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb97p-4L : inexact-ok
+= tan downward ldbl-128 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb9676733ae8fe518p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb9676733ae8fe518p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb9676733ae8fe518p-4L : inexact-ok
+= tan upward ldbl-128 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb9676733ae8fe52p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb9676733ae8fe4p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb9676733ae8fe4p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb9676733ae8fe4p-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdaa22168cp-4L : 0xf.ffffffffffffb9676733ae8fe8p-4L : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fdaa22168c235p-4L : 0x1p+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fdaa22168c235p-4L : 0x1p+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fdaa22168c235p-4L : 0x1p+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fdaa22168c235p-4L : 0x1.0000000000000002p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fdaa22168c235p-4L : 0x1p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fdaa22168c235p-4L : 0x1p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fdaa22168c235p-4L : 0x1p+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fdaa22168c235p-4L : 0x1.0000000000000002p+0L : inexact-ok
+= tan downward ldbl-128 0xc.90fdaa22168c235p-4L : 0x1.000000000000000076733ae8fe47p+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdaa22168c235p-4L : 0x1.000000000000000076733ae8fe48p+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdaa22168c235p-4L : 0x1.000000000000000076733ae8fe47p+0L : inexact-ok
+= tan upward ldbl-128 0xc.90fdaa22168c235p-4L : 0x1.000000000000000076733ae8fe48p+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdaa22168c235p-4L : 0x1.000000000000000076733ae8fep+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdaa22168c235p-4L : 0x1.000000000000000076733ae8fe8p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdaa22168c235p-4L : 0x1.000000000000000076733ae8fep+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdaa22168c235p-4L : 0x1.000000000000000076733ae8fe8p+0L : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fdaa22168c234p-4L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fdaa22168c234p-4L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tan downward ldbl-128 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffe76733ae8fe478p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffe76733ae8fe48p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffe76733ae8fe478p-4L : inexact-ok
+= tan upward ldbl-128 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffe76733ae8fe48p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffe76733ae8fe4p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffe76733ae8fe4p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffe76733ae8fe4p-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdaa22168c234p-4L : 0xf.ffffffffffffffe76733ae8fe8p-4L : inexact-ok
+= tan downward ldbl-128 0xc.90fdaa22168c234c4c6628b80dc8p-4L : 0x1p+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdaa22168c234c4c6628b80dc8p-4L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdaa22168c234c4c6628b80dc8p-4L : 0x1p+0L : inexact-ok
+= tan upward ldbl-128 0xc.90fdaa22168c234c4c6628b80dc8p-4L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= tan downward ldbl-128 0xc.90fdaa22168c234c4c6628b80dcp-4L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdaa22168c234c4c6628b80dcp-4L : 0x1p+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdaa22168c234c4c6628b80dcp-4L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= tan upward ldbl-128 0xc.90fdaa22168c234c4c6628b80dcp-4L : 0x1p+0L : inexact-ok
+= tan downward ldbl-128 0xc.90fdaa22168c234c4c6628b81p-4L : 0x1.0000000000000000000000000047p+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdaa22168c234c4c6628b81p-4L : 0x1.0000000000000000000000000048p+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdaa22168c234c4c6628b81p-4L : 0x1.0000000000000000000000000047p+0L : inexact-ok
+= tan upward ldbl-128 0xc.90fdaa22168c234c4c6628b81p-4L : 0x1.0000000000000000000000000048p+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdaa22168c234c4c6628b81p-4L : 0x1p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdaa22168c234c4c6628b81p-4L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdaa22168c234c4c6628b81p-4L : 0x1p+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdaa22168c234c4c6628b81p-4L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= tan downward ldbl-128 0xc.90fdaa22168c234c4c6628b80cp-4L : 0xf.fffffffffffffffffffffffffc78p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdaa22168c234c4c6628b80cp-4L : 0xf.fffffffffffffffffffffffffc8p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdaa22168c234c4c6628b80cp-4L : 0xf.fffffffffffffffffffffffffc78p-4L : inexact-ok
+= tan upward ldbl-128 0xc.90fdaa22168c234c4c6628b80cp-4L : 0xf.fffffffffffffffffffffffffc8p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdaa22168c234c4c6628b80cp-4L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdaa22168c234c4c6628b80cp-4L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdaa22168c234c4c6628b80cp-4L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdaa22168c234c4c6628b80cp-4L : 0x1p+0L : inexact-ok
+tan 0.75
+= tan downward flt-32 0xcp-4f : 0xe.e7d1bp-4f : inexact-ok
+= tan tonearest flt-32 0xcp-4f : 0xe.e7d1bp-4f : inexact-ok
+= tan towardzero flt-32 0xcp-4f : 0xe.e7d1bp-4f : inexact-ok
+= tan upward flt-32 0xcp-4f : 0xe.e7d1cp-4f : inexact-ok
+= tan downward dbl-64 0xcp-4 : 0xe.e7d1b08877758p-4 : inexact-ok
+= tan tonearest dbl-64 0xcp-4 : 0xe.e7d1b0887776p-4 : inexact-ok
+= tan towardzero dbl-64 0xcp-4 : 0xe.e7d1b08877758p-4 : inexact-ok
+= tan upward dbl-64 0xcp-4 : 0xe.e7d1b0887776p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xcp-4L : 0xe.e7d1b0887775f06p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xcp-4L : 0xe.e7d1b0887775f06p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xcp-4L : 0xe.e7d1b0887775f06p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xcp-4L : 0xe.e7d1b0887775f07p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xcp-4L : 0xe.e7d1b0887775f06p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xcp-4L : 0xe.e7d1b0887775f06p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xcp-4L : 0xe.e7d1b0887775f06p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xcp-4L : 0xe.e7d1b0887775f07p-4L : inexact-ok
+= tan downward ldbl-128 0xcp-4L : 0xe.e7d1b0887775f06184cd76c016fp-4L : inexact-ok
+= tan tonearest ldbl-128 0xcp-4L : 0xe.e7d1b0887775f06184cd76c016fp-4L : inexact-ok
+= tan towardzero ldbl-128 0xcp-4L : 0xe.e7d1b0887775f06184cd76c016fp-4L : inexact-ok
+= tan upward ldbl-128 0xcp-4L : 0xe.e7d1b0887775f06184cd76c016f8p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xcp-4L : 0xe.e7d1b0887775f06184cd76c014p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xcp-4L : 0xe.e7d1b0887775f06184cd76c018p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xcp-4L : 0xe.e7d1b0887775f06184cd76c014p-4L : inexact-ok
+= tan upward ldbl-128ibm 0xcp-4L : 0xe.e7d1b0887775f06184cd76c018p-4L : inexact-ok
+tan 0x1p65
+= tan downward flt-32 0x2p+64f : -0xc.17b0cp-8f : inexact-ok
+= tan tonearest flt-32 0x2p+64f : -0xc.17b0cp-8f : inexact-ok
+= tan towardzero flt-32 0x2p+64f : -0xc.17b0bp-8f : inexact-ok
+= tan upward flt-32 0x2p+64f : -0xc.17b0bp-8f : inexact-ok
+= tan downward dbl-64 0x2p+64 : -0xc.17b0bfdb2b808p-8 : inexact-ok
+= tan tonearest dbl-64 0x2p+64 : -0xc.17b0bfdb2b808p-8 : inexact-ok
+= tan towardzero dbl-64 0x2p+64 : -0xc.17b0bfdb2b8p-8 : inexact-ok
+= tan upward dbl-64 0x2p+64 : -0xc.17b0bfdb2b8p-8 : inexact-ok
+= tan downward ldbl-96-intel 0x2p+64L : -0xc.17b0bfdb2b8061fp-8L : inexact-ok
+= tan tonearest ldbl-96-intel 0x2p+64L : -0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan towardzero ldbl-96-intel 0x2p+64L : -0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan upward ldbl-96-intel 0x2p+64L : -0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan downward ldbl-96-m68k 0x2p+64L : -0xc.17b0bfdb2b8061fp-8L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x2p+64L : -0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x2p+64L : -0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan upward ldbl-96-m68k 0x2p+64L : -0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan downward ldbl-128 0x2p+64L : -0xc.17b0bfdb2b8061e7b11d50087308p-8L : inexact-ok
+= tan tonearest ldbl-128 0x2p+64L : -0xc.17b0bfdb2b8061e7b11d50087308p-8L : inexact-ok
+= tan towardzero ldbl-128 0x2p+64L : -0xc.17b0bfdb2b8061e7b11d500873p-8L : inexact-ok
+= tan upward ldbl-128 0x2p+64L : -0xc.17b0bfdb2b8061e7b11d500873p-8L : inexact-ok
+= tan downward ldbl-128ibm 0x2p+64L : -0xc.17b0bfdb2b8061e7b11d500874p-8L : inexact-ok
+= tan tonearest ldbl-128ibm 0x2p+64L : -0xc.17b0bfdb2b8061e7b11d500874p-8L : inexact-ok
+= tan towardzero ldbl-128ibm 0x2p+64L : -0xc.17b0bfdb2b8061e7b11d50087p-8L : inexact-ok
+= tan upward ldbl-128ibm 0x2p+64L : -0xc.17b0bfdb2b8061e7b11d50087p-8L : inexact-ok
+tan -0x1p65
+= tan downward flt-32 -0x2p+64f : 0xc.17b0bp-8f : inexact-ok
+= tan tonearest flt-32 -0x2p+64f : 0xc.17b0cp-8f : inexact-ok
+= tan towardzero flt-32 -0x2p+64f : 0xc.17b0bp-8f : inexact-ok
+= tan upward flt-32 -0x2p+64f : 0xc.17b0cp-8f : inexact-ok
+= tan downward dbl-64 -0x2p+64 : 0xc.17b0bfdb2b8p-8 : inexact-ok
+= tan tonearest dbl-64 -0x2p+64 : 0xc.17b0bfdb2b808p-8 : inexact-ok
+= tan towardzero dbl-64 -0x2p+64 : 0xc.17b0bfdb2b8p-8 : inexact-ok
+= tan upward dbl-64 -0x2p+64 : 0xc.17b0bfdb2b808p-8 : inexact-ok
+= tan downward ldbl-96-intel -0x2p+64L : 0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan tonearest ldbl-96-intel -0x2p+64L : 0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan towardzero ldbl-96-intel -0x2p+64L : 0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan upward ldbl-96-intel -0x2p+64L : 0xc.17b0bfdb2b8061fp-8L : inexact-ok
+= tan downward ldbl-96-m68k -0x2p+64L : 0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan tonearest ldbl-96-m68k -0x2p+64L : 0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan towardzero ldbl-96-m68k -0x2p+64L : 0xc.17b0bfdb2b8061ep-8L : inexact-ok
+= tan upward ldbl-96-m68k -0x2p+64L : 0xc.17b0bfdb2b8061fp-8L : inexact-ok
+= tan downward ldbl-128 -0x2p+64L : 0xc.17b0bfdb2b8061e7b11d50087308p-8L : inexact-ok
+= tan tonearest ldbl-128 -0x2p+64L : 0xc.17b0bfdb2b8061e7b11d50087308p-8L : inexact-ok
+= tan towardzero ldbl-128 -0x2p+64L : 0xc.17b0bfdb2b8061e7b11d50087308p-8L : inexact-ok
+= tan upward ldbl-128 -0x2p+64L : 0xc.17b0bfdb2b8061e7b11d5008731p-8L : inexact-ok
+= tan downward ldbl-128ibm -0x2p+64L : 0xc.17b0bfdb2b8061e7b11d50087p-8L : inexact-ok
+= tan tonearest ldbl-128ibm -0x2p+64L : 0xc.17b0bfdb2b8061e7b11d500874p-8L : inexact-ok
+= tan towardzero ldbl-128ibm -0x2p+64L : 0xc.17b0bfdb2b8061e7b11d50087p-8L : inexact-ok
+= tan upward ldbl-128ibm -0x2p+64L : 0xc.17b0bfdb2b8061e7b11d500874p-8L : inexact-ok
+tan 0xc.9p-4
+= tan downward flt-32 0xc.9p-4f : 0xf.fe04cp-4f : inexact-ok
+= tan tonearest flt-32 0xc.9p-4f : 0xf.fe04dp-4f : inexact-ok
+= tan towardzero flt-32 0xc.9p-4f : 0xf.fe04cp-4f : inexact-ok
+= tan upward flt-32 0xc.9p-4f : 0xf.fe04dp-4f : inexact-ok
+= tan downward dbl-64 0xc.9p-4 : 0xf.fe04cb247202p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.9p-4 : 0xf.fe04cb247202p-4 : inexact-ok
+= tan towardzero dbl-64 0xc.9p-4 : 0xf.fe04cb247202p-4 : inexact-ok
+= tan upward dbl-64 0xc.9p-4 : 0xf.fe04cb2472028p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.9p-4L : 0xf.fe04cb2472021f1p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.9p-4L : 0xf.fe04cb2472021f2p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.9p-4L : 0xf.fe04cb2472021f1p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.9p-4L : 0xf.fe04cb2472021f2p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.9p-4L : 0xf.fe04cb2472021f1p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.9p-4L : 0xf.fe04cb2472021f2p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.9p-4L : 0xf.fe04cb2472021f1p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.9p-4L : 0xf.fe04cb2472021f2p-4L : inexact-ok
+= tan downward ldbl-128 0xc.9p-4L : 0xf.fe04cb2472021f1945ff358e1fa8p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.9p-4L : 0xf.fe04cb2472021f1945ff358e1fa8p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.9p-4L : 0xf.fe04cb2472021f1945ff358e1fa8p-4L : inexact-ok
+= tan upward ldbl-128 0xc.9p-4L : 0xf.fe04cb2472021f1945ff358e1fbp-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.9p-4L : 0xf.fe04cb2472021f1945ff358e1cp-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.9p-4L : 0xf.fe04cb2472021f1945ff358e2p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.9p-4L : 0xf.fe04cb2472021f1945ff358e1cp-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.9p-4L : 0xf.fe04cb2472021f1945ff358e2p-4L : inexact-ok
+tan 0xc.908p-4
+= tan downward flt-32 0xc.908p-4f : 0xf.ff04bp-4f : inexact-ok
+= tan tonearest flt-32 0xc.908p-4f : 0xf.ff04bp-4f : inexact-ok
+= tan towardzero flt-32 0xc.908p-4f : 0xf.ff04bp-4f : inexact-ok
+= tan upward flt-32 0xc.908p-4f : 0xf.ff04cp-4f : inexact-ok
+= tan downward dbl-64 0xc.908p-4 : 0xf.ff04b37174f68p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.908p-4 : 0xf.ff04b37174f7p-4 : inexact-ok
+= tan towardzero dbl-64 0xc.908p-4 : 0xf.ff04b37174f68p-4 : inexact-ok
+= tan upward dbl-64 0xc.908p-4 : 0xf.ff04b37174f7p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.908p-4L : 0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.908p-4L : 0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.908p-4L : 0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.908p-4L : 0xf.ff04b37174f6f36p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.908p-4L : 0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.908p-4L : 0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.908p-4L : 0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.908p-4L : 0xf.ff04b37174f6f36p-4L : inexact-ok
+= tan downward ldbl-128 0xc.908p-4L : 0xf.ff04b37174f6f3528b2b1b69f988p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.908p-4L : 0xf.ff04b37174f6f3528b2b1b69f988p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.908p-4L : 0xf.ff04b37174f6f3528b2b1b69f988p-4L : inexact-ok
+= tan upward ldbl-128 0xc.908p-4L : 0xf.ff04b37174f6f3528b2b1b69f99p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.908p-4L : 0xf.ff04b37174f6f3528b2b1b69f8p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.908p-4L : 0xf.ff04b37174f6f3528b2b1b69f8p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.908p-4L : 0xf.ff04b37174f6f3528b2b1b69f8p-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.908p-4L : 0xf.ff04b37174f6f3528b2b1b69fcp-4L : inexact-ok
+tan 0xc.90cp-4
+= tan downward flt-32 0xc.90cp-4f : 0xf.ff84ap-4f : inexact-ok
+= tan tonearest flt-32 0xc.90cp-4f : 0xf.ff84bp-4f : inexact-ok
+= tan towardzero flt-32 0xc.90cp-4f : 0xf.ff84ap-4f : inexact-ok
+= tan upward flt-32 0xc.90cp-4f : 0xf.ff84bp-4f : inexact-ok
+= tan downward dbl-64 0xc.90cp-4 : 0xf.ff84ad971a07p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.90cp-4 : 0xf.ff84ad971a078p-4 : inexact-ok
+= tan towardzero dbl-64 0xc.90cp-4 : 0xf.ff84ad971a07p-4 : inexact-ok
+= tan upward dbl-64 0xc.90cp-4 : 0xf.ff84ad971a078p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90cp-4L : 0xf.ff84ad971a07663p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90cp-4L : 0xf.ff84ad971a07664p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90cp-4L : 0xf.ff84ad971a07663p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90cp-4L : 0xf.ff84ad971a07664p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90cp-4L : 0xf.ff84ad971a07663p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90cp-4L : 0xf.ff84ad971a07664p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90cp-4L : 0xf.ff84ad971a07663p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90cp-4L : 0xf.ff84ad971a07664p-4L : inexact-ok
+= tan downward ldbl-128 0xc.90cp-4L : 0xf.ff84ad971a07663e3871b57341ep-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90cp-4L : 0xf.ff84ad971a07663e3871b57341ep-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90cp-4L : 0xf.ff84ad971a07663e3871b57341ep-4L : inexact-ok
+= tan upward ldbl-128 0xc.90cp-4L : 0xf.ff84ad971a07663e3871b57341e8p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90cp-4L : 0xf.ff84ad971a07663e3871b5734p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90cp-4L : 0xf.ff84ad971a07663e3871b5734p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90cp-4L : 0xf.ff84ad971a07663e3871b5734p-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90cp-4L : 0xf.ff84ad971a07663e3871b57344p-4L : inexact-ok
+tan 0xc.90ep-4
+= tan downward flt-32 0xc.90ep-4f : 0xf.ffc4ap-4f : inexact-ok
+= tan tonearest flt-32 0xc.90ep-4f : 0xf.ffc4bp-4f : inexact-ok
+= tan towardzero flt-32 0xc.90ep-4f : 0xf.ffc4ap-4f : inexact-ok
+= tan upward flt-32 0xc.90ep-4f : 0xf.ffc4bp-4f : inexact-ok
+= tan downward dbl-64 0xc.90ep-4 : 0xf.ffc4ac29d171p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.90ep-4 : 0xf.ffc4ac29d171p-4 : inexact-ok
+= tan towardzero dbl-64 0xc.90ep-4 : 0xf.ffc4ac29d171p-4 : inexact-ok
+= tan upward dbl-64 0xc.90ep-4 : 0xf.ffc4ac29d1718p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90ep-4L : 0xf.ffc4ac29d1711cbp-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90ep-4L : 0xf.ffc4ac29d1711ccp-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90ep-4L : 0xf.ffc4ac29d1711cbp-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90ep-4L : 0xf.ffc4ac29d1711ccp-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90ep-4L : 0xf.ffc4ac29d1711cbp-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90ep-4L : 0xf.ffc4ac29d1711ccp-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90ep-4L : 0xf.ffc4ac29d1711cbp-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90ep-4L : 0xf.ffc4ac29d1711ccp-4L : inexact-ok
+= tan downward ldbl-128 0xc.90ep-4L : 0xf.ffc4ac29d1711cbfd2ecbfc18d58p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90ep-4L : 0xf.ffc4ac29d1711cbfd2ecbfc18d6p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90ep-4L : 0xf.ffc4ac29d1711cbfd2ecbfc18d58p-4L : inexact-ok
+= tan upward ldbl-128 0xc.90ep-4L : 0xf.ffc4ac29d1711cbfd2ecbfc18d6p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90ep-4L : 0xf.ffc4ac29d1711cbfd2ecbfc18cp-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90ep-4L : 0xf.ffc4ac29d1711cbfd2ecbfc18cp-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90ep-4L : 0xf.ffc4ac29d1711cbfd2ecbfc18cp-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90ep-4L : 0xf.ffc4ac29d1711cbfd2ecbfc19p-4L : inexact-ok
+tan 0xc.90fp-4
+= tan downward flt-32 0xc.90fp-4f : 0xf.ffe4ap-4f : inexact-ok
+= tan tonearest flt-32 0xc.90fp-4f : 0xf.ffe4bp-4f : inexact-ok
+= tan towardzero flt-32 0xc.90fp-4f : 0xf.ffe4ap-4f : inexact-ok
+= tan upward flt-32 0xc.90fp-4f : 0xf.ffe4bp-4f : inexact-ok
+= tan downward dbl-64 0xc.90fp-4 : 0xf.ffe4abd329dep-4 : inexact-ok
+= tan tonearest dbl-64 0xc.90fp-4 : 0xf.ffe4abd329dep-4 : inexact-ok
+= tan towardzero dbl-64 0xc.90fp-4 : 0xf.ffe4abd329dep-4 : inexact-ok
+= tan upward dbl-64 0xc.90fp-4 : 0xf.ffe4abd329de8p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fp-4L : 0xf.ffe4abd329de183p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fp-4L : 0xf.ffe4abd329de183p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fp-4L : 0xf.ffe4abd329de183p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fp-4L : 0xf.ffe4abd329de184p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fp-4L : 0xf.ffe4abd329de183p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fp-4L : 0xf.ffe4abd329de183p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fp-4L : 0xf.ffe4abd329de183p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fp-4L : 0xf.ffe4abd329de184p-4L : inexact-ok
+= tan downward ldbl-128 0xc.90fp-4L : 0xf.ffe4abd329de1834a397d6e46a48p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fp-4L : 0xf.ffe4abd329de1834a397d6e46a5p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fp-4L : 0xf.ffe4abd329de1834a397d6e46a48p-4L : inexact-ok
+= tan upward ldbl-128 0xc.90fp-4L : 0xf.ffe4abd329de1834a397d6e46a5p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fp-4L : 0xf.ffe4abd329de1834a397d6e468p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fp-4L : 0xf.ffe4abd329de1834a397d6e46cp-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fp-4L : 0xf.ffe4abd329de1834a397d6e468p-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fp-4L : 0xf.ffe4abd329de1834a397d6e46cp-4L : inexact-ok
+tan 0xc.90f8p-4
+= tan downward flt-32 0xc.90f8p-4f : 0xf.fff4ap-4f : inexact-ok
+= tan tonearest flt-32 0xc.90f8p-4f : 0xf.fff4bp-4f : inexact-ok
+= tan towardzero flt-32 0xc.90f8p-4f : 0xf.fff4ap-4f : inexact-ok
+= tan upward flt-32 0xc.90f8p-4f : 0xf.fff4bp-4f : inexact-ok
+= tan downward dbl-64 0xc.90f8p-4 : 0xf.fff4abbfd5b28p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.90f8p-4 : 0xf.fff4abbfd5b28p-4 : inexact-ok
+= tan towardzero dbl-64 0xc.90f8p-4 : 0xf.fff4abbfd5b28p-4 : inexact-ok
+= tan upward dbl-64 0xc.90f8p-4 : 0xf.fff4abbfd5b3p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90f8p-4L : 0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90f8p-4L : 0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90f8p-4L : 0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90f8p-4L : 0xf.fff4abbfd5b29a4p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90f8p-4L : 0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90f8p-4L : 0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90f8p-4L : 0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90f8p-4L : 0xf.fff4abbfd5b29a4p-4L : inexact-ok
+= tan downward ldbl-128 0xc.90f8p-4L : 0xf.fff4abbfd5b29a33e190809aa1cp-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90f8p-4L : 0xf.fff4abbfd5b29a33e190809aa1cp-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90f8p-4L : 0xf.fff4abbfd5b29a33e190809aa1cp-4L : inexact-ok
+= tan upward ldbl-128 0xc.90f8p-4L : 0xf.fff4abbfd5b29a33e190809aa1c8p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90f8p-4L : 0xf.fff4abbfd5b29a33e190809aap-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90f8p-4L : 0xf.fff4abbfd5b29a33e190809aap-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90f8p-4L : 0xf.fff4abbfd5b29a33e190809aap-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90f8p-4L : 0xf.fff4abbfd5b29a33e190809aa4p-4L : inexact-ok
+tan 0xc.90fcp-4
+= tan downward flt-32 0xc.90fcp-4f : 0xf.fffcap-4f : inexact-ok
+= tan tonearest flt-32 0xc.90fcp-4f : 0xf.fffcbp-4f : inexact-ok
+= tan towardzero flt-32 0xc.90fcp-4f : 0xf.fffcap-4f : inexact-ok
+= tan upward flt-32 0xc.90fcp-4f : 0xf.fffcbp-4f : inexact-ok
+= tan downward dbl-64 0xc.90fcp-4 : 0xf.fffcabbc2b92p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.90fcp-4 : 0xf.fffcabbc2b928p-4 : inexact-ok
+= tan towardzero dbl-64 0xc.90fcp-4 : 0xf.fffcabbc2b92p-4 : inexact-ok
+= tan upward dbl-64 0xc.90fcp-4 : 0xf.fffcabbc2b928p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fcp-4L : 0xf.fffcabbc2b925cp-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fcp-4L : 0xf.fffcabbc2b925c1p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fcp-4L : 0xf.fffcabbc2b925cp-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fcp-4L : 0xf.fffcabbc2b925c1p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fcp-4L : 0xf.fffcabbc2b925cp-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fcp-4L : 0xf.fffcabbc2b925c1p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fcp-4L : 0xf.fffcabbc2b925cp-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fcp-4L : 0xf.fffcabbc2b925c1p-4L : inexact-ok
+= tan downward ldbl-128 0xc.90fcp-4L : 0xf.fffcabbc2b925c0d4e40f079838p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fcp-4L : 0xf.fffcabbc2b925c0d4e40f079838p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fcp-4L : 0xf.fffcabbc2b925c0d4e40f079838p-4L : inexact-ok
+= tan upward ldbl-128 0xc.90fcp-4L : 0xf.fffcabbc2b925c0d4e40f0798388p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fcp-4L : 0xf.fffcabbc2b925c0d4e40f0798p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fcp-4L : 0xf.fffcabbc2b925c0d4e40f07984p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fcp-4L : 0xf.fffcabbc2b925c0d4e40f0798p-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fcp-4L : 0xf.fffcabbc2b925c0d4e40f07984p-4L : inexact-ok
+tan 0xc.90fdp-4
+= tan downward flt-32 0xc.90fdp-4f : 0xf.fffeap-4f : inexact-ok
+= tan tonearest flt-32 0xc.90fdp-4f : 0xf.fffebp-4f : inexact-ok
+= tan towardzero flt-32 0xc.90fdp-4f : 0xf.fffeap-4f : inexact-ok
+= tan upward flt-32 0xc.90fdp-4f : 0xf.fffebp-4f : inexact-ok
+= tan downward dbl-64 0xc.90fdp-4 : 0xf.fffeabbbe1098p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.90fdp-4 : 0xf.fffeabbbe10ap-4 : inexact-ok
+= tan towardzero dbl-64 0xc.90fdp-4 : 0xf.fffeabbbe1098p-4 : inexact-ok
+= tan upward dbl-64 0xc.90fdp-4 : 0xf.fffeabbbe10ap-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fdp-4L : 0xf.fffeabbbe109e1ep-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fdp-4L : 0xf.fffeabbbe109e1fp-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fdp-4L : 0xf.fffeabbbe109e1ep-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fdp-4L : 0xf.fffeabbbe109e1fp-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fdp-4L : 0xf.fffeabbbe109e1ep-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fdp-4L : 0xf.fffeabbbe109e1fp-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fdp-4L : 0xf.fffeabbbe109e1ep-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fdp-4L : 0xf.fffeabbbe109e1fp-4L : inexact-ok
+= tan downward ldbl-128 0xc.90fdp-4L : 0xf.fffeabbbe109e1ee8991b9d3ba3p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdp-4L : 0xf.fffeabbbe109e1ee8991b9d3ba38p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdp-4L : 0xf.fffeabbbe109e1ee8991b9d3ba3p-4L : inexact-ok
+= tan upward ldbl-128 0xc.90fdp-4L : 0xf.fffeabbbe109e1ee8991b9d3ba38p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdp-4L : 0xf.fffeabbbe109e1ee8991b9d3b8p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdp-4L : 0xf.fffeabbbe109e1ee8991b9d3bcp-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdp-4L : 0xf.fffeabbbe109e1ee8991b9d3b8p-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdp-4L : 0xf.fffeabbbe109e1ee8991b9d3bcp-4L : inexact-ok
+tan 0xc.90fd8p-4
+= tan downward flt-32 0xc.90fd8p-4f : 0xf.ffffap-4f : inexact-ok
+= tan tonearest flt-32 0xc.90fd8p-4f : 0xf.ffffbp-4f : inexact-ok
+= tan towardzero flt-32 0xc.90fd8p-4f : 0xf.ffffap-4f : inexact-ok
+= tan upward flt-32 0xc.90fd8p-4f : 0xf.ffffbp-4f : inexact-ok
+= tan downward dbl-64 0xc.90fd8p-4 : 0xf.ffffabbbd3c58p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.90fd8p-4 : 0xf.ffffabbbd3c58p-4 : inexact-ok
+= tan towardzero dbl-64 0xc.90fd8p-4 : 0xf.ffffabbbd3c58p-4 : inexact-ok
+= tan upward dbl-64 0xc.90fd8p-4 : 0xf.ffffabbbd3c6p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fd8p-4L : 0xf.ffffabbbd3c59ffp-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fd8p-4L : 0xf.ffffabbbd3c59ffp-4L : inexact-ok
+= tan downward ldbl-128 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fe25b70006f7cbp-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fe25b70006f7cbp-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fe25b70006f7cbp-4L : inexact-ok
+= tan upward ldbl-128 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fe25b70006f7cb8p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fe25b70006f7cp-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fe25b70006f7cp-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fe25b70006f7cp-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fd8p-4L : 0xf.ffffabbbd3c59fe25b70006f8p-4L : inexact-ok
+tan 0xc.90fdap-4
+= tan downward flt-32 0xc.90fdap-4f : 0xf.ffffep-4f : inexact-ok
+= tan tonearest flt-32 0xc.90fdap-4f : 0xf.fffffp-4f : inexact-ok
+= tan towardzero flt-32 0xc.90fdap-4f : 0xf.ffffep-4f : inexact-ok
+= tan upward flt-32 0xc.90fdap-4f : 0xf.fffffp-4f : inexact-ok
+= tan downward dbl-64 0xc.90fdap-4 : 0xf.ffffebbbd2f48p-4 : inexact-ok
+= tan tonearest dbl-64 0xc.90fdap-4 : 0xf.ffffebbbd2f48p-4 : inexact-ok
+= tan towardzero dbl-64 0xc.90fdap-4 : 0xf.ffffebbbd2f48p-4 : inexact-ok
+= tan upward dbl-64 0xc.90fdap-4 : 0xf.ffffebbbd2f5p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fdap-4L : 0xf.ffffebbbd2f48f4p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fdap-4L : 0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fdap-4L : 0xf.ffffebbbd2f48f4p-4L : inexact-ok
+= tan downward ldbl-128 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc0468p-4L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc0468p-4L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc0468p-4L : inexact-ok
+= tan upward ldbl-128 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc047p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc04p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc04p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc04p-4L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdap-4L : 0xf.ffffebbbd2f48f30fa9c07dc08p-4L : inexact-ok
+tan 0xc.ap-4
+= tan downward flt-32 0xc.ap-4f : 0x1.01e20ep+0f : inexact-ok
+= tan tonearest flt-32 0xc.ap-4f : 0x1.01e21p+0f : inexact-ok
+= tan towardzero flt-32 0xc.ap-4f : 0x1.01e20ep+0f : inexact-ok
+= tan upward flt-32 0xc.ap-4f : 0x1.01e21p+0f : inexact-ok
+= tan downward dbl-64 0xc.ap-4 : 0x1.01e20f7e06e4bp+0 : inexact-ok
+= tan tonearest dbl-64 0xc.ap-4 : 0x1.01e20f7e06e4bp+0 : inexact-ok
+= tan towardzero dbl-64 0xc.ap-4 : 0x1.01e20f7e06e4bp+0 : inexact-ok
+= tan upward dbl-64 0xc.ap-4 : 0x1.01e20f7e06e4cp+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.ap-4L : 0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.ap-4L : 0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.ap-4L : 0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.ap-4L : 0x1.01e20f7e06e4b408p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.ap-4L : 0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.ap-4L : 0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.ap-4L : 0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.ap-4L : 0x1.01e20f7e06e4b408p+0L : inexact-ok
+= tan downward ldbl-128 0xc.ap-4L : 0x1.01e20f7e06e4b4069f6fd6809128p+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.ap-4L : 0x1.01e20f7e06e4b4069f6fd6809128p+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.ap-4L : 0x1.01e20f7e06e4b4069f6fd6809128p+0L : inexact-ok
+= tan upward ldbl-128 0xc.ap-4L : 0x1.01e20f7e06e4b4069f6fd6809129p+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.ap-4L : 0x1.01e20f7e06e4b4069f6fd68091p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.ap-4L : 0x1.01e20f7e06e4b4069f6fd68091p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.ap-4L : 0x1.01e20f7e06e4b4069f6fd68091p+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.ap-4L : 0x1.01e20f7e06e4b4069f6fd680918p+0L : inexact-ok
+tan 0xc.98p-4
+= tan downward flt-32 0xc.98p-4f : 0x1.00e0acp+0f : inexact-ok
+= tan tonearest flt-32 0xc.98p-4f : 0x1.00e0aep+0f : inexact-ok
+= tan towardzero flt-32 0xc.98p-4f : 0x1.00e0acp+0f : inexact-ok
+= tan upward flt-32 0xc.98p-4f : 0x1.00e0aep+0f : inexact-ok
+= tan downward dbl-64 0xc.98p-4 : 0x1.00e0ad36afd0dp+0 : inexact-ok
+= tan tonearest dbl-64 0xc.98p-4 : 0x1.00e0ad36afd0ep+0 : inexact-ok
+= tan towardzero dbl-64 0xc.98p-4 : 0x1.00e0ad36afd0dp+0 : inexact-ok
+= tan upward dbl-64 0xc.98p-4 : 0x1.00e0ad36afd0ep+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.98p-4L : 0x1.00e0ad36afd0da34p+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.98p-4L : 0x1.00e0ad36afd0da36p+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.98p-4L : 0x1.00e0ad36afd0da34p+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.98p-4L : 0x1.00e0ad36afd0da36p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.98p-4L : 0x1.00e0ad36afd0da34p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.98p-4L : 0x1.00e0ad36afd0da36p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.98p-4L : 0x1.00e0ad36afd0da34p+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.98p-4L : 0x1.00e0ad36afd0da36p+0L : inexact-ok
+= tan downward ldbl-128 0xc.98p-4L : 0x1.00e0ad36afd0da359300dc8485abp+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.98p-4L : 0x1.00e0ad36afd0da359300dc8485abp+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.98p-4L : 0x1.00e0ad36afd0da359300dc8485abp+0L : inexact-ok
+= tan upward ldbl-128 0xc.98p-4L : 0x1.00e0ad36afd0da359300dc8485acp+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.98p-4L : 0x1.00e0ad36afd0da359300dc84858p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.98p-4L : 0x1.00e0ad36afd0da359300dc84858p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.98p-4L : 0x1.00e0ad36afd0da359300dc84858p+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.98p-4L : 0x1.00e0ad36afd0da359300dc8486p+0L : inexact-ok
+tan 0xc.94p-4
+= tan downward flt-32 0xc.94p-4f : 0x1.00605cp+0f : inexact-ok
+= tan tonearest flt-32 0xc.94p-4f : 0x1.00605cp+0f : inexact-ok
+= tan towardzero flt-32 0xc.94p-4f : 0x1.00605cp+0f : inexact-ok
+= tan upward flt-32 0xc.94p-4f : 0x1.00605ep+0f : inexact-ok
+= tan downward dbl-64 0xc.94p-4 : 0x1.00605cdc5a1a1p+0 : inexact-ok
+= tan tonearest dbl-64 0xc.94p-4 : 0x1.00605cdc5a1a2p+0 : inexact-ok
+= tan towardzero dbl-64 0xc.94p-4 : 0x1.00605cdc5a1a1p+0 : inexact-ok
+= tan upward dbl-64 0xc.94p-4 : 0x1.00605cdc5a1a2p+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.94p-4L : 0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.94p-4L : 0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.94p-4L : 0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.94p-4L : 0x1.00605cdc5a1a1c2p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.94p-4L : 0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.94p-4L : 0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.94p-4L : 0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.94p-4L : 0x1.00605cdc5a1a1c2p+0L : inexact-ok
+= tan downward ldbl-128 0xc.94p-4L : 0x1.00605cdc5a1a1c1e7a2e9db9f98ap+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.94p-4L : 0x1.00605cdc5a1a1c1e7a2e9db9f98ap+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.94p-4L : 0x1.00605cdc5a1a1c1e7a2e9db9f98ap+0L : inexact-ok
+= tan upward ldbl-128 0xc.94p-4L : 0x1.00605cdc5a1a1c1e7a2e9db9f98bp+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.94p-4L : 0x1.00605cdc5a1a1c1e7a2e9db9f98p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.94p-4L : 0x1.00605cdc5a1a1c1e7a2e9db9f98p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.94p-4L : 0x1.00605cdc5a1a1c1e7a2e9db9f98p+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.94p-4L : 0x1.00605cdc5a1a1c1e7a2e9db9fap+0L : inexact-ok
+tan 0xc.92p-4
+= tan downward flt-32 0xc.92p-4f : 0x1.00204cp+0f : inexact-ok
+= tan tonearest flt-32 0xc.92p-4f : 0x1.00204cp+0f : inexact-ok
+= tan towardzero flt-32 0xc.92p-4f : 0x1.00204cp+0f : inexact-ok
+= tan upward flt-32 0xc.92p-4f : 0x1.00204ep+0f : inexact-ok
+= tan downward dbl-64 0xc.92p-4 : 0x1.00204cc54b6a7p+0 : inexact-ok
+= tan tonearest dbl-64 0xc.92p-4 : 0x1.00204cc54b6a7p+0 : inexact-ok
+= tan towardzero dbl-64 0xc.92p-4 : 0x1.00204cc54b6a7p+0 : inexact-ok
+= tan upward dbl-64 0xc.92p-4 : 0x1.00204cc54b6a8p+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.92p-4L : 0x1.00204cc54b6a75fap+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.92p-4L : 0x1.00204cc54b6a75fcp+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.92p-4L : 0x1.00204cc54b6a75fap+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.92p-4L : 0x1.00204cc54b6a75fcp+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.92p-4L : 0x1.00204cc54b6a75fap+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.92p-4L : 0x1.00204cc54b6a75fcp+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.92p-4L : 0x1.00204cc54b6a75fap+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.92p-4L : 0x1.00204cc54b6a75fcp+0L : inexact-ok
+= tan downward ldbl-128 0xc.92p-4L : 0x1.00204cc54b6a75fbaa11ed8cf1c4p+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.92p-4L : 0x1.00204cc54b6a75fbaa11ed8cf1c4p+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.92p-4L : 0x1.00204cc54b6a75fbaa11ed8cf1c4p+0L : inexact-ok
+= tan upward ldbl-128 0xc.92p-4L : 0x1.00204cc54b6a75fbaa11ed8cf1c5p+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.92p-4L : 0x1.00204cc54b6a75fbaa11ed8cf18p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.92p-4L : 0x1.00204cc54b6a75fbaa11ed8cf2p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.92p-4L : 0x1.00204cc54b6a75fbaa11ed8cf18p+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.92p-4L : 0x1.00204cc54b6a75fbaa11ed8cf2p+0L : inexact-ok
+tan 0xc.91p-4
+= tan downward flt-32 0xc.91p-4f : 0x1.00004ap+0f : inexact-ok
+= tan tonearest flt-32 0xc.91p-4f : 0x1.00004ap+0f : inexact-ok
+= tan towardzero flt-32 0xc.91p-4f : 0x1.00004ap+0f : inexact-ok
+= tan upward flt-32 0xc.91p-4f : 0x1.00004cp+0f : inexact-ok
+= tan downward dbl-64 0xc.91p-4 : 0x1.00004abbc817p+0 : inexact-ok
+= tan tonearest dbl-64 0xc.91p-4 : 0x1.00004abbc817p+0 : inexact-ok
+= tan towardzero dbl-64 0xc.91p-4 : 0x1.00004abbc817p+0 : inexact-ok
+= tan upward dbl-64 0xc.91p-4 : 0x1.00004abbc8171p+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.91p-4L : 0x1.00004abbc817073cp+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.91p-4L : 0x1.00004abbc817073cp+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.91p-4L : 0x1.00004abbc817073cp+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.91p-4L : 0x1.00004abbc817073ep+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.91p-4L : 0x1.00004abbc817073cp+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.91p-4L : 0x1.00004abbc817073cp+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.91p-4L : 0x1.00004abbc817073cp+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.91p-4L : 0x1.00004abbc817073ep+0L : inexact-ok
+= tan downward ldbl-128 0xc.91p-4L : 0x1.00004abbc817073c57de4e2c7227p+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.91p-4L : 0x1.00004abbc817073c57de4e2c7227p+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.91p-4L : 0x1.00004abbc817073c57de4e2c7227p+0L : inexact-ok
+= tan upward ldbl-128 0xc.91p-4L : 0x1.00004abbc817073c57de4e2c7228p+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.91p-4L : 0x1.00004abbc817073c57de4e2c72p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.91p-4L : 0x1.00004abbc817073c57de4e2c72p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.91p-4L : 0x1.00004abbc817073c57de4e2c72p+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.91p-4L : 0x1.00004abbc817073c57de4e2c728p+0L : inexact-ok
+tan 0xc.90fep-4
+= tan downward flt-32 0xc.90fep-4f : 0x1.00000ap+0f : inexact-ok
+= tan tonearest flt-32 0xc.90fep-4f : 0x1.00000ap+0f : inexact-ok
+= tan towardzero flt-32 0xc.90fep-4f : 0x1.00000ap+0f : inexact-ok
+= tan upward flt-32 0xc.90fep-4f : 0x1.00000cp+0f : inexact-ok
+= tan downward dbl-64 0xc.90fep-4 : 0x1.00000abbbd681p+0 : inexact-ok
+= tan tonearest dbl-64 0xc.90fep-4 : 0x1.00000abbbd681p+0 : inexact-ok
+= tan towardzero dbl-64 0xc.90fep-4 : 0x1.00000abbbd681p+0 : inexact-ok
+= tan upward dbl-64 0xc.90fep-4 : 0x1.00000abbbd682p+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fep-4L : 0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fep-4L : 0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fep-4L : 0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fep-4L : 0x1.00000abbbd6815d4p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fep-4L : 0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fep-4L : 0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fep-4L : 0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fep-4L : 0x1.00000abbbd6815d4p+0L : inexact-ok
+= tan downward ldbl-128 0xc.90fep-4L : 0x1.00000abbbd6815d2da4ff16a8a5ep+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fep-4L : 0x1.00000abbbd6815d2da4ff16a8a5fp+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fep-4L : 0x1.00000abbbd6815d2da4ff16a8a5ep+0L : inexact-ok
+= tan upward ldbl-128 0xc.90fep-4L : 0x1.00000abbbd6815d2da4ff16a8a5fp+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fep-4L : 0x1.00000abbbd6815d2da4ff16a8ap+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fep-4L : 0x1.00000abbbd6815d2da4ff16a8a8p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fep-4L : 0x1.00000abbbd6815d2da4ff16a8ap+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fep-4L : 0x1.00000abbbd6815d2da4ff16a8a8p+0L : inexact-ok
+tan 0xc.90fdcp-4
+= tan downward flt-32 0xc.90fdcp-4f : 0x1.000002p+0f : inexact-ok
+= tan tonearest flt-32 0xc.90fdcp-4f : 0x1.000002p+0f : inexact-ok
+= tan towardzero flt-32 0xc.90fdcp-4f : 0x1.000002p+0f : inexact-ok
+= tan upward flt-32 0xc.90fdcp-4f : 0x1.000004p+0f : inexact-ok
+= tan downward dbl-64 0xc.90fdcp-4 : 0x1.000002bbbd323p+0 : inexact-ok
+= tan tonearest dbl-64 0xc.90fdcp-4 : 0x1.000002bbbd323p+0 : inexact-ok
+= tan towardzero dbl-64 0xc.90fdcp-4 : 0x1.000002bbbd323p+0 : inexact-ok
+= tan upward dbl-64 0xc.90fdcp-4 : 0x1.000002bbbd324p+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fdcp-4L : 0x1.000002bbbd3237e6p+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fdcp-4L : 0x1.000002bbbd3237e8p+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fdcp-4L : 0x1.000002bbbd3237e6p+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fdcp-4L : 0x1.000002bbbd3237e8p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fdcp-4L : 0x1.000002bbbd3237e6p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fdcp-4L : 0x1.000002bbbd3237e8p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fdcp-4L : 0x1.000002bbbd3237e6p+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fdcp-4L : 0x1.000002bbbd3237e8p+0L : inexact-ok
+= tan downward ldbl-128 0xc.90fdcp-4L : 0x1.000002bbbd3237e7d114276ed329p+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdcp-4L : 0x1.000002bbbd3237e7d114276ed32ap+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdcp-4L : 0x1.000002bbbd3237e7d114276ed329p+0L : inexact-ok
+= tan upward ldbl-128 0xc.90fdcp-4L : 0x1.000002bbbd3237e7d114276ed32ap+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdcp-4L : 0x1.000002bbbd3237e7d114276ed3p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdcp-4L : 0x1.000002bbbd3237e7d114276ed3p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdcp-4L : 0x1.000002bbbd3237e7d114276ed3p+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdcp-4L : 0x1.000002bbbd3237e7d114276ed38p+0L : inexact-ok
+tan 0xc.90fdbp-4
+= tan downward flt-32 0xc.90fdbp-4f : 0x1p+0f : inexact-ok
+= tan tonearest flt-32 0xc.90fdbp-4f : 0x1p+0f : inexact-ok
+= tan towardzero flt-32 0xc.90fdbp-4f : 0x1p+0f : inexact-ok
+= tan upward flt-32 0xc.90fdbp-4f : 0x1.000002p+0f : inexact-ok
+= tan downward dbl-64 0xc.90fdbp-4 : 0x1.000000bbbd2ecp+0 : inexact-ok
+= tan tonearest dbl-64 0xc.90fdbp-4 : 0x1.000000bbbd2ecp+0 : inexact-ok
+= tan towardzero dbl-64 0xc.90fdbp-4 : 0x1.000000bbbd2ecp+0 : inexact-ok
+= tan upward dbl-64 0xc.90fdbp-4 : 0x1.000000bbbd2edp+0 : inexact-ok
+= tan downward ldbl-96-intel 0xc.90fdbp-4L : 0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0xc.90fdbp-4L : 0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0xc.90fdbp-4L : 0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan upward ldbl-96-intel 0xc.90fdbp-4L : 0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan downward ldbl-96-m68k 0xc.90fdbp-4L : 0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xc.90fdbp-4L : 0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xc.90fdbp-4L : 0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan upward ldbl-96-m68k 0xc.90fdbp-4L : 0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan downward ldbl-128 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff3655a3p+0L : inexact-ok
+= tan tonearest ldbl-128 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff3655a3p+0L : inexact-ok
+= tan towardzero ldbl-128 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff3655a3p+0L : inexact-ok
+= tan upward ldbl-128 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff3655a4p+0L : inexact-ok
+= tan downward ldbl-128ibm 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff36558p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff36558p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff36558p+0L : inexact-ok
+= tan upward ldbl-128ibm 0xc.90fdbp-4L : 0x1.000000bbbd2ec06d6d6fff3656p+0L : inexact-ok
+tan -0xc.9p-4
+= tan downward flt-32 -0xc.9p-4f : -0xf.fe04dp-4f : inexact-ok
+= tan tonearest flt-32 -0xc.9p-4f : -0xf.fe04dp-4f : inexact-ok
+= tan towardzero flt-32 -0xc.9p-4f : -0xf.fe04cp-4f : inexact-ok
+= tan upward flt-32 -0xc.9p-4f : -0xf.fe04cp-4f : inexact-ok
+= tan downward dbl-64 -0xc.9p-4 : -0xf.fe04cb2472028p-4 : inexact-ok
+= tan tonearest dbl-64 -0xc.9p-4 : -0xf.fe04cb247202p-4 : inexact-ok
+= tan towardzero dbl-64 -0xc.9p-4 : -0xf.fe04cb247202p-4 : inexact-ok
+= tan upward dbl-64 -0xc.9p-4 : -0xf.fe04cb247202p-4 : inexact-ok
+= tan downward ldbl-96-intel -0xc.9p-4L : -0xf.fe04cb2472021f2p-4L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.9p-4L : -0xf.fe04cb2472021f2p-4L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.9p-4L : -0xf.fe04cb2472021f1p-4L : inexact-ok
+= tan upward ldbl-96-intel -0xc.9p-4L : -0xf.fe04cb2472021f1p-4L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.9p-4L : -0xf.fe04cb2472021f2p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.9p-4L : -0xf.fe04cb2472021f2p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.9p-4L : -0xf.fe04cb2472021f1p-4L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.9p-4L : -0xf.fe04cb2472021f1p-4L : inexact-ok
+= tan downward ldbl-128 -0xc.9p-4L : -0xf.fe04cb2472021f1945ff358e1fbp-4L : inexact-ok
+= tan tonearest ldbl-128 -0xc.9p-4L : -0xf.fe04cb2472021f1945ff358e1fa8p-4L : inexact-ok
+= tan towardzero ldbl-128 -0xc.9p-4L : -0xf.fe04cb2472021f1945ff358e1fa8p-4L : inexact-ok
+= tan upward ldbl-128 -0xc.9p-4L : -0xf.fe04cb2472021f1945ff358e1fa8p-4L : inexact-ok
+= tan downward ldbl-128ibm -0xc.9p-4L : -0xf.fe04cb2472021f1945ff358e2p-4L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.9p-4L : -0xf.fe04cb2472021f1945ff358e2p-4L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.9p-4L : -0xf.fe04cb2472021f1945ff358e1cp-4L : inexact-ok
+= tan upward ldbl-128ibm -0xc.9p-4L : -0xf.fe04cb2472021f1945ff358e1cp-4L : inexact-ok
+tan -0xc.908p-4
+= tan downward flt-32 -0xc.908p-4f : -0xf.ff04cp-4f : inexact-ok
+= tan tonearest flt-32 -0xc.908p-4f : -0xf.ff04bp-4f : inexact-ok
+= tan towardzero flt-32 -0xc.908p-4f : -0xf.ff04bp-4f : inexact-ok
+= tan upward flt-32 -0xc.908p-4f : -0xf.ff04bp-4f : inexact-ok
+= tan downward dbl-64 -0xc.908p-4 : -0xf.ff04b37174f7p-4 : inexact-ok
+= tan tonearest dbl-64 -0xc.908p-4 : -0xf.ff04b37174f7p-4 : inexact-ok
+= tan towardzero dbl-64 -0xc.908p-4 : -0xf.ff04b37174f68p-4 : inexact-ok
+= tan upward dbl-64 -0xc.908p-4 : -0xf.ff04b37174f68p-4 : inexact-ok
+= tan downward ldbl-96-intel -0xc.908p-4L : -0xf.ff04b37174f6f36p-4L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.908p-4L : -0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.908p-4L : -0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan upward ldbl-96-intel -0xc.908p-4L : -0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.908p-4L : -0xf.ff04b37174f6f36p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.908p-4L : -0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.908p-4L : -0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.908p-4L : -0xf.ff04b37174f6f35p-4L : inexact-ok
+= tan downward ldbl-128 -0xc.908p-4L : -0xf.ff04b37174f6f3528b2b1b69f99p-4L : inexact-ok
+= tan tonearest ldbl-128 -0xc.908p-4L : -0xf.ff04b37174f6f3528b2b1b69f988p-4L : inexact-ok
+= tan towardzero ldbl-128 -0xc.908p-4L : -0xf.ff04b37174f6f3528b2b1b69f988p-4L : inexact-ok
+= tan upward ldbl-128 -0xc.908p-4L : -0xf.ff04b37174f6f3528b2b1b69f988p-4L : inexact-ok
+= tan downward ldbl-128ibm -0xc.908p-4L : -0xf.ff04b37174f6f3528b2b1b69fcp-4L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.908p-4L : -0xf.ff04b37174f6f3528b2b1b69f8p-4L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.908p-4L : -0xf.ff04b37174f6f3528b2b1b69f8p-4L : inexact-ok
+= tan upward ldbl-128ibm -0xc.908p-4L : -0xf.ff04b37174f6f3528b2b1b69f8p-4L : inexact-ok
+tan -0xc.90cp-4
+= tan downward flt-32 -0xc.90cp-4f : -0xf.ff84bp-4f : inexact-ok
+= tan tonearest flt-32 -0xc.90cp-4f : -0xf.ff84bp-4f : inexact-ok
+= tan towardzero flt-32 -0xc.90cp-4f : -0xf.ff84ap-4f : inexact-ok
+= tan upward flt-32 -0xc.90cp-4f : -0xf.ff84ap-4f : inexact-ok
+= tan downward dbl-64 -0xc.90cp-4 : -0xf.ff84ad971a078p-4 : inexact-ok
+= tan tonearest dbl-64 -0xc.90cp-4 : -0xf.ff84ad971a078p-4 : inexact-ok
+= tan towardzero dbl-64 -0xc.90cp-4 : -0xf.ff84ad971a07p-4 : inexact-ok
+= tan upward dbl-64 -0xc.90cp-4 : -0xf.ff84ad971a07p-4 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90cp-4L : -0xf.ff84ad971a07664p-4L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90cp-4L : -0xf.ff84ad971a07664p-4L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90cp-4L : -0xf.ff84ad971a07663p-4L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90cp-4L : -0xf.ff84ad971a07663p-4L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90cp-4L : -0xf.ff84ad971a07664p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90cp-4L : -0xf.ff84ad971a07664p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90cp-4L : -0xf.ff84ad971a07663p-4L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90cp-4L : -0xf.ff84ad971a07663p-4L : inexact-ok
+= tan downward ldbl-128 -0xc.90cp-4L : -0xf.ff84ad971a07663e3871b57341ep-4L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90cp-4L : -0xf.ff84ad971a07663e3871b57341ep-4L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90cp-4L : -0xf.ff84ad971a07663e3871b57341d8p-4L : inexact-ok
+= tan upward ldbl-128 -0xc.90cp-4L : -0xf.ff84ad971a07663e3871b57341d8p-4L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90cp-4L : -0xf.ff84ad971a07663e3871b57344p-4L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90cp-4L : -0xf.ff84ad971a07663e3871b5734p-4L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90cp-4L : -0xf.ff84ad971a07663e3871b5734p-4L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90cp-4L : -0xf.ff84ad971a07663e3871b5734p-4L : inexact-ok
+tan -0xc.90ep-4
+= tan downward flt-32 -0xc.90ep-4f : -0xf.ffc4bp-4f : inexact-ok
+= tan tonearest flt-32 -0xc.90ep-4f : -0xf.ffc4bp-4f : inexact-ok
+= tan towardzero flt-32 -0xc.90ep-4f : -0xf.ffc4ap-4f : inexact-ok
+= tan upward flt-32 -0xc.90ep-4f : -0xf.ffc4ap-4f : inexact-ok
+= tan downward dbl-64 -0xc.90ep-4 : -0xf.ffc4ac29d1718p-4 : inexact-ok
+= tan tonearest dbl-64 -0xc.90ep-4 : -0xf.ffc4ac29d171p-4 : inexact-ok
+= tan towardzero dbl-64 -0xc.90ep-4 : -0xf.ffc4ac29d171p-4 : inexact-ok
+= tan upward dbl-64 -0xc.90ep-4 : -0xf.ffc4ac29d171p-4 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90ep-4L : -0xf.ffc4ac29d1711ccp-4L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90ep-4L : -0xf.ffc4ac29d1711ccp-4L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90ep-4L : -0xf.ffc4ac29d1711cbp-4L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90ep-4L : -0xf.ffc4ac29d1711cbp-4L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90ep-4L : -0xf.ffc4ac29d1711ccp-4L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90ep-4L : -0xf.ffc4ac29d1711ccp-4L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90ep-4L : -0xf.ffc4ac29d1711cbp-4L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90ep-4L : -0xf.ffc4ac29d1711cbp-4L : inexact-ok
+= tan downward ldbl-128 -0xc.90ep-4L : -0xf.ffc4ac29d1711cbfd2ecbfc18d6p-4L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90ep-4L : -0xf.ffc4ac29d1711cbfd2ecbfc18d6p-4L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90ep-4L : -0xf.ffc4ac29d1711cbfd2ecbfc18d58p-4L : inexact-ok
+= tan upward ldbl-128 -0xc.90ep-4L : -0xf.ffc4ac29d1711cbfd2ecbfc18d58p-4L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90ep-4L : -0xf.ffc4ac29d1711cbfd2ecbfc19p-4L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90ep-4L : -0xf.ffc4ac29d1711cbfd2ecbfc18cp-4L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90ep-4L : -0xf.ffc4ac29d1711cbfd2ecbfc18cp-4L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90ep-4L : -0xf.ffc4ac29d1711cbfd2ecbfc18cp-4L : inexact-ok
+tan -0xc.90fp-4
+= tan downward flt-32 -0xc.90fp-4f : -0xf.ffe4bp-4f : inexact-ok
+= tan tonearest flt-32 -0xc.90fp-4f : -0xf.ffe4bp-4f : inexact-ok
+= tan towardzero flt-32 -0xc.90fp-4f : -0xf.ffe4ap-4f : inexact-ok
+= tan upward flt-32 -0xc.90fp-4f : -0xf.ffe4ap-4f : inexact-ok
+= tan downward dbl-64 -0xc.90fp-4 : -0xf.ffe4abd329de8p-4 : inexact-ok
+= tan tonearest dbl-64 -0xc.90fp-4 : -0xf.ffe4abd329dep-4 : inexact-ok
+= tan towardzero dbl-64 -0xc.90fp-4 : -0xf.ffe4abd329dep-4 : inexact-ok
+= tan upward dbl-64 -0xc.90fp-4 : -0xf.ffe4abd329dep-4 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90fp-4L : -0xf.ffe4abd329de184p-4L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90fp-4L : -0xf.ffe4abd329de183p-4L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90fp-4L : -0xf.ffe4abd329de183p-4L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90fp-4L : -0xf.ffe4abd329de183p-4L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90fp-4L : -0xf.ffe4abd329de184p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90fp-4L : -0xf.ffe4abd329de183p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90fp-4L : -0xf.ffe4abd329de183p-4L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90fp-4L : -0xf.ffe4abd329de183p-4L : inexact-ok
+= tan downward ldbl-128 -0xc.90fp-4L : -0xf.ffe4abd329de1834a397d6e46a5p-4L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90fp-4L : -0xf.ffe4abd329de1834a397d6e46a48p-4L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90fp-4L : -0xf.ffe4abd329de1834a397d6e46a48p-4L : inexact-ok
+= tan upward ldbl-128 -0xc.90fp-4L : -0xf.ffe4abd329de1834a397d6e46a48p-4L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90fp-4L : -0xf.ffe4abd329de1834a397d6e46cp-4L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90fp-4L : -0xf.ffe4abd329de1834a397d6e46cp-4L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90fp-4L : -0xf.ffe4abd329de1834a397d6e468p-4L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90fp-4L : -0xf.ffe4abd329de1834a397d6e468p-4L : inexact-ok
+tan -0xc.90f8p-4
+= tan downward flt-32 -0xc.90f8p-4f : -0xf.fff4bp-4f : inexact-ok
+= tan tonearest flt-32 -0xc.90f8p-4f : -0xf.fff4bp-4f : inexact-ok
+= tan towardzero flt-32 -0xc.90f8p-4f : -0xf.fff4ap-4f : inexact-ok
+= tan upward flt-32 -0xc.90f8p-4f : -0xf.fff4ap-4f : inexact-ok
+= tan downward dbl-64 -0xc.90f8p-4 : -0xf.fff4abbfd5b3p-4 : inexact-ok
+= tan tonearest dbl-64 -0xc.90f8p-4 : -0xf.fff4abbfd5b28p-4 : inexact-ok
+= tan towardzero dbl-64 -0xc.90f8p-4 : -0xf.fff4abbfd5b28p-4 : inexact-ok
+= tan upward dbl-64 -0xc.90f8p-4 : -0xf.fff4abbfd5b28p-4 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90f8p-4L : -0xf.fff4abbfd5b29a4p-4L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90f8p-4L : -0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90f8p-4L : -0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90f8p-4L : -0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90f8p-4L : -0xf.fff4abbfd5b29a4p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90f8p-4L : -0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90f8p-4L : -0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90f8p-4L : -0xf.fff4abbfd5b29a3p-4L : inexact-ok
+= tan downward ldbl-128 -0xc.90f8p-4L : -0xf.fff4abbfd5b29a33e190809aa1cp-4L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90f8p-4L : -0xf.fff4abbfd5b29a33e190809aa1cp-4L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90f8p-4L : -0xf.fff4abbfd5b29a33e190809aa1b8p-4L : inexact-ok
+= tan upward ldbl-128 -0xc.90f8p-4L : -0xf.fff4abbfd5b29a33e190809aa1b8p-4L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90f8p-4L : -0xf.fff4abbfd5b29a33e190809aa4p-4L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90f8p-4L : -0xf.fff4abbfd5b29a33e190809aap-4L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90f8p-4L : -0xf.fff4abbfd5b29a33e190809aap-4L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90f8p-4L : -0xf.fff4abbfd5b29a33e190809aap-4L : inexact-ok
+tan -0xc.90fcp-4
+= tan downward flt-32 -0xc.90fcp-4f : -0xf.fffcbp-4f : inexact-ok
+= tan tonearest flt-32 -0xc.90fcp-4f : -0xf.fffcbp-4f : inexact-ok
+= tan towardzero flt-32 -0xc.90fcp-4f : -0xf.fffcap-4f : inexact-ok
+= tan upward flt-32 -0xc.90fcp-4f : -0xf.fffcap-4f : inexact-ok
+= tan downward dbl-64 -0xc.90fcp-4 : -0xf.fffcabbc2b928p-4 : inexact-ok
+= tan tonearest dbl-64 -0xc.90fcp-4 : -0xf.fffcabbc2b928p-4 : inexact-ok
+= tan towardzero dbl-64 -0xc.90fcp-4 : -0xf.fffcabbc2b92p-4 : inexact-ok
+= tan upward dbl-64 -0xc.90fcp-4 : -0xf.fffcabbc2b92p-4 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90fcp-4L : -0xf.fffcabbc2b925c1p-4L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90fcp-4L : -0xf.fffcabbc2b925c1p-4L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90fcp-4L : -0xf.fffcabbc2b925cp-4L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90fcp-4L : -0xf.fffcabbc2b925cp-4L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90fcp-4L : -0xf.fffcabbc2b925c1p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90fcp-4L : -0xf.fffcabbc2b925c1p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90fcp-4L : -0xf.fffcabbc2b925cp-4L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90fcp-4L : -0xf.fffcabbc2b925cp-4L : inexact-ok
+= tan downward ldbl-128 -0xc.90fcp-4L : -0xf.fffcabbc2b925c0d4e40f079838p-4L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90fcp-4L : -0xf.fffcabbc2b925c0d4e40f079838p-4L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90fcp-4L : -0xf.fffcabbc2b925c0d4e40f0798378p-4L : inexact-ok
+= tan upward ldbl-128 -0xc.90fcp-4L : -0xf.fffcabbc2b925c0d4e40f0798378p-4L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90fcp-4L : -0xf.fffcabbc2b925c0d4e40f07984p-4L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90fcp-4L : -0xf.fffcabbc2b925c0d4e40f07984p-4L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90fcp-4L : -0xf.fffcabbc2b925c0d4e40f0798p-4L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90fcp-4L : -0xf.fffcabbc2b925c0d4e40f0798p-4L : inexact-ok
+tan -0xc.90fdp-4
+= tan downward flt-32 -0xc.90fdp-4f : -0xf.fffebp-4f : inexact-ok
+= tan tonearest flt-32 -0xc.90fdp-4f : -0xf.fffebp-4f : inexact-ok
+= tan towardzero flt-32 -0xc.90fdp-4f : -0xf.fffeap-4f : inexact-ok
+= tan upward flt-32 -0xc.90fdp-4f : -0xf.fffeap-4f : inexact-ok
+= tan downward dbl-64 -0xc.90fdp-4 : -0xf.fffeabbbe10ap-4 : inexact-ok
+= tan tonearest dbl-64 -0xc.90fdp-4 : -0xf.fffeabbbe10ap-4 : inexact-ok
+= tan towardzero dbl-64 -0xc.90fdp-4 : -0xf.fffeabbbe1098p-4 : inexact-ok
+= tan upward dbl-64 -0xc.90fdp-4 : -0xf.fffeabbbe1098p-4 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90fdp-4L : -0xf.fffeabbbe109e1fp-4L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90fdp-4L : -0xf.fffeabbbe109e1fp-4L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90fdp-4L : -0xf.fffeabbbe109e1ep-4L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90fdp-4L : -0xf.fffeabbbe109e1ep-4L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90fdp-4L : -0xf.fffeabbbe109e1fp-4L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90fdp-4L : -0xf.fffeabbbe109e1fp-4L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90fdp-4L : -0xf.fffeabbbe109e1ep-4L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90fdp-4L : -0xf.fffeabbbe109e1ep-4L : inexact-ok
+= tan downward ldbl-128 -0xc.90fdp-4L : -0xf.fffeabbbe109e1ee8991b9d3ba38p-4L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90fdp-4L : -0xf.fffeabbbe109e1ee8991b9d3ba3p-4L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90fdp-4L : -0xf.fffeabbbe109e1ee8991b9d3ba3p-4L : inexact-ok
+= tan upward ldbl-128 -0xc.90fdp-4L : -0xf.fffeabbbe109e1ee8991b9d3ba3p-4L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90fdp-4L : -0xf.fffeabbbe109e1ee8991b9d3bcp-4L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90fdp-4L : -0xf.fffeabbbe109e1ee8991b9d3bcp-4L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90fdp-4L : -0xf.fffeabbbe109e1ee8991b9d3b8p-4L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90fdp-4L : -0xf.fffeabbbe109e1ee8991b9d3b8p-4L : inexact-ok
+tan -0xc.90fd8p-4
+= tan downward flt-32 -0xc.90fd8p-4f : -0xf.ffffbp-4f : inexact-ok
+= tan tonearest flt-32 -0xc.90fd8p-4f : -0xf.ffffbp-4f : inexact-ok
+= tan towardzero flt-32 -0xc.90fd8p-4f : -0xf.ffffap-4f : inexact-ok
+= tan upward flt-32 -0xc.90fd8p-4f : -0xf.ffffap-4f : inexact-ok
+= tan downward dbl-64 -0xc.90fd8p-4 : -0xf.ffffabbbd3c6p-4 : inexact-ok
+= tan tonearest dbl-64 -0xc.90fd8p-4 : -0xf.ffffabbbd3c58p-4 : inexact-ok
+= tan towardzero dbl-64 -0xc.90fd8p-4 : -0xf.ffffabbbd3c58p-4 : inexact-ok
+= tan upward dbl-64 -0xc.90fd8p-4 : -0xf.ffffabbbd3c58p-4 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90fd8p-4L : -0xf.ffffabbbd3c59ffp-4L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90fd8p-4L : -0xf.ffffabbbd3c59ffp-4L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fep-4L : inexact-ok
+= tan downward ldbl-128 -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fe25b70006f7cbp-4L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fe25b70006f7cbp-4L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fe25b70006f7ca8p-4L : inexact-ok
+= tan upward ldbl-128 -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fe25b70006f7ca8p-4L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fe25b70006f8p-4L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fe25b70006f7cp-4L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fe25b70006f7cp-4L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90fd8p-4L : -0xf.ffffabbbd3c59fe25b70006f7cp-4L : inexact-ok
+tan -0xc.90fdap-4
+= tan downward flt-32 -0xc.90fdap-4f : -0xf.fffffp-4f : inexact-ok
+= tan tonearest flt-32 -0xc.90fdap-4f : -0xf.fffffp-4f : inexact-ok
+= tan towardzero flt-32 -0xc.90fdap-4f : -0xf.ffffep-4f : inexact-ok
+= tan upward flt-32 -0xc.90fdap-4f : -0xf.ffffep-4f : inexact-ok
+= tan downward dbl-64 -0xc.90fdap-4 : -0xf.ffffebbbd2f5p-4 : inexact-ok
+= tan tonearest dbl-64 -0xc.90fdap-4 : -0xf.ffffebbbd2f48p-4 : inexact-ok
+= tan towardzero dbl-64 -0xc.90fdap-4 : -0xf.ffffebbbd2f48p-4 : inexact-ok
+= tan upward dbl-64 -0xc.90fdap-4 : -0xf.ffffebbbd2f48p-4 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90fdap-4L : -0xf.ffffebbbd2f48f4p-4L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90fdap-4L : -0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90fdap-4L : -0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90fdap-4L : -0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90fdap-4L : -0xf.ffffebbbd2f48f4p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90fdap-4L : -0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90fdap-4L : -0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90fdap-4L : -0xf.ffffebbbd2f48f3p-4L : inexact-ok
+= tan downward ldbl-128 -0xc.90fdap-4L : -0xf.ffffebbbd2f48f30fa9c07dc0468p-4L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90fdap-4L : -0xf.ffffebbbd2f48f30fa9c07dc0468p-4L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90fdap-4L : -0xf.ffffebbbd2f48f30fa9c07dc046p-4L : inexact-ok
+= tan upward ldbl-128 -0xc.90fdap-4L : -0xf.ffffebbbd2f48f30fa9c07dc046p-4L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90fdap-4L : -0xf.ffffebbbd2f48f30fa9c07dc08p-4L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90fdap-4L : -0xf.ffffebbbd2f48f30fa9c07dc04p-4L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90fdap-4L : -0xf.ffffebbbd2f48f30fa9c07dc04p-4L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90fdap-4L : -0xf.ffffebbbd2f48f30fa9c07dc04p-4L : inexact-ok
+tan -0xc.ap-4
+= tan downward flt-32 -0xc.ap-4f : -0x1.01e21p+0f : inexact-ok
+= tan tonearest flt-32 -0xc.ap-4f : -0x1.01e21p+0f : inexact-ok
+= tan towardzero flt-32 -0xc.ap-4f : -0x1.01e20ep+0f : inexact-ok
+= tan upward flt-32 -0xc.ap-4f : -0x1.01e20ep+0f : inexact-ok
+= tan downward dbl-64 -0xc.ap-4 : -0x1.01e20f7e06e4cp+0 : inexact-ok
+= tan tonearest dbl-64 -0xc.ap-4 : -0x1.01e20f7e06e4bp+0 : inexact-ok
+= tan towardzero dbl-64 -0xc.ap-4 : -0x1.01e20f7e06e4bp+0 : inexact-ok
+= tan upward dbl-64 -0xc.ap-4 : -0x1.01e20f7e06e4bp+0 : inexact-ok
+= tan downward ldbl-96-intel -0xc.ap-4L : -0x1.01e20f7e06e4b408p+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.ap-4L : -0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.ap-4L : -0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan upward ldbl-96-intel -0xc.ap-4L : -0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.ap-4L : -0x1.01e20f7e06e4b408p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.ap-4L : -0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.ap-4L : -0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.ap-4L : -0x1.01e20f7e06e4b406p+0L : inexact-ok
+= tan downward ldbl-128 -0xc.ap-4L : -0x1.01e20f7e06e4b4069f6fd6809128p+0L : inexact-ok
+= tan tonearest ldbl-128 -0xc.ap-4L : -0x1.01e20f7e06e4b4069f6fd6809128p+0L : inexact-ok
+= tan towardzero ldbl-128 -0xc.ap-4L : -0x1.01e20f7e06e4b4069f6fd6809127p+0L : inexact-ok
+= tan upward ldbl-128 -0xc.ap-4L : -0x1.01e20f7e06e4b4069f6fd6809127p+0L : inexact-ok
+= tan downward ldbl-128ibm -0xc.ap-4L : -0x1.01e20f7e06e4b4069f6fd680918p+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.ap-4L : -0x1.01e20f7e06e4b4069f6fd68091p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.ap-4L : -0x1.01e20f7e06e4b4069f6fd68091p+0L : inexact-ok
+= tan upward ldbl-128ibm -0xc.ap-4L : -0x1.01e20f7e06e4b4069f6fd68091p+0L : inexact-ok
+tan -0xc.98p-4
+= tan downward flt-32 -0xc.98p-4f : -0x1.00e0aep+0f : inexact-ok
+= tan tonearest flt-32 -0xc.98p-4f : -0x1.00e0aep+0f : inexact-ok
+= tan towardzero flt-32 -0xc.98p-4f : -0x1.00e0acp+0f : inexact-ok
+= tan upward flt-32 -0xc.98p-4f : -0x1.00e0acp+0f : inexact-ok
+= tan downward dbl-64 -0xc.98p-4 : -0x1.00e0ad36afd0ep+0 : inexact-ok
+= tan tonearest dbl-64 -0xc.98p-4 : -0x1.00e0ad36afd0ep+0 : inexact-ok
+= tan towardzero dbl-64 -0xc.98p-4 : -0x1.00e0ad36afd0dp+0 : inexact-ok
+= tan upward dbl-64 -0xc.98p-4 : -0x1.00e0ad36afd0dp+0 : inexact-ok
+= tan downward ldbl-96-intel -0xc.98p-4L : -0x1.00e0ad36afd0da36p+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.98p-4L : -0x1.00e0ad36afd0da36p+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.98p-4L : -0x1.00e0ad36afd0da34p+0L : inexact-ok
+= tan upward ldbl-96-intel -0xc.98p-4L : -0x1.00e0ad36afd0da34p+0L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.98p-4L : -0x1.00e0ad36afd0da36p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.98p-4L : -0x1.00e0ad36afd0da36p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.98p-4L : -0x1.00e0ad36afd0da34p+0L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.98p-4L : -0x1.00e0ad36afd0da34p+0L : inexact-ok
+= tan downward ldbl-128 -0xc.98p-4L : -0x1.00e0ad36afd0da359300dc8485abp+0L : inexact-ok
+= tan tonearest ldbl-128 -0xc.98p-4L : -0x1.00e0ad36afd0da359300dc8485abp+0L : inexact-ok
+= tan towardzero ldbl-128 -0xc.98p-4L : -0x1.00e0ad36afd0da359300dc8485aap+0L : inexact-ok
+= tan upward ldbl-128 -0xc.98p-4L : -0x1.00e0ad36afd0da359300dc8485aap+0L : inexact-ok
+= tan downward ldbl-128ibm -0xc.98p-4L : -0x1.00e0ad36afd0da359300dc8486p+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.98p-4L : -0x1.00e0ad36afd0da359300dc84858p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.98p-4L : -0x1.00e0ad36afd0da359300dc84858p+0L : inexact-ok
+= tan upward ldbl-128ibm -0xc.98p-4L : -0x1.00e0ad36afd0da359300dc84858p+0L : inexact-ok
+tan -0xc.94p-4
+= tan downward flt-32 -0xc.94p-4f : -0x1.00605ep+0f : inexact-ok
+= tan tonearest flt-32 -0xc.94p-4f : -0x1.00605cp+0f : inexact-ok
+= tan towardzero flt-32 -0xc.94p-4f : -0x1.00605cp+0f : inexact-ok
+= tan upward flt-32 -0xc.94p-4f : -0x1.00605cp+0f : inexact-ok
+= tan downward dbl-64 -0xc.94p-4 : -0x1.00605cdc5a1a2p+0 : inexact-ok
+= tan tonearest dbl-64 -0xc.94p-4 : -0x1.00605cdc5a1a2p+0 : inexact-ok
+= tan towardzero dbl-64 -0xc.94p-4 : -0x1.00605cdc5a1a1p+0 : inexact-ok
+= tan upward dbl-64 -0xc.94p-4 : -0x1.00605cdc5a1a1p+0 : inexact-ok
+= tan downward ldbl-96-intel -0xc.94p-4L : -0x1.00605cdc5a1a1c2p+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.94p-4L : -0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.94p-4L : -0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan upward ldbl-96-intel -0xc.94p-4L : -0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.94p-4L : -0x1.00605cdc5a1a1c2p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.94p-4L : -0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.94p-4L : -0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.94p-4L : -0x1.00605cdc5a1a1c1ep+0L : inexact-ok
+= tan downward ldbl-128 -0xc.94p-4L : -0x1.00605cdc5a1a1c1e7a2e9db9f98bp+0L : inexact-ok
+= tan tonearest ldbl-128 -0xc.94p-4L : -0x1.00605cdc5a1a1c1e7a2e9db9f98ap+0L : inexact-ok
+= tan towardzero ldbl-128 -0xc.94p-4L : -0x1.00605cdc5a1a1c1e7a2e9db9f98ap+0L : inexact-ok
+= tan upward ldbl-128 -0xc.94p-4L : -0x1.00605cdc5a1a1c1e7a2e9db9f98ap+0L : inexact-ok
+= tan downward ldbl-128ibm -0xc.94p-4L : -0x1.00605cdc5a1a1c1e7a2e9db9fap+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.94p-4L : -0x1.00605cdc5a1a1c1e7a2e9db9f98p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.94p-4L : -0x1.00605cdc5a1a1c1e7a2e9db9f98p+0L : inexact-ok
+= tan upward ldbl-128ibm -0xc.94p-4L : -0x1.00605cdc5a1a1c1e7a2e9db9f98p+0L : inexact-ok
+tan -0xc.92p-4
+= tan downward flt-32 -0xc.92p-4f : -0x1.00204ep+0f : inexact-ok
+= tan tonearest flt-32 -0xc.92p-4f : -0x1.00204cp+0f : inexact-ok
+= tan towardzero flt-32 -0xc.92p-4f : -0x1.00204cp+0f : inexact-ok
+= tan upward flt-32 -0xc.92p-4f : -0x1.00204cp+0f : inexact-ok
+= tan downward dbl-64 -0xc.92p-4 : -0x1.00204cc54b6a8p+0 : inexact-ok
+= tan tonearest dbl-64 -0xc.92p-4 : -0x1.00204cc54b6a7p+0 : inexact-ok
+= tan towardzero dbl-64 -0xc.92p-4 : -0x1.00204cc54b6a7p+0 : inexact-ok
+= tan upward dbl-64 -0xc.92p-4 : -0x1.00204cc54b6a7p+0 : inexact-ok
+= tan downward ldbl-96-intel -0xc.92p-4L : -0x1.00204cc54b6a75fcp+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.92p-4L : -0x1.00204cc54b6a75fcp+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.92p-4L : -0x1.00204cc54b6a75fap+0L : inexact-ok
+= tan upward ldbl-96-intel -0xc.92p-4L : -0x1.00204cc54b6a75fap+0L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.92p-4L : -0x1.00204cc54b6a75fcp+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.92p-4L : -0x1.00204cc54b6a75fcp+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.92p-4L : -0x1.00204cc54b6a75fap+0L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.92p-4L : -0x1.00204cc54b6a75fap+0L : inexact-ok
+= tan downward ldbl-128 -0xc.92p-4L : -0x1.00204cc54b6a75fbaa11ed8cf1c5p+0L : inexact-ok
+= tan tonearest ldbl-128 -0xc.92p-4L : -0x1.00204cc54b6a75fbaa11ed8cf1c4p+0L : inexact-ok
+= tan towardzero ldbl-128 -0xc.92p-4L : -0x1.00204cc54b6a75fbaa11ed8cf1c4p+0L : inexact-ok
+= tan upward ldbl-128 -0xc.92p-4L : -0x1.00204cc54b6a75fbaa11ed8cf1c4p+0L : inexact-ok
+= tan downward ldbl-128ibm -0xc.92p-4L : -0x1.00204cc54b6a75fbaa11ed8cf2p+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.92p-4L : -0x1.00204cc54b6a75fbaa11ed8cf2p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.92p-4L : -0x1.00204cc54b6a75fbaa11ed8cf18p+0L : inexact-ok
+= tan upward ldbl-128ibm -0xc.92p-4L : -0x1.00204cc54b6a75fbaa11ed8cf18p+0L : inexact-ok
+tan -0xc.91p-4
+= tan downward flt-32 -0xc.91p-4f : -0x1.00004cp+0f : inexact-ok
+= tan tonearest flt-32 -0xc.91p-4f : -0x1.00004ap+0f : inexact-ok
+= tan towardzero flt-32 -0xc.91p-4f : -0x1.00004ap+0f : inexact-ok
+= tan upward flt-32 -0xc.91p-4f : -0x1.00004ap+0f : inexact-ok
+= tan downward dbl-64 -0xc.91p-4 : -0x1.00004abbc8171p+0 : inexact-ok
+= tan tonearest dbl-64 -0xc.91p-4 : -0x1.00004abbc817p+0 : inexact-ok
+= tan towardzero dbl-64 -0xc.91p-4 : -0x1.00004abbc817p+0 : inexact-ok
+= tan upward dbl-64 -0xc.91p-4 : -0x1.00004abbc817p+0 : inexact-ok
+= tan downward ldbl-96-intel -0xc.91p-4L : -0x1.00004abbc817073ep+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.91p-4L : -0x1.00004abbc817073cp+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.91p-4L : -0x1.00004abbc817073cp+0L : inexact-ok
+= tan upward ldbl-96-intel -0xc.91p-4L : -0x1.00004abbc817073cp+0L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.91p-4L : -0x1.00004abbc817073ep+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.91p-4L : -0x1.00004abbc817073cp+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.91p-4L : -0x1.00004abbc817073cp+0L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.91p-4L : -0x1.00004abbc817073cp+0L : inexact-ok
+= tan downward ldbl-128 -0xc.91p-4L : -0x1.00004abbc817073c57de4e2c7227p+0L : inexact-ok
+= tan tonearest ldbl-128 -0xc.91p-4L : -0x1.00004abbc817073c57de4e2c7227p+0L : inexact-ok
+= tan towardzero ldbl-128 -0xc.91p-4L : -0x1.00004abbc817073c57de4e2c7226p+0L : inexact-ok
+= tan upward ldbl-128 -0xc.91p-4L : -0x1.00004abbc817073c57de4e2c7226p+0L : inexact-ok
+= tan downward ldbl-128ibm -0xc.91p-4L : -0x1.00004abbc817073c57de4e2c728p+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.91p-4L : -0x1.00004abbc817073c57de4e2c72p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.91p-4L : -0x1.00004abbc817073c57de4e2c72p+0L : inexact-ok
+= tan upward ldbl-128ibm -0xc.91p-4L : -0x1.00004abbc817073c57de4e2c72p+0L : inexact-ok
+tan -0xc.90fep-4
+= tan downward flt-32 -0xc.90fep-4f : -0x1.00000cp+0f : inexact-ok
+= tan tonearest flt-32 -0xc.90fep-4f : -0x1.00000ap+0f : inexact-ok
+= tan towardzero flt-32 -0xc.90fep-4f : -0x1.00000ap+0f : inexact-ok
+= tan upward flt-32 -0xc.90fep-4f : -0x1.00000ap+0f : inexact-ok
+= tan downward dbl-64 -0xc.90fep-4 : -0x1.00000abbbd682p+0 : inexact-ok
+= tan tonearest dbl-64 -0xc.90fep-4 : -0x1.00000abbbd681p+0 : inexact-ok
+= tan towardzero dbl-64 -0xc.90fep-4 : -0x1.00000abbbd681p+0 : inexact-ok
+= tan upward dbl-64 -0xc.90fep-4 : -0x1.00000abbbd681p+0 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90fep-4L : -0x1.00000abbbd6815d4p+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90fep-4L : -0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90fep-4L : -0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90fep-4L : -0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90fep-4L : -0x1.00000abbbd6815d4p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90fep-4L : -0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90fep-4L : -0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90fep-4L : -0x1.00000abbbd6815d2p+0L : inexact-ok
+= tan downward ldbl-128 -0xc.90fep-4L : -0x1.00000abbbd6815d2da4ff16a8a5fp+0L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90fep-4L : -0x1.00000abbbd6815d2da4ff16a8a5fp+0L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90fep-4L : -0x1.00000abbbd6815d2da4ff16a8a5ep+0L : inexact-ok
+= tan upward ldbl-128 -0xc.90fep-4L : -0x1.00000abbbd6815d2da4ff16a8a5ep+0L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90fep-4L : -0x1.00000abbbd6815d2da4ff16a8a8p+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90fep-4L : -0x1.00000abbbd6815d2da4ff16a8a8p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90fep-4L : -0x1.00000abbbd6815d2da4ff16a8ap+0L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90fep-4L : -0x1.00000abbbd6815d2da4ff16a8ap+0L : inexact-ok
+tan -0xc.90fdcp-4
+= tan downward flt-32 -0xc.90fdcp-4f : -0x1.000004p+0f : inexact-ok
+= tan tonearest flt-32 -0xc.90fdcp-4f : -0x1.000002p+0f : inexact-ok
+= tan towardzero flt-32 -0xc.90fdcp-4f : -0x1.000002p+0f : inexact-ok
+= tan upward flt-32 -0xc.90fdcp-4f : -0x1.000002p+0f : inexact-ok
+= tan downward dbl-64 -0xc.90fdcp-4 : -0x1.000002bbbd324p+0 : inexact-ok
+= tan tonearest dbl-64 -0xc.90fdcp-4 : -0x1.000002bbbd323p+0 : inexact-ok
+= tan towardzero dbl-64 -0xc.90fdcp-4 : -0x1.000002bbbd323p+0 : inexact-ok
+= tan upward dbl-64 -0xc.90fdcp-4 : -0x1.000002bbbd323p+0 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90fdcp-4L : -0x1.000002bbbd3237e8p+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90fdcp-4L : -0x1.000002bbbd3237e8p+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90fdcp-4L : -0x1.000002bbbd3237e6p+0L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90fdcp-4L : -0x1.000002bbbd3237e6p+0L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90fdcp-4L : -0x1.000002bbbd3237e8p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90fdcp-4L : -0x1.000002bbbd3237e8p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90fdcp-4L : -0x1.000002bbbd3237e6p+0L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90fdcp-4L : -0x1.000002bbbd3237e6p+0L : inexact-ok
+= tan downward ldbl-128 -0xc.90fdcp-4L : -0x1.000002bbbd3237e7d114276ed32ap+0L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90fdcp-4L : -0x1.000002bbbd3237e7d114276ed329p+0L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90fdcp-4L : -0x1.000002bbbd3237e7d114276ed329p+0L : inexact-ok
+= tan upward ldbl-128 -0xc.90fdcp-4L : -0x1.000002bbbd3237e7d114276ed329p+0L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90fdcp-4L : -0x1.000002bbbd3237e7d114276ed38p+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90fdcp-4L : -0x1.000002bbbd3237e7d114276ed3p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90fdcp-4L : -0x1.000002bbbd3237e7d114276ed3p+0L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90fdcp-4L : -0x1.000002bbbd3237e7d114276ed3p+0L : inexact-ok
+tan -0xc.90fdbp-4
+= tan downward flt-32 -0xc.90fdbp-4f : -0x1.000002p+0f : inexact-ok
+= tan tonearest flt-32 -0xc.90fdbp-4f : -0x1p+0f : inexact-ok
+= tan towardzero flt-32 -0xc.90fdbp-4f : -0x1p+0f : inexact-ok
+= tan upward flt-32 -0xc.90fdbp-4f : -0x1p+0f : inexact-ok
+= tan downward dbl-64 -0xc.90fdbp-4 : -0x1.000000bbbd2edp+0 : inexact-ok
+= tan tonearest dbl-64 -0xc.90fdbp-4 : -0x1.000000bbbd2ecp+0 : inexact-ok
+= tan towardzero dbl-64 -0xc.90fdbp-4 : -0x1.000000bbbd2ecp+0 : inexact-ok
+= tan upward dbl-64 -0xc.90fdbp-4 : -0x1.000000bbbd2ecp+0 : inexact-ok
+= tan downward ldbl-96-intel -0xc.90fdbp-4L : -0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan tonearest ldbl-96-intel -0xc.90fdbp-4L : -0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan towardzero ldbl-96-intel -0xc.90fdbp-4L : -0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan upward ldbl-96-intel -0xc.90fdbp-4L : -0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan downward ldbl-96-m68k -0xc.90fdbp-4L : -0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan tonearest ldbl-96-m68k -0xc.90fdbp-4L : -0x1.000000bbbd2ec06ep+0L : inexact-ok
+= tan towardzero ldbl-96-m68k -0xc.90fdbp-4L : -0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan upward ldbl-96-m68k -0xc.90fdbp-4L : -0x1.000000bbbd2ec06cp+0L : inexact-ok
+= tan downward ldbl-128 -0xc.90fdbp-4L : -0x1.000000bbbd2ec06d6d6fff3655a4p+0L : inexact-ok
+= tan tonearest ldbl-128 -0xc.90fdbp-4L : -0x1.000000bbbd2ec06d6d6fff3655a3p+0L : inexact-ok
+= tan towardzero ldbl-128 -0xc.90fdbp-4L : -0x1.000000bbbd2ec06d6d6fff3655a3p+0L : inexact-ok
+= tan upward ldbl-128 -0xc.90fdbp-4L : -0x1.000000bbbd2ec06d6d6fff3655a3p+0L : inexact-ok
+= tan downward ldbl-128ibm -0xc.90fdbp-4L : -0x1.000000bbbd2ec06d6d6fff3656p+0L : inexact-ok
+= tan tonearest ldbl-128ibm -0xc.90fdbp-4L : -0x1.000000bbbd2ec06d6d6fff36558p+0L : inexact-ok
+= tan towardzero ldbl-128ibm -0xc.90fdbp-4L : -0x1.000000bbbd2ec06d6d6fff36558p+0L : inexact-ok
+= tan upward ldbl-128ibm -0xc.90fdbp-4L : -0x1.000000bbbd2ec06d6d6fff36558p+0L : inexact-ok
+tan 1e22
+= tan downward flt-32 0x2.1e19e4p+72f : -0x5.08eea8p-4f : inexact-ok
+= tan tonearest flt-32 0x2.1e19e4p+72f : -0x5.08eea8p-4f : inexact-ok
+= tan towardzero flt-32 0x2.1e19e4p+72f : -0x5.08eeap-4f : inexact-ok
+= tan upward flt-32 0x2.1e19e4p+72f : -0x5.08eeap-4f : inexact-ok
+= tan downward dbl-64 0x2.1e19e4p+72 : -0x5.08eea5bdd992cp-4 : inexact-ok
+= tan tonearest dbl-64 0x2.1e19e4p+72 : -0x5.08eea5bdd992cp-4 : inexact-ok
+= tan towardzero dbl-64 0x2.1e19e4p+72 : -0x5.08eea5bdd9928p-4 : inexact-ok
+= tan upward dbl-64 0x2.1e19e4p+72 : -0x5.08eea5bdd9928p-4 : inexact-ok
+= tan downward ldbl-96-intel 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0d8p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0dp-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0dp-4L : inexact-ok
+= tan upward ldbl-96-intel 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0dp-4L : inexact-ok
+= tan downward ldbl-96-m68k 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0d8p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0dp-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0dp-4L : inexact-ok
+= tan upward ldbl-96-m68k 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0dp-4L : inexact-ok
+= tan downward ldbl-128 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0d19c9356cc5168p-4L : inexact-ok
+= tan tonearest ldbl-128 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0d19c9356cc5168p-4L : inexact-ok
+= tan towardzero ldbl-128 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0d19c9356cc5164p-4L : inexact-ok
+= tan upward ldbl-128 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0d19c9356cc5164p-4L : inexact-ok
+= tan downward ldbl-128ibm 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0d19c9356cc52p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0d19c9356cc52p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0d19c9356cc5p-4L : inexact-ok
+= tan upward ldbl-128ibm 0x2.1e19e4p+72L : -0x5.08eea5bdd992a0d19c9356cc5p-4L : inexact-ok
+= tan downward flt-32 0x2.1e19ep+72f : -0x1.14bdfcp+0f : inexact-ok
+= tan tonearest flt-32 0x2.1e19ep+72f : -0x1.14bdfcp+0f : inexact-ok
+= tan towardzero flt-32 0x2.1e19ep+72f : -0x1.14bdfap+0f : inexact-ok
+= tan upward flt-32 0x2.1e19ep+72f : -0x1.14bdfap+0f : inexact-ok
+= tan downward dbl-64 0x2.1e19ep+72 : -0x1.14bdfb7ac8b93p+0 : inexact-ok
+= tan tonearest dbl-64 0x2.1e19ep+72 : -0x1.14bdfb7ac8b93p+0 : inexact-ok
+= tan towardzero dbl-64 0x2.1e19ep+72 : -0x1.14bdfb7ac8b92p+0 : inexact-ok
+= tan upward dbl-64 0x2.1e19ep+72 : -0x1.14bdfb7ac8b92p+0 : inexact-ok
+= tan downward ldbl-96-intel 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928bcp+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928bap+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928bap+0L : inexact-ok
+= tan upward ldbl-96-intel 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928bap+0L : inexact-ok
+= tan downward ldbl-96-m68k 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928bcp+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928bap+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928bap+0L : inexact-ok
+= tan upward ldbl-96-m68k 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928bap+0L : inexact-ok
+= tan downward ldbl-128 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928ba2c1adb3ceb44p+0L : inexact-ok
+= tan tonearest ldbl-128 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928ba2c1adb3ceb44p+0L : inexact-ok
+= tan towardzero ldbl-128 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928ba2c1adb3ceb43p+0L : inexact-ok
+= tan upward ldbl-128 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928ba2c1adb3ceb43p+0L : inexact-ok
+= tan downward ldbl-128ibm 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928ba2c1adb3ceb8p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928ba2c1adb3ceb8p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928ba2c1adb3cebp+0L : inexact-ok
+= tan upward ldbl-128ibm 0x2.1e19ep+72L : -0x1.14bdfb7ac8b928ba2c1adb3cebp+0L : inexact-ok
+= tan downward dbl-64 0x2.1e19e0c9bab24p+72 : -0x1.a0f79c1b6b258p+0 : inexact-ok
+= tan tonearest dbl-64 0x2.1e19e0c9bab24p+72 : -0x1.a0f79c1b6b257p+0 : inexact-ok
+= tan towardzero dbl-64 0x2.1e19e0c9bab24p+72 : -0x1.a0f79c1b6b257p+0 : inexact-ok
+= tan upward dbl-64 0x2.1e19e0c9bab24p+72 : -0x1.a0f79c1b6b257p+0 : inexact-ok
+= tan downward ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b25774ap+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b25774ap+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257748p+0L : inexact-ok
+= tan upward ldbl-96-intel 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257748p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b25774ap+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b25774ap+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257748p+0L : inexact-ok
+= tan upward ldbl-96-m68k 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257748p+0L : inexact-ok
+= tan downward ldbl-128 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257749e043d5cdf75p+0L : inexact-ok
+= tan tonearest ldbl-128 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257749e043d5cdf75p+0L : inexact-ok
+= tan towardzero ldbl-128 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257749e043d5cdf74fp+0L : inexact-ok
+= tan upward ldbl-128 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257749e043d5cdf74fp+0L : inexact-ok
+= tan downward ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257749e043d5cdf78p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257749e043d5cdf78p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257749e043d5cdf7p+0L : inexact-ok
+= tan upward ldbl-128ibm 0x2.1e19e0c9bab24p+72L : -0x1.a0f79c1b6b257749e043d5cdf7p+0L : inexact-ok
+tan 0x1p1023
+= tan downward flt-32 0xf.fffffp+124f : -0x9.c9ecbp-4f : inexact-ok
+= tan tonearest flt-32 0xf.fffffp+124f : -0x9.c9ecap-4f : inexact-ok
+= tan towardzero flt-32 0xf.fffffp+124f : -0x9.c9ecap-4f : inexact-ok
+= tan upward flt-32 0xf.fffffp+124f : -0x9.c9ecap-4f : inexact-ok
+= tan downward dbl-64 0xf.fffffp+124 : -0x9.c9eca5a4c461p-4 : inexact-ok
+= tan tonearest dbl-64 0xf.fffffp+124 : -0x9.c9eca5a4c461p-4 : inexact-ok
+= tan towardzero dbl-64 0xf.fffffp+124 : -0x9.c9eca5a4c4608p-4 : inexact-ok
+= tan upward dbl-64 0xf.fffffp+124 : -0x9.c9eca5a4c4608p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xf.fffffp+124L : -0x9.c9eca5a4c460f93p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xf.fffffp+124L : -0x9.c9eca5a4c460f93p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xf.fffffp+124L : -0x9.c9eca5a4c460f92p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xf.fffffp+124L : -0x9.c9eca5a4c460f92p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xf.fffffp+124L : -0x9.c9eca5a4c460f93p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x9.c9eca5a4c460f93p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x9.c9eca5a4c460f92p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xf.fffffp+124L : -0x9.c9eca5a4c460f92p-4L : inexact-ok
+= tan downward ldbl-128 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbecf5p-4L : inexact-ok
+= tan tonearest ldbl-128 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbecf5p-4L : inexact-ok
+= tan towardzero ldbl-128 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbecf48p-4L : inexact-ok
+= tan upward ldbl-128 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbecf48p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbedp-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbedp-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbeccp-4L : inexact-ok
+= tan upward ldbl-128ibm 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbeccp-4L : inexact-ok
+= tan downward dbl-64 0x8p+1020 : -0xa.e735a6068152p-4 : inexact-ok
+= tan tonearest dbl-64 0x8p+1020 : -0xa.e735a60681518p-4 : inexact-ok
+= tan towardzero dbl-64 0x8p+1020 : -0xa.e735a60681518p-4 : inexact-ok
+= tan upward dbl-64 0x8p+1020 : -0xa.e735a60681518p-4 : inexact-ok
+= tan downward ldbl-96-intel 0x8p+1020L : -0xa.e735a6068151a9ep-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0x8p+1020L : -0xa.e735a6068151a9ep-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0x8p+1020L : -0xa.e735a6068151a9dp-4L : inexact-ok
+= tan upward ldbl-96-intel 0x8p+1020L : -0xa.e735a6068151a9dp-4L : inexact-ok
+= tan downward ldbl-96-m68k 0x8p+1020L : -0xa.e735a6068151a9ep-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x8p+1020L : -0xa.e735a6068151a9ep-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x8p+1020L : -0xa.e735a6068151a9dp-4L : inexact-ok
+= tan upward ldbl-96-m68k 0x8p+1020L : -0xa.e735a6068151a9dp-4L : inexact-ok
+= tan downward ldbl-128 0x8p+1020L : -0xa.e735a6068151a9df841fc42ab17p-4L : inexact-ok
+= tan tonearest ldbl-128 0x8p+1020L : -0xa.e735a6068151a9df841fc42ab17p-4L : inexact-ok
+= tan towardzero ldbl-128 0x8p+1020L : -0xa.e735a6068151a9df841fc42ab168p-4L : inexact-ok
+= tan upward ldbl-128 0x8p+1020L : -0xa.e735a6068151a9df841fc42ab168p-4L : inexact-ok
+= tan downward ldbl-128ibm 0x8p+1020L : -0xa.e735a6068151a9df841fc42ab4p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0x8p+1020L : -0xa.e735a6068151a9df841fc42abp-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0x8p+1020L : -0xa.e735a6068151a9df841fc42abp-4L : inexact-ok
+= tan upward ldbl-128ibm 0x8p+1020L : -0xa.e735a6068151a9df841fc42abp-4L : inexact-ok
+tan 0x1p16383
+= tan downward flt-32 0xf.fffffp+124f : -0x9.c9ecbp-4f : inexact-ok
+= tan tonearest flt-32 0xf.fffffp+124f : -0x9.c9ecap-4f : inexact-ok
+= tan towardzero flt-32 0xf.fffffp+124f : -0x9.c9ecap-4f : inexact-ok
+= tan upward flt-32 0xf.fffffp+124f : -0x9.c9ecap-4f : inexact-ok
+= tan downward dbl-64 0xf.fffffp+124 : -0x9.c9eca5a4c461p-4 : inexact-ok
+= tan tonearest dbl-64 0xf.fffffp+124 : -0x9.c9eca5a4c461p-4 : inexact-ok
+= tan towardzero dbl-64 0xf.fffffp+124 : -0x9.c9eca5a4c4608p-4 : inexact-ok
+= tan upward dbl-64 0xf.fffffp+124 : -0x9.c9eca5a4c4608p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xf.fffffp+124L : -0x9.c9eca5a4c460f93p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xf.fffffp+124L : -0x9.c9eca5a4c460f93p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xf.fffffp+124L : -0x9.c9eca5a4c460f92p-4L : inexact-ok
+= tan upward ldbl-96-intel 0xf.fffffp+124L : -0x9.c9eca5a4c460f92p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xf.fffffp+124L : -0x9.c9eca5a4c460f93p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x9.c9eca5a4c460f93p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x9.c9eca5a4c460f92p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xf.fffffp+124L : -0x9.c9eca5a4c460f92p-4L : inexact-ok
+= tan downward ldbl-128 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbecf5p-4L : inexact-ok
+= tan tonearest ldbl-128 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbecf5p-4L : inexact-ok
+= tan towardzero ldbl-128 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbecf48p-4L : inexact-ok
+= tan upward ldbl-128 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbecf48p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbedp-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbedp-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbeccp-4L : inexact-ok
+= tan upward ldbl-128ibm 0xf.fffffp+124L : -0x9.c9eca5a4c460f92a1a2e4fbeccp-4L : inexact-ok
+= tan downward dbl-64 0xf.ffffffffffff8p+1020 : -0x1.4530cfe729484p-8 : inexact-ok
+= tan tonearest dbl-64 0xf.ffffffffffff8p+1020 : -0x1.4530cfe729484p-8 : inexact-ok
+= tan towardzero dbl-64 0xf.ffffffffffff8p+1020 : -0x1.4530cfe729483p-8 : inexact-ok
+= tan upward dbl-64 0xf.ffffffffffff8p+1020 : -0x1.4530cfe729483p-8 : inexact-ok
+= tan downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8ep-8L : inexact-ok
+= tan tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8ep-8L : inexact-ok
+= tan towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8cp-8L : inexact-ok
+= tan upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8cp-8L : inexact-ok
+= tan downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8ep-8L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8ep-8L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8cp-8L : inexact-ok
+= tan upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8cp-8L : inexact-ok
+= tan downward ldbl-128 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8da1f7101e16cep-8L : inexact-ok
+= tan tonearest ldbl-128 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8da1f7101e16cdp-8L : inexact-ok
+= tan towardzero ldbl-128 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8da1f7101e16cdp-8L : inexact-ok
+= tan upward ldbl-128 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8da1f7101e16cdp-8L : inexact-ok
+= tan downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8da1f7101e17p-8L : inexact-ok
+= tan tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8da1f7101e17p-8L : inexact-ok
+= tan towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8da1f7101e168p-8L : inexact-ok
+= tan upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : -0x1.4530cfe729483b8da1f7101e168p-8L : inexact-ok
+= tan downward ldbl-96-intel 0x8p+16380L : 0x6.c3788e85da9be4f8p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0x8p+16380L : 0x6.c3788e85da9be4f8p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0x8p+16380L : 0x6.c3788e85da9be4f8p-4L : inexact-ok
+= tan upward ldbl-96-intel 0x8p+16380L : 0x6.c3788e85da9be5p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0x8p+16380L : 0x6.c3788e85da9be4f8p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x8p+16380L : 0x6.c3788e85da9be4f8p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x8p+16380L : 0x6.c3788e85da9be4f8p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0x8p+16380L : 0x6.c3788e85da9be5p-4L : inexact-ok
+= tan downward ldbl-128 0x8p+16380L : 0x6.c3788e85da9be4fb78d39ebd3f3p-4L : inexact-ok
+= tan tonearest ldbl-128 0x8p+16380L : 0x6.c3788e85da9be4fb78d39ebd3f3p-4L : inexact-ok
+= tan towardzero ldbl-128 0x8p+16380L : 0x6.c3788e85da9be4fb78d39ebd3f3p-4L : inexact-ok
+= tan upward ldbl-128 0x8p+16380L : 0x6.c3788e85da9be4fb78d39ebd3f34p-4L : inexact-ok
+= tan downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.9d36f38857f642f5fdd53dc00078p+0L : inexact-ok
+= tan tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.9d36f38857f642f5fdd53dc00078p+0L : inexact-ok
+= tan towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.9d36f38857f642f5fdd53dc00078p+0L : inexact-ok
+= tan upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.9d36f38857f642f5fdd53dc0007ap+0L : inexact-ok
+= tan downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.9d36f38857f642f5fdd53dcp+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.9d36f38857f642f5fdd53dcp+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.9d36f38857f642f5fdd53dcp+0L : inexact-ok
+= tan upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0x2.9d36f38857f642f5fdd53dc001p+0L : inexact-ok
+tan 1
+= tan downward flt-32 0x1p+0f : 0x1.8eb244p+0f : inexact-ok
+= tan tonearest flt-32 0x1p+0f : 0x1.8eb246p+0f : inexact-ok
+= tan towardzero flt-32 0x1p+0f : 0x1.8eb244p+0f : inexact-ok
+= tan upward flt-32 0x1p+0f : 0x1.8eb246p+0f : inexact-ok
+= tan downward dbl-64 0x1p+0 : 0x1.8eb245cbee3a5p+0 : inexact-ok
+= tan tonearest dbl-64 0x1p+0 : 0x1.8eb245cbee3a6p+0 : inexact-ok
+= tan towardzero dbl-64 0x1p+0 : 0x1.8eb245cbee3a5p+0 : inexact-ok
+= tan upward dbl-64 0x1p+0 : 0x1.8eb245cbee3a6p+0 : inexact-ok
+= tan downward ldbl-96-intel 0x1p+0L : 0x1.8eb245cbee3a5b8ap+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0x1p+0L : 0x1.8eb245cbee3a5b8ap+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0x1p+0L : 0x1.8eb245cbee3a5b8ap+0L : inexact-ok
+= tan upward ldbl-96-intel 0x1p+0L : 0x1.8eb245cbee3a5b8cp+0L : inexact-ok
+= tan downward ldbl-96-m68k 0x1p+0L : 0x1.8eb245cbee3a5b8ap+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x1p+0L : 0x1.8eb245cbee3a5b8ap+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x1p+0L : 0x1.8eb245cbee3a5b8ap+0L : inexact-ok
+= tan upward ldbl-96-m68k 0x1p+0L : 0x1.8eb245cbee3a5b8cp+0L : inexact-ok
+= tan downward ldbl-128 0x1p+0L : 0x1.8eb245cbee3a5b8acc7d4132314p+0L : inexact-ok
+= tan tonearest ldbl-128 0x1p+0L : 0x1.8eb245cbee3a5b8acc7d41323141p+0L : inexact-ok
+= tan towardzero ldbl-128 0x1p+0L : 0x1.8eb245cbee3a5b8acc7d4132314p+0L : inexact-ok
+= tan upward ldbl-128 0x1p+0L : 0x1.8eb245cbee3a5b8acc7d41323141p+0L : inexact-ok
+= tan downward ldbl-128ibm 0x1p+0L : 0x1.8eb245cbee3a5b8acc7d413231p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0x1p+0L : 0x1.8eb245cbee3a5b8acc7d4132318p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0x1p+0L : 0x1.8eb245cbee3a5b8acc7d413231p+0L : inexact-ok
+= tan upward ldbl-128ibm 0x1p+0L : 0x1.8eb245cbee3a5b8acc7d4132318p+0L : inexact-ok
+tan 2
+= tan downward flt-32 0x2p+0f : -0x2.2f5ec8p+0f : inexact-ok
+= tan tonearest flt-32 0x2p+0f : -0x2.2f5ec4p+0f : inexact-ok
+= tan towardzero flt-32 0x2p+0f : -0x2.2f5ec4p+0f : inexact-ok
+= tan upward flt-32 0x2p+0f : -0x2.2f5ec4p+0f : inexact-ok
+= tan downward dbl-64 0x2p+0 : -0x2.2f5ec5c12a1f2p+0 : inexact-ok
+= tan tonearest dbl-64 0x2p+0 : -0x2.2f5ec5c12a1fp+0 : inexact-ok
+= tan towardzero dbl-64 0x2p+0 : -0x2.2f5ec5c12a1fp+0 : inexact-ok
+= tan upward dbl-64 0x2p+0 : -0x2.2f5ec5c12a1fp+0 : inexact-ok
+= tan downward ldbl-96-intel 0x2p+0L : -0x2.2f5ec5c12a1f076cp+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0x2p+0L : -0x2.2f5ec5c12a1f076cp+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0x2p+0L : -0x2.2f5ec5c12a1f0768p+0L : inexact-ok
+= tan upward ldbl-96-intel 0x2p+0L : -0x2.2f5ec5c12a1f0768p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0x2p+0L : -0x2.2f5ec5c12a1f076cp+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x2p+0L : -0x2.2f5ec5c12a1f076cp+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x2p+0L : -0x2.2f5ec5c12a1f0768p+0L : inexact-ok
+= tan upward ldbl-96-m68k 0x2p+0L : -0x2.2f5ec5c12a1f0768p+0L : inexact-ok
+= tan downward ldbl-128 0x2p+0L : -0x2.2f5ec5c12a1f076a13210f55ecf6p+0L : inexact-ok
+= tan tonearest ldbl-128 0x2p+0L : -0x2.2f5ec5c12a1f076a13210f55ecf6p+0L : inexact-ok
+= tan towardzero ldbl-128 0x2p+0L : -0x2.2f5ec5c12a1f076a13210f55ecf4p+0L : inexact-ok
+= tan upward ldbl-128 0x2p+0L : -0x2.2f5ec5c12a1f076a13210f55ecf4p+0L : inexact-ok
+= tan downward ldbl-128ibm 0x2p+0L : -0x2.2f5ec5c12a1f076a13210f55edp+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0x2p+0L : -0x2.2f5ec5c12a1f076a13210f55edp+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0x2p+0L : -0x2.2f5ec5c12a1f076a13210f55ecp+0L : inexact-ok
+= tan upward ldbl-128ibm 0x2p+0L : -0x2.2f5ec5c12a1f076a13210f55ecp+0L : inexact-ok
+tan 3
+= tan downward flt-32 0x3p+0f : -0x2.47dee4p-4f : inexact-ok
+= tan tonearest flt-32 0x3p+0f : -0x2.47dee4p-4f : inexact-ok
+= tan towardzero flt-32 0x3p+0f : -0x2.47deep-4f : inexact-ok
+= tan upward flt-32 0x3p+0f : -0x2.47deep-4f : inexact-ok
+= tan downward dbl-64 0x3p+0 : -0x2.47dee24a970ep-4 : inexact-ok
+= tan tonearest dbl-64 0x3p+0 : -0x2.47dee24a970dep-4 : inexact-ok
+= tan towardzero dbl-64 0x3p+0 : -0x2.47dee24a970dep-4 : inexact-ok
+= tan upward dbl-64 0x3p+0 : -0x2.47dee24a970dep-4 : inexact-ok
+= tan downward ldbl-96-intel 0x3p+0L : -0x2.47dee24a970de19cp-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0x3p+0L : -0x2.47dee24a970de198p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0x3p+0L : -0x2.47dee24a970de198p-4L : inexact-ok
+= tan upward ldbl-96-intel 0x3p+0L : -0x2.47dee24a970de198p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0x3p+0L : -0x2.47dee24a970de19cp-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x3p+0L : -0x2.47dee24a970de198p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x3p+0L : -0x2.47dee24a970de198p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0x3p+0L : -0x2.47dee24a970de198p-4L : inexact-ok
+= tan downward ldbl-128 0x3p+0L : -0x2.47dee24a970de1996164fbff0a86p-4L : inexact-ok
+= tan tonearest ldbl-128 0x3p+0L : -0x2.47dee24a970de1996164fbff0a84p-4L : inexact-ok
+= tan towardzero ldbl-128 0x3p+0L : -0x2.47dee24a970de1996164fbff0a84p-4L : inexact-ok
+= tan upward ldbl-128 0x3p+0L : -0x2.47dee24a970de1996164fbff0a84p-4L : inexact-ok
+= tan downward ldbl-128ibm 0x3p+0L : -0x2.47dee24a970de1996164fbff0bp-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0x3p+0L : -0x2.47dee24a970de1996164fbff0bp-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0x3p+0L : -0x2.47dee24a970de1996164fbff0ap-4L : inexact-ok
+= tan upward ldbl-128ibm 0x3p+0L : -0x2.47dee24a970de1996164fbff0ap-4L : inexact-ok
+tan 4
+= tan downward flt-32 0x4p+0f : 0x1.2866f8p+0f : inexact-ok
+= tan tonearest flt-32 0x4p+0f : 0x1.2866fap+0f : inexact-ok
+= tan towardzero flt-32 0x4p+0f : 0x1.2866f8p+0f : inexact-ok
+= tan upward flt-32 0x4p+0f : 0x1.2866fap+0f : inexact-ok
+= tan downward dbl-64 0x4p+0 : 0x1.2866f9be4de13p+0 : inexact-ok
+= tan tonearest dbl-64 0x4p+0 : 0x1.2866f9be4de13p+0 : inexact-ok
+= tan towardzero dbl-64 0x4p+0 : 0x1.2866f9be4de13p+0 : inexact-ok
+= tan upward dbl-64 0x4p+0 : 0x1.2866f9be4de14p+0 : inexact-ok
+= tan downward ldbl-96-intel 0x4p+0L : 0x1.2866f9be4de1370cp+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0x4p+0L : 0x1.2866f9be4de1370ep+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0x4p+0L : 0x1.2866f9be4de1370cp+0L : inexact-ok
+= tan upward ldbl-96-intel 0x4p+0L : 0x1.2866f9be4de1370ep+0L : inexact-ok
+= tan downward ldbl-96-m68k 0x4p+0L : 0x1.2866f9be4de1370cp+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x4p+0L : 0x1.2866f9be4de1370ep+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x4p+0L : 0x1.2866f9be4de1370cp+0L : inexact-ok
+= tan upward ldbl-96-m68k 0x4p+0L : 0x1.2866f9be4de1370ep+0L : inexact-ok
+= tan downward ldbl-128 0x4p+0L : 0x1.2866f9be4de1370db9078607012cp+0L : inexact-ok
+= tan tonearest ldbl-128 0x4p+0L : 0x1.2866f9be4de1370db9078607012dp+0L : inexact-ok
+= tan towardzero ldbl-128 0x4p+0L : 0x1.2866f9be4de1370db9078607012cp+0L : inexact-ok
+= tan upward ldbl-128 0x4p+0L : 0x1.2866f9be4de1370db9078607012dp+0L : inexact-ok
+= tan downward ldbl-128ibm 0x4p+0L : 0x1.2866f9be4de1370db907860701p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0x4p+0L : 0x1.2866f9be4de1370db907860701p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0x4p+0L : 0x1.2866f9be4de1370db907860701p+0L : inexact-ok
+= tan upward ldbl-128ibm 0x4p+0L : 0x1.2866f9be4de1370db9078607018p+0L : inexact-ok
+tan 5
+= tan downward flt-32 0x5p+0f : -0x3.61697p+0f : inexact-ok
+= tan tonearest flt-32 0x5p+0f : -0x3.61697p+0f : inexact-ok
+= tan towardzero flt-32 0x5p+0f : -0x3.61696cp+0f : inexact-ok
+= tan upward flt-32 0x5p+0f : -0x3.61696cp+0f : inexact-ok
+= tan downward dbl-64 0x5p+0 : -0x3.61696e737760ep+0 : inexact-ok
+= tan tonearest dbl-64 0x5p+0 : -0x3.61696e737760ep+0 : inexact-ok
+= tan towardzero dbl-64 0x5p+0 : -0x3.61696e737760cp+0 : inexact-ok
+= tan upward dbl-64 0x5p+0 : -0x3.61696e737760cp+0 : inexact-ok
+= tan downward ldbl-96-intel 0x5p+0L : -0x3.61696e737760d088p+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0x5p+0L : -0x3.61696e737760d084p+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0x5p+0L : -0x3.61696e737760d084p+0L : inexact-ok
+= tan upward ldbl-96-intel 0x5p+0L : -0x3.61696e737760d084p+0L : inexact-ok
+= tan downward ldbl-96-m68k 0x5p+0L : -0x3.61696e737760d088p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x5p+0L : -0x3.61696e737760d084p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x5p+0L : -0x3.61696e737760d084p+0L : inexact-ok
+= tan upward ldbl-96-m68k 0x5p+0L : -0x3.61696e737760d084p+0L : inexact-ok
+= tan downward ldbl-128 0x5p+0L : -0x3.61696e737760d0851798bac59114p+0L : inexact-ok
+= tan tonearest ldbl-128 0x5p+0L : -0x3.61696e737760d0851798bac59114p+0L : inexact-ok
+= tan towardzero ldbl-128 0x5p+0L : -0x3.61696e737760d0851798bac59112p+0L : inexact-ok
+= tan upward ldbl-128 0x5p+0L : -0x3.61696e737760d0851798bac59112p+0L : inexact-ok
+= tan downward ldbl-128ibm 0x5p+0L : -0x3.61696e737760d0851798bac592p+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0x5p+0L : -0x3.61696e737760d0851798bac591p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0x5p+0L : -0x3.61696e737760d0851798bac591p+0L : inexact-ok
+= tan upward ldbl-128ibm 0x5p+0L : -0x3.61696e737760d0851798bac591p+0L : inexact-ok
+tan 6
+= tan downward flt-32 0x6p+0f : -0x4.a7f62p-4f : inexact-ok
+= tan tonearest flt-32 0x6p+0f : -0x4.a7f618p-4f : inexact-ok
+= tan towardzero flt-32 0x6p+0f : -0x4.a7f618p-4f : inexact-ok
+= tan upward flt-32 0x6p+0f : -0x4.a7f618p-4f : inexact-ok
+= tan downward dbl-64 0x6p+0 : -0x4.a7f61baee56fcp-4 : inexact-ok
+= tan tonearest dbl-64 0x6p+0 : -0x4.a7f61baee56f8p-4 : inexact-ok
+= tan towardzero dbl-64 0x6p+0 : -0x4.a7f61baee56f8p-4 : inexact-ok
+= tan upward dbl-64 0x6p+0 : -0x4.a7f61baee56f8p-4 : inexact-ok
+= tan downward ldbl-96-intel 0x6p+0L : -0x4.a7f61baee56f8c1p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0x6p+0L : -0x4.a7f61baee56f8c1p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0x6p+0L : -0x4.a7f61baee56f8c08p-4L : inexact-ok
+= tan upward ldbl-96-intel 0x6p+0L : -0x4.a7f61baee56f8c08p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0x6p+0L : -0x4.a7f61baee56f8c1p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x6p+0L : -0x4.a7f61baee56f8c1p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x6p+0L : -0x4.a7f61baee56f8c08p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0x6p+0L : -0x4.a7f61baee56f8c08p-4L : inexact-ok
+= tan downward ldbl-128 0x6p+0L : -0x4.a7f61baee56f8c0d5cb480072ef8p-4L : inexact-ok
+= tan tonearest ldbl-128 0x6p+0L : -0x4.a7f61baee56f8c0d5cb480072ef4p-4L : inexact-ok
+= tan towardzero ldbl-128 0x6p+0L : -0x4.a7f61baee56f8c0d5cb480072ef4p-4L : inexact-ok
+= tan upward ldbl-128 0x6p+0L : -0x4.a7f61baee56f8c0d5cb480072ef4p-4L : inexact-ok
+= tan downward ldbl-128ibm 0x6p+0L : -0x4.a7f61baee56f8c0d5cb480073p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0x6p+0L : -0x4.a7f61baee56f8c0d5cb480072ep-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0x6p+0L : -0x4.a7f61baee56f8c0d5cb480072ep-4L : inexact-ok
+= tan upward ldbl-128ibm 0x6p+0L : -0x4.a7f61baee56f8c0d5cb480072ep-4L : inexact-ok
+tan 7
+= tan downward flt-32 0x7p+0f : 0xd.f1737p-4f : inexact-ok
+= tan tonearest flt-32 0x7p+0f : 0xd.f1737p-4f : inexact-ok
+= tan towardzero flt-32 0x7p+0f : 0xd.f1737p-4f : inexact-ok
+= tan upward flt-32 0x7p+0f : 0xd.f1738p-4f : inexact-ok
+= tan downward dbl-64 0x7p+0 : 0xd.f173709f753cp-4 : inexact-ok
+= tan tonearest dbl-64 0x7p+0 : 0xd.f173709f753c8p-4 : inexact-ok
+= tan towardzero dbl-64 0x7p+0 : 0xd.f173709f753cp-4 : inexact-ok
+= tan upward dbl-64 0x7p+0 : 0xd.f173709f753c8p-4 : inexact-ok
+= tan downward ldbl-96-intel 0x7p+0L : 0xd.f173709f753c4c1p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0x7p+0L : 0xd.f173709f753c4c1p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0x7p+0L : 0xd.f173709f753c4c1p-4L : inexact-ok
+= tan upward ldbl-96-intel 0x7p+0L : 0xd.f173709f753c4c2p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0x7p+0L : 0xd.f173709f753c4c1p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x7p+0L : 0xd.f173709f753c4c1p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x7p+0L : 0xd.f173709f753c4c1p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0x7p+0L : 0xd.f173709f753c4c2p-4L : inexact-ok
+= tan downward ldbl-128 0x7p+0L : 0xd.f173709f753c4c117c5feb1485ap-4L : inexact-ok
+= tan tonearest ldbl-128 0x7p+0L : 0xd.f173709f753c4c117c5feb1485a8p-4L : inexact-ok
+= tan towardzero ldbl-128 0x7p+0L : 0xd.f173709f753c4c117c5feb1485ap-4L : inexact-ok
+= tan upward ldbl-128 0x7p+0L : 0xd.f173709f753c4c117c5feb1485a8p-4L : inexact-ok
+= tan downward ldbl-128ibm 0x7p+0L : 0xd.f173709f753c4c117c5feb1484p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0x7p+0L : 0xd.f173709f753c4c117c5feb1484p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0x7p+0L : 0xd.f173709f753c4c117c5feb1484p-4L : inexact-ok
+= tan upward ldbl-128ibm 0x7p+0L : 0xd.f173709f753c4c117c5feb1488p-4L : inexact-ok
+tan 8
+= tan downward flt-32 0x8p+0f : -0x6.ccb9e8p+0f : inexact-ok
+= tan tonearest flt-32 0x8p+0f : -0x6.ccb9ep+0f : inexact-ok
+= tan towardzero flt-32 0x8p+0f : -0x6.ccb9ep+0f : inexact-ok
+= tan upward flt-32 0x8p+0f : -0x6.ccb9ep+0f : inexact-ok
+= tan downward dbl-64 0x8p+0 : -0x6.ccb9e3d26879p+0 : inexact-ok
+= tan tonearest dbl-64 0x8p+0 : -0x6.ccb9e3d26879p+0 : inexact-ok
+= tan towardzero dbl-64 0x8p+0 : -0x6.ccb9e3d26878cp+0 : inexact-ok
+= tan upward dbl-64 0x8p+0 : -0x6.ccb9e3d26878cp+0 : inexact-ok
+= tan downward ldbl-96-intel 0x8p+0L : -0x6.ccb9e3d26878e9c8p+0L : inexact-ok
+= tan tonearest ldbl-96-intel 0x8p+0L : -0x6.ccb9e3d26878e9c8p+0L : inexact-ok
+= tan towardzero ldbl-96-intel 0x8p+0L : -0x6.ccb9e3d26878e9cp+0L : inexact-ok
+= tan upward ldbl-96-intel 0x8p+0L : -0x6.ccb9e3d26878e9cp+0L : inexact-ok
+= tan downward ldbl-96-m68k 0x8p+0L : -0x6.ccb9e3d26878e9c8p+0L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x8p+0L : -0x6.ccb9e3d26878e9c8p+0L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x8p+0L : -0x6.ccb9e3d26878e9cp+0L : inexact-ok
+= tan upward ldbl-96-m68k 0x8p+0L : -0x6.ccb9e3d26878e9cp+0L : inexact-ok
+= tan downward ldbl-128 0x8p+0L : -0x6.ccb9e3d26878e9c70c0fe7c54824p+0L : inexact-ok
+= tan tonearest ldbl-128 0x8p+0L : -0x6.ccb9e3d26878e9c70c0fe7c54824p+0L : inexact-ok
+= tan towardzero ldbl-128 0x8p+0L : -0x6.ccb9e3d26878e9c70c0fe7c5482p+0L : inexact-ok
+= tan upward ldbl-128 0x8p+0L : -0x6.ccb9e3d26878e9c70c0fe7c5482p+0L : inexact-ok
+= tan downward ldbl-128ibm 0x8p+0L : -0x6.ccb9e3d26878e9c70c0fe7c54ap+0L : inexact-ok
+= tan tonearest ldbl-128ibm 0x8p+0L : -0x6.ccb9e3d26878e9c70c0fe7c548p+0L : inexact-ok
+= tan towardzero ldbl-128ibm 0x8p+0L : -0x6.ccb9e3d26878e9c70c0fe7c548p+0L : inexact-ok
+= tan upward ldbl-128ibm 0x8p+0L : -0x6.ccb9e3d26878e9c70c0fe7c548p+0L : inexact-ok
+tan 9
+= tan downward flt-32 0x9p+0f : -0x7.3caf6p-4f : inexact-ok
+= tan tonearest flt-32 0x9p+0f : -0x7.3caf58p-4f : inexact-ok
+= tan towardzero flt-32 0x9p+0f : -0x7.3caf58p-4f : inexact-ok
+= tan upward flt-32 0x9p+0f : -0x7.3caf58p-4f : inexact-ok
+= tan downward dbl-64 0x9p+0 : -0x7.3caf584c5707p-4 : inexact-ok
+= tan tonearest dbl-64 0x9p+0 : -0x7.3caf584c5707p-4 : inexact-ok
+= tan towardzero dbl-64 0x9p+0 : -0x7.3caf584c5706cp-4 : inexact-ok
+= tan upward dbl-64 0x9p+0 : -0x7.3caf584c5706cp-4 : inexact-ok
+= tan downward ldbl-96-intel 0x9p+0L : -0x7.3caf584c5706f808p-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0x9p+0L : -0x7.3caf584c5706f808p-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0x9p+0L : -0x7.3caf584c5706f8p-4L : inexact-ok
+= tan upward ldbl-96-intel 0x9p+0L : -0x7.3caf584c5706f8p-4L : inexact-ok
+= tan downward ldbl-96-m68k 0x9p+0L : -0x7.3caf584c5706f808p-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0x9p+0L : -0x7.3caf584c5706f808p-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0x9p+0L : -0x7.3caf584c5706f8p-4L : inexact-ok
+= tan upward ldbl-96-m68k 0x9p+0L : -0x7.3caf584c5706f8p-4L : inexact-ok
+= tan downward ldbl-128 0x9p+0L : -0x7.3caf584c5706f80670ce6ab1353cp-4L : inexact-ok
+= tan tonearest ldbl-128 0x9p+0L : -0x7.3caf584c5706f80670ce6ab1353cp-4L : inexact-ok
+= tan towardzero ldbl-128 0x9p+0L : -0x7.3caf584c5706f80670ce6ab13538p-4L : inexact-ok
+= tan upward ldbl-128 0x9p+0L : -0x7.3caf584c5706f80670ce6ab13538p-4L : inexact-ok
+= tan downward ldbl-128ibm 0x9p+0L : -0x7.3caf584c5706f80670ce6ab136p-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0x9p+0L : -0x7.3caf584c5706f80670ce6ab136p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0x9p+0L : -0x7.3caf584c5706f80670ce6ab134p-4L : inexact-ok
+= tan upward ldbl-128ibm 0x9p+0L : -0x7.3caf584c5706f80670ce6ab134p-4L : inexact-ok
+tan 10
+= tan downward flt-32 0xap+0f : 0xa.5faf9p-4f : inexact-ok
+= tan tonearest flt-32 0xap+0f : 0xa.5fafap-4f : inexact-ok
+= tan towardzero flt-32 0xap+0f : 0xa.5faf9p-4f : inexact-ok
+= tan upward flt-32 0xap+0f : 0xa.5fafap-4f : inexact-ok
+= tan downward dbl-64 0xap+0 : 0xa.5faf9a5f1bc1p-4 : inexact-ok
+= tan tonearest dbl-64 0xap+0 : 0xa.5faf9a5f1bc1p-4 : inexact-ok
+= tan towardzero dbl-64 0xap+0 : 0xa.5faf9a5f1bc1p-4 : inexact-ok
+= tan upward dbl-64 0xap+0 : 0xa.5faf9a5f1bc18p-4 : inexact-ok
+= tan downward ldbl-96-intel 0xap+0L : 0xa.5faf9a5f1bc12efp-4L : inexact-ok
+= tan tonearest ldbl-96-intel 0xap+0L : 0xa.5faf9a5f1bc12fp-4L : inexact-ok
+= tan towardzero ldbl-96-intel 0xap+0L : 0xa.5faf9a5f1bc12efp-4L : inexact-ok
+= tan upward ldbl-96-intel 0xap+0L : 0xa.5faf9a5f1bc12fp-4L : inexact-ok
+= tan downward ldbl-96-m68k 0xap+0L : 0xa.5faf9a5f1bc12efp-4L : inexact-ok
+= tan tonearest ldbl-96-m68k 0xap+0L : 0xa.5faf9a5f1bc12fp-4L : inexact-ok
+= tan towardzero ldbl-96-m68k 0xap+0L : 0xa.5faf9a5f1bc12efp-4L : inexact-ok
+= tan upward ldbl-96-m68k 0xap+0L : 0xa.5faf9a5f1bc12fp-4L : inexact-ok
+= tan downward ldbl-128 0xap+0L : 0xa.5faf9a5f1bc12efead12fa488fdp-4L : inexact-ok
+= tan tonearest ldbl-128 0xap+0L : 0xa.5faf9a5f1bc12efead12fa488fdp-4L : inexact-ok
+= tan towardzero ldbl-128 0xap+0L : 0xa.5faf9a5f1bc12efead12fa488fdp-4L : inexact-ok
+= tan upward ldbl-128 0xap+0L : 0xa.5faf9a5f1bc12efead12fa488fd8p-4L : inexact-ok
+= tan downward ldbl-128ibm 0xap+0L : 0xa.5faf9a5f1bc12efead12fa488cp-4L : inexact-ok
+= tan tonearest ldbl-128ibm 0xap+0L : 0xa.5faf9a5f1bc12efead12fa489p-4L : inexact-ok
+= tan towardzero ldbl-128ibm 0xap+0L : 0xa.5faf9a5f1bc12efead12fa488cp-4L : inexact-ok
+= tan upward ldbl-128ibm 0xap+0L : 0xa.5faf9a5f1bc12efead12fa489p-4L : inexact-ok
+tanh 0
+= tanh downward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= tanh tonearest flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= tanh towardzero flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= tanh upward flt-32 0x0p+0f : 0x0p+0f : inexact-ok
+= tanh downward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= tanh tonearest dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= tanh towardzero dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= tanh upward dbl-64 0x0p+0 : 0x0p+0 : inexact-ok
+= tanh downward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh tonearest ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh towardzero ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh upward ldbl-96-intel 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh downward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh tonearest ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh towardzero ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh upward ldbl-96-m68k 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh downward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh tonearest ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh towardzero ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh upward ldbl-128 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh downward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh tonearest ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh towardzero ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+= tanh upward ldbl-128ibm 0x0p+0L : 0x0p+0L : inexact-ok
+tanh -0
+= tanh downward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= tanh tonearest flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= tanh towardzero flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= tanh upward flt-32 -0x0p+0f : -0x0p+0f : inexact-ok
+= tanh downward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= tanh tonearest dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= tanh towardzero dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= tanh upward dbl-64 -0x0p+0 : -0x0p+0 : inexact-ok
+= tanh downward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh tonearest ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh towardzero ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh upward ldbl-96-intel -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh downward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh tonearest ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh towardzero ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh upward ldbl-96-m68k -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh downward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh tonearest ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh towardzero ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh upward ldbl-128 -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh downward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh tonearest ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh towardzero ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+= tanh upward ldbl-128ibm -0x0p+0L : -0x0p+0L : inexact-ok
+tanh 0.75
+= tanh downward flt-32 0xcp-4f : 0xa.2991fp-4f : inexact-ok
+= tanh tonearest flt-32 0xcp-4f : 0xa.2991fp-4f : inexact-ok
+= tanh towardzero flt-32 0xcp-4f : 0xa.2991fp-4f : inexact-ok
+= tanh upward flt-32 0xcp-4f : 0xa.2992p-4f : inexact-ok
+= tanh downward dbl-64 0xcp-4 : 0xa.2991f2a97914p-4 : inexact-ok
+= tanh tonearest dbl-64 0xcp-4 : 0xa.2991f2a97914p-4 : inexact-ok
+= tanh towardzero dbl-64 0xcp-4 : 0xa.2991f2a97914p-4 : inexact-ok
+= tanh upward dbl-64 0xcp-4 : 0xa.2991f2a979148p-4 : inexact-ok
+= tanh downward ldbl-96-intel 0xcp-4L : 0xa.2991f2a97914139p-4L : inexact-ok
+= tanh tonearest ldbl-96-intel 0xcp-4L : 0xa.2991f2a9791413ap-4L : inexact-ok
+= tanh towardzero ldbl-96-intel 0xcp-4L : 0xa.2991f2a97914139p-4L : inexact-ok
+= tanh upward ldbl-96-intel 0xcp-4L : 0xa.2991f2a9791413ap-4L : inexact-ok
+= tanh downward ldbl-96-m68k 0xcp-4L : 0xa.2991f2a97914139p-4L : inexact-ok
+= tanh tonearest ldbl-96-m68k 0xcp-4L : 0xa.2991f2a9791413ap-4L : inexact-ok
+= tanh towardzero ldbl-96-m68k 0xcp-4L : 0xa.2991f2a97914139p-4L : inexact-ok
+= tanh upward ldbl-96-m68k 0xcp-4L : 0xa.2991f2a9791413ap-4L : inexact-ok
+= tanh downward ldbl-128 0xcp-4L : 0xa.2991f2a97914139d5832bf78fb1p-4L : inexact-ok
+= tanh tonearest ldbl-128 0xcp-4L : 0xa.2991f2a97914139d5832bf78fb1p-4L : inexact-ok
+= tanh towardzero ldbl-128 0xcp-4L : 0xa.2991f2a97914139d5832bf78fb1p-4L : inexact-ok
+= tanh upward ldbl-128 0xcp-4L : 0xa.2991f2a97914139d5832bf78fb18p-4L : inexact-ok
+= tanh downward ldbl-128ibm 0xcp-4L : 0xa.2991f2a97914139d5832bf78f8p-4L : inexact-ok
+= tanh tonearest ldbl-128ibm 0xcp-4L : 0xa.2991f2a97914139d5832bf78fcp-4L : inexact-ok
+= tanh towardzero ldbl-128ibm 0xcp-4L : 0xa.2991f2a97914139d5832bf78f8p-4L : inexact-ok
+= tanh upward ldbl-128ibm 0xcp-4L : 0xa.2991f2a97914139d5832bf78fcp-4L : inexact-ok
+tanh -0.75
+= tanh downward flt-32 -0xcp-4f : -0xa.2992p-4f : inexact-ok
+= tanh tonearest flt-32 -0xcp-4f : -0xa.2991fp-4f : inexact-ok
+= tanh towardzero flt-32 -0xcp-4f : -0xa.2991fp-4f : inexact-ok
+= tanh upward flt-32 -0xcp-4f : -0xa.2991fp-4f : inexact-ok
+= tanh downward dbl-64 -0xcp-4 : -0xa.2991f2a979148p-4 : inexact-ok
+= tanh tonearest dbl-64 -0xcp-4 : -0xa.2991f2a97914p-4 : inexact-ok
+= tanh towardzero dbl-64 -0xcp-4 : -0xa.2991f2a97914p-4 : inexact-ok
+= tanh upward dbl-64 -0xcp-4 : -0xa.2991f2a97914p-4 : inexact-ok
+= tanh downward ldbl-96-intel -0xcp-4L : -0xa.2991f2a9791413ap-4L : inexact-ok
+= tanh tonearest ldbl-96-intel -0xcp-4L : -0xa.2991f2a9791413ap-4L : inexact-ok
+= tanh towardzero ldbl-96-intel -0xcp-4L : -0xa.2991f2a97914139p-4L : inexact-ok
+= tanh upward ldbl-96-intel -0xcp-4L : -0xa.2991f2a97914139p-4L : inexact-ok
+= tanh downward ldbl-96-m68k -0xcp-4L : -0xa.2991f2a9791413ap-4L : inexact-ok
+= tanh tonearest ldbl-96-m68k -0xcp-4L : -0xa.2991f2a9791413ap-4L : inexact-ok
+= tanh towardzero ldbl-96-m68k -0xcp-4L : -0xa.2991f2a97914139p-4L : inexact-ok
+= tanh upward ldbl-96-m68k -0xcp-4L : -0xa.2991f2a97914139p-4L : inexact-ok
+= tanh downward ldbl-128 -0xcp-4L : -0xa.2991f2a97914139d5832bf78fb1p-4L : inexact-ok
+= tanh tonearest ldbl-128 -0xcp-4L : -0xa.2991f2a97914139d5832bf78fb1p-4L : inexact-ok
+= tanh towardzero ldbl-128 -0xcp-4L : -0xa.2991f2a97914139d5832bf78fb08p-4L : inexact-ok
+= tanh upward ldbl-128 -0xcp-4L : -0xa.2991f2a97914139d5832bf78fb08p-4L : inexact-ok
+= tanh downward ldbl-128ibm -0xcp-4L : -0xa.2991f2a97914139d5832bf78fcp-4L : inexact-ok
+= tanh tonearest ldbl-128ibm -0xcp-4L : -0xa.2991f2a97914139d5832bf78fcp-4L : inexact-ok
+= tanh towardzero ldbl-128ibm -0xcp-4L : -0xa.2991f2a97914139d5832bf78f8p-4L : inexact-ok
+= tanh upward ldbl-128ibm -0xcp-4L : -0xa.2991f2a97914139d5832bf78f8p-4L : inexact-ok
+tanh 1.0
+= tanh downward flt-32 0x1p+0f : 0xc.2f7d5p-4f : inexact-ok
+= tanh tonearest flt-32 0x1p+0f : 0xc.2f7d6p-4f : inexact-ok
+= tanh towardzero flt-32 0x1p+0f : 0xc.2f7d5p-4f : inexact-ok
+= tanh upward flt-32 0x1p+0f : 0xc.2f7d6p-4f : inexact-ok
+= tanh downward dbl-64 0x1p+0 : 0xc.2f7d5a8a79cap-4 : inexact-ok
+= tanh tonearest dbl-64 0x1p+0 : 0xc.2f7d5a8a79cap-4 : inexact-ok
+= tanh towardzero dbl-64 0x1p+0 : 0xc.2f7d5a8a79cap-4 : inexact-ok
+= tanh upward dbl-64 0x1p+0 : 0xc.2f7d5a8a79ca8p-4 : inexact-ok
+= tanh downward ldbl-96-intel 0x1p+0L : 0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh tonearest ldbl-96-intel 0x1p+0L : 0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh towardzero ldbl-96-intel 0x1p+0L : 0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh upward ldbl-96-intel 0x1p+0L : 0xc.2f7d5a8a79ca2adp-4L : inexact-ok
+= tanh downward ldbl-96-m68k 0x1p+0L : 0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh tonearest ldbl-96-m68k 0x1p+0L : 0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh towardzero ldbl-96-m68k 0x1p+0L : 0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh upward ldbl-96-m68k 0x1p+0L : 0xc.2f7d5a8a79ca2adp-4L : inexact-ok
+= tanh downward ldbl-128 0x1p+0L : 0xc.2f7d5a8a79ca2ac3195f149e2138p-4L : inexact-ok
+= tanh tonearest ldbl-128 0x1p+0L : 0xc.2f7d5a8a79ca2ac3195f149e2138p-4L : inexact-ok
+= tanh towardzero ldbl-128 0x1p+0L : 0xc.2f7d5a8a79ca2ac3195f149e2138p-4L : inexact-ok
+= tanh upward ldbl-128 0x1p+0L : 0xc.2f7d5a8a79ca2ac3195f149e214p-4L : inexact-ok
+= tanh downward ldbl-128ibm 0x1p+0L : 0xc.2f7d5a8a79ca2ac3195f149e2p-4L : inexact-ok
+= tanh tonearest ldbl-128ibm 0x1p+0L : 0xc.2f7d5a8a79ca2ac3195f149e2p-4L : inexact-ok
+= tanh towardzero ldbl-128ibm 0x1p+0L : 0xc.2f7d5a8a79ca2ac3195f149e2p-4L : inexact-ok
+= tanh upward ldbl-128ibm 0x1p+0L : 0xc.2f7d5a8a79ca2ac3195f149e24p-4L : inexact-ok
+tanh -1.0
+= tanh downward flt-32 -0x1p+0f : -0xc.2f7d6p-4f : inexact-ok
+= tanh tonearest flt-32 -0x1p+0f : -0xc.2f7d6p-4f : inexact-ok
+= tanh towardzero flt-32 -0x1p+0f : -0xc.2f7d5p-4f : inexact-ok
+= tanh upward flt-32 -0x1p+0f : -0xc.2f7d5p-4f : inexact-ok
+= tanh downward dbl-64 -0x1p+0 : -0xc.2f7d5a8a79ca8p-4 : inexact-ok
+= tanh tonearest dbl-64 -0x1p+0 : -0xc.2f7d5a8a79cap-4 : inexact-ok
+= tanh towardzero dbl-64 -0x1p+0 : -0xc.2f7d5a8a79cap-4 : inexact-ok
+= tanh upward dbl-64 -0x1p+0 : -0xc.2f7d5a8a79cap-4 : inexact-ok
+= tanh downward ldbl-96-intel -0x1p+0L : -0xc.2f7d5a8a79ca2adp-4L : inexact-ok
+= tanh tonearest ldbl-96-intel -0x1p+0L : -0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh towardzero ldbl-96-intel -0x1p+0L : -0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh upward ldbl-96-intel -0x1p+0L : -0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh downward ldbl-96-m68k -0x1p+0L : -0xc.2f7d5a8a79ca2adp-4L : inexact-ok
+= tanh tonearest ldbl-96-m68k -0x1p+0L : -0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh towardzero ldbl-96-m68k -0x1p+0L : -0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh upward ldbl-96-m68k -0x1p+0L : -0xc.2f7d5a8a79ca2acp-4L : inexact-ok
+= tanh downward ldbl-128 -0x1p+0L : -0xc.2f7d5a8a79ca2ac3195f149e214p-4L : inexact-ok
+= tanh tonearest ldbl-128 -0x1p+0L : -0xc.2f7d5a8a79ca2ac3195f149e2138p-4L : inexact-ok
+= tanh towardzero ldbl-128 -0x1p+0L : -0xc.2f7d5a8a79ca2ac3195f149e2138p-4L : inexact-ok
+= tanh upward ldbl-128 -0x1p+0L : -0xc.2f7d5a8a79ca2ac3195f149e2138p-4L : inexact-ok
+= tanh downward ldbl-128ibm -0x1p+0L : -0xc.2f7d5a8a79ca2ac3195f149e24p-4L : inexact-ok
+= tanh tonearest ldbl-128ibm -0x1p+0L : -0xc.2f7d5a8a79ca2ac3195f149e2p-4L : inexact-ok
+= tanh towardzero ldbl-128ibm -0x1p+0L : -0xc.2f7d5a8a79ca2ac3195f149e2p-4L : inexact-ok
+= tanh upward ldbl-128ibm -0x1p+0L : -0xc.2f7d5a8a79ca2ac3195f149e2p-4L : inexact-ok
+tanh 0x1p-57
+= tanh downward flt-32 0x8p-60f : 0x7.fffff8p-60f : inexact-ok
+= tanh tonearest flt-32 0x8p-60f : 0x8p-60f : inexact-ok
+= tanh towardzero flt-32 0x8p-60f : 0x7.fffff8p-60f : inexact-ok
+= tanh upward flt-32 0x8p-60f : 0x8p-60f : inexact-ok
+= tanh downward dbl-64 0x8p-60 : 0x7.ffffffffffffcp-60 : inexact-ok
+= tanh tonearest dbl-64 0x8p-60 : 0x8p-60 : inexact-ok
+= tanh towardzero dbl-64 0x8p-60 : 0x7.ffffffffffffcp-60 : inexact-ok
+= tanh upward dbl-64 0x8p-60 : 0x8p-60 : inexact-ok
+= tanh downward ldbl-96-intel 0x8p-60L : 0x7.fffffffffffffff8p-60L : inexact-ok
+= tanh tonearest ldbl-96-intel 0x8p-60L : 0x8p-60L : inexact-ok
+= tanh towardzero ldbl-96-intel 0x8p-60L : 0x7.fffffffffffffff8p-60L : inexact-ok
+= tanh upward ldbl-96-intel 0x8p-60L : 0x8p-60L : inexact-ok
+= tanh downward ldbl-96-m68k 0x8p-60L : 0x7.fffffffffffffff8p-60L : inexact-ok
+= tanh tonearest ldbl-96-m68k 0x8p-60L : 0x8p-60L : inexact-ok
+= tanh towardzero ldbl-96-m68k 0x8p-60L : 0x7.fffffffffffffff8p-60L : inexact-ok
+= tanh upward ldbl-96-m68k 0x8p-60L : 0x8p-60L : inexact-ok
+= tanh downward ldbl-128 0x8p-60L : 0x7.fffffffffffffffffffffffffffcp-60L : inexact-ok
+= tanh tonearest ldbl-128 0x8p-60L : 0x8p-60L : inexact-ok
+= tanh towardzero ldbl-128 0x8p-60L : 0x7.fffffffffffffffffffffffffffcp-60L : inexact-ok
+= tanh upward ldbl-128 0x8p-60L : 0x8p-60L : inexact-ok
+= tanh downward ldbl-128ibm 0x8p-60L : 0x7.fffffffffffffffffffffffffep-60L : inexact-ok
+= tanh tonearest ldbl-128ibm 0x8p-60L : 0x8p-60L : inexact-ok
+= tanh towardzero ldbl-128ibm 0x8p-60L : 0x7.fffffffffffffffffffffffffep-60L : inexact-ok
+= tanh upward ldbl-128ibm 0x8p-60L : 0x8p-60L : inexact-ok
+tgamma 0.5
+= tgamma downward flt-32 0x8p-4f : 0x1.c5bf88p+0f : inexact-ok
+= tgamma tonearest flt-32 0x8p-4f : 0x1.c5bf8ap+0f : inexact-ok
+= tgamma towardzero flt-32 0x8p-4f : 0x1.c5bf88p+0f : inexact-ok
+= tgamma upward flt-32 0x8p-4f : 0x1.c5bf8ap+0f : inexact-ok
+= tgamma downward dbl-64 0x8p-4 : 0x1.c5bf891b4ef6ap+0 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-4 : 0x1.c5bf891b4ef6bp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-4 : 0x1.c5bf891b4ef6ap+0 : inexact-ok
+= tgamma upward dbl-64 0x8p-4 : 0x1.c5bf891b4ef6bp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-4L : 0x1.c5bf891b4ef6aa78p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-4L : 0x1.c5bf891b4ef6aa7ap+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-4L : 0x1.c5bf891b4ef6aa78p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-4L : 0x1.c5bf891b4ef6aa7ap+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-4L : 0x1.c5bf891b4ef6aa78p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-4L : 0x1.c5bf891b4ef6aa7ap+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-4L : 0x1.c5bf891b4ef6aa78p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-4L : 0x1.c5bf891b4ef6aa7ap+0L : inexact-ok
+= tgamma downward ldbl-128 0x8p-4L : 0x1.c5bf891b4ef6aa79c3b0520d5db9p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-4L : 0x1.c5bf891b4ef6aa79c3b0520d5db9p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-4L : 0x1.c5bf891b4ef6aa79c3b0520d5db9p+0L : inexact-ok
+= tgamma upward ldbl-128 0x8p-4L : 0x1.c5bf891b4ef6aa79c3b0520d5dbap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-4L : 0x1.c5bf891b4ef6aa79c3b0520d5d8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-4L : 0x1.c5bf891b4ef6aa79c3b0520d5d8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-4L : 0x1.c5bf891b4ef6aa79c3b0520d5d8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-4L : 0x1.c5bf891b4ef6aa79c3b0520d5ep+0L : inexact-ok
+tgamma -0.5
+= tgamma downward flt-32 -0x8p-4f : -0x3.8b7f14p+0f : inexact-ok
+= tgamma tonearest flt-32 -0x8p-4f : -0x3.8b7f14p+0f : inexact-ok
+= tgamma towardzero flt-32 -0x8p-4f : -0x3.8b7f1p+0f : inexact-ok
+= tgamma upward flt-32 -0x8p-4f : -0x3.8b7f1p+0f : inexact-ok
+= tgamma downward dbl-64 -0x8p-4 : -0x3.8b7f12369ded6p+0 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-4 : -0x3.8b7f12369ded6p+0 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-4 : -0x3.8b7f12369ded4p+0 : inexact-ok
+= tgamma upward dbl-64 -0x8p-4 : -0x3.8b7f12369ded4p+0 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-4L : -0x3.8b7f12369ded54f4p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-4L : -0x3.8b7f12369ded54f4p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-4L : -0x3.8b7f12369ded54fp+0L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-4L : -0x3.8b7f12369ded54fp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-4L : -0x3.8b7f12369ded54f4p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-4L : -0x3.8b7f12369ded54f4p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-4L : -0x3.8b7f12369ded54fp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-4L : -0x3.8b7f12369ded54fp+0L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-4L : -0x3.8b7f12369ded54f38760a41abb72p+0L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-4L : -0x3.8b7f12369ded54f38760a41abb72p+0L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-4L : -0x3.8b7f12369ded54f38760a41abb7p+0L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-4L : -0x3.8b7f12369ded54f38760a41abb7p+0L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-4L : -0x3.8b7f12369ded54f38760a41abcp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-4L : -0x3.8b7f12369ded54f38760a41abbp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-4L : -0x3.8b7f12369ded54f38760a41abbp+0L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-4L : -0x3.8b7f12369ded54f38760a41abbp+0L : inexact-ok
+tgamma 1
+= tgamma downward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+tgamma 2
+= tgamma downward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+tgamma 3
+= tgamma downward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma upward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma downward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma upward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+tgamma 4
+= tgamma downward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma upward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma downward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma upward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+tgamma 5
+= tgamma downward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma upward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+tgamma 6
+= tgamma downward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma upward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+tgamma 7
+= tgamma downward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma tonearest flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma upward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma downward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma upward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+tgamma 8
+= tgamma downward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma tonearest flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma towardzero flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma upward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma downward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma upward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+tgamma 9
+= tgamma downward flt-32 0x9p+0f : 0x9.d8p+12f : inexact-ok
+= tgamma tonearest flt-32 0x9p+0f : 0x9.d8p+12f : inexact-ok
+= tgamma towardzero flt-32 0x9p+0f : 0x9.d8p+12f : inexact-ok
+= tgamma upward flt-32 0x9p+0f : 0x9.d8p+12f : inexact-ok
+= tgamma downward dbl-64 0x9p+0 : 0x9.d8p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x9p+0 : 0x9.d8p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x9p+0 : 0x9.d8p+12 : inexact-ok
+= tgamma upward dbl-64 0x9p+0 : 0x9.d8p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma downward ldbl-128 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma upward ldbl-128 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x9p+0L : 0x9.d8p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x9p+0L : 0x9.d8p+12L : inexact-ok
+tgamma 10
+= tgamma downward flt-32 0xap+0f : 0x5.898p+16f : inexact-ok
+= tgamma tonearest flt-32 0xap+0f : 0x5.898p+16f : inexact-ok
+= tgamma towardzero flt-32 0xap+0f : 0x5.898p+16f : inexact-ok
+= tgamma upward flt-32 0xap+0f : 0x5.898p+16f : inexact-ok
+= tgamma downward dbl-64 0xap+0 : 0x5.898p+16 : inexact-ok
+= tgamma tonearest dbl-64 0xap+0 : 0x5.898p+16 : inexact-ok
+= tgamma towardzero dbl-64 0xap+0 : 0x5.898p+16 : inexact-ok
+= tgamma upward dbl-64 0xap+0 : 0x5.898p+16 : inexact-ok
+= tgamma downward ldbl-96-intel 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma upward ldbl-96-intel 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma downward ldbl-128 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma tonearest ldbl-128 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma towardzero ldbl-128 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma upward ldbl-128 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma downward ldbl-128ibm 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xap+0L : 0x5.898p+16L : inexact-ok
+= tgamma upward ldbl-128ibm 0xap+0L : 0x5.898p+16L : inexact-ok
+tgamma 0.7
+= tgamma downward flt-32 0xb.33334p-4f : 0x1.4c4d58p+0f : inexact-ok
+= tgamma tonearest flt-32 0xb.33334p-4f : 0x1.4c4d5ap+0f : inexact-ok
+= tgamma towardzero flt-32 0xb.33334p-4f : 0x1.4c4d58p+0f : inexact-ok
+= tgamma upward flt-32 0xb.33334p-4f : 0x1.4c4d5ap+0f : inexact-ok
+= tgamma downward dbl-64 0xb.33334p-4 : 0x1.4c4d596dc959p+0 : inexact-ok
+= tgamma tonearest dbl-64 0xb.33334p-4 : 0x1.4c4d596dc959p+0 : inexact-ok
+= tgamma towardzero dbl-64 0xb.33334p-4 : 0x1.4c4d596dc959p+0 : inexact-ok
+= tgamma upward dbl-64 0xb.33334p-4 : 0x1.4c4d596dc9591p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xb.33334p-4L : 0x1.4c4d596dc959027cp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xb.33334p-4L : 0x1.4c4d596dc959027ep+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xb.33334p-4L : 0x1.4c4d596dc959027cp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xb.33334p-4L : 0x1.4c4d596dc959027ep+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xb.33334p-4L : 0x1.4c4d596dc959027cp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xb.33334p-4L : 0x1.4c4d596dc959027ep+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xb.33334p-4L : 0x1.4c4d596dc959027cp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xb.33334p-4L : 0x1.4c4d596dc959027ep+0L : inexact-ok
+= tgamma downward ldbl-128 0xb.33334p-4L : 0x1.4c4d596dc959027d8ac801e30d39p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xb.33334p-4L : 0x1.4c4d596dc959027d8ac801e30d39p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xb.33334p-4L : 0x1.4c4d596dc959027d8ac801e30d39p+0L : inexact-ok
+= tgamma upward ldbl-128 0xb.33334p-4L : 0x1.4c4d596dc959027d8ac801e30d3ap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xb.33334p-4L : 0x1.4c4d596dc959027d8ac801e30dp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xb.33334p-4L : 0x1.4c4d596dc959027d8ac801e30dp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xb.33334p-4L : 0x1.4c4d596dc959027d8ac801e30dp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xb.33334p-4L : 0x1.4c4d596dc959027d8ac801e30d8p+0L : inexact-ok
+= tgamma downward flt-32 0xb.33333p-4f : 0x1.4c4d5ap+0f : inexact-ok
+= tgamma tonearest flt-32 0xb.33333p-4f : 0x1.4c4d5cp+0f : inexact-ok
+= tgamma towardzero flt-32 0xb.33333p-4f : 0x1.4c4d5ap+0f : inexact-ok
+= tgamma upward flt-32 0xb.33333p-4f : 0x1.4c4d5cp+0f : inexact-ok
+= tgamma downward dbl-64 0xb.33333p-4 : 0x1.4c4d5b0333f5p+0 : inexact-ok
+= tgamma tonearest dbl-64 0xb.33333p-4 : 0x1.4c4d5b0333f5p+0 : inexact-ok
+= tgamma towardzero dbl-64 0xb.33333p-4 : 0x1.4c4d5b0333f5p+0 : inexact-ok
+= tgamma upward dbl-64 0xb.33333p-4 : 0x1.4c4d5b0333f51p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xb.33333p-4L : 0x1.4c4d5b0333f5008p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xb.33333p-4L : 0x1.4c4d5b0333f50082p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xb.33333p-4L : 0x1.4c4d5b0333f5008p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xb.33333p-4L : 0x1.4c4d5b0333f50082p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xb.33333p-4L : 0x1.4c4d5b0333f5008p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xb.33333p-4L : 0x1.4c4d5b0333f50082p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xb.33333p-4L : 0x1.4c4d5b0333f5008p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xb.33333p-4L : 0x1.4c4d5b0333f50082p+0L : inexact-ok
+= tgamma downward ldbl-128 0xb.33333p-4L : 0x1.4c4d5b0333f50081be3f98238212p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xb.33333p-4L : 0x1.4c4d5b0333f50081be3f98238212p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xb.33333p-4L : 0x1.4c4d5b0333f50081be3f98238212p+0L : inexact-ok
+= tgamma upward ldbl-128 0xb.33333p-4L : 0x1.4c4d5b0333f50081be3f98238213p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xb.33333p-4L : 0x1.4c4d5b0333f50081be3f982382p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xb.33333p-4L : 0x1.4c4d5b0333f50081be3f982382p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xb.33333p-4L : 0x1.4c4d5b0333f50081be3f982382p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xb.33333p-4L : 0x1.4c4d5b0333f50081be3f9823828p+0L : inexact-ok
+= tgamma downward dbl-64 0xb.3333333333338p-4 : 0x1.4c4d5ab21ea21p+0 : inexact-ok
+= tgamma tonearest dbl-64 0xb.3333333333338p-4 : 0x1.4c4d5ab21ea22p+0 : inexact-ok
+= tgamma towardzero dbl-64 0xb.3333333333338p-4 : 0x1.4c4d5ab21ea21p+0 : inexact-ok
+= tgamma upward dbl-64 0xb.3333333333338p-4 : 0x1.4c4d5ab21ea22p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffcp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffep+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffcp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffep+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffcp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffep+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffcp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffep+0L : inexact-ok
+= tgamma downward ldbl-128 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffde0a9e54de1dp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffde0a9e54de1dp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffde0a9e54de1dp+0L : inexact-ok
+= tgamma upward ldbl-128 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffde0a9e54de1d1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffde0a9e54de18p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffde0a9e54de2p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffde0a9e54de18p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xb.3333333333338p-4L : 0x1.4c4d5ab21ea21ffde0a9e54de2p+0L : inexact-ok
+= tgamma downward dbl-64 0xb.333333333333p-4 : 0x1.4c4d5ab21ea22p+0 : inexact-ok
+= tgamma tonearest dbl-64 0xb.333333333333p-4 : 0x1.4c4d5ab21ea23p+0 : inexact-ok
+= tgamma towardzero dbl-64 0xb.333333333333p-4 : 0x1.4c4d5ab21ea22p+0 : inexact-ok
+= tgamma upward dbl-64 0xb.333333333333p-4 : 0x1.4c4d5ab21ea23p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22caap+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca8p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22caap+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22caap+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca8p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22caap+0L : inexact-ok
+= tgamma downward ldbl-128 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca935974cbe424dp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca935974cbe424dp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca935974cbe424dp+0L : inexact-ok
+= tgamma upward ldbl-128 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca935974cbe424ep+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca935974cbe42p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca935974cbe428p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca935974cbe42p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xb.333333333333p-4L : 0x1.4c4d5ab21ea22ca935974cbe428p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea22796p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea22796p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea22796p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea22798p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea22796p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea22796p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea22796p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea22798p+0L : inexact-ok
+= tgamma downward ldbl-128 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea227969c163ed3c37fp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea227969c163ed3c38p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea227969c163ed3c37fp+0L : inexact-ok
+= tgamma upward ldbl-128 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea227969c163ed3c38p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea227969c163ed3c3p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea227969c163ed3c38p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea227969c163ed3c3p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xb.333333333333334p-4L : 0x1.4c4d5ab21ea227969c163ed3c38p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea22798p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea22798p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea22798p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea2279ap+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea22798p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea22798p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea22798p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea2279ap+0L : inexact-ok
+= tgamma downward ldbl-128 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea227983180dc80b18cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea227983180dc80b18cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea227983180dc80b18cp+0L : inexact-ok
+= tgamma upward ldbl-128 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea227983180dc80b18dp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea227983180dc80b18p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea227983180dc80b18p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea227983180dc80b18p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xb.333333333333333p-4L : 0x1.4c4d5ab21ea227983180dc80b2p+0L : inexact-ok
+= tgamma downward ldbl-128 0xb.3333333333333333333333333338p-4L : 0x1.4c4d5ab21ea22797e06b89c481efp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xb.3333333333333333333333333338p-4L : 0x1.4c4d5ab21ea22797e06b89c481fp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xb.3333333333333333333333333338p-4L : 0x1.4c4d5ab21ea22797e06b89c481efp+0L : inexact-ok
+= tgamma upward ldbl-128 0xb.3333333333333333333333333338p-4L : 0x1.4c4d5ab21ea22797e06b89c481fp+0L : inexact-ok
+= tgamma downward ldbl-128 0xb.333333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c481fp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xb.333333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c481fp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xb.333333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c481fp+0L : inexact-ok
+= tgamma upward ldbl-128 0xb.333333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c481f1p+0L : inexact-ok
+= tgamma downward ldbl-128 0xb.33333333333333333333333334p-4L : 0x1.4c4d5ab21ea22797e06b89c481dbp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xb.33333333333333333333333334p-4L : 0x1.4c4d5ab21ea22797e06b89c481dcp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xb.33333333333333333333333334p-4L : 0x1.4c4d5ab21ea22797e06b89c481dbp+0L : inexact-ok
+= tgamma upward ldbl-128 0xb.33333333333333333333333334p-4L : 0x1.4c4d5ab21ea22797e06b89c481dcp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xb.33333333333333333333333334p-4L : 0x1.4c4d5ab21ea22797e06b89c4818p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xb.33333333333333333333333334p-4L : 0x1.4c4d5ab21ea22797e06b89c482p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xb.33333333333333333333333334p-4L : 0x1.4c4d5ab21ea22797e06b89c4818p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xb.33333333333333333333333334p-4L : 0x1.4c4d5ab21ea22797e06b89c482p+0L : inexact-ok
+= tgamma downward ldbl-128 0xb.3333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c48241p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xb.3333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c48241p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xb.3333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c48241p+0L : inexact-ok
+= tgamma upward ldbl-128 0xb.3333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c48242p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xb.3333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c482p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xb.3333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c4828p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xb.3333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c482p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xb.3333333333333333333333333p-4L : 0x1.4c4d5ab21ea22797e06b89c4828p+0L : inexact-ok
+tgamma 1.2
+= tgamma downward flt-32 0x1.333334p+0f : 0xe.b0d1bp-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.333334p+0f : 0xe.b0d1bp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.333334p+0f : 0xe.b0d1bp-4f : inexact-ok
+= tgamma upward flt-32 0x1.333334p+0f : 0xe.b0d1cp-4f : inexact-ok
+= tgamma downward dbl-64 0x1.333334p+0 : 0xe.b0d1b1a770ffp-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.333334p+0 : 0xe.b0d1b1a770ff8p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.333334p+0 : 0xe.b0d1b1a770ffp-4 : inexact-ok
+= tgamma upward dbl-64 0x1.333334p+0 : 0xe.b0d1b1a770ff8p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.333334p+0L : 0xe.b0d1b1a770ff551p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.333334p+0L : 0xe.b0d1b1a770ff551p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.333334p+0L : 0xe.b0d1b1a770ff551p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.333334p+0L : 0xe.b0d1b1a770ff552p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.333334p+0L : 0xe.b0d1b1a770ff551p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.333334p+0L : 0xe.b0d1b1a770ff551p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.333334p+0L : 0xe.b0d1b1a770ff551p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.333334p+0L : 0xe.b0d1b1a770ff552p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.333334p+0L : 0xe.b0d1b1a770ff5510f297aaa46f8p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.333334p+0L : 0xe.b0d1b1a770ff5510f297aaa46f8p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.333334p+0L : 0xe.b0d1b1a770ff5510f297aaa46f8p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.333334p+0L : 0xe.b0d1b1a770ff5510f297aaa46f88p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.333334p+0L : 0xe.b0d1b1a770ff5510f297aaa46cp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.333334p+0L : 0xe.b0d1b1a770ff5510f297aaa47p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.333334p+0L : 0xe.b0d1b1a770ff5510f297aaa46cp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.333334p+0L : 0xe.b0d1b1a770ff5510f297aaa47p-4L : inexact-ok
+= tgamma downward flt-32 0x1.333332p+0f : 0xe.b0d1bp-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.333332p+0f : 0xe.b0d1cp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.333332p+0f : 0xe.b0d1bp-4f : inexact-ok
+= tgamma upward flt-32 0x1.333332p+0f : 0xe.b0d1cp-4f : inexact-ok
+= tgamma downward dbl-64 0x1.333332p+0 : 0xe.b0d1ba257ebd8p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.333332p+0 : 0xe.b0d1ba257ebep-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.333332p+0 : 0xe.b0d1ba257ebd8p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.333332p+0 : 0xe.b0d1ba257ebep-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.333332p+0L : 0xe.b0d1ba257ebddc3p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.333332p+0L : 0xe.b0d1ba257ebddc3p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.333332p+0L : 0xe.b0d1ba257ebddc3p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.333332p+0L : 0xe.b0d1ba257ebddc4p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.333332p+0L : 0xe.b0d1ba257ebddc3p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.333332p+0L : 0xe.b0d1ba257ebddc3p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.333332p+0L : 0xe.b0d1ba257ebddc3p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.333332p+0L : 0xe.b0d1ba257ebddc4p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.333332p+0L : 0xe.b0d1ba257ebddc31803d2f8a0d4p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.333332p+0L : 0xe.b0d1ba257ebddc31803d2f8a0d4p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.333332p+0L : 0xe.b0d1ba257ebddc31803d2f8a0d4p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.333332p+0L : 0xe.b0d1ba257ebddc31803d2f8a0d48p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.333332p+0L : 0xe.b0d1ba257ebddc31803d2f8a0cp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.333332p+0L : 0xe.b0d1ba257ebddc31803d2f8a0cp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.333332p+0L : 0xe.b0d1ba257ebddc31803d2f8a0cp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.333332p+0L : 0xe.b0d1ba257ebddc31803d2f8a1p-4L : inexact-ok
+= tgamma downward dbl-64 0x1.3333333333334p+0 : 0xe.b0d1b50d100e8p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.3333333333334p+0 : 0xe.b0d1b50d100e8p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.3333333333334p+0 : 0xe.b0d1b50d100e8p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.3333333333334p+0 : 0xe.b0d1b50d100fp-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9aep-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9aep-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9aep-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9afp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9aep-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9aep-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9aep-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9afp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9ae44d32172949ep-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9ae44d32172949e8p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9ae44d32172949ep-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9ae44d32172949e8p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9ae44d32172948p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9ae44d32172948p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9ae44d32172948p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.3333333333334p+0L : 0xe.b0d1b50d100e9ae44d3217294cp-4L : inexact-ok
+= tgamma downward dbl-64 0x1.3333333333333p+0 : 0xe.b0d1b50d100e8p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.3333333333333p+0 : 0xe.b0d1b50d100fp-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.3333333333333p+0 : 0xe.b0d1b50d100e8p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.3333333333333p+0 : 0xe.b0d1b50d100fp-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.3333333333333p+0L : 0xe.b0d1b50d100ededp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.3333333333333p+0L : 0xe.b0d1b50d100ededp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.3333333333333p+0L : 0xe.b0d1b50d100ededp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.3333333333333p+0L : 0xe.b0d1b50d100edeep-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.3333333333333p+0L : 0xe.b0d1b50d100ededp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.3333333333333p+0L : 0xe.b0d1b50d100ededp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.3333333333333p+0L : 0xe.b0d1b50d100ededp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.3333333333333p+0L : 0xe.b0d1b50d100edeep-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.3333333333333p+0L : 0xe.b0d1b50d100eded4bae6ce59dp-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.3333333333333p+0L : 0xe.b0d1b50d100eded4bae6ce59dp-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.3333333333333p+0L : 0xe.b0d1b50d100eded4bae6ce59dp-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.3333333333333p+0L : 0xe.b0d1b50d100eded4bae6ce59d008p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.3333333333333p+0L : 0xe.b0d1b50d100eded4bae6ce59dp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.3333333333333p+0L : 0xe.b0d1b50d100eded4bae6ce59dp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.3333333333333p+0L : 0xe.b0d1b50d100eded4bae6ce59dp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.3333333333333p+0L : 0xe.b0d1b50d100eded4bae6ce59d4p-4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed14p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed14p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed14p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed14p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13ad8f060ad579p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13ad8f060ad579p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13ad8f060ad579p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13ad8f060ad5798p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13ad8f060ad54p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13ad8f060ad58p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13ad8f060ad54p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.3333333333333334p+0L : 0xe.b0d1b50d100ed13ad8f060ad58p-4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed15p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed15p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14356fe17443dap-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14356fe17443da8p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14356fe17443dap-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14356fe17443da8p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14356fe17443cp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14356fe17443cp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14356fe17443cp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.3333333333333332p+0L : 0xe.b0d1b50d100ed14356fe17444p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.3333333333333333333333333334p+0L : 0xe.b0d1b50d100ed13e3e8f76834d3p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.3333333333333333333333333334p+0L : 0xe.b0d1b50d100ed13e3e8f76834d3p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.3333333333333333333333333334p+0L : 0xe.b0d1b50d100ed13e3e8f76834d3p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.3333333333333333333333333334p+0L : 0xe.b0d1b50d100ed13e3e8f76834d38p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.3333333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76834d3p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.3333333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76834d38p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.3333333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76834d3p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.3333333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76834d38p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.333333333333333333333333338p+0L : 0xe.b0d1b50d100ed13e3e8f76834be8p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.333333333333333333333333338p+0L : 0xe.b0d1b50d100ed13e3e8f76834bfp-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.333333333333333333333333338p+0L : 0xe.b0d1b50d100ed13e3e8f76834be8p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.333333333333333333333333338p+0L : 0xe.b0d1b50d100ed13e3e8f76834bfp-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.333333333333333333333333338p+0L : 0xe.b0d1b50d100ed13e3e8f768348p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.333333333333333333333333338p+0L : 0xe.b0d1b50d100ed13e3e8f76834cp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.333333333333333333333333338p+0L : 0xe.b0d1b50d100ed13e3e8f768348p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.333333333333333333333333338p+0L : 0xe.b0d1b50d100ed13e3e8f76834cp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.33333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76834e08p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.33333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76834e1p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.33333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76834e08p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.33333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76834e1p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.33333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76834cp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.33333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76835p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.33333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76834cp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.33333333333333333333333333p+0L : 0xe.b0d1b50d100ed13e3e8f76835p-4L : inexact-ok
+tgamma 1.5
+= tgamma downward flt-32 0x1.8p+0f : 0xe.2dfc4p-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.8p+0f : 0xe.2dfc5p-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.8p+0f : 0xe.2dfc4p-4f : inexact-ok
+= tgamma upward flt-32 0x1.8p+0f : 0xe.2dfc5p-4f : inexact-ok
+= tgamma downward dbl-64 0x1.8p+0 : 0xe.2dfc48da77b5p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.8p+0 : 0xe.2dfc48da77b58p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.8p+0 : 0xe.2dfc48da77b5p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.8p+0 : 0xe.2dfc48da77b58p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.8p+0L : 0xe.2dfc48da77b553cp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.8p+0L : 0xe.2dfc48da77b553dp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.8p+0L : 0xe.2dfc48da77b553cp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.8p+0L : 0xe.2dfc48da77b553dp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.8p+0L : 0xe.2dfc48da77b553cp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.8p+0L : 0xe.2dfc48da77b553dp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.8p+0L : 0xe.2dfc48da77b553cp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.8p+0L : 0xe.2dfc48da77b553dp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.8p+0L : 0xe.2dfc48da77b553ce1d82906aedc8p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.8p+0L : 0xe.2dfc48da77b553ce1d82906aedc8p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.8p+0L : 0xe.2dfc48da77b553ce1d82906aedc8p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.8p+0L : 0xe.2dfc48da77b553ce1d82906aeddp-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.8p+0L : 0xe.2dfc48da77b553ce1d82906aecp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.8p+0L : 0xe.2dfc48da77b553ce1d82906aecp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.8p+0L : 0xe.2dfc48da77b553ce1d82906aecp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.8p+0L : 0xe.2dfc48da77b553ce1d82906afp-4L : inexact-ok
+tgamma 2.5
+= tgamma downward flt-32 0x2.8p+0f : 0x1.544fa6p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.8p+0f : 0x1.544fa6p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.8p+0f : 0x1.544fa6p+0f : inexact-ok
+= tgamma upward flt-32 0x2.8p+0f : 0x1.544fa8p+0f : inexact-ok
+= tgamma downward dbl-64 0x2.8p+0 : 0x1.544fa6d47b38fp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.8p+0 : 0x1.544fa6d47b39p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.8p+0 : 0x1.544fa6d47b38fp+0 : inexact-ok
+= tgamma upward dbl-64 0x2.8p+0 : 0x1.544fa6d47b39p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.8p+0L : 0x1.544fa6d47b38ffdap+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.8p+0L : 0x1.544fa6d47b38ffdcp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.8p+0L : 0x1.544fa6d47b38ffdap+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.8p+0L : 0x1.544fa6d47b38ffdcp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.8p+0L : 0x1.544fa6d47b38ffdap+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.8p+0L : 0x1.544fa6d47b38ffdcp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.8p+0L : 0x1.544fa6d47b38ffdap+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.8p+0L : 0x1.544fa6d47b38ffdcp+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.8p+0L : 0x1.544fa6d47b38ffdb52c43d8a064ap+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.8p+0L : 0x1.544fa6d47b38ffdb52c43d8a064bp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.8p+0L : 0x1.544fa6d47b38ffdb52c43d8a064ap+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.8p+0L : 0x1.544fa6d47b38ffdb52c43d8a064bp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.8p+0L : 0x1.544fa6d47b38ffdb52c43d8a06p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.8p+0L : 0x1.544fa6d47b38ffdb52c43d8a068p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.8p+0L : 0x1.544fa6d47b38ffdb52c43d8a06p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.8p+0L : 0x1.544fa6d47b38ffdb52c43d8a068p+0L : inexact-ok
+tgamma 3.5
+= tgamma downward flt-32 0x3.8p+0f : 0x3.52c72p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.8p+0f : 0x3.52c72p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.8p+0f : 0x3.52c72p+0f : inexact-ok
+= tgamma upward flt-32 0x3.8p+0f : 0x3.52c724p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.8p+0 : 0x3.52c72113340e6p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.8p+0 : 0x3.52c72113340e8p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.8p+0 : 0x3.52c72113340e6p+0 : inexact-ok
+= tgamma upward dbl-64 0x3.8p+0 : 0x3.52c72113340e8p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.8p+0L : 0x3.52c72113340e7fa4p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.8p+0L : 0x3.52c72113340e7fa4p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.8p+0L : 0x3.52c72113340e7fa4p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.8p+0L : 0x3.52c72113340e7fa8p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.8p+0L : 0x3.52c72113340e7fa4p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.8p+0L : 0x3.52c72113340e7fa4p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.8p+0L : 0x3.52c72113340e7fa4p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.8p+0L : 0x3.52c72113340e7fa8p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.8p+0L : 0x3.52c72113340e7fa44eea99d90fbap+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.8p+0L : 0x3.52c72113340e7fa44eea99d90fbcp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.8p+0L : 0x3.52c72113340e7fa44eea99d90fbap+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.8p+0L : 0x3.52c72113340e7fa44eea99d90fbcp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.8p+0L : 0x3.52c72113340e7fa44eea99d90fp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.8p+0L : 0x3.52c72113340e7fa44eea99d91p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.8p+0L : 0x3.52c72113340e7fa44eea99d90fp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.8p+0L : 0x3.52c72113340e7fa44eea99d91p+0L : inexact-ok
+tgamma 4.5
+= tgamma downward flt-32 0x4.8p+0f : 0xb.a1b8fp+0f : inexact-ok
+= tgamma tonearest flt-32 0x4.8p+0f : 0xb.a1b8fp+0f : inexact-ok
+= tgamma towardzero flt-32 0x4.8p+0f : 0xb.a1b8fp+0f : inexact-ok
+= tgamma upward flt-32 0x4.8p+0f : 0xb.a1b9p+0f : inexact-ok
+= tgamma downward dbl-64 0x4.8p+0 : 0xb.a1b8f3c336328p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4.8p+0 : 0xb.a1b8f3c336328p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4.8p+0 : 0xb.a1b8f3c336328p+0 : inexact-ok
+= tgamma upward dbl-64 0x4.8p+0 : 0xb.a1b8f3c33633p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.8p+0L : 0xb.a1b8f3c33632bebp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.8p+0L : 0xb.a1b8f3c33632becp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.8p+0L : 0xb.a1b8f3c33632bebp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.8p+0L : 0xb.a1b8f3c33632becp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.8p+0L : 0xb.a1b8f3c33632bebp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.8p+0L : 0xb.a1b8f3c33632becp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.8p+0L : 0xb.a1b8f3c33632bebp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.8p+0L : 0xb.a1b8f3c33632becp+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.8p+0L : 0xb.a1b8f3c33632bebf14351a77b708p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.8p+0L : 0xb.a1b8f3c33632bebf14351a77b71p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.8p+0L : 0xb.a1b8f3c33632bebf14351a77b708p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.8p+0L : 0xb.a1b8f3c33632bebf14351a77b71p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.8p+0L : 0xb.a1b8f3c33632bebf14351a77b4p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.8p+0L : 0xb.a1b8f3c33632bebf14351a77b8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.8p+0L : 0xb.a1b8f3c33632bebf14351a77b4p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.8p+0L : 0xb.a1b8f3c33632bebf14351a77b8p+0L : inexact-ok
+tgamma 5.5
+= tgamma downward flt-32 0x5.8p+0f : 0x3.457c04p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.8p+0f : 0x3.457c04p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.8p+0f : 0x3.457c04p+4f : inexact-ok
+= tgamma upward flt-32 0x5.8p+0f : 0x3.457c08p+4f : inexact-ok
+= tgamma downward dbl-64 0x5.8p+0 : 0x3.457c048ee73e4p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.8p+0 : 0x3.457c048ee73e4p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.8p+0 : 0x3.457c048ee73e4p+4 : inexact-ok
+= tgamma upward dbl-64 0x5.8p+0 : 0x3.457c048ee73e6p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.8p+0L : 0x3.457c048ee73e45a4p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.8p+0L : 0x3.457c048ee73e45a4p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.8p+0L : 0x3.457c048ee73e45a4p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.8p+0L : 0x3.457c048ee73e45a8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.8p+0L : 0x3.457c048ee73e45a4p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.8p+0L : 0x3.457c048ee73e45a4p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.8p+0L : 0x3.457c048ee73e45a4p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.8p+0L : 0x3.457c048ee73e45a8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.8p+0L : 0x3.457c048ee73e45a5bdaeef71ab7cp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.8p+0L : 0x3.457c048ee73e45a5bdaeef71ab7cp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.8p+0L : 0x3.457c048ee73e45a5bdaeef71ab7cp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.8p+0L : 0x3.457c048ee73e45a5bdaeef71ab7ep+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.8p+0L : 0x3.457c048ee73e45a5bdaeef71abp+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.8p+0L : 0x3.457c048ee73e45a5bdaeef71abp+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.8p+0L : 0x3.457c048ee73e45a5bdaeef71abp+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.8p+0L : 0x3.457c048ee73e45a5bdaeef71acp+4L : inexact-ok
+tgamma 6.5
+= tgamma downward flt-32 0x6.8p+0f : 0x1.1fe2ap+8f : inexact-ok
+= tgamma tonearest flt-32 0x6.8p+0f : 0x1.1fe2a2p+8f : inexact-ok
+= tgamma towardzero flt-32 0x6.8p+0f : 0x1.1fe2ap+8f : inexact-ok
+= tgamma upward flt-32 0x6.8p+0f : 0x1.1fe2a2p+8f : inexact-ok
+= tgamma downward dbl-64 0x6.8p+0 : 0x1.1fe2a1911f7d6p+8 : inexact-ok
+= tgamma tonearest dbl-64 0x6.8p+0 : 0x1.1fe2a1911f7d6p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x6.8p+0 : 0x1.1fe2a1911f7d6p+8 : inexact-ok
+= tgamma upward dbl-64 0x6.8p+0 : 0x1.1fe2a1911f7d7p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.8p+0L : 0x1.1fe2a1911f7d67fp+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.8p+0L : 0x1.1fe2a1911f7d67fp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.8p+0L : 0x1.1fe2a1911f7d67fp+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.8p+0L : 0x1.1fe2a1911f7d67f2p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.8p+0L : 0x1.1fe2a1911f7d67fp+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.8p+0L : 0x1.1fe2a1911f7d67fp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.8p+0L : 0x1.1fe2a1911f7d67fp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.8p+0L : 0x1.1fe2a1911f7d67f2p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.8p+0L : 0x1.1fe2a1911f7d67f0f934224f12f2p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.8p+0L : 0x1.1fe2a1911f7d67f0f934224f12f3p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.8p+0L : 0x1.1fe2a1911f7d67f0f934224f12f2p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.8p+0L : 0x1.1fe2a1911f7d67f0f934224f12f3p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.8p+0L : 0x1.1fe2a1911f7d67f0f934224f128p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.8p+0L : 0x1.1fe2a1911f7d67f0f934224f13p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.8p+0L : 0x1.1fe2a1911f7d67f0f934224f128p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.8p+0L : 0x1.1fe2a1911f7d67f0f934224f13p+8L : inexact-ok
+tgamma 7.5
+= tgamma downward flt-32 0x7.8p+0f : 0x7.4f4118p+8f : inexact-ok
+= tgamma tonearest flt-32 0x7.8p+0f : 0x7.4f4118p+8f : inexact-ok
+= tgamma towardzero flt-32 0x7.8p+0f : 0x7.4f4118p+8f : inexact-ok
+= tgamma upward flt-32 0x7.8p+0f : 0x7.4f412p+8f : inexact-ok
+= tgamma downward dbl-64 0x7.8p+0 : 0x7.4f411a2f4cafp+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7.8p+0 : 0x7.4f411a2f4caf4p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7.8p+0 : 0x7.4f411a2f4cafp+8 : inexact-ok
+= tgamma upward dbl-64 0x7.8p+0 : 0x7.4f411a2f4caf4p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.8p+0L : 0x7.4f411a2f4caf2398p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.8p+0L : 0x7.4f411a2f4caf23ap+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.8p+0L : 0x7.4f411a2f4caf2398p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.8p+0L : 0x7.4f411a2f4caf23ap+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.8p+0L : 0x7.4f411a2f4caf2398p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.8p+0L : 0x7.4f411a2f4caf23ap+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.8p+0L : 0x7.4f411a2f4caf2398p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.8p+0L : 0x7.4f411a2f4caf23ap+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.8p+0L : 0x7.4f411a2f4caf239e53d2df01fb28p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.8p+0L : 0x7.4f411a2f4caf239e53d2df01fb28p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.8p+0L : 0x7.4f411a2f4caf239e53d2df01fb28p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.8p+0L : 0x7.4f411a2f4caf239e53d2df01fb2cp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.8p+0L : 0x7.4f411a2f4caf239e53d2df01fap+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.8p+0L : 0x7.4f411a2f4caf239e53d2df01fcp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.8p+0L : 0x7.4f411a2f4caf239e53d2df01fap+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.8p+0L : 0x7.4f411a2f4caf239e53d2df01fcp+8L : inexact-ok
+tgamma 8.5
+= tgamma downward flt-32 0x8.8p+0f : 0x3.6d2684p+12f : inexact-ok
+= tgamma tonearest flt-32 0x8.8p+0f : 0x3.6d2684p+12f : inexact-ok
+= tgamma towardzero flt-32 0x8.8p+0f : 0x3.6d2684p+12f : inexact-ok
+= tgamma upward flt-32 0x8.8p+0f : 0x3.6d2688p+12f : inexact-ok
+= tgamma downward dbl-64 0x8.8p+0 : 0x3.6d2684462bf2p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8.8p+0 : 0x3.6d2684462bf22p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8.8p+0 : 0x3.6d2684462bf2p+12 : inexact-ok
+= tgamma upward dbl-64 0x8.8p+0 : 0x3.6d2684462bf22p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.8p+0L : 0x3.6d2684462bf218bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.8p+0L : 0x3.6d2684462bf218b4p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.8p+0L : 0x3.6d2684462bf218bp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.8p+0L : 0x3.6d2684462bf218b4p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.8p+0L : 0x3.6d2684462bf218bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.8p+0L : 0x3.6d2684462bf218b4p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.8p+0L : 0x3.6d2684462bf218bp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.8p+0L : 0x3.6d2684462bf218b4p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.8p+0L : 0x3.6d2684462bf218b2374ad888edbap+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.8p+0L : 0x3.6d2684462bf218b2374ad888edbcp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.8p+0L : 0x3.6d2684462bf218b2374ad888edbap+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.8p+0L : 0x3.6d2684462bf218b2374ad888edbcp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.8p+0L : 0x3.6d2684462bf218b2374ad888edp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.8p+0L : 0x3.6d2684462bf218b2374ad888eep+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.8p+0L : 0x3.6d2684462bf218b2374ad888edp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.8p+0L : 0x3.6d2684462bf218b2374ad888eep+12L : inexact-ok
+tgamma 9.5
+= tgamma downward flt-32 0x9.8p+0f : 0x1.d1fc76p+16f : inexact-ok
+= tgamma tonearest flt-32 0x9.8p+0f : 0x1.d1fc76p+16f : inexact-ok
+= tgamma towardzero flt-32 0x9.8p+0f : 0x1.d1fc76p+16f : inexact-ok
+= tgamma upward flt-32 0x9.8p+0f : 0x1.d1fc78p+16f : inexact-ok
+= tgamma downward dbl-64 0x9.8p+0 : 0x1.d1fc764547589p+16 : inexact-ok
+= tgamma tonearest dbl-64 0x9.8p+0 : 0x1.d1fc76454758ap+16 : inexact-ok
+= tgamma towardzero dbl-64 0x9.8p+0 : 0x1.d1fc764547589p+16 : inexact-ok
+= tgamma upward dbl-64 0x9.8p+0 : 0x1.d1fc76454758ap+16 : inexact-ok
+= tgamma downward ldbl-96-intel 0x9.8p+0L : 0x1.d1fc764547589d1ep+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x9.8p+0L : 0x1.d1fc764547589d1ep+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x9.8p+0L : 0x1.d1fc764547589d1ep+16L : inexact-ok
+= tgamma upward ldbl-96-intel 0x9.8p+0L : 0x1.d1fc764547589d2p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x9.8p+0L : 0x1.d1fc764547589d1ep+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x9.8p+0L : 0x1.d1fc764547589d1ep+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x9.8p+0L : 0x1.d1fc764547589d1ep+16L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x9.8p+0L : 0x1.d1fc764547589d2p+16L : inexact-ok
+= tgamma downward ldbl-128 0x9.8p+0L : 0x1.d1fc764547589d1ead5fc308be4bp+16L : inexact-ok
+= tgamma tonearest ldbl-128 0x9.8p+0L : 0x1.d1fc764547589d1ead5fc308be4cp+16L : inexact-ok
+= tgamma towardzero ldbl-128 0x9.8p+0L : 0x1.d1fc764547589d1ead5fc308be4bp+16L : inexact-ok
+= tgamma upward ldbl-128 0x9.8p+0L : 0x1.d1fc764547589d1ead5fc308be4cp+16L : inexact-ok
+= tgamma downward ldbl-128ibm 0x9.8p+0L : 0x1.d1fc764547589d1ead5fc308bep+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x9.8p+0L : 0x1.d1fc764547589d1ead5fc308be8p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x9.8p+0L : 0x1.d1fc764547589d1ead5fc308bep+16L : inexact-ok
+= tgamma upward ldbl-128ibm 0x9.8p+0L : 0x1.d1fc764547589d1ead5fc308be8p+16L : inexact-ok
+tgamma -1.5
+= tgamma downward flt-32 -0x1.8p+0f : 0x2.5cff6p+0f : inexact-ok
+= tgamma tonearest flt-32 -0x1.8p+0f : 0x2.5cff6p+0f : inexact-ok
+= tgamma towardzero flt-32 -0x1.8p+0f : 0x2.5cff6p+0f : inexact-ok
+= tgamma upward flt-32 -0x1.8p+0f : 0x2.5cff64p+0f : inexact-ok
+= tgamma downward dbl-64 -0x1.8p+0 : 0x2.5cff6179be9e2p+0 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.8p+0 : 0x2.5cff6179be9e4p+0 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.8p+0 : 0x2.5cff6179be9e2p+0 : inexact-ok
+= tgamma upward dbl-64 -0x1.8p+0 : 0x2.5cff6179be9e4p+0 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.8p+0L : 0x2.5cff6179be9e38ap+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.8p+0L : 0x2.5cff6179be9e38a4p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.8p+0L : 0x2.5cff6179be9e38ap+0L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.8p+0L : 0x2.5cff6179be9e38a4p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.8p+0L : 0x2.5cff6179be9e38ap+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.8p+0L : 0x2.5cff6179be9e38a4p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.8p+0L : 0x2.5cff6179be9e38ap+0L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.8p+0L : 0x2.5cff6179be9e38a4p+0L : inexact-ok
+= tgamma downward ldbl-128 -0x1.8p+0L : 0x2.5cff6179be9e38a25a406d6727ap+0L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.8p+0L : 0x2.5cff6179be9e38a25a406d6727a2p+0L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.8p+0L : 0x2.5cff6179be9e38a25a406d6727ap+0L : inexact-ok
+= tgamma upward ldbl-128 -0x1.8p+0L : 0x2.5cff6179be9e38a25a406d6727a2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.8p+0L : 0x2.5cff6179be9e38a25a406d6727p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.8p+0L : 0x2.5cff6179be9e38a25a406d6728p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.8p+0L : 0x2.5cff6179be9e38a25a406d6727p+0L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.8p+0L : 0x2.5cff6179be9e38a25a406d6728p+0L : inexact-ok
+tgamma -2.5
+= tgamma downward flt-32 -0x2.8p+0f : -0xf.1ffc1p-4f : inexact-ok
+= tgamma tonearest flt-32 -0x2.8p+0f : -0xf.1ffc1p-4f : inexact-ok
+= tgamma towardzero flt-32 -0x2.8p+0f : -0xf.1ffcp-4f : inexact-ok
+= tgamma upward flt-32 -0x2.8p+0f : -0xf.1ffcp-4f : inexact-ok
+= tgamma downward dbl-64 -0x2.8p+0 : -0xf.1ffc097190c18p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8p+0 : -0xf.1ffc097190c18p-4 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8p+0 : -0xf.1ffc097190c1p-4 : inexact-ok
+= tgamma upward dbl-64 -0x2.8p+0 : -0xf.1ffc097190c1p-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8p+0L : -0xf.1ffc097190c16a8p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8p+0L : -0xf.1ffc097190c16a7p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8p+0L : -0xf.1ffc097190c16a7p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8p+0L : -0xf.1ffc097190c16a7p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8p+0L : -0xf.1ffc097190c16a8p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8p+0L : -0xf.1ffc097190c16a7p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8p+0L : -0xf.1ffc097190c16a7p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8p+0L : -0xf.1ffc097190c16a7p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8p+0L : -0xf.1ffc097190c16a7574cf88fa974p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8p+0L : -0xf.1ffc097190c16a7574cf88fa9738p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8p+0L : -0xf.1ffc097190c16a7574cf88fa9738p-4L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8p+0L : -0xf.1ffc097190c16a7574cf88fa9738p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8p+0L : -0xf.1ffc097190c16a7574cf88fa98p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8p+0L : -0xf.1ffc097190c16a7574cf88fa98p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8p+0L : -0xf.1ffc097190c16a7574cf88fa94p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8p+0L : -0xf.1ffc097190c16a7574cf88fa94p-4L : inexact-ok
+tgamma -3.5
+= tgamma downward flt-32 -0x3.8p+0f : 0x4.5248p-4f : inexact-ok
+= tgamma tonearest flt-32 -0x3.8p+0f : 0x4.5248p-4f : inexact-ok
+= tgamma towardzero flt-32 -0x3.8p+0f : 0x4.5248p-4f : inexact-ok
+= tgamma upward flt-32 -0x3.8p+0f : 0x4.524808p-4f : inexact-ok
+= tgamma downward dbl-64 -0x3.8p+0 : 0x4.524802b2bba4cp-4 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.8p+0 : 0x4.524802b2bba5p-4 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.8p+0 : 0x4.524802b2bba4cp-4 : inexact-ok
+= tgamma upward dbl-64 -0x3.8p+0 : 0x4.524802b2bba5p-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.8p+0L : 0x4.524802b2bba4f9d8p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.8p+0L : 0x4.524802b2bba4f9d8p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.8p+0L : 0x4.524802b2bba4f9d8p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.8p+0L : 0x4.524802b2bba4f9ep-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.8p+0L : 0x4.524802b2bba4f9d8p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.8p+0L : 0x4.524802b2bba4f9d8p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.8p+0L : 0x4.524802b2bba4f9d8p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.8p+0L : 0x4.524802b2bba4f9ep-4L : inexact-ok
+= tgamma downward ldbl-128 -0x3.8p+0L : 0x4.524802b2bba4f9d86a84704798ecp-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.8p+0L : 0x4.524802b2bba4f9d86a84704798ecp-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.8p+0L : 0x4.524802b2bba4f9d86a84704798ecp-4L : inexact-ok
+= tgamma upward ldbl-128 -0x3.8p+0L : 0x4.524802b2bba4f9d86a84704798fp-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.8p+0L : 0x4.524802b2bba4f9d86a84704798p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.8p+0L : 0x4.524802b2bba4f9d86a84704798p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.8p+0L : 0x4.524802b2bba4f9d86a84704798p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.8p+0L : 0x4.524802b2bba4f9d86a8470479ap-4L : inexact-ok
+tgamma -4.5
+= tgamma downward flt-32 -0x4.8p+0f : -0xf.5d71ep-8f : inexact-ok
+= tgamma tonearest flt-32 -0x4.8p+0f : -0xf.5d71dp-8f : inexact-ok
+= tgamma towardzero flt-32 -0x4.8p+0f : -0xf.5d71dp-8f : inexact-ok
+= tgamma upward flt-32 -0x4.8p+0f : -0xf.5d71dp-8f : inexact-ok
+= tgamma downward dbl-64 -0x4.8p+0 : -0xf.5d71d0b4624bp-8 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.8p+0 : -0xf.5d71d0b4624a8p-8 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.8p+0 : -0xf.5d71d0b4624a8p-8 : inexact-ok
+= tgamma upward dbl-64 -0x4.8p+0 : -0xf.5d71d0b4624a8p-8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.8p+0L : -0xf.5d71d0b4624a94dp-8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.8p+0L : -0xf.5d71d0b4624a94dp-8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.8p+0L : -0xf.5d71d0b4624a94cp-8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.8p+0L : -0xf.5d71d0b4624a94cp-8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.8p+0L : -0xf.5d71d0b4624a94dp-8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.8p+0L : -0xf.5d71d0b4624a94dp-8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.8p+0L : -0xf.5d71d0b4624a94cp-8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.8p+0L : -0xf.5d71d0b4624a94cp-8L : inexact-ok
+= tgamma downward ldbl-128 -0x4.8p+0L : -0xf.5d71d0b4624a94c8972c39e21fcp-8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.8p+0L : -0xf.5d71d0b4624a94c8972c39e21fb8p-8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.8p+0L : -0xf.5d71d0b4624a94c8972c39e21fb8p-8L : inexact-ok
+= tgamma upward ldbl-128 -0x4.8p+0L : -0xf.5d71d0b4624a94c8972c39e21fb8p-8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.8p+0L : -0xf.5d71d0b4624a94c8972c39e22p-8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.8p+0L : -0xf.5d71d0b4624a94c8972c39e22p-8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.8p+0L : -0xf.5d71d0b4624a94c8972c39e21cp-8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.8p+0L : -0xf.5d71d0b4624a94c8972c39e21cp-8L : inexact-ok
+tgamma -5.5
+= tgamma downward flt-32 -0x5.8p+0f : 0x2.cb2bf4p-8f : inexact-ok
+= tgamma tonearest flt-32 -0x5.8p+0f : 0x2.cb2bf8p-8f : inexact-ok
+= tgamma towardzero flt-32 -0x5.8p+0f : 0x2.cb2bf4p-8f : inexact-ok
+= tgamma upward flt-32 -0x5.8p+0f : 0x2.cb2bf8p-8f : inexact-ok
+= tgamma downward dbl-64 -0x5.8p+0 : 0x2.cb2bf7669d81ep-8 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.8p+0 : 0x2.cb2bf7669d81ep-8 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.8p+0 : 0x2.cb2bf7669d81ep-8 : inexact-ok
+= tgamma upward dbl-64 -0x5.8p+0 : 0x2.cb2bf7669d82p-8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.8p+0L : 0x2.cb2bf7669d81ec8p-8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.8p+0L : 0x2.cb2bf7669d81ec8p-8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.8p+0L : 0x2.cb2bf7669d81ec8p-8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.8p+0L : 0x2.cb2bf7669d81ec84p-8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.8p+0L : 0x2.cb2bf7669d81ec8p-8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.8p+0L : 0x2.cb2bf7669d81ec8p-8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.8p+0L : 0x2.cb2bf7669d81ec8p-8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.8p+0L : 0x2.cb2bf7669d81ec84p-8L : inexact-ok
+= tgamma downward ldbl-128 -0x5.8p+0L : 0x2.cb2bf7669d81ec818fd97ee34b96p-8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.8p+0L : 0x2.cb2bf7669d81ec818fd97ee34b96p-8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.8p+0L : 0x2.cb2bf7669d81ec818fd97ee34b96p-8L : inexact-ok
+= tgamma upward ldbl-128 -0x5.8p+0L : 0x2.cb2bf7669d81ec818fd97ee34b98p-8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.8p+0L : 0x2.cb2bf7669d81ec818fd97ee34bp-8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.8p+0L : 0x2.cb2bf7669d81ec818fd97ee34cp-8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.8p+0L : 0x2.cb2bf7669d81ec818fd97ee34bp-8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.8p+0L : 0x2.cb2bf7669d81ec818fd97ee34cp-8L : inexact-ok
+tgamma -6.5
+= tgamma downward flt-32 -0x6.8p+0f : -0x6.e06c4p-12f : inexact-ok
+= tgamma tonearest flt-32 -0x6.8p+0f : -0x6.e06c38p-12f : inexact-ok
+= tgamma towardzero flt-32 -0x6.8p+0f : -0x6.e06c38p-12f : inexact-ok
+= tgamma upward flt-32 -0x6.8p+0f : -0x6.e06c38p-12f : inexact-ok
+= tgamma downward dbl-64 -0x6.8p+0 : -0x6.e06c399a214p-12 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.8p+0 : -0x6.e06c399a213fcp-12 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.8p+0 : -0x6.e06c399a213fcp-12 : inexact-ok
+= tgamma upward dbl-64 -0x6.8p+0 : -0x6.e06c399a213fcp-12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.8p+0L : -0x6.e06c399a213fd008p-12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.8p+0L : -0x6.e06c399a213fdp-12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.8p+0L : -0x6.e06c399a213fdp-12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.8p+0L : -0x6.e06c399a213fdp-12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.8p+0L : -0x6.e06c399a213fd008p-12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.8p+0L : -0x6.e06c399a213fdp-12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.8p+0L : -0x6.e06c399a213fdp-12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.8p+0L : -0x6.e06c399a213fdp-12L : inexact-ok
+= tgamma downward ldbl-128 -0x6.8p+0L : -0x6.e06c399a213fd003d83ec22f7efcp-12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.8p+0L : -0x6.e06c399a213fd003d83ec22f7efcp-12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.8p+0L : -0x6.e06c399a213fd003d83ec22f7ef8p-12L : inexact-ok
+= tgamma upward ldbl-128 -0x6.8p+0L : -0x6.e06c399a213fd003d83ec22f7ef8p-12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.8p+0L : -0x6.e06c399a213fd003d83ec22f8p-12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.8p+0L : -0x6.e06c399a213fd003d83ec22f7ep-12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.8p+0L : -0x6.e06c399a213fd003d83ec22f7ep-12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.8p+0L : -0x6.e06c399a213fd003d83ec22f7ep-12L : inexact-ok
+tgamma -7.5
+= tgamma downward flt-32 -0x7.8p+0f : 0xe.ab918p-16f : inexact-ok
+= tgamma tonearest flt-32 -0x7.8p+0f : 0xe.ab919p-16f : inexact-ok
+= tgamma towardzero flt-32 -0x7.8p+0f : 0xe.ab918p-16f : inexact-ok
+= tgamma upward flt-32 -0x7.8p+0f : 0xe.ab919p-16f : inexact-ok
+= tgamma downward dbl-64 -0x7.8p+0 : 0xe.ab918bf37a218p-16 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.8p+0 : 0xe.ab918bf37a218p-16 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.8p+0 : 0xe.ab918bf37a218p-16 : inexact-ok
+= tgamma upward dbl-64 -0x7.8p+0 : 0xe.ab918bf37a22p-16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.8p+0L : 0xe.ab918bf37a21bbcp-16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.8p+0L : 0xe.ab918bf37a21bbcp-16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.8p+0L : 0xe.ab918bf37a21bbcp-16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.8p+0L : 0xe.ab918bf37a21bbdp-16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.8p+0L : 0xe.ab918bf37a21bbcp-16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.8p+0L : 0xe.ab918bf37a21bbcp-16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.8p+0L : 0xe.ab918bf37a21bbcp-16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.8p+0L : 0xe.ab918bf37a21bbdp-16L : inexact-ok
+= tgamma downward ldbl-128 -0x7.8p+0L : 0xe.ab918bf37a21bbc3ef74d1766438p-16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.8p+0L : 0xe.ab918bf37a21bbc3ef74d176644p-16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.8p+0L : 0xe.ab918bf37a21bbc3ef74d1766438p-16L : inexact-ok
+= tgamma upward ldbl-128 -0x7.8p+0L : 0xe.ab918bf37a21bbc3ef74d176644p-16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.8p+0L : 0xe.ab918bf37a21bbc3ef74d17664p-16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.8p+0L : 0xe.ab918bf37a21bbc3ef74d17664p-16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.8p+0L : 0xe.ab918bf37a21bbc3ef74d17664p-16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.8p+0L : 0xe.ab918bf37a21bbc3ef74d17668p-16L : inexact-ok
+tgamma -8.5
+= tgamma downward flt-32 -0x8.8p+0f : -0x1.b9d4e4p-16f : inexact-ok
+= tgamma tonearest flt-32 -0x8.8p+0f : -0x1.b9d4e4p-16f : inexact-ok
+= tgamma towardzero flt-32 -0x8.8p+0f : -0x1.b9d4e2p-16f : inexact-ok
+= tgamma upward flt-32 -0x8.8p+0f : -0x1.b9d4e2p-16f : inexact-ok
+= tgamma downward dbl-64 -0x8.8p+0 : -0x1.b9d4e349d2222p-16 : inexact-ok
+= tgamma tonearest dbl-64 -0x8.8p+0 : -0x1.b9d4e349d2221p-16 : inexact-ok
+= tgamma towardzero dbl-64 -0x8.8p+0 : -0x1.b9d4e349d2221p-16 : inexact-ok
+= tgamma upward dbl-64 -0x8.8p+0 : -0x1.b9d4e349d2221p-16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.8p+0L : -0x1.b9d4e349d2221618p-16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.8p+0L : -0x1.b9d4e349d2221618p-16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.8p+0L : -0x1.b9d4e349d2221616p-16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.8p+0L : -0x1.b9d4e349d2221616p-16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.8p+0L : -0x1.b9d4e349d2221618p-16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.8p+0L : -0x1.b9d4e349d2221618p-16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.8p+0L : -0x1.b9d4e349d2221616p-16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.8p+0L : -0x1.b9d4e349d2221616p-16L : inexact-ok
+= tgamma downward ldbl-128 -0x8.8p+0L : -0x1.b9d4e349d22216170d1ccd5938f8p-16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.8p+0L : -0x1.b9d4e349d22216170d1ccd5938f8p-16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.8p+0L : -0x1.b9d4e349d22216170d1ccd5938f7p-16L : inexact-ok
+= tgamma upward ldbl-128 -0x8.8p+0L : -0x1.b9d4e349d22216170d1ccd5938f7p-16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.8p+0L : -0x1.b9d4e349d22216170d1ccd5939p-16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.8p+0L : -0x1.b9d4e349d22216170d1ccd5939p-16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.8p+0L : -0x1.b9d4e349d22216170d1ccd59388p-16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.8p+0L : -0x1.b9d4e349d22216170d1ccd59388p-16L : inexact-ok
+tgamma -9.5
+= tgamma downward flt-32 -0x9.8p+0f : 0x2.e8232cp-20f : inexact-ok
+= tgamma tonearest flt-32 -0x9.8p+0f : 0x2.e8232cp-20f : inexact-ok
+= tgamma towardzero flt-32 -0x9.8p+0f : 0x2.e8232cp-20f : inexact-ok
+= tgamma upward flt-32 -0x9.8p+0f : 0x2.e8233p-20f : inexact-ok
+= tgamma downward dbl-64 -0x9.8p+0 : 0x2.e8232df597cd8p-20 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.8p+0 : 0x2.e8232df597cdap-20 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.8p+0 : 0x2.e8232df597cd8p-20 : inexact-ok
+= tgamma upward dbl-64 -0x9.8p+0 : 0x2.e8232df597cdap-20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.8p+0L : 0x2.e8232df597cd9e74p-20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.8p+0L : 0x2.e8232df597cd9e78p-20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.8p+0L : 0x2.e8232df597cd9e74p-20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.8p+0L : 0x2.e8232df597cd9e78p-20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.8p+0L : 0x2.e8232df597cd9e74p-20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.8p+0L : 0x2.e8232df597cd9e78p-20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.8p+0L : 0x2.e8232df597cd9e74p-20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.8p+0L : 0x2.e8232df597cd9e78p-20L : inexact-ok
+= tgamma downward ldbl-128 -0x9.8p+0L : 0x2.e8232df597cd9e77aa4b74cc2a0cp-20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.8p+0L : 0x2.e8232df597cd9e77aa4b74cc2a0ep-20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.8p+0L : 0x2.e8232df597cd9e77aa4b74cc2a0cp-20L : inexact-ok
+= tgamma upward ldbl-128 -0x9.8p+0L : 0x2.e8232df597cd9e77aa4b74cc2a0ep-20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.8p+0L : 0x2.e8232df597cd9e77aa4b74cc2ap-20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.8p+0L : 0x2.e8232df597cd9e77aa4b74cc2ap-20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.8p+0L : 0x2.e8232df597cd9e77aa4b74cc2ap-20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.8p+0L : 0x2.e8232df597cd9e77aa4b74cc2bp-20L : inexact-ok
+tgamma 0x1p-24
+= tgamma downward flt-32 0x1p-24f : 0xf.fffffp+20f : inexact-ok
+= tgamma tonearest flt-32 0x1p-24f : 0xf.fffffp+20f : inexact-ok
+= tgamma towardzero flt-32 0x1p-24f : 0xf.fffffp+20f : inexact-ok
+= tgamma upward flt-32 0x1p-24f : 0x1p+24f : inexact-ok
+= tgamma downward dbl-64 0x1p-24 : 0xf.fffff6c3b9918p+20 : inexact-ok
+= tgamma tonearest dbl-64 0x1p-24 : 0xf.fffff6c3b9918p+20 : inexact-ok
+= tgamma towardzero dbl-64 0x1p-24 : 0xf.fffff6c3b9918p+20 : inexact-ok
+= tgamma upward dbl-64 0x1p-24 : 0xf.fffff6c3b992p+20 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p-24L : 0xf.fffff6c3b9919b5p+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p-24L : 0xf.fffff6c3b9919b5p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p-24L : 0xf.fffff6c3b9919b5p+20L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p-24L : 0xf.fffff6c3b9919b6p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p-24L : 0xf.fffff6c3b9919b5p+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p-24L : 0xf.fffff6c3b9919b5p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p-24L : 0xf.fffff6c3b9919b5p+20L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p-24L : 0xf.fffff6c3b9919b6p+20L : inexact-ok
+= tgamma downward ldbl-128 0x1p-24L : 0xf.fffff6c3b9919b51461e34e873b8p+20L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p-24L : 0xf.fffff6c3b9919b51461e34e873cp+20L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p-24L : 0xf.fffff6c3b9919b51461e34e873b8p+20L : inexact-ok
+= tgamma upward ldbl-128 0x1p-24L : 0xf.fffff6c3b9919b51461e34e873cp+20L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p-24L : 0xf.fffff6c3b9919b51461e34e87p+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p-24L : 0xf.fffff6c3b9919b51461e34e874p+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p-24L : 0xf.fffff6c3b9919b51461e34e87p+20L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p-24L : 0xf.fffff6c3b9919b51461e34e874p+20L : inexact-ok
+tgamma -0x1p-24
+= tgamma downward flt-32 -0x1p-24f : -0x1.000002p+24f : inexact-ok
+= tgamma tonearest flt-32 -0x1p-24f : -0x1p+24f : inexact-ok
+= tgamma towardzero flt-32 -0x1p-24f : -0x1p+24f : inexact-ok
+= tgamma upward flt-32 -0x1p-24f : -0x1p+24f : inexact-ok
+= tgamma downward dbl-64 -0x1p-24 : -0x1.00000093c468fp+24 : inexact-ok
+= tgamma tonearest dbl-64 -0x1p-24 : -0x1.00000093c468ep+24 : inexact-ok
+= tgamma towardzero dbl-64 -0x1p-24 : -0x1.00000093c468ep+24 : inexact-ok
+= tgamma upward dbl-64 -0x1p-24 : -0x1.00000093c468ep+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1p-24L : -0x1.00000093c468e0b2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1p-24L : -0x1.00000093c468e0bp+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1p-24L : -0x1.00000093c468e0bp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1p-24L : -0x1.00000093c468e0bp+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1p-24L : -0x1.00000093c468e0b2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1p-24L : -0x1.00000093c468e0bp+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1p-24L : -0x1.00000093c468e0bp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1p-24L : -0x1.00000093c468e0bp+24L : inexact-ok
+= tgamma downward ldbl-128 -0x1p-24L : -0x1.00000093c468e0b077c1ce0af6ep+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1p-24L : -0x1.00000093c468e0b077c1ce0af6dfp+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1p-24L : -0x1.00000093c468e0b077c1ce0af6dfp+24L : inexact-ok
+= tgamma upward ldbl-128 -0x1p-24L : -0x1.00000093c468e0b077c1ce0af6dfp+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1p-24L : -0x1.00000093c468e0b077c1ce0af7p+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1p-24L : -0x1.00000093c468e0b077c1ce0af7p+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1p-24L : -0x1.00000093c468e0b077c1ce0af68p+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1p-24L : -0x1.00000093c468e0b077c1ce0af68p+24L : inexact-ok
+tgamma 0x1p-53
+= tgamma downward flt-32 0x8p-56f : 0x1.fffffep+52f : inexact-ok
+= tgamma tonearest flt-32 0x8p-56f : 0x2p+52f : inexact-ok
+= tgamma towardzero flt-32 0x8p-56f : 0x1.fffffep+52f : inexact-ok
+= tgamma upward flt-32 0x8p-56f : 0x2p+52f : inexact-ok
+= tgamma downward dbl-64 0x8p-56 : 0x1.fffffffffffffp+52 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-56 : 0x1.fffffffffffffp+52 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-56 : 0x1.fffffffffffffp+52 : inexact-ok
+= tgamma upward dbl-64 0x8p-56 : 0x2p+52 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-56L : 0x1.fffffffffffff6c2p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-56L : 0x1.fffffffffffff6c4p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-56L : 0x1.fffffffffffff6c2p+52L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-56L : 0x1.fffffffffffff6c4p+52L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-56L : 0x1.fffffffffffff6c2p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-56L : 0x1.fffffffffffff6c4p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-56L : 0x1.fffffffffffff6c2p+52L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-56L : 0x1.fffffffffffff6c4p+52L : inexact-ok
+= tgamma downward ldbl-128 0x8p-56L : 0x1.fffffffffffff6c3b981c824f404p+52L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-56L : 0x1.fffffffffffff6c3b981c824f404p+52L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-56L : 0x1.fffffffffffff6c3b981c824f404p+52L : inexact-ok
+= tgamma upward ldbl-128 0x8p-56L : 0x1.fffffffffffff6c3b981c824f405p+52L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-56L : 0x1.fffffffffffff6c3b981c824f4p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-56L : 0x1.fffffffffffff6c3b981c824f4p+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-56L : 0x1.fffffffffffff6c3b981c824f4p+52L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-56L : 0x1.fffffffffffff6c3b981c824f48p+52L : inexact-ok
+tgamma -0x1p-53
+= tgamma downward flt-32 -0x8p-56f : -0x2.000004p+52f : inexact-ok
+= tgamma tonearest flt-32 -0x8p-56f : -0x2p+52f : inexact-ok
+= tgamma towardzero flt-32 -0x8p-56f : -0x2p+52f : inexact-ok
+= tgamma upward flt-32 -0x8p-56f : -0x2p+52f : inexact-ok
+= tgamma downward dbl-64 -0x8p-56 : -0x2.0000000000002p+52 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-56 : -0x2p+52 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-56 : -0x2p+52 : inexact-ok
+= tgamma upward dbl-64 -0x8p-56 : -0x2p+52 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-56L : -0x2.000000000000094p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-56L : -0x2.000000000000093cp+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-56L : -0x2.000000000000093cp+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-56L : -0x2.000000000000093cp+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-56L : -0x2.000000000000094p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-56L : -0x2.000000000000093cp+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-56L : -0x2.000000000000093cp+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-56L : -0x2.000000000000093cp+52L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-56L : -0x2.000000000000093c467e37db0cfap+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-56L : -0x2.000000000000093c467e37db0cf8p+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-56L : -0x2.000000000000093c467e37db0cf8p+52L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-56L : -0x2.000000000000093c467e37db0cf8p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-56L : -0x2.000000000000093c467e37db0dp+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-56L : -0x2.000000000000093c467e37db0dp+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-56L : -0x2.000000000000093c467e37db0cp+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-56L : -0x2.000000000000093c467e37db0cp+52L : inexact-ok
+tgamma 0x1p-64
+= tgamma downward flt-32 0x1p-64f : 0xf.fffffp+60f : inexact-ok
+= tgamma tonearest flt-32 0x1p-64f : 0x1p+64f : inexact-ok
+= tgamma towardzero flt-32 0x1p-64f : 0xf.fffffp+60f : inexact-ok
+= tgamma upward flt-32 0x1p-64f : 0x1p+64f : inexact-ok
+= tgamma downward dbl-64 0x1p-64 : 0xf.ffffffffffff8p+60 : inexact-ok
+= tgamma tonearest dbl-64 0x1p-64 : 0x1p+64 : inexact-ok
+= tgamma towardzero dbl-64 0x1p-64 : 0xf.ffffffffffff8p+60 : inexact-ok
+= tgamma upward dbl-64 0x1p-64 : 0x1p+64 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p-64L : 0xf.fffffffffffffffp+60L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p-64L : 0xf.fffffffffffffffp+60L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p-64L : 0xf.fffffffffffffffp+60L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p-64L : 0x1p+64L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p-64L : 0xf.fffffffffffffffp+60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p-64L : 0xf.fffffffffffffffp+60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p-64L : 0xf.fffffffffffffffp+60L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p-64L : 0x1p+64L : inexact-ok
+= tgamma downward ldbl-128 0x1p-64L : 0xf.fffffffffffffff6c3b981c824fp+60L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p-64L : 0xf.fffffffffffffff6c3b981c824fp+60L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p-64L : 0xf.fffffffffffffff6c3b981c824fp+60L : inexact-ok
+= tgamma upward ldbl-128 0x1p-64L : 0xf.fffffffffffffff6c3b981c824f8p+60L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p-64L : 0xf.fffffffffffffff6c3b981c824p+60L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p-64L : 0xf.fffffffffffffff6c3b981c824p+60L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p-64L : 0xf.fffffffffffffff6c3b981c824p+60L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p-64L : 0xf.fffffffffffffff6c3b981c828p+60L : inexact-ok
+tgamma -0x1p-64
+= tgamma downward flt-32 -0x1p-64f : -0x1.000002p+64f : inexact-ok
+= tgamma tonearest flt-32 -0x1p-64f : -0x1p+64f : inexact-ok
+= tgamma towardzero flt-32 -0x1p-64f : -0x1p+64f : inexact-ok
+= tgamma upward flt-32 -0x1p-64f : -0x1p+64f : inexact-ok
+= tgamma downward dbl-64 -0x1p-64 : -0x1.0000000000001p+64 : inexact-ok
+= tgamma tonearest dbl-64 -0x1p-64 : -0x1p+64 : inexact-ok
+= tgamma towardzero dbl-64 -0x1p-64 : -0x1p+64 : inexact-ok
+= tgamma upward dbl-64 -0x1p-64 : -0x1p+64 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1p-64L : -0x1.0000000000000002p+64L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1p-64L : -0x1p+64L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1p-64L : -0x1p+64L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1p-64L : -0x1p+64L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1p-64L : -0x1.0000000000000002p+64L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1p-64L : -0x1p+64L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1p-64L : -0x1p+64L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1p-64L : -0x1p+64L : inexact-ok
+= tgamma downward ldbl-128 -0x1p-64L : -0x1.000000000000000093c467e37db1p+64L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1p-64L : -0x1.000000000000000093c467e37db1p+64L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1p-64L : -0x1.000000000000000093c467e37dbp+64L : inexact-ok
+= tgamma upward ldbl-128 -0x1p-64L : -0x1.000000000000000093c467e37dbp+64L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1p-64L : -0x1.000000000000000093c467e37ep+64L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1p-64L : -0x1.000000000000000093c467e37d8p+64L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1p-64L : -0x1.000000000000000093c467e37d8p+64L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1p-64L : -0x1.000000000000000093c467e37d8p+64L : inexact-ok
+tgamma 0x1p-106
+= tgamma downward flt-32 0x4p-108f : 0x3.fffffcp+104f : inexact-ok
+= tgamma tonearest flt-32 0x4p-108f : 0x4p+104f : inexact-ok
+= tgamma towardzero flt-32 0x4p-108f : 0x3.fffffcp+104f : inexact-ok
+= tgamma upward flt-32 0x4p-108f : 0x4p+104f : inexact-ok
+= tgamma downward dbl-64 0x4p-108 : 0x3.ffffffffffffep+104 : inexact-ok
+= tgamma tonearest dbl-64 0x4p-108 : 0x4p+104 : inexact-ok
+= tgamma towardzero dbl-64 0x4p-108 : 0x3.ffffffffffffep+104 : inexact-ok
+= tgamma upward dbl-64 0x4p-108 : 0x4p+104 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4p-108L : 0x3.fffffffffffffffcp+104L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p-108L : 0x4p+104L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p-108L : 0x3.fffffffffffffffcp+104L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p-108L : 0x4p+104L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p-108L : 0x3.fffffffffffffffcp+104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p-108L : 0x4p+104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p-108L : 0x3.fffffffffffffffcp+104L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p-108L : 0x4p+104L : inexact-ok
+= tgamma downward ldbl-128 0x4p-108L : 0x3.ffffffffffffffffffffffffff6cp+104L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p-108L : 0x3.ffffffffffffffffffffffffff6cp+104L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p-108L : 0x3.ffffffffffffffffffffffffff6cp+104L : inexact-ok
+= tgamma upward ldbl-128 0x4p-108L : 0x3.ffffffffffffffffffffffffff6ep+104L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p-108L : 0x3.ffffffffffffffffffffffffffp+104L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4p-108L : 0x3.ffffffffffffffffffffffffffp+104L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4p-108L : 0x3.ffffffffffffffffffffffffffp+104L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4p-108L : 0x4p+104L : inexact-ok
+tgamma -0x1p-106
+= tgamma downward flt-32 -0x4p-108f : -0x4.000008p+104f : inexact-ok
+= tgamma tonearest flt-32 -0x4p-108f : -0x4p+104f : inexact-ok
+= tgamma towardzero flt-32 -0x4p-108f : -0x4p+104f : inexact-ok
+= tgamma upward flt-32 -0x4p-108f : -0x4p+104f : inexact-ok
+= tgamma downward dbl-64 -0x4p-108 : -0x4.0000000000004p+104 : inexact-ok
+= tgamma tonearest dbl-64 -0x4p-108 : -0x4p+104 : inexact-ok
+= tgamma towardzero dbl-64 -0x4p-108 : -0x4p+104 : inexact-ok
+= tgamma upward dbl-64 -0x4p-108 : -0x4p+104 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4p-108L : -0x4.0000000000000008p+104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4p-108L : -0x4p+104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4p-108L : -0x4p+104L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4p-108L : -0x4p+104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4p-108L : -0x4.0000000000000008p+104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4p-108L : -0x4p+104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4p-108L : -0x4p+104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4p-108L : -0x4p+104L : inexact-ok
+= tgamma downward ldbl-128 -0x4p-108L : -0x4.0000000000000000000000000094p+104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4p-108L : -0x4.0000000000000000000000000094p+104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4p-108L : -0x4.000000000000000000000000009p+104L : inexact-ok
+= tgamma upward ldbl-128 -0x4p-108L : -0x4.000000000000000000000000009p+104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4p-108L : -0x4.00000000000000000000000002p+104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4p-108L : -0x4p+104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4p-108L : -0x4p+104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4p-108L : -0x4p+104L : inexact-ok
+tgamma 0x1p-113
+= tgamma downward flt-32 0x8p-116f : 0x1.fffffep+112f : inexact-ok
+= tgamma tonearest flt-32 0x8p-116f : 0x2p+112f : inexact-ok
+= tgamma towardzero flt-32 0x8p-116f : 0x1.fffffep+112f : inexact-ok
+= tgamma upward flt-32 0x8p-116f : 0x2p+112f : inexact-ok
+= tgamma downward dbl-64 0x8p-116 : 0x1.fffffffffffffp+112 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-116 : 0x2p+112 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-116 : 0x1.fffffffffffffp+112 : inexact-ok
+= tgamma upward dbl-64 0x8p-116 : 0x2p+112 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-116L : 0x1.fffffffffffffffep+112L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-116L : 0x2p+112L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-116L : 0x1.fffffffffffffffep+112L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-116L : 0x2p+112L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-116L : 0x1.fffffffffffffffep+112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-116L : 0x2p+112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-116L : 0x1.fffffffffffffffep+112L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-116L : 0x2p+112L : inexact-ok
+= tgamma downward ldbl-128 0x8p-116L : 0x1.ffffffffffffffffffffffffffffp+112L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-116L : 0x1.ffffffffffffffffffffffffffffp+112L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-116L : 0x1.ffffffffffffffffffffffffffffp+112L : inexact-ok
+= tgamma upward ldbl-128 0x8p-116L : 0x2p+112L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-116L : 0x1.ffffffffffffffffffffffffff8p+112L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-116L : 0x2p+112L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-116L : 0x1.ffffffffffffffffffffffffff8p+112L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-116L : 0x2p+112L : inexact-ok
+tgamma -0x1p-113
+= tgamma downward flt-32 -0x8p-116f : -0x2.000004p+112f : inexact-ok
+= tgamma tonearest flt-32 -0x8p-116f : -0x2p+112f : inexact-ok
+= tgamma towardzero flt-32 -0x8p-116f : -0x2p+112f : inexact-ok
+= tgamma upward flt-32 -0x8p-116f : -0x2p+112f : inexact-ok
+= tgamma downward dbl-64 -0x8p-116 : -0x2.0000000000002p+112 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-116 : -0x2p+112 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-116 : -0x2p+112 : inexact-ok
+= tgamma upward dbl-64 -0x8p-116 : -0x2p+112 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-116L : -0x2.0000000000000004p+112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-116L : -0x2.0000000000000004p+112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-116L : -0x2.0000000000000000000000000002p+112L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-116L : -0x2.00000000000000000000000001p+112L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-116L : -0x2p+112L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-116L : -0x2p+112L : inexact-ok
+tgamma 0x1p-127
+= tgamma downward flt-32 0x2p-128f : 0x7.fffff8p+124f : inexact-ok
+= tgamma tonearest flt-32 0x2p-128f : 0x8p+124f : inexact-ok
+= tgamma towardzero flt-32 0x2p-128f : 0x7.fffff8p+124f : inexact-ok
+= tgamma upward flt-32 0x2p-128f : 0x8p+124f : inexact-ok
+= tgamma downward dbl-64 0x2p-128 : 0x7.ffffffffffffcp+124 : inexact-ok
+= tgamma tonearest dbl-64 0x2p-128 : 0x8p+124 : inexact-ok
+= tgamma towardzero dbl-64 0x2p-128 : 0x7.ffffffffffffcp+124 : inexact-ok
+= tgamma upward dbl-64 0x2p-128 : 0x8p+124 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p-128L : 0x7.fffffffffffffff8p+124L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p-128L : 0x8p+124L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p-128L : 0x7.fffffffffffffff8p+124L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p-128L : 0x8p+124L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p-128L : 0x7.fffffffffffffff8p+124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p-128L : 0x8p+124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p-128L : 0x7.fffffffffffffff8p+124L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p-128L : 0x8p+124L : inexact-ok
+= tgamma downward ldbl-128 0x2p-128L : 0x7.fffffffffffffffffffffffffffcp+124L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p-128L : 0x8p+124L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p-128L : 0x7.fffffffffffffffffffffffffffcp+124L : inexact-ok
+= tgamma upward ldbl-128 0x2p-128L : 0x8p+124L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p-128L : 0x7.fffffffffffffffffffffffffep+124L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p-128L : 0x8p+124L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p-128L : 0x7.fffffffffffffffffffffffffep+124L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p-128L : 0x8p+124L : inexact-ok
+tgamma -0x1p-127
+= tgamma downward flt-32 -0x2p-128f : -0x8p+124f : inexact-ok
+= tgamma tonearest flt-32 -0x2p-128f : -0x8p+124f : inexact-ok
+= tgamma towardzero flt-32 -0x2p-128f : -0x7.fffff8p+124f : inexact-ok
+= tgamma upward flt-32 -0x2p-128f : -0x7.fffff8p+124f : inexact-ok
+= tgamma downward dbl-64 -0x2p-128 : -0x8p+124 : inexact-ok
+= tgamma tonearest dbl-64 -0x2p-128 : -0x8p+124 : inexact-ok
+= tgamma towardzero dbl-64 -0x2p-128 : -0x7.ffffffffffffcp+124 : inexact-ok
+= tgamma upward dbl-64 -0x2p-128 : -0x7.ffffffffffffcp+124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2p-128L : -0x8p+124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2p-128L : -0x8p+124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2p-128L : -0x7.fffffffffffffff8p+124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2p-128L : -0x7.fffffffffffffff8p+124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2p-128L : -0x8p+124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2p-128L : -0x8p+124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2p-128L : -0x7.fffffffffffffff8p+124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2p-128L : -0x7.fffffffffffffff8p+124L : inexact-ok
+= tgamma downward ldbl-128 -0x2p-128L : -0x8p+124L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2p-128L : -0x8p+124L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2p-128L : -0x7.fffffffffffffffffffffffffffcp+124L : inexact-ok
+= tgamma upward ldbl-128 -0x2p-128L : -0x7.fffffffffffffffffffffffffffcp+124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2p-128L : -0x8p+124L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2p-128L : -0x8p+124L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2p-128L : -0x7.fffffffffffffffffffffffffep+124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2p-128L : -0x7.fffffffffffffffffffffffffep+124L : inexact-ok
+tgamma 0x1p-128
+= tgamma downward flt-32 0x1p-128f : 0xf.fffffp+124f : inexact-ok
+= tgamma tonearest flt-32 0x1p-128f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x1p-128f : 0xf.fffffp+124f : inexact-ok
+= tgamma upward flt-32 0x1p-128f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x1p-128 : 0xf.ffffffffffff8p+124 : inexact-ok
+= tgamma tonearest dbl-64 0x1p-128 : 0x1p+128 : inexact-ok
+= tgamma towardzero dbl-64 0x1p-128 : 0xf.ffffffffffff8p+124 : inexact-ok
+= tgamma upward dbl-64 0x1p-128 : 0x1p+128 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p-128L : 0xf.fffffffffffffffp+124L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p-128L : 0x1p+128L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p-128L : 0xf.fffffffffffffffp+124L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p-128L : 0x1p+128L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p-128L : 0xf.fffffffffffffffp+124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p-128L : 0x1p+128L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p-128L : 0xf.fffffffffffffffp+124L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p-128L : 0x1p+128L : inexact-ok
+= tgamma downward ldbl-128 0x1p-128L : 0xf.fffffffffffffffffffffffffff8p+124L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p-128L : 0x1p+128L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p-128L : 0xf.fffffffffffffffffffffffffff8p+124L : inexact-ok
+= tgamma upward ldbl-128 0x1p-128L : 0x1p+128L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p-128L : 0xf.fffffffffffffffffffffffffcp+124L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p-128L : 0x1p+128L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p-128L : 0xf.fffffffffffffffffffffffffcp+124L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p-128L : 0x1p+128L : inexact-ok
+tgamma -0x1p-128
+= tgamma downward flt-32 -0x1p-128f : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest flt-32 -0x1p-128f : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 -0x1p-128f : -0xf.fffffp+124f : inexact-ok
+= tgamma upward flt-32 -0x1p-128f : -0xf.fffffp+124f : inexact-ok
+= tgamma downward dbl-64 -0x1p-128 : -0x1p+128 : inexact-ok
+= tgamma tonearest dbl-64 -0x1p-128 : -0x1p+128 : inexact-ok
+= tgamma towardzero dbl-64 -0x1p-128 : -0xf.ffffffffffff8p+124 : inexact-ok
+= tgamma upward dbl-64 -0x1p-128 : -0xf.ffffffffffff8p+124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1p-128L : -0x1p+128L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1p-128L : -0x1p+128L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1p-128L : -0xf.fffffffffffffffp+124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1p-128L : -0xf.fffffffffffffffp+124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1p-128L : -0x1p+128L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1p-128L : -0x1p+128L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1p-128L : -0xf.fffffffffffffffp+124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1p-128L : -0xf.fffffffffffffffp+124L : inexact-ok
+= tgamma downward ldbl-128 -0x1p-128L : -0x1p+128L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1p-128L : -0x1p+128L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1p-128L : -0xf.fffffffffffffffffffffffffff8p+124L : inexact-ok
+= tgamma upward ldbl-128 -0x1p-128L : -0xf.fffffffffffffffffffffffffff8p+124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1p-128L : -0x1p+128L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1p-128L : -0x1p+128L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1p-128L : -0xf.fffffffffffffffffffffffffcp+124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1p-128L : -0xf.fffffffffffffffffffffffffcp+124L : inexact-ok
+tgamma 0x1p-149
+= tgamma downward flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+tgamma -0x1p-149
+= tgamma downward flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma downward dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+tgamma 0x1p-1023
+= tgamma downward flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward dbl-64 0x2p-1024 : 0x7.ffffffffffffcp+1020 : inexact-ok
+= tgamma tonearest dbl-64 0x2p-1024 : 0x8p+1020 : inexact-ok
+= tgamma towardzero dbl-64 0x2p-1024 : 0x7.ffffffffffffcp+1020 : inexact-ok
+= tgamma upward dbl-64 0x2p-1024 : 0x8p+1020 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p-1024L : 0x7.fffffffffffffff8p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p-1024L : 0x8p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p-1024L : 0x7.fffffffffffffff8p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p-1024L : 0x8p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p-1024L : 0x7.fffffffffffffff8p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p-1024L : 0x8p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p-1024L : 0x7.fffffffffffffff8p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p-1024L : 0x8p+1020L : inexact-ok
+= tgamma downward ldbl-128 0x2p-1024L : 0x7.fffffffffffffffffffffffffffcp+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p-1024L : 0x8p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p-1024L : 0x7.fffffffffffffffffffffffffffcp+1020L : inexact-ok
+= tgamma upward ldbl-128 0x2p-1024L : 0x8p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p-1024L : 0x7.fffffffffffffffffffffffffep+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p-1024L : 0x8p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p-1024L : 0x7.fffffffffffffffffffffffffep+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p-1024L : 0x8p+1020L : inexact-ok
+tgamma -0x1p-1023
+= tgamma downward flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma downward dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma downward dbl-64 -0x2p-1024 : -0x8p+1020 : inexact-ok
+= tgamma tonearest dbl-64 -0x2p-1024 : -0x8p+1020 : inexact-ok
+= tgamma towardzero dbl-64 -0x2p-1024 : -0x7.ffffffffffffcp+1020 : inexact-ok
+= tgamma upward dbl-64 -0x2p-1024 : -0x7.ffffffffffffcp+1020 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2p-1024L : -0x8p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2p-1024L : -0x8p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2p-1024L : -0x7.fffffffffffffff8p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2p-1024L : -0x7.fffffffffffffff8p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2p-1024L : -0x8p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2p-1024L : -0x8p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2p-1024L : -0x7.fffffffffffffff8p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2p-1024L : -0x7.fffffffffffffff8p+1020L : inexact-ok
+= tgamma downward ldbl-128 -0x2p-1024L : -0x8p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2p-1024L : -0x8p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2p-1024L : -0x7.fffffffffffffffffffffffffffcp+1020L : inexact-ok
+= tgamma upward ldbl-128 -0x2p-1024L : -0x7.fffffffffffffffffffffffffffcp+1020L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2p-1024L : -0x8p+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2p-1024L : -0x8p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2p-1024L : -0x7.fffffffffffffffffffffffffep+1020L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2p-1024L : -0x7.fffffffffffffffffffffffffep+1020L : inexact-ok
+tgamma 0x1p-1024
+= tgamma downward flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward dbl-64 0x1p-1024 : 0xf.ffffffffffff8p+1020 : inexact-ok
+= tgamma tonearest dbl-64 0x1p-1024 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x1p-1024 : 0xf.ffffffffffff8p+1020 : inexact-ok
+= tgamma upward dbl-64 0x1p-1024 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x1p-1024L : 0xf.fffffffffffffffp+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p-1024L : 0x1p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p-1024L : 0xf.fffffffffffffffp+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p-1024L : 0x1p+1024L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p-1024L : 0xf.fffffffffffffffp+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p-1024L : 0x1p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p-1024L : 0xf.fffffffffffffffp+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p-1024L : 0x1p+1024L : inexact-ok
+= tgamma downward ldbl-128 0x1p-1024L : 0xf.fffffffffffffffffffffffffff8p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p-1024L : 0x1p+1024L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p-1024L : 0xf.fffffffffffffffffffffffffff8p+1020L : inexact-ok
+= tgamma upward ldbl-128 0x1p-1024L : 0x1p+1024L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p-1024L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x1p-1024L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x1p-1024L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x1p-1024L : plus_infty : inexact-ok overflow errno-erange
+tgamma -0x1p-1024
+= tgamma downward flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma downward dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma downward dbl-64 -0x1p-1024 : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest dbl-64 -0x1p-1024 : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 -0x1p-1024 : -0xf.ffffffffffff8p+1020 : inexact-ok
+= tgamma upward dbl-64 -0x1p-1024 : -0xf.ffffffffffff8p+1020 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1p-1024L : -0x1p+1024L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1p-1024L : -0x1p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1p-1024L : -0xf.fffffffffffffffp+1020L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1p-1024L : -0xf.fffffffffffffffp+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1p-1024L : -0x1p+1024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1p-1024L : -0x1p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1p-1024L : -0xf.fffffffffffffffp+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1p-1024L : -0xf.fffffffffffffffp+1020L : inexact-ok
+= tgamma downward ldbl-128 -0x1p-1024L : -0x1p+1024L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1p-1024L : -0x1p+1024L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1p-1024L : -0xf.fffffffffffffffffffffffffff8p+1020L : inexact-ok
+= tgamma upward ldbl-128 -0x1p-1024L : -0xf.fffffffffffffffffffffffffff8p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1p-1024L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x1p-1024L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1p-1024L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0x1p-1024L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+tgamma 0x1p-1074
+= tgamma downward flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward dbl-64 0x4p-1076 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x4p-1076 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x4p-1076 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x4p-1076 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma upward ldbl-128 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p-1076L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x4p-1076L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x4p-1076L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x4p-1076L : plus_infty : inexact-ok overflow errno-erange
+tgamma -0x1p-1074
+= tgamma downward flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma downward dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma downward dbl-64 -0x4p-1076 : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest dbl-64 -0x4p-1076 : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 -0x4p-1076 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 -0x4p-1076 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma downward ldbl-128 -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma upward ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4p-1076L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4p-1076L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4p-1076L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0x4p-1076L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+tgamma 0x1p-16383
+= tgamma downward flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward dbl-64 0x4p-1076 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x4p-1076 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x4p-1076 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x4p-1076 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma upward ldbl-128 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p-1076L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x4p-1076L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x4p-1076L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x4p-1076L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x2p-16384L : 0x7.fffffffffffffff8p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p-16384L : 0x8p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p-16384L : 0x7.fffffffffffffff8p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p-16384L : 0x8p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p-16384L : 0x7.fffffffffffffff8p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p-16384L : 0x8p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p-16384L : 0x7.fffffffffffffff8p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p-16384L : 0x8p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x2p-16384L : 0x7.fffffffffffffffffffffffffffcp+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p-16384L : 0x8p+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p-16384L : 0x7.fffffffffffffffffffffffffffcp+16380L : inexact-ok
+= tgamma upward ldbl-128 0x2p-16384L : 0x8p+16380L : inexact-ok
+tgamma -0x1p-16383
+= tgamma downward flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma downward dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma downward dbl-64 -0x4p-1076 : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest dbl-64 -0x4p-1076 : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 -0x4p-1076 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 -0x4p-1076 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma downward ldbl-128 -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma upward ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4p-1076L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4p-1076L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4p-1076L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0x4p-1076L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x2p-16384L : -0x8p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2p-16384L : -0x8p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2p-16384L : -0x7.fffffffffffffff8p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2p-16384L : -0x7.fffffffffffffff8p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2p-16384L : -0x8p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2p-16384L : -0x8p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2p-16384L : -0x7.fffffffffffffff8p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2p-16384L : -0x7.fffffffffffffff8p+16380L : inexact-ok
+= tgamma downward ldbl-128 -0x2p-16384L : -0x8p+16380L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2p-16384L : -0x8p+16380L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2p-16384L : -0x7.fffffffffffffffffffffffffffcp+16380L : inexact-ok
+= tgamma upward ldbl-128 -0x2p-16384L : -0x7.fffffffffffffffffffffffffffcp+16380L : inexact-ok
+tgamma 0x1p-16384
+= tgamma downward flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward dbl-64 0x4p-1076 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x4p-1076 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x4p-1076 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x4p-1076 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma upward ldbl-128 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p-1076L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x4p-1076L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x4p-1076L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x4p-1076L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x1p-16384L : 0xf.fffffffffffffffp+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p-16384L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x1p-16384L : 0xf.fffffffffffffffp+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p-16384L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x1p-16384L : 0xf.fffffffffffffffp+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p-16384L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x1p-16384L : 0xf.fffffffffffffffp+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p-16384L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x1p-16384L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p-16384L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x1p-16384L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok
+= tgamma upward ldbl-128 0x1p-16384L : plus_infty : inexact-ok overflow errno-erange
+tgamma -0x1p-16384
+= tgamma downward flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma downward dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma downward dbl-64 -0x4p-1076 : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest dbl-64 -0x4p-1076 : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 -0x4p-1076 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 -0x4p-1076 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma downward ldbl-128 -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma upward ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4p-1076L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4p-1076L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4p-1076L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0x4p-1076L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x1p-16384L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x1p-16384L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x1p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1p-16384L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x1p-16384L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x1p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok
+= tgamma downward ldbl-128 -0x1p-16384L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128 -0x1p-16384L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 -0x1p-16384L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok
+= tgamma upward ldbl-128 -0x1p-16384L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok
+tgamma 0x1p-16445
+= tgamma downward flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward dbl-64 0x4p-1076 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x4p-1076 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x4p-1076 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x4p-1076 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma upward ldbl-128 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p-1076L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x4p-1076L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x4p-1076L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x4p-1076L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x8p-16448L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x8p-16448L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x8p-16448L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x8p-16448L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+tgamma -0x1p-16445
+= tgamma downward flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma downward dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma downward dbl-64 -0x4p-1076 : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest dbl-64 -0x4p-1076 : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 -0x4p-1076 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 -0x4p-1076 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma downward ldbl-128 -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma upward ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4p-1076L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4p-1076L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4p-1076L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0x4p-1076L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x8p-16448L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x8p-16448L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x8p-16448L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x8p-16448L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-128 -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128 -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 -0x8p-16448L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 -0x8p-16448L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+tgamma 0x1p-16494
+= tgamma downward flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x8p-152f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x8p-152f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma tonearest dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 0x8p-152 : 0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 0x8p-152 : 0x2p+148 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p-152L : 0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p-152L : 0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p-152L : 0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p-152L : 0x2p+148L : inexact-ok
+= tgamma downward dbl-64 0x4p-1076 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x4p-1076 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x4p-1076 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x4p-1076 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p-1076L : 0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p-1076L : 0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma upward ldbl-128 0x4p-1076L : 0x4p+1072L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p-1076L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x4p-1076L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x4p-1076L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x4p-1076L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x8p-16448L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x8p-16448L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x8p-16448L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x8p-16448L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x8p-16448L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x8p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x4p-16448L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x4p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x4p-16448L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x4p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x4p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x4p-16448L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x4p-16448L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x4p-16496L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x4p-16496L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x4p-16496L : plus_infty : inexact-ok overflow errno-erange
+tgamma -0x1p-16494
+= tgamma downward flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest flt-32 -0x8p-152f : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 -0x8p-152f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma downward dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma tonearest dbl-64 -0x8p-152 : -0x2p+148 : inexact-ok
+= tgamma towardzero dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma upward dbl-64 -0x8p-152 : -0x1.fffffffffffffp+148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8p-152L : -0x1.fffffffffffffffep+148L : inexact-ok
+= tgamma downward ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma upward ldbl-128 -0x8p-152L : -0x1.ffffffffffffffffffffffffffffp+148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8p-152L : -0x2p+148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8p-152L : -0x1.ffffffffffffffffffffffffff8p+148L : inexact-ok
+= tgamma downward dbl-64 -0x4p-1076 : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest dbl-64 -0x4p-1076 : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 -0x4p-1076 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 -0x4p-1076 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4p-1076L : -0x3.fffffffffffffffcp+1072L : inexact-ok
+= tgamma downward ldbl-128 -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4p-1076L : -0x4p+1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma upward ldbl-128 -0x4p-1076L : -0x3.fffffffffffffffffffffffffffep+1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4p-1076L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4p-1076L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4p-1076L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0x4p-1076L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x8p-16448L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x8p-16448L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x8p-16448L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x8p-16448L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-128 -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128 -0x8p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 -0x8p-16448L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 -0x8p-16448L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x4p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x4p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x4p-16448L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x4p-16448L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-128 -0x4p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128 -0x4p-16448L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 -0x4p-16448L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 -0x4p-16448L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma downward ldbl-128 -0x4p-16496L : minus_infty : inexact-ok overflow errno-erange
+= tgamma tonearest ldbl-128 -0x4p-16496L : minus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 -0x4p-16496L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 -0x4p-16496L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+tgamma 0x8.00001p0
+= tgamma downward flt-32 0x8.00001p+0f : 0x1.3b0026p+12f : inexact-ok
+= tgamma tonearest flt-32 0x8.00001p+0f : 0x1.3b0028p+12f : inexact-ok
+= tgamma towardzero flt-32 0x8.00001p+0f : 0x1.3b0026p+12f : inexact-ok
+= tgamma upward flt-32 0x8.00001p+0f : 0x1.3b0028p+12f : inexact-ok
+= tgamma downward dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d78p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d79p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d78p+12 : inexact-ok
+= tgamma upward dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d79p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78ep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78ep+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb52p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6ecebp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6ecebp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb8p+12L : inexact-ok
+tgamma 0x7.fffff8p0
+= tgamma downward flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma tonearest flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma towardzero flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma upward flt-32 0x7.fffff8p+0f : 0x1.3affeep+12f : inexact-ok
+= tgamma downward dbl-64 0x7.fffff8p+0 : 0x1.3affec289603dp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x7.fffff8p+0 : 0x1.3affec289603ep+12 : inexact-ok
+= tgamma towardzero dbl-64 0x7.fffff8p+0 : 0x1.3affec289603dp+12 : inexact-ok
+= tgamma upward dbl-64 0x7.fffff8p+0 : 0x1.3affec289603ep+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de82p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de82p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67783p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67784p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67783p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67784p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f678p+12L : inexact-ok
+tgamma 0x7.000008p0
+= tgamma downward flt-32 0x7.000008p+0f : 0x2.d00028p+8f : inexact-ok
+= tgamma tonearest flt-32 0x7.000008p+0f : 0x2.d0002cp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7.000008p+0f : 0x2.d00028p+8f : inexact-ok
+= tgamma upward flt-32 0x7.000008p+0f : 0x2.d0002cp+8f : inexact-ok
+= tgamma downward dbl-64 0x7.000008p+0 : 0x2.d0002a233e27ep+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7.000008p+0 : 0x2.d0002a233e28p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7.000008p+0 : 0x2.d0002a233e27ep+8 : inexact-ok
+= tgamma upward dbl-64 0x7.000008p+0 : 0x2.d0002a233e28p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b118p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b2p+8L : inexact-ok
+tgamma 0x6.fffff8p0
+= tgamma downward flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma tonearest flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma towardzero flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma upward flt-32 0x6.fffff8p+0f : 0x2.cfffd8p+8f : inexact-ok
+= tgamma downward dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46aep+8 : inexact-ok
+= tgamma tonearest dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46bp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46aep+8 : inexact-ok
+= tgamma upward dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46bp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e4p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e4p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398164p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3982p+8L : inexact-ok
+tgamma 0x6.000008p0
+= tgamma downward flt-32 0x6.000008p+0f : 0x7.80006p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6.000008p+0f : 0x7.800068p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6.000008p+0f : 0x7.80006p+4f : inexact-ok
+= tgamma upward flt-32 0x6.000008p+0f : 0x7.800068p+4f : inexact-ok
+= tgamma downward dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma upward dbl-64 0x6.000008p+0 : 0x7.8000665dfa8dp+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc4p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc4p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970ep+4L : inexact-ok
+tgamma 0x5.fffff8p0
+= tgamma downward flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma upward flt-32 0x5.fffff8p+0f : 0x7.7fffap+4f : inexact-ok
+= tgamma downward dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f4p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f4p+4 : inexact-ok
+= tgamma upward dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43ep+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43e4p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43ep+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43e4p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d42p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d44p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d42p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d44p+4L : inexact-ok
+tgamma 0x5.000008p0
+= tgamma downward flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma upward flt-32 0x5.000008p+0f : 0x1.800014p+4f : inexact-ok
+= tgamma downward dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma upward dbl-64 0x5.000008p+0 : 0x1.80001212cb98ep+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561ep+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680568p+4L : inexact-ok
+tgamma 0x4.fffff8p0
+= tgamma downward flt-32 0x4.fffff8p+0f : 0x1.7fffecp+4f : inexact-ok
+= tgamma tonearest flt-32 0x4.fffff8p+0f : 0x1.7fffeep+4f : inexact-ok
+= tgamma towardzero flt-32 0x4.fffff8p+0f : 0x1.7fffecp+4f : inexact-ok
+= tgamma upward flt-32 0x4.fffff8p+0f : 0x1.7fffeep+4f : inexact-ok
+= tgamma downward dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35562p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35563p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35562p+4 : inexact-ok
+= tgamma upward dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35563p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116ap+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116ap+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116bp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b11p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b118p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b11p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b118p+4L : inexact-ok
+tgamma 0x4.000008p0
+= tgamma downward flt-32 0x4.000008p+0f : 0x6.000038p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4.000008p+0f : 0x6.00004p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4.000008p+0f : 0x6.000038p+0f : inexact-ok
+= tgamma upward flt-32 0x4.000008p+0f : 0x6.00004p+0f : inexact-ok
+= tgamma downward dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma upward dbl-64 0x4.000008p+0 : 0x6.00003c4b2debp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac888p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac888p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c4p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c44p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c4p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c44p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971ep+0L : inexact-ok
+tgamma 0x3.fffffcp0
+= tgamma downward flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma upward flt-32 0x3.fffffcp+0f : 0x5.ffffe8p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a168p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a16cp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a168p+0 : inexact-ok
+= tgamma upward dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a16cp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afdp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afdp+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8647p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a866p+0L : inexact-ok
+tgamma 0x3.000004p0
+= tgamma downward flt-32 0x3.000004p+0f : 0x2.000004p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.000004p+0f : 0x2.000008p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.000004p+0f : 0x2.000004p+0f : inexact-ok
+= tgamma upward flt-32 0x3.000004p+0f : 0x2.000008p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.000004p+0 : 0x2.00000761dcd4cp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.000004p+0 : 0x2.00000761dcd4ep+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.000004p+0 : 0x2.00000761dcd4cp+0 : inexact-ok
+= tgamma upward dbl-64 0x3.000004p+0 : 0x2.00000761dcd4ep+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b698p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b69ap+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b698p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b69ap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b7p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b7p+0L : inexact-ok
+tgamma 0x2.fffffcp0
+= tgamma downward flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma upward flt-32 0x2.fffffcp+0f : 0x1.fffffap+0f : inexact-ok
+= tgamma downward dbl-64 0x2.fffffcp+0 : 0x1.fffff89e2353p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.fffffcp+0 : 0x1.fffff89e23531p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.fffffcp+0 : 0x1.fffff89e2353p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.fffffcp+0 : 0x1.fffff89e23531p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d74p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d74p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c3p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c3p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c4268p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c427p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c4268p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c427p+0L : inexact-ok
+tgamma 0x2.000004p0
+= tgamma downward flt-32 0x2.000004p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.000004p+0f : 0x1.000002p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.000004p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2.000004p+0f : 0x1.000002p+0f : inexact-ok
+= tgamma downward dbl-64 0x2.000004p+0 : 0x1.000001b0ee67p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.000004p+0 : 0x1.000001b0ee671p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.000004p+0 : 0x1.000001b0ee67p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.000004p+0 : 0x1.000001b0ee671p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf8p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1db8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dcp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1db8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dcp+0L : inexact-ok
+tgamma 0x1.fffffep0
+= tgamma downward flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma upward flt-32 0x1.fffffep+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1.fffffep+0 : 0xf.fffff2788d168p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.fffffep+0 : 0xf.fffff2788d17p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.fffffep+0 : 0xf.fffff2788d168p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.fffffep+0 : 0xf.fffff2788d17p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac6p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dbp-4L : inexact-ok
+tgamma 0x1.000002p0
+= tgamma downward flt-32 0x1.000002p+0f : 0xf.ffffep-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.000002p+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.000002p+0f : 0xf.ffffep-4f : inexact-ok
+= tgamma upward flt-32 0x1.000002p+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma downward dbl-64 0x1.000002p+0 : 0xf.ffffed8773428p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.000002p+0 : 0xf.ffffed877343p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.000002p+0 : 0xf.ffffed8773428p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.000002p+0 : 0xf.ffffed877343p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b038p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b4p-4L : inexact-ok
+tgamma 0x0.ffffffp0
+= tgamma downward flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0xf.fffffp-4f : 0x1.000002p+0f : inexact-ok
+= tgamma downward dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma tonearest dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma towardzero dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma upward dbl-64 0xf.fffffp-4 : 0x1.00000093c468fp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0b2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0b2p+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6dfp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6ep+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6dfp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6ep+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af68p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af7p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af68p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af7p+0L : inexact-ok
+tgamma -0x0.ffffffp0
+= tgamma downward flt-32 -0xf.fffffp-4f : -0x1.000002p+24f : inexact-ok
+= tgamma tonearest flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma towardzero flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma upward flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma downward dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b999p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma upward dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985f2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985f2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f1p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f1p+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f0fp+24L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f0fp+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f8p+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+tgamma -0x1.000002p0
+= tgamma downward flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma tonearest flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma upward flt-32 -0x1.000002p+0f : 0x8p+20f : inexact-ok
+= tgamma downward dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab4p+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab8p+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab4p+20 : inexact-ok
+= tgamma upward dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab8p+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc4p+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc8p+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc4p+20L : inexact-ok
+= tgamma upward ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc8p+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6ep+20L : inexact-ok
+tgamma -0x1.fffffep0
+= tgamma downward flt-32 -0x1.fffffep+0f : 0x4p+20f : inexact-ok
+= tgamma tonearest flt-32 -0x1.fffffep+0f : 0x4.000008p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x1.fffffep+0f : 0x4p+20f : inexact-ok
+= tgamma upward flt-32 -0x1.fffffep+0f : 0x4.000008p+20f : inexact-ok
+= tgamma downward dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma upward dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdfp+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dbp+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032cp+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032ep+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032cp+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032ep+20L : inexact-ok
+tgamma -0x2.000004p0
+= tgamma downward flt-32 -0x2.000004p+0f : -0x1.fffffap+20f : inexact-ok
+= tgamma tonearest flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma upward flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma downward dbl-64 -0x2.000004p+0 : -0x1.fffff89e237b1p+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.000004p+0 : -0x1.fffff89e237b1p+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.000004p+0 : -0x1.fffff89e237bp+20 : inexact-ok
+= tgamma upward dbl-64 -0x2.000004p+0 : -0x1.fffff89e237bp+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d74p+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d74p+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133afp+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma upward ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe134p+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+tgamma -0x2.fffffcp0
+= tgamma downward flt-32 -0x2.fffffcp+0f : -0xa.aaaafp+16f : inexact-ok
+= tgamma tonearest flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma towardzero flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma upward flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma downward dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c5p+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c5p+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c48p+16 : inexact-ok
+= tgamma upward dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c48p+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc5p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc5p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d420208p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4204p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4204p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d42p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d42p+16L : inexact-ok
+tgamma -0x3.000004p0
+= tgamma downward flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma towardzero flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma upward flt-32 -0x3.000004p+0f : 0xa.aaaa8p+16f : inexact-ok
+= tgamma downward dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849e8p+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849fp+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849e8p+16 : inexact-ok
+= tgamma upward dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849fp+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma downward ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338338p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c553384p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c553384p+16L : inexact-ok
+tgamma -0x3.fffffcp0
+= tgamma downward flt-32 -0x3.fffffcp+0f : 0x2.aaaab8p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x3.fffffcp+0f : 0x2.aaaabcp+16f : inexact-ok
+= tgamma towardzero flt-32 -0x3.fffffcp+0f : 0x2.aaaab8p+16f : inexact-ok
+= tgamma upward flt-32 -0x3.fffffcp+0f : 0x2.aaaabcp+16f : inexact-ok
+= tgamma downward dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma upward dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5facp+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee74p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee74p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068dp+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068d2p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068dp+16L : inexact-ok
+= tgamma upward ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068d2p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e069p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e069p+16L : inexact-ok
+tgamma -0x4.000008p0
+= tgamma downward flt-32 -0x4.000008p+0f : -0x1.555546p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x4.000008p+0f : -0x1.555546p+16f : inexact-ok
+= tgamma towardzero flt-32 -0x4.000008p+0f : -0x1.555544p+16f : inexact-ok
+= tgamma upward flt-32 -0x4.000008p+0f : -0x1.555544p+16f : inexact-ok
+= tgamma downward dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9bp+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma upward dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c6p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f775p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f775p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f7748p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f7748p+16L : inexact-ok
+tgamma -0x4.fffff8p0
+= tgamma downward flt-32 -0x4.fffff8p+0f : -0x4.44448p+12f : inexact-ok
+= tgamma tonearest flt-32 -0x4.fffff8p+0f : -0x4.44448p+12f : inexact-ok
+= tgamma towardzero flt-32 -0x4.fffff8p+0f : -0x4.444478p+12f : inexact-ok
+= tgamma upward flt-32 -0x4.fffff8p+0f : -0x4.444478p+12f : inexact-ok
+= tgamma downward dbl-64 -0x4.fffff8p+0 : -0x4.44447e809018cp+12 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.fffff8p+0 : -0x4.44447e809018cp+12 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.fffff8p+0 : -0x4.44447e8090188p+12 : inexact-ok
+= tgamma upward dbl-64 -0x4.fffff8p+0 : -0x4.44447e8090188p+12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a71p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a71p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149a4p+12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb337514ap+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb337514ap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375148p+12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375148p+12L : inexact-ok
+tgamma -0x5.000008p0
+= tgamma downward flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma tonearest flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma towardzero flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma upward flt-32 -0x5.000008p+0f : 0x4.44441p+12f : inexact-ok
+= tgamma downward dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma upward dbl-64 -0x5.000008p+0 : 0x4.44440a07fedbcp+12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92ep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92ep+12L : inexact-ok
+= tgamma downward ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9dcp+12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9ep+12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9dcp+12L : inexact-ok
+= tgamma upward ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9ep+12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd8p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fdap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd8p+12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fdap+12L : inexact-ok
+tgamma -0x5.fffff8p0
+= tgamma downward flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma tonearest flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma towardzero flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma upward flt-32 -0x5.fffff8p+0f : 0xb.60b6cp+8f : inexact-ok
+= tgamma downward dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma upward dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c9348p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645fp+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645f8p+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645fp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645f8p+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a648p+8L : inexact-ok
+tgamma -0x6.000008p0
+= tgamma downward flt-32 -0x6.000008p+0f : -0xb.60b57p+8f : inexact-ok
+= tgamma tonearest flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma towardzero flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma upward flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma downward dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c88p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c88p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c8p+8 : inexact-ok
+= tgamma upward dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c8p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma downward ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace5p+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma upward ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068adp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068adp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068accp+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068accp+8L : inexact-ok
+tgamma -0x6.fffff8p0
+= tgamma downward flt-32 -0x6.fffff8p+0f : -0x1.a01a1cp+8f : inexact-ok
+= tgamma tonearest flt-32 -0x6.fffff8p+0f : -0x1.a01a1cp+8f : inexact-ok
+= tgamma towardzero flt-32 -0x6.fffff8p+0f : -0x1.a01a1ap+8f : inexact-ok
+= tgamma upward flt-32 -0x6.fffff8p+0f : -0x1.a01a1ap+8f : inexact-ok
+= tgamma downward dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde3p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma upward dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde2022p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde2022p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e553p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e553p+8L : inexact-ok
+tgamma -0x7.000008p0
+= tgamma downward flt-32 -0x7.000008p+0f : 0x1.a019e6p+8f : inexact-ok
+= tgamma tonearest flt-32 -0x7.000008p+0f : 0x1.a019e8p+8f : inexact-ok
+= tgamma towardzero flt-32 -0x7.000008p+0f : 0x1.a019e6p+8f : inexact-ok
+= tgamma upward flt-32 -0x7.000008p+0f : 0x1.a019e8p+8f : inexact-ok
+= tgamma downward dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma upward dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a143p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a14241ap+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a14241ap+8L : inexact-ok
+= tgamma downward ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abccp+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7ab8p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7acp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7ab8p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7acp+8L : inexact-ok
+tgamma -0x7.fffff8p0
+= tgamma downward flt-32 -0x7.fffff8p+0f : 0x3.403438p+4f : inexact-ok
+= tgamma tonearest flt-32 -0x7.fffff8p+0f : 0x3.40343cp+4f : inexact-ok
+= tgamma towardzero flt-32 -0x7.fffff8p+0f : 0x3.403438p+4f : inexact-ok
+= tgamma upward flt-32 -0x7.fffff8p+0f : 0x3.40343cp+4f : inexact-ok
+= tgamma downward dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma upward dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf74p+4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993bp+4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe994p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993p+4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe994p+4L : inexact-ok
+tgamma -0x8.00001p0
+= tgamma downward flt-32 -0x8.00001p+0f : -0x1.a019cap+4f : inexact-ok
+= tgamma tonearest flt-32 -0x8.00001p+0f : -0x1.a019cap+4f : inexact-ok
+= tgamma towardzero flt-32 -0x8.00001p+0f : -0x1.a019c8p+4f : inexact-ok
+= tgamma upward flt-32 -0x8.00001p+0f : -0x1.a019c8p+4f : inexact-ok
+= tgamma downward dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981dp+4 : inexact-ok
+= tgamma tonearest dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma towardzero dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma upward dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2bp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2bp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma downward ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4bp+4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4afp+4L : inexact-ok
+= tgamma upward ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4afp+4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a5p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+tgamma -0x9.fffffp0
+= tgamma downward flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma tonearest flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma towardzero flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma upward flt-32 -0x9.fffffp+0f : 0x4.9f94ap-4f : inexact-ok
+= tgamma downward dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma upward dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f362cp-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629ad8p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629ad8p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9144p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9148p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9144p-4L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9148p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db92p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db92p-4L : inexact-ok
+tgamma -0xa.00001p0
+= tgamma downward flt-32 -0xa.00001p+0f : -0x4.9f934p-4f : inexact-ok
+= tgamma tonearest flt-32 -0xa.00001p+0f : -0x4.9f934p-4f : inexact-ok
+= tgamma towardzero flt-32 -0xa.00001p+0f : -0x4.9f9338p-4f : inexact-ok
+= tgamma upward flt-32 -0xa.00001p+0f : -0x4.9f9338p-4f : inexact-ok
+= tgamma downward dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a3p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma upward dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc18p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc18p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma downward ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c358p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c358p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c354p-4L : inexact-ok
+= tgamma upward ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c354p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c4p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c4p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c2p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c2p-4L : inexact-ok
+tgamma -0x13.ffffep0
+= tgamma downward flt-32 -0x1.3ffffep+4f : 0x3.ca86ep-44f : inexact-ok
+= tgamma tonearest flt-32 -0x1.3ffffep+4f : 0x3.ca86e4p-44f : inexact-ok
+= tgamma towardzero flt-32 -0x1.3ffffep+4f : 0x3.ca86ep-44f : inexact-ok
+= tgamma upward flt-32 -0x1.3ffffep+4f : 0x3.ca86e4p-44f : inexact-ok
+= tgamma downward dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011ecap-44 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011eccp-44 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011ecap-44 : inexact-ok
+= tgamma upward dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011eccp-44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b4p-44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b4p-44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e124p-44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e126p-44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e124p-44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e126p-44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e2p-44L : inexact-ok
+tgamma -0x14.00002p0
+= tgamma downward flt-32 -0x1.400002p+4f : -0x3.ca8408p-44f : inexact-ok
+= tgamma tonearest flt-32 -0x1.400002p+4f : -0x3.ca8408p-44f : inexact-ok
+= tgamma towardzero flt-32 -0x1.400002p+4f : -0x3.ca8404p-44f : inexact-ok
+= tgamma upward flt-32 -0x1.400002p+4f : -0x3.ca8404p-44f : inexact-ok
+= tgamma downward dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d4p-44 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d4p-44 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d2p-44 : inexact-ok
+= tgamma upward dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d2p-44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38b4p-44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38b4p-44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a6p-44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a6p-44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a4p-44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a4p-44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9244p-44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9244p-44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243p-44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243p-44L : inexact-ok
+tgamma -0x1d.ffffep0
+= tgamma downward flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma tonearest flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma towardzero flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma upward flt-32 -0x1.dffffep+4f : 0x9.c99a6p-92f : inexact-ok
+= tgamma downward dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c57p-92 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c5708p-92 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c57p-92 : inexact-ok
+= tgamma upward dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c5708p-92 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570515p-92L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570515p-92L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cep-92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942ce8p-92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cep-92L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942ce8p-92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06943p-92L : inexact-ok
+tgamma -0x1e.00002p0
+= tgamma downward flt-32 -0x1.e00002p+4f : -0x9.c992p-92f : inexact-ok
+= tgamma tonearest flt-32 -0x1.e00002p+4f : -0x9.c992p-92f : inexact-ok
+= tgamma towardzero flt-32 -0x1.e00002p+4f : -0x9.c991fp-92f : inexact-ok
+= tgamma upward flt-32 -0x1.e00002p+4f : -0x9.c991fp-92f : inexact-ok
+= tgamma downward dbl-64 -0x1.e00002p+4 : -0x9.c991f9b459728p-92 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.e00002p+4 : -0x9.c991f9b459728p-92 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.e00002p+4 : -0x9.c991f9b45972p-92 : inexact-ok
+= tgamma upward dbl-64 -0x1.e00002p+4 : -0x9.c991f9b45972p-92 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daa8p-92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455dcp-92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455dcp-92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455d8p-92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455d8p-92L : inexact-ok
+tgamma -0x27.ffffcp0
+= tgamma downward flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.7ffffcp+4f : 0x7.3p-144f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7a8p-144 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7acp-144 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7a8p-144 : inexact-ok
+= tgamma upward dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7acp-144 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3684p-144L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a36ap-144L : inexact-ok
+tgamma -0x28.00004p0
+= tgamma downward flt-32 -0x2.800004p+4f : -0x7.3p-144f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d2cp-144 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d2cp-144 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d28p-144 : inexact-ok
+= tgamma upward dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d28p-144 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma downward ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1e4p-144L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma upward ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c2p-144L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c2p-144L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7cp-144L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7cp-144L : inexact-ok
+tgamma -0x28.ffffcp0
+= tgamma downward flt-32 -0x2.8ffffcp+4f : -0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.8ffffcp+4f : -0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.8ffffcp+4f : -0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.8ffffcp+4f : -0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df68p-148 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma upward dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fcp-148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fcp-148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fap-148L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fap-148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466566p-148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466566p-148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565p-148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565p-148L : inexact-ok
+tgamma -0x29.00004p0
+= tgamma downward flt-32 -0x2.900004p+4f : 0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.900004p+4f : 0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.900004p+4f : 0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.900004p+4f : 0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma upward dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b38p-148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma downward ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986872p-148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986874p-148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986872p-148L : inexact-ok
+= tgamma upward ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986874p-148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9869p-148L : inexact-ok
+tgamma -0x29.ffffcp0
+= tgamma downward flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.9ffffcp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma upward dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c8p-152 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736cp-152L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736cp-152L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6049p-152L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e604ap-152L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6049p-152L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e604ap-152L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6p-152L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e608p-152L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6p-152L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e608p-152L : inexact-ok
+tgamma -0x2a.00004p0
+= tgamma downward flt-32 -0x2.a00004p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c62p-152 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c62p-152 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c61p-152 : inexact-ok
+= tgamma upward dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c61p-152 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bcp-152L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a458p-152L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+tgamma 0x8.0000000000008p0
+= tgamma downward flt-32 0x8.00001p+0f : 0x1.3b0026p+12f : inexact-ok
+= tgamma tonearest flt-32 0x8.00001p+0f : 0x1.3b0028p+12f : inexact-ok
+= tgamma towardzero flt-32 0x8.00001p+0f : 0x1.3b0026p+12f : inexact-ok
+= tgamma upward flt-32 0x8.00001p+0f : 0x1.3b0028p+12f : inexact-ok
+= tgamma downward dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d78p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d79p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d78p+12 : inexact-ok
+= tgamma upward dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d79p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78ep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78ep+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb52p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6ecebp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6ecebp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb8p+12L : inexact-ok
+= tgamma downward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma tonearest flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma towardzero flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma upward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma downward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma upward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000013p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000014p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000013p+12 : inexact-ok
+= tgamma upward dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000014p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d78p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d78p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6264p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c62p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c628p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c62p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c628p+12L : inexact-ok
+tgamma 0x7.ffffffffffffcp0
+= tgamma downward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma tonearest flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma towardzero flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma upward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma downward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma upward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma tonearest flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma towardzero flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma upward flt-32 0x7.fffff8p+0f : 0x1.3affeep+12f : inexact-ok
+= tgamma downward dbl-64 0x7.fffff8p+0 : 0x1.3affec289603dp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x7.fffff8p+0 : 0x1.3affec289603ep+12 : inexact-ok
+= tgamma towardzero dbl-64 0x7.fffff8p+0 : 0x1.3affec289603dp+12 : inexact-ok
+= tgamma upward dbl-64 0x7.fffff8p+0 : 0x1.3affec289603ep+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de82p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de82p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67783p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67784p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67783p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67784p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f678p+12L : inexact-ok
+= tgamma downward dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma upward dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff7p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6146p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6146p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab7p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab8p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab7p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab8p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4bp+12L : inexact-ok
+tgamma 0x7.0000000000004p0
+= tgamma downward flt-32 0x7.000008p+0f : 0x2.d00028p+8f : inexact-ok
+= tgamma tonearest flt-32 0x7.000008p+0f : 0x2.d0002cp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7.000008p+0f : 0x2.d00028p+8f : inexact-ok
+= tgamma upward flt-32 0x7.000008p+0f : 0x2.d0002cp+8f : inexact-ok
+= tgamma downward dbl-64 0x7.000008p+0 : 0x2.d0002a233e27ep+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7.000008p+0 : 0x2.d0002a233e28p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7.000008p+0 : 0x2.d0002a233e27ep+8 : inexact-ok
+= tgamma upward dbl-64 0x7.000008p+0 : 0x2.d0002a233e28p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b118p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b2p+8L : inexact-ok
+= tgamma downward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma tonearest flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma upward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma downward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma upward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward dbl-64 0x7.0000000000004p+0 : 0x2.d000000000014p+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7.0000000000004p+0 : 0x2.d000000000016p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7.0000000000004p+0 : 0x2.d000000000014p+8 : inexact-ok
+= tgamma upward dbl-64 0x7.0000000000004p+0 : 0x2.d000000000016p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d00000000001511cp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d00000000001511cp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+tgamma 0x6.ffffffffffffcp0
+= tgamma downward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma tonearest flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma upward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma downward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma upward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma tonearest flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma towardzero flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma upward flt-32 0x6.fffff8p+0f : 0x2.cfffd8p+8f : inexact-ok
+= tgamma downward dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46aep+8 : inexact-ok
+= tgamma tonearest dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46bp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46aep+8 : inexact-ok
+= tgamma upward dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46bp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e4p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e4p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398164p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3982p+8L : inexact-ok
+= tgamma downward dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma tonearest dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma towardzero dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma upward dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffecp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ecp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ep+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609fp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ep+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609fp+8L : inexact-ok
+tgamma 0x6.0000000000004p0
+= tgamma downward flt-32 0x6.000008p+0f : 0x7.80006p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6.000008p+0f : 0x7.800068p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6.000008p+0f : 0x7.80006p+4f : inexact-ok
+= tgamma upward flt-32 0x6.000008p+0f : 0x7.800068p+4f : inexact-ok
+= tgamma downward dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma upward dbl-64 0x6.000008p+0 : 0x7.8000665dfa8dp+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc4p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc4p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970ep+4L : inexact-ok
+= tgamma downward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma upward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward dbl-64 0x6.0000000000004p+0 : 0x7.800000000003p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6.0000000000004p+0 : 0x7.8000000000034p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6.0000000000004p+0 : 0x7.800000000003p+4 : inexact-ok
+= tgamma upward dbl-64 0x6.0000000000004p+0 : 0x7.8000000000034p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd357455433p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd3574554334p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd357455433p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd3574554334p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745542p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745544p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745542p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745544p+4L : inexact-ok
+tgamma 0x5.ffffffffffffcp0
+= tgamma downward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma upward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma upward flt-32 0x5.fffff8p+0f : 0x7.7fffap+4f : inexact-ok
+= tgamma downward dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f4p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f4p+4 : inexact-ok
+= tgamma upward dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43ep+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43e4p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43ep+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43e4p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d42p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d44p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d42p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d44p+4L : inexact-ok
+= tgamma downward dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma upward dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffdp+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd18p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd18p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fep+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2ep+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac3p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2ep+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac3p+4L : inexact-ok
+tgamma 0x5.0000000000004p0
+= tgamma downward flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma upward flt-32 0x5.000008p+0f : 0x1.800014p+4f : inexact-ok
+= tgamma downward dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma upward dbl-64 0x5.000008p+0 : 0x1.80001212cb98ep+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561ep+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680568p+4L : inexact-ok
+= tgamma downward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma upward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma upward dbl-64 0x5.0000000000004p+0 : 0x1.800000000000ap+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009098p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009098p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd302p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd303p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd302p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd303p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd38p+4L : inexact-ok
+tgamma 0x4.ffffffffffffcp0
+= tgamma downward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma upward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward flt-32 0x4.fffff8p+0f : 0x1.7fffecp+4f : inexact-ok
+= tgamma tonearest flt-32 0x4.fffff8p+0f : 0x1.7fffeep+4f : inexact-ok
+= tgamma towardzero flt-32 0x4.fffff8p+0f : 0x1.7fffecp+4f : inexact-ok
+= tgamma upward flt-32 0x4.fffff8p+0f : 0x1.7fffeep+4f : inexact-ok
+= tgamma downward dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35562p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35563p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35562p+4 : inexact-ok
+= tgamma upward dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35563p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116ap+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116ap+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116bp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b11p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b118p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b11p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b118p+4L : inexact-ok
+= tgamma downward dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff6p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff7p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff6p+4 : inexact-ok
+= tgamma upward dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff7p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bfp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2269p+4L : inexact-ok
+tgamma 0x4.0000000000004p0
+= tgamma downward flt-32 0x4.000008p+0f : 0x6.000038p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4.000008p+0f : 0x6.00004p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4.000008p+0f : 0x6.000038p+0f : inexact-ok
+= tgamma upward flt-32 0x4.000008p+0f : 0x6.00004p+0f : inexact-ok
+= tgamma downward dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma upward dbl-64 0x4.000008p+0 : 0x6.00003c4b2debp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac888p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac888p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c4p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c44p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c4p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c44p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971ep+0L : inexact-ok
+= tgamma downward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma upward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma downward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma upward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward dbl-64 0x4.0000000000004p+0 : 0x6.000000000001cp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4.0000000000004p+0 : 0x6.000000000002p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4.0000000000004p+0 : 0x6.000000000001cp+0 : inexact-ok
+= tgamma upward dbl-64 0x4.0000000000004p+0 : 0x6.000000000002p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e26p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e26p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de8p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772cp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772ep+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772cp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772ep+0L : inexact-ok
+tgamma 0x3.ffffffffffffep0
+= tgamma downward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma upward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma downward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma upward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma upward flt-32 0x3.fffffcp+0f : 0x5.ffffe8p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a168p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a16cp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a168p+0 : inexact-ok
+= tgamma upward dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a16cp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afdp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afdp+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8647p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a866p+0L : inexact-ok
+= tgamma downward dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma upward dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffff4p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed8p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed8p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac14p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac14p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44aep+0L : inexact-ok
+tgamma 0x3.0000000000002p0
+= tgamma downward flt-32 0x3.000004p+0f : 0x2.000004p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.000004p+0f : 0x2.000008p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.000004p+0f : 0x2.000004p+0f : inexact-ok
+= tgamma upward flt-32 0x3.000004p+0f : 0x2.000008p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.000004p+0 : 0x2.00000761dcd4cp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.000004p+0 : 0x2.00000761dcd4ep+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.000004p+0 : 0x2.00000761dcd4cp+0 : inexact-ok
+= tgamma upward dbl-64 0x3.000004p+0 : 0x2.00000761dcd4ep+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b698p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b69ap+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b698p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b69ap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b7p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b7p+0L : inexact-ok
+= tgamma downward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma upward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma downward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma upward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward dbl-64 0x3.0000000000002p+0 : 0x2.0000000000002p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.0000000000002p+0 : 0x2.0000000000004p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.0000000000002p+0 : 0x2.0000000000002p+0 : inexact-ok
+= tgamma upward dbl-64 0x3.0000000000002p+0 : 0x2.0000000000004p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d312p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d314p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d312p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d314p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d4p+0L : inexact-ok
+tgamma 0x2.ffffffffffffep0
+= tgamma downward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma upward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma downward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma upward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma upward flt-32 0x2.fffffcp+0f : 0x1.fffffap+0f : inexact-ok
+= tgamma downward dbl-64 0x2.fffffcp+0 : 0x1.fffff89e2353p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.fffffcp+0 : 0x1.fffff89e23531p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.fffffcp+0 : 0x1.fffff89e2353p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.fffffcp+0 : 0x1.fffff89e23531p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d74p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d74p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c3p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c3p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c4268p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c427p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c4268p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c427p+0L : inexact-ok
+= tgamma downward dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma upward dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffdp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e5p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e5p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c368p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c37p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c368p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c37p+0L : inexact-ok
+tgamma 0x2.0000000000002p0
+= tgamma downward flt-32 0x2.000004p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.000004p+0f : 0x1.000002p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.000004p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2.000004p+0f : 0x1.000002p+0f : inexact-ok
+= tgamma downward dbl-64 0x2.000004p+0 : 0x1.000001b0ee67p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.000004p+0 : 0x1.000001b0ee671p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.000004p+0 : 0x1.000001b0ee67p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.000004p+0 : 0x1.000001b0ee671p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf8p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1db8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dcp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1db8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dcp+0L : inexact-ok
+= tgamma downward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward dbl-64 0x2.0000000000002p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.0000000000002p+0 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.0000000000002p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.0000000000002p+0 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e9p+0L : inexact-ok
+tgamma 0x1.fffffffffffffp0
+= tgamma downward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma upward flt-32 0x1.fffffep+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1.fffffep+0 : 0xf.fffff2788d168p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.fffffep+0 : 0xf.fffff2788d17p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.fffffep+0 : 0xf.fffff2788d168p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.fffffep+0 : 0xf.fffff2788d17p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac6p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dbp-4L : inexact-ok
+= tgamma downward dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.fffffffffffffp+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93dp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93dp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce4p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ccp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0dp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ccp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0dp-4L : inexact-ok
+tgamma 0x1.0000000000001p0
+= tgamma downward flt-32 0x1.000002p+0f : 0xf.ffffep-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.000002p+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.000002p+0f : 0xf.ffffep-4f : inexact-ok
+= tgamma upward flt-32 0x1.000002p+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma downward dbl-64 0x1.000002p+0 : 0xf.ffffed8773428p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.000002p+0 : 0xf.ffffed877343p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.000002p+0 : 0xf.ffffed8773428p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.000002p+0 : 0xf.ffffed877343p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b038p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b4p-4L : inexact-ok
+= tgamma downward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffffp-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffffp-4 : inexact-ok
+= tgamma upward dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4828p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f483p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4828p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f483p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4cp-4L : inexact-ok
+tgamma 0x0.fffffffffffff8p0
+= tgamma downward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0xf.fffffp-4f : 0x1.000002p+0f : inexact-ok
+= tgamma downward dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma tonearest dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma towardzero dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma upward dbl-64 0xf.fffffp-4 : 0x1.00000093c468fp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0b2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0b2p+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6dfp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6ep+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6dfp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6ep+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af68p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af7p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af68p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af7p+0L : inexact-ok
+= tgamma downward dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0xf.ffffffffffff8p-4 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.00000000000004ap+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.00000000000004ap+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867dp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed86p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed868p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed86p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed868p+0L : inexact-ok
+tgamma -0x0.fffffffffffff8p0
+= tgamma downward flt-32 -0xf.fffffp-4f : -0x1.000002p+24f : inexact-ok
+= tgamma tonearest flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma towardzero flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma upward flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma downward dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b999p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma upward dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985f2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985f2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f1p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f1p+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f0fp+24L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f0fp+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f8p+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma downward dbl-64 -0xf.ffffffffffff8p-4 : -0x2.0000000000002p+52 : inexact-ok
+= tgamma tonearest dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma towardzero dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma upward dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma downward ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f43ap+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f43ap+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f438p+52L : inexact-ok
+= tgamma upward ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f438p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f5p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+tgamma -0x1.0000000000001p0
+= tgamma downward flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma tonearest flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma upward flt-32 -0x1.000002p+0f : 0x8p+20f : inexact-ok
+= tgamma downward dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab4p+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab8p+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab4p+20 : inexact-ok
+= tgamma upward dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab8p+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc4p+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc8p+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc4p+20L : inexact-ok
+= tgamma upward ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc8p+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6ep+20L : inexact-ok
+= tgamma downward dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x1.0000000000001p+0 : 0x1p+52 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93dp+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93dp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de4p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0dcp+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0ep+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0dcp+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0ep+48L : inexact-ok
+tgamma -0x1.fffffffffffffp0
+= tgamma downward flt-32 -0x1.fffffep+0f : 0x4p+20f : inexact-ok
+= tgamma tonearest flt-32 -0x1.fffffep+0f : 0x4.000008p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x1.fffffep+0f : 0x4p+20f : inexact-ok
+= tgamma upward flt-32 -0x1.fffffep+0f : 0x4.000008p+20f : inexact-ok
+= tgamma downward dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma upward dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdfp+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dbp+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032cp+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032ep+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032cp+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032ep+20L : inexact-ok
+= tgamma downward dbl-64 -0x1.fffffffffffffp+0 : 0x8p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.fffffffffffffp+0 : 0x8.0000000000008p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.fffffffffffffp+0 : 0x8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x1.fffffffffffffp+0 : 0x8.0000000000008p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab3p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127a8p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127acp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127a8p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127acp+48L : inexact-ok
+tgamma -0x2.0000000000002p0
+= tgamma downward flt-32 -0x2.000004p+0f : -0x1.fffffap+20f : inexact-ok
+= tgamma tonearest flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma upward flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma downward dbl-64 -0x2.000004p+0 : -0x1.fffff89e237b1p+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.000004p+0 : -0x1.fffff89e237b1p+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.000004p+0 : -0x1.fffff89e237bp+20 : inexact-ok
+= tgamma upward dbl-64 -0x2.000004p+0 : -0x1.fffff89e237bp+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d74p+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d74p+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133afp+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma upward ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe134p+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma downward dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffffap+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma downward ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881ccp+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma upward ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed882p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed882p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881p+48L : inexact-ok
+tgamma -0x2.ffffffffffffep0
+= tgamma downward flt-32 -0x2.fffffcp+0f : -0xa.aaaafp+16f : inexact-ok
+= tgamma tonearest flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma towardzero flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma upward flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma downward dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c5p+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c5p+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c48p+16 : inexact-ok
+= tgamma upward dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c48p+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc5p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc5p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d420208p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4204p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4204p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d42p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d42p+16L : inexact-ok
+= tgamma downward dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555559p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555559p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555558p+48 : inexact-ok
+= tgamma upward dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555558p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792cp+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792cp+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792bp+48L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792bp+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b798p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+tgamma -0x3.0000000000002p0
+= tgamma downward flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma towardzero flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma upward flt-32 -0x3.000004p+0f : 0xa.aaaa8p+16f : inexact-ok
+= tgamma downward dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849e8p+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849fp+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849e8p+16 : inexact-ok
+= tgamma upward dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849fp+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma downward ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338338p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c553384p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c553384p+16L : inexact-ok
+= tgamma downward dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555551p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555552p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555551p+48 : inexact-ok
+= tgamma upward dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555552p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma downward ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f2p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f498p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f4ap+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f498p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f4ap+48L : inexact-ok
+tgamma -0x3.ffffffffffffep0
+= tgamma downward flt-32 -0x3.fffffcp+0f : 0x2.aaaab8p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x3.fffffcp+0f : 0x2.aaaabcp+16f : inexact-ok
+= tgamma towardzero flt-32 -0x3.fffffcp+0f : 0x2.aaaab8p+16f : inexact-ok
+= tgamma upward flt-32 -0x3.fffffcp+0f : 0x2.aaaabcp+16f : inexact-ok
+= tgamma downward dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma upward dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5facp+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee74p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee74p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068dp+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068d2p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068dp+16L : inexact-ok
+= tgamma upward ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068d2p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e069p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e069p+16L : inexact-ok
+= tgamma downward dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma upward dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555568p+44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.5555555555565668p+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.5555555555565668p+44L : inexact-ok
+= tgamma downward ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be518976p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be5189764p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be518976p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be5189764p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51896p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51898p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51896p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51898p+44L : inexact-ok
+tgamma -0x4.0000000000004p0
+= tgamma downward flt-32 -0x4.000008p+0f : -0x1.555546p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x4.000008p+0f : -0x1.555546p+16f : inexact-ok
+= tgamma towardzero flt-32 -0x4.000008p+0f : -0x1.555544p+16f : inexact-ok
+= tgamma upward flt-32 -0x4.000008p+0f : -0x1.555544p+16f : inexact-ok
+= tgamma downward dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9bp+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma upward dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c6p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f775p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f775p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f7748p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f7748p+16L : inexact-ok
+= tgamma downward dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9cp+44 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma upward dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma downward ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81366p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae814p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+tgamma -0x4.ffffffffffffcp0
+= tgamma downward flt-32 -0x4.fffff8p+0f : -0x4.44448p+12f : inexact-ok
+= tgamma tonearest flt-32 -0x4.fffff8p+0f : -0x4.44448p+12f : inexact-ok
+= tgamma towardzero flt-32 -0x4.fffff8p+0f : -0x4.444478p+12f : inexact-ok
+= tgamma upward flt-32 -0x4.fffff8p+0f : -0x4.444478p+12f : inexact-ok
+= tgamma downward dbl-64 -0x4.fffff8p+0 : -0x4.44447e809018cp+12 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.fffff8p+0 : -0x4.44447e809018cp+12 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.fffff8p+0 : -0x4.44447e8090188p+12 : inexact-ok
+= tgamma upward dbl-64 -0x4.fffff8p+0 : -0x4.44447e8090188p+12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a71p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a71p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149a4p+12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb337514ap+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb337514ap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375148p+12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375148p+12L : inexact-ok
+= tgamma downward dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888c8p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma upward dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma downward ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d12712834478p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283448p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283448p+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283444p+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283444p+40L : inexact-ok
+tgamma -0x5.0000000000004p0
+= tgamma downward flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma tonearest flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma towardzero flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma upward flt-32 -0x5.000008p+0f : 0x4.44441p+12f : inexact-ok
+= tgamma downward dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma upward dbl-64 -0x5.000008p+0 : 0x4.44440a07fedbcp+12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92ep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92ep+12L : inexact-ok
+= tgamma downward ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9dcp+12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9ep+12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9dcp+12L : inexact-ok
+= tgamma upward ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9ep+12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd8p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fdap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd8p+12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fdap+12L : inexact-ok
+= tgamma downward dbl-64 -0x5.0000000000004p+0 : 0x8.8888888888848p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.0000000000004p+0 : 0x8.888888888885p+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.0000000000004p+0 : 0x8.8888888888848p+40 : inexact-ok
+= tgamma upward dbl-64 -0x5.0000000000004p+0 : 0x8.888888888885p+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4dp+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4dp+40L : inexact-ok
+= tgamma downward ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff68p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff7p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff68p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff7p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dffcp+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8ep+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dffcp+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8ep+40L : inexact-ok
+tgamma -0x5.ffffffffffffcp0
+= tgamma downward flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma tonearest flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma towardzero flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma upward flt-32 -0x5.fffff8p+0f : 0xb.60b6cp+8f : inexact-ok
+= tgamma downward dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma upward dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c9348p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645fp+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645f8p+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645fp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645f8p+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a648p+8L : inexact-ok
+= tgamma downward dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma upward dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c22p+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma downward ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a62231p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6228p+40L : inexact-ok
+tgamma -0x6.0000000000004p0
+= tgamma downward flt-32 -0x6.000008p+0f : -0xb.60b57p+8f : inexact-ok
+= tgamma tonearest flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma towardzero flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma upward flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma downward dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c88p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c88p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c8p+8 : inexact-ok
+= tgamma upward dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c8p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma downward ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace5p+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma upward ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068adp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068adp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068accp+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068accp+8L : inexact-ok
+= tgamma downward dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0dp+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma upward dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma downward ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2cp+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma upward ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d8p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+tgamma -0x6.ffffffffffffcp0
+= tgamma downward flt-32 -0x6.fffff8p+0f : -0x1.a01a1cp+8f : inexact-ok
+= tgamma tonearest flt-32 -0x6.fffff8p+0f : -0x1.a01a1cp+8f : inexact-ok
+= tgamma towardzero flt-32 -0x6.fffff8p+0f : -0x1.a01a1ap+8f : inexact-ok
+= tgamma upward flt-32 -0x6.fffff8p+0f : -0x1.a01a1ap+8f : inexact-ok
+= tgamma downward dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde3p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma upward dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde2022p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde2022p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e553p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e553p+8L : inexact-ok
+= tgamma downward dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403405p+36 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma upward dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma downward ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575646p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135757p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+tgamma -0x7.0000000000004p0
+= tgamma downward flt-32 -0x7.000008p+0f : 0x1.a019e6p+8f : inexact-ok
+= tgamma tonearest flt-32 -0x7.000008p+0f : 0x1.a019e8p+8f : inexact-ok
+= tgamma towardzero flt-32 -0x7.000008p+0f : 0x1.a019e6p+8f : inexact-ok
+= tgamma upward flt-32 -0x7.000008p+0f : 0x1.a019e8p+8f : inexact-ok
+= tgamma downward dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma upward dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a143p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a14241ap+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a14241ap+8L : inexact-ok
+= tgamma downward ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abccp+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7ab8p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7acp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7ab8p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7acp+8L : inexact-ok
+= tgamma downward dbl-64 -0x7.0000000000004p+0 : 0x3.4034034034018p+36 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.0000000000004p+0 : 0x3.403403403401ap+36 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.0000000000004p+0 : 0x3.4034034034018p+36 : inexact-ok
+= tgamma upward dbl-64 -0x7.0000000000004p+0 : 0x3.403403403401ap+36 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cdcp+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cdcp+36L : inexact-ok
+= tgamma downward ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a6p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a2p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a2p+36L : inexact-ok
+tgamma -0x7.ffffffffffffcp0
+= tgamma downward flt-32 -0x7.fffff8p+0f : 0x3.403438p+4f : inexact-ok
+= tgamma tonearest flt-32 -0x7.fffff8p+0f : 0x3.40343cp+4f : inexact-ok
+= tgamma towardzero flt-32 -0x7.fffff8p+0f : 0x3.403438p+4f : inexact-ok
+= tgamma upward flt-32 -0x7.fffff8p+0f : 0x3.40343cp+4f : inexact-ok
+= tgamma downward dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma upward dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf74p+4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993bp+4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe994p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993p+4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe994p+4L : inexact-ok
+= tgamma downward dbl-64 -0x7.ffffffffffffcp+0 : 0x6.806806806809cp+32 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.ffffffffffffcp+0 : 0x6.80680680680ap+32 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.ffffffffffffcp+0 : 0x6.806806806809cp+32 : inexact-ok
+= tgamma upward dbl-64 -0x7.ffffffffffffcp+0 : 0x6.80680680680ap+32 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb28p+32L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb28p+32L : inexact-ok
+= tgamma downward ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc6p+32L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc64p+32L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc6p+32L : inexact-ok
+= tgamma upward ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc64p+32L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefep+32L : inexact-ok
+tgamma -0x8.0000000000008p0
+= tgamma downward flt-32 -0x8.00001p+0f : -0x1.a019cap+4f : inexact-ok
+= tgamma tonearest flt-32 -0x8.00001p+0f : -0x1.a019cap+4f : inexact-ok
+= tgamma towardzero flt-32 -0x8.00001p+0f : -0x1.a019c8p+4f : inexact-ok
+= tgamma upward flt-32 -0x8.00001p+0f : -0x1.a019c8p+4f : inexact-ok
+= tgamma downward dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981dp+4 : inexact-ok
+= tgamma tonearest dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma towardzero dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma upward dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2bp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2bp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma downward ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4bp+4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4afp+4L : inexact-ok
+= tgamma upward ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4afp+4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a5p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma downward dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffep+32 : inexact-ok
+= tgamma tonearest dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma towardzero dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma upward dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma downward ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e4p+32L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e4p+32L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e3ep+32L : inexact-ok
+= tgamma upward ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e3ep+32L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7fp+32L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+tgamma -0x9.ffffffffffff8p0
+= tgamma downward flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma tonearest flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma towardzero flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma upward flt-32 -0x9.fffffp+0f : 0x4.9f94ap-4f : inexact-ok
+= tgamma downward dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma upward dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f362cp-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629ad8p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629ad8p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9144p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9148p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9144p-4L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9148p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db92p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db92p-4L : inexact-ok
+= tgamma downward dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma upward dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb98p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb919p+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb919p+24L : inexact-ok
+= tgamma downward ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37d8p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37ep+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37d8p+24L : inexact-ok
+= tgamma upward ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37ep+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc34p+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc38p+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc34p+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc38p+24L : inexact-ok
+tgamma -0xa.0000000000008p0
+= tgamma downward flt-32 -0xa.00001p+0f : -0x4.9f934p-4f : inexact-ok
+= tgamma tonearest flt-32 -0xa.00001p+0f : -0x4.9f934p-4f : inexact-ok
+= tgamma towardzero flt-32 -0xa.00001p+0f : -0x4.9f9338p-4f : inexact-ok
+= tgamma upward flt-32 -0xa.00001p+0f : -0x4.9f9338p-4f : inexact-ok
+= tgamma downward dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a3p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma upward dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc18p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc18p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma downward ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c358p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c358p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c354p-4L : inexact-ok
+= tgamma upward ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c354p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c4p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c4p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c2p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c2p-4L : inexact-ok
+= tgamma downward dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa38p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa38p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa3p+24 : inexact-ok
+= tgamma upward dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa3p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma downward ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b5p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma upward ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5cp+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5cp+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be58p+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be58p+24L : inexact-ok
+tgamma -0x13.ffffffffffffp0
+= tgamma downward flt-32 -0x1.3ffffep+4f : 0x3.ca86ep-44f : inexact-ok
+= tgamma tonearest flt-32 -0x1.3ffffep+4f : 0x3.ca86e4p-44f : inexact-ok
+= tgamma towardzero flt-32 -0x1.3ffffep+4f : 0x3.ca86ep-44f : inexact-ok
+= tgamma upward flt-32 -0x1.3ffffep+4f : 0x3.ca86e4p-44f : inexact-ok
+= tgamma downward dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011ecap-44 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011eccp-44 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011ecap-44 : inexact-ok
+= tgamma upward dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011eccp-44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b4p-44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b4p-44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e124p-44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e126p-44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e124p-44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e126p-44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e2p-44L : inexact-ok
+= tgamma downward dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080ap-16 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080a04p-16 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080ap-16 : inexact-ok
+= tgamma upward dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080a04p-16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e8p-16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e8p-16L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541144p-16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541148p-16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541144p-16L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541148p-16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541p-16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f785412p-16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541p-16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f785412p-16L : inexact-ok
+tgamma -0x14.000000000001p0
+= tgamma downward flt-32 -0x1.400002p+4f : -0x3.ca8408p-44f : inexact-ok
+= tgamma tonearest flt-32 -0x1.400002p+4f : -0x3.ca8408p-44f : inexact-ok
+= tgamma towardzero flt-32 -0x1.400002p+4f : -0x3.ca8404p-44f : inexact-ok
+= tgamma upward flt-32 -0x1.400002p+4f : -0x3.ca8404p-44f : inexact-ok
+= tgamma downward dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d4p-44 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d4p-44 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d2p-44 : inexact-ok
+= tgamma upward dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d2p-44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38b4p-44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38b4p-44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a6p-44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a6p-44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a4p-44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a4p-44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9244p-44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9244p-44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243p-44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243p-44L : inexact-ok
+= tgamma downward dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080728p-16 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma upward dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725af8p-16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725af8p-16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma downward ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134e4p-16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134e4p-16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134ep-16L : inexact-ok
+= tgamma upward ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134ep-16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d136p-16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+tgamma -0x1d.ffffffffffffp0
+= tgamma downward flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma tonearest flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma towardzero flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma upward flt-32 -0x1.dffffep+4f : 0x9.c99a6p-92f : inexact-ok
+= tgamma downward dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c57p-92 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c5708p-92 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c57p-92 : inexact-ok
+= tgamma upward dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c5708p-92 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570515p-92L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570515p-92L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cep-92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942ce8p-92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cep-92L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942ce8p-92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06943p-92L : inexact-ok
+= tgamma downward dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma upward dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d652p-60 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6dp-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6ep-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6dp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6ep-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fep-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe8p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fep-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe8p-60L : inexact-ok
+tgamma -0x1e.000000000001p0
+= tgamma downward flt-32 -0x1.e00002p+4f : -0x9.c992p-92f : inexact-ok
+= tgamma tonearest flt-32 -0x1.e00002p+4f : -0x9.c992p-92f : inexact-ok
+= tgamma towardzero flt-32 -0x1.e00002p+4f : -0x9.c991fp-92f : inexact-ok
+= tgamma upward flt-32 -0x1.e00002p+4f : -0x9.c991fp-92f : inexact-ok
+= tgamma downward dbl-64 -0x1.e00002p+4 : -0x9.c991f9b459728p-92 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.e00002p+4 : -0x9.c991f9b459728p-92 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.e00002p+4 : -0x9.c991f9b45972p-92 : inexact-ok
+= tgamma upward dbl-64 -0x1.e00002p+4 : -0x9.c991f9b45972p-92 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daa8p-92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455dcp-92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455dcp-92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455d8p-92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455d8p-92L : inexact-ok
+= tgamma downward dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5ccp-60 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma upward dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bcp-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5cp-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+tgamma -0x27.fffffffffffep0
+= tgamma downward flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.7ffffcp+4f : 0x7.3p-144f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7a8p-144 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7acp-144 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7a8p-144 : inexact-ok
+= tgamma upward dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7acp-144 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3684p-144L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a36ap-144L : inexact-ok
+= tgamma downward dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma upward dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095dcp-116 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0ep-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b4p-116L : inexact-ok
+tgamma -0x28.000000000002p0
+= tgamma downward flt-32 -0x2.800004p+4f : -0x7.3p-144f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d2cp-144 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d2cp-144 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d28p-144 : inexact-ok
+= tgamma upward dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d28p-144 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma downward ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1e4p-144L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma upward ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c2p-144L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c2p-144L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7cp-144L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7cp-144L : inexact-ok
+= tgamma downward dbl-64 -0x2.8000000000002p+4 : -0xe.5476a15095078p-116 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8000000000002p+4 : -0xe.5476a15095078p-116 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8000000000002p+4 : -0xe.5476a1509507p-116 : inexact-ok
+= tgamma upward dbl-64 -0x2.8000000000002p+4 : -0xe.5476a1509507p-116 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fc8p-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fc8p-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fcp-116L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fcp-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd9p-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd9p-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8cp-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8cp-116L : inexact-ok
+tgamma -0x28.fffffffffffep0
+= tgamma downward flt-32 -0x2.8ffffcp+4f : -0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.8ffffcp+4f : -0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.8ffffcp+4f : -0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.8ffffcp+4f : -0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df68p-148 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma upward dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fcp-148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fcp-148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fap-148L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fap-148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466566p-148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466566p-148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565p-148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565p-148L : inexact-ok
+= tgamma downward dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740bap-120 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma upward dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd7p-120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd7p-120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4994p-120L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4ap-120L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4ap-120L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b48p-120L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b48p-120L : inexact-ok
+tgamma -0x29.000000000002p0
+= tgamma downward flt-32 -0x2.900004p+4f : 0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.900004p+4f : 0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.900004p+4f : 0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.900004p+4f : 0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma upward dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b38p-148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma downward ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986872p-148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986874p-148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986872p-148L : inexact-ok
+= tgamma upward ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986874p-148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9869p-148L : inexact-ok
+= tgamma downward dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma upward dbl-64 -0x2.9000000000002p+4 : 0x5.979870e74066cp-120 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da24p-120L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dcp-120L : inexact-ok
+tgamma -0x29.fffffffffffep0
+= tgamma downward flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.9ffffcp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma upward dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c8p-152 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736cp-152L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736cp-152L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6049p-152L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e604ap-152L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6049p-152L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e604ap-152L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6p-152L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e608p-152L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6p-152L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e608p-152L : inexact-ok
+= tgamma downward dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma upward dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cd2p-124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c4p-124L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c6p-124L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c4p-124L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c6p-124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89p-124L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac8ap-124L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89p-124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac8ap-124L : inexact-ok
+tgamma -0x2a.000000000002p0
+= tgamma downward flt-32 -0x2.a00004p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c62p-152 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c62p-152 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c61p-152 : inexact-ok
+= tgamma upward dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c61p-152 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bcp-152L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a458p-152L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma downward dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61ad2p-124 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma upward dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd24p-124L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd24p-124L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd22p-124L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd22p-124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fep-124L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+tgamma -0x31.fffffffffffep0
+= tgamma downward flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.1ffffcp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa78p-200 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa8p-200 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa78p-200 : inexact-ok
+= tgamma upward dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa8p-200 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d00878p-200L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d00cp-200L : inexact-ok
+= tgamma downward dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma upward dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce52p-168 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff1fp-168L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff2p-168L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff1fp-168L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff2p-168L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff8p-168L : inexact-ok
+tgamma -0x32.000000000002p0
+= tgamma downward flt-32 -0x3.200004p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x3.200004p+4 : -0xd.d9aa2280534p-200 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.200004p+4 : -0xd.d9aa2280534p-200 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.200004p+4 : -0xd.d9aa2280533f8p-200 : inexact-ok
+= tgamma upward dbl-64 -0x3.200004p+4 : -0xd.d9aa2280533f8p-200 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma downward ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1118p-200L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma upward ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb14p-200L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma downward dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9fp-168 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9fp-168 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9ep-168 : inexact-ok
+= tgamma upward dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9ep-168 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed76p-168L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed76p-168L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma downward ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b9861p-168L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b9861p-168L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b986p-168L : inexact-ok
+= tgamma upward ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b986p-168L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b988p-168L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b988p-168L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b98p-168L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b98p-168L : inexact-ok
+tgamma -0x63.fffffffffffcp0
+= tgamma downward flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.3ffff8p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c76p-508 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c77p-508 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c76p-508 : inexact-ok
+= tgamma upward dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c77p-508 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76dfap-508L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76dfap-508L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6ep-508L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bcep-508L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce8p-508L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bcep-508L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce8p-508L : inexact-ok
+= tgamma downward dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma upward dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1bap-480 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a386p-480L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a3p-480L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a4p-480L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a3p-480L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a4p-480L : inexact-ok
+tgamma -0x64.000000000004p0
+= tgamma downward flt-32 -0x6.400008p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014ep-508 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma upward dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma downward ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526cp-508L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma upward ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646528p-508L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646528p-508L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc852364652p-508L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc852364652p-508L : inexact-ok
+= tgamma downward dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4cp-480 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4cp-480 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4ap-480 : inexact-ok
+= tgamma upward dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4ap-480 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma downward ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdep-480L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma upward ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ecp-480L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ecp-480L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebp-480L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebp-480L : inexact-ok
+tgamma -0x95.fffffffffff8p0
+= tgamma downward flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x9.5ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa48p-860 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa5p-860 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa48p-860 : inexact-ok
+= tgamma upward dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa5p-860 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c937p-860L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9p-860L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c94p-860L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9p-860L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c94p-860L : inexact-ok
+= tgamma downward dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406adp-828 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406aep-828 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406adp-828 : inexact-ok
+= tgamma upward dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406aep-828 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada86p-828L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada86p-828L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b3p-828L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b4p-828L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b3p-828L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b4p-828L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa18p-828L : inexact-ok
+tgamma -0x96.000000000008p0
+= tgamma downward flt-32 -0x9.60001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x9.60001p+4 : -0x8.d14d214a189cp-860 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma upward dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93cp-860L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93cp-860L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma downward ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a6p-860L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma upward ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4cp-860L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4cp-860L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c48p-860L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c48p-860L : inexact-ok
+= tgamma downward dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640127p-828 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640127p-828 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640126p-828 : inexact-ok
+= tgamma upward dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640126p-828 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma downward ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c7ap-828L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c7ap-828L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c79p-828L : inexact-ok
+= tgamma upward ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c79p-828L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c8p-828L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c8p-828L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15cp-828L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15cp-828L : inexact-ok
+tgamma -0xb4.fffffffffff8p0
+= tgamma downward flt-32 -0xb.4ffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.4ffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f062p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f062p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550d04p-1088L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4ffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f41cp-1060 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800ep-1060L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800ep-1060L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7ep-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7ep-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7d8p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7d8p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f41cp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+tgamma -0xb5.000000000008p0
+= tgamma downward flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.50001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.50001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523fp-1088L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523fp-1088L : inexact-ok
+= tgamma downward ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab3cp-1088L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab4p-1088L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab3cp-1088L : inexact-ok
+= tgamma upward ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab4p-1088L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.50001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.5000000000008p+4 : 0xb.f41cp-1060 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc14134028p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f41cp-1060L : inexact-ok underflow errno-erange-ok
+tgamma -0xb5.fffffffffff8p0
+= tgamma downward flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.5ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.5ffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fa8p-1096L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fbp-1096L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fa8p-1096L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fbp-1096L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.5ffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0d4p-1064 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd22p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd22p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2bp-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2cp-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2bp-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2cp-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0d4p-1064L : inexact-ok underflow errno-erange-ok
+tgamma -0xb6.000000000008p0
+= tgamma downward flt-32 -0xb.60001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.60001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma downward ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e03p-1096L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e03p-1096L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e028p-1096L : inexact-ok
+= tgamma upward ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e028p-1096L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.60001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6000000000008p+4 : -0x1.0d4p-1064 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f834p-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f834p-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f833p-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f833p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0d4p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+tgamma -0xb6.fffffffffff8p0
+= tgamma downward flt-32 -0xb.6ffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6ffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af98p-1104L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af98p-1104L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af9p-1104L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af9p-1104L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6ffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6fffffffffff8p+4 : -0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6fffffffffff8p+4 : -0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.6fffffffffff8p+4 : -0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.6fffffffffff8p+4 : -0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed316p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed316p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a41p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a41p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a4p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a4p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+tgamma -0xb7.000000000008p0
+= tgamma downward flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.70001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.70001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bcap-1104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bcap-1104L : inexact-ok
+= tgamma downward ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176a8p-1104L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176bp-1104L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176a8p-1104L : inexact-ok
+= tgamma upward ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176bp-1104L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.70001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7000000000008p+4 : 0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.7000000000008p+4 : 0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.7000000000008p+4 : 0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.7000000000008p+4 : 0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914246p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7000000000008p+4L : 0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.7000000000008p+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.7000000000008p+4L : 0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.7000000000008p+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+tgamma -0xb7.fffffffffff8p0
+= tgamma downward flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.7ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.7ffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377cp-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377cp-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef8p-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.7ffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.7fffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3cp-1080L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3cp-1080L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a073405p-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a0734052p-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a073405p-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a0734052p-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0xb8.000000000008p0
+= tgamma downward flt-32 -0xb.80001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.80001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189e2p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189e2p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89ep-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89ep-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89dp-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89dp-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.80001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.8000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma downward ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c3p-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c3p-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c2ep-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c2ep-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.8000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma 0x8.00000000000000000000000004p0
+= tgamma downward flt-32 0x8.00001p+0f : 0x1.3b0026p+12f : inexact-ok
+= tgamma tonearest flt-32 0x8.00001p+0f : 0x1.3b0028p+12f : inexact-ok
+= tgamma towardzero flt-32 0x8.00001p+0f : 0x1.3b0026p+12f : inexact-ok
+= tgamma upward flt-32 0x8.00001p+0f : 0x1.3b0028p+12f : inexact-ok
+= tgamma downward dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d78p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d79p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d78p+12 : inexact-ok
+= tgamma upward dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d79p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78ep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78ep+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb52p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6ecebp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6ecebp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb8p+12L : inexact-ok
+= tgamma downward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma tonearest flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma towardzero flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma upward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma downward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma upward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000013p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000014p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000013p+12 : inexact-ok
+= tgamma upward dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000014p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d78p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d78p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6264p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c62p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c628p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c62p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c628p+12L : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14577p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14578p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14577p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14578p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b145p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b1458p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b145p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b1458p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.00000000000000000000000004p+0L : 0x1.3b000000000000000000000009ebp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.00000000000000000000000004p+0L : 0x1.3b000000000000000000000009ecp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.00000000000000000000000004p+0L : 0x1.3b000000000000000000000009ebp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.00000000000000000000000004p+0L : 0x1.3b000000000000000000000009ecp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.00000000000000000000000004p+0L : 0x1.3b0000000000000000000000098p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.00000000000000000000000004p+0L : 0x1.3b00000000000000000000000ap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.00000000000000000000000004p+0L : 0x1.3b0000000000000000000000098p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.00000000000000000000000004p+0L : 0x1.3b00000000000000000000000ap+12L : inexact-ok
+tgamma 0x7.fffffffffffffffffffffffffep0
+= tgamma downward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma tonearest flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma towardzero flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma upward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma downward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma upward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma tonearest flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma towardzero flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma upward flt-32 0x7.fffff8p+0f : 0x1.3affeep+12f : inexact-ok
+= tgamma downward dbl-64 0x7.fffff8p+0 : 0x1.3affec289603dp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x7.fffff8p+0 : 0x1.3affec289603ep+12 : inexact-ok
+= tgamma towardzero dbl-64 0x7.fffff8p+0 : 0x1.3affec289603dp+12 : inexact-ok
+= tgamma upward dbl-64 0x7.fffff8p+0 : 0x1.3affec289603ep+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de82p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de82p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67783p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67784p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67783p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67784p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f678p+12L : inexact-ok
+= tgamma downward dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma upward dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff7p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6146p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6146p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab7p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab8p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab7p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab8p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4bp+12L : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffeep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffeep+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d44p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d44p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d44p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d45p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75dp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75dp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d8p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffb0ap+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffb0ap+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffb0ap+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffb0bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffbp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffbp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffbp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffb8p+12L : inexact-ok
+tgamma 0x7.00000000000000000000000002p0
+= tgamma downward flt-32 0x7.000008p+0f : 0x2.d00028p+8f : inexact-ok
+= tgamma tonearest flt-32 0x7.000008p+0f : 0x2.d0002cp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7.000008p+0f : 0x2.d00028p+8f : inexact-ok
+= tgamma upward flt-32 0x7.000008p+0f : 0x2.d0002cp+8f : inexact-ok
+= tgamma downward dbl-64 0x7.000008p+0 : 0x2.d0002a233e27ep+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7.000008p+0 : 0x2.d0002a233e28p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7.000008p+0 : 0x2.d0002a233e27ep+8 : inexact-ok
+= tgamma upward dbl-64 0x7.000008p+0 : 0x2.d0002a233e28p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b118p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b2p+8L : inexact-ok
+= tgamma downward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma tonearest flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma upward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma downward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma upward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward dbl-64 0x7.0000000000004p+0 : 0x2.d000000000014p+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7.0000000000004p+0 : 0x2.d000000000016p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7.0000000000004p+0 : 0x2.d000000000014p+8 : inexact-ok
+= tgamma upward dbl-64 0x7.0000000000004p+0 : 0x2.d000000000016p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d00000000001511cp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d00000000001511cp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f6p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f6p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f6p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f8p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8174p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8174p+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000a88p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000a88p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000a88p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000a8ap+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000ap+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000bp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000ap+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000bp+8L : inexact-ok
+tgamma 0x6.fffffffffffffffffffffffffep0
+= tgamma downward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma tonearest flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma upward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma downward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma upward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma tonearest flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma towardzero flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma upward flt-32 0x6.fffff8p+0f : 0x2.cfffd8p+8f : inexact-ok
+= tgamma downward dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46aep+8 : inexact-ok
+= tgamma tonearest dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46bp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46aep+8 : inexact-ok
+= tgamma upward dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46bp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e4p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e4p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398164p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3982p+8L : inexact-ok
+= tgamma downward dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma tonearest dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma towardzero dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma upward dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffecp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ecp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ep+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609fp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ep+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609fp+8L : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c08p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c0ap+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c08p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c0ap+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8cp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8cp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8cp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff576p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff578p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff576p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff578p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff5p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff5p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff5p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff6p+8L : inexact-ok
+tgamma 0x6.00000000000000000000000002p0
+= tgamma downward flt-32 0x6.000008p+0f : 0x7.80006p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6.000008p+0f : 0x7.800068p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6.000008p+0f : 0x7.80006p+4f : inexact-ok
+= tgamma upward flt-32 0x6.000008p+0f : 0x7.800068p+4f : inexact-ok
+= tgamma downward dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma upward dbl-64 0x6.000008p+0 : 0x7.8000665dfa8dp+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc4p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc4p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970ep+4L : inexact-ok
+= tgamma downward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma upward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward dbl-64 0x6.0000000000004p+0 : 0x7.800000000003p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6.0000000000004p+0 : 0x7.8000000000034p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6.0000000000004p+0 : 0x7.800000000003p+4 : inexact-ok
+= tgamma upward dbl-64 0x6.0000000000004p+0 : 0x7.8000000000034p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd357455433p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd3574554334p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd357455433p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd3574554334p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745542p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745544p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745542p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745544p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a9p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a9p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a9p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a94p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8ap+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8ap+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8ap+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8cp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001994p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001998p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001994p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001998p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.00000000000000000000000002p+0L : 0x7.80000000000000000000000018p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001ap+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.00000000000000000000000002p+0L : 0x7.80000000000000000000000018p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001ap+4L : inexact-ok
+tgamma 0x5.fffffffffffffffffffffffffep0
+= tgamma downward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma upward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma upward flt-32 0x5.fffff8p+0f : 0x7.7fffap+4f : inexact-ok
+= tgamma downward dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f4p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f4p+4 : inexact-ok
+= tgamma upward dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43ep+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43e4p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43ep+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43e4p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d42p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d44p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d42p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d44p+4L : inexact-ok
+= tgamma downward dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma upward dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffdp+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd18p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd18p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fep+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2ep+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac3p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2ep+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac3p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffffap+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffffap+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951756cp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951757p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951756cp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951757p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595174p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595176p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595174p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595176p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe668p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe668p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe668p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe66cp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe6p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe6p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe6p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe8p+4L : inexact-ok
+tgamma 0x5.00000000000000000000000002p0
+= tgamma downward flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma upward flt-32 0x5.000008p+0f : 0x1.800014p+4f : inexact-ok
+= tgamma downward dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma upward dbl-64 0x5.000008p+0 : 0x1.80001212cb98ep+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561ep+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680568p+4L : inexact-ok
+= tgamma downward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma upward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma upward dbl-64 0x5.0000000000004p+0 : 0x1.800000000000ap+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009098p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009098p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd302p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd303p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd302p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd303p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd38p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000014p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000014p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb6p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb7p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb6p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb7p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561b8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561b8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561b8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561cp+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.00000000000000000000000002p+0L : 0x1.8000000000000000000000000484p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.00000000000000000000000002p+0L : 0x1.8000000000000000000000000485p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.00000000000000000000000002p+0L : 0x1.8000000000000000000000000484p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.00000000000000000000000002p+0L : 0x1.8000000000000000000000000485p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.00000000000000000000000002p+0L : 0x1.800000000000000000000000048p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.00000000000000000000000002p+0L : 0x1.800000000000000000000000048p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.00000000000000000000000002p+0L : 0x1.800000000000000000000000048p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.00000000000000000000000002p+0L : 0x1.80000000000000000000000005p+4L : inexact-ok
+tgamma 0x4.fffffffffffffffffffffffffep0
+= tgamma downward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma upward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward flt-32 0x4.fffff8p+0f : 0x1.7fffecp+4f : inexact-ok
+= tgamma tonearest flt-32 0x4.fffff8p+0f : 0x1.7fffeep+4f : inexact-ok
+= tgamma towardzero flt-32 0x4.fffff8p+0f : 0x1.7fffecp+4f : inexact-ok
+= tgamma upward flt-32 0x4.fffff8p+0f : 0x1.7fffeep+4f : inexact-ok
+= tgamma downward dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35562p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35563p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35562p+4 : inexact-ok
+= tgamma upward dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35563p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116ap+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116ap+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116bp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b11p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b118p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b11p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b118p+4L : inexact-ok
+= tgamma downward dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff6p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff7p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff6p+4 : inexact-ok
+= tgamma upward dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff7p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bfp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2269p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e449p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e449p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e449p+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e44ap+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e4p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e48p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e4p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e48p+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb7bp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb7bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb7bp+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb7cp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffbp+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffbp+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb8p+4L : inexact-ok
+tgamma 0x4.00000000000000000000000002p0
+= tgamma downward flt-32 0x4.000008p+0f : 0x6.000038p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4.000008p+0f : 0x6.00004p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4.000008p+0f : 0x6.000038p+0f : inexact-ok
+= tgamma upward flt-32 0x4.000008p+0f : 0x6.00004p+0f : inexact-ok
+= tgamma downward dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma upward dbl-64 0x4.000008p+0 : 0x6.00003c4b2debp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac888p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac888p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c4p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c44p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c4p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c44p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971ep+0L : inexact-ok
+= tgamma downward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma upward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma downward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma upward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward dbl-64 0x4.0000000000004p+0 : 0x6.000000000001cp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4.0000000000004p+0 : 0x6.000000000002p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4.0000000000004p+0 : 0x6.000000000001cp+0 : inexact-ok
+= tgamma upward dbl-64 0x4.0000000000004p+0 : 0x6.000000000002p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e26p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e26p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de8p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772cp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772ep+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772cp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772ep+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ed8p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586edcp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ed8p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586edcp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ep+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ep+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ep+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85587p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000f1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000f14p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000f1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000f14p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000ep+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000001p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000ep+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000001p+0L : inexact-ok
+tgamma 0x3.ffffffffffffffffffffffffffp0
+= tgamma downward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma upward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma downward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma upward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma upward flt-32 0x3.fffffcp+0f : 0x5.ffffe8p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a168p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a16cp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a168p+0 : inexact-ok
+= tgamma upward dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a16cp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afdp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afdp+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8647p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a866p+0L : inexact-ok
+= tgamma downward dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma upward dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffff4p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed8p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed8p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac14p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac14p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44aep+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe8p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe8p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c89p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c894p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c89p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c894p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53cap+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff874p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff878p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff874p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff878p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffffap+0L : inexact-ok
+tgamma 0x3.00000000000000000000000001p0
+= tgamma downward flt-32 0x3.000004p+0f : 0x2.000004p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.000004p+0f : 0x2.000008p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.000004p+0f : 0x2.000004p+0f : inexact-ok
+= tgamma upward flt-32 0x3.000004p+0f : 0x2.000008p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.000004p+0 : 0x2.00000761dcd4cp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.000004p+0 : 0x2.00000761dcd4ep+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.000004p+0 : 0x2.00000761dcd4cp+0 : inexact-ok
+= tgamma upward dbl-64 0x3.000004p+0 : 0x2.00000761dcd4ep+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b698p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b69ap+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b698p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b69ap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b7p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b7p+0L : inexact-ok
+= tgamma downward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma upward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma downward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma upward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward dbl-64 0x3.0000000000002p+0 : 0x2.0000000000002p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.0000000000002p+0 : 0x2.0000000000004p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.0000000000002p+0 : 0x2.0000000000002p+0 : inexact-ok
+= tgamma upward dbl-64 0x3.0000000000002p+0 : 0x2.0000000000004p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d312p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d314p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d312p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d314p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d4p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e41278p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e4127ap+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e41278p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e4127ap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e412p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e412p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e412p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e413p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001d8p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001d8p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001d8p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001dap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000002p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000002p+0L : inexact-ok
+tgamma 0x2.ffffffffffffffffffffffffffp0
+= tgamma downward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma upward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma downward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma upward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma upward flt-32 0x2.fffffcp+0f : 0x1.fffffap+0f : inexact-ok
+= tgamma downward dbl-64 0x2.fffffcp+0 : 0x1.fffff89e2353p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.fffffcp+0 : 0x1.fffff89e23531p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.fffffcp+0 : 0x1.fffff89e2353p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.fffffcp+0 : 0x1.fffff89e23531p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d74p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d74p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c3p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c3p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c4268p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c427p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c4268p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c427p+0L : inexact-ok
+= tgamma downward dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma upward dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffdp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e5p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e5p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c368p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c37p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c368p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c37p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffffap+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffffap+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed86p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed86p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed86p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed87p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1beep+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffe27p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffe28p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffe27p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffe28p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffep+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffep+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffep+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffe8p+0L : inexact-ok
+tgamma 0x2.00000000000000000000000001p0
+= tgamma downward flt-32 0x2.000004p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.000004p+0f : 0x1.000002p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.000004p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2.000004p+0f : 0x1.000002p+0f : inexact-ok
+= tgamma downward dbl-64 0x2.000004p+0 : 0x1.000001b0ee67p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.000004p+0 : 0x1.000001b0ee671p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.000004p+0 : 0x1.000001b0ee67p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.000004p+0 : 0x1.000001b0ee671p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf8p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1db8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dcp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1db8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dcp+0L : inexact-ok
+= tgamma downward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward dbl-64 0x2.0000000000002p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.0000000000002p+0 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.0000000000002p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.0000000000002p+0 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e9p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093dp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093dp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee607209p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee607209p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee607209p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072098p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000006cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000006cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000006cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000006dp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.00000000000000000000000001p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.00000000000000000000000001p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000008p+0L : inexact-ok
+tgamma 0x1.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma upward flt-32 0x1.fffffep+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1.fffffep+0 : 0xf.fffff2788d168p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.fffffep+0 : 0xf.fffff2788d17p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.fffffep+0 : 0xf.fffff2788d168p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.fffffep+0 : 0xf.fffff2788d17p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac6p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dbp-4L : inexact-ok
+= tgamma downward dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.fffffffffffffp+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93dp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93dp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce4p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ccp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0dp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ccp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0dp-4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffffffffffffep+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb618p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb618p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb618p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb62p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb4p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb8p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb4p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb8p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffc98p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffcap-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffc98p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffcap-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.ffffffffffffffffffffffffff8p+0L : 0x1p+0L : inexact-ok
+tgamma 0x1.000000000000000000000000008p0
+= tgamma downward flt-32 0x1.000002p+0f : 0xf.ffffep-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.000002p+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.000002p+0f : 0xf.ffffep-4f : inexact-ok
+= tgamma upward flt-32 0x1.000002p+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma downward dbl-64 0x1.000002p+0 : 0xf.ffffed8773428p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.000002p+0 : 0xf.ffffed877343p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.000002p+0 : 0xf.ffffed8773428p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.000002p+0 : 0xf.ffffed877343p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b038p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b4p-4L : inexact-ok
+= tgamma downward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffffp-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffffp-4 : inexact-ok
+= tgamma upward dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4828p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f483p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4828p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f483p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4cp-4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049ep-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049e8p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049ep-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049e8p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039048p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039048p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039048p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed877303904cp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffb6p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffb6p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffb6p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffb68p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+tgamma 0x0.ffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0xf.fffffp-4f : 0x1.000002p+0f : inexact-ok
+= tgamma downward dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma tonearest dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma towardzero dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma upward dbl-64 0xf.fffffp-4 : 0x1.00000093c468fp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0b2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0b2p+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6dfp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6ep+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6dfp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6ep+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af68p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af7p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af68p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af7p+0L : inexact-ok
+= tgamma downward dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0xf.ffffffffffff8p-4 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.00000000000004ap+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.00000000000004ap+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867dp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed86p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed868p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed86p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed868p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37dbp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37db1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37dbp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37db1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37d8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37d8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37d8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37ep+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L : 0x1.0000000000000000000000000024p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L : 0x1.0000000000000000000000000025p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L : 0x1.0000000000000000000000000024p+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L : 0x1.0000000000000000000000000025p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L : 0x1.000000000000000000000000008p+0L : inexact-ok
+tgamma -0x0.ffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0xf.fffffp-4f : -0x1.000002p+24f : inexact-ok
+= tgamma tonearest flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma towardzero flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma upward flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma downward dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b999p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma upward dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985f2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985f2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f1p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f1p+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f0fp+24L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f0fp+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f8p+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma downward dbl-64 -0xf.ffffffffffff8p-4 : -0x2.0000000000002p+52 : inexact-ok
+= tgamma tonearest dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma towardzero dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma upward dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma downward ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f43ap+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f43ap+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f438p+52L : inexact-ok
+= tgamma upward ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f438p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f5p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1.0000000000000002p+64L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1.0000000000000002p+64L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824fp+64L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824fp+64L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824ep+64L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824ep+64L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c828p+64L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c828p+64L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c82p+64L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c82p+64L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffffffffffffffffffffffcp-4L : -0x4.000000000000000000000000006cp+104L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffffffffffffffffffffffcp-4L : -0x4.000000000000000000000000006cp+104L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffffffffffffffffffffffcp-4L : -0x4.0000000000000000000000000068p+104L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffffffffffffffffffffffcp-4L : -0x4.0000000000000000000000000068p+104L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.fffffffffffffffffffffffffcp-4L : -0x4.00000000000000000000000002p+104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.fffffffffffffffffffffffffcp-4L : -0x4p+104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.fffffffffffffffffffffffffcp-4L : -0x4p+104L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.fffffffffffffffffffffffffcp-4L : -0x4p+104L : inexact-ok
+tgamma -0x1.000000000000000000000000008p0
+= tgamma downward flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma tonearest flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma upward flt-32 -0x1.000002p+0f : 0x8p+20f : inexact-ok
+= tgamma downward dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab4p+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab8p+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab4p+20 : inexact-ok
+= tgamma upward dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab8p+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc4p+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc8p+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc4p+20L : inexact-ok
+= tgamma upward ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc8p+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6ep+20L : inexact-ok
+= tgamma downward dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x1.0000000000001p+0 : 0x1p+52 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93dp+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93dp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de4p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0dcp+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0ep+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0dcp+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0ep+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.0000000000000002p+0L : 0x8p+60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.0000000000000002p+0L : 0x8p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db0cp+60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db0cp+60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db0cp+60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db1p+60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dap+60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dcp+60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dap+60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dcp+60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff93p+104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff94p+104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff93p+104L : inexact-ok
+= tgamma upward ldbl-128 -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff94p+104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff8p+104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff8p+104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff8p+104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.000000000000000000000000008p+0L : 0x2p+104L : inexact-ok
+tgamma -0x1.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0x1.fffffep+0f : 0x4p+20f : inexact-ok
+= tgamma tonearest flt-32 -0x1.fffffep+0f : 0x4.000008p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x1.fffffep+0f : 0x4p+20f : inexact-ok
+= tgamma upward flt-32 -0x1.fffffep+0f : 0x4.000008p+20f : inexact-ok
+= tgamma downward dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma upward dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdfp+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dbp+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032cp+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032ep+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032cp+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032ep+20L : inexact-ok
+= tgamma downward dbl-64 -0x1.fffffffffffffp+0 : 0x8p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.fffffffffffffp+0 : 0x8.0000000000008p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.fffffffffffffp+0 : 0x8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x1.fffffffffffffp+0 : 0x8.0000000000008p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab3p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127a8p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127acp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127a8p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127acp+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e41278p+60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e41278p+60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e41278p+60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e4127cp+60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e412p+60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e412p+60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e412p+60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e414p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.0000000000000000000000000076p+104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.0000000000000000000000000076p+104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.0000000000000000000000000076p+104L : inexact-ok
+= tgamma upward ldbl-128 -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.0000000000000000000000000077p+104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.ffffffffffffffffffffffffff8p+0L : 0x1p+104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.000000000000000000000000008p+104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.ffffffffffffffffffffffffff8p+0L : 0x1p+104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.000000000000000000000000008p+104L : inexact-ok
+tgamma -0x2.00000000000000000000000001p0
+= tgamma downward flt-32 -0x2.000004p+0f : -0x1.fffffap+20f : inexact-ok
+= tgamma tonearest flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma upward flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma downward dbl-64 -0x2.000004p+0 : -0x1.fffff89e237b1p+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.000004p+0 : -0x1.fffff89e237b1p+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.000004p+0 : -0x1.fffff89e237bp+20 : inexact-ok
+= tgamma upward dbl-64 -0x2.000004p+0 : -0x1.fffff89e237bp+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d74p+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d74p+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133afp+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma upward ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe134p+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma downward dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffffap+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma downward ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881ccp+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma upward ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed882p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed882p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881p+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffffap+60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffffap+60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed86p+60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed86p+60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed85p+60L : inexact-ok
+= tgamma upward ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed85p+60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1beep+60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed8p+60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed8p+60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed8p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff8ap+100L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff89cp+100L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff89cp+100L : inexact-ok
+= tgamma upward ldbl-128 -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff89cp+100L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffffap+100L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff8p+100L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff8p+100L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff8p+100L : inexact-ok
+tgamma -0x2.ffffffffffffffffffffffffffp0
+= tgamma downward flt-32 -0x2.fffffcp+0f : -0xa.aaaafp+16f : inexact-ok
+= tgamma tonearest flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma towardzero flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma upward flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma downward dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c5p+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c5p+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c48p+16 : inexact-ok
+= tgamma upward dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c48p+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc5p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc5p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d420208p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4204p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4204p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d42p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d42p+16L : inexact-ok
+= tgamma downward dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555559p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555559p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555558p+48 : inexact-ok
+= tgamma upward dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555558p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792cp+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792cp+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792bp+48L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792bp+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b798p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaafp+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaafp+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma downward ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0c8p+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0cp+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0cp+56L : inexact-ok
+= tgamma upward ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0cp+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f4p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3fp+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3fp+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3fp+56L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaae04p+100L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaae04p+100L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaae02p+100L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaae02p+100L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaafp+100L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaaep+100L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaaep+100L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaaep+100L : inexact-ok
+tgamma -0x3.00000000000000000000000001p0
+= tgamma downward flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma towardzero flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma upward flt-32 -0x3.000004p+0f : 0xa.aaaa8p+16f : inexact-ok
+= tgamma downward dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849e8p+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849fp+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849e8p+16 : inexact-ok
+= tgamma upward dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849fp+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma downward ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338338p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c553384p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c553384p+16L : inexact-ok
+= tgamma downward dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555551p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555552p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555551p+48 : inexact-ok
+= tgamma upward dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555552p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma downward ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f2p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f498p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f4ap+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f498p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f4ap+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa8p+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa8p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b1649p+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b1649p+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b1649p+56L : inexact-ok
+= tgamma upward ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b16498p+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b164p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b164p+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b164p+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b168p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa75p+100L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa752p+100L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa75p+100L : inexact-ok
+= tgamma upward ldbl-128 -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa752p+100L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa7p+100L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa7p+100L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa7p+100L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa8p+100L : inexact-ok
+tgamma -0x3.ffffffffffffffffffffffffffp0
+= tgamma downward flt-32 -0x3.fffffcp+0f : 0x2.aaaab8p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x3.fffffcp+0f : 0x2.aaaabcp+16f : inexact-ok
+= tgamma towardzero flt-32 -0x3.fffffcp+0f : 0x2.aaaab8p+16f : inexact-ok
+= tgamma upward flt-32 -0x3.fffffcp+0f : 0x2.aaaabcp+16f : inexact-ok
+= tgamma downward dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma upward dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5facp+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee74p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee74p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068dp+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068d2p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068dp+16L : inexact-ok
+= tgamma upward ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068d2p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e069p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e069p+16L : inexact-ok
+= tgamma downward dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma upward dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555568p+44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.5555555555565668p+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.5555555555565668p+44L : inexact-ok
+= tgamma downward ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be518976p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be5189764p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be518976p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be5189764p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51896p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51898p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51896p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51898p+44L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma downward ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dap+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dcp+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dap+56L : inexact-ok
+= tgamma upward ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dcp+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a7p+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6p+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a7p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabab8p+96L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabab8p+96L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabab8p+96L : inexact-ok
+= tgamma upward ldbl-128 -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabacp+96L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaab8p+96L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabcp+96L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaab8p+96L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabcp+96L : inexact-ok
+tgamma -0x4.00000000000000000000000002p0
+= tgamma downward flt-32 -0x4.000008p+0f : -0x1.555546p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x4.000008p+0f : -0x1.555546p+16f : inexact-ok
+= tgamma towardzero flt-32 -0x4.000008p+0f : -0x1.555544p+16f : inexact-ok
+= tgamma upward flt-32 -0x4.000008p+0f : -0x1.555544p+16f : inexact-ok
+= tgamma downward dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9bp+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma upward dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c6p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f775p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f775p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f7748p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f7748p+16L : inexact-ok
+= tgamma downward dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9cp+44 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma upward dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma downward ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81366p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae814p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5925p+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5925p+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5924p+56L : inexact-ok
+= tgamma upward ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5924p+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec598p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec59p+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec59p+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec59p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x4.00000000000000000000000002p+0L : -0x5.5555555555555555555555554544p+96L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.00000000000000000000000002p+0L : -0x5.5555555555555555555555554544p+96L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.00000000000000000000000002p+0L : -0x5.555555555555555555555555454p+96L : inexact-ok
+= tgamma upward ldbl-128 -0x4.00000000000000000000000002p+0L : -0x5.555555555555555555555555454p+96L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.00000000000000000000000002p+0L : -0x5.55555555555555555555555546p+96L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.00000000000000000000000002p+0L : -0x5.55555555555555555555555546p+96L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.00000000000000000000000002p+0L : -0x5.55555555555555555555555544p+96L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.00000000000000000000000002p+0L : -0x5.55555555555555555555555544p+96L : inexact-ok
+tgamma -0x4.fffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x4.fffff8p+0f : -0x4.44448p+12f : inexact-ok
+= tgamma tonearest flt-32 -0x4.fffff8p+0f : -0x4.44448p+12f : inexact-ok
+= tgamma towardzero flt-32 -0x4.fffff8p+0f : -0x4.444478p+12f : inexact-ok
+= tgamma upward flt-32 -0x4.fffff8p+0f : -0x4.444478p+12f : inexact-ok
+= tgamma downward dbl-64 -0x4.fffff8p+0 : -0x4.44447e809018cp+12 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.fffff8p+0 : -0x4.44447e809018cp+12 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.fffff8p+0 : -0x4.44447e8090188p+12 : inexact-ok
+= tgamma upward dbl-64 -0x4.fffff8p+0 : -0x4.44447e8090188p+12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a71p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a71p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149a4p+12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb337514ap+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb337514ap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375148p+12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375148p+12L : inexact-ok
+= tgamma downward dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888c8p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma upward dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma downward ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d12712834478p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283448p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283448p+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283444p+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283444p+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee8p+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee4p+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee4p+52L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee4p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce4p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ep+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ep+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ep+52L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffffffffffffffffffffffffep+0L : -0x1.11111111111111111111111114b5p+96L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffffffffffffffffffffffffep+0L : -0x1.11111111111111111111111114b5p+96L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffffffffffffffffffffffffep+0L : -0x1.11111111111111111111111114b4p+96L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffffffffffffffffffffffffep+0L : -0x1.11111111111111111111111114b4p+96L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.fffffffffffffffffffffffffep+0L : -0x1.11111111111111111111111115p+96L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.fffffffffffffffffffffffffep+0L : -0x1.111111111111111111111111148p+96L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.fffffffffffffffffffffffffep+0L : -0x1.111111111111111111111111148p+96L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.fffffffffffffffffffffffffep+0L : -0x1.111111111111111111111111148p+96L : inexact-ok
+tgamma -0x5.00000000000000000000000002p0
+= tgamma downward flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma tonearest flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma towardzero flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma upward flt-32 -0x5.000008p+0f : 0x4.44441p+12f : inexact-ok
+= tgamma downward dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma upward dbl-64 -0x5.000008p+0 : 0x4.44440a07fedbcp+12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92ep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92ep+12L : inexact-ok
+= tgamma downward ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9dcp+12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9ep+12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9dcp+12L : inexact-ok
+= tgamma upward ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9ep+12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd8p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fdap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd8p+12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fdap+12L : inexact-ok
+= tgamma downward dbl-64 -0x5.0000000000004p+0 : 0x8.8888888888848p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.0000000000004p+0 : 0x8.888888888885p+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.0000000000004p+0 : 0x8.8888888888848p+40 : inexact-ok
+= tgamma upward dbl-64 -0x5.0000000000004p+0 : 0x8.888888888885p+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4dp+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4dp+40L : inexact-ok
+= tgamma downward ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff68p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff7p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff68p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff7p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dffcp+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8ep+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dffcp+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8ep+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.444444444444441p+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.444444444444441p+52L : inexact-ok
+= tgamma downward ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49ap+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49a4p+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49ap+52L : inexact-ok
+= tgamma upward ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49a4p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba48p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba4ap+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba48p+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba4ap+52L : inexact-ok
+= tgamma downward ldbl-128 -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d6dp+96L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d6dp+96L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d6dp+96L : inexact-ok
+= tgamma upward ldbl-128 -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d6ep+96L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110dp+96L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d8p+96L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110dp+96L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d8p+96L : inexact-ok
+tgamma -0x5.fffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma tonearest flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma towardzero flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma upward flt-32 -0x5.fffff8p+0f : 0xb.60b6cp+8f : inexact-ok
+= tgamma downward dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma upward dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c9348p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645fp+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645f8p+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645fp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645f8p+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a648p+8L : inexact-ok
+= tgamma downward dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma upward dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c22p+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma downward ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a62231p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6228p+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b617p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b617p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc452p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc452p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc452p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc4528p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc44p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc44p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc44p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc48p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2d4p+92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2d4p+92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2d4p+92L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2d6p+92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2p+92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e3p+92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2p+92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e3p+92L : inexact-ok
+tgamma -0x6.00000000000000000000000002p0
+= tgamma downward flt-32 -0x6.000008p+0f : -0xb.60b57p+8f : inexact-ok
+= tgamma tonearest flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma towardzero flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma upward flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma downward dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c88p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c88p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c8p+8 : inexact-ok
+= tgamma upward dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c8p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma downward ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace5p+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma upward ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068adp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068adp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068accp+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068accp+8L : inexact-ok
+= tgamma downward dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0dp+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma upward dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma downward ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2cp+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma upward ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d8p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c5p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c48p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c48p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c48p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a8p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7cp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7cp+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7cp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cd86p+92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cd86p+92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cd84p+92L : inexact-ok
+= tgamma upward ldbl-128 -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cd84p+92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cep+92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cep+92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cdp+92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cdp+92L : inexact-ok
+tgamma -0x6.fffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x6.fffff8p+0f : -0x1.a01a1cp+8f : inexact-ok
+= tgamma tonearest flt-32 -0x6.fffff8p+0f : -0x1.a01a1cp+8f : inexact-ok
+= tgamma towardzero flt-32 -0x6.fffff8p+0f : -0x1.a01a1ap+8f : inexact-ok
+= tgamma upward flt-32 -0x6.fffff8p+0f : -0x1.a01a1ap+8f : inexact-ok
+= tgamma downward dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde3p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma upward dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde2022p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde2022p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e553p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e553p+8L : inexact-ok
+= tgamma downward dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403405p+36 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma upward dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma downward ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575646p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135757p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a036p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a036p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff955p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff954fp+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff954fp+48L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff954fp+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff958p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff958p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff95p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff95p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069aap+88L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069a9cp+88L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069a9cp+88L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069a9cp+88L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069cp+88L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069ap+88L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069ap+88L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069ap+88L : inexact-ok
+tgamma -0x7.00000000000000000000000002p0
+= tgamma downward flt-32 -0x7.000008p+0f : 0x1.a019e6p+8f : inexact-ok
+= tgamma tonearest flt-32 -0x7.000008p+0f : 0x1.a019e8p+8f : inexact-ok
+= tgamma towardzero flt-32 -0x7.000008p+0f : 0x1.a019e6p+8f : inexact-ok
+= tgamma upward flt-32 -0x7.000008p+0f : 0x1.a019e8p+8f : inexact-ok
+= tgamma downward dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma upward dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a143p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a14241ap+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a14241ap+8L : inexact-ok
+= tgamma downward ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abccp+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7ab8p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7acp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7ab8p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7acp+8L : inexact-ok
+= tgamma downward dbl-64 -0x7.0000000000004p+0 : 0x3.4034034034018p+36 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.0000000000004p+0 : 0x3.403403403401ap+36 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.0000000000004p+0 : 0x3.4034034034018p+36 : inexact-ok
+= tgamma upward dbl-64 -0x7.0000000000004p+0 : 0x3.403403403401ap+36 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cdcp+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cdcp+36L : inexact-ok
+= tgamma downward ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a6p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a2p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a2p+36L : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma downward ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae4p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae4p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae4p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae5p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aa8p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503abp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aa8p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503abp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x7.00000000000000000000000002p+0L : 0x6.806806806806806806806806663p+88L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.00000000000000000000000002p+0L : 0x6.8068068068068068068068066634p+88L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.00000000000000000000000002p+0L : 0x6.806806806806806806806806663p+88L : inexact-ok
+= tgamma upward ldbl-128 -0x7.00000000000000000000000002p+0L : 0x6.8068068068068068068068066634p+88L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.00000000000000000000000002p+0L : 0x6.80680680680680680680680666p+88L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.00000000000000000000000002p+0L : 0x6.80680680680680680680680666p+88L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.00000000000000000000000002p+0L : 0x6.80680680680680680680680666p+88L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.00000000000000000000000002p+0L : 0x6.80680680680680680680680668p+88L : inexact-ok
+tgamma -0x7.fffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x7.fffff8p+0f : 0x3.403438p+4f : inexact-ok
+= tgamma tonearest flt-32 -0x7.fffff8p+0f : 0x3.40343cp+4f : inexact-ok
+= tgamma towardzero flt-32 -0x7.fffff8p+0f : 0x3.403438p+4f : inexact-ok
+= tgamma upward flt-32 -0x7.fffff8p+0f : 0x3.40343cp+4f : inexact-ok
+= tgamma downward dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma upward dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf74p+4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993bp+4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe994p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993p+4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe994p+4L : inexact-ok
+= tgamma downward dbl-64 -0x7.ffffffffffffcp+0 : 0x6.806806806809cp+32 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.ffffffffffffcp+0 : 0x6.80680680680ap+32 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.ffffffffffffcp+0 : 0x6.806806806809cp+32 : inexact-ok
+= tgamma upward dbl-64 -0x7.ffffffffffffcp+0 : 0x6.80680680680ap+32 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb28p+32L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb28p+32L : inexact-ok
+= tgamma downward ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc6p+32L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc64p+32L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc6p+32L : inexact-ok
+= tgamma upward ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc64p+32L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefep+32L : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea2p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea2p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea2p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea4p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ep+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5fp+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ep+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5fp+44L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d3878p+84L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d3878p+84L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d3878p+84L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d388p+84L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d38p+84L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d38p+84L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d38p+84L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d3cp+84L : inexact-ok
+tgamma -0x8.00000000000000000000000004p0
+= tgamma downward flt-32 -0x8.00001p+0f : -0x1.a019cap+4f : inexact-ok
+= tgamma tonearest flt-32 -0x8.00001p+0f : -0x1.a019cap+4f : inexact-ok
+= tgamma towardzero flt-32 -0x8.00001p+0f : -0x1.a019c8p+4f : inexact-ok
+= tgamma upward flt-32 -0x8.00001p+0f : -0x1.a019c8p+4f : inexact-ok
+= tgamma downward dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981dp+4 : inexact-ok
+= tgamma tonearest dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma towardzero dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma upward dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2bp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2bp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma downward ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4bp+4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4afp+4L : inexact-ok
+= tgamma upward ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4afp+4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a5p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma downward dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffep+32 : inexact-ok
+= tgamma tonearest dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma towardzero dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma upward dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma downward ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e4p+32L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e4p+32L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e3ep+32L : inexact-ok
+= tgamma upward ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e3ep+32L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7fp+32L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe4p+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe4p+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma downward ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581acp+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581abp+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581abp+44L : inexact-ok
+= tgamma upward ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581abp+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc582p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc5818p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc5818p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc5818p+44L : inexact-ok
+= tgamma downward ldbl-128 -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648bcp+84L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648bcp+84L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648b8p+84L : inexact-ok
+= tgamma upward ldbl-128 -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648b8p+84L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.00000000000000000000000004p+0L : -0x6.8068068068068068068068064ap+84L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648p+84L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648p+84L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648p+84L : inexact-ok
+tgamma -0x9.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma tonearest flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma towardzero flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma upward flt-32 -0x9.fffffp+0f : 0x4.9f94ap-4f : inexact-ok
+= tgamma downward dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma upward dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f362cp-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629ad8p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629ad8p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9144p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9148p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9144p-4L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9148p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db92p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db92p-4L : inexact-ok
+= tgamma downward dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma upward dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb98p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb919p+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb919p+24L : inexact-ok
+= tgamma downward ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37d8p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37ep+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37d8p+24L : inexact-ok
+= tgamma upward ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37ep+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc34p+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc38p+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc34p+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc38p+24L : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d7p+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d7p+36L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743dp+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743d4p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743dp+36L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743d4p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8742p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8744p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8742p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8744p+36L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea7158p+80L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea7158p+80L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea7158p+80L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea7159p+80L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea71p+80L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea718p+80L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea71p+80L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea718p+80L : inexact-ok
+tgamma -0xa.00000000000000000000000004p0
+= tgamma downward flt-32 -0xa.00001p+0f : -0x4.9f934p-4f : inexact-ok
+= tgamma tonearest flt-32 -0xa.00001p+0f : -0x4.9f934p-4f : inexact-ok
+= tgamma towardzero flt-32 -0xa.00001p+0f : -0x4.9f9338p-4f : inexact-ok
+= tgamma upward flt-32 -0xa.00001p+0f : -0x4.9f9338p-4f : inexact-ok
+= tgamma downward dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a3p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma upward dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc18p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc18p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma downward ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c358p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c358p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c354p-4L : inexact-ok
+= tgamma upward ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c354p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c4p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c4p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c2p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c2p-4L : inexact-ok
+= tgamma downward dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa38p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa38p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa3p+24 : inexact-ok
+= tgamma upward dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa3p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma downward ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b5p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma upward ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5cp+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5cp+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be58p+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be58p+24L : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma downward ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeff4p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeff4p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeffp+36L : inexact-ok
+= tgamma upward ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeffp+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbfp+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbfp+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeep+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeep+36L : inexact-ok
+= tgamma downward ldbl-128 -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b9ap+80L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b99p+80L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b99p+80L : inexact-ok
+= tgamma upward ldbl-128 -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b99p+80L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5cp+80L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b8p+80L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b8p+80L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b8p+80L : inexact-ok
+tgamma -0x13.fffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0x1.3ffffep+4f : 0x3.ca86ep-44f : inexact-ok
+= tgamma tonearest flt-32 -0x1.3ffffep+4f : 0x3.ca86e4p-44f : inexact-ok
+= tgamma towardzero flt-32 -0x1.3ffffep+4f : 0x3.ca86ep-44f : inexact-ok
+= tgamma upward flt-32 -0x1.3ffffep+4f : 0x3.ca86e4p-44f : inexact-ok
+= tgamma downward dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011ecap-44 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011eccp-44 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011ecap-44 : inexact-ok
+= tgamma upward dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011eccp-44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b4p-44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b4p-44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e124p-44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e126p-44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e124p-44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e126p-44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e2p-44L : inexact-ok
+= tgamma downward dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080ap-16 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080a04p-16 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080ap-16 : inexact-ok
+= tgamma upward dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080a04p-16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e8p-16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e8p-16L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541144p-16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541148p-16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541144p-16L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541148p-16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541p-16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f785412p-16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541p-16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f785412p-16L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658cp-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658cp-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658cp-4L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658ep-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e65p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e66p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e65p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e66p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f44p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f448p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f44p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f448p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f4p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f4p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f4p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f8p+36L : inexact-ok
+tgamma -0x14.00000000000000000000000008p0
+= tgamma downward flt-32 -0x1.400002p+4f : -0x3.ca8408p-44f : inexact-ok
+= tgamma tonearest flt-32 -0x1.400002p+4f : -0x3.ca8408p-44f : inexact-ok
+= tgamma towardzero flt-32 -0x1.400002p+4f : -0x3.ca8404p-44f : inexact-ok
+= tgamma upward flt-32 -0x1.400002p+4f : -0x3.ca8404p-44f : inexact-ok
+= tgamma downward dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d4p-44 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d4p-44 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d2p-44 : inexact-ok
+= tgamma upward dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d2p-44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38b4p-44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38b4p-44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a6p-44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a6p-44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a4p-44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a4p-44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9244p-44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9244p-44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243p-44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243p-44L : inexact-ok
+= tgamma downward dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080728p-16 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma upward dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725af8p-16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725af8p-16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma downward ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134e4p-16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134e4p-16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134ep-16L : inexact-ok
+= tgamma upward ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134ep-16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d136p-16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d6p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d5ep-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d5ep-4L : inexact-ok
+= tgamma upward ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d5ep-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455ep-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455dp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455dp-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455dp-4L : inexact-ok
+= tgamma downward ldbl-128 -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc61768p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc61768p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc6176p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc6176p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc618p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc618p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc614p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc614p+36L : inexact-ok
+tgamma -0x1d.fffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma tonearest flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma towardzero flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma upward flt-32 -0x1.dffffep+4f : 0x9.c99a6p-92f : inexact-ok
+= tgamma downward dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c57p-92 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c5708p-92 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c57p-92 : inexact-ok
+= tgamma upward dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c5708p-92 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570515p-92L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570515p-92L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cep-92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942ce8p-92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cep-92L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942ce8p-92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06943p-92L : inexact-ok
+= tgamma downward dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma upward dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d652p-60 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6dp-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6ep-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6dp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6ep-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fep-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe8p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fep-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe8p-60L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb0734ap-52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb0734ap-52L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7278p-52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e728p-52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7278p-52L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e728p-52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7p-52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e74p-52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7p-52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e74p-52L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda9853567p-8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda98535672p-8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda9853567p-8L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda98535672p-8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda985356p-8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda985356p-8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda985356p-8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda985357p-8L : inexact-ok
+tgamma -0x1e.00000000000000000000000008p0
+= tgamma downward flt-32 -0x1.e00002p+4f : -0x9.c992p-92f : inexact-ok
+= tgamma tonearest flt-32 -0x1.e00002p+4f : -0x9.c992p-92f : inexact-ok
+= tgamma towardzero flt-32 -0x1.e00002p+4f : -0x9.c991fp-92f : inexact-ok
+= tgamma upward flt-32 -0x1.e00002p+4f : -0x9.c991fp-92f : inexact-ok
+= tgamma downward dbl-64 -0x1.e00002p+4 : -0x9.c991f9b459728p-92 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.e00002p+4 : -0x9.c991f9b459728p-92 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.e00002p+4 : -0x9.c991f9b45972p-92 : inexact-ok
+= tgamma upward dbl-64 -0x1.e00002p+4 : -0x9.c991f9b45972p-92 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daa8p-92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455dcp-92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455dcp-92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455d8p-92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455d8p-92L : inexact-ok
+= tgamma downward dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5ccp-60 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma upward dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bcp-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5cp-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c4p-52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c4p-52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29ep-52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29d8p-52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29d8p-52L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29d8p-52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a2cp-52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a28p-52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a28p-52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a28p-52L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d0a4p-8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d0a4p-8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d0a2p-8L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d0a2p-8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d1p-8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d1p-8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852dp-8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852dp-8L : inexact-ok
+tgamma -0x27.fffffffffffffffffffffffffp0
+= tgamma downward flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.7ffffcp+4f : 0x7.3p-144f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7a8p-144 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7acp-144 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7a8p-144 : inexact-ok
+= tgamma upward dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7acp-144 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3684p-144L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a36ap-144L : inexact-ok
+= tgamma downward dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma upward dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095dcp-116 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0ep-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b4p-116L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac0cp-104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac1p-104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac0cp-104L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac1p-104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511acp-104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511acp-104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511acp-104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511aep-104L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac173fp-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac173fp-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac173fp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac174p-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac17p-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac17p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac17p-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac178p-60L : inexact-ok
+tgamma -0x28.0000000000000000000000001p0
+= tgamma downward flt-32 -0x2.800004p+4f : -0x7.3p-144f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d2cp-144 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d2cp-144 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d28p-144 : inexact-ok
+= tgamma upward dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d28p-144 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma downward ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1e4p-144L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma upward ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c2p-144L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c2p-144L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7cp-144L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7cp-144L : inexact-ok
+= tgamma downward dbl-64 -0x2.8000000000002p+4 : -0xe.5476a15095078p-116 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8000000000002p+4 : -0xe.5476a15095078p-116 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8000000000002p+4 : -0xe.5476a1509507p-116 : inexact-ok
+= tgamma upward dbl-64 -0x2.8000000000002p+4 : -0xe.5476a1509507p-116 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fc8p-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fc8p-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fcp-116L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fcp-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd9p-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd9p-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8cp-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8cp-116L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd5p-104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd4cp-104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd4cp-104L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd4cp-104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbep-104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbep-104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbcp-104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbcp-104L : inexact-ok
+= tgamma downward ldbl-128 -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab4317p-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab4316p-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab4316p-60L : inexact-ok
+= tgamma upward ldbl-128 -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab4316p-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab438p-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab43p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab43p-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab43p-60L : inexact-ok
+tgamma -0x28.fffffffffffffffffffffffffp0
+= tgamma downward flt-32 -0x2.8ffffcp+4f : -0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.8ffffcp+4f : -0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.8ffffcp+4f : -0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.8ffffcp+4f : -0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df68p-148 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma upward dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fcp-148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fcp-148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fap-148L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fap-148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466566p-148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466566p-148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565p-148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565p-148L : inexact-ok
+= tgamma downward dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740bap-120 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma upward dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd7p-120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd7p-120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4994p-120L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4ap-120L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4ap-120L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b48p-120L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b48p-120L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8206p-108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8206p-108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8204p-108L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8204p-108L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e83p-108L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e82p-108L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e82p-108L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e82p-108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d9031ap-68L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903198p-68L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903198p-68L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903198p-68L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d9034p-68L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903p-68L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903p-68L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903p-68L : inexact-ok
+tgamma -0x29.0000000000000000000000001p0
+= tgamma downward flt-32 -0x2.900004p+4f : 0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.900004p+4f : 0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.900004p+4f : 0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.900004p+4f : 0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma upward dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b38p-148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma downward ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986872p-148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986874p-148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986872p-148L : inexact-ok
+= tgamma upward ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986874p-148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9869p-148L : inexact-ok
+= tgamma downward dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma upward dbl-64 -0x2.9000000000002p+4 : 0x5.979870e74066cp-120 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da24p-120L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dcp-120L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a0481664p-108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a0481664p-108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288496ep-108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288497p-108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288496ep-108L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288497p-108L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a04816619491828849p-108L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a04816619491828849p-108L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a04816619491828849p-108L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a0481661949182884ap-108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afc28p-68L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afc3p-68L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afc28p-68L : inexact-ok
+= tgamma upward ldbl-128 -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afc3p-68L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afcp-68L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afcp-68L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afcp-68L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8bp-68L : inexact-ok
+tgamma -0x29.fffffffffffffffffffffffffp0
+= tgamma downward flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.9ffffcp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma upward dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c8p-152 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736cp-152L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736cp-152L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6049p-152L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e604ap-152L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6049p-152L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e604ap-152L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6p-152L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e608p-152L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6p-152L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e608p-152L : inexact-ok
+= tgamma downward dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma upward dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cd2p-124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c4p-124L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c6p-124L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c4p-124L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c6p-124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89p-124L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac8ap-124L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89p-124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac8ap-124L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639ep-112L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639fp-112L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639ep-112L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639fp-112L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca638p-112L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca638p-112L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca638p-112L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca64p-112L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e3cp-72L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e3c4p-72L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e3cp-72L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e3c4p-72L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e2p-72L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e4p-72L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e2p-72L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e4p-72L : inexact-ok
+tgamma -0x2a.0000000000000000000000001p0
+= tgamma downward flt-32 -0x2.a00004p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c62p-152 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c62p-152 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c61p-152 : inexact-ok
+= tgamma upward dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c61p-152 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bcp-152L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a458p-152L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma downward dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61ad2p-124 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma upward dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd24p-124L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd24p-124L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd22p-124L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd22p-124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fep-124L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826ep-112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826ep-112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e76p-112L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e76p-112L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e75p-112L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e75p-112L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e8p-112L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e8p-112L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0ep-112L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0ep-112L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e48cp-72L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e488p-72L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e488p-72L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e488p-72L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e6p-72L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e4p-72L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e4p-72L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e4p-72L : inexact-ok
+tgamma -0x31.fffffffffffffffffffffffffp0
+= tgamma downward flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.1ffffcp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa78p-200 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa8p-200 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa78p-200 : inexact-ok
+= tgamma upward dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa8p-200 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d00878p-200L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d00cp-200L : inexact-ok
+= tgamma downward dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma upward dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce52p-168 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff1fp-168L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff2p-168L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff1fp-168L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff2p-168L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff8p-168L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1ddp-160L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1ddp-160L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa48p-160L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa5p-160L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa48p-160L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa5p-160L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0f8p-160L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fcp-160L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0f8p-160L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fcp-160L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b454cp-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b454ep-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b454cp-116L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b454ep-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b45p-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b45p-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b45p-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b46p-116L : inexact-ok
+tgamma -0x32.0000000000000000000000001p0
+= tgamma downward flt-32 -0x3.200004p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x3.200004p+4 : -0xd.d9aa2280534p-200 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.200004p+4 : -0xd.d9aa2280534p-200 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.200004p+4 : -0xd.d9aa2280533f8p-200 : inexact-ok
+= tgamma upward dbl-64 -0x3.200004p+4 : -0xd.d9aa2280533f8p-200 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma downward ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1118p-200L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma upward ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb14p-200L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma downward dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9fp-168 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9fp-168 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9ep-168 : inexact-ok
+= tgamma upward dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9ep-168 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed76p-168L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed76p-168L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma downward ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b9861p-168L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b9861p-168L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b986p-168L : inexact-ok
+= tgamma upward ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b986p-168L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b988p-168L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b988p-168L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b98p-168L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b98p-168L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma downward ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265e8p-160L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265e8p-160L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265ep-160L : inexact-ok
+= tgamma upward ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265ep-160L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a268p-160L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a264p-160L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a264p-160L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a264p-160L : inexact-ok
+= tgamma downward ldbl-128 -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992bcp-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992bap-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992bap-116L : inexact-ok
+= tgamma upward ldbl-128 -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992bap-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68993p-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68993p-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992p-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992p-116L : inexact-ok
+tgamma -0x63.ffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.3ffff8p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c76p-508 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c77p-508 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c76p-508 : inexact-ok
+= tgamma upward dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c77p-508 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76dfap-508L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76dfap-508L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6ep-508L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bcep-508L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce8p-508L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bcep-508L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce8p-508L : inexact-ok
+= tgamma downward dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma upward dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1bap-480 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a386p-480L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a3p-480L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a4p-480L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a3p-480L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a4p-480L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781216p-468L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781216p-468L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da55p-468L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da55p-468L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da55p-468L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da56p-468L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22dap-468L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da8p-468L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22dap-468L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da8p-468L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4fccp-428L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4fdp-428L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4fccp-428L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4fdp-428L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4ep-428L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a5p-428L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4ep-428L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a5p-428L : inexact-ok
+tgamma -0x64.0000000000000000000000002p0
+= tgamma downward flt-32 -0x6.400008p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014ep-508 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma upward dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma downward ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526cp-508L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma upward ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646528p-508L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646528p-508L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc852364652p-508L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc852364652p-508L : inexact-ok
+= tgamma downward dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4cp-480 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4cp-480 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4ap-480 : inexact-ok
+= tgamma upward dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4ap-480 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma downward ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdep-480L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma upward ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ecp-480L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ecp-480L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebp-480L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebp-480L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma downward ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f25ap-468L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f25ap-468L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f259p-468L : inexact-ok
+= tgamma upward ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f259p-468L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f28p-468L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f28p-468L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f2p-468L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f2p-468L : inexact-ok
+= tgamma downward ldbl-128 -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2dp-428L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2dp-428L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2ccp-428L : inexact-ok
+= tgamma upward ldbl-128 -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2ccp-428L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e4p-428L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2p-428L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2p-428L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2p-428L : inexact-ok
+tgamma -0x95.ffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x9.5ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa48p-860 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa5p-860 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa48p-860 : inexact-ok
+= tgamma upward dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa5p-860 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c937p-860L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9p-860L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c94p-860L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9p-860L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c94p-860L : inexact-ok
+= tgamma downward dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406adp-828 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406aep-828 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406adp-828 : inexact-ok
+= tgamma upward dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406aep-828 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada86p-828L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada86p-828L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b3p-828L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b4p-828L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b3p-828L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b4p-828L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa18p-828L : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362c8p-820L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362dp-820L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362c8p-820L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362dp-820L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca636p-820L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6364p-820L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca636p-820L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6364p-820L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914eap-776L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914eap-776L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914eap-776L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914ecp-776L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914p-776L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e915p-776L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914p-776L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e915p-776L : inexact-ok
+tgamma -0x96.0000000000000000000000004p0
+= tgamma downward flt-32 -0x9.60001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x9.60001p+4 : -0x8.d14d214a189cp-860 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma upward dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93cp-860L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93cp-860L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma downward ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a6p-860L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma upward ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4cp-860L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4cp-860L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c48p-860L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c48p-860L : inexact-ok
+= tgamma downward dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640127p-828 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640127p-828 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640126p-828 : inexact-ok
+= tgamma upward dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640126p-828 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma downward ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c7ap-828L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c7ap-828L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c79p-828L : inexact-ok
+= tgamma upward ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c79p-828L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c8p-828L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c8p-828L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15cp-828L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15cp-828L : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0dp-820L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0dp-820L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma downward ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a1p-820L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a1p-820L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a08p-820L : inexact-ok
+= tgamma upward ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a08p-820L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2cp-820L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2cp-820L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf28p-820L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf28p-820L : inexact-ok
+= tgamma downward ldbl-128 -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38e0ep-776L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38e0ep-776L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38e0cp-776L : inexact-ok
+= tgamma upward ldbl-128 -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38e0cp-776L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38fp-776L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38ep-776L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38ep-776L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38ep-776L : inexact-ok
+tgamma -0xb4.ffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0xb.4ffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.4ffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f062p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f062p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550d04p-1088L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4ffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f41cp-1060 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800ep-1060L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800ep-1060L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7ep-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7ep-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7d8p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7d8p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f41cp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e2p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e2p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7148p-1048L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7144p-1048L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7144p-1048L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7144p-1048L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0efa2f12f02f7p-1004L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0efa2f12f02f7p-1004L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0efa2f12f02f6p-1004L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0efa2f12f02f6p-1004L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0fp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0fp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0ecp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0ecp-1004L : inexact-ok underflow errno-erange-ok
+tgamma -0xb5.0000000000000000000000004p0
+= tgamma downward flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.50001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.50001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523fp-1088L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523fp-1088L : inexact-ok
+= tgamma downward ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab3cp-1088L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab4p-1088L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab3cp-1088L : inexact-ok
+= tgamma upward ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab4p-1088L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.50001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.5000000000008p+4 : 0xb.f41cp-1060 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc14134028p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f41cp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma downward ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c0cp-1048L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c1p-1048L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c0cp-1048L : inexact-ok
+= tgamma upward ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c1p-1048L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0efa2f12b2031p-1004L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0efa2f12b2031p-1004L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0efa2f12b2031p-1004L : inexact-ok
+= tgamma upward ldbl-128 -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0efa2f12b2032p-1004L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0ecp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0fp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0ecp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0fp-1004L : inexact-ok underflow errno-erange-ok
+tgamma -0xb5.ffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.5ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.5ffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fa8p-1096L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fbp-1096L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fa8p-1096L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fbp-1096L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.5ffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0d4p-1064 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd22p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd22p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2bp-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2cp-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2bp-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2cp-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0d4p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6bp-1056L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6b8p-1056L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6bp-1056L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6b8p-1056L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec63d60f939b082p-1012L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec63d60f939b084p-1012L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec63d60f939b082p-1012L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec63d60f939b084p-1012L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec4p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec8p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec4p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec8p-1012L : inexact-ok underflow errno-erange-ok
+tgamma -0xb6.0000000000000000000000004p0
+= tgamma downward flt-32 -0xb.60001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.60001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma downward ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e03p-1096L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e03p-1096L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e028p-1096L : inexact-ok
+= tgamma upward ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e028p-1096L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.60001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6000000000008p+4 : -0x1.0d4p-1064 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f834p-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f834p-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f833p-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f833p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0d4p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f6p-1056L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f6p-1056L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma downward ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb88p-1056L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb8p-1056L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb8p-1056L : inexact-ok
+= tgamma upward ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb8p-1056L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec63d60f93437ccp-1012L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec63d60f93437cap-1012L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec63d60f93437cap-1012L : inexact-ok
+= tgamma upward ldbl-128 -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec63d60f93437cap-1012L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec8p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec8p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec4p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec4p-1012L : inexact-ok underflow errno-erange-ok
+tgamma -0xb6.ffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0xb.6ffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6ffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af98p-1104L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af98p-1104L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af9p-1104L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af9p-1104L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6ffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6fffffffffff8p+4 : -0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6fffffffffff8p+4 : -0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.6fffffffffff8p+4 : -0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.6fffffffffff8p+4 : -0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed316p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed316p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a41p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a41p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a4p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a4p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed8p-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed78p-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed78p-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed78p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430dac66a66ed4341cp-1020L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430dac66a66ed4341ap-1020L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430dac66a66ed4341ap-1020L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430dac66a66ed4341ap-1020L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0431p-1020L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+tgamma -0xb7.0000000000000000000000004p0
+= tgamma downward flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.70001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.70001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bcap-1104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bcap-1104L : inexact-ok
+= tgamma downward ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176a8p-1104L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176bp-1104L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176a8p-1104L : inexact-ok
+= tgamma upward ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176bp-1104L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.70001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7000000000008p+4 : 0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.7000000000008p+4 : 0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.7000000000008p+4 : 0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.7000000000008p+4 : 0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914246p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7000000000008p+4L : 0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.7000000000008p+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.7000000000008p+4L : 0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.7000000000008p+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf97p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf97p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100eap-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100eap-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100eap-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100ea8p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430dac66a66ecc8a92p-1020L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430dac66a66ecc8a94p-1020L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430dac66a66ecc8a92p-1020L : inexact-ok
+= tgamma upward ldbl-128 -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430dac66a66ecc8a94p-1020L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0431p-1020L : inexact-ok underflow errno-erange-ok
+tgamma -0xb7.ffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.7ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.7ffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377cp-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377cp-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef8p-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.7ffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.7fffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3cp-1080L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3cp-1080L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a073405p-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a0734052p-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a073405p-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a0734052p-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e01153ap-1068L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e01153ap-1068L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9cp-1068L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9dp-1068L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9cp-1068L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9dp-1068L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.08p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a138043f8bb03578ce33a8p-1028L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a138043f8bb03578ce33a8p-1028L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a138043f8bb03578ce33a8p-1028L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a138043f8bb03578ce33acp-1028L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a13808p-1028L : inexact-ok underflow errno-erange-ok
+tgamma -0xb8.0000000000000000000000004p0
+= tgamma downward flt-32 -0xb.80001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.80001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189e2p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189e2p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89ep-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89ep-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89dp-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89dp-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.80001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.8000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma downward ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c3p-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c3p-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c2ep-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c2ep-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.8000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8ep-1068L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8ep-1068L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma downward ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735bp-1068L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735ap-1068L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735ap-1068L : inexact-ok
+= tgamma upward ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735ap-1068L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.800000000000001p+4L : -0x1.08p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.800000000000001p+4L : -0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.800000000000001p+4L : -0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.800000000000001p+4L : -0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.80000000000000000000000004p+4L : -0x4.173034a138043f8bb03578c387bcp-1028L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.80000000000000000000000004p+4L : -0x4.173034a138043f8bb03578c387b8p-1028L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.80000000000000000000000004p+4L : -0x4.173034a138043f8bb03578c387b8p-1028L : inexact-ok
+= tgamma upward ldbl-128 -0xb.80000000000000000000000004p+4L : -0x4.173034a138043f8bb03578c387b8p-1028L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.80000000000000000000000004p+4L : -0x4.173034a13808p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.80000000000000000000000004p+4L : -0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.80000000000000000000000004p+4L : -0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.80000000000000000000000004p+4L : -0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+tgamma -0xbb.ffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0xb.bffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.bffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.bffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.bffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.bffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.bffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.bffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.bffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma downward ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae6p-1140L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae6p-1140L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae6p-1140L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae8p-1140L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.bffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.bffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.bffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.bfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.bfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.bfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.bfffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma downward ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14acp-1112L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14acp-1112L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14acp-1112L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14bp-1112L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma downward ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e844p-1100L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e844p-1100L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e844p-1100L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e846p-1100L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ec8f794e77f065d92f25a98738p-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ec8f794e77f065d92f25a98738p-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ec8f794e77f065d92f25a98738p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ec8f794e77f065d92f25a9874p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85fp-1060L : inexact-ok underflow errno-erange-ok
+tgamma -0xbc.0000000000000000000000004p0
+= tgamma downward flt-32 -0xb.c0001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.c0001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.c0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.c0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.c0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma downward ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19adap-1140L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19adap-1140L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19ad8p-1140L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19ad8p-1140L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c0001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.c0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.c0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.c000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.c000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.c000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.c000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9dfp-1112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9dfp-1112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma downward ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab8p-1112L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab4p-1112L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab4p-1112L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab4p-1112L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.c000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.c000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma downward ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f6p-1100L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f6p-1100L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f4p-1100L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f4p-1100L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c00000000000001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.c00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.c00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0xb.c0000000000000000000000004p+4L : -0xe.85ec8f794e77f065d92f25837bfp-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c0000000000000000000000004p+4L : -0xe.85ec8f794e77f065d92f25837bfp-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c0000000000000000000000004p+4L : -0xe.85ec8f794e77f065d92f25837be8p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c0000000000000000000000004p+4L : -0xe.85ec8f794e77f065d92f25837be8p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c0000000000000000000000004p+4L : -0xe.85fp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c0000000000000000000000004p+4L : -0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.c0000000000000000000000004p+4L : -0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.c0000000000000000000000004p+4L : -0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+tgamma -0xbc.ffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0xb.cffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.cffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.cffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.cffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.cffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.cffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.cffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.cffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508dp-1148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508dp-1148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma downward ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b8p-1148L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b4p-1148L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b4p-1148L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b4p-1148L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.cffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.cffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.cfffffffffff8p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.cfffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.cfffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.cfffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma downward ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c48p-1120L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c48p-1120L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c4p-1120L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c4p-1120L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c5p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c5p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6814p-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6814p-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6813cp-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6813cp-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3abeb1650549d0a05366de9dee11p-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3abeb1650549d0a05366de9dee1p-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3abeb1650549d0a05366de9dee1p-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3abeb1650549d0a05366de9dee1p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3acp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3acp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3a8p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3a8p-1064L : inexact-ok underflow errno-erange-ok
+tgamma -0xbd.0000000000000000000000004p0
+= tgamma downward flt-32 -0xb.d0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.d0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.d0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.d0001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.d0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.d0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.d0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.d0001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma downward ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84654cp-1148L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84655p-1148L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84654cp-1148L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84655p-1148L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.d0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.d0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.d0001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.d000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.d000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.d000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.d000000000008p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma downward ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798d8p-1120L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798d8p-1120L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798d8p-1120L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798ep-1120L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.d000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.d000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.d000000000008p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a9p-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a94p-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a9p-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a94p-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.d00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.d00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.d00000000000001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.d0000000000000000000000004p+4L : 0x1.3abeb1650549d0a05366de9ab4bep-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d0000000000000000000000004p+4L : 0x1.3abeb1650549d0a05366de9ab4bep-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d0000000000000000000000004p+4L : 0x1.3abeb1650549d0a05366de9ab4bep-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d0000000000000000000000004p+4L : 0x1.3abeb1650549d0a05366de9ab4bfp-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d0000000000000000000000004p+4L : 0x1.3a8p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.d0000000000000000000000004p+4L : 0x1.3acp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.d0000000000000000000000004p+4L : 0x1.3a8p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.d0000000000000000000000004p+4L : 0x1.3acp-1064L : inexact-ok underflow errno-erange-ok
+tgamma -0xbd.ffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0xb.dffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.dffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.dffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.dffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.dffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.dffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.dffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.dffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e58p-1156L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e58p-1156L : inexact-ok
+= tgamma downward ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef88p-1156L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef8cp-1156L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef88p-1156L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef8cp-1156L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.dffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.dffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.dffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.dfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.dfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.dfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.dfffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb1p-1128L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb1p-1128L : inexact-ok
+= tgamma downward ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bcp-1128L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bc8p-1128L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bcp-1128L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bc8p-1128L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d808p-1116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d808p-1116L : inexact-ok
+= tgamma downward ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd4p-1116L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd8p-1116L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd4p-1116L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd8p-1116L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.dffffffffffffffffffffffffcp+4L : 0x1.a813cbfbfc58ad4e96196c9ee5b2p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dffffffffffffffffffffffffcp+4L : 0x1.a813cbfbfc58ad4e96196c9ee5b3p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dffffffffffffffffffffffffcp+4L : 0x1.a813cbfbfc58ad4e96196c9ee5b2p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dffffffffffffffffffffffffcp+4L : 0x1.a813cbfbfc58ad4e96196c9ee5b3p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dffffffffffffffffffffffffcp+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.dffffffffffffffffffffffffcp+4L : 0x1.cp-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.dffffffffffffffffffffffffcp+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.dffffffffffffffffffffffffcp+4L : 0x1.cp-1072L : inexact-ok underflow errno-erange-ok
+tgamma -0xbe.0000000000000000000000004p0
+= tgamma downward flt-32 -0xb.e0001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.e0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.e0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.e0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.e0001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.e0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.e0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.e0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e108p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e108p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma downward ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd9cp-1156L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd9cp-1156L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd98p-1156L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd98p-1156L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e0001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.e0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.e0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.e000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.e000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.e000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.e000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9fp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9fp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma downward ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40cp-1128L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40b8p-1128L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40b8p-1128L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40b8p-1128L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.e000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.e000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff1629278p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff1629278p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma downward ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a08p-1116L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a04p-1116L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a04p-1116L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a04p-1116L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e00000000000001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.e00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.e00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0xb.e0000000000000000000000004p+4L : -0x1.a813cbfbfc58ad4e96196c9a8c92p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e0000000000000000000000004p+4L : -0x1.a813cbfbfc58ad4e96196c9a8c91p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e0000000000000000000000004p+4L : -0x1.a813cbfbfc58ad4e96196c9a8c91p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e0000000000000000000000004p+4L : -0x1.a813cbfbfc58ad4e96196c9a8c91p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e0000000000000000000000004p+4L : -0x1.cp-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e0000000000000000000000004p+4L : -0x1.cp-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.e0000000000000000000000004p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.e0000000000000000000000004p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+tgamma -0xbe.ffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0xb.effffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.effffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.effffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.effffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.effffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.effffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.effffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.effffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73ep-1164L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73ep-1164L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma downward ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230b8p-1164L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230bp-1164L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230bp-1164L : inexact-ok
+= tgamma upward ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230bp-1164L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.effffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.effffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.effffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.effffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.efffffffffff8p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.efffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.efffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.efffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma downward ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186ep-1132L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186ep-1132L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186dp-1132L : inexact-ok
+= tgamma upward ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186dp-1132L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.efffffffffff8p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.efffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.efffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.efffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma downward ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f5p-1124L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f5p-1124L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f48p-1124L : inexact-ok
+= tgamma upward ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f48p-1124L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.effffffffffffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.effffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.effffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.effffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0xb.effffffffffffffffffffffffcp+4L : -0x2.3865976f3a1908740d8947de5b7cp-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.effffffffffffffffffffffffcp+4L : -0x2.3865976f3a1908740d8947de5b7ap-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.effffffffffffffffffffffffcp+4L : -0x2.3865976f3a1908740d8947de5b7ap-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.effffffffffffffffffffffffcp+4L : -0x2.3865976f3a1908740d8947de5b7ap-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.effffffffffffffffffffffffcp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.effffffffffffffffffffffffcp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.effffffffffffffffffffffffcp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.effffffffffffffffffffffffcp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0xbf.0000000000000000000000004p0
+= tgamma downward flt-32 -0xb.f0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.f0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.f0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.f0001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.f0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.f0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.f0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.f0001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba21p-1164L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba21p-1164L : inexact-ok
+= tgamma downward ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c648p-1164L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c65p-1164L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c648p-1164L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c65p-1164L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f0001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.f000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.f000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.f000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.f000000000008p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma downward ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabecp-1132L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabedp-1132L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabecp-1132L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabedp-1132L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f000000000008p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f33p-1124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f33p-1124L : inexact-ok
+= tgamma downward ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447ep-1124L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447ep-1124L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447ep-1124L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447e8p-1124L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f00000000000001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.f0000000000000000000000004p+4L : 0x2.3865976f3a1908740d8947d8860cp-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f0000000000000000000000004p+4L : 0x2.3865976f3a1908740d8947d8860cp-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f0000000000000000000000004p+4L : 0x2.3865976f3a1908740d8947d8860cp-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f0000000000000000000000004p+4L : 0x2.3865976f3a1908740d8947d8860ep-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f0000000000000000000000004p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f0000000000000000000000004p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f0000000000000000000000004p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f0000000000000000000000004p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma 0x8.000000000000001p0
+= tgamma downward flt-32 0x8.00001p+0f : 0x1.3b0026p+12f : inexact-ok
+= tgamma tonearest flt-32 0x8.00001p+0f : 0x1.3b0028p+12f : inexact-ok
+= tgamma towardzero flt-32 0x8.00001p+0f : 0x1.3b0026p+12f : inexact-ok
+= tgamma upward flt-32 0x8.00001p+0f : 0x1.3b0028p+12f : inexact-ok
+= tgamma downward dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d78p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d79p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d78p+12 : inexact-ok
+= tgamma upward dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d79p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78ep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78ep+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb52p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6ecebp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6ecebp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb8p+12L : inexact-ok
+= tgamma downward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma tonearest flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma towardzero flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma upward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma downward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma upward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000013p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000014p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000013p+12 : inexact-ok
+= tgamma upward dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000014p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d78p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d78p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6264p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c62p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c628p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c62p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c628p+12L : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14577p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14578p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14577p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14578p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b145p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b1458p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b145p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b1458p+12L : inexact-ok
+tgamma 0x7.fffffffffffffff8p0
+= tgamma downward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma tonearest flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma towardzero flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma upward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma downward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma upward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma tonearest flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma towardzero flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma upward flt-32 0x7.fffff8p+0f : 0x1.3affeep+12f : inexact-ok
+= tgamma downward dbl-64 0x7.fffff8p+0 : 0x1.3affec289603dp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x7.fffff8p+0 : 0x1.3affec289603ep+12 : inexact-ok
+= tgamma towardzero dbl-64 0x7.fffff8p+0 : 0x1.3affec289603dp+12 : inexact-ok
+= tgamma upward dbl-64 0x7.fffff8p+0 : 0x1.3affec289603ep+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de82p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de82p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67783p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67784p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67783p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67784p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f678p+12L : inexact-ok
+= tgamma downward dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma upward dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff7p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6146p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6146p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab7p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab8p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab7p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab8p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4bp+12L : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffeep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffeep+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d44p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d44p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d44p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d45p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75dp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75dp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d8p+12L : inexact-ok
+tgamma 0x7.0000000000000008p0
+= tgamma downward flt-32 0x7.000008p+0f : 0x2.d00028p+8f : inexact-ok
+= tgamma tonearest flt-32 0x7.000008p+0f : 0x2.d0002cp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7.000008p+0f : 0x2.d00028p+8f : inexact-ok
+= tgamma upward flt-32 0x7.000008p+0f : 0x2.d0002cp+8f : inexact-ok
+= tgamma downward dbl-64 0x7.000008p+0 : 0x2.d0002a233e27ep+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7.000008p+0 : 0x2.d0002a233e28p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7.000008p+0 : 0x2.d0002a233e27ep+8 : inexact-ok
+= tgamma upward dbl-64 0x7.000008p+0 : 0x2.d0002a233e28p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b118p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b2p+8L : inexact-ok
+= tgamma downward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma tonearest flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma upward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma downward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma upward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward dbl-64 0x7.0000000000004p+0 : 0x2.d000000000014p+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7.0000000000004p+0 : 0x2.d000000000016p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7.0000000000004p+0 : 0x2.d000000000014p+8 : inexact-ok
+= tgamma upward dbl-64 0x7.0000000000004p+0 : 0x2.d000000000016p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d00000000001511cp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d00000000001511cp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f6p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f6p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f6p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f8p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8174p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8174p+8L : inexact-ok
+tgamma 0x6.fffffffffffffff8p0
+= tgamma downward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma tonearest flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma upward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma downward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma upward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma tonearest flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma towardzero flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma upward flt-32 0x6.fffff8p+0f : 0x2.cfffd8p+8f : inexact-ok
+= tgamma downward dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46aep+8 : inexact-ok
+= tgamma tonearest dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46bp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46aep+8 : inexact-ok
+= tgamma upward dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46bp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e4p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e4p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398164p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3982p+8L : inexact-ok
+= tgamma downward dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma tonearest dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma towardzero dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma upward dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffecp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ecp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ep+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609fp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ep+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609fp+8L : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c08p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c0ap+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c08p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c0ap+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8cp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8cp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8cp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8dp+8L : inexact-ok
+tgamma 0x6.0000000000000008p0
+= tgamma downward flt-32 0x6.000008p+0f : 0x7.80006p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6.000008p+0f : 0x7.800068p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6.000008p+0f : 0x7.80006p+4f : inexact-ok
+= tgamma upward flt-32 0x6.000008p+0f : 0x7.800068p+4f : inexact-ok
+= tgamma downward dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma upward dbl-64 0x6.000008p+0 : 0x7.8000665dfa8dp+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc4p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc4p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970ep+4L : inexact-ok
+= tgamma downward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma upward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward dbl-64 0x6.0000000000004p+0 : 0x7.800000000003p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6.0000000000004p+0 : 0x7.8000000000034p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6.0000000000004p+0 : 0x7.800000000003p+4 : inexact-ok
+= tgamma upward dbl-64 0x6.0000000000004p+0 : 0x7.8000000000034p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd357455433p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd3574554334p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd357455433p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd3574554334p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745542p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745544p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745542p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745544p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a9p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a9p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a9p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a94p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8ap+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8ap+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8ap+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8cp+4L : inexact-ok
+tgamma 0x5.fffffffffffffff8p0
+= tgamma downward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma upward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma upward flt-32 0x5.fffff8p+0f : 0x7.7fffap+4f : inexact-ok
+= tgamma downward dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f4p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f4p+4 : inexact-ok
+= tgamma upward dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43ep+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43e4p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43ep+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43e4p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d42p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d44p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d42p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d44p+4L : inexact-ok
+= tgamma downward dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma upward dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffdp+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd18p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd18p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fep+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2ep+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac3p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2ep+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac3p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffffap+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffffap+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951756cp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951757p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951756cp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951757p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595174p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595176p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595174p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595176p+4L : inexact-ok
+tgamma 0x5.0000000000000008p0
+= tgamma downward flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma upward flt-32 0x5.000008p+0f : 0x1.800014p+4f : inexact-ok
+= tgamma downward dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma upward dbl-64 0x5.000008p+0 : 0x1.80001212cb98ep+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561ep+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680568p+4L : inexact-ok
+= tgamma downward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma upward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma upward dbl-64 0x5.0000000000004p+0 : 0x1.800000000000ap+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009098p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009098p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd302p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd303p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd302p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd303p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd38p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000014p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000014p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb6p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb7p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb6p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb7p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561b8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561b8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561b8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561cp+4L : inexact-ok
+tgamma 0x4.fffffffffffffff8p0
+= tgamma downward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma upward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward flt-32 0x4.fffff8p+0f : 0x1.7fffecp+4f : inexact-ok
+= tgamma tonearest flt-32 0x4.fffff8p+0f : 0x1.7fffeep+4f : inexact-ok
+= tgamma towardzero flt-32 0x4.fffff8p+0f : 0x1.7fffecp+4f : inexact-ok
+= tgamma upward flt-32 0x4.fffff8p+0f : 0x1.7fffeep+4f : inexact-ok
+= tgamma downward dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35562p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35563p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35562p+4 : inexact-ok
+= tgamma upward dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35563p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116ap+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116ap+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116bp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b11p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b118p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b11p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b118p+4L : inexact-ok
+= tgamma downward dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff6p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff7p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff6p+4 : inexact-ok
+= tgamma upward dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff7p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bfp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2269p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e449p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e449p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e449p+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e44ap+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e4p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e48p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e4p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e48p+4L : inexact-ok
+tgamma 0x4.0000000000000008p0
+= tgamma downward flt-32 0x4.000008p+0f : 0x6.000038p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4.000008p+0f : 0x6.00004p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4.000008p+0f : 0x6.000038p+0f : inexact-ok
+= tgamma upward flt-32 0x4.000008p+0f : 0x6.00004p+0f : inexact-ok
+= tgamma downward dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma upward dbl-64 0x4.000008p+0 : 0x6.00003c4b2debp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac888p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac888p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c4p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c44p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c4p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c44p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971ep+0L : inexact-ok
+= tgamma downward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma upward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma downward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma upward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward dbl-64 0x4.0000000000004p+0 : 0x6.000000000001cp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4.0000000000004p+0 : 0x6.000000000002p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4.0000000000004p+0 : 0x6.000000000001cp+0 : inexact-ok
+= tgamma upward dbl-64 0x4.0000000000004p+0 : 0x6.000000000002p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e26p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e26p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de8p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772cp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772ep+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772cp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772ep+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ed8p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586edcp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ed8p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586edcp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ep+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ep+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ep+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85587p+0L : inexact-ok
+tgamma 0x3.fffffffffffffffcp0
+= tgamma downward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma upward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma downward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma upward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma upward flt-32 0x3.fffffcp+0f : 0x5.ffffe8p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a168p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a16cp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a168p+0 : inexact-ok
+= tgamma upward dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a16cp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afdp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afdp+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8647p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a866p+0L : inexact-ok
+= tgamma downward dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma upward dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffff4p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed8p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed8p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac14p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac14p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44aep+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe8p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe8p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c89p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c894p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c89p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c894p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53cap+0L : inexact-ok
+tgamma 0x3.0000000000000004p0
+= tgamma downward flt-32 0x3.000004p+0f : 0x2.000004p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.000004p+0f : 0x2.000008p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.000004p+0f : 0x2.000004p+0f : inexact-ok
+= tgamma upward flt-32 0x3.000004p+0f : 0x2.000008p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.000004p+0 : 0x2.00000761dcd4cp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.000004p+0 : 0x2.00000761dcd4ep+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.000004p+0 : 0x2.00000761dcd4cp+0 : inexact-ok
+= tgamma upward dbl-64 0x3.000004p+0 : 0x2.00000761dcd4ep+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b698p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b69ap+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b698p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b69ap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b7p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b7p+0L : inexact-ok
+= tgamma downward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma upward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma downward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma upward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward dbl-64 0x3.0000000000002p+0 : 0x2.0000000000002p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.0000000000002p+0 : 0x2.0000000000004p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.0000000000002p+0 : 0x2.0000000000002p+0 : inexact-ok
+= tgamma upward dbl-64 0x3.0000000000002p+0 : 0x2.0000000000004p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d312p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d314p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d312p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d314p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d4p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e41278p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e4127ap+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e41278p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e4127ap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e412p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e412p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e412p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e413p+0L : inexact-ok
+tgamma 0x2.fffffffffffffffcp0
+= tgamma downward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma upward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma downward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma upward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma upward flt-32 0x2.fffffcp+0f : 0x1.fffffap+0f : inexact-ok
+= tgamma downward dbl-64 0x2.fffffcp+0 : 0x1.fffff89e2353p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.fffffcp+0 : 0x1.fffff89e23531p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.fffffcp+0 : 0x1.fffff89e2353p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.fffffcp+0 : 0x1.fffff89e23531p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d74p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d74p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c3p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c3p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c4268p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c427p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c4268p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c427p+0L : inexact-ok
+= tgamma downward dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma upward dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffdp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e5p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e5p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c368p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c37p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c368p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c37p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffffap+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffffap+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed86p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed86p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed86p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed87p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1beep+0L : inexact-ok
+tgamma 0x2.0000000000000004p0
+= tgamma downward flt-32 0x2.000004p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.000004p+0f : 0x1.000002p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.000004p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2.000004p+0f : 0x1.000002p+0f : inexact-ok
+= tgamma downward dbl-64 0x2.000004p+0 : 0x1.000001b0ee67p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.000004p+0 : 0x1.000001b0ee671p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.000004p+0 : 0x1.000001b0ee67p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.000004p+0 : 0x1.000001b0ee671p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf8p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1db8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dcp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1db8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dcp+0L : inexact-ok
+= tgamma downward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward dbl-64 0x2.0000000000002p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.0000000000002p+0 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.0000000000002p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.0000000000002p+0 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e9p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093dp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093dp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee607209p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee607209p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee607209p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072098p+0L : inexact-ok
+tgamma 0x1.fffffffffffffffep0
+= tgamma downward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma upward flt-32 0x1.fffffep+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1.fffffep+0 : 0xf.fffff2788d168p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.fffffep+0 : 0xf.fffff2788d17p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.fffffep+0 : 0xf.fffff2788d168p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.fffffep+0 : 0xf.fffff2788d17p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac6p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dbp-4L : inexact-ok
+= tgamma downward dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.fffffffffffffp+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93dp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93dp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce4p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ccp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0dp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ccp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0dp-4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffffffffffffep+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb618p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb618p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb618p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb62p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb4p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb8p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb4p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb8p-4L : inexact-ok
+tgamma 0x1.0000000000000002p0
+= tgamma downward flt-32 0x1.000002p+0f : 0xf.ffffep-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.000002p+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.000002p+0f : 0xf.ffffep-4f : inexact-ok
+= tgamma upward flt-32 0x1.000002p+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma downward dbl-64 0x1.000002p+0 : 0xf.ffffed8773428p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.000002p+0 : 0xf.ffffed877343p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.000002p+0 : 0xf.ffffed8773428p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.000002p+0 : 0xf.ffffed877343p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b038p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b4p-4L : inexact-ok
+= tgamma downward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffffp-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffffp-4 : inexact-ok
+= tgamma upward dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4828p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f483p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4828p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f483p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4cp-4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049ep-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049e8p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049ep-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049e8p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039048p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039048p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039048p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed877303904cp-4L : inexact-ok
+tgamma 0x0.ffffffffffffffffp0
+= tgamma downward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0xf.fffffp-4f : 0x1.000002p+0f : inexact-ok
+= tgamma downward dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma tonearest dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma towardzero dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma upward dbl-64 0xf.fffffp-4 : 0x1.00000093c468fp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0b2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0b2p+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6dfp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6ep+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6dfp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6ep+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af68p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af7p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af68p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af7p+0L : inexact-ok
+= tgamma downward dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0xf.ffffffffffff8p-4 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.00000000000004ap+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.00000000000004ap+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867dp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed86p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed868p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed86p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed868p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37dbp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37db1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37dbp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37db1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37d8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37d8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37d8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37ep+0L : inexact-ok
+tgamma -0x0.ffffffffffffffffp0
+= tgamma downward flt-32 -0xf.fffffp-4f : -0x1.000002p+24f : inexact-ok
+= tgamma tonearest flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma towardzero flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma upward flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma downward dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b999p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma upward dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985f2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985f2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f1p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f1p+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f0fp+24L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f0fp+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f8p+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma downward dbl-64 -0xf.ffffffffffff8p-4 : -0x2.0000000000002p+52 : inexact-ok
+= tgamma tonearest dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma towardzero dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma upward dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma downward ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f43ap+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f43ap+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f438p+52L : inexact-ok
+= tgamma upward ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f438p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f5p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1.0000000000000002p+64L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1.0000000000000002p+64L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824fp+64L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824fp+64L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824ep+64L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824ep+64L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c828p+64L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c828p+64L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c82p+64L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c82p+64L : inexact-ok
+tgamma -0x1.0000000000000002p0
+= tgamma downward flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma tonearest flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma upward flt-32 -0x1.000002p+0f : 0x8p+20f : inexact-ok
+= tgamma downward dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab4p+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab8p+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab4p+20 : inexact-ok
+= tgamma upward dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab8p+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc4p+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc8p+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc4p+20L : inexact-ok
+= tgamma upward ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc8p+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6ep+20L : inexact-ok
+= tgamma downward dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x1.0000000000001p+0 : 0x1p+52 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93dp+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93dp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de4p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0dcp+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0ep+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0dcp+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0ep+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.0000000000000002p+0L : 0x8p+60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.0000000000000002p+0L : 0x8p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db0cp+60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db0cp+60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db0cp+60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db1p+60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dap+60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dcp+60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dap+60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dcp+60L : inexact-ok
+tgamma -0x1.fffffffffffffffep0
+= tgamma downward flt-32 -0x1.fffffep+0f : 0x4p+20f : inexact-ok
+= tgamma tonearest flt-32 -0x1.fffffep+0f : 0x4.000008p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x1.fffffep+0f : 0x4p+20f : inexact-ok
+= tgamma upward flt-32 -0x1.fffffep+0f : 0x4.000008p+20f : inexact-ok
+= tgamma downward dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma upward dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdfp+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dbp+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032cp+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032ep+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032cp+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032ep+20L : inexact-ok
+= tgamma downward dbl-64 -0x1.fffffffffffffp+0 : 0x8p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.fffffffffffffp+0 : 0x8.0000000000008p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.fffffffffffffp+0 : 0x8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x1.fffffffffffffp+0 : 0x8.0000000000008p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab3p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127a8p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127acp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127a8p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127acp+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e41278p+60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e41278p+60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e41278p+60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e4127cp+60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e412p+60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e412p+60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e412p+60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e414p+60L : inexact-ok
+tgamma -0x2.0000000000000004p0
+= tgamma downward flt-32 -0x2.000004p+0f : -0x1.fffffap+20f : inexact-ok
+= tgamma tonearest flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma upward flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma downward dbl-64 -0x2.000004p+0 : -0x1.fffff89e237b1p+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.000004p+0 : -0x1.fffff89e237b1p+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.000004p+0 : -0x1.fffff89e237bp+20 : inexact-ok
+= tgamma upward dbl-64 -0x2.000004p+0 : -0x1.fffff89e237bp+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d74p+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d74p+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133afp+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma upward ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe134p+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma downward dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffffap+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma downward ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881ccp+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma upward ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed882p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed882p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881p+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffffap+60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffffap+60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed86p+60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed86p+60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed85p+60L : inexact-ok
+= tgamma upward ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed85p+60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1beep+60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed8p+60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed8p+60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed8p+60L : inexact-ok
+tgamma -0x2.fffffffffffffffcp0
+= tgamma downward flt-32 -0x2.fffffcp+0f : -0xa.aaaafp+16f : inexact-ok
+= tgamma tonearest flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma towardzero flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma upward flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma downward dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c5p+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c5p+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c48p+16 : inexact-ok
+= tgamma upward dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c48p+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc5p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc5p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d420208p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4204p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4204p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d42p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d42p+16L : inexact-ok
+= tgamma downward dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555559p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555559p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555558p+48 : inexact-ok
+= tgamma upward dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555558p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792cp+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792cp+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792bp+48L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792bp+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b798p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaafp+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaafp+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma downward ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0c8p+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0cp+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0cp+56L : inexact-ok
+= tgamma upward ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0cp+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f4p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3fp+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3fp+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3fp+56L : inexact-ok
+tgamma -0x3.0000000000000004p0
+= tgamma downward flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma towardzero flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma upward flt-32 -0x3.000004p+0f : 0xa.aaaa8p+16f : inexact-ok
+= tgamma downward dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849e8p+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849fp+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849e8p+16 : inexact-ok
+= tgamma upward dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849fp+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma downward ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338338p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c553384p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c553384p+16L : inexact-ok
+= tgamma downward dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555551p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555552p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555551p+48 : inexact-ok
+= tgamma upward dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555552p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma downward ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f2p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f498p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f4ap+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f498p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f4ap+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa8p+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa8p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b1649p+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b1649p+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b1649p+56L : inexact-ok
+= tgamma upward ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b16498p+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b164p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b164p+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b164p+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b168p+56L : inexact-ok
+tgamma -0x3.fffffffffffffffcp0
+= tgamma downward flt-32 -0x3.fffffcp+0f : 0x2.aaaab8p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x3.fffffcp+0f : 0x2.aaaabcp+16f : inexact-ok
+= tgamma towardzero flt-32 -0x3.fffffcp+0f : 0x2.aaaab8p+16f : inexact-ok
+= tgamma upward flt-32 -0x3.fffffcp+0f : 0x2.aaaabcp+16f : inexact-ok
+= tgamma downward dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma upward dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5facp+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee74p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee74p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068dp+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068d2p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068dp+16L : inexact-ok
+= tgamma upward ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068d2p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e069p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e069p+16L : inexact-ok
+= tgamma downward dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma upward dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555568p+44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.5555555555565668p+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.5555555555565668p+44L : inexact-ok
+= tgamma downward ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be518976p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be5189764p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be518976p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be5189764p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51896p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51898p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51896p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51898p+44L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma downward ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dap+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dcp+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dap+56L : inexact-ok
+= tgamma upward ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dcp+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a7p+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6p+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a7p+56L : inexact-ok
+tgamma -0x4.0000000000000008p0
+= tgamma downward flt-32 -0x4.000008p+0f : -0x1.555546p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x4.000008p+0f : -0x1.555546p+16f : inexact-ok
+= tgamma towardzero flt-32 -0x4.000008p+0f : -0x1.555544p+16f : inexact-ok
+= tgamma upward flt-32 -0x4.000008p+0f : -0x1.555544p+16f : inexact-ok
+= tgamma downward dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9bp+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma upward dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c6p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f775p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f775p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f7748p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f7748p+16L : inexact-ok
+= tgamma downward dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9cp+44 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma upward dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma downward ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81366p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae814p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5925p+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5925p+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5924p+56L : inexact-ok
+= tgamma upward ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5924p+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec598p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec59p+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec59p+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec59p+56L : inexact-ok
+tgamma -0x4.fffffffffffffff8p0
+= tgamma downward flt-32 -0x4.fffff8p+0f : -0x4.44448p+12f : inexact-ok
+= tgamma tonearest flt-32 -0x4.fffff8p+0f : -0x4.44448p+12f : inexact-ok
+= tgamma towardzero flt-32 -0x4.fffff8p+0f : -0x4.444478p+12f : inexact-ok
+= tgamma upward flt-32 -0x4.fffff8p+0f : -0x4.444478p+12f : inexact-ok
+= tgamma downward dbl-64 -0x4.fffff8p+0 : -0x4.44447e809018cp+12 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.fffff8p+0 : -0x4.44447e809018cp+12 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.fffff8p+0 : -0x4.44447e8090188p+12 : inexact-ok
+= tgamma upward dbl-64 -0x4.fffff8p+0 : -0x4.44447e8090188p+12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a71p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a71p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149a4p+12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb337514ap+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb337514ap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375148p+12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375148p+12L : inexact-ok
+= tgamma downward dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888c8p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma upward dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma downward ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d12712834478p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283448p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283448p+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283444p+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283444p+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee8p+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee4p+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee4p+52L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee4p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce4p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ep+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ep+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ep+52L : inexact-ok
+tgamma -0x5.0000000000000008p0
+= tgamma downward flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma tonearest flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma towardzero flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma upward flt-32 -0x5.000008p+0f : 0x4.44441p+12f : inexact-ok
+= tgamma downward dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma upward dbl-64 -0x5.000008p+0 : 0x4.44440a07fedbcp+12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92ep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92ep+12L : inexact-ok
+= tgamma downward ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9dcp+12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9ep+12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9dcp+12L : inexact-ok
+= tgamma upward ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9ep+12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd8p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fdap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd8p+12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fdap+12L : inexact-ok
+= tgamma downward dbl-64 -0x5.0000000000004p+0 : 0x8.8888888888848p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.0000000000004p+0 : 0x8.888888888885p+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.0000000000004p+0 : 0x8.8888888888848p+40 : inexact-ok
+= tgamma upward dbl-64 -0x5.0000000000004p+0 : 0x8.888888888885p+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4dp+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4dp+40L : inexact-ok
+= tgamma downward ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff68p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff7p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff68p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff7p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dffcp+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8ep+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dffcp+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8ep+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.444444444444441p+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.444444444444441p+52L : inexact-ok
+= tgamma downward ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49ap+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49a4p+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49ap+52L : inexact-ok
+= tgamma upward ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49a4p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba48p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba4ap+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba48p+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba4ap+52L : inexact-ok
+tgamma -0x5.fffffffffffffff8p0
+= tgamma downward flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma tonearest flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma towardzero flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma upward flt-32 -0x5.fffff8p+0f : 0xb.60b6cp+8f : inexact-ok
+= tgamma downward dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma upward dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c9348p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645fp+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645f8p+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645fp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645f8p+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a648p+8L : inexact-ok
+= tgamma downward dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma upward dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c22p+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma downward ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a62231p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6228p+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b617p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b617p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc452p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc452p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc452p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc4528p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc44p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc44p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc44p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc48p+48L : inexact-ok
+tgamma -0x6.0000000000000008p0
+= tgamma downward flt-32 -0x6.000008p+0f : -0xb.60b57p+8f : inexact-ok
+= tgamma tonearest flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma towardzero flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma upward flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma downward dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c88p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c88p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c8p+8 : inexact-ok
+= tgamma upward dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c8p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma downward ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace5p+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma upward ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068adp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068adp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068accp+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068accp+8L : inexact-ok
+= tgamma downward dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0dp+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma upward dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma downward ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2cp+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma upward ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d8p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c5p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c48p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c48p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c48p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a8p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7cp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7cp+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7cp+48L : inexact-ok
+tgamma -0x6.fffffffffffffff8p0
+= tgamma downward flt-32 -0x6.fffff8p+0f : -0x1.a01a1cp+8f : inexact-ok
+= tgamma tonearest flt-32 -0x6.fffff8p+0f : -0x1.a01a1cp+8f : inexact-ok
+= tgamma towardzero flt-32 -0x6.fffff8p+0f : -0x1.a01a1ap+8f : inexact-ok
+= tgamma upward flt-32 -0x6.fffff8p+0f : -0x1.a01a1ap+8f : inexact-ok
+= tgamma downward dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde3p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma upward dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde2022p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde2022p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e553p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e553p+8L : inexact-ok
+= tgamma downward dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403405p+36 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma upward dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma downward ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575646p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135757p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a036p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a036p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff955p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff954fp+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff954fp+48L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff954fp+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff958p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff958p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff95p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff95p+48L : inexact-ok
+tgamma -0x7.0000000000000008p0
+= tgamma downward flt-32 -0x7.000008p+0f : 0x1.a019e6p+8f : inexact-ok
+= tgamma tonearest flt-32 -0x7.000008p+0f : 0x1.a019e8p+8f : inexact-ok
+= tgamma towardzero flt-32 -0x7.000008p+0f : 0x1.a019e6p+8f : inexact-ok
+= tgamma upward flt-32 -0x7.000008p+0f : 0x1.a019e8p+8f : inexact-ok
+= tgamma downward dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma upward dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a143p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a14241ap+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a14241ap+8L : inexact-ok
+= tgamma downward ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abccp+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7ab8p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7acp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7ab8p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7acp+8L : inexact-ok
+= tgamma downward dbl-64 -0x7.0000000000004p+0 : 0x3.4034034034018p+36 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.0000000000004p+0 : 0x3.403403403401ap+36 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.0000000000004p+0 : 0x3.4034034034018p+36 : inexact-ok
+= tgamma upward dbl-64 -0x7.0000000000004p+0 : 0x3.403403403401ap+36 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cdcp+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cdcp+36L : inexact-ok
+= tgamma downward ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a6p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a2p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a2p+36L : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma downward ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae4p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae4p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae4p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae5p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aa8p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503abp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aa8p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503abp+48L : inexact-ok
+tgamma -0x7.fffffffffffffff8p0
+= tgamma downward flt-32 -0x7.fffff8p+0f : 0x3.403438p+4f : inexact-ok
+= tgamma tonearest flt-32 -0x7.fffff8p+0f : 0x3.40343cp+4f : inexact-ok
+= tgamma towardzero flt-32 -0x7.fffff8p+0f : 0x3.403438p+4f : inexact-ok
+= tgamma upward flt-32 -0x7.fffff8p+0f : 0x3.40343cp+4f : inexact-ok
+= tgamma downward dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma upward dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf74p+4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993bp+4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe994p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993p+4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe994p+4L : inexact-ok
+= tgamma downward dbl-64 -0x7.ffffffffffffcp+0 : 0x6.806806806809cp+32 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.ffffffffffffcp+0 : 0x6.80680680680ap+32 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.ffffffffffffcp+0 : 0x6.806806806809cp+32 : inexact-ok
+= tgamma upward dbl-64 -0x7.ffffffffffffcp+0 : 0x6.80680680680ap+32 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb28p+32L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb28p+32L : inexact-ok
+= tgamma downward ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc6p+32L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc64p+32L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc6p+32L : inexact-ok
+= tgamma upward ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc64p+32L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefep+32L : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea2p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea2p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea2p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea4p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ep+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5fp+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ep+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5fp+44L : inexact-ok
+tgamma -0x8.000000000000001p0
+= tgamma downward flt-32 -0x8.00001p+0f : -0x1.a019cap+4f : inexact-ok
+= tgamma tonearest flt-32 -0x8.00001p+0f : -0x1.a019cap+4f : inexact-ok
+= tgamma towardzero flt-32 -0x8.00001p+0f : -0x1.a019c8p+4f : inexact-ok
+= tgamma upward flt-32 -0x8.00001p+0f : -0x1.a019c8p+4f : inexact-ok
+= tgamma downward dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981dp+4 : inexact-ok
+= tgamma tonearest dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma towardzero dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma upward dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2bp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2bp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma downward ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4bp+4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4afp+4L : inexact-ok
+= tgamma upward ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4afp+4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a5p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma downward dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffep+32 : inexact-ok
+= tgamma tonearest dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma towardzero dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma upward dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma downward ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e4p+32L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e4p+32L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e3ep+32L : inexact-ok
+= tgamma upward ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e3ep+32L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7fp+32L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe4p+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe4p+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma downward ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581acp+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581abp+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581abp+44L : inexact-ok
+= tgamma upward ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581abp+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc582p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc5818p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc5818p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc5818p+44L : inexact-ok
+tgamma -0x9.fffffffffffffffp0
+= tgamma downward flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma tonearest flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma towardzero flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma upward flt-32 -0x9.fffffp+0f : 0x4.9f94ap-4f : inexact-ok
+= tgamma downward dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma upward dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f362cp-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629ad8p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629ad8p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9144p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9148p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9144p-4L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9148p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db92p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db92p-4L : inexact-ok
+= tgamma downward dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma upward dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb98p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb919p+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb919p+24L : inexact-ok
+= tgamma downward ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37d8p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37ep+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37d8p+24L : inexact-ok
+= tgamma upward ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37ep+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc34p+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc38p+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc34p+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc38p+24L : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d7p+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d7p+36L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743dp+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743d4p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743dp+36L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743d4p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8742p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8744p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8742p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8744p+36L : inexact-ok
+tgamma -0xa.000000000000001p0
+= tgamma downward flt-32 -0xa.00001p+0f : -0x4.9f934p-4f : inexact-ok
+= tgamma tonearest flt-32 -0xa.00001p+0f : -0x4.9f934p-4f : inexact-ok
+= tgamma towardzero flt-32 -0xa.00001p+0f : -0x4.9f9338p-4f : inexact-ok
+= tgamma upward flt-32 -0xa.00001p+0f : -0x4.9f9338p-4f : inexact-ok
+= tgamma downward dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a3p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma upward dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc18p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc18p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma downward ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c358p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c358p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c354p-4L : inexact-ok
+= tgamma upward ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c354p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c4p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c4p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c2p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c2p-4L : inexact-ok
+= tgamma downward dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa38p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa38p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa3p+24 : inexact-ok
+= tgamma upward dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa3p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma downward ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b5p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma upward ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5cp+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5cp+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be58p+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be58p+24L : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma downward ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeff4p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeff4p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeffp+36L : inexact-ok
+= tgamma upward ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeffp+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbfp+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbfp+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeep+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeep+36L : inexact-ok
+tgamma -0x13.ffffffffffffffep0
+= tgamma downward flt-32 -0x1.3ffffep+4f : 0x3.ca86ep-44f : inexact-ok
+= tgamma tonearest flt-32 -0x1.3ffffep+4f : 0x3.ca86e4p-44f : inexact-ok
+= tgamma towardzero flt-32 -0x1.3ffffep+4f : 0x3.ca86ep-44f : inexact-ok
+= tgamma upward flt-32 -0x1.3ffffep+4f : 0x3.ca86e4p-44f : inexact-ok
+= tgamma downward dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011ecap-44 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011eccp-44 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011ecap-44 : inexact-ok
+= tgamma upward dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011eccp-44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b4p-44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b4p-44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e124p-44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e126p-44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e124p-44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e126p-44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e2p-44L : inexact-ok
+= tgamma downward dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080ap-16 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080a04p-16 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080ap-16 : inexact-ok
+= tgamma upward dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080a04p-16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e8p-16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e8p-16L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541144p-16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541148p-16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541144p-16L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541148p-16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541p-16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f785412p-16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541p-16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f785412p-16L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658cp-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658cp-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658cp-4L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658ep-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e65p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e66p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e65p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e66p-4L : inexact-ok
+tgamma -0x14.000000000000002p0
+= tgamma downward flt-32 -0x1.400002p+4f : -0x3.ca8408p-44f : inexact-ok
+= tgamma tonearest flt-32 -0x1.400002p+4f : -0x3.ca8408p-44f : inexact-ok
+= tgamma towardzero flt-32 -0x1.400002p+4f : -0x3.ca8404p-44f : inexact-ok
+= tgamma upward flt-32 -0x1.400002p+4f : -0x3.ca8404p-44f : inexact-ok
+= tgamma downward dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d4p-44 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d4p-44 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d2p-44 : inexact-ok
+= tgamma upward dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d2p-44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38b4p-44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38b4p-44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a6p-44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a6p-44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a4p-44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a4p-44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9244p-44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9244p-44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243p-44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243p-44L : inexact-ok
+= tgamma downward dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080728p-16 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma upward dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725af8p-16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725af8p-16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma downward ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134e4p-16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134e4p-16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134ep-16L : inexact-ok
+= tgamma upward ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134ep-16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d136p-16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d6p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d5ep-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d5ep-4L : inexact-ok
+= tgamma upward ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d5ep-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455ep-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455dp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455dp-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455dp-4L : inexact-ok
+tgamma -0x1d.ffffffffffffffep0
+= tgamma downward flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma tonearest flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma towardzero flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma upward flt-32 -0x1.dffffep+4f : 0x9.c99a6p-92f : inexact-ok
+= tgamma downward dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c57p-92 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c5708p-92 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c57p-92 : inexact-ok
+= tgamma upward dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c5708p-92 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570515p-92L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570515p-92L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cep-92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942ce8p-92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cep-92L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942ce8p-92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06943p-92L : inexact-ok
+= tgamma downward dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma upward dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d652p-60 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6dp-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6ep-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6dp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6ep-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fep-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe8p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fep-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe8p-60L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb0734ap-52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb0734ap-52L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7278p-52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e728p-52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7278p-52L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e728p-52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7p-52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e74p-52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7p-52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e74p-52L : inexact-ok
+tgamma -0x1e.000000000000002p0
+= tgamma downward flt-32 -0x1.e00002p+4f : -0x9.c992p-92f : inexact-ok
+= tgamma tonearest flt-32 -0x1.e00002p+4f : -0x9.c992p-92f : inexact-ok
+= tgamma towardzero flt-32 -0x1.e00002p+4f : -0x9.c991fp-92f : inexact-ok
+= tgamma upward flt-32 -0x1.e00002p+4f : -0x9.c991fp-92f : inexact-ok
+= tgamma downward dbl-64 -0x1.e00002p+4 : -0x9.c991f9b459728p-92 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.e00002p+4 : -0x9.c991f9b459728p-92 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.e00002p+4 : -0x9.c991f9b45972p-92 : inexact-ok
+= tgamma upward dbl-64 -0x1.e00002p+4 : -0x9.c991f9b45972p-92 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daa8p-92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455dcp-92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455dcp-92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455d8p-92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455d8p-92L : inexact-ok
+= tgamma downward dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5ccp-60 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma upward dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bcp-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5cp-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c4p-52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c4p-52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29ep-52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29d8p-52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29d8p-52L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29d8p-52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a2cp-52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a28p-52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a28p-52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a28p-52L : inexact-ok
+tgamma -0x27.ffffffffffffffcp0
+= tgamma downward flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.7ffffcp+4f : 0x7.3p-144f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7a8p-144 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7acp-144 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7a8p-144 : inexact-ok
+= tgamma upward dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7acp-144 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3684p-144L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a36ap-144L : inexact-ok
+= tgamma downward dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma upward dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095dcp-116 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0ep-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b4p-116L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac0cp-104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac1p-104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac0cp-104L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac1p-104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511acp-104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511acp-104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511acp-104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511aep-104L : inexact-ok
+tgamma -0x28.000000000000004p0
+= tgamma downward flt-32 -0x2.800004p+4f : -0x7.3p-144f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d2cp-144 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d2cp-144 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d28p-144 : inexact-ok
+= tgamma upward dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d28p-144 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma downward ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1e4p-144L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma upward ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c2p-144L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c2p-144L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7cp-144L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7cp-144L : inexact-ok
+= tgamma downward dbl-64 -0x2.8000000000002p+4 : -0xe.5476a15095078p-116 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8000000000002p+4 : -0xe.5476a15095078p-116 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8000000000002p+4 : -0xe.5476a1509507p-116 : inexact-ok
+= tgamma upward dbl-64 -0x2.8000000000002p+4 : -0xe.5476a1509507p-116 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fc8p-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fc8p-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fcp-116L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fcp-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd9p-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd9p-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8cp-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8cp-116L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd5p-104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd4cp-104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd4cp-104L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd4cp-104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbep-104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbep-104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbcp-104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbcp-104L : inexact-ok
+tgamma -0x28.ffffffffffffffcp0
+= tgamma downward flt-32 -0x2.8ffffcp+4f : -0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.8ffffcp+4f : -0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.8ffffcp+4f : -0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.8ffffcp+4f : -0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df68p-148 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma upward dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fcp-148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fcp-148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fap-148L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fap-148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466566p-148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466566p-148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565p-148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565p-148L : inexact-ok
+= tgamma downward dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740bap-120 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma upward dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd7p-120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd7p-120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4994p-120L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4ap-120L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4ap-120L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b48p-120L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b48p-120L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8206p-108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8206p-108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8204p-108L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8204p-108L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e83p-108L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e82p-108L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e82p-108L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e82p-108L : inexact-ok
+tgamma -0x29.000000000000004p0
+= tgamma downward flt-32 -0x2.900004p+4f : 0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.900004p+4f : 0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.900004p+4f : 0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.900004p+4f : 0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma upward dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b38p-148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma downward ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986872p-148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986874p-148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986872p-148L : inexact-ok
+= tgamma upward ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986874p-148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9869p-148L : inexact-ok
+= tgamma downward dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma upward dbl-64 -0x2.9000000000002p+4 : 0x5.979870e74066cp-120 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da24p-120L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dcp-120L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a0481664p-108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a0481664p-108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288496ep-108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288497p-108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288496ep-108L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288497p-108L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a04816619491828849p-108L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a04816619491828849p-108L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a04816619491828849p-108L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a0481661949182884ap-108L : inexact-ok
+tgamma -0x29.ffffffffffffffcp0
+= tgamma downward flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.9ffffcp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma upward dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c8p-152 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736cp-152L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736cp-152L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6049p-152L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e604ap-152L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6049p-152L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e604ap-152L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6p-152L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e608p-152L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6p-152L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e608p-152L : inexact-ok
+= tgamma downward dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma upward dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cd2p-124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c4p-124L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c6p-124L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c4p-124L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c6p-124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89p-124L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac8ap-124L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89p-124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac8ap-124L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639ep-112L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639fp-112L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639ep-112L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639fp-112L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca638p-112L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca638p-112L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca638p-112L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca64p-112L : inexact-ok
+tgamma -0x2a.000000000000004p0
+= tgamma downward flt-32 -0x2.a00004p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c62p-152 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c62p-152 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c61p-152 : inexact-ok
+= tgamma upward dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c61p-152 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bcp-152L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a458p-152L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma downward dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61ad2p-124 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma upward dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd24p-124L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd24p-124L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd22p-124L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd22p-124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fep-124L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826ep-112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826ep-112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e76p-112L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e76p-112L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e75p-112L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e75p-112L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e8p-112L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e8p-112L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0ep-112L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0ep-112L : inexact-ok
+tgamma -0x31.ffffffffffffffcp0
+= tgamma downward flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.1ffffcp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa78p-200 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa8p-200 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa78p-200 : inexact-ok
+= tgamma upward dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa8p-200 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d00878p-200L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d00cp-200L : inexact-ok
+= tgamma downward dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma upward dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce52p-168 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff1fp-168L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff2p-168L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff1fp-168L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff2p-168L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff8p-168L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1ddp-160L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1ddp-160L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa48p-160L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa5p-160L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa48p-160L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa5p-160L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0f8p-160L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fcp-160L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0f8p-160L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fcp-160L : inexact-ok
+tgamma -0x32.000000000000004p0
+= tgamma downward flt-32 -0x3.200004p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x3.200004p+4 : -0xd.d9aa2280534p-200 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.200004p+4 : -0xd.d9aa2280534p-200 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.200004p+4 : -0xd.d9aa2280533f8p-200 : inexact-ok
+= tgamma upward dbl-64 -0x3.200004p+4 : -0xd.d9aa2280533f8p-200 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma downward ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1118p-200L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma upward ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb14p-200L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma downward dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9fp-168 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9fp-168 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9ep-168 : inexact-ok
+= tgamma upward dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9ep-168 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed76p-168L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed76p-168L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma downward ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b9861p-168L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b9861p-168L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b986p-168L : inexact-ok
+= tgamma upward ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b986p-168L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b988p-168L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b988p-168L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b98p-168L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b98p-168L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma downward ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265e8p-160L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265e8p-160L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265ep-160L : inexact-ok
+= tgamma upward ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265ep-160L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a268p-160L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a264p-160L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a264p-160L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a264p-160L : inexact-ok
+tgamma -0x63.ffffffffffffff8p0
+= tgamma downward flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.3ffff8p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c76p-508 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c77p-508 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c76p-508 : inexact-ok
+= tgamma upward dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c77p-508 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76dfap-508L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76dfap-508L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6ep-508L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bcep-508L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce8p-508L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bcep-508L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce8p-508L : inexact-ok
+= tgamma downward dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma upward dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1bap-480 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a386p-480L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a3p-480L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a4p-480L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a3p-480L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a4p-480L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781216p-468L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781216p-468L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da55p-468L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da55p-468L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da55p-468L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da56p-468L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22dap-468L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da8p-468L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22dap-468L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da8p-468L : inexact-ok
+tgamma -0x64.000000000000008p0
+= tgamma downward flt-32 -0x6.400008p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014ep-508 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma upward dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma downward ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526cp-508L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma upward ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646528p-508L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646528p-508L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc852364652p-508L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc852364652p-508L : inexact-ok
+= tgamma downward dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4cp-480 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4cp-480 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4ap-480 : inexact-ok
+= tgamma upward dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4ap-480 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma downward ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdep-480L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma upward ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ecp-480L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ecp-480L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebp-480L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebp-480L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma downward ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f25ap-468L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f25ap-468L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f259p-468L : inexact-ok
+= tgamma upward ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f259p-468L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f28p-468L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f28p-468L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f2p-468L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f2p-468L : inexact-ok
+tgamma -0x95.ffffffffffffffp0
+= tgamma downward flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x9.5ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa48p-860 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa5p-860 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa48p-860 : inexact-ok
+= tgamma upward dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa5p-860 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c937p-860L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9p-860L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c94p-860L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9p-860L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c94p-860L : inexact-ok
+= tgamma downward dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406adp-828 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406aep-828 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406adp-828 : inexact-ok
+= tgamma upward dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406aep-828 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada86p-828L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada86p-828L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b3p-828L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b4p-828L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b3p-828L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b4p-828L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa18p-828L : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362c8p-820L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362dp-820L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362c8p-820L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362dp-820L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca636p-820L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6364p-820L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca636p-820L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6364p-820L : inexact-ok
+tgamma -0x96.00000000000001p0
+= tgamma downward flt-32 -0x9.60001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x9.60001p+4 : -0x8.d14d214a189cp-860 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma upward dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93cp-860L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93cp-860L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma downward ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a6p-860L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma upward ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4cp-860L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4cp-860L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c48p-860L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c48p-860L : inexact-ok
+= tgamma downward dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640127p-828 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640127p-828 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640126p-828 : inexact-ok
+= tgamma upward dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640126p-828 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma downward ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c7ap-828L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c7ap-828L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c79p-828L : inexact-ok
+= tgamma upward ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c79p-828L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c8p-828L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c8p-828L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15cp-828L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15cp-828L : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0dp-820L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0dp-820L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma downward ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a1p-820L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a1p-820L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a08p-820L : inexact-ok
+= tgamma upward ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a08p-820L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2cp-820L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2cp-820L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf28p-820L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf28p-820L : inexact-ok
+tgamma -0xb4.ffffffffffffffp0
+= tgamma downward flt-32 -0xb.4ffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.4ffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f062p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f062p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550d04p-1088L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4ffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f41cp-1060 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800ep-1060L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800ep-1060L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7ep-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7ep-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7d8p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7d8p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f41cp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e2p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e2p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7148p-1048L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7144p-1048L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7144p-1048L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7144p-1048L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+tgamma -0xb5.00000000000001p0
+= tgamma downward flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.50001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.50001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523fp-1088L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523fp-1088L : inexact-ok
+= tgamma downward ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab3cp-1088L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab4p-1088L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab3cp-1088L : inexact-ok
+= tgamma upward ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab4p-1088L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.50001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.5000000000008p+4 : 0xb.f41cp-1060 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc14134028p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f41cp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma downward ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c0cp-1048L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c1p-1048L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c0cp-1048L : inexact-ok
+= tgamma upward ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c1p-1048L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+tgamma -0xb5.ffffffffffffffp0
+= tgamma downward flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.5ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.5ffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fa8p-1096L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fbp-1096L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fa8p-1096L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fbp-1096L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.5ffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0d4p-1064 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd22p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd22p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2bp-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2cp-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2bp-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2cp-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0d4p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6bp-1056L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6b8p-1056L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6bp-1056L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6b8p-1056L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+tgamma -0xb6.00000000000001p0
+= tgamma downward flt-32 -0xb.60001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.60001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma downward ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e03p-1096L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e03p-1096L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e028p-1096L : inexact-ok
+= tgamma upward ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e028p-1096L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.60001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6000000000008p+4 : -0x1.0d4p-1064 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f834p-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f834p-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f833p-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f833p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0d4p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f6p-1056L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f6p-1056L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma downward ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb88p-1056L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb8p-1056L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb8p-1056L : inexact-ok
+= tgamma upward ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb8p-1056L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+tgamma -0xb6.ffffffffffffffp0
+= tgamma downward flt-32 -0xb.6ffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6ffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af98p-1104L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af98p-1104L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af9p-1104L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af9p-1104L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6ffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6fffffffffff8p+4 : -0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6fffffffffff8p+4 : -0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.6fffffffffff8p+4 : -0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.6fffffffffff8p+4 : -0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed316p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed316p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a41p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a41p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a4p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a4p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed8p-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed78p-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed78p-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed78p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+tgamma -0xb7.00000000000001p0
+= tgamma downward flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.70001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.70001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bcap-1104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bcap-1104L : inexact-ok
+= tgamma downward ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176a8p-1104L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176bp-1104L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176a8p-1104L : inexact-ok
+= tgamma upward ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176bp-1104L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.70001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7000000000008p+4 : 0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.7000000000008p+4 : 0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.7000000000008p+4 : 0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.7000000000008p+4 : 0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914246p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7000000000008p+4L : 0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.7000000000008p+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.7000000000008p+4L : 0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.7000000000008p+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf97p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf97p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100eap-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100eap-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100eap-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100ea8p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+tgamma -0xb7.ffffffffffffffp0
+= tgamma downward flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.7ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.7ffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377cp-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377cp-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef8p-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.7ffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.7fffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3cp-1080L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3cp-1080L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a073405p-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a0734052p-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a073405p-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a0734052p-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e01153ap-1068L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e01153ap-1068L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9cp-1068L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9dp-1068L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9cp-1068L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9dp-1068L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.08p-1068L : inexact-ok underflow errno-erange-ok
+tgamma -0xb8.00000000000001p0
+= tgamma downward flt-32 -0xb.80001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.80001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189e2p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189e2p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89ep-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89ep-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89dp-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89dp-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.80001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.8000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma downward ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c3p-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c3p-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c2ep-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c2ep-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.8000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8ep-1068L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8ep-1068L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma downward ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735bp-1068L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735ap-1068L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735ap-1068L : inexact-ok
+= tgamma upward ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735ap-1068L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.800000000000001p+4L : -0x1.08p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.800000000000001p+4L : -0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.800000000000001p+4L : -0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.800000000000001p+4L : -0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+tgamma -0xbb.ffffffffffffffp0
+= tgamma downward flt-32 -0xb.bffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.bffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.bffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.bffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.bffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.bffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.bffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.bffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma downward ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae6p-1140L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae6p-1140L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae6p-1140L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae8p-1140L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.bffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.bffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.bffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.bfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.bfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.bfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.bfffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma downward ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14acp-1112L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14acp-1112L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14acp-1112L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14bp-1112L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma downward ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e844p-1100L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e844p-1100L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e844p-1100L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e846p-1100L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0xbc.00000000000001p0
+= tgamma downward flt-32 -0xb.c0001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.c0001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.c0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.c0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.c0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma downward ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19adap-1140L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19adap-1140L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19ad8p-1140L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19ad8p-1140L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c0001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.c0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.c0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.c000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.c000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.c000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.c000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9dfp-1112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9dfp-1112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma downward ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab8p-1112L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab4p-1112L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab4p-1112L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab4p-1112L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.c000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.c000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma downward ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f6p-1100L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f6p-1100L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f4p-1100L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f4p-1100L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c00000000000001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.c00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.c00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0xbc.ffffffffffffffp0
+= tgamma downward flt-32 -0xb.cffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.cffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.cffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.cffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.cffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.cffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.cffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.cffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508dp-1148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508dp-1148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma downward ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b8p-1148L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b4p-1148L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b4p-1148L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b4p-1148L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.cffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.cffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.cfffffffffff8p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.cfffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.cfffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.cfffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma downward ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c48p-1120L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c48p-1120L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c4p-1120L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c4p-1120L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c5p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c5p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6814p-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6814p-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6813cp-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6813cp-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0xbd.00000000000001p0
+= tgamma downward flt-32 -0xb.d0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.d0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.d0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.d0001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.d0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.d0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.d0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.d0001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma downward ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84654cp-1148L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84655p-1148L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84654cp-1148L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84655p-1148L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.d0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.d0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.d0001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.d000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.d000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.d000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.d000000000008p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma downward ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798d8p-1120L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798d8p-1120L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798d8p-1120L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798ep-1120L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.d000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.d000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.d000000000008p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a9p-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a94p-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a9p-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a94p-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.d00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.d00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.d00000000000001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0xbd.ffffffffffffffp0
+= tgamma downward flt-32 -0xb.dffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.dffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.dffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.dffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.dffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.dffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.dffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.dffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e58p-1156L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e58p-1156L : inexact-ok
+= tgamma downward ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef88p-1156L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef8cp-1156L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef88p-1156L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef8cp-1156L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.dffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.dffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.dffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.dfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.dfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.dfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.dfffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb1p-1128L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb1p-1128L : inexact-ok
+= tgamma downward ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bcp-1128L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bc8p-1128L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bcp-1128L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bc8p-1128L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d808p-1116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d808p-1116L : inexact-ok
+= tgamma downward ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd4p-1116L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd8p-1116L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd4p-1116L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd8p-1116L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0xbe.00000000000001p0
+= tgamma downward flt-32 -0xb.e0001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.e0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.e0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.e0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.e0001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.e0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.e0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.e0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e108p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e108p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma downward ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd9cp-1156L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd9cp-1156L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd98p-1156L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd98p-1156L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e0001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.e0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.e0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.e000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.e000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.e000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.e000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9fp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9fp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma downward ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40cp-1128L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40b8p-1128L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40b8p-1128L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40b8p-1128L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.e000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.e000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff1629278p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff1629278p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma downward ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a08p-1116L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a04p-1116L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a04p-1116L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a04p-1116L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e00000000000001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.e00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.e00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0xbe.ffffffffffffffp0
+= tgamma downward flt-32 -0xb.effffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.effffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.effffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.effffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.effffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.effffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.effffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.effffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73ep-1164L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73ep-1164L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma downward ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230b8p-1164L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230bp-1164L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230bp-1164L : inexact-ok
+= tgamma upward ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230bp-1164L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.effffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.effffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.effffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.effffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.efffffffffff8p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.efffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.efffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.efffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma downward ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186ep-1132L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186ep-1132L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186dp-1132L : inexact-ok
+= tgamma upward ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186dp-1132L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.efffffffffff8p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.efffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.efffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.efffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma downward ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f5p-1124L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f5p-1124L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f48p-1124L : inexact-ok
+= tgamma upward ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f48p-1124L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.effffffffffffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.effffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.effffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.effffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0xbf.00000000000001p0
+= tgamma downward flt-32 -0xb.f0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.f0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.f0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.f0001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.f0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.f0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.f0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.f0001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba21p-1164L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba21p-1164L : inexact-ok
+= tgamma downward ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c648p-1164L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c65p-1164L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c648p-1164L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c65p-1164L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f0001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.f000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.f000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.f000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.f000000000008p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma downward ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabecp-1132L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabedp-1132L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabecp-1132L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabedp-1132L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f000000000008p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f33p-1124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f33p-1124L : inexact-ok
+= tgamma downward ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447ep-1124L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447ep-1124L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447ep-1124L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447e8p-1124L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f00000000000001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0xf9.ffffffffffffffp0
+= tgamma downward flt-32 -0xf.9ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xf.9ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xf.9ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xf.9ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xf.9ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xf.9ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xf.9ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xf.9ffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.9ffffp+4L : 0xf.1f88ab042ff7086p-1624L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.9ffffp+4L : 0xf.1f88ab042ff7086p-1624L : inexact-ok
+= tgamma downward ldbl-128 -0xf.9ffffp+4L : 0xf.1f88ab042ff7085579fc982914d8p-1624L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.9ffffp+4L : 0xf.1f88ab042ff7085579fc982914d8p-1624L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.9ffffp+4L : 0xf.1f88ab042ff7085579fc982914d8p-1624L : inexact-ok
+= tgamma upward ldbl-128 -0xf.9ffffp+4L : 0xf.1f88ab042ff7085579fc982914ep-1624L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.9ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xf.9ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.9ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.9ffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xf.9fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xf.9fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xf.9fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xf.9fffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39ep-1592L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e2p-1592L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39ep-1592L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e2p-1592L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39ep-1592L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e2p-1592L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39ep-1592L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e2p-1592L : inexact-ok
+= tgamma downward ldbl-128 -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e146ec0d2ee4b5p-1592L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e146ec0d2ee4b5p-1592L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e146ec0d2ee4b5p-1592L : inexact-ok
+= tgamma upward ldbl-128 -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e146ec0d2ee4b6p-1592L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.9fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xf.9fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.9fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.9fffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eefp-1584L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eefp-1584L : inexact-ok
+= tgamma downward ldbl-128 -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eee5821ae2926698p-1584L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eee5821ae29266ap-1584L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eee5821ae2926698p-1584L : inexact-ok
+= tgamma upward ldbl-128 -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eee5821ae29266ap-1584L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.9ffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xf.9ffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.9ffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.9ffffffffffffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0xfa.00000000000001p0
+= tgamma downward flt-32 -0xf.a0001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xf.a0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xf.a0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xf.a0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xf.a0001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xf.a0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xf.a0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xf.a0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xf.a0001p+4L : -0xf.1ee19e1960e8838p-1624L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.a0001p+4L : -0xf.1ee19e1960e8838p-1624L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.a0001p+4L : -0xf.1ee19e1960e8837p-1624L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.a0001p+4L : -0xf.1ee19e1960e8837p-1624L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.a0001p+4L : -0xf.1ee19e1960e8838p-1624L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.a0001p+4L : -0xf.1ee19e1960e8838p-1624L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.a0001p+4L : -0xf.1ee19e1960e8837p-1624L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.a0001p+4L : -0xf.1ee19e1960e8837p-1624L : inexact-ok
+= tgamma downward ldbl-128 -0xf.a0001p+4L : -0xf.1ee19e1960e8837e1e8ee885a37p-1624L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.a0001p+4L : -0xf.1ee19e1960e8837e1e8ee885a368p-1624L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.a0001p+4L : -0xf.1ee19e1960e8837e1e8ee885a368p-1624L : inexact-ok
+= tgamma upward ldbl-128 -0xf.a0001p+4L : -0xf.1ee19e1960e8837e1e8ee885a368p-1624L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.a0001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xf.a0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.a0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.a0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xf.a000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xf.a000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xf.a000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xf.a000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf8p-1592L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf8p-1592L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma downward ldbl-128 -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf67c4166191d9dp-1592L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf67c4166191d9cp-1592L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf67c4166191d9cp-1592L : inexact-ok
+= tgamma upward ldbl-128 -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf67c4166191d9cp-1592L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.a000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xf.a000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.a000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.a000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xf.a00000000000001p+4L : -0xf.1f35238f43b547ep-1584L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.a00000000000001p+4L : -0xf.1f35238f43b547ep-1584L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.a00000000000001p+4L : -0xf.1f35238f43b547dp-1584L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.a00000000000001p+4L : -0xf.1f35238f43b547dp-1584L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.a00000000000001p+4L : -0xf.1f35238f43b547ep-1584L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.a00000000000001p+4L : -0xf.1f35238f43b547ep-1584L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.a00000000000001p+4L : -0xf.1f35238f43b547dp-1584L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.a00000000000001p+4L : -0xf.1f35238f43b547dp-1584L : inexact-ok
+= tgamma downward ldbl-128 -0xf.a00000000000001p+4L : -0xf.1f35238f43b547d8975037eb50d8p-1584L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.a00000000000001p+4L : -0xf.1f35238f43b547d8975037eb50d8p-1584L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.a00000000000001p+4L : -0xf.1f35238f43b547d8975037eb50dp-1584L : inexact-ok
+= tgamma upward ldbl-128 -0xf.a00000000000001p+4L : -0xf.1f35238f43b547d8975037eb50dp-1584L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.a00000000000001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xf.a00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.a00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.a00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x1f3.fffffffffffffep0
+= tgamma downward flt-32 -0x1.f3fffep+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x1.f3fffep+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x1.f3fffep+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x1.f3fffep+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x1.f3fffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x1.f3fffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x1.f3fffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x1.f3fffep+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x1.f3fffep+8L : 0xc.8678d8710ada4b5p-3756L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f3fffep+8L : 0xc.8678d8710ada4b6p-3756L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f3fffep+8L : 0xc.8678d8710ada4b5p-3756L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f3fffep+8L : 0xc.8678d8710ada4b6p-3756L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f3fffep+8L : 0xc.8678d8710ada4b5p-3756L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f3fffep+8L : 0xc.8678d8710ada4b6p-3756L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f3fffep+8L : 0xc.8678d8710ada4b5p-3756L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f3fffep+8L : 0xc.8678d8710ada4b6p-3756L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f3fffep+8L : 0xc.8678d8710ada4b5eec735b549778p-3756L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f3fffep+8L : 0xc.8678d8710ada4b5eec735b54978p-3756L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f3fffep+8L : 0xc.8678d8710ada4b5eec735b549778p-3756L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f3fffep+8L : 0xc.8678d8710ada4b5eec735b54978p-3756L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f3fffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x1.f3fffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f3fffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f3fffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x1.f3fffffffffffp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x1.f3fffffffffffp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x1.f3fffffffffffp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x1.f3fffffffffffp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52bap-3724L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52bap-3724L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b807b31083b732p-3724L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b807b31083b732p-3724L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b807b31083b732p-3724L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b807b31083b733p-3724L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f3fffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x1.f3fffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f3fffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f3fffffffffffp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb3p-3716L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb3p-3716L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb258653e3c773ap-3716L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb258653e3c773ap-3716L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb258653e3c773ap-3716L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb258653e3c773a8p-3716L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f3fffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x1.f3fffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f3fffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f3fffffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x1f4.00000000000002p0
+= tgamma downward flt-32 -0x1.f40002p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x1.f40002p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x1.f40002p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x1.f40002p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x1.f40002p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x1.f40002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x1.f40002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x1.f40002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x1.f40002p+8L : -0xc.85417edf037af34p-3756L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f40002p+8L : -0xc.85417edf037af34p-3756L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f40002p+8L : -0xc.85417edf037af33p-3756L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f40002p+8L : -0xc.85417edf037af33p-3756L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f40002p+8L : -0xc.85417edf037af34p-3756L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f40002p+8L : -0xc.85417edf037af34p-3756L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f40002p+8L : -0xc.85417edf037af33p-3756L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f40002p+8L : -0xc.85417edf037af33p-3756L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f40002p+8L : -0xc.85417edf037af33cc2668f1a74bp-3756L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f40002p+8L : -0xc.85417edf037af33cc2668f1a74a8p-3756L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f40002p+8L : -0xc.85417edf037af33cc2668f1a74a8p-3756L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f40002p+8L : -0xc.85417edf037af33cc2668f1a74a8p-3756L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f40002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x1.f40002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f40002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f40002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x1.f400000000001p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x1.f400000000001p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x1.f400000000001p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x1.f400000000001p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x1.f400000000001p+8L : -0x1.90bba4f1c182f928p-3724L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f400000000001p+8L : -0x1.90bba4f1c182f928p-3724L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f400000000001p+8L : -0x1.90bba4f1c182f92627a62870859cp-3724L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f400000000001p+8L : -0x1.90bba4f1c182f92627a62870859cp-3724L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f400000000001p+8L : -0x1.90bba4f1c182f92627a62870859bp-3724L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f400000000001p+8L : -0x1.90bba4f1c182f92627a62870859bp-3724L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f400000000001p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x1.f400000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f400000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f400000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x1.f400000000000002p+8L : -0xc.85dd278e10f493dp-3716L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f400000000000002p+8L : -0xc.85dd278e10f493dp-3716L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cp-3716L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cp-3716L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f400000000000002p+8L : -0xc.85dd278e10f493dp-3716L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f400000000000002p+8L : -0xc.85dd278e10f493dp-3716L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cp-3716L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cp-3716L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cbf473d6df607p-3716L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cbf473d6df607p-3716L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cbf473d6df6068p-3716L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cbf473d6df6068p-3716L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f400000000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x1.f400000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f400000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f400000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x2ed.fffffffffffffcp0
+= tgamma downward flt-32 -0x2.edfffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x2.edfffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.edfffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.edfffcp+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.edfffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x2.edfffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x2.edfffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x2.edfffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x2.edfffcp+8L : 0x7.433bfad52f11627p-6076L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.edfffcp+8L : 0x7.433bfad52f116278p-6076L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.edfffcp+8L : 0x7.433bfad52f11627p-6076L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.edfffcp+8L : 0x7.433bfad52f116278p-6076L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.edfffcp+8L : 0x7.433bfad52f11627p-6076L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.edfffcp+8L : 0x7.433bfad52f116278p-6076L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.edfffcp+8L : 0x7.433bfad52f11627p-6076L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.edfffcp+8L : 0x7.433bfad52f116278p-6076L : inexact-ok
+= tgamma downward ldbl-128 -0x2.edfffcp+8L : 0x7.433bfad52f116275e8a6cb1abdbp-6076L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.edfffcp+8L : 0x7.433bfad52f116275e8a6cb1abdbp-6076L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.edfffcp+8L : 0x7.433bfad52f116275e8a6cb1abdbp-6076L : inexact-ok
+= tgamma upward ldbl-128 -0x2.edfffcp+8L : 0x7.433bfad52f116275e8a6cb1abdb4p-6076L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.edfffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x2.edfffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.edfffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.edfffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.edffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x2.edffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x2.edffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x2.edffffffffffep+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.edffffffffffep+8L : 0xe.84f75c0458390c4p-6048L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.edffffffffffep+8L : 0xe.84f75c0458390c4p-6048L : inexact-ok
+= tgamma downward ldbl-128 -0x2.edffffffffffep+8L : 0xe.84f75c0458390c32001f453d1238p-6048L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.edffffffffffep+8L : 0xe.84f75c0458390c32001f453d124p-6048L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.edffffffffffep+8L : 0xe.84f75c0458390c32001f453d1238p-6048L : inexact-ok
+= tgamma upward ldbl-128 -0x2.edffffffffffep+8L : 0xe.84f75c0458390c32001f453d124p-6048L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.edffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x2.edffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.edffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.edffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b3548p-6036L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b355p-6036L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b3548p-6036L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b355p-6036L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b3548p-6036L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b355p-6036L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b3548p-6036L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b355p-6036L : inexact-ok
+= tgamma downward ldbl-128 -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b354c69c18aff27ccp-6036L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b354c69c18aff27ccp-6036L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b354c69c18aff27ccp-6036L : inexact-ok
+= tgamma upward ldbl-128 -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b354c69c18aff27dp-6036L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.edfffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x2.edfffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.edfffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.edfffffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x2ee.00000000000004p0
+= tgamma downward flt-32 -0x2.ee0004p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.ee0004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.ee0004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.ee0004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x2.ee0004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x2.ee0004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x2.ee0004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x2.ee0004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x2.ee0004p+8L : -0x7.41bb7690a9f23178p-6076L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.ee0004p+8L : -0x7.41bb7690a9f23178p-6076L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ee0004p+8L : -0x7.41bb7690a9f23173319e693ba4fp-6076L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ee0004p+8L : -0x7.41bb7690a9f23173319e693ba4fp-6076L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ee0004p+8L : -0x7.41bb7690a9f23173319e693ba4ecp-6076L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ee0004p+8L : -0x7.41bb7690a9f23173319e693ba4ecp-6076L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ee0004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x2.ee0004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.ee0004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.ee0004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x2.ee00000000002p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x2.ee00000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x2.ee00000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x2.ee00000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x2.ee00000000002p+8L : -0xe.84f75c044030c8p-6048L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.ee00000000002p+8L : -0xe.84f75c044030c8p-6048L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ee00000000002p+8L : -0xe.84f75c044030c7f71f95864de848p-6048L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ee00000000002p+8L : -0xe.84f75c044030c7f71f95864de848p-6048L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ee00000000002p+8L : -0xe.84f75c044030c7f71f95864de84p-6048L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ee00000000002p+8L : -0xe.84f75c044030c7f71f95864de84p-6048L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ee00000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x2.ee00000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.ee00000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.ee00000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x2.ee00000000000004p+8L : -0x7.427bae022619b4dp-6036L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.ee00000000000004p+8L : -0x7.427bae022619b4dp-6036L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c82613826338dcp-6036L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c82613826338d8p-6036L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c82613826338d8p-6036L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c82613826338d8p-6036L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ee00000000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x2.ee00000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.ee00000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.ee00000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x3e7.fffffffffffffcp0
+= tgamma downward flt-32 -0x3.e7fffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x3.e7fffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.e7fffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.e7fffcp+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x3.e7fffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x3.e7fffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x3.e7fffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x3.e7fffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dcp-8516L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dep-8516L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dcp-8516L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dep-8516L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dcp-8516L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dep-8516L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dcp-8516L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dep-8516L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dd46b01953bda7p-8516L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dd46b01953bda8p-8516L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dd46b01953bda7p-8516L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dd46b01953bda8p-8516L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e7fffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x3.e7fffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e7fffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e7fffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x3.e7ffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x3.e7ffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x3.e7ffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x3.e7ffffffffffep+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8283p-8488L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8283p-8488L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cc35fdfe85228p-8488L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cc35fdfe8522ap-8488L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cc35fdfe85228p-8488L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cc35fdfe8522ap-8488L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e7ffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x3.e7ffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e7ffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e7ffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b536p-8476L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b536p-8476L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b53479534a4f3588p-8476L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b53479534a4f3589p-8476L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b53479534a4f3588p-8476L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b53479534a4f3589p-8476L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e7fffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x3.e7fffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e7fffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e7fffffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x3e8.00000000000004p0
+= tgamma downward flt-32 -0x3.e80004p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x3.e80004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.e80004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.e80004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x3.e80004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x3.e80004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x3.e80004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x3.e80004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x3.e80004p+8L : -0x1.8465948dfc562cbap-8516L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e80004p+8L : -0x1.8465948dfc562cbap-8516L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e80004p+8L : -0x1.8465948dfc562cb8p-8516L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e80004p+8L : -0x1.8465948dfc562cb8p-8516L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e80004p+8L : -0x1.8465948dfc562cbap-8516L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e80004p+8L : -0x1.8465948dfc562cbap-8516L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e80004p+8L : -0x1.8465948dfc562cb8p-8516L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e80004p+8L : -0x1.8465948dfc562cb8p-8516L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e80004p+8L : -0x1.8465948dfc562cb9461afac63bb1p-8516L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e80004p+8L : -0x1.8465948dfc562cb9461afac63bbp-8516L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e80004p+8L : -0x1.8465948dfc562cb9461afac63bbp-8516L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e80004p+8L : -0x1.8465948dfc562cb9461afac63bbp-8516L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e80004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x3.e80004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e80004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e80004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x3.e800000000002p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x3.e800000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x3.e800000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x3.e800000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x3.e800000000002p+8L : -0x3.091f067a0faa04e4p-8488L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e800000000002p+8L : -0x3.091f067a0faa04e4p-8488L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e800000000002p+8L : -0x3.091f067a0faa04e0b86e569000d6p-8488L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e800000000002p+8L : -0x3.091f067a0faa04e0b86e569000d6p-8488L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e800000000002p+8L : -0x3.091f067a0faa04e0b86e569000d4p-8488L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e800000000002p+8L : -0x3.091f067a0faa04e0b86e569000d4p-8488L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e800000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x3.e800000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e800000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e800000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x3.e800000000000004p+8L : -0x1.848f833d09246154p-8476L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e800000000000004p+8L : -0x1.848f833d09246154p-8476L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e800000000000004p+8L : -0x1.848f833d0924615244929b36a004p-8476L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e800000000000004p+8L : -0x1.848f833d0924615244929b36a003p-8476L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e800000000000004p+8L : -0x1.848f833d0924615244929b36a003p-8476L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e800000000000004p+8L : -0x1.848f833d0924615244929b36a003p-8476L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e800000000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x3.e800000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e800000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e800000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x4e1.fffffffffffff8p0
+= tgamma downward flt-32 -0x4.e1fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x4.e1fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x4.e1fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x4.e1fff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x4.e1fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x4.e1fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x4.e1fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x4.e1fff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e1fff8p+8L : 0x4.ca1e38696cc93878p-11052L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e1fff8p+8L : 0x4.ca1e38696cc93878p-11052L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387008956e5c448p-11052L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387008956e5c4484p-11052L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387008956e5c448p-11052L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387008956e5c4484p-11052L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e1fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4.e1fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e1fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e1fff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x4.e1ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x4.e1ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x4.e1ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x4.e1ffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ep-11024L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296fp-11024L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ep-11024L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296fp-11024L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ep-11024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296fp-11024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ep-11024L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296fp-11024L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ec13e74625f128p-11024L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ec13e74625f128p-11024L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ec13e74625f128p-11024L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ec13e74625f13p-11024L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e1ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4.e1ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e1ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e1ffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f48p-11012L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f5p-11012L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f48p-11012L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f5p-11012L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f48p-11012L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f5p-11012L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f48p-11012L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f5p-11012L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f4f96e17404662cp-11012L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f4f96e17404662cp-11012L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f4f96e17404662cp-11012L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f4f96e17404663p-11012L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e1fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4.e1fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e1fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e1fffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x4e2.00000000000008p0
+= tgamma downward flt-32 -0x4.e20008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x4.e20008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x4.e20008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x4.e20008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x4.e20008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x4.e20008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x4.e20008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x4.e20008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x4.e20008p+8L : -0x4.c7fc351a014d05fp-11052L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e20008p+8L : -0x4.c7fc351a014d05fp-11052L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e20008p+8L : -0x4.c7fc351a014d05e8ad7788447bp-11052L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e20008p+8L : -0x4.c7fc351a014d05e8ad7788447afcp-11052L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e20008p+8L : -0x4.c7fc351a014d05e8ad7788447afcp-11052L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e20008p+8L : -0x4.c7fc351a014d05e8ad7788447afcp-11052L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e20008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x4.e20008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e20008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e20008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x4.e200000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x4.e200000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x4.e200000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x4.e200000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x4.e200000000004p+8L : -0x9.921a2cbceb72625p-11024L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e200000000004p+8L : -0x9.921a2cbceb72625p-11024L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e200000000004p+8L : -0x9.921a2cbceb72624p-11024L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e200000000004p+8L : -0x9.921a2cbceb72624p-11024L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e200000000004p+8L : -0x9.921a2cbceb72625p-11024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e200000000004p+8L : -0x9.921a2cbceb72625p-11024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e200000000004p+8L : -0x9.921a2cbceb72624p-11024L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e200000000004p+8L : -0x9.921a2cbceb72624p-11024L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e200000000004p+8L : -0x9.921a2cbceb72624bb3b2e697d0dp-11024L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e200000000004p+8L : -0x9.921a2cbceb72624bb3b2e697d0c8p-11024L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e200000000004p+8L : -0x9.921a2cbceb72624bb3b2e697d0c8p-11024L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e200000000004p+8L : -0x9.921a2cbceb72624bb3b2e697d0c8p-11024L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e200000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x4.e200000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e200000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e200000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d5p-11012L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d5p-11012L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d48p-11012L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d48p-11012L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d5p-11012L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d5p-11012L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d48p-11012L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d48p-11012L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d4c4cdb70be6d4cp-11012L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d4c4cdb70be6d48p-11012L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d4c4cdb70be6d48p-11012L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d4c4cdb70be6d48p-11012L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e200000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x4.e200000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e200000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e200000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x5db.fffffffffffff8p0
+= tgamma downward flt-32 -0x5.dbfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x5.dbfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x5.dbfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x5.dbfff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x5.dbfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x5.dbfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x5.dbfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x5.dbfff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dbfff8p+8L : 0x1.401ec2203b3432acp-13656L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dbfff8p+8L : 0x1.401ec2203b3432acp-13656L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dbfff8p+8L : 0x1.401ec2203b3432aa4674264a913bp-13656L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dbfff8p+8L : 0x1.401ec2203b3432aa4674264a913bp-13656L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dbfff8p+8L : 0x1.401ec2203b3432aa4674264a913bp-13656L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dbfff8p+8L : 0x1.401ec2203b3432aa4674264a913cp-13656L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dbfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x5.dbfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dbfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dbfff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x5.dbffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x5.dbffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x5.dbffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x5.dbffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e57944p-13628L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e57944p-13628L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e579402f82ae0604dcp-13628L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e579402f82ae0604dcp-13628L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e579402f82ae0604dcp-13628L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e579402f82ae0604dep-13628L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dbffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x5.dbffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dbffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dbffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3dap-13616L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3dap-13616L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9eaedb9b002425p-13616L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9eaedb9b002425p-13616L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9eaedb9b002425p-13616L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9eaedb9b002426p-13616L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dbfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x5.dbfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dbfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dbfffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x5dc.00000000000008p0
+= tgamma downward flt-32 -0x5.dc0008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x5.dc0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x5.dc0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x5.dc0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x5.dc0008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x5.dc0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x5.dc0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x5.dc0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x5.dc0008p+8L : -0x1.3f8c90181e39f8ep-13656L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dc0008p+8L : -0x1.3f8c90181e39f8ep-13656L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dc0008p+8L : -0x1.3f8c90181e39f8de9289b7100a51p-13656L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dc0008p+8L : -0x1.3f8c90181e39f8de9289b7100a5p-13656L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dc0008p+8L : -0x1.3f8c90181e39f8de9289b7100a5p-13656L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dc0008p+8L : -0x1.3f8c90181e39f8de9289b7100a5p-13656L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dc0008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x5.dc0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dc0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dc0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x5.dc00000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x5.dc00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x5.dc00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x5.dc00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d8p-13628L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d8p-13628L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d4p-13628L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d4p-13628L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d8p-13628L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d8p-13628L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d4p-13628L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d4p-13628L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d67ebe835f93b2p-13628L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d67ebe835f93bp-13628L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d67ebe835f93bp-13628L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d67ebe835f93bp-13628L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dc00000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x5.dc00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dc00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dc00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ep-13616L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ep-13616L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ca8408ebd79bfp-13616L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ca8408ebd79bep-13616L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ca8408ebd79bep-13616L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ca8408ebd79bep-13616L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dc00000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x5.dc00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dc00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dc00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6d5.fffffffffffff8p0
+= tgamma downward flt-32 -0x6.d5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.d5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.d5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.d5fff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.d5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.d5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.d5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.d5fff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d5fff8p+8L : 0x4.084b5636bf26a378p-16324L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d5fff8p+8L : 0x4.084b5636bf26a378p-16324L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d5fff8p+8L : 0x4.084b5636bf26a3700a13afcc4528p-16324L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d5fff8p+8L : 0x4.084b5636bf26a3700a13afcc4528p-16324L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d5fff8p+8L : 0x4.084b5636bf26a3700a13afcc4528p-16324L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d5fff8p+8L : 0x4.084b5636bf26a3700a13afcc452cp-16324L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.d5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d5fff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.d5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.d5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.d5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.d5ffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527p-16296L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b528p-16296L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527p-16296L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b528p-16296L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527p-16296L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b528p-16296L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527p-16296L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b528p-16296L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527ba5179fb12a28p-16296L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527ba5179fb12a3p-16296L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527ba5179fb12a28p-16296L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527ba5179fb12a3p-16296L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.d5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d5ffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c127p-16284L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12708p-16284L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c127p-16284L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12708p-16284L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c127p-16284L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12708p-16284L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c127p-16284L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12708p-16284L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12707a975c5dc83e4p-16284L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12707a975c5dc83e4p-16284L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12707a975c5dc83e4p-16284L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12707a975c5dc83e8p-16284L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.d5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d5fffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6d6.00000000000008p0
+= tgamma downward flt-32 -0x6.d60008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.d60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.d60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.d60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.d60008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.d60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.d60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.d60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.d60008p+8L : -0x4.0669f97879582148p-16324L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d60008p+8L : -0x4.0669f97879582148p-16324L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d60008p+8L : -0x4.0669f9787958214p-16324L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d60008p+8L : -0x4.0669f9787958214p-16324L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d60008p+8L : -0x4.0669f97879582148p-16324L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d60008p+8L : -0x4.0669f97879582148p-16324L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d60008p+8L : -0x4.0669f9787958214p-16324L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d60008p+8L : -0x4.0669f9787958214p-16324L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d60008p+8L : -0x4.0669f97879582146f7297f556c28p-16324L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d60008p+8L : -0x4.0669f97879582146f7297f556c28p-16324L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d60008p+8L : -0x4.0669f97879582146f7297f556c24p-16324L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d60008p+8L : -0x4.0669f97879582146f7297f556c24p-16324L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d60008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.d60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.d600000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.d600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.d600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.d600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.d600000000004p+8L : -0x8.0eb51434767586fp-16296L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d600000000004p+8L : -0x8.0eb51434767586fp-16296L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d600000000004p+8L : -0x8.0eb51434767586ep-16296L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d600000000004p+8L : -0x8.0eb51434767586ep-16296L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d600000000004p+8L : -0x8.0eb51434767586fp-16296L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d600000000004p+8L : -0x8.0eb51434767586fp-16296L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d600000000004p+8L : -0x8.0eb51434767586ep-16296L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d600000000004p+8L : -0x8.0eb51434767586ep-16296L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d600000000004p+8L : -0x8.0eb51434767586e98e9a65727928p-16296L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d600000000004p+8L : -0x8.0eb51434767586e98e9a6572792p-16296L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d600000000004p+8L : -0x8.0eb51434767586e98e9a6572792p-16296L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d600000000004p+8L : -0x8.0eb51434767586e98e9a6572792p-16296L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d600000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.d600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45bp-16284L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45bp-16284L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45aaf0545e08dffcp-16284L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45aaf0545e08dff8p-16284L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45aaf0545e08dff8p-16284L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45aaf0545e08dff8p-16284L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d600000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.d600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6e2.fffffffffffff8p0
+= tgamma downward flt-32 -0x6.e2fff8p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.e2fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e2fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e2fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e2fff8p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e2fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e2fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e2fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e2fff8p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e2fff8p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e2fff8p+8L : -0x3.b2335954p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e2fff8p+8L : -0x3.b233595p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e2fff8p+8L : -0x3.b233595p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e2fff8p+8L : -0x3.b233595p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e2fff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e2ffffffffffcp+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e2ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e2ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e2ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e2ffffffffffcp+8L : -0x7.63p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e2ffffffffffcp+8L : -0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e2ffffffffffcp+8L : -0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e2ffffffffffcp+8L : -0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e2ffffffffffcp+8L : -0x7.62cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e2ffffffffffcp+8L : -0x7.62cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e2ffffffffffcp+8L : -0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e2ffffffffffcp+8L : -0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e2ffffffffffcp+8L : -0x7.62acd4c5e5169cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e2ffffffffffcp+8L : -0x7.62acd4c5e5169cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e2ffffffffffcp+8L : -0x7.62acd4c5e5169bcp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e2ffffffffffcp+8L : -0x7.62acd4c5e5169bcp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e2ffffffffffcp+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e2ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e2ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e2ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e2fffffffffffff8p+8L : -0x3.b1567p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e2fffffffffffff8p+8L : -0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e2fffffffffffff8p+8L : -0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e2fffffffffffff8p+8L : -0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e2fffffffffffff8p+8L : -0x3.b1566cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e2fffffffffffff8p+8L : -0x3.b1566cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e2fffffffffffff8p+8L : -0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e2fffffffffffff8p+8L : -0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e2fffffffffffff8p+8L : -0x3.b1566a62eba58dee84p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e2fffffffffffff8p+8L : -0x3.b1566a62eba58dee84p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e2fffffffffffff8p+8L : -0x3.b1566a62eba58dee8p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e2fffffffffffff8p+8L : -0x3.b1566a62eba58dee8p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e2fffffffffffff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e2fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e2fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e2fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6e3.00000000000008p0
+= tgamma downward flt-32 -0x6.e30008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.e30008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e30008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e30008p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e30008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e30008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e30008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e30008p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e30008p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e30008p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e30008p+8L : 0x3.b079b214p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e30008p+8L : 0x3.b079b214p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e30008p+8L : 0x3.b079b214p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e30008p+8L : 0x3.b079b218p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e30008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e300000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e300000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e300000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e300000000004p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e300000000004p+8L : 0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e300000000004p+8L : 0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e300000000004p+8L : 0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e300000000004p+8L : 0x7.63p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e300000000004p+8L : 0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e300000000004p+8L : 0x7.62cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e300000000004p+8L : 0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e300000000004p+8L : 0x7.62cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e300000000004p+8L : 0x7.62acd4c5c97c284p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e300000000004p+8L : 0x7.62acd4c5c97c288p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e300000000004p+8L : 0x7.62acd4c5c97c284p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e300000000004p+8L : 0x7.62acd4c5c97c288p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e300000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e300000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e300000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e300000000004p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e300000000000008p+8L : 0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e300000000000008p+8L : 0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e300000000000008p+8L : 0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e300000000000008p+8L : 0x3.b1567p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e300000000000008p+8L : 0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e300000000000008p+8L : 0x3.b1566cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e300000000000008p+8L : 0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e300000000000008p+8L : 0x3.b1566cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e300000000000008p+8L : 0x3.b1566a62eba3d44748p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e300000000000008p+8L : 0x3.b1566a62eba3d4474cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e300000000000008p+8L : 0x3.b1566a62eba3d44748p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e300000000000008p+8L : 0x3.b1566a62eba3d4474cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e300000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e300000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e300000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e300000000000008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6e3.fffffffffffff8p0
+= tgamma downward flt-32 -0x6.e3fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.e3fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e3fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e3fff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e3fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e3fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e3fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e3fff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e3fff8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e3fff8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e3fff8p+8L : 0x8.9512cp-16476L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e3fff8p+8L : 0x8.9512cp-16476L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e3fff8p+8L : 0x8.9512cp-16476L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e3fff8p+8L : 0x8.9513p-16476L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e3fff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e3ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e3ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e3ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e3ffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e3ffffffffffcp+8L : 0x1.8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e3ffffffffffcp+8L : 0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e3ffffffffffcp+8L : 0x1.12623994e1f8cp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e3ffffffffffcp+8L : 0x1.12623994e1f8cp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e3ffffffffffcp+8L : 0x1.12623994e1f8cp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e3ffffffffffcp+8L : 0x1.12623994e1f9p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e3ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e3ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e3ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e3ffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e3fffffffffffff8p+8L : 0x8.938p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e3fffffffffffff8p+8L : 0x8.934p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e3fffffffffffff8p+8L : 0x8.9311cca6ffc297cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e3fffffffffffff8p+8L : 0x8.9311cca6ffc298p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e3fffffffffffff8p+8L : 0x8.9311cca6ffc297cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e3fffffffffffff8p+8L : 0x8.9311cca6ffc298p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e3fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e3fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e3fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e3fffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6e4.00000000000008p0
+= tgamma downward flt-32 -0x6.e40008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.e40008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e40008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e40008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e40008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e40008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e40008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e40008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e40008p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e40008p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e40008p+8L : -0x8.91114p-16476L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e40008p+8L : -0x8.91114p-16476L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e40008p+8L : -0x8.9111p-16476L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e40008p+8L : -0x8.9111p-16476L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e40008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e400000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e400000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e400000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e400000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e400000000004p+8L : -0x1.8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e400000000004p+8L : -0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e400000000004p+8L : -0x1.12623994ddf78p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e400000000004p+8L : -0x1.12623994ddf74p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e400000000004p+8L : -0x1.12623994ddf74p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e400000000004p+8L : -0x1.12623994ddf74p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e400000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e400000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e400000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e400000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e400000000000008p+8L : -0x8.938p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e400000000000008p+8L : -0x8.934p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e400000000000008p+8L : -0x8.9311cca6ffbe968p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e400000000000008p+8L : -0x8.9311cca6ffbe968p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e400000000000008p+8L : -0x8.9311cca6ffbe964p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e400000000000008p+8L : -0x8.9311cca6ffbe964p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e400000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e400000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e400000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e400000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6e4.fffffffffffff8p0
+= tgamma downward flt-32 -0x6.e4fff8p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.e4fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e4fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e4fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e4fff8p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e4fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e4fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e4fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e4fff8p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e4fff8p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e4fff8p+8L : -0x1.3ecp-16484L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e4fff8p+8L : -0x1.3ecp-16484L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e4fff8p+8L : -0x1.3e8p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e4fff8p+8L : -0x1.3e8p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e4fff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e4ffffffffffcp+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e4ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e4ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e4ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e4ffffffffffcp+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e4ffffffffffcp+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e4ffffffffffcp+8L : -0x2.7cc1b7f54cp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e4ffffffffffcp+8L : -0x2.7cc1b7f548p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e4ffffffffffcp+8L : -0x2.7cc1b7f548p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e4ffffffffffcp+8L : -0x2.7cc1b7f548p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e4ffffffffffcp+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e4fffffffffffff8p+8L : -0x1.8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e4fffffffffffff8p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e4fffffffffffff8p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e4fffffffffffff8p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e4fffffffffffff8p+8L : -0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e4fffffffffffff8p+8L : -0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e4fffffffffffff8p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e4fffffffffffff8p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e4fffffffffffff8p+8L : -0x1.3e60dbfaa21f8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e4fffffffffffff8p+8L : -0x1.3e60dbfaa21f8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e4fffffffffffff8p+8L : -0x1.3e60dbfaa21f4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e4fffffffffffff8p+8L : -0x1.3e60dbfaa21f4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e4fffffffffffff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e4fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e4fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e4fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6e5.00000000000008p0
+= tgamma downward flt-32 -0x6.e50008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.e50008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e50008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e50008p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e50008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e50008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e50008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e50008p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e50008p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e50008p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e50008p+8L : 0x1.3ep-16484L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e50008p+8L : 0x1.3ep-16484L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e50008p+8L : 0x1.3ep-16484L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e50008p+8L : 0x1.3e4p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e50008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e500000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e500000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e500000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e500000000004p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e500000000004p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e500000000004p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e500000000004p+8L : 0x2.7cc1b7f53cp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e500000000004p+8L : 0x2.7cc1b7f54p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e500000000004p+8L : 0x2.7cc1b7f53cp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e500000000004p+8L : 0x2.7cc1b7f54p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e500000000004p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e500000000000008p+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e500000000000008p+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e500000000000008p+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e500000000000008p+8L : 0x1.8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e500000000000008p+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e500000000000008p+8L : 0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e500000000000008p+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e500000000000008p+8L : 0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e500000000000008p+8L : 0x1.3e60dbfaa21ecp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e500000000000008p+8L : 0x1.3e60dbfaa21ecp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e500000000000008p+8L : 0x1.3e60dbfaa21ecp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e500000000000008p+8L : 0x1.3e60dbfaa21fp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e500000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e500000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e500000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e500000000000008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6e5.fffffffffffff8p0
+= tgamma downward flt-32 -0x6.e5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.e5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e5fff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e5fff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e5fff8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e5fff8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e5fff8p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e5fff8p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e5fff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e5ffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e5ffffffffffcp+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e5ffffffffffcp+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e5ffffffffffcp+8L : 0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e5ffffffffffcp+8L : 0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e5ffffffffffcp+8L : 0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e5ffffffffffcp+8L : 0x5.c4df2acp-16468L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e5ffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e5fffffffffffff8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e5fffffffffffff8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e5fffffffffffff8p+8L : 0x2.e26f9542bp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e5fffffffffffff8p+8L : 0x2.e26f9542b4p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e5fffffffffffff8p+8L : 0x2.e26f9542bp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e5fffffffffffff8p+8L : 0x2.e26f9542b4p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e5fffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6e6.00000000000008p0
+= tgamma downward flt-32 -0x6.e60008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.e60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e60008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e60008p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e60008p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e60008p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e60008p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e60008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e600000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e600000000004p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e600000000004p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e600000000004p+8L : -0x5.c4df2acp-16468L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e600000000004p+8L : -0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e600000000004p+8L : -0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e600000000004p+8L : -0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e600000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e600000000000008p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e600000000000008p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e600000000000008p+8L : -0x2.e26f9542b4p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e600000000000008p+8L : -0x2.e26f9542b4p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e600000000000008p+8L : -0x2.e26f9542bp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e600000000000008p+8L : -0x2.e26f9542bp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e600000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma 0x8.0000000000000000000000000008p0
+= tgamma downward flt-32 0x8.00001p+0f : 0x1.3b0026p+12f : inexact-ok
+= tgamma tonearest flt-32 0x8.00001p+0f : 0x1.3b0028p+12f : inexact-ok
+= tgamma towardzero flt-32 0x8.00001p+0f : 0x1.3b0026p+12f : inexact-ok
+= tgamma upward flt-32 0x8.00001p+0f : 0x1.3b0028p+12f : inexact-ok
+= tgamma downward dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d78p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d79p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d78p+12 : inexact-ok
+= tgamma upward dbl-64 0x8.00001p+0 : 0x1.3b0027aed7d79p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.00001p+0L : 0x1.3b0027aed7d78ep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78dfep+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.00001p+0L : 0x1.3b0027aed7d78ep+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb51p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb52p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6ecebp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6ecebp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.00001p+0L : 0x1.3b0027aed7d78dfe30dbe6eceb8p+12L : inexact-ok
+= tgamma downward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma tonearest flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma towardzero flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma upward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma downward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma upward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000013p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000014p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000013p+12 : inexact-ok
+= tgamma upward dbl-64 0x8.0000000000008p+0 : 0x1.3b00000000014p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.0000000000008p+0L : 0x1.3b00000000013d78p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d76p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.0000000000008p+0L : 0x1.3b00000000013d78p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6263p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c6264p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c62p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c628p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c62p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.0000000000008p+0L : 0x1.3b00000000013d76aa158a2c628p+12L : inexact-ok
+= tgamma downward ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000026p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8.000000000000001p+0L : 0x1.3b00000000000028p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14577p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14578p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14577p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b14578p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b145p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b1458p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b145p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.000000000000001p+0L : 0x1.3b00000000000027aed542b1458p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.0000000000000000000000000008p+0L : 0x1.3b00000000000000000000000013p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.0000000000000000000000000008p+0L : 0x1.3b00000000000000000000000014p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.0000000000000000000000000008p+0L : 0x1.3b00000000000000000000000013p+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.0000000000000000000000000008p+0L : 0x1.3b00000000000000000000000014p+12L : inexact-ok
+= tgamma downward ldbl-128 0x8.00000000000000000000000004p+0L : 0x1.3b000000000000000000000009ebp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8.00000000000000000000000004p+0L : 0x1.3b000000000000000000000009ecp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8.00000000000000000000000004p+0L : 0x1.3b000000000000000000000009ebp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8.00000000000000000000000004p+0L : 0x1.3b000000000000000000000009ecp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8.00000000000000000000000004p+0L : 0x1.3b0000000000000000000000098p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8.00000000000000000000000004p+0L : 0x1.3b00000000000000000000000ap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8.00000000000000000000000004p+0L : 0x1.3b0000000000000000000000098p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8.00000000000000000000000004p+0L : 0x1.3b00000000000000000000000ap+12L : inexact-ok
+tgamma 0x7.fffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma tonearest flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma towardzero flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma upward flt-32 0x8p+0f : 0x1.3bp+12f : inexact-ok
+= tgamma downward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma towardzero dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma upward dbl-64 0x8p+0 : 0x1.3bp+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x8p+0L : 0x1.3bp+12L : inexact-ok
+= tgamma downward flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma tonearest flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma towardzero flt-32 0x7.fffff8p+0f : 0x1.3affecp+12f : inexact-ok
+= tgamma upward flt-32 0x7.fffff8p+0f : 0x1.3affeep+12f : inexact-ok
+= tgamma downward dbl-64 0x7.fffff8p+0 : 0x1.3affec289603dp+12 : inexact-ok
+= tgamma tonearest dbl-64 0x7.fffff8p+0 : 0x1.3affec289603ep+12 : inexact-ok
+= tgamma towardzero dbl-64 0x7.fffff8p+0 : 0x1.3affec289603dp+12 : inexact-ok
+= tgamma upward dbl-64 0x7.fffff8p+0 : 0x1.3affec289603ep+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.fffff8p+0L : 0x1.3affec289603de82p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.fffff8p+0L : 0x1.3affec289603de82p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67783p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67784p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67783p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f67784p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f6778p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.fffff8p+0L : 0x1.3affec289603de8066de83f678p+12L : inexact-ok
+= tgamma downward dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma tonearest dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma towardzero dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff6p+12 : inexact-ok
+= tgamma upward dbl-64 0x7.ffffffffffffcp+0 : 0x1.3affffffffff7p+12 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6146p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6146p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab7p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab8p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab7p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4ab8p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4a8p+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.ffffffffffffcp+0L : 0x1.3affffffffff6144aaf53aea4bp+12L : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffeep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffecp+12L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffeep+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d44p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d44p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d44p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d45p+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75dp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d8p+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75dp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.fffffffffffffff8p+0L : 0x1.3affffffffffffec28955ea75d8p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffffffffffffffffffffffffffcp+0L : 0x1.3afffffffffffffffffffffffff6p+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffffffffffffffffffffffffffcp+0L : 0x1.3afffffffffffffffffffffffff6p+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffffffffffffffffffffffffffcp+0L : 0x1.3afffffffffffffffffffffffff6p+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffffffffffffffffffffffffffcp+0L : 0x1.3afffffffffffffffffffffffff7p+12L : inexact-ok
+= tgamma downward ldbl-128 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffb0ap+12L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffb0ap+12L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffb0ap+12L : inexact-ok
+= tgamma upward ldbl-128 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffb0bp+12L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffbp+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffbp+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffbp+12L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.fffffffffffffffffffffffffep+0L : 0x1.3afffffffffffffffffffffffb8p+12L : inexact-ok
+tgamma 0x7.0000000000000000000000000004p0
+= tgamma downward flt-32 0x7.000008p+0f : 0x2.d00028p+8f : inexact-ok
+= tgamma tonearest flt-32 0x7.000008p+0f : 0x2.d0002cp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7.000008p+0f : 0x2.d00028p+8f : inexact-ok
+= tgamma upward flt-32 0x7.000008p+0f : 0x2.d0002cp+8f : inexact-ok
+= tgamma downward dbl-64 0x7.000008p+0 : 0x2.d0002a233e27ep+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7.000008p+0 : 0x2.d0002a233e28p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7.000008p+0 : 0x2.d0002a233e27ep+8 : inexact-ok
+= tgamma upward dbl-64 0x7.000008p+0 : 0x2.d0002a233e28p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.000008p+0L : 0x2.d0002a233e27fbd8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b116p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b118p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b1p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.000008p+0L : 0x2.d0002a233e27fbd735efb122b2p+8L : inexact-ok
+= tgamma downward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma tonearest flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma upward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma downward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma upward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward dbl-64 0x7.0000000000004p+0 : 0x2.d000000000014p+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7.0000000000004p+0 : 0x2.d000000000016p+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7.0000000000004p+0 : 0x2.d000000000014p+8 : inexact-ok
+= tgamma upward dbl-64 0x7.0000000000004p+0 : 0x2.d000000000016p+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.0000000000004p+0L : 0x2.d00000000001511cp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d000000000015118p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.0000000000004p+0L : 0x2.d00000000001511cp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005fep+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba005p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.0000000000004p+0L : 0x2.d000000000015119e6f40ba006p+8L : inexact-ok
+= tgamma downward ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d000000000000028p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7.0000000000000008p+0L : 0x2.d00000000000002cp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f6p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f6p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f6p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173f8p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8174p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8173p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.0000000000000008p+0L : 0x2.d00000000000002a233cde8174p+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.0000000000000000000000000004p+0L : 0x2.d000000000000000000000000014p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.0000000000000000000000000004p+0L : 0x2.d000000000000000000000000016p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.0000000000000000000000000004p+0L : 0x2.d000000000000000000000000014p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.0000000000000000000000000004p+0L : 0x2.d000000000000000000000000016p+8L : inexact-ok
+= tgamma downward ldbl-128 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000a88p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000a88p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000a88p+8L : inexact-ok
+= tgamma upward ldbl-128 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000a8ap+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000ap+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000bp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000ap+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7.00000000000000000000000002p+0L : 0x2.d000000000000000000000000bp+8L : inexact-ok
+tgamma 0x6.fffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma tonearest flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma towardzero flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma upward flt-32 0x7p+0f : 0x2.dp+8f : inexact-ok
+= tgamma downward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma tonearest dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma upward dbl-64 0x7p+0 : 0x2.dp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x7p+0L : 0x2.dp+8L : inexact-ok
+= tgamma downward flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma tonearest flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma towardzero flt-32 0x6.fffff8p+0f : 0x2.cfffd4p+8f : inexact-ok
+= tgamma upward flt-32 0x6.fffff8p+0f : 0x2.cfffd8p+8f : inexact-ok
+= tgamma downward dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46aep+8 : inexact-ok
+= tgamma tonearest dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46bp+8 : inexact-ok
+= tgamma towardzero dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46aep+8 : inexact-ok
+= tgamma upward dbl-64 0x6.fffff8p+0 : 0x2.cfffd5dcc46bp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e4p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8ep+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e4p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398162p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f398164p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3981p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.fffff8p+0L : 0x2.cfffd5dcc46af8e165622f3982p+8L : inexact-ok
+= tgamma downward dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma tonearest dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma towardzero dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffeap+8 : inexact-ok
+= tgamma upward dbl-64 0x6.ffffffffffffcp+0 : 0x2.cffffffffffecp+8 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ebep+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ecp+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ep+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609fp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609ep+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.ffffffffffffcp+0L : 0x2.cffffffffffeaee6190bf4609fp+8L : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd8p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd4p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd8p+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c08p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c0ap+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c08p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8c0ap+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8cp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8cp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8cp+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.fffffffffffffff8p+0L : 0x2.cfffffffffffffd5dcc3217e8dp+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffffffffffffffffffffffffffcp+0L : 0x2.cfffffffffffffffffffffffffeap+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffffffffffffffffffffffffffcp+0L : 0x2.cfffffffffffffffffffffffffeap+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffffffffffffffffffffffffffcp+0L : 0x2.cfffffffffffffffffffffffffeap+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffffffffffffffffffffffffffcp+0L : 0x2.cfffffffffffffffffffffffffecp+8L : inexact-ok
+= tgamma downward ldbl-128 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff576p+8L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff578p+8L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff576p+8L : inexact-ok
+= tgamma upward ldbl-128 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff578p+8L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff5p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff5p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff5p+8L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.fffffffffffffffffffffffffep+0L : 0x2.cffffffffffffffffffffffff6p+8L : inexact-ok
+tgamma 0x6.0000000000000000000000000004p0
+= tgamma downward flt-32 0x6.000008p+0f : 0x7.80006p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6.000008p+0f : 0x7.800068p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6.000008p+0f : 0x7.80006p+4f : inexact-ok
+= tgamma upward flt-32 0x6.000008p+0f : 0x7.800068p+4f : inexact-ok
+= tgamma downward dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6.000008p+0 : 0x7.8000665dfa8ccp+4 : inexact-ok
+= tgamma upward dbl-64 0x6.000008p+0 : 0x7.8000665dfa8dp+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8ccce8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.000008p+0L : 0x7.8000665dfa8cccfp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc4p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc4p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cc8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970cp+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.000008p+0L : 0x7.8000665dfa8cccefd41898970ep+4L : inexact-ok
+= tgamma downward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma upward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward dbl-64 0x6.0000000000004p+0 : 0x7.800000000003p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6.0000000000004p+0 : 0x7.8000000000034p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6.0000000000004p+0 : 0x7.800000000003p+4 : inexact-ok
+= tgamma upward dbl-64 0x6.0000000000004p+0 : 0x7.8000000000034p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332e8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.0000000000004p+0L : 0x7.80000000000332fp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd357455433p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd3574554334p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd357455433p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.0000000000004p+0L : 0x7.80000000000332efbd3574554334p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745542p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745544p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745542p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.0000000000004p+0L : 0x7.80000000000332efbd35745544p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.800000000000006p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.0000000000000008p+0L : 0x7.8000000000000068p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a9p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a9p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a9p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8a94p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8ap+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8ap+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8ap+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.0000000000000008p+0L : 0x7.80000000000000665df7a6ae8cp+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.0000000000000000000000000004p+0L : 0x7.800000000000000000000000003p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.0000000000000000000000000004p+0L : 0x7.8000000000000000000000000034p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.0000000000000000000000000004p+0L : 0x7.800000000000000000000000003p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.0000000000000000000000000004p+0L : 0x7.8000000000000000000000000034p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001994p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001998p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001994p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001998p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.00000000000000000000000002p+0L : 0x7.80000000000000000000000018p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001ap+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6.00000000000000000000000002p+0L : 0x7.80000000000000000000000018p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6.00000000000000000000000002p+0L : 0x7.8000000000000000000000001ap+4L : inexact-ok
+tgamma 0x5.fffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma upward flt-32 0x6p+0f : 0x7.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x6p+0 : 0x7.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x6p+0L : 0x7.8p+4L : inexact-ok
+= tgamma downward flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.fffff8p+0f : 0x7.7fff98p+4f : inexact-ok
+= tgamma upward flt-32 0x5.fffff8p+0f : 0x7.7fffap+4f : inexact-ok
+= tgamma downward dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f4p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f4p+4 : inexact-ok
+= tgamma upward dbl-64 0x5.fffff8p+0 : 0x7.7fff99a20b3f8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fb8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fcp+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43ep+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43e4p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43ep+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d43e4p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d42p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d44p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d42p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.fffff8p+0L : 0x7.7fff99a20b3f6fbd62f0251d44p+4L : inexact-ok
+= tgamma downward dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffccp+4 : inexact-ok
+= tgamma upward dbl-64 0x5.ffffffffffffcp+0 : 0x7.7ffffffffffdp+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd18p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd18p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fdcp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2fep+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2ep+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac3p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac2ep+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.ffffffffffffcp+0L : 0x7.7ffffffffffccd1042ca8bac3p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffffap+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff98p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffffap+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951756cp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951757p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951756cp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a2085951757p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595174p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595176p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595174p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.fffffffffffffff8p+0L : 0x7.7fffffffffffff99a208595176p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffffffffffffffffffffffffffcp+0L : 0x7.7fffffffffffffffffffffffffccp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffffffffffffffffffffffffffcp+0L : 0x7.7fffffffffffffffffffffffffccp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffffffffffffffffffffffffffcp+0L : 0x7.7fffffffffffffffffffffffffccp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffffffffffffffffffffffffffcp+0L : 0x7.7fffffffffffffffffffffffffdp+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe668p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe668p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe668p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe66cp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe6p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe6p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe6p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.fffffffffffffffffffffffffep+0L : 0x7.7fffffffffffffffffffffffe8p+4L : inexact-ok
+tgamma 0x5.0000000000000000000000000004p0
+= tgamma downward flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5.000008p+0f : 0x1.800012p+4f : inexact-ok
+= tgamma upward flt-32 0x5.000008p+0f : 0x1.800014p+4f : inexact-ok
+= tgamma downward dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.000008p+0 : 0x1.80001212cb98dp+4 : inexact-ok
+= tgamma upward dbl-64 0x5.000008p+0 : 0x1.80001212cb98ep+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b6p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.000008p+0L : 0x1.80001212cb98d7b8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561dp+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680561ep+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc68056p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.000008p+0L : 0x1.80001212cb98d7b702abc680568p+4L : inexact-ok
+= tgamma downward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma upward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5.0000000000004p+0 : 0x1.8000000000009p+4 : inexact-ok
+= tgamma upward dbl-64 0x5.0000000000004p+0 : 0x1.800000000000ap+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.0000000000004p+0L : 0x1.8000000000009098p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009096p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.0000000000004p+0L : 0x1.8000000000009098p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd302p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd303p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd302p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd303p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd3p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.0000000000004p+0L : 0x1.8000000000009096590ab0ddd38p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5.0000000000000008p+0L : 0x1.8000000000000014p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000012p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5.0000000000000008p+0L : 0x1.8000000000000014p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb6p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb7p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb6p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561bb7p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561b8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561b8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561b8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.0000000000000008p+0L : 0x1.800000000000001212cb21561cp+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.0000000000000000000000000004p+0L : 0x1.8000000000000000000000000009p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.0000000000000000000000000004p+0L : 0x1.8000000000000000000000000009p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.0000000000000000000000000004p+0L : 0x1.8000000000000000000000000009p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.0000000000000000000000000004p+0L : 0x1.800000000000000000000000000ap+4L : inexact-ok
+= tgamma downward ldbl-128 0x5.00000000000000000000000002p+0L : 0x1.8000000000000000000000000484p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5.00000000000000000000000002p+0L : 0x1.8000000000000000000000000485p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5.00000000000000000000000002p+0L : 0x1.8000000000000000000000000484p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5.00000000000000000000000002p+0L : 0x1.8000000000000000000000000485p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5.00000000000000000000000002p+0L : 0x1.800000000000000000000000048p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5.00000000000000000000000002p+0L : 0x1.800000000000000000000000048p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5.00000000000000000000000002p+0L : 0x1.800000000000000000000000048p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5.00000000000000000000000002p+0L : 0x1.80000000000000000000000005p+4L : inexact-ok
+tgamma 0x4.fffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma tonearest flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma towardzero flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma upward flt-32 0x5p+0f : 0x1.8p+4f : inexact-ok
+= tgamma downward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma upward dbl-64 0x5p+0 : 0x1.8p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x5p+0L : 0x1.8p+4L : inexact-ok
+= tgamma downward flt-32 0x4.fffff8p+0f : 0x1.7fffecp+4f : inexact-ok
+= tgamma tonearest flt-32 0x4.fffff8p+0f : 0x1.7fffeep+4f : inexact-ok
+= tgamma towardzero flt-32 0x4.fffff8p+0f : 0x1.7fffecp+4f : inexact-ok
+= tgamma upward flt-32 0x4.fffff8p+0f : 0x1.7fffeep+4f : inexact-ok
+= tgamma downward dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35562p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35563p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35562p+4 : inexact-ok
+= tgamma upward dbl-64 0x4.fffff8p+0 : 0x1.7fffeded35563p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7ap+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.fffff8p+0L : 0x1.7fffeded35562b7cp+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116ap+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116ap+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b116bp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b11p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b118p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b11p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.fffff8p+0L : 0x1.7fffeded35562b7b3742662b118p+4L : inexact-ok
+= tgamma downward dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff6p+4 : inexact-ok
+= tgamma tonearest dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff7p+4 : inexact-ok
+= tgamma towardzero dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff6p+4 : inexact-ok
+= tgamma upward dbl-64 0x4.ffffffffffffcp+0 : 0x1.7fffffffffff7p+4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f68p+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f6ap+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bep+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2268bfp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f22688p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.ffffffffffffcp+0L : 0x1.7fffffffffff6f69a6f54f2269p+4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffecp+4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeep+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e449p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e449p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e449p+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e44ap+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e4p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e48p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e4p+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.fffffffffffffff8p+0L : 0x1.7fffffffffffffeded34dea9e48p+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffffffffffffffffffffffffffcp+0L : 0x1.7ffffffffffffffffffffffffff6p+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffffffffffffffffffffffffffcp+0L : 0x1.7ffffffffffffffffffffffffff7p+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffffffffffffffffffffffffffcp+0L : 0x1.7ffffffffffffffffffffffffff6p+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffffffffffffffffffffffffffcp+0L : 0x1.7ffffffffffffffffffffffffff7p+4L : inexact-ok
+= tgamma downward ldbl-128 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb7bp+4L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb7bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb7bp+4L : inexact-ok
+= tgamma upward ldbl-128 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb7cp+4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffbp+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb8p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffbp+4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.fffffffffffffffffffffffffep+0L : 0x1.7ffffffffffffffffffffffffb8p+4L : inexact-ok
+tgamma 0x4.0000000000000000000000000004p0
+= tgamma downward flt-32 0x4.000008p+0f : 0x6.000038p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4.000008p+0f : 0x6.00004p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4.000008p+0f : 0x6.000038p+0f : inexact-ok
+= tgamma upward flt-32 0x4.000008p+0f : 0x6.00004p+0f : inexact-ok
+= tgamma downward dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4.000008p+0 : 0x6.00003c4b2deacp+0 : inexact-ok
+= tgamma upward dbl-64 0x4.000008p+0 : 0x6.00003c4b2debp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.000008p+0L : 0x6.00003c4b2deac888p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac88p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.000008p+0L : 0x6.00003c4b2deac888p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c4p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c44p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c4p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971c44p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971cp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.000008p+0L : 0x6.00003c4b2deac880351e19971ep+0L : inexact-ok
+= tgamma downward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma upward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma downward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma upward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward dbl-64 0x4.0000000000004p+0 : 0x6.000000000001cp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4.0000000000004p+0 : 0x6.000000000002p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4.0000000000004p+0 : 0x6.000000000001cp+0 : inexact-ok
+= tgamma upward dbl-64 0x4.0000000000004p+0 : 0x6.000000000002p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.0000000000004p+0L : 0x6.000000000001e26p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e258p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.0000000000004p+0L : 0x6.000000000001e26p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de4p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772de8p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772cp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772ep+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772cp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.0000000000004p+0L : 0x6.000000000001e259642ac3772ep+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.0000000000000038p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4.0000000000000008p+0L : 0x6.000000000000004p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ed8p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586edcp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ed8p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586edcp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ep+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ep+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85586ep+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.0000000000000008p+0L : 0x6.000000000000003c4b2c85587p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.0000000000000000000000000004p+0L : 0x6.000000000000000000000000001cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.0000000000000000000000000004p+0L : 0x6.000000000000000000000000002p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.0000000000000000000000000004p+0L : 0x6.000000000000000000000000001cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.0000000000000000000000000004p+0L : 0x6.000000000000000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000f1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000f14p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000f1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000f14p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000ep+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000001p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000000ep+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4.00000000000000000000000002p+0L : 0x6.0000000000000000000000001p+0L : inexact-ok
+tgamma 0x3.fffffffffffffffffffffffffffep0
+= tgamma downward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma tonearest flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma towardzero flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma upward flt-32 0x4p+0f : 0x6p+0f : inexact-ok
+= tgamma downward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma upward dbl-64 0x4p+0 : 0x6p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x4p+0L : 0x6p+0L : inexact-ok
+= tgamma downward flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.fffffcp+0f : 0x5.ffffep+0f : inexact-ok
+= tgamma upward flt-32 0x3.fffffcp+0f : 0x5.ffffe8p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a168p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a16cp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a168p+0 : inexact-ok
+= tgamma upward dbl-64 0x3.fffffcp+0 : 0x5.ffffe1da6a16cp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.fffffcp+0L : 0x5.ffffe1da6a16afdp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afc8p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.fffffcp+0L : 0x5.ffffe1da6a16afdp+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8646cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a8647p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a864p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.fffffcp+0L : 0x5.ffffe1da6a16afcaaed619a866p+0L : inexact-ok
+= tgamma downward dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffffp+0 : inexact-ok
+= tgamma upward dbl-64 0x3.ffffffffffffep+0 : 0x5.ffffffffffff4p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed8p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0edp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed8p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac14p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44ac14p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44acp+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.ffffffffffffep+0L : 0x5.ffffffffffff0ed34dea9e44aep+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe8p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe8p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c89p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c894p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c89p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c894p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53c8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.fffffffffffffffcp+0L : 0x5.ffffffffffffffe1da69bd53cap+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.fffffffffffffffffffffffffffep+0L : 0x5.fffffffffffffffffffffffffffp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.fffffffffffffffffffffffffffep+0L : 0x5.fffffffffffffffffffffffffffp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.fffffffffffffffffffffffffffep+0L : 0x5.fffffffffffffffffffffffffffp+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.fffffffffffffffffffffffffffep+0L : 0x5.fffffffffffffffffffffffffff4p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff874p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff878p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff874p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff878p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffff8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.ffffffffffffffffffffffffffp+0L : 0x5.fffffffffffffffffffffffffap+0L : inexact-ok
+tgamma 0x3.0000000000000000000000000002p0
+= tgamma downward flt-32 0x3.000004p+0f : 0x2.000004p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3.000004p+0f : 0x2.000008p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3.000004p+0f : 0x2.000004p+0f : inexact-ok
+= tgamma upward flt-32 0x3.000004p+0f : 0x2.000008p+0f : inexact-ok
+= tgamma downward dbl-64 0x3.000004p+0 : 0x2.00000761dcd4cp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.000004p+0 : 0x2.00000761dcd4ep+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.000004p+0 : 0x2.00000761dcd4cp+0 : inexact-ok
+= tgamma upward dbl-64 0x3.000004p+0 : 0x2.00000761dcd4ep+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d594p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.000004p+0L : 0x2.00000761dcd4d598p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b698p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b69ap+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b698p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b69ap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b6p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b7p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b6p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.000004p+0L : 0x2.00000761dcd4d597e6231257b7p+0L : inexact-ok
+= tgamma downward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma upward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma downward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma upward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward dbl-64 0x3.0000000000002p+0 : 0x2.0000000000002p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3.0000000000002p+0 : 0x2.0000000000004p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3.0000000000002p+0 : 0x2.0000000000002p+0 : inexact-ok
+= tgamma upward dbl-64 0x3.0000000000002p+0 : 0x2.0000000000004p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b0cp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.0000000000002p+0L : 0x2.0000000000003b1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d312p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d314p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d312p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d314p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d3p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.0000000000002p+0L : 0x2.0000000000003b0ee6072093d4p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000004p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.0000000000000004p+0L : 0x2.0000000000000008p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e41278p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e4127ap+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e41278p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e4127ap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e412p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e412p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e412p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.0000000000000004p+0L : 0x2.000000000000000761dcc0e413p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.0000000000000000000000000002p+0L : 0x2.0000000000000000000000000002p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.0000000000000000000000000002p+0L : 0x2.0000000000000000000000000004p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.0000000000000000000000000002p+0L : 0x2.0000000000000000000000000002p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.0000000000000000000000000002p+0L : 0x2.0000000000000000000000000004p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001d8p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001d8p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001d8p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001dap+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000002p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000001p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3.00000000000000000000000001p+0L : 0x2.00000000000000000000000002p+0L : inexact-ok
+tgamma 0x2.fffffffffffffffffffffffffffep0
+= tgamma downward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma tonearest flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma towardzero flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma upward flt-32 0x3p+0f : 0x2p+0f : inexact-ok
+= tgamma downward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma upward dbl-64 0x3p+0 : 0x2p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x3p+0L : 0x2p+0L : inexact-ok
+= tgamma downward flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.fffffcp+0f : 0x1.fffff8p+0f : inexact-ok
+= tgamma upward flt-32 0x2.fffffcp+0f : 0x1.fffffap+0f : inexact-ok
+= tgamma downward dbl-64 0x2.fffffcp+0 : 0x1.fffff89e2353p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.fffffcp+0 : 0x1.fffff89e23531p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.fffffcp+0 : 0x1.fffff89e2353p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.fffffcp+0 : 0x1.fffff89e23531p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.fffffcp+0L : 0x1.fffff89e23530d74p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d72p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.fffffcp+0L : 0x1.fffff89e23530d74p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c2p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c3p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c2p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c426c3p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c4268p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c427p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c4268p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.fffffcp+0L : 0x1.fffff89e23530d72a903f6c427p+0L : inexact-ok
+= tgamma downward dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffcp+0 : inexact-ok
+= tgamma upward dbl-64 0x2.ffffffffffffep+0 : 0x1.ffffffffffffdp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4fp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f2p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e5p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e6p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e5p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c36e6p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c368p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c37p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c368p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.ffffffffffffep+0L : 0x1.ffffffffffffc4f119f8df6c37p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffffap+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff8p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffffap+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed86p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed86p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed86p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed87p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1bed8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.fffffffffffffffcp+0L : 0x1.fffffffffffffff89e233f1beep+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.fffffffffffffffffffffffffffep+0L : 0x1.fffffffffffffffffffffffffffcp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.fffffffffffffffffffffffffffep+0L : 0x1.fffffffffffffffffffffffffffcp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.fffffffffffffffffffffffffffep+0L : 0x1.fffffffffffffffffffffffffffcp+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.fffffffffffffffffffffffffffep+0L : 0x1.fffffffffffffffffffffffffffdp+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffe27p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffe28p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffe27p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffe28p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffep+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffep+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffep+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.ffffffffffffffffffffffffffp+0L : 0x1.fffffffffffffffffffffffffe8p+0L : inexact-ok
+tgamma 0x2.0000000000000000000000000002p0
+= tgamma downward flt-32 0x2.000004p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2.000004p+0f : 0x1.000002p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2.000004p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2.000004p+0f : 0x1.000002p+0f : inexact-ok
+= tgamma downward dbl-64 0x2.000004p+0 : 0x1.000001b0ee67p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.000004p+0 : 0x1.000001b0ee671p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.000004p+0 : 0x1.000001b0ee67p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.000004p+0 : 0x1.000001b0ee671p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708eep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.000004p+0L : 0x1.000001b0ee6708fp+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf7p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dbf8p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1db8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dcp+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1db8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.000004p+0L : 0x1.000001b0ee6708ef24ffaae1dcp+0L : inexact-ok
+= tgamma downward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward dbl-64 0x2.0000000000002p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2.0000000000002p+0 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2.0000000000002p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2.0000000000002p+0 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d86p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.0000000000002p+0L : 0x1.0000000000000d88p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e8b2p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e88p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.0000000000002p+0L : 0x1.0000000000000d8773039049e9p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.0000000000000004p+0L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093dp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072093dp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee607209p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee607209p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee607209p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.0000000000000004p+0L : 0x1.0000000000000001b0ee6072098p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.0000000000000000000000000002p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.0000000000000000000000000002p+0L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.0000000000000000000000000002p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.0000000000000000000000000002p+0L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000006cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000006cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000006cp+0L : inexact-ok
+= tgamma upward ldbl-128 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000006dp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.00000000000000000000000001p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000008p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.00000000000000000000000001p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.00000000000000000000000001p+0L : 0x1.000000000000000000000000008p+0L : inexact-ok
+tgamma 0x1.ffffffffffffffffffffffffffffp0
+= tgamma downward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x2p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x2p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2p+0L : 0x1p+0L : inexact-ok
+= tgamma downward flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.fffffep+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma upward flt-32 0x1.fffffep+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1.fffffep+0 : 0xf.fffff2788d168p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.fffffep+0 : 0xf.fffff2788d17p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.fffffep+0 : 0xf.fffff2788d168p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.fffffep+0 : 0xf.fffff2788d17p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb4p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffep+0L : 0xf.fffff2788d16cb5p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac58p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dac6p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dacp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffep+0L : 0xf.fffff2788d16cb4d9a1a3c3dbp-4L : inexact-ok
+= tgamma downward dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.fffffffffffffp+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.fffffffffffffp+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93dp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93cp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93dp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce38p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ce4p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ccp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0dp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0ccp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffffffffffp+0L : 0xf.ffffffffffff93c467e37db0dp-4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.fffffffffffffffep+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.fffffffffffffffep+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb618p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb618p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb618p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb62p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb4p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb8p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb4p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.fffffffffffffffep+0L : 0xf.fffffffffffffff2788cfc6fb8p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.ffffffffffffffffffffffffffffp+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.ffffffffffffffffffffffffffffp+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.ffffffffffffffffffffffffffffp+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.ffffffffffffffffffffffffffffp+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffc98p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffcap-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffc98p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffcap-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.ffffffffffffffffffffffffff8p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.ffffffffffffffffffffffffff8p+0L : 0x1p+0L : inexact-ok
+tgamma 0x1.0000000000000000000000000001p0
+= tgamma downward flt-32 0x1.000002p+0f : 0xf.ffffep-4f : inexact-ok
+= tgamma tonearest flt-32 0x1.000002p+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma towardzero flt-32 0x1.000002p+0f : 0xf.ffffep-4f : inexact-ok
+= tgamma upward flt-32 0x1.000002p+0f : 0xf.fffffp-4f : inexact-ok
+= tgamma downward dbl-64 0x1.000002p+0 : 0xf.ffffed8773428p-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.000002p+0 : 0xf.ffffed877343p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.000002p+0 : 0xf.ffffed8773428p-4 : inexact-ok
+= tgamma upward dbl-64 0x1.000002p+0 : 0xf.ffffed877343p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342dcfp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.000002p+0L : 0xf.ffffed877342ddp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b03p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b038p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77bp-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.000002p+0L : 0xf.ffffed877342dcfaf7594b77b4p-4L : inexact-ok
+= tgamma downward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffffp-4 : inexact-ok
+= tgamma tonearest dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma towardzero dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffffp-4 : inexact-ok
+= tgamma upward dbl-64 0x1.0000000000001p+0 : 0xf.ffffffffffff8p-4 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.0000000000001p+0L : 0xf.ffffffffffff6c4p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4828p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f483p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4828p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f483p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f48p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.0000000000001p+0L : 0xf.ffffffffffff6c3b981c824f4cp-4L : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.ffffffffffffffep-4L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.0000000000000002p+0L : 0xf.fffffffffffffffp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049ep-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049e8p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049ep-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039049e8p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039048p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039048p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed8773039048p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.0000000000000002p+0L : 0xf.ffffffffffffffed877303904cp-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.0000000000000000000000000001p+0L : 0xf.fffffffffffffffffffffffffffp-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.0000000000000000000000000001p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.0000000000000000000000000001p+0L : 0xf.fffffffffffffffffffffffffffp-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.0000000000000000000000000001p+0L : 0xf.fffffffffffffffffffffffffff8p-4L : inexact-ok
+= tgamma downward ldbl-128 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffb6p-4L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffb6p-4L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffb6p-4L : inexact-ok
+= tgamma upward ldbl-128 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffb68p-4L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffff8p-4L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.000000000000000000000000008p+0L : 0xf.fffffffffffffffffffffffffcp-4L : inexact-ok
+tgamma 0x0.ffffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0x1p+0f : 0x1p+0f : inexact-ok
+= tgamma downward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0x1p+0 : 0x1p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1p+0L : 0x1p+0L : inexact-ok
+= tgamma downward flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma tonearest flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma towardzero flt-32 0xf.fffffp-4f : 0x1p+0f : inexact-ok
+= tgamma upward flt-32 0xf.fffffp-4f : 0x1.000002p+0f : inexact-ok
+= tgamma downward dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma tonearest dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma towardzero dbl-64 0xf.fffffp-4 : 0x1.00000093c468ep+0 : inexact-ok
+= tgamma upward dbl-64 0xf.fffffp-4 : 0x1.00000093c468fp+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.fffffp-4L : 0x1.00000093c468e0b2p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0bp+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.fffffp-4L : 0x1.00000093c468e0b2p+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6dfp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6ep+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6dfp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af6ep+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af68p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af7p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af68p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.fffffp-4L : 0x1.00000093c468e0b077c1ce0af7p+0L : inexact-ok
+= tgamma downward dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma tonearest dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma towardzero dbl-64 0xf.ffffffffffff8p-4 : 0x1p+0 : inexact-ok
+= tgamma upward dbl-64 0xf.ffffffffffff8p-4 : 0x1.0000000000001p+0 : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.ffffffffffff8p-4L : 0x1.00000000000004ap+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.000000000000049ep+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.ffffffffffff8p-4L : 0x1.00000000000004ap+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867cp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed867dp+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed86p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed868p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed86p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.ffffffffffff8p-4L : 0x1.000000000000049e233f1bed868p+0L : inexact-ok
+= tgamma downward ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-intel 0xf.fffffffffffffffp-4L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xf.fffffffffffffffp-4L : 0x1.0000000000000002p+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37dbp+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37db1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37dbp+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37db1p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37d8p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37d8p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37d8p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.fffffffffffffffp-4L : 0x1.000000000000000093c467e37ep+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffffffffffffffffffffffff8p-4L : 0x1.0000000000000000000000000001p+0L : inexact-ok
+= tgamma downward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L : 0x1.0000000000000000000000000024p+0L : inexact-ok
+= tgamma tonearest ldbl-128 0xf.fffffffffffffffffffffffffcp-4L : 0x1.0000000000000000000000000025p+0L : inexact-ok
+= tgamma towardzero ldbl-128 0xf.fffffffffffffffffffffffffcp-4L : 0x1.0000000000000000000000000024p+0L : inexact-ok
+= tgamma upward ldbl-128 0xf.fffffffffffffffffffffffffcp-4L : 0x1.0000000000000000000000000025p+0L : inexact-ok
+= tgamma downward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L : 0x1p+0L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L : 0x1p+0L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L : 0x1p+0L : inexact-ok
+= tgamma upward ldbl-128ibm 0xf.fffffffffffffffffffffffffcp-4L : 0x1.000000000000000000000000008p+0L : inexact-ok
+tgamma -0x0.ffffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0xf.fffffp-4f : -0x1.000002p+24f : inexact-ok
+= tgamma tonearest flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma towardzero flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma upward flt-32 -0xf.fffffp-4f : -0x1p+24f : inexact-ok
+= tgamma downward dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b999p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma upward dbl-64 -0xf.fffffp-4 : -0x1.0000006c3b998p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985f2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985f2p+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.fffffp-4L : -0x1.0000006c3b9985fp+24L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f1p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f1p+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f0fp+24L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f0fp+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6f8p+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.fffffp-4L : -0x1.0000006c3b9985f0ade7d3fc6fp+24L : inexact-ok
+= tgamma downward dbl-64 -0xf.ffffffffffff8p-4 : -0x2.0000000000002p+52 : inexact-ok
+= tgamma tonearest dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma towardzero dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma upward dbl-64 -0xf.ffffffffffff8p-4 : -0x2p+52 : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006c4p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.ffffffffffff8p-4L : -0x2.00000000000006cp+52L : inexact-ok
+= tgamma downward ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f43ap+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f43ap+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f438p+52L : inexact-ok
+= tgamma upward ldbl-128 -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f438p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f5p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.ffffffffffff8p-4L : -0x2.00000000000006c3b981c824f4p+52L : inexact-ok
+= tgamma downward ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1.0000000000000002p+64L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1.0000000000000002p+64L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.fffffffffffffffp-4L : -0x1p+64L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824fp+64L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824fp+64L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824ep+64L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c824ep+64L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c828p+64L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c828p+64L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c82p+64L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.fffffffffffffffp-4L : -0x1.00000000000000006c3b981c82p+64L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffffffffffffffffffffffff8p-4L : -0x2p+112L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffffffffffffffffffffffff8p-4L : -0x2p+112L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffffffffffffffffffffffff8p-4L : -0x1.ffffffffffffffffffffffffffffp+112L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffffffffffffffffffffffff8p-4L : -0x1.ffffffffffffffffffffffffffffp+112L : inexact-ok
+= tgamma downward ldbl-128 -0xf.fffffffffffffffffffffffffcp-4L : -0x4.000000000000000000000000006cp+104L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.fffffffffffffffffffffffffcp-4L : -0x4.000000000000000000000000006cp+104L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.fffffffffffffffffffffffffcp-4L : -0x4.0000000000000000000000000068p+104L : inexact-ok
+= tgamma upward ldbl-128 -0xf.fffffffffffffffffffffffffcp-4L : -0x4.0000000000000000000000000068p+104L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.fffffffffffffffffffffffffcp-4L : -0x4.00000000000000000000000002p+104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xf.fffffffffffffffffffffffffcp-4L : -0x4p+104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xf.fffffffffffffffffffffffffcp-4L : -0x4p+104L : inexact-ok
+= tgamma upward ldbl-128ibm -0xf.fffffffffffffffffffffffffcp-4L : -0x4p+104L : inexact-ok
+tgamma -0x1.0000000000000000000000000001p0
+= tgamma downward flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma tonearest flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x1.000002p+0f : 0x7.fffff8p+20f : inexact-ok
+= tgamma upward flt-32 -0x1.000002p+0f : 0x8p+20f : inexact-ok
+= tgamma downward dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab4p+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab8p+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab4p+20 : inexact-ok
+= tgamma upward dbl-64 -0x1.000002p+0 : 0x7.fffff93c46ab8p+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65ap+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.000002p+0L : 0x7.fffff93c46ab65a8p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc4p+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc8p+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc4p+20L : inexact-ok
+= tgamma upward ldbl-128 -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cc8p+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6cp+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.000002p+0L : 0x7.fffff93c46ab65a6b1fe38cc6ep+20L : inexact-ok
+= tgamma downward dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.0000000000001p+0 : 0xf.ffffffffffff8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x1.0000000000001p+0 : 0x1p+52 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.0000000000001p+0L : 0xf.ffffffffffff93dp+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93cp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.0000000000001p+0L : 0xf.ffffffffffff93dp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de38p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0de4p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0dcp+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0ep+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0dcp+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.0000000000001p+0L : 0xf.ffffffffffff93c467e37db0ep+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.0000000000000002p+0L : 0x8p+60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.0000000000000002p+0L : 0x7.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.0000000000000002p+0L : 0x8p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db0cp+60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db0cp+60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db0cp+60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37db1p+60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dap+60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dcp+60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dap+60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.0000000000000002p+0L : 0x7.fffffffffffffff93c467e37dcp+60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.0000000000000000000000000001p+0L : 0xf.fffffffffffffffffffffffffff8p+108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.0000000000000000000000000001p+0L : 0xf.fffffffffffffffffffffffffff8p+108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.0000000000000000000000000001p+0L : 0xf.fffffffffffffffffffffffffff8p+108L : inexact-ok
+= tgamma upward ldbl-128 -0x1.0000000000000000000000000001p+0L : 0x1p+112L : inexact-ok
+= tgamma downward ldbl-128 -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff93p+104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff94p+104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff93p+104L : inexact-ok
+= tgamma upward ldbl-128 -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff94p+104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff8p+104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff8p+104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.000000000000000000000000008p+0L : 0x1.ffffffffffffffffffffffffff8p+104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.000000000000000000000000008p+0L : 0x2p+104L : inexact-ok
+tgamma -0x1.ffffffffffffffffffffffffffffp0
+= tgamma downward flt-32 -0x1.fffffep+0f : 0x4p+20f : inexact-ok
+= tgamma tonearest flt-32 -0x1.fffffep+0f : 0x4.000008p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x1.fffffep+0f : 0x4p+20f : inexact-ok
+= tgamma upward flt-32 -0x1.fffffep+0f : 0x4.000008p+20f : inexact-ok
+= tgamma downward dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdecp+20 : inexact-ok
+= tgamma upward dbl-64 -0x1.fffffep+0 : 0x4.00000761dcdfp+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcdp+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffep+0L : 0x4.00000761dcdedcd8p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dacp+20L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032dbp+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032cp+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032ep+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032cp+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffep+0L : 0x4.00000761dcdedcd54ba919032ep+20L : inexact-ok
+= tgamma downward dbl-64 -0x1.fffffffffffffp+0 : 0x8p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.fffffffffffffp+0 : 0x8.0000000000008p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.fffffffffffffp+0 : 0x8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x1.fffffffffffffp+0 : 0x8.0000000000008p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000761p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffffffffffp+0L : 0x8.000000000000762p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab28p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127ab3p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127a8p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127acp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127a8p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffffffffffp+0L : 0x8.000000000000761dcc0e4127acp+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4p+60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.fffffffffffffffep+0L : 0x4.0000000000000008p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e41278p+60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e41278p+60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e41278p+60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e4127cp+60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e412p+60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e412p+60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e412p+60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.fffffffffffffffep+0L : 0x4.000000000000000761dcc0e414p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.ffffffffffffffffffffffffffffp+0L : 0x8p+108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.ffffffffffffffffffffffffffffp+0L : 0x8.0000000000000000000000000008p+108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.ffffffffffffffffffffffffffffp+0L : 0x8p+108L : inexact-ok
+= tgamma upward ldbl-128 -0x1.ffffffffffffffffffffffffffffp+0L : 0x8.0000000000000000000000000008p+108L : inexact-ok
+= tgamma downward ldbl-128 -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.0000000000000000000000000076p+104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.0000000000000000000000000076p+104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.0000000000000000000000000076p+104L : inexact-ok
+= tgamma upward ldbl-128 -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.0000000000000000000000000077p+104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.ffffffffffffffffffffffffff8p+0L : 0x1p+104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.000000000000000000000000008p+104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.ffffffffffffffffffffffffff8p+0L : 0x1p+104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.ffffffffffffffffffffffffff8p+0L : 0x1.000000000000000000000000008p+104L : inexact-ok
+tgamma -0x2.0000000000000000000000000002p0
+= tgamma downward flt-32 -0x2.000004p+0f : -0x1.fffffap+20f : inexact-ok
+= tgamma tonearest flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma towardzero flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma upward flt-32 -0x2.000004p+0f : -0x1.fffff8p+20f : inexact-ok
+= tgamma downward dbl-64 -0x2.000004p+0 : -0x1.fffff89e237b1p+20 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.000004p+0 : -0x1.fffff89e237b1p+20 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.000004p+0 : -0x1.fffff89e237bp+20 : inexact-ok
+= tgamma upward dbl-64 -0x2.000004p+0 : -0x1.fffff89e237bp+20 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d74p+20L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d74p+20L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.000004p+0L : -0x1.fffff89e237b0d72p+20L : inexact-ok
+= tgamma downward ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133afp+20L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma upward ldbl-128 -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe133aep+20L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe134p+20L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.000004p+0L : -0x1.fffff89e237b0d72155ebbe1338p+20L : inexact-ok
+= tgamma downward dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffffap+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma upward dbl-64 -0x2.0000000000002p+0 : -0x3.ffffffffffff8p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89e4p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.0000000000002p+0L : -0x3.ffffffffffff89ep+48L : inexact-ok
+= tgamma downward ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881ccp+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma upward ldbl-128 -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881cap+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed882p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed882p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.0000000000002p+0L : -0x3.ffffffffffff89e233f1bed881p+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffffap+60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffffap+60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.0000000000000004p+0L : -0x1.fffffffffffffff8p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed86p+60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed86p+60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed85p+60L : inexact-ok
+= tgamma upward ldbl-128 -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed85p+60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1beep+60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed8p+60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed8p+60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.0000000000000004p+0L : -0x1.fffffffffffffff89e233f1bed8p+60L : inexact-ok
+= tgamma downward ldbl-128 -0x2.0000000000000000000000000002p+0L : -0x3.fffffffffffffffffffffffffffap+108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.0000000000000000000000000002p+0L : -0x3.fffffffffffffffffffffffffff8p+108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.0000000000000000000000000002p+0L : -0x3.fffffffffffffffffffffffffff8p+108L : inexact-ok
+= tgamma upward ldbl-128 -0x2.0000000000000000000000000002p+0L : -0x3.fffffffffffffffffffffffffff8p+108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff8ap+100L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff89cp+100L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff89cp+100L : inexact-ok
+= tgamma upward ldbl-128 -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff89cp+100L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffffap+100L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff8p+100L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff8p+100L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.00000000000000000000000001p+0L : -0x7.fffffffffffffffffffffffff8p+100L : inexact-ok
+tgamma -0x2.fffffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x2.fffffcp+0f : -0xa.aaaafp+16f : inexact-ok
+= tgamma tonearest flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma towardzero flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma upward flt-32 -0x2.fffffcp+0f : -0xa.aaaaep+16f : inexact-ok
+= tgamma downward dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c5p+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c5p+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c48p+16 : inexact-ok
+= tgamma upward dbl-64 -0x2.fffffcp+0 : -0xa.aaaae042d3c48p+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc5p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc5p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc4p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d420208p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4202p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4204p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d4204p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d42p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.fffffcp+0L : -0xa.aaaae042d3c4cc478fe77d42p+16L : inexact-ok
+= tgamma downward dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555559p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555559p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555558p+48 : inexact-ok
+= tgamma upward dbl-64 -0x2.ffffffffffffep+0 : -0x1.5555555555558p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aeep+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.ffffffffffffep+0L : -0x1.5555555555558aecp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792cp+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792cp+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792bp+48L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b792bp+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b798p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.ffffffffffffep+0L : -0x1.5555555555558aed7ce84e9b79p+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaafp+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaafp+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaaep+56L : inexact-ok
+= tgamma downward ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0c8p+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0cp+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0cp+56L : inexact-ok
+= tgamma upward ldbl-128 -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f0cp+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3f4p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3fp+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3fp+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.fffffffffffffffcp+0L : -0xa.aaaaaaaaaaaaaae042d23da3fp+56L : inexact-ok
+= tgamma downward ldbl-128 -0x2.fffffffffffffffffffffffffffep+0L : -0x1.5555555555555555555555555559p+108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.fffffffffffffffffffffffffffep+0L : -0x1.5555555555555555555555555558p+108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.fffffffffffffffffffffffffffep+0L : -0x1.5555555555555555555555555558p+108L : inexact-ok
+= tgamma upward ldbl-128 -0x2.fffffffffffffffffffffffffffep+0L : -0x1.5555555555555555555555555558p+108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaae04p+100L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaae04p+100L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaae02p+100L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaae02p+100L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaafp+100L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaaep+100L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaaep+100L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.ffffffffffffffffffffffffffp+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaaep+100L : inexact-ok
+tgamma -0x3.0000000000000000000000000002p0
+= tgamma downward flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma towardzero flt-32 -0x3.000004p+0f : 0xa.aaaa7p+16f : inexact-ok
+= tgamma upward flt-32 -0x3.000004p+0f : 0xa.aaaa8p+16f : inexact-ok
+= tgamma downward dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849e8p+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849fp+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849e8p+16 : inexact-ok
+= tgamma upward dbl-64 -0x3.000004p+0 : 0xa.aaaa7512849fp+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9ap+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.000004p+0L : 0xa.aaaa7512849ed9bp+16L : inexact-ok
+= tgamma downward ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c5533833p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338338p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c553384p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c55338p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.000004p+0L : 0xa.aaaa7512849ed9af9e2c553384p+16L : inexact-ok
+= tgamma downward dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555551p+48 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555552p+48 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555551p+48 : inexact-ok
+= tgamma upward dbl-64 -0x3.0000000000002p+0 : 0x1.5555555555552p+48 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbcp+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.0000000000002p+0L : 0x1.5555555555551fbep+48L : inexact-ok
+= tgamma downward ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f1p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f49f2p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f498p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f4ap+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f498p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.0000000000002p+0L : 0x1.5555555555551fbd2dc25c0f4ap+48L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa8p+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa7p+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa8p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b1649p+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b1649p+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b1649p+56L : inexact-ok
+= tgamma upward ldbl-128 -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b16498p+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b164p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b164p+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b164p+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.0000000000000004p+0L : 0xa.aaaaaaaaaaaaaa75128317b168p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x3.0000000000000000000000000002p+0L : 0x1.5555555555555555555555555551p+108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.0000000000000000000000000002p+0L : 0x1.5555555555555555555555555552p+108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.0000000000000000000000000002p+0L : 0x1.5555555555555555555555555551p+108L : inexact-ok
+= tgamma upward ldbl-128 -0x3.0000000000000000000000000002p+0L : 0x1.5555555555555555555555555552p+108L : inexact-ok
+= tgamma downward ldbl-128 -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa75p+100L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa752p+100L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa75p+100L : inexact-ok
+= tgamma upward ldbl-128 -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa752p+100L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa7p+100L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa7p+100L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa7p+100L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.00000000000000000000000001p+0L : 0x2.aaaaaaaaaaaaaaaaaaaaaaaaa8p+100L : inexact-ok
+tgamma -0x3.fffffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x3.fffffcp+0f : 0x2.aaaab8p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x3.fffffcp+0f : 0x2.aaaabcp+16f : inexact-ok
+= tgamma towardzero flt-32 -0x3.fffffcp+0f : 0x2.aaaab8p+16f : inexact-ok
+= tgamma upward flt-32 -0x3.fffffcp+0f : 0x2.aaaabcp+16f : inexact-ok
+= tgamma downward dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5fabep+16 : inexact-ok
+= tgamma upward dbl-64 -0x3.fffffcp+0 : 0x2.aaaababb5facp+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.fffffcp+0L : 0x2.aaaababb5fabee74p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee7p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.fffffcp+0L : 0x2.aaaababb5fabee74p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068dp+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068d2p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068dp+16L : inexact-ok
+= tgamma upward ldbl-128 -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068d2p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e069p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e068p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.fffffcp+0L : 0x2.aaaababb5fabee718fe850e069p+16L : inexact-ok
+= tgamma downward dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555564p+44 : inexact-ok
+= tgamma upward dbl-64 -0x3.ffffffffffffep+0 : 0x5.5555555555568p+44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.ffffffffffffep+0L : 0x5.5555555555565668p+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.555555555556566p+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.ffffffffffffep+0L : 0x5.5555555555565668p+44L : inexact-ok
+= tgamma downward ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be518976p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be5189764p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be518976p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be5189764p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51896p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51898p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51896p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.ffffffffffffep+0L : 0x5.55555555555656609e4be51898p+44L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaab8p+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaabcp+56L : inexact-ok
+= tgamma downward ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dap+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dcp+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dap+56L : inexact-ok
+= tgamma upward ldbl-128 -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6dcp+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a7p+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a6p+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.fffffffffffffffcp+0L : 0x2.aaaaaaaaaaaaaababb5f3a13a7p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x3.fffffffffffffffffffffffffffep+0L : 0x5.5555555555555555555555555564p+104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.fffffffffffffffffffffffffffep+0L : 0x5.5555555555555555555555555564p+104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.fffffffffffffffffffffffffffep+0L : 0x5.5555555555555555555555555564p+104L : inexact-ok
+= tgamma upward ldbl-128 -0x3.fffffffffffffffffffffffffffep+0L : 0x5.5555555555555555555555555568p+104L : inexact-ok
+= tgamma downward ldbl-128 -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabab8p+96L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabab8p+96L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabab8p+96L : inexact-ok
+= tgamma upward ldbl-128 -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabacp+96L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaab8p+96L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabcp+96L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaab8p+96L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.ffffffffffffffffffffffffffp+0L : 0xa.aaaaaaaaaaaaaaaaaaaaaaaabcp+96L : inexact-ok
+tgamma -0x4.0000000000000000000000000004p0
+= tgamma downward flt-32 -0x4.000008p+0f : -0x1.555546p+16f : inexact-ok
+= tgamma tonearest flt-32 -0x4.000008p+0f : -0x1.555546p+16f : inexact-ok
+= tgamma towardzero flt-32 -0x4.000008p+0f : -0x1.555544p+16f : inexact-ok
+= tgamma upward flt-32 -0x4.000008p+0f : -0x1.555544p+16f : inexact-ok
+= tgamma downward dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9bp+16 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma upward dbl-64 -0x4.000008p+0 : -0x1.55554544a1a9ap+16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e4p+16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.000008p+0L : -0x1.55554544a1a9a1e2p+16L : inexact-ok
+= tgamma downward ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c6p+16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma upward ldbl-128 -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f774c5p+16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f775p+16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f775p+16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f7748p+16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.000008p+0L : -0x1.55554544a1a9a1e31119d9f7748p+16L : inexact-ok
+= tgamma downward dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9cp+44 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma upward dbl-64 -0x4.0000000000004p+0 : -0x2.aaaaaaaaaaa9ap+44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a9ap+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99cp+44L : inexact-ok
+= tgamma downward ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81366p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae81364p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae814p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.0000000000004p+0L : -0x2.aaaaaaaaaaa9a99f61b41ae813p+44L : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555546p+56L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.0000000000000008p+0L : -0x1.5555555555555544p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5925p+56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5925p+56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5924p+56L : inexact-ok
+= tgamma upward ldbl-128 -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec5924p+56L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec598p+56L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec59p+56L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec59p+56L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.0000000000000008p+0L : -0x1.555555555555554544a0c5ec59p+56L : inexact-ok
+= tgamma downward ldbl-128 -0x4.0000000000000000000000000004p+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaaa9cp+104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.0000000000000000000000000004p+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaaa9ap+104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.0000000000000000000000000004p+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaaa9ap+104L : inexact-ok
+= tgamma upward ldbl-128 -0x4.0000000000000000000000000004p+0L : -0x2.aaaaaaaaaaaaaaaaaaaaaaaaaa9ap+104L : inexact-ok
+= tgamma downward ldbl-128 -0x4.00000000000000000000000002p+0L : -0x5.5555555555555555555555554544p+96L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.00000000000000000000000002p+0L : -0x5.5555555555555555555555554544p+96L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.00000000000000000000000002p+0L : -0x5.555555555555555555555555454p+96L : inexact-ok
+= tgamma upward ldbl-128 -0x4.00000000000000000000000002p+0L : -0x5.555555555555555555555555454p+96L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.00000000000000000000000002p+0L : -0x5.55555555555555555555555546p+96L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.00000000000000000000000002p+0L : -0x5.55555555555555555555555546p+96L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.00000000000000000000000002p+0L : -0x5.55555555555555555555555544p+96L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.00000000000000000000000002p+0L : -0x5.55555555555555555555555544p+96L : inexact-ok
+tgamma -0x4.fffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x4.fffff8p+0f : -0x4.44448p+12f : inexact-ok
+= tgamma tonearest flt-32 -0x4.fffff8p+0f : -0x4.44448p+12f : inexact-ok
+= tgamma towardzero flt-32 -0x4.fffff8p+0f : -0x4.444478p+12f : inexact-ok
+= tgamma upward flt-32 -0x4.fffff8p+0f : -0x4.444478p+12f : inexact-ok
+= tgamma downward dbl-64 -0x4.fffff8p+0 : -0x4.44447e809018cp+12 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.fffff8p+0 : -0x4.44447e809018cp+12 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.fffff8p+0 : -0x4.44447e8090188p+12 : inexact-ok
+= tgamma upward dbl-64 -0x4.fffff8p+0 : -0x4.44447e8090188p+12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a71p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a71p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.fffff8p+0L : -0x4.44447e809018a708p+12L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149a4p+12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375149ap+12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb337514ap+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb337514ap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375148p+12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.fffff8p+0L : -0x4.44447e809018a708ffb3375148p+12L : inexact-ok
+= tgamma downward dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888c8p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma upward dbl-64 -0x4.ffffffffffffcp+0 : -0x8.88888888888cp+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c5p+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4p+40L : inexact-ok
+= tgamma downward ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d12712834478p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d127128344778p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283448p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283448p+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283444p+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.ffffffffffffcp+0L : -0x8.88888888888c2c4d1271283444p+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.444444444444448p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.fffffffffffffff8p+0L : -0x4.4444444444444478p+52L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee8p+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee4p+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee4p+52L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ee4p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce4p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ep+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ep+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.fffffffffffffff8p+0L : -0x4.444444444444447e808ce2ce3ep+52L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffffffffffffffffffffffffffcp+0L : -0x8.88888888888888888888888888c8p+100L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffffffffffffffffffffffffffcp+0L : -0x8.88888888888888888888888888cp+100L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffffffffffffffffffffffffffcp+0L : -0x8.88888888888888888888888888cp+100L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffffffffffffffffffffffffffcp+0L : -0x8.88888888888888888888888888cp+100L : inexact-ok
+= tgamma downward ldbl-128 -0x4.fffffffffffffffffffffffffep+0L : -0x1.11111111111111111111111114b5p+96L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.fffffffffffffffffffffffffep+0L : -0x1.11111111111111111111111114b5p+96L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.fffffffffffffffffffffffffep+0L : -0x1.11111111111111111111111114b4p+96L : inexact-ok
+= tgamma upward ldbl-128 -0x4.fffffffffffffffffffffffffep+0L : -0x1.11111111111111111111111114b4p+96L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.fffffffffffffffffffffffffep+0L : -0x1.11111111111111111111111115p+96L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x4.fffffffffffffffffffffffffep+0L : -0x1.111111111111111111111111148p+96L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x4.fffffffffffffffffffffffffep+0L : -0x1.111111111111111111111111148p+96L : inexact-ok
+= tgamma upward ldbl-128ibm -0x4.fffffffffffffffffffffffffep+0L : -0x1.111111111111111111111111148p+96L : inexact-ok
+tgamma -0x5.0000000000000000000000000004p0
+= tgamma downward flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma tonearest flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma towardzero flt-32 -0x5.000008p+0f : 0x4.444408p+12f : inexact-ok
+= tgamma upward flt-32 -0x5.000008p+0f : 0x4.44441p+12f : inexact-ok
+= tgamma downward dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.000008p+0 : 0x4.44440a07fedb8p+12 : inexact-ok
+= tgamma upward dbl-64 -0x5.000008p+0 : 0x4.44440a07fedbcp+12 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.000008p+0L : 0x4.44440a07fedb92ep+12L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92d8p+12L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.000008p+0L : 0x4.44440a07fedb92ep+12L : inexact-ok
+= tgamma downward ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9dcp+12L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9ep+12L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9dcp+12L : inexact-ok
+= tgamma upward ldbl-128 -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd9ep+12L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd8p+12L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fdap+12L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fd8p+12L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.000008p+0L : 0x4.44440a07fedb92d871015f2fdap+12L : inexact-ok
+= tgamma downward dbl-64 -0x5.0000000000004p+0 : 0x8.8888888888848p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.0000000000004p+0 : 0x8.888888888885p+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.0000000000004p+0 : 0x8.8888888888848p+40 : inexact-ok
+= tgamma upward dbl-64 -0x5.0000000000004p+0 : 0x8.888888888885p+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.0000000000004p+0L : 0x8.888888888884e4dp+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4cp+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.0000000000004p+0L : 0x8.888888888884e4dp+40L : inexact-ok
+= tgamma downward ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff68p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff7p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff68p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dfff7p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dffcp+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8ep+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8dffcp+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.0000000000004p+0L : 0x8.888888888884e4c3fe9fe8ep+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.0000000000000008p+0L : 0x4.444444444444441p+52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.4444444444444408p+52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.0000000000000008p+0L : 0x4.444444444444441p+52L : inexact-ok
+= tgamma downward ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49ap+52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49a4p+52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49ap+52L : inexact-ok
+= tgamma upward ldbl-128 -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba49a4p+52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba48p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba4ap+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba48p+52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.0000000000000008p+0L : 0x4.444444444444440a07fba5ba4ap+52L : inexact-ok
+= tgamma downward ldbl-128 -0x5.0000000000000000000000000004p+0L : 0x8.8888888888888888888888888848p+100L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.0000000000000000000000000004p+0L : 0x8.888888888888888888888888885p+100L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.0000000000000000000000000004p+0L : 0x8.8888888888888888888888888848p+100L : inexact-ok
+= tgamma upward ldbl-128 -0x5.0000000000000000000000000004p+0L : 0x8.888888888888888888888888885p+100L : inexact-ok
+= tgamma downward ldbl-128 -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d6dp+96L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d6dp+96L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d6dp+96L : inexact-ok
+= tgamma upward ldbl-128 -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d6ep+96L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110dp+96L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d8p+96L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110dp+96L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.00000000000000000000000002p+0L : 0x1.1111111111111111111111110d8p+96L : inexact-ok
+tgamma -0x5.fffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma tonearest flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma towardzero flt-32 -0x5.fffff8p+0f : 0xb.60b6bp+8f : inexact-ok
+= tgamma upward flt-32 -0x5.fffff8p+0f : 0xb.60b6cp+8f : inexact-ok
+= tgamma downward dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c934p+8 : inexact-ok
+= tgamma upward dbl-64 -0x5.fffff8p+0 : 0xb.60b6b5d7c9348p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934327p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.fffff8p+0L : 0xb.60b6b5d7c934328p+8L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645fp+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645f8p+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645fp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a645f8p+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a644p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.fffff8p+0L : 0xb.60b6b5d7c93432799a2135a648p+8L : inexact-ok
+= tgamma downward dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c21p+40 : inexact-ok
+= tgamma upward dbl-64 -0x5.ffffffffffffcp+0 : 0x1.6c16c16c16c22p+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168cp+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168ep+40L : inexact-ok
+= tgamma downward ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6223p+40L : inexact-ok
+= tgamma upward ldbl-128 -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a62231p+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a622p+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.ffffffffffffcp+0L : 0x1.6c16c16c16c2168dcb2207a6228p+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b617p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b616p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b617p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc452p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc452p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc452p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc4528p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc44p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc44p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc44p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.fffffffffffffff8p+0L : 0xb.60b60b60b60b6160826a6bfc48p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffffffffffffffffffffffffffcp+0L : 0x1.6c16c16c16c16c16c16c16c16c21p+100L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffffffffffffffffffffffffffcp+0L : 0x1.6c16c16c16c16c16c16c16c16c21p+100L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffffffffffffffffffffffffffcp+0L : 0x1.6c16c16c16c16c16c16c16c16c21p+100L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffffffffffffffffffffffffffcp+0L : 0x1.6c16c16c16c16c16c16c16c16c22p+100L : inexact-ok
+= tgamma downward ldbl-128 -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2d4p+92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2d4p+92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2d4p+92L : inexact-ok
+= tgamma upward ldbl-128 -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2d6p+92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2p+92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e3p+92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e2p+92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x5.fffffffffffffffffffffffffep+0L : 0x2.d82d82d82d82d82d82d82d82e3p+92L : inexact-ok
+tgamma -0x6.0000000000000000000000000004p0
+= tgamma downward flt-32 -0x6.000008p+0f : -0xb.60b57p+8f : inexact-ok
+= tgamma tonearest flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma towardzero flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma upward flt-32 -0x6.000008p+0f : -0xb.60b56p+8f : inexact-ok
+= tgamma downward dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c88p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c88p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c8p+8 : inexact-ok
+= tgamma upward dbl-64 -0x6.000008p+0 : -0xb.60b560e9b5c8p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c85p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.000008p+0L : -0xb.60b560e9b5c84ffp+8L : inexact-ok
+= tgamma downward ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace5p+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma upward ldbl-128 -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068ace48p+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068adp+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068adp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068accp+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.000008p+0L : -0xb.60b560e9b5c84ff97799068accp+8L : inexact-ok
+= tgamma downward dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0dp+40 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma upward dbl-64 -0x6.0000000000004p+0 : -0x1.6c16c16c16c0cp+40 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c1ap+40L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19ep+40L : inexact-ok
+= tgamma downward ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2cp+40L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma upward ldbl-128 -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d2bp+40L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4d8p+40L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.0000000000004p+0L : -0x1.6c16c16c16c0c19fb7b625dd4dp+40L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b601p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.0000000000000008p+0L : -0xb.60b60b60b60b6p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c5p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c48p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c48p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7c48p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a8p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7cp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7cp+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.0000000000000008p+0L : -0xb.60b60b60b60b600b9457001a7cp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x6.0000000000000000000000000004p+0L : -0x1.6c16c16c16c16c16c16c16c16c0cp+100L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.0000000000000000000000000004p+0L : -0x1.6c16c16c16c16c16c16c16c16c0cp+100L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.0000000000000000000000000004p+0L : -0x1.6c16c16c16c16c16c16c16c16c0bp+100L : inexact-ok
+= tgamma upward ldbl-128 -0x6.0000000000000000000000000004p+0L : -0x1.6c16c16c16c16c16c16c16c16c0bp+100L : inexact-ok
+= tgamma downward ldbl-128 -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cd86p+92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cd86p+92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cd84p+92L : inexact-ok
+= tgamma upward ldbl-128 -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cd84p+92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cep+92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cep+92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cdp+92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.00000000000000000000000002p+0L : -0x2.d82d82d82d82d82d82d82d82cdp+92L : inexact-ok
+tgamma -0x6.fffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.fffff8p+0f : -0x1.a01a1cp+8f : inexact-ok
+= tgamma tonearest flt-32 -0x6.fffff8p+0f : -0x1.a01a1cp+8f : inexact-ok
+= tgamma towardzero flt-32 -0x6.fffff8p+0f : -0x1.a01a1ap+8f : inexact-ok
+= tgamma upward flt-32 -0x6.fffff8p+0f : -0x1.a01a1ap+8f : inexact-ok
+= tgamma downward dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde3p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma upward dbl-64 -0x6.fffff8p+0 : -0x1.a01a1bd5ccde2p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde2022p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde2022p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202p+8L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5537fp+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e5538p+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e553p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.fffff8p+0L : -0x1.a01a1bd5ccde202013e050e553p+8L : inexact-ok
+= tgamma downward dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403405p+36 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma upward dbl-64 -0x6.ffffffffffffcp+0 : -0x3.403403403404ep+36 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e39p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.ffffffffffffcp+0L : -0x3.403403403404e38cp+36L : inexact-ok
+= tgamma downward ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575646p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f199013575644p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135757p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.ffffffffffffcp+0L : -0x3.403403403404e38f1990135756p+36L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a036p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a036p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a034p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff955p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff954fp+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff954fp+48L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff954fp+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff958p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff958p+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff95p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.fffffffffffffff8p+0L : -0x1.a01a01a01a01a03437517eff95p+48L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffffffffffffffffffffffffffcp+0L : -0x3.403403403403403403403403404ep+96L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffffffffffffffffffffffffffcp+0L : -0x3.403403403403403403403403404ep+96L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffffffffffffffffffffffffffcp+0L : -0x3.403403403403403403403403404cp+96L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffffffffffffffffffffffffffcp+0L : -0x3.403403403403403403403403404cp+96L : inexact-ok
+= tgamma downward ldbl-128 -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069aap+88L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069a9cp+88L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069a9cp+88L : inexact-ok
+= tgamma upward ldbl-128 -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069a9cp+88L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069cp+88L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069ap+88L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069ap+88L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.fffffffffffffffffffffffffep+0L : -0x6.8068068068068068068068069ap+88L : inexact-ok
+tgamma -0x7.0000000000000000000000000004p0
+= tgamma downward flt-32 -0x7.000008p+0f : 0x1.a019e6p+8f : inexact-ok
+= tgamma tonearest flt-32 -0x7.000008p+0f : 0x1.a019e8p+8f : inexact-ok
+= tgamma towardzero flt-32 -0x7.000008p+0f : 0x1.a019e6p+8f : inexact-ok
+= tgamma upward flt-32 -0x7.000008p+0f : 0x1.a019e8p+8f : inexact-ok
+= tgamma downward dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a142p+8 : inexact-ok
+= tgamma upward dbl-64 -0x7.000008p+0 : 0x1.a019e76a6a143p+8 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.000008p+0L : 0x1.a019e76a6a14241ap+8L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a142418p+8L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.000008p+0L : 0x1.a019e76a6a14241ap+8L : inexact-ok
+= tgamma downward ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abcbp+8L : inexact-ok
+= tgamma upward ldbl-128 -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7abccp+8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7ab8p+8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7acp+8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7ab8p+8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.000008p+0L : 0x1.a019e76a6a1424181ea377a7acp+8L : inexact-ok
+= tgamma downward dbl-64 -0x7.0000000000004p+0 : 0x3.4034034034018p+36 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.0000000000004p+0 : 0x3.403403403401ap+36 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.0000000000004p+0 : 0x3.4034034034018p+36 : inexact-ok
+= tgamma upward dbl-64 -0x7.0000000000004p+0 : 0x3.403403403401ap+36 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.0000000000004p+0L : 0x3.4034034034019cdcp+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cd8p+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.0000000000004p+0L : 0x3.4034034034019cdcp+36L : inexact-ok
+= tgamma downward ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a4p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1a6p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a2p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a1p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.0000000000004p+0L : 0x3.4034034034019cd8ecf054b0a2p+36L : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a019ffep+48L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.0000000000000008p+0L : 0x1.a01a01a01a01ap+48L : inexact-ok
+= tgamma downward ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae4p+48L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae4p+48L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae4p+48L : inexact-ok
+= tgamma upward ldbl-128 -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aae5p+48L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aa8p+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503abp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503aa8p+48L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.0000000000000008p+0L : 0x1.a01a01a01a019fffcbeeb503abp+48L : inexact-ok
+= tgamma downward ldbl-128 -0x7.0000000000000000000000000004p+0L : 0x3.4034034034034034034034034018p+96L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.0000000000000000000000000004p+0L : 0x3.403403403403403403403403401ap+96L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.0000000000000000000000000004p+0L : 0x3.4034034034034034034034034018p+96L : inexact-ok
+= tgamma upward ldbl-128 -0x7.0000000000000000000000000004p+0L : 0x3.403403403403403403403403401ap+96L : inexact-ok
+= tgamma downward ldbl-128 -0x7.00000000000000000000000002p+0L : 0x6.806806806806806806806806663p+88L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.00000000000000000000000002p+0L : 0x6.8068068068068068068068066634p+88L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.00000000000000000000000002p+0L : 0x6.806806806806806806806806663p+88L : inexact-ok
+= tgamma upward ldbl-128 -0x7.00000000000000000000000002p+0L : 0x6.8068068068068068068068066634p+88L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.00000000000000000000000002p+0L : 0x6.80680680680680680680680666p+88L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.00000000000000000000000002p+0L : 0x6.80680680680680680680680666p+88L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.00000000000000000000000002p+0L : 0x6.80680680680680680680680666p+88L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.00000000000000000000000002p+0L : 0x6.80680680680680680680680668p+88L : inexact-ok
+tgamma -0x7.fffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x7.fffff8p+0f : 0x3.403438p+4f : inexact-ok
+= tgamma tonearest flt-32 -0x7.fffff8p+0f : 0x3.40343cp+4f : inexact-ok
+= tgamma towardzero flt-32 -0x7.fffff8p+0f : 0x3.403438p+4f : inexact-ok
+= tgamma upward flt-32 -0x7.fffff8p+0f : 0x3.40343cp+4f : inexact-ok
+= tgamma downward dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf72p+4 : inexact-ok
+= tgamma upward dbl-64 -0x7.fffff8p+0 : 0x3.40343aebcdf74p+4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c0cp+4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.fffff8p+0L : 0x3.40343aebcdf72c1p+4L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993aep+4L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993bp+4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe994p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe993p+4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.fffff8p+0L : 0x3.40343aebcdf72c0e1eecafe994p+4L : inexact-ok
+= tgamma downward dbl-64 -0x7.ffffffffffffcp+0 : 0x6.806806806809cp+32 : inexact-ok
+= tgamma tonearest dbl-64 -0x7.ffffffffffffcp+0 : 0x6.80680680680ap+32 : inexact-ok
+= tgamma towardzero dbl-64 -0x7.ffffffffffffcp+0 : 0x6.806806806809cp+32 : inexact-ok
+= tgamma upward dbl-64 -0x7.ffffffffffffcp+0 : 0x6.80680680680ap+32 : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.ffffffffffffcp+0L : 0x6.806806806809fb28p+32L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb2p+32L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.ffffffffffffcp+0L : 0x6.806806806809fb28p+32L : inexact-ok
+= tgamma downward ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc6p+32L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc64p+32L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc6p+32L : inexact-ok
+= tgamma upward ldbl-128 -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefc64p+32L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefcp+32L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.ffffffffffffcp+0L : 0x6.806806806809fb21735429eefep+32L : inexact-ok
+= tgamma downward ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.4034034034034068p+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x7.fffffffffffffff8p+0L : 0x3.403403403403406cp+44L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea2p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea2p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea2p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ea4p+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ep+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5fp+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5ep+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.fffffffffffffff8p+0L : 0x3.403403403403406baed7013f5fp+44L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffffffffffffffffffffffffffcp+0L : 0x6.806806806806806806806806809cp+92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffffffffffffffffffffffffffcp+0L : 0x6.80680680680680680680680680ap+92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffffffffffffffffffffffffffcp+0L : 0x6.806806806806806806806806809cp+92L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffffffffffffffffffffffffffcp+0L : 0x6.80680680680680680680680680ap+92L : inexact-ok
+= tgamma downward ldbl-128 -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d3878p+84L : inexact-ok
+= tgamma tonearest ldbl-128 -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d3878p+84L : inexact-ok
+= tgamma towardzero ldbl-128 -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d3878p+84L : inexact-ok
+= tgamma upward ldbl-128 -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d388p+84L : inexact-ok
+= tgamma downward ldbl-128ibm -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d38p+84L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d38p+84L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d38p+84L : inexact-ok
+= tgamma upward ldbl-128ibm -0x7.fffffffffffffffffffffffffep+0L : 0xd.00d00d00d00d00d00d00d00d3cp+84L : inexact-ok
+tgamma -0x8.0000000000000000000000000008p0
+= tgamma downward flt-32 -0x8.00001p+0f : -0x1.a019cap+4f : inexact-ok
+= tgamma tonearest flt-32 -0x8.00001p+0f : -0x1.a019cap+4f : inexact-ok
+= tgamma towardzero flt-32 -0x8.00001p+0f : -0x1.a019c8p+4f : inexact-ok
+= tgamma upward flt-32 -0x8.00001p+0f : -0x1.a019c8p+4f : inexact-ok
+= tgamma downward dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981dp+4 : inexact-ok
+= tgamma tonearest dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma towardzero dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma upward dbl-64 -0x8.00001p+0 : -0x1.a019c9f48981cp+4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2bp+4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2bp+4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.00001p+0L : -0x1.a019c9f48981c2aep+4L : inexact-ok
+= tgamma downward ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4bp+4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4bp+4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4afp+4L : inexact-ok
+= tgamma upward ldbl-128 -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a4afp+4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a5p+4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.00001p+0L : -0x1.a019c9f48981c2aec9937d57a48p+4L : inexact-ok
+= tgamma downward dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffep+32 : inexact-ok
+= tgamma tonearest dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma towardzero dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma upward dbl-64 -0x8.0000000000008p+0 : -0x3.4034034033ffcp+32 : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc57cp+32L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.0000000000008p+0L : -0x3.4034034033ffc578p+32L : inexact-ok
+= tgamma downward ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e4p+32L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e4p+32L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e3ep+32L : inexact-ok
+= tgamma upward ldbl-128 -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7e3ep+32L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7fp+32L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.0000000000008p+0L : -0x3.4034034033ffc57a966c721f7ep+32L : inexact-ok
+= tgamma downward ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe4p+44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe4p+44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe2p+44L : inexact-ok
+= tgamma downward ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581acp+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581abp+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581abp+44L : inexact-ok
+= tgamma upward ldbl-128 -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc581abp+44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc582p+44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc5818p+44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc5818p+44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.000000000000001p+0L : -0x1.a01a01a01a019fe256094cc5818p+44L : inexact-ok
+= tgamma downward ldbl-128 -0x8.0000000000000000000000000008p+0L : -0x3.4034034034034034034034033ffcp+92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.0000000000000000000000000008p+0L : -0x3.4034034034034034034034033ffcp+92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.0000000000000000000000000008p+0L : -0x3.4034034034034034034034033ffap+92L : inexact-ok
+= tgamma upward ldbl-128 -0x8.0000000000000000000000000008p+0L : -0x3.4034034034034034034034033ffap+92L : inexact-ok
+= tgamma downward ldbl-128 -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648bcp+84L : inexact-ok
+= tgamma tonearest ldbl-128 -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648bcp+84L : inexact-ok
+= tgamma towardzero ldbl-128 -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648b8p+84L : inexact-ok
+= tgamma upward ldbl-128 -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648b8p+84L : inexact-ok
+= tgamma downward ldbl-128ibm -0x8.00000000000000000000000004p+0L : -0x6.8068068068068068068068064ap+84L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648p+84L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648p+84L : inexact-ok
+= tgamma upward ldbl-128ibm -0x8.00000000000000000000000004p+0L : -0x6.80680680680680680680680648p+84L : inexact-ok
+tgamma -0x9.fffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma tonearest flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma towardzero flt-32 -0x9.fffffp+0f : 0x4.9f9498p-4f : inexact-ok
+= tgamma upward flt-32 -0x9.fffffp+0f : 0x4.9f94ap-4f : inexact-ok
+= tgamma downward dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f3628p-4 : inexact-ok
+= tgamma upward dbl-64 -0x9.fffffp+0 : 0x4.9f949bd5f362cp-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.fffffp+0L : 0x4.9f949bd5f3629ad8p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629adp-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.fffffp+0L : 0x4.9f949bd5f3629ad8p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9144p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9148p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9144p-4L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9148p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db92p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db9p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.fffffp+0L : 0x4.9f949bd5f3629ad14cc512db92p-4L : inexact-ok
+= tgamma downward dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb9p+24 : inexact-ok
+= tgamma upward dbl-64 -0x9.ffffffffffff8p+0 : 0x9.3f27dbbc4fb98p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb919p+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb919p+24L : inexact-ok
+= tgamma downward ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37d8p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37ep+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37d8p+24L : inexact-ok
+= tgamma upward ldbl-128 -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc37ep+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc34p+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc38p+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc34p+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.ffffffffffff8p+0L : 0x9.3f27dbbc4fb918f2f6b479fc38p+24L : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d7p+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d68p+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d7p+36L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743dp+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743d4p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743dp+36L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8743d4p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8742p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8744p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8742p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.fffffffffffffffp+0L : 0x4.9f93edde27d71d69b812af8744p+36L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffffffffffffffffffffffff8p+0L : 0x9.3f27dbbc4fae397780b69f53347p+84L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffffffffffffffffffffffff8p+0L : 0x9.3f27dbbc4fae397780b69f533478p+84L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffffffffffffffffffffffff8p+0L : 0x9.3f27dbbc4fae397780b69f53347p+84L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffffffffffffffffffffffff8p+0L : 0x9.3f27dbbc4fae397780b69f533478p+84L : inexact-ok
+= tgamma downward ldbl-128 -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea7158p+80L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea7158p+80L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea7158p+80L : inexact-ok
+= tgamma upward ldbl-128 -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea7159p+80L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea71p+80L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea718p+80L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea71p+80L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.fffffffffffffffffffffffffcp+0L : 0x1.27e4fb7789f5c72ef016d3ea718p+80L : inexact-ok
+tgamma -0xa.0000000000000000000000000008p0
+= tgamma downward flt-32 -0xa.00001p+0f : -0x4.9f934p-4f : inexact-ok
+= tgamma tonearest flt-32 -0xa.00001p+0f : -0x4.9f934p-4f : inexact-ok
+= tgamma towardzero flt-32 -0xa.00001p+0f : -0x4.9f9338p-4f : inexact-ok
+= tgamma upward flt-32 -0xa.00001p+0f : -0x4.9f9338p-4f : inexact-ok
+= tgamma downward dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a3p-4 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma upward dbl-64 -0xa.00001p+0 : -0x4.9f933fe684a2cp-4 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc18p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc18p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.00001p+0L : -0x4.9f933fe684a2dc1p-4L : inexact-ok
+= tgamma downward ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c358p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c358p-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c354p-4L : inexact-ok
+= tgamma upward ldbl-128 -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c354p-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c4p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c4p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c2p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.00001p+0L : -0x4.9f933fe684a2dc11289e4534c2p-4L : inexact-ok
+= tgamma downward dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa38p+24 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa38p+24 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa3p+24 : inexact-ok
+= tgamma upward dbl-64 -0xa.0000000000008p+0 : -0x9.3f27dbbc4fa3p+24 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa35ap+24L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fp+24L : inexact-ok
+= tgamma downward ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b5p+24L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma upward ldbl-128 -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5b48p+24L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5cp+24L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be5cp+24L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be58p+24L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.0000000000008p+0L : -0x9.3f27dbbc4fa359fc0ab8c4be58p+24L : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c1p+36L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.000000000000001p+0L : -0x4.9f93edde27d71c08p+36L : inexact-ok
+= tgamma downward ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeff4p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeff4p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeffp+36L : inexact-ok
+= tgamma upward ldbl-128 -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeffp+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbfp+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbfp+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeep+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.000000000000001p+0L : -0x4.9f93edde27d71c0dc8a3efcbeep+36L : inexact-ok
+= tgamma downward ldbl-128 -0xa.0000000000000000000000000008p+0L : -0x9.3f27dbbc4fae397780b69f533318p+84L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.0000000000000000000000000008p+0L : -0x9.3f27dbbc4fae397780b69f533318p+84L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.0000000000000000000000000008p+0L : -0x9.3f27dbbc4fae397780b69f53331p+84L : inexact-ok
+= tgamma upward ldbl-128 -0xa.0000000000000000000000000008p+0L : -0x9.3f27dbbc4fae397780b69f53331p+84L : inexact-ok
+= tgamma downward ldbl-128 -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b9ap+80L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b99p+80L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b99p+80L : inexact-ok
+= tgamma upward ldbl-128 -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b99p+80L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5cp+80L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b8p+80L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b8p+80L : inexact-ok
+= tgamma upward ldbl-128ibm -0xa.00000000000000000000000004p+0L : -0x1.27e4fb7789f5c72ef016d3ea5b8p+80L : inexact-ok
+tgamma -0x13.fffffffffffffffffffffffffffp0
+= tgamma downward flt-32 -0x1.3ffffep+4f : 0x3.ca86ep-44f : inexact-ok
+= tgamma tonearest flt-32 -0x1.3ffffep+4f : 0x3.ca86e4p-44f : inexact-ok
+= tgamma towardzero flt-32 -0x1.3ffffep+4f : 0x3.ca86ep-44f : inexact-ok
+= tgamma upward flt-32 -0x1.3ffffep+4f : 0x3.ca86e4p-44f : inexact-ok
+= tgamma downward dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011ecap-44 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011eccp-44 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011ecap-44 : inexact-ok
+= tgamma upward dbl-64 -0x1.3ffffep+4 : 0x3.ca86e2f011eccp-44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b4p-44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5bp-44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b4p-44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e124p-44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e126p-44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e124p-44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e126p-44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e1p-44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffep+4L : 0x3.ca86e2f011ecb5b1fe737895e2p-44L : inexact-ok
+= tgamma downward dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080ap-16 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080a04p-16 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080ap-16 : inexact-ok
+= tgamma upward dbl-64 -0x1.3ffffffffffffp+4 : 0x7.950ae90080a04p-16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e8p-16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028ep-16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e8p-16L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541144p-16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541148p-16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541144p-16L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541148p-16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541p-16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f785412p-16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f78541p-16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffffffffffp+4L : 0x7.950ae90080a028e1b12f785412p-16L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a26p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a264p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658cp-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658cp-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658cp-4L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e658ep-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e65p-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e66p-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e65p-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3ffffffffffffffep+4L : 0x3.ca8574804044a263a8ce3f9e66p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3fffffffffffffffffffffffffffp+4L : 0x7.950ae900808941ea72b4afe3c458p+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3fffffffffffffffffffffffffffp+4L : 0x7.950ae900808941ea72b4afe3c458p+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3fffffffffffffffffffffffffffp+4L : 0x7.950ae900808941ea72b4afe3c458p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3fffffffffffffffffffffffffffp+4L : 0x7.950ae900808941ea72b4afe3c45cp+44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f44p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f448p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f44p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f448p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f4p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f4p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f4p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.3fffffffffffffffffffffffff8p+4L : 0xf.2a15d201011283d4e5695fc8f8p+36L : inexact-ok
+tgamma -0x14.000000000000000000000000001p0
+= tgamma downward flt-32 -0x1.400002p+4f : -0x3.ca8408p-44f : inexact-ok
+= tgamma tonearest flt-32 -0x1.400002p+4f : -0x3.ca8408p-44f : inexact-ok
+= tgamma towardzero flt-32 -0x1.400002p+4f : -0x3.ca8404p-44f : inexact-ok
+= tgamma upward flt-32 -0x1.400002p+4f : -0x3.ca8404p-44f : inexact-ok
+= tgamma downward dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d4p-44 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d4p-44 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d2p-44 : inexact-ok
+= tgamma upward dbl-64 -0x1.400002p+4 : -0x3.ca8406112a1d2p-44 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38b4p-44L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38b4p-44L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.400002p+4L : -0x3.ca8406112a1d38bp-44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a6p-44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a6p-44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a4p-44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243a4p-44L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9244p-44L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9244p-44L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243p-44L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.400002p+4L : -0x3.ca8406112a1d38b1fe461e9243p-44L : inexact-ok
+= tgamma downward dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080728p-16 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma upward dbl-64 -0x1.4000000000001p+4 : -0x7.950ae90080724p-16 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725af8p-16L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725af8p-16L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.4000000000001p+4L : -0x7.950ae90080725afp-16L : inexact-ok
+= tgamma downward ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134e4p-16L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134e4p-16L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134ep-16L : inexact-ok
+= tgamma upward ldbl-128 -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134ep-16L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d136p-16L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.4000000000001p+4L : -0x7.950ae90080725af33439e7d134p-16L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f88p-4L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.4000000000000002p+4L : -0x3.ca85748040449f84p-4L : inexact-ok
+= tgamma downward ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d6p-4L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d5ep-4L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d5ep-4L : inexact-ok
+= tgamma upward ldbl-128 -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455d5ep-4L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455ep-4L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455dp-4L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455dp-4L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.4000000000000002p+4L : -0x3.ca85748040449f86c9e670455dp-4L : inexact-ok
+= tgamma downward ldbl-128 -0x1.4000000000000000000000000001p+4L : -0x7.950ae900808941ea72b4afe3c17cp+44L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.4000000000000000000000000001p+4L : -0x7.950ae900808941ea72b4afe3c17cp+44L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.4000000000000000000000000001p+4L : -0x7.950ae900808941ea72b4afe3c178p+44L : inexact-ok
+= tgamma upward ldbl-128 -0x1.4000000000000000000000000001p+4L : -0x7.950ae900808941ea72b4afe3c178p+44L : inexact-ok
+= tgamma downward ldbl-128 -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc61768p+36L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc61768p+36L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc6176p+36L : inexact-ok
+= tgamma upward ldbl-128 -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc6176p+36L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc618p+36L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc618p+36L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc614p+36L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.400000000000000000000000008p+4L : -0xf.2a15d201011283d4e5695fc614p+36L : inexact-ok
+tgamma -0x1d.fffffffffffffffffffffffffffp0
+= tgamma downward flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma tonearest flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma towardzero flt-32 -0x1.dffffep+4f : 0x9.c99a5p-92f : inexact-ok
+= tgamma upward flt-32 -0x1.dffffep+4f : 0x9.c99a6p-92f : inexact-ok
+= tgamma downward dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c57p-92 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c5708p-92 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c57p-92 : inexact-ok
+= tgamma upward dbl-64 -0x1.dffffep+4 : 0x9.c99a5695c5708p-92 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffep+4L : 0x9.c99a5695c570515p-92L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570514p-92L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffep+4L : 0x9.c99a5695c570515p-92L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cep-92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942ce8p-92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cep-92L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942ce8p-92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06942cp-92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffep+4L : 0x9.c99a5695c5705142362f06943p-92L : inexact-ok
+= tgamma downward dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d651p-60 : inexact-ok
+= tgamma upward dbl-64 -0x1.dffffffffffffp+4 : 0x1.3932c5047d652p-60 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147cp-60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147ep-60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6dp-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6ep-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6dp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe6ep-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fep-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe8p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fep-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffffffffffp+4L : 0x1.3932c5047d65147d63ec0e56fe8p-60L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.dffffffffffffffep+4L : 0x9.c9962823eb0734ap-52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb07349p-52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.dffffffffffffffep+4L : 0x9.c9962823eb0734ap-52L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7278p-52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e728p-52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7278p-52L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e728p-52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7p-52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e74p-52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e7p-52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dffffffffffffffep+4L : 0x9.c9962823eb073493e020600e74p-52L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dfffffffffffffffffffffffffffp+4L : 0x1.3932c5047d60e60caded4c298a08p+0L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dfffffffffffffffffffffffffffp+4L : 0x1.3932c5047d60e60caded4c298a08p+0L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dfffffffffffffffffffffffffffp+4L : 0x1.3932c5047d60e60caded4c298a08p+0L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dfffffffffffffffffffffffffffp+4L : 0x1.3932c5047d60e60caded4c298a09p+0L : inexact-ok
+= tgamma downward ldbl-128 -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda9853567p-8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda98535672p-8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda9853567p-8L : inexact-ok
+= tgamma upward ldbl-128 -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda98535672p-8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda985356p-8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda985356p-8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda985356p-8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.dfffffffffffffffffffffffff8p+4L : 0x2.72658a08fac1cc195bda985357p-8L : inexact-ok
+tgamma -0x1e.000000000000000000000000001p0
+= tgamma downward flt-32 -0x1.e00002p+4f : -0x9.c992p-92f : inexact-ok
+= tgamma tonearest flt-32 -0x1.e00002p+4f : -0x9.c992p-92f : inexact-ok
+= tgamma towardzero flt-32 -0x1.e00002p+4f : -0x9.c991fp-92f : inexact-ok
+= tgamma upward flt-32 -0x1.e00002p+4f : -0x9.c991fp-92f : inexact-ok
+= tgamma downward dbl-64 -0x1.e00002p+4 : -0x9.c991f9b459728p-92 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.e00002p+4 : -0x9.c991f9b459728p-92 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.e00002p+4 : -0x9.c991f9b45972p-92 : inexact-ok
+= tgamma upward dbl-64 -0x1.e00002p+4 : -0x9.c991f9b45972p-92 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972556p-92L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e00002p+4L : -0x9.c991f9b45972555p-92L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daa8p-92L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455daap-92L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455dcp-92L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455dcp-92L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455d8p-92L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e00002p+4L : -0x9.c991f9b45972555ffcb66455d8p-92L : inexact-ok
+= tgamma downward dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5ccp-60 : inexact-ok
+= tgamma tonearest dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma towardzero dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma upward dbl-64 -0x1.e000000000001p+4 : -0x1.3932c5047d5cbp-60 : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79cp-60L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79ap-60L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bcp-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5bbfp-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5cp-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e000000000001p+4L : -0x1.3932c5047d5cb79bf7ee8a0e5b8p-60L : inexact-ok
+= tgamma downward ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c4p-52L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c4p-52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.e000000000000002p+4L : -0x9.c9962823eb072c3p-52L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29ep-52L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29d8p-52L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29d8p-52L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a29d8p-52L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a2cp-52L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a28p-52L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a28p-52L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e000000000000002p+4L : -0x9.c9962823eb072c36feb4628a28p-52L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e000000000000000000000000001p+4L : -0x1.3932c5047d60e60caded4c298983p+0L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e000000000000000000000000001p+4L : -0x1.3932c5047d60e60caded4c298982p+0L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e000000000000000000000000001p+4L : -0x1.3932c5047d60e60caded4c298982p+0L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e000000000000000000000000001p+4L : -0x1.3932c5047d60e60caded4c298982p+0L : inexact-ok
+= tgamma downward ldbl-128 -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d0a4p-8L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d0a4p-8L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d0a2p-8L : inexact-ok
+= tgamma upward ldbl-128 -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d0a2p-8L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d1p-8L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852d1p-8L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852dp-8L : inexact-ok
+= tgamma upward ldbl-128ibm -0x1.e00000000000000000000000008p+4L : -0x2.72658a08fac1cc195bda9852dp-8L : inexact-ok
+tgamma -0x27.ffffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.7ffffcp+4f : 0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.7ffffcp+4f : 0x7.3p-144f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7a8p-144 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7acp-144 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7a8p-144 : inexact-ok
+= tgamma upward dbl-64 -0x2.7ffffcp+4 : 0x7.2a41f1f1fa7acp-144 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab858p-144L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab86p-144L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3683cp-144L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a3684p-144L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a368p-144L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7ffffcp+4L : 0x7.2a41f1f1fa7ab85f51a817a36ap-144L : inexact-ok
+= tgamma downward dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095db8p-116 : inexact-ok
+= tgamma upward dbl-64 -0x2.7fffffffffffep+4 : 0xe.5476a15095dcp-116 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db946p-116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7fffffffffffep+4L : 0xe.5476a15095db947p-116L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0d8p-116L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b0ep-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9bp-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7fffffffffffep+4L : 0xe.5476a15095db946b38b856b9b4p-116L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6ap-104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a8p-104L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac0cp-104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac1p-104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac0cp-104L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511ac1p-104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511acp-104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511acp-104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511acp-104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7ffffffffffffffcp+4L : 0x7.2a3b50a84ab8c6a7c7ac6511aep-104L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7ffffffffffffffffffffffffffep+4L : 0xe.5476a1509571800d0392255d6ffp-56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7ffffffffffffffffffffffffffep+4L : 0xe.5476a1509571800d0392255d6ff8p-56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7ffffffffffffffffffffffffffep+4L : 0xe.5476a1509571800d0392255d6ffp-56L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7ffffffffffffffffffffffffffep+4L : 0xe.5476a1509571800d0392255d6ff8p-56L : inexact-ok
+= tgamma downward ldbl-128 -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac173fp-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac173fp-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac173fp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac174p-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac17p-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac17p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac17p-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.7fffffffffffffffffffffffffp+4L : 0x1.ca8ed42a12ae3001a07244ac178p-60L : inexact-ok
+tgamma -0x28.000000000000000000000000002p0
+= tgamma downward flt-32 -0x2.800004p+4f : -0x7.3p-144f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.800004p+4f : -0x7.28p-144f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d2cp-144 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d2cp-144 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d28p-144 : inexact-ok
+= tgamma upward dbl-64 -0x2.800004p+4 : -0x7.2a34af6633d28p-144 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3a8p-144L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.800004p+4L : -0x7.2a34af6633d2b3ap-144L : inexact-ok
+= tgamma downward ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1e4p-144L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma upward ldbl-128 -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c1ep-144L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c2p-144L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7c2p-144L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7cp-144L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.800004p+4L : -0x7.2a34af6633d2b3a72f681ba7cp-144L : inexact-ok
+= tgamma downward dbl-64 -0x2.8000000000002p+4 : -0xe.5476a15095078p-116 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8000000000002p+4 : -0xe.5476a15095078p-116 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8000000000002p+4 : -0xe.5476a1509507p-116 : inexact-ok
+= tgamma upward dbl-64 -0x2.8000000000002p+4 : -0xe.5476a1509507p-116 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bbp-116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8000000000002p+4L : -0xe.5476a15095076bap-116L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fc8p-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fc8p-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fcp-116L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8fcp-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd9p-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd9p-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8cp-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8000000000002p+4L : -0xe.5476a15095076baece6bf7cd8cp-116L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b968p-104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b96p-104L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd5p-104L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd4cp-104L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd4cp-104L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbd4cp-104L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbep-104L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbep-104L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbcp-104L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8000000000000004p+4L : -0x7.2a3b50a84ab8b9653be5c04bbcp-104L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8000000000000000000000000002p+4L : -0xe.5476a1509571800d0392255d62b8p-56L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8000000000000000000000000002p+4L : -0xe.5476a1509571800d0392255d62bp-56L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8000000000000000000000000002p+4L : -0xe.5476a1509571800d0392255d62bp-56L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8000000000000000000000000002p+4L : -0xe.5476a1509571800d0392255d62bp-56L : inexact-ok
+= tgamma downward ldbl-128 -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab4317p-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab4316p-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab4316p-60L : inexact-ok
+= tgamma upward ldbl-128 -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab4316p-60L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab438p-60L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab43p-60L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab43p-60L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.80000000000000000000000001p+4L : -0x1.ca8ed42a12ae3001a07244ab43p-60L : inexact-ok
+tgamma -0x28.ffffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x2.8ffffcp+4f : -0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.8ffffcp+4f : -0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.8ffffcp+4f : -0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.8ffffcp+4f : -0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df68p-148 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma upward dbl-64 -0x2.8ffffcp+4 : -0x2.cbced32c2df66p-148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df66774p-148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8ffffcp+4L : -0x2.cbced32c2df6677p-148L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fcp-148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fcp-148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fap-148L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565fap-148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466566p-148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466566p-148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565p-148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8ffffcp+4L : -0x2.cbced32c2df66773301b466565p-148L : inexact-ok
+= tgamma downward dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740bap-120 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma upward dbl-64 -0x2.8fffffffffffep+4 : -0x5.979870e740b9cp-120 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd7p-120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd7p-120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd68p-120L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4994p-120L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b499p-120L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4ap-120L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b4ap-120L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b48p-120L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8fffffffffffep+4L : -0x5.979870e740b9dd69794cf94b48p-120L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b98p-108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b94p-108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8206p-108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8206p-108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8204p-108L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e8204p-108L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e83p-108L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e82p-108L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e82p-108L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8ffffffffffffffcp+4L : -0x2.cbcc3873a0481b9702adc43e82p-108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8ffffffffffffffffffffffffffep+4L : -0x5.979870e7409031f8973f46c6ce1p-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8ffffffffffffffffffffffffffep+4L : -0x5.979870e7409031f8973f46c6ce0cp-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8ffffffffffffffffffffffffffep+4L : -0x5.979870e7409031f8973f46c6ce0cp-60L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8ffffffffffffffffffffffffffep+4L : -0x5.979870e7409031f8973f46c6ce0cp-60L : inexact-ok
+= tgamma downward ldbl-128 -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d9031ap-68L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903198p-68L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903198p-68L : inexact-ok
+= tgamma upward ldbl-128 -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903198p-68L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d9034p-68L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903p-68L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903p-68L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.8fffffffffffffffffffffffffp+4L : -0xb.2f30e1ce812063f12e7e8d903p-68L : inexact-ok
+tgamma -0x29.000000000000000000000000002p0
+= tgamma downward flt-32 -0x2.900004p+4f : 0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.900004p+4f : 0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma towardzero flt-32 -0x2.900004p+4f : 0x2.8p-148f : inexact-ok underflow errno-erange-ok
+= tgamma upward flt-32 -0x2.900004p+4f : 0x3p-148f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b36p-148 : inexact-ok
+= tgamma upward dbl-64 -0x2.900004p+4 : 0x2.cbc99dbe11b38p-148 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36854p-148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.900004p+4L : 0x2.cbc99dbe11b36858p-148L : inexact-ok
+= tgamma downward ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986872p-148L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986874p-148L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986872p-148L : inexact-ok
+= tgamma upward ldbl-128 -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e986874p-148L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9868p-148L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.900004p+4L : 0x2.cbc99dbe11b36857904d8e9869p-148L : inexact-ok
+= tgamma downward dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9000000000002p+4 : 0x5.979870e740668p-120 : inexact-ok
+= tgamma upward dbl-64 -0x2.9000000000002p+4 : 0x5.979870e74066cp-120 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e74066868p-120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9000000000002p+4L : 0x5.979870e740668688p-120L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da2p-120L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1da24p-120L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dap-120L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9000000000002p+4L : 0x5.979870e740668687b53195c1dcp-120L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9000000000000004p+4L : 0x2.cbcc3873a0481664p-108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166p-108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9000000000000004p+4L : 0x2.cbcc3873a0481664p-108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288496ep-108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288497p-108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288496ep-108L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9000000000000004p+4L : 0x2.cbcc3873a048166194918288497p-108L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a04816619491828849p-108L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a04816619491828849p-108L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a04816619491828849p-108L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9000000000000004p+4L : 0x2.cbcc3873a0481661949182884ap-108L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9000000000000000000000000002p+4L : 0x5.979870e7409031f8973f46c6c8d4p-60L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9000000000000000000000000002p+4L : 0x5.979870e7409031f8973f46c6c8d8p-60L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9000000000000000000000000002p+4L : 0x5.979870e7409031f8973f46c6c8d4p-60L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9000000000000000000000000002p+4L : 0x5.979870e7409031f8973f46c6c8d8p-60L : inexact-ok
+= tgamma downward ldbl-128 -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afc28p-68L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afc3p-68L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afc28p-68L : inexact-ok
+= tgamma upward ldbl-128 -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afc3p-68L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afcp-68L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afcp-68L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8afcp-68L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.90000000000000000000000001p+4L : 0xb.2f30e1ce812063f12e7e8d8bp-68L : inexact-ok
+tgamma -0x29.ffffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.9ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.9ffffcp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c7p-152 : inexact-ok
+= tgamma upward dbl-64 -0x2.9ffffcp+4 : 0x1.10b05211e13c8p-152 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9ffffcp+4L : 0x1.10b05211e13c736cp-152L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736ap-152L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9ffffcp+4L : 0x1.10b05211e13c736cp-152L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6049p-152L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e604ap-152L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6049p-152L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e604ap-152L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6p-152L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e608p-152L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e6p-152L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9ffffcp+4L : 0x1.10b05211e13c736ab795b13e608p-152L : inexact-ok
+= tgamma downward dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cdp-124 : inexact-ok
+= tgamma upward dbl-64 -0x2.9fffffffffffep+4 : 0x2.215ea4ea61cd2p-124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd0098p-124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009cp-124L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c4p-124L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c6p-124L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c4p-124L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89c6p-124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89p-124L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac8ap-124L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac89p-124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9fffffffffffep+4L : 0x2.215ea4ea61cd009a66d326ac8ap-124L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846ap-112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846cp-112L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639ep-112L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639fp-112L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639ep-112L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca639fp-112L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca638p-112L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca638p-112L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca638p-112L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9ffffffffffffffcp+4L : 0x1.10af527530de846be9aee0ca64p-112L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9ffffffffffffffffffffffffffep+4L : 0x2.215ea4ea61bd06d89b244bb97312p-64L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9ffffffffffffffffffffffffffep+4L : 0x2.215ea4ea61bd06d89b244bb97312p-64L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9ffffffffffffffffffffffffffep+4L : 0x2.215ea4ea61bd06d89b244bb97312p-64L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9ffffffffffffffffffffffffffep+4L : 0x2.215ea4ea61bd06d89b244bb97314p-64L : inexact-ok
+= tgamma downward ldbl-128 -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e3cp-72L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e3c4p-72L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e3cp-72L : inexact-ok
+= tgamma upward ldbl-128 -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e3c4p-72L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e2p-72L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e4p-72L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e2p-72L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.9fffffffffffffffffffffffffp+4L : 0x4.42bd49d4c37a0db136489773e4p-72L : inexact-ok
+tgamma -0x2a.000000000000000000000000002p0
+= tgamma downward flt-32 -0x2.a00004p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.a00004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c62p-152 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c62p-152 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c61p-152 : inexact-ok
+= tgamma upward dbl-64 -0x2.a00004p+4 : -0x1.10ae52d9a7c61p-152 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c6190ap-152L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a00004p+4L : -0x1.10ae52d9a7c61908p-152L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bcp-152L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a457bbp-152L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a458p-152L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a00004p+4L : -0x1.10ae52d9a7c61909524089a4578p-152L : inexact-ok
+= tgamma downward dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61ad2p-124 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma upward dbl-64 -0x2.a000000000002p+4 : -0x2.215ea4ea61adp-124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d18p-124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d14p-124L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd24p-124L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd24p-124L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd22p-124L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fd22p-124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fep-124L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a000000000002p+4L : -0x2.215ea4ea61ad0d16cf757159fdp-124L : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826ep-112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826ep-112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.a000000000000004p+4L : -0x1.10af527530de826cp-112L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e76p-112L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e76p-112L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e75p-112L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e75p-112L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e8p-112L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0e8p-112L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0ep-112L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a000000000000004p+4L : -0x1.10af527530de826cb1756aef0ep-112L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a000000000000000000000000002p+4L : -0x2.215ea4ea61bd06d89b244bb97114p-64L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a000000000000000000000000002p+4L : -0x2.215ea4ea61bd06d89b244bb97114p-64L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a000000000000000000000000002p+4L : -0x2.215ea4ea61bd06d89b244bb97112p-64L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a000000000000000000000000002p+4L : -0x2.215ea4ea61bd06d89b244bb97112p-64L : inexact-ok
+= tgamma downward ldbl-128 -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e48cp-72L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e488p-72L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e488p-72L : inexact-ok
+= tgamma upward ldbl-128 -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e488p-72L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e6p-72L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e4p-72L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e4p-72L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.a0000000000000000000000001p+4L : -0x4.42bd49d4c37a0db136489771e4p-72L : inexact-ok
+tgamma -0x31.ffffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.1ffffcp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.1ffffcp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa78p-200 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa8p-200 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa78p-200 : inexact-ok
+= tgamma upward dbl-64 -0x3.1ffffcp+4 : 0xd.d9c54ba29fa8p-200 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02p-200L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f03p-200L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d0087p-200L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d00878p-200L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d008p-200L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1ffffcp+4L : 0xd.d9c54ba29fa7f02edf65d0d00cp-200L : inexact-ok
+= tgamma downward dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce51p-168 : inexact-ok
+= tgamma upward dbl-64 -0x3.1fffffffffffep+4 : 0x1.bb36f6e12ce52p-168 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51696p-168L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce51698p-168L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff1fp-168L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff2p-168L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff1fp-168L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff2p-168L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfffp-168L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1fffffffffffep+4L : 0x1.bb36f6e12ce5169716d0dacfff8p-168L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1ddp-160L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dcp-160L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1ddp-160L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa48p-160L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa5p-160L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa48p-160L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fa5p-160L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0f8p-160L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fcp-160L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0f8p-160L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1ffffffffffffffcp+4L : 0xd.d9b7b70966bc1dc41628cab0fcp-160L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1ffffffffffffffffffffffffffep+4L : 0x1.bb36f6e12cd78205f0a0534536dbp-108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1ffffffffffffffffffffffffffep+4L : 0x1.bb36f6e12cd78205f0a0534536dcp-108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1ffffffffffffffffffffffffffep+4L : 0x1.bb36f6e12cd78205f0a0534536dbp-108L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1ffffffffffffffffffffffffffep+4L : 0x1.bb36f6e12cd78205f0a0534536dcp-108L : inexact-ok
+= tgamma downward ldbl-128 -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b454cp-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b454ep-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b454cp-116L : inexact-ok
+= tgamma upward ldbl-128 -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b454ep-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b45p-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b45p-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b45p-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.1fffffffffffffffffffffffffp+4L : 0x3.766dedc259af040be140a68b46p-116L : inexact-ok
+tgamma -0x32.000000000000000000000000002p0
+= tgamma downward flt-32 -0x3.200004p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.200004p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x3.200004p+4 : -0xd.d9aa2280534p-200 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.200004p+4 : -0xd.d9aa2280534p-200 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.200004p+4 : -0xd.d9aa2280533f8p-200 : inexact-ok
+= tgamma upward dbl-64 -0x3.200004p+4 : -0xd.d9aa2280533f8p-200 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc1p-200L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.200004p+4L : -0xd.d9aa2280533fc0fp-200L : inexact-ok
+= tgamma downward ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1118p-200L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma upward ldbl-128 -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb111p-200L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb14p-200L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.200004p+4L : -0xd.d9aa2280533fc0fa48a205cb1p-200L : inexact-ok
+= tgamma downward dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9fp-168 : inexact-ok
+= tgamma tonearest dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9fp-168 : inexact-ok
+= tgamma towardzero dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9ep-168 : inexact-ok
+= tgamma upward dbl-64 -0x3.2000000000002p+4 : -0x1.bb36f6e12cc9ep-168 : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed76p-168L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed76p-168L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74p-168L : inexact-ok
+= tgamma downward ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b9861p-168L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b9861p-168L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b986p-168L : inexact-ok
+= tgamma upward ldbl-128 -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b986p-168L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b988p-168L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b988p-168L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b98p-168L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.2000000000002p+4L : -0x1.bb36f6e12cc9ed74ca6fcc3b98p-168L : inexact-ok
+= tgamma downward ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc02ap-160L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029p-160L : inexact-ok
+= tgamma downward ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265e8p-160L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265e8p-160L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265ep-160L : inexact-ok
+= tgamma upward ldbl-128 -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a265ep-160L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a268p-160L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a264p-160L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a264p-160L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.2000000000000004p+4L : -0xd.d9b7b70966bc029af3dc69a264p-160L : inexact-ok
+= tgamma downward ldbl-128 -0x3.2000000000000000000000000002p+4L : -0x1.bb36f6e12cd78205f0a053453529p-108L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.2000000000000000000000000002p+4L : -0x1.bb36f6e12cd78205f0a053453529p-108L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.2000000000000000000000000002p+4L : -0x1.bb36f6e12cd78205f0a053453528p-108L : inexact-ok
+= tgamma upward ldbl-128 -0x3.2000000000000000000000000002p+4L : -0x1.bb36f6e12cd78205f0a053453528p-108L : inexact-ok
+= tgamma downward ldbl-128 -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992bcp-116L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992bap-116L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992bap-116L : inexact-ok
+= tgamma upward ldbl-128 -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992bap-116L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68993p-116L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68993p-116L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992p-116L : inexact-ok
+= tgamma upward ldbl-128ibm -0x3.20000000000000000000000001p+4L : -0x3.766dedc259af040be140a68992p-116L : inexact-ok
+tgamma -0x63.ffffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.3ffff8p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.3ffff8p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c76p-508 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c77p-508 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c76p-508 : inexact-ok
+= tgamma upward dbl-64 -0x6.3ffff8p+4 : 0x1.2d4cd4e344c77p-508 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76dfap-508L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df8p-508L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76dfap-508L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6dp-508L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce6ep-508L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bcep-508L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce8p-508L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bcep-508L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3ffff8p+4L : 0x1.2d4cd4e344c76df84d32370bce8p-508L : inexact-ok
+= tgamma downward dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1b8p-480 : inexact-ok
+= tgamma upward dbl-64 -0x6.3fffffffffffcp+4 : 0x2.5a943cc0fd1bap-480 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86acp-480L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86bp-480L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a384p-480L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a386p-480L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a3p-480L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a4p-480L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a3p-480L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3fffffffffffcp+4L : 0x2.5a943cc0fd1b86af87ac9dc1a4p-480L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781216p-468L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214p-468L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781216p-468L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da55p-468L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da55p-468L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da55p-468L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da56p-468L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22dap-468L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da8p-468L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22dap-468L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3ffffffffffffff8p+4L : 0x1.2d4a1e607e781214f0525c22da8p-468L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3ffffffffffffffffffffffffffcp+4L : 0x2.5a943cc0fcf01ebce2500cb3cf5ep-420L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3ffffffffffffffffffffffffffcp+4L : 0x2.5a943cc0fcf01ebce2500cb3cf5ep-420L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3ffffffffffffffffffffffffffcp+4L : 0x2.5a943cc0fcf01ebce2500cb3cf5ep-420L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3ffffffffffffffffffffffffffcp+4L : 0x2.5a943cc0fcf01ebce2500cb3cf6p-420L : inexact-ok
+= tgamma downward ldbl-128 -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4fccp-428L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4fdp-428L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4fccp-428L : inexact-ok
+= tgamma upward ldbl-128 -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4fdp-428L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4ep-428L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a5p-428L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a4ep-428L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.3ffffffffffffffffffffffffep+4L : 0x4.b5287981f9e03d79c4a0196a5p-428L : inexact-ok
+tgamma -0x64.000000000000000000000000004p0
+= tgamma downward flt-32 -0x6.400008p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.400008p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014ep-508 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma upward dbl-64 -0x6.400008p+4 : -0x1.2d4767e4f014dp-508 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48cp-508L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.400008p+4L : -0x1.2d4767e4f014d48ap-508L : inexact-ok
+= tgamma downward ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526cp-508L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma upward ldbl-128 -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646526bp-508L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646528p-508L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc8523646528p-508L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc852364652p-508L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.400008p+4L : -0x1.2d4767e4f014d48bc852364652p-508L : inexact-ok
+= tgamma downward dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4cp-480 : inexact-ok
+= tgamma tonearest dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4cp-480 : inexact-ok
+= tgamma towardzero dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4ap-480 : inexact-ok
+= tgamma upward dbl-64 -0x6.4000000000004p+4 : -0x2.5a943cc0fcc4ap-480 : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ccp-480L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6c8p-480L : inexact-ok
+= tgamma downward ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdep-480L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma upward ldbl-128 -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebdcp-480L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ecp-480L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ecp-480L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebp-480L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.4000000000004p+4L : -0x2.5a943cc0fcc4b6ca3cf37f41ebp-480L : inexact-ok
+= tgamma downward ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca8p-468L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca6p-468L : inexact-ok
+= tgamma downward ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f25ap-468L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f25ap-468L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f259p-468L : inexact-ok
+= tgamma upward ldbl-128 -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f259p-468L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f28p-468L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f28p-468L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f2p-468L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.4000000000000008p+4L : -0x1.2d4a1e607e780ca7f1fdb090f2p-468L : inexact-ok
+= tgamma downward ldbl-128 -0x6.4000000000000000000000000004p+4L : -0x2.5a943cc0fcf01ebce2500cb3c9f2p-420L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.4000000000000000000000000004p+4L : -0x2.5a943cc0fcf01ebce2500cb3c9fp-420L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.4000000000000000000000000004p+4L : -0x2.5a943cc0fcf01ebce2500cb3c9fp-420L : inexact-ok
+= tgamma upward ldbl-128 -0x6.4000000000000000000000000004p+4L : -0x2.5a943cc0fcf01ebce2500cb3c9fp-420L : inexact-ok
+= tgamma downward ldbl-128 -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2dp-428L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2dp-428L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2ccp-428L : inexact-ok
+= tgamma upward ldbl-128 -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2ccp-428L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e4p-428L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2p-428L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2p-428L : inexact-ok
+= tgamma upward ldbl-128ibm -0x6.40000000000000000000000002p+4L : -0x4.b5287981f9e03d79c4a01964e2p-428L : inexact-ok
+tgamma -0x95.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x9.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x9.5ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa48p-860 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa5p-860 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa48p-860 : inexact-ok
+= tgamma upward dbl-64 -0x9.5ffffp+4 : 0x8.d1a58f148fa5p-860 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61p-860L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5ffffp+4L : 0x8.d1a58f148fa4d62p-860L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9368p-860L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c937p-860L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9p-860L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c94p-860L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c9p-860L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5ffffp+4L : 0x8.d1a58f148fa4d61a162e789c94p-860L : inexact-ok
+= tgamma downward dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406adp-828 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406aep-828 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406adp-828 : inexact-ok
+= tgamma upward dbl-64 -0x9.5fffffffffff8p+4 : 0x1.1a2f2af6406aep-828 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada86p-828L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84p-828L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada86p-828L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b3p-828L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b4p-828L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b3p-828L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa17b4p-828L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa178p-828L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5fffffffffff8p+4L : 0x1.1a2f2af6406ada84287436fa18p-828L : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492p-820L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5493p-820L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362c8p-820L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362dp-820L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362c8p-820L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6362dp-820L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca636p-820L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6364p-820L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca636p-820L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5ffffffffffffffp+4L : 0x8.d17957b201f5492e54c5ca6364p-820L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5ffffffffffffffffffffffffff8p+4L : 0x1.1a2f2af6403ea39eedf168f32b81p-768L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5ffffffffffffffffffffffffff8p+4L : 0x1.1a2f2af6403ea39eedf168f32b82p-768L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5ffffffffffffffffffffffffff8p+4L : 0x1.1a2f2af6403ea39eedf168f32b81p-768L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5ffffffffffffffffffffffffff8p+4L : 0x1.1a2f2af6403ea39eedf168f32b82p-768L : inexact-ok
+= tgamma downward ldbl-128 -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914eap-776L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914eap-776L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914eap-776L : inexact-ok
+= tgamma upward ldbl-128 -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914ecp-776L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914p-776L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e915p-776L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e914p-776L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.5ffffffffffffffffffffffffcp+4L : 0x2.345e55ec807d473ddbe2d1e915p-776L : inexact-ok
+tgamma -0x96.000000000000000000000000008p0
+= tgamma downward flt-32 -0x9.60001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x9.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x9.60001p+4 : -0x8.d14d214a189cp-860 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma upward dbl-64 -0x9.60001p+4 : -0x8.d14d214a189b8p-860 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93cp-860L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93cp-860L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.60001p+4L : -0x8.d14d214a189b93bp-860L : inexact-ok
+= tgamma downward ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a6p-860L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma upward ldbl-128 -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4a58p-860L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4cp-860L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c4cp-860L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c48p-860L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.60001p+4L : -0x8.d14d214a189b93b13f23357c48p-860L : inexact-ok
+= tgamma downward dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640127p-828 : inexact-ok
+= tgamma tonearest dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640127p-828 : inexact-ok
+= tgamma towardzero dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640126p-828 : inexact-ok
+= tgamma upward dbl-64 -0x9.6000000000008p+4 : -0x1.1a2f2af640126p-828 : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cbap-828L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb8p-828L : inexact-ok
+= tgamma downward ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c7ap-828L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c7ap-828L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c79p-828L : inexact-ok
+= tgamma upward ldbl-128 -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c79p-828L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c8p-828L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15c8p-828L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15cp-828L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.6000000000008p+4L : -0x1.1a2f2af640126cb9b36ea2c15cp-828L : inexact-ok
+= tgamma downward ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0dp-820L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma upward ldbl-96-intel -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0dp-820L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x9.600000000000001p+4L : -0x8.d17957b201f4f0cp-820L : inexact-ok
+= tgamma downward ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a1p-820L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a1p-820L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a08p-820L : inexact-ok
+= tgamma upward ldbl-128 -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2a08p-820L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2cp-820L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf2cp-820L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf28p-820L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.600000000000001p+4L : -0x8.d17957b201f4f0c08a50c4cf28p-820L : inexact-ok
+= tgamma downward ldbl-128 -0x9.6000000000000000000000000008p+4L : -0x1.1a2f2af6403ea39eedf168f325fbp-768L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.6000000000000000000000000008p+4L : -0x1.1a2f2af6403ea39eedf168f325fap-768L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.6000000000000000000000000008p+4L : -0x1.1a2f2af6403ea39eedf168f325fap-768L : inexact-ok
+= tgamma upward ldbl-128 -0x9.6000000000000000000000000008p+4L : -0x1.1a2f2af6403ea39eedf168f325fap-768L : inexact-ok
+= tgamma downward ldbl-128 -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38e0ep-776L : inexact-ok
+= tgamma tonearest ldbl-128 -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38e0ep-776L : inexact-ok
+= tgamma towardzero ldbl-128 -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38e0cp-776L : inexact-ok
+= tgamma upward ldbl-128 -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38e0cp-776L : inexact-ok
+= tgamma downward ldbl-128ibm -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38fp-776L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38ep-776L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38ep-776L : inexact-ok
+= tgamma upward ldbl-128ibm -0x9.60000000000000000000000004p+4L : -0x2.345e55ec807d473ddbe2d1e38ep-776L : inexact-ok
+tgamma -0xb4.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0xb.4ffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.4ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.4ffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.4ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f062p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f062p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0618p-1088L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550d04p-1088L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4ffffp+4L : -0x5.fa2b7cb1342f0619b84e4c550dp-1088L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4ffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.4ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f41cp-1060 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.4fffffffffff8p+4 : -0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800ep-1060L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800ep-1060L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800dp-1060L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7ep-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7ep-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7d8p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4fffffffffff8p+4L : -0xb.f418cc537d2800d44c735966b7d8p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f41cp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.4fffffffffff8p+4L : -0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e2p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e2p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e18p-1048L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7148p-1048L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7144p-1048L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7144p-1048L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4ffffffffffffffp+4L : -0x5.fa0c6629bd9b6e19eb58ba6e7144p-1048L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.4ffffffffffffffp+4L : -0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.4ffffffffffffffffffffffffff8p+4L : -0xb.f418cc537b369e077d178968abb8p-1000L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4ffffffffffffffffffffffffff8p+4L : -0xb.f418cc537b369e077d178968abbp-1000L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4ffffffffffffffffffffffffff8p+4L : -0xb.f418cc537b369e077d178968abbp-1000L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4ffffffffffffffffffffffffff8p+4L : -0xb.f418cc537b369e077d178968abbp-1000L : inexact-ok
+= tgamma downward ldbl-128 -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0efa2f12f02f7p-1004L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0efa2f12f02f7p-1004L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0efa2f12f02f6p-1004L : inexact-ok
+= tgamma upward ldbl-128 -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0efa2f12f02f6p-1004L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0fp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0fp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0ecp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.4ffffffffffffffffffffffffcp+4L : -0x1.7e83198a6f66d3c0ecp-1004L : inexact-ok underflow errno-erange-ok
+tgamma -0xb5.000000000000000000000000008p0
+= tgamma downward flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.50001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.50001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.50001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.50001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.50001p+4L : 0x5.f9ed505798c523fp-1088L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523e8p-1088L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.50001p+4L : 0x5.f9ed505798c523fp-1088L : inexact-ok
+= tgamma downward ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab3cp-1088L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab4p-1088L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab3cp-1088L : inexact-ok
+= tgamma upward ldbl-128 -0xb.50001p+4L : 0x5.f9ed505798c523eb3303d849ab4p-1088L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.50001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.50001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.5000000000008p+4 : 0xb.f418p-1060 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.5000000000008p+4 : 0xb.f41cp-1060 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b3p-1060L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5000000000008p+4L : 0xb.f418cc5379453b4p-1060L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc1413402p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5000000000008p+4L : 0xb.f418cc5379453b3aadbc14134028p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f418p-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5000000000008p+4L : 0xb.f41cp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fe8p-1048L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2ffp-1048L : inexact-ok
+= tgamma downward ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c0cp-1048L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c1p-1048L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c0cp-1048L : inexact-ok
+= tgamma upward ldbl-128 -0xb.500000000000001p+4L : 0x5.fa0c6629bd9b2fed91becefa1c1p-1048L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c66p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.500000000000001p+4L : 0x5.fa0c664p-1048L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.5000000000000000000000000008p+4L : 0xb.f418cc537b369e077d1789686d88p-1000L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5000000000000000000000000008p+4L : 0xb.f418cc537b369e077d1789686d88p-1000L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5000000000000000000000000008p+4L : 0xb.f418cc537b369e077d1789686d88p-1000L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5000000000000000000000000008p+4L : 0xb.f418cc537b369e077d1789686d9p-1000L : inexact-ok
+= tgamma downward ldbl-128 -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0efa2f12b2031p-1004L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0efa2f12b2031p-1004L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0efa2f12b2031p-1004L : inexact-ok
+= tgamma upward ldbl-128 -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0efa2f12b2032p-1004L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0ecp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0fp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0ecp-1004L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.50000000000000000000000004p+4L : 0x1.7e83198a6f66d3c0fp-1004L : inexact-ok underflow errno-erange-ok
+tgamma -0xb5.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.5ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.5ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.5ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.5ffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b4p-1096L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5ffffp+4L : 0x8.6853b8676d944b5p-1096L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fa8p-1096L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fbp-1096L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fa8p-1096L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5ffffp+4L : 0x8.6853b8676d944b4af867833d1fbp-1096L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.5ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.5ffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.5fffffffffff8p+4 : 0x1.0d4p-1064 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd22p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd2p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd22p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2bp-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2cp-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2bp-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5fffffffffff8p+4L : 0x1.0d04fe453ad3bd20f2f3dd6f2c2cp-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5fffffffffff8p+4L : 0x1.0d4p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6dp-1056L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6ep-1056L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6bp-1056L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6b8p-1056L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6bp-1056L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5ffffffffffffffp+4L : 0x8.6827f229d53fe6deb3582838a6b8p-1056L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5ffffffffffffffp+4L : 0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.5ffffffffffffffffffffffffff8p+4L : 0x1.0d04fe453aa7f7631eb07c9b7cdp-1004L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5ffffffffffffffffffffffffff8p+4L : 0x1.0d04fe453aa7f7631eb07c9b7cdp-1004L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5ffffffffffffffffffffffffff8p+4L : 0x1.0d04fe453aa7f7631eb07c9b7cdp-1004L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5ffffffffffffffffffffffffff8p+4L : 0x1.0d04fe453aa7f7631eb07c9b7cd1p-1004L : inexact-ok
+= tgamma downward ldbl-128 -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec63d60f939b082p-1012L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec63d60f939b084p-1012L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec63d60f939b082p-1012L : inexact-ok
+= tgamma upward ldbl-128 -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec63d60f939b084p-1012L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec4p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec8p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec4p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.5ffffffffffffffffffffffffcp+4L : 0x2.1a09fc8a754feec8p-1012L : inexact-ok underflow errno-erange-ok
+tgamma -0xb6.000000000000000000000000008p0
+= tgamma downward flt-32 -0xb.60001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.60001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.60001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.60001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e2p-1096L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.60001p+4L : -0x8.67fc2cebc2f23e1p-1096L : inexact-ok
+= tgamma downward ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e03p-1096L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e03p-1096L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e028p-1096L : inexact-ok
+= tgamma upward ldbl-128 -0xb.60001p+4L : -0x8.67fc2cebc2f23e1c7cddddf5e028p-1096L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.60001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.60001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6000000000008p+4 : -0x1.0d4p-1064 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.6000000000008p+4 : -0x1.0dp-1064 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a6p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a4p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f834p-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f834p-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f833p-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6000000000008p+4L : -0x1.0d04fe453a7c31a54a6d23c3f833p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0d4p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6000000000008p+4L : -0x1.0dp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f6p-1056L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f6p-1056L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5p-1056L : inexact-ok
+= tgamma downward ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb88p-1056L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb8p-1056L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb8p-1056L : inexact-ok
+= tgamma upward ldbl-128 -0xb.600000000000001p+4L : -0x8.6827f229d53f8f5337afa17efb8p-1056L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6828p-1056L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.600000000000001p+4L : -0x8.6827cp-1056L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.6000000000000000000000000008p+4L : -0x1.0d04fe453aa7f7631eb07c9b7758p-1004L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6000000000000000000000000008p+4L : -0x1.0d04fe453aa7f7631eb07c9b7757p-1004L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6000000000000000000000000008p+4L : -0x1.0d04fe453aa7f7631eb07c9b7757p-1004L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6000000000000000000000000008p+4L : -0x1.0d04fe453aa7f7631eb07c9b7757p-1004L : inexact-ok
+= tgamma downward ldbl-128 -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec63d60f93437ccp-1012L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec63d60f93437cap-1012L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec63d60f93437cap-1012L : inexact-ok
+= tgamma upward ldbl-128 -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec63d60f93437cap-1012L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec8p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec8p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec4p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.60000000000000000000000004p+4L : -0x2.1a09fc8a754feec4p-1012L : inexact-ok underflow errno-erange-ok
+tgamma -0xb6.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0xb.6ffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.6ffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6ffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.6ffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188c1p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6ffffp+4L : -0xb.c2e7e440d1188cp-1104L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af98p-1104L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af98p-1104L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af9p-1104L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6ffffp+4L : -0xb.c2e7e440d1188c0b48acd829af9p-1104L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6ffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.6ffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.6fffffffffff8p+4 : -0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.6fffffffffff8p+4 : -0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.6fffffffffff8p+4 : -0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.6fffffffffff8p+4 : -0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed316p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed316p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed314p-1072L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a41p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a41p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a4p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6fffffffffff8p+4L : -0x1.785552e9f05ed31472126e701a4p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6fffffffffff8p+4L : -0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c74p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fp-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed8p-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed78p-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed78p-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6ffffffffffffffp+4L : -0xb.c2aa974f810c73fdd8d87a72ed78p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6ffffffffffffffp+4L : -0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.6ffffffffffffffffffffffffff8p+4L : -0x1.785552e9f02186d6335337683381p-1012L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6ffffffffffffffffffffffffff8p+4L : -0x1.785552e9f02186d633533768338p-1012L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6ffffffffffffffffffffffffff8p+4L : -0x1.785552e9f02186d633533768338p-1012L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6ffffffffffffffffffffffffff8p+4L : -0x1.785552e9f02186d633533768338p-1012L : inexact-ok
+= tgamma downward ldbl-128 -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430dac66a66ed4341cp-1020L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430dac66a66ed4341ap-1020L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430dac66a66ed4341ap-1020L : inexact-ok
+= tgamma upward ldbl-128 -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430dac66a66ed4341ap-1020L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0431p-1020L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.6ffffffffffffffffffffffffcp+4L : -0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+tgamma -0xb7.000000000000000000000000008p0
+= tgamma downward flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.70001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.70001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.70001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.70001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.70001p+4L : 0xb.c26d4bc450a5bcap-1104L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bc9p-1104L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.70001p+4L : 0xb.c26d4bc450a5bcap-1104L : inexact-ok
+= tgamma downward ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176a8p-1104L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176bp-1104L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176a8p-1104L : inexact-ok
+= tgamma upward ldbl-128 -0xb.70001p+4L : 0xb.c26d4bc450a5bc9143545a8176bp-1104L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.70001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.70001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7000000000008p+4 : 0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.7000000000008p+4 : 0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma towardzero dbl-64 -0xb.7000000000008p+4 : 0x1.4p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma upward dbl-64 -0xb.7000000000008p+4 : 0x1.8p-1072 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a96p-1072L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7000000000008p+4L : 0x1.785552e9efe43a98p-1072L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914245p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7000000000008p+4L : 0x1.785552e9efe43a97f4940b914246p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7000000000008p+4L : 0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.7000000000008p+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.7000000000008p+4L : 0x1.4p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.7000000000008p+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.700000000000001p+4L : 0xb.c2aa974f810bf97p-1064L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf96p-1064L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.700000000000001p+4L : 0xb.c2aa974f810bf97p-1064L : inexact-ok
+= tgamma downward ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100eap-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100eap-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100eap-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.700000000000001p+4L : 0xb.c2aa974f810bf9655c5afc100ea8p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c28p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.700000000000001p+4L : 0xb.c2cp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.7000000000000000000000000008p+4L : 0x1.785552e9f02186d6335337682bd6p-1012L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7000000000000000000000000008p+4L : 0x1.785552e9f02186d6335337682bd7p-1012L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7000000000000000000000000008p+4L : 0x1.785552e9f02186d6335337682bd6p-1012L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7000000000000000000000000008p+4L : 0x1.785552e9f02186d6335337682bd7p-1012L : inexact-ok
+= tgamma downward ldbl-128 -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430dac66a66ecc8a92p-1020L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430dac66a66ecc8a94p-1020L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430dac66a66ecc8a92p-1020L : inexact-ok
+= tgamma upward ldbl-128 -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430dac66a66ecc8a94p-1020L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0430cp-1020L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.70000000000000000000000004p+4L : 0x2.f0aaa5d3e0431p-1020L : inexact-ok underflow errno-erange-ok
+tgamma -0xb7.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.7ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.7ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.7ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.7ffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7ffffp+4L : 0x1.05d1632f1f3e377cp-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377ap-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7ffffp+4L : 0x1.05d1632f1f3e377cp-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef7p-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7ffffp+4L : 0x1.05d1632f1f3e377a5ce1c82bcef8p-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.7ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.7ffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.7fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.7fffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3cp-1080L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f38p-1080L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3cp-1080L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a073405p-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a0734052p-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a073405p-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7fffffffffff8p+4L : 0x2.0b981a509c577f3951f0a0734052p-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.7fffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e01153ap-1068L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538p-1068L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e01153ap-1068L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9cp-1068L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9dp-1068L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9cp-1068L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7ffffffffffffffp+4L : 0x1.05cc0d284e011538e344fb8ffb9dp-1068L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.7ffffffffffffffp+4L : 0x1.08p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.7ffffffffffffffffffffffffff8p+4L : 0x2.0b981a509c021fc5d81abc64742ep-1020L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7ffffffffffffffffffffffffff8p+4L : 0x2.0b981a509c021fc5d81abc64742ep-1020L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7ffffffffffffffffffffffffff8p+4L : 0x2.0b981a509c021fc5d81abc64742ep-1020L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7ffffffffffffffffffffffffff8p+4L : 0x2.0b981a509c021fc5d81abc64743p-1020L : inexact-ok
+= tgamma downward ldbl-128 -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a138043f8bb03578ce33a8p-1028L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a138043f8bb03578ce33a8p-1028L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a138043f8bb03578ce33a8p-1028L : inexact-ok
+= tgamma upward ldbl-128 -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a138043f8bb03578ce33acp-1028L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.7ffffffffffffffffffffffffcp+4L : 0x4.173034a13808p-1028L : inexact-ok underflow errno-erange-ok
+tgamma -0xb8.000000000000000000000000008p0
+= tgamma downward flt-32 -0xb.80001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.80001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.80001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.80001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189e2p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189e2p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.80001p+4L : -0x1.05c6b740afc189ep-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89ep-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89ep-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89dp-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.80001p+4L : -0x1.05c6b740afc189e07304b954f89dp-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.80001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.80001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.8000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.8000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc054p-1080L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.8000000000008p+4L : -0x2.0b981a509bacc05p-1080L : inexact-ok
+= tgamma downward ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c3p-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c3p-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c2ep-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.8000000000008p+4L : -0x2.0b981a509bacc0525e44e7ef1c2ep-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.8000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.8000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8ep-1068L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8ep-1068L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cp-1068L : inexact-ok
+= tgamma downward ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735bp-1068L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735ap-1068L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735ap-1068L : inexact-ok
+= tgamma upward ldbl-128 -0xb.800000000000001p+4L : -0x1.05cc0d284e010a8cf4d5c0d4735ap-1068L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.800000000000001p+4L : -0x1.08p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.800000000000001p+4L : -0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.800000000000001p+4L : -0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.800000000000001p+4L : -0x1.04p-1068L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.8000000000000000000000000008p+4L : -0x2.0b981a509c021fc5d81abc646984p-1020L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.8000000000000000000000000008p+4L : -0x2.0b981a509c021fc5d81abc646982p-1020L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.8000000000000000000000000008p+4L : -0x2.0b981a509c021fc5d81abc646982p-1020L : inexact-ok
+= tgamma upward ldbl-128 -0xb.8000000000000000000000000008p+4L : -0x2.0b981a509c021fc5d81abc646982p-1020L : inexact-ok
+= tgamma downward ldbl-128 -0xb.80000000000000000000000004p+4L : -0x4.173034a138043f8bb03578c387bcp-1028L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.80000000000000000000000004p+4L : -0x4.173034a138043f8bb03578c387b8p-1028L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.80000000000000000000000004p+4L : -0x4.173034a138043f8bb03578c387b8p-1028L : inexact-ok
+= tgamma upward ldbl-128 -0xb.80000000000000000000000004p+4L : -0x4.173034a138043f8bb03578c387b8p-1028L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.80000000000000000000000004p+4L : -0x4.173034a13808p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.80000000000000000000000004p+4L : -0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.80000000000000000000000004p+4L : -0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.80000000000000000000000004p+4L : -0x4.173034a13804p-1028L : inexact-ok underflow errno-erange-ok
+tgamma -0xbb.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0xb.bffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.bffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.bffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.bffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.bffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.bffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.bffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.bffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973932cp-1140L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.bffffp+4L : 0x3.a18e29bac973933p-1140L : inexact-ok
+= tgamma downward ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae6p-1140L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae6p-1140L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae6p-1140L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bffffp+4L : 0x3.a18e29bac973932feed1b47afae8p-1140L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.bffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.bffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.bffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.bfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.bfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.bfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.bfffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c5278p-1112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c528p-1112L : inexact-ok
+= tgamma downward ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14acp-1112L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14acp-1112L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14acp-1112L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bfffffffffff8p+4L : 0x7.42f647bca86c527d96aff32b14bp-1112L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.bfffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1cp-1100L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f2p-1100L : inexact-ok
+= tgamma downward ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e844p-1100L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e844p-1100L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e844p-1100L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bffffffffffffffp+4L : 0x3.a17b23de539e0f1f1af66ae9e846p-1100L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.bffffffffffffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.bffffffffffffffffffffffffff8p+4L : 0x7.42f647bca73bf832ec9792cb53ccp-1052L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bffffffffffffffffffffffffff8p+4L : 0x7.42f647bca73bf832ec9792cb53dp-1052L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bffffffffffffffffffffffffff8p+4L : 0x7.42f647bca73bf832ec9792cb53ccp-1052L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bffffffffffffffffffffffffff8p+4L : 0x7.42f647bca73bf832ec9792cb53dp-1052L : inexact-ok
+= tgamma downward ldbl-128 -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ec8f794e77f065d92f25a98738p-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ec8f794e77f065d92f25a98738p-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ec8f794e77f065d92f25a98738p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ec8f794e77f065d92f25a9874p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.bffffffffffffffffffffffffcp+4L : 0xe.85fp-1060L : inexact-ok underflow errno-erange-ok
+tgamma -0xbc.000000000000000000000000008p0
+= tgamma downward flt-32 -0xb.c0001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.c0001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.c0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.c0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.c0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405cp-1140L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.c0001p+4L : -0x3.a1681e71734405bcp-1140L : inexact-ok
+= tgamma downward ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19adap-1140L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19adap-1140L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19ad8p-1140L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c0001p+4L : -0x3.a1681e71734405bc890265f19ad8p-1140L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c0001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.c0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.c0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.c000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.c000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.c000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.c000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9dfp-1112L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9dfp-1112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8p-1112L : inexact-ok
+= tgamma downward ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab8p-1112L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab4p-1112L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab4p-1112L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c000000000008p+4L : -0x7.42f647bca60b9de8427f6a362ab4p-1112L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.c000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.c000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de914p-1100L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.c00000000000001p+4L : -0x3.a17b23de539de91p-1100L : inexact-ok
+= tgamma downward ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f6p-1100L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f6p-1100L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f4p-1100L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c00000000000001p+4L : -0x3.a17b23de539de913d1a127e158f4p-1100L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c00000000000001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.c00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.c00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0xb.c000000000000000000000000008p+4L : -0x7.42f647bca73bf832ec9792cb2dc4p-1052L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c000000000000000000000000008p+4L : -0x7.42f647bca73bf832ec9792cb2dc4p-1052L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c000000000000000000000000008p+4L : -0x7.42f647bca73bf832ec9792cb2dcp-1052L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c000000000000000000000000008p+4L : -0x7.42f647bca73bf832ec9792cb2dcp-1052L : inexact-ok
+= tgamma downward ldbl-128 -0xb.c0000000000000000000000004p+4L : -0xe.85ec8f794e77f065d92f25837bfp-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.c0000000000000000000000004p+4L : -0xe.85ec8f794e77f065d92f25837bfp-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.c0000000000000000000000004p+4L : -0xe.85ec8f794e77f065d92f25837be8p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.c0000000000000000000000004p+4L : -0xe.85ec8f794e77f065d92f25837be8p-1060L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.c0000000000000000000000004p+4L : -0xe.85fp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.c0000000000000000000000004p+4L : -0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.c0000000000000000000000004p+4L : -0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.c0000000000000000000000004p+4L : -0xe.85ecp-1060L : inexact-ok underflow errno-erange-ok
+tgamma -0xbc.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0xb.cffffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.cffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.cffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.cffffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.cffffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.cffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.cffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.cffffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508dp-1148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508dp-1148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.cffffp+4L : -0x4.eb1490744e9508c8p-1148L : inexact-ok
+= tgamma downward ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b8p-1148L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b4p-1148L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b4p-1148L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cffffp+4L : -0x4.eb1490744e9508cbdf4b2d2d11b4p-1148L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.cffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.cffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.cfffffffffff8p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.cfffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.cfffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.cfffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e5p-1120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4p-1120L : inexact-ok
+= tgamma downward ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c48p-1120L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c48p-1120L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c4p-1120L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cfffffffffff8p+4L : -0x9.d5f58b282beb2e4ada1f6e725c4p-1120L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.cfffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c5p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c5p-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c48p-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6814p-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6814p-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6813cp-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cffffffffffffffp+4L : -0x4.eafac59415275c4be21f68f6813cp-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.cffffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0xb.cffffffffffffffffffffffffff8p+4L : -0x9.d5f58b282a4e85029b36f4e2a508p-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cffffffffffffffffffffffffff8p+4L : -0x9.d5f58b282a4e85029b36f4e2a5p-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cffffffffffffffffffffffffff8p+4L : -0x9.d5f58b282a4e85029b36f4e2a5p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cffffffffffffffffffffffffff8p+4L : -0x9.d5f58b282a4e85029b36f4e2a5p-1060L : inexact-ok
+= tgamma downward ldbl-128 -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3abeb1650549d0a05366de9dee11p-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3abeb1650549d0a05366de9dee1p-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3abeb1650549d0a05366de9dee1p-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3abeb1650549d0a05366de9dee1p-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3acp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3acp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3a8p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.cffffffffffffffffffffffffcp+4L : -0x1.3a8p-1064L : inexact-ok underflow errno-erange-ok
+tgamma -0xbd.000000000000000000000000008p0
+= tgamma downward flt-32 -0xb.d0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.d0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.d0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.d0001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.d0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.d0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.d0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.d0001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3e8p-1148L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.d0001p+4L : 0x4.eae0fb4b4576d3fp-1148L : inexact-ok
+= tgamma downward ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84654cp-1148L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84655p-1148L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84654cp-1148L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d0001p+4L : 0x4.eae0fb4b4576d3ee7cdc0f84655p-1148L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.d0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.d0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.d0001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.d000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.d000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.d000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.d000000000008p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbbp-1120L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbcp-1120L : inexact-ok
+= tgamma downward ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798d8p-1120L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798d8p-1120L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798d8p-1120L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d000000000008p+4L : 0x9.d5f58b2828b1dbba5c4ec70798ep-1120L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.d000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.d000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.d000000000008p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728bp-1108L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.d00000000000001p+4L : 0x4.eafac594152728b8p-1108L : inexact-ok
+= tgamma downward ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a9p-1108L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a94p-1108L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a9p-1108L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d00000000000001p+4L : 0x4.eafac594152728b6b9178bec0a94p-1108L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.d00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.d00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.d00000000000001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.d000000000000000000000000008p+4L : 0x9.d5f58b282a4e85029b36f4e2717p-1060L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d000000000000000000000000008p+4L : 0x9.d5f58b282a4e85029b36f4e2717p-1060L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d000000000000000000000000008p+4L : 0x9.d5f58b282a4e85029b36f4e2717p-1060L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d000000000000000000000000008p+4L : 0x9.d5f58b282a4e85029b36f4e27178p-1060L : inexact-ok
+= tgamma downward ldbl-128 -0xb.d0000000000000000000000004p+4L : 0x1.3abeb1650549d0a05366de9ab4bep-1064L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.d0000000000000000000000004p+4L : 0x1.3abeb1650549d0a05366de9ab4bep-1064L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.d0000000000000000000000004p+4L : 0x1.3abeb1650549d0a05366de9ab4bep-1064L : inexact-ok
+= tgamma upward ldbl-128 -0xb.d0000000000000000000000004p+4L : 0x1.3abeb1650549d0a05366de9ab4bfp-1064L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.d0000000000000000000000004p+4L : 0x1.3a8p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.d0000000000000000000000004p+4L : 0x1.3acp-1064L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.d0000000000000000000000004p+4L : 0x1.3a8p-1064L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.d0000000000000000000000004p+4L : 0x1.3acp-1064L : inexact-ok underflow errno-erange-ok
+tgamma -0xbd.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0xb.dffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.dffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.dffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.dffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.dffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.dffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.dffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.dffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.dffffp+4L : 0x6.a071f95f54494e58p-1156L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e5p-1156L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.dffffp+4L : 0x6.a071f95f54494e58p-1156L : inexact-ok
+= tgamma downward ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef88p-1156L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef8cp-1156L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef88p-1156L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dffffp+4L : 0x6.a071f95f54494e510e48132cef8cp-1156L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.dffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.dffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.dffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.dfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.dfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.dfffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.dfffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb1p-1128L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fbp-1128L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb1p-1128L : inexact-ok
+= tgamma downward ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bcp-1128L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bc8p-1128L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bcp-1128L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dfffffffffff8p+4L : 0xd.409e5fdfe4f1fb07d10093ac5bc8p-1128L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.dfffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d808p-1116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8p-1116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d808p-1116L : inexact-ok
+= tgamma downward ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd4p-1116L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd8p-1116L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd4p-1116L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dffffffffffffffp+4L : 0x6.a04f2feff162d8036197b5c29fd8p-1116L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.dffffffffffffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.dffffffffffffffffffffffffff8p+4L : 0xd.409e5fdfe2c56a74b0cb64e5ebd8p-1068L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dffffffffffffffffffffffffff8p+4L : 0xd.409e5fdfe2c56a74b0cb64e5ebd8p-1068L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dffffffffffffffffffffffffff8p+4L : 0xd.409e5fdfe2c56a74b0cb64e5ebd8p-1068L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dffffffffffffffffffffffffff8p+4L : 0xd.409e5fdfe2c56a74b0cb64e5ebep-1068L : inexact-ok
+= tgamma downward ldbl-128 -0xb.dffffffffffffffffffffffffcp+4L : 0x1.a813cbfbfc58ad4e96196c9ee5b2p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.dffffffffffffffffffffffffcp+4L : 0x1.a813cbfbfc58ad4e96196c9ee5b3p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.dffffffffffffffffffffffffcp+4L : 0x1.a813cbfbfc58ad4e96196c9ee5b2p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.dffffffffffffffffffffffffcp+4L : 0x1.a813cbfbfc58ad4e96196c9ee5b3p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.dffffffffffffffffffffffffcp+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.dffffffffffffffffffffffffcp+4L : 0x1.cp-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.dffffffffffffffffffffffffcp+4L : 0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.dffffffffffffffffffffffffcp+4L : 0x1.cp-1072L : inexact-ok underflow errno-erange-ok
+tgamma -0xbe.000000000000000000000000008p0
+= tgamma downward flt-32 -0xb.e0001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.e0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.e0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.e0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.e0001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.e0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.e0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.e0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e108p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e108p-1156L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.e0001p+4L : -0x6.a02c674cee90e1p-1156L : inexact-ok
+= tgamma downward ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd9cp-1156L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd9cp-1156L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd98p-1156L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e0001p+4L : -0x6.a02c674cee90e10296e1141cfd98p-1156L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e0001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.e0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.e0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.e000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.e000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.e000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.e000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9fp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9fp-1128L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9ep-1128L : inexact-ok
+= tgamma downward ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40cp-1128L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40b8p-1128L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40b8p-1128L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e000000000008p+4L : -0xd.409e5fdfe098d9e190969c4f40b8p-1128L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.e000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.e000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff1629278p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff1629278p-1116L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.e00000000000001p+4L : -0x6.a04f2feff162927p-1116L : inexact-ok
+= tgamma downward ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a08p-1116L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a04p-1116L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a04p-1116L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e00000000000001p+4L : -0x6.a04f2feff16292714f33af232a04p-1116L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e00000000000001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.e00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.e00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0xb.e000000000000000000000000008p+4L : -0xd.409e5fdfe2c56a74b0cb64e5a648p-1068L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e000000000000000000000000008p+4L : -0xd.409e5fdfe2c56a74b0cb64e5a648p-1068L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e000000000000000000000000008p+4L : -0xd.409e5fdfe2c56a74b0cb64e5a64p-1068L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e000000000000000000000000008p+4L : -0xd.409e5fdfe2c56a74b0cb64e5a64p-1068L : inexact-ok
+= tgamma downward ldbl-128 -0xb.e0000000000000000000000004p+4L : -0x1.a813cbfbfc58ad4e96196c9a8c92p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.e0000000000000000000000004p+4L : -0x1.a813cbfbfc58ad4e96196c9a8c91p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.e0000000000000000000000004p+4L : -0x1.a813cbfbfc58ad4e96196c9a8c91p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.e0000000000000000000000004p+4L : -0x1.a813cbfbfc58ad4e96196c9a8c91p-1072L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.e0000000000000000000000004p+4L : -0x1.cp-1072L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.e0000000000000000000000004p+4L : -0x1.cp-1072L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xb.e0000000000000000000000004p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xb.e0000000000000000000000004p+4L : -0x1.8p-1072L : inexact-ok underflow errno-erange-ok
+tgamma -0xbe.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0xb.effffp+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xb.effffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.effffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.effffp+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.effffp+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.effffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.effffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.effffp+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73ep-1164L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73ep-1164L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.effffp+4L : -0x8.e1c509b9188f73dp-1164L : inexact-ok
+= tgamma downward ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230b8p-1164L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230bp-1164L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230bp-1164L : inexact-ok
+= tgamma upward ldbl-128 -0xb.effffp+4L : -0x8.e1c509b9188f73d1ea32ca8230bp-1164L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.effffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.effffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.effffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.effffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xb.efffffffffff8p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xb.efffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.efffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.efffffffffff8p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2faep-1132L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2facp-1132L : inexact-ok
+= tgamma downward ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186ep-1132L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186ep-1132L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186dp-1132L : inexact-ok
+= tgamma upward ldbl-128 -0xb.efffffffffff8p+4L : -0x1.1c32cbb79d3b2fad009321b3186dp-1132L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.efffffffffff8p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.efffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.efffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.efffffffffff8p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864508p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507p-1124L : inexact-ok
+= tgamma downward ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f5p-1124L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f5p-1124L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f48p-1124L : inexact-ok
+= tgamma upward ldbl-128 -0xb.effffffffffffffp+4L : -0x8.e1965dbce864507ba91eede73f48p-1124L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.effffffffffffffp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.effffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.effffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.effffffffffffffp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0xb.effffffffffffffffffffffffff8p+4L : -0x1.1c32cbb79d0c843a06c4a3edbb4dp-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.effffffffffffffffffffffffff8p+4L : -0x1.1c32cbb79d0c843a06c4a3edbb4cp-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.effffffffffffffffffffffffff8p+4L : -0x1.1c32cbb79d0c843a06c4a3edbb4cp-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.effffffffffffffffffffffffff8p+4L : -0x1.1c32cbb79d0c843a06c4a3edbb4cp-1072L : inexact-ok
+= tgamma downward ldbl-128 -0xb.effffffffffffffffffffffffcp+4L : -0x2.3865976f3a1908740d8947de5b7cp-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.effffffffffffffffffffffffcp+4L : -0x2.3865976f3a1908740d8947de5b7ap-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.effffffffffffffffffffffffcp+4L : -0x2.3865976f3a1908740d8947de5b7ap-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.effffffffffffffffffffffffcp+4L : -0x2.3865976f3a1908740d8947de5b7ap-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.effffffffffffffffffffffffcp+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xb.effffffffffffffffffffffffcp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.effffffffffffffffffffffffcp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.effffffffffffffffffffffffcp+4L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0xbf.000000000000000000000000008p0
+= tgamma downward flt-32 -0xb.f0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xb.f0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xb.f0001p+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xb.f0001p+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.f0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.f0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.f0001p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.f0001p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.f0001p+4L : 0x8.e167b2d322aba21p-1164L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba2p-1164L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.f0001p+4L : 0x8.e167b2d322aba21p-1164L : inexact-ok
+= tgamma downward ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c648p-1164L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c65p-1164L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c648p-1164L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f0001p+4L : 0x8.e167b2d322aba202926ca843c65p-1164L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f0001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f0001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xb.f000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xb.f000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xb.f000000000008p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xb.f000000000008p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c6p-1132L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c8p-1132L : inexact-ok
+= tgamma downward ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabecp-1132L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabedp-1132L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabecp-1132L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f000000000008p+4L : 0x1.1c32cbb79cddd8c70cf62ebbabedp-1132L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f000000000008p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f000000000008p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma upward ldbl-96-intel -0xb.f00000000000001p+4L : 0x8.e1965dbce863f33p-1124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f32p-1124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xb.f00000000000001p+4L : 0x8.e1965dbce863f33p-1124L : inexact-ok
+= tgamma downward ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447ep-1124L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447ep-1124L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447ep-1124L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f00000000000001p+4L : 0x8.e1965dbce863f324c32b50f447e8p-1124L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f00000000000001p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f00000000000001p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xb.f000000000000000000000000008p+4L : 0x1.1c32cbb79d0c843a06c4a3edb577p-1072L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f000000000000000000000000008p+4L : 0x1.1c32cbb79d0c843a06c4a3edb577p-1072L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f000000000000000000000000008p+4L : 0x1.1c32cbb79d0c843a06c4a3edb577p-1072L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f000000000000000000000000008p+4L : 0x1.1c32cbb79d0c843a06c4a3edb578p-1072L : inexact-ok
+= tgamma downward ldbl-128 -0xb.f0000000000000000000000004p+4L : 0x2.3865976f3a1908740d8947d8860cp-1080L : inexact-ok
+= tgamma tonearest ldbl-128 -0xb.f0000000000000000000000004p+4L : 0x2.3865976f3a1908740d8947d8860cp-1080L : inexact-ok
+= tgamma towardzero ldbl-128 -0xb.f0000000000000000000000004p+4L : 0x2.3865976f3a1908740d8947d8860cp-1080L : inexact-ok
+= tgamma upward ldbl-128 -0xb.f0000000000000000000000004p+4L : 0x2.3865976f3a1908740d8947d8860ep-1080L : inexact-ok
+= tgamma downward ldbl-128ibm -0xb.f0000000000000000000000004p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xb.f0000000000000000000000004p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xb.f0000000000000000000000004p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xb.f0000000000000000000000004p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0xf9.ffffffffffffffffffffffffff8p0
+= tgamma downward flt-32 -0xf.9ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0xf.9ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xf.9ffffp+4f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xf.9ffffp+4f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xf.9ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xf.9ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xf.9ffffp+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xf.9ffffp+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.9ffffp+4L : 0xf.1f88ab042ff7086p-1624L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.9ffffp+4L : 0xf.1f88ab042ff7085p-1624L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.9ffffp+4L : 0xf.1f88ab042ff7086p-1624L : inexact-ok
+= tgamma downward ldbl-128 -0xf.9ffffp+4L : 0xf.1f88ab042ff7085579fc982914d8p-1624L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.9ffffp+4L : 0xf.1f88ab042ff7085579fc982914d8p-1624L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.9ffffp+4L : 0xf.1f88ab042ff7085579fc982914d8p-1624L : inexact-ok
+= tgamma upward ldbl-128 -0xf.9ffffp+4L : 0xf.1f88ab042ff7085579fc982914ep-1624L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.9ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xf.9ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.9ffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.9ffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xf.9fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0xf.9fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xf.9fffffffffff8p+4 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xf.9fffffffffff8p+4 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39ep-1592L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e2p-1592L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39ep-1592L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e2p-1592L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39ep-1592L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e2p-1592L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39ep-1592L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e2p-1592L : inexact-ok
+= tgamma downward ldbl-128 -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e146ec0d2ee4b5p-1592L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e146ec0d2ee4b5p-1592L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e146ec0d2ee4b5p-1592L : inexact-ok
+= tgamma upward ldbl-128 -0xf.9fffffffffff8p+4L : 0x1.e3e6a471e8ca39e146ec0d2ee4b6p-1592L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.9fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xf.9fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.9fffffffffff8p+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.9fffffffffff8p+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eefp-1584L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eeep-1584L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eefp-1584L : inexact-ok
+= tgamma downward ldbl-128 -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eee5821ae2926698p-1584L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eee5821ae29266ap-1584L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eee5821ae2926698p-1584L : inexact-ok
+= tgamma upward ldbl-128 -0xf.9ffffffffffffffp+4L : 0xf.1f35238f43b5eee5821ae29266ap-1584L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.9ffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xf.9ffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.9ffffffffffffffp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.9ffffffffffffffp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0xf.9ffffffffffffffffffffffffff8p+4L : 0x1.e3e6a471e876b36be196b1a7e08fp-1532L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.9ffffffffffffffffffffffffff8p+4L : 0x1.e3e6a471e876b36be196b1a7e09p-1532L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.9ffffffffffffffffffffffffff8p+4L : 0x1.e3e6a471e876b36be196b1a7e08fp-1532L : inexact-ok
+= tgamma upward ldbl-128 -0xf.9ffffffffffffffffffffffffff8p+4L : 0x1.e3e6a471e876b36be196b1a7e09p-1532L : inexact-ok
+= tgamma downward ldbl-128 -0xf.9ffffffffffffffffffffffffcp+4L : 0x3.c7cd48e3d0ed66d7c32d6354ef16p-1540L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.9ffffffffffffffffffffffffcp+4L : 0x3.c7cd48e3d0ed66d7c32d6354ef16p-1540L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.9ffffffffffffffffffffffffcp+4L : 0x3.c7cd48e3d0ed66d7c32d6354ef16p-1540L : inexact-ok
+= tgamma upward ldbl-128 -0xf.9ffffffffffffffffffffffffcp+4L : 0x3.c7cd48e3d0ed66d7c32d6354ef18p-1540L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.9ffffffffffffffffffffffffcp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0xf.9ffffffffffffffffffffffffcp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.9ffffffffffffffffffffffffcp+4L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.9ffffffffffffffffffffffffcp+4L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0xfa.000000000000000000000000008p0
+= tgamma downward flt-32 -0xf.a0001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xf.a0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xf.a0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xf.a0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xf.a0001p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xf.a0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xf.a0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xf.a0001p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xf.a0001p+4L : -0xf.1ee19e1960e8838p-1624L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.a0001p+4L : -0xf.1ee19e1960e8838p-1624L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.a0001p+4L : -0xf.1ee19e1960e8837p-1624L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.a0001p+4L : -0xf.1ee19e1960e8837p-1624L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.a0001p+4L : -0xf.1ee19e1960e8838p-1624L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.a0001p+4L : -0xf.1ee19e1960e8838p-1624L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.a0001p+4L : -0xf.1ee19e1960e8837p-1624L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.a0001p+4L : -0xf.1ee19e1960e8837p-1624L : inexact-ok
+= tgamma downward ldbl-128 -0xf.a0001p+4L : -0xf.1ee19e1960e8837e1e8ee885a37p-1624L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.a0001p+4L : -0xf.1ee19e1960e8837e1e8ee885a368p-1624L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.a0001p+4L : -0xf.1ee19e1960e8837e1e8ee885a368p-1624L : inexact-ok
+= tgamma upward ldbl-128 -0xf.a0001p+4L : -0xf.1ee19e1960e8837e1e8ee885a368p-1624L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.a0001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xf.a0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.a0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.a0001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xf.a000000000008p+4 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0xf.a000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0xf.a000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0xf.a000000000008p+4 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf8p-1592L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf8p-1592L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf6p-1592L : inexact-ok
+= tgamma downward ldbl-128 -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf67c4166191d9dp-1592L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf67c4166191d9cp-1592L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf67c4166191d9cp-1592L : inexact-ok
+= tgamma upward ldbl-128 -0xf.a000000000008p+4L : -0x1.e3e6a471e8232cf67c4166191d9cp-1592L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.a000000000008p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xf.a000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.a000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.a000000000008p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0xf.a00000000000001p+4L : -0xf.1f35238f43b547ep-1584L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xf.a00000000000001p+4L : -0xf.1f35238f43b547ep-1584L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xf.a00000000000001p+4L : -0xf.1f35238f43b547dp-1584L : inexact-ok
+= tgamma upward ldbl-96-intel -0xf.a00000000000001p+4L : -0xf.1f35238f43b547dp-1584L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xf.a00000000000001p+4L : -0xf.1f35238f43b547ep-1584L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xf.a00000000000001p+4L : -0xf.1f35238f43b547ep-1584L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xf.a00000000000001p+4L : -0xf.1f35238f43b547dp-1584L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xf.a00000000000001p+4L : -0xf.1f35238f43b547dp-1584L : inexact-ok
+= tgamma downward ldbl-128 -0xf.a00000000000001p+4L : -0xf.1f35238f43b547d8975037eb50d8p-1584L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.a00000000000001p+4L : -0xf.1f35238f43b547d8975037eb50d8p-1584L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.a00000000000001p+4L : -0xf.1f35238f43b547d8975037eb50dp-1584L : inexact-ok
+= tgamma upward ldbl-128 -0xf.a00000000000001p+4L : -0xf.1f35238f43b547d8975037eb50dp-1584L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.a00000000000001p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xf.a00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.a00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.a00000000000001p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0xf.a000000000000000000000000008p+4L : -0x1.e3e6a471e876b36be196b1a7d61fp-1532L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.a000000000000000000000000008p+4L : -0x1.e3e6a471e876b36be196b1a7d61fp-1532L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.a000000000000000000000000008p+4L : -0x1.e3e6a471e876b36be196b1a7d61ep-1532L : inexact-ok
+= tgamma upward ldbl-128 -0xf.a000000000000000000000000008p+4L : -0x1.e3e6a471e876b36be196b1a7d61ep-1532L : inexact-ok
+= tgamma downward ldbl-128 -0xf.a0000000000000000000000004p+4L : -0x3.c7cd48e3d0ed66d7c32d634a7e48p-1540L : inexact-ok
+= tgamma tonearest ldbl-128 -0xf.a0000000000000000000000004p+4L : -0x3.c7cd48e3d0ed66d7c32d634a7e48p-1540L : inexact-ok
+= tgamma towardzero ldbl-128 -0xf.a0000000000000000000000004p+4L : -0x3.c7cd48e3d0ed66d7c32d634a7e46p-1540L : inexact-ok
+= tgamma upward ldbl-128 -0xf.a0000000000000000000000004p+4L : -0x3.c7cd48e3d0ed66d7c32d634a7e46p-1540L : inexact-ok
+= tgamma downward ldbl-128ibm -0xf.a0000000000000000000000004p+4L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xf.a0000000000000000000000004p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0xf.a0000000000000000000000004p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0xf.a0000000000000000000000004p+4L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x1f3.ffffffffffffffffffffffffffp0
+= tgamma downward flt-32 -0x1.f3fffep+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x1.f3fffep+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x1.f3fffep+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x1.f3fffep+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x1.f3fffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x1.f3fffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x1.f3fffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x1.f3fffep+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x1.f3fffep+8L : 0xc.8678d8710ada4b5p-3756L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f3fffep+8L : 0xc.8678d8710ada4b6p-3756L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f3fffep+8L : 0xc.8678d8710ada4b5p-3756L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f3fffep+8L : 0xc.8678d8710ada4b6p-3756L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f3fffep+8L : 0xc.8678d8710ada4b5p-3756L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f3fffep+8L : 0xc.8678d8710ada4b6p-3756L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f3fffep+8L : 0xc.8678d8710ada4b5p-3756L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f3fffep+8L : 0xc.8678d8710ada4b6p-3756L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f3fffep+8L : 0xc.8678d8710ada4b5eec735b549778p-3756L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f3fffep+8L : 0xc.8678d8710ada4b5eec735b54978p-3756L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f3fffep+8L : 0xc.8678d8710ada4b5eec735b549778p-3756L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f3fffep+8L : 0xc.8678d8710ada4b5eec735b54978p-3756L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f3fffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x1.f3fffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f3fffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f3fffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x1.f3fffffffffffp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x1.f3fffffffffffp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x1.f3fffffffffffp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x1.f3fffffffffffp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52bap-3724L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b8p-3724L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52bap-3724L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b807b31083b732p-3724L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b807b31083b732p-3724L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b807b31083b732p-3724L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f3fffffffffffp+8L : 0x1.90bba4f1c2ba52b807b31083b733p-3724L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f3fffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x1.f3fffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f3fffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f3fffffffffffp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb3p-3716L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb2p-3716L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb3p-3716L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb258653e3c773ap-3716L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb258653e3c773ap-3716L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb258653e3c773ap-3716L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f3fffffffffffffep+8L : 0xc.85dd278e10f5cb258653e3c773a8p-3716L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f3fffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x1.f3fffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f3fffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f3fffffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x1.f3ffffffffffffffffffffffffffp+8L : 0x1.90bba4f1c21ea5ef17ac7baa7678p-3664L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f3ffffffffffffffffffffffffffp+8L : 0x1.90bba4f1c21ea5ef17ac7baa7679p-3664L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f3ffffffffffffffffffffffffffp+8L : 0x1.90bba4f1c21ea5ef17ac7baa7678p-3664L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f3ffffffffffffffffffffffffffp+8L : 0x1.90bba4f1c21ea5ef17ac7baa7679p-3664L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f3ffffffffffffffffffffffff8p+8L : 0x3.217749e3843d4bde2f58f75e9448p-3672L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f3ffffffffffffffffffffffff8p+8L : 0x3.217749e3843d4bde2f58f75e9448p-3672L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f3ffffffffffffffffffffffff8p+8L : 0x3.217749e3843d4bde2f58f75e9448p-3672L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f3ffffffffffffffffffffffff8p+8L : 0x3.217749e3843d4bde2f58f75e944ap-3672L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f3ffffffffffffffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x1.f3ffffffffffffffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f3ffffffffffffffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f3ffffffffffffffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x1f4.00000000000000000000000001p0
+= tgamma downward flt-32 -0x1.f40002p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x1.f40002p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x1.f40002p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x1.f40002p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x1.f40002p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x1.f40002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x1.f40002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x1.f40002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x1.f40002p+8L : -0xc.85417edf037af34p-3756L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f40002p+8L : -0xc.85417edf037af34p-3756L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f40002p+8L : -0xc.85417edf037af33p-3756L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f40002p+8L : -0xc.85417edf037af33p-3756L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f40002p+8L : -0xc.85417edf037af34p-3756L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f40002p+8L : -0xc.85417edf037af34p-3756L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f40002p+8L : -0xc.85417edf037af33p-3756L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f40002p+8L : -0xc.85417edf037af33p-3756L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f40002p+8L : -0xc.85417edf037af33cc2668f1a74bp-3756L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f40002p+8L : -0xc.85417edf037af33cc2668f1a74a8p-3756L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f40002p+8L : -0xc.85417edf037af33cc2668f1a74a8p-3756L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f40002p+8L : -0xc.85417edf037af33cc2668f1a74a8p-3756L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f40002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x1.f40002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f40002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f40002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x1.f400000000001p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x1.f400000000001p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x1.f400000000001p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x1.f400000000001p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x1.f400000000001p+8L : -0x1.90bba4f1c182f928p-3724L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f400000000001p+8L : -0x1.90bba4f1c182f928p-3724L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f400000000001p+8L : -0x1.90bba4f1c182f926p-3724L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f400000000001p+8L : -0x1.90bba4f1c182f92627a62870859cp-3724L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f400000000001p+8L : -0x1.90bba4f1c182f92627a62870859cp-3724L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f400000000001p+8L : -0x1.90bba4f1c182f92627a62870859bp-3724L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f400000000001p+8L : -0x1.90bba4f1c182f92627a62870859bp-3724L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f400000000001p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x1.f400000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f400000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f400000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x1.f400000000000002p+8L : -0xc.85dd278e10f493dp-3716L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x1.f400000000000002p+8L : -0xc.85dd278e10f493dp-3716L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cp-3716L : inexact-ok
+= tgamma upward ldbl-96-intel -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cp-3716L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x1.f400000000000002p+8L : -0xc.85dd278e10f493dp-3716L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x1.f400000000000002p+8L : -0xc.85dd278e10f493dp-3716L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cp-3716L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cp-3716L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cbf473d6df607p-3716L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cbf473d6df607p-3716L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cbf473d6df6068p-3716L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f400000000000002p+8L : -0xc.85dd278e10f493cbf473d6df6068p-3716L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f400000000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x1.f400000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f400000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f400000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x1.f400000000000000000000000001p+8L : -0x1.90bba4f1c21ea5ef17ac7baa6303p-3664L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f400000000000000000000000001p+8L : -0x1.90bba4f1c21ea5ef17ac7baa6303p-3664L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f400000000000000000000000001p+8L : -0x1.90bba4f1c21ea5ef17ac7baa6302p-3664L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f400000000000000000000000001p+8L : -0x1.90bba4f1c21ea5ef17ac7baa6302p-3664L : inexact-ok
+= tgamma downward ldbl-128 -0x1.f40000000000000000000000008p+8L : -0x3.217749e3843d4bde2f58f74b1ebp-3672L : inexact-ok
+= tgamma tonearest ldbl-128 -0x1.f40000000000000000000000008p+8L : -0x3.217749e3843d4bde2f58f74b1eaep-3672L : inexact-ok
+= tgamma towardzero ldbl-128 -0x1.f40000000000000000000000008p+8L : -0x3.217749e3843d4bde2f58f74b1eaep-3672L : inexact-ok
+= tgamma upward ldbl-128 -0x1.f40000000000000000000000008p+8L : -0x3.217749e3843d4bde2f58f74b1eaep-3672L : inexact-ok
+= tgamma downward ldbl-128ibm -0x1.f40000000000000000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x1.f40000000000000000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.f40000000000000000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.f40000000000000000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x2ed.fffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x2.edfffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x2.edfffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.edfffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.edfffcp+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.edfffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x2.edfffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x2.edfffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x2.edfffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x2.edfffcp+8L : 0x7.433bfad52f11627p-6076L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.edfffcp+8L : 0x7.433bfad52f116278p-6076L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.edfffcp+8L : 0x7.433bfad52f11627p-6076L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.edfffcp+8L : 0x7.433bfad52f116278p-6076L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.edfffcp+8L : 0x7.433bfad52f11627p-6076L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.edfffcp+8L : 0x7.433bfad52f116278p-6076L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.edfffcp+8L : 0x7.433bfad52f11627p-6076L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.edfffcp+8L : 0x7.433bfad52f116278p-6076L : inexact-ok
+= tgamma downward ldbl-128 -0x2.edfffcp+8L : 0x7.433bfad52f116275e8a6cb1abdbp-6076L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.edfffcp+8L : 0x7.433bfad52f116275e8a6cb1abdbp-6076L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.edfffcp+8L : 0x7.433bfad52f116275e8a6cb1abdbp-6076L : inexact-ok
+= tgamma upward ldbl-128 -0x2.edfffcp+8L : 0x7.433bfad52f116275e8a6cb1abdb4p-6076L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.edfffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x2.edfffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.edfffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.edfffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x2.edffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x2.edffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x2.edffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x2.edffffffffffep+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.edffffffffffep+8L : 0xe.84f75c0458390c4p-6048L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.edffffffffffep+8L : 0xe.84f75c0458390c3p-6048L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.edffffffffffep+8L : 0xe.84f75c0458390c4p-6048L : inexact-ok
+= tgamma downward ldbl-128 -0x2.edffffffffffep+8L : 0xe.84f75c0458390c32001f453d1238p-6048L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.edffffffffffep+8L : 0xe.84f75c0458390c32001f453d124p-6048L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.edffffffffffep+8L : 0xe.84f75c0458390c32001f453d1238p-6048L : inexact-ok
+= tgamma upward ldbl-128 -0x2.edffffffffffep+8L : 0xe.84f75c0458390c32001f453d124p-6048L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.edffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x2.edffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.edffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.edffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b3548p-6036L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b355p-6036L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b3548p-6036L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b355p-6036L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b3548p-6036L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b355p-6036L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b3548p-6036L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b355p-6036L : inexact-ok
+= tgamma downward ldbl-128 -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b354c69c18aff27ccp-6036L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b354c69c18aff27ccp-6036L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b354c69c18aff27ccp-6036L : inexact-ok
+= tgamma upward ldbl-128 -0x2.edfffffffffffffcp+8L : 0x7.427bae02261b354c69c18aff27dp-6036L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.edfffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x2.edfffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.edfffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.edfffffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x2.edfffffffffffffffffffffffffep+8L : 0xe.84f75c044c34ea148fd50d630b88p-5988L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.edfffffffffffffffffffffffffep+8L : 0xe.84f75c044c34ea148fd50d630b88p-5988L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.edfffffffffffffffffffffffffep+8L : 0xe.84f75c044c34ea148fd50d630b88p-5988L : inexact-ok
+= tgamma upward ldbl-128 -0x2.edfffffffffffffffffffffffffep+8L : 0xe.84f75c044c34ea148fd50d630b9p-5988L : inexact-ok
+= tgamma downward ldbl-128 -0x2.edffffffffffffffffffffffffp+8L : 0x1.d09eeb8089869d4291faa1b84d8ap-5992L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.edffffffffffffffffffffffffp+8L : 0x1.d09eeb8089869d4291faa1b84d8bp-5992L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.edffffffffffffffffffffffffp+8L : 0x1.d09eeb8089869d4291faa1b84d8ap-5992L : inexact-ok
+= tgamma upward ldbl-128 -0x2.edffffffffffffffffffffffffp+8L : 0x1.d09eeb8089869d4291faa1b84d8bp-5992L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.edffffffffffffffffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x2.edffffffffffffffffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.edffffffffffffffffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.edffffffffffffffffffffffffp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x2ee.00000000000000000000000002p0
+= tgamma downward flt-32 -0x2.ee0004p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x2.ee0004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x2.ee0004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x2.ee0004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x2.ee0004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x2.ee0004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x2.ee0004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x2.ee0004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x2.ee0004p+8L : -0x7.41bb7690a9f23178p-6076L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.ee0004p+8L : -0x7.41bb7690a9f23178p-6076L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.ee0004p+8L : -0x7.41bb7690a9f2317p-6076L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ee0004p+8L : -0x7.41bb7690a9f23173319e693ba4fp-6076L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ee0004p+8L : -0x7.41bb7690a9f23173319e693ba4fp-6076L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ee0004p+8L : -0x7.41bb7690a9f23173319e693ba4ecp-6076L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ee0004p+8L : -0x7.41bb7690a9f23173319e693ba4ecp-6076L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ee0004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x2.ee0004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.ee0004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.ee0004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x2.ee00000000002p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x2.ee00000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x2.ee00000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x2.ee00000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x2.ee00000000002p+8L : -0xe.84f75c044030c8p-6048L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.ee00000000002p+8L : -0xe.84f75c044030c8p-6048L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.ee00000000002p+8L : -0xe.84f75c044030c7fp-6048L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ee00000000002p+8L : -0xe.84f75c044030c7f71f95864de848p-6048L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ee00000000002p+8L : -0xe.84f75c044030c7f71f95864de848p-6048L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ee00000000002p+8L : -0xe.84f75c044030c7f71f95864de84p-6048L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ee00000000002p+8L : -0xe.84f75c044030c7f71f95864de84p-6048L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ee00000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x2.ee00000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.ee00000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.ee00000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x2.ee00000000000004p+8L : -0x7.427bae022619b4dp-6036L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.ee00000000000004p+8L : -0x7.427bae022619b4dp-6036L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c8p-6036L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c82613826338dcp-6036L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c82613826338d8p-6036L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c82613826338d8p-6036L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ee00000000000004p+8L : -0x7.427bae022619b4c82613826338d8p-6036L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ee00000000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x2.ee00000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.ee00000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.ee00000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x2.ee00000000000000000000000002p+8L : -0xe.84f75c044c34ea148fd50d618b08p-5988L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ee00000000000000000000000002p+8L : -0xe.84f75c044c34ea148fd50d618bp-5988L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ee00000000000000000000000002p+8L : -0xe.84f75c044c34ea148fd50d618bp-5988L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ee00000000000000000000000002p+8L : -0xe.84f75c044c34ea148fd50d618bp-5988L : inexact-ok
+= tgamma downward ldbl-128 -0x2.ee000000000000000000000001p+8L : -0x1.d09eeb8089869d4291faa1a04547p-5992L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.ee000000000000000000000001p+8L : -0x1.d09eeb8089869d4291faa1a04546p-5992L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.ee000000000000000000000001p+8L : -0x1.d09eeb8089869d4291faa1a04546p-5992L : inexact-ok
+= tgamma upward ldbl-128 -0x2.ee000000000000000000000001p+8L : -0x1.d09eeb8089869d4291faa1a04546p-5992L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.ee000000000000000000000001p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x2.ee000000000000000000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x2.ee000000000000000000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x2.ee000000000000000000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x3e7.fffffffffffffffffffffffffep0
+= tgamma downward flt-32 -0x3.e7fffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x3.e7fffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.e7fffcp+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.e7fffcp+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x3.e7fffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x3.e7fffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x3.e7fffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x3.e7fffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dcp-8516L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dep-8516L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dcp-8516L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dep-8516L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dcp-8516L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dep-8516L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dcp-8516L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dep-8516L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dd46b01953bda7p-8516L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dd46b01953bda8p-8516L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dd46b01953bda7p-8516L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e7fffcp+8L : 0x1.84b976c2ef57b0dd46b01953bda8p-8516L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e7fffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x3.e7fffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e7fffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e7fffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x3.e7ffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x3.e7ffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x3.e7ffffffffffep+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x3.e7ffffffffffep+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8283p-8488L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cp-8488L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8283p-8488L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cc35fdfe85228p-8488L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cc35fdfe8522ap-8488L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cc35fdfe85228p-8488L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e7ffffffffffep+8L : 0x3.091f067a14e8282cc35fdfe8522ap-8488L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e7ffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x3.e7ffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e7ffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e7ffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b536p-8476L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b534p-8476L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b536p-8476L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b53479534a4f3588p-8476L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b53479534a4f3589p-8476L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b53479534a4f3588p-8476L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e7fffffffffffffcp+8L : 0x1.848f833d0924b53479534a4f3589p-8476L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e7fffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x3.e7fffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e7fffffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e7fffffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x3.e7fffffffffffffffffffffffffep+8L : 0x3.091f067a12491686bde5e585faa6p-8428L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e7fffffffffffffffffffffffffep+8L : 0x3.091f067a12491686bde5e585faa6p-8428L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e7fffffffffffffffffffffffffep+8L : 0x3.091f067a12491686bde5e585faa6p-8428L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e7fffffffffffffffffffffffffep+8L : 0x3.091f067a12491686bde5e585faa8p-8428L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e7ffffffffffffffffffffffffp+8L : 0x6.123e0cf424922d0d7bcbcb359284p-8436L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e7ffffffffffffffffffffffffp+8L : 0x6.123e0cf424922d0d7bcbcb359284p-8436L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e7ffffffffffffffffffffffffp+8L : 0x6.123e0cf424922d0d7bcbcb359284p-8436L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e7ffffffffffffffffffffffffp+8L : 0x6.123e0cf424922d0d7bcbcb359288p-8436L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e7ffffffffffffffffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x3.e7ffffffffffffffffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e7ffffffffffffffffffffffffp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e7ffffffffffffffffffffffffp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x3e8.00000000000000000000000002p0
+= tgamma downward flt-32 -0x3.e80004p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x3.e80004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x3.e80004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x3.e80004p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x3.e80004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x3.e80004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x3.e80004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x3.e80004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x3.e80004p+8L : -0x1.8465948dfc562cbap-8516L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e80004p+8L : -0x1.8465948dfc562cbap-8516L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e80004p+8L : -0x1.8465948dfc562cb8p-8516L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e80004p+8L : -0x1.8465948dfc562cb8p-8516L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e80004p+8L : -0x1.8465948dfc562cbap-8516L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e80004p+8L : -0x1.8465948dfc562cbap-8516L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e80004p+8L : -0x1.8465948dfc562cb8p-8516L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e80004p+8L : -0x1.8465948dfc562cb8p-8516L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e80004p+8L : -0x1.8465948dfc562cb9461afac63bb1p-8516L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e80004p+8L : -0x1.8465948dfc562cb9461afac63bbp-8516L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e80004p+8L : -0x1.8465948dfc562cb9461afac63bbp-8516L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e80004p+8L : -0x1.8465948dfc562cb9461afac63bbp-8516L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e80004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x3.e80004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e80004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e80004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x3.e800000000002p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x3.e800000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x3.e800000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x3.e800000000002p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x3.e800000000002p+8L : -0x3.091f067a0faa04e4p-8488L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e800000000002p+8L : -0x3.091f067a0faa04e4p-8488L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e800000000002p+8L : -0x3.091f067a0faa04ep-8488L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e800000000002p+8L : -0x3.091f067a0faa04e0b86e569000d6p-8488L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e800000000002p+8L : -0x3.091f067a0faa04e0b86e569000d6p-8488L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e800000000002p+8L : -0x3.091f067a0faa04e0b86e569000d4p-8488L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e800000000002p+8L : -0x3.091f067a0faa04e0b86e569000d4p-8488L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e800000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x3.e800000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e800000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e800000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x3.e800000000000004p+8L : -0x1.848f833d09246154p-8476L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma upward ldbl-96-intel -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x3.e800000000000004p+8L : -0x1.848f833d09246154p-8476L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x3.e800000000000004p+8L : -0x1.848f833d09246152p-8476L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e800000000000004p+8L : -0x1.848f833d0924615244929b36a004p-8476L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e800000000000004p+8L : -0x1.848f833d0924615244929b36a003p-8476L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e800000000000004p+8L : -0x1.848f833d0924615244929b36a003p-8476L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e800000000000004p+8L : -0x1.848f833d0924615244929b36a003p-8476L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e800000000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x3.e800000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e800000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e800000000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x3.e800000000000000000000000002p+8L : -0x3.091f067a12491686bde5e585a6c6p-8428L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e800000000000000000000000002p+8L : -0x3.091f067a12491686bde5e585a6c4p-8428L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e800000000000000000000000002p+8L : -0x3.091f067a12491686bde5e585a6c4p-8428L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e800000000000000000000000002p+8L : -0x3.091f067a12491686bde5e585a6c4p-8428L : inexact-ok
+= tgamma downward ldbl-128 -0x3.e8000000000000000000000001p+8L : -0x6.123e0cf424922d0d7bcbcae1b05p-8436L : inexact-ok
+= tgamma tonearest ldbl-128 -0x3.e8000000000000000000000001p+8L : -0x6.123e0cf424922d0d7bcbcae1b05p-8436L : inexact-ok
+= tgamma towardzero ldbl-128 -0x3.e8000000000000000000000001p+8L : -0x6.123e0cf424922d0d7bcbcae1b04cp-8436L : inexact-ok
+= tgamma upward ldbl-128 -0x3.e8000000000000000000000001p+8L : -0x6.123e0cf424922d0d7bcbcae1b04cp-8436L : inexact-ok
+= tgamma downward ldbl-128ibm -0x3.e8000000000000000000000001p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x3.e8000000000000000000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x3.e8000000000000000000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x3.e8000000000000000000000001p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x4e1.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x4.e1fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x4.e1fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x4.e1fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x4.e1fff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x4.e1fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x4.e1fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x4.e1fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x4.e1fff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e1fff8p+8L : 0x4.ca1e38696cc93878p-11052L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387p-11052L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e1fff8p+8L : 0x4.ca1e38696cc93878p-11052L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387008956e5c448p-11052L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387008956e5c4484p-11052L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387008956e5c448p-11052L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e1fff8p+8L : 0x4.ca1e38696cc9387008956e5c4484p-11052L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e1fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4.e1fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e1fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e1fff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x4.e1ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x4.e1ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x4.e1ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x4.e1ffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ep-11024L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296fp-11024L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ep-11024L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296fp-11024L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ep-11024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296fp-11024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ep-11024L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296fp-11024L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ec13e74625f128p-11024L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ec13e74625f128p-11024L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ec13e74625f128p-11024L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e1ffffffffffcp+8L : 0x9.921a2cbd0d9296ec13e74625f13p-11024L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e1ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4.e1ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e1ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e1ffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f48p-11012L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f5p-11012L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f48p-11012L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f5p-11012L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f48p-11012L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f5p-11012L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f48p-11012L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f5p-11012L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f4f96e17404662cp-11012L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f4f96e17404662cp-11012L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f4f96e17404662cp-11012L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e1fffffffffffff8p+8L : 0x4.c90d165e7e424f4f96e17404663p-11012L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e1fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4.e1fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e1fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e1fffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x4.e1fffffffffffffffffffffffffcp+8L : 0x9.921a2cbcfc827c9be3bce4c3a3bp-10964L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e1fffffffffffffffffffffffffcp+8L : 0x9.921a2cbcfc827c9be3bce4c3a3bp-10964L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e1fffffffffffffffffffffffffcp+8L : 0x9.921a2cbcfc827c9be3bce4c3a3bp-10964L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e1fffffffffffffffffffffffffcp+8L : 0x9.921a2cbcfc827c9be3bce4c3a3b8p-10964L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e1fffffffffffffffffffffffep+8L : 0x1.324345979f904f937c779ca9627p-10968L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e1fffffffffffffffffffffffep+8L : 0x1.324345979f904f937c779ca9627p-10968L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e1fffffffffffffffffffffffep+8L : 0x1.324345979f904f937c779ca9627p-10968L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e1fffffffffffffffffffffffep+8L : 0x1.324345979f904f937c779ca96271p-10968L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e1fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x4.e1fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e1fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e1fffffffffffffffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x4e2.00000000000000000000000004p0
+= tgamma downward flt-32 -0x4.e20008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x4.e20008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x4.e20008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x4.e20008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x4.e20008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x4.e20008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x4.e20008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x4.e20008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x4.e20008p+8L : -0x4.c7fc351a014d05fp-11052L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e20008p+8L : -0x4.c7fc351a014d05fp-11052L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e20008p+8L : -0x4.c7fc351a014d05e8p-11052L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e20008p+8L : -0x4.c7fc351a014d05e8ad7788447bp-11052L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e20008p+8L : -0x4.c7fc351a014d05e8ad7788447afcp-11052L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e20008p+8L : -0x4.c7fc351a014d05e8ad7788447afcp-11052L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e20008p+8L : -0x4.c7fc351a014d05e8ad7788447afcp-11052L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e20008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x4.e20008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e20008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e20008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x4.e200000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x4.e200000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x4.e200000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x4.e200000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x4.e200000000004p+8L : -0x9.921a2cbceb72625p-11024L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e200000000004p+8L : -0x9.921a2cbceb72625p-11024L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e200000000004p+8L : -0x9.921a2cbceb72624p-11024L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e200000000004p+8L : -0x9.921a2cbceb72624p-11024L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e200000000004p+8L : -0x9.921a2cbceb72625p-11024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e200000000004p+8L : -0x9.921a2cbceb72625p-11024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e200000000004p+8L : -0x9.921a2cbceb72624p-11024L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e200000000004p+8L : -0x9.921a2cbceb72624p-11024L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e200000000004p+8L : -0x9.921a2cbceb72624bb3b2e697d0dp-11024L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e200000000004p+8L : -0x9.921a2cbceb72624bb3b2e697d0c8p-11024L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e200000000004p+8L : -0x9.921a2cbceb72624bb3b2e697d0c8p-11024L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e200000000004p+8L : -0x9.921a2cbceb72624bb3b2e697d0c8p-11024L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e200000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x4.e200000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e200000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e200000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d5p-11012L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d5p-11012L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d48p-11012L : inexact-ok
+= tgamma upward ldbl-96-intel -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d48p-11012L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d5p-11012L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d5p-11012L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d48p-11012L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d48p-11012L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d4c4cdb70be6d4cp-11012L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d4c4cdb70be6d48p-11012L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d4c4cdb70be6d48p-11012L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e200000000000008p+8L : -0x4.c90d165e7e402d4c4cdb70be6d48p-11012L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e200000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x4.e200000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e200000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e200000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x4.e200000000000000000000000004p+8L : -0x9.921a2cbcfc827c9be3bce4c181bp-10964L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e200000000000000000000000004p+8L : -0x9.921a2cbcfc827c9be3bce4c181bp-10964L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e200000000000000000000000004p+8L : -0x9.921a2cbcfc827c9be3bce4c181a8p-10964L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e200000000000000000000000004p+8L : -0x9.921a2cbcfc827c9be3bce4c181a8p-10964L : inexact-ok
+= tgamma downward ldbl-128 -0x4.e2000000000000000000000002p+8L : -0x1.324345979f904f937c779c87423cp-10968L : inexact-ok
+= tgamma tonearest ldbl-128 -0x4.e2000000000000000000000002p+8L : -0x1.324345979f904f937c779c87423cp-10968L : inexact-ok
+= tgamma towardzero ldbl-128 -0x4.e2000000000000000000000002p+8L : -0x1.324345979f904f937c779c87423bp-10968L : inexact-ok
+= tgamma upward ldbl-128 -0x4.e2000000000000000000000002p+8L : -0x1.324345979f904f937c779c87423bp-10968L : inexact-ok
+= tgamma downward ldbl-128ibm -0x4.e2000000000000000000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x4.e2000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x4.e2000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x4.e2000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x5db.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x5.dbfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x5.dbfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x5.dbfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x5.dbfff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x5.dbfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x5.dbfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x5.dbfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x5.dbfff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dbfff8p+8L : 0x1.401ec2203b3432acp-13656L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dbfff8p+8L : 0x1.401ec2203b3432aap-13656L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dbfff8p+8L : 0x1.401ec2203b3432acp-13656L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dbfff8p+8L : 0x1.401ec2203b3432aa4674264a913bp-13656L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dbfff8p+8L : 0x1.401ec2203b3432aa4674264a913bp-13656L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dbfff8p+8L : 0x1.401ec2203b3432aa4674264a913bp-13656L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dbfff8p+8L : 0x1.401ec2203b3432aa4674264a913cp-13656L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dbfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x5.dbfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dbfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dbfff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x5.dbffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x5.dbffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x5.dbffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x5.dbffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e57944p-13628L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e5794p-13628L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e57944p-13628L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e579402f82ae0604dcp-13628L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e579402f82ae0604dcp-13628L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e579402f82ae0604dcp-13628L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dbffffffffffcp+8L : 0x2.7fab407c88e579402f82ae0604dep-13628L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dbffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x5.dbffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dbffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dbffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3dap-13616L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9ep-13616L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3dap-13616L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9eaedb9b002425p-13616L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9eaedb9b002425p-13616L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9eaedb9b002425p-13616L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dbfffffffffffff8p+8L : 0x1.3fd5a03e422a3d9eaedb9b002426p-13616L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dbfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x5.dbfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dbfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dbfffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x5.dbfffffffffffffffffffffffffcp+8L : 0x2.7fab407c8453e90b571c29bdd54p-13568L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dbfffffffffffffffffffffffffcp+8L : 0x2.7fab407c8453e90b571c29bdd54p-13568L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dbfffffffffffffffffffffffffcp+8L : 0x2.7fab407c8453e90b571c29bdd54p-13568L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dbfffffffffffffffffffffffffcp+8L : 0x2.7fab407c8453e90b571c29bdd542p-13568L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dbfffffffffffffffffffffffep+8L : 0x4.ff5680f908a7d216ae3853c4315p-13576L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dbfffffffffffffffffffffffep+8L : 0x4.ff5680f908a7d216ae3853c43154p-13576L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dbfffffffffffffffffffffffep+8L : 0x4.ff5680f908a7d216ae3853c4315p-13576L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dbfffffffffffffffffffffffep+8L : 0x4.ff5680f908a7d216ae3853c43154p-13576L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dbfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x5.dbfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dbfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dbfffffffffffffffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x5dc.00000000000000000000000004p0
+= tgamma downward flt-32 -0x5.dc0008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x5.dc0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x5.dc0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x5.dc0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x5.dc0008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x5.dc0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x5.dc0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x5.dc0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x5.dc0008p+8L : -0x1.3f8c90181e39f8ep-13656L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dc0008p+8L : -0x1.3f8c90181e39f8ep-13656L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dc0008p+8L : -0x1.3f8c90181e39f8dep-13656L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dc0008p+8L : -0x1.3f8c90181e39f8de9289b7100a51p-13656L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dc0008p+8L : -0x1.3f8c90181e39f8de9289b7100a5p-13656L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dc0008p+8L : -0x1.3f8c90181e39f8de9289b7100a5p-13656L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dc0008p+8L : -0x1.3f8c90181e39f8de9289b7100a5p-13656L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dc0008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x5.dc0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dc0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dc0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x5.dc00000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x5.dc00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x5.dc00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x5.dc00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d8p-13628L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d8p-13628L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d4p-13628L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d4p-13628L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d8p-13628L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d8p-13628L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d4p-13628L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d4p-13628L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d67ebe835f93b2p-13628L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d67ebe835f93bp-13628L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d67ebe835f93bp-13628L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dc00000000004p+8L : -0x2.7fab407c7fc258d67ebe835f93bp-13628L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dc00000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x5.dc00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dc00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dc00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ep-13616L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma upward ldbl-96-intel -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ep-13616L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6cp-13616L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ca8408ebd79bfp-13616L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ca8408ebd79bep-13616L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ca8408ebd79bep-13616L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dc00000000000008p+8L : -0x1.3fd5a03e4229ab6ca8408ebd79bep-13616L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dc00000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x5.dc00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dc00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dc00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x5.dc00000000000000000000000004p+8L : -0x2.7fab407c8453e90b571c29bd431p-13568L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dc00000000000000000000000004p+8L : -0x2.7fab407c8453e90b571c29bd430ep-13568L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dc00000000000000000000000004p+8L : -0x2.7fab407c8453e90b571c29bd430ep-13568L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dc00000000000000000000000004p+8L : -0x2.7fab407c8453e90b571c29bd430ep-13568L : inexact-ok
+= tgamma downward ldbl-128 -0x5.dc000000000000000000000002p+8L : -0x4.ff5680f908a7d216ae385331ff4cp-13576L : inexact-ok
+= tgamma tonearest ldbl-128 -0x5.dc000000000000000000000002p+8L : -0x4.ff5680f908a7d216ae385331ff4cp-13576L : inexact-ok
+= tgamma towardzero ldbl-128 -0x5.dc000000000000000000000002p+8L : -0x4.ff5680f908a7d216ae385331ff48p-13576L : inexact-ok
+= tgamma upward ldbl-128 -0x5.dc000000000000000000000002p+8L : -0x4.ff5680f908a7d216ae385331ff48p-13576L : inexact-ok
+= tgamma downward ldbl-128ibm -0x5.dc000000000000000000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x5.dc000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x5.dc000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x5.dc000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6d5.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.d5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.d5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.d5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.d5fff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.d5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.d5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.d5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.d5fff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d5fff8p+8L : 0x4.084b5636bf26a378p-16324L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d5fff8p+8L : 0x4.084b5636bf26a37p-16324L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d5fff8p+8L : 0x4.084b5636bf26a378p-16324L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d5fff8p+8L : 0x4.084b5636bf26a3700a13afcc4528p-16324L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d5fff8p+8L : 0x4.084b5636bf26a3700a13afcc4528p-16324L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d5fff8p+8L : 0x4.084b5636bf26a3700a13afcc4528p-16324L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d5fff8p+8L : 0x4.084b5636bf26a3700a13afcc452cp-16324L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.d5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d5fff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.d5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.d5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.d5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.d5ffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527p-16296L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b528p-16296L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527p-16296L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b528p-16296L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527p-16296L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b528p-16296L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527p-16296L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b528p-16296L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527ba5179fb12a28p-16296L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527ba5179fb12a3p-16296L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527ba5179fb12a28p-16296L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d5ffffffffffcp+8L : 0x8.0eb51434948b527ba5179fb12a3p-16296L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.d5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d5ffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c127p-16284L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12708p-16284L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c127p-16284L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12708p-16284L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c127p-16284L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12708p-16284L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c127p-16284L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12708p-16284L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12707a975c5dc83e4p-16284L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12707a975c5dc83e4p-16284L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12707a975c5dc83e4p-16284L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d5fffffffffffff8p+8L : 0x4.075a8a1a42c12707a975c5dc83e8p-16284L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.d5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d5fffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.d5fffffffffffffffffffffffffcp+8L : 0x8.0eb5143485806cb299ca23e6191p-16236L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d5fffffffffffffffffffffffffcp+8L : 0x8.0eb5143485806cb299ca23e61918p-16236L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d5fffffffffffffffffffffffffcp+8L : 0x8.0eb5143485806cb299ca23e6191p-16236L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d5fffffffffffffffffffffffffcp+8L : 0x8.0eb5143485806cb299ca23e61918p-16236L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d5fffffffffffffffffffffffep+8L : 0x1.01d6a28690b00d965339448baff2p-16240L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d5fffffffffffffffffffffffep+8L : 0x1.01d6a28690b00d965339448baff3p-16240L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d5fffffffffffffffffffffffep+8L : 0x1.01d6a28690b00d965339448baff2p-16240L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d5fffffffffffffffffffffffep+8L : 0x1.01d6a28690b00d965339448baff3p-16240L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d5fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.d5fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d5fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d5fffffffffffffffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6d6.00000000000000000000000004p0
+= tgamma downward flt-32 -0x6.d60008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.d60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.d60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.d60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.d60008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.d60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.d60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.d60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.d60008p+8L : -0x4.0669f97879582148p-16324L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d60008p+8L : -0x4.0669f97879582148p-16324L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d60008p+8L : -0x4.0669f9787958214p-16324L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d60008p+8L : -0x4.0669f9787958214p-16324L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d60008p+8L : -0x4.0669f97879582148p-16324L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d60008p+8L : -0x4.0669f97879582148p-16324L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d60008p+8L : -0x4.0669f9787958214p-16324L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d60008p+8L : -0x4.0669f9787958214p-16324L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d60008p+8L : -0x4.0669f97879582146f7297f556c28p-16324L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d60008p+8L : -0x4.0669f97879582146f7297f556c28p-16324L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d60008p+8L : -0x4.0669f97879582146f7297f556c24p-16324L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d60008p+8L : -0x4.0669f97879582146f7297f556c24p-16324L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d60008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.d60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.d600000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.d600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.d600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.d600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.d600000000004p+8L : -0x8.0eb51434767586fp-16296L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d600000000004p+8L : -0x8.0eb51434767586fp-16296L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d600000000004p+8L : -0x8.0eb51434767586ep-16296L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d600000000004p+8L : -0x8.0eb51434767586ep-16296L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d600000000004p+8L : -0x8.0eb51434767586fp-16296L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d600000000004p+8L : -0x8.0eb51434767586fp-16296L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d600000000004p+8L : -0x8.0eb51434767586ep-16296L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d600000000004p+8L : -0x8.0eb51434767586ep-16296L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d600000000004p+8L : -0x8.0eb51434767586e98e9a65727928p-16296L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d600000000004p+8L : -0x8.0eb51434767586e98e9a6572792p-16296L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d600000000004p+8L : -0x8.0eb51434767586e98e9a6572792p-16296L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d600000000004p+8L : -0x8.0eb51434767586e98e9a6572792p-16296L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d600000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.d600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45bp-16284L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma upward ldbl-96-intel -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45bp-16284L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45a8p-16284L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45aaf0545e08dffcp-16284L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45aaf0545e08dff8p-16284L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45aaf0545e08dff8p-16284L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d600000000000008p+8L : -0x4.075a8a1a42bf45aaf0545e08dff8p-16284L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d600000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.d600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.d600000000000000000000000004p+8L : -0x8.0eb5143485806cb299ca23e437b8p-16236L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d600000000000000000000000004p+8L : -0x8.0eb5143485806cb299ca23e437b8p-16236L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d600000000000000000000000004p+8L : -0x8.0eb5143485806cb299ca23e437bp-16236L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d600000000000000000000000004p+8L : -0x8.0eb5143485806cb299ca23e437bp-16236L : inexact-ok
+= tgamma downward ldbl-128 -0x6.d6000000000000000000000002p+8L : -0x1.01d6a28690b00d965339446d9a27p-16240L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.d6000000000000000000000002p+8L : -0x1.01d6a28690b00d965339446d9a27p-16240L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.d6000000000000000000000002p+8L : -0x1.01d6a28690b00d965339446d9a26p-16240L : inexact-ok
+= tgamma upward ldbl-128 -0x6.d6000000000000000000000002p+8L : -0x1.01d6a28690b00d965339446d9a26p-16240L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.d6000000000000000000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.d6000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.d6000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.d6000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6e2.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.e2fff8p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.e2fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e2fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e2fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e2fff8p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e2fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e2fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e2fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e2fff8p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e2fff8p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e2fff8p+8L : -0x3.b2335954p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e2fff8p+8L : -0x3.b233595p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e2fff8p+8L : -0x3.b233595p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e2fff8p+8L : -0x3.b233595p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e2fff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e2fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e2ffffffffffcp+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e2ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e2ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e2ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e2ffffffffffcp+8L : -0x7.63p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e2ffffffffffcp+8L : -0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e2ffffffffffcp+8L : -0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e2ffffffffffcp+8L : -0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e2ffffffffffcp+8L : -0x7.62cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e2ffffffffffcp+8L : -0x7.62cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e2ffffffffffcp+8L : -0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e2ffffffffffcp+8L : -0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e2ffffffffffcp+8L : -0x7.62acd4c5e5169cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e2ffffffffffcp+8L : -0x7.62acd4c5e5169cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e2ffffffffffcp+8L : -0x7.62acd4c5e5169bcp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e2ffffffffffcp+8L : -0x7.62acd4c5e5169bcp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e2ffffffffffcp+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e2ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e2ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e2ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e2fffffffffffff8p+8L : -0x3.b1567p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e2fffffffffffff8p+8L : -0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e2fffffffffffff8p+8L : -0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e2fffffffffffff8p+8L : -0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e2fffffffffffff8p+8L : -0x3.b1566cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e2fffffffffffff8p+8L : -0x3.b1566cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e2fffffffffffff8p+8L : -0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e2fffffffffffff8p+8L : -0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e2fffffffffffff8p+8L : -0x3.b1566a62eba58dee84p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e2fffffffffffff8p+8L : -0x3.b1566a62eba58dee84p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e2fffffffffffff8p+8L : -0x3.b1566a62eba58dee8p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e2fffffffffffff8p+8L : -0x3.b1566a62eba58dee8p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e2fffffffffffff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e2fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e2fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e2fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e2fffffffffffffffffffffffffcp+8L : -0x7.62acd4c5d7496235ce8ca060a7bp-16376L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.e2fffffffffffffffffffffffffcp+8L : -0x7.62acd4c5d7496235ce8ca060a7bp-16376L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.e2fffffffffffffffffffffffffcp+8L : -0x7.62acd4c5d7496235ce8ca060a7acp-16376L : inexact-ok
+= tgamma upward ldbl-128 -0x6.e2fffffffffffffffffffffffffcp+8L : -0x7.62acd4c5d7496235ce8ca060a7acp-16376L : inexact-ok
+= tgamma downward ldbl-128 -0x6.e2fffffffffffffffffffffffep+8L : -0xe.c559a98bae92c46b9d19419c6958p-16384L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.e2fffffffffffffffffffffffep+8L : -0xe.c559a98bae92c46b9d19419c695p-16384L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.e2fffffffffffffffffffffffep+8L : -0xe.c559a98bae92c46b9d19419c695p-16384L : inexact-ok
+= tgamma upward ldbl-128 -0x6.e2fffffffffffffffffffffffep+8L : -0xe.c559a98bae92c46b9d19419c695p-16384L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.e2fffffffffffffffffffffffep+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e2fffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e2fffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e2fffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6e3.00000000000000000000000004p0
+= tgamma downward flt-32 -0x6.e30008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.e30008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e30008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e30008p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e30008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e30008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e30008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e30008p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e30008p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e30008p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e30008p+8L : 0x3.b079b214p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e30008p+8L : 0x3.b079b214p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e30008p+8L : 0x3.b079b214p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e30008p+8L : 0x3.b079b218p-16464L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e30008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e30008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e300000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e300000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e300000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e300000000004p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e300000000004p+8L : 0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e300000000004p+8L : 0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e300000000004p+8L : 0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e300000000004p+8L : 0x7.63p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e300000000004p+8L : 0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e300000000004p+8L : 0x7.62cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e300000000004p+8L : 0x7.628p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e300000000004p+8L : 0x7.62cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e300000000004p+8L : 0x7.62acd4c5c97c284p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e300000000004p+8L : 0x7.62acd4c5c97c288p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e300000000004p+8L : 0x7.62acd4c5c97c284p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e300000000004p+8L : 0x7.62acd4c5c97c288p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e300000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e300000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e300000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e300000000004p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e300000000000008p+8L : 0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e300000000000008p+8L : 0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e300000000000008p+8L : 0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e300000000000008p+8L : 0x3.b1567p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e300000000000008p+8L : 0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e300000000000008p+8L : 0x3.b1566cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e300000000000008p+8L : 0x3.b15668p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e300000000000008p+8L : 0x3.b1566cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e300000000000008p+8L : 0x3.b1566a62eba3d44748p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e300000000000008p+8L : 0x3.b1566a62eba3d4474cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e300000000000008p+8L : 0x3.b1566a62eba3d44748p-16424L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e300000000000008p+8L : 0x3.b1566a62eba3d4474cp-16424L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e300000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e300000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e300000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e300000000000008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e300000000000000000000000004p+8L : 0x7.62acd4c5d7496235ce8ca05eee08p-16376L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.e300000000000000000000000004p+8L : 0x7.62acd4c5d7496235ce8ca05eee08p-16376L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.e300000000000000000000000004p+8L : 0x7.62acd4c5d7496235ce8ca05eee08p-16376L : inexact-ok
+= tgamma upward ldbl-128 -0x6.e300000000000000000000000004p+8L : 0x7.62acd4c5d7496235ce8ca05eee0cp-16376L : inexact-ok
+= tgamma downward ldbl-128 -0x6.e3000000000000000000000002p+8L : 0xe.c559a98bae92c46b9d193fe2c218p-16384L : inexact-ok
+= tgamma tonearest ldbl-128 -0x6.e3000000000000000000000002p+8L : 0xe.c559a98bae92c46b9d193fe2c22p-16384L : inexact-ok
+= tgamma towardzero ldbl-128 -0x6.e3000000000000000000000002p+8L : 0xe.c559a98bae92c46b9d193fe2c218p-16384L : inexact-ok
+= tgamma upward ldbl-128 -0x6.e3000000000000000000000002p+8L : 0xe.c559a98bae92c46b9d193fe2c22p-16384L : inexact-ok
+= tgamma downward ldbl-128ibm -0x6.e3000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e3000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e3000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e3000000000000000000000002p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6e3.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.e3fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.e3fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e3fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e3fff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e3fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e3fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e3fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e3fff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e3fff8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e3fff8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e3fff8p+8L : 0x8.9512cp-16476L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e3fff8p+8L : 0x8.9512cp-16476L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e3fff8p+8L : 0x8.9512cp-16476L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e3fff8p+8L : 0x8.9513p-16476L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e3fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e3fff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e3ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e3ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e3ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e3ffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e3ffffffffffcp+8L : 0x1.8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e3ffffffffffcp+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e3ffffffffffcp+8L : 0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e3ffffffffffcp+8L : 0x1.12623994e1f8cp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e3ffffffffffcp+8L : 0x1.12623994e1f8cp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e3ffffffffffcp+8L : 0x1.12623994e1f8cp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e3ffffffffffcp+8L : 0x1.12623994e1f9p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e3ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e3ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e3ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e3ffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e3fffffffffffff8p+8L : 0x8.938p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e3fffffffffffff8p+8L : 0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e3fffffffffffff8p+8L : 0x8.934p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e3fffffffffffff8p+8L : 0x8.9311cca6ffc297cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e3fffffffffffff8p+8L : 0x8.9311cca6ffc298p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e3fffffffffffff8p+8L : 0x8.9311cca6ffc297cp-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e3fffffffffffff8p+8L : 0x8.9311cca6ffc298p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e3fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e3fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e3fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e3fffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e3fffffffffffffffffffffffffcp+8L : 0x1.12623994dff812e58f2c3575efb4p-16384L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e3fffffffffffffffffffffffffcp+8L : 0x1.12623994dff812e58f2c3575efb4p-16384L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e3fffffffffffffffffffffffffcp+8L : 0x1.12623994dff812e58f2c3575efb4p-16384L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e3fffffffffffffffffffffffffcp+8L : 0x1.12623994dff812e58f2c3575efb8p-16384L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e3fffffffffffffffffffffffep+8L : 0x2.24c47329bff025cb1e586b0bacp-16392L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e3fffffffffffffffffffffffep+8L : 0x2.24c47329bff025cb1e586b0bacp-16392L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e3fffffffffffffffffffffffep+8L : 0x2.24c47329bff025cb1e586b0bacp-16392L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e3fffffffffffffffffffffffep+8L : 0x2.24c47329bff025cb1e586b0bbp-16392L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e3fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e3fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e3fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e3fffffffffffffffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6e4.00000000000000000000000004p0
+= tgamma downward flt-32 -0x6.e40008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.e40008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e40008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e40008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e40008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e40008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e40008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e40008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e40008p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e40008p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e40008p+8L : -0x8.91114p-16476L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e40008p+8L : -0x8.91114p-16476L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e40008p+8L : -0x8.9111p-16476L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e40008p+8L : -0x8.9111p-16476L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e40008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e40008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e400000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e400000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e400000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e400000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e400000000004p+8L : -0x1.8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e400000000004p+8L : -0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e400000000004p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e400000000004p+8L : -0x1.12623994ddf78p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e400000000004p+8L : -0x1.12623994ddf74p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e400000000004p+8L : -0x1.12623994ddf74p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e400000000004p+8L : -0x1.12623994ddf74p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e400000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e400000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e400000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e400000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e400000000000008p+8L : -0x8.938p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e400000000000008p+8L : -0x8.934p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e400000000000008p+8L : -0x8.93p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e400000000000008p+8L : -0x8.9311cca6ffbe968p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e400000000000008p+8L : -0x8.9311cca6ffbe968p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e400000000000008p+8L : -0x8.9311cca6ffbe964p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e400000000000008p+8L : -0x8.9311cca6ffbe964p-16436L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e400000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e400000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e400000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e400000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e400000000000000000000000004p+8L : -0x1.12623994dff812e58f2c3575af9cp-16384L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e400000000000000000000000004p+8L : -0x1.12623994dff812e58f2c3575af9cp-16384L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e400000000000000000000000004p+8L : -0x1.12623994dff812e58f2c3575af98p-16384L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e400000000000000000000000004p+8L : -0x1.12623994dff812e58f2c3575af98p-16384L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e4000000000000000000000002p+8L : -0x2.24c47329bff025cb1e586acb94p-16392L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e4000000000000000000000002p+8L : -0x2.24c47329bff025cb1e586acb94p-16392L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e4000000000000000000000002p+8L : -0x2.24c47329bff025cb1e586acb9p-16392L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e4000000000000000000000002p+8L : -0x2.24c47329bff025cb1e586acb9p-16392L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e4000000000000000000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e4000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e4000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e4000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6e4.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.e4fff8p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.e4fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e4fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e4fff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e4fff8p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e4fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e4fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e4fff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e4fff8p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e4fff8p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e4fff8p+8L : -0x1.3ecp-16484L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e4fff8p+8L : -0x1.3ecp-16484L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e4fff8p+8L : -0x1.3e8p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e4fff8p+8L : -0x1.3e8p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e4fff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e4fff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e4ffffffffffcp+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e4ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e4ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e4ffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e4ffffffffffcp+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e4ffffffffffcp+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e4ffffffffffcp+8L : -0x2.7cc1b7f54cp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e4ffffffffffcp+8L : -0x2.7cc1b7f548p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e4ffffffffffcp+8L : -0x2.7cc1b7f548p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e4ffffffffffcp+8L : -0x2.7cc1b7f548p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e4ffffffffffcp+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e4ffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e4fffffffffffff8p+8L : -0x1.8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e4fffffffffffff8p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e4fffffffffffff8p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e4fffffffffffff8p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e4fffffffffffff8p+8L : -0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e4fffffffffffff8p+8L : -0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e4fffffffffffff8p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e4fffffffffffff8p+8L : -0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e4fffffffffffff8p+8L : -0x1.3e60dbfaa21f8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e4fffffffffffff8p+8L : -0x1.3e60dbfaa21f8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e4fffffffffffff8p+8L : -0x1.3e60dbfaa21f4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e4fffffffffffff8p+8L : -0x1.3e60dbfaa21f4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e4fffffffffffff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e4fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e4fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e4fffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e4fffffffffffffffffffffffffcp+8L : -0x2.7cc1b7f5443e3fde7cd8e356p-16396L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e4fffffffffffffffffffffffffcp+8L : -0x2.7cc1b7f5443e3fde7cd8e355cp-16396L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e4fffffffffffffffffffffffffcp+8L : -0x2.7cc1b7f5443e3fde7cd8e355cp-16396L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e4fffffffffffffffffffffffffcp+8L : -0x2.7cc1b7f5443e3fde7cd8e355cp-16396L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e4fffffffffffffffffffffffep+8L : -0x4.f9836fea887c7fbcf9b1c7p-16404L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e4fffffffffffffffffffffffep+8L : -0x4.f9836fea887c7fbcf9b1c7p-16404L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e4fffffffffffffffffffffffep+8L : -0x4.f9836fea887c7fbcf9b1c6cp-16404L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e4fffffffffffffffffffffffep+8L : -0x4.f9836fea887c7fbcf9b1c6cp-16404L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e4fffffffffffffffffffffffep+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e4fffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e4fffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e4fffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6e5.00000000000000000000000004p0
+= tgamma downward flt-32 -0x6.e50008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.e50008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e50008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e50008p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e50008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e50008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e50008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e50008p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e50008p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e50008p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e50008p+8L : 0x1.3ep-16484L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e50008p+8L : 0x1.3ep-16484L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e50008p+8L : 0x1.3ep-16484L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e50008p+8L : 0x1.3e4p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e50008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e50008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e500000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e500000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e500000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e500000000004p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e500000000004p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e500000000004p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e500000000004p+8L : 0x2.7cc1b7f53cp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e500000000004p+8L : 0x2.7cc1b7f54p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e500000000004p+8L : 0x2.7cc1b7f53cp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e500000000004p+8L : 0x2.7cc1b7f54p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e500000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e500000000004p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e500000000000008p+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e500000000000008p+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-intel -0x6.e500000000000008p+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-intel -0x6.e500000000000008p+8L : 0x1.8p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e500000000000008p+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e500000000000008p+8L : 0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-96-m68k -0x6.e500000000000008p+8L : 0x1p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-96-m68k -0x6.e500000000000008p+8L : 0x1.4p-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e500000000000008p+8L : 0x1.3e60dbfaa21ecp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e500000000000008p+8L : 0x1.3e60dbfaa21ecp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e500000000000008p+8L : 0x1.3e60dbfaa21ecp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e500000000000008p+8L : 0x1.3e60dbfaa21fp-16444L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e500000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e500000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e500000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e500000000000008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e500000000000000000000000004p+8L : 0x2.7cc1b7f5443e3fde7cd8e3554p-16396L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e500000000000000000000000004p+8L : 0x2.7cc1b7f5443e3fde7cd8e3554p-16396L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e500000000000000000000000004p+8L : 0x2.7cc1b7f5443e3fde7cd8e3554p-16396L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e500000000000000000000000004p+8L : 0x2.7cc1b7f5443e3fde7cd8e3558p-16396L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e5000000000000000000000002p+8L : 0x4.f9836fea887c7fbcf9b1c64p-16404L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e5000000000000000000000002p+8L : 0x4.f9836fea887c7fbcf9b1c68p-16404L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e5000000000000000000000002p+8L : 0x4.f9836fea887c7fbcf9b1c64p-16404L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e5000000000000000000000002p+8L : 0x4.f9836fea887c7fbcf9b1c68p-16404L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e5000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e5000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e5000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e5000000000000000000000002p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6e5.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.e5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.e5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e5fff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e5fff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e5fff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e5fff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e5fff8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e5fff8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e5fff8p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e5fff8p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e5fff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e5fff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.e5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.e5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e5ffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e5ffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e5ffffffffffcp+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e5ffffffffffcp+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e5ffffffffffcp+8L : 0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e5ffffffffffcp+8L : 0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e5ffffffffffcp+8L : 0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e5ffffffffffcp+8L : 0x5.c4df2acp-16468L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e5ffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e5ffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e5fffffffffffff8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e5fffffffffffff8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e5fffffffffffff8p+8L : 0x2.e26f9542bp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e5fffffffffffff8p+8L : 0x2.e26f9542b4p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e5fffffffffffff8p+8L : 0x2.e26f9542bp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e5fffffffffffff8p+8L : 0x2.e26f9542b4p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e5fffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e5fffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e5fffffffffffffffffffffffffcp+8L : 0x5.c4df2a8566e7ef75f81b9p-16408L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e5fffffffffffffffffffffffffcp+8L : 0x5.c4df2a8566e7ef75f81b94p-16408L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e5fffffffffffffffffffffffffcp+8L : 0x5.c4df2a8566e7ef75f81b9p-16408L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e5fffffffffffffffffffffffffcp+8L : 0x5.c4df2a8566e7ef75f81b94p-16408L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e5fffffffffffffffffffffffep+8L : 0xb.89be550acdcfdeebf034p-16416L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e5fffffffffffffffffffffffep+8L : 0xb.89be550acdcfdeebf038p-16416L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e5fffffffffffffffffffffffep+8L : 0xb.89be550acdcfdeebf034p-16416L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e5fffffffffffffffffffffffep+8L : 0xb.89be550acdcfdeebf038p-16416L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e5fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.e5fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e5fffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e5fffffffffffffffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6e6.00000000000000000000000004p0
+= tgamma downward flt-32 -0x6.e60008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.e60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.e60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.e60008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e60008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e60008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e60008p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e60008p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e60008p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e60008p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e60008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e60008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.e600000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.e600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.e600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.e600000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e600000000004p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e600000000004p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e600000000004p+8L : -0x5.c4df2acp-16468L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e600000000004p+8L : -0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e600000000004p+8L : -0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e600000000004p+8L : -0x5.c4df2a8p-16468L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e600000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e600000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.e600000000000008p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.e600000000000008p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e600000000000008p+8L : -0x2.e26f9542b4p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e600000000000008p+8L : -0x2.e26f9542b4p-16456L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e600000000000008p+8L : -0x2.e26f9542bp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e600000000000008p+8L : -0x2.e26f9542bp-16456L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e600000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e600000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.e600000000000000000000000004p+8L : -0x5.c4df2a8566e7ef75f81b94p-16408L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e600000000000000000000000004p+8L : -0x5.c4df2a8566e7ef75f81b94p-16408L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e600000000000000000000000004p+8L : -0x5.c4df2a8566e7ef75f81b9p-16408L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e600000000000000000000000004p+8L : -0x5.c4df2a8566e7ef75f81b9p-16408L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.e6000000000000000000000002p+8L : -0xb.89be550acdcfdeebf038p-16416L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.e6000000000000000000000002p+8L : -0xb.89be550acdcfdeebf038p-16416L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.e6000000000000000000000002p+8L : -0xb.89be550acdcfdeebf034p-16416L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.e6000000000000000000000002p+8L : -0xb.89be550acdcfdeebf034p-16416L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.e6000000000000000000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.e6000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.e6000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.e6000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6eb.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.ebfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.ebfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.ebfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.ebfff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.ebfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.ebfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ebfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ebfff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ebfff8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ebfff8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ebfff8p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ebfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ebfff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.ebffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.ebffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ebffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ebffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ebffffffffffcp+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ebffffffffffcp+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ebffffffffffcp+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ebffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ebffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ebfffffffffffff8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ebfffffffffffff8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ebfffffffffffff8p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ebfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ebfffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ebfffffffffffffffffffffffffcp+8L : 0x3.777bc8p-16472L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ebfffffffffffffffffffffffffcp+8L : 0x3.777bccp-16472L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.ebfffffffffffffffffffffffffcp+8L : 0x3.777bc8p-16472L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.ebfffffffffffffffffffffffffcp+8L : 0x3.777bccp-16472L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ebfffffffffffffffffffffffep+8L : 0x6.eef4p-16480L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ebfffffffffffffffffffffffep+8L : 0x6.eef8p-16480L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.ebfffffffffffffffffffffffep+8L : 0x6.eef4p-16480L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.ebfffffffffffffffffffffffep+8L : 0x6.eef8p-16480L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ebfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ebfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ebfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ebfffffffffffffffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6ec.00000000000000000000000004p0
+= tgamma downward flt-32 -0x6.ec0008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.ec0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.ec0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.ec0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.ec0008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.ec0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ec0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ec0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.ec0008p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.ec0008p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ec0008p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.ec0008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ec0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.ec00000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.ec00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ec00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ec00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.ec00000000004p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.ec00000000004p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ec00000000004p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.ec00000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ec00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.ec00000000000008p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.ec00000000000008p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ec00000000000008p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.ec00000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ec00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ec00000000000000000000000004p+8L : -0x3.777bccp-16472L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ec00000000000000000000000004p+8L : -0x3.777bccp-16472L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.ec00000000000000000000000004p+8L : -0x3.777bc8p-16472L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.ec00000000000000000000000004p+8L : -0x3.777bc8p-16472L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ec000000000000000000000002p+8L : -0x6.eef8p-16480L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ec000000000000000000000002p+8L : -0x6.eef8p-16480L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.ec000000000000000000000002p+8L : -0x6.eef4p-16480L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.ec000000000000000000000002p+8L : -0x6.eef4p-16480L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ec000000000000000000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ec000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ec000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ec000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6ec.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.ecfff8p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.ecfff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.ecfff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.ecfff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.ecfff8p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.ecfff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ecfff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ecfff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.ecfff8p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.ecfff8p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ecfff8p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.ecfff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ecfff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.ecffffffffffcp+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.ecffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ecffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ecffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.ecffffffffffcp+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.ecffffffffffcp+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ecffffffffffcp+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.ecffffffffffcp+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ecffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.ecfffffffffffff8p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.ecfffffffffffff8p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ecfffffffffffff8p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.ecfffffffffffff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ecfffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ecfffffffffffffffffffffffffcp+8L : -0x8.028p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ecfffffffffffffffffffffffffcp+8L : -0x8.024p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.ecfffffffffffffffffffffffffcp+8L : -0x8.024p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.ecfffffffffffffffffffffffffcp+8L : -0x8.024p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ecfffffffffffffffffffffffep+8L : -0x1.04p-16488L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ecfffffffffffffffffffffffep+8L : -0x1p-16488L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.ecfffffffffffffffffffffffep+8L : -0x1p-16488L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.ecfffffffffffffffffffffffep+8L : -0x1p-16488L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ecfffffffffffffffffffffffep+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ecfffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ecfffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ecfffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6ed.00000000000000000000000004p0
+= tgamma downward flt-32 -0x6.ed0008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.ed0008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.ed0008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.ed0008p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.ed0008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.ed0008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ed0008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ed0008p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ed0008p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ed0008p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ed0008p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ed0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ed0008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.ed00000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.ed00000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ed00000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ed00000000004p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ed00000000004p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ed00000000004p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ed00000000004p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ed00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ed00000000004p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ed00000000000008p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ed00000000000008p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ed00000000000008p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ed00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ed00000000000008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ed00000000000000000000000004p+8L : 0x8.024p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ed00000000000000000000000004p+8L : 0x8.024p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.ed00000000000000000000000004p+8L : 0x8.024p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.ed00000000000000000000000004p+8L : 0x8.028p-16484L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ed000000000000000000000002p+8L : 0x1p-16488L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ed000000000000000000000002p+8L : 0x1p-16488L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.ed000000000000000000000002p+8L : 0x1p-16488L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.ed000000000000000000000002p+8L : 0x1.04p-16488L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ed000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ed000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ed000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ed000000000000000000000002p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6ed.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.edfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.edfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.edfff8p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.edfff8p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.edfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.edfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.edfff8p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.edfff8p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.edfff8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.edfff8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.edfff8p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.edfff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.edfff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.edffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.edffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.edffffffffffcp+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.edffffffffffcp+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.edffffffffffcp+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.edffffffffffcp+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.edffffffffffcp+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.edffffffffffcp+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.edffffffffffcp+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.edfffffffffffff8p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.edfffffffffffff8p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.edfffffffffffff8p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.edfffffffffffff8p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.edfffffffffffff8p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.edfffffffffffffffffffffffffcp+8L : 0x1p-16492L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.edfffffffffffffffffffffffffcp+8L : 0x1.4p-16492L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.edfffffffffffffffffffffffffcp+8L : 0x1p-16492L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.edfffffffffffffffffffffffffcp+8L : 0x1.4p-16492L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.edfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.edfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.edfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.edfffffffffffffffffffffffep+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.edfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.edfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.edfffffffffffffffffffffffep+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.edfffffffffffffffffffffffep+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x6ee.00000000000000000000000004p0
+= tgamma downward flt-32 -0x6.ee0008p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.ee0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.ee0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.ee0008p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.ee0008p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.ee0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ee0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ee0008p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.ee0008p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.ee0008p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ee0008p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.ee0008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ee0008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.ee00000000004p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.ee00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ee00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ee00000000004p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.ee00000000004p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.ee00000000004p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ee00000000004p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.ee00000000004p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ee00000000004p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.ee00000000000008p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.ee00000000000008p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ee00000000000008p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.ee00000000000008p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ee00000000000008p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.ee00000000000000000000000004p+8L : -0x1.4p-16492L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ee00000000000000000000000004p+8L : -0x1.4p-16492L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128 -0x6.ee00000000000000000000000004p+8L : -0x1p-16492L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128 -0x6.ee00000000000000000000000004p+8L : -0x1p-16492L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ee000000000000000000000002p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.ee000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ee000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ee000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.ee000000000000000000000002p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.ee000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ee000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ee000000000000000000000002p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6ee.fffffffffffffffffffffffffcp0
+= tgamma downward flt-32 -0x6.eefff8p+8f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x6.eefff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.eefff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.eefff8p+8f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.eefff8p+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.eefff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.eefff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.eefff8p+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.eefff8p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.eefff8p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.eefff8p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.eefff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.eefff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x6.eeffffffffffcp+8 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x6.eeffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.eeffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.eeffffffffffcp+8 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.eeffffffffffcp+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.eeffffffffffcp+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.eeffffffffffcp+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.eeffffffffffcp+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.eeffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x6.eefffffffffffff8p+8L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x6.eefffffffffffff8p+8L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.eefffffffffffff8p+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.eefffffffffffff8p+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.eefffffffffffff8p+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.eefffffffffffffffffffffffffcp+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.eefffffffffffffffffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.eefffffffffffffffffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.eefffffffffffffffffffffffffcp+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x6.eefffffffffffffffffffffffep+8L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x6.eefffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.eefffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.eefffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x6.eefffffffffffffffffffffffep+8L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x6.eefffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.eefffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.eefffffffffffffffffffffffep+8L : -0x0p+0L : inexact-ok underflow errno-erange
+tgamma -0x6ef.00000000000000000000000004p0
+= tgamma downward flt-32 -0x6.ef0008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma tonearest flt-32 -0x6.ef0008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x6.ef0008p+8f : 0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x6.ef0008p+8f : 0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.ef0008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.ef0008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ef0008p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ef0008p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ef0008p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ef0008p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ef0008p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ef0008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ef0008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0x6.ef00000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma tonearest dbl-64 -0x6.ef00000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x6.ef00000000004p+8 : 0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x6.ef00000000004p+8 : 0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ef00000000004p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ef00000000004p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ef00000000004p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ef00000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ef00000000004p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-intel -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-intel -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x6.ef00000000000008p+8L : 0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-96-m68k -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-96-m68k -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x6.ef00000000000008p+8L : 0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ef00000000000008p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ef00000000000008p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ef00000000000008p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ef00000000000000000000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ef00000000000000000000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ef00000000000000000000000004p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ef00000000000000000000000004p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128 -0x6.ef000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128 -0x6.ef000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x6.ef000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x6.ef000000000000000000000002p+8L : 0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma downward ldbl-128ibm -0x6.ef000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma tonearest ldbl-128ibm -0x6.ef000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x6.ef000000000000000000000002p+8L : 0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x6.ef000000000000000000000002p+8L : 0x4p-1076L : inexact-ok underflow errno-erange-ok
+tgamma -0x1.0a32a2p+5
+= tgamma downward flt-32 -0x2.146544p+4f : 0x3.dad55cp-124f : inexact-ok
+= tgamma tonearest flt-32 -0x2.146544p+4f : 0x3.dad55cp-124f : inexact-ok
+= tgamma towardzero flt-32 -0x2.146544p+4f : 0x3.dad55cp-124f : inexact-ok
+= tgamma upward flt-32 -0x2.146544p+4f : 0x3.dad56p-124f : inexact-ok
+= tgamma downward dbl-64 -0x2.146544p+4 : 0x3.dad55d40f5984p-124 : inexact-ok
+= tgamma tonearest dbl-64 -0x2.146544p+4 : 0x3.dad55d40f5984p-124 : inexact-ok
+= tgamma towardzero dbl-64 -0x2.146544p+4 : 0x3.dad55d40f5984p-124 : inexact-ok
+= tgamma upward dbl-64 -0x2.146544p+4 : 0x3.dad55d40f5986p-124 : inexact-ok
+= tgamma downward ldbl-96-intel -0x2.146544p+4L : 0x3.dad55d40f5984ddp-124L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0x2.146544p+4L : 0x3.dad55d40f5984ddp-124L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0x2.146544p+4L : 0x3.dad55d40f5984ddp-124L : inexact-ok
+= tgamma upward ldbl-96-intel -0x2.146544p+4L : 0x3.dad55d40f5984dd4p-124L : inexact-ok
+= tgamma downward ldbl-96-m68k -0x2.146544p+4L : 0x3.dad55d40f5984ddp-124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0x2.146544p+4L : 0x3.dad55d40f5984ddp-124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0x2.146544p+4L : 0x3.dad55d40f5984ddp-124L : inexact-ok
+= tgamma upward ldbl-96-m68k -0x2.146544p+4L : 0x3.dad55d40f5984dd4p-124L : inexact-ok
+= tgamma downward ldbl-128 -0x2.146544p+4L : 0x3.dad55d40f5984dd04dd66948eda2p-124L : inexact-ok
+= tgamma tonearest ldbl-128 -0x2.146544p+4L : 0x3.dad55d40f5984dd04dd66948eda4p-124L : inexact-ok
+= tgamma towardzero ldbl-128 -0x2.146544p+4L : 0x3.dad55d40f5984dd04dd66948eda2p-124L : inexact-ok
+= tgamma upward ldbl-128 -0x2.146544p+4L : 0x3.dad55d40f5984dd04dd66948eda4p-124L : inexact-ok
+= tgamma downward ldbl-128ibm -0x2.146544p+4L : 0x3.dad55d40f5984dd04dd66948edp-124L : inexact-ok
+= tgamma tonearest ldbl-128ibm -0x2.146544p+4L : 0x3.dad55d40f5984dd04dd66948eep-124L : inexact-ok
+= tgamma towardzero ldbl-128ibm -0x2.146544p+4L : 0x3.dad55d40f5984dd04dd66948edp-124L : inexact-ok
+= tgamma upward ldbl-128ibm -0x2.146544p+4L : 0x3.dad55d40f5984dd04dd66948eep-124L : inexact-ok
+tgamma -0x1.5800000080001p+7
+= tgamma downward flt-32 -0xa.c0001p+4f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0xa.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0xa.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0xa.c0001p+4f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0xa.c0001p+4 : -0x3.73075511ee22cp-1020 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.c0001p+4 : -0x3.73075511ee22cp-1020 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.c0001p+4 : -0x3.73075511ee22ap-1020 : inexact-ok
+= tgamma upward dbl-64 -0xa.c0001p+4 : -0x3.73075511ee22ap-1020 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.c0001p+4L : -0x3.73075511ee22b5p-1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.c0001p+4L : -0x3.73075511ee22b5p-1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.c0001p+4L : -0x3.73075511ee22b4fcp-1020L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.c0001p+4L : -0x3.73075511ee22b4fcp-1020L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.c0001p+4L : -0x3.73075511ee22b5p-1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.c0001p+4L : -0x3.73075511ee22b5p-1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.c0001p+4L : -0x3.73075511ee22b4fcp-1020L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.c0001p+4L : -0x3.73075511ee22b4fcp-1020L : inexact-ok
+= tgamma downward ldbl-128 -0xa.c0001p+4L : -0x3.73075511ee22b4fe33881f27afd4p-1020L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.c0001p+4L : -0x3.73075511ee22b4fe33881f27afd2p-1020L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.c0001p+4L : -0x3.73075511ee22b4fe33881f27afd2p-1020L : inexact-ok
+= tgamma upward ldbl-128 -0xa.c0001p+4L : -0x3.73075511ee22b4fe33881f27afd2p-1020L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.c0001p+4L : -0x3.73075511ee22b8p-1020L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xa.c0001p+4L : -0x3.73075511ee22b4p-1020L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xa.c0001p+4L : -0x3.73075511ee22b4p-1020L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xa.c0001p+4L : -0x3.73075511ee22b4p-1020L : inexact-ok underflow errno-erange-ok
+= tgamma downward dbl-64 -0xa.c000000400008p+4 : -0xd.cc629963ba2d8p-1012 : inexact-ok
+= tgamma tonearest dbl-64 -0xa.c000000400008p+4 : -0xd.cc629963ba2dp-1012 : inexact-ok
+= tgamma towardzero dbl-64 -0xa.c000000400008p+4 : -0xd.cc629963ba2dp-1012 : inexact-ok
+= tgamma upward dbl-64 -0xa.c000000400008p+4 : -0xd.cc629963ba2dp-1012 : inexact-ok
+= tgamma downward ldbl-96-intel -0xa.c000000400008p+4L : -0xd.cc629963ba2d25p-1012L : inexact-ok
+= tgamma tonearest ldbl-96-intel -0xa.c000000400008p+4L : -0xd.cc629963ba2d24fp-1012L : inexact-ok
+= tgamma towardzero ldbl-96-intel -0xa.c000000400008p+4L : -0xd.cc629963ba2d24fp-1012L : inexact-ok
+= tgamma upward ldbl-96-intel -0xa.c000000400008p+4L : -0xd.cc629963ba2d24fp-1012L : inexact-ok
+= tgamma downward ldbl-96-m68k -0xa.c000000400008p+4L : -0xd.cc629963ba2d25p-1012L : inexact-ok
+= tgamma tonearest ldbl-96-m68k -0xa.c000000400008p+4L : -0xd.cc629963ba2d24fp-1012L : inexact-ok
+= tgamma towardzero ldbl-96-m68k -0xa.c000000400008p+4L : -0xd.cc629963ba2d24fp-1012L : inexact-ok
+= tgamma upward ldbl-96-m68k -0xa.c000000400008p+4L : -0xd.cc629963ba2d24fp-1012L : inexact-ok
+= tgamma downward ldbl-128 -0xa.c000000400008p+4L : -0xd.cc629963ba2d24f78944d83c12dp-1012L : inexact-ok
+= tgamma tonearest ldbl-128 -0xa.c000000400008p+4L : -0xd.cc629963ba2d24f78944d83c12dp-1012L : inexact-ok
+= tgamma towardzero ldbl-128 -0xa.c000000400008p+4L : -0xd.cc629963ba2d24f78944d83c12c8p-1012L : inexact-ok
+= tgamma upward ldbl-128 -0xa.c000000400008p+4L : -0xd.cc629963ba2d24f78944d83c12c8p-1012L : inexact-ok
+= tgamma downward ldbl-128ibm -0xa.c000000400008p+4L : -0xd.cc629963ba2d24f8p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0xa.c000000400008p+4L : -0xd.cc629963ba2d24f8p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma towardzero ldbl-128ibm -0xa.c000000400008p+4L : -0xd.cc629963ba2d24f4p-1012L : inexact-ok underflow errno-erange-ok
+= tgamma upward ldbl-128ibm -0xa.c000000400008p+4L : -0xd.cc629963ba2d24f4p-1012L : inexact-ok underflow errno-erange-ok
+tgamma 18.5
+= tgamma downward flt-32 0x1.28p+4f : 0x5.52fac8p+48f : inexact-ok
+= tgamma tonearest flt-32 0x1.28p+4f : 0x5.52fadp+48f : inexact-ok
+= tgamma towardzero flt-32 0x1.28p+4f : 0x5.52fac8p+48f : inexact-ok
+= tgamma upward flt-32 0x1.28p+4f : 0x5.52fadp+48f : inexact-ok
+= tgamma downward dbl-64 0x1.28p+4 : 0x5.52facf180f08p+48 : inexact-ok
+= tgamma tonearest dbl-64 0x1.28p+4 : 0x5.52facf180f08p+48 : inexact-ok
+= tgamma towardzero dbl-64 0x1.28p+4 : 0x5.52facf180f08p+48 : inexact-ok
+= tgamma upward dbl-64 0x1.28p+4 : 0x5.52facf180f084p+48 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.28p+4L : 0x5.52facf180f081e2p+48L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.28p+4L : 0x5.52facf180f081e28p+48L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.28p+4L : 0x5.52facf180f081e2p+48L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.28p+4L : 0x5.52facf180f081e28p+48L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.28p+4L : 0x5.52facf180f081e2p+48L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.28p+4L : 0x5.52facf180f081e28p+48L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.28p+4L : 0x5.52facf180f081e2p+48L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.28p+4L : 0x5.52facf180f081e28p+48L : inexact-ok
+= tgamma downward ldbl-128 0x1.28p+4L : 0x5.52facf180f081e240615cf937ca8p+48L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.28p+4L : 0x5.52facf180f081e240615cf937cacp+48L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.28p+4L : 0x5.52facf180f081e240615cf937ca8p+48L : inexact-ok
+= tgamma upward ldbl-128 0x1.28p+4L : 0x5.52facf180f081e240615cf937cacp+48L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.28p+4L : 0x5.52facf180f081e240615cf937cp+48L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.28p+4L : 0x5.52facf180f081e240615cf937cp+48L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.28p+4L : 0x5.52facf180f081e240615cf937cp+48L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.28p+4L : 0x5.52facf180f081e240615cf937ep+48L : inexact-ok
+tgamma 19.5
+= tgamma downward flt-32 0x1.38p+4f : 0x6.27f1f8p+52f : inexact-ok
+= tgamma tonearest flt-32 0x1.38p+4f : 0x6.27f2p+52f : inexact-ok
+= tgamma towardzero flt-32 0x1.38p+4f : 0x6.27f1f8p+52f : inexact-ok
+= tgamma upward flt-32 0x1.38p+4f : 0x6.27f2p+52f : inexact-ok
+= tgamma downward dbl-64 0x1.38p+4 : 0x6.27f1ff73d1614p+52 : inexact-ok
+= tgamma tonearest dbl-64 0x1.38p+4 : 0x6.27f1ff73d1618p+52 : inexact-ok
+= tgamma towardzero dbl-64 0x1.38p+4 : 0x6.27f1ff73d1614p+52 : inexact-ok
+= tgamma upward dbl-64 0x1.38p+4 : 0x6.27f1ff73d1618p+52 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.38p+4L : 0x6.27f1ff73d16162d8p+52L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.38p+4L : 0x6.27f1ff73d16162d8p+52L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.38p+4L : 0x6.27f1ff73d16162d8p+52L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.38p+4L : 0x6.27f1ff73d16162ep+52L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.38p+4L : 0x6.27f1ff73d16162d8p+52L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.38p+4L : 0x6.27f1ff73d16162d8p+52L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.38p+4L : 0x6.27f1ff73d16162d8p+52L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.38p+4L : 0x6.27f1ff73d16162ep+52L : inexact-ok
+= tgamma downward ldbl-128 0x1.38p+4L : 0x6.27f1ff73d16162d9a70938028824p+52L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.38p+4L : 0x6.27f1ff73d16162d9a70938028824p+52L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.38p+4L : 0x6.27f1ff73d16162d9a70938028824p+52L : inexact-ok
+= tgamma upward ldbl-128 0x1.38p+4L : 0x6.27f1ff73d16162d9a70938028828p+52L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.38p+4L : 0x6.27f1ff73d16162d9a709380288p+52L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.38p+4L : 0x6.27f1ff73d16162d9a709380288p+52L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.38p+4L : 0x6.27f1ff73d16162d9a709380288p+52L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.38p+4L : 0x6.27f1ff73d16162d9a70938028ap+52L : inexact-ok
+tgamma 23.5
+= tgamma downward flt-32 0x1.78p+4f : 0x1.22a308p+72f : inexact-ok
+= tgamma tonearest flt-32 0x1.78p+4f : 0x1.22a308p+72f : inexact-ok
+= tgamma towardzero flt-32 0x1.78p+4f : 0x1.22a308p+72f : inexact-ok
+= tgamma upward flt-32 0x1.78p+4f : 0x1.22a30ap+72f : inexact-ok
+= tgamma downward dbl-64 0x1.78p+4 : 0x1.22a3089777c43p+72 : inexact-ok
+= tgamma tonearest dbl-64 0x1.78p+4 : 0x1.22a3089777c43p+72 : inexact-ok
+= tgamma towardzero dbl-64 0x1.78p+4 : 0x1.22a3089777c43p+72 : inexact-ok
+= tgamma upward dbl-64 0x1.78p+4 : 0x1.22a3089777c44p+72 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.78p+4L : 0x1.22a3089777c436c4p+72L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.78p+4L : 0x1.22a3089777c436c4p+72L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.78p+4L : 0x1.22a3089777c436c4p+72L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.78p+4L : 0x1.22a3089777c436c6p+72L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.78p+4L : 0x1.22a3089777c436c4p+72L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.78p+4L : 0x1.22a3089777c436c4p+72L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.78p+4L : 0x1.22a3089777c436c4p+72L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.78p+4L : 0x1.22a3089777c436c6p+72L : inexact-ok
+= tgamma downward ldbl-128 0x1.78p+4L : 0x1.22a3089777c436c4737f96330b3fp+72L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.78p+4L : 0x1.22a3089777c436c4737f96330b4p+72L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.78p+4L : 0x1.22a3089777c436c4737f96330b3fp+72L : inexact-ok
+= tgamma upward ldbl-128 0x1.78p+4L : 0x1.22a3089777c436c4737f96330b4p+72L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.78p+4L : 0x1.22a3089777c436c4737f96330bp+72L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.78p+4L : 0x1.22a3089777c436c4737f96330bp+72L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.78p+4L : 0x1.22a3089777c436c4737f96330bp+72L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.78p+4L : 0x1.22a3089777c436c4737f96330b8p+72L : inexact-ok
+tgamma 29.5
+= tgamma downward flt-32 0x1.d8p+4f : 0x1.4a25d2p+100f : inexact-ok
+= tgamma tonearest flt-32 0x1.d8p+4f : 0x1.4a25d4p+100f : inexact-ok
+= tgamma towardzero flt-32 0x1.d8p+4f : 0x1.4a25d2p+100f : inexact-ok
+= tgamma upward flt-32 0x1.d8p+4f : 0x1.4a25d4p+100f : inexact-ok
+= tgamma downward dbl-64 0x1.d8p+4 : 0x1.4a25d38b82b7dp+100 : inexact-ok
+= tgamma tonearest dbl-64 0x1.d8p+4 : 0x1.4a25d38b82b7ep+100 : inexact-ok
+= tgamma towardzero dbl-64 0x1.d8p+4 : 0x1.4a25d38b82b7dp+100 : inexact-ok
+= tgamma upward dbl-64 0x1.d8p+4 : 0x1.4a25d38b82b7ep+100 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.d8p+4L : 0x1.4a25d38b82b7dc7cp+100L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.d8p+4L : 0x1.4a25d38b82b7dc7ep+100L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.d8p+4L : 0x1.4a25d38b82b7dc7cp+100L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.d8p+4L : 0x1.4a25d38b82b7dc7ep+100L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.d8p+4L : 0x1.4a25d38b82b7dc7cp+100L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.d8p+4L : 0x1.4a25d38b82b7dc7ep+100L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.d8p+4L : 0x1.4a25d38b82b7dc7cp+100L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.d8p+4L : 0x1.4a25d38b82b7dc7ep+100L : inexact-ok
+= tgamma downward ldbl-128 0x1.d8p+4L : 0x1.4a25d38b82b7dc7daa7b3b78ed27p+100L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.d8p+4L : 0x1.4a25d38b82b7dc7daa7b3b78ed28p+100L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.d8p+4L : 0x1.4a25d38b82b7dc7daa7b3b78ed27p+100L : inexact-ok
+= tgamma upward ldbl-128 0x1.d8p+4L : 0x1.4a25d38b82b7dc7daa7b3b78ed28p+100L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.d8p+4L : 0x1.4a25d38b82b7dc7daa7b3b78edp+100L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.d8p+4L : 0x1.4a25d38b82b7dc7daa7b3b78edp+100L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.d8p+4L : 0x1.4a25d38b82b7dc7daa7b3b78edp+100L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.d8p+4L : 0x1.4a25d38b82b7dc7daa7b3b78ed8p+100L : inexact-ok
+tgamma 30.5
+= tgamma downward flt-32 0x1.e8p+4f : 0x2.60b5bcp+104f : inexact-ok
+= tgamma tonearest flt-32 0x1.e8p+4f : 0x2.60b5cp+104f : inexact-ok
+= tgamma towardzero flt-32 0x1.e8p+4f : 0x2.60b5bcp+104f : inexact-ok
+= tgamma upward flt-32 0x1.e8p+4f : 0x2.60b5cp+104f : inexact-ok
+= tgamma downward dbl-64 0x1.e8p+4 : 0x2.60b5be093902ep+104 : inexact-ok
+= tgamma tonearest dbl-64 0x1.e8p+4 : 0x2.60b5be093903p+104 : inexact-ok
+= tgamma towardzero dbl-64 0x1.e8p+4 : 0x2.60b5be093902ep+104 : inexact-ok
+= tgamma upward dbl-64 0x1.e8p+4 : 0x2.60b5be093903p+104 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.e8p+4L : 0x2.60b5be093902fe84p+104L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.e8p+4L : 0x2.60b5be093902fe88p+104L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.e8p+4L : 0x2.60b5be093902fe84p+104L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.e8p+4L : 0x2.60b5be093902fe88p+104L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.e8p+4L : 0x2.60b5be093902fe84p+104L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.e8p+4L : 0x2.60b5be093902fe88p+104L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.e8p+4L : 0x2.60b5be093902fe84p+104L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.e8p+4L : 0x2.60b5be093902fe88p+104L : inexact-ok
+= tgamma downward ldbl-128 0x1.e8p+4L : 0x2.60b5be093902fe87b25335a6f54p+104L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.e8p+4L : 0x2.60b5be093902fe87b25335a6f542p+104L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.e8p+4L : 0x2.60b5be093902fe87b25335a6f54p+104L : inexact-ok
+= tgamma upward ldbl-128 0x1.e8p+4L : 0x2.60b5be093902fe87b25335a6f542p+104L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.e8p+4L : 0x2.60b5be093902fe87b25335a6f5p+104L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.e8p+4L : 0x2.60b5be093902fe87b25335a6f5p+104L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.e8p+4L : 0x2.60b5be093902fe87b25335a6f5p+104L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.e8p+4L : 0x2.60b5be093902fe87b25335a6f6p+104L : inexact-ok
+tgamma 31.5
+= tgamma downward flt-32 0x1.f8p+4f : 0x4.885a7p+108f : inexact-ok
+= tgamma tonearest flt-32 0x1.f8p+4f : 0x4.885a7p+108f : inexact-ok
+= tgamma towardzero flt-32 0x1.f8p+4f : 0x4.885a7p+108f : inexact-ok
+= tgamma upward flt-32 0x1.f8p+4f : 0x4.885a78p+108f : inexact-ok
+= tgamma downward dbl-64 0x1.f8p+4 : 0x4.885a724194ad8p+108 : inexact-ok
+= tgamma tonearest dbl-64 0x1.f8p+4 : 0x4.885a724194adcp+108 : inexact-ok
+= tgamma towardzero dbl-64 0x1.f8p+4 : 0x4.885a724194ad8p+108 : inexact-ok
+= tgamma upward dbl-64 0x1.f8p+4 : 0x4.885a724194adcp+108 : inexact-ok
+= tgamma downward ldbl-96-intel 0x1.f8p+4L : 0x4.885a724194adb53p+108L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x1.f8p+4L : 0x4.885a724194adb53p+108L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x1.f8p+4L : 0x4.885a724194adb53p+108L : inexact-ok
+= tgamma upward ldbl-96-intel 0x1.f8p+4L : 0x4.885a724194adb538p+108L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x1.f8p+4L : 0x4.885a724194adb53p+108L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x1.f8p+4L : 0x4.885a724194adb53p+108L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x1.f8p+4L : 0x4.885a724194adb53p+108L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x1.f8p+4L : 0x4.885a724194adb538p+108L : inexact-ok
+= tgamma downward ldbl-128 0x1.f8p+4L : 0x4.885a724194adb532abee9e464384p+108L : inexact-ok
+= tgamma tonearest ldbl-128 0x1.f8p+4L : 0x4.885a724194adb532abee9e464384p+108L : inexact-ok
+= tgamma towardzero ldbl-128 0x1.f8p+4L : 0x4.885a724194adb532abee9e464384p+108L : inexact-ok
+= tgamma upward ldbl-128 0x1.f8p+4L : 0x4.885a724194adb532abee9e464388p+108L : inexact-ok
+= tgamma downward ldbl-128ibm 0x1.f8p+4L : 0x4.885a724194adb532abee9e4642p+108L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x1.f8p+4L : 0x4.885a724194adb532abee9e4644p+108L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x1.f8p+4L : 0x4.885a724194adb532abee9e4642p+108L : inexact-ok
+= tgamma upward ldbl-128ibm 0x1.f8p+4L : 0x4.885a724194adb532abee9e4644p+108L : inexact-ok
+tgamma 32.5
+= tgamma downward flt-32 0x2.08p+4f : 0x8.ec721p+112f : inexact-ok
+= tgamma tonearest flt-32 0x2.08p+4f : 0x8.ec721p+112f : inexact-ok
+= tgamma towardzero flt-32 0x2.08p+4f : 0x8.ec721p+112f : inexact-ok
+= tgamma upward flt-32 0x2.08p+4f : 0x8.ec722p+112f : inexact-ok
+= tgamma downward dbl-64 0x2.08p+4 : 0x8.ec7210f11cb58p+112 : inexact-ok
+= tgamma tonearest dbl-64 0x2.08p+4 : 0x8.ec7210f11cb6p+112 : inexact-ok
+= tgamma towardzero dbl-64 0x2.08p+4 : 0x8.ec7210f11cb58p+112 : inexact-ok
+= tgamma upward dbl-64 0x2.08p+4 : 0x8.ec7210f11cb6p+112 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.08p+4L : 0x8.ec7210f11cb5fcbp+112L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.08p+4L : 0x8.ec7210f11cb5fccp+112L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.08p+4L : 0x8.ec7210f11cb5fcbp+112L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.08p+4L : 0x8.ec7210f11cb5fccp+112L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.08p+4L : 0x8.ec7210f11cb5fcbp+112L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.08p+4L : 0x8.ec7210f11cb5fccp+112L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.08p+4L : 0x8.ec7210f11cb5fcbp+112L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.08p+4L : 0x8.ec7210f11cb5fccp+112L : inexact-ok
+= tgamma downward ldbl-128 0x2.08p+4L : 0x8.ec7210f11cb5fcbbc27dc79a54e8p+112L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.08p+4L : 0x8.ec7210f11cb5fcbbc27dc79a54fp+112L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.08p+4L : 0x8.ec7210f11cb5fcbbc27dc79a54e8p+112L : inexact-ok
+= tgamma upward ldbl-128 0x2.08p+4L : 0x8.ec7210f11cb5fcbbc27dc79a54fp+112L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.08p+4L : 0x8.ec7210f11cb5fcbbc27dc79a54p+112L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.08p+4L : 0x8.ec7210f11cb5fcbbc27dc79a54p+112L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.08p+4L : 0x8.ec7210f11cb5fcbbc27dc79a54p+112L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.08p+4L : 0x8.ec7210f11cb5fcbbc27dc79a58p+112L : inexact-ok
+tgamma 33.5
+= tgamma downward flt-32 0x2.18p+4f : 0x1.22047ap+120f : inexact-ok
+= tgamma tonearest flt-32 0x2.18p+4f : 0x1.22047cp+120f : inexact-ok
+= tgamma towardzero flt-32 0x2.18p+4f : 0x1.22047ap+120f : inexact-ok
+= tgamma upward flt-32 0x2.18p+4f : 0x1.22047cp+120f : inexact-ok
+= tgamma downward dbl-64 0x2.18p+4 : 0x1.22047b269c251p+120 : inexact-ok
+= tgamma tonearest dbl-64 0x2.18p+4 : 0x1.22047b269c252p+120 : inexact-ok
+= tgamma towardzero dbl-64 0x2.18p+4 : 0x1.22047b269c251p+120 : inexact-ok
+= tgamma upward dbl-64 0x2.18p+4 : 0x1.22047b269c252p+120 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.18p+4L : 0x1.22047b269c251a94p+120L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.18p+4L : 0x1.22047b269c251a96p+120L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.18p+4L : 0x1.22047b269c251a94p+120L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.18p+4L : 0x1.22047b269c251a96p+120L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.18p+4L : 0x1.22047b269c251a94p+120L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.18p+4L : 0x1.22047b269c251a96p+120L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.18p+4L : 0x1.22047b269c251a94p+120L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.18p+4L : 0x1.22047b269c251a96p+120L : inexact-ok
+= tgamma downward ldbl-128 0x2.18p+4L : 0x1.22047b269c251a95d630f7d717c7p+120L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.18p+4L : 0x1.22047b269c251a95d630f7d717c8p+120L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.18p+4L : 0x1.22047b269c251a95d630f7d717c7p+120L : inexact-ok
+= tgamma upward ldbl-128 0x2.18p+4L : 0x1.22047b269c251a95d630f7d717c8p+120L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.18p+4L : 0x1.22047b269c251a95d630f7d7178p+120L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.18p+4L : 0x1.22047b269c251a95d630f7d718p+120L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.18p+4L : 0x1.22047b269c251a95d630f7d7178p+120L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.18p+4L : 0x1.22047b269c251a95d630f7d718p+120L : inexact-ok
+tgamma 34.5
+= tgamma downward flt-32 0x2.28p+4f : 0x2.5f396p+124f : inexact-ok
+= tgamma tonearest flt-32 0x2.28p+4f : 0x2.5f396p+124f : inexact-ok
+= tgamma towardzero flt-32 0x2.28p+4f : 0x2.5f396p+124f : inexact-ok
+= tgamma upward flt-32 0x2.28p+4f : 0x2.5f3964p+124f : inexact-ok
+= tgamma downward dbl-64 0x2.28p+4 : 0x2.5f3961d8d6edap+124 : inexact-ok
+= tgamma tonearest dbl-64 0x2.28p+4 : 0x2.5f3961d8d6edap+124 : inexact-ok
+= tgamma towardzero dbl-64 0x2.28p+4 : 0x2.5f3961d8d6edap+124 : inexact-ok
+= tgamma upward dbl-64 0x2.28p+4 : 0x2.5f3961d8d6edcp+124 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.28p+4L : 0x2.5f3961d8d6edafa8p+124L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.28p+4L : 0x2.5f3961d8d6edafa8p+124L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.28p+4L : 0x2.5f3961d8d6edafa8p+124L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.28p+4L : 0x2.5f3961d8d6edafacp+124L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.28p+4L : 0x2.5f3961d8d6edafa8p+124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.28p+4L : 0x2.5f3961d8d6edafa8p+124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.28p+4L : 0x2.5f3961d8d6edafa8p+124L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.28p+4L : 0x2.5f3961d8d6edafacp+124L : inexact-ok
+= tgamma downward ldbl-128 0x2.28p+4L : 0x2.5f3961d8d6edafa9b87686ea59cap+124L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.28p+4L : 0x2.5f3961d8d6edafa9b87686ea59cap+124L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.28p+4L : 0x2.5f3961d8d6edafa9b87686ea59cap+124L : inexact-ok
+= tgamma upward ldbl-128 0x2.28p+4L : 0x2.5f3961d8d6edafa9b87686ea59ccp+124L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.28p+4L : 0x2.5f3961d8d6edafa9b87686ea59p+124L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.28p+4L : 0x2.5f3961d8d6edafa9b87686ea5ap+124L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.28p+4L : 0x2.5f3961d8d6edafa9b87686ea59p+124L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.28p+4L : 0x2.5f3961d8d6edafa9b87686ea5ap+124L : inexact-ok
+tgamma 0x2.30a43cp+4
+= tgamma downward flt-32 0x2.30a43cp+4f : 0xf.fff81p+124f : inexact-ok
+= tgamma tonearest flt-32 0x2.30a43cp+4f : 0xf.fff81p+124f : inexact-ok
+= tgamma towardzero flt-32 0x2.30a43cp+4f : 0xf.fff81p+124f : inexact-ok
+= tgamma upward flt-32 0x2.30a43cp+4f : 0xf.fff82p+124f : inexact-ok
+= tgamma downward dbl-64 0x2.30a43cp+4 : 0xf.fff8101486328p+124 : inexact-ok
+= tgamma tonearest dbl-64 0x2.30a43cp+4 : 0xf.fff8101486328p+124 : inexact-ok
+= tgamma towardzero dbl-64 0x2.30a43cp+4 : 0xf.fff8101486328p+124 : inexact-ok
+= tgamma upward dbl-64 0x2.30a43cp+4 : 0xf.fff810148633p+124 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.30a43cp+4L : 0xf.fff81014863292cp+124L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.30a43cp+4L : 0xf.fff81014863292cp+124L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.30a43cp+4L : 0xf.fff81014863292cp+124L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.30a43cp+4L : 0xf.fff81014863292dp+124L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.30a43cp+4L : 0xf.fff81014863292cp+124L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.30a43cp+4L : 0xf.fff81014863292cp+124L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.30a43cp+4L : 0xf.fff81014863292cp+124L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.30a43cp+4L : 0xf.fff81014863292dp+124L : inexact-ok
+= tgamma downward ldbl-128 0x2.30a43cp+4L : 0xf.fff81014863292c45a7f575432ep+124L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.30a43cp+4L : 0xf.fff81014863292c45a7f575432ep+124L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.30a43cp+4L : 0xf.fff81014863292c45a7f575432ep+124L : inexact-ok
+= tgamma upward ldbl-128 0x2.30a43cp+4L : 0xf.fff81014863292c45a7f575432e8p+124L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.30a43cp+4L : 0xf.fff81014863292c45a7f57543p+124L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.30a43cp+4L : 0xf.fff81014863292c45a7f575434p+124L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.30a43cp+4L : 0xf.fff81014863292c45a7f57543p+124L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.30a43cp+4L : 0xf.fff81014863292c45a7f575434p+124L : inexact-ok
+tgamma 0x2.30a44p+4
+= tgamma downward flt-32 0x2.30a44p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x2.30a44p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x2.30a44p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x2.30a44p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x2.30a44p+4 : 0x1.000063b3eab19p+128 : inexact-ok
+= tgamma tonearest dbl-64 0x2.30a44p+4 : 0x1.000063b3eab1ap+128 : inexact-ok
+= tgamma towardzero dbl-64 0x2.30a44p+4 : 0x1.000063b3eab19p+128 : inexact-ok
+= tgamma upward dbl-64 0x2.30a44p+4 : 0x1.000063b3eab1ap+128 : inexact-ok
+= tgamma downward ldbl-96-intel 0x2.30a44p+4L : 0x1.000063b3eab1992cp+128L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x2.30a44p+4L : 0x1.000063b3eab1992cp+128L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x2.30a44p+4L : 0x1.000063b3eab1992cp+128L : inexact-ok
+= tgamma upward ldbl-96-intel 0x2.30a44p+4L : 0x1.000063b3eab1992ep+128L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x2.30a44p+4L : 0x1.000063b3eab1992cp+128L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x2.30a44p+4L : 0x1.000063b3eab1992cp+128L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x2.30a44p+4L : 0x1.000063b3eab1992cp+128L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x2.30a44p+4L : 0x1.000063b3eab1992ep+128L : inexact-ok
+= tgamma downward ldbl-128 0x2.30a44p+4L : 0x1.000063b3eab1992caf0e008639d8p+128L : inexact-ok
+= tgamma tonearest ldbl-128 0x2.30a44p+4L : 0x1.000063b3eab1992caf0e008639d9p+128L : inexact-ok
+= tgamma towardzero ldbl-128 0x2.30a44p+4L : 0x1.000063b3eab1992caf0e008639d8p+128L : inexact-ok
+= tgamma upward ldbl-128 0x2.30a44p+4L : 0x1.000063b3eab1992caf0e008639d9p+128L : inexact-ok
+= tgamma downward ldbl-128ibm 0x2.30a44p+4L : 0x1.000063b3eab1992caf0e0086398p+128L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0x2.30a44p+4L : 0x1.000063b3eab1992caf0e00863ap+128L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0x2.30a44p+4L : 0x1.000063b3eab1992caf0e0086398p+128L : inexact-ok
+= tgamma upward ldbl-128ibm 0x2.30a44p+4L : 0x1.000063b3eab1992caf0e00863ap+128L : inexact-ok
+tgamma 0xa.b9fd72b0fb238p+4
+= tgamma downward flt-32 0xa.b9fd8p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0xa.b9fd8p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0xa.b9fd8p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0xa.b9fd8p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0xa.b9fd8p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0xa.b9fd8p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0xa.b9fd8p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0xa.b9fd8p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b4p+1024L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b4p+1024L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9dd9p+1024L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9ddap+1024L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9dd9p+1024L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9ddap+1024L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd8p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd8p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0xa.b9fd8p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd8p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward flt-32 0xa.b9fd7p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0xa.b9fd7p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0xa.b9fd7p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0xa.b9fd7p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0xa.b9fd7p+4 : 0xf.fff229034cebp+1020 : inexact-ok
+= tgamma tonearest dbl-64 0xa.b9fd7p+4 : 0xf.fff229034ceb8p+1020 : inexact-ok
+= tgamma towardzero dbl-64 0xa.b9fd7p+4 : 0xf.fff229034cebp+1020 : inexact-ok
+= tgamma upward dbl-64 0xa.b9fd7p+4 : 0xf.fff229034ceb8p+1020 : inexact-ok
+= tgamma downward ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a6p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a6p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc737p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7p+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc74p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7p+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc74p+1020L : inexact-ok
+= tgamma downward dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff28p+1020 : inexact-ok
+= tgamma tonearest dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff288p+1020 : inexact-ok
+= tgamma towardzero dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff28p+1020 : inexact-ok
+= tgamma upward dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff288p+1020 : inexact-ok
+= tgamma downward ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28753p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28753p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4fp+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4f8p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4fp+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4f8p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4p+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4p+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef8p+1020L : inexact-ok
+tgamma 0xa.b9fd72b0fb24p+4
+= tgamma downward flt-32 0xa.b9fd8p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0xa.b9fd8p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0xa.b9fd8p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0xa.b9fd8p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0xa.b9fd8p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0xa.b9fd8p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0xa.b9fd8p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0xa.b9fd8p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b4p+1024L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b4p+1024L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9dd9p+1024L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9ddap+1024L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9dd9p+1024L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9ddap+1024L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd8p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd8p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0xa.b9fd8p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd8p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward flt-32 0xa.b9fd7p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0xa.b9fd7p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0xa.b9fd7p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0xa.b9fd7p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0xa.b9fd7p+4 : 0xf.fff229034cebp+1020 : inexact-ok
+= tgamma tonearest dbl-64 0xa.b9fd7p+4 : 0xf.fff229034ceb8p+1020 : inexact-ok
+= tgamma towardzero dbl-64 0xa.b9fd7p+4 : 0xf.fff229034cebp+1020 : inexact-ok
+= tgamma upward dbl-64 0xa.b9fd7p+4 : 0xf.fff229034ceb8p+1020 : inexact-ok
+= tgamma downward ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a6p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a6p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc737p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7p+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc74p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7p+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc74p+1020L : inexact-ok
+= tgamma downward dbl-64 0xa.b9fd72b0fb24p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0xa.b9fd72b0fb24p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0xa.b9fd72b0fb24p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0xa.b9fd72b0fb24p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf2p+1024L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf2p+1024L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e5p+1024L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e6p+1024L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e5p+1024L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e6p+1024L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb24p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb24p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb24p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb24p+4L : plus_infty : inexact-ok overflow errno-erange
+tgamma 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4
+= tgamma downward flt-32 0xa.b9fd8p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0xa.b9fd8p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0xa.b9fd8p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0xa.b9fd8p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0xa.b9fd8p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0xa.b9fd8p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0xa.b9fd8p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0xa.b9fd8p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b4p+1024L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b4p+1024L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9dd9p+1024L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9ddap+1024L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9dd9p+1024L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9ddap+1024L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd8p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd8p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0xa.b9fd8p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd8p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward flt-32 0xa.b9fd7p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0xa.b9fd7p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0xa.b9fd7p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0xa.b9fd7p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0xa.b9fd7p+4 : 0xf.fff229034cebp+1020 : inexact-ok
+= tgamma tonearest dbl-64 0xa.b9fd7p+4 : 0xf.fff229034ceb8p+1020 : inexact-ok
+= tgamma towardzero dbl-64 0xa.b9fd7p+4 : 0xf.fff229034cebp+1020 : inexact-ok
+= tgamma upward dbl-64 0xa.b9fd7p+4 : 0xf.fff229034ceb8p+1020 : inexact-ok
+= tgamma downward ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a6p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a6p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc737p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7p+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc74p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7p+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc74p+1020L : inexact-ok
+= tgamma downward dbl-64 0xa.b9fd72b0fb24p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0xa.b9fd72b0fb24p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0xa.b9fd72b0fb24p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0xa.b9fd72b0fb24p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf2p+1024L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf2p+1024L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e5p+1024L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e6p+1024L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e5p+1024L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e6p+1024L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb24p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb24p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb24p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb24p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff28p+1020 : inexact-ok
+= tgamma tonearest dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff288p+1020 : inexact-ok
+= tgamma towardzero dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff28p+1020 : inexact-ok
+= tgamma upward dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff288p+1020 : inexact-ok
+= tgamma downward ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28753p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28753p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4fp+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4f8p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4fp+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4f8p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4p+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4p+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef8p+1020L : inexact-ok
+= tgamma downward ldbl-96-intel 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcbap+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcbap+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb96e50a5832843p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb96e50a5832843p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb96e50a5832843p+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb96e50a58328438p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb23a9ep+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb23a9ep+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff795p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff795p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff795p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff795p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b9328p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b933p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b9328p+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b933p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b9p+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b94p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b9p+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b94p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4L : 0xf.ffffffffffffbffffffffff04d38p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4L : 0xf.ffffffffffffbffffffffff04d4p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4L : 0xf.ffffffffffffbffffffffff04d38p+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4L : 0xf.ffffffffffffbffffffffff04d4p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4L : 0xf.ffffffffffffbffffffffff04cp+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4L : 0xf.ffffffffffffbffffffffff04cp+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4L : 0xf.ffffffffffffbffffffffff04cp+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4L : 0xf.ffffffffffffbffffffffff05p+1020L : inexact-ok
+tgamma 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4
+= tgamma downward flt-32 0xa.b9fd8p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0xa.b9fd8p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0xa.b9fd8p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0xa.b9fd8p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0xa.b9fd8p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0xa.b9fd8p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0xa.b9fd8p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0xa.b9fd8p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b4p+1024L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b2p+1024L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b4p+1024L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9dd9p+1024L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9ddap+1024L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9dd9p+1024L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd8p+4L : 0x1.0004470cc9ee80b29452daeb9ddap+1024L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd8p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd8p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0xa.b9fd8p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd8p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward flt-32 0xa.b9fd7p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0xa.b9fd7p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0xa.b9fd7p+4f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0xa.b9fd7p+4f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0xa.b9fd7p+4 : 0xf.fff229034cebp+1020 : inexact-ok
+= tgamma tonearest dbl-64 0xa.b9fd7p+4 : 0xf.fff229034ceb8p+1020 : inexact-ok
+= tgamma towardzero dbl-64 0xa.b9fd7p+4 : 0xf.fff229034cebp+1020 : inexact-ok
+= tgamma upward dbl-64 0xa.b9fd7p+4 : 0xf.fff229034ceb8p+1020 : inexact-ok
+= tgamma downward ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd7p+4L : 0xf.fff229034ceb4a6p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a5p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd7p+4L : 0xf.fff229034ceb4a6p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7368p+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc737p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7p+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc74p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc7p+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd7p+4L : 0xf.fff229034ceb4a56a2b2a2fc74p+1020L : inexact-ok
+= tgamma downward dbl-64 0xa.b9fd72b0fb24p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0xa.b9fd72b0fb24p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0xa.b9fd72b0fb24p+4 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0xa.b9fd72b0fb24p+4 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf2p+1024L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baafp+1024L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf2p+1024L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e5p+1024L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e6p+1024L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e5p+1024L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb24p+4L : 0x1.00000000001baaf0cb8c8fd675e6p+1024L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb24p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb24p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb24p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb24p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff28p+1020 : inexact-ok
+= tgamma tonearest dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff288p+1020 : inexact-ok
+= tgamma towardzero dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff28p+1020 : inexact-ok
+= tgamma upward dbl-64 0xa.b9fd72b0fb238p+4 : 0xf.ffffffffff288p+1020 : inexact-ok
+= tgamma downward ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28753p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28752p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff28753p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4fp+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4f8p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4fp+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4f8p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4p+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef4p+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb238p+4L : 0xf.ffffffffff2875258051338ef8p+1020L : inexact-ok
+= tgamma downward ldbl-96-intel 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcbap+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb9p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcbap+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb96e50a5832843p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb96e50a5832843p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb96e50a5832843p+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffcb96e50a58328438p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb23a9ep+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb23a9ep+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb23a9ep+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff795p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794p+1020L : inexact-ok
+= tgamma upward ldbl-96-intel 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff795p+1020L : inexact-ok
+= tgamma downward ldbl-96-m68k 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794p+1020L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff795p+1020L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794p+1020L : inexact-ok
+= tgamma upward ldbl-96-m68k 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff795p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b9328p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b933p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b9328p+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b933p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b9p+1020L : inexact-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b94p+1020L : inexact-ok
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b9p+1020L : inexact-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb23a9dp+4L : 0xf.ffffffffffff794fa823493b94p+1020L : inexact-ok
+= tgamma downward ldbl-128 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4L : 0xf.ffffffffffffc00000000004df08p+1020L : inexact-ok
+= tgamma tonearest ldbl-128 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4L : 0xf.ffffffffffffc00000000004df08p+1020L : inexact-ok
+= tgamma towardzero ldbl-128 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4L : 0xf.ffffffffffffc00000000004df08p+1020L : inexact-ok
+= tgamma upward ldbl-128 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4L : 0xf.ffffffffffffc00000000004df1p+1020L : inexact-ok
+= tgamma downward ldbl-128ibm 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4L : plus_infty : inexact-ok overflow errno-erange
+tgamma 0x6.db8c603359a97108p+8
+= tgamma downward flt-32 0x6.db8c68p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x6.db8c68p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x6.db8c68p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x6.db8c68p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c68p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c68p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c68p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c68p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c68p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c68p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c68p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c68p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward flt-32 0x6.db8c6p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x6.db8c6p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x6.db8c6p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x6.db8c6p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c6p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c6p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c6p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c6p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee063p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee063p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457dfp+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457df8p+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457dfp+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457df8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c6p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c6p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c6p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c6p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c603359a98p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c603359a98p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c603359a98p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c603359a98p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c603359a98p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a98p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c603359a94p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c603359a94p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c603359a94p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c603359a94p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b898p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b898p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2ef8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c603359a94p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a94p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a94p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a94p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8ap+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8ap+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8ap+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8a8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c603359a97108p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a97108p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a97108p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a97108p+8L : plus_infty : inexact-ok overflow errno-erange
+tgamma 0x6.db8c603359a9711p+8
+= tgamma downward flt-32 0x6.db8c68p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x6.db8c68p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x6.db8c68p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x6.db8c68p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c68p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c68p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c68p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c68p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c68p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c68p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c68p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c68p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward flt-32 0x6.db8c6p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x6.db8c6p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x6.db8c6p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x6.db8c6p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c6p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c6p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c6p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c6p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee063p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee063p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457dfp+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457df8p+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457dfp+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457df8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c6p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c6p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c6p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c6p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c603359a98p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c603359a98p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c603359a98p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c603359a98p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c603359a98p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a98p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c603359a94p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c603359a94p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c603359a94p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c603359a94p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b898p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b898p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2ef8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c603359a94p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a94p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a94p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a94p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c603359a9711p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a9711p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+tgamma 0x6.db8c603359a971081bc4a2e9dfdp+8
+= tgamma downward flt-32 0x6.db8c68p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x6.db8c68p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x6.db8c68p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x6.db8c68p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c68p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c68p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c68p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c68p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c68p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c68p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c68p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c68p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward flt-32 0x6.db8c6p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x6.db8c6p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x6.db8c6p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x6.db8c6p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c6p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c6p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c6p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c6p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee063p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee063p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457dfp+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457df8p+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457dfp+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457df8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c6p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c6p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c6p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c6p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c603359a98p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c603359a98p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c603359a98p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c603359a98p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c603359a98p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a98p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c603359a94p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c603359a94p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c603359a94p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c603359a94p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b898p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b898p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2ef8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c603359a94p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a94p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a94p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a94p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c603359a9711p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a9711p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8ap+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8ap+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8ap+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8a8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c603359a97108p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a97108p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a97108p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a97108p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a971081bc4a2e9dfdp+8L : 0xf.fffffffffffffffffffffffe8008p+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a971081bc4a2e9dfdp+8L : 0xf.fffffffffffffffffffffffe801p+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c603359a971081bc4a2e9dfdp+8L : 0xf.fffffffffffffffffffffffe8008p+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c603359a971081bc4a2e9dfdp+8L : 0xf.fffffffffffffffffffffffe801p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c603359a971081bc4a2e9ep+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a971081bc4a2e9ep+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c603359a971081bc4a2e9ep+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c603359a971081bc4a2e9ep+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c603359a971081bc4a2e9ep+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a971081bc4a2e9ep+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a971081bc4a2e9ep+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a971081bc4a2e9ep+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffffffffffff25dce8p+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffffffffffff25dce8p+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffffffffffff25dce8p+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffffffffffff25dcfp+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a971081bc4a2e9dep+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a971081bc4a2e9dep+8L : plus_infty : inexact-ok overflow errno-erange
+tgamma 0x6.db8c603359a971081bc4a2e9dfd4p+8
+= tgamma downward flt-32 0x6.db8c68p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x6.db8c68p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x6.db8c68p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x6.db8c68p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c68p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c68p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c68p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c68p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c68p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c68p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c68p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c68p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c68p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c68p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward flt-32 0x6.db8c6p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x6.db8c6p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x6.db8c6p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x6.db8c6p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c6p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c6p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c6p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c6p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c6p+8L : 0xf.ffe8067b83ee063p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee062p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c6p+8L : 0xf.ffe8067b83ee063p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457dfp+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457df8p+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457dfp+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c6p+8L : 0xf.ffe8067b83ee06239e5dad457df8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c6p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c6p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c6p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c6p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c603359a98p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c603359a98p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c603359a98p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c603359a98p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c603359a98p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c603359a98p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a98p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a98p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x6.db8c603359a94p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x6.db8c603359a94p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x6.db8c603359a94p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x6.db8c603359a94p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b898p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b897p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b898p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2efp+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c603359a94p+8L : 0xf.ffffffffe91b89726af9670e2ef8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c603359a94p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a94p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a94p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a94p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c603359a9711p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c603359a9711p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a9711p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a9711p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma upward ldbl-96-intel 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3p+16380L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff31p+16380L : inexact-ok
+= tgamma downward ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8ap+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8ap+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8ap+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c603359a97108p+8L : 0xf.fffffffffffff3090b27045ab8a8p+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c603359a97108p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a97108p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a97108p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a97108p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a971081bc4a2e9dfd4p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a971081bc4a2e9dfd4p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c603359a971081bc4a2e9dfd4p+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c603359a971081bc4a2e9dfd4p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a971081bc4a2e9ep+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a971081bc4a2e9ep+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128 0x6.db8c603359a971081bc4a2e9ep+8L : 0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128 0x6.db8c603359a971081bc4a2e9ep+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128ibm 0x6.db8c603359a971081bc4a2e9ep+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a971081bc4a2e9ep+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a971081bc4a2e9ep+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a971081bc4a2e9ep+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-128 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffffffffffff25dce8p+16380L : inexact-ok
+= tgamma tonearest ldbl-128 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffffffffffff25dce8p+16380L : inexact-ok
+= tgamma towardzero ldbl-128 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffffffffffff25dce8p+16380L : inexact-ok
+= tgamma upward ldbl-128 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffffffffffff25dcfp+16380L : inexact-ok
+= tgamma downward ldbl-128ibm 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x6.db8c603359a971081bc4a2e9dep+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x6.db8c603359a971081bc4a2e9dep+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x6.db8c603359a971081bc4a2e9dep+8L : plus_infty : inexact-ok overflow errno-erange
+tgamma 1e3
+= tgamma downward flt-32 0x3.e8p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma tonearest flt-32 0x3.e8p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero flt-32 0x3.e8p+8f : 0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= tgamma upward flt-32 0x3.e8p+8f : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward dbl-64 0x3.e8p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma tonearest dbl-64 0x3.e8p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero dbl-64 0x3.e8p+8 : 0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= tgamma upward dbl-64 0x3.e8p+8 : plus_infty : inexact-ok overflow errno-erange
+= tgamma downward ldbl-96-intel 0x3.e8p+8L : 0xa.cb6219668cf4989p+8516L : inexact-ok
+= tgamma tonearest ldbl-96-intel 0x3.e8p+8L : 0xa.cb6219668cf4989p+8516L : inexact-ok
+= tgamma towardzero ldbl-96-intel 0x3.e8p+8L : 0xa.cb6219668cf4989p+8516L : inexact-ok
+= tgamma upward ldbl-96-intel 0x3.e8p+8L : 0xa.cb6219668cf498ap+8516L : inexact-ok
+= tgamma downward ldbl-96-m68k 0x3.e8p+8L : 0xa.cb6219668cf4989p+8516L : inexact-ok
+= tgamma tonearest ldbl-96-m68k 0x3.e8p+8L : 0xa.cb6219668cf4989p+8516L : inexact-ok
+= tgamma towardzero ldbl-96-m68k 0x3.e8p+8L : 0xa.cb6219668cf4989p+8516L : inexact-ok
+= tgamma upward ldbl-96-m68k 0x3.e8p+8L : 0xa.cb6219668cf498ap+8516L : inexact-ok
+= tgamma downward ldbl-128 0x3.e8p+8L : 0xa.cb6219668cf4989703cf89dfbddp+8516L : inexact-ok
+= tgamma tonearest ldbl-128 0x3.e8p+8L : 0xa.cb6219668cf4989703cf89dfbdd8p+8516L : inexact-ok
+= tgamma towardzero ldbl-128 0x3.e8p+8L : 0xa.cb6219668cf4989703cf89dfbddp+8516L : inexact-ok
+= tgamma upward ldbl-128 0x3.e8p+8L : 0xa.cb6219668cf4989703cf89dfbdd8p+8516L : inexact-ok
+= tgamma downward ldbl-128ibm 0x3.e8p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm 0x3.e8p+8L : plus_infty : inexact-ok overflow errno-erange
+= tgamma towardzero ldbl-128ibm 0x3.e8p+8L : 0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= tgamma upward ldbl-128ibm 0x3.e8p+8L : plus_infty : inexact-ok overflow errno-erange
+tgamma -100000.5
+= tgamma downward flt-32 -0x1.86a08p+16f : -0x8p-152f : inexact-ok underflow errno-erange-ok
+= tgamma tonearest flt-32 -0x1.86a08p+16f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma towardzero flt-32 -0x1.86a08p+16f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma upward flt-32 -0x1.86a08p+16f : -0x0p+0f : inexact-ok underflow errno-erange
+= tgamma downward dbl-64 -0x1.86a08p+16 : -0x4p-1076 : inexact-ok underflow errno-erange-ok
+= tgamma tonearest dbl-64 -0x1.86a08p+16 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma towardzero dbl-64 -0x1.86a08p+16 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma upward dbl-64 -0x1.86a08p+16 : -0x0p+0 : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-intel -0x1.86a08p+16L : -0x8p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-intel -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-intel -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-intel -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-96-m68k -0x1.86a08p+16L : -0x4p-16448L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-96-m68k -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-96-m68k -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-96-m68k -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128 -0x1.86a08p+16L : -0x4p-16496L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128 -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128 -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128 -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma downward ldbl-128ibm -0x1.86a08p+16L : -0x4p-1076L : inexact-ok underflow errno-erange-ok
+= tgamma tonearest ldbl-128ibm -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma towardzero ldbl-128ibm -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+= tgamma upward ldbl-128ibm -0x1.86a08p+16L : -0x0p+0L : inexact-ok underflow errno-erange
+y0 0.125
+= y0 downward flt-32 0x2p-4f : -0x1.63c21ep+0f : inexact-ok
+= y0 tonearest flt-32 0x2p-4f : -0x1.63c21cp+0f : inexact-ok
+= y0 towardzero flt-32 0x2p-4f : -0x1.63c21cp+0f : inexact-ok
+= y0 upward flt-32 0x2p-4f : -0x1.63c21cp+0f : inexact-ok
+= y0 downward dbl-64 0x2p-4 : -0x1.63c21c04e0ac7p+0 : inexact-ok
+= y0 tonearest dbl-64 0x2p-4 : -0x1.63c21c04e0ac6p+0 : inexact-ok
+= y0 towardzero dbl-64 0x2p-4 : -0x1.63c21c04e0ac6p+0 : inexact-ok
+= y0 upward dbl-64 0x2p-4 : -0x1.63c21c04e0ac6p+0 : inexact-ok
+= y0 downward ldbl-96-intel 0x2p-4L : -0x1.63c21c04e0ac6244p+0L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= y0 upward ldbl-96-intel 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= y0 downward ldbl-96-m68k 0x2p-4L : -0x1.63c21c04e0ac6244p+0L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= y0 upward ldbl-96-m68k 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= y0 downward ldbl-128 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07058p+0L : inexact-ok
+= y0 tonearest ldbl-128 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07058p+0L : inexact-ok
+= y0 towardzero ldbl-128 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07057p+0L : inexact-ok
+= y0 upward ldbl-128 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07057p+0L : inexact-ok
+= y0 downward ldbl-128ibm 0x2p-4L : -0x1.63c21c04e0ac6242f501dee0708p+0L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x2p-4L : -0x1.63c21c04e0ac6242f501dee0708p+0L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07p+0L : inexact-ok
+= y0 upward ldbl-128ibm 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07p+0L : inexact-ok
+y0 0.75
+= y0 downward flt-32 0xcp-4f : -0x2.31dc14p-4f : inexact-ok
+= y0 tonearest flt-32 0xcp-4f : -0x2.31dc14p-4f : inexact-ok
+= y0 towardzero flt-32 0xcp-4f : -0x2.31dc1p-4f : inexact-ok
+= y0 upward flt-32 0xcp-4f : -0x2.31dc1p-4f : inexact-ok
+= y0 downward dbl-64 0xcp-4 : -0x2.31dc12e69e47ap-4 : inexact-ok
+= y0 tonearest dbl-64 0xcp-4 : -0x2.31dc12e69e478p-4 : inexact-ok
+= y0 towardzero dbl-64 0xcp-4 : -0x2.31dc12e69e478p-4 : inexact-ok
+= y0 upward dbl-64 0xcp-4 : -0x2.31dc12e69e478p-4 : inexact-ok
+= y0 downward ldbl-96-intel 0xcp-4L : -0x2.31dc12e69e478d0cp-4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0xcp-4L : -0x2.31dc12e69e478d0cp-4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0xcp-4L : -0x2.31dc12e69e478d08p-4L : inexact-ok
+= y0 upward ldbl-96-intel 0xcp-4L : -0x2.31dc12e69e478d08p-4L : inexact-ok
+= y0 downward ldbl-96-m68k 0xcp-4L : -0x2.31dc12e69e478d0cp-4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0xcp-4L : -0x2.31dc12e69e478d0cp-4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0xcp-4L : -0x2.31dc12e69e478d08p-4L : inexact-ok
+= y0 upward ldbl-96-m68k 0xcp-4L : -0x2.31dc12e69e478d08p-4L : inexact-ok
+= y0 downward ldbl-128 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2eep-4L : inexact-ok
+= y0 tonearest ldbl-128 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2ecp-4L : inexact-ok
+= y0 towardzero ldbl-128 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2ecp-4L : inexact-ok
+= y0 upward ldbl-128 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2ecp-4L : inexact-ok
+= y0 downward ldbl-128ibm 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e3p-4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e3p-4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2p-4L : inexact-ok
+= y0 upward ldbl-128ibm 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2p-4L : inexact-ok
+y0 1.0
+= y0 downward flt-32 0x1p+0f : 0x1.698022p-4f : inexact-ok
+= y0 tonearest flt-32 0x1p+0f : 0x1.698022p-4f : inexact-ok
+= y0 towardzero flt-32 0x1p+0f : 0x1.698022p-4f : inexact-ok
+= y0 upward flt-32 0x1p+0f : 0x1.698024p-4f : inexact-ok
+= y0 downward dbl-64 0x1p+0 : 0x1.6980226f358dfp-4 : inexact-ok
+= y0 tonearest dbl-64 0x1p+0 : 0x1.6980226f358dfp-4 : inexact-ok
+= y0 towardzero dbl-64 0x1p+0 : 0x1.6980226f358dfp-4 : inexact-ok
+= y0 upward dbl-64 0x1p+0 : 0x1.6980226f358ep-4 : inexact-ok
+= y0 downward ldbl-96-intel 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= y0 upward ldbl-96-intel 0x1p+0L : 0x1.6980226f358df2ap-4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x1p+0L : 0x1.6980226f358df2ap-4L : inexact-ok
+= y0 downward ldbl-128 0x1p+0L : 0x1.6980226f358df29efcc5d7926555p-4L : inexact-ok
+= y0 tonearest ldbl-128 0x1p+0L : 0x1.6980226f358df29efcc5d7926555p-4L : inexact-ok
+= y0 towardzero ldbl-128 0x1p+0L : 0x1.6980226f358df29efcc5d7926555p-4L : inexact-ok
+= y0 upward ldbl-128 0x1p+0L : 0x1.6980226f358df29efcc5d7926556p-4L : inexact-ok
+= y0 downward ldbl-128ibm 0x1p+0L : 0x1.6980226f358df29efcc5d79265p-4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x1p+0L : 0x1.6980226f358df29efcc5d792658p-4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x1p+0L : 0x1.6980226f358df29efcc5d79265p-4L : inexact-ok
+= y0 upward ldbl-128ibm 0x1p+0L : 0x1.6980226f358df29efcc5d792658p-4L : inexact-ok
+y0 1.5
+= y0 downward flt-32 0x1.8p+0f : 0x6.1e82cp-4f : inexact-ok
+= y0 tonearest flt-32 0x1.8p+0f : 0x6.1e82cp-4f : inexact-ok
+= y0 towardzero flt-32 0x1.8p+0f : 0x6.1e82cp-4f : inexact-ok
+= y0 upward flt-32 0x1.8p+0f : 0x6.1e82c8p-4f : inexact-ok
+= y0 downward dbl-64 0x1.8p+0 : 0x6.1e82c341a0d9cp-4 : inexact-ok
+= y0 tonearest dbl-64 0x1.8p+0 : 0x6.1e82c341a0dap-4 : inexact-ok
+= y0 towardzero dbl-64 0x1.8p+0 : 0x6.1e82c341a0d9cp-4 : inexact-ok
+= y0 upward dbl-64 0x1.8p+0 : 0x6.1e82c341a0dap-4 : inexact-ok
+= y0 downward ldbl-96-intel 0x1.8p+0L : 0x6.1e82c341a0d9f31p-4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x1.8p+0L : 0x6.1e82c341a0d9f318p-4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x1.8p+0L : 0x6.1e82c341a0d9f31p-4L : inexact-ok
+= y0 upward ldbl-96-intel 0x1.8p+0L : 0x6.1e82c341a0d9f318p-4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x1.8p+0L : 0x6.1e82c341a0d9f31p-4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x1.8p+0L : 0x6.1e82c341a0d9f318p-4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x1.8p+0L : 0x6.1e82c341a0d9f31p-4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x1.8p+0L : 0x6.1e82c341a0d9f318p-4L : inexact-ok
+= y0 downward ldbl-128 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005fecp-4L : inexact-ok
+= y0 tonearest ldbl-128 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005ffp-4L : inexact-ok
+= y0 towardzero ldbl-128 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005fecp-4L : inexact-ok
+= y0 upward ldbl-128 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005ffp-4L : inexact-ok
+= y0 downward ldbl-128ibm 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005ep-4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2006p-4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005ep-4L : inexact-ok
+= y0 upward ldbl-128ibm 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2006p-4L : inexact-ok
+y0 2.0
+= y0 downward flt-32 0x2p+0f : 0x8.2a7fap-4f : inexact-ok
+= y0 tonearest flt-32 0x2p+0f : 0x8.2a7fbp-4f : inexact-ok
+= y0 towardzero flt-32 0x2p+0f : 0x8.2a7fap-4f : inexact-ok
+= y0 upward flt-32 0x2p+0f : 0x8.2a7fbp-4f : inexact-ok
+= y0 downward dbl-64 0x2p+0 : 0x8.2a7fae6b4646p-4 : inexact-ok
+= y0 tonearest dbl-64 0x2p+0 : 0x8.2a7fae6b46468p-4 : inexact-ok
+= y0 towardzero dbl-64 0x2p+0 : 0x8.2a7fae6b4646p-4 : inexact-ok
+= y0 upward dbl-64 0x2p+0 : 0x8.2a7fae6b46468p-4 : inexact-ok
+= y0 downward ldbl-96-intel 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= y0 upward ldbl-96-intel 0x2p+0L : 0x8.2a7fae6b46465e2p-4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x2p+0L : 0x8.2a7fae6b46465e2p-4L : inexact-ok
+= y0 downward ldbl-128 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231cep-4L : inexact-ok
+= y0 tonearest ldbl-128 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231cep-4L : inexact-ok
+= y0 towardzero ldbl-128 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231cep-4L : inexact-ok
+= y0 upward ldbl-128 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231ce08p-4L : inexact-ok
+= y0 downward ldbl-128ibm 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231ccp-4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231dp-4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231ccp-4L : inexact-ok
+= y0 upward ldbl-128ibm 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231dp-4L : inexact-ok
+y0 8.0
+= y0 downward flt-32 0x8p+0f : 0x3.938b44p-4f : inexact-ok
+= y0 tonearest flt-32 0x8p+0f : 0x3.938b44p-4f : inexact-ok
+= y0 towardzero flt-32 0x8p+0f : 0x3.938b44p-4f : inexact-ok
+= y0 upward flt-32 0x8p+0f : 0x3.938b48p-4f : inexact-ok
+= y0 downward dbl-64 0x8p+0 : 0x3.938b44edf7058p-4 : inexact-ok
+= y0 tonearest dbl-64 0x8p+0 : 0x3.938b44edf7058p-4 : inexact-ok
+= y0 towardzero dbl-64 0x8p+0 : 0x3.938b44edf7058p-4 : inexact-ok
+= y0 upward dbl-64 0x8p+0 : 0x3.938b44edf705ap-4 : inexact-ok
+= y0 downward ldbl-96-intel 0x8p+0L : 0x3.938b44edf70581c4p-4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x8p+0L : 0x3.938b44edf70581c8p-4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x8p+0L : 0x3.938b44edf70581c4p-4L : inexact-ok
+= y0 upward ldbl-96-intel 0x8p+0L : 0x3.938b44edf70581c8p-4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x8p+0L : 0x3.938b44edf70581c4p-4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x8p+0L : 0x3.938b44edf70581c8p-4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x8p+0L : 0x3.938b44edf70581c4p-4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x8p+0L : 0x3.938b44edf70581c8p-4L : inexact-ok
+= y0 downward ldbl-128 0x8p+0L : 0x3.938b44edf70581c69c0283841f7ep-4L : inexact-ok
+= y0 tonearest ldbl-128 0x8p+0L : 0x3.938b44edf70581c69c0283841f7ep-4L : inexact-ok
+= y0 towardzero ldbl-128 0x8p+0L : 0x3.938b44edf70581c69c0283841f7ep-4L : inexact-ok
+= y0 upward ldbl-128 0x8p+0L : 0x3.938b44edf70581c69c0283841f8p-4L : inexact-ok
+= y0 downward ldbl-128ibm 0x8p+0L : 0x3.938b44edf70581c69c0283841fp-4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x8p+0L : 0x3.938b44edf70581c69c0283841fp-4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x8p+0L : 0x3.938b44edf70581c69c0283841fp-4L : inexact-ok
+= y0 upward ldbl-128ibm 0x8p+0L : 0x3.938b44edf70581c69c0283842p-4L : inexact-ok
+y0 10.0
+= y0 downward flt-32 0xap+0f : 0xe.40773p-8f : inexact-ok
+= y0 tonearest flt-32 0xap+0f : 0xe.40773p-8f : inexact-ok
+= y0 towardzero flt-32 0xap+0f : 0xe.40773p-8f : inexact-ok
+= y0 upward flt-32 0xap+0f : 0xe.40774p-8f : inexact-ok
+= y0 downward dbl-64 0xap+0 : 0xe.407732d02e2cp-8 : inexact-ok
+= y0 tonearest dbl-64 0xap+0 : 0xe.407732d02e2c8p-8 : inexact-ok
+= y0 towardzero dbl-64 0xap+0 : 0xe.407732d02e2cp-8 : inexact-ok
+= y0 upward dbl-64 0xap+0 : 0xe.407732d02e2c8p-8 : inexact-ok
+= y0 downward ldbl-96-intel 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= y0 tonearest ldbl-96-intel 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= y0 towardzero ldbl-96-intel 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= y0 upward ldbl-96-intel 0xap+0L : 0xe.407732d02e2c46ap-8L : inexact-ok
+= y0 downward ldbl-96-m68k 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= y0 upward ldbl-96-m68k 0xap+0L : 0xe.407732d02e2c46ap-8L : inexact-ok
+= y0 downward ldbl-128 0xap+0L : 0xe.407732d02e2c469384e4d3c829cp-8L : inexact-ok
+= y0 tonearest ldbl-128 0xap+0L : 0xe.407732d02e2c469384e4d3c829cp-8L : inexact-ok
+= y0 towardzero ldbl-128 0xap+0L : 0xe.407732d02e2c469384e4d3c829cp-8L : inexact-ok
+= y0 upward ldbl-128 0xap+0L : 0xe.407732d02e2c469384e4d3c829c8p-8L : inexact-ok
+= y0 downward ldbl-128ibm 0xap+0L : 0xe.407732d02e2c469384e4d3c828p-8L : inexact-ok
+= y0 tonearest ldbl-128ibm 0xap+0L : 0xe.407732d02e2c469384e4d3c828p-8L : inexact-ok
+= y0 towardzero ldbl-128ibm 0xap+0L : 0xe.407732d02e2c469384e4d3c828p-8L : inexact-ok
+= y0 upward ldbl-128ibm 0xap+0L : 0xe.407732d02e2c469384e4d3c82cp-8L : inexact-ok
+y0 0x1.3ffp+74
+= y0 downward flt-32 0x4.ffcp+72f : 0x1.ffffa2p-40f : inexact-ok
+= y0 tonearest flt-32 0x4.ffcp+72f : 0x1.ffffa2p-40f : inexact-ok
+= y0 towardzero flt-32 0x4.ffcp+72f : 0x1.ffffa2p-40f : inexact-ok
+= y0 upward flt-32 0x4.ffcp+72f : 0x1.ffffa4p-40f : inexact-ok
+= y0 downward dbl-64 0x4.ffcp+72 : 0x1.ffffa2bb93061p-40 : inexact-ok
+= y0 tonearest dbl-64 0x4.ffcp+72 : 0x1.ffffa2bb93061p-40 : inexact-ok
+= y0 towardzero dbl-64 0x4.ffcp+72 : 0x1.ffffa2bb93061p-40 : inexact-ok
+= y0 upward dbl-64 0x4.ffcp+72 : 0x1.ffffa2bb93062p-40 : inexact-ok
+= y0 downward ldbl-96-intel 0x4.ffcp+72L : 0x1.ffffa2bb93061214p-40L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x4.ffcp+72L : 0x1.ffffa2bb93061216p-40L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x4.ffcp+72L : 0x1.ffffa2bb93061214p-40L : inexact-ok
+= y0 upward ldbl-96-intel 0x4.ffcp+72L : 0x1.ffffa2bb93061216p-40L : inexact-ok
+= y0 downward ldbl-96-m68k 0x4.ffcp+72L : 0x1.ffffa2bb93061214p-40L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x4.ffcp+72L : 0x1.ffffa2bb93061216p-40L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x4.ffcp+72L : 0x1.ffffa2bb93061214p-40L : inexact-ok
+= y0 upward ldbl-96-m68k 0x4.ffcp+72L : 0x1.ffffa2bb93061216p-40L : inexact-ok
+= y0 downward ldbl-128 0x4.ffcp+72L : 0x1.ffffa2bb93061215e1b0151c5143p-40L : inexact-ok
+= y0 tonearest ldbl-128 0x4.ffcp+72L : 0x1.ffffa2bb93061215e1b0151c5144p-40L : inexact-ok
+= y0 towardzero ldbl-128 0x4.ffcp+72L : 0x1.ffffa2bb93061215e1b0151c5143p-40L : inexact-ok
+= y0 upward ldbl-128 0x4.ffcp+72L : 0x1.ffffa2bb93061215e1b0151c5144p-40L : inexact-ok
+= y0 downward ldbl-128ibm 0x4.ffcp+72L : 0x1.ffffa2bb93061215e1b0151c51p-40L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x4.ffcp+72L : 0x1.ffffa2bb93061215e1b0151c518p-40L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x4.ffcp+72L : 0x1.ffffa2bb93061215e1b0151c51p-40L : inexact-ok
+= y0 upward ldbl-128ibm 0x4.ffcp+72L : 0x1.ffffa2bb93061215e1b0151c518p-40L : inexact-ok
+y0 0x1.ff00000000002p+840
+= y0 downward flt-32 0xf.fffffp+124f : -0xc.69478p-68f : inexact-ok
+= y0 tonearest flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 towardzero flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 upward flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 downward dbl-64 0xf.fffffp+124 : -0xc.6947737b058ap-68 : inexact-ok
+= y0 tonearest dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 towardzero dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 upward dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 downward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 tonearest ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 towardzero ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 upward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 downward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 upward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 downward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= y0 tonearest ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= y0 towardzero ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= y0 upward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= y0 downward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c345238216cp-68L : inexact-ok
+= y0 tonearest ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 towardzero ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 upward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 downward dbl-64 0x1.ff00000000002p+840 : 0x7.fffedaf2ef198p-424 : inexact-ok
+= y0 tonearest dbl-64 0x1.ff00000000002p+840 : 0x7.fffedaf2ef198p-424 : inexact-ok
+= y0 towardzero dbl-64 0x1.ff00000000002p+840 : 0x7.fffedaf2ef198p-424 : inexact-ok
+= y0 upward dbl-64 0x1.ff00000000002p+840 : 0x7.fffedaf2ef19cp-424 : inexact-ok
+= y0 downward ldbl-96-intel 0x1.ff00000000002p+840L : 0x7.fffedaf2ef19876p-424L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x1.ff00000000002p+840L : 0x7.fffedaf2ef198768p-424L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x1.ff00000000002p+840L : 0x7.fffedaf2ef19876p-424L : inexact-ok
+= y0 upward ldbl-96-intel 0x1.ff00000000002p+840L : 0x7.fffedaf2ef198768p-424L : inexact-ok
+= y0 downward ldbl-96-m68k 0x1.ff00000000002p+840L : 0x7.fffedaf2ef19876p-424L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x1.ff00000000002p+840L : 0x7.fffedaf2ef198768p-424L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x1.ff00000000002p+840L : 0x7.fffedaf2ef19876p-424L : inexact-ok
+= y0 upward ldbl-96-m68k 0x1.ff00000000002p+840L : 0x7.fffedaf2ef198768p-424L : inexact-ok
+= y0 downward ldbl-128 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f1b4p-424L : inexact-ok
+= y0 tonearest ldbl-128 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f1b4p-424L : inexact-ok
+= y0 towardzero ldbl-128 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f1b4p-424L : inexact-ok
+= y0 upward ldbl-128 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f1b8p-424L : inexact-ok
+= y0 downward ldbl-128ibm 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97fp-424L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f2p-424L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97fp-424L : inexact-ok
+= y0 upward ldbl-128ibm 0x1.ff00000000002p+840L : 0x7.fffedaf2ef1987656a22cf97f2p-424L : inexact-ok
+y0 0x1p1023
+= y0 downward flt-32 0xf.fffffp+124f : -0xc.69478p-68f : inexact-ok
+= y0 tonearest flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 towardzero flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 upward flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 downward dbl-64 0xf.fffffp+124 : -0xc.6947737b058ap-68 : inexact-ok
+= y0 tonearest dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 towardzero dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 upward dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 downward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 tonearest ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 towardzero ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 upward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 downward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 upward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 downward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= y0 tonearest ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= y0 towardzero ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= y0 upward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= y0 downward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c345238216cp-68L : inexact-ok
+= y0 tonearest ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 towardzero ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 upward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 downward dbl-64 0x8p+1020 : 0x1.1bd10e60877e2p-512 : inexact-ok
+= y0 tonearest dbl-64 0x8p+1020 : 0x1.1bd10e60877e3p-512 : inexact-ok
+= y0 towardzero dbl-64 0x8p+1020 : 0x1.1bd10e60877e2p-512 : inexact-ok
+= y0 upward dbl-64 0x8p+1020 : 0x1.1bd10e60877e3p-512 : inexact-ok
+= y0 downward ldbl-96-intel 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= y0 upward ldbl-96-intel 0x8p+1020L : 0x1.1bd10e60877e2ce4p-512L : inexact-ok
+= y0 downward ldbl-96-m68k 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x8p+1020L : 0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= y0 upward ldbl-96-m68k 0x8p+1020L : 0x1.1bd10e60877e2ce4p-512L : inexact-ok
+= y0 downward ldbl-128 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f9698p-512L : inexact-ok
+= y0 tonearest ldbl-128 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f9699p-512L : inexact-ok
+= y0 towardzero ldbl-128 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f9698p-512L : inexact-ok
+= y0 upward ldbl-128 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f9699p-512L : inexact-ok
+= y0 downward ldbl-128ibm 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f968p-512L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f968p-512L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f968p-512L : inexact-ok
+= y0 upward ldbl-128ibm 0x8p+1020L : 0x1.1bd10e60877e2ce21eee868f97p-512L : inexact-ok
+y0 0x1p16382
+= y0 downward flt-32 0xf.fffffp+124f : -0xc.69478p-68f : inexact-ok
+= y0 tonearest flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 towardzero flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 upward flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 downward dbl-64 0xf.fffffp+124 : -0xc.6947737b058ap-68 : inexact-ok
+= y0 tonearest dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 towardzero dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 upward dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 downward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 tonearest ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 towardzero ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 upward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 downward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 upward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 downward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= y0 tonearest ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= y0 towardzero ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= y0 upward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= y0 downward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c345238216cp-68L : inexact-ok
+= y0 tonearest ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 towardzero ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 upward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 downward dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= y0 tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= y0 towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= y0 upward dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436acc8p-516 : inexact-ok
+= y0 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= y0 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= y0 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= y0 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= y0 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= y0 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= y0 downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= y0 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa5p-516L : inexact-ok
+= y0 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= y0 upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa5p-516L : inexact-ok
+= y0 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5f8p-516L : inexact-ok
+= y0 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fcp-516L : inexact-ok
+= y0 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5f8p-516L : inexact-ok
+= y0 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fcp-516L : inexact-ok
+= y0 downward ldbl-96-intel 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= y0 upward ldbl-96-intel 0x4p+16380L : 0xe.1ba855ba7e7ba4bp-8196L : inexact-ok
+= y0 downward ldbl-96-m68k 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x4p+16380L : 0xe.1ba855ba7e7ba4ap-8196L : inexact-ok
+= y0 upward ldbl-96-m68k 0x4p+16380L : 0xe.1ba855ba7e7ba4bp-8196L : inexact-ok
+= y0 downward ldbl-128 0x4p+16380L : 0xe.1ba855ba7e7ba4a295fe65161a38p-8196L : inexact-ok
+= y0 tonearest ldbl-128 0x4p+16380L : 0xe.1ba855ba7e7ba4a295fe65161a38p-8196L : inexact-ok
+= y0 towardzero ldbl-128 0x4p+16380L : 0xe.1ba855ba7e7ba4a295fe65161a38p-8196L : inexact-ok
+= y0 upward ldbl-128 0x4p+16380L : 0xe.1ba855ba7e7ba4a295fe65161a4p-8196L : inexact-ok
+= y0 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= y0 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= y0 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0250cp-516L : inexact-ok
+= y0 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0250cp-516L : inexact-ok
+= y0 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
+= y0 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
+= y0 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+= y0 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+y0 0x1p16383
+= y0 downward flt-32 0xf.fffffp+124f : -0xc.69478p-68f : inexact-ok
+= y0 tonearest flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 towardzero flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 upward flt-32 0xf.fffffp+124f : -0xc.69477p-68f : inexact-ok
+= y0 downward dbl-64 0xf.fffffp+124 : -0xc.6947737b058ap-68 : inexact-ok
+= y0 tonearest dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 towardzero dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 upward dbl-64 0xf.fffffp+124 : -0xc.6947737b05898p-68 : inexact-ok
+= y0 downward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 tonearest ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 towardzero ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 upward ldbl-96-intel 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 downward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589956p-68L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 upward ldbl-96-m68k 0xf.fffffp+124L : -0xc.6947737b0589955p-68L : inexact-ok
+= y0 downward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= y0 tonearest ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= y0 towardzero ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= y0 upward ldbl-128 0xf.fffffp+124L : -0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= y0 downward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c345238216cp-68L : inexact-ok
+= y0 tonearest ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 towardzero ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 upward ldbl-128ibm 0xf.fffffp+124L : -0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= y0 downward dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= y0 tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= y0 towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436accp-516 : inexact-ok
+= y0 upward dbl-64 0xf.ffffffffffff8p+1020 : 0x9.125bd8436acc8p-516 : inexact-ok
+= y0 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= y0 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= y0 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= y0 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= y0 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225p-516L : inexact-ok
+= y0 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc226p-516L : inexact-ok
+= y0 downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= y0 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa5p-516L : inexact-ok
+= y0 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= y0 upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fa5p-516L : inexact-ok
+= y0 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5f8p-516L : inexact-ok
+= y0 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fcp-516L : inexact-ok
+= y0 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5f8p-516L : inexact-ok
+= y0 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x9.125bd8436acc225eb7a1cfb5fcp-516L : inexact-ok
+= y0 downward ldbl-96-intel 0x8p+16380L : -0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x8p+16380L : -0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x8p+16380L : -0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= y0 upward ldbl-96-intel 0x8p+16380L : -0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= y0 downward ldbl-96-m68k 0x8p+16380L : -0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x8p+16380L : -0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x8p+16380L : -0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= y0 upward ldbl-96-m68k 0x8p+16380L : -0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= y0 downward ldbl-128 0x8p+16380L : -0x6.c9bcc4d4937a306ec1ef5722901p-8196L : inexact-ok
+= y0 tonearest ldbl-128 0x8p+16380L : -0x6.c9bcc4d4937a306ec1ef5722901p-8196L : inexact-ok
+= y0 towardzero ldbl-128 0x8p+16380L : -0x6.c9bcc4d4937a306ec1ef5722900cp-8196L : inexact-ok
+= y0 upward ldbl-128 0x8p+16380L : -0x6.c9bcc4d4937a306ec1ef5722900cp-8196L : inexact-ok
+= y0 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= y0 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= y0 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0250cp-516L : inexact-ok
+= y0 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b0250cp-516L : inexact-ok
+= y0 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
+= y0 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
+= y0 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+= y0 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : -0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+y0 0x1p-10
+= y0 downward flt-32 0x4p-12f : -0x4.7c8c48p+0f : inexact-ok
+= y0 tonearest flt-32 0x4p-12f : -0x4.7c8c4p+0f : inexact-ok
+= y0 towardzero flt-32 0x4p-12f : -0x4.7c8c4p+0f : inexact-ok
+= y0 upward flt-32 0x4p-12f : -0x4.7c8c4p+0f : inexact-ok
+= y0 downward dbl-64 0x4p-12 : -0x4.7c8c40877c0c8p+0 : inexact-ok
+= y0 tonearest dbl-64 0x4p-12 : -0x4.7c8c40877c0c8p+0 : inexact-ok
+= y0 towardzero dbl-64 0x4p-12 : -0x4.7c8c40877c0c4p+0 : inexact-ok
+= y0 upward dbl-64 0x4p-12 : -0x4.7c8c40877c0c4p+0 : inexact-ok
+= y0 downward ldbl-96-intel 0x4p-12L : -0x4.7c8c40877c0c685p+0L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x4p-12L : -0x4.7c8c40877c0c6848p+0L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x4p-12L : -0x4.7c8c40877c0c6848p+0L : inexact-ok
+= y0 upward ldbl-96-intel 0x4p-12L : -0x4.7c8c40877c0c6848p+0L : inexact-ok
+= y0 downward ldbl-96-m68k 0x4p-12L : -0x4.7c8c40877c0c685p+0L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x4p-12L : -0x4.7c8c40877c0c6848p+0L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x4p-12L : -0x4.7c8c40877c0c6848p+0L : inexact-ok
+= y0 upward ldbl-96-m68k 0x4p-12L : -0x4.7c8c40877c0c6848p+0L : inexact-ok
+= y0 downward ldbl-128 0x4p-12L : -0x4.7c8c40877c0c684b896dfd88327cp+0L : inexact-ok
+= y0 tonearest ldbl-128 0x4p-12L : -0x4.7c8c40877c0c684b896dfd88327cp+0L : inexact-ok
+= y0 towardzero ldbl-128 0x4p-12L : -0x4.7c8c40877c0c684b896dfd883278p+0L : inexact-ok
+= y0 upward ldbl-128 0x4p-12L : -0x4.7c8c40877c0c684b896dfd883278p+0L : inexact-ok
+= y0 downward ldbl-128ibm 0x4p-12L : -0x4.7c8c40877c0c684b896dfd8834p+0L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x4p-12L : -0x4.7c8c40877c0c684b896dfd8832p+0L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x4p-12L : -0x4.7c8c40877c0c684b896dfd8832p+0L : inexact-ok
+= y0 upward ldbl-128ibm 0x4p-12L : -0x4.7c8c40877c0c684b896dfd8832p+0L : inexact-ok
+y0 0x1p-20
+= y0 downward flt-32 0x1p-20f : -0x8.e633ep+0f : inexact-ok
+= y0 tonearest flt-32 0x1p-20f : -0x8.e633dp+0f : inexact-ok
+= y0 towardzero flt-32 0x1p-20f : -0x8.e633dp+0f : inexact-ok
+= y0 upward flt-32 0x1p-20f : -0x8.e633dp+0f : inexact-ok
+= y0 downward dbl-64 0x1p-20 : -0x8.e633d371587e8p+0 : inexact-ok
+= y0 tonearest dbl-64 0x1p-20 : -0x8.e633d371587e8p+0 : inexact-ok
+= y0 towardzero dbl-64 0x1p-20 : -0x8.e633d371587ep+0 : inexact-ok
+= y0 upward dbl-64 0x1p-20 : -0x8.e633d371587ep+0 : inexact-ok
+= y0 downward ldbl-96-intel 0x1p-20L : -0x8.e633d371587e7dcp+0L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x1p-20L : -0x8.e633d371587e7dbp+0L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x1p-20L : -0x8.e633d371587e7dbp+0L : inexact-ok
+= y0 upward ldbl-96-intel 0x1p-20L : -0x8.e633d371587e7dbp+0L : inexact-ok
+= y0 downward ldbl-96-m68k 0x1p-20L : -0x8.e633d371587e7dcp+0L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x1p-20L : -0x8.e633d371587e7dbp+0L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x1p-20L : -0x8.e633d371587e7dbp+0L : inexact-ok
+= y0 upward ldbl-96-m68k 0x1p-20L : -0x8.e633d371587e7dbp+0L : inexact-ok
+= y0 downward ldbl-128 0x1p-20L : -0x8.e633d371587e7db1015bfb35b3ap+0L : inexact-ok
+= y0 tonearest ldbl-128 0x1p-20L : -0x8.e633d371587e7db1015bfb35b398p+0L : inexact-ok
+= y0 towardzero ldbl-128 0x1p-20L : -0x8.e633d371587e7db1015bfb35b398p+0L : inexact-ok
+= y0 upward ldbl-128 0x1p-20L : -0x8.e633d371587e7db1015bfb35b398p+0L : inexact-ok
+= y0 downward ldbl-128ibm 0x1p-20L : -0x8.e633d371587e7db1015bfb35b4p+0L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x1p-20L : -0x8.e633d371587e7db1015bfb35b4p+0L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x1p-20L : -0x8.e633d371587e7db1015bfb35bp+0L : inexact-ok
+= y0 upward ldbl-128ibm 0x1p-20L : -0x8.e633d371587e7db1015bfb35bp+0L : inexact-ok
+y0 0x1p-30
+= y0 downward flt-32 0x4p-32f : -0xd.4fdb6p+0f : inexact-ok
+= y0 tonearest flt-32 0x4p-32f : -0xd.4fdb5p+0f : inexact-ok
+= y0 towardzero flt-32 0x4p-32f : -0xd.4fdb5p+0f : inexact-ok
+= y0 upward flt-32 0x4p-32f : -0xd.4fdb5p+0f : inexact-ok
+= y0 downward dbl-64 0x4p-32 : -0xd.4fdb51dd22698p+0 : inexact-ok
+= y0 tonearest dbl-64 0x4p-32 : -0xd.4fdb51dd2269p+0 : inexact-ok
+= y0 towardzero dbl-64 0x4p-32 : -0xd.4fdb51dd2269p+0 : inexact-ok
+= y0 upward dbl-64 0x4p-32 : -0xd.4fdb51dd2269p+0 : inexact-ok
+= y0 downward ldbl-96-intel 0x4p-32L : -0xd.4fdb51dd22691e1p+0L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x4p-32L : -0xd.4fdb51dd22691e1p+0L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x4p-32L : -0xd.4fdb51dd22691ep+0L : inexact-ok
+= y0 upward ldbl-96-intel 0x4p-32L : -0xd.4fdb51dd22691ep+0L : inexact-ok
+= y0 downward ldbl-96-m68k 0x4p-32L : -0xd.4fdb51dd22691e1p+0L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x4p-32L : -0xd.4fdb51dd22691e1p+0L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x4p-32L : -0xd.4fdb51dd22691ep+0L : inexact-ok
+= y0 upward ldbl-96-m68k 0x4p-32L : -0xd.4fdb51dd22691ep+0L : inexact-ok
+= y0 downward ldbl-128 0x4p-32L : -0xd.4fdb51dd22691e0e0a4639a430a8p+0L : inexact-ok
+= y0 tonearest ldbl-128 0x4p-32L : -0xd.4fdb51dd22691e0e0a4639a430a8p+0L : inexact-ok
+= y0 towardzero ldbl-128 0x4p-32L : -0xd.4fdb51dd22691e0e0a4639a430ap+0L : inexact-ok
+= y0 upward ldbl-128 0x4p-32L : -0xd.4fdb51dd22691e0e0a4639a430ap+0L : inexact-ok
+= y0 downward ldbl-128ibm 0x4p-32L : -0xd.4fdb51dd22691e0e0a4639a434p+0L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x4p-32L : -0xd.4fdb51dd22691e0e0a4639a43p+0L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x4p-32L : -0xd.4fdb51dd22691e0e0a4639a43p+0L : inexact-ok
+= y0 upward ldbl-128ibm 0x4p-32L : -0xd.4fdb51dd22691e0e0a4639a43p+0L : inexact-ok
+y0 0x1p-40
+= y0 downward flt-32 0x1p-40f : -0x1.1b982ep+4f : inexact-ok
+= y0 tonearest flt-32 0x1p-40f : -0x1.1b982ep+4f : inexact-ok
+= y0 towardzero flt-32 0x1p-40f : -0x1.1b982cp+4f : inexact-ok
+= y0 upward flt-32 0x1p-40f : -0x1.1b982cp+4f : inexact-ok
+= y0 downward dbl-64 0x1p-40 : -0x1.1b982d048e9f2p+4 : inexact-ok
+= y0 tonearest dbl-64 0x1p-40 : -0x1.1b982d048e9f1p+4 : inexact-ok
+= y0 towardzero dbl-64 0x1p-40 : -0x1.1b982d048e9f1p+4 : inexact-ok
+= y0 upward dbl-64 0x1p-40 : -0x1.1b982d048e9f1p+4 : inexact-ok
+= y0 downward ldbl-96-intel 0x1p-40L : -0x1.1b982d048e9f173ap+4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x1p-40L : -0x1.1b982d048e9f1738p+4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x1p-40L : -0x1.1b982d048e9f1738p+4L : inexact-ok
+= y0 upward ldbl-96-intel 0x1p-40L : -0x1.1b982d048e9f1738p+4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x1p-40L : -0x1.1b982d048e9f173ap+4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x1p-40L : -0x1.1b982d048e9f1738p+4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x1p-40L : -0x1.1b982d048e9f1738p+4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x1p-40L : -0x1.1b982d048e9f1738p+4L : inexact-ok
+= y0 downward ldbl-128 0x1p-40L : -0x1.1b982d048e9f17384f1e869823a7p+4L : inexact-ok
+= y0 tonearest ldbl-128 0x1p-40L : -0x1.1b982d048e9f17384f1e869823a6p+4L : inexact-ok
+= y0 towardzero ldbl-128 0x1p-40L : -0x1.1b982d048e9f17384f1e869823a6p+4L : inexact-ok
+= y0 upward ldbl-128 0x1p-40L : -0x1.1b982d048e9f17384f1e869823a6p+4L : inexact-ok
+= y0 downward ldbl-128ibm 0x1p-40L : -0x1.1b982d048e9f17384f1e869824p+4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x1p-40L : -0x1.1b982d048e9f17384f1e8698238p+4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x1p-40L : -0x1.1b982d048e9f17384f1e8698238p+4L : inexact-ok
+= y0 upward ldbl-128ibm 0x1p-40L : -0x1.1b982d048e9f17384f1e8698238p+4L : inexact-ok
+y0 0x1p-50
+= y0 downward flt-32 0x4p-52f : -0x1.6232a6p+4f : inexact-ok
+= y0 tonearest flt-32 0x4p-52f : -0x1.6232a4p+4f : inexact-ok
+= y0 towardzero flt-32 0x4p-52f : -0x1.6232a4p+4f : inexact-ok
+= y0 upward flt-32 0x4p-52f : -0x1.6232a4p+4f : inexact-ok
+= y0 downward dbl-64 0x4p-52 : -0x1.6232a4eb4b17ap+4 : inexact-ok
+= y0 tonearest dbl-64 0x4p-52 : -0x1.6232a4eb4b17ap+4 : inexact-ok
+= y0 towardzero dbl-64 0x4p-52 : -0x1.6232a4eb4b179p+4 : inexact-ok
+= y0 upward dbl-64 0x4p-52 : -0x1.6232a4eb4b179p+4 : inexact-ok
+= y0 downward ldbl-96-intel 0x4p-52L : -0x1.6232a4eb4b179c8ep+4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x4p-52L : -0x1.6232a4eb4b179c8cp+4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x4p-52L : -0x1.6232a4eb4b179c8cp+4L : inexact-ok
+= y0 upward ldbl-96-intel 0x4p-52L : -0x1.6232a4eb4b179c8cp+4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x4p-52L : -0x1.6232a4eb4b179c8ep+4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x4p-52L : -0x1.6232a4eb4b179c8cp+4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x4p-52L : -0x1.6232a4eb4b179c8cp+4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x4p-52L : -0x1.6232a4eb4b179c8cp+4L : inexact-ok
+= y0 downward ldbl-128 0x4p-52L : -0x1.6232a4eb4b179c8c40e407270503p+4L : inexact-ok
+= y0 tonearest ldbl-128 0x4p-52L : -0x1.6232a4eb4b179c8c40e407270503p+4L : inexact-ok
+= y0 towardzero ldbl-128 0x4p-52L : -0x1.6232a4eb4b179c8c40e407270502p+4L : inexact-ok
+= y0 upward ldbl-128 0x4p-52L : -0x1.6232a4eb4b179c8c40e407270502p+4L : inexact-ok
+= y0 downward ldbl-128ibm 0x4p-52L : -0x1.6232a4eb4b179c8c40e40727058p+4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x4p-52L : -0x1.6232a4eb4b179c8c40e4072705p+4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x4p-52L : -0x1.6232a4eb4b179c8c40e4072705p+4L : inexact-ok
+= y0 upward ldbl-128ibm 0x4p-52L : -0x1.6232a4eb4b179c8c40e4072705p+4L : inexact-ok
+y0 0x1p-60
+= y0 downward flt-32 0x1p-60f : -0x1.a8cd1ep+4f : inexact-ok
+= y0 tonearest flt-32 0x1p-60f : -0x1.a8cd1cp+4f : inexact-ok
+= y0 towardzero flt-32 0x1p-60f : -0x1.a8cd1cp+4f : inexact-ok
+= y0 upward flt-32 0x1p-60f : -0x1.a8cd1cp+4f : inexact-ok
+= y0 downward dbl-64 0x1p-60 : -0x1.a8cd1cd207903p+4 : inexact-ok
+= y0 tonearest dbl-64 0x1p-60 : -0x1.a8cd1cd207902p+4 : inexact-ok
+= y0 towardzero dbl-64 0x1p-60 : -0x1.a8cd1cd207902p+4 : inexact-ok
+= y0 upward dbl-64 0x1p-60 : -0x1.a8cd1cd207902p+4 : inexact-ok
+= y0 downward ldbl-96-intel 0x1p-60L : -0x1.a8cd1cd2079021e2p+4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x1p-60L : -0x1.a8cd1cd2079021ep+4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x1p-60L : -0x1.a8cd1cd2079021ep+4L : inexact-ok
+= y0 upward ldbl-96-intel 0x1p-60L : -0x1.a8cd1cd2079021ep+4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x1p-60L : -0x1.a8cd1cd2079021e2p+4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x1p-60L : -0x1.a8cd1cd2079021ep+4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x1p-60L : -0x1.a8cd1cd2079021ep+4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x1p-60L : -0x1.a8cd1cd2079021ep+4L : inexact-ok
+= y0 downward ldbl-128 0x1p-60L : -0x1.a8cd1cd2079021e032a93e440074p+4L : inexact-ok
+= y0 tonearest ldbl-128 0x1p-60L : -0x1.a8cd1cd2079021e032a93e440074p+4L : inexact-ok
+= y0 towardzero ldbl-128 0x1p-60L : -0x1.a8cd1cd2079021e032a93e440073p+4L : inexact-ok
+= y0 upward ldbl-128 0x1p-60L : -0x1.a8cd1cd2079021e032a93e440073p+4L : inexact-ok
+= y0 downward ldbl-128ibm 0x1p-60L : -0x1.a8cd1cd2079021e032a93e44008p+4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x1p-60L : -0x1.a8cd1cd2079021e032a93e44008p+4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x1p-60L : -0x1.a8cd1cd2079021e032a93e44p+4L : inexact-ok
+= y0 upward ldbl-128ibm 0x1p-60L : -0x1.a8cd1cd2079021e032a93e44p+4L : inexact-ok
+y0 0x1p-70
+= y0 downward flt-32 0x4p-72f : -0x1.ef6796p+4f : inexact-ok
+= y0 tonearest flt-32 0x4p-72f : -0x1.ef6794p+4f : inexact-ok
+= y0 towardzero flt-32 0x4p-72f : -0x1.ef6794p+4f : inexact-ok
+= y0 upward flt-32 0x4p-72f : -0x1.ef6794p+4f : inexact-ok
+= y0 downward dbl-64 0x4p-72 : -0x1.ef6794b8c408bp+4 : inexact-ok
+= y0 tonearest dbl-64 0x4p-72 : -0x1.ef6794b8c408ap+4 : inexact-ok
+= y0 towardzero dbl-64 0x4p-72 : -0x1.ef6794b8c408ap+4 : inexact-ok
+= y0 upward dbl-64 0x4p-72 : -0x1.ef6794b8c408ap+4 : inexact-ok
+= y0 downward ldbl-96-intel 0x4p-72L : -0x1.ef6794b8c408a736p+4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x4p-72L : -0x1.ef6794b8c408a734p+4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x4p-72L : -0x1.ef6794b8c408a734p+4L : inexact-ok
+= y0 upward ldbl-96-intel 0x4p-72L : -0x1.ef6794b8c408a734p+4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x4p-72L : -0x1.ef6794b8c408a736p+4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x4p-72L : -0x1.ef6794b8c408a734p+4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x4p-72L : -0x1.ef6794b8c408a734p+4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x4p-72L : -0x1.ef6794b8c408a734p+4L : inexact-ok
+= y0 downward ldbl-128 0x4p-72L : -0x1.ef6794b8c408a734246e7560f633p+4L : inexact-ok
+= y0 tonearest ldbl-128 0x4p-72L : -0x1.ef6794b8c408a734246e7560f633p+4L : inexact-ok
+= y0 towardzero ldbl-128 0x4p-72L : -0x1.ef6794b8c408a734246e7560f632p+4L : inexact-ok
+= y0 upward ldbl-128 0x4p-72L : -0x1.ef6794b8c408a734246e7560f632p+4L : inexact-ok
+= y0 downward ldbl-128ibm 0x4p-72L : -0x1.ef6794b8c408a734246e7560f68p+4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x4p-72L : -0x1.ef6794b8c408a734246e7560f6p+4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x4p-72L : -0x1.ef6794b8c408a734246e7560f6p+4L : inexact-ok
+= y0 upward ldbl-128ibm 0x4p-72L : -0x1.ef6794b8c408a734246e7560f6p+4L : inexact-ok
+y0 0x1p-80
+= y0 downward flt-32 0x1p-80f : -0x2.36021p+4f : inexact-ok
+= y0 tonearest flt-32 0x1p-80f : -0x2.36020cp+4f : inexact-ok
+= y0 towardzero flt-32 0x1p-80f : -0x2.36020cp+4f : inexact-ok
+= y0 upward flt-32 0x1p-80f : -0x2.36020cp+4f : inexact-ok
+= y0 downward dbl-64 0x1p-80 : -0x2.36020c9f80814p+4 : inexact-ok
+= y0 tonearest dbl-64 0x1p-80 : -0x2.36020c9f80812p+4 : inexact-ok
+= y0 towardzero dbl-64 0x1p-80 : -0x2.36020c9f80812p+4 : inexact-ok
+= y0 upward dbl-64 0x1p-80 : -0x2.36020c9f80812p+4 : inexact-ok
+= y0 downward ldbl-96-intel 0x1p-80L : -0x2.36020c9f80812c8cp+4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x1p-80L : -0x2.36020c9f80812c88p+4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x1p-80L : -0x2.36020c9f80812c88p+4L : inexact-ok
+= y0 upward ldbl-96-intel 0x1p-80L : -0x2.36020c9f80812c88p+4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x1p-80L : -0x2.36020c9f80812c8cp+4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x1p-80L : -0x2.36020c9f80812c88p+4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x1p-80L : -0x2.36020c9f80812c88p+4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x1p-80L : -0x2.36020c9f80812c88p+4L : inexact-ok
+= y0 downward ldbl-128 0x1p-80L : -0x2.36020c9f80812c881633ac7debf4p+4L : inexact-ok
+= y0 tonearest ldbl-128 0x1p-80L : -0x2.36020c9f80812c881633ac7debf2p+4L : inexact-ok
+= y0 towardzero ldbl-128 0x1p-80L : -0x2.36020c9f80812c881633ac7debf2p+4L : inexact-ok
+= y0 upward ldbl-128 0x1p-80L : -0x2.36020c9f80812c881633ac7debf2p+4L : inexact-ok
+= y0 downward ldbl-128ibm 0x1p-80L : -0x2.36020c9f80812c881633ac7decp+4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x1p-80L : -0x2.36020c9f80812c881633ac7decp+4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x1p-80L : -0x2.36020c9f80812c881633ac7debp+4L : inexact-ok
+= y0 upward ldbl-128ibm 0x1p-80L : -0x2.36020c9f80812c881633ac7debp+4L : inexact-ok
+y0 0x1p-90
+= y0 downward flt-32 0x4p-92f : -0x2.7c9c88p+4f : inexact-ok
+= y0 tonearest flt-32 0x4p-92f : -0x2.7c9c84p+4f : inexact-ok
+= y0 towardzero flt-32 0x4p-92f : -0x2.7c9c84p+4f : inexact-ok
+= y0 upward flt-32 0x4p-92f : -0x2.7c9c84p+4f : inexact-ok
+= y0 downward dbl-64 0x4p-92 : -0x2.7c9c84863cf9cp+4 : inexact-ok
+= y0 tonearest dbl-64 0x4p-92 : -0x2.7c9c84863cf9cp+4 : inexact-ok
+= y0 towardzero dbl-64 0x4p-92 : -0x2.7c9c84863cf9ap+4 : inexact-ok
+= y0 upward dbl-64 0x4p-92 : -0x2.7c9c84863cf9ap+4 : inexact-ok
+= y0 downward ldbl-96-intel 0x4p-92L : -0x2.7c9c84863cf9b1ep+4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x4p-92L : -0x2.7c9c84863cf9b1dcp+4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x4p-92L : -0x2.7c9c84863cf9b1dcp+4L : inexact-ok
+= y0 upward ldbl-96-intel 0x4p-92L : -0x2.7c9c84863cf9b1dcp+4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x4p-92L : -0x2.7c9c84863cf9b1ep+4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x4p-92L : -0x2.7c9c84863cf9b1dcp+4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x4p-92L : -0x2.7c9c84863cf9b1dcp+4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x4p-92L : -0x2.7c9c84863cf9b1dcp+4L : inexact-ok
+= y0 downward ldbl-128 0x4p-92L : -0x2.7c9c84863cf9b1dc07f8e39ae1b2p+4L : inexact-ok
+= y0 tonearest ldbl-128 0x4p-92L : -0x2.7c9c84863cf9b1dc07f8e39ae1b2p+4L : inexact-ok
+= y0 towardzero ldbl-128 0x4p-92L : -0x2.7c9c84863cf9b1dc07f8e39ae1bp+4L : inexact-ok
+= y0 upward ldbl-128 0x4p-92L : -0x2.7c9c84863cf9b1dc07f8e39ae1bp+4L : inexact-ok
+= y0 downward ldbl-128ibm 0x4p-92L : -0x2.7c9c84863cf9b1dc07f8e39ae2p+4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x4p-92L : -0x2.7c9c84863cf9b1dc07f8e39ae2p+4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x4p-92L : -0x2.7c9c84863cf9b1dc07f8e39ae1p+4L : inexact-ok
+= y0 upward ldbl-128ibm 0x4p-92L : -0x2.7c9c84863cf9b1dc07f8e39ae1p+4L : inexact-ok
+y0 0x1p-100
+= y0 downward flt-32 0x1p-100f : -0x2.c337p+4f : inexact-ok
+= y0 tonearest flt-32 0x1p-100f : -0x2.c336fcp+4f : inexact-ok
+= y0 towardzero flt-32 0x1p-100f : -0x2.c336fcp+4f : inexact-ok
+= y0 upward flt-32 0x1p-100f : -0x2.c336fcp+4f : inexact-ok
+= y0 downward dbl-64 0x1p-100 : -0x2.c336fc6cf9724p+4 : inexact-ok
+= y0 tonearest dbl-64 0x1p-100 : -0x2.c336fc6cf9724p+4 : inexact-ok
+= y0 towardzero dbl-64 0x1p-100 : -0x2.c336fc6cf9722p+4 : inexact-ok
+= y0 upward dbl-64 0x1p-100 : -0x2.c336fc6cf9722p+4 : inexact-ok
+= y0 downward ldbl-96-intel 0x1p-100L : -0x2.c336fc6cf972373p+4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x1p-100L : -0x2.c336fc6cf972373p+4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x1p-100L : -0x2.c336fc6cf972372cp+4L : inexact-ok
+= y0 upward ldbl-96-intel 0x1p-100L : -0x2.c336fc6cf972372cp+4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x1p-100L : -0x2.c336fc6cf972373p+4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x1p-100L : -0x2.c336fc6cf972373p+4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x1p-100L : -0x2.c336fc6cf972372cp+4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x1p-100L : -0x2.c336fc6cf972372cp+4L : inexact-ok
+= y0 downward ldbl-128 0x1p-100L : -0x2.c336fc6cf972372ff9be1ab7d772p+4L : inexact-ok
+= y0 tonearest ldbl-128 0x1p-100L : -0x2.c336fc6cf972372ff9be1ab7d77p+4L : inexact-ok
+= y0 towardzero ldbl-128 0x1p-100L : -0x2.c336fc6cf972372ff9be1ab7d77p+4L : inexact-ok
+= y0 upward ldbl-128 0x1p-100L : -0x2.c336fc6cf972372ff9be1ab7d77p+4L : inexact-ok
+= y0 downward ldbl-128ibm 0x1p-100L : -0x2.c336fc6cf972372ff9be1ab7d8p+4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x1p-100L : -0x2.c336fc6cf972372ff9be1ab7d7p+4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x1p-100L : -0x2.c336fc6cf972372ff9be1ab7d7p+4L : inexact-ok
+= y0 upward ldbl-128ibm 0x1p-100L : -0x2.c336fc6cf972372ff9be1ab7d7p+4L : inexact-ok
+y0 0x1p-110
+= y0 downward flt-32 0x4p-112f : -0x3.09d178p+4f : inexact-ok
+= y0 tonearest flt-32 0x4p-112f : -0x3.09d174p+4f : inexact-ok
+= y0 towardzero flt-32 0x4p-112f : -0x3.09d174p+4f : inexact-ok
+= y0 upward flt-32 0x4p-112f : -0x3.09d174p+4f : inexact-ok
+= y0 downward dbl-64 0x4p-112 : -0x3.09d17453b5eacp+4 : inexact-ok
+= y0 tonearest dbl-64 0x4p-112 : -0x3.09d17453b5eacp+4 : inexact-ok
+= y0 towardzero dbl-64 0x4p-112 : -0x3.09d17453b5eaap+4 : inexact-ok
+= y0 upward dbl-64 0x4p-112 : -0x3.09d17453b5eaap+4 : inexact-ok
+= y0 downward ldbl-96-intel 0x4p-112L : -0x3.09d17453b5eabc84p+4L : inexact-ok
+= y0 tonearest ldbl-96-intel 0x4p-112L : -0x3.09d17453b5eabc84p+4L : inexact-ok
+= y0 towardzero ldbl-96-intel 0x4p-112L : -0x3.09d17453b5eabc8p+4L : inexact-ok
+= y0 upward ldbl-96-intel 0x4p-112L : -0x3.09d17453b5eabc8p+4L : inexact-ok
+= y0 downward ldbl-96-m68k 0x4p-112L : -0x3.09d17453b5eabc84p+4L : inexact-ok
+= y0 tonearest ldbl-96-m68k 0x4p-112L : -0x3.09d17453b5eabc84p+4L : inexact-ok
+= y0 towardzero ldbl-96-m68k 0x4p-112L : -0x3.09d17453b5eabc8p+4L : inexact-ok
+= y0 upward ldbl-96-m68k 0x4p-112L : -0x3.09d17453b5eabc8p+4L : inexact-ok
+= y0 downward ldbl-128 0x4p-112L : -0x3.09d17453b5eabc83eb8351d4cd32p+4L : inexact-ok
+= y0 tonearest ldbl-128 0x4p-112L : -0x3.09d17453b5eabc83eb8351d4cd3p+4L : inexact-ok
+= y0 towardzero ldbl-128 0x4p-112L : -0x3.09d17453b5eabc83eb8351d4cd3p+4L : inexact-ok
+= y0 upward ldbl-128 0x4p-112L : -0x3.09d17453b5eabc83eb8351d4cd3p+4L : inexact-ok
+= y0 downward ldbl-128ibm 0x4p-112L : -0x3.09d17453b5eabc83eb8351d4cep+4L : inexact-ok
+= y0 tonearest ldbl-128ibm 0x4p-112L : -0x3.09d17453b5eabc83eb8351d4cdp+4L : inexact-ok
+= y0 towardzero ldbl-128ibm 0x4p-112L : -0x3.09d17453b5eabc83eb8351d4cdp+4L : inexact-ok
+= y0 upward ldbl-128ibm 0x4p-112L : -0x3.09d17453b5eabc83eb8351d4cdp+4L : inexact-ok
+y1 0.125
+= y1 downward flt-32 0x2p-4f : -0x5.332f08p+0f : inexact-ok
+= y1 tonearest flt-32 0x2p-4f : -0x5.332fp+0f : inexact-ok
+= y1 towardzero flt-32 0x2p-4f : -0x5.332fp+0f : inexact-ok
+= y1 upward flt-32 0x2p-4f : -0x5.332fp+0f : inexact-ok
+= y1 downward dbl-64 0x2p-4 : -0x5.332f0358a051p+0 : inexact-ok
+= y1 tonearest dbl-64 0x2p-4 : -0x5.332f0358a051p+0 : inexact-ok
+= y1 towardzero dbl-64 0x2p-4 : -0x5.332f0358a050cp+0 : inexact-ok
+= y1 upward dbl-64 0x2p-4 : -0x5.332f0358a050cp+0 : inexact-ok
+= y1 downward ldbl-96-intel 0x2p-4L : -0x5.332f0358a050e3ap+0L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x2p-4L : -0x5.332f0358a050e3ap+0L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x2p-4L : -0x5.332f0358a050e398p+0L : inexact-ok
+= y1 upward ldbl-96-intel 0x2p-4L : -0x5.332f0358a050e398p+0L : inexact-ok
+= y1 downward ldbl-96-m68k 0x2p-4L : -0x5.332f0358a050e3ap+0L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x2p-4L : -0x5.332f0358a050e3ap+0L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x2p-4L : -0x5.332f0358a050e398p+0L : inexact-ok
+= y1 upward ldbl-96-m68k 0x2p-4L : -0x5.332f0358a050e398p+0L : inexact-ok
+= y1 downward ldbl-128 0x2p-4L : -0x5.332f0358a050e39ed8ad27e94708p+0L : inexact-ok
+= y1 tonearest ldbl-128 0x2p-4L : -0x5.332f0358a050e39ed8ad27e94708p+0L : inexact-ok
+= y1 towardzero ldbl-128 0x2p-4L : -0x5.332f0358a050e39ed8ad27e94704p+0L : inexact-ok
+= y1 upward ldbl-128 0x2p-4L : -0x5.332f0358a050e39ed8ad27e94704p+0L : inexact-ok
+= y1 downward ldbl-128ibm 0x2p-4L : -0x5.332f0358a050e39ed8ad27e948p+0L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x2p-4L : -0x5.332f0358a050e39ed8ad27e948p+0L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x2p-4L : -0x5.332f0358a050e39ed8ad27e946p+0L : inexact-ok
+= y1 upward ldbl-128ibm 0x2p-4L : -0x5.332f0358a050e39ed8ad27e946p+0L : inexact-ok
+y1 0.75
+= y1 downward flt-32 0xcp-4f : -0x1.099fccp+0f : inexact-ok
+= y1 tonearest flt-32 0xcp-4f : -0x1.099fccp+0f : inexact-ok
+= y1 towardzero flt-32 0xcp-4f : -0x1.099fcap+0f : inexact-ok
+= y1 upward flt-32 0xcp-4f : -0x1.099fcap+0f : inexact-ok
+= y1 downward dbl-64 0xcp-4 : -0x1.099fcbe60fd84p+0 : inexact-ok
+= y1 tonearest dbl-64 0xcp-4 : -0x1.099fcbe60fd83p+0 : inexact-ok
+= y1 towardzero dbl-64 0xcp-4 : -0x1.099fcbe60fd83p+0 : inexact-ok
+= y1 upward dbl-64 0xcp-4 : -0x1.099fcbe60fd83p+0 : inexact-ok
+= y1 downward ldbl-96-intel 0xcp-4L : -0x1.099fcbe60fd8302ap+0L : inexact-ok
+= y1 tonearest ldbl-96-intel 0xcp-4L : -0x1.099fcbe60fd8302ap+0L : inexact-ok
+= y1 towardzero ldbl-96-intel 0xcp-4L : -0x1.099fcbe60fd83028p+0L : inexact-ok
+= y1 upward ldbl-96-intel 0xcp-4L : -0x1.099fcbe60fd83028p+0L : inexact-ok
+= y1 downward ldbl-96-m68k 0xcp-4L : -0x1.099fcbe60fd8302ap+0L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0xcp-4L : -0x1.099fcbe60fd8302ap+0L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0xcp-4L : -0x1.099fcbe60fd83028p+0L : inexact-ok
+= y1 upward ldbl-96-m68k 0xcp-4L : -0x1.099fcbe60fd83028p+0L : inexact-ok
+= y1 downward ldbl-128 0xcp-4L : -0x1.099fcbe60fd830293e0a662302e5p+0L : inexact-ok
+= y1 tonearest ldbl-128 0xcp-4L : -0x1.099fcbe60fd830293e0a662302e4p+0L : inexact-ok
+= y1 towardzero ldbl-128 0xcp-4L : -0x1.099fcbe60fd830293e0a662302e4p+0L : inexact-ok
+= y1 upward ldbl-128 0xcp-4L : -0x1.099fcbe60fd830293e0a662302e4p+0L : inexact-ok
+= y1 downward ldbl-128ibm 0xcp-4L : -0x1.099fcbe60fd830293e0a662303p+0L : inexact-ok
+= y1 tonearest ldbl-128ibm 0xcp-4L : -0x1.099fcbe60fd830293e0a662303p+0L : inexact-ok
+= y1 towardzero ldbl-128ibm 0xcp-4L : -0x1.099fcbe60fd830293e0a6623028p+0L : inexact-ok
+= y1 upward ldbl-128ibm 0xcp-4L : -0x1.099fcbe60fd830293e0a6623028p+0L : inexact-ok
+y1 1.0
+= y1 downward flt-32 0x1p+0f : -0xc.7fd91p-4f : inexact-ok
+= y1 tonearest flt-32 0x1p+0f : -0xc.7fd9p-4f : inexact-ok
+= y1 towardzero flt-32 0x1p+0f : -0xc.7fd9p-4f : inexact-ok
+= y1 upward flt-32 0x1p+0f : -0xc.7fd9p-4f : inexact-ok
+= y1 downward dbl-64 0x1p+0 : -0xc.7fd903eb35ca8p-4 : inexact-ok
+= y1 tonearest dbl-64 0x1p+0 : -0xc.7fd903eb35cap-4 : inexact-ok
+= y1 towardzero dbl-64 0x1p+0 : -0xc.7fd903eb35cap-4 : inexact-ok
+= y1 upward dbl-64 0x1p+0 : -0xc.7fd903eb35cap-4 : inexact-ok
+= y1 downward ldbl-96-intel 0x1p+0L : -0xc.7fd903eb35ca24fp-4L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x1p+0L : -0xc.7fd903eb35ca24fp-4L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x1p+0L : -0xc.7fd903eb35ca24ep-4L : inexact-ok
+= y1 upward ldbl-96-intel 0x1p+0L : -0xc.7fd903eb35ca24ep-4L : inexact-ok
+= y1 downward ldbl-96-m68k 0x1p+0L : -0xc.7fd903eb35ca24fp-4L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x1p+0L : -0xc.7fd903eb35ca24fp-4L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x1p+0L : -0xc.7fd903eb35ca24ep-4L : inexact-ok
+= y1 upward ldbl-96-m68k 0x1p+0L : -0xc.7fd903eb35ca24ep-4L : inexact-ok
+= y1 downward ldbl-128 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf89581968p-4L : inexact-ok
+= y1 tonearest ldbl-128 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf8958196p-4L : inexact-ok
+= y1 towardzero ldbl-128 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf8958196p-4L : inexact-ok
+= y1 upward ldbl-128 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf8958196p-4L : inexact-ok
+= y1 downward ldbl-128ibm 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf89581cp-4L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf895818p-4L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf895818p-4L : inexact-ok
+= y1 upward ldbl-128ibm 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf895818p-4L : inexact-ok
+y1 1.5
+= y1 downward flt-32 0x1.8p+0f : -0x6.98d0fp-4f : inexact-ok
+= y1 tonearest flt-32 0x1.8p+0f : -0x6.98d0fp-4f : inexact-ok
+= y1 towardzero flt-32 0x1.8p+0f : -0x6.98d0e8p-4f : inexact-ok
+= y1 upward flt-32 0x1.8p+0f : -0x6.98d0e8p-4f : inexact-ok
+= y1 downward dbl-64 0x1.8p+0 : -0x6.98d0ee4b62c3cp-4 : inexact-ok
+= y1 tonearest dbl-64 0x1.8p+0 : -0x6.98d0ee4b62c3cp-4 : inexact-ok
+= y1 towardzero dbl-64 0x1.8p+0 : -0x6.98d0ee4b62c38p-4 : inexact-ok
+= y1 upward dbl-64 0x1.8p+0 : -0x6.98d0ee4b62c38p-4 : inexact-ok
+= y1 downward ldbl-96-intel 0x1.8p+0L : -0x6.98d0ee4b62c3bf9p-4L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x1.8p+0L : -0x6.98d0ee4b62c3bf9p-4L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x1.8p+0L : -0x6.98d0ee4b62c3bf88p-4L : inexact-ok
+= y1 upward ldbl-96-intel 0x1.8p+0L : -0x6.98d0ee4b62c3bf88p-4L : inexact-ok
+= y1 downward ldbl-96-m68k 0x1.8p+0L : -0x6.98d0ee4b62c3bf9p-4L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x1.8p+0L : -0x6.98d0ee4b62c3bf9p-4L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x1.8p+0L : -0x6.98d0ee4b62c3bf88p-4L : inexact-ok
+= y1 upward ldbl-96-m68k 0x1.8p+0L : -0x6.98d0ee4b62c3bf88p-4L : inexact-ok
+= y1 downward ldbl-128 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da4547258p-4L : inexact-ok
+= y1 tonearest ldbl-128 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da4547258p-4L : inexact-ok
+= y1 towardzero ldbl-128 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da4547254p-4L : inexact-ok
+= y1 upward ldbl-128 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da4547254p-4L : inexact-ok
+= y1 downward ldbl-128ibm 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da45474p-4L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da45472p-4L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da45472p-4L : inexact-ok
+= y1 upward ldbl-128ibm 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da45472p-4L : inexact-ok
+y1 2.0
+= y1 downward flt-32 0x2p+0f : -0x1.b667a4p-4f : inexact-ok
+= y1 tonearest flt-32 0x2p+0f : -0x1.b667a4p-4f : inexact-ok
+= y1 towardzero flt-32 0x2p+0f : -0x1.b667a2p-4f : inexact-ok
+= y1 upward flt-32 0x2p+0f : -0x1.b667a2p-4f : inexact-ok
+= y1 downward dbl-64 0x2p+0 : -0x1.b667a39146648p-4 : inexact-ok
+= y1 tonearest dbl-64 0x2p+0 : -0x1.b667a39146647p-4 : inexact-ok
+= y1 towardzero dbl-64 0x2p+0 : -0x1.b667a39146647p-4 : inexact-ok
+= y1 upward dbl-64 0x2p+0 : -0x1.b667a39146647p-4 : inexact-ok
+= y1 downward ldbl-96-intel 0x2p+0L : -0x1.b667a3914664758cp-4L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x2p+0L : -0x1.b667a3914664758cp-4L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x2p+0L : -0x1.b667a3914664758ap-4L : inexact-ok
+= y1 upward ldbl-96-intel 0x2p+0L : -0x1.b667a3914664758ap-4L : inexact-ok
+= y1 downward ldbl-96-m68k 0x2p+0L : -0x1.b667a3914664758cp-4L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x2p+0L : -0x1.b667a3914664758cp-4L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x2p+0L : -0x1.b667a3914664758ap-4L : inexact-ok
+= y1 upward ldbl-96-m68k 0x2p+0L : -0x1.b667a3914664758ap-4L : inexact-ok
+= y1 downward ldbl-128 0x2p+0L : -0x1.b667a3914664758b0c44371e51e3p-4L : inexact-ok
+= y1 tonearest ldbl-128 0x2p+0L : -0x1.b667a3914664758b0c44371e51e2p-4L : inexact-ok
+= y1 towardzero ldbl-128 0x2p+0L : -0x1.b667a3914664758b0c44371e51e2p-4L : inexact-ok
+= y1 upward ldbl-128 0x2p+0L : -0x1.b667a3914664758b0c44371e51e2p-4L : inexact-ok
+= y1 downward ldbl-128ibm 0x2p+0L : -0x1.b667a3914664758b0c44371e52p-4L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x2p+0L : -0x1.b667a3914664758b0c44371e52p-4L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x2p+0L : -0x1.b667a3914664758b0c44371e518p-4L : inexact-ok
+= y1 upward ldbl-128ibm 0x2p+0L : -0x1.b667a3914664758b0c44371e518p-4L : inexact-ok
+y1 8.0
+= y1 downward flt-32 0x8p+0f : -0x2.876a6cp-4f : inexact-ok
+= y1 tonearest flt-32 0x8p+0f : -0x2.876a68p-4f : inexact-ok
+= y1 towardzero flt-32 0x8p+0f : -0x2.876a68p-4f : inexact-ok
+= y1 upward flt-32 0x8p+0f : -0x2.876a68p-4f : inexact-ok
+= y1 downward dbl-64 0x8p+0 : -0x2.876a681ed266ep-4 : inexact-ok
+= y1 tonearest dbl-64 0x8p+0 : -0x2.876a681ed266cp-4 : inexact-ok
+= y1 towardzero dbl-64 0x8p+0 : -0x2.876a681ed266cp-4 : inexact-ok
+= y1 upward dbl-64 0x8p+0 : -0x2.876a681ed266cp-4 : inexact-ok
+= y1 downward ldbl-96-intel 0x8p+0L : -0x2.876a681ed266c21cp-4L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= y1 upward ldbl-96-intel 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= y1 downward ldbl-96-m68k 0x8p+0L : -0x2.876a681ed266c21cp-4L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= y1 upward ldbl-96-m68k 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= y1 downward ldbl-128 0x8p+0L : -0x2.876a681ed266c219a14b51d98a7p-4L : inexact-ok
+= y1 tonearest ldbl-128 0x8p+0L : -0x2.876a681ed266c219a14b51d98a7p-4L : inexact-ok
+= y1 towardzero ldbl-128 0x8p+0L : -0x2.876a681ed266c219a14b51d98a6ep-4L : inexact-ok
+= y1 upward ldbl-128 0x8p+0L : -0x2.876a681ed266c219a14b51d98a6ep-4L : inexact-ok
+= y1 downward ldbl-128ibm 0x8p+0L : -0x2.876a681ed266c219a14b51d98bp-4L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x8p+0L : -0x2.876a681ed266c219a14b51d98ap-4L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x8p+0L : -0x2.876a681ed266c219a14b51d98ap-4L : inexact-ok
+= y1 upward ldbl-128ibm 0x8p+0L : -0x2.876a681ed266c219a14b51d98ap-4L : inexact-ok
+y1 10.0
+= y1 downward flt-32 0xap+0f : 0x3.fbf798p-4f : inexact-ok
+= y1 tonearest flt-32 0xap+0f : 0x3.fbf798p-4f : inexact-ok
+= y1 towardzero flt-32 0xap+0f : 0x3.fbf798p-4f : inexact-ok
+= y1 upward flt-32 0xap+0f : 0x3.fbf79cp-4f : inexact-ok
+= y1 downward dbl-64 0xap+0 : 0x3.fbf798f2b1e78p-4 : inexact-ok
+= y1 tonearest dbl-64 0xap+0 : 0x3.fbf798f2b1e78p-4 : inexact-ok
+= y1 towardzero dbl-64 0xap+0 : 0x3.fbf798f2b1e78p-4 : inexact-ok
+= y1 upward dbl-64 0xap+0 : 0x3.fbf798f2b1e7ap-4 : inexact-ok
+= y1 downward ldbl-96-intel 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= y1 tonearest ldbl-96-intel 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= y1 towardzero ldbl-96-intel 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= y1 upward ldbl-96-intel 0xap+0L : 0x3.fbf798f2b1e78048p-4L : inexact-ok
+= y1 downward ldbl-96-m68k 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= y1 upward ldbl-96-m68k 0xap+0L : 0x3.fbf798f2b1e78048p-4L : inexact-ok
+= y1 downward ldbl-128 0xap+0L : 0x3.fbf798f2b1e78044d16cb7250316p-4L : inexact-ok
+= y1 tonearest ldbl-128 0xap+0L : 0x3.fbf798f2b1e78044d16cb7250318p-4L : inexact-ok
+= y1 towardzero ldbl-128 0xap+0L : 0x3.fbf798f2b1e78044d16cb7250316p-4L : inexact-ok
+= y1 upward ldbl-128 0xap+0L : 0x3.fbf798f2b1e78044d16cb7250318p-4L : inexact-ok
+= y1 downward ldbl-128ibm 0xap+0L : 0x3.fbf798f2b1e78044d16cb72503p-4L : inexact-ok
+= y1 tonearest ldbl-128ibm 0xap+0L : 0x3.fbf798f2b1e78044d16cb72503p-4L : inexact-ok
+= y1 towardzero ldbl-128ibm 0xap+0L : 0x3.fbf798f2b1e78044d16cb72503p-4L : inexact-ok
+= y1 upward ldbl-128ibm 0xap+0L : 0x3.fbf798f2b1e78044d16cb72504p-4L : inexact-ok
+y1 0x1.27e204p+99
+= y1 downward flt-32 0x9.3f102p+96f : -0x3.fffaep-52f : inexact-ok
+= y1 tonearest flt-32 0x9.3f102p+96f : -0x3.fffadcp-52f : inexact-ok
+= y1 towardzero flt-32 0x9.3f102p+96f : -0x3.fffadcp-52f : inexact-ok
+= y1 upward flt-32 0x9.3f102p+96f : -0x3.fffadcp-52f : inexact-ok
+= y1 downward dbl-64 0x9.3f102p+96 : -0x3.fffadced2ca9cp-52 : inexact-ok
+= y1 tonearest dbl-64 0x9.3f102p+96 : -0x3.fffadced2ca9ap-52 : inexact-ok
+= y1 towardzero dbl-64 0x9.3f102p+96 : -0x3.fffadced2ca9ap-52 : inexact-ok
+= y1 upward dbl-64 0x9.3f102p+96 : -0x3.fffadced2ca9ap-52 : inexact-ok
+= y1 downward ldbl-96-intel 0x9.3f102p+96L : -0x3.fffadced2ca9ad98p-52L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x9.3f102p+96L : -0x3.fffadced2ca9ad94p-52L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x9.3f102p+96L : -0x3.fffadced2ca9ad94p-52L : inexact-ok
+= y1 upward ldbl-96-intel 0x9.3f102p+96L : -0x3.fffadced2ca9ad94p-52L : inexact-ok
+= y1 downward ldbl-96-m68k 0x9.3f102p+96L : -0x3.fffadced2ca9ad98p-52L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x9.3f102p+96L : -0x3.fffadced2ca9ad94p-52L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x9.3f102p+96L : -0x3.fffadced2ca9ad94p-52L : inexact-ok
+= y1 upward ldbl-96-m68k 0x9.3f102p+96L : -0x3.fffadced2ca9ad94p-52L : inexact-ok
+= y1 downward ldbl-128 0x9.3f102p+96L : -0x3.fffadced2ca9ad94ba83df3de1b8p-52L : inexact-ok
+= y1 tonearest ldbl-128 0x9.3f102p+96L : -0x3.fffadced2ca9ad94ba83df3de1b6p-52L : inexact-ok
+= y1 towardzero ldbl-128 0x9.3f102p+96L : -0x3.fffadced2ca9ad94ba83df3de1b6p-52L : inexact-ok
+= y1 upward ldbl-128 0x9.3f102p+96L : -0x3.fffadced2ca9ad94ba83df3de1b6p-52L : inexact-ok
+= y1 downward ldbl-128ibm 0x9.3f102p+96L : -0x3.fffadced2ca9ad94ba83df3de2p-52L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x9.3f102p+96L : -0x3.fffadced2ca9ad94ba83df3de2p-52L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x9.3f102p+96L : -0x3.fffadced2ca9ad94ba83df3de1p-52L : inexact-ok
+= y1 upward ldbl-128ibm 0x9.3f102p+96L : -0x3.fffadced2ca9ad94ba83df3de1p-52L : inexact-ok
+y1 0x1.001000001p+593
+= y1 downward flt-32 0xf.fffffp+124f : -0x2.fd3facp-68f : inexact-ok
+= y1 tonearest flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 towardzero flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 upward flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 downward dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= y1 tonearest dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= y1 towardzero dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= y1 upward dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= y1 downward ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= y1 tonearest ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 towardzero ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 upward ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 downward ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 upward ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 downward ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= y1 tonearest ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= y1 towardzero ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= y1 upward ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= y1 downward ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc57p-68L : inexact-ok
+= y1 tonearest ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 towardzero ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 upward ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 downward dbl-64 0x2.002000002p+592 : 0x7.ffff5bc14ea28p-300 : inexact-ok
+= y1 tonearest dbl-64 0x2.002000002p+592 : 0x7.ffff5bc14ea2cp-300 : inexact-ok
+= y1 towardzero dbl-64 0x2.002000002p+592 : 0x7.ffff5bc14ea28p-300 : inexact-ok
+= y1 upward dbl-64 0x2.002000002p+592 : 0x7.ffff5bc14ea2cp-300 : inexact-ok
+= y1 downward ldbl-96-intel 0x2.002000002p+592L : 0x7.ffff5bc14ea2a988p-300L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x2.002000002p+592L : 0x7.ffff5bc14ea2a99p-300L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x2.002000002p+592L : 0x7.ffff5bc14ea2a988p-300L : inexact-ok
+= y1 upward ldbl-96-intel 0x2.002000002p+592L : 0x7.ffff5bc14ea2a99p-300L : inexact-ok
+= y1 downward ldbl-96-m68k 0x2.002000002p+592L : 0x7.ffff5bc14ea2a988p-300L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x2.002000002p+592L : 0x7.ffff5bc14ea2a99p-300L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x2.002000002p+592L : 0x7.ffff5bc14ea2a988p-300L : inexact-ok
+= y1 upward ldbl-96-m68k 0x2.002000002p+592L : 0x7.ffff5bc14ea2a99p-300L : inexact-ok
+= y1 downward ldbl-128 0x2.002000002p+592L : 0x7.ffff5bc14ea2a98c2c8b9c03e8bcp-300L : inexact-ok
+= y1 tonearest ldbl-128 0x2.002000002p+592L : 0x7.ffff5bc14ea2a98c2c8b9c03e8cp-300L : inexact-ok
+= y1 towardzero ldbl-128 0x2.002000002p+592L : 0x7.ffff5bc14ea2a98c2c8b9c03e8bcp-300L : inexact-ok
+= y1 upward ldbl-128 0x2.002000002p+592L : 0x7.ffff5bc14ea2a98c2c8b9c03e8cp-300L : inexact-ok
+= y1 downward ldbl-128ibm 0x2.002000002p+592L : 0x7.ffff5bc14ea2a98c2c8b9c03e8p-300L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x2.002000002p+592L : 0x7.ffff5bc14ea2a98c2c8b9c03e8p-300L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x2.002000002p+592L : 0x7.ffff5bc14ea2a98c2c8b9c03e8p-300L : inexact-ok
+= y1 upward ldbl-128ibm 0x2.002000002p+592L : 0x7.ffff5bc14ea2a98c2c8b9c03eap-300L : inexact-ok
+y1 0x1p1023
+= y1 downward flt-32 0xf.fffffp+124f : -0x2.fd3facp-68f : inexact-ok
+= y1 tonearest flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 towardzero flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 upward flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 downward dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= y1 tonearest dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= y1 towardzero dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= y1 upward dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= y1 downward ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= y1 tonearest ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 towardzero ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 upward ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 downward ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 upward ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 downward ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= y1 tonearest ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= y1 towardzero ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= y1 upward ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= y1 downward ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc57p-68L : inexact-ok
+= y1 tonearest ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 towardzero ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 upward ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 downward dbl-64 0x8p+1020 : 0x3.5c4f847797f2ep-516 : inexact-ok
+= y1 tonearest dbl-64 0x8p+1020 : 0x3.5c4f847797f3p-516 : inexact-ok
+= y1 towardzero dbl-64 0x8p+1020 : 0x3.5c4f847797f2ep-516 : inexact-ok
+= y1 upward dbl-64 0x8p+1020 : 0x3.5c4f847797f3p-516 : inexact-ok
+= y1 downward ldbl-96-intel 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= y1 upward ldbl-96-intel 0x8p+1020L : 0x3.5c4f847797f2fb08p-516L : inexact-ok
+= y1 downward ldbl-96-m68k 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x8p+1020L : 0x3.5c4f847797f2fb04p-516L : inexact-ok
+= y1 upward ldbl-96-m68k 0x8p+1020L : 0x3.5c4f847797f2fb08p-516L : inexact-ok
+= y1 downward ldbl-128 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82ca028p-516L : inexact-ok
+= y1 tonearest ldbl-128 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82ca028p-516L : inexact-ok
+= y1 towardzero ldbl-128 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82ca028p-516L : inexact-ok
+= y1 upward ldbl-128 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82ca02ap-516L : inexact-ok
+= y1 downward ldbl-128ibm 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82cap-516L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82cap-516L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82cap-516L : inexact-ok
+= y1 upward ldbl-128ibm 0x8p+1020L : 0x3.5c4f847797f2fb0411a8a82ca1p-516L : inexact-ok
+y1 0x1p16382
+= y1 downward flt-32 0xf.fffffp+124f : -0x2.fd3facp-68f : inexact-ok
+= y1 tonearest flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 towardzero flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 upward flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 downward dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= y1 tonearest dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= y1 towardzero dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= y1 upward dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= y1 downward ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= y1 tonearest ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 towardzero ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 upward ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 downward ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 upward ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 downward ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= y1 tonearest ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= y1 towardzero ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= y1 upward ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= y1 downward ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc57p-68L : inexact-ok
+= y1 tonearest ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 towardzero ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 upward ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 downward dbl-64 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f33p-516 : inexact-ok
+= y1 tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f338p-516 : inexact-ok
+= y1 towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f33p-516 : inexact-ok
+= y1 upward dbl-64 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f338p-516 : inexact-ok
+= y1 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= y1 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= y1 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= y1 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= y1 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= y1 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= y1 downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= y1 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= y1 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= y1 upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe2708p-516L : inexact-ok
+= y1 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe24p-516L : inexact-ok
+= y1 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe28p-516L : inexact-ok
+= y1 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe24p-516L : inexact-ok
+= y1 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe28p-516L : inexact-ok
+= y1 downward ldbl-96-intel 0x4p+16380L : 0x1.547d24fb1319012ep-8192L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x4p+16380L : 0x1.547d24fb1319013p-8192L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x4p+16380L : 0x1.547d24fb1319012ep-8192L : inexact-ok
+= y1 upward ldbl-96-intel 0x4p+16380L : 0x1.547d24fb1319013p-8192L : inexact-ok
+= y1 downward ldbl-96-m68k 0x4p+16380L : 0x1.547d24fb1319012ep-8192L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x4p+16380L : 0x1.547d24fb1319013p-8192L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x4p+16380L : 0x1.547d24fb1319012ep-8192L : inexact-ok
+= y1 upward ldbl-96-m68k 0x4p+16380L : 0x1.547d24fb1319013p-8192L : inexact-ok
+= y1 downward ldbl-128 0x4p+16380L : 0x1.547d24fb1319012fae0dc6c96321p-8192L : inexact-ok
+= y1 tonearest ldbl-128 0x4p+16380L : 0x1.547d24fb1319012fae0dc6c96322p-8192L : inexact-ok
+= y1 towardzero ldbl-128 0x4p+16380L : 0x1.547d24fb1319012fae0dc6c96321p-8192L : inexact-ok
+= y1 upward ldbl-128 0x4p+16380L : 0x1.547d24fb1319012fae0dc6c96322p-8192L : inexact-ok
+= y1 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= y1 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= y1 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= y1 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f019024p-516L : inexact-ok
+= y1 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
+= y1 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+= y1 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
+= y1 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+y1 0x1p16383
+= y1 downward flt-32 0xf.fffffp+124f : -0x2.fd3facp-68f : inexact-ok
+= y1 tonearest flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 towardzero flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 upward flt-32 0xf.fffffp+124f : -0x2.fd3fa8p-68f : inexact-ok
+= y1 downward dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= y1 tonearest dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee089ap-68 : inexact-ok
+= y1 towardzero dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= y1 upward dbl-64 0xf.fffffp+124 : -0x2.fd3fa9dee0898p-68 : inexact-ok
+= y1 downward ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= y1 tonearest ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 towardzero ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 upward ldbl-96-intel 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 downward ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee0899294p-68L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 upward ldbl-96-m68k 0xf.fffffp+124L : -0x2.fd3fa9dee089929p-68L : inexact-ok
+= y1 downward ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= y1 tonearest ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5614p-68L : inexact-ok
+= y1 towardzero ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= y1 upward ldbl-128 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc5612p-68L : inexact-ok
+= y1 downward ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc57p-68L : inexact-ok
+= y1 tonearest ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 towardzero ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 upward ldbl-128ibm 0xf.fffffp+124L : -0x2.fd3fa9dee0899291bc853ffc56p-68L : inexact-ok
+= y1 downward dbl-64 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f33p-516 : inexact-ok
+= y1 tonearest dbl-64 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f338p-516 : inexact-ok
+= y1 towardzero dbl-64 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f33p-516 : inexact-ok
+= y1 upward dbl-64 0xf.ffffffffffff8p+1020 : 0x8.fb6ce7294f338p-516 : inexact-ok
+= y1 downward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= y1 tonearest ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= y1 towardzero ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= y1 upward ldbl-96-intel 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= y1 downward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633p-516L : inexact-ok
+= y1 upward ldbl-96-m68k 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33634p-516L : inexact-ok
+= y1 downward ldbl-128 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= y1 tonearest ldbl-128 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= y1 towardzero ldbl-128 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe27p-516L : inexact-ok
+= y1 upward ldbl-128 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe2708p-516L : inexact-ok
+= y1 downward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe24p-516L : inexact-ok
+= y1 tonearest ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe28p-516L : inexact-ok
+= y1 towardzero ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe24p-516L : inexact-ok
+= y1 upward ldbl-128ibm 0xf.ffffffffffff8p+1020L : 0x8.fb6ce7294f33633a6933acbe28p-516L : inexact-ok
+= y1 downward ldbl-96-intel 0x8p+16380L : -0x1.0bab81cdff920822p-8192L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x8p+16380L : -0x1.0bab81cdff920822p-8192L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x8p+16380L : -0x1.0bab81cdff92082p-8192L : inexact-ok
+= y1 upward ldbl-96-intel 0x8p+16380L : -0x1.0bab81cdff92082p-8192L : inexact-ok
+= y1 downward ldbl-96-m68k 0x8p+16380L : -0x1.0bab81cdff920822p-8192L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x8p+16380L : -0x1.0bab81cdff920822p-8192L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x8p+16380L : -0x1.0bab81cdff92082p-8192L : inexact-ok
+= y1 upward ldbl-96-m68k 0x8p+16380L : -0x1.0bab81cdff92082p-8192L : inexact-ok
+= y1 downward ldbl-128 0x8p+16380L : -0x1.0bab81cdff9208215a7577214c4ap-8192L : inexact-ok
+= y1 tonearest ldbl-128 0x8p+16380L : -0x1.0bab81cdff9208215a7577214c49p-8192L : inexact-ok
+= y1 towardzero ldbl-128 0x8p+16380L : -0x1.0bab81cdff9208215a7577214c49p-8192L : inexact-ok
+= y1 upward ldbl-128 0x8p+16380L : -0x1.0bab81cdff9208215a7577214c49p-8192L : inexact-ok
+= y1 downward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= y1 tonearest ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= y1 towardzero ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f0190238p-516L : inexact-ok
+= y1 upward ldbl-128 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f019024p-516L : inexact-ok
+= y1 downward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
+= y1 tonearest ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+= y1 towardzero ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f019p-516L : inexact-ok
+= y1 upward ldbl-128ibm 0xf.ffffffffffffbffffffffffffcp+1020L : 0xb.a80d0ee91ce259a722e1f01904p-516L : inexact-ok
+y1 0x1p-10
+= y1 downward flt-32 0x4p-12f : -0x2.8be6a8p+8f : inexact-ok
+= y1 tonearest flt-32 0x4p-12f : -0x2.8be6a8p+8f : inexact-ok
+= y1 towardzero flt-32 0x4p-12f : -0x2.8be6a4p+8f : inexact-ok
+= y1 upward flt-32 0x4p-12f : -0x2.8be6a4p+8f : inexact-ok
+= y1 downward dbl-64 0x4p-12 : -0x2.8be6a77a5a95ep+8 : inexact-ok
+= y1 tonearest dbl-64 0x4p-12 : -0x2.8be6a77a5a95ep+8 : inexact-ok
+= y1 towardzero dbl-64 0x4p-12 : -0x2.8be6a77a5a95cp+8 : inexact-ok
+= y1 upward dbl-64 0x4p-12 : -0x2.8be6a77a5a95cp+8 : inexact-ok
+= y1 downward ldbl-96-intel 0x4p-12L : -0x2.8be6a77a5a95daecp+8L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x4p-12L : -0x2.8be6a77a5a95dae8p+8L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x4p-12L : -0x2.8be6a77a5a95dae8p+8L : inexact-ok
+= y1 upward ldbl-96-intel 0x4p-12L : -0x2.8be6a77a5a95dae8p+8L : inexact-ok
+= y1 downward ldbl-96-m68k 0x4p-12L : -0x2.8be6a77a5a95daecp+8L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x4p-12L : -0x2.8be6a77a5a95dae8p+8L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x4p-12L : -0x2.8be6a77a5a95dae8p+8L : inexact-ok
+= y1 upward ldbl-96-m68k 0x4p-12L : -0x2.8be6a77a5a95dae8p+8L : inexact-ok
+= y1 downward ldbl-128 0x4p-12L : -0x2.8be6a77a5a95dae9d93daef6a6b8p+8L : inexact-ok
+= y1 tonearest ldbl-128 0x4p-12L : -0x2.8be6a77a5a95dae9d93daef6a6b6p+8L : inexact-ok
+= y1 towardzero ldbl-128 0x4p-12L : -0x2.8be6a77a5a95dae9d93daef6a6b6p+8L : inexact-ok
+= y1 upward ldbl-128 0x4p-12L : -0x2.8be6a77a5a95dae9d93daef6a6b6p+8L : inexact-ok
+= y1 downward ldbl-128ibm 0x4p-12L : -0x2.8be6a77a5a95dae9d93daef6a7p+8L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x4p-12L : -0x2.8be6a77a5a95dae9d93daef6a7p+8L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x4p-12L : -0x2.8be6a77a5a95dae9d93daef6a6p+8L : inexact-ok
+= y1 upward ldbl-128ibm 0x4p-12L : -0x2.8be6a77a5a95dae9d93daef6a6p+8L : inexact-ok
+y1 0x1p-20
+= y1 downward flt-32 0x1p-20f : -0xa.2f984p+16f : inexact-ok
+= y1 tonearest flt-32 0x1p-20f : -0xa.2f983p+16f : inexact-ok
+= y1 towardzero flt-32 0x1p-20f : -0xa.2f983p+16f : inexact-ok
+= y1 upward flt-32 0x1p-20f : -0xa.2f983p+16f : inexact-ok
+= y1 downward dbl-64 0x1p-20 : -0xa.2f9836e52dffp+16 : inexact-ok
+= y1 tonearest dbl-64 0x1p-20 : -0xa.2f9836e52dffp+16 : inexact-ok
+= y1 towardzero dbl-64 0x1p-20 : -0xa.2f9836e52dfe8p+16 : inexact-ok
+= y1 upward dbl-64 0x1p-20 : -0xa.2f9836e52dfe8p+16 : inexact-ok
+= y1 downward ldbl-96-intel 0x1p-20L : -0xa.2f9836e52dfed75p+16L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x1p-20L : -0xa.2f9836e52dfed75p+16L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x1p-20L : -0xa.2f9836e52dfed74p+16L : inexact-ok
+= y1 upward ldbl-96-intel 0x1p-20L : -0xa.2f9836e52dfed74p+16L : inexact-ok
+= y1 downward ldbl-96-m68k 0x1p-20L : -0xa.2f9836e52dfed75p+16L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x1p-20L : -0xa.2f9836e52dfed75p+16L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x1p-20L : -0xa.2f9836e52dfed74p+16L : inexact-ok
+= y1 upward ldbl-96-m68k 0x1p-20L : -0xa.2f9836e52dfed74p+16L : inexact-ok
+= y1 downward ldbl-128 0x1p-20L : -0xa.2f9836e52dfed749067be1d0795p+16L : inexact-ok
+= y1 tonearest ldbl-128 0x1p-20L : -0xa.2f9836e52dfed749067be1d07948p+16L : inexact-ok
+= y1 towardzero ldbl-128 0x1p-20L : -0xa.2f9836e52dfed749067be1d07948p+16L : inexact-ok
+= y1 upward ldbl-128 0x1p-20L : -0xa.2f9836e52dfed749067be1d07948p+16L : inexact-ok
+= y1 downward ldbl-128ibm 0x1p-20L : -0xa.2f9836e52dfed749067be1d07cp+16L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x1p-20L : -0xa.2f9836e52dfed749067be1d078p+16L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x1p-20L : -0xa.2f9836e52dfed749067be1d078p+16L : inexact-ok
+= y1 upward ldbl-128ibm 0x1p-20L : -0xa.2f9836e52dfed749067be1d078p+16L : inexact-ok
+y1 0x1p-30
+= y1 downward flt-32 0x4p-32f : -0x2.8be61p+28f : inexact-ok
+= y1 tonearest flt-32 0x4p-32f : -0x2.8be60cp+28f : inexact-ok
+= y1 towardzero flt-32 0x4p-32f : -0x2.8be60cp+28f : inexact-ok
+= y1 upward flt-32 0x4p-32f : -0x2.8be60cp+28f : inexact-ok
+= y1 downward dbl-64 0x4p-32 : -0x2.8be60db939106p+28 : inexact-ok
+= y1 tonearest dbl-64 0x4p-32 : -0x2.8be60db939106p+28 : inexact-ok
+= y1 towardzero dbl-64 0x4p-32 : -0x2.8be60db939104p+28 : inexact-ok
+= y1 upward dbl-64 0x4p-32 : -0x2.8be60db939104p+28 : inexact-ok
+= y1 downward ldbl-96-intel 0x4p-32L : -0x2.8be60db93910566p+28L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x4p-32L : -0x2.8be60db93910565cp+28L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x4p-32L : -0x2.8be60db93910565cp+28L : inexact-ok
+= y1 upward ldbl-96-intel 0x4p-32L : -0x2.8be60db93910565cp+28L : inexact-ok
+= y1 downward ldbl-96-m68k 0x4p-32L : -0x2.8be60db93910566p+28L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x4p-32L : -0x2.8be60db93910565cp+28L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x4p-32L : -0x2.8be60db93910565cp+28L : inexact-ok
+= y1 upward ldbl-96-m68k 0x4p-32L : -0x2.8be60db93910565cp+28L : inexact-ok
+= y1 downward ldbl-128 0x4p-32L : -0x2.8be60db93910565c1b9fd1d1063ap+28L : inexact-ok
+= y1 tonearest ldbl-128 0x4p-32L : -0x2.8be60db93910565c1b9fd1d10638p+28L : inexact-ok
+= y1 towardzero ldbl-128 0x4p-32L : -0x2.8be60db93910565c1b9fd1d10638p+28L : inexact-ok
+= y1 upward ldbl-128 0x4p-32L : -0x2.8be60db93910565c1b9fd1d10638p+28L : inexact-ok
+= y1 downward ldbl-128ibm 0x4p-32L : -0x2.8be60db93910565c1b9fd1d107p+28L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x4p-32L : -0x2.8be60db93910565c1b9fd1d106p+28L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x4p-32L : -0x2.8be60db93910565c1b9fd1d106p+28L : inexact-ok
+= y1 upward ldbl-128ibm 0x4p-32L : -0x2.8be60db93910565c1b9fd1d106p+28L : inexact-ok
+y1 0x1p-40
+= y1 downward flt-32 0x1p-40f : -0xa.2f984p+36f : inexact-ok
+= y1 tonearest flt-32 0x1p-40f : -0xa.2f983p+36f : inexact-ok
+= y1 towardzero flt-32 0x1p-40f : -0xa.2f983p+36f : inexact-ok
+= y1 upward flt-32 0x1p-40f : -0xa.2f983p+36f : inexact-ok
+= y1 downward dbl-64 0x1p-40 : -0xa.2f9836e4e4418p+36 : inexact-ok
+= y1 tonearest dbl-64 0x1p-40 : -0xa.2f9836e4e4418p+36 : inexact-ok
+= y1 towardzero dbl-64 0x1p-40 : -0xa.2f9836e4e441p+36 : inexact-ok
+= y1 upward dbl-64 0x1p-40 : -0xa.2f9836e4e441p+36 : inexact-ok
+= y1 downward ldbl-96-intel 0x1p-40L : -0xa.2f9836e4e44152ap+36L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x1p-40L : -0xa.2f9836e4e44152ap+36L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x1p-40L : -0xa.2f9836e4e441529p+36L : inexact-ok
+= y1 upward ldbl-96-intel 0x1p-40L : -0xa.2f9836e4e441529p+36L : inexact-ok
+= y1 downward ldbl-96-m68k 0x1p-40L : -0xa.2f9836e4e44152ap+36L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x1p-40L : -0xa.2f9836e4e44152ap+36L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x1p-40L : -0xa.2f9836e4e441529p+36L : inexact-ok
+= y1 upward ldbl-96-m68k 0x1p-40L : -0xa.2f9836e4e441529p+36L : inexact-ok
+= y1 downward ldbl-128 0x1p-40L : -0xa.2f9836e4e441529fc305d51be35p+36L : inexact-ok
+= y1 tonearest ldbl-128 0x1p-40L : -0xa.2f9836e4e441529fc305d51be35p+36L : inexact-ok
+= y1 towardzero ldbl-128 0x1p-40L : -0xa.2f9836e4e441529fc305d51be348p+36L : inexact-ok
+= y1 upward ldbl-128 0x1p-40L : -0xa.2f9836e4e441529fc305d51be348p+36L : inexact-ok
+= y1 downward ldbl-128ibm 0x1p-40L : -0xa.2f9836e4e441529fc305d51be4p+36L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x1p-40L : -0xa.2f9836e4e441529fc305d51be4p+36L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x1p-40L : -0xa.2f9836e4e441529fc305d51bep+36L : inexact-ok
+= y1 upward ldbl-128ibm 0x1p-40L : -0xa.2f9836e4e441529fc305d51bep+36L : inexact-ok
+y1 0x1p-50
+= y1 downward flt-32 0x4p-52f : -0x2.8be61p+48f : inexact-ok
+= y1 tonearest flt-32 0x4p-52f : -0x2.8be60cp+48f : inexact-ok
+= y1 towardzero flt-32 0x4p-52f : -0x2.8be60cp+48f : inexact-ok
+= y1 upward flt-32 0x4p-52f : -0x2.8be60cp+48f : inexact-ok
+= y1 downward dbl-64 0x4p-52 : -0x2.8be60db939106p+48 : inexact-ok
+= y1 tonearest dbl-64 0x4p-52 : -0x2.8be60db939106p+48 : inexact-ok
+= y1 towardzero dbl-64 0x4p-52 : -0x2.8be60db939104p+48 : inexact-ok
+= y1 upward dbl-64 0x4p-52 : -0x2.8be60db939104p+48 : inexact-ok
+= y1 downward ldbl-96-intel 0x4p-52L : -0x2.8be60db9391054a8p+48L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x4p-52L : -0x2.8be60db9391054a8p+48L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x4p-52L : -0x2.8be60db9391054a4p+48L : inexact-ok
+= y1 upward ldbl-96-intel 0x4p-52L : -0x2.8be60db9391054a4p+48L : inexact-ok
+= y1 downward ldbl-96-m68k 0x4p-52L : -0x2.8be60db9391054a8p+48L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x4p-52L : -0x2.8be60db9391054a8p+48L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x4p-52L : -0x2.8be60db9391054a4p+48L : inexact-ok
+= y1 upward ldbl-96-m68k 0x4p-52L : -0x2.8be60db9391054a4p+48L : inexact-ok
+= y1 downward ldbl-128 0x4p-52L : -0x2.8be60db9391054a7f09d5f4aa368p+48L : inexact-ok
+= y1 tonearest ldbl-128 0x4p-52L : -0x2.8be60db9391054a7f09d5f4aa368p+48L : inexact-ok
+= y1 towardzero ldbl-128 0x4p-52L : -0x2.8be60db9391054a7f09d5f4aa366p+48L : inexact-ok
+= y1 upward ldbl-128 0x4p-52L : -0x2.8be60db9391054a7f09d5f4aa366p+48L : inexact-ok
+= y1 downward ldbl-128ibm 0x4p-52L : -0x2.8be60db9391054a7f09d5f4aa4p+48L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x4p-52L : -0x2.8be60db9391054a7f09d5f4aa3p+48L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x4p-52L : -0x2.8be60db9391054a7f09d5f4aa3p+48L : inexact-ok
+= y1 upward ldbl-128ibm 0x4p-52L : -0x2.8be60db9391054a7f09d5f4aa3p+48L : inexact-ok
+y1 0x1p-60
+= y1 downward flt-32 0x1p-60f : -0xa.2f984p+56f : inexact-ok
+= y1 tonearest flt-32 0x1p-60f : -0xa.2f983p+56f : inexact-ok
+= y1 towardzero flt-32 0x1p-60f : -0xa.2f983p+56f : inexact-ok
+= y1 upward flt-32 0x1p-60f : -0xa.2f983p+56f : inexact-ok
+= y1 downward dbl-64 0x1p-60 : -0xa.2f9836e4e4418p+56 : inexact-ok
+= y1 tonearest dbl-64 0x1p-60 : -0xa.2f9836e4e4418p+56 : inexact-ok
+= y1 towardzero dbl-64 0x1p-60 : -0xa.2f9836e4e441p+56 : inexact-ok
+= y1 upward dbl-64 0x1p-60 : -0xa.2f9836e4e441p+56 : inexact-ok
+= y1 downward ldbl-96-intel 0x1p-60L : -0xa.2f9836e4e44152ap+56L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x1p-60L : -0xa.2f9836e4e44152ap+56L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x1p-60L : -0xa.2f9836e4e441529p+56L : inexact-ok
+= y1 upward ldbl-96-intel 0x1p-60L : -0xa.2f9836e4e441529p+56L : inexact-ok
+= y1 downward ldbl-96-m68k 0x1p-60L : -0xa.2f9836e4e44152ap+56L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x1p-60L : -0xa.2f9836e4e44152ap+56L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x1p-60L : -0xa.2f9836e4e441529p+56L : inexact-ok
+= y1 upward ldbl-96-m68k 0x1p-60L : -0xa.2f9836e4e441529p+56L : inexact-ok
+= y1 downward ldbl-128 0x1p-60L : -0xa.2f9836e4e441529fc2757d1f535p+56L : inexact-ok
+= y1 tonearest ldbl-128 0x1p-60L : -0xa.2f9836e4e441529fc2757d1f535p+56L : inexact-ok
+= y1 towardzero ldbl-128 0x1p-60L : -0xa.2f9836e4e441529fc2757d1f5348p+56L : inexact-ok
+= y1 upward ldbl-128 0x1p-60L : -0xa.2f9836e4e441529fc2757d1f5348p+56L : inexact-ok
+= y1 downward ldbl-128ibm 0x1p-60L : -0xa.2f9836e4e441529fc2757d1f54p+56L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x1p-60L : -0xa.2f9836e4e441529fc2757d1f54p+56L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x1p-60L : -0xa.2f9836e4e441529fc2757d1f5p+56L : inexact-ok
+= y1 upward ldbl-128ibm 0x1p-60L : -0xa.2f9836e4e441529fc2757d1f5p+56L : inexact-ok
+y1 0x1p-70
+= y1 downward flt-32 0x4p-72f : -0x2.8be61p+68f : inexact-ok
+= y1 tonearest flt-32 0x4p-72f : -0x2.8be60cp+68f : inexact-ok
+= y1 towardzero flt-32 0x4p-72f : -0x2.8be60cp+68f : inexact-ok
+= y1 upward flt-32 0x4p-72f : -0x2.8be60cp+68f : inexact-ok
+= y1 downward dbl-64 0x4p-72 : -0x2.8be60db939106p+68 : inexact-ok
+= y1 tonearest dbl-64 0x4p-72 : -0x2.8be60db939106p+68 : inexact-ok
+= y1 towardzero dbl-64 0x4p-72 : -0x2.8be60db939104p+68 : inexact-ok
+= y1 upward dbl-64 0x4p-72 : -0x2.8be60db939104p+68 : inexact-ok
+= y1 downward ldbl-96-intel 0x4p-72L : -0x2.8be60db9391054a8p+68L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x4p-72L : -0x2.8be60db9391054a8p+68L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x4p-72L : -0x2.8be60db9391054a4p+68L : inexact-ok
+= y1 upward ldbl-96-intel 0x4p-72L : -0x2.8be60db9391054a4p+68L : inexact-ok
+= y1 downward ldbl-96-m68k 0x4p-72L : -0x2.8be60db9391054a8p+68L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x4p-72L : -0x2.8be60db9391054a8p+68L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x4p-72L : -0x2.8be60db9391054a4p+68L : inexact-ok
+= y1 upward ldbl-96-m68k 0x4p-72L : -0x2.8be60db9391054a4p+68L : inexact-ok
+= y1 downward ldbl-128 0x4p-72L : -0x2.8be60db9391054a7f09d5f47d4d4p+68L : inexact-ok
+= y1 tonearest ldbl-128 0x4p-72L : -0x2.8be60db9391054a7f09d5f47d4d2p+68L : inexact-ok
+= y1 towardzero ldbl-128 0x4p-72L : -0x2.8be60db9391054a7f09d5f47d4d2p+68L : inexact-ok
+= y1 upward ldbl-128 0x4p-72L : -0x2.8be60db9391054a7f09d5f47d4d2p+68L : inexact-ok
+= y1 downward ldbl-128ibm 0x4p-72L : -0x2.8be60db9391054a7f09d5f47d5p+68L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x4p-72L : -0x2.8be60db9391054a7f09d5f47d5p+68L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x4p-72L : -0x2.8be60db9391054a7f09d5f47d4p+68L : inexact-ok
+= y1 upward ldbl-128ibm 0x4p-72L : -0x2.8be60db9391054a7f09d5f47d4p+68L : inexact-ok
+y1 0x1p-80
+= y1 downward flt-32 0x1p-80f : -0xa.2f984p+76f : inexact-ok
+= y1 tonearest flt-32 0x1p-80f : -0xa.2f983p+76f : inexact-ok
+= y1 towardzero flt-32 0x1p-80f : -0xa.2f983p+76f : inexact-ok
+= y1 upward flt-32 0x1p-80f : -0xa.2f983p+76f : inexact-ok
+= y1 downward dbl-64 0x1p-80 : -0xa.2f9836e4e4418p+76 : inexact-ok
+= y1 tonearest dbl-64 0x1p-80 : -0xa.2f9836e4e4418p+76 : inexact-ok
+= y1 towardzero dbl-64 0x1p-80 : -0xa.2f9836e4e441p+76 : inexact-ok
+= y1 upward dbl-64 0x1p-80 : -0xa.2f9836e4e441p+76 : inexact-ok
+= y1 downward ldbl-96-intel 0x1p-80L : -0xa.2f9836e4e44152ap+76L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x1p-80L : -0xa.2f9836e4e44152ap+76L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x1p-80L : -0xa.2f9836e4e441529p+76L : inexact-ok
+= y1 upward ldbl-96-intel 0x1p-80L : -0xa.2f9836e4e441529p+76L : inexact-ok
+= y1 downward ldbl-96-m68k 0x1p-80L : -0xa.2f9836e4e44152ap+76L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x1p-80L : -0xa.2f9836e4e44152ap+76L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x1p-80L : -0xa.2f9836e4e441529p+76L : inexact-ok
+= y1 upward ldbl-96-m68k 0x1p-80L : -0xa.2f9836e4e441529p+76L : inexact-ok
+= y1 downward ldbl-128 0x1p-80L : -0xa.2f9836e4e441529fc2757d1f535p+76L : inexact-ok
+= y1 tonearest ldbl-128 0x1p-80L : -0xa.2f9836e4e441529fc2757d1f5348p+76L : inexact-ok
+= y1 towardzero ldbl-128 0x1p-80L : -0xa.2f9836e4e441529fc2757d1f5348p+76L : inexact-ok
+= y1 upward ldbl-128 0x1p-80L : -0xa.2f9836e4e441529fc2757d1f5348p+76L : inexact-ok
+= y1 downward ldbl-128ibm 0x1p-80L : -0xa.2f9836e4e441529fc2757d1f54p+76L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x1p-80L : -0xa.2f9836e4e441529fc2757d1f54p+76L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x1p-80L : -0xa.2f9836e4e441529fc2757d1f5p+76L : inexact-ok
+= y1 upward ldbl-128ibm 0x1p-80L : -0xa.2f9836e4e441529fc2757d1f5p+76L : inexact-ok
+y1 0x1p-90
+= y1 downward flt-32 0x4p-92f : -0x2.8be61p+88f : inexact-ok
+= y1 tonearest flt-32 0x4p-92f : -0x2.8be60cp+88f : inexact-ok
+= y1 towardzero flt-32 0x4p-92f : -0x2.8be60cp+88f : inexact-ok
+= y1 upward flt-32 0x4p-92f : -0x2.8be60cp+88f : inexact-ok
+= y1 downward dbl-64 0x4p-92 : -0x2.8be60db939106p+88 : inexact-ok
+= y1 tonearest dbl-64 0x4p-92 : -0x2.8be60db939106p+88 : inexact-ok
+= y1 towardzero dbl-64 0x4p-92 : -0x2.8be60db939104p+88 : inexact-ok
+= y1 upward dbl-64 0x4p-92 : -0x2.8be60db939104p+88 : inexact-ok
+= y1 downward ldbl-96-intel 0x4p-92L : -0x2.8be60db9391054a8p+88L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x4p-92L : -0x2.8be60db9391054a8p+88L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x4p-92L : -0x2.8be60db9391054a4p+88L : inexact-ok
+= y1 upward ldbl-96-intel 0x4p-92L : -0x2.8be60db9391054a4p+88L : inexact-ok
+= y1 downward ldbl-96-m68k 0x4p-92L : -0x2.8be60db9391054a8p+88L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x4p-92L : -0x2.8be60db9391054a8p+88L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x4p-92L : -0x2.8be60db9391054a4p+88L : inexact-ok
+= y1 upward ldbl-96-m68k 0x4p-92L : -0x2.8be60db9391054a4p+88L : inexact-ok
+= y1 downward ldbl-128 0x4p-92L : -0x2.8be60db9391054a7f09d5f47d4d4p+88L : inexact-ok
+= y1 tonearest ldbl-128 0x4p-92L : -0x2.8be60db9391054a7f09d5f47d4d2p+88L : inexact-ok
+= y1 towardzero ldbl-128 0x4p-92L : -0x2.8be60db9391054a7f09d5f47d4d2p+88L : inexact-ok
+= y1 upward ldbl-128 0x4p-92L : -0x2.8be60db9391054a7f09d5f47d4d2p+88L : inexact-ok
+= y1 downward ldbl-128ibm 0x4p-92L : -0x2.8be60db9391054a7f09d5f47d5p+88L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x4p-92L : -0x2.8be60db9391054a7f09d5f47d5p+88L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x4p-92L : -0x2.8be60db9391054a7f09d5f47d4p+88L : inexact-ok
+= y1 upward ldbl-128ibm 0x4p-92L : -0x2.8be60db9391054a7f09d5f47d4p+88L : inexact-ok
+y1 0x1p-100
+= y1 downward flt-32 0x1p-100f : -0xa.2f984p+96f : inexact-ok
+= y1 tonearest flt-32 0x1p-100f : -0xa.2f983p+96f : inexact-ok
+= y1 towardzero flt-32 0x1p-100f : -0xa.2f983p+96f : inexact-ok
+= y1 upward flt-32 0x1p-100f : -0xa.2f983p+96f : inexact-ok
+= y1 downward dbl-64 0x1p-100 : -0xa.2f9836e4e4418p+96 : inexact-ok
+= y1 tonearest dbl-64 0x1p-100 : -0xa.2f9836e4e4418p+96 : inexact-ok
+= y1 towardzero dbl-64 0x1p-100 : -0xa.2f9836e4e441p+96 : inexact-ok
+= y1 upward dbl-64 0x1p-100 : -0xa.2f9836e4e441p+96 : inexact-ok
+= y1 downward ldbl-96-intel 0x1p-100L : -0xa.2f9836e4e44152ap+96L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x1p-100L : -0xa.2f9836e4e44152ap+96L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x1p-100L : -0xa.2f9836e4e441529p+96L : inexact-ok
+= y1 upward ldbl-96-intel 0x1p-100L : -0xa.2f9836e4e441529p+96L : inexact-ok
+= y1 downward ldbl-96-m68k 0x1p-100L : -0xa.2f9836e4e44152ap+96L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x1p-100L : -0xa.2f9836e4e44152ap+96L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x1p-100L : -0xa.2f9836e4e441529p+96L : inexact-ok
+= y1 upward ldbl-96-m68k 0x1p-100L : -0xa.2f9836e4e441529p+96L : inexact-ok
+= y1 downward ldbl-128 0x1p-100L : -0xa.2f9836e4e441529fc2757d1f535p+96L : inexact-ok
+= y1 tonearest ldbl-128 0x1p-100L : -0xa.2f9836e4e441529fc2757d1f5348p+96L : inexact-ok
+= y1 towardzero ldbl-128 0x1p-100L : -0xa.2f9836e4e441529fc2757d1f5348p+96L : inexact-ok
+= y1 upward ldbl-128 0x1p-100L : -0xa.2f9836e4e441529fc2757d1f5348p+96L : inexact-ok
+= y1 downward ldbl-128ibm 0x1p-100L : -0xa.2f9836e4e441529fc2757d1f54p+96L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x1p-100L : -0xa.2f9836e4e441529fc2757d1f54p+96L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x1p-100L : -0xa.2f9836e4e441529fc2757d1f5p+96L : inexact-ok
+= y1 upward ldbl-128ibm 0x1p-100L : -0xa.2f9836e4e441529fc2757d1f5p+96L : inexact-ok
+y1 0x1p-110
+= y1 downward flt-32 0x4p-112f : -0x2.8be61p+108f : inexact-ok
+= y1 tonearest flt-32 0x4p-112f : -0x2.8be60cp+108f : inexact-ok
+= y1 towardzero flt-32 0x4p-112f : -0x2.8be60cp+108f : inexact-ok
+= y1 upward flt-32 0x4p-112f : -0x2.8be60cp+108f : inexact-ok
+= y1 downward dbl-64 0x4p-112 : -0x2.8be60db939106p+108 : inexact-ok
+= y1 tonearest dbl-64 0x4p-112 : -0x2.8be60db939106p+108 : inexact-ok
+= y1 towardzero dbl-64 0x4p-112 : -0x2.8be60db939104p+108 : inexact-ok
+= y1 upward dbl-64 0x4p-112 : -0x2.8be60db939104p+108 : inexact-ok
+= y1 downward ldbl-96-intel 0x4p-112L : -0x2.8be60db9391054a8p+108L : inexact-ok
+= y1 tonearest ldbl-96-intel 0x4p-112L : -0x2.8be60db9391054a8p+108L : inexact-ok
+= y1 towardzero ldbl-96-intel 0x4p-112L : -0x2.8be60db9391054a4p+108L : inexact-ok
+= y1 upward ldbl-96-intel 0x4p-112L : -0x2.8be60db9391054a4p+108L : inexact-ok
+= y1 downward ldbl-96-m68k 0x4p-112L : -0x2.8be60db9391054a8p+108L : inexact-ok
+= y1 tonearest ldbl-96-m68k 0x4p-112L : -0x2.8be60db9391054a8p+108L : inexact-ok
+= y1 towardzero ldbl-96-m68k 0x4p-112L : -0x2.8be60db9391054a4p+108L : inexact-ok
+= y1 upward ldbl-96-m68k 0x4p-112L : -0x2.8be60db9391054a4p+108L : inexact-ok
+= y1 downward ldbl-128 0x4p-112L : -0x2.8be60db9391054a7f09d5f47d4d4p+108L : inexact-ok
+= y1 tonearest ldbl-128 0x4p-112L : -0x2.8be60db9391054a7f09d5f47d4d2p+108L : inexact-ok
+= y1 towardzero ldbl-128 0x4p-112L : -0x2.8be60db9391054a7f09d5f47d4d2p+108L : inexact-ok
+= y1 upward ldbl-128 0x4p-112L : -0x2.8be60db9391054a7f09d5f47d4d2p+108L : inexact-ok
+= y1 downward ldbl-128ibm 0x4p-112L : -0x2.8be60db9391054a7f09d5f47d5p+108L : inexact-ok
+= y1 tonearest ldbl-128ibm 0x4p-112L : -0x2.8be60db9391054a7f09d5f47d5p+108L : inexact-ok
+= y1 towardzero ldbl-128ibm 0x4p-112L : -0x2.8be60db9391054a7f09d5f47d4p+108L : inexact-ok
+= y1 upward ldbl-128ibm 0x4p-112L : -0x2.8be60db9391054a7f09d5f47d4p+108L : inexact-ok
+yn 0 0.125
+= yn downward flt-32 0 0x2p-4f : -0x1.63c21ep+0f : inexact-ok
+= yn tonearest flt-32 0 0x2p-4f : -0x1.63c21cp+0f : inexact-ok
+= yn towardzero flt-32 0 0x2p-4f : -0x1.63c21cp+0f : inexact-ok
+= yn upward flt-32 0 0x2p-4f : -0x1.63c21cp+0f : inexact-ok
+= yn downward dbl-64 0 0x2p-4 : -0x1.63c21c04e0ac7p+0 : inexact-ok
+= yn tonearest dbl-64 0 0x2p-4 : -0x1.63c21c04e0ac6p+0 : inexact-ok
+= yn towardzero dbl-64 0 0x2p-4 : -0x1.63c21c04e0ac6p+0 : inexact-ok
+= yn upward dbl-64 0 0x2p-4 : -0x1.63c21c04e0ac6p+0 : inexact-ok
+= yn downward ldbl-96-intel 0 0x2p-4L : -0x1.63c21c04e0ac6244p+0L : inexact-ok
+= yn tonearest ldbl-96-intel 0 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= yn towardzero ldbl-96-intel 0 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= yn upward ldbl-96-intel 0 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= yn downward ldbl-96-m68k 0 0x2p-4L : -0x1.63c21c04e0ac6244p+0L : inexact-ok
+= yn tonearest ldbl-96-m68k 0 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= yn towardzero ldbl-96-m68k 0 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= yn upward ldbl-96-m68k 0 0x2p-4L : -0x1.63c21c04e0ac6242p+0L : inexact-ok
+= yn downward ldbl-128 0 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07058p+0L : inexact-ok
+= yn tonearest ldbl-128 0 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07058p+0L : inexact-ok
+= yn towardzero ldbl-128 0 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07057p+0L : inexact-ok
+= yn upward ldbl-128 0 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07057p+0L : inexact-ok
+= yn downward ldbl-128ibm 0 0x2p-4L : -0x1.63c21c04e0ac6242f501dee0708p+0L : inexact-ok
+= yn tonearest ldbl-128ibm 0 0x2p-4L : -0x1.63c21c04e0ac6242f501dee0708p+0L : inexact-ok
+= yn towardzero ldbl-128ibm 0 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07p+0L : inexact-ok
+= yn upward ldbl-128ibm 0 0x2p-4L : -0x1.63c21c04e0ac6242f501dee07p+0L : inexact-ok
+yn 0 0.75
+= yn downward flt-32 0 0xcp-4f : -0x2.31dc14p-4f : inexact-ok
+= yn tonearest flt-32 0 0xcp-4f : -0x2.31dc14p-4f : inexact-ok
+= yn towardzero flt-32 0 0xcp-4f : -0x2.31dc1p-4f : inexact-ok
+= yn upward flt-32 0 0xcp-4f : -0x2.31dc1p-4f : inexact-ok
+= yn downward dbl-64 0 0xcp-4 : -0x2.31dc12e69e47ap-4 : inexact-ok
+= yn tonearest dbl-64 0 0xcp-4 : -0x2.31dc12e69e478p-4 : inexact-ok
+= yn towardzero dbl-64 0 0xcp-4 : -0x2.31dc12e69e478p-4 : inexact-ok
+= yn upward dbl-64 0 0xcp-4 : -0x2.31dc12e69e478p-4 : inexact-ok
+= yn downward ldbl-96-intel 0 0xcp-4L : -0x2.31dc12e69e478d0cp-4L : inexact-ok
+= yn tonearest ldbl-96-intel 0 0xcp-4L : -0x2.31dc12e69e478d0cp-4L : inexact-ok
+= yn towardzero ldbl-96-intel 0 0xcp-4L : -0x2.31dc12e69e478d08p-4L : inexact-ok
+= yn upward ldbl-96-intel 0 0xcp-4L : -0x2.31dc12e69e478d08p-4L : inexact-ok
+= yn downward ldbl-96-m68k 0 0xcp-4L : -0x2.31dc12e69e478d0cp-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 0 0xcp-4L : -0x2.31dc12e69e478d0cp-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 0 0xcp-4L : -0x2.31dc12e69e478d08p-4L : inexact-ok
+= yn upward ldbl-96-m68k 0 0xcp-4L : -0x2.31dc12e69e478d08p-4L : inexact-ok
+= yn downward ldbl-128 0 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2eep-4L : inexact-ok
+= yn tonearest ldbl-128 0 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2ecp-4L : inexact-ok
+= yn towardzero ldbl-128 0 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2ecp-4L : inexact-ok
+= yn upward ldbl-128 0 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2ecp-4L : inexact-ok
+= yn downward ldbl-128ibm 0 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e3p-4L : inexact-ok
+= yn tonearest ldbl-128ibm 0 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e3p-4L : inexact-ok
+= yn towardzero ldbl-128ibm 0 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2p-4L : inexact-ok
+= yn upward ldbl-128ibm 0 0xcp-4L : -0x2.31dc12e69e478d0b847d6a37e2p-4L : inexact-ok
+yn 0 1.0
+= yn downward flt-32 0 0x1p+0f : 0x1.698022p-4f : inexact-ok
+= yn tonearest flt-32 0 0x1p+0f : 0x1.698022p-4f : inexact-ok
+= yn towardzero flt-32 0 0x1p+0f : 0x1.698022p-4f : inexact-ok
+= yn upward flt-32 0 0x1p+0f : 0x1.698024p-4f : inexact-ok
+= yn downward dbl-64 0 0x1p+0 : 0x1.6980226f358dfp-4 : inexact-ok
+= yn tonearest dbl-64 0 0x1p+0 : 0x1.6980226f358dfp-4 : inexact-ok
+= yn towardzero dbl-64 0 0x1p+0 : 0x1.6980226f358dfp-4 : inexact-ok
+= yn upward dbl-64 0 0x1p+0 : 0x1.6980226f358ep-4 : inexact-ok
+= yn downward ldbl-96-intel 0 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= yn tonearest ldbl-96-intel 0 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= yn towardzero ldbl-96-intel 0 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= yn upward ldbl-96-intel 0 0x1p+0L : 0x1.6980226f358df2ap-4L : inexact-ok
+= yn downward ldbl-96-m68k 0 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 0 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 0 0x1p+0L : 0x1.6980226f358df29ep-4L : inexact-ok
+= yn upward ldbl-96-m68k 0 0x1p+0L : 0x1.6980226f358df2ap-4L : inexact-ok
+= yn downward ldbl-128 0 0x1p+0L : 0x1.6980226f358df29efcc5d7926555p-4L : inexact-ok
+= yn tonearest ldbl-128 0 0x1p+0L : 0x1.6980226f358df29efcc5d7926555p-4L : inexact-ok
+= yn towardzero ldbl-128 0 0x1p+0L : 0x1.6980226f358df29efcc5d7926555p-4L : inexact-ok
+= yn upward ldbl-128 0 0x1p+0L : 0x1.6980226f358df29efcc5d7926556p-4L : inexact-ok
+= yn downward ldbl-128ibm 0 0x1p+0L : 0x1.6980226f358df29efcc5d79265p-4L : inexact-ok
+= yn tonearest ldbl-128ibm 0 0x1p+0L : 0x1.6980226f358df29efcc5d792658p-4L : inexact-ok
+= yn towardzero ldbl-128ibm 0 0x1p+0L : 0x1.6980226f358df29efcc5d79265p-4L : inexact-ok
+= yn upward ldbl-128ibm 0 0x1p+0L : 0x1.6980226f358df29efcc5d792658p-4L : inexact-ok
+yn 0 1.5
+= yn downward flt-32 0 0x1.8p+0f : 0x6.1e82cp-4f : inexact-ok
+= yn tonearest flt-32 0 0x1.8p+0f : 0x6.1e82cp-4f : inexact-ok
+= yn towardzero flt-32 0 0x1.8p+0f : 0x6.1e82cp-4f : inexact-ok
+= yn upward flt-32 0 0x1.8p+0f : 0x6.1e82c8p-4f : inexact-ok
+= yn downward dbl-64 0 0x1.8p+0 : 0x6.1e82c341a0d9cp-4 : inexact-ok
+= yn tonearest dbl-64 0 0x1.8p+0 : 0x6.1e82c341a0dap-4 : inexact-ok
+= yn towardzero dbl-64 0 0x1.8p+0 : 0x6.1e82c341a0d9cp-4 : inexact-ok
+= yn upward dbl-64 0 0x1.8p+0 : 0x6.1e82c341a0dap-4 : inexact-ok
+= yn downward ldbl-96-intel 0 0x1.8p+0L : 0x6.1e82c341a0d9f31p-4L : inexact-ok
+= yn tonearest ldbl-96-intel 0 0x1.8p+0L : 0x6.1e82c341a0d9f318p-4L : inexact-ok
+= yn towardzero ldbl-96-intel 0 0x1.8p+0L : 0x6.1e82c341a0d9f31p-4L : inexact-ok
+= yn upward ldbl-96-intel 0 0x1.8p+0L : 0x6.1e82c341a0d9f318p-4L : inexact-ok
+= yn downward ldbl-96-m68k 0 0x1.8p+0L : 0x6.1e82c341a0d9f31p-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 0 0x1.8p+0L : 0x6.1e82c341a0d9f318p-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 0 0x1.8p+0L : 0x6.1e82c341a0d9f31p-4L : inexact-ok
+= yn upward ldbl-96-m68k 0 0x1.8p+0L : 0x6.1e82c341a0d9f318p-4L : inexact-ok
+= yn downward ldbl-128 0 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005fecp-4L : inexact-ok
+= yn tonearest ldbl-128 0 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005ffp-4L : inexact-ok
+= yn towardzero ldbl-128 0 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005fecp-4L : inexact-ok
+= yn upward ldbl-128 0 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005ffp-4L : inexact-ok
+= yn downward ldbl-128ibm 0 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005ep-4L : inexact-ok
+= yn tonearest ldbl-128ibm 0 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2006p-4L : inexact-ok
+= yn towardzero ldbl-128ibm 0 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2005ep-4L : inexact-ok
+= yn upward ldbl-128ibm 0 0x1.8p+0L : 0x6.1e82c341a0d9f3154642a2006p-4L : inexact-ok
+yn 0 2.0
+= yn downward flt-32 0 0x2p+0f : 0x8.2a7fap-4f : inexact-ok
+= yn tonearest flt-32 0 0x2p+0f : 0x8.2a7fbp-4f : inexact-ok
+= yn towardzero flt-32 0 0x2p+0f : 0x8.2a7fap-4f : inexact-ok
+= yn upward flt-32 0 0x2p+0f : 0x8.2a7fbp-4f : inexact-ok
+= yn downward dbl-64 0 0x2p+0 : 0x8.2a7fae6b4646p-4 : inexact-ok
+= yn tonearest dbl-64 0 0x2p+0 : 0x8.2a7fae6b46468p-4 : inexact-ok
+= yn towardzero dbl-64 0 0x2p+0 : 0x8.2a7fae6b4646p-4 : inexact-ok
+= yn upward dbl-64 0 0x2p+0 : 0x8.2a7fae6b46468p-4 : inexact-ok
+= yn downward ldbl-96-intel 0 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= yn tonearest ldbl-96-intel 0 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= yn towardzero ldbl-96-intel 0 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= yn upward ldbl-96-intel 0 0x2p+0L : 0x8.2a7fae6b46465e2p-4L : inexact-ok
+= yn downward ldbl-96-m68k 0 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 0 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 0 0x2p+0L : 0x8.2a7fae6b46465e1p-4L : inexact-ok
+= yn upward ldbl-96-m68k 0 0x2p+0L : 0x8.2a7fae6b46465e2p-4L : inexact-ok
+= yn downward ldbl-128 0 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231cep-4L : inexact-ok
+= yn tonearest ldbl-128 0 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231cep-4L : inexact-ok
+= yn towardzero ldbl-128 0 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231cep-4L : inexact-ok
+= yn upward ldbl-128 0 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231ce08p-4L : inexact-ok
+= yn downward ldbl-128ibm 0 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231ccp-4L : inexact-ok
+= yn tonearest ldbl-128ibm 0 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231dp-4L : inexact-ok
+= yn towardzero ldbl-128ibm 0 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231ccp-4L : inexact-ok
+= yn upward ldbl-128ibm 0 0x2p+0L : 0x8.2a7fae6b46465e12cd2dc231dp-4L : inexact-ok
+yn 0 8.0
+= yn downward flt-32 0 0x8p+0f : 0x3.938b44p-4f : inexact-ok
+= yn tonearest flt-32 0 0x8p+0f : 0x3.938b44p-4f : inexact-ok
+= yn towardzero flt-32 0 0x8p+0f : 0x3.938b44p-4f : inexact-ok
+= yn upward flt-32 0 0x8p+0f : 0x3.938b48p-4f : inexact-ok
+= yn downward dbl-64 0 0x8p+0 : 0x3.938b44edf7058p-4 : inexact-ok
+= yn tonearest dbl-64 0 0x8p+0 : 0x3.938b44edf7058p-4 : inexact-ok
+= yn towardzero dbl-64 0 0x8p+0 : 0x3.938b44edf7058p-4 : inexact-ok
+= yn upward dbl-64 0 0x8p+0 : 0x3.938b44edf705ap-4 : inexact-ok
+= yn downward ldbl-96-intel 0 0x8p+0L : 0x3.938b44edf70581c4p-4L : inexact-ok
+= yn tonearest ldbl-96-intel 0 0x8p+0L : 0x3.938b44edf70581c8p-4L : inexact-ok
+= yn towardzero ldbl-96-intel 0 0x8p+0L : 0x3.938b44edf70581c4p-4L : inexact-ok
+= yn upward ldbl-96-intel 0 0x8p+0L : 0x3.938b44edf70581c8p-4L : inexact-ok
+= yn downward ldbl-96-m68k 0 0x8p+0L : 0x3.938b44edf70581c4p-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 0 0x8p+0L : 0x3.938b44edf70581c8p-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 0 0x8p+0L : 0x3.938b44edf70581c4p-4L : inexact-ok
+= yn upward ldbl-96-m68k 0 0x8p+0L : 0x3.938b44edf70581c8p-4L : inexact-ok
+= yn downward ldbl-128 0 0x8p+0L : 0x3.938b44edf70581c69c0283841f7ep-4L : inexact-ok
+= yn tonearest ldbl-128 0 0x8p+0L : 0x3.938b44edf70581c69c0283841f7ep-4L : inexact-ok
+= yn towardzero ldbl-128 0 0x8p+0L : 0x3.938b44edf70581c69c0283841f7ep-4L : inexact-ok
+= yn upward ldbl-128 0 0x8p+0L : 0x3.938b44edf70581c69c0283841f8p-4L : inexact-ok
+= yn downward ldbl-128ibm 0 0x8p+0L : 0x3.938b44edf70581c69c0283841fp-4L : inexact-ok
+= yn tonearest ldbl-128ibm 0 0x8p+0L : 0x3.938b44edf70581c69c0283841fp-4L : inexact-ok
+= yn towardzero ldbl-128ibm 0 0x8p+0L : 0x3.938b44edf70581c69c0283841fp-4L : inexact-ok
+= yn upward ldbl-128ibm 0 0x8p+0L : 0x3.938b44edf70581c69c0283842p-4L : inexact-ok
+yn 0 10.0
+= yn downward flt-32 0 0xap+0f : 0xe.40773p-8f : inexact-ok
+= yn tonearest flt-32 0 0xap+0f : 0xe.40773p-8f : inexact-ok
+= yn towardzero flt-32 0 0xap+0f : 0xe.40773p-8f : inexact-ok
+= yn upward flt-32 0 0xap+0f : 0xe.40774p-8f : inexact-ok
+= yn downward dbl-64 0 0xap+0 : 0xe.407732d02e2cp-8 : inexact-ok
+= yn tonearest dbl-64 0 0xap+0 : 0xe.407732d02e2c8p-8 : inexact-ok
+= yn towardzero dbl-64 0 0xap+0 : 0xe.407732d02e2cp-8 : inexact-ok
+= yn upward dbl-64 0 0xap+0 : 0xe.407732d02e2c8p-8 : inexact-ok
+= yn downward ldbl-96-intel 0 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= yn tonearest ldbl-96-intel 0 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= yn towardzero ldbl-96-intel 0 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= yn upward ldbl-96-intel 0 0xap+0L : 0xe.407732d02e2c46ap-8L : inexact-ok
+= yn downward ldbl-96-m68k 0 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= yn tonearest ldbl-96-m68k 0 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= yn towardzero ldbl-96-m68k 0 0xap+0L : 0xe.407732d02e2c469p-8L : inexact-ok
+= yn upward ldbl-96-m68k 0 0xap+0L : 0xe.407732d02e2c46ap-8L : inexact-ok
+= yn downward ldbl-128 0 0xap+0L : 0xe.407732d02e2c469384e4d3c829cp-8L : inexact-ok
+= yn tonearest ldbl-128 0 0xap+0L : 0xe.407732d02e2c469384e4d3c829cp-8L : inexact-ok
+= yn towardzero ldbl-128 0 0xap+0L : 0xe.407732d02e2c469384e4d3c829cp-8L : inexact-ok
+= yn upward ldbl-128 0 0xap+0L : 0xe.407732d02e2c469384e4d3c829c8p-8L : inexact-ok
+= yn downward ldbl-128ibm 0 0xap+0L : 0xe.407732d02e2c469384e4d3c828p-8L : inexact-ok
+= yn tonearest ldbl-128ibm 0 0xap+0L : 0xe.407732d02e2c469384e4d3c828p-8L : inexact-ok
+= yn towardzero ldbl-128ibm 0 0xap+0L : 0xe.407732d02e2c469384e4d3c828p-8L : inexact-ok
+= yn upward ldbl-128ibm 0 0xap+0L : 0xe.407732d02e2c469384e4d3c82cp-8L : inexact-ok
+yn 1 0.125
+= yn downward flt-32 1 0x2p-4f : -0x5.332f08p+0f : inexact-ok
+= yn tonearest flt-32 1 0x2p-4f : -0x5.332fp+0f : inexact-ok
+= yn towardzero flt-32 1 0x2p-4f : -0x5.332fp+0f : inexact-ok
+= yn upward flt-32 1 0x2p-4f : -0x5.332fp+0f : inexact-ok
+= yn downward dbl-64 1 0x2p-4 : -0x5.332f0358a051p+0 : inexact-ok
+= yn tonearest dbl-64 1 0x2p-4 : -0x5.332f0358a051p+0 : inexact-ok
+= yn towardzero dbl-64 1 0x2p-4 : -0x5.332f0358a050cp+0 : inexact-ok
+= yn upward dbl-64 1 0x2p-4 : -0x5.332f0358a050cp+0 : inexact-ok
+= yn downward ldbl-96-intel 1 0x2p-4L : -0x5.332f0358a050e3ap+0L : inexact-ok
+= yn tonearest ldbl-96-intel 1 0x2p-4L : -0x5.332f0358a050e3ap+0L : inexact-ok
+= yn towardzero ldbl-96-intel 1 0x2p-4L : -0x5.332f0358a050e398p+0L : inexact-ok
+= yn upward ldbl-96-intel 1 0x2p-4L : -0x5.332f0358a050e398p+0L : inexact-ok
+= yn downward ldbl-96-m68k 1 0x2p-4L : -0x5.332f0358a050e3ap+0L : inexact-ok
+= yn tonearest ldbl-96-m68k 1 0x2p-4L : -0x5.332f0358a050e3ap+0L : inexact-ok
+= yn towardzero ldbl-96-m68k 1 0x2p-4L : -0x5.332f0358a050e398p+0L : inexact-ok
+= yn upward ldbl-96-m68k 1 0x2p-4L : -0x5.332f0358a050e398p+0L : inexact-ok
+= yn downward ldbl-128 1 0x2p-4L : -0x5.332f0358a050e39ed8ad27e94708p+0L : inexact-ok
+= yn tonearest ldbl-128 1 0x2p-4L : -0x5.332f0358a050e39ed8ad27e94708p+0L : inexact-ok
+= yn towardzero ldbl-128 1 0x2p-4L : -0x5.332f0358a050e39ed8ad27e94704p+0L : inexact-ok
+= yn upward ldbl-128 1 0x2p-4L : -0x5.332f0358a050e39ed8ad27e94704p+0L : inexact-ok
+= yn downward ldbl-128ibm 1 0x2p-4L : -0x5.332f0358a050e39ed8ad27e948p+0L : inexact-ok
+= yn tonearest ldbl-128ibm 1 0x2p-4L : -0x5.332f0358a050e39ed8ad27e948p+0L : inexact-ok
+= yn towardzero ldbl-128ibm 1 0x2p-4L : -0x5.332f0358a050e39ed8ad27e946p+0L : inexact-ok
+= yn upward ldbl-128ibm 1 0x2p-4L : -0x5.332f0358a050e39ed8ad27e946p+0L : inexact-ok
+yn 1 0.75
+= yn downward flt-32 1 0xcp-4f : -0x1.099fccp+0f : inexact-ok
+= yn tonearest flt-32 1 0xcp-4f : -0x1.099fccp+0f : inexact-ok
+= yn towardzero flt-32 1 0xcp-4f : -0x1.099fcap+0f : inexact-ok
+= yn upward flt-32 1 0xcp-4f : -0x1.099fcap+0f : inexact-ok
+= yn downward dbl-64 1 0xcp-4 : -0x1.099fcbe60fd84p+0 : inexact-ok
+= yn tonearest dbl-64 1 0xcp-4 : -0x1.099fcbe60fd83p+0 : inexact-ok
+= yn towardzero dbl-64 1 0xcp-4 : -0x1.099fcbe60fd83p+0 : inexact-ok
+= yn upward dbl-64 1 0xcp-4 : -0x1.099fcbe60fd83p+0 : inexact-ok
+= yn downward ldbl-96-intel 1 0xcp-4L : -0x1.099fcbe60fd8302ap+0L : inexact-ok
+= yn tonearest ldbl-96-intel 1 0xcp-4L : -0x1.099fcbe60fd8302ap+0L : inexact-ok
+= yn towardzero ldbl-96-intel 1 0xcp-4L : -0x1.099fcbe60fd83028p+0L : inexact-ok
+= yn upward ldbl-96-intel 1 0xcp-4L : -0x1.099fcbe60fd83028p+0L : inexact-ok
+= yn downward ldbl-96-m68k 1 0xcp-4L : -0x1.099fcbe60fd8302ap+0L : inexact-ok
+= yn tonearest ldbl-96-m68k 1 0xcp-4L : -0x1.099fcbe60fd8302ap+0L : inexact-ok
+= yn towardzero ldbl-96-m68k 1 0xcp-4L : -0x1.099fcbe60fd83028p+0L : inexact-ok
+= yn upward ldbl-96-m68k 1 0xcp-4L : -0x1.099fcbe60fd83028p+0L : inexact-ok
+= yn downward ldbl-128 1 0xcp-4L : -0x1.099fcbe60fd830293e0a662302e5p+0L : inexact-ok
+= yn tonearest ldbl-128 1 0xcp-4L : -0x1.099fcbe60fd830293e0a662302e4p+0L : inexact-ok
+= yn towardzero ldbl-128 1 0xcp-4L : -0x1.099fcbe60fd830293e0a662302e4p+0L : inexact-ok
+= yn upward ldbl-128 1 0xcp-4L : -0x1.099fcbe60fd830293e0a662302e4p+0L : inexact-ok
+= yn downward ldbl-128ibm 1 0xcp-4L : -0x1.099fcbe60fd830293e0a662303p+0L : inexact-ok
+= yn tonearest ldbl-128ibm 1 0xcp-4L : -0x1.099fcbe60fd830293e0a662303p+0L : inexact-ok
+= yn towardzero ldbl-128ibm 1 0xcp-4L : -0x1.099fcbe60fd830293e0a6623028p+0L : inexact-ok
+= yn upward ldbl-128ibm 1 0xcp-4L : -0x1.099fcbe60fd830293e0a6623028p+0L : inexact-ok
+yn 1 1.0
+= yn downward flt-32 1 0x1p+0f : -0xc.7fd91p-4f : inexact-ok
+= yn tonearest flt-32 1 0x1p+0f : -0xc.7fd9p-4f : inexact-ok
+= yn towardzero flt-32 1 0x1p+0f : -0xc.7fd9p-4f : inexact-ok
+= yn upward flt-32 1 0x1p+0f : -0xc.7fd9p-4f : inexact-ok
+= yn downward dbl-64 1 0x1p+0 : -0xc.7fd903eb35ca8p-4 : inexact-ok
+= yn tonearest dbl-64 1 0x1p+0 : -0xc.7fd903eb35cap-4 : inexact-ok
+= yn towardzero dbl-64 1 0x1p+0 : -0xc.7fd903eb35cap-4 : inexact-ok
+= yn upward dbl-64 1 0x1p+0 : -0xc.7fd903eb35cap-4 : inexact-ok
+= yn downward ldbl-96-intel 1 0x1p+0L : -0xc.7fd903eb35ca24fp-4L : inexact-ok
+= yn tonearest ldbl-96-intel 1 0x1p+0L : -0xc.7fd903eb35ca24fp-4L : inexact-ok
+= yn towardzero ldbl-96-intel 1 0x1p+0L : -0xc.7fd903eb35ca24ep-4L : inexact-ok
+= yn upward ldbl-96-intel 1 0x1p+0L : -0xc.7fd903eb35ca24ep-4L : inexact-ok
+= yn downward ldbl-96-m68k 1 0x1p+0L : -0xc.7fd903eb35ca24fp-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 1 0x1p+0L : -0xc.7fd903eb35ca24fp-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 1 0x1p+0L : -0xc.7fd903eb35ca24ep-4L : inexact-ok
+= yn upward ldbl-96-m68k 1 0x1p+0L : -0xc.7fd903eb35ca24ep-4L : inexact-ok
+= yn downward ldbl-128 1 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf89581968p-4L : inexact-ok
+= yn tonearest ldbl-128 1 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf8958196p-4L : inexact-ok
+= yn towardzero ldbl-128 1 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf8958196p-4L : inexact-ok
+= yn upward ldbl-128 1 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf8958196p-4L : inexact-ok
+= yn downward ldbl-128ibm 1 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf89581cp-4L : inexact-ok
+= yn tonearest ldbl-128ibm 1 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf895818p-4L : inexact-ok
+= yn towardzero ldbl-128ibm 1 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf895818p-4L : inexact-ok
+= yn upward ldbl-128ibm 1 0x1p+0L : -0xc.7fd903eb35ca24ef2cdf895818p-4L : inexact-ok
+yn 1 1.5
+= yn downward flt-32 1 0x1.8p+0f : -0x6.98d0fp-4f : inexact-ok
+= yn tonearest flt-32 1 0x1.8p+0f : -0x6.98d0fp-4f : inexact-ok
+= yn towardzero flt-32 1 0x1.8p+0f : -0x6.98d0e8p-4f : inexact-ok
+= yn upward flt-32 1 0x1.8p+0f : -0x6.98d0e8p-4f : inexact-ok
+= yn downward dbl-64 1 0x1.8p+0 : -0x6.98d0ee4b62c3cp-4 : inexact-ok
+= yn tonearest dbl-64 1 0x1.8p+0 : -0x6.98d0ee4b62c3cp-4 : inexact-ok
+= yn towardzero dbl-64 1 0x1.8p+0 : -0x6.98d0ee4b62c38p-4 : inexact-ok
+= yn upward dbl-64 1 0x1.8p+0 : -0x6.98d0ee4b62c38p-4 : inexact-ok
+= yn downward ldbl-96-intel 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf9p-4L : inexact-ok
+= yn tonearest ldbl-96-intel 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf9p-4L : inexact-ok
+= yn towardzero ldbl-96-intel 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf88p-4L : inexact-ok
+= yn upward ldbl-96-intel 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf88p-4L : inexact-ok
+= yn downward ldbl-96-m68k 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf9p-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf9p-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf88p-4L : inexact-ok
+= yn upward ldbl-96-m68k 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf88p-4L : inexact-ok
+= yn downward ldbl-128 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da4547258p-4L : inexact-ok
+= yn tonearest ldbl-128 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da4547258p-4L : inexact-ok
+= yn towardzero ldbl-128 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da4547254p-4L : inexact-ok
+= yn upward ldbl-128 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da4547254p-4L : inexact-ok
+= yn downward ldbl-128ibm 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da45474p-4L : inexact-ok
+= yn tonearest ldbl-128ibm 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da45472p-4L : inexact-ok
+= yn towardzero ldbl-128ibm 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da45472p-4L : inexact-ok
+= yn upward ldbl-128ibm 1 0x1.8p+0L : -0x6.98d0ee4b62c3bf8ce41da45472p-4L : inexact-ok
+yn 1 2.0
+= yn downward flt-32 1 0x2p+0f : -0x1.b667a4p-4f : inexact-ok
+= yn tonearest flt-32 1 0x2p+0f : -0x1.b667a4p-4f : inexact-ok
+= yn towardzero flt-32 1 0x2p+0f : -0x1.b667a2p-4f : inexact-ok
+= yn upward flt-32 1 0x2p+0f : -0x1.b667a2p-4f : inexact-ok
+= yn downward dbl-64 1 0x2p+0 : -0x1.b667a39146648p-4 : inexact-ok
+= yn tonearest dbl-64 1 0x2p+0 : -0x1.b667a39146647p-4 : inexact-ok
+= yn towardzero dbl-64 1 0x2p+0 : -0x1.b667a39146647p-4 : inexact-ok
+= yn upward dbl-64 1 0x2p+0 : -0x1.b667a39146647p-4 : inexact-ok
+= yn downward ldbl-96-intel 1 0x2p+0L : -0x1.b667a3914664758cp-4L : inexact-ok
+= yn tonearest ldbl-96-intel 1 0x2p+0L : -0x1.b667a3914664758cp-4L : inexact-ok
+= yn towardzero ldbl-96-intel 1 0x2p+0L : -0x1.b667a3914664758ap-4L : inexact-ok
+= yn upward ldbl-96-intel 1 0x2p+0L : -0x1.b667a3914664758ap-4L : inexact-ok
+= yn downward ldbl-96-m68k 1 0x2p+0L : -0x1.b667a3914664758cp-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 1 0x2p+0L : -0x1.b667a3914664758cp-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 1 0x2p+0L : -0x1.b667a3914664758ap-4L : inexact-ok
+= yn upward ldbl-96-m68k 1 0x2p+0L : -0x1.b667a3914664758ap-4L : inexact-ok
+= yn downward ldbl-128 1 0x2p+0L : -0x1.b667a3914664758b0c44371e51e3p-4L : inexact-ok
+= yn tonearest ldbl-128 1 0x2p+0L : -0x1.b667a3914664758b0c44371e51e2p-4L : inexact-ok
+= yn towardzero ldbl-128 1 0x2p+0L : -0x1.b667a3914664758b0c44371e51e2p-4L : inexact-ok
+= yn upward ldbl-128 1 0x2p+0L : -0x1.b667a3914664758b0c44371e51e2p-4L : inexact-ok
+= yn downward ldbl-128ibm 1 0x2p+0L : -0x1.b667a3914664758b0c44371e52p-4L : inexact-ok
+= yn tonearest ldbl-128ibm 1 0x2p+0L : -0x1.b667a3914664758b0c44371e52p-4L : inexact-ok
+= yn towardzero ldbl-128ibm 1 0x2p+0L : -0x1.b667a3914664758b0c44371e518p-4L : inexact-ok
+= yn upward ldbl-128ibm 1 0x2p+0L : -0x1.b667a3914664758b0c44371e518p-4L : inexact-ok
+yn 1 8.0
+= yn downward flt-32 1 0x8p+0f : -0x2.876a6cp-4f : inexact-ok
+= yn tonearest flt-32 1 0x8p+0f : -0x2.876a68p-4f : inexact-ok
+= yn towardzero flt-32 1 0x8p+0f : -0x2.876a68p-4f : inexact-ok
+= yn upward flt-32 1 0x8p+0f : -0x2.876a68p-4f : inexact-ok
+= yn downward dbl-64 1 0x8p+0 : -0x2.876a681ed266ep-4 : inexact-ok
+= yn tonearest dbl-64 1 0x8p+0 : -0x2.876a681ed266cp-4 : inexact-ok
+= yn towardzero dbl-64 1 0x8p+0 : -0x2.876a681ed266cp-4 : inexact-ok
+= yn upward dbl-64 1 0x8p+0 : -0x2.876a681ed266cp-4 : inexact-ok
+= yn downward ldbl-96-intel 1 0x8p+0L : -0x2.876a681ed266c21cp-4L : inexact-ok
+= yn tonearest ldbl-96-intel 1 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= yn towardzero ldbl-96-intel 1 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= yn upward ldbl-96-intel 1 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= yn downward ldbl-96-m68k 1 0x8p+0L : -0x2.876a681ed266c21cp-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 1 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 1 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= yn upward ldbl-96-m68k 1 0x8p+0L : -0x2.876a681ed266c218p-4L : inexact-ok
+= yn downward ldbl-128 1 0x8p+0L : -0x2.876a681ed266c219a14b51d98a7p-4L : inexact-ok
+= yn tonearest ldbl-128 1 0x8p+0L : -0x2.876a681ed266c219a14b51d98a7p-4L : inexact-ok
+= yn towardzero ldbl-128 1 0x8p+0L : -0x2.876a681ed266c219a14b51d98a6ep-4L : inexact-ok
+= yn upward ldbl-128 1 0x8p+0L : -0x2.876a681ed266c219a14b51d98a6ep-4L : inexact-ok
+= yn downward ldbl-128ibm 1 0x8p+0L : -0x2.876a681ed266c219a14b51d98bp-4L : inexact-ok
+= yn tonearest ldbl-128ibm 1 0x8p+0L : -0x2.876a681ed266c219a14b51d98ap-4L : inexact-ok
+= yn towardzero ldbl-128ibm 1 0x8p+0L : -0x2.876a681ed266c219a14b51d98ap-4L : inexact-ok
+= yn upward ldbl-128ibm 1 0x8p+0L : -0x2.876a681ed266c219a14b51d98ap-4L : inexact-ok
+yn 1 10.0
+= yn downward flt-32 1 0xap+0f : 0x3.fbf798p-4f : inexact-ok
+= yn tonearest flt-32 1 0xap+0f : 0x3.fbf798p-4f : inexact-ok
+= yn towardzero flt-32 1 0xap+0f : 0x3.fbf798p-4f : inexact-ok
+= yn upward flt-32 1 0xap+0f : 0x3.fbf79cp-4f : inexact-ok
+= yn downward dbl-64 1 0xap+0 : 0x3.fbf798f2b1e78p-4 : inexact-ok
+= yn tonearest dbl-64 1 0xap+0 : 0x3.fbf798f2b1e78p-4 : inexact-ok
+= yn towardzero dbl-64 1 0xap+0 : 0x3.fbf798f2b1e78p-4 : inexact-ok
+= yn upward dbl-64 1 0xap+0 : 0x3.fbf798f2b1e7ap-4 : inexact-ok
+= yn downward ldbl-96-intel 1 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= yn tonearest ldbl-96-intel 1 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= yn towardzero ldbl-96-intel 1 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= yn upward ldbl-96-intel 1 0xap+0L : 0x3.fbf798f2b1e78048p-4L : inexact-ok
+= yn downward ldbl-96-m68k 1 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 1 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 1 0xap+0L : 0x3.fbf798f2b1e78044p-4L : inexact-ok
+= yn upward ldbl-96-m68k 1 0xap+0L : 0x3.fbf798f2b1e78048p-4L : inexact-ok
+= yn downward ldbl-128 1 0xap+0L : 0x3.fbf798f2b1e78044d16cb7250316p-4L : inexact-ok
+= yn tonearest ldbl-128 1 0xap+0L : 0x3.fbf798f2b1e78044d16cb7250318p-4L : inexact-ok
+= yn towardzero ldbl-128 1 0xap+0L : 0x3.fbf798f2b1e78044d16cb7250316p-4L : inexact-ok
+= yn upward ldbl-128 1 0xap+0L : 0x3.fbf798f2b1e78044d16cb7250318p-4L : inexact-ok
+= yn downward ldbl-128ibm 1 0xap+0L : 0x3.fbf798f2b1e78044d16cb72503p-4L : inexact-ok
+= yn tonearest ldbl-128ibm 1 0xap+0L : 0x3.fbf798f2b1e78044d16cb72503p-4L : inexact-ok
+= yn towardzero ldbl-128ibm 1 0xap+0L : 0x3.fbf798f2b1e78044d16cb72503p-4L : inexact-ok
+= yn upward ldbl-128ibm 1 0xap+0L : 0x3.fbf798f2b1e78044d16cb72504p-4L : inexact-ok
+yn -1 1.0
+= yn downward flt-32 -1 0x1p+0f : 0xc.7fd9p-4f : inexact-ok
+= yn tonearest flt-32 -1 0x1p+0f : 0xc.7fd9p-4f : inexact-ok
+= yn towardzero flt-32 -1 0x1p+0f : 0xc.7fd9p-4f : inexact-ok
+= yn upward flt-32 -1 0x1p+0f : 0xc.7fd91p-4f : inexact-ok
+= yn downward dbl-64 -1 0x1p+0 : 0xc.7fd903eb35cap-4 : inexact-ok
+= yn tonearest dbl-64 -1 0x1p+0 : 0xc.7fd903eb35cap-4 : inexact-ok
+= yn towardzero dbl-64 -1 0x1p+0 : 0xc.7fd903eb35cap-4 : inexact-ok
+= yn upward dbl-64 -1 0x1p+0 : 0xc.7fd903eb35ca8p-4 : inexact-ok
+= yn downward ldbl-96-intel -1 0x1p+0L : 0xc.7fd903eb35ca24ep-4L : inexact-ok
+= yn tonearest ldbl-96-intel -1 0x1p+0L : 0xc.7fd903eb35ca24fp-4L : inexact-ok
+= yn towardzero ldbl-96-intel -1 0x1p+0L : 0xc.7fd903eb35ca24ep-4L : inexact-ok
+= yn upward ldbl-96-intel -1 0x1p+0L : 0xc.7fd903eb35ca24fp-4L : inexact-ok
+= yn downward ldbl-96-m68k -1 0x1p+0L : 0xc.7fd903eb35ca24ep-4L : inexact-ok
+= yn tonearest ldbl-96-m68k -1 0x1p+0L : 0xc.7fd903eb35ca24fp-4L : inexact-ok
+= yn towardzero ldbl-96-m68k -1 0x1p+0L : 0xc.7fd903eb35ca24ep-4L : inexact-ok
+= yn upward ldbl-96-m68k -1 0x1p+0L : 0xc.7fd903eb35ca24fp-4L : inexact-ok
+= yn downward ldbl-128 -1 0x1p+0L : 0xc.7fd903eb35ca24ef2cdf8958196p-4L : inexact-ok
+= yn tonearest ldbl-128 -1 0x1p+0L : 0xc.7fd903eb35ca24ef2cdf8958196p-4L : inexact-ok
+= yn towardzero ldbl-128 -1 0x1p+0L : 0xc.7fd903eb35ca24ef2cdf8958196p-4L : inexact-ok
+= yn upward ldbl-128 -1 0x1p+0L : 0xc.7fd903eb35ca24ef2cdf89581968p-4L : inexact-ok
+= yn downward ldbl-128ibm -1 0x1p+0L : 0xc.7fd903eb35ca24ef2cdf895818p-4L : inexact-ok
+= yn tonearest ldbl-128ibm -1 0x1p+0L : 0xc.7fd903eb35ca24ef2cdf895818p-4L : inexact-ok
+= yn towardzero ldbl-128ibm -1 0x1p+0L : 0xc.7fd903eb35ca24ef2cdf895818p-4L : inexact-ok
+= yn upward ldbl-128ibm -1 0x1p+0L : 0xc.7fd903eb35ca24ef2cdf89581cp-4L : inexact-ok
+yn 3 0.125
+= yn downward flt-32 3 0x2p-4f : -0xa.34b2ap+8f : inexact-ok
+= yn tonearest flt-32 3 0x2p-4f : -0xa.34b29p+8f : inexact-ok
+= yn towardzero flt-32 3 0x2p-4f : -0xa.34b29p+8f : inexact-ok
+= yn upward flt-32 3 0x2p-4f : -0xa.34b29p+8f : inexact-ok
+= yn downward dbl-64 3 0x2p-4 : -0xa.34b2942d4becp+8 : inexact-ok
+= yn tonearest dbl-64 3 0x2p-4 : -0xa.34b2942d4becp+8 : inexact-ok
+= yn towardzero dbl-64 3 0x2p-4 : -0xa.34b2942d4beb8p+8 : inexact-ok
+= yn upward dbl-64 3 0x2p-4 : -0xa.34b2942d4beb8p+8 : inexact-ok
+= yn downward ldbl-96-intel 3 0x2p-4L : -0xa.34b2942d4bebea2p+8L : inexact-ok
+= yn tonearest ldbl-96-intel 3 0x2p-4L : -0xa.34b2942d4bebea1p+8L : inexact-ok
+= yn towardzero ldbl-96-intel 3 0x2p-4L : -0xa.34b2942d4bebea1p+8L : inexact-ok
+= yn upward ldbl-96-intel 3 0x2p-4L : -0xa.34b2942d4bebea1p+8L : inexact-ok
+= yn downward ldbl-96-m68k 3 0x2p-4L : -0xa.34b2942d4bebea2p+8L : inexact-ok
+= yn tonearest ldbl-96-m68k 3 0x2p-4L : -0xa.34b2942d4bebea1p+8L : inexact-ok
+= yn towardzero ldbl-96-m68k 3 0x2p-4L : -0xa.34b2942d4bebea1p+8L : inexact-ok
+= yn upward ldbl-96-m68k 3 0x2p-4L : -0xa.34b2942d4bebea1p+8L : inexact-ok
+= yn downward ldbl-128 3 0x2p-4L : -0xa.34b2942d4bebea11b3e166ce96cp+8L : inexact-ok
+= yn tonearest ldbl-128 3 0x2p-4L : -0xa.34b2942d4bebea11b3e166ce96cp+8L : inexact-ok
+= yn towardzero ldbl-128 3 0x2p-4L : -0xa.34b2942d4bebea11b3e166ce96b8p+8L : inexact-ok
+= yn upward ldbl-128 3 0x2p-4L : -0xa.34b2942d4bebea11b3e166ce96b8p+8L : inexact-ok
+= yn downward ldbl-128ibm 3 0x2p-4L : -0xa.34b2942d4bebea11b3e166ce98p+8L : inexact-ok
+= yn tonearest ldbl-128ibm 3 0x2p-4L : -0xa.34b2942d4bebea11b3e166ce98p+8L : inexact-ok
+= yn towardzero ldbl-128ibm 3 0x2p-4L : -0xa.34b2942d4bebea11b3e166ce94p+8L : inexact-ok
+= yn upward ldbl-128ibm 3 0x2p-4L : -0xa.34b2942d4bebea11b3e166ce94p+8L : inexact-ok
+yn 3 0.75
+= yn downward flt-32 3 0xcp-4f : -0xc.fcdb1p+0f : inexact-ok
+= yn tonearest flt-32 3 0xcp-4f : -0xc.fcdb1p+0f : inexact-ok
+= yn towardzero flt-32 3 0xcp-4f : -0xc.fcdbp+0f : inexact-ok
+= yn upward flt-32 3 0xcp-4f : -0xc.fcdbp+0f : inexact-ok
+= yn downward dbl-64 3 0xcp-4 : -0xc.fcdb0fea63dap+0 : inexact-ok
+= yn tonearest dbl-64 3 0xcp-4 : -0xc.fcdb0fea63d98p+0 : inexact-ok
+= yn towardzero dbl-64 3 0xcp-4 : -0xc.fcdb0fea63d98p+0 : inexact-ok
+= yn upward dbl-64 3 0xcp-4 : -0xc.fcdb0fea63d98p+0 : inexact-ok
+= yn downward ldbl-96-intel 3 0xcp-4L : -0xc.fcdb0fea63d9bf9p+0L : inexact-ok
+= yn tonearest ldbl-96-intel 3 0xcp-4L : -0xc.fcdb0fea63d9bf9p+0L : inexact-ok
+= yn towardzero ldbl-96-intel 3 0xcp-4L : -0xc.fcdb0fea63d9bf8p+0L : inexact-ok
+= yn upward ldbl-96-intel 3 0xcp-4L : -0xc.fcdb0fea63d9bf8p+0L : inexact-ok
+= yn downward ldbl-96-m68k 3 0xcp-4L : -0xc.fcdb0fea63d9bf9p+0L : inexact-ok
+= yn tonearest ldbl-96-m68k 3 0xcp-4L : -0xc.fcdb0fea63d9bf9p+0L : inexact-ok
+= yn towardzero ldbl-96-m68k 3 0xcp-4L : -0xc.fcdb0fea63d9bf8p+0L : inexact-ok
+= yn upward ldbl-96-m68k 3 0xcp-4L : -0xc.fcdb0fea63d9bf8p+0L : inexact-ok
+= yn downward ldbl-128 3 0xcp-4L : -0xc.fcdb0fea63d9bf8f410a5bf52ffp+0L : inexact-ok
+= yn tonearest ldbl-128 3 0xcp-4L : -0xc.fcdb0fea63d9bf8f410a5bf52ffp+0L : inexact-ok
+= yn towardzero ldbl-128 3 0xcp-4L : -0xc.fcdb0fea63d9bf8f410a5bf52fe8p+0L : inexact-ok
+= yn upward ldbl-128 3 0xcp-4L : -0xc.fcdb0fea63d9bf8f410a5bf52fe8p+0L : inexact-ok
+= yn downward ldbl-128ibm 3 0xcp-4L : -0xc.fcdb0fea63d9bf8f410a5bf53p+0L : inexact-ok
+= yn tonearest ldbl-128ibm 3 0xcp-4L : -0xc.fcdb0fea63d9bf8f410a5bf53p+0L : inexact-ok
+= yn towardzero ldbl-128ibm 3 0xcp-4L : -0xc.fcdb0fea63d9bf8f410a5bf52cp+0L : inexact-ok
+= yn upward ldbl-128ibm 3 0xcp-4L : -0xc.fcdb0fea63d9bf8f410a5bf52cp+0L : inexact-ok
+yn 3 1.0
+= yn downward flt-32 3 0x1p+0f : -0x5.d24fp+0f : inexact-ok
+= yn tonearest flt-32 3 0x1p+0f : -0x5.d24ef8p+0f : inexact-ok
+= yn towardzero flt-32 3 0x1p+0f : -0x5.d24ef8p+0f : inexact-ok
+= yn upward flt-32 3 0x1p+0f : -0x5.d24ef8p+0f : inexact-ok
+= yn downward dbl-64 3 0x1p+0 : -0x5.d24efa52b4ecp+0 : inexact-ok
+= yn tonearest dbl-64 3 0x1p+0 : -0x5.d24efa52b4ecp+0 : inexact-ok
+= yn towardzero dbl-64 3 0x1p+0 : -0x5.d24efa52b4ebcp+0 : inexact-ok
+= yn upward dbl-64 3 0x1p+0 : -0x5.d24efa52b4ebcp+0 : inexact-ok
+= yn downward ldbl-96-intel 3 0x1p+0L : -0x5.d24efa52b4ebecd8p+0L : inexact-ok
+= yn tonearest ldbl-96-intel 3 0x1p+0L : -0x5.d24efa52b4ebecdp+0L : inexact-ok
+= yn towardzero ldbl-96-intel 3 0x1p+0L : -0x5.d24efa52b4ebecdp+0L : inexact-ok
+= yn upward ldbl-96-intel 3 0x1p+0L : -0x5.d24efa52b4ebecdp+0L : inexact-ok
+= yn downward ldbl-96-m68k 3 0x1p+0L : -0x5.d24efa52b4ebecd8p+0L : inexact-ok
+= yn tonearest ldbl-96-m68k 3 0x1p+0L : -0x5.d24efa52b4ebecdp+0L : inexact-ok
+= yn towardzero ldbl-96-m68k 3 0x1p+0L : -0x5.d24efa52b4ebecdp+0L : inexact-ok
+= yn upward ldbl-96-m68k 3 0x1p+0L : -0x5.d24efa52b4ebecdp+0L : inexact-ok
+= yn downward ldbl-128 3 0x1p+0L : -0x5.d24efa52b4ebecd062d341fb247p+0L : inexact-ok
+= yn tonearest ldbl-128 3 0x1p+0L : -0x5.d24efa52b4ebecd062d341fb247p+0L : inexact-ok
+= yn towardzero ldbl-128 3 0x1p+0L : -0x5.d24efa52b4ebecd062d341fb246cp+0L : inexact-ok
+= yn upward ldbl-128 3 0x1p+0L : -0x5.d24efa52b4ebecd062d341fb246cp+0L : inexact-ok
+= yn downward ldbl-128ibm 3 0x1p+0L : -0x5.d24efa52b4ebecd062d341fb26p+0L : inexact-ok
+= yn tonearest ldbl-128ibm 3 0x1p+0L : -0x5.d24efa52b4ebecd062d341fb24p+0L : inexact-ok
+= yn towardzero ldbl-128ibm 3 0x1p+0L : -0x5.d24efa52b4ebecd062d341fb24p+0L : inexact-ok
+= yn upward ldbl-128ibm 3 0x1p+0L : -0x5.d24efa52b4ebecd062d341fb24p+0L : inexact-ok
+yn 3 2.0
+= yn downward flt-32 3 0x2p+0f : -0x1.20b672p+0f : inexact-ok
+= yn tonearest flt-32 3 0x2p+0f : -0x1.20b67p+0f : inexact-ok
+= yn towardzero flt-32 3 0x2p+0f : -0x1.20b67p+0f : inexact-ok
+= yn upward flt-32 3 0x2p+0f : -0x1.20b67p+0f : inexact-ok
+= yn downward dbl-64 3 0x2p+0 : -0x1.20b670067d2f2p+0 : inexact-ok
+= yn tonearest dbl-64 3 0x2p+0 : -0x1.20b670067d2f1p+0 : inexact-ok
+= yn towardzero dbl-64 3 0x2p+0 : -0x1.20b670067d2f1p+0 : inexact-ok
+= yn upward dbl-64 3 0x2p+0 : -0x1.20b670067d2f1p+0 : inexact-ok
+= yn downward ldbl-96-intel 3 0x2p+0L : -0x1.20b670067d2f131cp+0L : inexact-ok
+= yn tonearest ldbl-96-intel 3 0x2p+0L : -0x1.20b670067d2f131cp+0L : inexact-ok
+= yn towardzero ldbl-96-intel 3 0x2p+0L : -0x1.20b670067d2f131ap+0L : inexact-ok
+= yn upward ldbl-96-intel 3 0x2p+0L : -0x1.20b670067d2f131ap+0L : inexact-ok
+= yn downward ldbl-96-m68k 3 0x2p+0L : -0x1.20b670067d2f131cp+0L : inexact-ok
+= yn tonearest ldbl-96-m68k 3 0x2p+0L : -0x1.20b670067d2f131cp+0L : inexact-ok
+= yn towardzero ldbl-96-m68k 3 0x2p+0L : -0x1.20b670067d2f131ap+0L : inexact-ok
+= yn upward ldbl-96-m68k 3 0x2p+0L : -0x1.20b670067d2f131ap+0L : inexact-ok
+= yn downward ldbl-128 3 0x2p+0L : -0x1.20b670067d2f131b0a69fbb81edep+0L : inexact-ok
+= yn tonearest ldbl-128 3 0x2p+0L : -0x1.20b670067d2f131b0a69fbb81edep+0L : inexact-ok
+= yn towardzero ldbl-128 3 0x2p+0L : -0x1.20b670067d2f131b0a69fbb81eddp+0L : inexact-ok
+= yn upward ldbl-128 3 0x2p+0L : -0x1.20b670067d2f131b0a69fbb81eddp+0L : inexact-ok
+= yn downward ldbl-128ibm 3 0x2p+0L : -0x1.20b670067d2f131b0a69fbb81fp+0L : inexact-ok
+= yn tonearest ldbl-128ibm 3 0x2p+0L : -0x1.20b670067d2f131b0a69fbb81fp+0L : inexact-ok
+= yn towardzero ldbl-128ibm 3 0x2p+0L : -0x1.20b670067d2f131b0a69fbb81e8p+0L : inexact-ok
+= yn upward ldbl-128ibm 3 0x2p+0L : -0x1.20b670067d2f131b0a69fbb81e8p+0L : inexact-ok
+yn 3 10.0
+= yn downward flt-32 3 0xap+0f : -0x4.0594ep-4f : inexact-ok
+= yn tonearest flt-32 3 0xap+0f : -0x4.0594d8p-4f : inexact-ok
+= yn towardzero flt-32 3 0xap+0f : -0x4.0594d8p-4f : inexact-ok
+= yn upward flt-32 3 0xap+0f : -0x4.0594d8p-4f : inexact-ok
+= yn downward dbl-64 3 0xap+0 : -0x4.0594d980a4d3cp-4 : inexact-ok
+= yn tonearest dbl-64 3 0xap+0 : -0x4.0594d980a4d38p-4 : inexact-ok
+= yn towardzero dbl-64 3 0xap+0 : -0x4.0594d980a4d38p-4 : inexact-ok
+= yn upward dbl-64 3 0xap+0 : -0x4.0594d980a4d38p-4 : inexact-ok
+= yn downward ldbl-96-intel 3 0xap+0L : -0x4.0594d980a4d38728p-4L : inexact-ok
+= yn tonearest ldbl-96-intel 3 0xap+0L : -0x4.0594d980a4d3872p-4L : inexact-ok
+= yn towardzero ldbl-96-intel 3 0xap+0L : -0x4.0594d980a4d3872p-4L : inexact-ok
+= yn upward ldbl-96-intel 3 0xap+0L : -0x4.0594d980a4d3872p-4L : inexact-ok
+= yn downward ldbl-96-m68k 3 0xap+0L : -0x4.0594d980a4d38728p-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 3 0xap+0L : -0x4.0594d980a4d3872p-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 3 0xap+0L : -0x4.0594d980a4d3872p-4L : inexact-ok
+= yn upward ldbl-96-m68k 3 0xap+0L : -0x4.0594d980a4d3872p-4L : inexact-ok
+= yn downward ldbl-128 3 0xap+0L : -0x4.0594d980a4d38721b879194ebc38p-4L : inexact-ok
+= yn tonearest ldbl-128 3 0xap+0L : -0x4.0594d980a4d38721b879194ebc34p-4L : inexact-ok
+= yn towardzero ldbl-128 3 0xap+0L : -0x4.0594d980a4d38721b879194ebc34p-4L : inexact-ok
+= yn upward ldbl-128 3 0xap+0L : -0x4.0594d980a4d38721b879194ebc34p-4L : inexact-ok
+= yn downward ldbl-128ibm 3 0xap+0L : -0x4.0594d980a4d38721b879194ebep-4L : inexact-ok
+= yn tonearest ldbl-128ibm 3 0xap+0L : -0x4.0594d980a4d38721b879194ebcp-4L : inexact-ok
+= yn towardzero ldbl-128ibm 3 0xap+0L : -0x4.0594d980a4d38721b879194ebcp-4L : inexact-ok
+= yn upward ldbl-128ibm 3 0xap+0L : -0x4.0594d980a4d38721b879194ebcp-4L : inexact-ok
+yn 10 0.125
+= yn downward flt-32 10 0x2p-4f : -0x1.c36672p+56f : inexact-ok
+= yn tonearest flt-32 10 0x2p-4f : -0x1.c3667p+56f : inexact-ok
+= yn towardzero flt-32 10 0x2p-4f : -0x1.c3667p+56f : inexact-ok
+= yn upward flt-32 10 0x2p-4f : -0x1.c3667p+56f : inexact-ok
+= yn downward dbl-64 10 0x2p-4 : -0x1.c36670031ba49p+56 : inexact-ok
+= yn tonearest dbl-64 10 0x2p-4 : -0x1.c36670031ba48p+56 : inexact-ok
+= yn towardzero dbl-64 10 0x2p-4 : -0x1.c36670031ba48p+56 : inexact-ok
+= yn upward dbl-64 10 0x2p-4 : -0x1.c36670031ba48p+56 : inexact-ok
+= yn downward ldbl-96-intel 10 0x2p-4L : -0x1.c36670031ba48642p+56L : inexact-ok
+= yn tonearest ldbl-96-intel 10 0x2p-4L : -0x1.c36670031ba4864p+56L : inexact-ok
+= yn towardzero ldbl-96-intel 10 0x2p-4L : -0x1.c36670031ba4864p+56L : inexact-ok
+= yn upward ldbl-96-intel 10 0x2p-4L : -0x1.c36670031ba4864p+56L : inexact-ok
+= yn downward ldbl-96-m68k 10 0x2p-4L : -0x1.c36670031ba48642p+56L : inexact-ok
+= yn tonearest ldbl-96-m68k 10 0x2p-4L : -0x1.c36670031ba4864p+56L : inexact-ok
+= yn towardzero ldbl-96-m68k 10 0x2p-4L : -0x1.c36670031ba4864p+56L : inexact-ok
+= yn upward ldbl-96-m68k 10 0x2p-4L : -0x1.c36670031ba4864p+56L : inexact-ok
+= yn downward ldbl-128 10 0x2p-4L : -0x1.c36670031ba48640a65cbe373c56p+56L : inexact-ok
+= yn tonearest ldbl-128 10 0x2p-4L : -0x1.c36670031ba48640a65cbe373c56p+56L : inexact-ok
+= yn towardzero ldbl-128 10 0x2p-4L : -0x1.c36670031ba48640a65cbe373c55p+56L : inexact-ok
+= yn upward ldbl-128 10 0x2p-4L : -0x1.c36670031ba48640a65cbe373c55p+56L : inexact-ok
+= yn downward ldbl-128ibm 10 0x2p-4L : -0x1.c36670031ba48640a65cbe373c8p+56L : inexact-ok
+= yn tonearest ldbl-128ibm 10 0x2p-4L : -0x1.c36670031ba48640a65cbe373c8p+56L : inexact-ok
+= yn towardzero ldbl-128ibm 10 0x2p-4L : -0x1.c36670031ba48640a65cbe373cp+56L : inexact-ok
+= yn upward ldbl-128ibm 10 0x2p-4L : -0x1.c36670031ba48640a65cbe373cp+56L : inexact-ok
+yn 10 0.75
+= yn downward flt-32 10 0xcp-4f : -0x7.f2aa7p+28f : inexact-ok
+= yn tonearest flt-32 10 0xcp-4f : -0x7.f2aa7p+28f : inexact-ok
+= yn towardzero flt-32 10 0xcp-4f : -0x7.f2aa68p+28f : inexact-ok
+= yn upward flt-32 10 0xcp-4f : -0x7.f2aa68p+28f : inexact-ok
+= yn downward dbl-64 10 0xcp-4 : -0x7.f2aa6c6e7de34p+28 : inexact-ok
+= yn tonearest dbl-64 10 0xcp-4 : -0x7.f2aa6c6e7de34p+28 : inexact-ok
+= yn towardzero dbl-64 10 0xcp-4 : -0x7.f2aa6c6e7de3p+28 : inexact-ok
+= yn upward dbl-64 10 0xcp-4 : -0x7.f2aa6c6e7de3p+28 : inexact-ok
+= yn downward ldbl-96-intel 10 0xcp-4L : -0x7.f2aa6c6e7de330f8p+28L : inexact-ok
+= yn tonearest ldbl-96-intel 10 0xcp-4L : -0x7.f2aa6c6e7de330fp+28L : inexact-ok
+= yn towardzero ldbl-96-intel 10 0xcp-4L : -0x7.f2aa6c6e7de330fp+28L : inexact-ok
+= yn upward ldbl-96-intel 10 0xcp-4L : -0x7.f2aa6c6e7de330fp+28L : inexact-ok
+= yn downward ldbl-96-m68k 10 0xcp-4L : -0x7.f2aa6c6e7de330f8p+28L : inexact-ok
+= yn tonearest ldbl-96-m68k 10 0xcp-4L : -0x7.f2aa6c6e7de330fp+28L : inexact-ok
+= yn towardzero ldbl-96-m68k 10 0xcp-4L : -0x7.f2aa6c6e7de330fp+28L : inexact-ok
+= yn upward ldbl-96-m68k 10 0xcp-4L : -0x7.f2aa6c6e7de330fp+28L : inexact-ok
+= yn downward ldbl-128 10 0xcp-4L : -0x7.f2aa6c6e7de330f198c55276c6ccp+28L : inexact-ok
+= yn tonearest ldbl-128 10 0xcp-4L : -0x7.f2aa6c6e7de330f198c55276c6c8p+28L : inexact-ok
+= yn towardzero ldbl-128 10 0xcp-4L : -0x7.f2aa6c6e7de330f198c55276c6c8p+28L : inexact-ok
+= yn upward ldbl-128 10 0xcp-4L : -0x7.f2aa6c6e7de330f198c55276c6c8p+28L : inexact-ok
+= yn downward ldbl-128ibm 10 0xcp-4L : -0x7.f2aa6c6e7de330f198c55276c8p+28L : inexact-ok
+= yn tonearest ldbl-128ibm 10 0xcp-4L : -0x7.f2aa6c6e7de330f198c55276c6p+28L : inexact-ok
+= yn towardzero ldbl-128ibm 10 0xcp-4L : -0x7.f2aa6c6e7de330f198c55276c6p+28L : inexact-ok
+= yn upward ldbl-128ibm 10 0xcp-4L : -0x7.f2aa6c6e7de330f198c55276c6p+28L : inexact-ok
+yn 10 1.0
+= yn downward flt-32 10 0x1p+0f : -0x7.3fbe6p+24f : inexact-ok
+= yn tonearest flt-32 10 0x1p+0f : -0x7.3fbe6p+24f : inexact-ok
+= yn towardzero flt-32 10 0x1p+0f : -0x7.3fbe58p+24f : inexact-ok
+= yn upward flt-32 10 0x1p+0f : -0x7.3fbe58p+24f : inexact-ok
+= yn downward dbl-64 10 0x1p+0 : -0x7.3fbe5e47582ccp+24 : inexact-ok
+= yn tonearest dbl-64 10 0x1p+0 : -0x7.3fbe5e47582ccp+24 : inexact-ok
+= yn towardzero dbl-64 10 0x1p+0 : -0x7.3fbe5e47582c8p+24 : inexact-ok
+= yn upward dbl-64 10 0x1p+0 : -0x7.3fbe5e47582c8p+24 : inexact-ok
+= yn downward ldbl-96-intel 10 0x1p+0L : -0x7.3fbe5e47582cb9cp+24L : inexact-ok
+= yn tonearest ldbl-96-intel 10 0x1p+0L : -0x7.3fbe5e47582cb9cp+24L : inexact-ok
+= yn towardzero ldbl-96-intel 10 0x1p+0L : -0x7.3fbe5e47582cb9b8p+24L : inexact-ok
+= yn upward ldbl-96-intel 10 0x1p+0L : -0x7.3fbe5e47582cb9b8p+24L : inexact-ok
+= yn downward ldbl-96-m68k 10 0x1p+0L : -0x7.3fbe5e47582cb9cp+24L : inexact-ok
+= yn tonearest ldbl-96-m68k 10 0x1p+0L : -0x7.3fbe5e47582cb9cp+24L : inexact-ok
+= yn towardzero ldbl-96-m68k 10 0x1p+0L : -0x7.3fbe5e47582cb9b8p+24L : inexact-ok
+= yn upward ldbl-96-m68k 10 0x1p+0L : -0x7.3fbe5e47582cb9b8p+24L : inexact-ok
+= yn downward ldbl-128 10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026d54p+24L : inexact-ok
+= yn tonearest ldbl-128 10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026d54p+24L : inexact-ok
+= yn towardzero ldbl-128 10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026d5p+24L : inexact-ok
+= yn upward ldbl-128 10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026d5p+24L : inexact-ok
+= yn downward ldbl-128ibm 10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026ep+24L : inexact-ok
+= yn tonearest ldbl-128ibm 10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026ep+24L : inexact-ok
+= yn towardzero ldbl-128ibm 10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026cp+24L : inexact-ok
+= yn upward ldbl-128ibm 10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026cp+24L : inexact-ok
+yn 10 2.0
+= yn downward flt-32 10 0x2p+0f : -0x1.f8a08cp+16f : inexact-ok
+= yn tonearest flt-32 10 0x2p+0f : -0x1.f8a08ap+16f : inexact-ok
+= yn towardzero flt-32 10 0x2p+0f : -0x1.f8a08ap+16f : inexact-ok
+= yn upward flt-32 10 0x2p+0f : -0x1.f8a08ap+16f : inexact-ok
+= yn downward dbl-64 10 0x2p+0 : -0x1.f8a08ace25646p+16 : inexact-ok
+= yn tonearest dbl-64 10 0x2p+0 : -0x1.f8a08ace25646p+16 : inexact-ok
+= yn towardzero dbl-64 10 0x2p+0 : -0x1.f8a08ace25645p+16 : inexact-ok
+= yn upward dbl-64 10 0x2p+0 : -0x1.f8a08ace25645p+16 : inexact-ok
+= yn downward ldbl-96-intel 10 0x2p+0L : -0x1.f8a08ace256458e4p+16L : inexact-ok
+= yn tonearest ldbl-96-intel 10 0x2p+0L : -0x1.f8a08ace256458e2p+16L : inexact-ok
+= yn towardzero ldbl-96-intel 10 0x2p+0L : -0x1.f8a08ace256458e2p+16L : inexact-ok
+= yn upward ldbl-96-intel 10 0x2p+0L : -0x1.f8a08ace256458e2p+16L : inexact-ok
+= yn downward ldbl-96-m68k 10 0x2p+0L : -0x1.f8a08ace256458e4p+16L : inexact-ok
+= yn tonearest ldbl-96-m68k 10 0x2p+0L : -0x1.f8a08ace256458e2p+16L : inexact-ok
+= yn towardzero ldbl-96-m68k 10 0x2p+0L : -0x1.f8a08ace256458e2p+16L : inexact-ok
+= yn upward ldbl-96-m68k 10 0x2p+0L : -0x1.f8a08ace256458e2p+16L : inexact-ok
+= yn downward ldbl-128 10 0x2p+0L : -0x1.f8a08ace256458e265b11f6890b4p+16L : inexact-ok
+= yn tonearest ldbl-128 10 0x2p+0L : -0x1.f8a08ace256458e265b11f6890b4p+16L : inexact-ok
+= yn towardzero ldbl-128 10 0x2p+0L : -0x1.f8a08ace256458e265b11f6890b3p+16L : inexact-ok
+= yn upward ldbl-128 10 0x2p+0L : -0x1.f8a08ace256458e265b11f6890b3p+16L : inexact-ok
+= yn downward ldbl-128ibm 10 0x2p+0L : -0x1.f8a08ace256458e265b11f6891p+16L : inexact-ok
+= yn tonearest ldbl-128ibm 10 0x2p+0L : -0x1.f8a08ace256458e265b11f68908p+16L : inexact-ok
+= yn towardzero ldbl-128ibm 10 0x2p+0L : -0x1.f8a08ace256458e265b11f68908p+16L : inexact-ok
+= yn upward ldbl-128ibm 10 0x2p+0L : -0x1.f8a08ace256458e265b11f68908p+16L : inexact-ok
+yn 10 10.0
+= yn downward flt-32 10 0xap+0f : -0x5.c1cc8p-4f : inexact-ok
+= yn tonearest flt-32 10 0xap+0f : -0x5.c1cc8p-4f : inexact-ok
+= yn towardzero flt-32 10 0xap+0f : -0x5.c1cc78p-4f : inexact-ok
+= yn upward flt-32 10 0xap+0f : -0x5.c1cc78p-4f : inexact-ok
+= yn downward dbl-64 10 0xap+0 : -0x5.c1cc7c04403b8p-4 : inexact-ok
+= yn tonearest dbl-64 10 0xap+0 : -0x5.c1cc7c04403b8p-4 : inexact-ok
+= yn towardzero dbl-64 10 0xap+0 : -0x5.c1cc7c04403b4p-4 : inexact-ok
+= yn upward dbl-64 10 0xap+0 : -0x5.c1cc7c04403b4p-4 : inexact-ok
+= yn downward ldbl-96-intel 10 0xap+0L : -0x5.c1cc7c04403b7058p-4L : inexact-ok
+= yn tonearest ldbl-96-intel 10 0xap+0L : -0x5.c1cc7c04403b705p-4L : inexact-ok
+= yn towardzero ldbl-96-intel 10 0xap+0L : -0x5.c1cc7c04403b705p-4L : inexact-ok
+= yn upward ldbl-96-intel 10 0xap+0L : -0x5.c1cc7c04403b705p-4L : inexact-ok
+= yn downward ldbl-96-m68k 10 0xap+0L : -0x5.c1cc7c04403b7058p-4L : inexact-ok
+= yn tonearest ldbl-96-m68k 10 0xap+0L : -0x5.c1cc7c04403b705p-4L : inexact-ok
+= yn towardzero ldbl-96-m68k 10 0xap+0L : -0x5.c1cc7c04403b705p-4L : inexact-ok
+= yn upward ldbl-96-m68k 10 0xap+0L : -0x5.c1cc7c04403b705p-4L : inexact-ok
+= yn downward ldbl-128 10 0xap+0L : -0x5.c1cc7c04403b705203e76c165974p-4L : inexact-ok
+= yn tonearest ldbl-128 10 0xap+0L : -0x5.c1cc7c04403b705203e76c16597p-4L : inexact-ok
+= yn towardzero ldbl-128 10 0xap+0L : -0x5.c1cc7c04403b705203e76c16597p-4L : inexact-ok
+= yn upward ldbl-128 10 0xap+0L : -0x5.c1cc7c04403b705203e76c16597p-4L : inexact-ok
+= yn downward ldbl-128ibm 10 0xap+0L : -0x5.c1cc7c04403b705203e76c165ap-4L : inexact-ok
+= yn tonearest ldbl-128ibm 10 0xap+0L : -0x5.c1cc7c04403b705203e76c165ap-4L : inexact-ok
+= yn towardzero ldbl-128ibm 10 0xap+0L : -0x5.c1cc7c04403b705203e76c1658p-4L : inexact-ok
+= yn upward ldbl-128ibm 10 0xap+0L : -0x5.c1cc7c04403b705203e76c1658p-4L : inexact-ok
+yn -10 1.0
+= yn downward flt-32 -10 0x1p+0f : -0x7.3fbe6p+24f : inexact-ok
+= yn tonearest flt-32 -10 0x1p+0f : -0x7.3fbe6p+24f : inexact-ok
+= yn towardzero flt-32 -10 0x1p+0f : -0x7.3fbe58p+24f : inexact-ok
+= yn upward flt-32 -10 0x1p+0f : -0x7.3fbe58p+24f : inexact-ok
+= yn downward dbl-64 -10 0x1p+0 : -0x7.3fbe5e47582ccp+24 : inexact-ok
+= yn tonearest dbl-64 -10 0x1p+0 : -0x7.3fbe5e47582ccp+24 : inexact-ok
+= yn towardzero dbl-64 -10 0x1p+0 : -0x7.3fbe5e47582c8p+24 : inexact-ok
+= yn upward dbl-64 -10 0x1p+0 : -0x7.3fbe5e47582c8p+24 : inexact-ok
+= yn downward ldbl-96-intel -10 0x1p+0L : -0x7.3fbe5e47582cb9cp+24L : inexact-ok
+= yn tonearest ldbl-96-intel -10 0x1p+0L : -0x7.3fbe5e47582cb9cp+24L : inexact-ok
+= yn towardzero ldbl-96-intel -10 0x1p+0L : -0x7.3fbe5e47582cb9b8p+24L : inexact-ok
+= yn upward ldbl-96-intel -10 0x1p+0L : -0x7.3fbe5e47582cb9b8p+24L : inexact-ok
+= yn downward ldbl-96-m68k -10 0x1p+0L : -0x7.3fbe5e47582cb9cp+24L : inexact-ok
+= yn tonearest ldbl-96-m68k -10 0x1p+0L : -0x7.3fbe5e47582cb9cp+24L : inexact-ok
+= yn towardzero ldbl-96-m68k -10 0x1p+0L : -0x7.3fbe5e47582cb9b8p+24L : inexact-ok
+= yn upward ldbl-96-m68k -10 0x1p+0L : -0x7.3fbe5e47582cb9b8p+24L : inexact-ok
+= yn downward ldbl-128 -10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026d54p+24L : inexact-ok
+= yn tonearest ldbl-128 -10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026d54p+24L : inexact-ok
+= yn towardzero ldbl-128 -10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026d5p+24L : inexact-ok
+= yn upward ldbl-128 -10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026d5p+24L : inexact-ok
+= yn downward ldbl-128ibm -10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026ep+24L : inexact-ok
+= yn tonearest ldbl-128ibm -10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026ep+24L : inexact-ok
+= yn towardzero ldbl-128ibm -10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026cp+24L : inexact-ok
+= yn upward ldbl-128ibm -10 0x1p+0L : -0x7.3fbe5e47582cb9bdc41d0a026cp+24L : inexact-ok
+yn 10 min
+= yn downward flt-32 10 0x4p-128f : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest flt-32 10 0x4p-128f : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero flt-32 10 0x4p-128f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= yn upward flt-32 10 0x4p-128f : -0xf.fffffp+124f : inexact-ok overflow errno-erange-ok
+= yn downward dbl-64 10 0x4p-128 : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest dbl-64 10 0x4p-128 : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero dbl-64 10 0x4p-128 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= yn upward dbl-64 10 0x4p-128 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= yn downward ldbl-96-intel 10 0x4p-128L : -0x7.0cd12a7e8cbbf66p+1284L : inexact-ok
+= yn tonearest ldbl-96-intel 10 0x4p-128L : -0x7.0cd12a7e8cbbf66p+1284L : inexact-ok
+= yn towardzero ldbl-96-intel 10 0x4p-128L : -0x7.0cd12a7e8cbbf658p+1284L : inexact-ok
+= yn upward ldbl-96-intel 10 0x4p-128L : -0x7.0cd12a7e8cbbf658p+1284L : inexact-ok
+= yn downward ldbl-96-m68k 10 0x4p-128L : -0x7.0cd12a7e8cbbf66p+1284L : inexact-ok
+= yn tonearest ldbl-96-m68k 10 0x4p-128L : -0x7.0cd12a7e8cbbf66p+1284L : inexact-ok
+= yn towardzero ldbl-96-m68k 10 0x4p-128L : -0x7.0cd12a7e8cbbf658p+1284L : inexact-ok
+= yn upward ldbl-96-m68k 10 0x4p-128L : -0x7.0cd12a7e8cbbf658p+1284L : inexact-ok
+= yn downward ldbl-128 10 0x4p-128L : -0x7.0cd12a7e8cbbf65ff367b18a1e78p+1284L : inexact-ok
+= yn tonearest ldbl-128 10 0x4p-128L : -0x7.0cd12a7e8cbbf65ff367b18a1e78p+1284L : inexact-ok
+= yn towardzero ldbl-128 10 0x4p-128L : -0x7.0cd12a7e8cbbf65ff367b18a1e74p+1284L : inexact-ok
+= yn upward ldbl-128 10 0x4p-128L : -0x7.0cd12a7e8cbbf65ff367b18a1e74p+1284L : inexact-ok
+= yn downward ldbl-128ibm 10 0x4p-128L : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest ldbl-128ibm 10 0x4p-128L : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero ldbl-128ibm 10 0x4p-128L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= yn upward ldbl-128ibm 10 0x4p-128L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= yn downward dbl-64 10 0x4p-1024 : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest dbl-64 10 0x4p-1024 : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero dbl-64 10 0x4p-1024 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= yn upward dbl-64 10 0x4p-1024 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= yn downward ldbl-96-intel 10 0x4p-1024L : -0x7.0cd12a7e8cbbf66p+10244L : inexact-ok
+= yn tonearest ldbl-96-intel 10 0x4p-1024L : -0x7.0cd12a7e8cbbf66p+10244L : inexact-ok
+= yn towardzero ldbl-96-intel 10 0x4p-1024L : -0x7.0cd12a7e8cbbf658p+10244L : inexact-ok
+= yn upward ldbl-96-intel 10 0x4p-1024L : -0x7.0cd12a7e8cbbf658p+10244L : inexact-ok
+= yn downward ldbl-96-m68k 10 0x4p-1024L : -0x7.0cd12a7e8cbbf66p+10244L : inexact-ok
+= yn tonearest ldbl-96-m68k 10 0x4p-1024L : -0x7.0cd12a7e8cbbf66p+10244L : inexact-ok
+= yn towardzero ldbl-96-m68k 10 0x4p-1024L : -0x7.0cd12a7e8cbbf658p+10244L : inexact-ok
+= yn upward ldbl-96-m68k 10 0x4p-1024L : -0x7.0cd12a7e8cbbf658p+10244L : inexact-ok
+= yn downward ldbl-128 10 0x4p-1024L : -0x7.0cd12a7e8cbbf65ff367b18a1e78p+10244L : inexact-ok
+= yn tonearest ldbl-128 10 0x4p-1024L : -0x7.0cd12a7e8cbbf65ff367b18a1e78p+10244L : inexact-ok
+= yn towardzero ldbl-128 10 0x4p-1024L : -0x7.0cd12a7e8cbbf65ff367b18a1e74p+10244L : inexact-ok
+= yn upward ldbl-128 10 0x4p-1024L : -0x7.0cd12a7e8cbbf65ff367b18a1e74p+10244L : inexact-ok
+= yn downward ldbl-128ibm 10 0x4p-1024L : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest ldbl-128ibm 10 0x4p-1024L : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero ldbl-128ibm 10 0x4p-1024L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= yn upward ldbl-128ibm 10 0x4p-1024L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= yn downward ldbl-96-intel 10 0x4p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest ldbl-96-intel 10 0x4p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero ldbl-96-intel 10 0x4p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= yn upward ldbl-96-intel 10 0x4p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= yn downward ldbl-96-m68k 10 0x4p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest ldbl-96-m68k 10 0x4p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero ldbl-96-m68k 10 0x4p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= yn upward ldbl-96-m68k 10 0x4p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= yn downward ldbl-128 10 0x4p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest ldbl-128 10 0x4p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero ldbl-128 10 0x4p-16384L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= yn upward ldbl-128 10 0x4p-16384L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= yn downward ldbl-96-intel 10 0x2p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest ldbl-96-intel 10 0x2p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero ldbl-96-intel 10 0x2p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= yn upward ldbl-96-intel 10 0x2p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= yn downward ldbl-96-m68k 10 0x2p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest ldbl-96-m68k 10 0x2p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero ldbl-96-m68k 10 0x2p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= yn upward ldbl-96-m68k 10 0x2p-16384L : -0xf.fffffffffffffffp+16380L : inexact-ok overflow errno-erange-ok
+= yn downward ldbl-128 10 0x2p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest ldbl-128 10 0x2p-16384L : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero ldbl-128 10 0x2p-16384L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= yn upward ldbl-128 10 0x2p-16384L : -0xf.fffffffffffffffffffffffffff8p+16380L : inexact-ok overflow errno-erange-ok
+= yn downward dbl-64 10 0x8p-972 : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest dbl-64 10 0x8p-972 : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero dbl-64 10 0x8p-972 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= yn upward dbl-64 10 0x8p-972 : -0xf.ffffffffffff8p+1020 : inexact-ok overflow errno-erange-ok
+= yn downward ldbl-96-intel 10 0x8p-972L : -0x1.c3344a9fa32efd98p+9716L : inexact-ok
+= yn tonearest ldbl-96-intel 10 0x8p-972L : -0x1.c3344a9fa32efd98p+9716L : inexact-ok
+= yn towardzero ldbl-96-intel 10 0x8p-972L : -0x1.c3344a9fa32efd96p+9716L : inexact-ok
+= yn upward ldbl-96-intel 10 0x8p-972L : -0x1.c3344a9fa32efd96p+9716L : inexact-ok
+= yn downward ldbl-96-m68k 10 0x8p-972L : -0x1.c3344a9fa32efd98p+9716L : inexact-ok
+= yn tonearest ldbl-96-m68k 10 0x8p-972L : -0x1.c3344a9fa32efd98p+9716L : inexact-ok
+= yn towardzero ldbl-96-m68k 10 0x8p-972L : -0x1.c3344a9fa32efd96p+9716L : inexact-ok
+= yn upward ldbl-96-m68k 10 0x8p-972L : -0x1.c3344a9fa32efd96p+9716L : inexact-ok
+= yn downward ldbl-128 10 0x8p-972L : -0x1.c3344a9fa32efd97fcd9ec62879ep+9716L : inexact-ok
+= yn tonearest ldbl-128 10 0x8p-972L : -0x1.c3344a9fa32efd97fcd9ec62879ep+9716L : inexact-ok
+= yn towardzero ldbl-128 10 0x8p-972L : -0x1.c3344a9fa32efd97fcd9ec62879dp+9716L : inexact-ok
+= yn upward ldbl-128 10 0x8p-972L : -0x1.c3344a9fa32efd97fcd9ec62879dp+9716L : inexact-ok
+= yn downward ldbl-128ibm 10 0x8p-972L : minus_infty : inexact-ok overflow errno-erange
+= yn tonearest ldbl-128ibm 10 0x8p-972L : minus_infty : inexact-ok overflow errno-erange
+= yn towardzero ldbl-128ibm 10 0x8p-972L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+= yn upward ldbl-128ibm 10 0x8p-972L : -0xf.ffffffffffffbffffffffffffcp+1020L : inexact-ok overflow errno-erange-ok
+yn 2 0x1.ffff62p+99
+= yn downward flt-32 2 0xf.fffb1p+96f : -0x2.7cecbcp-52f : inexact-ok
+= yn tonearest flt-32 2 0xf.fffb1p+96f : -0x2.7cecbcp-52f : inexact-ok
+= yn towardzero flt-32 2 0xf.fffb1p+96f : -0x2.7cecb8p-52f : inexact-ok
+= yn upward flt-32 2 0xf.fffb1p+96f : -0x2.7cecb8p-52f : inexact-ok
+= yn downward dbl-64 2 0xf.fffb1p+96 : -0x2.7cecbaa6c4456p-52 : inexact-ok
+= yn tonearest dbl-64 2 0xf.fffb1p+96 : -0x2.7cecbaa6c4456p-52 : inexact-ok
+= yn towardzero dbl-64 2 0xf.fffb1p+96 : -0x2.7cecbaa6c4454p-52 : inexact-ok
+= yn upward dbl-64 2 0xf.fffb1p+96 : -0x2.7cecbaa6c4454p-52 : inexact-ok
+= yn downward ldbl-96-intel 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a4p-52L : inexact-ok
+= yn tonearest ldbl-96-intel 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a4p-52L : inexact-ok
+= yn towardzero ldbl-96-intel 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558ap-52L : inexact-ok
+= yn upward ldbl-96-intel 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558ap-52L : inexact-ok
+= yn downward ldbl-96-m68k 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a4p-52L : inexact-ok
+= yn tonearest ldbl-96-m68k 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a4p-52L : inexact-ok
+= yn towardzero ldbl-96-m68k 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558ap-52L : inexact-ok
+= yn upward ldbl-96-m68k 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558ap-52L : inexact-ok
+= yn downward ldbl-128 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a2c58d6a9ee4dap-52L : inexact-ok
+= yn tonearest ldbl-128 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a2c58d6a9ee4d8p-52L : inexact-ok
+= yn towardzero ldbl-128 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a2c58d6a9ee4d8p-52L : inexact-ok
+= yn upward ldbl-128 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a2c58d6a9ee4d8p-52L : inexact-ok
+= yn downward ldbl-128ibm 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a2c58d6a9ee5p-52L : inexact-ok
+= yn tonearest ldbl-128ibm 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a2c58d6a9ee5p-52L : inexact-ok
+= yn towardzero ldbl-128ibm 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a2c58d6a9ee4p-52L : inexact-ok
+= yn upward ldbl-128ibm 2 0xf.fffb1p+96L : -0x2.7cecbaa6c44558a2c58d6a9ee4p-52L : inexact-ok
+yn 2 0x1p127
+= yn downward flt-32 2 0x8p+124f : 0x2.061838p-68f : inexact-ok
+= yn tonearest flt-32 2 0x8p+124f : 0x2.061838p-68f : inexact-ok
+= yn towardzero flt-32 2 0x8p+124f : 0x2.061838p-68f : inexact-ok
+= yn upward flt-32 2 0x8p+124f : 0x2.06183cp-68f : inexact-ok
+= yn downward dbl-64 2 0x8p+124 : 0x2.0618385b757ecp-68 : inexact-ok
+= yn tonearest dbl-64 2 0x8p+124 : 0x2.0618385b757eep-68 : inexact-ok
+= yn towardzero dbl-64 2 0x8p+124 : 0x2.0618385b757ecp-68 : inexact-ok
+= yn upward dbl-64 2 0x8p+124 : 0x2.0618385b757eep-68 : inexact-ok
+= yn downward ldbl-96-intel 2 0x8p+124L : 0x2.0618385b757edd98p-68L : inexact-ok
+= yn tonearest ldbl-96-intel 2 0x8p+124L : 0x2.0618385b757edd9cp-68L : inexact-ok
+= yn towardzero ldbl-96-intel 2 0x8p+124L : 0x2.0618385b757edd98p-68L : inexact-ok
+= yn upward ldbl-96-intel 2 0x8p+124L : 0x2.0618385b757edd9cp-68L : inexact-ok
+= yn downward ldbl-96-m68k 2 0x8p+124L : 0x2.0618385b757edd98p-68L : inexact-ok
+= yn tonearest ldbl-96-m68k 2 0x8p+124L : 0x2.0618385b757edd9cp-68L : inexact-ok
+= yn towardzero ldbl-96-m68k 2 0x8p+124L : 0x2.0618385b757edd98p-68L : inexact-ok
+= yn upward ldbl-96-m68k 2 0x8p+124L : 0x2.0618385b757edd9cp-68L : inexact-ok
+= yn downward ldbl-128 2 0x8p+124L : 0x2.0618385b757edd9be9bff5eefacap-68L : inexact-ok
+= yn tonearest ldbl-128 2 0x8p+124L : 0x2.0618385b757edd9be9bff5eefaccp-68L : inexact-ok
+= yn towardzero ldbl-128 2 0x8p+124L : 0x2.0618385b757edd9be9bff5eefacap-68L : inexact-ok
+= yn upward ldbl-128 2 0x8p+124L : 0x2.0618385b757edd9be9bff5eefaccp-68L : inexact-ok
+= yn downward ldbl-128ibm 2 0x8p+124L : 0x2.0618385b757edd9be9bff5eefap-68L : inexact-ok
+= yn tonearest ldbl-128ibm 2 0x8p+124L : 0x2.0618385b757edd9be9bff5eefbp-68L : inexact-ok
+= yn towardzero ldbl-128ibm 2 0x8p+124L : 0x2.0618385b757edd9be9bff5eefap-68L : inexact-ok
+= yn upward ldbl-128ibm 2 0x8p+124L : 0x2.0618385b757edd9be9bff5eefbp-68L : inexact-ok
+yn 2 0x1p1023
+= yn downward flt-32 2 0xf.fffffp+124f : 0xc.69477p-68f : inexact-ok
+= yn tonearest flt-32 2 0xf.fffffp+124f : 0xc.69477p-68f : inexact-ok
+= yn towardzero flt-32 2 0xf.fffffp+124f : 0xc.69477p-68f : inexact-ok
+= yn upward flt-32 2 0xf.fffffp+124f : 0xc.69478p-68f : inexact-ok
+= yn downward dbl-64 2 0xf.fffffp+124 : 0xc.6947737b05898p-68 : inexact-ok
+= yn tonearest dbl-64 2 0xf.fffffp+124 : 0xc.6947737b05898p-68 : inexact-ok
+= yn towardzero dbl-64 2 0xf.fffffp+124 : 0xc.6947737b05898p-68 : inexact-ok
+= yn upward dbl-64 2 0xf.fffffp+124 : 0xc.6947737b058ap-68 : inexact-ok
+= yn downward ldbl-96-intel 2 0xf.fffffp+124L : 0xc.6947737b0589955p-68L : inexact-ok
+= yn tonearest ldbl-96-intel 2 0xf.fffffp+124L : 0xc.6947737b0589956p-68L : inexact-ok
+= yn towardzero ldbl-96-intel 2 0xf.fffffp+124L : 0xc.6947737b0589955p-68L : inexact-ok
+= yn upward ldbl-96-intel 2 0xf.fffffp+124L : 0xc.6947737b0589956p-68L : inexact-ok
+= yn downward ldbl-96-m68k 2 0xf.fffffp+124L : 0xc.6947737b0589955p-68L : inexact-ok
+= yn tonearest ldbl-96-m68k 2 0xf.fffffp+124L : 0xc.6947737b0589956p-68L : inexact-ok
+= yn towardzero ldbl-96-m68k 2 0xf.fffffp+124L : 0xc.6947737b0589955p-68L : inexact-ok
+= yn upward ldbl-96-m68k 2 0xf.fffffp+124L : 0xc.6947737b0589956p-68L : inexact-ok
+= yn downward ldbl-128 2 0xf.fffffp+124L : 0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= yn tonearest ldbl-128 2 0xf.fffffp+124L : 0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= yn towardzero ldbl-128 2 0xf.fffffp+124L : 0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= yn upward ldbl-128 2 0xf.fffffp+124L : 0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= yn downward ldbl-128ibm 2 0xf.fffffp+124L : 0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= yn tonearest ldbl-128ibm 2 0xf.fffffp+124L : 0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= yn towardzero ldbl-128ibm 2 0xf.fffffp+124L : 0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= yn upward ldbl-128ibm 2 0xf.fffffp+124L : 0xc.6947737b0589955c345238216cp-68L : inexact-ok
+= yn downward dbl-64 2 0x8p+1020 : -0x1.1bd10e60877e3p-512 : inexact-ok
+= yn tonearest dbl-64 2 0x8p+1020 : -0x1.1bd10e60877e3p-512 : inexact-ok
+= yn towardzero dbl-64 2 0x8p+1020 : -0x1.1bd10e60877e2p-512 : inexact-ok
+= yn upward dbl-64 2 0x8p+1020 : -0x1.1bd10e60877e2p-512 : inexact-ok
+= yn downward ldbl-96-intel 2 0x8p+1020L : -0x1.1bd10e60877e2ce4p-512L : inexact-ok
+= yn tonearest ldbl-96-intel 2 0x8p+1020L : -0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= yn towardzero ldbl-96-intel 2 0x8p+1020L : -0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= yn upward ldbl-96-intel 2 0x8p+1020L : -0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= yn downward ldbl-96-m68k 2 0x8p+1020L : -0x1.1bd10e60877e2ce4p-512L : inexact-ok
+= yn tonearest ldbl-96-m68k 2 0x8p+1020L : -0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= yn towardzero ldbl-96-m68k 2 0x8p+1020L : -0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= yn upward ldbl-96-m68k 2 0x8p+1020L : -0x1.1bd10e60877e2ce2p-512L : inexact-ok
+= yn downward ldbl-128 2 0x8p+1020L : -0x1.1bd10e60877e2ce21eee868f9699p-512L : inexact-ok
+= yn tonearest ldbl-128 2 0x8p+1020L : -0x1.1bd10e60877e2ce21eee868f9699p-512L : inexact-ok
+= yn towardzero ldbl-128 2 0x8p+1020L : -0x1.1bd10e60877e2ce21eee868f9698p-512L : inexact-ok
+= yn upward ldbl-128 2 0x8p+1020L : -0x1.1bd10e60877e2ce21eee868f9698p-512L : inexact-ok
+= yn downward ldbl-128ibm 2 0x8p+1020L : -0x1.1bd10e60877e2ce21eee868f97p-512L : inexact-ok
+= yn tonearest ldbl-128ibm 2 0x8p+1020L : -0x1.1bd10e60877e2ce21eee868f968p-512L : inexact-ok
+= yn towardzero ldbl-128ibm 2 0x8p+1020L : -0x1.1bd10e60877e2ce21eee868f968p-512L : inexact-ok
+= yn upward ldbl-128ibm 2 0x8p+1020L : -0x1.1bd10e60877e2ce21eee868f968p-512L : inexact-ok
+yn 2 0x1p16383
+= yn downward flt-32 2 0xf.fffffp+124f : 0xc.69477p-68f : inexact-ok
+= yn tonearest flt-32 2 0xf.fffffp+124f : 0xc.69477p-68f : inexact-ok
+= yn towardzero flt-32 2 0xf.fffffp+124f : 0xc.69477p-68f : inexact-ok
+= yn upward flt-32 2 0xf.fffffp+124f : 0xc.69478p-68f : inexact-ok
+= yn downward dbl-64 2 0xf.fffffp+124 : 0xc.6947737b05898p-68 : inexact-ok
+= yn tonearest dbl-64 2 0xf.fffffp+124 : 0xc.6947737b05898p-68 : inexact-ok
+= yn towardzero dbl-64 2 0xf.fffffp+124 : 0xc.6947737b05898p-68 : inexact-ok
+= yn upward dbl-64 2 0xf.fffffp+124 : 0xc.6947737b058ap-68 : inexact-ok
+= yn downward ldbl-96-intel 2 0xf.fffffp+124L : 0xc.6947737b0589955p-68L : inexact-ok
+= yn tonearest ldbl-96-intel 2 0xf.fffffp+124L : 0xc.6947737b0589956p-68L : inexact-ok
+= yn towardzero ldbl-96-intel 2 0xf.fffffp+124L : 0xc.6947737b0589955p-68L : inexact-ok
+= yn upward ldbl-96-intel 2 0xf.fffffp+124L : 0xc.6947737b0589956p-68L : inexact-ok
+= yn downward ldbl-96-m68k 2 0xf.fffffp+124L : 0xc.6947737b0589955p-68L : inexact-ok
+= yn tonearest ldbl-96-m68k 2 0xf.fffffp+124L : 0xc.6947737b0589956p-68L : inexact-ok
+= yn towardzero ldbl-96-m68k 2 0xf.fffffp+124L : 0xc.6947737b0589955p-68L : inexact-ok
+= yn upward ldbl-96-m68k 2 0xf.fffffp+124L : 0xc.6947737b0589956p-68L : inexact-ok
+= yn downward ldbl-128 2 0xf.fffffp+124L : 0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= yn tonearest ldbl-128 2 0xf.fffffp+124L : 0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= yn towardzero ldbl-128 2 0xf.fffffp+124L : 0xc.6947737b0589955c34523821683p-68L : inexact-ok
+= yn upward ldbl-128 2 0xf.fffffp+124L : 0xc.6947737b0589955c345238216838p-68L : inexact-ok
+= yn downward ldbl-128ibm 2 0xf.fffffp+124L : 0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= yn tonearest ldbl-128ibm 2 0xf.fffffp+124L : 0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= yn towardzero ldbl-128ibm 2 0xf.fffffp+124L : 0xc.6947737b0589955c3452382168p-68L : inexact-ok
+= yn upward ldbl-128ibm 2 0xf.fffffp+124L : 0xc.6947737b0589955c345238216cp-68L : inexact-ok
+= yn downward dbl-64 2 0xf.ffffffffffff8p+1020 : -0x9.125bd8436acc8p-516 : inexact-ok
+= yn tonearest dbl-64 2 0xf.ffffffffffff8p+1020 : -0x9.125bd8436accp-516 : inexact-ok
+= yn towardzero dbl-64 2 0xf.ffffffffffff8p+1020 : -0x9.125bd8436accp-516 : inexact-ok
+= yn upward dbl-64 2 0xf.ffffffffffff8p+1020 : -0x9.125bd8436accp-516 : inexact-ok
+= yn downward ldbl-96-intel 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc226p-516L : inexact-ok
+= yn tonearest ldbl-96-intel 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc226p-516L : inexact-ok
+= yn towardzero ldbl-96-intel 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225p-516L : inexact-ok
+= yn upward ldbl-96-intel 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225p-516L : inexact-ok
+= yn downward ldbl-96-m68k 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc226p-516L : inexact-ok
+= yn tonearest ldbl-96-m68k 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc226p-516L : inexact-ok
+= yn towardzero ldbl-96-m68k 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225p-516L : inexact-ok
+= yn upward ldbl-96-m68k 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225p-516L : inexact-ok
+= yn downward ldbl-128 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225eb7a1cfb5fa5p-516L : inexact-ok
+= yn tonearest ldbl-128 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= yn towardzero ldbl-128 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= yn upward ldbl-128 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225eb7a1cfb5fa48p-516L : inexact-ok
+= yn downward ldbl-128ibm 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225eb7a1cfb5fcp-516L : inexact-ok
+= yn tonearest ldbl-128ibm 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225eb7a1cfb5fcp-516L : inexact-ok
+= yn towardzero ldbl-128ibm 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225eb7a1cfb5f8p-516L : inexact-ok
+= yn upward ldbl-128ibm 2 0xf.ffffffffffff8p+1020L : -0x9.125bd8436acc225eb7a1cfb5f8p-516L : inexact-ok
+= yn downward ldbl-96-intel 2 0x8p+16380L : 0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= yn tonearest ldbl-96-intel 2 0x8p+16380L : 0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= yn towardzero ldbl-96-intel 2 0x8p+16380L : 0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= yn upward ldbl-96-intel 2 0x8p+16380L : 0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= yn downward ldbl-96-m68k 2 0x8p+16380L : 0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= yn tonearest ldbl-96-m68k 2 0x8p+16380L : 0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= yn towardzero ldbl-96-m68k 2 0x8p+16380L : 0x6.c9bcc4d4937a3068p-8196L : inexact-ok
+= yn upward ldbl-96-m68k 2 0x8p+16380L : 0x6.c9bcc4d4937a307p-8196L : inexact-ok
+= yn downward ldbl-128 2 0x8p+16380L : 0x6.c9bcc4d4937a306ec1ef5722900cp-8196L : inexact-ok
+= yn tonearest ldbl-128 2 0x8p+16380L : 0x6.c9bcc4d4937a306ec1ef5722901p-8196L : inexact-ok
+= yn towardzero ldbl-128 2 0x8p+16380L : 0x6.c9bcc4d4937a306ec1ef5722900cp-8196L : inexact-ok
+= yn upward ldbl-128 2 0x8p+16380L : 0x6.c9bcc4d4937a306ec1ef5722901p-8196L : inexact-ok
+= yn downward ldbl-128 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= yn tonearest ldbl-128 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= yn towardzero ldbl-128 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0x5.34b8be56c9cb044a0ef191b0251p-516L : inexact-ok
+= yn upward ldbl-128 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0x5.34b8be56c9cb044a0ef191b02514p-516L : inexact-ok
+= yn downward ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+= yn tonearest ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
+= yn towardzero ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0x5.34b8be56c9cb044a0ef191b024p-516L : inexact-ok
+= yn upward ldbl-128ibm 2 0xf.ffffffffffffbffffffffffffcp+1020L : 0x5.34b8be56c9cb044a0ef191b026p-516L : inexact-ok
diff --git a/math/fegetround.c b/math/fegetround.c
index 24bbd16097..140e698480 100644
--- a/math/fegetround.c
+++ b/math/fegetround.c
@@ -28,4 +28,5 @@ fegetround (void)
return 0;
#endif
}
+libm_hidden_def (fegetround)
stub_warning (fegetround)
diff --git a/math/gen-auto-libm-tests.c b/math/gen-auto-libm-tests.c
new file mode 100644
index 0000000000..0201b8ae8b
--- /dev/null
+++ b/math/gen-auto-libm-tests.c
@@ -0,0 +1,1957 @@
+/* Generate expected output for libm tests with MPFR and MPC.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Compile this program as:
+
+ gcc -std=gnu99 -O2 -Wall -Wextra gen-auto-libm-tests.c -lmpc -lmpfr -lgmp \
+ -o gen-auto-libm-tests
+
+ (use of current MPC and MPFR versions recommended) and run it as:
+
+ gen-auto-libm-tests auto-libm-test-in auto-libm-test-out
+
+ The input file auto-libm-test-in contains three kinds of lines:
+
+ Lines beginning with "#" are comments, and are ignored, as are
+ empty lines.
+
+ Other lines are test lines, of the form "function input1 input2
+ ... [flag1 flag2 ...]". Inputs are either finite real numbers or
+ integers, depending on the function under test. Real numbers may
+ be in any form acceptable to mpfr_strtofr (base 0); integers in any
+ form acceptable to mpz_set_str (base 0). In addition, real numbers
+ may be certain special strings such as "pi", as listed in the
+ special_real_inputs array.
+
+ Each flag is a flag name possibly followed by a series of
+ ":condition". Conditions may be any of the names of floating-point
+ formats in the floating_point_formats array, "long32" and "long64"
+ to indicate the number of bits in the "long" type, or other strings
+ for which libm-test.inc defines a TEST_COND_<condition> macro (with
+ "-"- changed to "_" in the condition name) evaluating to nonzero
+ when the condition is true and zero when the condition is false.
+ The meaning is that the flag applies to the test if all the listed
+ conditions are true. "flag:cond1:cond2 flag:cond3:cond4" means the
+ flag applies if ((cond1 && cond2) || (cond3 && cond4)).
+
+ A real number specified as an input is considered to represent the
+ set of real numbers arising from rounding the given number in any
+ direction for any supported floating-point format; any roundings
+ that give infinity are ignored. Each input on a test line has all
+ the possible roundings considered independently. Each resulting
+ choice of the tuple of inputs to the function is ignored if the
+ mathematical result of the function involves a NaN or an exact
+ infinity, and is otherwise considered for each floating-point
+ format for which all those inputs are exactly representable. Thus
+ tests may result in "overflow", "underflow" and "inexact"
+ exceptions; "invalid" may arise only when the final result type is
+ an integer type and it is the conversion of a mathematically
+ defined finite result to integer type that results in that
+ exception.
+
+ By default, it is assumed that "overflow" and "underflow"
+ exceptions should be correct, but that "inexact" exceptions should
+ only be correct for functions listed as exactly determined. For
+ such functions, "underflow" exceptions should respect whether the
+ machine has before-rounding or after-rounding tininess detection.
+ For other functions, it is considered that if the exact result is
+ somewhere between the greatest magnitude subnormal of a given sign
+ (exclusive) and the least magnitude normal of that sign
+ (inclusive), underflow exceptions are permitted but optional on all
+ machines, and they are also permitted but optional for smaller
+ subnormal exact results for functions that are not exactly
+ determined. errno setting is expected for overflow to infinity and
+ underflow to zero (for real functions), and for out-of-range
+ conversion of a finite result to integer type, and is considered
+ permitted but optional for all other cases where overflow
+ exceptions occur, and where underflow exceptions occur or are
+ permitted. In other cases (where no overflow or underflow is
+ permitted), errno is expected to be left unchanged.
+
+ The flag "no-test-inline" indicates a test is disabled for inline
+ function testing; "xfail" indicates the test is disabled as
+ expected to produce incorrect results, "xfail-rounding" indicates
+ the test is disabled only in rounding modes other than
+ round-to-nearest. Otherwise, test flags are of the form
+ "spurious-<exception>" and "missing-<exception>", for any exception
+ ("overflow", "underflow", "inexact", "invalid", "divbyzero"),
+ "spurious-errno" and "missing-errno", to indicate when tests are
+ expected to deviate from the exception and errno settings
+ corresponding to the mathematical results. "xfail",
+ "xfail-rounding", "spurious-" and "missing-" flags should be
+ accompanied by a comment referring to an open bug in glibc
+ Bugzilla.
+
+ The output file auto-libm-test-out contains the test lines from
+ auto-libm-test-in, and, after the line for a given test, some
+ number of output test lines. An output test line is of the form "=
+ function rounding-mode format input1 input2 ... : output1 output2
+ ... : flags". rounding-mode is "tonearest", "towardzero", "upward"
+ or "downward". format is a name from the floating_point_formats
+ array, possibly followed by a sequence of ":flag" for flags from
+ "long32", "long64", "before-rounding" and "after-rounding" (the
+ last two indicating tests where expectations for underflow
+ exceptions depend on how the architecture detects tininess).
+ Inputs and outputs are specified as hex floats with the required
+ suffix for the floating-point type, or plus_infty or minus_infty
+ for infinite expected results, or as integer constant expressions
+ (not necessarily with the right type) or IGNORE for integer inputs
+ and outputs. Flags are "no-test-inline", "xfail", "<exception>",
+ "<exception>-ok", "errno-<value>", "errno-<value>-ok", where
+ "<exception>" and "errno-<value>" are unconditional, indicating
+ that a correct result means the given exception should be raised or
+ errno should be set to the given value, and other settings may be
+ conditional or unconditional; "-ok" means not to test for the given
+ exception or errno value (whether because it was marked as possibly
+ missing or spurious, or because the calculation of correct results
+ indicated it was optional). */
+
+#define _GNU_SOURCE
+
+#include <assert.h>
+#include <ctype.h>
+#include <errno.h>
+#include <error.h>
+#include <stdbool.h>
+#include <stdint.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <gmp.h>
+#include <mpfr.h>
+#include <mpc.h>
+
+#define ARRAY_SIZE(A) (sizeof (A) / sizeof ((A)[0]))
+
+/* The supported floating-point formats. */
+typedef enum
+ {
+ fp_flt_32,
+ fp_dbl_64,
+ fp_ldbl_96_intel,
+ fp_ldbl_96_m68k,
+ fp_ldbl_128,
+ fp_ldbl_128ibm,
+ fp_num_formats,
+ fp_first_format = 0
+ } fp_format;
+
+/* Structure describing a single floating-point format. */
+typedef struct
+{
+ /* The name of the format. */
+ const char *name;
+ /* The suffix to use on floating-point constants with this
+ format. */
+ const char *suffix;
+ /* A string for the largest normal value, or NULL for IEEE formats
+ where this can be determined automatically. */
+ const char *max_string;
+ /* The number of mantissa bits. */
+ int mant_dig;
+ /* The least N such that 2^N overflows. */
+ int max_exp;
+ /* One more than the least N such that 2^N is normal. */
+ int min_exp;
+ /* The largest normal value. */
+ mpfr_t max;
+ /* The least positive normal value, 2^(MIN_EXP-1). */
+ mpfr_t min;
+ /* The greatest positive subnormal value. */
+ mpfr_t subnorm_max;
+ /* The least positive subnormal value, 2^(MIN_EXP-MANT_DIG). */
+ mpfr_t subnorm_min;
+} fp_format_desc;
+
+/* List of floating-point formats, in the same order as the fp_format
+ enumeration. */
+static fp_format_desc fp_formats[fp_num_formats] =
+ {
+ { "flt-32", "f", NULL, 24, 128, -125, {}, {}, {}, {} },
+ { "dbl-64", "", NULL, 53, 1024, -1021, {}, {}, {}, {} },
+ { "ldbl-96-intel", "L", NULL, 64, 16384, -16381, {}, {}, {}, {} },
+ { "ldbl-96-m68k", "L", NULL, 64, 16384, -16382, {}, {}, {}, {} },
+ { "ldbl-128", "L", NULL, 113, 16384, -16381, {}, {}, {}, {} },
+ { "ldbl-128ibm", "L", "0x1.fffffffffffff7ffffffffffff8p+1023",
+ 106, 1024, -968, {}, {}, {}, {} },
+ };
+
+/* The supported rounding modes. */
+typedef enum
+ {
+ rm_downward,
+ rm_tonearest,
+ rm_towardzero,
+ rm_upward,
+ rm_num_modes,
+ rm_first_mode = 0
+ } rounding_mode;
+
+/* Structure describing a single rounding mode. */
+typedef struct
+{
+ /* The name of the rounding mode. */
+ const char *name;
+ /* The MPFR rounding mode. */
+ mpfr_rnd_t mpfr_mode;
+} rounding_mode_desc;
+
+/* List of rounding modes, in the same order as the rounding_mode
+ enumeration. */
+static const rounding_mode_desc rounding_modes[rm_num_modes] =
+ {
+ { "downward", MPFR_RNDD },
+ { "tonearest", MPFR_RNDN },
+ { "towardzero", MPFR_RNDZ },
+ { "upward", MPFR_RNDU },
+ };
+
+/* The supported exceptions. */
+typedef enum
+ {
+ exc_divbyzero,
+ exc_inexact,
+ exc_invalid,
+ exc_overflow,
+ exc_underflow,
+ exc_num_exceptions,
+ exc_first_exception = 0
+ } fp_exception;
+
+/* List of exceptions, in the same order as the fp_exception
+ enumeration. */
+static const char *const exceptions[exc_num_exceptions] =
+ {
+ "divbyzero",
+ "inexact",
+ "invalid",
+ "overflow",
+ "underflow",
+ };
+
+/* The internal precision to use for most MPFR calculations, which
+ must be at least 2 more than the greatest precision of any
+ supported floating-point format. */
+static int internal_precision;
+
+/* A value that overflows all supported floating-point formats. */
+static mpfr_t global_max;
+
+/* A value that is at most half the least subnormal in any
+ floating-point format and so is rounded the same way as all
+ sufficiently small positive values. */
+static mpfr_t global_min;
+
+/* The maximum number of (real or integer) arguments to a function
+ handled by this program (complex arguments count as two real
+ arguments). */
+#define MAX_NARGS 4
+
+/* The maximum number of (real or integer) return values from a
+ function handled by this program. */
+#define MAX_NRET 2
+
+/* A type of a function argument or return value. */
+typedef enum
+ {
+ /* No type (not a valid argument or return value). */
+ type_none,
+ /* A floating-point value with the type corresponding to that of
+ the function. */
+ type_fp,
+ /* An integer value of type int. */
+ type_int,
+ /* An integer value of type long. */
+ type_long,
+ /* An integer value of type long long. */
+ type_long_long,
+ } arg_ret_type;
+
+/* A type of a generic real or integer value. */
+typedef enum
+ {
+ /* No type. */
+ gtype_none,
+ /* Floating-point (represented with MPFR). */
+ gtype_fp,
+ /* Integer (represented with GMP). */
+ gtype_int,
+ } generic_value_type;
+
+/* A generic value (argument or result). */
+typedef struct
+{
+ /* The type of this value. */
+ generic_value_type type;
+ /* Its value. */
+ union
+ {
+ mpfr_t f;
+ mpz_t i;
+ } value;
+} generic_value;
+
+/* A type of input flag. */
+typedef enum
+ {
+ flag_no_test_inline,
+ flag_xfail,
+ flag_xfail_rounding,
+ /* The "spurious" and "missing" flags must be in the same order as
+ the fp_exception enumeration. */
+ flag_spurious_divbyzero,
+ flag_spurious_inexact,
+ flag_spurious_invalid,
+ flag_spurious_overflow,
+ flag_spurious_underflow,
+ flag_spurious_errno,
+ flag_missing_divbyzero,
+ flag_missing_inexact,
+ flag_missing_invalid,
+ flag_missing_overflow,
+ flag_missing_underflow,
+ flag_missing_errno,
+ num_input_flag_types,
+ flag_first_flag = 0,
+ flag_spurious_first = flag_spurious_divbyzero,
+ flag_missing_first = flag_missing_divbyzero
+ } input_flag_type;
+
+/* List of flags, in the same order as the input_flag_type
+ enumeration. */
+static const char *const input_flags[num_input_flag_types] =
+ {
+ "no-test-inline",
+ "xfail",
+ "xfail-rounding",
+ "spurious-divbyzero",
+ "spurious-inexact",
+ "spurious-invalid",
+ "spurious-overflow",
+ "spurious-underflow",
+ "spurious-errno",
+ "missing-divbyzero",
+ "missing-inexact",
+ "missing-invalid",
+ "missing-overflow",
+ "missing-underflow",
+ "missing-errno",
+ };
+
+/* An input flag, possibly conditional. */
+typedef struct
+{
+ /* The type of this flag. */
+ input_flag_type type;
+ /* The conditions on this flag, as a string ":cond1:cond2..." or
+ NULL. */
+ const char *cond;
+} input_flag;
+
+/* Structure describing a single test from the input file (which may
+ expand into many tests in the output). The choice of function,
+ which implies the numbers and types of arguments and results, is
+ implicit rather than stored in this structure (except as part of
+ the source line). */
+typedef struct
+{
+ /* The text of the input line describing the test, including the
+ trailing newline. */
+ const char *line;
+ /* The number of combinations of interpretations of input values for
+ different floating-point formats and rounding modes. */
+ size_t num_input_cases;
+ /* The corresponding lists of inputs. */
+ generic_value **inputs;
+ /* The number of flags for this test. */
+ size_t num_flags;
+ /* The corresponding list of flags. */
+ input_flag *flags;
+ /* The old output for this test. */
+ const char *old_output;
+} input_test;
+
+/* Ways to calculate a function. */
+typedef enum
+ {
+ /* MPFR function with a single argument and result. */
+ mpfr_f_f,
+ /* MPFR function with two arguments and one result. */
+ mpfr_ff_f,
+ /* MPFR function with a single argument and floating-point and
+ integer results. */
+ mpfr_f_f1,
+ /* MPFR function with integer and floating-point arguments and one
+ result. */
+ mpfr_if_f,
+ /* MPFR function with a single argument and two floating-point
+ results. */
+ mpfr_f_11,
+ /* MPC function with a single complex argument and one real
+ result. */
+ mpc_c_f,
+ } func_calc_method;
+
+/* Description of how to calculate a function. */
+typedef struct
+{
+ /* Which method is used to calculate the function. */
+ func_calc_method method;
+ /* The specific function called. */
+ union
+ {
+ int (*mpfr_f_f) (mpfr_t, const mpfr_t, mpfr_rnd_t);
+ int (*mpfr_ff_f) (mpfr_t, const mpfr_t, const mpfr_t, mpfr_rnd_t);
+ int (*mpfr_f_f1) (mpfr_t, int *, const mpfr_t, mpfr_rnd_t);
+ int (*mpfr_if_f) (mpfr_t, long, const mpfr_t, mpfr_rnd_t);
+ int (*mpfr_f_11) (mpfr_t, mpfr_t, const mpfr_t, mpfr_rnd_t);
+ int (*mpc_c_f) (mpfr_t, const mpc_t, mpfr_rnd_t);
+ } func;
+} func_calc_desc;
+
+/* Structure describing a function handled by this program. */
+typedef struct
+{
+ /* The name of the function. */
+ const char *name;
+ /* The number of arguments. */
+ size_t num_args;
+ /* The types of the arguments. */
+ arg_ret_type arg_types[MAX_NARGS];
+ /* The number of return values. */
+ size_t num_ret;
+ /* The types of the return values. */
+ arg_ret_type ret_types[MAX_NRET];
+ /* Whether the function has exactly determined results and
+ exceptions. */
+ bool exact;
+ /* Whether the function is a complex function, so errno setting is
+ optional. */
+ bool complex_fn;
+ /* How to calculate this function. */
+ func_calc_desc calc;
+ /* The number of tests allocated for this function. */
+ size_t num_tests_alloc;
+ /* The number of tests for this function. */
+ size_t num_tests;
+ /* The tests themselves. */
+ input_test *tests;
+} test_function;
+
+#define ARGS1(T1) 1, { T1 }
+#define ARGS2(T1, T2) 2, { T1, T2 }
+#define ARGS3(T1, T2, T3) 3, { T1, T2, T3 }
+#define ARGS4(T1, T2, T3, T4) 4, { T1, T2, T3, T4 }
+#define RET1(T1) 1, { T1 }
+#define RET2(T1, T2) 2, { T1, T2 }
+#define CALC(TYPE, FN) { TYPE, { .TYPE = FN } }
+#define FUNC(NAME, ARGS, RET, EXACT, COMPLEX_FN, CALC) \
+ { \
+ NAME, ARGS, RET, EXACT, COMPLEX_FN, CALC, 0, 0, NULL \
+ }
+
+#define FUNC_mpfr_f_f(NAME, MPFR_FUNC, EXACT) \
+ FUNC (NAME, ARGS1 (type_fp), RET1 (type_fp), EXACT, false, \
+ CALC (mpfr_f_f, MPFR_FUNC))
+#define FUNC_mpfr_ff_f(NAME, MPFR_FUNC, EXACT) \
+ FUNC (NAME, ARGS2 (type_fp, type_fp), RET1 (type_fp), EXACT, false, \
+ CALC (mpfr_ff_f, MPFR_FUNC))
+#define FUNC_mpfr_if_f(NAME, MPFR_FUNC, EXACT) \
+ FUNC (NAME, ARGS2 (type_int, type_fp), RET1 (type_fp), EXACT, false, \
+ CALC (mpfr_if_f, MPFR_FUNC))
+#define FUNC_mpc_c_f(NAME, MPFR_FUNC, EXACT) \
+ FUNC (NAME, ARGS2 (type_fp, type_fp), RET1 (type_fp), EXACT, true, \
+ CALC (mpc_c_f, MPFR_FUNC))
+
+/* List of functions handled by this program. */
+static test_function test_functions[] =
+ {
+ FUNC_mpfr_f_f ("acos", mpfr_acos, false),
+ FUNC_mpfr_f_f ("acosh", mpfr_acosh, false),
+ FUNC_mpfr_f_f ("asin", mpfr_asin, false),
+ FUNC_mpfr_f_f ("asinh", mpfr_asinh, false),
+ FUNC_mpfr_f_f ("atan", mpfr_atan, false),
+ FUNC_mpfr_ff_f ("atan2", mpfr_atan2, false),
+ FUNC_mpfr_f_f ("atanh", mpfr_atanh, false),
+ FUNC_mpc_c_f ("cabs", mpc_abs, false),
+ FUNC_mpc_c_f ("carg", mpc_arg, false),
+ FUNC_mpfr_f_f ("cbrt", mpfr_cbrt, false),
+ FUNC_mpfr_f_f ("cos", mpfr_cos, false),
+ FUNC_mpfr_f_f ("cosh", mpfr_cosh, false),
+ FUNC_mpfr_f_f ("erf", mpfr_erf, false),
+ FUNC_mpfr_f_f ("erfc", mpfr_erfc, false),
+ FUNC_mpfr_f_f ("exp", mpfr_exp, false),
+ FUNC_mpfr_f_f ("exp10", mpfr_exp10, false),
+ FUNC_mpfr_f_f ("exp2", mpfr_exp2, false),
+ FUNC_mpfr_f_f ("expm1", mpfr_expm1, false),
+ FUNC_mpfr_ff_f ("hypot", mpfr_hypot, false),
+ FUNC_mpfr_f_f ("j0", mpfr_j0, false),
+ FUNC_mpfr_f_f ("j1", mpfr_j1, false),
+ FUNC_mpfr_if_f ("jn", mpfr_jn, false),
+ FUNC ("lgamma", ARGS1 (type_fp), RET2 (type_fp, type_int), false, false,
+ CALC (mpfr_f_f1, mpfr_lgamma)),
+ FUNC_mpfr_f_f ("log", mpfr_log, false),
+ FUNC_mpfr_f_f ("log10", mpfr_log10, false),
+ FUNC_mpfr_f_f ("log1p", mpfr_log1p, false),
+ FUNC_mpfr_f_f ("log2", mpfr_log2, false),
+ FUNC_mpfr_ff_f ("pow", mpfr_pow, false),
+ FUNC_mpfr_f_f ("sin", mpfr_sin, false),
+ FUNC ("sincos", ARGS1 (type_fp), RET2 (type_fp, type_fp), false, false,
+ CALC (mpfr_f_11, mpfr_sin_cos)),
+ FUNC_mpfr_f_f ("sinh", mpfr_sinh, false),
+ FUNC_mpfr_f_f ("sqrt", mpfr_sqrt, true),
+ FUNC_mpfr_f_f ("tan", mpfr_tan, false),
+ FUNC_mpfr_f_f ("tanh", mpfr_tanh, false),
+ FUNC_mpfr_f_f ("tgamma", mpfr_gamma, false),
+ FUNC_mpfr_f_f ("y0", mpfr_y0, false),
+ FUNC_mpfr_f_f ("y1", mpfr_y1, false),
+ FUNC_mpfr_if_f ("yn", mpfr_yn, false),
+ };
+
+/* Allocate memory, with error checking. */
+
+static void *
+xmalloc (size_t n)
+{
+ void *p = malloc (n);
+ if (p == NULL)
+ error (EXIT_FAILURE, errno, "xmalloc failed");
+ return p;
+}
+
+static void *
+xrealloc (void *p, size_t n)
+{
+ p = realloc (p, n);
+ if (p == NULL)
+ error (EXIT_FAILURE, errno, "xrealloc failed");
+ return p;
+}
+
+static char *
+xstrdup (const char *s)
+{
+ char *p = strdup (s);
+ if (p == NULL)
+ error (EXIT_FAILURE, errno, "xstrdup failed");
+ return p;
+}
+
+/* Assert that the result of an MPFR operation was exact; that is,
+ that the returned ternary value was 0. */
+
+static void
+assert_exact (int i)
+{
+ assert (i == 0);
+}
+
+/* Return the generic type of an argument or return value type T. */
+
+static generic_value_type
+generic_arg_ret_type (arg_ret_type t)
+{
+ switch (t)
+ {
+ case type_fp:
+ return gtype_fp;
+
+ case type_int:
+ case type_long:
+ case type_long_long:
+ return gtype_int;
+
+ default:
+ abort ();
+ }
+}
+
+/* Free a generic_value *V. */
+
+static void
+generic_value_free (generic_value *v)
+{
+ switch (v->type)
+ {
+ case gtype_fp:
+ mpfr_clear (v->value.f);
+ break;
+
+ case gtype_int:
+ mpz_clear (v->value.i);
+ break;
+
+ default:
+ abort ();
+ }
+}
+
+/* Copy a generic_value *SRC to *DEST. */
+
+static void
+generic_value_copy (generic_value *dest, const generic_value *src)
+{
+ dest->type = src->type;
+ switch (src->type)
+ {
+ case gtype_fp:
+ mpfr_init (dest->value.f);
+ assert_exact (mpfr_set (dest->value.f, src->value.f, MPFR_RNDN));
+ break;
+
+ case gtype_int:
+ mpz_init (dest->value.i);
+ mpz_set (dest->value.i, src->value.i);
+ break;
+
+ default:
+ abort ();
+ }
+}
+
+/* Initialize data for floating-point formats. */
+
+static void
+init_fp_formats ()
+{
+ int global_max_exp = 0, global_min_subnorm_exp = 0;
+ for (fp_format f = fp_first_format; f < fp_num_formats; f++)
+ {
+ if (fp_formats[f].mant_dig + 2 > internal_precision)
+ internal_precision = fp_formats[f].mant_dig + 2;
+ if (fp_formats[f].max_exp > global_max_exp)
+ global_max_exp = fp_formats[f].max_exp;
+ int min_subnorm_exp = fp_formats[f].min_exp - fp_formats[f].mant_dig;
+ if (min_subnorm_exp < global_min_subnorm_exp)
+ global_min_subnorm_exp = min_subnorm_exp;
+ mpfr_init2 (fp_formats[f].max, fp_formats[f].mant_dig);
+ if (fp_formats[f].max_string != NULL)
+ {
+ char *ep = NULL;
+ assert_exact (mpfr_strtofr (fp_formats[f].max,
+ fp_formats[f].max_string,
+ &ep, 0, MPFR_RNDN));
+ assert (*ep == 0);
+ }
+ else
+ {
+ assert_exact (mpfr_set_ui_2exp (fp_formats[f].max, 1,
+ fp_formats[f].max_exp,
+ MPFR_RNDN));
+ mpfr_nextbelow (fp_formats[f].max);
+ }
+ mpfr_init2 (fp_formats[f].min, fp_formats[f].mant_dig);
+ assert_exact (mpfr_set_ui_2exp (fp_formats[f].min, 1,
+ fp_formats[f].min_exp - 1,
+ MPFR_RNDN));
+ mpfr_init2 (fp_formats[f].subnorm_max, fp_formats[f].mant_dig);
+ assert_exact (mpfr_set (fp_formats[f].subnorm_max, fp_formats[f].min,
+ MPFR_RNDN));
+ mpfr_nextbelow (fp_formats[f].subnorm_max);
+ mpfr_nextbelow (fp_formats[f].subnorm_max);
+ mpfr_init2 (fp_formats[f].subnorm_min, fp_formats[f].mant_dig);
+ assert_exact (mpfr_set_ui_2exp (fp_formats[f].subnorm_min, 1,
+ min_subnorm_exp, MPFR_RNDN));
+ }
+ mpfr_set_default_prec (internal_precision);
+ mpfr_init (global_max);
+ assert_exact (mpfr_set_ui_2exp (global_max, 1, global_max_exp, MPFR_RNDN));
+ mpfr_init (global_min);
+ assert_exact (mpfr_set_ui_2exp (global_min, 1, global_min_subnorm_exp - 1,
+ MPFR_RNDN));
+}
+
+/* Fill in mpfr_t values for special strings in input arguments. */
+
+static size_t
+special_fill_max (mpfr_t res0, mpfr_t res1 __attribute__ ((unused)),
+ fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set (res0, fp_formats[format].max, MPFR_RNDN));
+ return 1;
+}
+
+static size_t
+special_fill_minus_max (mpfr_t res0, mpfr_t res1 __attribute__ ((unused)),
+ fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_neg (res0, fp_formats[format].max, MPFR_RNDN));
+ return 1;
+}
+
+static size_t
+special_fill_min (mpfr_t res0, mpfr_t res1 __attribute__ ((unused)),
+ fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set (res0, fp_formats[format].min, MPFR_RNDN));
+ return 1;
+}
+
+static size_t
+special_fill_minus_min (mpfr_t res0, mpfr_t res1 __attribute__ ((unused)),
+ fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_neg (res0, fp_formats[format].min, MPFR_RNDN));
+ return 1;
+}
+
+static size_t
+special_fill_min_subnorm (mpfr_t res0, mpfr_t res1 __attribute__ ((unused)),
+ fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set (res0, fp_formats[format].subnorm_min, MPFR_RNDN));
+ return 1;
+}
+
+static size_t
+special_fill_minus_min_subnorm (mpfr_t res0,
+ mpfr_t res1 __attribute__ ((unused)),
+ fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_neg (res0, fp_formats[format].subnorm_min, MPFR_RNDN));
+ return 1;
+}
+
+static size_t
+special_fill_pi (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ mpfr_const_pi (res0, MPFR_RNDU);
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ mpfr_const_pi (res1, MPFR_RNDD);
+ return 2;
+}
+
+static size_t
+special_fill_minus_pi (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ mpfr_const_pi (res0, MPFR_RNDU);
+ assert_exact (mpfr_neg (res0, res0, MPFR_RNDN));
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ mpfr_const_pi (res1, MPFR_RNDD);
+ assert_exact (mpfr_neg (res1, res1, MPFR_RNDN));
+ return 2;
+}
+
+static size_t
+special_fill_pi_2 (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ mpfr_const_pi (res0, MPFR_RNDU);
+ assert_exact (mpfr_div_ui (res0, res0, 2, MPFR_RNDN));
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ mpfr_const_pi (res1, MPFR_RNDD);
+ assert_exact (mpfr_div_ui (res1, res1, 2, MPFR_RNDN));
+ return 2;
+}
+
+static size_t
+special_fill_minus_pi_2 (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ mpfr_const_pi (res0, MPFR_RNDU);
+ assert_exact (mpfr_div_ui (res0, res0, 2, MPFR_RNDN));
+ assert_exact (mpfr_neg (res0, res0, MPFR_RNDN));
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ mpfr_const_pi (res1, MPFR_RNDD);
+ assert_exact (mpfr_div_ui (res1, res1, 2, MPFR_RNDN));
+ assert_exact (mpfr_neg (res1, res1, MPFR_RNDN));
+ return 2;
+}
+
+static size_t
+special_fill_pi_4 (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si (res0, 1, MPFR_RNDN));
+ mpfr_atan (res0, res0, MPFR_RNDU);
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si (res1, 1, MPFR_RNDN));
+ mpfr_atan (res1, res1, MPFR_RNDD);
+ return 2;
+}
+
+static size_t
+special_fill_pi_6 (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si_2exp (res0, 1, -1, MPFR_RNDN));
+ mpfr_asin (res0, res0, MPFR_RNDU);
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si_2exp (res1, 1, -1, MPFR_RNDN));
+ mpfr_asin (res1, res1, MPFR_RNDD);
+ return 2;
+}
+
+static size_t
+special_fill_minus_pi_6 (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si_2exp (res0, -1, -1, MPFR_RNDN));
+ mpfr_asin (res0, res0, MPFR_RNDU);
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si_2exp (res1, -1, -1, MPFR_RNDN));
+ mpfr_asin (res1, res1, MPFR_RNDD);
+ return 2;
+}
+
+static size_t
+special_fill_pi_3 (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si_2exp (res0, 1, -1, MPFR_RNDN));
+ mpfr_acos (res0, res0, MPFR_RNDU);
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si_2exp (res1, 1, -1, MPFR_RNDN));
+ mpfr_acos (res1, res1, MPFR_RNDD);
+ return 2;
+}
+
+static size_t
+special_fill_2pi_3 (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si_2exp (res0, -1, -1, MPFR_RNDN));
+ mpfr_acos (res0, res0, MPFR_RNDU);
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si_2exp (res1, -1, -1, MPFR_RNDN));
+ mpfr_acos (res1, res1, MPFR_RNDD);
+ return 2;
+}
+
+static size_t
+special_fill_e (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si (res0, 1, MPFR_RNDN));
+ mpfr_exp (res0, res0, MPFR_RNDU);
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si (res1, 1, MPFR_RNDN));
+ mpfr_exp (res1, res1, MPFR_RNDD);
+ return 2;
+}
+
+static size_t
+special_fill_1_e (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si (res0, -1, MPFR_RNDN));
+ mpfr_exp (res0, res0, MPFR_RNDU);
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si (res1, -1, MPFR_RNDN));
+ mpfr_exp (res1, res1, MPFR_RNDD);
+ return 2;
+}
+
+static size_t
+special_fill_e_minus_1 (mpfr_t res0, mpfr_t res1, fp_format format)
+{
+ mpfr_init2 (res0, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si (res0, 1, MPFR_RNDN));
+ mpfr_expm1 (res0, res0, MPFR_RNDU);
+ mpfr_init2 (res1, fp_formats[format].mant_dig);
+ assert_exact (mpfr_set_si (res1, 1, MPFR_RNDN));
+ mpfr_expm1 (res1, res1, MPFR_RNDD);
+ return 2;
+}
+
+/* A special string accepted in input arguments. */
+typedef struct
+{
+ /* The string. */
+ const char *str;
+ /* The function that interprets it for a given floating-point
+ format, filling in up to two mpfr_t values and returning the
+ number of values filled. */
+ size_t (*func) (mpfr_t, mpfr_t, fp_format);
+} special_real_input;
+
+/* List of special strings accepted in input arguments. */
+
+static const special_real_input special_real_inputs[] =
+ {
+ { "max", special_fill_max },
+ { "-max", special_fill_minus_max },
+ { "min", special_fill_min },
+ { "-min", special_fill_minus_min },
+ { "min_subnorm", special_fill_min_subnorm },
+ { "-min_subnorm", special_fill_minus_min_subnorm },
+ { "pi", special_fill_pi },
+ { "-pi", special_fill_minus_pi },
+ { "pi/2", special_fill_pi_2 },
+ { "-pi/2", special_fill_minus_pi_2 },
+ { "pi/4", special_fill_pi_4 },
+ { "pi/6", special_fill_pi_6 },
+ { "-pi/6", special_fill_minus_pi_6 },
+ { "pi/3", special_fill_pi_3 },
+ { "2pi/3", special_fill_2pi_3 },
+ { "e", special_fill_e },
+ { "1/e", special_fill_1_e },
+ { "e-1", special_fill_e_minus_1 },
+ };
+
+/* Given a real number R computed in round-to-zero mode, set the
+ lowest bit as a sticky bit if INEXACT, and saturate the exponent
+ range for very large or small values. */
+
+static void
+adjust_real (mpfr_t r, bool inexact)
+{
+ if (!inexact)
+ return;
+ /* NaNs are exact, as are infinities in round-to-zero mode. */
+ assert (mpfr_number_p (r));
+ if (mpfr_cmpabs (r, global_min) < 0)
+ assert_exact (mpfr_copysign (r, global_min, r, MPFR_RNDN));
+ else if (mpfr_cmpabs (r, global_max) > 0)
+ assert_exact (mpfr_copysign (r, global_max, r, MPFR_RNDN));
+ else
+ {
+ mpz_t tmp;
+ mpz_init (tmp);
+ mpfr_exp_t e = mpfr_get_z_2exp (tmp, r);
+ mpz_setbit (tmp, 0);
+ assert_exact (mpfr_set_z_2exp (r, tmp, e, MPFR_RNDN));
+ mpz_clear (tmp);
+ }
+}
+
+/* Given a finite real number R with sticky bit, compute the roundings
+ to FORMAT in each rounding mode, storing the results in RES, the
+ before-rounding exceptions in EXC_BEFORE and the after-rounding
+ exceptions in EXC_AFTER. */
+
+static void
+round_real (mpfr_t res[rm_num_modes],
+ unsigned int exc_before[rm_num_modes],
+ unsigned int exc_after[rm_num_modes],
+ mpfr_t r, fp_format format)
+{
+ assert (mpfr_number_p (r));
+ for (rounding_mode m = rm_first_mode; m < rm_num_modes; m++)
+ {
+ mpfr_init2 (res[m], fp_formats[format].mant_dig);
+ exc_before[m] = exc_after[m] = 0;
+ bool inexact = mpfr_set (res[m], r, rounding_modes[m].mpfr_mode);
+ if (mpfr_cmpabs (res[m], fp_formats[format].max) > 0)
+ {
+ inexact = true;
+ exc_before[m] |= 1U << exc_overflow;
+ exc_after[m] |= 1U << exc_overflow;
+ bool overflow_inf;
+ switch (m)
+ {
+ case rm_tonearest:
+ overflow_inf = true;
+ break;
+ case rm_towardzero:
+ overflow_inf = false;
+ break;
+ case rm_downward:
+ overflow_inf = mpfr_signbit (res[m]);
+ break;
+ case rm_upward:
+ overflow_inf = !mpfr_signbit (res[m]);
+ break;
+ default:
+ abort ();
+ }
+ if (overflow_inf)
+ mpfr_set_inf (res[m], mpfr_signbit (res[m]) ? -1 : 1);
+ else
+ assert_exact (mpfr_copysign (res[m], fp_formats[format].max,
+ res[m], MPFR_RNDN));
+ }
+ if (mpfr_cmpabs (r, fp_formats[format].min) < 0)
+ {
+ /* Tiny before rounding; may or may not be tiny after
+ rounding, and underflow applies only if also inexact
+ around rounding to a possibly subnormal value. */
+ bool tiny_after_rounding
+ = mpfr_cmpabs (res[m], fp_formats[format].min) < 0;
+ /* To round to a possibly subnormal value, and determine
+ inexactness as a subnormal in the process, scale up and
+ round to integer, then scale back down. */
+ mpfr_t tmp;
+ mpfr_init (tmp);
+ assert_exact (mpfr_mul_2si (tmp, r, (fp_formats[format].mant_dig
+ - fp_formats[format].min_exp),
+ MPFR_RNDN));
+ int rint_res = mpfr_rint (tmp, tmp, rounding_modes[m].mpfr_mode);
+ /* The integer must be representable. */
+ assert (rint_res == 0 || rint_res == 2 || rint_res == -2);
+ /* If rounding to full precision was inexact, so must
+ rounding to subnormal precision be inexact. */
+ if (inexact)
+ assert (rint_res != 0);
+ else
+ inexact = rint_res != 0;
+ assert_exact (mpfr_mul_2si (res[m], tmp,
+ (fp_formats[format].min_exp
+ - fp_formats[format].mant_dig),
+ MPFR_RNDN));
+ mpfr_clear (tmp);
+ if (inexact)
+ {
+ exc_before[m] |= 1U << exc_underflow;
+ if (tiny_after_rounding)
+ exc_after[m] |= 1U << exc_underflow;
+ }
+ }
+ if (inexact)
+ {
+ exc_before[m] |= 1U << exc_inexact;
+ exc_after[m] |= 1U << exc_inexact;
+ }
+ }
+}
+
+/* Handle the input argument at ARG (NUL-terminated), updating the
+ lists of test inputs in IT accordingly. NUM_PREV_ARGS arguments
+ are already in those lists. The argument, of type GTYPE, comes
+ from file FILENAME, line LINENO. */
+
+static void
+handle_input_arg (const char *arg, input_test *it, size_t num_prev_args,
+ generic_value_type gtype,
+ const char *filename, unsigned int lineno)
+{
+ size_t num_values = 0;
+ generic_value values[2 * fp_num_formats];
+ switch (gtype)
+ {
+ case gtype_fp:
+ for (fp_format f = fp_first_format; f < fp_num_formats; f++)
+ {
+ mpfr_t extra_values[2];
+ size_t num_extra_values = 0;
+ for (size_t i = 0; i < ARRAY_SIZE (special_real_inputs); i++)
+ {
+ if (strcmp (arg, special_real_inputs[i].str) == 0)
+ {
+ num_extra_values
+ = special_real_inputs[i].func (extra_values[0],
+ extra_values[1], f);
+ assert (num_extra_values > 0
+ && num_extra_values <= ARRAY_SIZE (extra_values));
+ break;
+ }
+ }
+ if (num_extra_values == 0)
+ {
+ mpfr_t tmp;
+ char *ep;
+ mpfr_init (tmp);
+ bool inexact = mpfr_strtofr (tmp, arg, &ep, 0, MPFR_RNDZ);
+ if (*ep != 0 || !mpfr_number_p (tmp))
+ error_at_line (EXIT_FAILURE, 0, filename, lineno,
+ "bad floating-point argument: '%s'", arg);
+ adjust_real (tmp, inexact);
+ mpfr_t rounded[rm_num_modes];
+ unsigned int exc_before[rm_num_modes];
+ unsigned int exc_after[rm_num_modes];
+ round_real (rounded, exc_before, exc_after, tmp, f);
+ mpfr_clear (tmp);
+ if (mpfr_number_p (rounded[rm_upward]))
+ {
+ mpfr_init2 (extra_values[num_extra_values],
+ fp_formats[f].mant_dig);
+ assert_exact (mpfr_set (extra_values[num_extra_values],
+ rounded[rm_upward], MPFR_RNDN));
+ num_extra_values++;
+ }
+ if (mpfr_number_p (rounded[rm_downward]))
+ {
+ mpfr_init2 (extra_values[num_extra_values],
+ fp_formats[f].mant_dig);
+ assert_exact (mpfr_set (extra_values[num_extra_values],
+ rounded[rm_downward], MPFR_RNDN));
+ num_extra_values++;
+ }
+ for (rounding_mode m = rm_first_mode; m < rm_num_modes; m++)
+ mpfr_clear (rounded[m]);
+ }
+ for (size_t i = 0; i < num_extra_values; i++)
+ {
+ bool found = false;
+ for (size_t j = 0; j < num_values; j++)
+ {
+ if (mpfr_equal_p (values[j].value.f, extra_values[i])
+ && ((mpfr_signbit (values[j].value.f) != 0)
+ == (mpfr_signbit (extra_values[i]) != 0)))
+ {
+ found = true;
+ break;
+ }
+ }
+ if (!found)
+ {
+ assert (num_values < ARRAY_SIZE (values));
+ values[num_values].type = gtype_fp;
+ mpfr_init2 (values[num_values].value.f,
+ fp_formats[f].mant_dig);
+ assert_exact (mpfr_set (values[num_values].value.f,
+ extra_values[i], MPFR_RNDN));
+ num_values++;
+ }
+ mpfr_clear (extra_values[i]);
+ }
+ }
+ break;
+
+ case gtype_int:
+ num_values = 1;
+ values[0].type = gtype_int;
+ int ret = mpz_init_set_str (values[0].value.i, arg, 0);
+ if (ret != 0)
+ error_at_line (EXIT_FAILURE, 0, filename, lineno,
+ "bad integer argument: '%s'", arg);
+ break;
+
+ default:
+ abort ();
+ }
+ assert (num_values > 0 && num_values <= ARRAY_SIZE (values));
+ if (it->num_input_cases >= SIZE_MAX / num_values)
+ error_at_line (EXIT_FAILURE, 0, filename, lineno, "too many input cases");
+ generic_value **old_inputs = it->inputs;
+ size_t new_num_input_cases = it->num_input_cases * num_values;
+ generic_value **new_inputs = xmalloc (new_num_input_cases
+ * sizeof (new_inputs[0]));
+ for (size_t i = 0; i < it->num_input_cases; i++)
+ {
+ for (size_t j = 0; j < num_values; j++)
+ {
+ size_t idx = i * num_values + j;
+ new_inputs[idx] = xmalloc ((num_prev_args + 1)
+ * sizeof (new_inputs[idx][0]));
+ for (size_t k = 0; k < num_prev_args; k++)
+ generic_value_copy (&new_inputs[idx][k], &old_inputs[i][k]);
+ generic_value_copy (&new_inputs[idx][num_prev_args], &values[j]);
+ }
+ for (size_t j = 0; j < num_prev_args; j++)
+ generic_value_free (&old_inputs[i][j]);
+ free (old_inputs[i]);
+ }
+ free (old_inputs);
+ for (size_t i = 0; i < num_values; i++)
+ generic_value_free (&values[i]);
+ it->inputs = new_inputs;
+ it->num_input_cases = new_num_input_cases;
+}
+
+/* Handle the input flag ARG (NUL-terminated), storing it in *FLAG.
+ The flag comes from file FILENAME, line LINENO. */
+
+static void
+handle_input_flag (char *arg, input_flag *flag,
+ const char *filename, unsigned int lineno)
+{
+ char *ep = strchr (arg, ':');
+ if (ep == NULL)
+ {
+ ep = strchr (arg, 0);
+ assert (ep != NULL);
+ }
+ char c = *ep;
+ *ep = 0;
+ bool found = false;
+ for (input_flag_type i = flag_first_flag; i <= num_input_flag_types; i++)
+ {
+ if (strcmp (arg, input_flags[i]) == 0)
+ {
+ found = true;
+ flag->type = i;
+ break;
+ }
+ }
+ if (!found)
+ error_at_line (EXIT_FAILURE, 0, filename, lineno, "unknown flag: '%s'",
+ arg);
+ *ep = c;
+ if (c == 0)
+ flag->cond = NULL;
+ else
+ flag->cond = xstrdup (ep);
+}
+
+/* Add the test LINE (file FILENAME, line LINENO) to the test
+ data. */
+
+static void
+add_test (char *line, const char *filename, unsigned int lineno)
+{
+ size_t num_tokens = 1;
+ char *p = line;
+ while ((p = strchr (p, ' ')) != NULL)
+ {
+ num_tokens++;
+ p++;
+ }
+ if (num_tokens < 2)
+ error_at_line (EXIT_FAILURE, 0, filename, lineno,
+ "line too short: '%s'", line);
+ p = strchr (line, ' ');
+ size_t func_name_len = p - line;
+ for (size_t i = 0; i < ARRAY_SIZE (test_functions); i++)
+ {
+ if (func_name_len == strlen (test_functions[i].name)
+ && strncmp (line, test_functions[i].name, func_name_len) == 0)
+ {
+ test_function *tf = &test_functions[i];
+ if (num_tokens < 1 + tf->num_args)
+ error_at_line (EXIT_FAILURE, 0, filename, lineno,
+ "line too short: '%s'", line);
+ if (tf->num_tests == tf->num_tests_alloc)
+ {
+ tf->num_tests_alloc = 2 * tf->num_tests_alloc + 16;
+ tf->tests
+ = xrealloc (tf->tests,
+ tf->num_tests_alloc * sizeof (tf->tests[0]));
+ }
+ input_test *it = &tf->tests[tf->num_tests];
+ it->line = line;
+ it->num_input_cases = 1;
+ it->inputs = xmalloc (sizeof (it->inputs[0]));
+ it->inputs[0] = NULL;
+ it->old_output = NULL;
+ p++;
+ for (size_t j = 0; j < tf->num_args; j++)
+ {
+ char *ep = strchr (p, ' ');
+ if (ep == NULL)
+ {
+ ep = strchr (p, '\n');
+ assert (ep != NULL);
+ }
+ if (ep == p)
+ error_at_line (EXIT_FAILURE, 0, filename, lineno,
+ "empty token in line: '%s'", line);
+ for (char *t = p; t < ep; t++)
+ if (isspace ((unsigned char) *t))
+ error_at_line (EXIT_FAILURE, 0, filename, lineno,
+ "whitespace in token in line: '%s'", line);
+ char c = *ep;
+ *ep = 0;
+ handle_input_arg (p, it, j,
+ generic_arg_ret_type (tf->arg_types[j]),
+ filename, lineno);
+ *ep = c;
+ p = ep + 1;
+ }
+ it->num_flags = num_tokens - 1 - tf->num_args;
+ it->flags = xmalloc (it->num_flags * sizeof (it->flags[0]));
+ for (size_t j = 0; j < it->num_flags; j++)
+ {
+ char *ep = strchr (p, ' ');
+ if (ep == NULL)
+ {
+ ep = strchr (p, '\n');
+ assert (ep != NULL);
+ }
+ if (ep == p)
+ error_at_line (EXIT_FAILURE, 0, filename, lineno,
+ "empty token in line: '%s'", line);
+ for (char *t = p; t < ep; t++)
+ if (isspace ((unsigned char) *t))
+ error_at_line (EXIT_FAILURE, 0, filename, lineno,
+ "whitespace in token in line: '%s'", line);
+ char c = *ep;
+ *ep = 0;
+ handle_input_flag (p, &it->flags[j], filename, lineno);
+ *ep = c;
+ p = ep + 1;
+ }
+ assert (*p == 0);
+ tf->num_tests++;
+ return;
+ }
+ }
+ error_at_line (EXIT_FAILURE, 0, filename, lineno,
+ "unknown function in line: '%s'", line);
+}
+
+/* Read in the test input data from FILENAME. */
+
+static void
+read_input (const char *filename)
+{
+ FILE *fp = fopen (filename, "r");
+ if (fp == NULL)
+ error (EXIT_FAILURE, errno, "open '%s'", filename);
+ unsigned int lineno = 0;
+ for (;;)
+ {
+ size_t size = 0;
+ char *line = NULL;
+ ssize_t ret = getline (&line, &size, fp);
+ if (ret == -1)
+ break;
+ lineno++;
+ if (line[0] == '#' || line[0] == '\n')
+ continue;
+ add_test (line, filename, lineno);
+ }
+ if (ferror (fp))
+ error (EXIT_FAILURE, errno, "read from '%s'", filename);
+ if (fclose (fp) != 0)
+ error (EXIT_FAILURE, errno, "close '%s'", filename);
+}
+
+/* Calculate the generic results (round-to-zero with sticky bit) for
+ the function described by CALC, with inputs INPUTS. */
+
+static void
+calc_generic_results (generic_value *outputs, generic_value *inputs,
+ const func_calc_desc *calc)
+{
+ bool inexact;
+ switch (calc->method)
+ {
+ case mpfr_f_f:
+ assert (inputs[0].type == gtype_fp);
+ outputs[0].type = gtype_fp;
+ mpfr_init (outputs[0].value.f);
+ inexact = calc->func.mpfr_f_f (outputs[0].value.f, inputs[0].value.f,
+ MPFR_RNDZ);
+ adjust_real (outputs[0].value.f, inexact);
+ break;
+
+ case mpfr_ff_f:
+ assert (inputs[0].type == gtype_fp);
+ assert (inputs[1].type == gtype_fp);
+ outputs[0].type = gtype_fp;
+ mpfr_init (outputs[0].value.f);
+ inexact = calc->func.mpfr_ff_f (outputs[0].value.f, inputs[0].value.f,
+ inputs[1].value.f, MPFR_RNDZ);
+ adjust_real (outputs[0].value.f, inexact);
+ break;
+
+ case mpfr_f_f1:
+ assert (inputs[0].type == gtype_fp);
+ outputs[0].type = gtype_fp;
+ outputs[1].type = gtype_int;
+ mpfr_init (outputs[0].value.f);
+ int i = 0;
+ inexact = calc->func.mpfr_f_f1 (outputs[0].value.f, &i,
+ inputs[0].value.f, MPFR_RNDZ);
+ adjust_real (outputs[0].value.f, inexact);
+ mpz_init_set_si (outputs[1].value.i, i);
+ break;
+
+ case mpfr_if_f:
+ assert (inputs[0].type == gtype_int);
+ assert (inputs[1].type == gtype_fp);
+ outputs[0].type = gtype_fp;
+ mpfr_init (outputs[0].value.f);
+ assert (mpz_fits_slong_p (inputs[0].value.i));
+ long l = mpz_get_si (inputs[0].value.i);
+ inexact = calc->func.mpfr_if_f (outputs[0].value.f, l,
+ inputs[1].value.f, MPFR_RNDZ);
+ adjust_real (outputs[0].value.f, inexact);
+ break;
+
+ case mpfr_f_11:
+ assert (inputs[0].type == gtype_fp);
+ outputs[0].type = gtype_fp;
+ mpfr_init (outputs[0].value.f);
+ outputs[1].type = gtype_fp;
+ mpfr_init (outputs[1].value.f);
+ int comb_ternary = calc->func.mpfr_f_11 (outputs[0].value.f,
+ outputs[1].value.f,
+ inputs[0].value.f,
+ MPFR_RNDZ);
+ adjust_real (outputs[0].value.f, (comb_ternary & 0x3) != 0);
+ adjust_real (outputs[1].value.f, (comb_ternary & 0xc) != 0);
+ break;
+
+ case mpc_c_f:
+ assert (inputs[0].type == gtype_fp);
+ assert (inputs[1].type == gtype_fp);
+ outputs[0].type = gtype_fp;
+ mpfr_init (outputs[0].value.f);
+ mpc_t ci;
+ mpc_init2 (ci, internal_precision);
+ assert_exact (mpc_set_fr_fr (ci, inputs[0].value.f, inputs[1].value.f,
+ MPC_RNDNN));
+ inexact = calc->func.mpc_c_f (outputs[0].value.f, ci, MPFR_RNDZ);
+ adjust_real (outputs[0].value.f, inexact);
+ mpc_clear (ci);
+ break;
+
+ default:
+ abort ();
+ }
+}
+
+/* Return the number of bits for integer type TYPE, where "long" has
+ LONG_BITS bits (32 or 64). */
+
+static int
+int_type_bits (arg_ret_type type, int long_bits)
+{
+ assert (long_bits == 32 || long_bits == 64);
+ switch (type)
+ {
+ case type_int:
+ return 32;
+ break;
+
+ case type_long:
+ return long_bits;
+ break;
+
+ case type_long_long:
+ return 64;
+ break;
+
+ default:
+ abort ();
+ }
+}
+
+/* Check whether an integer Z fits a given type TYPE, where "long" has
+ LONG_BITS bits (32 or 64). */
+
+static bool
+int_fits_type (mpz_t z, arg_ret_type type, int long_bits)
+{
+ int bits = int_type_bits (type, long_bits);
+ bool ret = true;
+ mpz_t t;
+ mpz_init (t);
+ mpz_ui_pow_ui (t, 2, bits - 1);
+ if (mpz_cmp (z, t) >= 0)
+ ret = false;
+ mpz_neg (t, t);
+ if (mpz_cmp (z, t) < 0)
+ ret = false;
+ mpz_clear (t);
+ return ret;
+}
+
+/* Print a generic value V to FP (name FILENAME), preceded by a space,
+ for type TYPE, floating-point format FORMAT, LONG_BITS bits per
+ long, printing " IGNORE" instead if IGNORE. */
+
+static void
+output_generic_value (FILE *fp, const char *filename, const generic_value *v,
+ bool ignore, arg_ret_type type, fp_format format,
+ int long_bits)
+{
+ if (ignore)
+ {
+ if (fputs (" IGNORE", fp) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'", filename);
+ return;
+ }
+ assert (v->type == generic_arg_ret_type (type));
+ const char *suffix;
+ switch (type)
+ {
+ case type_fp:
+ suffix = fp_formats[format].suffix;
+ break;
+
+ case type_int:
+ suffix = "";
+ break;
+
+ case type_long:
+ suffix = "L";
+ break;
+
+ case type_long_long:
+ suffix = "LL";
+ break;
+
+ default:
+ abort ();
+ }
+ switch (v->type)
+ {
+ case gtype_fp:
+ if (mpfr_inf_p (v->value.f))
+ {
+ if (fputs ((mpfr_signbit (v->value.f)
+ ? " minus_infty" : " plus_infty"), fp) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'", filename);
+ }
+ else
+ {
+ assert (mpfr_number_p (v->value.f));
+ if (mpfr_fprintf (fp, " %Ra%s", v->value.f, suffix) < 0)
+ error (EXIT_FAILURE, errno, "mpfr_fprintf to '%s'", filename);
+ }
+ break;
+
+ case gtype_int: ;
+ int bits = int_type_bits (type, long_bits);
+ mpz_t tmp;
+ mpz_init (tmp);
+ mpz_ui_pow_ui (tmp, 2, bits - 1);
+ mpz_neg (tmp, tmp);
+ if (mpz_cmp (v->value.i, tmp) == 0)
+ {
+ mpz_add_ui (tmp, tmp, 1);
+ if (mpfr_fprintf (fp, " (%Zd%s-1)", tmp, suffix) < 0)
+ error (EXIT_FAILURE, errno, "mpfr_fprintf to '%s'", filename);
+ }
+ else
+ {
+ if (mpfr_fprintf (fp, " %Zd%s", v->value.i, suffix) < 0)
+ error (EXIT_FAILURE, errno, "mpfr_fprintf to '%s'", filename);
+ }
+ mpz_clear (tmp);
+ break;
+
+ default:
+ abort ();
+ }
+}
+
+/* Generate test output to FP (name FILENAME) for test function TF,
+ input test IT, choice of input values INPUTS. */
+
+static void
+output_for_one_input_case (FILE *fp, const char *filename, test_function *tf,
+ input_test *it, generic_value *inputs)
+{
+ bool long_bits_matters = false;
+ bool fits_long32 = true;
+ for (size_t i = 0; i < tf->num_args; i++)
+ {
+ generic_value_type gtype = generic_arg_ret_type (tf->arg_types[i]);
+ assert (inputs[i].type == gtype);
+ if (gtype == gtype_int)
+ {
+ bool fits_64 = int_fits_type (inputs[i].value.i, tf->arg_types[i],
+ 64);
+ if (!fits_64)
+ return;
+ if (tf->arg_types[i] == type_long
+ && !int_fits_type (inputs[i].value.i, tf->arg_types[i], 32))
+ {
+ long_bits_matters = true;
+ fits_long32 = false;
+ }
+ }
+ }
+ generic_value generic_outputs[MAX_NRET];
+ calc_generic_results (generic_outputs, inputs, &tf->calc);
+ bool ignore_output_long32[MAX_NRET] = { false };
+ bool ignore_output_long64[MAX_NRET] = { false };
+ for (size_t i = 0; i < tf->num_ret; i++)
+ {
+ assert (generic_outputs[i].type
+ == generic_arg_ret_type (tf->ret_types[i]));
+ switch (generic_outputs[i].type)
+ {
+ case gtype_fp:
+ if (!mpfr_number_p (generic_outputs[i].value.f))
+ goto out; /* Result is NaN or exact infinity. */
+ break;
+
+ case gtype_int:
+ ignore_output_long32[i] = !int_fits_type (generic_outputs[i].value.i,
+ tf->ret_types[i], 32);
+ ignore_output_long64[i] = !int_fits_type (generic_outputs[i].value.i,
+ tf->ret_types[i], 64);
+ if (ignore_output_long32[i] != ignore_output_long64[i])
+ long_bits_matters = true;
+ break;
+
+ default:
+ abort ();
+ }
+ }
+ /* Iterate over relevant sizes of long and floating-point formats. */
+ for (int long_bits = 32; long_bits <= 64; long_bits += 32)
+ {
+ if (long_bits == 32 && !fits_long32)
+ continue;
+ if (long_bits == 64 && !long_bits_matters)
+ continue;
+ const char *long_cond;
+ if (long_bits_matters)
+ long_cond = (long_bits == 32 ? ":long32" : ":long64");
+ else
+ long_cond = "";
+ bool *ignore_output = (long_bits == 32
+ ? ignore_output_long32
+ : ignore_output_long64);
+ for (fp_format f = fp_first_format; f < fp_num_formats; f++)
+ {
+ bool fits = true;
+ mpfr_t res[rm_num_modes];
+ unsigned int exc_before[rm_num_modes];
+ unsigned int exc_after[rm_num_modes];
+ for (size_t i = 0; i < tf->num_args; i++)
+ {
+ if (inputs[i].type == gtype_fp)
+ {
+ round_real (res, exc_before, exc_after, inputs[i].value.f,
+ f);
+ if (!mpfr_equal_p (res[rm_tonearest], inputs[i].value.f))
+ fits = false;
+ for (rounding_mode m = rm_first_mode; m < rm_num_modes; m++)
+ mpfr_clear (res[m]);
+ if (!fits)
+ break;
+ }
+ }
+ if (!fits)
+ continue;
+ /* The inputs fit this type, so compute the ideal outputs
+ and exceptions. */
+ mpfr_t all_res[MAX_NRET][rm_num_modes];
+ unsigned int all_exc_before[MAX_NRET][rm_num_modes];
+ unsigned int all_exc_after[MAX_NRET][rm_num_modes];
+ unsigned int merged_exc_before[rm_num_modes] = { 0 };
+ unsigned int merged_exc_after[rm_num_modes] = { 0 };
+ /* For functions not exactly determined, track whether
+ underflow is required (some result is inexact, and
+ magnitude does not exceed the greatest magnitude
+ subnormal), and permitted (not an exact zero, and
+ magnitude does not exceed the least magnitude
+ normal). */
+ bool must_underflow = false;
+ bool may_underflow = false;
+ for (size_t i = 0; i < tf->num_ret; i++)
+ {
+ switch (generic_outputs[i].type)
+ {
+ case gtype_fp:
+ round_real (all_res[i], all_exc_before[i], all_exc_after[i],
+ generic_outputs[i].value.f, f);
+ for (rounding_mode m = rm_first_mode; m < rm_num_modes; m++)
+ {
+ merged_exc_before[m] |= all_exc_before[i][m];
+ merged_exc_after[m] |= all_exc_after[i][m];
+ if (!tf->exact)
+ {
+ must_underflow
+ |= ((all_exc_before[i][m]
+ & (1U << exc_inexact)) != 0
+ && (mpfr_cmpabs (generic_outputs[i].value.f,
+ fp_formats[f].subnorm_max)
+ <= 0));
+ may_underflow
+ |= (!mpfr_zero_p (generic_outputs[i].value.f)
+ && mpfr_cmpabs (generic_outputs[i].value.f,
+ fp_formats[f].min) <= 0);
+ }
+ }
+ break;
+
+ case gtype_int:
+ if (ignore_output[i])
+ for (rounding_mode m = rm_first_mode;
+ m < rm_num_modes;
+ m++)
+ {
+ merged_exc_before[m] |= 1U << exc_invalid;
+ merged_exc_after[m] |= 1U << exc_invalid;
+ }
+ break;
+
+ default:
+ abort ();
+ }
+ }
+ assert (may_underflow || !must_underflow);
+ for (rounding_mode m = rm_first_mode; m < rm_num_modes; m++)
+ {
+ bool before_after_matters
+ = tf->exact && merged_exc_before[m] != merged_exc_after[m];
+ for (int after = 0; after <= 1; after++)
+ {
+ if (after == 1 && !before_after_matters)
+ continue;
+ const char *after_cond;
+ if (before_after_matters)
+ after_cond = (after
+ ? ":after-rounding"
+ : ":before-rounding");
+ else
+ after_cond = "";
+ unsigned int merged_exc = (after
+ ? merged_exc_after[m]
+ : merged_exc_before[m]);
+ if (fprintf (fp, "= %s %s %s%s%s", tf->name,
+ rounding_modes[m].name, fp_formats[f].name,
+ long_cond, after_cond) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'", filename);
+ /* Print inputs. */
+ for (size_t i = 0; i < tf->num_args; i++)
+ output_generic_value (fp, filename, &inputs[i], false,
+ tf->arg_types[i], f, long_bits);
+ if (fputs (" :", fp) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'", filename);
+ /* Print outputs. */
+ bool must_erange = false;
+ for (size_t i = 0; i < tf->num_ret; i++)
+ {
+ generic_value g;
+ g.type = generic_outputs[i].type;
+ switch (g.type)
+ {
+ case gtype_fp:
+ if (mpfr_inf_p (all_res[i][m])
+ && (all_exc_before[i][m]
+ & (1U << exc_overflow)) != 0)
+ must_erange = true;
+ if (mpfr_zero_p (all_res[i][m])
+ && (tf->exact
+ || mpfr_zero_p (all_res[i][rm_tonearest]))
+ && (all_exc_before[i][m]
+ & (1U << exc_underflow)) != 0)
+ must_erange = true;
+ mpfr_init2 (g.value.f, fp_formats[f].mant_dig);
+ assert_exact (mpfr_set (g.value.f, all_res[i][m],
+ MPFR_RNDN));
+ break;
+
+ case gtype_int:
+ mpz_init (g.value.i);
+ mpz_set (g.value.i, generic_outputs[i].value.i);
+ break;
+
+ default:
+ abort ();
+ }
+ output_generic_value (fp, filename, &g, ignore_output[i],
+ tf->ret_types[i], f, long_bits);
+ generic_value_free (&g);
+ }
+ if (fputs (" :", fp) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'", filename);
+ /* Print miscellaneous flags (passed through from
+ input). */
+ for (size_t i = 0; i < it->num_flags; i++)
+ switch (it->flags[i].type)
+ {
+ case flag_no_test_inline:
+ case flag_xfail:
+ if (fprintf (fp, " %s%s",
+ input_flags[it->flags[i].type],
+ (it->flags[i].cond
+ ? it->flags[i].cond
+ : "")) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ break;
+ case flag_xfail_rounding:
+ if (m != rm_tonearest)
+ if (fprintf (fp, " xfail%s",
+ (it->flags[i].cond
+ ? it->flags[i].cond
+ : "")) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ break;
+ default:
+ break;
+ }
+ /* Print exception flags and compute errno
+ expectations where not already computed. */
+ bool may_edom = false;
+ bool must_edom = false;
+ bool may_erange = must_erange || may_underflow;
+ for (fp_exception e = exc_first_exception;
+ e < exc_num_exceptions;
+ e++)
+ {
+ bool expect_e = (merged_exc & (1U << e)) != 0;
+ bool e_optional = false;
+ switch (e)
+ {
+ case exc_divbyzero:
+ if (expect_e)
+ may_erange = must_erange = true;
+ break;
+
+ case exc_inexact:
+ if (!tf->exact)
+ e_optional = true;
+ break;
+
+ case exc_invalid:
+ if (expect_e)
+ may_edom = must_edom = true;
+ break;
+
+ case exc_overflow:
+ if (expect_e)
+ may_erange = true;
+ break;
+
+ case exc_underflow:
+ if (expect_e)
+ may_erange = true;
+ if (must_underflow)
+ assert (expect_e);
+ if (may_underflow && !must_underflow)
+ e_optional = true;
+ break;
+
+ default:
+ abort ();
+ }
+ if (e_optional)
+ {
+ if (fprintf (fp, " %s-ok", exceptions[e]) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ }
+ else
+ {
+ if (expect_e)
+ if (fprintf (fp, " %s", exceptions[e]) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ input_flag_type okflag;
+ okflag = (expect_e
+ ? flag_missing_first
+ : flag_spurious_first) + e;
+ for (size_t i = 0; i < it->num_flags; i++)
+ if (it->flags[i].type == okflag)
+ if (fprintf (fp, " %s-ok%s",
+ exceptions[e],
+ (it->flags[i].cond
+ ? it->flags[i].cond
+ : "")) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ }
+ }
+ /* Print errno expectations. */
+ if (tf->complex_fn)
+ {
+ must_edom = false;
+ must_erange = false;
+ }
+ if (may_edom && !must_edom)
+ {
+ if (fputs (" errno-edom-ok", fp) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ }
+ else
+ {
+ if (must_edom)
+ if (fputs (" errno-edom", fp) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ input_flag_type okflag = (must_edom
+ ? flag_missing_errno
+ : flag_spurious_errno);
+ for (size_t i = 0; i < it->num_flags; i++)
+ if (it->flags[i].type == okflag)
+ if (fprintf (fp, " errno-edom-ok%s",
+ (it->flags[i].cond
+ ? it->flags[i].cond
+ : "")) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ }
+ if (may_erange && !must_erange)
+ {
+ if (fputs (" errno-erange-ok", fp) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ }
+ else
+ {
+ if (must_erange)
+ if (fputs (" errno-erange", fp) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ input_flag_type okflag = (must_erange
+ ? flag_missing_errno
+ : flag_spurious_errno);
+ for (size_t i = 0; i < it->num_flags; i++)
+ if (it->flags[i].type == okflag)
+ if (fprintf (fp, " errno-erange-ok%s",
+ (it->flags[i].cond
+ ? it->flags[i].cond
+ : "")) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'",
+ filename);
+ }
+ if (putc ('\n', fp) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'", filename);
+ }
+ }
+ for (size_t i = 0; i < tf->num_ret; i++)
+ {
+ if (generic_outputs[i].type == gtype_fp)
+ for (rounding_mode m = rm_first_mode; m < rm_num_modes; m++)
+ mpfr_clear (all_res[i][m]);
+ }
+ }
+ }
+ out:
+ for (size_t i = 0; i < tf->num_ret; i++)
+ generic_value_free (&generic_outputs[i]);
+}
+
+/* Generate test output data to FILENAME. */
+
+static void
+generate_output (const char *filename)
+{
+ FILE *fp = fopen (filename, "w");
+ if (fp == NULL)
+ error (EXIT_FAILURE, errno, "open '%s'", filename);
+ for (size_t i = 0; i < ARRAY_SIZE (test_functions); i++)
+ {
+ test_function *tf = &test_functions[i];
+ for (size_t j = 0; j < tf->num_tests; j++)
+ {
+ input_test *it = &tf->tests[j];
+ if (fputs (it->line, fp) < 0)
+ error (EXIT_FAILURE, errno, "write to '%s'", filename);
+ for (size_t k = 0; k < it->num_input_cases; k++)
+ output_for_one_input_case (fp, filename, tf, it, it->inputs[k]);
+ }
+ }
+ if (fclose (fp) != 0)
+ error (EXIT_FAILURE, errno, "close '%s'", filename);
+}
+
+int
+main (int argc, char **argv)
+{
+ if (argc != 3)
+ error (EXIT_FAILURE, 0, "usage: gen-auto-libm-tests <input> <output>");
+ const char *input_filename = argv[1];
+ const char *output_filename = argv[2];
+ init_fp_formats ();
+ read_input (input_filename);
+ generate_output (output_filename);
+ exit (EXIT_SUCCESS);
+}
diff --git a/math/gen-libm-test.pl b/math/gen-libm-test.pl
index c2d10d35e8..29522a3a25 100755
--- a/math/gen-libm-test.pl
+++ b/math/gen-libm-test.pl
@@ -39,10 +39,11 @@ use Getopt::Std;
use strict;
-use vars qw ($input $output);
+use vars qw ($input $output $auto_input);
use vars qw (%results);
use vars qw (%beautify @all_floats);
use vars qw ($output_dir $ulps_file);
+use vars qw (%auto_tests);
# all_floats is sorted and contains all recognised float types
@all_floats = ('double', 'float', 'idouble',
@@ -51,26 +52,15 @@ use vars qw ($output_dir $ulps_file);
%beautify =
( "minus_zero" => "-0",
"plus_zero" => "+0",
+ "-0x0p+0f" => "-0",
+ "-0x0p+0" => "-0",
+ "-0x0p+0L" => "-0",
+ "0x0p+0f" => "+0",
+ "0x0p+0" => "+0",
+ "0x0p+0L" => "+0",
"minus_infty" => "-inf",
"plus_infty" => "inf",
"qnan_value" => "qNaN",
- "M_El" => "e",
- "M_E2l" => "e^2",
- "M_E3l" => "e^3",
- "M_LOG10El", "log10(e)",
- "M_PIl" => "pi",
- "M_PI_34l" => "3/4 pi",
- "M_PI_2l" => "pi/2",
- "M_PI_4l" => "pi/4",
- "M_PI_6l" => "pi/6",
- "M_PI_34_LOG10El" => "3/4 pi*log10(e)",
- "M_PI_LOG10El" => "pi*log10(e)",
- "M_PI2_LOG10El" => "pi/2*log10(e)",
- "M_PI4_LOG10El" => "pi/4*log10(e)",
- "M_LOG_SQRT_PIl" => "log(sqrt(pi))",
- "M_LOG_2_SQRT_PIl" => "log(2*sqrt(pi))",
- "M_2_SQRT_PIl" => "2 sqrt (pi)",
- "M_SQRT_PIl" => "sqrt (pi)",
);
@@ -99,9 +89,11 @@ $ulps_file = $opt_u if ($opt_u);
$output_dir = $opt_o if ($opt_o);
$input = "libm-test.inc";
+$auto_input = "auto-libm-test-out";
$output = "${output_dir}libm-test.c";
&parse_ulps ($ulps_file);
+&parse_auto_input ($auto_input);
&generate_testfile ($input, $output) unless ($opt_n);
&output_ulps ("${output_dir}libm-test-ulps.h", $ulps_file) unless ($opt_n);
&print_ulps_file ("${output_dir}NewUlps") if ($opt_n);
@@ -121,6 +113,9 @@ sub beautify {
return '-' . $beautify{$tmp};
}
}
+ if ($arg =~ /^-?0x[0-9a-f.]*p[-+][0-9]+f$/) {
+ $arg =~ s/f$//;
+ }
if ($arg =~ /[0-9]L$/) {
$arg =~ s/L$//;
}
@@ -147,11 +142,12 @@ sub build_complex_beautify {
# Return the text to put in an initializer for a test's exception
# information.
sub show_exceptions {
- my ($exception) = @_;
+ my ($ignore_result, $exception) = @_;
+ $ignore_result = ($ignore_result ? "IGNORE_RESULT|" : "");
if (defined $exception) {
- return ", $exception";
+ return ", ${ignore_result}$exception";
} else {
- return ', 0';
+ return ", ${ignore_result}0";
}
}
@@ -162,6 +158,7 @@ sub parse_args {
my ($current_arg, $cline, $i);
my (@special);
my ($call_args);
+ my ($ignore_result_any, $ignore_result_all);
($descr_args, $descr_res) = split /_/,$descr, 2;
@@ -216,7 +213,7 @@ sub parse_args {
# consistency check
if ($current_arg == $#args) {
die ("wrong number of arguments")
- unless ($args[$current_arg] =~ /EXCEPTION|ERRNO|IGNORE_ZERO_INF_SIGN/);
+ unless ($args[$current_arg] =~ /EXCEPTION|ERRNO|IGNORE_ZERO_INF_SIGN|TEST_NAN_SIGN|NO_TEST_INLINE|XFAIL_TEST/);
} elsif ($current_arg < $#args) {
die ("wrong number of arguments");
} elsif ($current_arg > ($#args+1)) {
@@ -249,20 +246,47 @@ sub parse_args {
}
@descr = split //,$descr_res;
+ $ignore_result_any = 0;
+ $ignore_result_all = 1;
foreach (@descr) {
if ($_ =~ /b|f|i|l|L/ ) {
- $cline .= ", $args[$current_arg]";
+ my ($result) = $args[$current_arg];
+ if ($result eq "IGNORE") {
+ $ignore_result_any = 1;
+ $result = "0";
+ } else {
+ $ignore_result_all = 0;
+ }
+ $cline .= ", $result";
$current_arg++;
} elsif ($_ eq 'c') {
- $cline .= ", $args[$current_arg], $args[$current_arg+1]";
+ my ($result1) = $args[$current_arg];
+ if ($result1 eq "IGNORE") {
+ $ignore_result_any = 1;
+ $result1 = "0";
+ } else {
+ $ignore_result_all = 0;
+ }
+ my ($result2) = $args[$current_arg + 1];
+ if ($result2 eq "IGNORE") {
+ $ignore_result_any = 1;
+ $result2 = "0";
+ } else {
+ $ignore_result_all = 0;
+ }
+ $cline .= ", $result1, $result2";
$current_arg += 2;
} elsif ($_ eq '1') {
push @special, $args[$current_arg];
++$current_arg;
}
}
+ if ($ignore_result_any && !$ignore_result_all) {
+ die ("some but not all function results ignored\n");
+ }
# Add exceptions.
- $cline .= show_exceptions (($current_arg <= $#args)
+ $cline .= show_exceptions ($ignore_result_any,
+ ($current_arg <= $#args)
? $args[$current_arg]
: undef);
@@ -280,17 +304,165 @@ sub parse_args {
print $file " $cline },\n";
}
+# Convert a condition from auto-libm-test-out to C form.
+sub convert_condition {
+ my ($cond) = @_;
+ my (@conds, $ret);
+ @conds = split /:/, $cond;
+ foreach (@conds) {
+ s/-/_/g;
+ s/^/TEST_COND_/;
+ }
+ $ret = join " && ", @conds;
+ return "($ret)";
+}
+
+# Return text to OR a value into an accumulated flags string.
+sub or_value {
+ my ($cond) = @_;
+ if ($cond eq "0") {
+ return "";
+ } else {
+ return " | $cond";
+ }
+}
+
+# Return text to OR a conditional expression between two values into
+# an accumulated flags string.
+sub or_cond_value {
+ my ($cond, $if, $else) = @_;
+ if ($cond eq "1") {
+ return or_value ($if);
+ } elsif ($cond eq "0") {
+ return or_value ($else);
+ } else {
+ return or_value ("($cond ? $if : $else)");
+ }
+}
+
# Generate libm-test.c
sub generate_testfile {
my ($input, $output) = @_;
- my ($lasttext);
- my (@args, $i);
open INPUT, $input or die ("Can't open $input: $!");
open OUTPUT, ">$output" or die ("Can't open $output: $!");
# Replace the special macros
while (<INPUT>) {
+ # AUTO_TESTS (function, mode),
+ if (/^\s*AUTO_TESTS_/) {
+ my ($descr, $func, $mode, $auto_test, $num_auto_tests);
+ ($descr, $func, $mode) = ($_ =~ /AUTO_TESTS_(\w+)\s*\((\w+),\s*(\w+)\)/);
+ $num_auto_tests = 0;
+ foreach $auto_test (sort keys %{$auto_tests{$func}{$mode}}) {
+ my ($finputs, $format, $inputs, $outputs, $flags);
+ my ($format_conv, $flags_conv, @flags, %flag_cond);
+ $num_auto_tests++;
+ ($finputs, $outputs, $flags) = split / : */, $auto_test;
+ ($format, $inputs) = split / /, $finputs, 2;
+ $inputs =~ s/ /, /g;
+ $outputs =~ s/ /, /g;
+ $format_conv = convert_condition ($format);
+ print OUTPUT "#if $format_conv\n";
+ @flags = split / /, $flags;
+ foreach (@flags) {
+ if (/^([^:]*):(.*)$/) {
+ my ($flag, $cond);
+ $flag = $1;
+ $cond = convert_condition ($2);
+ if (defined ($flag_cond{$flag})) {
+ if ($flag_cond{$flag} ne "1") {
+ $flag_cond{$flag} .= " || $cond";
+ }
+ } else {
+ $flag_cond{$flag} = $cond;
+ }
+ } else {
+ $flag_cond{$_} = "1";
+ }
+ }
+ $flags_conv = "";
+ if (defined ($flag_cond{"no-test-inline"})) {
+ $flags_conv .= or_cond_value ($flag_cond{"no-test-inline"},
+ "NO_TEST_INLINE", "0");
+ }
+ if (defined ($flag_cond{"xfail"})) {
+ $flags_conv .= or_cond_value ($flag_cond{"xfail"},
+ "XFAIL_TEST", "0");
+ }
+ my (@exc_list) = qw(divbyzero inexact invalid overflow underflow);
+ my ($exc);
+ foreach $exc (@exc_list) {
+ my ($exc_expected, $exc_ok, $no_exc);
+ $exc_expected = "\U$exc\E_EXCEPTION";
+ $exc_ok = "\U$exc\E_EXCEPTION_OK";
+ $no_exc = "0";
+ if ($exc eq "inexact") {
+ $exc_ok = "0";
+ $no_exc = "NO_INEXACT_EXCEPTION";
+ }
+ if (defined ($flag_cond{$exc})) {
+ if ($flag_cond{$exc} ne "1") {
+ die ("unexpected condition for $exc\n");
+ }
+ if (defined ($flag_cond{"$exc-ok"})) {
+ $flags_conv .= or_cond_value ($flag_cond{"$exc-ok"},
+ $exc_ok, $exc_expected);
+ } else {
+ $flags_conv .= or_value ($exc_expected);
+ }
+ } else {
+ if (defined ($flag_cond{"$exc-ok"})) {
+ $flags_conv .= or_cond_value ($flag_cond{"$exc-ok"},
+ $exc_ok, $no_exc);
+ } else {
+ $flags_conv .= or_value ($no_exc);
+ }
+ }
+ }
+ my ($errno_expected, $errno_unknown_cond);
+ if (defined ($flag_cond{"errno-edom"})) {
+ if ($flag_cond{"errno-edom"} ne "1") {
+ die ("unexpected condition for errno-edom");
+ }
+ if (defined ($flag_cond{"errno-erange"})) {
+ die ("multiple errno values expected");
+ }
+ $errno_expected = "ERRNO_EDOM";
+ } elsif (defined ($flag_cond{"errno-erange"})) {
+ if ($flag_cond{"errno-erange"} ne "1") {
+ die ("unexpected condition for errno-erange");
+ }
+ $errno_expected = "ERRNO_ERANGE";
+ } else {
+ $errno_expected = "ERRNO_UNCHANGED";
+ }
+ if (defined ($flag_cond{"errno-edom-ok"})) {
+ if (defined ($flag_cond{"errno-erange-ok"})
+ && $flag_cond{"errno-erange-ok"} ne $flag_cond{"errno-edom-ok"}) {
+ $errno_unknown_cond = "($flag_cond{\"errno-edom-ok\"} || $flag_cond{\"errno-erange-ok\"})";
+ } else {
+ $errno_unknown_cond = $flag_cond{"errno-edom-ok"};
+ }
+ } elsif (defined ($flag_cond{"errno-erange-ok"})) {
+ $errno_unknown_cond = $flag_cond{"errno-erange-ok"};
+ } else {
+ $errno_unknown_cond = "0";
+ }
+ $flags_conv .= or_cond_value ($errno_unknown_cond,
+ "0", $errno_expected);
+ if ($flags_conv ne "") {
+ $flags_conv =~ s/^ \|/,/;
+ }
+ &parse_args (\*OUTPUT, $descr,
+ "$func, $inputs, $outputs$flags_conv");
+ print OUTPUT "#endif\n";
+ }
+ if ($num_auto_tests == 0) {
+ die ("no automatic tests for $func, $mode\n");
+ }
+ next;
+ }
# TEST_...
if (/^\s*TEST_/) {
@@ -544,3 +716,20 @@ sub output_ulps {
print ULP " };\n";
close ULP;
}
+
+# Parse auto-libm-test-out.
+sub parse_auto_input {
+ my ($file) = @_;
+ open AUTO, $file or die ("Can't open $file: $!");
+ while (<AUTO>) {
+ chop;
+ next if !/^= /;
+ s/^= //;
+ if (/^(\S+) (\S+) (.*)$/) {
+ $auto_tests{$1}{$2}{$3} = 1;
+ } else {
+ die ("bad automatic test line: $_\n");
+ }
+ }
+ close AUTO;
+}
diff --git a/math/libm-test.inc b/math/libm-test.inc
index e534fc0734..c23696a3a7 100644
--- a/math/libm-test.inc
+++ b/math/libm-test.inc
@@ -173,10 +173,15 @@ struct ulp_data
#define EXCEPTIONS_OK INVALID_EXCEPTION_OK+DIVIDE_BY_ZERO_EXCEPTION_OK
/* Some special test flags, passed together with exceptions. */
#define IGNORE_ZERO_INF_SIGN 0x400
+#define TEST_NAN_SIGN 0x800
+#define NO_TEST_INLINE 0x1000
+#define XFAIL_TEST 0x2000
/* Indicate errno settings required or disallowed. */
-#define ERRNO_UNCHANGED 0x800
-#define ERRNO_EDOM 0x1000
-#define ERRNO_ERANGE 0x2000
+#define ERRNO_UNCHANGED 0x4000
+#define ERRNO_EDOM 0x8000
+#define ERRNO_ERANGE 0x10000
+/* Flags generated by gen-libm-test.pl, not entered here manually. */
+#define IGNORE_RESULT 0x20000
/* Values underflowing only for float. */
#ifdef TEST_FLOAT
@@ -209,20 +214,66 @@ struct ulp_data
? 0 \
: UNDERFLOW_EXCEPTION)
+/* Inline tests disabled for particular types. */
+#ifdef TEST_FLOAT
+# define NO_TEST_INLINE_FLOAT NO_TEST_INLINE
+#else
+# define NO_TEST_INLINE_FLOAT 0
+#endif
+#ifdef TEST_DOUBLE
+# define NO_TEST_INLINE_DOUBLE NO_TEST_INLINE
+#else
+# define NO_TEST_INLINE_DOUBLE 0
+#endif
+
+/* Conditions used by tests generated by gen-auto-libm-tests.c. */
+#ifdef TEST_FLOAT
+# define TEST_COND_flt_32 1
+#else
+# define TEST_COND_flt_32 0
+#endif
+#if defined TEST_DOUBLE || (defined TEST_LDOUBLE && LDBL_MANT_DIG == 53)
+# define TEST_COND_dbl_64 1
+#else
+# define TEST_COND_dbl_64 0
+#endif
+#if defined TEST_LDOUBLE && LDBL_MANT_DIG == 64 && LDBL_MIN_EXP == -16381
+# define TEST_COND_ldbl_96_intel 1
+#else
+# define TEST_COND_ldbl_96_intel 0
+#endif
+#if defined TEST_LDOUBLE && LDBL_MANT_DIG == 64 && LDBL_MIN_EXP == -16382
+# define TEST_COND_ldbl_96_m68k 1
+#else
+# define TEST_COND_ldbl_96_m68k 0
+#endif
+#if defined TEST_LDOUBLE && LDBL_MANT_DIG == 113
+# define TEST_COND_ldbl_128 1
+#else
+# define TEST_COND_ldbl_128 0
+#endif
+#if defined TEST_LDOUBLE && LDBL_MANT_DIG == 106
+# define TEST_COND_ldbl_128ibm 1
+#else
+# define TEST_COND_ldbl_128ibm 0
+#endif
+#if LONG_MAX == 0x7fffffff
+# define TEST_COND_long32 1
+# define TEST_COND_long64 0
+#else
+# define TEST_COND_long32 0
+# define TEST_COND_long64 1
+#endif
+#define TEST_COND_before_rounding (!TININESS_AFTER_ROUNDING)
+#define TEST_COND_after_rounding TININESS_AFTER_ROUNDING
+
/* Various constants (we must supply them precalculated for accuracy). */
#define M_PI_6l .52359877559829887307710723054658383L
-#define M_E2l 7.389056098930650227230427460575008L
-#define M_E3l 20.085536923187667740928529654581719L
-#define M_2_SQRT_PIl 3.5449077018110320545963349666822903L /* 2 sqrt (M_PIl) */
-#define M_SQRT_PIl 1.7724538509055160272981674833411451L /* sqrt (M_PIl) */
-#define M_LOG_SQRT_PIl 0.57236494292470008707171367567652933L /* log(sqrt(M_PIl)) */
-#define M_LOG_2_SQRT_PIl 1.265512123484645396488945797134706L /* log(2*sqrt(M_PIl)) */
#define M_PI_34l 2.356194490192344928846982537459627163L /* 3*pi/4 */
#define M_PI_34_LOG10El 1.023282265381381010614337719073516828L
#define M_PI2_LOG10El 0.682188176920920673742891812715677885L
#define M_PI4_LOG10El 0.341094088460460336871445906357838943L
#define M_PI_LOG10El 1.364376353841841347485783625431355770L
-#define M_1_DIV_El 0.367879441171442321595523770161460867L /* 1 div e */
#define ulps_file_name "ULPs" /* Name of the ULPs file. */
static FILE *ulps_file; /* File to document difference. */
@@ -713,13 +764,33 @@ check_float_internal (const char *test_name, FLOAT computed, FLOAT expected,
test_exceptions (test_name, exceptions);
test_errno (test_name, errno_value, exceptions);
+ if (exceptions & IGNORE_RESULT)
+ goto out;
FLOAT max_ulp = find_test_ulps (test_name);
if (issignaling (computed) && issignaling (expected))
- ok = 1;
+ {
+ if ((exceptions & TEST_NAN_SIGN) != 0
+ && signbit (computed) != signbit (expected))
+ {
+ ok = 0;
+ printf ("signaling NaN has wrong sign.\n");
+ }
+ else
+ ok = 1;
+ }
else if (issignaling (computed) || issignaling (expected))
ok = 0;
else if (isnan (computed) && isnan (expected))
- ok = 1;
+ {
+ if ((exceptions & TEST_NAN_SIGN) != 0
+ && signbit (computed) != signbit (expected))
+ {
+ ok = 0;
+ printf ("quiet NaN has wrong sign.\n");
+ }
+ else
+ ok = 1;
+ }
else if (isinf (computed) && isinf (expected))
{
/* Test for sign of infinities. */
@@ -775,6 +846,7 @@ check_float_internal (const char *test_name, FLOAT computed, FLOAT expected,
}
update_stats (ok);
+ out:
fpstack_test (test_name);
errno = 0;
}
@@ -814,9 +886,11 @@ check_complex (const char *test_name, __complex__ FLOAT computed,
part_exp = __imag__ expected;
/* Don't check again for exceptions or errno, just pass through the
- zero/inf sign test. */
+ other relevant flags. */
check_float_internal (str, part_comp, part_exp,
- exception & IGNORE_ZERO_INF_SIGN,
+ exception & (IGNORE_ZERO_INF_SIGN
+ | TEST_NAN_SIGN
+ | IGNORE_RESULT),
&imag_max_error);
free (str);
}
@@ -832,6 +906,8 @@ check_int (const char *test_name, int computed, int expected,
test_exceptions (test_name, exceptions);
test_errno (test_name, errno_value, exceptions);
+ if (exceptions & IGNORE_RESULT)
+ goto out;
noTests++;
if (computed == expected)
ok = 1;
@@ -847,6 +923,7 @@ check_int (const char *test_name, int computed, int expected,
}
update_stats (ok);
+ out:
fpstack_test (test_name);
errno = 0;
}
@@ -862,6 +939,8 @@ check_long (const char *test_name, long int computed, long int expected,
test_exceptions (test_name, exceptions);
test_errno (test_name, errno_value, exceptions);
+ if (exceptions & IGNORE_RESULT)
+ goto out;
noTests++;
if (computed == expected)
ok = 1;
@@ -877,6 +956,7 @@ check_long (const char *test_name, long int computed, long int expected,
}
update_stats (ok);
+ out:
fpstack_test (test_name);
errno = 0;
}
@@ -892,6 +972,8 @@ check_bool (const char *test_name, int computed, int expected,
test_exceptions (test_name, exceptions);
test_errno (test_name, errno_value, exceptions);
+ if (exceptions & IGNORE_RESULT)
+ goto out;
noTests++;
if ((computed == 0) == (expected == 0))
ok = 1;
@@ -907,6 +989,7 @@ check_bool (const char *test_name, int computed, int expected,
}
update_stats (ok);
+ out:
fpstack_test (test_name);
errno = 0;
}
@@ -923,6 +1006,8 @@ check_longlong (const char *test_name, long long int computed,
test_exceptions (test_name, exceptions);
test_errno (test_name, errno_value, exceptions);
+ if (exceptions & IGNORE_RESULT)
+ goto out;
noTests++;
if (computed == expected)
ok = 1;
@@ -938,10 +1023,24 @@ check_longlong (const char *test_name, long long int computed,
}
update_stats (ok);
+ out:
fpstack_test (test_name);
errno = 0;
}
+/* Return whether a test with flags EXCEPTIONS should be run. */
+static int
+enable_test (int exceptions)
+{
+ if (exceptions & XFAIL_TEST)
+ return 0;
+#ifdef TEST_INLINE
+ if (exceptions & NO_TEST_INLINE)
+ return 0;
+#endif
+ return 1;
+}
+
/* Structures for each kind of test. */
struct test_f_f_data
{
@@ -1137,15 +1236,16 @@ struct test_fFF_11_data
/* Run an individual test, including any required setup and checking
of results, or loop over all tests in an array. */
-#define RUN_TEST_f_f(ARG_STR, FUNC_NAME, ARG, EXPECTED, \
- EXCEPTIONS) \
- do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_float (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
- EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+#define RUN_TEST_f_f(ARG_STR, FUNC_NAME, ARG, EXPECTED, \
+ EXCEPTIONS) \
+ do \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_float (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
+ EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_f_f(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1153,15 +1253,16 @@ struct test_fFF_11_data
RUN_TEST_f_f ((ARRAY)[i].arg_str, FUNC_NAME, (ARRAY)[i].arg, \
(ARRAY)[i].expected, (ARRAY)[i].exceptions); \
ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_2_f(ARG_STR, FUNC_NAME, ARG1, ARG2, EXPECTED, \
- EXCEPTIONS) \
- do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_float (test_name, FUNC (FUNC_NAME) (ARG1, ARG2), EXPECTED, \
- EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+#define RUN_TEST_2_f(ARG_STR, FUNC_NAME, ARG1, ARG2, EXPECTED, \
+ EXCEPTIONS) \
+ do \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_float (test_name, FUNC (FUNC_NAME) (ARG1, ARG2), \
+ EXPECTED, EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_2_f(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1181,12 +1282,13 @@ struct test_fFF_11_data
#define RUN_TEST_fff_f(ARG_STR, FUNC_NAME, ARG1, ARG2, ARG3, \
EXPECTED, EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_float (test_name, FUNC (FUNC_NAME) (ARG1, ARG2, ARG3), \
- EXPECTED, EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_float (test_name, FUNC (FUNC_NAME) (ARG1, ARG2, ARG3), \
+ EXPECTED, EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_fff_f(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1198,13 +1300,14 @@ struct test_fFF_11_data
#define RUN_TEST_c_f(ARG_STR, FUNC_NAME, ARG1, ARG2, EXPECTED, \
EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_float (test_name, \
- FUNC (FUNC_NAME) (BUILD_COMPLEX (ARG1, ARG2)), \
- EXPECTED, EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_float (test_name, \
+ FUNC (FUNC_NAME) (BUILD_COMPLEX (ARG1, ARG2)), \
+ EXPECTED, EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_c_f(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1213,21 +1316,22 @@ struct test_fFF_11_data
(ARRAY)[i].argc, (ARRAY)[i].expected, \
(ARRAY)[i].exceptions); \
ROUND_RESTORE_ ## ROUNDING_MODE
-#define RUN_TEST_f_f1(ARG_STR, FUNC_NAME, ARG, EXPECTED, \
- EXCEPTIONS, EXTRA_VAR, EXTRA_TEST, \
- EXTRA_EXPECTED) \
- do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0; \
- check_float (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
- EXCEPTIONS); \
- EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1); \
- if (EXTRA_TEST) \
- check_int (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0); \
- EXTRA_OUTPUT_TEST_CLEANUP (1); \
- COMMON_TEST_CLEANUP; \
- } \
+#define RUN_TEST_f_f1(ARG_STR, FUNC_NAME, ARG, EXPECTED, \
+ EXCEPTIONS, EXTRA_VAR, EXTRA_TEST, \
+ EXTRA_EXPECTED) \
+ do \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0; \
+ check_float (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
+ EXCEPTIONS); \
+ EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1); \
+ if (EXTRA_TEST) \
+ check_int (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0); \
+ EXTRA_OUTPUT_TEST_CLEANUP (1); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_f_f1(FUNC_NAME, ARRAY, ROUNDING_MODE, EXTRA_VAR) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1241,17 +1345,18 @@ struct test_fFF_11_data
EXCEPTIONS, EXTRA_VAR, EXTRA_TEST, \
EXTRA_EXPECTED) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0; \
- check_float (test_name, FUNC (FUNC_NAME) (ARG, &(EXTRA_VAR)), \
- EXPECTED, EXCEPTIONS); \
- EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1); \
- if (EXTRA_TEST) \
- check_float (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0); \
- EXTRA_OUTPUT_TEST_CLEANUP (1); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0; \
+ check_float (test_name, FUNC (FUNC_NAME) (ARG, &(EXTRA_VAR)), \
+ EXPECTED, EXCEPTIONS); \
+ EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1); \
+ if (EXTRA_TEST) \
+ check_float (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0); \
+ EXTRA_OUTPUT_TEST_CLEANUP (1); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_fF_f1(FUNC_NAME, ARRAY, ROUNDING_MODE, EXTRA_VAR) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1265,17 +1370,18 @@ struct test_fFF_11_data
EXCEPTIONS, EXTRA_VAR, EXTRA_TEST, \
EXTRA_EXPECTED) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0; \
- check_float (test_name, FUNC (FUNC_NAME) (ARG, &(EXTRA_VAR)), \
- EXPECTED, EXCEPTIONS); \
- EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1); \
- if (EXTRA_TEST) \
- check_int (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0); \
- EXTRA_OUTPUT_TEST_CLEANUP (1); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0; \
+ check_float (test_name, FUNC (FUNC_NAME) (ARG, &(EXTRA_VAR)), \
+ EXPECTED, EXCEPTIONS); \
+ EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1); \
+ if (EXTRA_TEST) \
+ check_int (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0); \
+ EXTRA_OUTPUT_TEST_CLEANUP (1); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_fI_f1(FUNC_NAME, ARRAY, ROUNDING_MODE, EXTRA_VAR) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1289,18 +1395,19 @@ struct test_fFF_11_data
EXCEPTIONS, EXTRA_VAR, EXTRA_TEST, \
EXTRA_EXPECTED) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0; \
- check_float (test_name, \
- FUNC (FUNC_NAME) (ARG1, ARG2, &(EXTRA_VAR)), \
- EXPECTED, EXCEPTIONS); \
- EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1); \
- if (EXTRA_TEST) \
- check_int (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0); \
- EXTRA_OUTPUT_TEST_CLEANUP (1); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ (EXTRA_VAR) = (EXTRA_EXPECTED) == 0 ? 1 : 0; \
+ check_float (test_name, \
+ FUNC (FUNC_NAME) (ARG1, ARG2, &(EXTRA_VAR)), \
+ EXPECTED, EXCEPTIONS); \
+ EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1); \
+ if (EXTRA_TEST) \
+ check_int (extra1_name, EXTRA_VAR, EXTRA_EXPECTED, 0); \
+ EXTRA_OUTPUT_TEST_CLEANUP (1); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_ffI_f1(FUNC_NAME, ARRAY, ROUNDING_MODE, \
EXTRA_VAR) \
@@ -1315,13 +1422,14 @@ struct test_fFF_11_data
#define RUN_TEST_c_c(ARG_STR, FUNC_NAME, ARGR, ARGC, EXPR, EXPC, \
EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_complex (test_name, \
- FUNC (FUNC_NAME) (BUILD_COMPLEX (ARGR, ARGC)), \
- BUILD_COMPLEX (EXPR, EXPC), EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_complex (test_name, \
+ FUNC (FUNC_NAME) (BUILD_COMPLEX (ARGR, ARGC)), \
+ BUILD_COMPLEX (EXPR, EXPC), EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_c_c(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1333,14 +1441,15 @@ struct test_fFF_11_data
#define RUN_TEST_cc_c(ARG_STR, FUNC_NAME, ARG1R, ARG1C, ARG2R, ARG2C, \
EXPR, EXPC, EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_complex (test_name, \
- FUNC (FUNC_NAME) (BUILD_COMPLEX (ARG1R, ARG1C), \
- BUILD_COMPLEX (ARG2R, ARG2C)), \
- BUILD_COMPLEX (EXPR, EXPC), EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_complex (test_name, \
+ FUNC (FUNC_NAME) (BUILD_COMPLEX (ARG1R, ARG1C), \
+ BUILD_COMPLEX (ARG2R, ARG2C)), \
+ BUILD_COMPLEX (EXPR, EXPC), EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_cc_c(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1352,12 +1461,13 @@ struct test_fFF_11_data
ROUND_RESTORE_ ## ROUNDING_MODE
#define RUN_TEST_f_i(ARG_STR, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_int (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
- EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_int (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
+ EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_f_i(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1368,11 +1478,12 @@ struct test_fFF_11_data
#define RUN_TEST_f_i_tg(ARG_STR, FUNC_NAME, ARG, EXPECTED, \
EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_int (test_name, FUNC_NAME (ARG), EXPECTED, EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_int (test_name, FUNC_NAME (ARG), EXPECTED, EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_f_i_tg(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1383,12 +1494,13 @@ struct test_fFF_11_data
#define RUN_TEST_ff_i_tg(ARG_STR, FUNC_NAME, ARG1, ARG2, EXPECTED, \
EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_int (test_name, FUNC_NAME (ARG1, ARG2), EXPECTED, \
- EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_int (test_name, FUNC_NAME (ARG1, ARG2), EXPECTED, \
+ EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_ff_i_tg(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1399,12 +1511,13 @@ struct test_fFF_11_data
ROUND_RESTORE_ ## ROUNDING_MODE
#define RUN_TEST_f_b(ARG_STR, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_bool (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
- EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_bool (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
+ EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_f_b(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1415,11 +1528,12 @@ struct test_fFF_11_data
#define RUN_TEST_f_b_tg(ARG_STR, FUNC_NAME, ARG, EXPECTED, \
EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_bool (test_name, FUNC_NAME (ARG), EXPECTED, EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_bool (test_name, FUNC_NAME (ARG), EXPECTED, EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_f_b_tg(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1429,12 +1543,13 @@ struct test_fFF_11_data
ROUND_RESTORE_ ## ROUNDING_MODE
#define RUN_TEST_f_l(ARG_STR, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_long (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
- EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_long (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
+ EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_f_l(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1444,12 +1559,13 @@ struct test_fFF_11_data
ROUND_RESTORE_ ## ROUNDING_MODE
#define RUN_TEST_f_L(ARG_STR, FUNC_NAME, ARG, EXPECTED, EXCEPTIONS) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- check_longlong (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
- EXCEPTIONS); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ check_longlong (test_name, FUNC (FUNC_NAME) (ARG), EXPECTED, \
+ EXCEPTIONS); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_f_L(FUNC_NAME, ARRAY, ROUNDING_MODE) \
IF_ROUND_INIT_ ## ROUNDING_MODE \
@@ -1462,20 +1578,21 @@ struct test_fFF_11_data
EXTRA1_EXPECTED, EXTRA2_VAR, \
EXTRA2_TEST, EXTRA2_EXPECTED) \
do \
- { \
- COMMON_TEST_SETUP (ARG_STR); \
- FUNC (FUNC_NAME) (ARG, &(EXTRA1_VAR), &(EXTRA2_VAR)); \
- EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1); \
- if (EXTRA1_TEST) \
- check_float (extra1_name, EXTRA1_VAR, EXTRA1_EXPECTED, \
- EXCEPTIONS); \
- EXTRA_OUTPUT_TEST_CLEANUP (1); \
- EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 2); \
- if (EXTRA2_TEST) \
- check_float (extra2_name, EXTRA2_VAR, EXTRA2_EXPECTED, 0); \
- EXTRA_OUTPUT_TEST_CLEANUP (2); \
- COMMON_TEST_CLEANUP; \
- } \
+ if (enable_test (EXCEPTIONS)) \
+ { \
+ COMMON_TEST_SETUP (ARG_STR); \
+ FUNC (FUNC_NAME) (ARG, &(EXTRA1_VAR), &(EXTRA2_VAR)); \
+ EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 1); \
+ if (EXTRA1_TEST) \
+ check_float (extra1_name, EXTRA1_VAR, EXTRA1_EXPECTED, \
+ EXCEPTIONS); \
+ EXTRA_OUTPUT_TEST_CLEANUP (1); \
+ EXTRA_OUTPUT_TEST_SETUP (ARG_STR, 2); \
+ if (EXTRA2_TEST) \
+ check_float (extra2_name, EXTRA2_VAR, EXTRA2_EXPECTED, 0); \
+ EXTRA_OUTPUT_TEST_CLEANUP (2); \
+ COMMON_TEST_CLEANUP; \
+ } \
while (0)
#define RUN_TEST_LOOP_fFF_11(FUNC_NAME, ARRAY, ROUNDING_MODE, \
EXTRA1_VAR, EXTRA2_VAR) \
@@ -1516,7 +1633,7 @@ static const struct test_f_f_data acos_test_data[] =
{
TEST_f_f (acos, plus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (acos, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (acos, qnan_value, qnan_value),
+ TEST_f_f (acos, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
/* |x| > 1: */
TEST_f_f (acos, 1.125L, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
@@ -1524,27 +1641,7 @@ static const struct test_f_f_data acos_test_data[] =
TEST_f_f (acos, max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (acos, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (acos, 0, M_PI_2l),
- TEST_f_f (acos, minus_zero, M_PI_2l),
- TEST_f_f (acos, 1, 0),
- TEST_f_f (acos, -1, M_PIl),
- TEST_f_f (acos, 0.5, M_PI_6l*2.0),
- TEST_f_f (acos, -0.5, M_PI_6l*4.0),
- TEST_f_f (acos, 0.75L, 0.722734247813415611178377352641333362L),
- TEST_f_f (acos, 2e-17L, 1.57079632679489659923132169163975144L),
- TEST_f_f (acos, 0.0625L, 1.50825556499840522843072005474337068L),
- TEST_f_f (acos, 0x0.ffffffp0L, 3.4526698471620358760324948263873649728491e-4L),
- TEST_f_f (acos, -0x0.ffffffp0L, 3.1412473866050770348750401337968641476999L),
-#ifndef TEST_FLOAT
- TEST_f_f (acos, 0x0.ffffffff8p0L, 1.5258789062648029736620564947844627548516e-5L),
- TEST_f_f (acos, -0x0.ffffffff8p0L, 3.1415773948007305904329067627145550395696L),
- TEST_f_f (acos, 0x0.ffffffffffffp0L, 8.4293697021788088529885473244391795127130e-8L),
- TEST_f_f (acos, -0x0.ffffffffffffp0L, 3.1415925692960962166745548533940296398054L),
-#endif
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 64
- TEST_f_f (acos, 0x0.ffffffffffffffffp0L, 3.2927225399135962333718255320079907245059e-10L),
- TEST_f_f (acos, -0x0.ffffffffffffffffp0L, 3.1415926532605209844712837599423203309964L),
-#endif
+ AUTO_TESTS_f_f (acos, tonearest),
};
static void
@@ -1558,12 +1655,7 @@ acos_test (void)
static const struct test_f_f_data acos_tonearest_test_data[] =
{
- TEST_f_f (acos, 0, M_PI_2l),
- TEST_f_f (acos, minus_zero, M_PI_2l),
- TEST_f_f (acos, 1, 0),
- TEST_f_f (acos, -1, M_PIl),
- TEST_f_f (acos, 0.5, M_PI_6l*2.0),
- TEST_f_f (acos, -0.5, M_PI_6l*4.0),
+ AUTO_TESTS_f_f (acos, tonearest),
};
static void
@@ -1577,12 +1669,7 @@ acos_test_tonearest (void)
static const struct test_f_f_data acos_towardzero_test_data[] =
{
- TEST_f_f (acos, 0, M_PI_2l),
- TEST_f_f (acos, minus_zero, M_PI_2l),
- TEST_f_f (acos, 1, 0),
- TEST_f_f (acos, -1, M_PIl),
- TEST_f_f (acos, 0.5, M_PI_6l*2.0),
- TEST_f_f (acos, -0.5, M_PI_6l*4.0),
+ AUTO_TESTS_f_f (acos, towardzero),
};
static void
@@ -1596,12 +1683,7 @@ acos_test_towardzero (void)
static const struct test_f_f_data acos_downward_test_data[] =
{
- TEST_f_f (acos, 0, M_PI_2l),
- TEST_f_f (acos, minus_zero, M_PI_2l),
- TEST_f_f (acos, 1, 0),
- TEST_f_f (acos, -1, M_PIl),
- TEST_f_f (acos, 0.5, M_PI_6l*2.0),
- TEST_f_f (acos, -0.5, M_PI_6l*4.0),
+ AUTO_TESTS_f_f (acos, downward),
};
static void
@@ -1615,12 +1697,7 @@ acos_test_downward (void)
static const struct test_f_f_data acos_upward_test_data[] =
{
- TEST_f_f (acos, 0, M_PI_2l),
- TEST_f_f (acos, minus_zero, M_PI_2l),
- TEST_f_f (acos, 1, 0),
- TEST_f_f (acos, -1, M_PIl),
- TEST_f_f (acos, 0.5, M_PI_6l*2.0),
- TEST_f_f (acos, -0.5, M_PI_6l*4.0),
+ AUTO_TESTS_f_f (acos, upward),
};
static void
@@ -1635,14 +1712,13 @@ static const struct test_f_f_data acosh_test_data[] =
{
TEST_f_f (acosh, plus_infty, plus_infty),
TEST_f_f (acosh, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (acosh, qnan_value, qnan_value),
+ TEST_f_f (acosh, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
/* x < 1: */
TEST_f_f (acosh, -1.125L, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (acosh, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (acosh, 1, 0),
- TEST_f_f (acosh, 7, 2.63391579384963341725009269461593689L),
+ AUTO_TESTS_f_f (acosh, tonearest),
};
static void
@@ -1657,7 +1733,7 @@ static const struct test_f_f_data asin_test_data[] =
{
TEST_f_f (asin, plus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (asin, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (asin, qnan_value, qnan_value),
+ TEST_f_f (asin, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
/* asin x == qNaN plus invalid exception for |x| > 1. */
TEST_f_f (asin, 1.125L, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
@@ -1665,25 +1741,7 @@ static const struct test_f_f_data asin_test_data[] =
TEST_f_f (asin, max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (asin, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (asin, 0, 0),
- TEST_f_f (asin, minus_zero, minus_zero),
- TEST_f_f (asin, 0.5, M_PI_6l),
- TEST_f_f (asin, -0.5, -M_PI_6l),
- TEST_f_f (asin, 1.0, M_PI_2l),
- TEST_f_f (asin, -1.0, -M_PI_2l),
- TEST_f_f (asin, 0.75L, 0.848062078981481008052944338998418080L),
- TEST_f_f (asin, 0x0.ffffffp0L, 1.5704510598101804156437184421571127056013L),
- TEST_f_f (asin, -0x0.ffffffp0L, -1.5704510598101804156437184421571127056013L),
-#ifndef TEST_FLOAT
- TEST_f_f (asin, 0x0.ffffffff8p0L, 1.5707810680058339712015850710748035974710L),
- TEST_f_f (asin, -0x0.ffffffff8p0L, -1.5707810680058339712015850710748035974710L),
- TEST_f_f (asin, 0x0.ffffffffffffp0L, 1.5707962425011995974432331617542781977068L),
- TEST_f_f (asin, -0x0.ffffffffffffp0L, -1.5707962425011995974432331617542781977068L),
-#endif
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 64
- TEST_f_f (asin, 0x0.ffffffffffffffffp0L, 1.5707963264656243652399620683025688888978L),
- TEST_f_f (asin, -0x0.ffffffffffffffffp0L, -1.5707963264656243652399620683025688888978L),
-#endif
+ AUTO_TESTS_f_f (asin, tonearest),
};
static void
@@ -1697,12 +1755,7 @@ asin_test (void)
static const struct test_f_f_data asin_tonearest_test_data[] =
{
- TEST_f_f (asin, 0, 0),
- TEST_f_f (asin, minus_zero, minus_zero),
- TEST_f_f (asin, 0.5, M_PI_6l),
- TEST_f_f (asin, -0.5, -M_PI_6l),
- TEST_f_f (asin, 1.0, M_PI_2l),
- TEST_f_f (asin, -1.0, -M_PI_2l),
+ AUTO_TESTS_f_f (asin, tonearest),
};
static void
@@ -1716,12 +1769,7 @@ asin_test_tonearest (void)
static const struct test_f_f_data asin_towardzero_test_data[] =
{
- TEST_f_f (asin, 0, 0),
- TEST_f_f (asin, minus_zero, minus_zero),
- TEST_f_f (asin, 0.5, M_PI_6l),
- TEST_f_f (asin, -0.5, -M_PI_6l),
- TEST_f_f (asin, 1.0, M_PI_2l),
- TEST_f_f (asin, -1.0, -M_PI_2l),
+ AUTO_TESTS_f_f (asin, towardzero),
};
static void
@@ -1735,12 +1783,7 @@ asin_test_towardzero (void)
static const struct test_f_f_data asin_downward_test_data[] =
{
- TEST_f_f (asin, 0, 0),
- TEST_f_f (asin, minus_zero, minus_zero),
- TEST_f_f (asin, 0.5, M_PI_6l),
- TEST_f_f (asin, -0.5, -M_PI_6l),
- TEST_f_f (asin, 1.0, M_PI_2l),
- TEST_f_f (asin, -1.0, -M_PI_2l),
+ AUTO_TESTS_f_f (asin, downward),
};
static void
@@ -1754,12 +1797,7 @@ asin_test_downward (void)
static const struct test_f_f_data asin_upward_test_data[] =
{
- TEST_f_f (asin, 0, 0),
- TEST_f_f (asin, minus_zero, minus_zero),
- TEST_f_f (asin, 0.5, M_PI_6l),
- TEST_f_f (asin, -0.5, -M_PI_6l),
- TEST_f_f (asin, 1.0, M_PI_2l),
- TEST_f_f (asin, -1.0, -M_PI_2l),
+ AUTO_TESTS_f_f (asin, upward),
};
static void
@@ -1772,14 +1810,10 @@ asin_test_upward (void)
static const struct test_f_f_data asinh_test_data[] =
{
- TEST_f_f (asinh, 0, 0),
- TEST_f_f (asinh, minus_zero, minus_zero),
-#ifndef TEST_INLINE
- TEST_f_f (asinh, plus_infty, plus_infty),
- TEST_f_f (asinh, minus_infty, minus_infty),
-#endif
- TEST_f_f (asinh, qnan_value, qnan_value),
- TEST_f_f (asinh, 0.75L, 0.693147180559945309417232121458176568L),
+ TEST_f_f (asinh, plus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_f_f (asinh, minus_infty, minus_infty, NO_TEST_INLINE),
+ TEST_f_f (asinh, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ AUTO_TESTS_f_f (asinh, tonearest),
};
static void
@@ -1792,27 +1826,11 @@ asinh_test (void)
static const struct test_f_f_data atan_test_data[] =
{
- TEST_f_f (atan, 0, 0),
- TEST_f_f (atan, minus_zero, minus_zero),
-
TEST_f_f (atan, plus_infty, M_PI_2l),
TEST_f_f (atan, minus_infty, -M_PI_2l),
- TEST_f_f (atan, qnan_value, qnan_value),
- TEST_f_f (atan, max_value, M_PI_2l),
- TEST_f_f (atan, -max_value, -M_PI_2l),
-
- TEST_f_f (atan, 1, M_PI_4l),
- TEST_f_f (atan, -1, -M_PI_4l),
+ TEST_f_f (atan, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_f_f (atan, 0.75L, 0.643501108793284386802809228717322638L),
-
- TEST_f_f (atan, 0x1p-100L, 0x1p-100L),
-#ifndef TEST_FLOAT
- TEST_f_f (atan, 0x1p-600L, 0x1p-600L),
-#endif
-#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381
- TEST_f_f (atan, 0x1p-10000L, 0x1p-10000L),
-#endif
+ AUTO_TESTS_f_f (atan, tonearest),
};
static void
@@ -1827,12 +1845,9 @@ atan_test (void)
static const struct test_f_f_data atanh_test_data[] =
{
- TEST_f_f (atanh, 0, 0),
- TEST_f_f (atanh, minus_zero, minus_zero),
-
TEST_f_f (atanh, 1, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
TEST_f_f (atanh, -1, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (atanh, qnan_value, qnan_value),
+ TEST_f_f (atanh, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
/* atanh (x) == qNaN plus invalid exception if |x| > 1. */
TEST_f_f (atanh, 1.125L, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
@@ -1840,7 +1855,7 @@ static const struct test_f_f_data atanh_test_data[] =
TEST_f_f (atanh, max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (atanh, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (atanh, 0.75L, 0.972955074527656652552676371721589865L),
+ AUTO_TESTS_f_f (atanh, tonearest),
};
static void
@@ -1853,36 +1868,6 @@ atanh_test (void)
static const struct test_ff_f_data atan2_test_data[] =
{
- /* atan2 (0,x) == 0 for x > 0. */
- TEST_ff_f (atan2, 0, 1, 0),
-
- /* atan2 (-0,x) == -0 for x > 0. */
- TEST_ff_f (atan2, minus_zero, 1, minus_zero),
-
- TEST_ff_f (atan2, 0, 0, 0),
- TEST_ff_f (atan2, minus_zero, 0, minus_zero),
-
- /* atan2 (+0,x) == +pi for x < 0. */
- TEST_ff_f (atan2, 0, -1, M_PIl),
-
- /* atan2 (-0,x) == -pi for x < 0. */
- TEST_ff_f (atan2, minus_zero, -1, -M_PIl),
-
- TEST_ff_f (atan2, 0, minus_zero, M_PIl),
- TEST_ff_f (atan2, minus_zero, minus_zero, -M_PIl),
-
- /* atan2 (y,+0) == pi/2 for y > 0. */
- TEST_ff_f (atan2, 1, 0, M_PI_2l),
-
- /* atan2 (y,-0) == pi/2 for y > 0. */
- TEST_ff_f (atan2, 1, minus_zero, M_PI_2l),
-
- /* atan2 (y,+0) == -pi/2 for y < 0. */
- TEST_ff_f (atan2, -1, 0, -M_PI_2l),
-
- /* atan2 (y,-0) == -pi/2 for y < 0. */
- TEST_ff_f (atan2, -1, minus_zero, -M_PI_2l),
-
/* atan2 (y,inf) == +0 for finite y > 0. */
TEST_ff_f (atan2, 1, plus_infty, 0),
@@ -1905,24 +1890,9 @@ static const struct test_ff_f_data atan2_test_data[] =
TEST_ff_f (atan2, minus_infty, plus_infty, -M_PI_4l),
TEST_ff_f (atan2, plus_infty, minus_infty, M_PI_34l),
TEST_ff_f (atan2, minus_infty, minus_infty, -M_PI_34l),
- TEST_ff_f (atan2, qnan_value, qnan_value, qnan_value),
-
- TEST_ff_f (atan2, max_value, max_value, M_PI_4l),
-
- TEST_ff_f (atan2, max_value, min_value, M_PI_2l),
- TEST_ff_f (atan2, -max_value, -min_value, -M_PI_2l),
-
- TEST_ff_f (atan2, 0.75L, 1, 0.643501108793284386802809228717322638L),
- TEST_ff_f (atan2, -0.75L, 1.0L, -0.643501108793284386802809228717322638L),
- TEST_ff_f (atan2, 0.75L, -1.0L, 2.49809154479650885165983415456218025L),
- TEST_ff_f (atan2, -0.75L, -1.0L, -2.49809154479650885165983415456218025L),
- TEST_ff_f (atan2, 0.390625L, .00029L, 1.57005392693128974780151246612928941L),
- TEST_ff_f (atan2, 1.390625L, 0.9296875L, 0.981498387184244311516296577615519772L),
+ TEST_ff_f (atan2, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_ff_f (atan2, -0.00756827042671106339L, -.001792735857538728036L, -1.80338464113663849327153994379639112L),
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 64
- TEST_ff_f (atan2, 0x1.00000000000001p0L, 0x1.00000000000001p0L, M_PI_4l),
-#endif
+ AUTO_TESTS_ff_f (atan2, tonearest),
};
static void
@@ -1947,25 +1917,7 @@ static const struct test_c_f_data cabs_test_data[] =
TEST_c_f (cabs, qnan_value, qnan_value, qnan_value),
- /* cabs (x,y) == cabs (y,x). */
- TEST_c_f (cabs, 0.75L, 12.390625L, 12.4133028598606664302388810868156657L),
- /* cabs (x,y) == cabs (-x,y). */
- TEST_c_f (cabs, -12.390625L, 0.75L, 12.4133028598606664302388810868156657L),
- /* cabs (x,y) == cabs (-y,x). */
- TEST_c_f (cabs, -0.75L, 12.390625L, 12.4133028598606664302388810868156657L),
- /* cabs (x,y) == cabs (-x,-y). */
- TEST_c_f (cabs, -12.390625L, -0.75L, 12.4133028598606664302388810868156657L),
- /* cabs (x,y) == cabs (-y,-x). */
- TEST_c_f (cabs, -0.75L, -12.390625L, 12.4133028598606664302388810868156657L),
- /* cabs (x,0) == fabs (x). */
- TEST_c_f (cabs, -0.75L, 0, 0.75L),
- TEST_c_f (cabs, 0.75L, 0, 0.75L),
- TEST_c_f (cabs, -1.0L, 0, 1.0L),
- TEST_c_f (cabs, 1.0L, 0, 1.0L),
- TEST_c_f (cabs, -5.7e7L, 0, 5.7e7L),
- TEST_c_f (cabs, 5.7e7L, 0, 5.7e7L),
-
- TEST_c_f (cabs, 0.75L, 1.25L, 1.45773797371132511771853821938639577L),
+ AUTO_TESTS_c_f (cabs, tonearest),
};
static void
@@ -3356,35 +3308,6 @@ static const struct test_c_f_data carg_test_data[] =
{
/* carg (x + iy) is specified as atan2 (y, x) */
- /* carg (x + i 0) == 0 for x > 0. */
- TEST_c_f (carg, 2.0, 0, 0),
- /* carg (x - i 0) == -0 for x > 0. */
- TEST_c_f (carg, 2.0, minus_zero, minus_zero),
-
- TEST_c_f (carg, 0, 0, 0),
- TEST_c_f (carg, 0, minus_zero, minus_zero),
-
- /* carg (x + i 0) == +pi for x < 0. */
- TEST_c_f (carg, -2.0, 0, M_PIl),
-
- /* carg (x - i 0) == -pi for x < 0. */
- TEST_c_f (carg, -2.0, minus_zero, -M_PIl),
-
- TEST_c_f (carg, minus_zero, 0, M_PIl),
- TEST_c_f (carg, minus_zero, minus_zero, -M_PIl),
-
- /* carg (+0 + i y) == pi/2 for y > 0. */
- TEST_c_f (carg, 0, 2.0, M_PI_2l),
-
- /* carg (-0 + i y) == pi/2 for y > 0. */
- TEST_c_f (carg, minus_zero, 2.0, M_PI_2l),
-
- /* carg (+0 + i y) == -pi/2 for y < 0. */
- TEST_c_f (carg, 0, -2.0, -M_PI_2l),
-
- /* carg (-0 + i y) == -pi/2 for y < 0. */
- TEST_c_f (carg, minus_zero, -2.0, -M_PI_2l),
-
/* carg (inf + i y) == +0 for finite y > 0. */
TEST_c_f (carg, plus_infty, 2.0, 0),
@@ -3412,6 +3335,8 @@ static const struct test_c_f_data carg_test_data[] =
TEST_c_f (carg, minus_infty, minus_infty, -M_PI_34l),
TEST_c_f (carg, qnan_value, qnan_value, qnan_value),
+
+ AUTO_TESTS_c_f (carg, tonearest),
};
static void
@@ -5833,23 +5758,11 @@ catanh_test (void)
static const struct test_f_f_data cbrt_test_data[] =
{
- TEST_f_f (cbrt, 0.0, 0.0),
- TEST_f_f (cbrt, minus_zero, minus_zero),
-
TEST_f_f (cbrt, plus_infty, plus_infty),
TEST_f_f (cbrt, minus_infty, minus_infty),
- TEST_f_f (cbrt, qnan_value, qnan_value),
-
- TEST_f_f (cbrt, -0.001L, -0.1L),
- TEST_f_f (cbrt, 8, 2),
- TEST_f_f (cbrt, -27.0, -3.0),
- TEST_f_f (cbrt, 0.9921875L, 0.997389022060725270579075195353955217L),
- TEST_f_f (cbrt, 0.75L, 0.908560296416069829445605878163630251L),
+ TEST_f_f (cbrt, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (cbrt, 0x1p16383L, 0x1p5461L),
- TEST_f_f (cbrt, 0x1p-16383L, 0x1p-5461L),
-#endif
+ AUTO_TESTS_f_f (cbrt, tonearest),
};
static void
@@ -6758,11 +6671,15 @@ static const struct test_ff_f_data copysign_test_data[] =
TEST_ff_f (copysign, minus_zero, plus_infty, 0, NO_INEXACT_EXCEPTION),
TEST_ff_f (copysign, minus_zero, minus_zero, minus_zero, NO_INEXACT_EXCEPTION),
- /* XXX More correctly we would have to check the sign of the NaN. */
- TEST_ff_f (copysign, qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_ff_f (copysign, qnan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_ff_f (copysign, -qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_ff_f (copysign, -qnan_value, minus_zero, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (copysign, 0, qnan_value, 0, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (copysign, 0, -qnan_value, minus_zero, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (copysign, minus_zero, qnan_value, 0, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (copysign, minus_zero, -qnan_value, minus_zero, NO_INEXACT_EXCEPTION),
+
+ TEST_ff_f (copysign, qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|TEST_NAN_SIGN),
+ TEST_ff_f (copysign, qnan_value, minus_zero, -qnan_value, NO_INEXACT_EXCEPTION|TEST_NAN_SIGN),
+ TEST_ff_f (copysign, -qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION|TEST_NAN_SIGN),
+ TEST_ff_f (copysign, -qnan_value, minus_zero, -qnan_value, NO_INEXACT_EXCEPTION|TEST_NAN_SIGN),
};
static void
@@ -6776,66 +6693,11 @@ copysign_test (void)
static const struct test_f_f_data cos_test_data[] =
{
- TEST_f_f (cos, 0, 1),
- TEST_f_f (cos, minus_zero, 1),
TEST_f_f (cos, plus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (cos, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (cos, qnan_value, qnan_value, ERRNO_UNCHANGED),
+ TEST_f_f (cos, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
- TEST_f_f (cos, M_PI_6l * 2.0, 0.5),
- TEST_f_f (cos, M_PI_6l * 4.0, -0.5),
-
- /* The value of M_PI_2l is never exactly PI/2, and therefore the
- answer is never exactly zero. The answer is equal to the error
- in rounding PI/2 for the type used. Thus the answer is unique
- to each type. */
-#ifdef TEST_FLOAT
- /* 32-bit float. */
- TEST_f_f (cos, M_PI_2l, -0x1.777a5cp-25L),
-#endif
-#if defined TEST_DOUBLE || (defined TEST_LDOUBLE && LDBL_MANT_DIG == 53)
- /* 64-bit double or 64-bit long double. */
- TEST_f_f (cos, M_PI_2l, 0x1.1a62633145c07p-54L),
-#endif
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG == 64
- /* 96-bit long double. */
- TEST_f_f (cos, M_PI_2l, -0xe.ce675d1fc8f8cbbp-69L),
-#endif
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG == 106
- /* 128-bit IBM long double. */
- TEST_f_f (cos, M_PI_2l, 0x1.c1cd129024e088a67cc74020bcp-107L),
-#endif
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG == 113
- /* 128-bit long double. */
- TEST_f_f (cos, M_PI_2l, 0x1.cd129024e088a67cc74020bbea64p-115L),
-#endif
-
- TEST_f_f (cos, 0.75L, 0.731688868873820886311838753000084544L),
-
- TEST_f_f (cos, 0x1p65, 0.99888622066058013610642172179340364209972L),
- TEST_f_f (cos, -0x1p65, 0.99888622066058013610642172179340364209972L),
-
-#ifdef TEST_DOUBLE
- TEST_f_f (cos, 0.80190127184058835, 0.69534156199418473),
-#endif
-
- TEST_f_f (cos, 0x1.442f74p+15, 2.4407839902314016628485779006274989801517e-06L),
-
-#ifndef TEST_FLOAT
- TEST_f_f (cos, 1e22, 0.5232147853951389454975944733847094921409L),
- TEST_f_f (cos, 0x1p1023, -0.826369834614147994500785680811743734805L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (cos, 0x1p16383L, 0.9210843909921906206874509522505756251609L),
-#endif
-
- TEST_f_f (cos, 0x1p+120, -9.25879022854837867303861764107414946730833e-01L),
- TEST_f_f (cos, 0x1p+127, 7.81914638714960072263910298466369236613162e-01L),
- TEST_f_f (cos, 0x1.fffff8p+127, 9.98819362551949040703862043664101081064641e-01L),
- TEST_f_f (cos, 0x1.fffffep+127, 8.53021039830304158051791467692161107353094e-01L),
- TEST_f_f (cos, 0x1p+50, 8.68095904660550604334592502063501320395739e-01L),
- TEST_f_f (cos, 0x1p+28, -1.65568979490578758865468278195361551113358e-01L),
+ AUTO_TESTS_f_f (cos, tonearest),
};
static void
@@ -6849,16 +6711,7 @@ cos_test (void)
static const struct test_f_f_data cos_tonearest_test_data[] =
{
- TEST_f_f (cos, 1, 0.5403023058681397174009366074429766037323L),
- TEST_f_f (cos, 2, -0.4161468365471423869975682295007621897660L),
- TEST_f_f (cos, 3, -0.9899924966004454572715727947312613023937L),
- TEST_f_f (cos, 4, -0.6536436208636119146391681830977503814241L),
- TEST_f_f (cos, 5, 0.2836621854632262644666391715135573083344L),
- TEST_f_f (cos, 6, 0.9601702866503660205456522979229244054519L),
- TEST_f_f (cos, 7, 0.7539022543433046381411975217191820122183L),
- TEST_f_f (cos, 8, -0.1455000338086135258688413818311946826093L),
- TEST_f_f (cos, 9, -0.9111302618846769883682947111811653112463L),
- TEST_f_f (cos, 10, -0.8390715290764524522588639478240648345199L),
+ AUTO_TESTS_f_f (cos, tonearest),
};
static void
@@ -6872,16 +6725,7 @@ cos_test_tonearest (void)
static const struct test_f_f_data cos_towardzero_test_data[] =
{
- TEST_f_f (cos, 1, 0.5403023058681397174009366074429766037323L),
- TEST_f_f (cos, 2, -0.4161468365471423869975682295007621897660L),
- TEST_f_f (cos, 3, -0.9899924966004454572715727947312613023937L),
- TEST_f_f (cos, 4, -0.6536436208636119146391681830977503814241L),
- TEST_f_f (cos, 5, 0.2836621854632262644666391715135573083344L),
- TEST_f_f (cos, 6, 0.9601702866503660205456522979229244054519L),
- TEST_f_f (cos, 7, 0.7539022543433046381411975217191820122183L),
- TEST_f_f (cos, 8, -0.1455000338086135258688413818311946826093L),
- TEST_f_f (cos, 9, -0.9111302618846769883682947111811653112463L),
- TEST_f_f (cos, 10, -0.8390715290764524522588639478240648345199L),
+ AUTO_TESTS_f_f (cos, towardzero),
};
static void
@@ -6895,16 +6739,7 @@ cos_test_towardzero (void)
static const struct test_f_f_data cos_downward_test_data[] =
{
- TEST_f_f (cos, 1, 0.5403023058681397174009366074429766037323L),
- TEST_f_f (cos, 2, -0.4161468365471423869975682295007621897660L),
- TEST_f_f (cos, 3, -0.9899924966004454572715727947312613023937L),
- TEST_f_f (cos, 4, -0.6536436208636119146391681830977503814241L),
- TEST_f_f (cos, 5, 0.2836621854632262644666391715135573083344L),
- TEST_f_f (cos, 6, 0.9601702866503660205456522979229244054519L),
- TEST_f_f (cos, 7, 0.7539022543433046381411975217191820122183L),
- TEST_f_f (cos, 8, -0.1455000338086135258688413818311946826093L),
- TEST_f_f (cos, 9, -0.9111302618846769883682947111811653112463L),
- TEST_f_f (cos, 10, -0.8390715290764524522588639478240648345199L),
+ AUTO_TESTS_f_f (cos, downward),
};
static void
@@ -6918,16 +6753,7 @@ cos_test_downward (void)
static const struct test_f_f_data cos_upward_test_data[] =
{
- TEST_f_f (cos, 1, 0.5403023058681397174009366074429766037323L),
- TEST_f_f (cos, 2, -0.4161468365471423869975682295007621897660L),
- TEST_f_f (cos, 3, -0.9899924966004454572715727947312613023937L),
- TEST_f_f (cos, 4, -0.6536436208636119146391681830977503814241L),
- TEST_f_f (cos, 5, 0.2836621854632262644666391715135573083344L),
- TEST_f_f (cos, 6, 0.9601702866503660205456522979229244054519L),
- TEST_f_f (cos, 7, 0.7539022543433046381411975217191820122183L),
- TEST_f_f (cos, 8, -0.1455000338086135258688413818311946826093L),
- TEST_f_f (cos, 9, -0.9111302618846769883682947111811653112463L),
- TEST_f_f (cos, 10, -0.8390715290764524522588639478240648345199L),
+ AUTO_TESTS_f_f (cos, upward),
};
static void
@@ -6941,21 +6767,11 @@ cos_test_upward (void)
static const struct test_f_f_data cosh_test_data[] =
{
- TEST_f_f (cosh, 0, 1),
- TEST_f_f (cosh, minus_zero, 1),
+ TEST_f_f (cosh, plus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_f_f (cosh, minus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_f_f (cosh, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
-#ifndef TEST_INLINE
- TEST_f_f (cosh, plus_infty, plus_infty),
- TEST_f_f (cosh, minus_infty, plus_infty),
-#endif
- TEST_f_f (cosh, qnan_value, qnan_value),
-
- TEST_f_f (cosh, 0.75L, 1.29468328467684468784170818539018176L),
-
-#ifndef TEST_FLOAT
- TEST_f_f (cosh, 709.8893558127259666434838436543941497802734375L, 9.9999998999995070652573675944761818416035e+307L),
- TEST_f_f (cosh, -709.8893558127259666434838436543941497802734375L, 9.9999998999995070652573675944761818416035e+307L),
-#endif
+ AUTO_TESTS_f_f (cosh, tonearest),
};
static void
@@ -6969,9 +6785,7 @@ cosh_test (void)
static const struct test_f_f_data cosh_tonearest_test_data[] =
{
- TEST_f_f (cosh, 22, 1792456423.065795780980053377632656584997L),
- TEST_f_f (cosh, 23, 4872401723.124451300068625740569997090344L),
- TEST_f_f (cosh, 24, 13244561064.92173614708845674912733665919L),
+ AUTO_TESTS_f_f (cosh, tonearest),
};
static void
@@ -6985,9 +6799,7 @@ cosh_test_tonearest (void)
static const struct test_f_f_data cosh_towardzero_test_data[] =
{
- TEST_f_f (cosh, 22, 1792456423.065795780980053377632656584997L),
- TEST_f_f (cosh, 23, 4872401723.124451300068625740569997090344L),
- TEST_f_f (cosh, 24, 13244561064.92173614708845674912733665919L),
+ AUTO_TESTS_f_f (cosh, towardzero),
};
static void
@@ -7001,9 +6813,7 @@ cosh_test_towardzero (void)
static const struct test_f_f_data cosh_downward_test_data[] =
{
- TEST_f_f (cosh, 22, 1792456423.065795780980053377632656584997L),
- TEST_f_f (cosh, 23, 4872401723.124451300068625740569997090344L),
- TEST_f_f (cosh, 24, 13244561064.92173614708845674912733665919L),
+ AUTO_TESTS_f_f (cosh, downward),
};
static void
@@ -7017,9 +6827,7 @@ cosh_test_downward (void)
static const struct test_f_f_data cosh_upward_test_data[] =
{
- TEST_f_f (cosh, 22, 1792456423.065795780980053377632656584997L),
- TEST_f_f (cosh, 23, 4872401723.124451300068625740569997090344L),
- TEST_f_f (cosh, 24, 13244561064.92173614708845674912733665919L),
+ AUTO_TESTS_f_f (cosh, upward),
};
static void
@@ -7809,18 +7617,11 @@ ctanh_test_upward (void)
static const struct test_f_f_data erf_test_data[] =
{
- TEST_f_f (erf, 0, 0),
- TEST_f_f (erf, minus_zero, minus_zero),
TEST_f_f (erf, plus_infty, 1),
TEST_f_f (erf, minus_infty, -1),
- TEST_f_f (erf, qnan_value, qnan_value),
+ TEST_f_f (erf, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_f_f (erf, 0.125L, 0.140316204801333817393029446521623398L),
- TEST_f_f (erf, 0.75L, 0.711155633653515131598937834591410777L),
- TEST_f_f (erf, 1.25L, 0.922900128256458230136523481197281140L),
- TEST_f_f (erf, 2.0L, 0.995322265018952734162069256367252929L),
- TEST_f_f (erf, 4.125L, 0.999999994576599200434933994687765914L),
- TEST_f_f (erf, 27.0L, 1.0L),
+ AUTO_TESTS_f_f (erf, tonearest),
};
static void
@@ -7836,27 +7637,9 @@ static const struct test_f_f_data erfc_test_data[] =
{
TEST_f_f (erfc, plus_infty, 0.0),
TEST_f_f (erfc, minus_infty, 2.0),
- TEST_f_f (erfc, 0.0, 1.0),
- TEST_f_f (erfc, minus_zero, 1.0),
- TEST_f_f (erfc, qnan_value, qnan_value),
-
- TEST_f_f (erfc, 0.125L, 0.859683795198666182606970553478376602L),
- TEST_f_f (erfc, 0.75L, 0.288844366346484868401062165408589223L),
- TEST_f_f (erfc, 1.25L, 0.0770998717435417698634765188027188596L),
- TEST_f_f (erfc, 2.0L, 0.00467773498104726583793074363274707139L),
- TEST_f_f (erfc, 0x1.f7303cp+1L, 2.705500297238986897105236321218861842255e-8L),
- TEST_f_f (erfc, 4.125L, 0.542340079956506600531223408575531062e-8L),
- TEST_f_f (erfc, 0x1.ffa002p+2L, 1.233585992097580296336099501489175967033e-29L),
- TEST_f_f (erfc, 0x1.ffffc8p+2L, 1.122671365033056305522366683719541099329e-29L),
-#ifdef TEST_LDOUBLE
- /* The result can only be represented in long double. */
-# if LDBL_MIN_10_EXP < -319
- TEST_f_f (erfc, 27.0L, 0.523704892378925568501606768284954709e-318L),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_f_f (erfc, 0x1.ffff56789abcdef0123456789a8p+2L, 1.123161416304655390092138725253789378459e-29L),
-# endif
-#endif
+ TEST_f_f (erfc, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+
+ AUTO_TESTS_f_f (erfc, tonearest),
};
static void
@@ -7870,36 +7653,11 @@ erfc_test (void)
static const struct test_f_f_data exp_test_data[] =
{
- TEST_f_f (exp, 0, 1),
- TEST_f_f (exp, minus_zero, 1),
-
-#ifndef TEST_INLINE
- TEST_f_f (exp, plus_infty, plus_infty),
- TEST_f_f (exp, minus_infty, 0),
-#endif
- TEST_f_f (exp, qnan_value, qnan_value),
- TEST_f_f (exp, 1, M_El),
+ TEST_f_f (exp, plus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_f_f (exp, minus_infty, 0, NO_TEST_INLINE),
+ TEST_f_f (exp, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_f_f (exp, 2, M_E2l),
- TEST_f_f (exp, 3, M_E3l),
- TEST_f_f (exp, 0.75L, 2.11700001661267466854536981983709561L),
- TEST_f_f (exp, 50.0L, 5184705528587072464087.45332293348538L),
- TEST_f_f (exp, 88.72269439697265625L, 3.40233126623160774937554134772290447915e38L),
-#ifndef TEST_FLOAT
- TEST_f_f (exp, 709.75L, 1.739836873264160557698252711673830393864768e+308L),
-#endif
-#if defined TEST_LDOUBLE && __LDBL_MAX_EXP__ > 1024
- /* The result can only be represented in sane long double. */
- TEST_f_f (exp, 1000.0L, 0.197007111401704699388887935224332313e435L),
-#endif
-
-#if !(defined TEST_LDOUBLE && LDBL_MAX_EXP > 1024)
- TEST_f_f (exp, 710, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (exp, -1234, plus_zero, UNDERFLOW_EXCEPTION),
-#endif
- TEST_f_f (exp, 1e5, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (exp, max_value, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (exp, -max_value, 0, UNDERFLOW_EXCEPTION),
+ AUTO_TESTS_f_f (exp, tonearest),
};
static void
@@ -7913,9 +7671,7 @@ exp_test (void)
static const struct test_f_f_data exp_tonearest_test_data[] =
{
- TEST_f_f (exp, 1, M_El),
- TEST_f_f (exp, 2, M_E2l),
- TEST_f_f (exp, 3, M_E3l),
+ AUTO_TESTS_f_f (exp, tonearest),
};
static void
@@ -7929,9 +7685,7 @@ exp_test_tonearest (void)
static const struct test_f_f_data exp_towardzero_test_data[] =
{
- TEST_f_f (exp, 1, M_El),
- TEST_f_f (exp, 2, M_E2l),
- TEST_f_f (exp, 3, M_E3l),
+ AUTO_TESTS_f_f (exp, towardzero),
};
static void
@@ -7945,9 +7699,7 @@ exp_test_towardzero (void)
static const struct test_f_f_data exp_downward_test_data[] =
{
- TEST_f_f (exp, 1, M_El),
- TEST_f_f (exp, 2, M_E2l),
- TEST_f_f (exp, 3, M_E3l),
+ AUTO_TESTS_f_f (exp, downward),
};
static void
@@ -7961,9 +7713,7 @@ exp_test_downward (void)
static const struct test_f_f_data exp_upward_test_data[] =
{
- TEST_f_f (exp, 1, M_El),
- TEST_f_f (exp, 2, M_E2l),
- TEST_f_f (exp, 3, M_E3l),
+ AUTO_TESTS_f_f (exp, upward),
};
static void
@@ -7977,29 +7727,11 @@ exp_test_upward (void)
static const struct test_f_f_data exp10_test_data[] =
{
- TEST_f_f (exp10, 0, 1),
- TEST_f_f (exp10, minus_zero, 1),
-
TEST_f_f (exp10, plus_infty, plus_infty),
TEST_f_f (exp10, minus_infty, 0),
- TEST_f_f (exp10, qnan_value, qnan_value),
- TEST_f_f (exp10, 3, 1000),
- TEST_f_f (exp10, -1, 0.1L),
- TEST_f_f (exp10, 36, 1.0e36L),
- TEST_f_f (exp10, -36, 1.0e-36L),
-#ifndef TEST_FLOAT
- TEST_f_f (exp10, 305, 1.0e305L),
- TEST_f_f (exp10, -305, 1.0e-305L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM),
-#endif
-#if defined TEST_LDOUBLE && LDBL_MAX_10_EXP >= 4932
- TEST_f_f (exp10, 4932, 1.0e4932L),
- TEST_f_f (exp10, -4932, 1.0e-4932L, UNDERFLOW_EXCEPTION),
-#endif
- TEST_f_f (exp10, 1e6, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (exp10, -1e6, 0, UNDERFLOW_EXCEPTION),
- TEST_f_f (exp10, max_value, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (exp10, -max_value, 0, UNDERFLOW_EXCEPTION),
- TEST_f_f (exp10, 0.75L, 5.62341325190349080394951039776481231L),
+ TEST_f_f (exp10, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+
+ AUTO_TESTS_f_f (exp10, tonearest),
};
static void
@@ -8022,34 +7754,11 @@ pow10_test (void)
static const struct test_f_f_data exp2_test_data[] =
{
- TEST_f_f (exp2, 0, 1),
- TEST_f_f (exp2, minus_zero, 1),
TEST_f_f (exp2, plus_infty, plus_infty),
TEST_f_f (exp2, minus_infty, 0),
- TEST_f_f (exp2, qnan_value, qnan_value),
-
- TEST_f_f (exp2, 10, 1024),
- TEST_f_f (exp2, -1, 0.5),
- TEST_f_f (exp2, 1e6, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (exp2, -1e6, 0, UNDERFLOW_EXCEPTION),
- TEST_f_f (exp2, max_value, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (exp2, -max_value, 0, UNDERFLOW_EXCEPTION),
- TEST_f_f (exp2, 0.75L, 1.68179283050742908606225095246642979L),
-
- TEST_f_f (exp2, 100.5, 1.792728671193156477399422023278661496394e+30L),
- TEST_f_f (exp2, 127, 0x1p127),
- TEST_f_f (exp2, -149, 0x1p-149),
+ TEST_f_f (exp2, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
-#ifndef TEST_FLOAT
- TEST_f_f (exp2, 1000.25, 1.274245659452564874772384918171765416737e+301L),
- TEST_f_f (exp2, 1023, 0x1p1023),
- TEST_f_f (exp2, -1074, 0x1p-1074),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (exp2, 16383, 0x1p16383L),
- TEST_f_f (exp2, -16400, 0x1p-16400L),
-#endif
+ AUTO_TESTS_f_f (exp2, tonearest),
};
static void
@@ -8063,60 +7772,74 @@ exp2_test (void)
static const struct test_f_f_data expm1_test_data[] =
{
- TEST_f_f (expm1, 0, 0),
- TEST_f_f (expm1, minus_zero, minus_zero),
+ TEST_f_f (expm1, plus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_f_f (expm1, minus_infty, -1, NO_TEST_INLINE),
+ TEST_f_f (expm1, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
-#ifndef TEST_INLINE
- TEST_f_f (expm1, plus_infty, plus_infty),
- TEST_f_f (expm1, minus_infty, -1),
-#endif
- TEST_f_f (expm1, qnan_value, qnan_value),
+ AUTO_TESTS_f_f (expm1, tonearest),
+ };
- TEST_f_f (expm1, 1, M_El - 1.0),
- TEST_f_f (expm1, 0.75L, 1.11700001661267466854536981983709561L),
+static void
+expm1_test (void)
+{
+ START (expm1);
+ RUN_TEST_LOOP_f_f (expm1, expm1_test_data, );
+ END;
+}
- TEST_f_f (expm1, 50.0L, 5.1847055285870724640864533229334853848275e+21L),
-#ifndef TEST_FLOAT
- TEST_f_f (expm1, 127.0L, 1.4302079958348104463583671072905261080748e+55L),
- TEST_f_f (expm1, 500.0L, 1.4035922178528374107397703328409120821806e+217L),
-#endif
+static const struct test_f_f_data expm1_tonearest_test_data[] =
+ {
+ AUTO_TESTS_f_f (expm1, tonearest),
+ };
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (expm1, 11356.25L, 9.05128237311923300051376115753226014206e+4931L),
-#endif
-
- TEST_f_f (expm1, -10.0, -0.9999546000702375151484644084844394493898L),
- TEST_f_f (expm1, -16.0, -0.9999998874648252807408854862248209398728L),
- TEST_f_f (expm1, -17.0, -0.9999999586006228121483334034897228104472L),
- TEST_f_f (expm1, -18.0, -0.9999999847700202552873715638633707664826L),
- TEST_f_f (expm1, -36.0, -0.9999999999999997680477169756430611687736L),
- TEST_f_f (expm1, -37.0, -0.9999999999999999146695237425593420572195L),
- TEST_f_f (expm1, -38.0, -0.9999999999999999686086720795197037129104L),
- TEST_f_f (expm1, -44.0, -0.9999999999999999999221886775886620348429L),
- TEST_f_f (expm1, -45.0, -0.9999999999999999999713748141945060635553L),
- TEST_f_f (expm1, -46.0, -0.9999999999999999999894693826424461876212L),
- TEST_f_f (expm1, -73.0, -0.9999999999999999999999999999999802074012L),
- TEST_f_f (expm1, -74.0, -0.9999999999999999999999999999999927187098L),
- TEST_f_f (expm1, -75.0, -0.9999999999999999999999999999999973213630L),
- TEST_f_f (expm1, -78.0, -0.9999999999999999999999999999999998666385L),
- TEST_f_f (expm1, -79.0, -0.9999999999999999999999999999999999509391L),
- TEST_f_f (expm1, -80.0, -0.9999999999999999999999999999999999819515L),
- TEST_f_f (expm1, -100.0, -1.0),
- TEST_f_f (expm1, -1000.0, -1.0),
- TEST_f_f (expm1, -10000.0, -1.0),
- TEST_f_f (expm1, -100000.0, -1.0),
-
- TEST_f_f (expm1, 100000.0, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (expm1, max_value, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (expm1, -max_value, -1),
+static void
+expm1_test_tonearest (void)
+{
+ START (expm1_tonearest);
+ RUN_TEST_LOOP_f_f (expm1, expm1_tonearest_test_data, FE_TONEAREST);
+ END;
+}
+
+
+static const struct test_f_f_data expm1_towardzero_test_data[] =
+ {
+ AUTO_TESTS_f_f (expm1, towardzero),
};
static void
-expm1_test (void)
+expm1_test_towardzero (void)
{
- START (expm1);
- RUN_TEST_LOOP_f_f (expm1, expm1_test_data, );
+ START (expm1_towardzero);
+ RUN_TEST_LOOP_f_f (expm1, expm1_towardzero_test_data, FE_TOWARDZERO);
+ END;
+}
+
+
+static const struct test_f_f_data expm1_downward_test_data[] =
+ {
+ AUTO_TESTS_f_f (expm1, downward),
+ };
+
+static void
+expm1_test_downward (void)
+{
+ START (expm1_downward);
+ RUN_TEST_LOOP_f_f (expm1, expm1_downward_test_data, FE_DOWNWARD);
+ END;
+}
+
+
+static const struct test_f_f_data expm1_upward_test_data[] =
+ {
+ AUTO_TESTS_f_f (expm1, upward),
+ };
+
+static void
+expm1_test_upward (void)
+{
+ START (expm1_upward);
+ RUN_TEST_LOOP_f_f (expm1, expm1_upward_test_data, FE_UPWARD);
END;
}
@@ -8128,7 +7851,8 @@ static const struct test_f_f_data fabs_test_data[] =
TEST_f_f (fabs, plus_infty, plus_infty, NO_INEXACT_EXCEPTION),
TEST_f_f (fabs, minus_infty, plus_infty, NO_INEXACT_EXCEPTION),
- TEST_f_f (fabs, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_f_f (fabs, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|TEST_NAN_SIGN),
+ TEST_f_f (fabs, -qnan_value, qnan_value, NO_INEXACT_EXCEPTION|TEST_NAN_SIGN),
TEST_f_f (fabs, 38.0, 38.0, NO_INEXACT_EXCEPTION),
TEST_f_f (fabs, -M_El, M_El, NO_INEXACT_EXCEPTION),
@@ -9347,6 +9071,13 @@ static const struct test_ff_f_data fmod_test_data[] =
#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381
TEST_ff_f (fmod, 0x0.fffffffffffffffep-16382L, 0x1p-16445L, plus_zero, NO_INEXACT_EXCEPTION),
#endif
+#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 56
+ TEST_ff_f (fmod, -0x1.00000000000004p+0L, 0x1.fffffffffffff8p-1L, -0x1p-53L, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (fmod, 0x1.fffffffffffffap-1L, 0x1.fffffffffffff8p-1L, 0x1p-56L, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (fmod, -0x1.fffffffffffffap-1L, 0x1.fffffffffffff8p-1L, -0x1p-56L, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (fmod, 0x1.fffffffffffffap-1L, -0x1.fffffffffffff8p-1L, 0x1p-56L, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (fmod, -0x1.fffffffffffffap-1L, -0x1.fffffffffffff8p-1L, -0x1p-56L, NO_INEXACT_EXCEPTION),
+#endif
};
static void
@@ -9406,64 +9137,14 @@ static const struct test_ff_f_data hypot_test_data[] =
TEST_ff_f (hypot, plus_infty, 1, plus_infty),
TEST_ff_f (hypot, minus_infty, 1, plus_infty),
-#ifndef TEST_INLINE
- TEST_ff_f (hypot, plus_infty, qnan_value, plus_infty),
- TEST_ff_f (hypot, minus_infty, qnan_value, plus_infty),
- TEST_ff_f (hypot, qnan_value, plus_infty, plus_infty),
- TEST_ff_f (hypot, qnan_value, minus_infty, plus_infty),
-#endif
-
- TEST_ff_f (hypot, qnan_value, qnan_value, qnan_value),
-
- /* hypot (x,y) == hypot (+-x, +-y) */
- TEST_ff_f (hypot, 0.7L, 12.4L, 12.419742348374220601176836866763271L),
- TEST_ff_f (hypot, -0.7L, 12.4L, 12.419742348374220601176836866763271L),
- TEST_ff_f (hypot, 0.7L, -12.4L, 12.419742348374220601176836866763271L),
- TEST_ff_f (hypot, -0.7L, -12.4L, 12.419742348374220601176836866763271L),
- TEST_ff_f (hypot, 12.4L, 0.7L, 12.419742348374220601176836866763271L),
- TEST_ff_f (hypot, -12.4L, 0.7L, 12.419742348374220601176836866763271L),
- TEST_ff_f (hypot, 12.4L, -0.7L, 12.419742348374220601176836866763271L),
- TEST_ff_f (hypot, -12.4L, -0.7L, 12.419742348374220601176836866763271L),
-
- /* hypot (x,0) == fabs (x) */
- TEST_ff_f (hypot, 0.75L, 0, 0.75L),
- TEST_ff_f (hypot, -0.75L, 0, 0.75L),
- TEST_ff_f (hypot, -5.7e7, 0, 5.7e7L),
-
- TEST_ff_f (hypot, 0.75L, 1.25L, 1.45773797371132511771853821938639577L),
+ TEST_ff_f (hypot, plus_infty, qnan_value, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (hypot, minus_infty, qnan_value, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (hypot, qnan_value, plus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (hypot, qnan_value, minus_infty, plus_infty, NO_TEST_INLINE),
- TEST_ff_f (hypot, 1.0L, 0x1p-61L, 1.0L),
- TEST_ff_f (hypot, 0x1p+0L, 0x1.fp-129L, 0x1p+0L),
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 106
- TEST_ff_f (hypot, 0x1.23456789abcdef0123456789ab8p-500L, 0x1.23456789abcdef0123456789ab8p-500L, 4.9155782399407039128612180934736799735113e-151L),
-#endif
-
-#if !(defined TEST_FLOAT && defined TEST_INLINE)
- TEST_ff_f (hypot, 0x3p125L, 0x4p125L, 0x5p125L),
- TEST_ff_f (hypot, 0x1.234566p-126L, 0x1.234566p-126L, 1.891441686191081936598531534017449451173e-38L),
-#endif
-
-#if !defined TEST_FLOAT && !(defined TEST_DOUBLE && defined TEST_INLINE)
- TEST_ff_f (hypot, 0x3p1021L, 0x4p1021L, 0x5p1021L),
- TEST_ff_f (hypot, 0x1p+0L, 0x0.3ep-1022L, 0x1p+0L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384 && !defined TEST_INLINE
- TEST_ff_f (hypot, 0x3p16381L, 0x4p16381L, 0x5p16381L),
-#endif
+ TEST_ff_f (hypot, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_ff_f (hypot, 0x1p-149L, 0x1p-149L, 1.9817352931807469938024533350782879785095e-45L, UNDERFLOW_EXCEPTION_FLOAT),
-
-#ifndef TEST_FLOAT
- TEST_ff_f (hypot, 0x1p-1074L, 0x1p-1074L, 6.9871433705131320800651344656990806305791e-324L, UNDERFLOW_EXCEPTION_DOUBLE),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381 && !defined TEST_INLINE
- TEST_ff_f (hypot, 0x1p-16445L, 0x1p-16445L, 5.1550906155442528702558159159596215039925e-4951L, UNDERFLOW_EXCEPTION),
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (hypot, 0x1p-16494L, 0x1p-16494L, 9.1572804726500807075521065242888978445857e-4966L, UNDERFLOW_EXCEPTION),
-# endif
-#endif
+ AUTO_TESTS_ff_f (hypot, tonearest),
};
static void
@@ -9775,31 +9456,10 @@ isunordered_test (void)
static const struct test_f_f_data j0_test_data[] =
{
/* j0 is the Bessel function of the first kind of order 0 */
- TEST_f_f (j0, qnan_value, qnan_value),
+ TEST_f_f (j0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_f_f (j0, plus_infty, 0),
- TEST_f_f (j0, -1.0, 0.765197686557966551449717526102663221L),
- TEST_f_f (j0, 0.0, 1.0),
- TEST_f_f (j0, 0.125L, 0.996097563041985204620768999453174712L),
- TEST_f_f (j0, 0.75L, 0.864242275166648623555731103820923211L),
- TEST_f_f (j0, 1.0, 0.765197686557966551449717526102663221L),
- TEST_f_f (j0, 1.5, 0.511827671735918128749051744283411720L),
- TEST_f_f (j0, 2.0, 0.223890779141235668051827454649948626L),
- TEST_f_f (j0, 8.0, 0.171650807137553906090869407851972001L),
- TEST_f_f (j0, 10.0, -0.245935764451348335197760862485328754L),
- TEST_f_f (j0, 4.0, -3.9714980986384737228659076845169804197562E-1L),
- TEST_f_f (j0, -4.0, -3.9714980986384737228659076845169804197562E-1L),
-
- TEST_f_f (j0, 0x1.d7ce3ap+107L, 2.775523647291230802651040996274861694514e-17L),
-#ifndef TEST_FLOAT
- TEST_f_f (j0, -0x1.001000001p+593L, -3.927269966354206207832593635798954916263e-90L),
- TEST_f_f (j0, 0x1p1023L, -1.5665258060609012834424478437196679802783e-155L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (j0, 0x1p16382L, -1.2193782500509000574176799046642541129387e-2466L),
- TEST_f_f (j0, 0x1p16383L, 9.5859502826270374691362975419147645151233e-2467L),
-#endif
+ AUTO_TESTS_f_f (j0, tonearest),
};
static void
@@ -9814,30 +9474,10 @@ j0_test (void)
static const struct test_f_f_data j1_test_data[] =
{
/* j1 is the Bessel function of the first kind of order 1 */
- TEST_f_f (j1, qnan_value, qnan_value),
+ TEST_f_f (j1, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_f_f (j1, plus_infty, 0),
- TEST_f_f (j1, -1.0, -0.440050585744933515959682203718914913L),
- TEST_f_f (j1, 0.0, 0.0),
- TEST_f_f (j1, 0.125L, 0.0623780091344946810942311355879361177L),
- TEST_f_f (j1, 0.75L, 0.349243602174862192523281016426251335L),
- TEST_f_f (j1, 1.0, 0.440050585744933515959682203718914913L),
- TEST_f_f (j1, 1.5, 0.557936507910099641990121213156089400L),
- TEST_f_f (j1, 2.0, 0.576724807756873387202448242269137087L),
- TEST_f_f (j1, 8.0, 0.234636346853914624381276651590454612L),
- TEST_f_f (j1, 10.0, 0.0434727461688614366697487680258592883L),
-
- TEST_f_f (j1, 0x1.3ffp+74L, 1.818984347516051243459364437186082741567e-12L),
-
-#ifndef TEST_FLOAT
- TEST_f_f (j1, 0x1.ff00000000002p+840L, 1.846591691699331493194965158699937660696e-127L),
- TEST_f_f (j1, 0x1p1023L, 8.2687542933709649327986678723012001545638e-155L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (j1, 0x1p16382L, 8.0839224448726336195866026476176740513439e-2467L),
- TEST_f_f (j1, 0x1p16383L, -3.8895531955766020648617743624167352352217e-2467L),
-#endif
+ AUTO_TESTS_f_f (j1, tonearest),
};
static void
@@ -9852,69 +9492,22 @@ static const struct test_if_f_data jn_test_data[] =
{
/* jn is the Bessel function of the first kind of order n. */
/* jn (0, x) == j0 (x) */
- TEST_if_f (jn, 0, qnan_value, qnan_value),
+ TEST_if_f (jn, 0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_if_f (jn, 0, plus_infty, 0),
- TEST_if_f (jn, 0, -1.0, 0.765197686557966551449717526102663221L),
- TEST_if_f (jn, 0, 0.0, 1.0),
- TEST_if_f (jn, 0, 0.125L, 0.996097563041985204620768999453174712L),
- TEST_if_f (jn, 0, 0.75L, 0.864242275166648623555731103820923211L),
- TEST_if_f (jn, 0, 1.0, 0.765197686557966551449717526102663221L),
- TEST_if_f (jn, 0, 1.5, 0.511827671735918128749051744283411720L),
- TEST_if_f (jn, 0, 2.0, 0.223890779141235668051827454649948626L),
- TEST_if_f (jn, 0, 8.0, 0.171650807137553906090869407851972001L),
- TEST_if_f (jn, 0, 10.0, -0.245935764451348335197760862485328754L),
- TEST_if_f (jn, 0, 4.0, -3.9714980986384737228659076845169804197562E-1L),
- TEST_if_f (jn, 0, -4.0, -3.9714980986384737228659076845169804197562E-1L),
/* jn (1, x) == j1 (x) */
- TEST_if_f (jn, 1, qnan_value, qnan_value),
+ TEST_if_f (jn, 1, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_if_f (jn, 1, plus_infty, 0),
- TEST_if_f (jn, 1, -1.0, -0.440050585744933515959682203718914913L),
- TEST_if_f (jn, 1, 0.0, 0.0),
- TEST_if_f (jn, 1, 0.125L, 0.0623780091344946810942311355879361177L),
- TEST_if_f (jn, 1, 0.75L, 0.349243602174862192523281016426251335L),
- TEST_if_f (jn, 1, 1.0, 0.440050585744933515959682203718914913L),
- TEST_if_f (jn, 1, 1.5, 0.557936507910099641990121213156089400L),
- TEST_if_f (jn, 1, 2.0, 0.576724807756873387202448242269137087L),
- TEST_if_f (jn, 1, 8.0, 0.234636346853914624381276651590454612L),
- TEST_if_f (jn, 1, 10.0, 0.0434727461688614366697487680258592883L),
/* jn (3, x) */
- TEST_if_f (jn, 3, qnan_value, qnan_value),
+ TEST_if_f (jn, 3, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_if_f (jn, 3, plus_infty, 0),
- TEST_if_f (jn, 3, -1.0, -0.0195633539826684059189053216217515083L),
- TEST_if_f (jn, 3, 0.0, 0.0),
- TEST_if_f (jn, 3, 0.125L, 0.406503832554912875023029337653442868e-4L),
- TEST_if_f (jn, 3, 0.75L, 0.848438342327410884392755236884386804e-2L),
- TEST_if_f (jn, 3, 1.0, 0.0195633539826684059189053216217515083L),
- TEST_if_f (jn, 3, 2.0, 0.128943249474402051098793332969239835L),
- TEST_if_f (jn, 3, 10.0, 0.0583793793051868123429354784103409563L),
-
/* jn (10, x) */
- TEST_if_f (jn, 10, qnan_value, qnan_value),
+ TEST_if_f (jn, 10, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_if_f (jn, 10, plus_infty, 0),
- TEST_if_f (jn, 10, -1.0, 0.263061512368745320699785368779050294e-9L),
- TEST_if_f (jn, 10, 0.0, 0.0),
- TEST_if_f (jn, 10, 0.125L, 0.250543369809369890173993791865771547e-18L),
- TEST_if_f (jn, 10, 0.75L, 0.149621713117596814698712483621682835e-10L),
- TEST_if_f (jn, 10, 1.0, 0.263061512368745320699785368779050294e-9L),
- TEST_if_f (jn, 10, 2.0, 0.251538628271673670963516093751820639e-6L),
- TEST_if_f (jn, 10, 10.0, 0.207486106633358857697278723518753428L),
-
- /* BZ #11589 .*/
- TEST_if_f (jn, 2, 2.4048255576957729L, 0.43175480701968038399746111312430703L),
- TEST_if_f (jn, 3, 2.4048255576957729L, 0.19899990535769083404042146764530813L),
- TEST_if_f (jn, 4, 2.4048255576957729L, 0.647466661641779720084932282551219891E-1L),
- TEST_if_f (jn, 5, 2.4048255576957729L, 0.163892432048058525099230549946147698E-1L),
- TEST_if_f (jn, 6, 2.4048255576957729L, 0.34048184720278336646673682895929161E-2L),
- TEST_if_f (jn, 7, 2.4048255576957729L, 0.60068836573295394221291569249883076E-3L),
- TEST_if_f (jn, 8, 2.4048255576957729L, 0.92165786705344923232879022467054148E-4L),
- TEST_if_f (jn, 9, 2.4048255576957729L, 0.12517270977961513005428966643852564E-4L),
-
- /* Bug 14155: spurious exception may occur. */
- TEST_if_f (jn, 2, 0x1.ffff62p+99L, -4.43860668048170034334926693188979974489e-16L, UNDERFLOW_EXCEPTION_OK),
+ AUTO_TESTS_if_f (jn, tonearest),
};
static void
@@ -9956,22 +9549,14 @@ static const struct test_f_f1_data lgamma_test_data[] =
TEST_f_f1 (lgamma, plus_infty, plus_infty, 1),
TEST_f_f1 (lgamma, 0, plus_infty, 1, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
TEST_f_f1 (lgamma, minus_zero, plus_infty, -1, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f1 (lgamma, qnan_value, qnan_value, IGNORE),
+ TEST_f_f1 (lgamma, qnan_value, qnan_value, IGNORE, NO_INEXACT_EXCEPTION),
/* lgamma (x) == +inf plus divide by zero exception for integer x <= 0. */
TEST_f_f1 (lgamma, -3, plus_infty, IGNORE, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
TEST_f_f1 (lgamma, minus_infty, plus_infty, IGNORE),
TEST_f_f1 (lgamma, -max_value, plus_infty, IGNORE, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f1 (lgamma, max_value, plus_infty, 1, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-
- TEST_f_f1 (lgamma, 1, 0, 1),
- TEST_f_f1 (lgamma, 3, M_LN2l, 1),
-
- TEST_f_f1 (lgamma, 0.5, M_LOG_SQRT_PIl, 1),
- TEST_f_f1 (lgamma, -0.5, M_LOG_2_SQRT_PIl, -1),
- TEST_f_f1 (lgamma, 0.7L, 0.260867246531666514385732417016759578L, 1),
- TEST_f_f1 (lgamma, 1.2L, -0.853740900033158497197028392998854470e-1L, 1),
+ AUTO_TESTS_f_f1 (lgamma, tonearest),
};
static void
@@ -9997,7 +9582,9 @@ static const struct test_f_l_data lrint_test_data[] =
/* XXX this test is incomplete. We need to have a way to specifiy
the rounding method and test the critical cases. So far, only
unproblematic numbers are tested. */
- /* TODO: missing +/-Inf as well as qNaN tests. */
+ TEST_f_l (lrint, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lrint, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lrint, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_l (lrint, 0.0, 0, NO_INEXACT_EXCEPTION),
TEST_f_l (lrint, minus_zero, 0, NO_INEXACT_EXCEPTION),
TEST_f_l (lrint, 0.2L, 0, INEXACT_EXCEPTION),
@@ -10029,6 +9616,9 @@ lrint_test (void)
static const struct test_f_l_data lrint_tonearest_test_data[] =
{
+ TEST_f_l (lrint, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lrint, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lrint, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_l (lrint, 0.0, 0, NO_INEXACT_EXCEPTION),
TEST_f_l (lrint, minus_zero, 0, NO_INEXACT_EXCEPTION),
TEST_f_l (lrint, 0.2L, 0, INEXACT_EXCEPTION),
@@ -10064,6 +9654,9 @@ lrint_test_tonearest (void)
static const struct test_f_l_data lrint_towardzero_test_data[] =
{
+ TEST_f_l (lrint, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lrint, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lrint, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_l (lrint, 0.0, 0, NO_INEXACT_EXCEPTION),
TEST_f_l (lrint, minus_zero, 0, NO_INEXACT_EXCEPTION),
TEST_f_l (lrint, 0.2L, 0, INEXACT_EXCEPTION),
@@ -10099,6 +9692,9 @@ lrint_test_towardzero (void)
static const struct test_f_l_data lrint_downward_test_data[] =
{
+ TEST_f_l (lrint, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lrint, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lrint, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_l (lrint, 0.0, 0, NO_INEXACT_EXCEPTION),
TEST_f_l (lrint, minus_zero, 0, NO_INEXACT_EXCEPTION),
TEST_f_l (lrint, 0.2L, 0, INEXACT_EXCEPTION),
@@ -10134,6 +9730,9 @@ lrint_test_downward (void)
static const struct test_f_l_data lrint_upward_test_data[] =
{
+ TEST_f_l (lrint, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lrint, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lrint, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_l (lrint, 0.0, 0, NO_INEXACT_EXCEPTION),
TEST_f_l (lrint, minus_zero, 0, NO_INEXACT_EXCEPTION),
TEST_f_l (lrint, 0.2L, 1, INEXACT_EXCEPTION),
@@ -10172,7 +9771,9 @@ static const struct test_f_L_data llrint_test_data[] =
/* XXX this test is incomplete. We need to have a way to specifiy
the rounding method and test the critical cases. So far, only
unproblematic numbers are tested. */
- /* TODO: missing +/-Inf as well as qNaN tests. */
+ TEST_f_L (llrint, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llrint, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llrint, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_L (llrint, 0.0, 0, NO_INEXACT_EXCEPTION),
TEST_f_L (llrint, minus_zero, 0, NO_INEXACT_EXCEPTION),
TEST_f_L (llrint, 0.2L, 0, INEXACT_EXCEPTION),
@@ -10308,6 +9909,9 @@ llrint_test (void)
static const struct test_f_L_data llrint_tonearest_test_data[] =
{
+ TEST_f_L (llrint, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llrint, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llrint, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_L (llrint, 0.0, 0, NO_INEXACT_EXCEPTION),
TEST_f_L (llrint, minus_zero, 0, NO_INEXACT_EXCEPTION),
TEST_f_L (llrint, 0.2L, 0, INEXACT_EXCEPTION),
@@ -10443,6 +10047,9 @@ llrint_test_tonearest (void)
static const struct test_f_L_data llrint_towardzero_test_data[] =
{
+ TEST_f_L (llrint, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llrint, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llrint, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_L (llrint, 0.0, 0, NO_INEXACT_EXCEPTION),
TEST_f_L (llrint, minus_zero, 0, NO_INEXACT_EXCEPTION),
TEST_f_L (llrint, 0.2L, 0, INEXACT_EXCEPTION),
@@ -10578,6 +10185,9 @@ llrint_test_towardzero (void)
static const struct test_f_L_data llrint_downward_test_data[] =
{
+ TEST_f_L (llrint, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llrint, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llrint, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_L (llrint, 0.0, 0, NO_INEXACT_EXCEPTION),
TEST_f_L (llrint, minus_zero, 0, NO_INEXACT_EXCEPTION),
TEST_f_L (llrint, 0.2L, 0, INEXACT_EXCEPTION),
@@ -10709,6 +10319,9 @@ llrint_test_downward (void)
static const struct test_f_L_data llrint_upward_test_data[] =
{
+ TEST_f_L (llrint, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llrint, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llrint, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_L (llrint, 0.0, 0, NO_INEXACT_EXCEPTION),
TEST_f_L (llrint, minus_zero, 0, NO_INEXACT_EXCEPTION),
TEST_f_L (llrint, 0.2L, 1, INEXACT_EXCEPTION),
@@ -10842,19 +10455,13 @@ static const struct test_f_f_data log_test_data[] =
TEST_f_f (log, 0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
TEST_f_f (log, minus_zero, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (log, 1, 0),
-
TEST_f_f (log, -1, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (log, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (log, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (log, plus_infty, plus_infty),
- TEST_f_f (log, qnan_value, qnan_value),
+ TEST_f_f (log, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_f_f (log, M_El, 1),
- TEST_f_f (log, M_1_DIV_El, -1),
- TEST_f_f (log, 2, M_LN2l),
- TEST_f_f (log, 10, M_LN10l),
- TEST_f_f (log, 0.75L, -0.287682072451780927439219005993827432L),
+ AUTO_TESTS_f_f (log, tonearest),
};
static void
@@ -10871,22 +10478,15 @@ static const struct test_f_f_data log10_test_data[] =
TEST_f_f (log10, 0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
TEST_f_f (log10, minus_zero, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (log10, 1, 0),
-
/* log10 (x) == qNaN plus invalid exception if x < 0. */
TEST_f_f (log10, -1, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (log10, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (log10, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (log10, plus_infty, plus_infty),
- TEST_f_f (log10, qnan_value, qnan_value),
+ TEST_f_f (log10, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_f_f (log10, 0.1L, -1),
- TEST_f_f (log10, 10.0, 1),
- TEST_f_f (log10, 100.0, 2),
- TEST_f_f (log10, 10000.0, 4),
- TEST_f_f (log10, M_El, M_LOG10El),
- TEST_f_f (log10, 0.75L, -0.124938736608299953132449886193870744L),
+ AUTO_TESTS_f_f (log10, tonearest),
};
static void
@@ -10900,21 +10500,15 @@ log10_test (void)
static const struct test_f_f_data log1p_test_data[] =
{
- TEST_f_f (log1p, 0, 0),
- TEST_f_f (log1p, minus_zero, minus_zero),
-
TEST_f_f (log1p, -1, minus_infty, DIVIDE_BY_ZERO_EXCEPTION),
TEST_f_f (log1p, -2, qnan_value, INVALID_EXCEPTION),
TEST_f_f (log1p, -max_value, qnan_value, INVALID_EXCEPTION),
TEST_f_f (log1p, minus_infty, qnan_value, INVALID_EXCEPTION),
TEST_f_f (log1p, plus_infty, plus_infty),
- TEST_f_f (log1p, qnan_value, qnan_value),
+ TEST_f_f (log1p, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_f_f (log1p, M_El - 1.0, 1),
-
- TEST_f_f (log1p, -0.25L, -0.287682072451780927439219005993827432L),
- TEST_f_f (log1p, -0.875, -2.07944154167983592825169636437452970L),
+ AUTO_TESTS_f_f (log1p, tonearest),
};
static void
@@ -10931,20 +10525,14 @@ static const struct test_f_f_data log2_test_data[] =
TEST_f_f (log2, 0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
TEST_f_f (log2, minus_zero, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (log2, 1, 0),
-
TEST_f_f (log2, -1, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (log2, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (log2, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (log2, plus_infty, plus_infty),
- TEST_f_f (log2, qnan_value, qnan_value),
+ TEST_f_f (log2, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_f_f (log2, M_El, M_LOG2El),
- TEST_f_f (log2, 2.0, 1),
- TEST_f_f (log2, 16.0, 4),
- TEST_f_f (log2, 256.0, 8),
- TEST_f_f (log2, 0.75L, -.415037499278843818546261056052183492L),
+ AUTO_TESTS_f_f (log2, tonearest),
};
static void
@@ -11020,7 +10608,9 @@ logb_test_downward (void)
static const struct test_f_l_data lround_test_data[] =
{
- /* TODO: missing +/-Inf as well as qNaN tests. */
+ TEST_f_l (lround, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lround, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_l (lround, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_l (lround, 0, 0),
TEST_f_l (lround, minus_zero, 0),
TEST_f_l (lround, 0.2L, 0.0),
@@ -11067,7 +10657,9 @@ lround_test (void)
static const struct test_f_L_data llround_test_data[] =
{
- /* TODO: missing +/-Inf as well as qNaN tests. */
+ TEST_f_L (llround, plus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llround, minus_infty, IGNORE, INVALID_EXCEPTION),
+ TEST_f_L (llround, qnan_value, IGNORE, INVALID_EXCEPTION),
TEST_f_L (llround, 0, 0),
TEST_f_L (llround, minus_zero, 0),
TEST_f_L (llround, 0.2L, 0.0),
@@ -11453,128 +11045,98 @@ nexttoward_test (void)
static const struct test_ff_f_data pow_test_data[] =
{
- TEST_ff_f (pow, 0, 0, 1),
- TEST_ff_f (pow, 0, minus_zero, 1),
- TEST_ff_f (pow, minus_zero, 0, 1),
- TEST_ff_f (pow, minus_zero, minus_zero, 1),
-
- TEST_ff_f (pow, 10, 0, 1),
- TEST_ff_f (pow, 10, minus_zero, 1),
- TEST_ff_f (pow, -10, 0, 1),
- TEST_ff_f (pow, -10, minus_zero, 1),
-
TEST_ff_f (pow, qnan_value, 0, 1),
TEST_ff_f (pow, qnan_value, minus_zero, 1),
-#ifndef TEST_INLINE
- TEST_ff_f (pow, 1.1L, plus_infty, plus_infty),
- TEST_ff_f (pow, plus_infty, plus_infty, plus_infty),
- TEST_ff_f (pow, -1.1L, plus_infty, plus_infty),
- TEST_ff_f (pow, minus_infty, plus_infty, plus_infty),
-
- TEST_ff_f (pow, 0.9L, plus_infty, 0),
- TEST_ff_f (pow, 1e-7L, plus_infty, 0),
- TEST_ff_f (pow, -0.9L, plus_infty, 0),
- TEST_ff_f (pow, -1e-7L, plus_infty, 0),
-
- TEST_ff_f (pow, 1.1L, minus_infty, 0),
- TEST_ff_f (pow, plus_infty, minus_infty, 0),
- TEST_ff_f (pow, -1.1L, minus_infty, 0),
- TEST_ff_f (pow, minus_infty, minus_infty, 0),
-
- TEST_ff_f (pow, 0.9L, minus_infty, plus_infty),
- TEST_ff_f (pow, 1e-7L, minus_infty, plus_infty),
- TEST_ff_f (pow, -0.9L, minus_infty, plus_infty),
- TEST_ff_f (pow, -1e-7L, minus_infty, plus_infty),
-
- TEST_ff_f (pow, plus_infty, 1e-7L, plus_infty),
- TEST_ff_f (pow, plus_infty, 1, plus_infty),
- TEST_ff_f (pow, plus_infty, 1e7L, plus_infty),
- TEST_ff_f (pow, plus_infty, min_subnorm_value, plus_infty),
-
- TEST_ff_f (pow, plus_infty, -1e-7L, 0),
- TEST_ff_f (pow, plus_infty, -1, 0),
- TEST_ff_f (pow, plus_infty, -1e7L, 0),
- TEST_ff_f (pow, plus_infty, -min_subnorm_value, 0),
-
- TEST_ff_f (pow, minus_infty, 1, minus_infty),
- TEST_ff_f (pow, minus_infty, 11, minus_infty),
- TEST_ff_f (pow, minus_infty, 1001, minus_infty),
-
- TEST_ff_f (pow, minus_infty, 2, plus_infty),
- TEST_ff_f (pow, minus_infty, 12, plus_infty),
- TEST_ff_f (pow, minus_infty, 1002, plus_infty),
- TEST_ff_f (pow, minus_infty, 0.1L, plus_infty),
- TEST_ff_f (pow, minus_infty, 1.1L, plus_infty),
- TEST_ff_f (pow, minus_infty, 11.1L, plus_infty),
- TEST_ff_f (pow, minus_infty, 1001.1L, plus_infty),
- TEST_ff_f (pow, minus_infty, min_subnorm_value, plus_infty),
-
- TEST_ff_f (pow, minus_infty, -1, minus_zero),
- TEST_ff_f (pow, minus_infty, -11, minus_zero),
- TEST_ff_f (pow, minus_infty, -1001, minus_zero),
-
- TEST_ff_f (pow, minus_infty, -2, 0),
- TEST_ff_f (pow, minus_infty, -12, 0),
- TEST_ff_f (pow, minus_infty, -1002, 0),
- TEST_ff_f (pow, minus_infty, -0.1L, 0),
- TEST_ff_f (pow, minus_infty, -1.1L, 0),
- TEST_ff_f (pow, minus_infty, -11.1L, 0),
- TEST_ff_f (pow, minus_infty, -1001.1L, 0),
- TEST_ff_f (pow, minus_infty, -min_subnorm_value, 0),
-#endif
-
- TEST_ff_f (pow, qnan_value, qnan_value, qnan_value),
- TEST_ff_f (pow, 0, qnan_value, qnan_value),
- TEST_ff_f (pow, 1, qnan_value, 1),
- TEST_ff_f (pow, -1, qnan_value, qnan_value),
- TEST_ff_f (pow, qnan_value, 1, qnan_value),
- TEST_ff_f (pow, qnan_value, -1, qnan_value),
+ TEST_ff_f (pow, 1.1L, plus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, plus_infty, plus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, -1.1L, plus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, plus_infty, plus_infty, NO_TEST_INLINE),
+
+ TEST_ff_f (pow, 0.9L, plus_infty, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, 1e-7L, plus_infty, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, -0.9L, plus_infty, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, -1e-7L, plus_infty, 0, NO_TEST_INLINE),
+
+ TEST_ff_f (pow, 1.1L, minus_infty, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, plus_infty, minus_infty, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, -1.1L, minus_infty, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, minus_infty, 0, NO_TEST_INLINE),
+
+ TEST_ff_f (pow, 0.9L, minus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, 1e-7L, minus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, -0.9L, minus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, -1e-7L, minus_infty, plus_infty, NO_TEST_INLINE),
+
+ TEST_ff_f (pow, plus_infty, 1e-7L, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, plus_infty, 1, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, plus_infty, 1e7L, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, plus_infty, min_subnorm_value, plus_infty, NO_TEST_INLINE),
+
+ TEST_ff_f (pow, plus_infty, -1e-7L, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, plus_infty, -1, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, plus_infty, -1e7L, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, plus_infty, -min_subnorm_value, 0, NO_TEST_INLINE),
+
+ TEST_ff_f (pow, minus_infty, 1, minus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, 11, minus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, 1001, minus_infty, NO_TEST_INLINE),
+
+ TEST_ff_f (pow, minus_infty, 2, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, 12, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, 1002, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, 0.1L, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, 1.1L, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, 11.1L, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, 1001.1L, plus_infty, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, min_subnorm_value, plus_infty, NO_TEST_INLINE),
+
+ TEST_ff_f (pow, minus_infty, -1, minus_zero, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, -11, minus_zero, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, -1001, minus_zero, NO_TEST_INLINE),
+
+ TEST_ff_f (pow, minus_infty, -2, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, -12, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, -1002, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, -0.1L, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, -1.1L, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, -11.1L, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, -1001.1L, 0, NO_TEST_INLINE),
+ TEST_ff_f (pow, minus_infty, -min_subnorm_value, 0, NO_TEST_INLINE),
+
+ TEST_ff_f (pow, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, 0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, 1, qnan_value, 1, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, -1, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, qnan_value, 1, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, qnan_value, -1, qnan_value, NO_INEXACT_EXCEPTION),
/* pow (x, qNaN) == qNaN. */
- TEST_ff_f (pow, 3.0, qnan_value, qnan_value),
- TEST_ff_f (pow, minus_zero, qnan_value, qnan_value),
- TEST_ff_f (pow, plus_infty, qnan_value, qnan_value),
- TEST_ff_f (pow, -3.0, qnan_value, qnan_value),
- TEST_ff_f (pow, minus_infty, qnan_value, qnan_value),
-
- TEST_ff_f (pow, qnan_value, 3.0, qnan_value),
- TEST_ff_f (pow, qnan_value, -3.0, qnan_value),
- TEST_ff_f (pow, qnan_value, plus_infty, qnan_value),
- TEST_ff_f (pow, qnan_value, minus_infty, qnan_value),
- TEST_ff_f (pow, qnan_value, 2.5, qnan_value),
- TEST_ff_f (pow, qnan_value, -2.5, qnan_value),
- TEST_ff_f (pow, qnan_value, min_subnorm_value, qnan_value),
- TEST_ff_f (pow, qnan_value, -min_subnorm_value, qnan_value),
+ TEST_ff_f (pow, 3.0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, minus_zero, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, plus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, -3.0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, minus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+
+ TEST_ff_f (pow, qnan_value, 3.0, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, qnan_value, -3.0, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, qnan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, qnan_value, minus_infty, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, qnan_value, 2.5, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, qnan_value, -2.5, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, qnan_value, min_subnorm_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (pow, qnan_value, -min_subnorm_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_ff_f (pow, 1, plus_infty, 1),
TEST_ff_f (pow, -1, plus_infty, 1),
TEST_ff_f (pow, 1, minus_infty, 1),
TEST_ff_f (pow, -1, minus_infty, 1),
- TEST_ff_f (pow, 1, 1, 1),
- TEST_ff_f (pow, 1, -1, 1),
- TEST_ff_f (pow, 1, 1.25, 1),
- TEST_ff_f (pow, 1, -1.25, 1),
- TEST_ff_f (pow, 1, 0x1p62L, 1),
- TEST_ff_f (pow, 1, 0x1p63L, 1),
- TEST_ff_f (pow, 1, 0x1p64L, 1),
- TEST_ff_f (pow, 1, 0x1p72L, 1),
- TEST_ff_f (pow, 1, min_subnorm_value, 1),
- TEST_ff_f (pow, 1, -min_subnorm_value, 1),
/* pow (x, +-0) == 1. */
TEST_ff_f (pow, plus_infty, 0, 1),
TEST_ff_f (pow, plus_infty, minus_zero, 1),
TEST_ff_f (pow, minus_infty, 0, 1),
TEST_ff_f (pow, minus_infty, minus_zero, 1),
- TEST_ff_f (pow, 32.75L, 0, 1),
- TEST_ff_f (pow, 32.75L, minus_zero, 1),
- TEST_ff_f (pow, -32.75L, 0, 1),
- TEST_ff_f (pow, -32.75L, minus_zero, 1),
- TEST_ff_f (pow, 0x1p72L, 0, 1),
- TEST_ff_f (pow, 0x1p72L, minus_zero, 1),
- TEST_ff_f (pow, 0x1p-72L, 0, 1),
- TEST_ff_f (pow, 0x1p-72L, minus_zero, 1),
TEST_ff_f (pow, -0.1L, 1.1L, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_ff_f (pow, -0.1L, -1.1L, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
@@ -11638,40 +11200,22 @@ static const struct test_ff_f_data pow_test_data[] =
TEST_ff_f (pow, minus_zero, -0x1p127, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
TEST_ff_f (pow, minus_zero, -max_value, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, 0x1p72L, 0x1p72L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, 10, -0x1p72L, 0, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, max_value, max_value, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, 10, -max_value, 0, UNDERFLOW_EXCEPTION),
-
- TEST_ff_f (pow, 0, 1, 0),
- TEST_ff_f (pow, 0, 11, 0),
-
- TEST_ff_f (pow, minus_zero, 1, minus_zero),
- TEST_ff_f (pow, minus_zero, 11, minus_zero),
-
- TEST_ff_f (pow, 0, 2, 0),
- TEST_ff_f (pow, 0, 11.1L, 0),
-
- TEST_ff_f (pow, minus_zero, 2, 0),
- TEST_ff_f (pow, minus_zero, 11.1L, 0),
TEST_ff_f (pow, 0, plus_infty, 0),
TEST_ff_f (pow, minus_zero, plus_infty, 0),
TEST_ff_f (pow, 0, minus_infty, plus_infty, DIVIDE_BY_ZERO_EXCEPTION_OK),
TEST_ff_f (pow, minus_zero, minus_infty, plus_infty, DIVIDE_BY_ZERO_EXCEPTION_OK),
-#ifndef TEST_INLINE
/* pow (x, +inf) == +inf for |x| > 1. */
- TEST_ff_f (pow, 1.5, plus_infty, plus_infty),
+ TEST_ff_f (pow, 1.5, plus_infty, plus_infty, NO_TEST_INLINE),
/* pow (x, +inf) == +0 for |x| < 1. */
- TEST_ff_f (pow, 0.5, plus_infty, 0.0),
+ TEST_ff_f (pow, 0.5, plus_infty, 0.0, NO_TEST_INLINE),
/* pow (x, -inf) == +0 for |x| > 1. */
- TEST_ff_f (pow, 1.5, minus_infty, 0.0),
+ TEST_ff_f (pow, 1.5, minus_infty, 0.0, NO_TEST_INLINE),
/* pow (x, -inf) == +inf for |x| < 1. */
- TEST_ff_f (pow, 0.5, minus_infty, plus_infty),
-#endif
+ TEST_ff_f (pow, 0.5, minus_infty, plus_infty, NO_TEST_INLINE),
/* pow (+inf, y) == +inf for y > 0. */
TEST_ff_f (pow, plus_infty, 2, plus_infty),
@@ -11772,384 +11316,14 @@ static const struct test_ff_f_data pow_test_data[] =
TEST_ff_f (pow, minus_infty, -0x1p127, 0.0),
TEST_ff_f (pow, minus_infty, -max_value, 0.0),
- /* pow (+0, y) == +0 for y an odd integer > 0. */
- TEST_ff_f (pow, 0.0, 27, 0.0),
- TEST_ff_f (pow, 0.0, 0xffffff, 0.0),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, 0.0, 0x1.fffffffffffffp+52L, 0.0),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, 0.0, 0x1.fffffffffffffffep+63L, 0.0),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, 0.0, 0x1.ffffffffffffffffffffffffff8p+105L, 0.0),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, 0.0, 0x1.ffffffffffffffffffffffffffffp+112L, 0.0),
-# endif
-#endif
-
- /* pow (-0, y) == -0 for y an odd integer > 0. */
- TEST_ff_f (pow, minus_zero, 27, minus_zero),
- TEST_ff_f (pow, minus_zero, 0xffffff, minus_zero),
- TEST_ff_f (pow, minus_zero, 0x1fffffe, plus_zero),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, minus_zero, 0x1.fffffffffffffp+52L, minus_zero),
- TEST_ff_f (pow, minus_zero, 0x1.fffffffffffffp+53L, plus_zero),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, minus_zero, 0x1.fffffffffffffffep+63L, minus_zero),
- TEST_ff_f (pow, minus_zero, 0x1.fffffffffffffffep+64L, plus_zero),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, minus_zero, 0x1.ffffffffffffffffffffffffff8p+105L, minus_zero),
- TEST_ff_f (pow, minus_zero, 0x1.ffffffffffffffffffffffffff8p+106L, plus_zero),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, minus_zero, 0x1.ffffffffffffffffffffffffffffp+112L, minus_zero),
- TEST_ff_f (pow, minus_zero, 0x1.ffffffffffffffffffffffffffffp+113L, plus_zero),
-# endif
-#endif
-
- /* pow (+0, y) == +0 for y > 0 and not an odd integer. */
- TEST_ff_f (pow, 0.0, 4, 0.0),
- TEST_ff_f (pow, 0.0, 0x1p24, 0.0),
- TEST_ff_f (pow, 0.0, 0x1p127, 0.0),
- TEST_ff_f (pow, 0.0, max_value, 0.0),
- TEST_ff_f (pow, 0.0, min_subnorm_value, 0.0),
-
- /* pow (-0, y) == +0 for y > 0 and not an odd integer. */
- TEST_ff_f (pow, minus_zero, 4, 0.0),
- TEST_ff_f (pow, minus_zero, 0x1p24, 0.0),
- TEST_ff_f (pow, minus_zero, 0x1p127, 0.0),
- TEST_ff_f (pow, minus_zero, max_value, 0.0),
- TEST_ff_f (pow, minus_zero, min_subnorm_value, 0.0),
-
- TEST_ff_f (pow, 16, 0.25L, 2),
- TEST_ff_f (pow, 0x1p64L, 0.125L, 256),
- TEST_ff_f (pow, 2, 4, 16),
- TEST_ff_f (pow, 256, 8, 0x1p64L),
-
- TEST_ff_f (pow, 0.75L, 1.25L, 0.697953644326574699205914060237425566L),
-
-#if defined TEST_DOUBLE || defined TEST_LDOUBLE
- TEST_ff_f (pow, -7.49321e+133, -9.80818e+16, 0, UNDERFLOW_EXCEPTION),
-#endif
-
- TEST_ff_f (pow, -1.0, -0xffffff, -1.0),
- TEST_ff_f (pow, -1.0, -0x1fffffe, 1.0),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, -1.0, -0x1.fffffffffffffp+52L, -1.0),
- TEST_ff_f (pow, -1.0, -0x1.fffffffffffffp+53L, 1.0),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, -1.0, -0x1.fffffffffffffffep+63L, -1.0),
- TEST_ff_f (pow, -1.0, -0x1.fffffffffffffffep+64L, 1.0),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, -1.0, -0x1.ffffffffffffffffffffffffff8p+105L, -1.0),
- TEST_ff_f (pow, -1.0, -0x1.ffffffffffffffffffffffffff8p+106L, 1.0),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, -1.0, -0x1.ffffffffffffffffffffffffffffp+112L, -1.0),
- TEST_ff_f (pow, -1.0, -0x1.ffffffffffffffffffffffffffffp+113L, 1.0),
-# endif
-#endif
- TEST_ff_f (pow, -1.0, -max_value, 1.0),
-
- TEST_ff_f (pow, -1.0, 0xffffff, -1.0),
- TEST_ff_f (pow, -1.0, 0x1fffffe, 1.0),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, -1.0, 0x1.fffffffffffffp+52L, -1.0),
- TEST_ff_f (pow, -1.0, 0x1.fffffffffffffp+53L, 1.0),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, -1.0, 0x1.fffffffffffffffep+63L, -1.0),
- TEST_ff_f (pow, -1.0, 0x1.fffffffffffffffep+64L, 1.0),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, -1.0, 0x1.ffffffffffffffffffffffffff8p+105L, -1.0),
- TEST_ff_f (pow, -1.0, 0x1.ffffffffffffffffffffffffff8p+106L, 1.0),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, -1.0, 0x1.ffffffffffffffffffffffffffffp+112L, -1.0),
- TEST_ff_f (pow, -1.0, 0x1.ffffffffffffffffffffffffffffp+113L, 1.0),
-# endif
-#endif
- TEST_ff_f (pow, -1.0, max_value, 1.0),
-
- TEST_ff_f (pow, -2.0, 126, 0x1p126),
- TEST_ff_f (pow, -2.0, 127, -0x1p127),
- /* Allow inexact results for float to be considered to underflow. */
- TEST_ff_f (pow, -2.0, -126, 0x1p-126, UNDERFLOW_EXCEPTION_OK_FLOAT),
- TEST_ff_f (pow, -2.0, -127, -0x1p-127, UNDERFLOW_EXCEPTION_OK_FLOAT),
-
- TEST_ff_f (pow, -2.0, -0xffffff, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -2.0, -0x1fffffe, plus_zero, UNDERFLOW_EXCEPTION),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, -2.0, -0x1.fffffffffffffp+52L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -2.0, -0x1.fffffffffffffp+53L, plus_zero, UNDERFLOW_EXCEPTION),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, -2.0, -0x1.fffffffffffffffep+63L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -2.0, -0x1.fffffffffffffffep+64L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, -2.0, -0x1.ffffffffffffffffffffffffff8p+105L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -2.0, -0x1.ffffffffffffffffffffffffff8p+106L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, -2.0, -0x1.ffffffffffffffffffffffffffffp+112L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -2.0, -0x1.ffffffffffffffffffffffffffffp+113L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-#endif
- TEST_ff_f (pow, -2.0, -max_value, plus_zero, UNDERFLOW_EXCEPTION),
-
- TEST_ff_f (pow, -2.0, 0xffffff, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -2.0, 0x1fffffe, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, -2.0, 0x1.fffffffffffffp+52L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -2.0, 0x1.fffffffffffffp+53L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, -2.0, 0x1.fffffffffffffffep+63L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -2.0, 0x1.fffffffffffffffep+64L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, -2.0, 0x1.ffffffffffffffffffffffffff8p+105L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -2.0, 0x1.ffffffffffffffffffffffffff8p+106L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, -2.0, 0x1.ffffffffffffffffffffffffffffp+112L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -2.0, 0x1.ffffffffffffffffffffffffffffp+113L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-#endif
- TEST_ff_f (pow, -2.0, max_value, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-
TEST_ff_f (pow, -max_value, 0.5, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_ff_f (pow, -max_value, 1.5, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_ff_f (pow, -max_value, 1000.5, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_ff_f (pow, -max_value, -2, plus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -max_value, -3, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -max_value, 2, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -max_value, 3, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-
- TEST_ff_f (pow, -max_value, -0xffffff, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -max_value, -0x1fffffe, plus_zero, UNDERFLOW_EXCEPTION),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, -max_value, -0x1.fffffffffffffp+52L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -max_value, -0x1.fffffffffffffp+53L, plus_zero, UNDERFLOW_EXCEPTION),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, -max_value, -0x1.fffffffffffffffep+63L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -max_value, -0x1.fffffffffffffffep+64L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, -max_value, -0x1.ffffffffffffffffffffffffff8p+105L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -max_value, -0x1.ffffffffffffffffffffffffff8p+106L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, -max_value, -0x1.ffffffffffffffffffffffffffffp+112L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -max_value, -0x1.ffffffffffffffffffffffffffffp+113L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-#endif
- TEST_ff_f (pow, -max_value, -max_value, plus_zero, UNDERFLOW_EXCEPTION),
-
- TEST_ff_f (pow, -max_value, 0xffffff, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -max_value, 0x1fffffe, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, -max_value, 0x1.fffffffffffffp+52L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -max_value, 0x1.fffffffffffffp+53L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, -max_value, 0x1.fffffffffffffffep+63L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -max_value, 0x1.fffffffffffffffep+64L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, -max_value, 0x1.ffffffffffffffffffffffffff8p+105L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -max_value, 0x1.ffffffffffffffffffffffffff8p+106L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, -max_value, 0x1.ffffffffffffffffffffffffffffp+112L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -max_value, 0x1.ffffffffffffffffffffffffffffp+113L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-#endif
- TEST_ff_f (pow, -max_value, max_value, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-
- TEST_ff_f (pow, -0.5, 126, 0x1p-126),
- TEST_ff_f (pow, -0.5, 127, -0x1p-127),
- TEST_ff_f (pow, -0.5, -126, 0x1p126),
- TEST_ff_f (pow, -0.5, -127, -0x1p127),
-
- TEST_ff_f (pow, -0.5, -0xffffff, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -0.5, -0x1fffffe, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, -0.5, -0x1.fffffffffffffp+52L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -0.5, -0x1.fffffffffffffp+53L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, -0.5, -0x1.fffffffffffffffep+63L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -0.5, -0x1.fffffffffffffffep+64L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, -0.5, -0x1.ffffffffffffffffffffffffff8p+105L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -0.5, -0x1.ffffffffffffffffffffffffff8p+106L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, -0.5, -0x1.ffffffffffffffffffffffffffffp+112L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -0.5, -0x1.ffffffffffffffffffffffffffffp+113L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-#endif
- TEST_ff_f (pow, -0.5, -max_value, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-
- TEST_ff_f (pow, -0.5, 0xffffff, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -0.5, 0x1fffffe, plus_zero, UNDERFLOW_EXCEPTION),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, -0.5, 0x1.fffffffffffffp+52L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -0.5, 0x1.fffffffffffffp+53L, plus_zero, UNDERFLOW_EXCEPTION),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, -0.5, 0x1.fffffffffffffffep+63L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -0.5, 0x1.fffffffffffffffep+64L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, -0.5, 0x1.ffffffffffffffffffffffffff8p+105L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -0.5, 0x1.ffffffffffffffffffffffffff8p+106L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, -0.5, 0x1.ffffffffffffffffffffffffffffp+112L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -0.5, 0x1.ffffffffffffffffffffffffffffp+113L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-#endif
- TEST_ff_f (pow, -0.5, max_value, plus_zero, UNDERFLOW_EXCEPTION),
TEST_ff_f (pow, -min_value, 0.5, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_ff_f (pow, -min_value, 1.5, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_ff_f (pow, -min_value, 1000.5, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_ff_f (pow, -min_value, -2, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -min_value, -3, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- /* Allow inexact results to be considered to underflow. */
- TEST_ff_f (pow, -min_value, 1, -min_value, UNDERFLOW_EXCEPTION_OK),
- TEST_ff_f (pow, -min_value, 2, plus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -min_value, 3, minus_zero, UNDERFLOW_EXCEPTION),
-
- TEST_ff_f (pow, -min_value, -0xffffff, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -min_value, -0x1fffffe, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, -min_value, -0x1.fffffffffffffp+52L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -min_value, -0x1.fffffffffffffp+53L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, -min_value, -0x1.fffffffffffffffep+63L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -min_value, -0x1.fffffffffffffffep+64L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, -min_value, -0x1.ffffffffffffffffffffffffff8p+105L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -min_value, -0x1.ffffffffffffffffffffffffff8p+106L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, -min_value, -0x1.ffffffffffffffffffffffffffffp+112L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_ff_f (pow, -min_value, -0x1.ffffffffffffffffffffffffffffp+113L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-#endif
- TEST_ff_f (pow, -min_value, -max_value, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-
- TEST_ff_f (pow, -min_value, 0xffffff, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -min_value, 0x1fffffe, plus_zero, UNDERFLOW_EXCEPTION),
-#ifndef TEST_FLOAT
- TEST_ff_f (pow, -min_value, 0x1.fffffffffffffp+52L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -min_value, 0x1.fffffffffffffp+53L, plus_zero, UNDERFLOW_EXCEPTION),
-#endif
-#ifdef TEST_LDOUBLE
-# if LDBL_MANT_DIG >= 64
- TEST_ff_f (pow, -min_value, 0x1.fffffffffffffffep+63L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -min_value, 0x1.fffffffffffffffep+64L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-# if LDBL_MANT_DIG >= 106
- TEST_ff_f (pow, -min_value, 0x1.ffffffffffffffffffffffffff8p+105L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -min_value, 0x1.ffffffffffffffffffffffffff8p+106L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, -min_value, 0x1.ffffffffffffffffffffffffffffp+112L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_ff_f (pow, -min_value, 0x1.ffffffffffffffffffffffffffffp+113L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-#endif
- TEST_ff_f (pow, -min_value, max_value, plus_zero, UNDERFLOW_EXCEPTION),
-
- TEST_ff_f (pow, 0x0.ffffffp0, 10, 0.999999403953712118183885036774764444747L),
- TEST_ff_f (pow, 0x0.ffffffp0, 100, 0.999994039553108359406305079606228341585L),
- TEST_ff_f (pow, 0x0.ffffffp0, 1000, 0.9999403971297699052276650144650733772182L),
- TEST_ff_f (pow, 0x0.ffffffp0, 0x1p24, 0.3678794302077803437135155590023422899744L),
- TEST_ff_f (pow, 0x0.ffffffp0, 0x1p30, 1.603807831524924233828134753069728224044e-28L),
- TEST_ff_f (pow, 0x0.ffffffp0, 0x1.234566p30, 2.374884712135295099971443365381007297732e-32L),
- TEST_ff_f (pow, 0x0.ffffffp0, -10, 1.000000596046643153205170848674671339688L),
- TEST_ff_f (pow, 0x0.ffffffp0, -100, 1.000005960482418779499387594989252621451L),
- TEST_ff_f (pow, 0x0.ffffffp0, -1000, 1.000059606422943986382898964231519867906L),
- TEST_ff_f (pow, 0x0.ffffffp0, -0x1p24, 2.7182819094701610539628664526874952929416L),
- TEST_ff_f (pow, 0x0.ffffffp0, -0x1p30, 6.2351609734265057988914412331288163636075e+27L),
- TEST_ff_f (pow, 0x0.ffffffp0, -0x1.234566p30, 4.2107307141696353498921307077142537353515e+31L),
- TEST_ff_f (pow, 0x1.000002p0, 0x1p24, 7.3890552180866447284268641248075832310141L),
- TEST_ff_f (pow, 0x1.000002p0, 0x1.234566p29, 4.2107033006507495188536371520637025716256e+31L),
- TEST_ff_f (pow, 0x1.000002p0, -0x1.234566p29, 2.3749001736727769098946062325205705312166e-32L),
-
-#if !defined TEST_FLOAT
- TEST_ff_f (pow, 0x0.fffffffffffff8p0L, 0x1.23456789abcdfp62L, 1.0118762747827252817436395051178295138220e-253L),
- TEST_ff_f (pow, 0x0.fffffffffffff8p0L, -0x1.23456789abcdfp62L, 9.8826311568054561811190162420900667121992e+252L),
- TEST_ff_f (pow, 0x1.0000000000001p0L, 0x1.23456789abcdfp61L, 9.8826311568044974397135026217687399395481e+252L),
- TEST_ff_f (pow, 0x1.0000000000001p0L, -0x1.23456789abcdfp61L, 1.0118762747828234466621210689458255908670e-253L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 64 && LDBL_MAX_EXP >= 16384
- TEST_ff_f (pow, 0x0.ffffffffffffffffp0L, 0x1.23456789abcdef0ep77L, 1.2079212226420368189981778807634890018840e-4048L),
- TEST_ff_f (pow, 0x0.ffffffffffffffffp0L, -0x1.23456789abcdef0ep77L, 8.2786855736563746280496724205839522148001e+4047L),
- TEST_ff_f (pow, 0x1.0000000000000002p0L, 0x1.23456789abcdef0ep76L, 8.2786855736563683535324500168799315131570e+4047L),
- TEST_ff_f (pow, 0x1.0000000000000002p0L, -0x1.23456789abcdef0ep76L, 1.2079212226420377344964713407722652880280e-4048L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 113
- TEST_ff_f (pow, 0x0.ffffffffffffffffffffffffffff8p0L, 0x1.23456789abcdef0123456789abcdp126L, 1.2079212226420440237790185999151440179953e-4048L),
- TEST_ff_f (pow, 0x0.ffffffffffffffffffffffffffff8p0L, -0x1.23456789abcdef0123456789abcdp126L, 8.2786855736563252489063231915535105363602e+4047L),
- TEST_ff_f (pow, 0x1.0000000000000000000000000001p0L, 0x1.23456789abcdef0123456789abcdp125L, 8.2786855736563252489063231915423647547782e+4047L),
- TEST_ff_f (pow, 0x1.0000000000000000000000000001p0L, -0x1.23456789abcdef0123456789abcdp125L, 1.2079212226420440237790185999167702696503e-4048L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_ff_f (pow, 1e4932L, 0.75L, 1e3699L),
- TEST_ff_f (pow, 1e4928L, 0.75L, 1e3696L),
- TEST_ff_f (pow, 1e4924L, 0.75L, 1e3693L),
- TEST_ff_f (pow, 1e4920L, 0.75L, 1e3690L),
- TEST_ff_f (pow, 10.0L, 4932.0L, 1e4932L),
- TEST_ff_f (pow, 10.0L, 4931.0L, 1e4931L),
- TEST_ff_f (pow, 10.0L, 4930.0L, 1e4930L),
- TEST_ff_f (pow, 10.0L, 4929.0L, 1e4929L),
- TEST_ff_f (pow, 10.0L, -4931.0L, 1e-4931L),
- TEST_ff_f (pow, 10.0L, -4930.0L, 1e-4930L),
- TEST_ff_f (pow, 10.0L, -4929.0L, 1e-4929L),
- TEST_ff_f (pow, 1e27L, 182.0L, 1e4914L),
- TEST_ff_f (pow, 1e27L, -182.0L, 1e-4914L),
-#endif
-
- TEST_ff_f (pow, min_subnorm_value, min_subnorm_value, 1.0L),
- TEST_ff_f (pow, min_subnorm_value, -min_subnorm_value, 1.0L),
- TEST_ff_f (pow, max_value, min_subnorm_value, 1.0L),
- TEST_ff_f (pow, max_value, -min_subnorm_value, 1.0L),
- TEST_ff_f (pow, 0.99L, min_subnorm_value, 1.0L),
- TEST_ff_f (pow, 0.99L, -min_subnorm_value, 1.0L),
- TEST_ff_f (pow, 1.01L, min_subnorm_value, 1.0L),
- TEST_ff_f (pow, 1.01L, -min_subnorm_value, 1.0L),
-
- TEST_ff_f (pow, 2.0L, -100000.0L, plus_zero, UNDERFLOW_EXCEPTION),
+ AUTO_TESTS_ff_f (pow, tonearest),
};
static void
@@ -12164,8 +11338,7 @@ pow_test (void)
static const struct test_ff_f_data pow_tonearest_test_data[] =
{
- TEST_ff_f (pow, 1.0625L, 1.125L, 1.070582293028761362162622578677070098674L),
- TEST_ff_f (pow, 1.5L, 1.03125L, 1.519127098714743184071644334163037684948L),
+ AUTO_TESTS_ff_f (pow, tonearest),
};
static void
@@ -12247,6 +11420,9 @@ static const struct test_ff_f_data remainder_test_data[] =
TEST_ff_f (remainder, -1.625, -1.0, 0.375, NO_INEXACT_EXCEPTION),
TEST_ff_f (remainder, 5.0, 2.0, 1.0, NO_INEXACT_EXCEPTION),
TEST_ff_f (remainder, 3.0, 2.0, -1.0, NO_INEXACT_EXCEPTION),
+#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 56
+ TEST_ff_f (remainder, -0x1.80000000000002p1L, 2.0, 0x1.fffffffffffff8p-1L, NO_INEXACT_EXCEPTION),
+#endif
};
static void
@@ -13036,8 +12212,8 @@ static const struct test_ff_f_data scalb_test_data[] =
TEST_ff_f (scalb, 2.0, 0.5, qnan_value, INVALID_EXCEPTION),
TEST_ff_f (scalb, 3.0, -2.5, qnan_value, INVALID_EXCEPTION),
- TEST_ff_f (scalb, 0, qnan_value, qnan_value),
- TEST_ff_f (scalb, 1, qnan_value, qnan_value),
+ TEST_ff_f (scalb, 0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (scalb, 1, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_ff_f (scalb, 1, 0, 1),
TEST_ff_f (scalb, -1, 0, -1),
@@ -13072,13 +12248,13 @@ static const struct test_ff_f_data scalb_test_data[] =
TEST_ff_f (scalb, plus_infty, minus_infty, qnan_value, INVALID_EXCEPTION),
TEST_ff_f (scalb, minus_infty, minus_infty, qnan_value, INVALID_EXCEPTION),
- TEST_ff_f (scalb, qnan_value, 1, qnan_value),
- TEST_ff_f (scalb, 1, qnan_value, qnan_value),
- TEST_ff_f (scalb, qnan_value, 0, qnan_value),
- TEST_ff_f (scalb, 0, qnan_value, qnan_value),
- TEST_ff_f (scalb, qnan_value, plus_infty, qnan_value),
- TEST_ff_f (scalb, plus_infty, qnan_value, qnan_value),
- TEST_ff_f (scalb, qnan_value, qnan_value, qnan_value),
+ TEST_ff_f (scalb, qnan_value, 1, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (scalb, 1, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (scalb, qnan_value, 0, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (scalb, 0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (scalb, qnan_value, plus_infty, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (scalb, plus_infty, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_ff_f (scalb, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_ff_f (scalb, 0.8L, 4, 12.8L),
TEST_ff_f (scalb, -0.854375L, 5, -27.34L),
@@ -13184,11 +12360,12 @@ scalbln_test (void)
static const struct test_f_i_data signbit_test_data[] =
{
- /* TODO: missing qNaN tests. */
TEST_f_b (signbit, 0, 0, NO_INEXACT_EXCEPTION),
TEST_f_b (signbit, minus_zero, 1, NO_INEXACT_EXCEPTION),
TEST_f_b (signbit, plus_infty, 0, NO_INEXACT_EXCEPTION),
TEST_f_b (signbit, minus_infty, 1, NO_INEXACT_EXCEPTION),
+ TEST_f_b (signbit, qnan_value, 0, NO_INEXACT_EXCEPTION),
+ TEST_f_b (signbit, -qnan_value, 1, NO_INEXACT_EXCEPTION),
/* signbit (x) != 0 for x < 0. */
TEST_f_b (signbit, -1, 1, NO_INEXACT_EXCEPTION),
@@ -13207,43 +12384,11 @@ signbit_test (void)
static const struct test_f_f_data sin_test_data[] =
{
- TEST_f_f (sin, 0, 0),
- TEST_f_f (sin, minus_zero, minus_zero),
TEST_f_f (sin, plus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (sin, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (sin, qnan_value, qnan_value, ERRNO_UNCHANGED),
-
- TEST_f_f (sin, M_PI_6l, 0.5),
- TEST_f_f (sin, -M_PI_6l, -0.5),
- TEST_f_f (sin, M_PI_2l, 1),
- TEST_f_f (sin, -M_PI_2l, -1),
- TEST_f_f (sin, 0.75L, 0.681638760023334166733241952779893935L),
+ TEST_f_f (sin, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
- TEST_f_f (sin, 0x1p65, -0.047183876212354673805106149805700013943218L),
- TEST_f_f (sin, -0x1p65, 0.047183876212354673805106149805700013943218L),
-
- TEST_f_f (sin, 0x1.7f4134p+103, -6.6703229329788657073304190650534846045235e-08L),
-
-#ifdef TEST_DOUBLE
- TEST_f_f (sin, 0.80190127184058835, 0.71867942238767868),
- TEST_f_f (sin, 2.522464e-1, 2.4957989804940911e-1),
-#endif
-
-#ifndef TEST_FLOAT
- TEST_f_f (sin, 1e22, -0.8522008497671888017727058937530293682618L),
- TEST_f_f (sin, 0x1p1023, 0.5631277798508840134529434079444683477104L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (sin, 0x1p16383L, 0.3893629985894208126948115852610595405563L),
-#endif
-
- TEST_f_f (sin, 0x1p+120, 3.77820109360752022655548470056922991960587e-01L),
- TEST_f_f (sin, 0x1p+127, 6.23385512955870240370428801097126489001833e-01L),
- TEST_f_f (sin, 0x1.fffff8p+127, 4.85786063130487339701113680434728152037092e-02L),
- TEST_f_f (sin, 0x1.fffffep+127, -5.21876523333658540551505357019806722935726e-01L),
- TEST_f_f (sin, 0x1p+50, 4.96396515208940840876821859865411368093356e-01L),
- TEST_f_f (sin, 0x1p+28, -9.86198211836975655703110310527108292055548e-01L),
+ AUTO_TESTS_f_f (sin, tonearest),
};
static void
@@ -13257,16 +12402,7 @@ sin_test (void)
static const struct test_f_f_data sin_tonearest_test_data[] =
{
- TEST_f_f (sin, 1, 0.8414709848078965066525023216302989996226L),
- TEST_f_f (sin, 2, 0.9092974268256816953960198659117448427023L),
- TEST_f_f (sin, 3, 0.1411200080598672221007448028081102798469L),
- TEST_f_f (sin, 4, -0.7568024953079282513726390945118290941359L),
- TEST_f_f (sin, 5, -0.9589242746631384688931544061559939733525L),
- TEST_f_f (sin, 6, -0.2794154981989258728115554466118947596280L),
- TEST_f_f (sin, 7, 0.6569865987187890903969990915936351779369L),
- TEST_f_f (sin, 8, 0.9893582466233817778081235982452886721164L),
- TEST_f_f (sin, 9, 0.4121184852417565697562725663524351793439L),
- TEST_f_f (sin, 10, -0.5440211108893698134047476618513772816836L),
+ AUTO_TESTS_f_f (sin, tonearest),
};
static void
@@ -13280,16 +12416,7 @@ sin_test_tonearest (void)
static const struct test_f_f_data sin_towardzero_test_data[] =
{
- TEST_f_f (sin, 1, 0.8414709848078965066525023216302989996226L),
- TEST_f_f (sin, 2, 0.9092974268256816953960198659117448427023L),
- TEST_f_f (sin, 3, 0.1411200080598672221007448028081102798469L),
- TEST_f_f (sin, 4, -0.7568024953079282513726390945118290941359L),
- TEST_f_f (sin, 5, -0.9589242746631384688931544061559939733525L),
- TEST_f_f (sin, 6, -0.2794154981989258728115554466118947596280L),
- TEST_f_f (sin, 7, 0.6569865987187890903969990915936351779369L),
- TEST_f_f (sin, 8, 0.9893582466233817778081235982452886721164L),
- TEST_f_f (sin, 9, 0.4121184852417565697562725663524351793439L),
- TEST_f_f (sin, 10, -0.5440211108893698134047476618513772816836L),
+ AUTO_TESTS_f_f (sin, towardzero),
};
static void
@@ -13303,16 +12430,7 @@ sin_test_towardzero (void)
static const struct test_f_f_data sin_downward_test_data[] =
{
- TEST_f_f (sin, 1, 0.8414709848078965066525023216302989996226L),
- TEST_f_f (sin, 2, 0.9092974268256816953960198659117448427023L),
- TEST_f_f (sin, 3, 0.1411200080598672221007448028081102798469L),
- TEST_f_f (sin, 4, -0.7568024953079282513726390945118290941359L),
- TEST_f_f (sin, 5, -0.9589242746631384688931544061559939733525L),
- TEST_f_f (sin, 6, -0.2794154981989258728115554466118947596280L),
- TEST_f_f (sin, 7, 0.6569865987187890903969990915936351779369L),
- TEST_f_f (sin, 8, 0.9893582466233817778081235982452886721164L),
- TEST_f_f (sin, 9, 0.4121184852417565697562725663524351793439L),
- TEST_f_f (sin, 10, -0.5440211108893698134047476618513772816836L),
+ AUTO_TESTS_f_f (sin, downward),
};
static void
@@ -13326,16 +12444,7 @@ sin_test_downward (void)
static const struct test_f_f_data sin_upward_test_data[] =
{
- TEST_f_f (sin, 1, 0.8414709848078965066525023216302989996226L),
- TEST_f_f (sin, 2, 0.9092974268256816953960198659117448427023L),
- TEST_f_f (sin, 3, 0.1411200080598672221007448028081102798469L),
- TEST_f_f (sin, 4, -0.7568024953079282513726390945118290941359L),
- TEST_f_f (sin, 5, -0.9589242746631384688931544061559939733525L),
- TEST_f_f (sin, 6, -0.2794154981989258728115554466118947596280L),
- TEST_f_f (sin, 7, 0.6569865987187890903969990915936351779369L),
- TEST_f_f (sin, 8, 0.9893582466233817778081235982452886721164L),
- TEST_f_f (sin, 9, 0.4121184852417565697562725663524351793439L),
- TEST_f_f (sin, 10, -0.5440211108893698134047476618513772816836L),
+ AUTO_TESTS_f_f (sin, upward),
};
static void
@@ -13349,64 +12458,11 @@ sin_test_upward (void)
static const struct test_fFF_11_data sincos_test_data[] =
{
- TEST_fFF_11 (sincos, 0, 0, 1),
-
- TEST_fFF_11 (sincos, minus_zero, minus_zero, 1),
TEST_fFF_11 (sincos, plus_infty, qnan_value, qnan_value, INVALID_EXCEPTION),
TEST_fFF_11 (sincos, minus_infty, qnan_value, qnan_value, INVALID_EXCEPTION),
- TEST_fFF_11 (sincos, qnan_value, qnan_value, qnan_value),
-
- /* The value of M_PI_2l is never exactly PI/2, and therefore the
- answer is never exactly zero. The answer is equal to the error
- in rounding PI/2 for the type used. Thus the answer is unique
- to each type. */
-#ifdef TEST_FLOAT
- /* 32-bit float. */
- TEST_fFF_11 (sincos, M_PI_2l, 1, -0x1.777a5cp-25L),
-#endif
-#if defined TEST_DOUBLE || (defined TEST_LDOUBLE && LDBL_MANT_DIG == 53)
- /* 64-bit double or 64-bit long double. */
- TEST_fFF_11 (sincos, M_PI_2l, 1, 0x1.1a62633145c07p-54L),
-#endif
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG == 64
- /* 96-bit long double. */
- TEST_fFF_11 (sincos, M_PI_2l, 1, -0xe.ce675d1fc8f8cbbp-69L),
-#endif
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG == 106
- /* 128-bit IBM long double. */
- TEST_fFF_11 (sincos, M_PI_2l, 1, 0x1.c1cd129024e088a67cc74020bcp-107L),
-#endif
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG == 113
- /* 128-bit long double. */
- TEST_fFF_11 (sincos, M_PI_2l, 1, 0x1.cd129024e088a67cc74020bbea64p-115L),
-#endif
+ TEST_fFF_11 (sincos, qnan_value, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_fFF_11 (sincos, M_PI_6l, 0.5, 0.86602540378443864676372317075293616L),
- TEST_fFF_11 (sincos, M_PI_6l*2.0, 0.86602540378443864676372317075293616L, 0.5),
- TEST_fFF_11 (sincos, 0.75L, 0.681638760023334166733241952779893935L, 0.731688868873820886311838753000084544L),
-
- TEST_fFF_11 (sincos, 0x1p65, -0.047183876212354673805106149805700013943218L, 0.99888622066058013610642172179340364209972L),
- TEST_fFF_11 (sincos, -0x1p65, 0.047183876212354673805106149805700013943218L, 0.99888622066058013610642172179340364209972L),
-
-#ifdef TEST_DOUBLE
- TEST_fFF_11 (sincos, 0.80190127184058835, 0.71867942238767868, 0.69534156199418473),
-#endif
-
-#ifndef TEST_FLOAT
- TEST_fFF_11 (sincos, 1e22, -0.8522008497671888017727058937530293682618L, 0.5232147853951389454975944733847094921409L),
- TEST_fFF_11 (sincos, 0x1p1023, 0.5631277798508840134529434079444683477104L, -0.826369834614147994500785680811743734805L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_fFF_11 (sincos, 0x1p16383L, 0.3893629985894208126948115852610595405563L, 0.9210843909921906206874509522505756251609L),
-#endif
-
- TEST_fFF_11 (sincos, 0x1p+120, 3.77820109360752022655548470056922991960587e-01L, -9.25879022854837867303861764107414946730833e-01L),
- TEST_fFF_11 (sincos, 0x1p+127, 6.23385512955870240370428801097126489001833e-01L, 7.81914638714960072263910298466369236613162e-01L),
- TEST_fFF_11 (sincos, 0x1.fffff8p+127, 4.85786063130487339701113680434728152037092e-02L, 9.98819362551949040703862043664101081064641e-01L),
- TEST_fFF_11 (sincos, 0x1.fffffep+127, -5.21876523333658540551505357019806722935726e-01L, 8.53021039830304158051791467692161107353094e-01L),
- TEST_fFF_11 (sincos, 0x1p+50, 4.96396515208940840876821859865411368093356e-01L, 8.68095904660550604334592502063501320395739e-01L),
- TEST_fFF_11 (sincos, 0x1p+28, -9.86198211836975655703110310527108292055548e-01L, -1.65568979490578758865468278195361551113358e-01L),
+ AUTO_TESTS_fFF_11 (sincos, tonearest),
};
static void
@@ -13421,17 +12477,11 @@ sincos_test (void)
static const struct test_f_f_data sinh_test_data[] =
{
- TEST_f_f (sinh, 0, 0),
- TEST_f_f (sinh, minus_zero, minus_zero),
+ TEST_f_f (sinh, plus_infty, plus_infty, NO_TEST_INLINE),
+ TEST_f_f (sinh, minus_infty, minus_infty, NO_TEST_INLINE),
+ TEST_f_f (sinh, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
-#ifndef TEST_INLINE
- TEST_f_f (sinh, plus_infty, plus_infty),
- TEST_f_f (sinh, minus_infty, minus_infty),
-#endif
- TEST_f_f (sinh, qnan_value, qnan_value),
-
- TEST_f_f (sinh, 0.75L, 0.822316731935829980703661634446913849L),
- TEST_f_f (sinh, 0x8p-32L, 1.86264514923095703232705808926175479e-9L),
+ AUTO_TESTS_f_f (sinh, tonearest),
};
static void
@@ -13445,9 +12495,7 @@ sinh_test (void)
static const struct test_f_f_data sinh_tonearest_test_data[] =
{
- TEST_f_f (sinh, 22, 1792456423.065795780701106568345764104225L),
- TEST_f_f (sinh, 23, 4872401723.124451299966006944252978187305L),
- TEST_f_f (sinh, 24, 13244561064.92173614705070540368454568168L),
+ AUTO_TESTS_f_f (sinh, tonearest),
};
static void
@@ -13461,9 +12509,7 @@ sinh_test_tonearest (void)
static const struct test_f_f_data sinh_towardzero_test_data[] =
{
- TEST_f_f (sinh, 22, 1792456423.065795780701106568345764104225L),
- TEST_f_f (sinh, 23, 4872401723.124451299966006944252978187305L),
- TEST_f_f (sinh, 24, 13244561064.92173614705070540368454568168L),
+ AUTO_TESTS_f_f (sinh, towardzero),
};
static void
@@ -13477,9 +12523,7 @@ sinh_test_towardzero (void)
static const struct test_f_f_data sinh_downward_test_data[] =
{
- TEST_f_f (sinh, 22, 1792456423.065795780701106568345764104225L),
- TEST_f_f (sinh, 23, 4872401723.124451299966006944252978187305L),
- TEST_f_f (sinh, 24, 13244561064.92173614705070540368454568168L),
+ AUTO_TESTS_f_f (sinh, downward),
};
static void
@@ -13493,9 +12537,7 @@ sinh_test_downward (void)
static const struct test_f_f_data sinh_upward_test_data[] =
{
- TEST_f_f (sinh, 22, 1792456423.065795780701106568345764104225L),
- TEST_f_f (sinh, 23, 4872401723.124451299966006944252978187305L),
- TEST_f_f (sinh, 24, 13244561064.92173614705070540368454568168L),
+ AUTO_TESTS_f_f (sinh, upward),
};
static void
@@ -13509,24 +12551,15 @@ sinh_test_upward (void)
static const struct test_f_f_data sqrt_test_data[] =
{
- TEST_f_f (sqrt, 0, 0, NO_INEXACT_EXCEPTION),
TEST_f_f (sqrt, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_f_f (sqrt, plus_infty, plus_infty, NO_INEXACT_EXCEPTION),
- TEST_f_f (sqrt, minus_zero, minus_zero, NO_INEXACT_EXCEPTION),
-
/* sqrt (x) == qNaN plus invalid exception for x < 0. */
TEST_f_f (sqrt, -1, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (sqrt, -max_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (sqrt, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (sqrt, 2209, 47, NO_INEXACT_EXCEPTION),
- TEST_f_f (sqrt, 4, 2, NO_INEXACT_EXCEPTION),
- TEST_f_f (sqrt, 2, M_SQRT2l, INEXACT_EXCEPTION),
- TEST_f_f (sqrt, 0.25, 0.5, NO_INEXACT_EXCEPTION),
- TEST_f_f (sqrt, 6642.25, 81.5, NO_INEXACT_EXCEPTION),
- TEST_f_f (sqrt, 15190.5625L, 123.25L, NO_INEXACT_EXCEPTION),
- TEST_f_f (sqrt, 0.75L, 0.866025403784438646763723170752936183L, INEXACT_EXCEPTION),
+ AUTO_TESTS_f_f (sqrt, tonearest),
};
static void
@@ -13537,67 +12570,98 @@ sqrt_test (void)
END;
}
+static const struct test_f_f_data sqrt_tonearest_test_data[] =
+ {
+ TEST_f_f (sqrt, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_f_f (sqrt, plus_infty, plus_infty, NO_INEXACT_EXCEPTION),
+
+ /* sqrt (x) == qNaN plus invalid exception for x < 0. */
+ TEST_f_f (sqrt, -1, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (sqrt, -max_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (sqrt, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+
+ AUTO_TESTS_f_f (sqrt, tonearest),
+ };
+
+static void
+sqrt_test_tonearest (void)
+{
+ START (sqrt_tonearest);
+ RUN_TEST_LOOP_f_f (sqrt, sqrt_tonearest_test_data, FE_TONEAREST);
+ END;
+}
+
+static const struct test_f_f_data sqrt_towardzero_test_data[] =
+ {
+ TEST_f_f (sqrt, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_f_f (sqrt, plus_infty, plus_infty, NO_INEXACT_EXCEPTION),
+
+ /* sqrt (x) == qNaN plus invalid exception for x < 0. */
+ TEST_f_f (sqrt, -1, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (sqrt, -max_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (sqrt, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+
+ AUTO_TESTS_f_f (sqrt, towardzero),
+ };
+
+static void
+sqrt_test_towardzero (void)
+{
+ START (sqrt_towardzero);
+ RUN_TEST_LOOP_f_f (sqrt, sqrt_towardzero_test_data, FE_TOWARDZERO);
+ END;
+}
+
+static const struct test_f_f_data sqrt_downward_test_data[] =
+ {
+ TEST_f_f (sqrt, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_f_f (sqrt, plus_infty, plus_infty, NO_INEXACT_EXCEPTION),
+
+ /* sqrt (x) == qNaN plus invalid exception for x < 0. */
+ TEST_f_f (sqrt, -1, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (sqrt, -max_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (sqrt, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+
+ AUTO_TESTS_f_f (sqrt, downward),
+ };
+
+static void
+sqrt_test_downward (void)
+{
+ START (sqrt_downward);
+ RUN_TEST_LOOP_f_f (sqrt, sqrt_downward_test_data, FE_DOWNWARD);
+ END;
+}
+
+static const struct test_f_f_data sqrt_upward_test_data[] =
+ {
+ TEST_f_f (sqrt, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+ TEST_f_f (sqrt, plus_infty, plus_infty, NO_INEXACT_EXCEPTION),
+
+ /* sqrt (x) == qNaN plus invalid exception for x < 0. */
+ TEST_f_f (sqrt, -1, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (sqrt, -max_value, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (sqrt, minus_infty, qnan_value, NO_INEXACT_EXCEPTION|INVALID_EXCEPTION|ERRNO_EDOM),
+
+ AUTO_TESTS_f_f (sqrt, upward),
+ };
+
+static void
+sqrt_test_upward (void)
+{
+ START (sqrt_upward);
+ RUN_TEST_LOOP_f_f (sqrt, sqrt_upward_test_data, FE_UPWARD);
+ END;
+}
+
static const struct test_f_f_data tan_test_data[] =
{
- TEST_f_f (tan, 0, 0),
- TEST_f_f (tan, minus_zero, minus_zero),
TEST_f_f (tan, plus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (tan, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (tan, qnan_value, qnan_value, ERRNO_UNCHANGED),
-
- TEST_f_f (tan, M_PI_4l, 1),
- TEST_f_f (tan, 0.75L, 0.931596459944072461165202756573936428L),
-
- TEST_f_f (tan, 0x1p65, -0.0472364872359047946798414219288370688827L),
- TEST_f_f (tan, -0x1p65, 0.0472364872359047946798414219288370688827L),
-
- TEST_f_f (tan, 0xc.9p-4, 0.9995162902115457818029468900654150261381L),
- TEST_f_f (tan, 0xc.908p-4, 0.9997603425502441410973077452249560802034L),
- TEST_f_f (tan, 0xc.90cp-4, 0.9998823910588060302788513970802357770031L),
- TEST_f_f (tan, 0xc.90ep-4, 0.9999434208994808753305784795924711152508L),
- TEST_f_f (tan, 0xc.90fp-4, 0.9999739372166156702433266059635165160515L),
- TEST_f_f (tan, 0xc.90f8p-4, 0.9999891957244072765118898375645469865764L),
- TEST_f_f (tan, 0xc.90fcp-4, 0.9999968250656122402859679132395522927393L),
- TEST_f_f (tan, 0xc.90fdp-4, 0.9999987324100083358016192309006353329444L),
- TEST_f_f (tan, 0xc.90fd8p-4, 0.9999996860835706212861509874451585282616L),
- TEST_f_f (tan, 0xc.90fdap-4, 0.9999999245021033010474530133665235922808L),
- TEST_f_f (tan, 0xc.ap-4, 1.0073556597407272165371804539701396631519L),
- TEST_f_f (tan, 0xc.98p-4, 1.0034282930863044654045449407466962736255L),
- TEST_f_f (tan, 0xc.94p-4, 1.0014703786820082237342656561856877993328L),
- TEST_f_f (tan, 0xc.92p-4, 1.0004928571392300571266638743539017593717L),
- TEST_f_f (tan, 0xc.91p-4, 1.0000044544650244953647966900221905361131L),
- TEST_f_f (tan, 0xc.90fep-4, 1.0000006397580424009014454926842136804016L),
- TEST_f_f (tan, 0xc.90fdcp-4, 1.0000001629206928242190327320047489394217L),
- TEST_f_f (tan, 0xc.90fdbp-4, 1.0000000437113909572052640953950483705005L),
-
- TEST_f_f (tan, -0xc.9p-4, -0.9995162902115457818029468900654150261381L),
- TEST_f_f (tan, -0xc.908p-4, -0.9997603425502441410973077452249560802034L),
- TEST_f_f (tan, -0xc.90cp-4, -0.9998823910588060302788513970802357770031L),
- TEST_f_f (tan, -0xc.90ep-4, -0.9999434208994808753305784795924711152508L),
- TEST_f_f (tan, -0xc.90fp-4, -0.9999739372166156702433266059635165160515L),
- TEST_f_f (tan, -0xc.90f8p-4, -0.9999891957244072765118898375645469865764L),
- TEST_f_f (tan, -0xc.90fcp-4, -0.9999968250656122402859679132395522927393L),
- TEST_f_f (tan, -0xc.90fdp-4, -0.9999987324100083358016192309006353329444L),
- TEST_f_f (tan, -0xc.90fd8p-4, -0.9999996860835706212861509874451585282616L),
- TEST_f_f (tan, -0xc.90fdap-4, -0.9999999245021033010474530133665235922808L),
- TEST_f_f (tan, -0xc.ap-4, -1.0073556597407272165371804539701396631519L),
- TEST_f_f (tan, -0xc.98p-4, -1.0034282930863044654045449407466962736255L),
- TEST_f_f (tan, -0xc.94p-4, -1.0014703786820082237342656561856877993328L),
- TEST_f_f (tan, -0xc.92p-4, -1.0004928571392300571266638743539017593717L),
- TEST_f_f (tan, -0xc.91p-4, -1.0000044544650244953647966900221905361131L),
- TEST_f_f (tan, -0xc.90fep-4, -1.0000006397580424009014454926842136804016L),
- TEST_f_f (tan, -0xc.90fdcp-4, -1.0000001629206928242190327320047489394217L),
- TEST_f_f (tan, -0xc.90fdbp-4, -1.0000000437113909572052640953950483705005L),
+ TEST_f_f (tan, qnan_value, qnan_value, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
-#ifndef TEST_FLOAT
- TEST_f_f (tan, 1e22, -1.628778225606898878549375936939548513545L),
- TEST_f_f (tan, 0x1p1023, -0.6814476476066215012854144040167365190368L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (tan, 0x1p16383L, 0.422722393732022337800504160054440141575L),
-#endif
+ AUTO_TESTS_f_f (tan, tonearest),
};
static void
@@ -13611,16 +12675,7 @@ tan_test (void)
static const struct test_f_f_data tan_tonearest_test_data[] =
{
- TEST_f_f (tan, 1, 1.5574077246549022305069748074583601730873L),
- TEST_f_f (tan, 2, -2.1850398632615189916433061023136825434320L),
- TEST_f_f (tan, 3, -0.1425465430742778052956354105339134932261L),
- TEST_f_f (tan, 4, 1.1578212823495775831373424182673239231198L),
- TEST_f_f (tan, 5, -3.3805150062465856369827058794473439087096L),
- TEST_f_f (tan, 6, -0.2910061913847491570536995888681755428312L),
- TEST_f_f (tan, 7, 0.8714479827243187364564508896003135663222L),
- TEST_f_f (tan, 8, -6.7997114552203786999252627596086333648814L),
- TEST_f_f (tan, 9, -0.4523156594418098405903708757987855343087L),
- TEST_f_f (tan, 10, 0.6483608274590866712591249330098086768169L),
+ AUTO_TESTS_f_f (tan, tonearest),
};
static void
@@ -13634,16 +12689,7 @@ tan_test_tonearest (void)
static const struct test_f_f_data tan_towardzero_test_data[] =
{
- TEST_f_f (tan, 1, 1.5574077246549022305069748074583601730873L),
- TEST_f_f (tan, 2, -2.1850398632615189916433061023136825434320L),
- TEST_f_f (tan, 3, -0.1425465430742778052956354105339134932261L),
- TEST_f_f (tan, 4, 1.1578212823495775831373424182673239231198L),
- TEST_f_f (tan, 5, -3.3805150062465856369827058794473439087096L),
- TEST_f_f (tan, 6, -0.2910061913847491570536995888681755428312L),
- TEST_f_f (tan, 7, 0.8714479827243187364564508896003135663222L),
- TEST_f_f (tan, 8, -6.7997114552203786999252627596086333648814L),
- TEST_f_f (tan, 9, -0.4523156594418098405903708757987855343087L),
- TEST_f_f (tan, 10, 0.6483608274590866712591249330098086768169L),
+ AUTO_TESTS_f_f (tan, towardzero),
};
static void
@@ -13657,16 +12703,7 @@ tan_test_towardzero (void)
static const struct test_f_f_data tan_downward_test_data[] =
{
- TEST_f_f (tan, 1, 1.5574077246549022305069748074583601730873L),
- TEST_f_f (tan, 2, -2.1850398632615189916433061023136825434320L),
- TEST_f_f (tan, 3, -0.1425465430742778052956354105339134932261L),
- TEST_f_f (tan, 4, 1.1578212823495775831373424182673239231198L),
- TEST_f_f (tan, 5, -3.3805150062465856369827058794473439087096L),
- TEST_f_f (tan, 6, -0.2910061913847491570536995888681755428312L),
- TEST_f_f (tan, 7, 0.8714479827243187364564508896003135663222L),
- TEST_f_f (tan, 8, -6.7997114552203786999252627596086333648814L),
- TEST_f_f (tan, 9, -0.4523156594418098405903708757987855343087L),
- TEST_f_f (tan, 10, 0.6483608274590866712591249330098086768169L),
+ AUTO_TESTS_f_f (tan, downward),
};
static void
@@ -13680,16 +12717,7 @@ tan_test_downward (void)
static const struct test_f_f_data tan_upward_test_data[] =
{
- TEST_f_f (tan, 1, 1.5574077246549022305069748074583601730873L),
- TEST_f_f (tan, 2, -2.1850398632615189916433061023136825434320L),
- TEST_f_f (tan, 3, -0.1425465430742778052956354105339134932261L),
- TEST_f_f (tan, 4, 1.1578212823495775831373424182673239231198L),
- TEST_f_f (tan, 5, -3.3805150062465856369827058794473439087096L),
- TEST_f_f (tan, 6, -0.2910061913847491570536995888681755428312L),
- TEST_f_f (tan, 7, 0.8714479827243187364564508896003135663222L),
- TEST_f_f (tan, 8, -6.7997114552203786999252627596086333648814L),
- TEST_f_f (tan, 9, -0.4523156594418098405903708757987855343087L),
- TEST_f_f (tan, 10, 0.6483608274590866712591249330098086768169L),
+ AUTO_TESTS_f_f (tan, upward),
};
static void
@@ -13703,23 +12731,11 @@ tan_test_upward (void)
static const struct test_f_f_data tanh_test_data[] =
{
- TEST_f_f (tanh, 0, 0),
- TEST_f_f (tanh, minus_zero, minus_zero),
+ TEST_f_f (tanh, plus_infty, 1, NO_TEST_INLINE),
+ TEST_f_f (tanh, minus_infty, -1, NO_TEST_INLINE),
+ TEST_f_f (tanh, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
-#ifndef TEST_INLINE
- TEST_f_f (tanh, plus_infty, 1),
- TEST_f_f (tanh, minus_infty, -1),
-#endif
- TEST_f_f (tanh, qnan_value, qnan_value),
-
- TEST_f_f (tanh, 0.75L, 0.635148952387287319214434357312496495L),
- TEST_f_f (tanh, -0.75L, -0.635148952387287319214434357312496495L),
-
- TEST_f_f (tanh, 1.0L, 0.7615941559557648881194582826047935904L),
- TEST_f_f (tanh, -1.0L, -0.7615941559557648881194582826047935904L),
-
- /* 2^-57 */
- TEST_f_f (tanh, 0x1p-57L, 6.938893903907228377647697925567626953125e-18L),
+ AUTO_TESTS_f_f (tanh, tonearest),
};
static void
@@ -13740,516 +12756,9 @@ static const struct test_f_f_data tgamma_test_data[] =
TEST_f_f (tgamma, -2, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (tgamma, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
TEST_f_f (tgamma, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (tgamma, qnan_value, qnan_value),
-
- TEST_f_f (tgamma, 0.5, M_SQRT_PIl),
- TEST_f_f (tgamma, -0.5, -M_2_SQRT_PIl),
-
- TEST_f_f (tgamma, 1, 1),
- TEST_f_f (tgamma, 2, 1),
- TEST_f_f (tgamma, 3, 2),
- TEST_f_f (tgamma, 4, 6),
- TEST_f_f (tgamma, 5, 24),
- TEST_f_f (tgamma, 6, 120),
- TEST_f_f (tgamma, 7, 720),
- TEST_f_f (tgamma, 8, 5040),
- TEST_f_f (tgamma, 9, 40320),
- TEST_f_f (tgamma, 10, 362880),
-
- TEST_f_f (tgamma, 0.7L, 1.29805533264755778568117117915281162L),
- TEST_f_f (tgamma, 1.2L, 0.918168742399760610640951655185830401L),
-
- TEST_f_f (tgamma, 1.5L, 8.8622692545275801364908374167057259139877e-01L),
- TEST_f_f (tgamma, 2.5L, 1.3293403881791370204736256125058588870982e+00L),
- TEST_f_f (tgamma, 3.5L, 3.3233509704478425511840640312646472177454e+00L),
- TEST_f_f (tgamma, 4.5L, 1.1631728396567448929144224109426265262109e+01L),
- TEST_f_f (tgamma, 5.5L, 5.2342777784553520181149008492418193679490e+01L),
- TEST_f_f (tgamma, 6.5L, 2.8788527781504436099631954670830006523720e+02L),
- TEST_f_f (tgamma, 7.5L, 1.8712543057977883464760770536039504240418e+03L),
- TEST_f_f (tgamma, 8.5L, 1.4034407293483412598570577902029628180313e+04L),
- TEST_f_f (tgamma, 9.5L, 1.1929246199460900708784991216725183953266e+05L),
- TEST_f_f (tgamma, -1.5L, 2.3632718012073547030642233111215269103967e+00L),
- TEST_f_f (tgamma, -2.5L, -9.4530872048294188122568932444861076415869e-01L),
- TEST_f_f (tgamma, -3.5L, 2.7008820585226910892162552127103164690248e-01L),
- TEST_f_f (tgamma, -4.5L, -6.0019601300504246427027893615784810422774e-02L),
- TEST_f_f (tgamma, -5.5L, 1.0912654781909862986732344293779056440504e-02L),
- TEST_f_f (tgamma, -6.5L, -1.6788699664476712287280529682737009908468e-03L),
- TEST_f_f (tgamma, -7.5L, 2.2384932885968949716374039576982679877958e-04L),
- TEST_f_f (tgamma, -8.5L, -2.6335215159963470254557693619979623385833e-05L),
- TEST_f_f (tgamma, -9.5L, 2.7721279115751021320587045915768024616666e-06L),
- TEST_f_f (tgamma, 0x1p-24L, 1.6777215422784394050795179874582764575261e+07L),
- TEST_f_f (tgamma, -0x1p-24L, -1.6777216577215723853867349114260580375249e+07L),
- TEST_f_f (tgamma, 0x1p-53L, 9.0071992547409914227843350984672492007618e+15L),
- TEST_f_f (tgamma, -0x1p-53L, -9.0071992547409925772156649015329704137860e+15L),
- TEST_f_f (tgamma, 0x1p-64L, 1.8446744073709551615422784335098467139447e+19L),
- TEST_f_f (tgamma, -0x1p-64L, -1.8446744073709551616577215664901532860660e+19L),
- TEST_f_f (tgamma, 0x1p-106L, 8.1129638414606681695789005144063422784335e+31L),
- TEST_f_f (tgamma, -0x1p-106L, -8.1129638414606681695789005144064577215665e+31L),
- TEST_f_f (tgamma, 0x1p-113L, 1.0384593717069655257060992658440191422784e+34L),
- TEST_f_f (tgamma, -0x1p-113L, -1.0384593717069655257060992658440192577216e+34L),
- TEST_f_f (tgamma, 0x1p-127L, 1.7014118346046923173168730371588410572742e+38L),
- TEST_f_f (tgamma, -0x1p-127L, -1.7014118346046923173168730371588410572858e+38L),
-#ifdef TEST_FLOAT
- TEST_f_f (tgamma, 0x1p-128L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (tgamma, -0x1p-128L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (tgamma, 0x1p-149L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (tgamma, -0x1p-149L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-#else
- TEST_f_f (tgamma, 0x1p-128L, 3.4028236692093846346337460743176821145542e+38L),
- TEST_f_f (tgamma, -0x1p-128L, -3.4028236692093846346337460743176821145658e+38L),
- TEST_f_f (tgamma, 0x1p-149L, 7.1362384635297994052914298472474756819137e+44L),
- TEST_f_f (tgamma, -0x1p-149L, -7.1362384635297994052914298472474756819137e+44L),
-#endif
-#ifndef TEST_FLOAT
- TEST_f_f (tgamma, 0x1p-1023L, 8.9884656743115795386465259539451236680899e+307L),
- TEST_f_f (tgamma, -0x1p-1023L, -8.9884656743115795386465259539451236680899e+307L),
-# if !defined TEST_LDOUBLE || LDBL_MAX_EXP <= 1024
- TEST_f_f (tgamma, 0x1p-1024L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (tgamma, -0x1p-1024L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (tgamma, 0x1p-1074L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (tgamma, -0x1p-1074L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# else
- TEST_f_f (tgamma, 0x1p-1024L, 1.7976931348623159077293051907890247336180e+308L),
- TEST_f_f (tgamma, -0x1p-1024L, -1.7976931348623159077293051907890247336180e+308L),
- TEST_f_f (tgamma, 0x1p-1074L, 2.0240225330731061835249534671891730704956e+323L),
- TEST_f_f (tgamma, -0x1p-1074L, -2.0240225330731061835249534671891730704956e+323L),
-# endif
-#endif
-#if defined TEST_LDOUBLE && LDBL_MIN_EXP <= -16381
- TEST_f_f (tgamma, 0x1p-16383L, 5.9486574767861588254287966331400356538172e+4931L),
- TEST_f_f (tgamma, -0x1p-16383L, -5.9486574767861588254287966331400356538172e+4931L),
- TEST_f_f (tgamma, 0x1p-16384L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (tgamma, -0x1p-16384L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (tgamma, 0x1p-16445L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (tgamma, -0x1p-16445L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# if LDBL_MANT_DIG >= 113
- TEST_f_f (tgamma, 0x1p-16494L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
- TEST_f_f (tgamma, -0x1p-16494L, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-#endif
- TEST_f_f (tgamma, 0x8.00001p0L, 5.0400096882277802019946778420223050233915e+03L),
- TEST_f_f (tgamma, 0x7.fffff8p0L, 5.0399951558933225045148935487583089307135e+03L),
- TEST_f_f (tgamma, 0x7.000008p0L, 7.2000064296977505705636258629805621178587e+02L),
- TEST_f_f (tgamma, 0x6.fffff8p0L, 7.1999935703082425988147448928288557689866e+02L),
- TEST_f_f (tgamma, 0x6.000008p0L, 1.2000009762487825358530770343720418162783e+02L),
- TEST_f_f (tgamma, 0x5.fffff8p0L, 1.1999990237520611552119807476573441975106e+02L),
- TEST_f_f (tgamma, 0x5.000008p0L, 2.4000017236155647574166073485628713443799e+01L),
- TEST_f_f (tgamma, 0x4.fffff8p0L, 2.3999982763857938712639837029547357501709e+01L),
- TEST_f_f (tgamma, 0x4.000008p0L, 6.0000035937827461765660468073471093546129e+00L),
- TEST_f_f (tgamma, 0x3.fffffcp0L, 5.9999982031095793171233994481968816873643e+00L),
- TEST_f_f (tgamma, 0x3.000004p0L, 2.0000004400179308360529417942462250547999e+00L),
- TEST_f_f (tgamma, 0x2.fffffcp0L, 1.9999995599822108706107786027549565954046e+00L),
- TEST_f_f (tgamma, 0x2.000004p0L, 1.0000001007996638509889062631687945799175e+00L),
- TEST_f_f (tgamma, 0x1.fffffep0L, 9.9999994960018563231526611134590489120697e-01L),
- TEST_f_f (tgamma, 0x1.000002p0L, 9.9999993119054472483596471908942669644327e-01L),
- TEST_f_f (tgamma, 0x0.ffffffp0L, 1.0000000344047381790797322460568297132998e+00L),
- TEST_f_f (tgamma, -0x0.ffffffp0L, -1.6777216422784419250710305882992376932423e+07L),
- TEST_f_f (tgamma, -0x1.000002p0L, 8.3886075772158332060084424806449513922858e+06L),
- TEST_f_f (tgamma, -0x1.fffffep0L, 4.1943044613922792026014320172298377770578e+06L),
- TEST_f_f (tgamma, -0x2.000004p0L, -2.0971515386080557574407223895988378776747e+06L),
- TEST_f_f (tgamma, -0x2.fffffcp0L, -6.9905087601970247876992248591045142913324e+05L),
- TEST_f_f (tgamma, -0x3.000004p0L, 6.9905045731381300146131914617735687322025e+05L),
- TEST_f_f (tgamma, -0x3.fffffcp0L, 1.7476272942159602684441970627092458855771e+05L),
- TEST_f_f (tgamma, -0x4.000008p0L, -8.7381270578483499672965708923121931082305e+04L),
- TEST_f_f (tgamma, -0x4.fffff8p0L, -1.7476280884325863043793087474680780379554e+04L),
- TEST_f_f (tgamma, -0x5.000008p0L, 1.7476252449031389167286893378510439443844e+04L),
- TEST_f_f (tgamma, -0x5.fffff8p0L, 2.9127137122026653716311560165769071985443e+03L),
- TEST_f_f (tgamma, -0x6.000008p0L, -2.9127085100239567622341538102130981196910e+03L),
- TEST_f_f (tgamma, -0x6.fffff8p0L, -4.1610198723079349791939054365613377035519e+02L),
- TEST_f_f (tgamma, -0x7.000008p0L, 4.1610118737306415004517215226199741948733e+02L),
- TEST_f_f (tgamma, -0x7.fffff8p0L, 5.2012751504050764429534086402871289946986e+01L),
- TEST_f_f (tgamma, -0x8.00001p0L, -2.6006296115134418896533598545925084576702e+01L),
- TEST_f_f (tgamma, -0x9.fffffp0L, 2.8896008370721717567612135720915723136310e-01L),
- TEST_f_f (tgamma, -0xa.00001p0L, -2.8895878754728051776830454190076999107021e-01L),
- TEST_f_f (tgamma, -0x13.ffffep0L, 2.1550026214525536756224040483579183652119e-13L),
- TEST_f_f (tgamma, -0x14.00002p0L, -2.1549777908265594916405421768142757507179e-13L),
- TEST_f_f (tgamma, -0x1d.ffffep0L, 1.9765721589464867957912772592816027583176e-27L),
- TEST_f_f (tgamma, -0x1e.00002p0L, -1.9765463890341964384070157599286498212650e-27L),
- TEST_f_f (tgamma, -0x27.ffffcp0L, 3.2129279441390812141195076945616975790225e-43L, UNDERFLOW_EXCEPTION_FLOAT),
- TEST_f_f (tgamma, -0x28.00004p0L, -3.2128372159115252365699015758097981155793e-43L, UNDERFLOW_EXCEPTION_FLOAT),
- TEST_f_f (tgamma, -0x28.ffffcp0L, -7.8364103489619817539676737414096652170685e-45L, UNDERFLOW_EXCEPTION_FLOAT),
- TEST_f_f (tgamma, -0x29.00004p0L, 7.8361876024016854597745353972619195760515e-45L, UNDERFLOW_EXCEPTION_FLOAT),
-#ifdef TEST_FLOAT
- TEST_f_f (tgamma, -0x29.ffffcp0L, plus_zero, UNDERFLOW_EXCEPTION_FLOAT),
- TEST_f_f (tgamma, -0x2a.00004p0L, minus_zero, UNDERFLOW_EXCEPTION_FLOAT),
-#else
- TEST_f_f (tgamma, -0x29.ffffcp0L, 1.8658121573125798145204120066590953505132e-46L),
- TEST_f_f (tgamma, -0x2a.00004p0L, -1.8657587834931410688246126853566488626385e-46L),
-#endif
-#ifndef TEST_FLOAT
- TEST_f_f (tgamma, 0x8.0000000000008p0L, 5.0400000000000180457125667322294144477136e+03L),
- TEST_f_f (tgamma, 0x7.ffffffffffffcp0L, 5.0399999999999909771437166339103165198442e+03L),
- TEST_f_f (tgamma, 0x7.0000000000004p0L, 7.2000000000000119762397445457359071259652e+02L),
- TEST_f_f (tgamma, 0x6.ffffffffffffcp0L, 7.1999999999999880237602554542848858572672e+02L),
- TEST_f_f (tgamma, 0x6.0000000000004p0L, 1.2000000000000018184042734842640022086408e+02L),
- TEST_f_f (tgamma, 0x5.ffffffffffffcp0L, 1.1999999999999981815957265157389249327533e+02L),
- TEST_f_f (tgamma, 0x5.0000000000004p0L, 2.4000000000000032104829055124673225982803e+01L),
- TEST_f_f (tgamma, 0x4.ffffffffffffcp0L, 2.3999999999999967895170944875373910918544e+01L),
- TEST_f_f (tgamma, 0x4.0000000000004p0L, 6.0000000000000066939396342309789716341613e+00L),
- TEST_f_f (tgamma, 0x3.ffffffffffffep0L, 5.9999999999999966530301828845138185025345e+00L),
- TEST_f_f (tgamma, 0x3.0000000000002p0L, 2.0000000000000008195971324717875960213536e+00L),
- TEST_f_f (tgamma, 0x2.ffffffffffffep0L, 1.9999999999999991804028675282128956223990e+00L),
- TEST_f_f (tgamma, 0x2.0000000000002p0L, 1.0000000000000001877539613108624482361963e+00L),
- TEST_f_f (tgamma, 0x1.fffffffffffffp0L, 9.9999999999999990612301934456883679778984e-01L),
- TEST_f_f (tgamma, 0x1.0000000000001p0L, 9.9999999999999987183237573039992418700531e-01L),
- TEST_f_f (tgamma, 0x0.fffffffffffff8p0L, 1.0000000000000000640838121348000744796665e+00L),
- TEST_f_f (tgamma, -0x0.fffffffffffff8p0L, -9.0071992547409924227843350984672961392521e+15L),
- TEST_f_f (tgamma, -0x1.0000000000001p0L, 4.5035996273704955772156649015331740980405e+15L),
- TEST_f_f (tgamma, -0x1.fffffffffffffp0L, 2.2517998136852484613921675492337776673289e+15L),
- TEST_f_f (tgamma, -0x2.0000000000002p0L, -1.1258999068426235386078324507668462444260e+15L),
- TEST_f_f (tgamma, -0x2.ffffffffffffep0L, -3.7529996894754154268627807196691509198813e+14L),
- TEST_f_f (tgamma, -0x3.0000000000002p0L, 3.7529996894754112398038859470009084971438e+14L),
- TEST_f_f (tgamma, -0x3.ffffffffffffep0L, 9.3824992236885396088236184658402406857503e+13L),
- TEST_f_f (tgamma, -0x4.0000000000004p0L, -4.6912496118442603911763815341745722862351e+13L),
- TEST_f_f (tgamma, -0x4.ffffffffffffcp0L, -9.3824992236885475509805702650262155809819e+12L),
- TEST_f_f (tgamma, -0x5.0000000000004p0L, 9.3824992236885191156860964016850034672946e+12L),
- TEST_f_f (tgamma, -0x5.ffffffffffffcp0L, 1.5637498706147581566449098589862357835505e+12L),
- TEST_f_f (tgamma, -0x6.0000000000004p0L, -1.5637498706147529544662012521330708016396e+12L),
- TEST_f_f (tgamma, -0x6.ffffffffffffcp0L, -2.2339283865925119357965832452642909859289e+11L),
- TEST_f_f (tgamma, -0x7.0000000000004p0L, 2.2339283865925039372192897706214475877342e+11L),
- TEST_f_f (tgamma, -0x7.ffffffffffffcp0L, 2.7924104832406402297655703264222230055898e+10L),
- TEST_f_f (tgamma, -0x8.0000000000008p0L, -1.3962052416203121511868106259843527348026e+10L),
- TEST_f_f (tgamma, -0x9.ffffffffffff8p0L, 1.5513391573559147700413058496716749249803e+08L),
- TEST_f_f (tgamma, -0xa.0000000000008p0L, -1.5513391573559018084419393002828541166901e+08L),
- TEST_f_f (tgamma, -0x13.ffffffffffffp0L, 1.1569515572952029402736625857313236848570e-04L),
- TEST_f_f (tgamma, -0x14.000000000001p0L, -1.1569515572951781096476686854873801225397e-04L),
- TEST_f_f (tgamma, -0x1d.ffffffffffffp0L, 1.0611571800204311628217068863959963842891e-18L),
- TEST_f_f (tgamma, -0x1e.000000000001p0L, -1.0611571800204053929094168642022073530425e-18L),
- TEST_f_f (tgamma, -0x27.fffffffffffep0L, 1.7249032006742266376460389310340465554361e-34L),
- TEST_f_f (tgamma, -0x28.000000000002p0L, -1.7249032006741359094184881234822934593822e-34L),
- TEST_f_f (tgamma, -0x28.fffffffffffep0L, -4.2070809772542120404320040128839297118648e-36L),
- TEST_f_f (tgamma, -0x29.000000000002p0L, 4.2070809772539892938717205103652583609422e-36L),
- TEST_f_f (tgamma, -0x29.fffffffffffep0L, 1.0016859469652887505173040814397197718981e-37L),
- TEST_f_f (tgamma, -0x2a.000000000002p0L, -1.0016859469652353766978684241048308120274e-37L),
- TEST_f_f (tgamma, -0x31.fffffffffffep0L, 4.6273774273632946947805289899230181990085e-51L),
- TEST_f_f (tgamma, -0x32.000000000002p0L, -4.6273774273630367887073532197576655720178e-51L),
- TEST_f_f (tgamma, -0x63.fffffffffffcp0L, 7.5400833348840965463348754984345825364294e-145L),
- TEST_f_f (tgamma, -0x64.000000000004p0L, -7.5400833348831085791638490135462230991587e-145L),
- TEST_f_f (tgamma, -0x95.fffffffffff8p0L, 6.1582369322723207086020016423767264008839e-250L),
- TEST_f_f (tgamma, -0x96.000000000008p0L, -6.1582369322705655439003240743176243138734e-250L),
- TEST_f_f (tgamma, -0xb4.fffffffffff8p0L, -9.6760879059917574597728750098636253931457e-319L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xb5.000000000008p0L, 9.6760879059888966544677044221698800670218e-319L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xb5.fffffffffff8p0L, 5.3165318164789884455066481673086605454904e-321L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xb6.000000000008p0L, -5.3165318164774149139661976747137185876909e-321L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xb6.fffffffffff8p0L, -2.9052086428846935908287469917922960610289e-323L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xb7.000000000008p0L, 2.9052086428838328351126988236541632950925e-323L, UNDERFLOW_EXCEPTION_DOUBLE),
-# if !defined TEST_LDOUBLE || LDBL_MAX_EXP <= 1024
- TEST_f_f (tgamma, -0xb7.fffffffffff8p0L, plus_zero, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xb8.000000000008p0L, minus_zero, UNDERFLOW_EXCEPTION_DOUBLE),
-# else
- TEST_f_f (tgamma, -0xb7.fffffffffff8p0L, 1.5789177406982032823826953250736039527543e-325L),
- TEST_f_f (tgamma, -0xb8.000000000008p0L, -1.5789177406977349925854817486109369828857e-325L),
-# endif
-#endif
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 106
- TEST_f_f (tgamma, 0x8.00000000000000000000000004p0L, 5.0400000000000000000000000000020034765587e+03L),
- TEST_f_f (tgamma, 0x7.fffffffffffffffffffffffffep0L, 5.0399999999999999999999999999989982617206e+03L),
- TEST_f_f (tgamma, 0x7.00000000000000000000000002p0L, 7.2000000000000000000000000000013296297113e+02L),
- TEST_f_f (tgamma, 0x6.fffffffffffffffffffffffffep0L, 7.1999999999999999999999999999986703702887e+02L),
- TEST_f_f (tgamma, 0x6.00000000000000000000000002p0L, 1.2000000000000000000000000000002018834292e+02L),
- TEST_f_f (tgamma, 0x5.fffffffffffffffffffffffffep0L, 1.1999999999999999999999999999997981165708e+02L),
- TEST_f_f (tgamma, 0x5.00000000000000000000000002p0L, 2.4000000000000000000000000000003564352042e+01L),
- TEST_f_f (tgamma, 0x4.fffffffffffffffffffffffffep0L, 2.3999999999999999999999999999996435647958e+01L),
- TEST_f_f (tgamma, 0x4.00000000000000000000000002p0L, 6.0000000000000000000000000000007431765907e+00L),
- TEST_f_f (tgamma, 0x3.ffffffffffffffffffffffffffp0L, 5.9999999999999999999999999999996284117046e+00L),
- TEST_f_f (tgamma, 0x3.00000000000000000000000001p0L, 2.0000000000000000000000000000000909935607e+00L),
- TEST_f_f (tgamma, 0x2.ffffffffffffffffffffffffffp0L, 1.9999999999999999999999999999999090064393e+00L),
- TEST_f_f (tgamma, 0x2.00000000000000000000000001p0L, 1.0000000000000000000000000000000208448771e+00L),
- TEST_f_f (tgamma, 0x1.ffffffffffffffffffffffffff8p0L, 9.9999999999999999999999999999998957756146e-01L),
- TEST_f_f (tgamma, 0x1.000000000000000000000000008p0L, 9.9999999999999999999999999999998577053525e-01L),
- TEST_f_f (tgamma, 0x0.ffffffffffffffffffffffffffcp0L, 1.0000000000000000000000000000000071147324e+00L),
- TEST_f_f (tgamma, -0x0.ffffffffffffffffffffffffffcp0L, -8.1129638414606681695789005144064422784335e+31L),
- TEST_f_f (tgamma, -0x1.000000000000000000000000008p0L, 4.0564819207303340847894502572031577215665e+31L),
- TEST_f_f (tgamma, -0x1.ffffffffffffffffffffffffff8p0L, 2.0282409603651670423947251286016461392168e+31L),
- TEST_f_f (tgamma, -0x2.00000000000000000000000001p0L, -1.0141204801825835211973625643007538607832e+31L),
- TEST_f_f (tgamma, -0x2.ffffffffffffffffffffffffffp0L, -3.3804016006086117373245418810028760196114e+30L),
- TEST_f_f (tgamma, -0x3.00000000000000000000000001p0L, 3.3804016006086117373245418810024573137219e+30L),
- TEST_f_f (tgamma, -0x3.ffffffffffffffffffffffffffp0L, 8.4510040015215293433113547025072942156952e+29L),
- TEST_f_f (tgamma, -0x4.00000000000000000000000002p0L, -4.2255020007607646716556773512527057843048e+29L),
- TEST_f_f (tgamma, -0x4.fffffffffffffffffffffffffep0L, -8.4510040015215293433113547025080884313904e+28L),
- TEST_f_f (tgamma, -0x5.00000000000000000000000002p0L, 8.4510040015215293433113547025052449019430e+28L),
- TEST_f_f (tgamma, -0x5.fffffffffffffffffffffffffep0L, 1.4085006669202548905518924504180378867132e+28L),
- TEST_f_f (tgamma, -0x6.00000000000000000000000002p0L, -1.4085006669202548905518924504175176688423e+28L),
- TEST_f_f (tgamma, -0x6.fffffffffffffffffffffffffep0L, -2.0121438098860784150741320720257967542615e+27L),
- TEST_f_f (tgamma, -0x7.00000000000000000000000002p0L, 2.0121438098860784150741320720249968965322e+27L),
- TEST_f_f (tgamma, -0x7.fffffffffffffffffffffffffep0L, 2.5151797623575980188426650900322769448110e+26L),
- TEST_f_f (tgamma, -0x8.00000000000000000000000004p0L, -1.2575898811787990094213325450153421028080e+26L),
- TEST_f_f (tgamma, -0x9.fffffffffffffffffffffffffcp0L, 1.3973220901986655660237028277960625420495e+24L),
- TEST_f_f (tgamma, -0xa.00000000000000000000000004p0L, -1.3973220901986655660237028277947663821128e+24L),
- TEST_f_f (tgamma, -0x13.fffffffffffffffffffffffff8p0L, 1.0420893204640670202556853709074896123293e+12L),
- TEST_f_f (tgamma, -0x14.00000000000000000000000008p0L, -1.0420893204640670202556853709050065497299e+12L),
- TEST_f_f (tgamma, -0x1d.fffffffffffffffffffffffff8p0L, 9.5580541610429641982963434151488827190079e-03L),
- TEST_f_f (tgamma, -0x1e.00000000000000000000000008p0L, -9.5580541610429641982963434151231128067179e-03L),
- TEST_f_f (tgamma, -0x27.fffffffffffffffffffffffffp0L, 1.5536546823612837336494536911280147806523e-18L),
- TEST_f_f (tgamma, -0x28.0000000000000000000000001p0L, -1.5536546823612837336494536911189419578973e-18L),
- TEST_f_f (tgamma, -0x28.fffffffffffffffffffffffffp0L, -3.7894016642958139845108626612879138384405e-20L),
- TEST_f_f (tgamma, -0x29.0000000000000000000000001p0L, 3.7894016642958139845108626612656391824122e-20L),
- TEST_f_f (tgamma, -0x29.fffffffffffffffffffffffffp0L, 9.0223849149900332964544349078285357440663e-22L),
- TEST_f_f (tgamma, -0x2a.0000000000000000000000001p0L, -9.0223849149900332964544349077751619246306e-22L),
- TEST_f_f (tgamma, -0x31.fffffffffffffffffffffffffp0L, 4.1679710515150795310771069868348482819424e-35L),
- TEST_f_f (tgamma, -0x32.0000000000000000000000001p0L, -4.1679710515150795310771069868090576746248e-35L),
- TEST_f_f (tgamma, -0x63.ffffffffffffffffffffffffep0L, 6.7915032994648558610510614163560656864280e-129L),
- TEST_f_f (tgamma, -0x64.0000000000000000000000002p0L, -6.7915032994648558610510614162572689693253e-129L),
- TEST_f_f (tgamma, -0x95.ffffffffffffffffffffffffcp0L, 5.5468467106873795353190582463444660395353e-234L),
- TEST_f_f (tgamma, -0x96.0000000000000000000000004p0L, -5.5468467106873795353190582461689495693675e-234L),
- TEST_f_f (tgamma, -0xb4.ffffffffffffffffffffffffcp0L, -8.7154451775644399729745472278589884205029e-303L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM),
- TEST_f_f (tgamma, -0xb5.0000000000000000000000004p0L, 8.7154451775644399729745472275729078899858e-303L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM),
- TEST_f_f (tgamma, -0xb5.ffffffffffffffffffffffffcp0L, 4.7887061415189230620739270482742524864974e-305L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM),
- TEST_f_f (tgamma, -0xb6.0000000000000000000000004p0L, -4.7887061415189230620739270481168993324524e-305L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM),
- TEST_f_f (tgamma, -0xb6.ffffffffffffffffffffffffcp0L, -2.6167793123054224382917634143575601407067e-307L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM),
- TEST_f_f (tgamma, -0xb7.0000000000000000000000004p0L, 2.6167793123054224382917634142714845691019e-307L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM),
- TEST_f_f (tgamma, -0xb7.ffffffffffffffffffffffffcp0L, 1.4221626697312078468976975078030462044826e-309L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xb8.0000000000000000000000004p0L, -1.4221626697312078468976975077562172247612e-309L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xbb.ffffffffffffffffffffffffcp0L, 1.1756150745511026776007338998283058108448e-318L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xbc.0000000000000000000000004p0L, -1.1756150745511026776007338997894360215107e-318L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xbc.ffffffffffffffffffffffffcp0L, -6.2201855796354639026493857133773832713743e-321L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xbd.0000000000000000000000004p0L, 6.2201855796354639026493857131715153125175e-321L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xbd.ffffffffffffffffffffffffcp0L, 3.2737818840186652119207293228302560914295e-323L, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xbe.0000000000000000000000004p0L, -3.2737818840186652119207293227217957948294e-323L, UNDERFLOW_EXCEPTION_DOUBLE),
-# if LDBL_MAX_EXP <= 1024
- TEST_f_f (tgamma, -0xbe.ffffffffffffffffffffffffcp0L, minus_zero, UNDERFLOW_EXCEPTION_DOUBLE),
- TEST_f_f (tgamma, -0xbf.0000000000000000000000004p0L, plus_zero, UNDERFLOW_EXCEPTION_DOUBLE),
-# else
- TEST_f_f (tgamma, -0xbe.ffffffffffffffffffffffffcp0L, -1.7140219288055838805867692789687487834686e-325L),
- TEST_f_f (tgamma, -0xbf.0000000000000000000000004p0L, 1.7140219288055838805867692789119066543632e-325L),
-# endif
-#endif
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (tgamma, 0x8.000000000000001p0L, 5.0400000000000000088113830892247051102283e+03L),
- TEST_f_f (tgamma, 0x7.fffffffffffffff8p0L, 5.0399999999999999955943084553876474508520e+03L),
- TEST_f_f (tgamma, 0x7.0000000000000008p0L, 7.2000000000000000058477733127664675369681e+02L),
- TEST_f_f (tgamma, 0x6.fffffffffffffff8p0L, 7.1999999999999999941522266872335324679893e+02L),
- TEST_f_f (tgamma, 0x6.0000000000000008p0L, 1.2000000000000000008878927116622375680433e+02L),
- TEST_f_f (tgamma, 0x5.fffffffffffffff8p0L, 1.1999999999999999991121072883377624326546e+02L),
- TEST_f_f (tgamma, 0x5.0000000000000008p0L, 2.4000000000000000015676186062072582846211e+01L),
- TEST_f_f (tgamma, 0x4.fffffffffffffff8p0L, 2.3999999999999999984323813937927417165027e+01L),
- TEST_f_f (tgamma, 0x4.0000000000000008p0L, 6.0000000000000000032685252120268430507939e+00L),
- TEST_f_f (tgamma, 0x3.fffffffffffffffcp0L, 5.9999999999999999983657373939865784753909e+00L),
- TEST_f_f (tgamma, 0x3.0000000000000004p0L, 2.0000000000000000004001939123397399171482e+00L),
- TEST_f_f (tgamma, 0x2.fffffffffffffffcp0L, 1.9999999999999999995998060876602600829690e+00L),
- TEST_f_f (tgamma, 0x2.0000000000000004p0L, 1.0000000000000000000916767389213195151634e+00L),
- TEST_f_f (tgamma, 0x1.fffffffffffffffep0L, 9.9999999999999999995416163053934024243282e-01L),
- TEST_f_f (tgamma, 0x1.0000000000000002p0L, 9.9999999999999999993741815221210931418291e-01L),
- TEST_f_f (tgamma, 0x0.ffffffffffffffffp0L, 1.0000000000000000000312909238939453429173e+00L),
- TEST_f_f (tgamma, -0x0.ffffffffffffffffp0L, -1.8446744073709551616422784335098467139470e+19L),
- TEST_f_f (tgamma, -0x1.0000000000000002p0L, 9.2233720368547758075772156649015328607596e+18L),
- TEST_f_f (tgamma, -0x1.fffffffffffffffep0L, 4.6116860184273879044613921675492335697983e+18L),
- TEST_f_f (tgamma, -0x2.0000000000000004p0L, -2.3058430092136939515386078324507664305064e+18L),
- TEST_f_f (tgamma, -0x2.fffffffffffffffcp0L, -7.6861433640456465087601961140530007887063e+17L),
- TEST_f_f (tgamma, -0x3.0000000000000004p0L, 7.6861433640456465045731372192803325462836e+17L),
- TEST_f_f (tgamma, -0x3.fffffffffffffffcp0L, 1.9215358410114116272942156951799168638773e+17L),
- TEST_f_f (tgamma, -0x4.0000000000000008p0L, -9.6076792050570581270578430482008313684602e+16L),
- TEST_f_f (tgamma, -0x4.fffffffffffffff8p0L, -1.9215358410114116280884313903598337283601e+16L),
- TEST_f_f (tgamma, -0x5.0000000000000008p0L, 1.9215358410114116252449019429734996071487e+16L),
- TEST_f_f (tgamma, -0x5.fffffffffffffff8p0L, 3.2025597350190193803788671320812043622696e+15L),
- TEST_f_f (tgamma, -0x6.0000000000000008p0L, -3.2025597350190193751766884234743511972877e+15L),
- TEST_f_f (tgamma, -0x6.fffffffffffffff8p0L, -4.5750853357414562579675426149912896787735e+14L),
- TEST_f_f (tgamma, -0x7.0000000000000008p0L, 4.5750853357414562499689653215166468353753e+14L),
- TEST_f_f (tgamma, -0x7.fffffffffffffff8p0L, 5.7188566696768203227694481100089533685959e+13L),
- TEST_f_f (tgamma, -0x8.000000000000001p0L, -2.8594283348384101534210280804672371201060e+13L),
- TEST_f_f (tgamma, -0x9.fffffffffffffffp0L, 3.1771425942649001828476427167843945971988e+11L),
- TEST_f_f (tgamma, -0xa.000000000000001p0L, -3.1771425942649001698860433502350057763905e+11L),
- TEST_f_f (tgamma, -0x13.ffffffffffffffep0L, 2.3694367893405502075347562184931828448654e-01L),
- TEST_f_f (tgamma, -0x14.000000000000002p0L, -2.3694367893405501827041302245929389013031e-01L),
- TEST_f_f (tgamma, -0x1d.ffffffffffffffep0L, 2.1732499046818166459536268654187775086902e-15L),
- TEST_f_f (tgamma, -0x1e.000000000000002p0L, -2.1732499046818166201837145753965837196590e-15L),
- TEST_f_f (tgamma, -0x27.ffffffffffffffcp0L, 3.5326017549807232935581894777156474496719e-31L),
- TEST_f_f (tgamma, -0x28.000000000000004p0L, -3.5326017549807232028299619269080956965758e-31L),
- TEST_f_f (tgamma, -0x28.ffffffffffffffcp0L, -8.6161018414163982777002940498289948893044e-33L),
- TEST_f_f (tgamma, -0x29.000000000000004p0L, 8.6161018414163980549537337663264762179535e-33L),
- TEST_f_f (tgamma, -0x29.ffffffffffffffcp0L, 2.0514528193848567329552463626090806737389e-34L),
- TEST_f_f (tgamma, -0x2a.000000000000004p0L, -2.0514528193848566795814269269517457847791e-34L),
- TEST_f_f (tgamma, -0x31.ffffffffffffffcp0L, 9.4768689712397635680446279661359728835046e-48L),
- TEST_f_f (tgamma, -0x32.000000000000004p0L, -9.4768689712397633101385547903658075308777e-48L),
- TEST_f_f (tgamma, -0x63.ffffffffffffff8p0L, 1.5442090669841618542494279375256856430049e-141L),
- TEST_f_f (tgamma, -0x64.000000000000008p0L, -1.5442090669841617554527108348771968070612e-141L),
- TEST_f_f (tgamma, -0x95.ffffffffffffffp0L, 1.2612069237291916400144732227892704713839e-246L),
- TEST_f_f (tgamma, -0x96.00000000000001p0L, -1.2612069237291914644980030550324645611752e-246L),
- TEST_f_f (tgamma, -0xb4.ffffffffffffffp0L, -1.9816628031468191243385005680879281767694e-315L),
- TEST_f_f (tgamma, -0xb5.00000000000001p0L, 1.9816628031468188382579700510291588022368e-315L),
- TEST_f_f (tgamma, -0xb5.ffffffffffffffp0L, 1.0888257160147357826865964233809723297472e-317L),
- TEST_f_f (tgamma, -0xb6.00000000000001p0L, -1.0888257160147356253334423783317128355514e-317L),
- TEST_f_f (tgamma, -0xb6.ffffffffffffffp0L, -5.9498673006269714905418984659220067091260e-320L),
- TEST_f_f (tgamma, -0xb7.00000000000001p0L, 5.9498673006269706297861824177538685763601e-320L),
- TEST_f_f (tgamma, -0xb7.ffffffffffffffp0L, 3.2336235329494410277123118903958061569834e-322L),
- TEST_f_f (tgamma, -0xb8.00000000000001p0L, -3.2336235329494405594225146768193434900135e-322L),
- TEST_f_f (tgamma, -0xbb.ffffffffffffffp0L, 2.6730392040715350119087465463119939092815e-331L),
- TEST_f_f (tgamma, -0xbc.00000000000001p0L, -2.6730392040715346232108532050343031951651e-331L),
- TEST_f_f (tgamma, -0xbc.ffffffffffffffp0L, -1.4143064571807063556111222197839950086445e-333L),
- TEST_f_f (tgamma, -0xbd.00000000000001p0L, 1.4143064571807061497431633629389135273431e-333L),
- TEST_f_f (tgamma, -0xbd.ffffffffffffffp0L, 7.4437181956879281879706555863416819210399e-336L),
- TEST_f_f (tgamma, -0xbe.00000000000001p0L, -7.4437181956879271033676895858841525581153e-336L),
- TEST_f_f (tgamma, -0xbe.ffffffffffffffp0L, -3.8972346574282346536709453101948570578636e-338L),
- TEST_f_f (tgamma, -0xbf.00000000000001p0L, 3.8972346574282340852496542564155275274974e-338L),
- TEST_f_f (tgamma, -0xf9.ffffffffffffffp0L, 2.2289142548411573883553287678043297937797e-476L),
- TEST_f_f (tgamma, -0xfa.00000000000001p0L, -2.2289142548411570466476165308364665814265e-476L),
- TEST_f_f (tgamma, -0x1f3.fffffffffffffep0L, 2.9528489142763141594943668922610562530068e-1118L),
- TEST_f_f (tgamma, -0x1f4.00000000000002p0L, -2.9528489142763131406565394149878256133744e-1118L),
- TEST_f_f (tgamma, -0x2ed.fffffffffffffcp0L, 6.9801511765871818502006905472380418430269e-1817L),
- TEST_f_f (tgamma, -0x2ee.00000000000004p0L, -6.9801511765871767194421856376592926002995e-1817L),
- TEST_f_f (tgamma, -0x3e7.fffffffffffffcp0L, 4.4768809295877296071892611539415773519036e-2552L),
- TEST_f_f (tgamma, -0x3e8.00000000000004p0L, -4.4768809295877261735541135972060089530309e-2552L),
- TEST_f_f (tgamma, -0x4e1.fffffffffffff8p0L, 5.4651488569236507565341414077911790252381e-3315L),
- TEST_f_f (tgamma, -0x4e2.00000000000008p0L, -5.4651488569236421026544487194247355967789e-3315L),
- TEST_f_f (tgamma, -0x5db.fffffffffffff8p0L, 1.8718211510339187689122114747834510481993e-4099L),
- TEST_f_f (tgamma, -0x5dc.00000000000008p0L, -1.8718211510339157291960718369454861898499e-4099L),
- TEST_f_f (tgamma, -0x6d5.fffffffffffff8p0L, 4.2925786447266492555651378780094011518063e-4902L),
- TEST_f_f (tgamma, -0x6d6.00000000000008p0L, -4.2925786447266421378134368786479937285900e-4902L),
- TEST_f_f (tgamma, -0x6e2.fffffffffffff8p0L, -2.8229173528168668283609231628661510187536e-4944L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e3.00000000000008p0L, 2.8229173528168621428945467532322397890424e-4944L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e3.fffffffffffff8p0L, 1.6002932839097884515524894602387278842659e-4947L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e4.00000000000008p0L, -1.6002932839097857951909742110188634438017e-4947L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e4.fffffffffffff8p0L, -9.0668174725767051085164382743343408095146e-4951L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e5.00000000000008p0L, 9.0668174725766900571689083050287838090189e-4951L, UNDERFLOW_EXCEPTION),
-# if LDBL_MANT_DIG <= 64
- TEST_f_f (tgamma, -0x6e5.fffffffffffff8p0L, plus_zero, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e6.00000000000008p0L, minus_zero, UNDERFLOW_EXCEPTION),
-# else
- TEST_f_f (tgamma, -0x6e5.fffffffffffff8p0L, 5.1340982290921319983501912122292601780326e-4954L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e6.00000000000008p0L, -5.1340982290921234748578193083614111497314e-4954L, UNDERFLOW_EXCEPTION),
-# endif
-# if LDBL_MANT_DIG >= 113
- TEST_f_f (tgamma, 0x8.0000000000000000000000000008p0L, 5.0400000000000000000000000000000156521606e+03L),
- TEST_f_f (tgamma, 0x7.fffffffffffffffffffffffffffcp0L, 5.0399999999999999999999999999999921739197e+03L),
- TEST_f_f (tgamma, 0x7.0000000000000000000000000004p0L, 7.2000000000000000000000000000000103877321e+02L),
- TEST_f_f (tgamma, 0x6.fffffffffffffffffffffffffffcp0L, 7.1999999999999999999999999999999896122679e+02L),
- TEST_f_f (tgamma, 0x6.0000000000000000000000000004p0L, 1.2000000000000000000000000000000015772143e+02L),
- TEST_f_f (tgamma, 0x5.fffffffffffffffffffffffffffcp0L, 1.1999999999999999999999999999999984227857e+02L),
- TEST_f_f (tgamma, 0x5.0000000000000000000000000004p0L, 2.4000000000000000000000000000000027846500e+01L),
- TEST_f_f (tgamma, 0x4.fffffffffffffffffffffffffffcp0L, 2.3999999999999999999999999999999972153500e+01L),
- TEST_f_f (tgamma, 0x4.0000000000000000000000000004p0L, 6.0000000000000000000000000000000058060671e+00L),
- TEST_f_f (tgamma, 0x3.fffffffffffffffffffffffffffep0L, 5.9999999999999999999999999999999970969664e+00L),
- TEST_f_f (tgamma, 0x3.0000000000000000000000000002p0L, 2.0000000000000000000000000000000007108872e+00L),
- TEST_f_f (tgamma, 0x2.fffffffffffffffffffffffffffep0L, 1.9999999999999999999999999999999992891128e+00L),
- TEST_f_f (tgamma, 0x2.0000000000000000000000000002p0L, 1.0000000000000000000000000000000001628506e+00L),
- TEST_f_f (tgamma, 0x1.ffffffffffffffffffffffffffffp0L, 9.9999999999999999999999999999999991857470e-01L),
- TEST_f_f (tgamma, 0x1.0000000000000000000000000001p0L, 9.9999999999999999999999999999999988883231e-01L),
- TEST_f_f (tgamma, 0x0.ffffffffffffffffffffffffffff8p0L, 1.0000000000000000000000000000000000555838e+00L),
- TEST_f_f (tgamma, -0x0.ffffffffffffffffffffffffffff8p0L, -1.0384593717069655257060992658440192422784e+34L),
- TEST_f_f (tgamma, -0x1.0000000000000000000000000001p0L, 5.1922968585348276285304963292200955772157e+33L),
- TEST_f_f (tgamma, -0x1.ffffffffffffffffffffffffffffp0L, 2.5961484292674138142652481646100484613922e+33L),
- TEST_f_f (tgamma, -0x2.0000000000000000000000000002p0L, -1.2980742146337069071326240823050235386078e+33L),
- TEST_f_f (tgamma, -0x2.fffffffffffffffffffffffffffep0L, -4.3269140487790230237754136076834154268628e+32L),
- TEST_f_f (tgamma, -0x3.0000000000000000000000000002p0L, 4.3269140487790230237754136076834112398039e+32L),
- TEST_f_f (tgamma, -0x3.fffffffffffffffffffffffffffep0L, 1.0817285121947557559438534019208539608824e+32L),
- TEST_f_f (tgamma, -0x4.0000000000000000000000000004p0L, -5.4086425609737787797192670096042603911764e+31L),
- TEST_f_f (tgamma, -0x4.fffffffffffffffffffffffffffcp0L, -1.0817285121947557559438534019208547550981e+31L),
- TEST_f_f (tgamma, -0x5.0000000000000000000000000004p0L, 1.0817285121947557559438534019208519115686e+31L),
- TEST_f_f (tgamma, -0x5.fffffffffffffffffffffffffffcp0L, 1.8028808536579262599064223365347581566449e+30L),
- TEST_f_f (tgamma, -0x6.0000000000000000000000000004p0L, -1.8028808536579262599064223365347529544662e+30L),
- TEST_f_f (tgamma, -0x6.fffffffffffffffffffffffffffcp0L, -2.5755440766541803712948890521925119357966e+29L),
- TEST_f_f (tgamma, -0x7.0000000000000000000000000004p0L, 2.5755440766541803712948890521925039372193e+29L),
- TEST_f_f (tgamma, -0x7.fffffffffffffffffffffffffffcp0L, 3.2194300958177254641186113152406402297656e+28L),
- TEST_f_f (tgamma, -0x8.0000000000000000000000000008p0L, -1.6097150479088627320593056576203121511868e+28L),
- TEST_f_f (tgamma, -0x9.fffffffffffffffffffffffffff8p0L, 1.7885722754542919245103396195781369922635e+26L),
- TEST_f_f (tgamma, -0xa.0000000000000000000000000008p0L, -1.7885722754542919245103396195781240306642e+26L),
- TEST_f_f (tgamma, -0x13.fffffffffffffffffffffffffffp0L, 1.3338743301940057859272772747600099590309e+14L),
- TEST_f_f (tgamma, -0x14.000000000000000000000000001p0L, -1.3338743301940057859272772747599851284049e+14L),
- TEST_f_f (tgamma, -0x1d.fffffffffffffffffffffffffffp0L, 1.2234309326134994173819319571374205986026e+00L),
- TEST_f_f (tgamma, -0x1e.000000000000000000000000001p0L, -1.2234309326134994173819319571373948286903e+00L),
- TEST_f_f (tgamma, -0x27.ffffffffffffffffffffffffffep0L, 1.9886779934224431790713007246380976767855e-16L),
- TEST_f_f (tgamma, -0x28.000000000000000000000000002p0L, -1.9886779934224431790713007246380069485580e-16L),
- TEST_f_f (tgamma, -0x28.ffffffffffffffffffffffffffep0L, -4.8504341302986419001739042064343853066259e-18L),
- TEST_f_f (tgamma, -0x29.000000000000000000000000002p0L, 4.8504341302986419001739042064341625600656e-18L),
- TEST_f_f (tgamma, -0x29.ffffffffffffffffffffffffffep0L, 1.1548652691187242619461676681986633377063e-19L),
- TEST_f_f (tgamma, -0x2a.000000000000000000000000002p0L, -1.1548652691187242619461676681986099638869e-19L),
- TEST_f_f (tgamma, -0x31.ffffffffffffffffffffffffffep0L, 5.3350029459393017997786969431322287652396e-33L),
- TEST_f_f (tgamma, -0x32.000000000000000000000000002p0L, -5.3350029459393017997786969431319708591664e-33L),
- TEST_f_f (tgamma, -0x63.ffffffffffffffffffffffffffcp0L, 8.6931242233150155021453586128730281632676e-127L),
- TEST_f_f (tgamma, -0x64.000000000000000000000000004p0L, -8.6931242233150155021453586128720401960966e-127L),
- TEST_f_f (tgamma, -0x95.ffffffffffffffffffffffffff8p0L, 7.0999637896798458052083945552094635720486e-232L),
- TEST_f_f (tgamma, -0x96.000000000000000000000000008p0L, -7.0999637896798458052083945552077084073470e-232L),
- TEST_f_f (tgamma, -0xb4.ffffffffffffffffffffffffff8p0L, -1.1155769827282483165407420451477844041365e-300L),
- TEST_f_f (tgamma, -0xb5.000000000000000000000000008p0L, 1.1155769827282483165407420451474983236060e-300L),
- TEST_f_f (tgamma, -0xb5.ffffffffffffffffffffffffff8p0L, 6.1295438611442215194546266216911239298981e-303L),
- TEST_f_f (tgamma, -0xb6.000000000000000000000000008p0L, -6.1295438611442215194546266216895503983577e-303L),
- TEST_f_f (tgamma, -0xb6.ffffffffffffffffffffffffff8p0L, -3.3494775197509407210134571703230189921356e-305L),
- TEST_f_f (tgamma, -0xb7.000000000000000000000000008p0L, 3.3494775197509407210134571703221582364195e-305L),
- TEST_f_f (tgamma, -0xb7.ffffffffffffffffffffffffff8p0L, 1.8203682172559460440290528099581627396147e-307L),
- TEST_f_f (tgamma, -0xb8.000000000000000000000000008p0L, -1.8203682172559460440290528099576944498174e-307L),
- TEST_f_f (tgamma, -0xbb.ffffffffffffffffffffffffff8p0L, 1.5047872954254114273289393917555491216542e-316L),
- TEST_f_f (tgamma, -0xbc.000000000000000000000000008p0L, -1.5047872954254114273289393917551604237609e-316L),
- TEST_f_f (tgamma, -0xbc.ffffffffffffffffffffffffff8p0L, -7.9618375419333937953912137129923244334851e-319L),
- TEST_f_f (tgamma, -0xbd.000000000000000000000000008p0L, 7.9618375419333937953912137129902657538965e-319L),
- TEST_f_f (tgamma, -0xbd.ffffffffffffffffffffffffff8p0L, 4.1904408115438914712585335331538555086887e-321L),
- TEST_f_f (tgamma, -0xbe.000000000000000000000000008p0L, -4.1904408115438914712585335331527709057227e-321L),
- TEST_f_f (tgamma, -0xbe.ffffffffffffffffffffffffff8p0L, -2.1939480688711473671510646770439036908579e-323L),
- TEST_f_f (tgamma, -0xbf.000000000000000000000000008p0L, 2.1939480688711473671510646770433352695669e-323L),
- TEST_f_f (tgamma, -0xf9.ffffffffffffffffffffffffff8p0L, 1.2547671759429278005937024349858508569625e-461L),
- TEST_f_f (tgamma, -0xfa.000000000000000000000000008p0L, -1.2547671759429278005937024349855091492502e-461L),
- TEST_f_f (tgamma, -0x1f3.ffffffffffffffffffffffffffp0L, 1.6623061587520224800948170558276526986560e-1103L),
- TEST_f_f (tgamma, -0x1f4.00000000000000000000000001p0L, -1.6623061587520224800948170558266338608285e-1103L),
- TEST_f_f (tgamma, -0x2ed.fffffffffffffffffffffffffep0L, 3.9294757797334687313030998663853566763041e-1802L),
- TEST_f_f (tgamma, -0x2ee.00000000000000000000000002p0L, -3.9294757797334687313030998663802259177992e-1802L),
- TEST_f_f (tgamma, -0x3e7.fffffffffffffffffffffffffep0L, 2.5202599107841713834679953735597552855978e-2537L),
- TEST_f_f (tgamma, -0x3e8.00000000000000000000000002p0L, -2.5202599107841713834679953735563216504503e-2537L),
- TEST_f_f (tgamma, -0x4e1.fffffffffffffffffffffffffcp0L, 3.0766052944457032773369415396747635242705e-3300L),
- TEST_f_f (tgamma, -0x4e2.00000000000000000000000004p0L, -3.0766052944457032773369415396661096445778e-3300L),
- TEST_f_f (tgamma, -0x5db.fffffffffffffffffffffffffcp0L, 1.0537416297875703295453200836588944487917e-4084L),
- TEST_f_f (tgamma, -0x5dc.00000000000000000000000004p0L, -1.0537416297875703295453200836558547326520e-4084L),
- TEST_f_f (tgamma, -0x6d5.fffffffffffffffffffffffffcp0L, 2.4165069481061837867659591369998698607387e-4887L),
- TEST_f_f (tgamma, -0x6d6.00000000000000000000000004p0L, -2.4165069481061837867659591369927521090377e-4887L),
- TEST_f_f (tgamma, -0x6e2.fffffffffffffffffffffffffcp0L, -1.5891611922804672355414813803008070609431e-4929L),
- TEST_f_f (tgamma, -0x6e3.00000000000000000000000004p0L, 1.5891611922804672355414813802961215945667e-4929L),
- TEST_f_f (tgamma, -0x6e3.fffffffffffffffffffffffffcp0L, 9.0088502963745308137272187091882496519917e-4933L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e4.00000000000000000000000004p0L, -9.0088502963745308137272187091616860368392e-4933L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e4.fffffffffffffffffffffffffcp0L, -5.1041644738665896961627301468488672286746e-4936L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e5.00000000000000000000000004p0L, 5.1041644738665896961627301468338158811446e-4936L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e5.fffffffffffffffffffffffffcp0L, 2.8902403589278537350864836618623260468143e-4939L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6e6.00000000000000000000000004p0L, -2.8902403589278537350864836618538025544424e-4939L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6eb.fffffffffffffffffffffffffcp0L, 9.4152481960798287090819640211017219042636e-4959L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6ec.00000000000000000000000004p0L, -9.4152481960798287090819640210739431797168e-4959L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6ec.fffffffffffffffffffffffffcp0L, -5.3103486723518492437010513373388172315540e-4962L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6ed.00000000000000000000000004p0L, 5.3103486723518492437010513373231484108489e-4962L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6ed.fffffffffffffffffffffffffcp0L, 2.9934321715624854812294539669328172615019e-4965L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6ee.00000000000000000000000004p0L, -2.9934321715624854812294539669239841152754e-4965L, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6ee.fffffffffffffffffffffffffcp0L, minus_zero, UNDERFLOW_EXCEPTION),
- TEST_f_f (tgamma, -0x6ef.00000000000000000000000004p0L, plus_zero, UNDERFLOW_EXCEPTION),
-# endif
-#endif
- TEST_f_f (tgamma, -0x1.0a32a2p+5L, 1.8125267978155035272941154746083439329912e-37L),
-#ifndef TEST_FLOAT
- TEST_f_f (tgamma, -0x1.5800000080001p+7L, -3.1439271448823567326093363350637118195240e-304L, UNDERFLOW_EXCEPTION_LDOUBLE_IBM),
-#endif
- TEST_f_f (tgamma, 18.5L, 1.4986120533153361177371791123515513270334e+15L),
- TEST_f_f (tgamma, 19.5L, 2.7724322986333718178137813578503699550119e+16L),
- TEST_f_f (tgamma, 23.5L, 5.3613035875444147334274983856108155717836e+21L),
- TEST_f_f (tgamma, 29.5L, 1.6348125198274266444378807806868221866931e+30L),
- TEST_f_f (tgamma, 30.5L, 4.8226969334909086010917483030261254507447e+31L),
- TEST_f_f (tgamma, 31.5L, 1.4709225647147271233329832324229682624771e+33L),
- TEST_f_f (tgamma, 32.5L, 4.6334060788513904384988971821323500268029e+34L),
- TEST_f_f (tgamma, 33.5L, 1.5058569756267018925121415841930137587110e+36L),
- TEST_f_f (tgamma, 34.5L, 5.0446208683494513399156743070465960916817e+37L),
- TEST_f_f (tgamma, 0x2.30a43cp+4L, 3.4027979115654976101247558405326779640190e+38L),
-#ifdef TEST_FLOAT
- TEST_f_f (tgamma, 0x2.30a44p+4L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-#else
- TEST_f_f (tgamma, 0x2.30a44p+4L, 3.4028438913396451054667218138127983367181e+38L),
-#endif
-#ifndef TEST_FLOAT
- TEST_f_f (tgamma, 0xa.b9fd72b0fb238p+4L, 1.7976931348622298700886249281842651388250e+308L),
-# if !defined TEST_LDOUBLE || LDBL_MAX_EXP <= 1024
- TEST_f_f (tgamma, 0xa.b9fd72b0fb24p+4L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# else
- TEST_f_f (tgamma, 0xa.b9fd72b0fb24p+4L, 1.7976931348624926129589466917917870782484e+308L),
-# endif
-#endif
-#if defined TEST_LDOUBLE && LDBL_MANT_DIG >= 106
- TEST_f_f (tgamma, 0xa.b9fd72b0fb23a9ddbf0d3804f4p+4L, 1.7976931348623158079372897140307719334857e+308L),
-# if LDBL_MAX_EXP <= 1024
- TEST_f_f (tgamma, 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# else
- TEST_f_f (tgamma, 0xa.b9fd72b0fb23a9ddbf0d3804f8p+4L, 1.7976931348623158079372897140599422519044e+308L),
-# endif
-#endif
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (tgamma, 0x6.db8c603359a97108p+8L, 1.1897314953572317517071551278058233700012e+4932L),
- TEST_f_f (tgamma, 0x6.db8c603359a9711p+8L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# if LDBL_MANT_DIG >= 113
- TEST_f_f (tgamma, 0x6.db8c603359a971081bc4a2e9dfdp+8L, 1.1897314953572317650857593266265995494998e+4932L),
- TEST_f_f (tgamma, 0x6.db8c603359a971081bc4a2e9dfd4p+8L, plus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
-# endif
-#endif
+ TEST_f_f (tgamma, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+
+ AUTO_TESTS_f_f (tgamma, tonearest),
};
static void
@@ -14377,43 +12886,15 @@ trunc_test (void)
static const struct test_f_f_data y0_test_data[] =
{
/* y0 is the Bessel function of the second kind of order 0 */
- TEST_f_f (y0, -1.0, minus_infty, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (y0, -max_value, minus_infty, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (y0, 0.0, minus_infty),
- TEST_f_f (y0, qnan_value, qnan_value),
+ TEST_f_f (y0, -1.0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (y0, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (y0, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (y0, 0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_f_f (y0, -0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_f_f (y0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_f_f (y0, plus_infty, 0),
- TEST_f_f (y0, 0.125L, -1.38968062514384052915582277745018693L),
- TEST_f_f (y0, 0.75L, -0.137172769385772397522814379396581855L),
- TEST_f_f (y0, 1.0, 0.0882569642156769579829267660235151628L),
- TEST_f_f (y0, 1.5, 0.382448923797758843955068554978089862L),
- TEST_f_f (y0, 2.0, 0.510375672649745119596606592727157873L),
- TEST_f_f (y0, 8.0, 0.223521489387566220527323400498620359L),
- TEST_f_f (y0, 10.0, 0.0556711672835993914244598774101900481L),
-
- TEST_f_f (y0, 0x1.3ffp+74L, 1.818984347516051243459467456433028748678e-12L),
-
-#ifndef TEST_FLOAT
- TEST_f_f (y0, 0x1.ff00000000002p+840L, 1.846591691699331493194965158699937660696e-127L),
- TEST_f_f (y0, 0x1p1023L, 8.2687542933709649327986678723012001545638e-155L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (y0, 0x1p16382L, 8.0839224448726336195866026476176740513439e-2467L),
- TEST_f_f (y0, 0x1p16383L, -3.8895531955766020648617743624167352352217e-2467L),
-#endif
-
- TEST_f_f (y0, 0x1p-10L, -4.4865150767109739412411806297168793661098L),
- TEST_f_f (y0, 0x1p-20L, -8.8992283012125827603076426611387876938160L),
- TEST_f_f (y0, 0x1p-30L, -1.3311940304267782826037118027401817264906e+1L),
- TEST_f_f (y0, 0x1p-40L, -1.7724652307320814696990854700366226762563e+1L),
- TEST_f_f (y0, 0x1p-50L, -2.2137364310373846564919987139743760738155e+1L),
- TEST_f_f (y0, 0x1p-60L, -2.6550076313426878432849115782108205929120e+1L),
- TEST_f_f (y0, 0x1p-70L, -3.0962788316479910300778244424468159753887e+1L),
- TEST_f_f (y0, 0x1p-80L, -3.5375500319532942168707373066828113573541e+1L),
- TEST_f_f (y0, 0x1p-90L, -3.9788212322585974036636501709188067393195e+1L),
- TEST_f_f (y0, 0x1p-100L, -4.420092432563900590456563035154802121284e+1L),
- TEST_f_f (y0, 0x1p-110L, -4.861363632869203777249475899390797503250e+1L),
+ AUTO_TESTS_f_f (y0, tonearest),
};
static void
@@ -14428,43 +12909,15 @@ y0_test (void)
static const struct test_f_f_data y1_test_data[] =
{
/* y1 is the Bessel function of the second kind of order 1 */
- TEST_f_f (y1, -1.0, minus_infty, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (y1, -max_value, minus_infty, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_f_f (y1, 0.0, minus_infty),
+ TEST_f_f (y1, -1.0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (y1, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (y1, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_f_f (y1, 0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_f_f (y1, -0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
TEST_f_f (y1, plus_infty, 0),
- TEST_f_f (y1, qnan_value, qnan_value),
-
- TEST_f_f (y1, 0.125L, -5.19993611253477499595928744876579921L),
- TEST_f_f (y1, 0.75L, -1.03759455076928541973767132140642198L),
- TEST_f_f (y1, 1.0, -0.781212821300288716547150000047964821L),
- TEST_f_f (y1, 1.5, -0.412308626973911295952829820633445323L),
- TEST_f_f (y1, 2.0, -0.107032431540937546888370772277476637L),
- TEST_f_f (y1, 8.0, -0.158060461731247494255555266187483550L),
- TEST_f_f (y1, 10.0, 0.249015424206953883923283474663222803L),
-
- TEST_f_f (y1, 0x1.27e204p+99L, -8.881610148467797208469612080785210013461e-16L),
-
-#ifndef TEST_FLOAT
- TEST_f_f (y1, 0x1.001000001p+593L, 3.927269966354206207832593635798954916263e-90L),
- TEST_f_f (y1, 0x1p1023L, 1.5665258060609012834424478437196679802783e-155L),
-#endif
-
-#if defined TEST_LDOUBLE && LDBL_MAX_EXP >= 16384
- TEST_f_f (y1, 0x1p16382L, 1.2193782500509000574176799046642541129387e-2466L),
- TEST_f_f (y1, 0x1p16383L, -9.5859502826270374691362975419147645151233e-2467L),
-#endif
+ TEST_f_f (y1, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- TEST_f_f (y1, 0x1p-10L, -6.5190099301063115047395187618929589514382e+02L),
- TEST_f_f (y1, 0x1p-20L, -6.6754421443450423911167962313100637952285e+05L),
- TEST_f_f (y1, 0x1p-30L, -6.8356527557643159612937462812258975438856e+08L),
- TEST_f_f (y1, 0x1p-40L, -6.9997084219026594793707805777425993547887e+11L),
- TEST_f_f (y1, 0x1p-50L, -7.1677014240283233068755952926181262431559e+14L),
- TEST_f_f (y1, 0x1p-60L, -7.3397262582050030662406095795388448059822e+17L),
- TEST_f_f (y1, 0x1p-70L, -7.5158796884019231398303842094477769620063e+20L),
- TEST_f_f (y1, 0x1p-80L, -7.6962608009235692951863134304745236090943e+23L),
- TEST_f_f (y1, 0x1p-90L, -7.8809710601457349582707849528059121757126e+26L),
- TEST_f_f (y1, 0x1p-100L, -8.0701143655892325972692837916732540679297e+29L),
- TEST_f_f (y1, 0x1p-110L, -8.2637971103633741796037466026734121655600e+32L),
+ AUTO_TESTS_f_f (y1, tonearest),
};
static void
@@ -14480,57 +12933,64 @@ static const struct test_if_f_data yn_test_data[] =
{
/* yn is the Bessel function of the second kind of order n */
/* yn (0, x) == y0 (x) */
- TEST_if_f (yn, 0, -1.0, minus_infty, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_if_f (yn, 0, -max_value, minus_infty, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_if_f (yn, 0, 0.0, minus_infty),
- TEST_if_f (yn, 0, qnan_value, qnan_value),
+ TEST_if_f (yn, 0, -1.0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 0, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 0, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 0, 0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_if_f (yn, 0, -0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_if_f (yn, 0, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
TEST_if_f (yn, 0, plus_infty, 0),
- TEST_if_f (yn, 0, 0.125L, -1.38968062514384052915582277745018693L),
- TEST_if_f (yn, 0, 0.75L, -0.137172769385772397522814379396581855L),
- TEST_if_f (yn, 0, 1.0, 0.0882569642156769579829267660235151628L),
- TEST_if_f (yn, 0, 1.5, 0.382448923797758843955068554978089862L),
- TEST_if_f (yn, 0, 2.0, 0.510375672649745119596606592727157873L),
- TEST_if_f (yn, 0, 8.0, 0.223521489387566220527323400498620359L),
- TEST_if_f (yn, 0, 10.0, 0.0556711672835993914244598774101900481L),
-
/* yn (1, x) == y1 (x) */
- TEST_if_f (yn, 1, -1.0, minus_infty, INVALID_EXCEPTION|ERRNO_EDOM),
- TEST_if_f (yn, 1, 0.0, minus_infty),
+ TEST_if_f (yn, 1, -1.0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 1, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 1, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 1, 0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_if_f (yn, 1, -0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
TEST_if_f (yn, 1, plus_infty, 0),
- TEST_if_f (yn, 1, qnan_value, qnan_value),
-
- TEST_if_f (yn, 1, 0.125L, -5.19993611253477499595928744876579921L),
- TEST_if_f (yn, 1, 0.75L, -1.03759455076928541973767132140642198L),
- TEST_if_f (yn, 1, 1.0, -0.781212821300288716547150000047964821L),
- TEST_if_f (yn, 1, 1.5, -0.412308626973911295952829820633445323L),
- TEST_if_f (yn, 1, 2.0, -0.107032431540937546888370772277476637L),
- TEST_if_f (yn, 1, 8.0, -0.158060461731247494255555266187483550L),
- TEST_if_f (yn, 1, 10.0, 0.249015424206953883923283474663222803L),
+ TEST_if_f (yn, 1, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+
+ /* yn (-1, x) == -y1 (x). */
+ TEST_if_f (yn, -1, -1.0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, -1, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, -1, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, -1, 0.0, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_if_f (yn, -1, -0.0, plus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_if_f (yn, -1, plus_infty, minus_zero),
+ TEST_if_f (yn, -1, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+
+ /* yn (2, x). */
+ TEST_if_f (yn, 2, -1.0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 2, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 2, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 2, 0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_if_f (yn, 2, -0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_if_f (yn, 2, plus_infty, 0),
+ TEST_if_f (yn, 2, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
+
+ /* yn (-2, x) == yn (2, x). */
+ TEST_if_f (yn, -2, -1.0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, -2, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, -2, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, -2, 0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_if_f (yn, -2, -0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_if_f (yn, -2, plus_infty, 0),
+ TEST_if_f (yn, -2, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
/* yn (3, x) */
+ TEST_if_f (yn, 3, -1.0, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 3, -max_value, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 3, minus_infty, qnan_value, INVALID_EXCEPTION|ERRNO_EDOM),
+ TEST_if_f (yn, 3, 0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
+ TEST_if_f (yn, 3, -0.0, minus_infty, DIVIDE_BY_ZERO_EXCEPTION|ERRNO_ERANGE),
TEST_if_f (yn, 3, plus_infty, 0),
- TEST_if_f (yn, 3, qnan_value, qnan_value),
-
- TEST_if_f (yn, 3, 0.125L, -2612.69757350066712600220955744091741L),
- TEST_if_f (yn, 3, 0.75L, -12.9877176234475433186319774484809207L),
- TEST_if_f (yn, 3, 1.0, -5.82151760596472884776175706442981440L),
- TEST_if_f (yn, 3, 2.0, -1.12778377684042778608158395773179238L),
- TEST_if_f (yn, 3, 10.0, -0.251362657183837329779204747654240998L),
+ TEST_if_f (yn, 3, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
/* yn (10, x) */
TEST_if_f (yn, 10, plus_infty, 0),
- TEST_if_f (yn, 10, qnan_value, qnan_value),
-
- TEST_if_f (yn, 10, 0.125L, -127057845771019398.252538486899753195L),
- TEST_if_f (yn, 10, 0.75L, -2133501638.90573424452445412893839236L),
- TEST_if_f (yn, 10, 1.0, -121618014.278689189288130426667971145L),
- TEST_if_f (yn, 10, 2.0, -129184.542208039282635913145923304214L),
- TEST_if_f (yn, 10, 10.0, -0.359814152183402722051986577343560609L),
+ TEST_if_f (yn, 10, qnan_value, qnan_value, NO_INEXACT_EXCEPTION),
- /* Check whether yn returns correct value for LDBL_MIN, DBL_MIN,
- and FLT_MIN. See Bug 14173. */
- TEST_if_f (yn, 10, min_value, minus_infty, OVERFLOW_EXCEPTION|ERRNO_ERANGE),
+ AUTO_TESTS_if_f (yn, tonearest),
};
static void
@@ -14823,6 +13283,10 @@ main (int argc, char **argv)
exp10_test ();
exp2_test ();
expm1_test ();
+ expm1_test_tonearest ();
+ expm1_test_towardzero ();
+ expm1_test_downward ();
+ expm1_test_upward ();
frexp_test ();
ldexp_test ();
log_test ();
@@ -14849,6 +13313,10 @@ main (int argc, char **argv)
pow_test_downward ();
pow_test_upward ();
sqrt_test ();
+ sqrt_test_tonearest ();
+ sqrt_test_towardzero ();
+ sqrt_test_downward ();
+ sqrt_test_upward ();
/* Error and gamma functions: */
erf_test ();
diff --git a/math/test-fenv-tls.c b/math/test-fenv-tls.c
new file mode 100644
index 0000000000..879c9f9518
--- /dev/null
+++ b/math/test-fenv-tls.c
@@ -0,0 +1,208 @@
+/* Test floating-point environment is thread-local.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv.h>
+#include <pthread.h>
+#include <stdio.h>
+#include <stdint.h>
+
+#define TEST_ONE_RM(RM) \
+ do \
+ { \
+ if (fesetround (RM) == 0) \
+ { \
+ rm = fegetround (); \
+ if (rm != RM) \
+ { \
+ printf ("expected " #RM ", got %d\n", rm); \
+ ret = 1; \
+ } \
+ } \
+ } \
+ while (0)
+
+static void *
+test_round (void *arg)
+{
+ intptr_t ret = 0;
+ for (int i = 0; i < 10000; i++)
+ {
+ int rm;
+#ifdef FE_DOWNWARD
+ TEST_ONE_RM (FE_DOWNWARD);
+#endif
+#ifdef FE_TONEAREST
+ TEST_ONE_RM (FE_TONEAREST);
+#endif
+#ifdef FE_TOWARDZERO
+ TEST_ONE_RM (FE_TOWARDZERO);
+#endif
+#ifdef FE_UPWARD
+ TEST_ONE_RM (FE_UPWARD);
+#endif
+ }
+ return (void *) ret;
+}
+
+#define TEST_ONE_RAISE(EX) \
+ do \
+ { \
+ if (feraiseexcept (EX) == 0) \
+ if (fetestexcept (EX) != EX) \
+ { \
+ printf (#EX " not raised\n"); \
+ ret = 1; \
+ } \
+ if (feclearexcept (FE_ALL_EXCEPT) == 0) \
+ if (fetestexcept (FE_ALL_EXCEPT) != 0) \
+ { \
+ printf ("exceptions not all cleared\n"); \
+ ret = 1; \
+ } \
+ } \
+ while (0)
+
+static void *
+test_raise (void *arg)
+{
+ intptr_t ret = 0;
+ for (int i = 0; i < 10000; i++)
+ {
+#ifdef FE_DIVBYZERO
+ TEST_ONE_RAISE (FE_DIVBYZERO);
+#endif
+#ifdef FE_INEXACT
+ TEST_ONE_RAISE (FE_INEXACT);
+#endif
+#ifdef FE_INVALID
+ TEST_ONE_RAISE (FE_INVALID);
+#endif
+#ifdef FE_OVERFLOW
+ TEST_ONE_RAISE (FE_OVERFLOW);
+#endif
+#ifdef UNDERFLOW
+ TEST_ONE_RAISE (FE_UNDERFLOW);
+#endif
+ }
+ return (void *) ret;
+}
+
+#define TEST_ONE_ENABLE(EX) \
+ do \
+ { \
+ if (feenableexcept (EX) != -1) \
+ if (fegetexcept () != EX) \
+ { \
+ printf (#EX " not enabled\n"); \
+ ret = 1; \
+ } \
+ if (fedisableexcept (EX) != -1) \
+ if (fegetexcept () != 0) \
+ { \
+ printf ("exceptions not all disabled\n"); \
+ ret = 1; \
+ } \
+ } \
+ while (0)
+
+static void *
+test_enable (void *arg)
+{
+ intptr_t ret = 0;
+ for (int i = 0; i < 10000; i++)
+ {
+#ifdef FE_DIVBYZERO
+ TEST_ONE_ENABLE (FE_DIVBYZERO);
+#endif
+#ifdef FE_INEXACT
+ TEST_ONE_ENABLE (FE_INEXACT);
+#endif
+#ifdef FE_INVALID
+ TEST_ONE_ENABLE (FE_INVALID);
+#endif
+#ifdef FE_OVERFLOW
+ TEST_ONE_ENABLE (FE_OVERFLOW);
+#endif
+#ifdef UNDERFLOW
+ TEST_ONE_ENABLE (FE_UNDERFLOW);
+#endif
+ }
+ return (void *) ret;
+}
+
+static int
+do_test (void)
+{
+ int ret = 0;
+ void *vret;
+ pthread_t thread_id;
+ int pret;
+
+ pret = pthread_create (&thread_id, NULL, test_round, NULL);
+ if (pret != 0)
+ {
+ printf ("pthread_create failed: %d\n", pret);
+ return 1;
+ }
+ vret = test_round (NULL);
+ ret |= (intptr_t) vret;
+ pret = pthread_join (thread_id, &vret);
+ if (pret != 0)
+ {
+ printf ("pthread_join failed: %d\n", pret);
+ return 1;
+ }
+ ret |= (intptr_t) vret;
+
+ pret = pthread_create (&thread_id, NULL, test_raise, NULL);
+ if (pret != 0)
+ {
+ printf ("pthread_create failed: %d\n", pret);
+ return 1;
+ }
+ vret = test_raise (NULL);
+ ret |= (intptr_t) vret;
+ pret = pthread_join (thread_id, &vret);
+ if (pret != 0)
+ {
+ printf ("pthread_join failed: %d\n", pret);
+ return 1;
+ }
+ ret |= (intptr_t) vret;
+
+ pret = pthread_create (&thread_id, NULL, test_enable, NULL);
+ if (pret != 0)
+ {
+ printf ("pthread_create failed: %d\n", pret);
+ return 1;
+ }
+ vret = test_enable (NULL);
+ ret |= (intptr_t) vret;
+ pret = pthread_join (thread_id, &vret);
+ if (pret != 0)
+ {
+ printf ("pthread_join failed: %d\n", pret);
+ return 1;
+ }
+ ret |= (intptr_t) vret;
+
+ return ret;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
diff --git a/math/test-fpucw-ieee-static.c b/math/test-fpucw-ieee-static.c
new file mode 100644
index 0000000000..3a35542060
--- /dev/null
+++ b/math/test-fpucw-ieee-static.c
@@ -0,0 +1 @@
+#include "test-fpucw-ieee.c"
diff --git a/math/test-fpucw-ieee.c b/math/test-fpucw-ieee.c
new file mode 100644
index 0000000000..7596486252
--- /dev/null
+++ b/math/test-fpucw-ieee.c
@@ -0,0 +1,27 @@
+/* FPU control word overridden initialization test.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifdef _FPU_IEEE
+/* Some architectures don't have _FPU_IEEE. */
+# define FPU_CONTROL _FPU_IEEE
+#endif
+
+#include "test-fpucw.c"
+
+/* Preempt the library's definition of `__fpu_control'. */
+fpu_control_t __fpu_control = FPU_CONTROL;
diff --git a/math/test-fpucw-static.c b/math/test-fpucw-static.c
new file mode 100644
index 0000000000..bc1cfa8ce5
--- /dev/null
+++ b/math/test-fpucw-static.c
@@ -0,0 +1 @@
+#include "test-fpucw.c"
diff --git a/math/test-fpucw.c b/math/test-fpucw.c
index 1961a67481..ae6a2c9a71 100644
--- a/math/test-fpucw.c
+++ b/math/test-fpucw.c
@@ -19,6 +19,10 @@
#include <fpu_control.h>
#include <stdio.h>
+#ifndef FPU_CONTROL
+# define FPU_CONTROL _FPU_DEFAULT
+#endif
+
int
main (void)
{
@@ -30,11 +34,11 @@ main (void)
cw &= ~_FPU_RESERVED;
- if (cw != (_FPU_DEFAULT & ~_FPU_RESERVED))
+ if (cw != (FPU_CONTROL & ~_FPU_RESERVED))
printf ("control word is 0x%lx but should be 0x%lx.\n",
- (long int) cw, (long int) (_FPU_DEFAULT & ~_FPU_RESERVED));
+ (long int) cw, (long int) (FPU_CONTROL & ~_FPU_RESERVED));
- return cw != (_FPU_DEFAULT & ~_FPU_RESERVED);
+ return cw != (FPU_CONTROL & ~_FPU_RESERVED);
#else
return 0;
diff --git a/math/test-misc.c b/math/test-misc.c
index 27d673b823..f5276ebff9 100644
--- a/math/test-misc.c
+++ b/math/test-misc.c
@@ -722,300 +722,161 @@ main (void)
#ifndef NO_LONG_DOUBLE
{
- union ieee854_long_double v1;
- union ieee854_long_double v2;
- long double ld;
+ long double v1, v2;
- v1.d = ld = LDBL_MIN;
- if (fpclassify (ld) != FP_NORMAL)
+ v1 = LDBL_MIN;
+ if (fpclassify (v1) != FP_NORMAL)
{
- printf ("fpclassify (LDBL_MIN) failed: %d\n", fpclassify (ld));
+ printf ("fpclassify (LDBL_MIN) failed: %d (%La)\n",
+ fpclassify (v1), v1);
result = 1;
}
- ld = nextafterl (ld, LDBL_MIN / 2.0);
- if (fpclassify (ld) != FP_SUBNORMAL)
+ v2 = nextafterl (v1, LDBL_MIN / 2.0);
+ if (fpclassify (v2) != FP_SUBNORMAL)
{
printf ("fpclassify (LDBL_MIN-epsilon) failed: %d (%La)\n",
- fpclassify (ld), ld);
+ fpclassify (v2), v2);
result = 1;
}
- v2.d = ld = nextafterl (ld, LDBL_MIN);
- if (fpclassify (ld) != FP_NORMAL)
+ v2 = nextafterl (v2, LDBL_MIN);
+ if (fpclassify (v2) != FP_NORMAL)
{
printf ("fpclassify (LDBL_MIN-epsilon+epsilon) failed: %d (%La)\n",
- fpclassify (ld), ld);
+ fpclassify (v2), v2);
result = 1;
}
- if (v1.ieee.mantissa0 != v2.ieee.mantissa0)
+ if (v1 != v2)
{
- printf ("LDBL_MIN: mantissa0 differs: %8x vs %8x\n",
- v1.ieee.mantissa0, v2.ieee.mantissa0);
- result = 1;
- }
- if (v1.ieee.mantissa1 != v2.ieee.mantissa1)
- {
- printf ("LDBL_MIN: mantissa1 differs: %8x vs %8x\n",
- v1.ieee.mantissa1, v2.ieee.mantissa1);
- result = 1;
- }
- if (v1.ieee.exponent != v2.ieee.exponent)
- {
- printf ("LDBL_MIN: exponent differs: %4x vs %4x\n",
- v1.ieee.exponent, v2.ieee.exponent);
- result = 1;
- }
- if (v1.ieee.negative != v2.ieee.negative)
- {
- printf ("LDBL_MIN: negative differs: %d vs %d\n",
- v1.ieee.negative, v2.ieee.negative);
+ printf ("LDBL_MIN-epsilon+epsilon != LDBL_MIN: %La vs %La\n", v2, v1);
result = 1;
}
- v1.d = ld = -LDBL_MIN;
- if (fpclassify (ld) != FP_NORMAL)
+ v1 = -LDBL_MIN;
+ if (fpclassify (v1) != FP_NORMAL)
{
- printf ("fpclassify (-LDBL_MIN) failed: %d\n", fpclassify (ld));
+ printf ("fpclassify (-LDBL_MIN) failed: %d (%La)\n",
+ fpclassify (v1), v1);
result = 1;
}
- ld = nextafterl (ld, -LDBL_MIN / 2.0);
- if (fpclassify (ld) != FP_SUBNORMAL)
+ v2 = nextafterl (v1, -LDBL_MIN / 2.0);
+ if (fpclassify (v2) != FP_SUBNORMAL)
{
printf ("fpclassify (-LDBL_MIN-epsilon) failed: %d (%La)\n",
- fpclassify (ld), ld);
+ fpclassify (v2), v2);
result = 1;
}
- v2.d = ld = nextafterl (ld, -LDBL_MIN);
- if (fpclassify (ld) != FP_NORMAL)
+ v2 = nextafterl (v2, -LDBL_MIN);
+ if (fpclassify (v2) != FP_NORMAL)
{
printf ("fpclassify (-LDBL_MIN-epsilon+epsilon) failed: %d (%La)\n",
- fpclassify (ld), ld);
+ fpclassify (v2), v2);
result = 1;
}
- if (v1.ieee.mantissa0 != v2.ieee.mantissa0)
- {
- printf ("-LDBL_MIN: mantissa0 differs: %8x vs %8x\n",
- v1.ieee.mantissa0, v2.ieee.mantissa0);
- result = 1;
- }
- if (v1.ieee.mantissa1 != v2.ieee.mantissa1)
- {
- printf ("-LDBL_MIN: mantissa1 differs: %8x vs %8x\n",
- v1.ieee.mantissa1, v2.ieee.mantissa1);
- result = 1;
- }
- if (v1.ieee.exponent != v2.ieee.exponent)
+ if (v1 != v2)
{
- printf ("-LDBL_MIN: exponent differs: %4x vs %4x\n",
- v1.ieee.exponent, v2.ieee.exponent);
- result = 1;
- }
- if (v1.ieee.negative != v2.ieee.negative)
- {
- printf ("-LDBL_MIN: negative differs: %d vs %d\n",
- v1.ieee.negative, v2.ieee.negative);
+ printf ("-LDBL_MIN-epsilon+epsilon != -LDBL_MIN: %La vs %La\n", v2, v1);
result = 1;
}
- ld = LDBL_MAX;
- if (fpclassify (ld) != FP_NORMAL)
+ v1 = LDBL_MAX;
+ if (fpclassify (v1) != FP_NORMAL)
{
- printf ("fpclassify (LDBL_MAX) failed: %d\n", fpclassify (ld));
+ printf ("fpclassify (LDBL_MAX) failed: %d (%La)\n",
+ fpclassify (v1), v1);
result = 1;
}
- ld = nextafterl (ld, INFINITY);
- if (fpclassify (ld) != FP_INFINITE)
+ v2 = nextafterl (v1, INFINITY);
+ if (fpclassify (v2) != FP_INFINITE)
{
- printf ("fpclassify (LDBL_MAX+epsilon) failed: %d\n", fpclassify (ld));
+ printf ("fpclassify (LDBL_MAX+epsilon) failed: %d (%La)\n",
+ fpclassify (v2), v2);
result = 1;
}
- ld = -LDBL_MAX;
- if (fpclassify (ld) != FP_NORMAL)
+ v1 = -LDBL_MAX;
+ if (fpclassify (v1) != FP_NORMAL)
{
- printf ("fpclassify (-LDBL_MAX) failed: %d\n", fpclassify (ld));
+ printf ("fpclassify (-LDBL_MAX) failed: %d (%La)\n",
+ fpclassify (v1), v1);
result = 1;
}
- ld = nextafterl (ld, -INFINITY);
- if (fpclassify (ld) != FP_INFINITE)
+ v2 = nextafterl (v1, -INFINITY);
+ if (fpclassify (v2) != FP_INFINITE)
{
- printf ("fpclassify (-LDBL_MAX-epsilon) failed: %d\n",
- fpclassify (ld));
+ printf ("fpclassify (-LDBL_MAX-epsilon) failed: %d (%La)\n",
+ fpclassify (v2), v2);
result = 1;
}
- v1.d = ld = 0.0625;
- ld = nextafterl (ld, 0.0);
- v2.d = ld = nextafterl (ld, 1.0);
+ v1 = 0.0625;
+ v2 = nextafterl (v1, 0.0);
+ v2 = nextafterl (v2, 1.0);
- if (v1.ieee.mantissa0 != v2.ieee.mantissa0)
- {
- printf ("0.0625L down: mantissa0 differs: %8x vs %8x\n",
- v1.ieee.mantissa0, v2.ieee.mantissa0);
- result = 1;
- }
- if (v1.ieee.mantissa1 != v2.ieee.mantissa1)
- {
- printf ("0.0625L down: mantissa1 differs: %8x vs %8x\n",
- v1.ieee.mantissa1, v2.ieee.mantissa1);
- result = 1;
- }
- if (v1.ieee.exponent != v2.ieee.exponent)
- {
- printf ("0.0625L down: exponent differs: %4x vs %4x\n",
- v1.ieee.exponent, v2.ieee.exponent);
- result = 1;
- }
- if (v1.ieee.negative != v2.ieee.negative)
+ if (v1 != v2)
{
- printf ("0.0625L down: negative differs: %d vs %d\n",
- v1.ieee.negative, v2.ieee.negative);
+ printf ("0.0625L-epsilon+epsilon != 0.0625L: %La vs %La\n", v2, v1);
result = 1;
}
- v1.d = ld = 0.0625;
- ld = nextafterl (ld, 1.0);
- v2.d = ld = nextafterl (ld, 0.0);
+ v1 = 0.0625;
+ v2 = nextafterl (v1, 1.0);
+ v2 = nextafterl (v2, 0.0);
- if (v1.ieee.mantissa0 != v2.ieee.mantissa0)
- {
- printf ("0.0625L up: mantissa0 differs: %8x vs %8x\n",
- v1.ieee.mantissa0, v2.ieee.mantissa0);
- result = 1;
- }
- if (v1.ieee.mantissa1 != v2.ieee.mantissa1)
- {
- printf ("0.0625L up: mantissa1 differs: %8x vs %8x\n",
- v1.ieee.mantissa1, v2.ieee.mantissa1);
- result = 1;
- }
- if (v1.ieee.exponent != v2.ieee.exponent)
- {
- printf ("0.0625L up: exponent differs: %4x vs %4x\n",
- v1.ieee.exponent, v2.ieee.exponent);
- result = 1;
- }
- if (v1.ieee.negative != v2.ieee.negative)
+ if (v1 != v2)
{
- printf ("0.0625L up: negative differs: %d vs %d\n",
- v1.ieee.negative, v2.ieee.negative);
+ printf ("0.0625L+epsilon-epsilon != 0.0625L: %La vs %La\n", v2, v1);
result = 1;
}
- v1.d = ld = -0.0625;
- ld = nextafterl (ld, 0.0);
- v2.d = ld = nextafterl (ld, -1.0);
+ v1 = -0.0625;
+ v2 = nextafterl (v1, 0.0);
+ v2 = nextafterl (v2, -1.0);
- if (v1.ieee.mantissa0 != v2.ieee.mantissa0)
+ if (v1 != v2)
{
- printf ("-0.0625L up: mantissa0 differs: %8x vs %8x\n",
- v1.ieee.mantissa0, v2.ieee.mantissa0);
- result = 1;
- }
- if (v1.ieee.mantissa1 != v2.ieee.mantissa1)
- {
- printf ("-0.0625L up: mantissa1 differs: %8x vs %8x\n",
- v1.ieee.mantissa1, v2.ieee.mantissa1);
- result = 1;
- }
- if (v1.ieee.exponent != v2.ieee.exponent)
- {
- printf ("-0.0625L up: exponent differs: %4x vs %4x\n",
- v1.ieee.exponent, v2.ieee.exponent);
- result = 1;
- }
- if (v1.ieee.negative != v2.ieee.negative)
- {
- printf ("-0.0625L up: negative differs: %d vs %d\n",
- v1.ieee.negative, v2.ieee.negative);
+ printf ("-0.0625L+epsilon-epsilon != -0.0625L: %La vs %La\n", v2, v1);
result = 1;
}
- v1.d = ld = -0.0625;
- ld = nextafterl (ld, -1.0);
- v2.d = ld = nextafterl (ld, 0.0);
+ v1 = -0.0625;
+ v2 = nextafterl (v1, -1.0);
+ v2 = nextafterl (v2, 0.0);
- if (v1.ieee.mantissa0 != v2.ieee.mantissa0)
- {
- printf ("-0.0625L down: mantissa0 differs: %8x vs %8x\n",
- v1.ieee.mantissa0, v2.ieee.mantissa0);
- result = 1;
- }
- if (v1.ieee.mantissa1 != v2.ieee.mantissa1)
- {
- printf ("-0.0625L down: mantissa1 differs: %8x vs %8x\n",
- v1.ieee.mantissa1, v2.ieee.mantissa1);
- result = 1;
- }
- if (v1.ieee.exponent != v2.ieee.exponent)
+ if (v1 != v2)
{
- printf ("-0.0625L down: exponent differs: %4x vs %4x\n",
- v1.ieee.exponent, v2.ieee.exponent);
- result = 1;
- }
- if (v1.ieee.negative != v2.ieee.negative)
- {
- printf ("-0.0625L down: negative differs: %d vs %d\n",
- v1.ieee.negative, v2.ieee.negative);
+ printf ("-0.0625L-epsilon+epsilon != -0.0625L: %La vs %La\n", v2, v1);
result = 1;
}
- v1.d = ld = 0.0;
- ld = nextafterl (ld, 1.0);
- v2.d = nextafterl (ld, -1.0);
+ v1 = 0.0;
+ v2 = nextafterl (v1, 1.0);
+ v2 = nextafterl (v2, -1.0);
- if (v1.ieee.mantissa0 != v2.ieee.mantissa0)
- {
- printf ("0.0L up: mantissa0 differs: %8x vs %8x\n",
- v1.ieee.mantissa0, v2.ieee.mantissa0);
- result = 1;
- }
- if (v1.ieee.mantissa1 != v2.ieee.mantissa1)
- {
- printf ("0.0L up: mantissa1 differs: %8x vs %8x\n",
- v1.ieee.mantissa1, v2.ieee.mantissa1);
- result = 1;
- }
- if (v1.ieee.exponent != v2.ieee.exponent)
+ if (v1 != v2)
{
- printf ("0.0L up: exponent differs: %4x vs %4x\n",
- v1.ieee.exponent, v2.ieee.exponent);
+ printf ("0.0+epsilon-epsilon != 0.0L: %La vs %La\n", v2, v1);
result = 1;
}
- if (0 != v2.ieee.negative)
+ if (signbit (v2))
{
- printf ("0.0L up: negative differs: 0 vs %d\n",
- v2.ieee.negative);
+ printf ("0.0+epsilon-epsilon is negative\n");
result = 1;
}
- v1.d = ld = 0.0;
- ld = nextafterl (ld, -1.0);
- v2.d = nextafterl (ld, 1.0);
+ v1 = 0.0;
+ v2 = nextafterl (v1, -1.0);
+ v2 = nextafterl (v2, 1.0);
- if (v1.ieee.mantissa0 != v2.ieee.mantissa0)
- {
- printf ("0.0L down: mantissa0 differs: %8x vs %8x\n",
- v1.ieee.mantissa0, v2.ieee.mantissa0);
- result = 1;
- }
- if (v1.ieee.mantissa1 != v2.ieee.mantissa1)
+ if (v1 != v2)
{
- printf ("0.0L down: mantissa1 differs: %8x vs %8x\n",
- v1.ieee.mantissa1, v2.ieee.mantissa1);
- result = 1;
- }
- if (v1.ieee.exponent != v2.ieee.exponent)
- {
- printf ("0.0L down: exponent differs: %4x vs %4x\n",
- v1.ieee.exponent, v2.ieee.exponent);
+ printf ("0.0-epsilon+epsilon != 0.0L: %La vs %La\n", v2, v1);
result = 1;
}
- if (1 != v2.ieee.negative)
+ if (!signbit (v2))
{
- printf ("0.0L down: negative differs: 1 vs %d\n",
- v2.ieee.negative);
+ printf ("0.0-epsilon+epsilon is positive\n");
result = 1;
}
diff --git a/math/w_exp10.c b/math/w_exp10.c
index 3db012d1f1..17823f57ef 100644
--- a/math/w_exp10.c
+++ b/math/w_exp10.c
@@ -28,7 +28,7 @@ double
__exp10 (double x)
{
double z = __ieee754_exp10 (x);
- if (__builtin_expect (!__finite (z), 0)
+ if (__builtin_expect (!__finite (z) || z == 0, 0)
&& __finite (x) && _LIB_VERSION != _IEEE_)
/* exp10 overflow (46) if x > 0, underflow (47) if x < 0. */
return __kernel_standard (x, x, 46 + !!__signbit (x));
diff --git a/math/w_exp10f.c b/math/w_exp10f.c
index 082b34faf5..e2f9185b1e 100644
--- a/math/w_exp10f.c
+++ b/math/w_exp10f.c
@@ -28,7 +28,7 @@ float
__exp10f (float x)
{
float z = __ieee754_exp10f (x);
- if (__builtin_expect (!__finitef (z), 0)
+ if (__builtin_expect (!__finitef (z) || z == 0, 0)
&& __finitef (x) && _LIB_VERSION != _IEEE_)
/* exp10f overflow (146) if x > 0, underflow (147) if x < 0. */
return __kernel_standard_f (x, x, 146 + !!__signbitf (x));
diff --git a/math/w_exp10l.c b/math/w_exp10l.c
index 10f3f81fe0..19facddee6 100644
--- a/math/w_exp10l.c
+++ b/math/w_exp10l.c
@@ -28,7 +28,7 @@ long double
__exp10l (long double x)
{
long double z = __ieee754_exp10l (x);
- if (__builtin_expect (!__finitel (z), 0)
+ if (__builtin_expect (!__finitel (z) || z == 0, 0)
&& __finitel (x) && _LIB_VERSION != _IEEE_)
/* exp10l overflow (246) if x > 0, underflow (247) if x < 0. */
return __kernel_standard_l (x, x, 246 + !!__signbitl (x));
diff --git a/math/w_exp2.c b/math/w_exp2.c
index b5d8e25702..02820be373 100644
--- a/math/w_exp2.c
+++ b/math/w_exp2.c
@@ -9,7 +9,7 @@ double
__exp2 (double x)
{
double z = __ieee754_exp2 (x);
- if (__builtin_expect (!__finite (z), 0)
+ if (__builtin_expect (!__finite (z) || z == 0, 0)
&& __finite (x) && _LIB_VERSION != _IEEE_)
/* exp2 overflow: 44, exp2 underflow: 45 */
return __kernel_standard (x, x, 44 + !!__signbit (x));
diff --git a/math/w_exp2f.c b/math/w_exp2f.c
index 7c277ef390..8430fd5702 100644
--- a/math/w_exp2f.c
+++ b/math/w_exp2f.c
@@ -9,7 +9,7 @@ float
__exp2f (float x)
{
float z = __ieee754_exp2f (x);
- if (__builtin_expect (!__finitef (z), 0)
+ if (__builtin_expect (!__finitef (z) || z == 0, 0)
&& __finitef (x) && _LIB_VERSION != _IEEE_)
/* exp2 overflow: 144, exp2 underflow: 145 */
return __kernel_standard_f (x, x, 144 + !!__signbitf (x));
diff --git a/math/w_exp2l.c b/math/w_exp2l.c
index 7f06805a0d..33861d584a 100644
--- a/math/w_exp2l.c
+++ b/math/w_exp2l.c
@@ -9,7 +9,7 @@ long double
__exp2l (long double x)
{
long double z = __ieee754_exp2l (x);
- if (__builtin_expect (!__finitel (z), 0)
+ if (__builtin_expect (!__finitel (z) || z == 0, 0)
&& __finitel (x) && _LIB_VERSION != _IEEE_)
/* exp2 overflow: 244, exp2 underflow: 245 */
return __kernel_standard_l (x, x, 244 + !!__signbitl (x));
diff --git a/math/w_j0.c b/math/w_j0.c
index 53671c3306..0849abbc35 100644
--- a/math/w_j0.c
+++ b/math/w_j0.c
@@ -51,8 +51,11 @@ y0 (double x)
return __kernel_standard (x, x, 9);
}
else if (x == 0.0)
- /* d = -one/(x-x) */
- return __kernel_standard (x, x, 8);
+ {
+ /* d = -one/(x-x) */
+ feraiseexcept (FE_DIVBYZERO);
+ return __kernel_standard (x, x, 8);
+ }
else if (_LIB_VERSION != _POSIX_)
/* y0(x>X_TLOSS) */
return __kernel_standard (x, x, 35);
diff --git a/math/w_j0f.c b/math/w_j0f.c
index c9a6c53fff..ef309d2092 100644
--- a/math/w_j0f.c
+++ b/math/w_j0f.c
@@ -49,8 +49,11 @@ y0f (float x)
return __kernel_standard_f (x, x, 109);
}
else if (x == 0.0f)
- /* d = -one/(x-x) */
- return __kernel_standard_f (x, x, 108);
+ {
+ /* d = -one/(x-x) */
+ feraiseexcept (FE_DIVBYZERO);
+ return __kernel_standard_f (x, x, 108);
+ }
else if (_LIB_VERSION != _POSIX_)
/* y0(x>X_TLOSS) */
return __kernel_standard_f (x, x, 135);
diff --git a/math/w_j0l.c b/math/w_j0l.c
index 717253c001..01cd91cdb7 100644
--- a/math/w_j0l.c
+++ b/math/w_j0l.c
@@ -49,8 +49,11 @@ __y0l (long double x)
return __kernel_standard_l (x, x, 209);
}
else if (x == 0.0L)
- /* d = -one/(x-x) */
- return __kernel_standard_l (x, x, 208);
+ {
+ /* d = -one/(x-x) */
+ feraiseexcept (FE_DIVBYZERO);
+ return __kernel_standard_l (x, x, 208);
+ }
else if (_LIB_VERSION != _POSIX_)
/* y0(x>X_TLOSS) */
return __kernel_standard_l (x, x, 235);
diff --git a/math/w_j1.c b/math/w_j1.c
index 743c940b14..a9fb7aebbe 100644
--- a/math/w_j1.c
+++ b/math/w_j1.c
@@ -51,8 +51,11 @@ y1 (double x)
return __kernel_standard (x, x, 11);
}
else if (x == 0.0)
- /* d = -one/(x-x) */
- return __kernel_standard (x, x, 10);
+ {
+ /* d = -one/(x-x) */
+ feraiseexcept (FE_DIVBYZERO);
+ return __kernel_standard (x, x, 10);
+ }
else if (_LIB_VERSION != _POSIX_)
/* y1(x>X_TLOSS) */
return __kernel_standard (x, x, 37);
diff --git a/math/w_j1f.c b/math/w_j1f.c
index bf7deb09f7..f70913d5ae 100644
--- a/math/w_j1f.c
+++ b/math/w_j1f.c
@@ -49,8 +49,11 @@ y1f (float x)
return __kernel_standard_f (x, x, 111);
}
else if (x == 0.0f)
- /* d = -one/(x-x) */
- return __kernel_standard_f (x, x, 110);
+ {
+ /* d = -one/(x-x) */
+ feraiseexcept (FE_DIVBYZERO);
+ return __kernel_standard_f (x, x, 110);
+ }
else if (_LIB_VERSION != _POSIX_)
/* y1(x>X_TLOSS) */
return __kernel_standard_f (x, x, 137);
diff --git a/math/w_j1l.c b/math/w_j1l.c
index c4f8111ca2..e4242ec218 100644
--- a/math/w_j1l.c
+++ b/math/w_j1l.c
@@ -49,8 +49,11 @@ __y1l (long double x)
return __kernel_standard_l (x, x, 211);
}
else if (x == 0.0L)
- /* d = -one/(x-x) */
- return __kernel_standard_l (x, x, 210);
+ {
+ /* d = -one/(x-x) */
+ feraiseexcept (FE_DIVBYZERO);
+ return __kernel_standard_l (x, x, 210);
+ }
else if (_LIB_VERSION != _POSIX_)
/* y1(x>X_TLOSS) */
return __kernel_standard_l (x, x, 237);
diff --git a/math/w_jn.c b/math/w_jn.c
index e2e69b4239..e9179835ba 100644
--- a/math/w_jn.c
+++ b/math/w_jn.c
@@ -51,8 +51,11 @@ yn (int n, double x)
return __kernel_standard (n, x, 13);
}
else if (x == 0.0)
- /* d = -one/(x-x) */
- return __kernel_standard (n, x, 12);
+ {
+ /* d = -one/(x-x) */
+ feraiseexcept (FE_DIVBYZERO);
+ return __kernel_standard (n, x, 12);
+ }
else if (_LIB_VERSION != _POSIX_)
/* yn(n,x>X_TLOSS) */
return __kernel_standard (n, x, 39);
diff --git a/math/w_jnf.c b/math/w_jnf.c
index c9114e7b09..cb1aab8e73 100644
--- a/math/w_jnf.c
+++ b/math/w_jnf.c
@@ -49,8 +49,11 @@ ynf (int n, float x)
return __kernel_standard_f (n, x, 113);
}
else if (x == 0.0)
- /* d = -one/(x-x) */
- return __kernel_standard_f (n, x, 112);
+ {
+ /* d = -one/(x-x) */
+ feraiseexcept (FE_DIVBYZERO);
+ return __kernel_standard_f (n, x, 112);
+ }
else if (_LIB_VERSION != _POSIX_)
/* yn(n,x>X_TLOSS) */
return __kernel_standard_f (n, x, 139);
diff --git a/math/w_tgamma.c b/math/w_tgamma.c
index 6b6c7c5241..504996e3c2 100644
--- a/math/w_tgamma.c
+++ b/math/w_tgamma.c
@@ -15,6 +15,7 @@
* depending on the library mode.
*/
+#include <errno.h>
#include <math.h>
#include <math_private.h>
@@ -24,13 +25,15 @@ __tgamma(double x)
int local_signgam;
double y = __ieee754_gamma_r(x,&local_signgam);
- if(__builtin_expect(!__finite(y), 0)
+ if(__glibc_unlikely (!__finite (y) || y == 0)
&& (__finite (x) || __isinf (x) < 0)
&& _LIB_VERSION != _IEEE_) {
if (x == 0.0)
return __kernel_standard(x,x,50); /* tgamma pole */
else if(__floor(x)==x&&x<0.0)
return __kernel_standard(x,x,41); /* tgamma domain */
+ else if (y == 0)
+ __set_errno (ERANGE); /* tgamma underflow */
else
return __kernel_standard(x,x,40); /* tgamma overflow */
}
diff --git a/math/w_tgammaf.c b/math/w_tgammaf.c
index 8bb553e47b..fb15b6aa5c 100644
--- a/math/w_tgammaf.c
+++ b/math/w_tgammaf.c
@@ -13,6 +13,7 @@
* ====================================================
*/
+#include <errno.h>
#include <math.h>
#include <math_private.h>
@@ -22,7 +23,7 @@ __tgammaf(float x)
int local_signgam;
float y = __ieee754_gammaf_r(x,&local_signgam);
- if(__builtin_expect(!__finitef(y), 0)
+ if(__glibc_unlikely (!__finitef (y) || y == 0)
&& (__finitef (x) || __isinff (x) < 0)
&& _LIB_VERSION != _IEEE_) {
if (x == (float)0.0)
@@ -31,6 +32,9 @@ __tgammaf(float x)
else if(__floorf(x)==x&&x<0.0f)
/* tgammaf domain */
return __kernel_standard_f(x, x, 141);
+ else if (y == 0)
+ /* tgammaf underflow */
+ __set_errno (ERANGE);
else
/* tgammaf overflow */
return __kernel_standard_f(x, x, 140);
diff --git a/math/w_tgammal.c b/math/w_tgammal.c
index 72b247db2a..4e2d66ae84 100644
--- a/math/w_tgammal.c
+++ b/math/w_tgammal.c
@@ -18,6 +18,7 @@
* Return the Gamma function of x.
*/
+#include <errno.h>
#include <math.h>
#include <math_private.h>
@@ -27,13 +28,15 @@ __tgammal(long double x)
int local_signgam;
long double y = __ieee754_gammal_r(x,&local_signgam);
- if(__builtin_expect(!__finitel(y), 0)
+ if(__glibc_unlikely (!__finitel (y) || y == 0)
&& (__finitel (x) || __isinfl (x) < 0)
&& _LIB_VERSION != _IEEE_) {
if(x==0.0)
return __kernel_standard_l(x,x,250); /* tgamma pole */
else if(__floorl(x)==x&&x<0.0L)
return __kernel_standard_l(x,x,241); /* tgamma domain */
+ else if (y == 0)
+ __set_errno (ERANGE); /* tgamma underflow */
else
return __kernel_standard_l(x,x,240); /* tgamma overflow */
}
diff --git a/misc/Makefile b/misc/Makefile
index 4b52669dde..3d6760b42b 100644
--- a/misc/Makefile
+++ b/misc/Makefile
@@ -72,7 +72,7 @@ generated := tst-error1.mtrace tst-error1-mem
include ../Makeconfig
aux := init-misc
-install-lib := libbsd-compat.a libg.a
+install-lib := libg.a
gpl2lgpl := error.c error.h
tests := tst-dirname tst-tsearch tst-fdset tst-efgcvt tst-mntent tst-hsearch \
@@ -104,7 +104,6 @@ tests-static += tst-sbrk-static
include ../Rules
-$(objpfx)libbsd-compat.a: $(dep-dummy-lib); $(make-dummy-lib)
$(objpfx)libg.a: $(dep-dummy-lib); $(make-dummy-lib)
ifeq ($(build-shared),yes)
diff --git a/misc/error.c b/misc/error.c
index c8e62cf9b4..408a1ab25e 100644
--- a/misc/error.c
+++ b/misc/error.c
@@ -165,7 +165,7 @@ error_tail (int status, int errnum, const char *message, va_list args)
if (res != len)
break;
- if (__builtin_expect (len >= SIZE_MAX / 2, 0))
+ if (__builtin_expect (len >= SIZE_MAX / sizeof (wchar_t) / 2, 0))
{
/* This really should not happen if everything is fine. */
res = (size_t) -1;
diff --git a/misc/getauxval.c b/misc/getauxval.c
index e0317fd6f9..dd4c8ecab3 100644
--- a/misc/getauxval.c
+++ b/misc/getauxval.c
@@ -16,6 +16,7 @@
<http://www.gnu.org/licenses/>. */
#include <sys/auxv.h>
+#include <errno.h>
#include <ldsodefs.h>
@@ -32,6 +33,8 @@ __getauxval (unsigned long int type)
for (p = GLRO(dl_auxv); p->a_type != AT_NULL; p++)
if (p->a_type == type)
return p->a_un.a_val;
+
+ __set_errno (ENOENT);
return 0;
}
diff --git a/misc/swapon.c b/misc/swapon.c
index 61933b8bb5..0e587d473f 100644
--- a/misc/swapon.c
+++ b/misc/swapon.c
@@ -22,8 +22,7 @@
/* Make the block special device PATH available to the system for swapping.
This call is restricted to the super-user. */
int
-swapon (path)
- const char *path;
+swapon (const char *path, int flags)
{
__set_errno (ENOSYS);
return -1;
diff --git a/misc/sys/auxv.h b/misc/sys/auxv.h
index a69250bd52..7aec3a04b8 100644
--- a/misc/sys/auxv.h
+++ b/misc/sys/auxv.h
@@ -27,9 +27,9 @@ __BEGIN_DECLS
/* Return the value associated with an Elf*_auxv_t type from the auxv list
passed to the program on startup. If TYPE was not present in the auxv
- list, returns zero. */
+ list, returns zero and sets errno to ENOENT. */
extern unsigned long int getauxval (unsigned long int __type)
- __THROW __attribute_const__;
+ __THROW;
__END_DECLS
diff --git a/nptl/ChangeLog b/nptl/ChangeLog
index d1efbb43e5..c27ace4822 100644
--- a/nptl/ChangeLog
+++ b/nptl/ChangeLog
@@ -1,3 +1,90 @@
+2011-12-12 Adhemerval Zanella <azanella@linux.vnet.ibm.com>
+
+ * sysdeps/powerpc/tls.h (struct tcbhead_t): Add DSO and TAR fields.
+ * nptl/sysdeps/powerpc/tcb-offsets.sym: Likewise.
+
+2013-12-09 Carlos O'Donell <carlos@redhat.com>
+
+ * sysdeps/unix/sysv/linux/tst-setgetname.c: New file.
+ * sysdeps/unix/sysv/linux/Makefile (tests): Add tst-setgetname.
+
+2013-12-09 Andreas Schwab <schwab@suse.de>
+
+ [BZ #15843]
+ * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
+ (__pthread_cond_timedwait): Remove wrong cfi_adjust_cfa_offset
+ before __condvar_tw_cleanup2 label.
+
+2013-12-04 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
+ (CANCEL_FRAMESIZE, CANCEL_PARM_SAVE): New macros to save parameters
+ into our own stack frame instead of the caller's.
+ (PSEUDO): Use them. Use symbolic stack frame offsets.
+ (DOCARGS_1, UNDOCARGS_1): Use CANCEL_PARM_SAVE.
+ (DOCARGS_2, UNDOCARGS_2): Likewise.
+ (DOCARGS_3, UNDOCARGS_3): Likewise.
+ (DOCARGS_4, UNDOCARGS_4): Likewise.
+ (DOCARGS_5, UNDOCARGS_5): Likewise.
+ (DOCARGS_6, UNDOCARGS_6): Likewise.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+
+ * sysdeps/i386/tls.h: Use __glibc_reserved instead __unused.
+ * sysdeps/x86_64/tls.h: Likewise.
+
+2013-11-25 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ [BZ #11214]
+ * Makefile (tst-getpid2-ENV): New variable.
+
+2013-11-20 Paul Pluzhnikov <ppluzhnikov@google.com>
+
+ * Makefile (tst-cleanup2, tst-cleanupx2): Add -fno-builtin
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/pthread/configure.in: Moved to ...
+ * sysdeps/pthread/configure.ac: ... here.
+ * sysdeps/x86_64/configure.in: Moved to ...
+ * sysdeps/x86_64/configure.ac: ... here.
+ * sysdeps/pthread/configure: Regenerated.
+ * sysdeps/x86_64/configure: Likewise.
+
+2013-10-04 Maciej W. Rozycki <macro@codesourcery.com>
+
+ * tst-mutex8.c (check_type) [ENABLE_PI]: Handle ENOTSUP failure
+ from pthread_mutex_init.
+
+2013-10-01 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ [BZ #15988]
+ * pthread_cond_broadcast.c (__pthread_cond_broadcast)
+ [lll_futex_cmp_requeue_pi && __ASSUME_REQUEUE_PI]: Use
+ USE_REQUEUE_PI.
+ * pthread_cond_signal.c (__pthread_cond_signal)
+ [lll_futex_cmd_requeue_pi && __ASSUME_REQUEUE_PI]: Likewise.
+
+2013-09-27 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ * sysdeps/pthread/bits/libc-lock.h [_LIBC && (!NOT_IN_libc ||
+ IS_IN_libpthread)] (__libc_lock_fini_recursive): Use the mutex
+ member of the argument.
+ (__libc_lock_trylock_recursive): Likewise.
+ (__libc_lock_unlock_recursive): Likewise.
+
+2013-09-04 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/unix/sysv/linux/x86_64/cancellation.S
+ [SHARED && DO_VERSIONING && !NO_HIDDEN]: Change conditional to
+ [SHARED && !NO_HIDDEN].
+
+2013-09-03 Siddhesh Poyarekar <siddhesh@redhat.com>
+
+ [BZ #15921]
+ * tst-cleanup2.c (do_test): New volatile variable RET to
+ return success.
+
2013-08-30 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/pthread/pthread.h: Fix typos.
diff --git a/nptl/Makefile b/nptl/Makefile
index cd601e5f5a..0fbfc4d3b4 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -278,6 +278,10 @@ gen-as-const-headers = pthread-errnos.sym
LDFLAGS-pthread.so = -Wl,--enable-new-dtags,-z,nodelete,-z,initfirst
+# GCC-4.9 compiles 'sprintf(NULL, ...)' into UD2 on x86_64 without -fno-builtin
+CFLAGS-tst-cleanup2.c = -fno-builtin
+CFLAGS-tst-cleanupx2.c = -fno-builtin
+
include ../Makeconfig
ifeq ($(have-forced-unwind),yes)
@@ -443,6 +447,11 @@ tst-cancel7-ARGS = --command "exec $(host-test-program-cmd)"
tst-cancelx7-ARGS = $(tst-cancel7-ARGS)
tst-umask1-ARGS = $(objpfx)tst-umask1.temp
+# In this test, we create a CLONE_VM "thread" that shares TLS storage
+# with the original thread. Both threads then race in ld.so with lazy PLT
+# resolution. Avoid this race by disabling lazy binding. BZ #11214.
+tst-getpid2-ENV = LD_BIND_NOW=1
+
$(objpfx)tst-atfork2: $(libdl) $(shared-thread-library)
LDFLAGS-tst-atfork2 = -rdynamic
tst-atfork2-ENV = MALLOC_TRACE=$(objpfx)tst-atfork2.mtrace
diff --git a/nptl/allocatestack.c b/nptl/allocatestack.c
index 1e0fe1f18d..96e3845088 100644
--- a/nptl/allocatestack.c
+++ b/nptl/allocatestack.c
@@ -242,11 +242,7 @@ get_cached_stack (size_t *sizep, void **memp)
/* Clear the DTV. */
dtv_t *dtv = GET_DTV (TLS_TPADJ (result));
- for (size_t cnt = 0; cnt < dtv[-1].counter; ++cnt)
- if (! dtv[1 + cnt].pointer.is_static
- && dtv[1 + cnt].pointer.val != TLS_DTV_UNALLOCATED)
- free (dtv[1 + cnt].pointer.val);
- memset (dtv, '\0', (dtv[-1].counter + 1) * sizeof (dtv_t));
+ _dl_clear_dtv (dtv);
/* Re-initialize the TLS. */
_dl_allocate_tls_init (TLS_TPADJ (result));
diff --git a/nptl/pthread_cond_broadcast.c b/nptl/pthread_cond_broadcast.c
index 0702ec0ec2..7ba9efa0c0 100644
--- a/nptl/pthread_cond_broadcast.c
+++ b/nptl/pthread_cond_broadcast.c
@@ -63,10 +63,7 @@ __pthread_cond_broadcast (cond)
#if (defined lll_futex_cmp_requeue_pi \
&& defined __ASSUME_REQUEUE_PI)
- int pi_flag = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_NP;
- pi_flag &= mut->__data.__kind;
-
- if (pi_flag == PTHREAD_MUTEX_PRIO_INHERIT_NP)
+ if (USE_REQUEUE_PI (mut))
{
if (lll_futex_cmp_requeue_pi (&cond->__data.__futex, 1, INT_MAX,
&mut->__data.__lock, futex_val,
diff --git a/nptl/pthread_cond_signal.c b/nptl/pthread_cond_signal.c
index 102d0b380c..ffc35dc9e1 100644
--- a/nptl/pthread_cond_signal.c
+++ b/nptl/pthread_cond_signal.c
@@ -49,14 +49,9 @@ __pthread_cond_signal (cond)
#if (defined lll_futex_cmp_requeue_pi \
&& defined __ASSUME_REQUEUE_PI)
- int pi_flag = PTHREAD_MUTEX_PRIO_INHERIT_NP | PTHREAD_MUTEX_ROBUST_NP;
pthread_mutex_t *mut = cond->__data.__mutex;
- /* Do not use requeue for pshared condvars. */
- if (mut != (void *) ~0l)
- pi_flag &= mut->__data.__kind;
-
- if (__builtin_expect (pi_flag == PTHREAD_MUTEX_PRIO_INHERIT_NP, 0)
+ if (USE_REQUEUE_PI (mut)
/* This can only really fail with a ENOSYS, since nobody can modify
futex while we have the cond_lock. */
&& lll_futex_cmp_requeue_pi (&cond->__data.__futex, 1, 0,
diff --git a/nptl/shlib-versions b/nptl/shlib-versions
index e49e7ca419..495b240a53 100644
--- a/nptl/shlib-versions
+++ b/nptl/shlib-versions
@@ -2,4 +2,5 @@ sparc64.*-.*-linux.* libpthread=0 GLIBC_2.2
sh.*-.*-linux.* libpthread=0 GLIBC_2.2
s390x-.*-linux.* libpthread=0 GLIBC_2.2
powerpc64-.*-linux.* libpthread=0 GLIBC_2.3
+powerpc.*le-.*-linux.* libpthread=0 GLIBC_2.18
.*-.*-linux.* libpthread=0
diff --git a/nptl/sysdeps/i386/tls.h b/nptl/sysdeps/i386/tls.h
index 3d18b1de73..9a56e21d52 100644
--- a/nptl/sysdeps/i386/tls.h
+++ b/nptl/sysdeps/i386/tls.h
@@ -56,7 +56,7 @@ typedef struct
#ifndef __ASSUME_PRIVATE_FUTEX
int private_futex;
#else
- int __unused1;
+ int __glibc_reserved1;
#endif
/* Reservation of some values for the TM ABI. */
void *__private_tm[4];
diff --git a/nptl/sysdeps/powerpc/tcb-offsets.sym b/nptl/sysdeps/powerpc/tcb-offsets.sym
index 8ac133dfd0..eac5b5c732 100644
--- a/nptl/sysdeps/powerpc/tcb-offsets.sym
+++ b/nptl/sysdeps/powerpc/tcb-offsets.sym
@@ -15,6 +15,9 @@ MULTIPLE_THREADS_OFFSET thread_offsetof (header.multiple_threads)
PID thread_offsetof (pid)
TID thread_offsetof (tid)
POINTER_GUARD (offsetof (tcbhead_t, pointer_guard) - TLS_TCB_OFFSET - sizeof (tcbhead_t))
+TAR_SAVE (offsetof (tcbhead_t, tar_save) - TLS_TCB_OFFSET - sizeof (tcbhead_t))
+DSO_SLOT1 (offsetof (tcbhead_t, dso_slot1) - TLS_TCB_OFFSET - sizeof (tcbhead_t))
+DSO_SLOT2 (offsetof (tcbhead_t, dso_slot2) - TLS_TCB_OFFSET - sizeof (tcbhead_t))
#ifndef __ASSUME_PRIVATE_FUTEX
PRIVATE_FUTEX_OFFSET thread_offsetof (header.private_futex)
#endif
diff --git a/nptl/sysdeps/powerpc/tls.h b/nptl/sysdeps/powerpc/tls.h
index 8e0ada6bfa..31329c74ee 100644
--- a/nptl/sysdeps/powerpc/tls.h
+++ b/nptl/sysdeps/powerpc/tls.h
@@ -61,6 +61,13 @@ typedef union dtv
are private. */
typedef struct
{
+ /* Reservation for Dynamic System Optimizer ABI. */
+ uintptr_t dso_slot2;
+ uintptr_t dso_slot1;
+ /* Reservation for tar register (ISA 2.07). */
+ uintptr_t tar_save;
+ /* GCC split stack support. */
+ void *__private_ss;
/* Reservation for the Event-Based Branching ABI. */
uintptr_t ebb_handler;
uintptr_t ebb_ctx_pointer;
diff --git a/nptl/sysdeps/pthread/bits/libc-lock.h b/nptl/sysdeps/pthread/bits/libc-lock.h
index b46bca9261..0b95ab7404 100644
--- a/nptl/sysdeps/pthread/bits/libc-lock.h
+++ b/nptl/sysdeps/pthread/bits/libc-lock.h
@@ -87,7 +87,7 @@ typedef struct __libc_lock_recursive_opaque__ __libc_lock_recursive_t;
# define __libc_lock_fini_recursive(NAME) ((void) 0)
#else
# define __libc_lock_fini_recursive(NAME) \
- __libc_maybe_call (__pthread_mutex_destroy, (&(NAME)), 0)
+ __libc_maybe_call (__pthread_mutex_destroy, (&(NAME).mutex), 0)
#endif
/* Lock the recursive named lock variable. */
@@ -129,7 +129,7 @@ typedef struct __libc_lock_recursive_opaque__ __libc_lock_recursive_t;
})
#else
# define __libc_lock_trylock_recursive(NAME) \
- __libc_maybe_call (__pthread_mutex_trylock, (&(NAME)), 0)
+ __libc_maybe_call (__pthread_mutex_trylock, (&(NAME).mutex), 0)
#endif
/* Unlock the recursive named lock variable. */
@@ -145,7 +145,7 @@ typedef struct __libc_lock_recursive_opaque__ __libc_lock_recursive_t;
} while (0)
#else
# define __libc_lock_unlock_recursive(NAME) \
- __libc_maybe_call (__pthread_mutex_unlock, (&(NAME)), 0)
+ __libc_maybe_call (__pthread_mutex_unlock, (&(NAME).mutex), 0)
#endif
/* Note that for I/O cleanup handling we are using the old-style
diff --git a/nptl/sysdeps/pthread/configure b/nptl/sysdeps/pthread/configure
index 7962ed6fcf..239a039e3a 100644
--- a/nptl/sysdeps/pthread/configure
+++ b/nptl/sysdeps/pthread/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
if test "x$libc_cv_gcc___thread" != xyes; then
as_fn_error $? "compiler support for __thread is required" "$LINENO" 5
diff --git a/nptl/sysdeps/pthread/configure.in b/nptl/sysdeps/pthread/configure.ac
index 413af96799..413af96799 100644
--- a/nptl/sysdeps/pthread/configure.in
+++ b/nptl/sysdeps/pthread/configure.ac
diff --git a/nptl/sysdeps/unix/sysv/linux/Makefile b/nptl/sysdeps/unix/sysv/linux/Makefile
index 6078e2ded1..9e0df9801b 100644
--- a/nptl/sysdeps/unix/sysv/linux/Makefile
+++ b/nptl/sysdeps/unix/sysv/linux/Makefile
@@ -26,6 +26,7 @@ gen-as-const-headers += lowlevelcond.sym lowlevelrwlock.sym \
lowlevelbarrier.sym unwindbuf.sym \
lowlevelrobustlock.sym pthread-pi-defines.sym \
structsem.sym
+tests += tst-setgetname
endif
ifeq ($(subdir),posix)
diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
index a6d6bc460a..b74e4b5419 100644
--- a/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
+++ b/nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S
@@ -505,9 +505,9 @@ __pthread_cond_timedwait:
#endif
call __lll_unlock_wake
jmp 11b
- cfi_adjust_cfa_offset(-FRAME_SIZE)
#ifndef __ASSUME_FUTEX_CLOCK_REALTIME
+ cfi_adjust_cfa_offset(-FRAME_SIZE)
.Lreltmo:
/* Get internal lock. */
movl $1, %edx
@@ -742,7 +742,6 @@ __pthread_cond_timedwait:
# endif
call __lll_lock_wait
jmp 106b
- cfi_adjust_cfa_offset(-FRAME_SIZE)
#endif
.size __pthread_cond_timedwait, .-__pthread_cond_timedwait
diff --git a/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h b/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
index 51e021df59..d711dc6cf1 100644
--- a/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
+++ b/nptl/sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h
@@ -31,6 +31,14 @@
# define DASHDASHPFX(str) __##str
# endif
+#if _CALL_ELF == 2
+#define CANCEL_FRAMESIZE (FRAME_MIN_SIZE+16+48)
+#define CANCEL_PARM_SAVE (FRAME_MIN_SIZE+16)
+#else
+#define CANCEL_FRAMESIZE (FRAME_MIN_SIZE+16)
+#define CANCEL_PARM_SAVE (CANCEL_FRAMESIZE+FRAME_PARM_SAVE)
+#endif
+
# undef PSEUDO
# define PSEUDO(name, syscall_name, args) \
.section ".text"; \
@@ -44,52 +52,52 @@
PSEUDO_RET; \
.size DASHDASHPFX(syscall_name##_nocancel),.-DASHDASHPFX(syscall_name##_nocancel); \
.Lpseudo_cancel: \
- stdu 1,-128(1); \
- cfi_adjust_cfa_offset (128); \
+ stdu 1,-CANCEL_FRAMESIZE(1); \
+ cfi_adjust_cfa_offset (CANCEL_FRAMESIZE); \
mflr 9; \
- std 9,128+16(1); \
- cfi_offset (lr, 16); \
+ std 9,CANCEL_FRAMESIZE+FRAME_LR_SAVE(1); \
+ cfi_offset (lr, FRAME_LR_SAVE); \
DOCARGS_##args; /* save syscall args around CENABLE. */ \
CENABLE; \
- std 3,112(1); /* store CENABLE return value (MASK). */ \
+ std 3,FRAME_MIN_SIZE(1); /* store CENABLE return value (MASK). */ \
UNDOCARGS_##args; /* restore syscall args. */ \
DO_CALL (SYS_ify (syscall_name)); \
mfcr 0; /* save CR/R3 around CDISABLE. */ \
- std 3,120(1); \
- std 0,128+8(1); \
- cfi_offset (cr, 8); \
- ld 3,112(1); /* pass MASK to CDISABLE. */ \
+ std 3,FRAME_MIN_SIZE+8(1); \
+ std 0,CANCEL_FRAMESIZE+FRAME_CR_SAVE(1); \
+ cfi_offset (cr, FRAME_CR_SAVE); \
+ ld 3,FRAME_MIN_SIZE(1); /* pass MASK to CDISABLE. */ \
CDISABLE; \
- ld 9,128+16(1); \
- ld 0,128+8(1); /* restore CR/R3. */ \
- ld 3,120(1); \
+ ld 9,CANCEL_FRAMESIZE+FRAME_LR_SAVE(1); \
+ ld 0,CANCEL_FRAMESIZE+FRAME_CR_SAVE(1); /* restore CR/R3. */ \
+ ld 3,FRAME_MIN_SIZE+8(1); \
mtlr 9; \
mtcr 0; \
- addi 1,1,128; \
- cfi_adjust_cfa_offset (-128); \
+ addi 1,1,CANCEL_FRAMESIZE; \
+ cfi_adjust_cfa_offset (-CANCEL_FRAMESIZE); \
cfi_restore (lr); \
cfi_restore (cr)
# define DOCARGS_0
# define UNDOCARGS_0
-# define DOCARGS_1 std 3,128+48(1); DOCARGS_0
-# define UNDOCARGS_1 ld 3,128+48(1); UNDOCARGS_0
+# define DOCARGS_1 std 3,CANCEL_PARM_SAVE(1); DOCARGS_0
+# define UNDOCARGS_1 ld 3,CANCEL_PARM_SAVE(1); UNDOCARGS_0
-# define DOCARGS_2 std 4,128+56(1); DOCARGS_1
-# define UNDOCARGS_2 ld 4,128+56(1); UNDOCARGS_1
+# define DOCARGS_2 std 4,CANCEL_PARM_SAVE+8(1); DOCARGS_1
+# define UNDOCARGS_2 ld 4,CANCEL_PARM_SAVE+8(1); UNDOCARGS_1
-# define DOCARGS_3 std 5,128+64(1); DOCARGS_2
-# define UNDOCARGS_3 ld 5,128+64(1); UNDOCARGS_2
+# define DOCARGS_3 std 5,CANCEL_PARM_SAVE+16(1); DOCARGS_2
+# define UNDOCARGS_3 ld 5,CANCEL_PARM_SAVE+16(1); UNDOCARGS_2
-# define DOCARGS_4 std 6,128+72(1); DOCARGS_3
-# define UNDOCARGS_4 ld 6,128+72(1); UNDOCARGS_3
+# define DOCARGS_4 std 6,CANCEL_PARM_SAVE+24(1); DOCARGS_3
+# define UNDOCARGS_4 ld 6,CANCEL_PARM_SAVE+24(1); UNDOCARGS_3
-# define DOCARGS_5 std 7,128+80(1); DOCARGS_4
-# define UNDOCARGS_5 ld 7,128+80(1); UNDOCARGS_4
+# define DOCARGS_5 std 7,CANCEL_PARM_SAVE+32(1); DOCARGS_4
+# define UNDOCARGS_5 ld 7,CANCEL_PARM_SAVE+32(1); UNDOCARGS_4
-# define DOCARGS_6 std 8,128+88(1); DOCARGS_5
-# define UNDOCARGS_6 ld 8,128+88(1); UNDOCARGS_5
+# define DOCARGS_6 std 8,CANCEL_PARM_SAVE+40(1); DOCARGS_5
+# define UNDOCARGS_6 ld 8,CANCEL_PARM_SAVE+40(1); UNDOCARGS_5
# ifdef IS_IN_libpthread
# ifdef SHARED
diff --git a/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c b/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c
index ace858fd13..4ac913c3be 100644
--- a/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c
+++ b/nptl/sysdeps/unix/sysv/linux/powerpc/pt-longjmp.c
@@ -41,13 +41,8 @@ void __novmx_longjmp (jmp_buf env, int val)
__novmx__libc_longjmp (env, val);
}
-# if __WORDSIZE == 64
-symbol_version (__novmx_longjmp,longjmp,GLIBC_2.3);
-symbol_version (__novmx_siglongjmp,siglongjmp,GLIBC_2.3);
-# else
-symbol_version (__novmx_longjmp,longjmp,GLIBC_2.0);
-symbol_version (__novmx_siglongjmp,siglongjmp,GLIBC_2.0);
-# endif
+compat_symbol (libpthread, __novmx_longjmp, longjmp, GLIBC_2_0);
+compat_symbol (libpthread, __novmx_siglongjmp, siglongjmp, GLIBC_2_0);
#endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)) */
void
@@ -62,5 +57,5 @@ __vmx_siglongjmp (jmp_buf env, int val)
__libc_siglongjmp (env, val);
}
-versioned_symbol (libc, __vmx_longjmp, longjmp, GLIBC_2_3_4);
-versioned_symbol (libc, __vmx_siglongjmp, siglongjmp, GLIBC_2_3_4);
+versioned_symbol (libpthread, __vmx_longjmp, longjmp, GLIBC_2_3_4);
+versioned_symbol (libpthread, __vmx_siglongjmp, siglongjmp, GLIBC_2_3_4);
diff --git a/nptl/sysdeps/unix/sysv/linux/tst-setgetname.c b/nptl/sysdeps/unix/sysv/linux/tst-setgetname.c
new file mode 100644
index 0000000000..d80bf01a7b
--- /dev/null
+++ b/nptl/sysdeps/unix/sysv/linux/tst-setgetname.c
@@ -0,0 +1,301 @@
+/* Test pthread_setname_np and pthread_getname_np.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+#include <stdio.h>
+#include <stdlib.h>
+#include <pthread.h>
+#include <string.h>
+#include <sys/syscall.h>
+#include <unistd.h>
+#include <fcntl.h>
+#include <errno.h>
+
+/* New name of process. */
+#define NEW_NAME "setname"
+
+/* Name of process which is one byte too big
+ e.g. 17 bytes including null-terminator */
+#define BIG_NAME "....V....X....XV"
+
+/* Longest name of a process
+ e.g. 16 bytes including null-terminator. */
+#define LONGEST_NAME "....V....X....X"
+
+/* One less than longest name with unique
+ characters to detect modification. */
+#define CANARY_NAME "abcdefghijklmn"
+
+/* On Linux the maximum length of the name of a task *including* the null
+ terminator. */
+#define TASK_COMM_LEN 16
+
+long
+gettid (void)
+{
+ return syscall(__NR_gettid);
+}
+
+/* On Linux we can read this task's name from /proc. */
+int
+get_self_comm (long tid, char *buf, size_t len)
+{
+ int res = 0;
+#define FMT "/proc/self/task/%lu/comm"
+ char fname[sizeof (FMT) + 8];
+ sprintf (fname, FMT, (unsigned long) tid);
+
+ int fd = open (fname, O_RDONLY);
+ if (fd == -1)
+ return errno;
+
+ ssize_t n = read (fd, (void *) buf, len);
+ if (n < 0)
+ res = errno;
+ else
+ {
+ if (buf[n - 1] == '\n')
+ buf[n - 1] = '\0';
+ else if (n == len)
+ res = ERANGE;
+ else
+ buf[n] = '\0';
+ }
+
+ close (fd);
+ return res;
+}
+
+int
+do_test (int argc, char **argv)
+{
+ pthread_t self;
+ int res;
+ int ret = 0;
+ char name[TASK_COMM_LEN];
+ char name_check[TASK_COMM_LEN];
+
+ memset (name, '\0', TASK_COMM_LEN);
+ memset (name_check, '\0', TASK_COMM_LEN);
+
+ /* Test 1: Get the name of the task via pthread_getname_np and /proc
+ and verify that they both match. */
+ self = pthread_self ();
+ res = pthread_getname_np (self, name, TASK_COMM_LEN);
+
+ if (res == 0)
+ {
+ res = get_self_comm (gettid (), name_check, TASK_COMM_LEN);
+ if (res == 0)
+ {
+ if (strncmp (name, name_check, strlen (BIG_NAME)) == 0)
+ printf ("PASS: Test 1 - pthread_getname_np and /proc agree.\n");
+ else
+ {
+ printf ("FAIL: Test 1 - pthread_getname_np and /proc differ"
+ " i.e. %s != %s\n", name, name_check);
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 1 - unable read task name via proc.\n");
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 1 - pthread_getname_np failed with error %d\n", res);
+ ret++;
+ }
+
+ /* Test 2: Test setting the name and then independently verify it
+ was set. */
+ res = pthread_setname_np (self, NEW_NAME);
+
+ if (res == 0)
+ {
+ res = get_self_comm (gettid (), name_check, TASK_COMM_LEN);
+ if (res == 0)
+ {
+ if (strncmp (NEW_NAME, name_check, strlen (BIG_NAME)) == 0)
+ printf ("PASS: Test 2 - Value used in pthread_setname_np and"
+ " /proc agree.\n");
+ else
+ {
+ printf ("FAIL: Test 2 - Value used in pthread_setname_np"
+ " and /proc differ i.e. %s != %s\n",
+ NEW_NAME, name_check);
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 2 - unable to read task name via proc.\n");
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 2 - pthread_setname_np failed with error %d\n", res);
+ ret++;
+ }
+
+ /* Test 3: Test setting a name that is one-byte too big. */
+ res = pthread_getname_np (self, name, TASK_COMM_LEN);
+
+ if (res == 0)
+ {
+ res = pthread_setname_np (self, BIG_NAME);
+ if (res != 0)
+ {
+ if (res == ERANGE)
+ {
+ printf ("PASS: Test 3 - pthread_setname_np returned ERANGE"
+ " for a process name that was too long.\n");
+
+ /* Verify the old name didn't change. */
+ res = get_self_comm (gettid (), name_check, TASK_COMM_LEN);
+ if (res == 0)
+ {
+ if (strncmp (name, name_check, strlen (BIG_NAME)) == 0)
+ printf ("PASS: Test 3 - Original name unchanged after"
+ " pthread_setname_np returned ERANGE.\n");
+ else
+ {
+ printf ("FAIL: Test 3 - Original name changed after"
+ " pthread_setname_np returned ERANGE"
+ " i.e. %s != %s\n",
+ name, name_check);
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 3 - unable to read task name.\n");
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 3 - Wrong error returned"
+ " i.e. ERANGE != %d\n", res);
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 3 - Too-long name accepted by"
+ " pthread_setname_np.\n");
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 3 - Unable to get original name.\n");
+ ret++;
+ }
+
+ /* Test 4: Verify that setting the longest name works. */
+ res = pthread_setname_np (self, LONGEST_NAME);
+
+ if (res == 0)
+ {
+ res = get_self_comm (gettid (), name_check, TASK_COMM_LEN);
+ if (res == 0)
+ {
+ if (strncmp (LONGEST_NAME, name_check, strlen (BIG_NAME)) == 0)
+ printf ("PASS: Test 4 - Longest name set via pthread_setname_np"
+ " agrees with /proc.\n");
+ else
+ {
+ printf ("FAIL: Test 4 - Value used in pthread_setname_np and /proc"
+ " differ i.e. %s != %s\n", LONGEST_NAME, name_check);
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 4 - unable to read task name via proc.\n");
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 4 - pthread_setname_np failed with error %d\n", res);
+ ret++;
+ }
+
+ /* Test 5: Verify that getting a long name into a small buffer fails. */
+ strncpy (name, CANARY_NAME, strlen (CANARY_NAME) + 1);
+
+ /* Claim the buffer length is strlen (LONGEST_NAME). This is one character
+ too small to hold LONGEST_NAME *and* the null terminator. We should get
+ back ERANGE and name should be unmodified. */
+ res = pthread_getname_np (self, name, strlen (LONGEST_NAME));
+
+ if (res != 0)
+ {
+ if (res == ERANGE)
+ {
+ if (strncmp (CANARY_NAME, name, strlen (BIG_NAME)) == 0)
+ {
+ printf ("PASS: Test 5 - ERANGE and buffer unmodified.\n");
+ }
+ else
+ {
+ printf ("FAIL: Test 5 - Original buffer modified.\n");
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 5 - Did not return ERANGE for small buffer.\n");
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 5 - Returned name longer than buffer.\n");
+ ret++;
+ }
+
+ /* Test 6: Lastly make sure we can read back the longest name. */
+ res = pthread_getname_np (self, name, strlen (LONGEST_NAME) + 1);
+
+ if (res == 0)
+ {
+ if (strncmp (LONGEST_NAME, name, strlen (BIG_NAME)) == 0)
+ {
+ printf ("PASS: Test 6 - Read back longest name correctly.\n");
+ }
+ else
+ {
+ printf ("FAIL: Test 6 - Read \"%s\" instead of longest name.\n",
+ name);
+ ret++;
+ }
+ }
+ else
+ {
+ printf ("FAIL: Test 6 - pthread_getname_np failed with error %d\n", res);
+ ret++;
+ }
+
+ return ret;
+}
+
+#include <test-skeleton.c>
diff --git a/nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S b/nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S
index 2cc84c189b..b4e4dcf90c 100644
--- a/nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S
+++ b/nptl/sysdeps/unix/sysv/linux/x86_64/cancellation.S
@@ -22,7 +22,7 @@
#include "lowlevellock.h"
#ifdef IS_IN_libpthread
-# if defined SHARED && defined DO_VERSIONING && !defined NO_HIDDEN
+# if defined SHARED && !defined NO_HIDDEN
# define __pthread_unwind __GI___pthread_unwind
# endif
#else
diff --git a/nptl/sysdeps/x86_64/configure b/nptl/sysdeps/x86_64/configure
index 8e5bcacafd..c9dea5a7a1 100644
--- a/nptl/sysdeps/x86_64/configure
+++ b/nptl/sysdeps/x86_64/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/i386.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for .cfi_personality and .cfi_lsda pseudo-ops" >&5
diff --git a/nptl/sysdeps/x86_64/configure.in b/nptl/sysdeps/x86_64/configure.ac
index 0ba0cc3726..0ba0cc3726 100644
--- a/nptl/sysdeps/x86_64/configure.in
+++ b/nptl/sysdeps/x86_64/configure.ac
diff --git a/nptl/sysdeps/x86_64/tls.h b/nptl/sysdeps/x86_64/tls.h
index 61df1af2b0..d6350fdf4a 100644
--- a/nptl/sysdeps/x86_64/tls.h
+++ b/nptl/sysdeps/x86_64/tls.h
@@ -65,14 +65,14 @@ typedef struct
# ifndef __ASSUME_PRIVATE_FUTEX
int private_futex;
# else
- int __unused1;
+ int __glibc_reserved1;
# endif
int rtld_must_xmm_save;
/* Reservation of some values for the TM ABI. */
void *__private_tm[4];
/* GCC split stack support. */
void *__private_ss;
- long int __unused2;
+ long int __glibc_reserved2;
/* Have space for the post-AVX register size. */
__128bits rtld_savespace_sse[8][4] __attribute__ ((aligned (32)));
diff --git a/nptl/tst-cleanup2.c b/nptl/tst-cleanup2.c
index 5bd16095a6..65af0f2018 100644
--- a/nptl/tst-cleanup2.c
+++ b/nptl/tst-cleanup2.c
@@ -34,6 +34,12 @@ static int
do_test (void)
{
char *p = NULL;
+ /* gcc can overwrite the success written value by scheduling instructions
+ around sprintf. It is allowed to do this since according to C99 the first
+ argument of sprintf is a character array and NULL is not a valid character
+ array. Mark the return value as volatile so that it gets reloaded on
+ return. */
+ volatile int ret = 0;
struct sigaction sa;
sa.sa_handler = sig_handler;
@@ -50,7 +56,7 @@ do_test (void)
if (setjmp (jmpbuf))
{
puts ("Exiting main...");
- return 0;
+ return ret;
}
sprintf (p, "This should segv\n");
diff --git a/nptl/tst-mutex8.c b/nptl/tst-mutex8.c
index d2307e47e7..c3d40faabe 100644
--- a/nptl/tst-mutex8.c
+++ b/nptl/tst-mutex8.c
@@ -93,10 +93,18 @@ tf (void *arg)
static int
check_type (const char *mas, pthread_mutexattr_t *ma)
{
- int e __attribute__((unused));
+ int e;
- if (pthread_mutex_init (m, ma) != 0)
+ e = pthread_mutex_init (m, ma);
+ if (e != 0)
{
+#ifdef ENABLE_PI
+ if (e == ENOTSUP)
+ {
+ puts ("PI mutexes unsupported");
+ return 0;
+ }
+#endif
printf ("1st mutex_init failed for %s\n", mas);
return 1;
}
diff --git a/nscd/Makefile b/nscd/Makefile
index 7b36cc9820..b8498da886 100644
--- a/nscd/Makefile
+++ b/nscd/Makefile
@@ -60,7 +60,7 @@ endif
nscd-modules += selinux
selinux-LIBS := -lselinux $(libaudit) $(libcap)
-# The configure.in check for libselinux and its headers did not use
+# The configure.ac check for libselinux and its headers did not use
# $SYSINCLUDES. The directory specified by --with-headers usually
# contains only the basic kernel interface headers, not something like
# libselinux. So the simplest thing is to presume that the standard
diff --git a/nscd/aicache.c b/nscd/aicache.c
index fd55852ed8..713e41a2e8 100644
--- a/nscd/aicache.c
+++ b/nscd/aicache.c
@@ -86,20 +86,19 @@ addhstaiX (struct database_dyn *db, int fd, request_header *req,
}
static service_user *hosts_database;
- service_user *nip = NULL;
+ service_user *nip;
int no_more;
int rc6 = 0;
int rc4 = 0;
int herrno = 0;
- if (hosts_database != NULL)
- {
- nip = hosts_database;
- no_more = 0;
- }
- else
+ if (hosts_database == NULL)
no_more = __nss_database_lookup ("hosts", NULL,
- "dns [!UNAVAIL=return] files", &nip);
+ "dns [!UNAVAIL=return] files",
+ &hosts_database);
+ else
+ no_more = 0;
+ nip = hosts_database;
/* Initialize configurations. */
if (__glibc_unlikely (!_res_hconf.initialized))
diff --git a/nscd/initgrcache.c b/nscd/initgrcache.c
index 462780e624..4580884ead 100644
--- a/nscd/initgrcache.c
+++ b/nscd/initgrcache.c
@@ -80,17 +80,16 @@ addinitgroupsX (struct database_dyn *db, int fd, request_header *req,
}
static service_user *group_database;
- service_user *nip = NULL;
+ service_user *nip;
int no_more;
- if (group_database != NULL)
- {
- nip = group_database;
- no_more = 0;
- }
- else
+ if (group_database == NULL)
no_more = __nss_database_lookup ("group", NULL,
- "compat [NOTFOUND=return] files", &nip);
+ "compat [NOTFOUND=return] files",
+ &group_database);
+ else
+ no_more = 0;
+ nip = group_database;
/* We always use sysconf even if NGROUPS_MAX is defined. That way, the
limit can be raised in the kernel configuration without having to
diff --git a/nscd/netgroupcache.c b/nscd/netgroupcache.c
index dd06ce4fae..a607dda0a5 100644
--- a/nscd/netgroupcache.c
+++ b/nscd/netgroupcache.c
@@ -591,10 +591,10 @@ addinnetgrX (struct database_dyn *db, int fd, request_header *req,
# endif
}
else
+#endif
{
-# ifndef __ASSUME_SENDFILE
+#if defined HAVE_SENDFILE && !defined __ASSUME_SENDFILE
use_write:
-# endif
#endif
writeall (fd, &dataset->resp, sizeof (innetgroup_response_header));
}
diff --git a/nscd/nscd.service b/nscd/nscd.service
new file mode 100644
index 0000000000..99c7563990
--- /dev/null
+++ b/nscd/nscd.service
@@ -0,0 +1,18 @@
+# systemd service file for nscd
+
+[Unit]
+Description=Name Service Cache Daemon
+
+[Service]
+Type=simple
+ExecStart=/usr/sbin/nscd --foreground
+ExecStop=/usr/sbin/nscd --shutdown
+ExecReload=/usr/sbin/nscd -i passwd
+ExecReload=/usr/sbin/nscd -i group
+ExecReload=/usr/sbin/nscd -i hosts
+ExecReload=/usr/sbin/nscd -i services
+Restart=always
+PIDFile=/run/nscd/nscd.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/nscd/nscd.tmpfiles b/nscd/nscd.tmpfiles
new file mode 100644
index 0000000000..52edbba673
--- /dev/null
+++ b/nscd/nscd.tmpfiles
@@ -0,0 +1,4 @@
+# Configuration to create /run/nscd directory
+# Used as part of systemd's tmpfiles
+
+d /run/nscd 0755 root root
diff --git a/nscd/nscd_getserv_r.c b/nscd/nscd_getserv_r.c
index c9c890c63c..772825854d 100644
--- a/nscd/nscd_getserv_r.c
+++ b/nscd/nscd_getserv_r.c
@@ -54,7 +54,7 @@ __nscd_getservbyport_r (int port, const char *proto,
portstr[sizeof (portstr) - 1] = '\0';
char *cp = _itoa_word (port, portstr + sizeof (portstr) - 1, 10, 0);
- return nscd_getserv_r (cp, portstr + sizeof (portstr) - cp, proto,
+ return nscd_getserv_r (cp, portstr + sizeof (portstr) - 1 - cp, proto,
GETSERVBYPORT, result_buf, buf, buflen, result);
}
diff --git a/nss/Versions b/nss/Versions
index d13d570079..f8ababccc7 100644
--- a/nss/Versions
+++ b/nss/Versions
@@ -40,6 +40,7 @@ libnss_files {
_nss_files_endhostent;
_nss_files_gethostbyaddr_r;
_nss_files_gethostbyname2_r;
+ _nss_files_gethostbyname3_r;
_nss_files_gethostbyname4_r;
_nss_files_gethostbyname_r;
_nss_files_gethostent_r;
diff --git a/nss/getent.c b/nss/getent.c
index 8a3c864501..05ea80825a 100644
--- a/nss/getent.c
+++ b/nss/getent.c
@@ -788,8 +788,12 @@ services_keys (int number, char *key[])
if (proto != NULL)
*proto++ = '\0';
- if (isdigit (key[i][0]))
- serv = getservbyport (htons (atol (key[i])), proto);
+ char *endptr;
+ long port = strtol (key[i], &endptr, 10);
+
+ if (isdigit (key[i][0]) && *endptr == '\0'
+ && 0 <= port && port <= 65535)
+ serv = getservbyport (htons (port), proto);
else
serv = getservbyname (key[i], proto);
diff --git a/nss/nss_files/files-XXX.c b/nss/nss_files/files-XXX.c
index 082d1ea2b7..b62208c324 100644
--- a/nss/nss_files/files-XXX.c
+++ b/nss/nss_files/files-XXX.c
@@ -179,8 +179,51 @@ CONCAT(_nss_files_end,ENTNAME) (void)
return NSS_STATUS_SUCCESS;
}
-/* Parsing the database file into `struct STRUCTURE' data structures. */
+typedef enum
+{
+ gcr_ok = 0,
+ gcr_error = -1,
+ gcr_overflow = -2
+} get_contents_ret;
+
+/* Hack around the fact that fgets only accepts int sizes. */
+static get_contents_ret
+get_contents (char *linebuf, size_t len, FILE *stream)
+{
+ size_t remaining_len = len;
+ char *curbuf = linebuf;
+
+ do
+ {
+ int curlen = ((remaining_len > (size_t) INT_MAX) ? INT_MAX
+ : remaining_len);
+ char *p = fgets_unlocked (curbuf, curlen, stream);
+
+ ((unsigned char *) curbuf)[curlen - 1] = 0xff;
+
+ /* EOF or read error. */
+ if (p == NULL)
+ return gcr_error;
+
+ /* Done reading in the line. */
+ if (((unsigned char *) curbuf)[curlen - 1] == 0xff)
+ return gcr_ok;
+
+ /* Drop the terminating '\0'. */
+ remaining_len -= curlen - 1;
+ curbuf += curlen - 1;
+ }
+ /* fgets copies one less than the input length. Our last iteration is of
+ REMAINING_LEN and once that is done, REMAINING_LEN is decremented by
+ REMAINING_LEN - 1, leaving the result as 1. */
+ while (remaining_len > 1);
+
+ /* This means that the current buffer was not large enough. */
+ return gcr_overflow;
+}
+
+/* Parsing the database file into `struct STRUCTURE' data structures. */
static enum nss_status
internal_getent (struct STRUCTURE *result,
char *buffer, size_t buflen, int *errnop H_ERRNO_PROTO
@@ -188,7 +231,7 @@ internal_getent (struct STRUCTURE *result,
{
char *p;
struct parser_data *data = (void *) buffer;
- int linebuflen = buffer + buflen - data->linebuffer;
+ size_t linebuflen = buffer + buflen - data->linebuffer;
int parse_result;
if (buflen < sizeof *data + 2)
@@ -200,17 +243,16 @@ internal_getent (struct STRUCTURE *result,
do
{
- /* Terminate the line so that we can test for overflow. */
- ((unsigned char *) data->linebuffer)[linebuflen - 1] = '\xff';
+ get_contents_ret r = get_contents (data->linebuffer, linebuflen, stream);
- p = fgets_unlocked (data->linebuffer, linebuflen, stream);
- if (p == NULL)
+ if (r == gcr_error)
{
/* End of file or read error. */
H_ERRNO_SET (HOST_NOT_FOUND);
return NSS_STATUS_NOTFOUND;
}
- else if (((unsigned char *) data->linebuffer)[linebuflen - 1] != 0xff)
+
+ if (r == gcr_overflow)
{
/* The line is too long. Give the user the opportunity to
enlarge the buffer. */
@@ -219,7 +261,8 @@ internal_getent (struct STRUCTURE *result,
return NSS_STATUS_TRYAGAIN;
}
- /* Skip leading blanks. */
+ /* Everything OK. Now skip leading blanks. */
+ p = data->linebuffer;
while (isspace (*p))
++p;
}
diff --git a/nss/nss_files/files-hosts.c b/nss/nss_files/files-hosts.c
index 6db2535159..cfec75da76 100644
--- a/nss/nss_files/files-hosts.c
+++ b/nss/nss_files/files-hosts.c
@@ -97,262 +97,12 @@ LINE_PARSER
STRING_FIELD (result->h_name, isspace, 1);
})
-
-
-#define HOST_DB_LOOKUP(name, keysize, keypattern, break_if_match, proto...) \
-enum nss_status \
-_nss_files_get##name##_r (proto, \
- struct STRUCTURE *result, char *buffer, \
- size_t buflen, int *errnop H_ERRNO_PROTO) \
-{ \
- uintptr_t pad = -(uintptr_t) buffer % __alignof__ (struct hostent_data); \
- buffer += pad; \
- buflen = buflen > pad ? buflen - pad : 0; \
- \
- __libc_lock_lock (lock); \
- \
- /* Reset file pointer to beginning or open file. */ \
- enum nss_status status = internal_setent (keep_stream); \
- \
- if (status == NSS_STATUS_SUCCESS) \
- { \
- /* Tell getent function that we have repositioned the file pointer. */ \
- last_use = getby; \
- \
- while ((status = internal_getent (result, buffer, buflen, errnop \
- H_ERRNO_ARG EXTRA_ARGS_VALUE)) \
- == NSS_STATUS_SUCCESS) \
- { break_if_match } \
- \
- if (status == NSS_STATUS_SUCCESS \
- && _res_hconf.flags & HCONF_FLAG_MULTI) \
- { \
- /* We have to get all host entries from the file. */ \
- size_t tmp_buflen = MIN (buflen, 4096); \
- char tmp_buffer_stack[tmp_buflen] \
- __attribute__ ((__aligned__ (__alignof__ (struct hostent_data))));\
- char *tmp_buffer = tmp_buffer_stack; \
- struct hostent tmp_result_buf; \
- int naddrs = 1; \
- int naliases = 0; \
- char *bufferend; \
- bool tmp_buffer_malloced = false; \
- \
- while (result->h_aliases[naliases] != NULL) \
- ++naliases; \
- \
- bufferend = (char *) &result->h_aliases[naliases + 1]; \
- \
- again: \
- while ((status = internal_getent (&tmp_result_buf, tmp_buffer, \
- tmp_buflen, errnop H_ERRNO_ARG \
- EXTRA_ARGS_VALUE)) \
- == NSS_STATUS_SUCCESS) \
- { \
- int matches = 1; \
- struct hostent *old_result = result; \
- result = &tmp_result_buf; \
- /* The following piece is a bit clumsy but we want to use the \
- `break_if_match' value. The optimizer should do its \
- job. */ \
- do \
- { \
- break_if_match \
- result = old_result; \
- } \
- while ((matches = 0)); \
- \
- if (matches) \
- { \
- /* We could be very clever and try to recycle a few bytes \
- in the buffer instead of generating new arrays. But \
- we are not doing this here since it's more work than \
- it's worth. Simply let the user provide a bit bigger \
- buffer. */ \
- char **new_h_addr_list; \
- char **new_h_aliases; \
- int newaliases = 0; \
- size_t newstrlen = 0; \
- int cnt; \
- \
- /* Count the new aliases and the length of the strings. */ \
- while (tmp_result_buf.h_aliases[newaliases] != NULL) \
- { \
- char *cp = tmp_result_buf.h_aliases[newaliases]; \
- ++newaliases; \
- newstrlen += strlen (cp) + 1; \
- } \
- /* If the real name is different add it also to the \
- aliases. This means that there is a duplication \
- in the alias list but this is really the user's \
- problem. */ \
- if (strcmp (old_result->h_name, \
- tmp_result_buf.h_name) != 0) \
- { \
- ++newaliases; \
- newstrlen += strlen (tmp_result_buf.h_name) + 1; \
- } \
- \
- /* Make sure bufferend is aligned. */ \
- assert ((bufferend - (char *) 0) % sizeof (char *) == 0); \
- \
- /* Now we can check whether the buffer is large enough. \
- 16 is the maximal size of the IP address. */ \
- if (bufferend + 16 + (naddrs + 2) * sizeof (char *) \
- + roundup (newstrlen, sizeof (char *)) \
- + (naliases + newaliases + 1) * sizeof (char *) \
- >= buffer + buflen) \
- { \
- *errnop = ERANGE; \
- *herrnop = NETDB_INTERNAL; \
- status = NSS_STATUS_TRYAGAIN; \
- goto out; \
- } \
- \
- new_h_addr_list = \
- (char **) (bufferend \
- + roundup (newstrlen, sizeof (char *)) \
- + 16); \
- new_h_aliases = \
- (char **) ((char *) new_h_addr_list \
- + (naddrs + 2) * sizeof (char *)); \
- \
- /* Copy the old data in the new arrays. */ \
- for (cnt = 0; cnt < naddrs; ++cnt) \
- new_h_addr_list[cnt] = old_result->h_addr_list[cnt]; \
- \
- for (cnt = 0; cnt < naliases; ++cnt) \
- new_h_aliases[cnt] = old_result->h_aliases[cnt]; \
- \
- /* Store the new strings. */ \
- cnt = 0; \
- while (tmp_result_buf.h_aliases[cnt] != NULL) \
- { \
- new_h_aliases[naliases++] = bufferend; \
- bufferend = (__stpcpy (bufferend, \
- tmp_result_buf.h_aliases[cnt]) \
- + 1); \
- ++cnt; \
- } \
- \
- if (cnt < newaliases) \
- { \
- new_h_aliases[naliases++] = bufferend; \
- bufferend = __stpcpy (bufferend, \
- tmp_result_buf.h_name) + 1; \
- } \
- \
- /* Final NULL pointer. */ \
- new_h_aliases[naliases] = NULL; \
- \
- /* Round up the buffer end address. */ \
- bufferend += (sizeof (char *) \
- - ((bufferend - (char *) 0) \
- % sizeof (char *))) % sizeof (char *); \
- \
- /* Now the new address. */ \
- new_h_addr_list[naddrs++] = \
- memcpy (bufferend, tmp_result_buf.h_addr, \
- tmp_result_buf.h_length); \
- \
- /* Also here a final NULL pointer. */ \
- new_h_addr_list[naddrs] = NULL; \
- \
- /* Store the new array pointers. */ \
- old_result->h_aliases = new_h_aliases; \
- old_result->h_addr_list = new_h_addr_list; \
- \
- /* Compute the new buffer end. */ \
- bufferend = (char *) &new_h_aliases[naliases + 1]; \
- assert (bufferend <= buffer + buflen); \
- \
- result = old_result; \
- } \
- } \
- \
- if (status == NSS_STATUS_TRYAGAIN) \
- { \
- size_t newsize = 2 * tmp_buflen; \
- if (tmp_buffer_malloced) \
- { \
- char *newp = realloc (tmp_buffer, newsize); \
- if (newp != NULL) \
- { \
- assert ((((uintptr_t) newp) \
- & (__alignof__ (struct hostent_data) - 1)) \
- == 0); \
- tmp_buffer = newp; \
- tmp_buflen = newsize; \
- goto again; \
- } \
- } \
- else if (!__libc_use_alloca (buflen + newsize)) \
- { \
- tmp_buffer = malloc (newsize); \
- if (tmp_buffer != NULL) \
- { \
- assert ((((uintptr_t) tmp_buffer) \
- & (__alignof__ (struct hostent_data) - 1)) \
- == 0); \
- tmp_buffer_malloced = true; \
- tmp_buflen = newsize; \
- goto again; \
- } \
- } \
- else \
- { \
- tmp_buffer \
- = extend_alloca (tmp_buffer, tmp_buflen, \
- newsize \
- + __alignof__ (struct hostent_data)); \
- tmp_buffer = (char *) (((uintptr_t) tmp_buffer \
- + __alignof__ (struct hostent_data) \
- - 1) \
- & ~(__alignof__ (struct hostent_data)\
- - 1)); \
- goto again; \
- } \
- } \
- else \
- status = NSS_STATUS_SUCCESS; \
- out: \
- if (tmp_buffer_malloced) \
- free (tmp_buffer); \
- } \
- \
- \
- if (! keep_stream) \
- internal_endent (); \
- } \
- \
- __libc_lock_unlock (lock); \
- \
- return status; \
-}
-
-
#define EXTRA_ARGS_VALUE \
, ((_res.options & RES_USE_INET6) ? AF_INET6 : AF_INET), \
((_res.options & RES_USE_INET6) ? AI_V4MAPPED : 0)
#include "files-XXX.c"
-HOST_DB_LOOKUP (hostbyname, ,,
- {
- LOOKUP_NAME_CASE (h_name, h_aliases)
- }, const char *name)
#undef EXTRA_ARGS_VALUE
-
-/* XXX Is using _res to determine whether we want to convert IPv4 addresses
- to IPv6 addresses really the right thing to do? */
-#define EXTRA_ARGS_VALUE \
- , af, ((_res.options & RES_USE_INET6) ? AI_V4MAPPED : 0)
-HOST_DB_LOOKUP (hostbyname2, ,,
- {
- LOOKUP_NAME_CASE (h_name, h_aliases)
- }, const char *name, int af)
-#undef EXTRA_ARGS_VALUE
-
-
/* We only need to consider IPv4 mapped addresses if the input to the
gethostbyaddr() function is an IPv6 address. */
#define EXTRA_ARGS_VALUE \
@@ -365,6 +115,263 @@ DB_LOOKUP (hostbyaddr, ,,,
}, const void *addr, socklen_t len, int af)
#undef EXTRA_ARGS_VALUE
+enum nss_status
+_nss_files_gethostbyname3_r (const char *name, int af, struct hostent *result,
+ char *buffer, size_t buflen, int *errnop,
+ int *herrnop, int32_t *ttlp, char **canonp)
+{
+ uintptr_t pad = -(uintptr_t) buffer % __alignof__ (struct hostent_data);
+ buffer += pad;
+ buflen = buflen > pad ? buflen - pad : 0;
+
+ __libc_lock_lock (lock);
+
+ /* Reset file pointer to beginning or open file. */
+ enum nss_status status = internal_setent (keep_stream);
+
+ if (status == NSS_STATUS_SUCCESS)
+ {
+ /* XXX Is using _res to determine whether we want to convert IPv4
+ addresses to IPv6 addresses really the right thing to do? */
+ int flags = ((_res.options & RES_USE_INET6) ? AI_V4MAPPED : 0);
+
+ /* Tell getent function that we have repositioned the file pointer. */
+ last_use = getby;
+
+ while ((status = internal_getent (result, buffer, buflen, errnop,
+ herrnop, af, flags))
+ == NSS_STATUS_SUCCESS)
+ {
+ LOOKUP_NAME_CASE (h_name, h_aliases)
+ }
+
+ if (status == NSS_STATUS_SUCCESS
+ && _res_hconf.flags & HCONF_FLAG_MULTI)
+ {
+ /* We have to get all host entries from the file. */
+ size_t tmp_buflen = MIN (buflen, 4096);
+ char tmp_buffer_stack[tmp_buflen]
+ __attribute__ ((__aligned__ (__alignof__ (struct hostent_data))));
+ char *tmp_buffer = tmp_buffer_stack;
+ struct hostent tmp_result_buf;
+ int naddrs = 1;
+ int naliases = 0;
+ char *bufferend;
+ bool tmp_buffer_malloced = false;
+
+ while (result->h_aliases[naliases] != NULL)
+ ++naliases;
+
+ bufferend = (char *) &result->h_aliases[naliases + 1];
+
+ again:
+ while ((status = internal_getent (&tmp_result_buf, tmp_buffer,
+ tmp_buflen, errnop, herrnop, af,
+ flags))
+ == NSS_STATUS_SUCCESS)
+ {
+ int matches = 1;
+ struct hostent *old_result = result;
+ result = &tmp_result_buf;
+ /* The following piece is a bit clumsy but we want to use the
+ `LOOKUP_NAME_CASE' value. The optimizer should do its
+ job. */
+ do
+ {
+ LOOKUP_NAME_CASE (h_name, h_aliases)
+ result = old_result;
+ }
+ while ((matches = 0));
+
+ if (matches)
+ {
+ /* We could be very clever and try to recycle a few bytes
+ in the buffer instead of generating new arrays. But
+ we are not doing this here since it's more work than
+ it's worth. Simply let the user provide a bit bigger
+ buffer. */
+ char **new_h_addr_list;
+ char **new_h_aliases;
+ int newaliases = 0;
+ size_t newstrlen = 0;
+ int cnt;
+
+ /* Count the new aliases and the length of the strings. */
+ while (tmp_result_buf.h_aliases[newaliases] != NULL)
+ {
+ char *cp = tmp_result_buf.h_aliases[newaliases];
+ ++newaliases;
+ newstrlen += strlen (cp) + 1;
+ }
+ /* If the real name is different add it also to the
+ aliases. This means that there is a duplication
+ in the alias list but this is really the user's
+ problem. */
+ if (strcmp (old_result->h_name,
+ tmp_result_buf.h_name) != 0)
+ {
+ ++newaliases;
+ newstrlen += strlen (tmp_result_buf.h_name) + 1;
+ }
+
+ /* Make sure bufferend is aligned. */
+ assert ((bufferend - (char *) 0) % sizeof (char *) == 0);
+
+ /* Now we can check whether the buffer is large enough.
+ 16 is the maximal size of the IP address. */
+ if (bufferend + 16 + (naddrs + 2) * sizeof (char *)
+ + roundup (newstrlen, sizeof (char *))
+ + (naliases + newaliases + 1) * sizeof (char *)
+ >= buffer + buflen)
+ {
+ *errnop = ERANGE;
+ *herrnop = NETDB_INTERNAL;
+ status = NSS_STATUS_TRYAGAIN;
+ goto out;
+ }
+
+ new_h_addr_list =
+ (char **) (bufferend
+ + roundup (newstrlen, sizeof (char *))
+ + 16);
+ new_h_aliases =
+ (char **) ((char *) new_h_addr_list
+ + (naddrs + 2) * sizeof (char *));
+
+ /* Copy the old data in the new arrays. */
+ for (cnt = 0; cnt < naddrs; ++cnt)
+ new_h_addr_list[cnt] = old_result->h_addr_list[cnt];
+
+ for (cnt = 0; cnt < naliases; ++cnt)
+ new_h_aliases[cnt] = old_result->h_aliases[cnt];
+
+ /* Store the new strings. */
+ cnt = 0;
+ while (tmp_result_buf.h_aliases[cnt] != NULL)
+ {
+ new_h_aliases[naliases++] = bufferend;
+ bufferend = (__stpcpy (bufferend,
+ tmp_result_buf.h_aliases[cnt])
+ + 1);
+ ++cnt;
+ }
+
+ if (cnt < newaliases)
+ {
+ new_h_aliases[naliases++] = bufferend;
+ bufferend = __stpcpy (bufferend,
+ tmp_result_buf.h_name) + 1;
+ }
+
+ /* Final NULL pointer. */
+ new_h_aliases[naliases] = NULL;
+
+ /* Round up the buffer end address. */
+ bufferend += (sizeof (char *)
+ - ((bufferend - (char *) 0)
+ % sizeof (char *))) % sizeof (char *);
+
+ /* Now the new address. */
+ new_h_addr_list[naddrs++] =
+ memcpy (bufferend, tmp_result_buf.h_addr,
+ tmp_result_buf.h_length);
+
+ /* Also here a final NULL pointer. */
+ new_h_addr_list[naddrs] = NULL;
+
+ /* Store the new array pointers. */
+ old_result->h_aliases = new_h_aliases;
+ old_result->h_addr_list = new_h_addr_list;
+
+ /* Compute the new buffer end. */
+ bufferend = (char *) &new_h_aliases[naliases + 1];
+ assert (bufferend <= buffer + buflen);
+
+ result = old_result;
+ }
+ }
+
+ if (status == NSS_STATUS_TRYAGAIN)
+ {
+ size_t newsize = 2 * tmp_buflen;
+ if (tmp_buffer_malloced)
+ {
+ char *newp = realloc (tmp_buffer, newsize);
+ if (newp != NULL)
+ {
+ assert ((((uintptr_t) newp)
+ & (__alignof__ (struct hostent_data) - 1))
+ == 0);
+ tmp_buffer = newp;
+ tmp_buflen = newsize;
+ goto again;
+ }
+ }
+ else if (!__libc_use_alloca (buflen + newsize))
+ {
+ tmp_buffer = malloc (newsize);
+ if (tmp_buffer != NULL)
+ {
+ assert ((((uintptr_t) tmp_buffer)
+ & (__alignof__ (struct hostent_data) - 1))
+ == 0);
+ tmp_buffer_malloced = true;
+ tmp_buflen = newsize;
+ goto again;
+ }
+ }
+ else
+ {
+ tmp_buffer
+ = extend_alloca (tmp_buffer, tmp_buflen,
+ newsize
+ + __alignof__ (struct hostent_data));
+ tmp_buffer = (char *) (((uintptr_t) tmp_buffer
+ + __alignof__ (struct hostent_data)
+ - 1)
+ & ~(__alignof__ (struct hostent_data)
+ - 1));
+ goto again;
+ }
+ }
+ else
+ status = NSS_STATUS_SUCCESS;
+ out:
+ if (tmp_buffer_malloced)
+ free (tmp_buffer);
+ }
+
+ if (! keep_stream)
+ internal_endent ();
+ }
+
+ if (canonp && status == NSS_STATUS_SUCCESS)
+ *canonp = result->h_name;
+
+ __libc_lock_unlock (lock);
+
+ return status;
+}
+
+enum nss_status
+_nss_files_gethostbyname_r (const char *name, struct hostent *result,
+ char *buffer, size_t buflen, int *errnop,
+ int *herrnop)
+{
+ int af = ((_res.options & RES_USE_INET6) ? AF_INET6 : AF_INET);
+
+ return _nss_files_gethostbyname3_r (name, af, result, buffer, buflen,
+ errnop, herrnop, NULL, NULL);
+}
+
+enum nss_status
+_nss_files_gethostbyname2_r (const char *name, int af, struct hostent *result,
+ char *buffer, size_t buflen, int *errnop,
+ int *herrnop)
+{
+ return _nss_files_gethostbyname3_r (name, af, result, buffer, buflen,
+ errnop, herrnop, NULL, NULL);
+}
enum nss_status
_nss_files_gethostbyname4_r (const char *name, struct gaih_addrtuple **pat,
@@ -392,8 +399,8 @@ _nss_files_gethostbyname4_r (const char *name, struct gaih_addrtuple **pat,
buflen = buflen > pad ? buflen - pad : 0;
struct hostent result;
- status = internal_getent (&result, buffer, buflen, errnop
- H_ERRNO_ARG, AF_UNSPEC, 0);
+ status = internal_getent (&result, buffer, buflen, errnop,
+ herrnop, AF_UNSPEC, 0);
if (status != NSS_STATUS_SUCCESS)
break;
diff --git a/po/zh_TW.po b/po/zh_TW.po
index 0caea22759..b8eb179a9b 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -8,9 +8,9 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: libc 2.17-pre1\n"
-"POT-Creation-Date: 2012-12-07 15:10-0500\n"
-"PO-Revision-Date: 2013-06-11 08:59+0200\n"
+"Project-Id-Version: libc 2.17.90.20130724\n"
+"POT-Creation-Date: 2013-07-24 23:29-0700\n"
+"PO-Revision-Date: 2013-09-03 13:39+0800\n"
"Last-Translator: Wei-Lun Chao <bluebat@member.fsf.org>\n"
"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
"Language: zh_TW\n"
@@ -68,32 +68,42 @@ msgstr "給出這個使用方å¼åˆ—表"
msgid "Give a short usage message"
msgstr "給出簡短的使用訊æ¯"
-#: argp/argp-parse.c:103
+#: argp/argp-parse.c:103 catgets/gencat.c:109 catgets/gencat.c:113
+#: iconv/iconv_prog.c:60 iconv/iconv_prog.c:61 nscd/nscd.c:115
+#: nss/makedb.c:120
+msgid "NAME"
+msgstr "å稱"
+
+#: argp/argp-parse.c:104
msgid "Set the program name"
msgstr "設定程å¼å稱"
#: argp/argp-parse.c:105
+msgid "SECS"
+msgstr "秒數"
+
+#: argp/argp-parse.c:106
msgid "Hang for SECS seconds (default 3600)"
msgstr "SECS 秒後掛斷 (é è¨­æ˜¯ 3600)"
-#: argp/argp-parse.c:166
+#: argp/argp-parse.c:167
msgid "Print program version"
msgstr "å°å‡ºç¨‹å¼ç‰ˆæœ¬"
-#: argp/argp-parse.c:182
+#: argp/argp-parse.c:183
msgid "(PROGRAM ERROR) No version known!?"
msgstr "(程å¼éŒ¯èª¤) 沒有èªå¾—的版本!?"
-#: argp/argp-parse.c:622
+#: argp/argp-parse.c:623
#, c-format
msgid "%s: Too many arguments\n"
msgstr "%s: 太多的引數\n"
-#: argp/argp-parse.c:765
+#: argp/argp-parse.c:766
msgid "(PROGRAM ERROR) Option should have been recognized!?"
msgstr "(程å¼éŒ¯èª¤) é¸é …應該已經å¯è¾¨è­˜!?"
-#: assert/assert-perr.c:36
+#: assert/assert-perr.c:35
#, c-format
msgid "%s%s%s:%u: %s%sUnexpected error: %s.\n"
msgstr "%s%s%s:%u: %s%s無法é æ–™çš„錯誤: %s。\n"
@@ -107,10 +117,6 @@ msgstr ""
"%s%s%s:%u:%s%så‡è¨­ã€Ž%sã€å¤±æ•—。\n"
"%n"
-#: catgets/gencat.c:109 catgets/gencat.c:113 nscd/nscd.c:115 nss/makedb.c:119
-msgid "NAME"
-msgstr "å稱"
-
#: catgets/gencat.c:110
msgid "Create C header file NAME containing symbol definitions"
msgstr "產生的 C 標頭檔åå…§å«ç¬¦è™Ÿå®šç¾©"
@@ -119,7 +125,7 @@ msgstr "產生的 C 標頭檔åå…§å«ç¬¦è™Ÿå®šç¾©"
msgid "Do not use existing catalog, force new output file"
msgstr "ä¸ä½¿ç”¨ç¾å­˜çš„ catalog, 強制使用新的輸出檔"
-#: catgets/gencat.c:113 nss/makedb.c:119
+#: catgets/gencat.c:113 nss/makedb.c:120
msgid "Write output to file NAME"
msgstr "將輸出寫到檔案 NAME 中"
@@ -139,11 +145,11 @@ msgstr ""
"-o 輸出檔案å稱 [輸入檔案å稱]...\n"
"[輸出檔案å稱 [輸入檔案å稱]...]"
-#: catgets/gencat.c:235 debug/pcprofiledump.c:208 elf/ldconfig.c:302
-#: elf/pldd.c:222 elf/sln.c:85 elf/sprof.c:371 iconv/iconv_prog.c:408
-#: iconv/iconvconfig.c:383 locale/programs/locale.c:279
-#: locale/programs/localedef.c:363 login/programs/pt_chown.c:88
-#: malloc/memusagestat.c:536 nscd/nscd.c:459 nss/getent.c:965 nss/makedb.c:371
+#: catgets/gencat.c:229 debug/pcprofiledump.c:209 elf/ldconfig.c:307
+#: elf/pldd.c:219 elf/sln.c:85 elf/sprof.c:372 iconv/iconv_prog.c:408
+#: iconv/iconvconfig.c:379 locale/programs/locale.c:277
+#: locale/programs/localedef.c:364 login/programs/pt_chown.c:88
+#: malloc/memusagestat.c:563 nscd/nscd.c:450 nss/getent.c:965 nss/makedb.c:369
#: posix/getconf.c:1121 sunrpc/rpcinfo.c:691
#: sysdeps/unix/sysv/linux/lddlibc4.c:61
#, c-format
@@ -154,12 +160,12 @@ msgstr ""
"è¦çŸ¥é“錯誤報告指令,請åƒçœ‹ï¼š\n"
"%s。\n"
-#: catgets/gencat.c:251 debug/pcprofiledump.c:224 debug/xtrace.sh:64
-#: elf/ldconfig.c:318 elf/ldd.bash.in:38 elf/pldd.c:238 elf/sotruss.ksh:75
-#: elf/sprof.c:388 iconv/iconv_prog.c:425 iconv/iconvconfig.c:400
-#: locale/programs/locale.c:296 locale/programs/localedef.c:389
+#: catgets/gencat.c:245 debug/pcprofiledump.c:225 debug/xtrace.sh:64
+#: elf/ldconfig.c:323 elf/ldd.bash.in:38 elf/pldd.c:235 elf/sotruss.ksh:75
+#: elf/sprof.c:389 iconv/iconv_prog.c:425 iconv/iconvconfig.c:396
+#: locale/programs/locale.c:294 locale/programs/localedef.c:390
#: login/programs/pt_chown.c:62 malloc/memusage.sh:71
-#: malloc/memusagestat.c:552 nscd/nscd.c:475 nss/getent.c:86 nss/makedb.c:387
+#: malloc/memusagestat.c:579 nscd/nscd.c:466 nss/getent.c:86 nss/makedb.c:385
#: posix/getconf.c:1103 sysdeps/unix/sysv/linux/lddlibc4.c:68
#, c-format
msgid ""
@@ -168,126 +174,126 @@ msgid ""
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
msgstr ""
"版權所有 (C) %s 自由軟體基金會。\n"
-"這是一個自由軟體;請見æºå§‹ç¢¼çš„授權æ¢æ¬¾ã€‚這沒有擔ä¿ï¼›ç”šè‡³ä¹Ÿæ²’有專為銷\n"
+"這是一個自由軟體;請見原始碼的授權æ¢æ¬¾ã€‚這沒有擔ä¿ï¼›ç”šè‡³ä¹Ÿæ²’有專為銷\n"
"售或者é©åˆæŸäº›ç‰¹æ®Šç›®çš„。\n"
-#: catgets/gencat.c:256 debug/pcprofiledump.c:229 debug/xtrace.sh:68
-#: elf/ldconfig.c:323 elf/pldd.c:243 elf/sprof.c:394 iconv/iconv_prog.c:430
-#: iconv/iconvconfig.c:405 locale/programs/locale.c:301
-#: locale/programs/localedef.c:394 malloc/memusage.sh:75
-#: malloc/memusagestat.c:557 nscd/nscd.c:480 nss/getent.c:91 nss/makedb.c:392
+#: catgets/gencat.c:250 debug/pcprofiledump.c:230 debug/xtrace.sh:68
+#: elf/ldconfig.c:328 elf/pldd.c:240 elf/sprof.c:395 iconv/iconv_prog.c:430
+#: iconv/iconvconfig.c:401 locale/programs/locale.c:299
+#: locale/programs/localedef.c:395 malloc/memusage.sh:75
+#: malloc/memusagestat.c:584 nscd/nscd.c:471 nss/getent.c:91 nss/makedb.c:390
#: posix/getconf.c:1108
#, c-format
msgid "Written by %s.\n"
msgstr "作者 %s。\n"
-#: catgets/gencat.c:287
+#: catgets/gencat.c:281
msgid "*standard input*"
msgstr "*標準輸入*"
-#: catgets/gencat.c:293 iconv/iconv_charmap.c:169 iconv/iconv_prog.c:293
-#: nss/makedb.c:248
+#: catgets/gencat.c:287 iconv/iconv_charmap.c:167 iconv/iconv_prog.c:293
+#: nss/makedb.c:246
#, c-format
msgid "cannot open input file `%s'"
msgstr "無法開啟輸入檔 `%s'"
-#: catgets/gencat.c:422 catgets/gencat.c:497
+#: catgets/gencat.c:416 catgets/gencat.c:491
msgid "illegal set number"
msgstr "ä¸åˆæ³•çš„集åˆç·¨è™Ÿ"
-#: catgets/gencat.c:449
+#: catgets/gencat.c:443
msgid "duplicate set definition"
msgstr "複製集åˆå®šç¾©"
-#: catgets/gencat.c:451 catgets/gencat.c:623 catgets/gencat.c:675
+#: catgets/gencat.c:445 catgets/gencat.c:617 catgets/gencat.c:669
msgid "this is the first definition"
msgstr "此為第一個定義"
-#: catgets/gencat.c:522
+#: catgets/gencat.c:516
#, c-format
msgid "unknown set `%s'"
msgstr "ä¸æ˜Žçš„é›†åˆ `%s'"
-#: catgets/gencat.c:563
+#: catgets/gencat.c:557
msgid "invalid quote character"
msgstr "ä¸é©ç”¨çš„引用字元"
-#: catgets/gencat.c:576
+#: catgets/gencat.c:570
#, c-format
msgid "unknown directive `%s': line ignored"
msgstr "ä¸æ˜Žçš„指令 `%s': 此列忽略"
-#: catgets/gencat.c:621
+#: catgets/gencat.c:615
msgid "duplicated message number"
msgstr "é‡è¤‡çš„訊æ¯ç·¨è™Ÿ"
-#: catgets/gencat.c:672
+#: catgets/gencat.c:666
msgid "duplicated message identifier"
msgstr "é‡è¤‡çš„訊æ¯è­˜åˆ¥ç¬¦è™Ÿ"
-#: catgets/gencat.c:729
+#: catgets/gencat.c:723
msgid "invalid character: message ignored"
msgstr "ä¸é©ç”¨çš„å­—å…ƒ: 忽略此訊æ¯"
-#: catgets/gencat.c:772
+#: catgets/gencat.c:766
msgid "invalid line"
msgstr "無效的輸入列"
-#: catgets/gencat.c:826
+#: catgets/gencat.c:820
msgid "malformed line ignored"
msgstr "忽略奇怪的列"
-#: catgets/gencat.c:990 catgets/gencat.c:1031
+#: catgets/gencat.c:984 catgets/gencat.c:1025
#, c-format
msgid "cannot open output file `%s'"
msgstr "無法開啟輸出檔 `%s'"
-#: catgets/gencat.c:1193 locale/programs/linereader.c:559
+#: catgets/gencat.c:1187 locale/programs/linereader.c:560
msgid "invalid escape sequence"
msgstr "無效的跳脫åºåˆ—"
-#: catgets/gencat.c:1215
+#: catgets/gencat.c:1209
msgid "unterminated message"
msgstr "沒有çµå°¾çš„訊æ¯"
-#: catgets/gencat.c:1239
+#: catgets/gencat.c:1233
#, c-format
msgid "while opening old catalog file"
msgstr "在開啟舊的類別檔案時"
-#: catgets/gencat.c:1330
+#: catgets/gencat.c:1324
#, c-format
msgid "conversion modules not available"
msgstr "轉æ›æ¨¡çµ„ä¸å­˜åœ¨"
-#: catgets/gencat.c:1356
+#: catgets/gencat.c:1350
#, c-format
msgid "cannot determine escape character"
msgstr "無法決定跳脫字元"
-#: debug/pcprofiledump.c:52
+#: debug/pcprofiledump.c:53
msgid "Don't buffer output"
msgstr "ä¸è¦å°‡è¼¸å…¥å­˜å…¥ç·©è¡å€"
-#: debug/pcprofiledump.c:57
+#: debug/pcprofiledump.c:58
msgid "Dump information generated by PC profiling."
msgstr "將產生於 PC 測速評估的資料傾å¸å‡ºä¾†"
-#: debug/pcprofiledump.c:60
+#: debug/pcprofiledump.c:61
msgid "[FILE]"
msgstr "[檔案]"
-#: debug/pcprofiledump.c:107
+#: debug/pcprofiledump.c:108
#, c-format
msgid "cannot open input file"
msgstr "無法開啟輸入檔"
-#: debug/pcprofiledump.c:114
+#: debug/pcprofiledump.c:115
#, c-format
msgid "cannot read header"
msgstr "無法讀å–標頭資料"
-#: debug/pcprofiledump.c:178
+#: debug/pcprofiledump.c:179
#, c-format
msgid "invalid pointer size"
msgstr "無效的指標大å°"
@@ -374,64 +380,64 @@ msgstr "無效的模å¼"
msgid "invalid mode parameter"
msgstr "無效的模å¼åƒæ•¸"
-#: elf/cache.c:68
+#: elf/cache.c:69
msgid "unknown"
msgstr "未知"
-#: elf/cache.c:121
+#: elf/cache.c:126
msgid "Unknown OS"
msgstr "未知的作業系統"
-#: elf/cache.c:126
+#: elf/cache.c:131
#, c-format
msgid ", OS ABI: %s %d.%d.%d"
msgstr ", OS ABI: %s %d.%d.%d"
-#: elf/cache.c:143 elf/ldconfig.c:1309
+#: elf/cache.c:148 elf/ldconfig.c:1318
#, c-format
msgid "Can't open cache file %s\n"
msgstr "無法開啟快å–檔 %s\n"
-#: elf/cache.c:157
+#: elf/cache.c:162
#, c-format
msgid "mmap of cache file failed.\n"
msgstr "å¿«å–檔案 mmap 失敗。\n"
-#: elf/cache.c:161 elf/cache.c:175
+#: elf/cache.c:166 elf/cache.c:180
#, c-format
msgid "File is not a cache file.\n"
msgstr "檔案並éžå¿«å–檔。\n"
-#: elf/cache.c:208 elf/cache.c:218
+#: elf/cache.c:213 elf/cache.c:223
#, c-format
msgid "%d libs found in cache `%s'\n"
msgstr "%d 函å¼åº«åœ¨å¿«å– `%s' 中找到\n"
-#: elf/cache.c:412
+#: elf/cache.c:417
#, c-format
msgid "Can't create temporary cache file %s"
msgstr "無法產生暫時的快å–檔 %s"
-#: elf/cache.c:420 elf/cache.c:430 elf/cache.c:434 elf/cache.c:439
+#: elf/cache.c:425 elf/cache.c:435 elf/cache.c:439 elf/cache.c:444
#, c-format
msgid "Writing of cache data failed"
msgstr "寫入快å–資料時發生錯誤"
-#: elf/cache.c:444
+#: elf/cache.c:449
#, c-format
msgid "Changing access rights of %s to %#o failed"
msgstr "更改 %s çš„å­˜å–權é™ç‚º %#o 失敗"
-#: elf/cache.c:449
+#: elf/cache.c:454
#, c-format
msgid "Renaming of %s to %s failed"
msgstr "å°‡ %s 改å為 %s 失敗"
-#: elf/dl-close.c:378 elf/dl-open.c:474
+#: elf/dl-close.c:384 elf/dl-open.c:470
msgid "cannot create scope list"
msgstr "無法建立作用域列表"
-#: elf/dl-close.c:771
+#: elf/dl-close.c:777
msgid "shared object not open"
msgstr "共用目的檔案沒有開啟"
@@ -448,15 +454,15 @@ msgstr "空的動態字串字組替æ›"
msgid "cannot load auxiliary `%s' because of empty dynamic string token substitution\n"
msgstr "由於空的動態字串字組替æ›è€Œç„¡æ³•è¼‰å…¥å¤–部的 `%s'\n"
-#: elf/dl-deps.c:483
+#: elf/dl-deps.c:479
msgid "cannot allocate dependency list"
msgstr "無法é…置相關性列表"
-#: elf/dl-deps.c:520 elf/dl-deps.c:580
+#: elf/dl-deps.c:516 elf/dl-deps.c:576
msgid "cannot allocate symbol search list"
msgstr "無法é…置符號æœå°‹åˆ—表"
-#: elf/dl-deps.c:560
+#: elf/dl-deps.c:556
msgid "Filters not supported with LD_TRACE_PRELINKING"
msgstr "éŽæ¿¾ç¨‹å¼ä¸æ”¯æ´èˆ‡ LD_TRACE_PRELINKING 共用"
@@ -480,23 +486,23 @@ msgstr "無法將é é¢å°æ˜ æ–¼ fptr 表格"
msgid "internal error: symidx out of range of fptr table"
msgstr "內部錯誤:symidx 超出 fptr 表格的範åœ"
-#: elf/dl-hwcaps.c:173 elf/dl-hwcaps.c:185
+#: elf/dl-hwcaps.c:184 elf/dl-hwcaps.c:196
msgid "cannot create capability list"
msgstr "無法建立 capability 列表"
-#: elf/dl-load.c:471
+#: elf/dl-load.c:465
msgid "cannot allocate name record"
msgstr "無法é…ç½®å稱紀錄"
-#: elf/dl-load.c:548 elf/dl-load.c:664 elf/dl-load.c:749 elf/dl-load.c:862
+#: elf/dl-load.c:542 elf/dl-load.c:658 elf/dl-load.c:743 elf/dl-load.c:862
msgid "cannot create cache for search path"
msgstr "無法為æœå°‹è·¯å¾‘建立快å–"
-#: elf/dl-load.c:639
+#: elf/dl-load.c:633
msgid "cannot create RUNPATH/RPATH copy"
msgstr "無法建立 RUNPATH/RPATH 的副本"
-#: elf/dl-load.c:735
+#: elf/dl-load.c:729
msgid "cannot create search path array"
msgstr "無法建立æœå°‹è·¯å¾‘陣列"
@@ -508,11 +514,11 @@ msgstr "無法 stat 共用目的檔"
msgid "cannot open zero fill device"
msgstr "無法開啟以零填滿的è£ç½®"
-#: elf/dl-load.c:1059 elf/dl-load.c:2339
+#: elf/dl-load.c:1059 elf/dl-load.c:2342
msgid "cannot create shared object descriptor"
msgstr "無法建立共用目的檔敘述項"
-#: elf/dl-load.c:1078 elf/dl-load.c:1751 elf/dl-load.c:1854
+#: elf/dl-load.c:1078 elf/dl-load.c:1755 elf/dl-load.c:1858
msgid "cannot read file data"
msgstr "無法讀å–檔案資料"
@@ -544,7 +550,7 @@ msgstr "從共用目的檔中å°æ˜ å€æ®µå¤±æ•—"
msgid "cannot dynamically load executable"
msgstr "無法動態載入執行檔"
-#: elf/dl-load.c:1383
+#: elf/dl-load.c:1383 elf/dl-load.c:1492
msgid "cannot change memory protections"
msgstr "無法改變記憶體ä¿è­·ç‹€æ…‹"
@@ -564,95 +570,95 @@ msgstr "共用目的檔無法被 dlopen()"
msgid "cannot allocate memory for program header"
msgstr "無法é…置記憶體給程å¼æ¨™é ­å€ä½¿ç”¨"
-#: elf/dl-load.c:1469 elf/dl-open.c:180
+#: elf/dl-load.c:1469 elf/dl-open.c:195
msgid "invalid caller"
msgstr "無效的呼å«è€…"
-#: elf/dl-load.c:1508
+#: elf/dl-load.c:1512
msgid "cannot enable executable stack as shared object requires"
msgstr "無法開啟å¯åŸ·è¡Œå †ç–Šåšç‚ºå…±ç”¨ç›®çš„檔"
-#: elf/dl-load.c:1521
+#: elf/dl-load.c:1525
msgid "cannot close file descriptor"
msgstr "無法關閉檔案æ述符號"
-#: elf/dl-load.c:1751
+#: elf/dl-load.c:1755
msgid "file too short"
msgstr "檔案太å°"
-#: elf/dl-load.c:1787
+#: elf/dl-load.c:1791
msgid "invalid ELF header"
msgstr "無效的 ELF 標頭"
-#: elf/dl-load.c:1799
+#: elf/dl-load.c:1803
msgid "ELF file data encoding not big-endian"
msgstr "ELF 檔資料編碼並éžå¤§å°¾åº"
-#: elf/dl-load.c:1801
+#: elf/dl-load.c:1805
msgid "ELF file data encoding not little-endian"
msgstr "ELF 檔資料編碼並éžå°å°¾åº"
-#: elf/dl-load.c:1805
+#: elf/dl-load.c:1809
msgid "ELF file version ident does not match current one"
msgstr "ELF 檔版本 ident ä¸ç¬¦åˆç›®å‰æ‰€ä½¿ç”¨çš„"
-#: elf/dl-load.c:1809
+#: elf/dl-load.c:1813
msgid "ELF file OS ABI invalid"
msgstr "ELF 檔 OS ABI 版本ä¸é©ç”¨"
-#: elf/dl-load.c:1812
+#: elf/dl-load.c:1816
msgid "ELF file ABI version invalid"
msgstr "ELF 檔 ABI 版本ä¸é©ç”¨"
-#: elf/dl-load.c:1815
+#: elf/dl-load.c:1819
msgid "nonzero padding in e_ident"
msgstr "在 e_ident 中填補éžé›¶å€¼"
-#: elf/dl-load.c:1818
+#: elf/dl-load.c:1822
msgid "internal error"
msgstr "內部錯誤"
-#: elf/dl-load.c:1825
+#: elf/dl-load.c:1829
msgid "ELF file version does not match current one"
msgstr "ELF 檔版本ä¸ç¬¦åˆç›®å‰çš„版本"
-#: elf/dl-load.c:1833
+#: elf/dl-load.c:1837
msgid "only ET_DYN and ET_EXEC can be loaded"
msgstr "åªæœ‰ ET_DYN ä»¥åŠ ET_EXEC å¯ä»¥è¼‰å…¥"
-#: elf/dl-load.c:1839
+#: elf/dl-load.c:1843
msgid "ELF file's phentsize not the expected size"
msgstr "ELF 檔的 phentsize 並ä¸æ˜¯é æœŸä¸­çš„大å°"
-#: elf/dl-load.c:2358
+#: elf/dl-load.c:2361
msgid "wrong ELF class: ELFCLASS64"
msgstr "錯誤 ELF 類別:ELFCLASS64"
-#: elf/dl-load.c:2359
+#: elf/dl-load.c:2362
msgid "wrong ELF class: ELFCLASS32"
msgstr "錯誤 ELF 類別:ELFCLASS32"
-#: elf/dl-load.c:2362
+#: elf/dl-load.c:2365
msgid "cannot open shared object file"
msgstr "無法開啟共用目的檔"
-#: elf/dl-lookup.c:757 ports/sysdeps/mips/dl-lookup.c:774
+#: elf/dl-lookup.c:753 ports/sysdeps/mips/dl-lookup.c:771
msgid "relocation error"
msgstr "é‡å®šå€éŒ¯èª¤"
-#: elf/dl-lookup.c:786 ports/sysdeps/mips/dl-lookup.c:803
+#: elf/dl-lookup.c:780 ports/sysdeps/mips/dl-lookup.c:798
msgid "symbol lookup error"
msgstr "符號查找錯誤"
-#: elf/dl-open.c:110
+#: elf/dl-open.c:102
msgid "cannot extend global scope"
msgstr "無法延展全域變數的作用域"
-#: elf/dl-open.c:524
+#: elf/dl-open.c:520
msgid "TLS generation counter wrapped! Please report this."
msgstr "TLS 產生計數器被轉æ›åŸ·è¡Œï¼ 請報告這個情æ³ã€‚"
-#: elf/dl-open.c:546
+#: elf/dl-open.c:542
msgid "cannot load any more object with static TLS"
msgstr "無法以éœæ…‹ TLS å†è¼‰å…¥ä»»ä½•ç‰©ä»¶"
@@ -672,29 +678,29 @@ msgstr "dlmopen() 中的無效目標命å空間"
msgid "cannot allocate memory in static TLS block"
msgstr "無法在éœæ…‹ TLS å€å¡Šä¸­é…置記憶體"
-#: elf/dl-reloc.c:213
+#: elf/dl-reloc.c:212
msgid "cannot make segment writable for relocation"
msgstr "在é‡æ–°å®šå€ä»¥å¾Œç„¡æ³•å°‡å€æ®µè¨­ç‚ºå¯å¯«å…¥ç‹€æ…‹"
-#: elf/dl-reloc.c:276
+#: elf/dl-reloc.c:275
#, c-format
msgid "%s: no PLTREL found in object %s\n"
msgstr "%s: 在目的檔 %s 中沒有找到 PLTREL\n"
-#: elf/dl-reloc.c:287
+#: elf/dl-reloc.c:286
#, c-format
msgid "%s: out of memory to store relocation results for %s\n"
msgstr "%s: 記憶體ä¸è¶³ä»¥å„²å­˜é‡å®šå€çµæžœç”¨æ–¼ %s\n"
-#: elf/dl-reloc.c:303
+#: elf/dl-reloc.c:302
msgid "cannot restore segment prot after reloc"
msgstr "在 reloc 之後無法復原 segment prot"
-#: elf/dl-reloc.c:332
+#: elf/dl-reloc.c:331
msgid "cannot apply additional memory protection after relocation"
msgstr "é‡å®šå€ä¹‹å¾Œç„¡æ³•å¥—用é¡å¤–記憶體ä¿è­·"
-#: elf/dl-sym.c:163
+#: elf/dl-sym.c:153
msgid "RTLD_NEXT used in code not dynamically loaded"
msgstr "程å¼ç¢¼æ‰€ä½¿ç”¨çš„ RTLD_NEXT 沒有動態載入"
@@ -706,224 +712,224 @@ msgstr "無法建立 TLS 資料çµæ§‹"
msgid "version lookup error"
msgstr "版本查找錯誤"
-#: elf/dl-version.c:297
+#: elf/dl-version.c:296
msgid "cannot allocate version reference table"
msgstr "無法é…置版本åƒç…§è¡¨"
-#: elf/ldconfig.c:140
+#: elf/ldconfig.c:141
msgid "Print cache"
msgstr "å°å‡ºå¿«å–"
-#: elf/ldconfig.c:141
+#: elf/ldconfig.c:142
msgid "Generate verbose messages"
msgstr "產生更多的訊æ¯"
-#: elf/ldconfig.c:142
+#: elf/ldconfig.c:143
msgid "Don't build cache"
msgstr "ä¸å»ºç«‹å¿«å–"
-#: elf/ldconfig.c:143
+#: elf/ldconfig.c:144
msgid "Don't generate links"
msgstr "ä¸ç”¢ç”Ÿé€£çµ"
-#: elf/ldconfig.c:144
+#: elf/ldconfig.c:145
msgid "Change to and use ROOT as root directory"
msgstr "變æ›åˆ° ROOT 目錄並以它åšç‚ºæ ¹ç›®éŒ„"
-#: elf/ldconfig.c:144
+#: elf/ldconfig.c:145
msgid "ROOT"
msgstr "ROOT"
-#: elf/ldconfig.c:145
+#: elf/ldconfig.c:146
msgid "CACHE"
msgstr "CACHE"
-#: elf/ldconfig.c:145
+#: elf/ldconfig.c:146
msgid "Use CACHE as cache file"
msgstr "使用 CACHE 當作快å–檔案"
-#: elf/ldconfig.c:146
+#: elf/ldconfig.c:147
msgid "CONF"
msgstr "CONF"
-#: elf/ldconfig.c:146
+#: elf/ldconfig.c:147
msgid "Use CONF as configuration file"
msgstr "使用 CONF 當作設定檔"
-#: elf/ldconfig.c:147
+#: elf/ldconfig.c:148
msgid "Only process directories specified on the command line. Don't build cache."
msgstr "åªè™•ç†åœ¨å‘½ä»¤åˆ—引數中有指定的目錄,ä¸å»ºç«‹å¿«å–檔案。"
-#: elf/ldconfig.c:148
+#: elf/ldconfig.c:149
msgid "Manually link individual libraries."
msgstr "手動個別連çµå‡½å¼åº«"
-#: elf/ldconfig.c:149
+#: elf/ldconfig.c:150
msgid "FORMAT"
msgstr "FORMAT"
-#: elf/ldconfig.c:149
+#: elf/ldconfig.c:150
msgid "Format to use: new, old or compat (default)"
msgstr "將使用格å¼: æ–°ã€èˆŠæˆ–相容 (é è¨­)"
-#: elf/ldconfig.c:150
+#: elf/ldconfig.c:151
msgid "Ignore auxiliary cache file"
msgstr "忽略輔助設備快å–檔案"
-#: elf/ldconfig.c:158
+#: elf/ldconfig.c:159
msgid "Configure Dynamic Linker Run Time Bindings."
msgstr "設定執行時期動態連接"
-#: elf/ldconfig.c:341
+#: elf/ldconfig.c:346
#, c-format
msgid "Path `%s' given more than once"
msgstr "路徑 `%s' 使用超éŽä¸€æ¬¡"
-#: elf/ldconfig.c:381
+#: elf/ldconfig.c:386
#, c-format
msgid "%s is not a known library type"
msgstr "%s ä¸æ˜¯ä¸€å€‹å·²çŸ¥çš„函å¼åº«åž‹æ…‹"
-#: elf/ldconfig.c:409
+#: elf/ldconfig.c:414
#, c-format
msgid "Can't stat %s"
msgstr "無法 stat %s"
-#: elf/ldconfig.c:483
+#: elf/ldconfig.c:488
#, c-format
msgid "Can't stat %s\n"
msgstr "無法 stat %s\n"
-#: elf/ldconfig.c:493
+#: elf/ldconfig.c:498
#, c-format
msgid "%s is not a symbolic link\n"
msgstr "%s ä¸æ˜¯ä¸€å€‹ç¬¦è™Ÿé€£æŽ¥æª”\n"
-#: elf/ldconfig.c:512
+#: elf/ldconfig.c:517
#, c-format
msgid "Can't unlink %s"
msgstr "無法å–æ¶ˆé€£çµ %s"
-#: elf/ldconfig.c:518
+#: elf/ldconfig.c:523
#, c-format
msgid "Can't link %s to %s"
msgstr "無法從 %s 連çµåˆ° %s"
-#: elf/ldconfig.c:524
+#: elf/ldconfig.c:529
msgid " (changed)\n"
msgstr " (已改變)\n"
-#: elf/ldconfig.c:526
+#: elf/ldconfig.c:531
msgid " (SKIPPED)\n"
msgstr " (已忽略)\n"
-#: elf/ldconfig.c:581
+#: elf/ldconfig.c:586
#, c-format
msgid "Can't find %s"
msgstr "找ä¸åˆ° %s"
-#: elf/ldconfig.c:597 elf/ldconfig.c:770 elf/ldconfig.c:829 elf/ldconfig.c:863
+#: elf/ldconfig.c:602 elf/ldconfig.c:775 elf/ldconfig.c:834 elf/ldconfig.c:868
#, c-format
msgid "Cannot lstat %s"
msgstr "無法 lstat %s"
-#: elf/ldconfig.c:604
+#: elf/ldconfig.c:609
#, c-format
msgid "Ignored file %s since it is not a regular file."
msgstr "忽略檔案 %s 因為它ä¸æ˜¯ä¸€å€‹æ­£å¸¸çš„檔案。"
-#: elf/ldconfig.c:613
+#: elf/ldconfig.c:618
#, c-format
msgid "No link created since soname could not be found for %s"
msgstr "由於找ä¸åˆ° %s 的共用目的檔å稱,連çµä¸¦æœªè¢«å»ºç«‹"
-#: elf/ldconfig.c:696
+#: elf/ldconfig.c:701
#, c-format
msgid "Can't open directory %s"
msgstr "無法開啟目錄 %s"
-#: elf/ldconfig.c:788 elf/ldconfig.c:850 elf/readlib.c:90
+#: elf/ldconfig.c:793 elf/ldconfig.c:855 elf/readlib.c:90
#, c-format
msgid "Input file %s not found.\n"
msgstr "輸入檔 %s 找ä¸åˆ°ã€‚\n"
-#: elf/ldconfig.c:795
+#: elf/ldconfig.c:800
#, c-format
msgid "Cannot stat %s"
msgstr "無法顯示狀態 %s"
-#: elf/ldconfig.c:924
+#: elf/ldconfig.c:929
#, c-format
msgid "libc5 library %s in wrong directory"
msgstr "libc5 函å¼åº« %s 擺錯目錄了"
-#: elf/ldconfig.c:927
+#: elf/ldconfig.c:932
#, c-format
msgid "libc6 library %s in wrong directory"
msgstr "libc6 函å¼åº« %s 擺錯目錄了"
-#: elf/ldconfig.c:930
+#: elf/ldconfig.c:935
#, c-format
msgid "libc4 library %s in wrong directory"
msgstr "libc4 函å¼åº« %s 擺錯目錄了"
-#: elf/ldconfig.c:958
+#: elf/ldconfig.c:963
#, c-format
msgid "libraries %s and %s in directory %s have same soname but different type."
msgstr "函å¼åº« %s è·Ÿ %s (在目錄 %s 底下) 有共åŒçš„共用函å¼åº«å稱,ä¸éŽå…¶æ ¼å¼å»ä¸åŒ"
-#: elf/ldconfig.c:1067
+#: elf/ldconfig.c:1072
#, c-format
msgid "Warning: ignoring configuration file that cannot be opened: %s"
msgstr "警告:正在忽略無法開啟的組態檔案:%s"
-#: elf/ldconfig.c:1133
+#: elf/ldconfig.c:1138
#, c-format
msgid "%s:%u: bad syntax in hwcap line"
msgstr "%s:%u: 在 hwcap 列中有ä¸ç•¶çš„語法"
-#: elf/ldconfig.c:1139
+#: elf/ldconfig.c:1144
#, c-format
msgid "%s:%u: hwcap index %lu above maximum %u"
msgstr "%s:%u: hwcap 索引 %lu 以上的最大值 %u"
-#: elf/ldconfig.c:1146 elf/ldconfig.c:1154
+#: elf/ldconfig.c:1151 elf/ldconfig.c:1159
#, c-format
msgid "%s:%u: hwcap index %lu already defined as %s"
msgstr "%s:%u: hwcap 索引 %lu 已經被定義為 %s"
-#: elf/ldconfig.c:1157
+#: elf/ldconfig.c:1162
#, c-format
msgid "%s:%u: duplicate hwcap %lu %s"
msgstr "%s:%u: é‡è£½ hwcap %lu %s"
-#: elf/ldconfig.c:1179
+#: elf/ldconfig.c:1184
#, c-format
msgid "need absolute file name for configuration file when using -r"
msgstr "需è¦çµ•å°æª”案å稱用於組態檔案時正在使用 -r"
-#: elf/ldconfig.c:1186 locale/programs/xmalloc.c:65 malloc/obstack.c:433
-#: malloc/obstack.c:435 posix/getconf.c:1076 posix/getconf.c:1296
+#: elf/ldconfig.c:1191 locale/programs/xmalloc.c:64 malloc/obstack.c:432
+#: malloc/obstack.c:434 posix/getconf.c:1076 posix/getconf.c:1296
#, c-format
msgid "memory exhausted"
msgstr "記憶體耗盡"
-#: elf/ldconfig.c:1218
+#: elf/ldconfig.c:1223
#, c-format
msgid "%s:%u: cannot read directory %s"
msgstr "%s:%u: 無法讀å–目錄 %s"
-#: elf/ldconfig.c:1262
+#: elf/ldconfig.c:1267
#, c-format
msgid "relative path `%s' used to build cache"
msgstr "用來建置快å–的相å°è·¯å¾‘ `%s'"
-#: elf/ldconfig.c:1288
+#: elf/ldconfig.c:1297
#, c-format
msgid "Can't chdir to /"
msgstr "無法變更目錄到 /"
-#: elf/ldconfig.c:1329
+#: elf/ldconfig.c:1338
#, c-format
msgid "Can't open cache file directory %s\n"
msgstr "無法開啟快å–檔案目錄 %s\n"
@@ -1028,55 +1034,55 @@ msgstr "無法讀å–éˆçµæ˜ å°„"
msgid "cannot read object name"
msgstr "無法讀å–物件å稱"
-#: elf/pldd.c:65
+#: elf/pldd.c:62
msgid "List dynamic shared objects loaded into process."
msgstr "列出已載入行程中的動態共用物件。"
-#: elf/pldd.c:69
+#: elf/pldd.c:66
msgid "PID"
msgstr "行程識別號"
-#: elf/pldd.c:100
+#: elf/pldd.c:97
#, c-format
msgid "Exactly one parameter with process ID required.\n"
msgstr "需è¦å‰›å¥½ä¸€å€‹é™„有行程識別號的åƒæ•¸ã€‚\n"
-#: elf/pldd.c:112
+#: elf/pldd.c:109
#, c-format
msgid "invalid process ID '%s'"
msgstr "無效的行程識別號 %s"
-#: elf/pldd.c:120
+#: elf/pldd.c:117
#, c-format
msgid "cannot open %s"
msgstr "無法開啟 %s"
-#: elf/pldd.c:145
+#: elf/pldd.c:142
#, c-format
msgid "cannot open %s/task"
msgstr "無法開啟 %s/任務"
-#: elf/pldd.c:148
+#: elf/pldd.c:145
#, c-format
msgid "cannot prepare reading %s/task"
msgstr "ç„¡æ³•æº–å‚™è®€å– %s/任務"
-#: elf/pldd.c:161
+#: elf/pldd.c:158
#, c-format
msgid "invalid thread ID '%s'"
msgstr "無效的執行緒識別號 %s"
-#: elf/pldd.c:172
+#: elf/pldd.c:169
#, c-format
msgid "cannot attach to process %lu"
msgstr "無法附加到行程 %lu"
-#: elf/pldd.c:264
+#: elf/pldd.c:261
#, c-format
msgid "cannot get information about process %lu"
msgstr "無法ç²å¾—行程 %lu 的相關資訊"
-#: elf/pldd.c:277
+#: elf/pldd.c:274
#, c-format
msgid "process %lu is no ELF program"
msgstr "行程 %lu ä¸¦éž ELF 程å¼"
@@ -1236,147 +1242,147 @@ msgstr ""
msgid "%s: unrecognized option '%c%s'\\n"
msgstr "%s:無法辨識的é¸é …『%c%sã€\\n"
-#: elf/sprof.c:76
+#: elf/sprof.c:77
msgid "Output selection:"
msgstr "輸出é¸æ“‡:"
-#: elf/sprof.c:78
+#: elf/sprof.c:79
msgid "print list of count paths and their number of use"
msgstr "列出計數的路徑以åŠå®ƒå€‘使用的次數"
-#: elf/sprof.c:80
+#: elf/sprof.c:81
msgid "generate flat profile with counts and ticks"
msgstr "從執行次數與經歷時間的資料中產生直接的測速çµæžœ"
-#: elf/sprof.c:81
+#: elf/sprof.c:82
msgid "generate call graph"
msgstr "產生函å¼å‘¼å«åœ–å½¢"
-#: elf/sprof.c:88
+#: elf/sprof.c:89
msgid "Read and display shared object profiling data."
msgstr "讀å–和顯示共用物件è¦ç¯„資料。"
-#: elf/sprof.c:93
+#: elf/sprof.c:94
msgid "SHOBJ [PROFDATA]"
msgstr "SHOBJ [PROFDATA]"
-#: elf/sprof.c:432
+#: elf/sprof.c:433
#, c-format
msgid "failed to load shared object `%s'"
msgstr "開啟共用目的檔 `%s' 失敗"
-#: elf/sprof.c:441
+#: elf/sprof.c:442
#, c-format
msgid "cannot create internal descriptors"
msgstr "無法建立內部敘述項"
-#: elf/sprof.c:553
+#: elf/sprof.c:554
#, c-format
msgid "Reopening shared object `%s' failed"
msgstr "é‡æ–°é–‹å•Ÿå…±ç”¨ç›®çš„檔 %s 失敗"
-#: elf/sprof.c:560 elf/sprof.c:655
+#: elf/sprof.c:561 elf/sprof.c:656
#, c-format
msgid "reading of section headers failed"
msgstr "讀å–å°ç¯€æ¨™é ­æ™‚失敗"
-#: elf/sprof.c:568 elf/sprof.c:663
+#: elf/sprof.c:569 elf/sprof.c:664
#, c-format
msgid "reading of section header string table failed"
msgstr "讀å–å°ç¯€æ¨™é ­å­—串表格時失敗"
-#: elf/sprof.c:594
+#: elf/sprof.c:595
#, c-format
msgid "*** Cannot read debuginfo file name: %m\n"
msgstr "*** 無法讀å–除錯資訊檔案å稱:%m\n"
-#: elf/sprof.c:615
+#: elf/sprof.c:616
#, c-format
msgid "cannot determine file name"
msgstr "無法決定檔案å稱"
-#: elf/sprof.c:648
+#: elf/sprof.c:649
#, c-format
msgid "reading of ELF header failed"
msgstr "è®€å– ELF 標頭時失敗"
-#: elf/sprof.c:684
+#: elf/sprof.c:685
#, c-format
msgid "*** The file `%s' is stripped: no detailed analysis possible\n"
msgstr "*** 檔案 `%s' 被è£å‰ªäº†: 無法åšè©³ç´°çš„分æž\n"
-#: elf/sprof.c:714
+#: elf/sprof.c:715
#, c-format
msgid "failed to load symbol data"
msgstr "載入函å¼ç¬¦è™Ÿè³‡æ–™å¤±æ•—"
-#: elf/sprof.c:779
+#: elf/sprof.c:780
#, c-format
msgid "cannot load profiling data"
msgstr "無法載入測試資料"
-#: elf/sprof.c:788
+#: elf/sprof.c:789
#, c-format
msgid "while stat'ing profiling data file"
msgstr "在å°æ¸¬è©¦è³‡æ–™æª”案進行統計的時候"
-#: elf/sprof.c:796
+#: elf/sprof.c:797
#, c-format
msgid "profiling data file `%s' does not match shared object `%s'"
msgstr "測試資料檔 `%s' 與共用目的檔 `%s' ä¸ç¬¦åˆ"
-#: elf/sprof.c:807
+#: elf/sprof.c:808
#, c-format
msgid "failed to mmap the profiling data file"
msgstr "測試資料檔案 mmap 失敗"
-#: elf/sprof.c:815
+#: elf/sprof.c:816
#, c-format
msgid "error while closing the profiling data file"
msgstr "正在關閉測試資料檔案時發生錯誤"
-#: elf/sprof.c:824 elf/sprof.c:922
+#: elf/sprof.c:825 elf/sprof.c:923
#, c-format
msgid "cannot create internal descriptor"
msgstr "無法建立內部敘述項"
-#: elf/sprof.c:898
+#: elf/sprof.c:899
#, c-format
msgid "`%s' is no correct profile data file for `%s'"
msgstr "`%s' ä¸æ˜¯ `%s' 中正確的測速評估資料檔"
-#: elf/sprof.c:1079 elf/sprof.c:1137
+#: elf/sprof.c:1080 elf/sprof.c:1138
#, c-format
msgid "cannot allocate symbol data"
msgstr "無法é…置函å¼ç¬¦è™Ÿè³‡æ–™"
-#: iconv/iconv_charmap.c:143 iconv/iconv_prog.c:448
+#: iconv/iconv_charmap.c:141 iconv/iconv_prog.c:448
#, c-format
msgid "cannot open output file"
msgstr "無法開啟輸出檔"
-#: iconv/iconv_charmap.c:189 iconv/iconv_prog.c:311
+#: iconv/iconv_charmap.c:187 iconv/iconv_prog.c:311
#, c-format
msgid "error while closing input `%s'"
msgstr "正在關閉輸入 `%s' 的時候發生錯誤"
-#: iconv/iconv_charmap.c:463
+#: iconv/iconv_charmap.c:461
#, c-format
msgid "illegal input sequence at position %Zd"
msgstr "ä½ç½® %Zd 有ä¸åˆæ³•çš„輸入åºåˆ—"
-#: iconv/iconv_charmap.c:482 iconv/iconv_prog.c:539
+#: iconv/iconv_charmap.c:480 iconv/iconv_prog.c:539
#, c-format
msgid "incomplete character or shift sequence at end of buffer"
msgstr "ç·©è¡å€çµå°¾æœ‰ä¸å®Œå…¨çš„字元或 shift sequence"
-#: iconv/iconv_charmap.c:527 iconv/iconv_charmap.c:563 iconv/iconv_prog.c:582
+#: iconv/iconv_charmap.c:525 iconv/iconv_charmap.c:561 iconv/iconv_prog.c:582
#: iconv/iconv_prog.c:618
#, c-format
msgid "error while reading the input"
msgstr "正在讀入資料的時候發生錯誤"
-#: iconv/iconv_charmap.c:545 iconv/iconv_prog.c:600
+#: iconv/iconv_charmap.c:543 iconv/iconv_prog.c:600
#, c-format
msgid "unable to allocate buffer for input"
msgstr "無法é…置輸入用的緩è¡å€"
@@ -1401,7 +1407,7 @@ msgstr "資料:"
msgid "list all known coded character sets"
msgstr "列出所有已知的編碼字元集"
-#: iconv/iconv_prog.c:64 locale/programs/localedef.c:126
+#: iconv/iconv_prog.c:64 locale/programs/localedef.c:127
msgid "Output control:"
msgstr "輸出控制:"
@@ -1409,6 +1415,13 @@ msgstr "輸出控制:"
msgid "omit invalid characters from output"
msgstr "çœç•¥ç„¡æ•ˆå­—元的輸出"
+#: iconv/iconv_prog.c:66 iconv/iconvconfig.c:128
+#: locale/programs/localedef.c:120 locale/programs/localedef.c:122
+#: locale/programs/localedef.c:124 locale/programs/localedef.c:145
+#: malloc/memusagestat.c:56
+msgid "FILE"
+msgstr "檔案"
+
#: iconv/iconv_prog.c:66
msgid "output file"
msgstr "輸出檔案"
@@ -1502,34 +1515,38 @@ msgstr "建立快速載入 iconv 模組的設定檔案。"
msgid "[DIR...]"
msgstr "[目錄…]"
-#: iconv/iconvconfig.c:126
+#: iconv/iconvconfig.c:126 locale/programs/localedef.c:131
+msgid "PATH"
+msgstr "路徑"
+
+#: iconv/iconvconfig.c:127
msgid "Prefix used for all file accesses"
msgstr "使用於所有檔案存å–時的å‰ç½®æ–‡å­—"
-#: iconv/iconvconfig.c:127
+#: iconv/iconvconfig.c:128
msgid "Put output in FILE instead of installed location (--prefix does not apply to FILE)"
msgstr "在 FILE 中置放輸出以代替已安è£çš„ä½ç½® (--prefix ä¸å¥—用到 FILE)"
-#: iconv/iconvconfig.c:131
+#: iconv/iconvconfig.c:132
msgid "Do not search standard directories, only those on the command line"
msgstr "ä¸æœå°‹æ¨™æº–目錄,åªæœ‰é‚£äº›åœ¨ä¹‹ä¸Šå‘½ä»¤åˆ—"
-#: iconv/iconvconfig.c:303
+#: iconv/iconvconfig.c:299
#, c-format
msgid "Directory arguments required when using --nostdlib"
msgstr "目錄引數必è¦é …時正在使用 --nostdlib"
-#: iconv/iconvconfig.c:345 locale/programs/localedef.c:287
+#: iconv/iconvconfig.c:341 locale/programs/localedef.c:288
#, c-format
msgid "no output file produced because warnings were issued"
msgstr "因為發出éŽè­¦å‘Šè¨Šæ¯ï¼Œæ‰€ä»¥æ²’有製造任何輸出檔"
-#: iconv/iconvconfig.c:434
+#: iconv/iconvconfig.c:430
#, c-format
msgid "while inserting in search tree"
msgstr "當æ’入於æœå°‹æ¨¹ä¹‹ä¸­"
-#: iconv/iconvconfig.c:1243
+#: iconv/iconvconfig.c:1239
#, c-format
msgid "cannot generate output file"
msgstr "無法產生輸出檔"
@@ -1616,789 +1633,789 @@ msgstr "移除密碼或讓他人無法讀å–檔案"
msgid "Unknown .netrc keyword %s"
msgstr "未知的 .netrc é—œéµå­— %s"
-#: libidn/nfkc.c:462
+#: libidn/nfkc.c:463
msgid "Character out of range for UTF-8"
msgstr "字元超出 UTF-8 範åœ"
-#: locale/programs/charmap-dir.c:58
+#: locale/programs/charmap-dir.c:57
#, c-format
msgid "cannot read character map directory `%s'"
msgstr "無法讀å–字集å°ç…§æª”目錄 `%s'"
-#: locale/programs/charmap.c:137
+#: locale/programs/charmap.c:138
#, c-format
msgid "character map file `%s' not found"
msgstr "找ä¸åˆ°å­—集å°ç…§æª” `%s'"
-#: locale/programs/charmap.c:194
+#: locale/programs/charmap.c:195
#, c-format
msgid "default character map file `%s' not found"
msgstr "找ä¸åˆ°é è¨­çš„字集å°ç…§æª” `%s'"
-#: locale/programs/charmap.c:257
+#: locale/programs/charmap.c:258
#, c-format
msgid "character map `%s' is not ASCII compatible, locale not ISO C compliant\n"
msgstr "å­—å…ƒå°æ‡‰ `%s' ä¸æ˜¯ ASCII 相容碼,å€åŸŸåŒ–資料庫ä¸ç¬¦åˆ ISO C\n"
-#: locale/programs/charmap.c:336
+#: locale/programs/charmap.c:337
#, c-format
msgid "%s: <mb_cur_max> must be greater than <mb_cur_min>\n"
msgstr "%s: <mb_cur_max> 必須大於 <mb_cur_min>\n"
-#: locale/programs/charmap.c:356 locale/programs/charmap.c:373
-#: locale/programs/repertoire.c:173
+#: locale/programs/charmap.c:357 locale/programs/charmap.c:374
+#: locale/programs/repertoire.c:174
#, c-format
msgid "syntax error in prolog: %s"
msgstr "prolog 中有語法錯誤: %s"
-#: locale/programs/charmap.c:357
+#: locale/programs/charmap.c:358
msgid "invalid definition"
msgstr "無效的定義"
-#: locale/programs/charmap.c:374 locale/programs/locfile.c:125
-#: locale/programs/locfile.c:152 locale/programs/repertoire.c:174
+#: locale/programs/charmap.c:375 locale/programs/locfile.c:125
+#: locale/programs/locfile.c:152 locale/programs/repertoire.c:175
msgid "bad argument"
msgstr "錯誤的引數"
-#: locale/programs/charmap.c:402
+#: locale/programs/charmap.c:403
#, c-format
msgid "duplicate definition of <%s>"
msgstr "<%s> 的定義é‡è¤‡äº†"
-#: locale/programs/charmap.c:409
+#: locale/programs/charmap.c:410
#, c-format
msgid "value for <%s> must be 1 or greater"
msgstr "<%s> 的值必須為 1 或者更大"
-#: locale/programs/charmap.c:421
+#: locale/programs/charmap.c:422
#, c-format
msgid "value of <%s> must be greater or equal than the value of <%s>"
msgstr "<%s> 的值必須等於或大於 <%s> 的值"
-#: locale/programs/charmap.c:444 locale/programs/repertoire.c:182
+#: locale/programs/charmap.c:445 locale/programs/repertoire.c:183
#, c-format
msgid "argument to <%s> must be a single character"
msgstr "給 <%s> 的引數必須是一個單字元"
-#: locale/programs/charmap.c:470
+#: locale/programs/charmap.c:471
msgid "character sets with locking states are not supported"
msgstr "ä¸æ”¯æ´ä½¿ç”¨ locking 狀態的字元集"
-#: locale/programs/charmap.c:497 locale/programs/charmap.c:551
-#: locale/programs/charmap.c:583 locale/programs/charmap.c:677
-#: locale/programs/charmap.c:732 locale/programs/charmap.c:773
-#: locale/programs/charmap.c:814
+#: locale/programs/charmap.c:498 locale/programs/charmap.c:552
+#: locale/programs/charmap.c:584 locale/programs/charmap.c:678
+#: locale/programs/charmap.c:733 locale/programs/charmap.c:774
+#: locale/programs/charmap.c:815
#, c-format
msgid "syntax error in %s definition: %s"
msgstr "定義 %s 的語法錯誤: %s"
-#: locale/programs/charmap.c:498 locale/programs/charmap.c:678
-#: locale/programs/charmap.c:774 locale/programs/repertoire.c:229
+#: locale/programs/charmap.c:499 locale/programs/charmap.c:679
+#: locale/programs/charmap.c:775 locale/programs/repertoire.c:230
msgid "no symbolic name given"
msgstr "沒有給予符號å稱"
-#: locale/programs/charmap.c:552
+#: locale/programs/charmap.c:553
msgid "invalid encoding given"
msgstr "給予的編碼是無效的"
-#: locale/programs/charmap.c:561
+#: locale/programs/charmap.c:562
msgid "too few bytes in character encoding"
msgstr "字元定義中的ä½å…ƒçµ„太少了"
-#: locale/programs/charmap.c:563
+#: locale/programs/charmap.c:564
msgid "too many bytes in character encoding"
msgstr "字元定義中的ä½å…ƒçµ„太多了"
-#: locale/programs/charmap.c:585 locale/programs/charmap.c:733
-#: locale/programs/charmap.c:816 locale/programs/repertoire.c:295
+#: locale/programs/charmap.c:586 locale/programs/charmap.c:734
+#: locale/programs/charmap.c:817 locale/programs/repertoire.c:296
msgid "no symbolic name given for end of range"
msgstr "沒有給此å€çš„最後一個字元符號å稱"
-#: locale/programs/charmap.c:609 locale/programs/ld-address.c:601
-#: locale/programs/ld-collate.c:2766 locale/programs/ld-collate.c:3924
-#: locale/programs/ld-ctype.c:2255 locale/programs/ld-ctype.c:3006
-#: locale/programs/ld-identification.c:451
-#: locale/programs/ld-measurement.c:237 locale/programs/ld-messages.c:331
-#: locale/programs/ld-monetary.c:942 locale/programs/ld-name.c:306
-#: locale/programs/ld-numeric.c:367 locale/programs/ld-paper.c:240
-#: locale/programs/ld-telephone.c:312 locale/programs/ld-time.c:1220
-#: locale/programs/repertoire.c:312
+#: locale/programs/charmap.c:610 locale/programs/ld-address.c:602
+#: locale/programs/ld-collate.c:2767 locale/programs/ld-collate.c:3925
+#: locale/programs/ld-ctype.c:2256 locale/programs/ld-ctype.c:3007
+#: locale/programs/ld-identification.c:452
+#: locale/programs/ld-measurement.c:238 locale/programs/ld-messages.c:332
+#: locale/programs/ld-monetary.c:942 locale/programs/ld-name.c:307
+#: locale/programs/ld-numeric.c:368 locale/programs/ld-paper.c:241
+#: locale/programs/ld-telephone.c:313 locale/programs/ld-time.c:1221
+#: locale/programs/repertoire.c:313
#, c-format
msgid "%1$s: definition does not end with `END %1$s'"
msgstr "%1$s: 定義並沒有以 `END %1$s' åšç‚ºçµæŸ"
-#: locale/programs/charmap.c:642
+#: locale/programs/charmap.c:643
msgid "only WIDTH definitions are allowed to follow the CHARMAP definition"
msgstr "åªæœ‰ WIDTH 定義æ‰èƒ½ç›´æŽ¥å¯«åœ¨ CHARMAP 定義之後"
-#: locale/programs/charmap.c:650 locale/programs/charmap.c:713
+#: locale/programs/charmap.c:651 locale/programs/charmap.c:714
#, c-format
msgid "value for %s must be an integer"
msgstr "%s 的值必須是整數æ‰è¡Œ"
-#: locale/programs/charmap.c:841
+#: locale/programs/charmap.c:842
#, c-format
msgid "%s: error in state machine"
msgstr "%s: 狀態機錯誤"
-#: locale/programs/charmap.c:849 locale/programs/ld-address.c:617
-#: locale/programs/ld-collate.c:2763 locale/programs/ld-collate.c:4117
-#: locale/programs/ld-ctype.c:2252 locale/programs/ld-ctype.c:3023
-#: locale/programs/ld-identification.c:467
-#: locale/programs/ld-measurement.c:253 locale/programs/ld-messages.c:347
-#: locale/programs/ld-monetary.c:958 locale/programs/ld-name.c:322
-#: locale/programs/ld-numeric.c:383 locale/programs/ld-paper.c:256
-#: locale/programs/ld-telephone.c:328 locale/programs/ld-time.c:1236
-#: locale/programs/locfile.c:825 locale/programs/repertoire.c:323
+#: locale/programs/charmap.c:850 locale/programs/ld-address.c:618
+#: locale/programs/ld-collate.c:2764 locale/programs/ld-collate.c:4118
+#: locale/programs/ld-ctype.c:2253 locale/programs/ld-ctype.c:3024
+#: locale/programs/ld-identification.c:468
+#: locale/programs/ld-measurement.c:254 locale/programs/ld-messages.c:348
+#: locale/programs/ld-monetary.c:958 locale/programs/ld-name.c:323
+#: locale/programs/ld-numeric.c:384 locale/programs/ld-paper.c:257
+#: locale/programs/ld-telephone.c:329 locale/programs/ld-time.c:1237
+#: locale/programs/locfile.c:825 locale/programs/repertoire.c:324
#, c-format
msgid "%s: premature end of file"
msgstr "%s: 未完æˆå·²é”檔案的末尾"
-#: locale/programs/charmap.c:868 locale/programs/charmap.c:879
+#: locale/programs/charmap.c:869 locale/programs/charmap.c:880
#, c-format
msgid "unknown character `%s'"
msgstr "ä¸æ˜Žçš„å­—å…ƒ `%s'"
-#: locale/programs/charmap.c:887
+#: locale/programs/charmap.c:888
#, c-format
msgid "number of bytes for byte sequence of beginning and end of range not the same: %d vs %d"
msgstr "在範åœèµ·å§‹èˆ‡çµæŸçš„ä½å…ƒçµ„åºåˆ—中,ä½å…ƒçµ„的數目並ä¸ä¸€è‡´: %d vs %d"
-#: locale/programs/charmap.c:992 locale/programs/ld-collate.c:3043
-#: locale/programs/repertoire.c:418
+#: locale/programs/charmap.c:993 locale/programs/ld-collate.c:3044
+#: locale/programs/repertoire.c:419
msgid "invalid names for character range"
msgstr "無效的字元範åœå稱"
-#: locale/programs/charmap.c:1004 locale/programs/repertoire.c:430
+#: locale/programs/charmap.c:1005 locale/programs/repertoire.c:431
msgid "hexadecimal range format should use only capital characters"
msgstr "在表示å六進ä½çš„範åœæ™‚åªèƒ½ç”¨å¤§å¯«çš„英文字æ¯è¡¨ç¤º"
-#: locale/programs/charmap.c:1022 locale/programs/repertoire.c:448
+#: locale/programs/charmap.c:1023 locale/programs/repertoire.c:449
#, c-format
msgid "<%s> and <%s> are invalid names for range"
msgstr "<%s> ä»¥åŠ <%s> 是ä¸é©ç”¨çš„範åœå稱"
-#: locale/programs/charmap.c:1028 locale/programs/repertoire.c:455
+#: locale/programs/charmap.c:1029 locale/programs/repertoire.c:456
msgid "upper limit in range is smaller than lower limit"
msgstr "範åœä¸­ä¸Šé™å°æ–¼ä¸‹é™"
-#: locale/programs/charmap.c:1086
+#: locale/programs/charmap.c:1087
msgid "resulting bytes for range not representable."
msgstr "用來定義範åœçš„ä½å…ƒçµ„無法被表述出來"
-#: locale/programs/ld-address.c:134 locale/programs/ld-collate.c:1557
-#: locale/programs/ld-ctype.c:420 locale/programs/ld-identification.c:132
-#: locale/programs/ld-measurement.c:93 locale/programs/ld-messages.c:96
-#: locale/programs/ld-monetary.c:193 locale/programs/ld-name.c:93
-#: locale/programs/ld-numeric.c:97 locale/programs/ld-paper.c:90
-#: locale/programs/ld-telephone.c:93 locale/programs/ld-time.c:158
+#: locale/programs/ld-address.c:135 locale/programs/ld-collate.c:1558
+#: locale/programs/ld-ctype.c:421 locale/programs/ld-identification.c:133
+#: locale/programs/ld-measurement.c:94 locale/programs/ld-messages.c:97
+#: locale/programs/ld-monetary.c:193 locale/programs/ld-name.c:94
+#: locale/programs/ld-numeric.c:98 locale/programs/ld-paper.c:91
+#: locale/programs/ld-telephone.c:94 locale/programs/ld-time.c:159
#, c-format
msgid "No definition for %s category found"
msgstr "找ä¸åˆ° %s 類別的定義"
-#: locale/programs/ld-address.c:145 locale/programs/ld-address.c:183
-#: locale/programs/ld-address.c:201 locale/programs/ld-address.c:230
-#: locale/programs/ld-address.c:302 locale/programs/ld-address.c:321
-#: locale/programs/ld-address.c:334 locale/programs/ld-identification.c:145
-#: locale/programs/ld-measurement.c:104 locale/programs/ld-monetary.c:205
+#: locale/programs/ld-address.c:146 locale/programs/ld-address.c:184
+#: locale/programs/ld-address.c:202 locale/programs/ld-address.c:231
+#: locale/programs/ld-address.c:303 locale/programs/ld-address.c:322
+#: locale/programs/ld-address.c:335 locale/programs/ld-identification.c:146
+#: locale/programs/ld-measurement.c:105 locale/programs/ld-monetary.c:205
#: locale/programs/ld-monetary.c:249 locale/programs/ld-monetary.c:265
-#: locale/programs/ld-monetary.c:277 locale/programs/ld-name.c:104
-#: locale/programs/ld-name.c:141 locale/programs/ld-numeric.c:111
-#: locale/programs/ld-numeric.c:125 locale/programs/ld-paper.c:101
-#: locale/programs/ld-paper.c:110 locale/programs/ld-telephone.c:104
-#: locale/programs/ld-telephone.c:161 locale/programs/ld-time.c:174
-#: locale/programs/ld-time.c:195
+#: locale/programs/ld-monetary.c:277 locale/programs/ld-name.c:105
+#: locale/programs/ld-name.c:142 locale/programs/ld-numeric.c:112
+#: locale/programs/ld-numeric.c:126 locale/programs/ld-paper.c:102
+#: locale/programs/ld-paper.c:111 locale/programs/ld-telephone.c:105
+#: locale/programs/ld-telephone.c:162 locale/programs/ld-time.c:175
+#: locale/programs/ld-time.c:196
#, c-format
msgid "%s: field `%s' not defined"
msgstr "%s: æ¬„ä½ `%s' 沒有定義"
-#: locale/programs/ld-address.c:157 locale/programs/ld-address.c:209
-#: locale/programs/ld-address.c:239 locale/programs/ld-address.c:277
-#: locale/programs/ld-name.c:116 locale/programs/ld-telephone.c:116
+#: locale/programs/ld-address.c:158 locale/programs/ld-address.c:210
+#: locale/programs/ld-address.c:240 locale/programs/ld-address.c:278
+#: locale/programs/ld-name.c:117 locale/programs/ld-telephone.c:117
#, c-format
msgid "%s: field `%s' must not be empty"
msgstr "%s: æ¬„ä½ `%s' ä¸å¯ä»¥ç©ºç™½"
-#: locale/programs/ld-address.c:169
+#: locale/programs/ld-address.c:170
#, c-format
msgid "%s: invalid escape `%%%c' sequence in field `%s'"
msgstr "%s: ä¸é©ç”¨çš„跳脫åºåˆ— `%%%c', åœ¨æ¬„ä½ `%s' 中"
-#: locale/programs/ld-address.c:220
+#: locale/programs/ld-address.c:221
#, c-format
msgid "%s: terminology language code `%s' not defined"
msgstr "%s: 術語語言編碼 `%s' 未定義"
-#: locale/programs/ld-address.c:245
+#: locale/programs/ld-address.c:246
#, c-format
msgid "%s: field `%s' must not be defined"
msgstr "%s: 欄ä½ã€Œ%sã€å¿…須未被定義"
-#: locale/programs/ld-address.c:259 locale/programs/ld-address.c:288
+#: locale/programs/ld-address.c:260 locale/programs/ld-address.c:289
#, c-format
msgid "%s: language abbreviation `%s' not defined"
msgstr "%s: 語言縮寫 `%s' 沒有定義"
-#: locale/programs/ld-address.c:266 locale/programs/ld-address.c:294
-#: locale/programs/ld-address.c:328 locale/programs/ld-address.c:340
+#: locale/programs/ld-address.c:267 locale/programs/ld-address.c:295
+#: locale/programs/ld-address.c:329 locale/programs/ld-address.c:341
#, c-format
msgid "%s: `%s' value does not match `%s' value"
msgstr "%s: `%s' 值與 `%s' 值ä¸ç¬¦åˆ"
-#: locale/programs/ld-address.c:313
+#: locale/programs/ld-address.c:314
#, c-format
msgid "%s: numeric country code `%d' not valid"
msgstr "%s: 國家數字代碼 `%d' 錯誤"
-#: locale/programs/ld-address.c:509 locale/programs/ld-address.c:546
-#: locale/programs/ld-address.c:584 locale/programs/ld-ctype.c:2630
-#: locale/programs/ld-identification.c:363
-#: locale/programs/ld-measurement.c:220 locale/programs/ld-messages.c:300
+#: locale/programs/ld-address.c:510 locale/programs/ld-address.c:547
+#: locale/programs/ld-address.c:585 locale/programs/ld-ctype.c:2631
+#: locale/programs/ld-identification.c:364
+#: locale/programs/ld-measurement.c:221 locale/programs/ld-messages.c:301
#: locale/programs/ld-monetary.c:700 locale/programs/ld-monetary.c:735
-#: locale/programs/ld-monetary.c:776 locale/programs/ld-name.c:279
-#: locale/programs/ld-numeric.c:262 locale/programs/ld-paper.c:223
-#: locale/programs/ld-telephone.c:287 locale/programs/ld-time.c:1125
-#: locale/programs/ld-time.c:1167
+#: locale/programs/ld-monetary.c:776 locale/programs/ld-name.c:280
+#: locale/programs/ld-numeric.c:263 locale/programs/ld-paper.c:224
+#: locale/programs/ld-telephone.c:288 locale/programs/ld-time.c:1126
+#: locale/programs/ld-time.c:1168
#, c-format
msgid "%s: field `%s' declared more than once"
msgstr "%s: `%s' 欄ä½ä¸åªä¸€æ¬¡åœ°å®£å‘Š"
-#: locale/programs/ld-address.c:513 locale/programs/ld-address.c:551
-#: locale/programs/ld-identification.c:367 locale/programs/ld-messages.c:310
+#: locale/programs/ld-address.c:514 locale/programs/ld-address.c:552
+#: locale/programs/ld-identification.c:368 locale/programs/ld-messages.c:311
#: locale/programs/ld-monetary.c:704 locale/programs/ld-monetary.c:739
-#: locale/programs/ld-name.c:283 locale/programs/ld-numeric.c:266
-#: locale/programs/ld-telephone.c:291 locale/programs/ld-time.c:1019
-#: locale/programs/ld-time.c:1088 locale/programs/ld-time.c:1130
+#: locale/programs/ld-name.c:284 locale/programs/ld-numeric.c:267
+#: locale/programs/ld-telephone.c:292 locale/programs/ld-time.c:1020
+#: locale/programs/ld-time.c:1089 locale/programs/ld-time.c:1131
#, c-format
msgid "%s: unknown character in field `%s'"
msgstr "%s: æœªçŸ¥çš„å­—å…ƒåœ¨æ¬„ä½ `%s' 中"
-#: locale/programs/ld-address.c:598 locale/programs/ld-collate.c:3922
-#: locale/programs/ld-ctype.c:3003 locale/programs/ld-identification.c:448
-#: locale/programs/ld-measurement.c:234 locale/programs/ld-messages.c:329
-#: locale/programs/ld-monetary.c:940 locale/programs/ld-name.c:304
-#: locale/programs/ld-numeric.c:365 locale/programs/ld-paper.c:238
-#: locale/programs/ld-telephone.c:310 locale/programs/ld-time.c:1218
+#: locale/programs/ld-address.c:599 locale/programs/ld-collate.c:3923
+#: locale/programs/ld-ctype.c:3004 locale/programs/ld-identification.c:449
+#: locale/programs/ld-measurement.c:235 locale/programs/ld-messages.c:330
+#: locale/programs/ld-monetary.c:940 locale/programs/ld-name.c:305
+#: locale/programs/ld-numeric.c:366 locale/programs/ld-paper.c:239
+#: locale/programs/ld-telephone.c:311 locale/programs/ld-time.c:1219
#, c-format
msgid "%s: incomplete `END' line"
msgstr "%s: ä¸å®Œæ•´çš„ `END' 列"
-#: locale/programs/ld-address.c:608 locale/programs/ld-collate.c:543
-#: locale/programs/ld-collate.c:595 locale/programs/ld-collate.c:891
-#: locale/programs/ld-collate.c:904 locale/programs/ld-collate.c:2732
-#: locale/programs/ld-collate.c:2753 locale/programs/ld-collate.c:4107
-#: locale/programs/ld-ctype.c:1984 locale/programs/ld-ctype.c:2242
-#: locale/programs/ld-ctype.c:2828 locale/programs/ld-ctype.c:3014
-#: locale/programs/ld-identification.c:458
-#: locale/programs/ld-measurement.c:244 locale/programs/ld-messages.c:338
-#: locale/programs/ld-monetary.c:949 locale/programs/ld-name.c:313
-#: locale/programs/ld-numeric.c:374 locale/programs/ld-paper.c:247
-#: locale/programs/ld-telephone.c:319 locale/programs/ld-time.c:1227
+#: locale/programs/ld-address.c:609 locale/programs/ld-collate.c:544
+#: locale/programs/ld-collate.c:596 locale/programs/ld-collate.c:892
+#: locale/programs/ld-collate.c:905 locale/programs/ld-collate.c:2733
+#: locale/programs/ld-collate.c:2754 locale/programs/ld-collate.c:4108
+#: locale/programs/ld-ctype.c:1985 locale/programs/ld-ctype.c:2243
+#: locale/programs/ld-ctype.c:2829 locale/programs/ld-ctype.c:3015
+#: locale/programs/ld-identification.c:459
+#: locale/programs/ld-measurement.c:245 locale/programs/ld-messages.c:339
+#: locale/programs/ld-monetary.c:949 locale/programs/ld-name.c:314
+#: locale/programs/ld-numeric.c:375 locale/programs/ld-paper.c:248
+#: locale/programs/ld-telephone.c:320 locale/programs/ld-time.c:1228
#, c-format
msgid "%s: syntax error"
msgstr "%s: 語法錯誤"
-#: locale/programs/ld-collate.c:418
+#: locale/programs/ld-collate.c:419
#, c-format
msgid "`%.*s' already defined in charmap"
msgstr "`%.*s' 在字集å°ç…§è¡¨ä¸­å·²ç¶“定義éŽäº†"
-#: locale/programs/ld-collate.c:427
+#: locale/programs/ld-collate.c:428
#, c-format
msgid "`%.*s' already defined in repertoire"
msgstr "`%.*s' 在編碼å°æ˜ æª”中已經被定義éŽäº†"
-#: locale/programs/ld-collate.c:434
+#: locale/programs/ld-collate.c:435
#, c-format
msgid "`%.*s' already defined as collating symbol"
msgstr "`%.*s' 已被定義為å°ç…§ç¬¦è™Ÿ"
-#: locale/programs/ld-collate.c:441
+#: locale/programs/ld-collate.c:442
#, c-format
msgid "`%.*s' already defined as collating element"
msgstr "`%.*s' 已被定義為å°ç…§å…ƒç´ "
-#: locale/programs/ld-collate.c:472 locale/programs/ld-collate.c:498
+#: locale/programs/ld-collate.c:473 locale/programs/ld-collate.c:499
#, c-format
msgid "%s: `forward' and `backward' are mutually excluding each other"
msgstr "%s: `forward' ä»¥åŠ `backward' 彼此互相排斥"
-#: locale/programs/ld-collate.c:482 locale/programs/ld-collate.c:508
-#: locale/programs/ld-collate.c:524
+#: locale/programs/ld-collate.c:483 locale/programs/ld-collate.c:509
+#: locale/programs/ld-collate.c:525
#, c-format
msgid "%s: `%s' mentioned more than once in definition of weight %d"
msgstr "%s: `%s' ä¸åªä¸€æ¬¡åœ°åœ¨æ¬Šé‡ %d 中被æ到"
-#: locale/programs/ld-collate.c:580
+#: locale/programs/ld-collate.c:581
#, c-format
msgid "%s: too many rules; first entry only had %d"
msgstr "%s: 太多è¦å‰‡ï¼›ç¬¬ä¸€å€‹é …ç›®åªåŒ…å« %d"
-#: locale/programs/ld-collate.c:616
+#: locale/programs/ld-collate.c:617
#, c-format
msgid "%s: not enough sorting rules"
msgstr "%s: 排åºè¦å‰‡ä¸è¶³"
-#: locale/programs/ld-collate.c:781
+#: locale/programs/ld-collate.c:782
#, c-format
msgid "%s: empty weight string not allowed"
msgstr "%s: 空白的權é‡å­—串是ä¸å…許的"
-#: locale/programs/ld-collate.c:876
+#: locale/programs/ld-collate.c:877
#, c-format
msgid "%s: weights must use the same ellipsis symbol as the name"
msgstr "%s: 權é‡å¿…須使用與å稱相åŒçš„çœç•¥ç¬¦è™Ÿ"
-#: locale/programs/ld-collate.c:932
+#: locale/programs/ld-collate.c:933
#, c-format
msgid "%s: too many values"
msgstr "%s: 太多變數值"
-#: locale/programs/ld-collate.c:1052 locale/programs/ld-collate.c:1227
+#: locale/programs/ld-collate.c:1053 locale/programs/ld-collate.c:1228
#, c-format
msgid "order for `%.*s' already defined at %s:%Zu"
msgstr "`%.*s' çš„é †åºå·²ç¶“在 %s:%Zu 裡é¢å®šç¾©äº†"
-#: locale/programs/ld-collate.c:1102
+#: locale/programs/ld-collate.c:1103
#, c-format
msgid "%s: the start and the end symbol of a range must stand for characters"
msgstr "%s: 啟始與çµæŸç¬¦è™Ÿç¯„åœå¿…須代表字元"
-#: locale/programs/ld-collate.c:1129
+#: locale/programs/ld-collate.c:1130
#, c-format
msgid "%s: byte sequences of first and last character must have the same length"
msgstr "%s: 第一個與最後一個字元的ä½å…ƒçµ„åºåˆ—必須有相åŒçš„長度"
-#: locale/programs/ld-collate.c:1171
+#: locale/programs/ld-collate.c:1172
#, c-format
msgid "%s: byte sequence of first character of range is not lower than that of the last character"
msgstr "%s: 範åœé¦–字元的ä½å…ƒçµ„åºåˆ—沒有低於末字元的ä½å…ƒçµ„åºåˆ—"
-#: locale/programs/ld-collate.c:1296
+#: locale/programs/ld-collate.c:1297
#, c-format
msgid "%s: symbolic range ellipsis must not directly follow `order_start'"
msgstr "%s: 符號範åœçš„çœç•¥ä¸å¯ä»¥ç›´æŽ¥åœ¨ `order_start' 之後"
-#: locale/programs/ld-collate.c:1300
+#: locale/programs/ld-collate.c:1301
#, c-format
msgid "%s: symbolic range ellipsis must not be directly followed by `order_end'"
msgstr "%s: 符號範åœçš„çœç•¥ä¸å¯ä»¥ç›´æŽ¥åœ¨ `order_end' 之å‰"
-#: locale/programs/ld-collate.c:1320 locale/programs/ld-ctype.c:1501
+#: locale/programs/ld-collate.c:1321 locale/programs/ld-ctype.c:1502
#, c-format
msgid "`%s' and `%.*s' are not valid names for symbolic range"
msgstr "`%s' å’Œ `%.*s' 皆éžç¬¦è™Ÿç¯„åœä¸­é©ç”¨çš„å稱"
-#: locale/programs/ld-collate.c:1370 locale/programs/ld-collate.c:3858
+#: locale/programs/ld-collate.c:1371 locale/programs/ld-collate.c:3859
#, c-format
msgid "%s: order for `%.*s' already defined at %s:%Zu"
msgstr "%s: `%.*s' çš„é †åºå·²åœ¨ %s:%Zu 中定義"
-#: locale/programs/ld-collate.c:1379
+#: locale/programs/ld-collate.c:1380
#, c-format
msgid "%s: `%s' must be a character"
msgstr "%s: `%s' 必須是一個字元"
-#: locale/programs/ld-collate.c:1574
+#: locale/programs/ld-collate.c:1575
#, c-format
msgid "%s: `position' must be used for a specific level in all sections or none"
msgstr "%s: `position' 必須在所有å€å¡Šè£¡ç‰¹å®šçš„等級中使用,å¦å‰‡ä¸èƒ½ä½¿ç”¨"
-#: locale/programs/ld-collate.c:1599
+#: locale/programs/ld-collate.c:1600
#, c-format
msgid "symbol `%s' not defined"
msgstr "並未定義 `%s' 符號"
-#: locale/programs/ld-collate.c:1675 locale/programs/ld-collate.c:1781
+#: locale/programs/ld-collate.c:1676 locale/programs/ld-collate.c:1782
#, c-format
msgid "symbol `%s' has the same encoding as"
msgstr "跟符號 `%s' 有相åŒçš„編碼: "
-#: locale/programs/ld-collate.c:1679 locale/programs/ld-collate.c:1785
+#: locale/programs/ld-collate.c:1680 locale/programs/ld-collate.c:1786
#, c-format
msgid "symbol `%s'"
msgstr "符號 `%s'"
-#: locale/programs/ld-collate.c:1827
+#: locale/programs/ld-collate.c:1828
#, c-format
msgid "no definition of `UNDEFINED'"
msgstr "沒有找到 `UNDEFINED' 的定義"
-#: locale/programs/ld-collate.c:1856
+#: locale/programs/ld-collate.c:1857
#, c-format
msgid "too many errors; giving up"
msgstr "發生太多錯誤;放棄中"
-#: locale/programs/ld-collate.c:2658 locale/programs/ld-collate.c:4046
+#: locale/programs/ld-collate.c:2659 locale/programs/ld-collate.c:4047
#, c-format
msgid "%s: nested conditionals not supported"
msgstr "%s: ä¸æ”¯æ´å·¢ç‹€æ¢ä»¶"
-#: locale/programs/ld-collate.c:2676
+#: locale/programs/ld-collate.c:2677
#, c-format
msgid "%s: more then one 'else'"
msgstr "%s: 使用多於一個「elseã€"
-#: locale/programs/ld-collate.c:2851
+#: locale/programs/ld-collate.c:2852
#, c-format
msgid "%s: duplicate definition of `%s'"
msgstr "%s: é‡è¤‡çš„定義 `%s'"
-#: locale/programs/ld-collate.c:2887
+#: locale/programs/ld-collate.c:2888
#, c-format
msgid "%s: duplicate declaration of section `%s'"
msgstr "%s: é‡è¤‡çš„ `%s' å€å¡Šå®£å‘Š"
-#: locale/programs/ld-collate.c:3023
+#: locale/programs/ld-collate.c:3024
#, c-format
msgid "%s: unknown character in collating symbol name"
msgstr "%s: 未知的字元在å°ç…§ç¬¦è™Ÿå稱中"
-#: locale/programs/ld-collate.c:3152
+#: locale/programs/ld-collate.c:3153
#, c-format
msgid "%s: unknown character in equivalent definition name"
msgstr "%s: 未知的字元在åŒç¾©å®šç¾©å稱中"
-#: locale/programs/ld-collate.c:3163
+#: locale/programs/ld-collate.c:3164
#, c-format
msgid "%s: unknown character in equivalent definition value"
msgstr "%s: 未知的字元在åŒç¾©å®šç¾©å€¼ä¸­"
-#: locale/programs/ld-collate.c:3173
+#: locale/programs/ld-collate.c:3174
#, c-format
msgid "%s: unknown symbol `%s' in equivalent definition"
msgstr "%s: 未知的符號 `%s' 在åŒç¾©å®šç¾©ä¸­"
-#: locale/programs/ld-collate.c:3182
+#: locale/programs/ld-collate.c:3183
msgid "error while adding equivalent collating symbol"
msgstr "正在加入åŒç¾©å°ç…§ç¬¦è™Ÿæ™‚發生錯誤"
-#: locale/programs/ld-collate.c:3220
+#: locale/programs/ld-collate.c:3221
#, c-format
msgid "duplicate definition of script `%s'"
msgstr "敘述 `%s' 的定義é‡è¤‡äº†"
-#: locale/programs/ld-collate.c:3268
+#: locale/programs/ld-collate.c:3269
#, c-format
msgid "%s: unknown section name `%.*s'"
msgstr "%s: ä¸æ˜Žçš„節段å稱「%.*sã€"
-#: locale/programs/ld-collate.c:3297
+#: locale/programs/ld-collate.c:3298
#, c-format
msgid "%s: multiple order definitions for section `%s'"
msgstr "%s: `%s' å€å¡Šä¸­æœ‰å¤šå€‹é †åºå®šç¾©"
-#: locale/programs/ld-collate.c:3325
+#: locale/programs/ld-collate.c:3326
#, c-format
msgid "%s: invalid number of sorting rules"
msgstr "%s: ä¸é©ç”¨çš„排åºè¦å‰‡æ•¸ç›®"
-#: locale/programs/ld-collate.c:3352
+#: locale/programs/ld-collate.c:3353
#, c-format
msgid "%s: multiple order definitions for unnamed section"
msgstr "%s: 未命åçš„å€å¡Šä¸­æœ‰å¤šå€‹é †åºå®šç¾©"
-#: locale/programs/ld-collate.c:3407 locale/programs/ld-collate.c:3537
-#: locale/programs/ld-collate.c:3900
+#: locale/programs/ld-collate.c:3408 locale/programs/ld-collate.c:3538
+#: locale/programs/ld-collate.c:3901
#, c-format
msgid "%s: missing `order_end' keyword"
msgstr "%s: 缺少 `order_end' é—œéµå­—"
-#: locale/programs/ld-collate.c:3470
+#: locale/programs/ld-collate.c:3471
#, c-format
msgid "%s: order for collating symbol %.*s not yet defined"
msgstr "%s: å°ç…§ç¬¦è™Ÿ %.*s çš„é †åºå°šæœªå®šç¾©"
-#: locale/programs/ld-collate.c:3488
+#: locale/programs/ld-collate.c:3489
#, c-format
msgid "%s: order for collating element %.*s not yet defined"
msgstr "%s: å°ç…§å…ƒç´  %.*s çš„é †åºå°šæœªå®šç¾©"
-#: locale/programs/ld-collate.c:3499
+#: locale/programs/ld-collate.c:3500
#, c-format
msgid "%s: cannot reorder after %.*s: symbol not known"
msgstr "%s: 無法é‡æ–°æŽ’列在 %.*s 之後: 未知的符號"
-#: locale/programs/ld-collate.c:3551 locale/programs/ld-collate.c:3912
+#: locale/programs/ld-collate.c:3552 locale/programs/ld-collate.c:3913
#, c-format
msgid "%s: missing `reorder-end' keyword"
msgstr "%s: 缺少 `reorder-end' é—œéµå­—"
-#: locale/programs/ld-collate.c:3585 locale/programs/ld-collate.c:3783
+#: locale/programs/ld-collate.c:3586 locale/programs/ld-collate.c:3784
#, c-format
msgid "%s: section `%.*s' not known"
msgstr "%s: 未知的å€å¡Š `%.*s'"
-#: locale/programs/ld-collate.c:3650
+#: locale/programs/ld-collate.c:3651
#, c-format
msgid "%s: bad symbol <%.*s>"
msgstr "%s: ä¸ç•¶çš„符號 <%.*s>"
-#: locale/programs/ld-collate.c:3846
+#: locale/programs/ld-collate.c:3847
#, c-format
msgid "%s: cannot have `%s' as end of ellipsis range"
msgstr "%s: 無法用 `%s' åšç‚ºçœç•¥å€æ®µçš„çµå°¾"
-#: locale/programs/ld-collate.c:3896
+#: locale/programs/ld-collate.c:3897
#, c-format
msgid "%s: empty category description not allowed"
msgstr "%s: 空白的類別æ述是ä¸å…許的"
-#: locale/programs/ld-collate.c:3915
+#: locale/programs/ld-collate.c:3916
#, c-format
msgid "%s: missing `reorder-sections-end' keyword"
msgstr "%s: 缺少 `reorder-sections-end' é—œéµå­—"
-#: locale/programs/ld-collate.c:4079
+#: locale/programs/ld-collate.c:4080
#, c-format
msgid "%s: '%s' without matching 'ifdef' or 'ifndef'"
msgstr "%s:「%sã€è€Œä¸éœ€å»åˆä¸­ã€Œifdefã€æˆ–「ifndefã€"
-#: locale/programs/ld-collate.c:4097
+#: locale/programs/ld-collate.c:4098
#, c-format
msgid "%s: 'endif' without matching 'ifdef' or 'ifndef'"
msgstr "%s:「endifã€è€Œä¸éœ€å»åˆä¸­ã€Œifdefã€æˆ–「ifndefã€"
-#: locale/programs/ld-ctype.c:439
+#: locale/programs/ld-ctype.c:440
#, c-format
msgid "No character set name specified in charmap"
msgstr "在字元å°æ‡‰ (charmap) 中沒有設定字集å稱"
-#: locale/programs/ld-ctype.c:468
+#: locale/programs/ld-ctype.c:469
#, c-format
msgid "character L'\\u%0*x' in class `%s' must be in class `%s'"
msgstr "character L'\\u%0*x' (放在類別 `%s' 之中) 必須在類別 `%s' 裡é¢"
-#: locale/programs/ld-ctype.c:483
+#: locale/programs/ld-ctype.c:484
#, c-format
msgid "character L'\\u%0*x' in class `%s' must not be in class `%s'"
msgstr "character L'\\u%0*x' (放在類別 `%s' 之中) ä¸èƒ½åœ¨é¡žåˆ¥ `%s' 裡é¢"
-#: locale/programs/ld-ctype.c:497 locale/programs/ld-ctype.c:555
+#: locale/programs/ld-ctype.c:498 locale/programs/ld-ctype.c:556
#, c-format
msgid "internal error in %s, line %u"
msgstr "%s 的第 %u 列發生內部錯誤"
-#: locale/programs/ld-ctype.c:526
+#: locale/programs/ld-ctype.c:527
#, c-format
msgid "character '%s' in class `%s' must be in class `%s'"
msgstr "å­—å…ƒ '%s' (放在類別 `%s' 之中) 必須在類別 `%s' 裡é¢"
-#: locale/programs/ld-ctype.c:542
+#: locale/programs/ld-ctype.c:543
#, c-format
msgid "character '%s' in class `%s' must not be in class `%s'"
msgstr "å­—å…ƒ '%s' (放在類別 `%s' 之中) ä¸èƒ½åœ¨é¡žåˆ¥ `%s' 裡é¢"
-#: locale/programs/ld-ctype.c:572 locale/programs/ld-ctype.c:610
+#: locale/programs/ld-ctype.c:573 locale/programs/ld-ctype.c:611
#, c-format
msgid "<SP> character not in class `%s'"
msgstr "<SP> å­—å…ƒä¸åœ¨é¡žåˆ¥ `%s' 中"
-#: locale/programs/ld-ctype.c:584 locale/programs/ld-ctype.c:621
+#: locale/programs/ld-ctype.c:585 locale/programs/ld-ctype.c:622
#, c-format
msgid "<SP> character must not be in class `%s'"
msgstr "<SP> å­—å…ƒä¸å¯ä»¥åœ¨é¡žåˆ¥ `%s' 中"
-#: locale/programs/ld-ctype.c:599
+#: locale/programs/ld-ctype.c:600
#, c-format
msgid "character <SP> not defined in character map"
msgstr "å­—å…ƒ <SP> 在字集å°ç…§æª”中沒有定義"
-#: locale/programs/ld-ctype.c:735
+#: locale/programs/ld-ctype.c:736
#, c-format
msgid "`digit' category has not entries in groups of ten"
msgstr "`digit' 類別在群組 \"å\" 中沒有項目"
-#: locale/programs/ld-ctype.c:784
+#: locale/programs/ld-ctype.c:785
#, c-format
msgid "no input digits defined and none of the standard names in the charmap"
msgstr "沒有定義輸入數字,在字集å°ç…§æª”中也找ä¸åˆ°ç›¸ç¬¦çš„標準å稱"
-#: locale/programs/ld-ctype.c:849
+#: locale/programs/ld-ctype.c:850
#, c-format
msgid "not all characters used in `outdigit' are available in the charmap"
msgstr "在字集å°ç…§è¡¨ä¸­ç„¡æ³•æ‰¾åˆ°æŸäº›åœ¨ `outdigit' 中用到的字元"
-#: locale/programs/ld-ctype.c:866
+#: locale/programs/ld-ctype.c:867
#, c-format
msgid "not all characters used in `outdigit' are available in the repertoire"
msgstr "在編碼å°æ˜ æª”中無法找到æŸäº›åœ¨ `outdigit' 中用到的字元"
-#: locale/programs/ld-ctype.c:1269
+#: locale/programs/ld-ctype.c:1270
#, c-format
msgid "character class `%s' already defined"
msgstr "字元類別 `%s' 已經定義éŽäº†"
-#: locale/programs/ld-ctype.c:1275
+#: locale/programs/ld-ctype.c:1276
#, c-format
msgid "implementation limit: no more than %Zd character classes allowed"
msgstr "程å¼å¯¦ä½œçš„é™åˆ¶: ä¸èƒ½ä½¿ç”¨è¶…éŽ %Zd 個字集類別"
-#: locale/programs/ld-ctype.c:1301
+#: locale/programs/ld-ctype.c:1302
#, c-format
msgid "character map `%s' already defined"
msgstr "字集å°ç…§æª” `%s' 已經定義éŽäº†"
-#: locale/programs/ld-ctype.c:1307
+#: locale/programs/ld-ctype.c:1308
#, c-format
msgid "implementation limit: no more than %d character maps allowed"
msgstr "程å¼å¯¦ä½œçš„é™åˆ¶: ä¸èƒ½ä½¿ç”¨è¶…éŽ %d 個字集å°ç…§æª”"
-#: locale/programs/ld-ctype.c:1572 locale/programs/ld-ctype.c:1697
-#: locale/programs/ld-ctype.c:1803 locale/programs/ld-ctype.c:2493
-#: locale/programs/ld-ctype.c:3489
+#: locale/programs/ld-ctype.c:1573 locale/programs/ld-ctype.c:1698
+#: locale/programs/ld-ctype.c:1804 locale/programs/ld-ctype.c:2494
+#: locale/programs/ld-ctype.c:3490
#, c-format
msgid "%s: field `%s' does not contain exactly ten entries"
msgstr "%s: `%s' 欄ä½æ²’有精確包å«å個項目"
-#: locale/programs/ld-ctype.c:1600 locale/programs/ld-ctype.c:2174
+#: locale/programs/ld-ctype.c:1601 locale/programs/ld-ctype.c:2175
#, c-format
msgid "to-value <U%0*X> of range is smaller than from-value <U%0*X>"
msgstr "å€åŸŸå®šç¾©çš„çµå°¾å€¼ <U%0*X> 比起始值 <U%0*X> é‚„è¦å°"
-#: locale/programs/ld-ctype.c:1727
+#: locale/programs/ld-ctype.c:1728
msgid "start and end character sequence of range must have the same length"
msgstr "從起始到çµæŸä¹‹é–“çš„å­—å…ƒåºåˆ—長度跟編碼範åœå¿…須相åŒ"
-#: locale/programs/ld-ctype.c:1734
+#: locale/programs/ld-ctype.c:1735
msgid "to-value character sequence is smaller than from-value sequence"
msgstr "å­—å…ƒåºåˆ—定義的çµå°¾å€¼æ¯”起始值還è¦å°"
-#: locale/programs/ld-ctype.c:2094 locale/programs/ld-ctype.c:2145
+#: locale/programs/ld-ctype.c:2095 locale/programs/ld-ctype.c:2146
msgid "premature end of `translit_ignore' definition"
msgstr "`translit_ignore' 定義沒有按時çµæŸ"
-#: locale/programs/ld-ctype.c:2100 locale/programs/ld-ctype.c:2151
-#: locale/programs/ld-ctype.c:2193
+#: locale/programs/ld-ctype.c:2101 locale/programs/ld-ctype.c:2152
+#: locale/programs/ld-ctype.c:2194
msgid "syntax error"
msgstr "語法錯誤"
-#: locale/programs/ld-ctype.c:2326
+#: locale/programs/ld-ctype.c:2327
#, c-format
msgid "%s: syntax error in definition of new character class"
msgstr "%s: 在定義新字元類別時語法錯誤"
-#: locale/programs/ld-ctype.c:2341
+#: locale/programs/ld-ctype.c:2342
#, c-format
msgid "%s: syntax error in definition of new character map"
msgstr "%s: 在定義新字元å°æ‡‰æ™‚語法錯誤"
-#: locale/programs/ld-ctype.c:2515
+#: locale/programs/ld-ctype.c:2516
msgid "ellipsis range must be marked by two operands of same type"
msgstr "çœç•¥å€åŸŸå¿…須用兩個型別相åŒçš„é‹ç®—元標示出來"
-#: locale/programs/ld-ctype.c:2524
+#: locale/programs/ld-ctype.c:2525
msgid "with symbolic name range values the absolute ellipsis `...' must not be used"
msgstr "用符號å稱來指定字元編碼範åœæ™‚ä¸å¯ä»¥ç”¨çµ•å°ä½ç½®çš„çœç•¥ç¬¦è™Ÿ `…'"
-#: locale/programs/ld-ctype.c:2539
+#: locale/programs/ld-ctype.c:2540
msgid "with UCS range values one must use the hexadecimal symbolic ellipsis `..'"
msgstr "用來指定 UCS 值的範åœæ™‚得用å六進ä½è¡¨ç¤ºçš„çœç•¥ç¬¦è™Ÿ `..'"
-#: locale/programs/ld-ctype.c:2553
+#: locale/programs/ld-ctype.c:2554
msgid "with character code range values one must use the absolute ellipsis `...'"
msgstr "用來指定字元編碼值的範åœæ™‚得用絕å°ä½ç½®çš„çœç•¥ç¬¦è™Ÿ `…'"
-#: locale/programs/ld-ctype.c:2704
+#: locale/programs/ld-ctype.c:2705
#, c-format
msgid "duplicated definition for mapping `%s'"
msgstr "å°æ˜  `%s' 的定義é‡è¤‡äº†"
-#: locale/programs/ld-ctype.c:2790 locale/programs/ld-ctype.c:2934
+#: locale/programs/ld-ctype.c:2791 locale/programs/ld-ctype.c:2935
#, c-format
msgid "%s: `translit_start' section does not end with `translit_end'"
msgstr "%s: `translit_start' å°ç¯€ä¸¦æ²’有以 `translit_end' åšç‚ºçµæŸ"
-#: locale/programs/ld-ctype.c:2885
+#: locale/programs/ld-ctype.c:2886
#, c-format
msgid "%s: duplicate `default_missing' definition"
msgstr "%s: é‡è¤‡çš„ `default_missing' 定義"
-#: locale/programs/ld-ctype.c:2890
+#: locale/programs/ld-ctype.c:2891
msgid "previous definition was here"
msgstr "å…ˆå‰çš„設定在此"
-#: locale/programs/ld-ctype.c:2912
+#: locale/programs/ld-ctype.c:2913
#, c-format
msgid "%s: no representable `default_missing' definition found"
msgstr "%s: 找ä¸åˆ°å¯è¡¨ç¤ºç‚º `default_missing' 的定義"
-#: locale/programs/ld-ctype.c:3065 locale/programs/ld-ctype.c:3149
-#: locale/programs/ld-ctype.c:3169 locale/programs/ld-ctype.c:3190
-#: locale/programs/ld-ctype.c:3211 locale/programs/ld-ctype.c:3232
-#: locale/programs/ld-ctype.c:3253 locale/programs/ld-ctype.c:3293
-#: locale/programs/ld-ctype.c:3314 locale/programs/ld-ctype.c:3381
-#: locale/programs/ld-ctype.c:3423 locale/programs/ld-ctype.c:3448
+#: locale/programs/ld-ctype.c:3066 locale/programs/ld-ctype.c:3150
+#: locale/programs/ld-ctype.c:3170 locale/programs/ld-ctype.c:3191
+#: locale/programs/ld-ctype.c:3212 locale/programs/ld-ctype.c:3233
+#: locale/programs/ld-ctype.c:3254 locale/programs/ld-ctype.c:3294
+#: locale/programs/ld-ctype.c:3315 locale/programs/ld-ctype.c:3382
+#: locale/programs/ld-ctype.c:3424 locale/programs/ld-ctype.c:3449
#, c-format
msgid "%s: character `%s' not defined while needed as default value"
msgstr "%s: å­—å…ƒ `%s' 沒有定義,但它是必需的é è¨­å€¼"
-#: locale/programs/ld-ctype.c:3070 locale/programs/ld-ctype.c:3154
-#: locale/programs/ld-ctype.c:3174 locale/programs/ld-ctype.c:3195
-#: locale/programs/ld-ctype.c:3216 locale/programs/ld-ctype.c:3237
-#: locale/programs/ld-ctype.c:3258 locale/programs/ld-ctype.c:3298
-#: locale/programs/ld-ctype.c:3319 locale/programs/ld-ctype.c:3386
+#: locale/programs/ld-ctype.c:3071 locale/programs/ld-ctype.c:3155
+#: locale/programs/ld-ctype.c:3175 locale/programs/ld-ctype.c:3196
+#: locale/programs/ld-ctype.c:3217 locale/programs/ld-ctype.c:3238
+#: locale/programs/ld-ctype.c:3259 locale/programs/ld-ctype.c:3299
+#: locale/programs/ld-ctype.c:3320 locale/programs/ld-ctype.c:3387
#, c-format
msgid "%s: character `%s' in charmap not representable with one byte"
msgstr "%s: 字集å°ç…§è¡¨ä¸­çš„å­—å…ƒ `%s' 無法表示為單一ä½å…ƒçµ„"
-#: locale/programs/ld-ctype.c:3430 locale/programs/ld-ctype.c:3455
+#: locale/programs/ld-ctype.c:3431 locale/programs/ld-ctype.c:3456
#, c-format
msgid "%s: character `%s' needed as default value not representable with one byte"
msgstr "%s: åšç‚ºé è¨­å€¼æ‰€éœ€çš„å­—å…ƒ `%s' 無法表示為單一ä½å…ƒçµ„"
-#: locale/programs/ld-ctype.c:3511
+#: locale/programs/ld-ctype.c:3512
#, c-format
msgid "no output digits defined and none of the standard names in the charmap"
msgstr "沒有定義輸出數字,在字集å°ç…§æª”中也找ä¸åˆ°ç›¸ç¬¦çš„標準å稱"
-#: locale/programs/ld-ctype.c:3802
+#: locale/programs/ld-ctype.c:3803
#, c-format
msgid "%s: transliteration data from locale `%s' not available"
msgstr "%s: 語å€è³‡æ–™`%s' 的音譯資料ä¸å­˜åœ¨"
-#: locale/programs/ld-ctype.c:3903
+#: locale/programs/ld-ctype.c:3904
#, c-format
msgid "%s: table for class \"%s\": %lu bytes\n"
msgstr "%s: 類別 \"%s\" 表格: %lu ä½å…ƒçµ„\n"
-#: locale/programs/ld-ctype.c:3972
+#: locale/programs/ld-ctype.c:3973
#, c-format
msgid "%s: table for map \"%s\": %lu bytes\n"
msgstr "%s: å°æ˜ è¡¨ \"%s\" 表格: %lu ä½å…ƒçµ„\n"
-#: locale/programs/ld-ctype.c:4105
+#: locale/programs/ld-ctype.c:4106
#, c-format
msgid "%s: table for width: %lu bytes\n"
msgstr "%s: 寬度表格: %lu ä½å…ƒçµ„\n"
-#: locale/programs/ld-identification.c:169
+#: locale/programs/ld-identification.c:170
#, c-format
msgid "%s: no identification for category `%s'"
msgstr "%s: 類別 `%s' 沒有èªè­‰"
-#: locale/programs/ld-identification.c:434
+#: locale/programs/ld-identification.c:435
#, c-format
msgid "%s: duplicate category version definition"
msgstr "%s: é‡è¤‡çš„類別版本定義"
-#: locale/programs/ld-measurement.c:112
+#: locale/programs/ld-measurement.c:113
#, c-format
msgid "%s: invalid value for field `%s'"
msgstr "%s: åœ¨æ¬„ä½ `%s' 中的值ä¸é©ç”¨"
-#: locale/programs/ld-messages.c:113 locale/programs/ld-messages.c:147
+#: locale/programs/ld-messages.c:114 locale/programs/ld-messages.c:148
#, c-format
msgid "%s: field `%s' undefined"
msgstr "%s: æ¬„ä½ `%s' 沒有定義"
-#: locale/programs/ld-messages.c:120 locale/programs/ld-messages.c:154
-#: locale/programs/ld-monetary.c:255 locale/programs/ld-numeric.c:117
+#: locale/programs/ld-messages.c:121 locale/programs/ld-messages.c:155
+#: locale/programs/ld-monetary.c:255 locale/programs/ld-numeric.c:118
#, c-format
msgid "%s: value for field `%s' must not be an empty string"
msgstr "%s: æ¬„ä½ `%s' 值ä¸å¯ä»¥æ˜¯ç©ºå­—串"
-#: locale/programs/ld-messages.c:136 locale/programs/ld-messages.c:170
+#: locale/programs/ld-messages.c:137 locale/programs/ld-messages.c:171
#, c-format
msgid "%s: no correct regular expression for field `%s': %s"
msgstr "%s: æ²’æœ‰çµ¦æ¬„ä½ `%s' 正確的常è¦è¡¨ç¤ºå¼ï¼š %s"
@@ -2418,17 +2435,17 @@ msgstr "%s: æ¬„ä½ `int_curr_symbol' 值並ä¸æ˜¯ ISO 4217 中åˆæ³•çš„å稱"
msgid "%s: value for field `%s' must be in range %d...%d"
msgstr "%s: æ¬„ä½ `%s' çš„å€¼å¿…é ˆåœ¨ç¯„åœ %d…%d"
-#: locale/programs/ld-monetary.c:746 locale/programs/ld-numeric.c:273
+#: locale/programs/ld-monetary.c:746 locale/programs/ld-numeric.c:274
#, c-format
msgid "%s: value for field `%s' must be a single character"
msgstr "%s: æ¬„ä½ `%s' 的值必須是個單一字元"
-#: locale/programs/ld-monetary.c:843 locale/programs/ld-numeric.c:317
+#: locale/programs/ld-monetary.c:843 locale/programs/ld-numeric.c:318
#, c-format
msgid "%s: `-1' must be last entry in `%s' field"
msgstr "%s: `-1' 在 `%s' 欄ä½ä¸­å¿…須是最後一個項目"
-#: locale/programs/ld-monetary.c:865 locale/programs/ld-numeric.c:334
+#: locale/programs/ld-monetary.c:865 locale/programs/ld-numeric.c:335
#, c-format
msgid "%s: values for field `%s' must be smaller than 127"
msgstr "%s: æ¬„ä½ `%s' 的值必須å°æ–¼ 127"
@@ -2437,126 +2454,126 @@ msgstr "%s: æ¬„ä½ `%s' 的值必須å°æ–¼ 127"
msgid "conversion rate value cannot be zero"
msgstr "轉æ›çŽ‡çš„值ä¸å¯ä»¥æ˜¯é›¶"
-#: locale/programs/ld-name.c:128 locale/programs/ld-telephone.c:125
-#: locale/programs/ld-telephone.c:148
+#: locale/programs/ld-name.c:129 locale/programs/ld-telephone.c:126
+#: locale/programs/ld-telephone.c:149
#, c-format
msgid "%s: invalid escape sequence in field `%s'"
msgstr "%s: åœ¨æ¬„ä½ `%s' 中的跳脫åºåˆ—ä¸é©ç”¨"
-#: locale/programs/ld-time.c:246
+#: locale/programs/ld-time.c:247
#, c-format
msgid "%s: direction flag in string %Zd in `era' field is not '+' nor '-'"
msgstr "%s: 在 `era' 欄ä½çš„字串 %Zd 中,方å‘旗標既ä¸æ˜¯ '+' 也ä¸æ˜¯ '-'"
-#: locale/programs/ld-time.c:257
+#: locale/programs/ld-time.c:258
#, c-format
msgid "%s: direction flag in string %Zd in `era' field is not a single character"
msgstr "%s: 在 `era' 欄ä½çš„字串 %Zd 中,方å‘旗標ä¸æ˜¯ä¸€å€‹å–®ä¸€å­—å…ƒ"
-#: locale/programs/ld-time.c:270
+#: locale/programs/ld-time.c:271
#, c-format
msgid "%s: invalid number for offset in string %Zd in `era' field"
msgstr "%s: 在 `era' 欄ä½ã€å­—串 %Zd 中的ä½ç§»æ•¸å­—ä¸é©ç”¨"
-#: locale/programs/ld-time.c:278
+#: locale/programs/ld-time.c:279
#, c-format
msgid "%s: garbage at end of offset value in string %Zd in `era' field"
msgstr "%s: 無用的資料,在 `era' 欄ä½ã€å­—串 %Zd 中末尾的ä½ç§»å€¼"
-#: locale/programs/ld-time.c:329
+#: locale/programs/ld-time.c:330
#, c-format
msgid "%s: invalid starting date in string %Zd in `era' field"
msgstr "%s: 在 `era' 欄ä½ã€å­—串 %Zd 中的起始日期ä¸é©ç”¨"
-#: locale/programs/ld-time.c:338
+#: locale/programs/ld-time.c:339
#, c-format
msgid "%s: garbage at end of starting date in string %Zd in `era' field "
msgstr "%s: 無用的資料,在 `era' 欄ä½ã€å­—串 %Zd 中末尾的起始日期"
-#: locale/programs/ld-time.c:357
+#: locale/programs/ld-time.c:358
#, c-format
msgid "%s: starting date is invalid in string %Zd in `era' field"
msgstr "%s: 在 `era' å€åŸŸçš„字串 %Zd 中的啟始日期是ä¸é©ç”¨çš„"
-#: locale/programs/ld-time.c:406 locale/programs/ld-time.c:434
+#: locale/programs/ld-time.c:407 locale/programs/ld-time.c:435
#, c-format
msgid "%s: invalid stopping date in string %Zd in `era' field"
msgstr "%s: 在 `era' 欄ä½ã€å­—串 %Zd 中的çµæŸæ—¥æœŸä¸é©ç”¨"
-#: locale/programs/ld-time.c:415
+#: locale/programs/ld-time.c:416
#, c-format
msgid "%s: garbage at end of stopping date in string %Zd in `era' field"
msgstr "%s: 無用的資料,在 `era' å€åŸŸã€å­—串 %Zd 中末尾的çµæŸæ—¥æœŸ"
-#: locale/programs/ld-time.c:443
+#: locale/programs/ld-time.c:444
#, c-format
msgid "%s: missing era name in string %Zd in `era' field"
msgstr "%s: 缺少 era å稱,在 `era' 欄ä½ã€å­—串 %Zd 中"
-#: locale/programs/ld-time.c:455
+#: locale/programs/ld-time.c:456
#, c-format
msgid "%s: missing era format in string %Zd in `era' field"
msgstr "%s: 缺少 era æ ¼å¼ï¼Œåœ¨ `era' 欄ä½ã€å­—串 %Zd 中"
-#: locale/programs/ld-time.c:496
+#: locale/programs/ld-time.c:497
#, c-format
msgid "%s: third operand for value of field `%s' must not be larger than %d"
msgstr "%s: æ¬„ä½ `%s' 值的第三個é‹ç®—å…ƒä¸å¯ä»¥æ¯” %d 大"
-#: locale/programs/ld-time.c:504 locale/programs/ld-time.c:512
-#: locale/programs/ld-time.c:520
+#: locale/programs/ld-time.c:505 locale/programs/ld-time.c:513
+#: locale/programs/ld-time.c:521
#, c-format
msgid "%s: values for field `%s' must not be larger than %d"
msgstr "%s: æ¬„ä½ `%s' 的值ä¸å¯ä»¥å¤§æ–¼ %d"
-#: locale/programs/ld-time.c:1003
+#: locale/programs/ld-time.c:1004
#, c-format
msgid "%s: too few values for field `%s'"
msgstr "%s: æ¬„ä½ `%s' 中的值太少"
-#: locale/programs/ld-time.c:1048
+#: locale/programs/ld-time.c:1049
msgid "extra trailing semicolon"
msgstr "多出的尾端分號"
-#: locale/programs/ld-time.c:1051
+#: locale/programs/ld-time.c:1052
#, c-format
msgid "%s: too many values for field `%s'"
msgstr "%s: æ¬„ä½ `%s' 中的值太多"
-#: locale/programs/linereader.c:129
+#: locale/programs/linereader.c:130
msgid "trailing garbage at end of line"
msgstr "列çµå°¾çš„無用字元"
-#: locale/programs/linereader.c:297
+#: locale/programs/linereader.c:298
msgid "garbage at end of number"
msgstr "號碼çµæŸä½ç½®çš„無用資料"
-#: locale/programs/linereader.c:409
+#: locale/programs/linereader.c:410
msgid "garbage at end of character code specification"
msgstr "字元編碼設定çµæŸä½ç½®çš„無用資料"
-#: locale/programs/linereader.c:495
+#: locale/programs/linereader.c:496
msgid "unterminated symbolic name"
msgstr "沒有çµå°¾çš„符號å稱"
-#: locale/programs/linereader.c:622
+#: locale/programs/linereader.c:623
msgid "illegal escape sequence at end of string"
msgstr "字串çµå°¾æœ‰ä¸åˆæ³•çš„跳脫åºåˆ—"
-#: locale/programs/linereader.c:626 locale/programs/linereader.c:854
+#: locale/programs/linereader.c:627 locale/programs/linereader.c:855
msgid "unterminated string"
msgstr "沒有çµå°¾çš„字串"
-#: locale/programs/linereader.c:668
+#: locale/programs/linereader.c:669
msgid "non-symbolic character value should not be used"
msgstr "éžç¬¦è™Ÿæ€§çš„字元值ä¸æ‡‰è©²è¢«ä½¿ç”¨æ‰å°"
-#: locale/programs/linereader.c:815
+#: locale/programs/linereader.c:816
#, c-format
msgid "symbol `%.*s' not in charmap"
msgstr "符號 `%.*s' 並ä¸åœ¨å­—集å°ç…§è¡¨ä¸­"
-#: locale/programs/linereader.c:836
+#: locale/programs/linereader.c:837
#, c-format
msgid "symbol `%.*s' not in repertoire map"
msgstr "符號 `%.*s' 並ä¸åœ¨ç·¨ç¢¼å°æ˜ æª”中"
@@ -2566,39 +2583,39 @@ msgstr "符號 `%.*s' 並ä¸åœ¨ç·¨ç¢¼å°æ˜ æª”中"
msgid "unknown name \"%s\""
msgstr "ä¸æ˜Žå稱「%sã€"
-#: locale/programs/locale.c:74
+#: locale/programs/locale.c:72
msgid "System information:"
msgstr "系統相關資訊:"
-#: locale/programs/locale.c:76
+#: locale/programs/locale.c:74
msgid "Write names of available locales"
msgstr "寫出存在的語å€è³‡æ–™å稱"
-#: locale/programs/locale.c:78
+#: locale/programs/locale.c:76
msgid "Write names of available charmaps"
msgstr "寫出存在的字集å°ç…§è¡¨å稱"
-#: locale/programs/locale.c:79
+#: locale/programs/locale.c:77
msgid "Modify output format:"
msgstr "修改輸出格å¼:"
-#: locale/programs/locale.c:80
+#: locale/programs/locale.c:78
msgid "Write names of selected categories"
msgstr "寫出é¸å–的類別å稱"
-#: locale/programs/locale.c:81
+#: locale/programs/locale.c:79
msgid "Write names of selected keywords"
msgstr "寫出é¸å–çš„é—œéµå­—å稱"
-#: locale/programs/locale.c:82
+#: locale/programs/locale.c:80
msgid "Print more information"
msgstr "å°å‡ºæ›´å¤šçš„資訊"
-#: locale/programs/locale.c:87
+#: locale/programs/locale.c:85
msgid "Get locale-specific information."
msgstr "å–得語å€è³‡æ–™ç‰¹å®šçš„資訊"
-#: locale/programs/locale.c:90
+#: locale/programs/locale.c:88
msgid ""
"NAME\n"
"[-a|-m]"
@@ -2606,27 +2623,27 @@ msgstr ""
"å稱\n"
"[-a|-m]"
-#: locale/programs/locale.c:194
+#: locale/programs/locale.c:192
#, c-format
msgid "Cannot set LC_CTYPE to default locale"
msgstr "無法將 LC_CTYPE 設置為é è¨­çš„語å€"
-#: locale/programs/locale.c:196
+#: locale/programs/locale.c:194
#, c-format
msgid "Cannot set LC_MESSAGES to default locale"
msgstr "無法將 LC_MESSAGES 設置為é è¨­çš„語å€"
-#: locale/programs/locale.c:209
+#: locale/programs/locale.c:207
#, c-format
msgid "Cannot set LC_COLLATE to default locale"
msgstr "無法將 LC_COLLATE 設置為é è¨­çš„語å€"
-#: locale/programs/locale.c:225
+#: locale/programs/locale.c:223
#, c-format
msgid "Cannot set LC_ALL to default locale"
msgstr "無法將 LC_ALL 設置為é è¨­çš„語å€"
-#: locale/programs/locale.c:521
+#: locale/programs/locale.c:519
#, c-format
msgid "while preparing output"
msgstr "在準備輸出時"
@@ -2639,71 +2656,71 @@ msgstr "輸入檔:"
msgid "Symbolic character names defined in FILE"
msgstr "符號字元的å稱定義在檔案 FILE 中"
-#: locale/programs/localedef.c:122
+#: locale/programs/localedef.c:123
msgid "Source definitions are found in FILE"
msgstr "原始資料定義在檔案 FILE 中"
-#: locale/programs/localedef.c:124
+#: locale/programs/localedef.c:125
msgid "FILE contains mapping from symbolic names to UCS4 values"
msgstr "檔案 FILE å…§å«ç¬¦è™Ÿå與 UCS4 編碼之間的å°æ˜ "
-#: locale/programs/localedef.c:128
+#: locale/programs/localedef.c:129
msgid "Create output even if warning messages were issued"
msgstr "產生輸出å³ä½¿æ˜¯æœ‰è­¦å‘Šè¨Šæ¯"
-#: locale/programs/localedef.c:129
+#: locale/programs/localedef.c:130
msgid "Create old-style tables"
msgstr "產生舊格å¼çš„表格"
-#: locale/programs/localedef.c:130
+#: locale/programs/localedef.c:131
msgid "Optional output file prefix"
msgstr "å¯æœ‰å¯ç„¡çš„輸出檔路徑"
-#: locale/programs/localedef.c:131
-msgid "Be strictly POSIX conform"
+#: locale/programs/localedef.c:132
+msgid "Strictly conform to POSIX"
msgstr "åš´æ ¼éµå¾ž POSIX"
-#: locale/programs/localedef.c:133
+#: locale/programs/localedef.c:134
msgid "Suppress warnings and information messages"
msgstr "忽略警告與æ示訊æ¯"
-#: locale/programs/localedef.c:134
+#: locale/programs/localedef.c:135
msgid "Print more messages"
msgstr "å°å‡ºæ›´å¤šçš„訊æ¯"
-#: locale/programs/localedef.c:135
+#: locale/programs/localedef.c:136
msgid "Archive control:"
msgstr "ä¿å­˜æª”控制:"
-#: locale/programs/localedef.c:137
+#: locale/programs/localedef.c:138
msgid "Don't add new data to archive"
msgstr "ä¸è¦åŠ å…¥æ–°è³‡æ–™åˆ°ä¿å­˜æª”"
-#: locale/programs/localedef.c:139
+#: locale/programs/localedef.c:140
msgid "Add locales named by parameters to archive"
msgstr "藉由åƒæ•¸åŠ å…¥èªžå€å稱到ä¿å­˜æª”"
-#: locale/programs/localedef.c:140
+#: locale/programs/localedef.c:141
msgid "Replace existing archive content"
msgstr "替æ›å·²æœ‰çš„ä¿å­˜æª”內容"
-#: locale/programs/localedef.c:142
+#: locale/programs/localedef.c:143
msgid "Remove locales named by parameters from archive"
msgstr "藉由åƒæ•¸å¾žä¿å­˜æª”中刪除語å€å稱"
-#: locale/programs/localedef.c:143
+#: locale/programs/localedef.c:144
msgid "List content of archive"
msgstr "列出ä¿å­˜æª”的內容"
-#: locale/programs/localedef.c:145
+#: locale/programs/localedef.c:146
msgid "locale.alias file to consult when making archive"
msgstr "製作ä¿å­˜æª”時查閱 locale.alias 檔案"
-#: locale/programs/localedef.c:150
+#: locale/programs/localedef.c:151
msgid "Compile locale specification"
msgstr "編譯語å€è³‡æ–™è¦æ ¼"
-#: locale/programs/localedef.c:153
+#: locale/programs/localedef.c:154
msgid ""
"NAME\n"
"[--add-to-archive|--delete-from-archive] FILE...\n"
@@ -2713,28 +2730,28 @@ msgstr ""
"[--add-to-archive|--delete-from-archive] 檔案...\n"
"--list-archive [檔案]"
-#: locale/programs/localedef.c:228
+#: locale/programs/localedef.c:229
#, c-format
msgid "cannot create directory for output files"
msgstr "無法為輸出檔建立目錄"
-#: locale/programs/localedef.c:239
+#: locale/programs/localedef.c:240
#, c-format
msgid "FATAL: system does not define `_POSIX2_LOCALEDEF'"
msgstr "åš´é‡éŒ¯èª¤: 系統沒有定義 `_POSIX2_LOCALEDEF'"
-#: locale/programs/localedef.c:253 locale/programs/localedef.c:269
-#: locale/programs/localedef.c:601 locale/programs/localedef.c:621
+#: locale/programs/localedef.c:254 locale/programs/localedef.c:270
+#: locale/programs/localedef.c:602 locale/programs/localedef.c:622
#, c-format
msgid "cannot open locale definition file `%s'"
msgstr "無法開啟語å€è³‡æ–™å®šç¾©æª” `%s'"
-#: locale/programs/localedef.c:281
+#: locale/programs/localedef.c:282
#, c-format
msgid "cannot write output files to `%s'"
msgstr "無法將輸出檔案寫入 `%s'"
-#: locale/programs/localedef.c:367
+#: locale/programs/localedef.c:368
#, c-format
msgid ""
"System's directory for character maps : %s\n"
@@ -2747,146 +2764,145 @@ msgstr ""
"\t\t 語å€è·¯å¾‘ :%s\n"
"%s"
-#: locale/programs/localedef.c:569
+#: locale/programs/localedef.c:570
#, c-format
msgid "circular dependencies between locale definitions"
msgstr "有語å€è³‡æ–™åœ¨å®šç¾©æ™‚發生循環相關的情æ³"
-#: locale/programs/localedef.c:575
+#: locale/programs/localedef.c:576
#, c-format
msgid "cannot add already read locale `%s' a second time"
msgstr " `%s' 語å€è³‡æ–™å·²ç¶“用éŽï¼Œä¸èƒ½é‡è¤‡åŠ å…¥"
-#: locale/programs/locarchive.c:113 locale/programs/locarchive.c:347
-#: nss/makedb.c:290
+#: locale/programs/locarchive.c:125 locale/programs/locarchive.c:367
#, c-format
-msgid "cannot create temporary file"
-msgstr "無法產生暫時檔"
+msgid "cannot create temporary file: %s"
+msgstr "無法產生暫時檔:%s"
-#: locale/programs/locarchive.c:143 locale/programs/locarchive.c:393
+#: locale/programs/locarchive.c:155 locale/programs/locarchive.c:413
#, c-format
msgid "cannot initialize archive file"
msgstr "無法起始ä¿å­˜æª”"
-#: locale/programs/locarchive.c:150 locale/programs/locarchive.c:400
+#: locale/programs/locarchive.c:162 locale/programs/locarchive.c:420
#, c-format
msgid "cannot resize archive file"
msgstr "無法改變ä¿å­˜æª”大å°"
-#: locale/programs/locarchive.c:163 locale/programs/locarchive.c:413
-#: locale/programs/locarchive.c:619
+#: locale/programs/locarchive.c:177 locale/programs/locarchive.c:435
+#: locale/programs/locarchive.c:645
#, c-format
msgid "cannot map archive header"
msgstr "無法註記ä¿å­˜æª”表頭"
-#: locale/programs/locarchive.c:185
+#: locale/programs/locarchive.c:199
#, c-format
msgid "failed to create new locale archive"
msgstr "無法建立新的語å€ä¿å­˜æª”"
-#: locale/programs/locarchive.c:197
+#: locale/programs/locarchive.c:211
#, c-format
msgid "cannot change mode of new locale archive"
msgstr "無法改變新的語å€è³‡æ–™ä¿å­˜æª”狀態"
-#: locale/programs/locarchive.c:296
+#: locale/programs/locarchive.c:311
#, c-format
msgid "cannot read data from locale archive"
msgstr "無法從語å€æ­¸æª”讀å–資料"
-#: locale/programs/locarchive.c:327
+#: locale/programs/locarchive.c:342
#, c-format
msgid "cannot map locale archive file"
msgstr "無法映射語å€è³‡æ–™ä¿å­˜æª”"
-#: locale/programs/locarchive.c:421
+#: locale/programs/locarchive.c:443
#, c-format
msgid "cannot lock new archive"
msgstr "無法鎖定新的ä¿å­˜æª”"
-#: locale/programs/locarchive.c:485
+#: locale/programs/locarchive.c:509
#, c-format
msgid "cannot extend locale archive file"
msgstr "無法延展語å€è³‡æ–™ä¿å­˜æª”"
-#: locale/programs/locarchive.c:494
+#: locale/programs/locarchive.c:518
#, c-format
msgid "cannot change mode of resized locale archive"
msgstr "無法改變已變更大å°çš„語å€è³‡æ–™ä¿å­˜æª”狀態"
-#: locale/programs/locarchive.c:502
+#: locale/programs/locarchive.c:526
#, c-format
msgid "cannot rename new archive"
msgstr "無法更改新ä¿å­˜æª”å稱"
-#: locale/programs/locarchive.c:555
+#: locale/programs/locarchive.c:579
#, c-format
msgid "cannot open locale archive \"%s\""
msgstr "無法開啟語å€è³‡æ–™ä¿å­˜æª” \"%s\""
-#: locale/programs/locarchive.c:560
+#: locale/programs/locarchive.c:584
#, c-format
msgid "cannot stat locale archive \"%s\""
msgstr "無法統計語å€è³‡æ–™ä¿å­˜æª” \"%s\""
-#: locale/programs/locarchive.c:579
+#: locale/programs/locarchive.c:603
#, c-format
msgid "cannot lock locale archive \"%s\""
msgstr "無法鎖定語å€è³‡æ–™ä¿å­˜æª” \"%s\""
-#: locale/programs/locarchive.c:602
+#: locale/programs/locarchive.c:626
#, c-format
msgid "cannot read archive header"
msgstr "無法讀å–ä¿å­˜æª”表頭資料"
-#: locale/programs/locarchive.c:666
+#: locale/programs/locarchive.c:697
#, c-format
msgid "locale '%s' already exists"
msgstr "語å€è³‡æ–™ `%s' 已經存在"
-#: locale/programs/locarchive.c:928 locale/programs/locarchive.c:943
-#: locale/programs/locarchive.c:955 locale/programs/locarchive.c:967
+#: locale/programs/locarchive.c:959 locale/programs/locarchive.c:974
+#: locale/programs/locarchive.c:986 locale/programs/locarchive.c:998
#: locale/programs/locfile.c:343
#, c-format
msgid "cannot add to locale archive"
msgstr "無法加入語å€è³‡æ–™ä¿å­˜æª”"
-#: locale/programs/locarchive.c:1125
+#: locale/programs/locarchive.c:1156
#, c-format
msgid "locale alias file `%s' not found"
msgstr "找ä¸åˆ°èªžå€è³‡æ–™åˆ¥å檔 `%s'"
-#: locale/programs/locarchive.c:1275
+#: locale/programs/locarchive.c:1306
#, c-format
msgid "Adding %s\n"
msgstr "加入 %s 中\n"
-#: locale/programs/locarchive.c:1281
+#: locale/programs/locarchive.c:1312
#, c-format
msgid "stat of \"%s\" failed: %s: ignored"
msgstr "å–å¾— \"%s\" 的資訊時失敗: %s: 已忽略"
-#: locale/programs/locarchive.c:1287
+#: locale/programs/locarchive.c:1318
#, c-format
msgid "\"%s\" is no directory; ignored"
msgstr "\"%s\" 並éžç›®éŒ„; 已忽略"
-#: locale/programs/locarchive.c:1294
+#: locale/programs/locarchive.c:1325
#, c-format
msgid "cannot open directory \"%s\": %s: ignored"
msgstr "無法開啟目錄 \"%s\": %s: 已忽略"
-#: locale/programs/locarchive.c:1366
+#: locale/programs/locarchive.c:1397
#, c-format
msgid "incomplete set of locale files in \"%s\""
msgstr "ä¸å®Œæ•´çš„一組語å€è³‡æ–™æª”案存在於 \"%s\" 之中"
-#: locale/programs/locarchive.c:1430
+#: locale/programs/locarchive.c:1461
#, c-format
msgid "cannot read all files in \"%s\": ignored"
msgstr "ç„¡æ³•è®€å– \"%s\" 中的所有檔案: 已忽略"
-#: locale/programs/locarchive.c:1500
+#: locale/programs/locarchive.c:1531
#, c-format
msgid "locale \"%s\" not in archive"
msgstr "語å€è³‡æ–™ \"%s\" ä¸åœ¨ä¿å­˜æª”中"
@@ -2932,22 +2948,22 @@ msgstr "使用 `copy' 的時候ä¸æ‡‰è©²å†ç”¨åˆ°ä»»ä½•å…¶ä»–çš„é—œéµå­—了"
msgid "`%1$s' definition does not end with `END %1$s'"
msgstr "`%1$s' 定義沒有以 `END %1$s' çµæŸ"
-#: locale/programs/repertoire.c:228 locale/programs/repertoire.c:269
-#: locale/programs/repertoire.c:294
+#: locale/programs/repertoire.c:229 locale/programs/repertoire.c:270
+#: locale/programs/repertoire.c:295
#, c-format
msgid "syntax error in repertoire map definition: %s"
msgstr "編碼å°æ˜ æª”中的定義有語法錯誤: %s"
-#: locale/programs/repertoire.c:270
+#: locale/programs/repertoire.c:271
msgid "no <Uxxxx> or <Uxxxxxxxx> value given"
msgstr "沒有給定 <Uxxxx> 或 <Uxxxxxxxx> 的值"
-#: locale/programs/repertoire.c:330
+#: locale/programs/repertoire.c:331
#, c-format
msgid "cannot save new repertoire map"
msgstr "無法儲存新的編碼å°æ˜ æª”"
-#: locale/programs/repertoire.c:341
+#: locale/programs/repertoire.c:342
#, c-format
msgid "repertoire map file `%s' not found"
msgstr "找ä¸åˆ°ç·¨ç¢¼å°æ˜ æª” `%s'"
@@ -2978,23 +2994,23 @@ msgstr "太多引數"
msgid "needs to be installed setuid `root'"
msgstr "需è¦æ˜¯å·²å®‰è£çš„ setuid「根ã€"
-#: malloc/mcheck.c:348
+#: malloc/mcheck.c:347
msgid "memory is consistent, library is buggy\n"
msgstr "記憶體內容一致,函å¼åº«æœ‰å•é¡Œ\n"
-#: malloc/mcheck.c:351
+#: malloc/mcheck.c:350
msgid "memory clobbered before allocated block\n"
msgstr "記憶體在é…ç½®å€å¡Šä¹‹å‰å°± clobbered 了\n"
-#: malloc/mcheck.c:354
+#: malloc/mcheck.c:353
msgid "memory clobbered past end of allocated block\n"
msgstr "記憶體在經éŽé…置的å€å¡Šå°¾éƒ¨æ™‚ clobbered 了\n"
-#: malloc/mcheck.c:357
+#: malloc/mcheck.c:356
msgid "block freed twice\n"
msgstr "æ­¤å€å¡Šè¢«ç”¨ free 指令釋放了兩次\n"
-#: malloc/mcheck.c:360
+#: malloc/mcheck.c:359
msgid "bogus mcheck_status, library is buggy\n"
msgstr "記憶體檢查狀態 (mcheck_ststus) 有誤,您所用的函å¼åº«æœ‰å•é¡Œ\n"
@@ -3079,35 +3095,43 @@ msgstr "memusage:無法辨識的é¸é …「$1ã€"
msgid "No program name given"
msgstr "未給定程å¼å稱"
-#: malloc/memusagestat.c:55
+#: malloc/memusagestat.c:56
msgid "Name output file"
msgstr "å稱輸出檔"
-#: malloc/memusagestat.c:56
+#: malloc/memusagestat.c:57
+msgid "STRING"
+msgstr "字串"
+
+#: malloc/memusagestat.c:57
msgid "Title string used in output graphic"
msgstr "在輸出的圖åƒä¸­ä½¿ç”¨æœ‰æ¨™é ­çš„字串"
-#: malloc/memusagestat.c:57
+#: malloc/memusagestat.c:58
msgid "Generate output linear to time (default is linear to number of function calls)"
msgstr "產生輸出與時間呈線性關係 (é è¨­æ˜¯èˆ‡å‡½å¼å‘¼å«æ•¸ç›®å‘ˆç·šæ€§é—œä¿‚)"
-#: malloc/memusagestat.c:59
+#: malloc/memusagestat.c:62
msgid "Also draw graph for total memory consumption"
msgstr "åŒæ™‚å°ç¸½è¨˜æ†¶é«”用é‡ä½œåœ–"
-#: malloc/memusagestat.c:60
+#: malloc/memusagestat.c:63
+msgid "VALUE"
+msgstr "åƒç´ å€¼"
+
+#: malloc/memusagestat.c:64
msgid "Make output graphic VALUE pixels wide"
-msgstr "定製輸出圖形的寬度åƒç´  VALUE"
+msgstr "定製輸出圖形的寬度åƒç´ å€¼"
-#: malloc/memusagestat.c:61
+#: malloc/memusagestat.c:65
msgid "Make output graphic VALUE pixels high"
-msgstr "定製輸出圖形的高度åƒç´  VALUE"
+msgstr "定製輸出圖形的高度åƒç´ å€¼"
-#: malloc/memusagestat.c:66
+#: malloc/memusagestat.c:70
msgid "Generate graphic from memory profiling data"
msgstr "從記憶體性能測試資料產生圖åƒ"
-#: malloc/memusagestat.c:69
+#: malloc/memusagestat.c:73
msgid "DATAFILE [OUTFILE]"
msgstr "資料檔 [輸出檔]"
@@ -3119,7 +3143,7 @@ msgstr "未知的系統錯誤"
msgid "unable to free arguments"
msgstr "無法釋放åƒæ•¸"
-#: nis/nis_error.h:1 nis/ypclnt.c:832 nis/ypclnt.c:920 posix/regcomp.c:131
+#: nis/nis_error.h:1 nis/ypclnt.c:831 nis/ypclnt.c:919 posix/regcomp.c:133
#: sysdeps/gnu/errlist.c:20
msgid "Success"
msgstr "æˆåŠŸ"
@@ -3161,7 +3185,7 @@ msgid "First/next chain broken"
msgstr "第一個/下一個åºåˆ—壞掉了"
#. TRANS Permission denied; the file permissions do not allow the attempted operation.
-#: nis/nis_error.h:11 nis/ypclnt.c:877 sysdeps/gnu/errlist.c:157
+#: nis/nis_error.h:11 nis/ypclnt.c:876 sysdeps/gnu/errlist.c:157
msgid "Permission denied"
msgstr "拒絕ä¸ç¬¦æ¬Šé™çš„æ“作"
@@ -3318,123 +3342,123 @@ msgstr "主è¦ä¼ºæœå™¨å¿™ç¢Œä¸­ï¼Œé‡æ–°é€²è¡Œå®Œæ•´è³‡æ–™å‚¾å¸æŽ’程。"
msgid "LOCAL entry for UID %d in directory %s not unique\n"
msgstr "UID 為 %d 的項目在本地端中並ä¸æ˜¯å”¯ä¸€çš„ (在 %s 目錄裡é¢)\n"
-#: nis/nis_print.c:50
+#: nis/nis_print.c:51
msgid "UNKNOWN"
msgstr "ä¸æ˜Ž"
-#: nis/nis_print.c:108
+#: nis/nis_print.c:109
msgid "BOGUS OBJECT\n"
msgstr "å‡çš„物件\n"
-#: nis/nis_print.c:111
+#: nis/nis_print.c:112
msgid "NO OBJECT\n"
msgstr "沒有物件\n"
-#: nis/nis_print.c:114
+#: nis/nis_print.c:115
msgid "DIRECTORY\n"
msgstr "目錄\n"
-#: nis/nis_print.c:117
+#: nis/nis_print.c:118
msgid "GROUP\n"
msgstr "群組\n"
-#: nis/nis_print.c:120
+#: nis/nis_print.c:121
msgid "TABLE\n"
msgstr "表格\n"
-#: nis/nis_print.c:123
+#: nis/nis_print.c:124
msgid "ENTRY\n"
msgstr "é …ç›®\n"
-#: nis/nis_print.c:126
+#: nis/nis_print.c:127
msgid "LINK\n"
msgstr "連çµ\n"
-#: nis/nis_print.c:129
+#: nis/nis_print.c:130
msgid "PRIVATE\n"
msgstr "ç§æœ‰çš„\n"
-#: nis/nis_print.c:132
+#: nis/nis_print.c:133
msgid "(Unknown object)\n"
msgstr "(未知的物件)\n"
-#: nis/nis_print.c:166
+#: nis/nis_print.c:167
#, c-format
msgid "Name : `%s'\n"
msgstr "å稱 : `%s'\n"
-#: nis/nis_print.c:167
+#: nis/nis_print.c:168
#, c-format
msgid "Type : %s\n"
msgstr "æ ¼å¼ : %s\n"
-#: nis/nis_print.c:172
+#: nis/nis_print.c:173
msgid "Master Server :\n"
msgstr "主è¦ä¼ºæœå™¨ :\n"
-#: nis/nis_print.c:174
+#: nis/nis_print.c:175
msgid "Replicate :\n"
msgstr "複製 :\n"
-#: nis/nis_print.c:175
+#: nis/nis_print.c:176
#, c-format
msgid "\tName : %s\n"
msgstr "\tå稱 : %s\n"
-#: nis/nis_print.c:176
+#: nis/nis_print.c:177
msgid "\tPublic Key : "
msgstr "\t公共鑰匙 : "
-#: nis/nis_print.c:180
+#: nis/nis_print.c:181
msgid "None.\n"
msgstr "ç„¡\n"
-#: nis/nis_print.c:183
+#: nis/nis_print.c:184
#, c-format
msgid "Diffie-Hellmann (%d bits)\n"
msgstr "Diffie-Hellmann (%d ä½å…ƒ)\n"
-#: nis/nis_print.c:188
+#: nis/nis_print.c:189
#, c-format
msgid "RSA (%d bits)\n"
msgstr "RSA (%d ä½å…ƒ)\n"
-#: nis/nis_print.c:191
+#: nis/nis_print.c:192
msgid "Kerberos.\n"
msgstr "Kerberos.\n"
-#: nis/nis_print.c:194
+#: nis/nis_print.c:195
#, c-format
msgid "Unknown (type = %d, bits = %d)\n"
msgstr "未知的 (åž‹æ…‹ = %d,ä½å…ƒ = %d)\n"
-#: nis/nis_print.c:205
+#: nis/nis_print.c:206
#, c-format
msgid "\tUniversal addresses (%u)\n"
msgstr "\t絕å°ä½å€ (%u)\n"
-#: nis/nis_print.c:227
+#: nis/nis_print.c:228
msgid "Time to live : "
msgstr "存在時間 : "
-#: nis/nis_print.c:229
+#: nis/nis_print.c:230
msgid "Default Access rights :\n"
msgstr "é è¨­çš„å­˜å–æ¬Šé™ :\n"
-#: nis/nis_print.c:238
+#: nis/nis_print.c:239
#, c-format
msgid "\tType : %s\n"
msgstr "\t型別 : %s\n"
-#: nis/nis_print.c:239
+#: nis/nis_print.c:240
msgid "\tAccess rights: "
msgstr "\tå­˜å–權é™: "
-#: nis/nis_print.c:253
+#: nis/nis_print.c:254
msgid "Group Flags :"
msgstr "群組旗標 :"
-#: nis/nis_print.c:256
+#: nis/nis_print.c:257
msgid ""
"\n"
"Group Members :\n"
@@ -3442,95 +3466,95 @@ msgstr ""
"\n"
"群組的æˆå“¡ :\n"
-#: nis/nis_print.c:268
+#: nis/nis_print.c:269
#, c-format
msgid "Table Type : %s\n"
msgstr "è¡¨æ ¼å½¢å¼ : %s\n"
-#: nis/nis_print.c:269
+#: nis/nis_print.c:270
#, c-format
msgid "Number of Columns : %d\n"
msgstr "欄ä½çš„數目 : %d\n"
-#: nis/nis_print.c:270
+#: nis/nis_print.c:271
#, c-format
msgid "Character Separator : %c\n"
msgstr "字元分隔號 : %c\n"
-#: nis/nis_print.c:271
+#: nis/nis_print.c:272
#, c-format
msgid "Search Path : %s\n"
msgstr "æœå°‹è·¯å¾‘ : %s\n"
-#: nis/nis_print.c:272
+#: nis/nis_print.c:273
msgid "Columns :\n"
msgstr "行 :\n"
-#: nis/nis_print.c:275
+#: nis/nis_print.c:276
#, c-format
msgid "\t[%d]\tName : %s\n"
msgstr "\t[%d]\tå稱 : %s\n"
-#: nis/nis_print.c:277
+#: nis/nis_print.c:278
msgid "\t\tAttributes : "
msgstr "\t\t屬性 : "
-#: nis/nis_print.c:279
+#: nis/nis_print.c:280
msgid "\t\tAccess Rights : "
msgstr "\t\tå­˜å–æ¬Šé™ : "
-#: nis/nis_print.c:289
+#: nis/nis_print.c:290
msgid "Linked Object Type : "
msgstr "連çµçš„物件型態 : "
-#: nis/nis_print.c:291
+#: nis/nis_print.c:292
#, c-format
msgid "Linked to : %s\n"
msgstr "連çµåˆ° : %s\n"
-#: nis/nis_print.c:301
+#: nis/nis_print.c:302
#, c-format
msgid "\tEntry data of type %s\n"
msgstr "\t型別為 %s 的項目資料\n"
-#: nis/nis_print.c:304
+#: nis/nis_print.c:305
#, c-format
msgid "\t[%u] - [%u bytes] "
msgstr "\t[%u] - [%u ä½å…ƒçµ„] "
-#: nis/nis_print.c:307
+#: nis/nis_print.c:308
msgid "Encrypted data\n"
msgstr "編碼資料\n"
-#: nis/nis_print.c:309
+#: nis/nis_print.c:310
msgid "Binary data\n"
msgstr "二進ä½è³‡æ–™\n"
-#: nis/nis_print.c:325
+#: nis/nis_print.c:326
#, c-format
msgid "Object Name : %s\n"
msgstr "物件å稱 : %s\n"
-#: nis/nis_print.c:326
+#: nis/nis_print.c:327
#, c-format
msgid "Directory : %s\n"
msgstr "目錄 : %s\n"
-#: nis/nis_print.c:327
+#: nis/nis_print.c:328
#, c-format
msgid "Owner : %s\n"
msgstr "æ“有者 : %s\n"
-#: nis/nis_print.c:328
+#: nis/nis_print.c:329
#, c-format
msgid "Group : %s\n"
msgstr "群組 : %s\n"
-#: nis/nis_print.c:329
+#: nis/nis_print.c:330
msgid "Access Rights : "
msgstr "å­˜å–æ¬Šé™ : "
-#: nis/nis_print.c:331
+#: nis/nis_print.c:332
#, c-format
msgid ""
"\n"
@@ -3539,90 +3563,90 @@ msgstr ""
"\n"
"存在的時間 : "
-#: nis/nis_print.c:334
+#: nis/nis_print.c:335
#, c-format
msgid "Creation Time : %s"
msgstr "產生時間 : %s"
-#: nis/nis_print.c:336
+#: nis/nis_print.c:337
#, c-format
msgid "Mod. Time : %s"
msgstr "修改時間 : %s"
-#: nis/nis_print.c:337
+#: nis/nis_print.c:338
msgid "Object Type : "
msgstr "物件型別 : "
-#: nis/nis_print.c:357
+#: nis/nis_print.c:358
#, c-format
msgid " Data Length = %u\n"
msgstr " 資料長度 = %u\n"
-#: nis/nis_print.c:371
+#: nis/nis_print.c:372
#, c-format
msgid "Status : %s\n"
msgstr "狀態 : %s\n"
-#: nis/nis_print.c:372
+#: nis/nis_print.c:373
#, c-format
msgid "Number of objects : %u\n"
msgstr "物件的數目 : %u\n"
-#: nis/nis_print.c:376
+#: nis/nis_print.c:377
#, c-format
msgid "Object #%d:\n"
msgstr "目的檔 #%d:\n"
-#: nis/nis_print_group_entry.c:117
+#: nis/nis_print_group_entry.c:116
#, c-format
msgid "Group entry for \"%s.%s\" group:\n"
msgstr "群組 \"%s.%s\" 群組項目:\n"
-#: nis/nis_print_group_entry.c:125
+#: nis/nis_print_group_entry.c:124
msgid " Explicit members:\n"
msgstr " 明確的æˆå“¡:\n"
-#: nis/nis_print_group_entry.c:130
+#: nis/nis_print_group_entry.c:129
msgid " No explicit members\n"
msgstr " 沒有明確的æˆå“¡\n"
-#: nis/nis_print_group_entry.c:133
+#: nis/nis_print_group_entry.c:132
msgid " Implicit members:\n"
msgstr " ä¸æ˜Žç¢ºçš„æˆå“¡:\n"
-#: nis/nis_print_group_entry.c:138
+#: nis/nis_print_group_entry.c:137
msgid " No implicit members\n"
msgstr " 沒有ä¸æ˜Žç¢ºçš„æˆå“¡\n"
-#: nis/nis_print_group_entry.c:141
+#: nis/nis_print_group_entry.c:140
msgid " Recursive members:\n"
msgstr " éžè¿´çš„æˆå“¡:\n"
-#: nis/nis_print_group_entry.c:146
+#: nis/nis_print_group_entry.c:145
msgid " No recursive members\n"
msgstr " 沒有éžè¿´çš„æˆå“¡\n"
-#: nis/nis_print_group_entry.c:149
+#: nis/nis_print_group_entry.c:148
msgid " Explicit nonmembers:\n"
msgstr " 明確的éžæˆå“¡:\n"
-#: nis/nis_print_group_entry.c:154
+#: nis/nis_print_group_entry.c:153
msgid " No explicit nonmembers\n"
msgstr " 沒有明確的éžæˆå“¡\n"
-#: nis/nis_print_group_entry.c:157
+#: nis/nis_print_group_entry.c:156
msgid " Implicit nonmembers:\n"
msgstr " ä¸æ˜Žç¢ºçš„éžæˆå“¡:\n"
-#: nis/nis_print_group_entry.c:162
+#: nis/nis_print_group_entry.c:161
msgid " No implicit nonmembers\n"
msgstr " 沒有ä¸æ˜Žç¢ºçš„éžæˆå“¡\n"
-#: nis/nis_print_group_entry.c:165
+#: nis/nis_print_group_entry.c:164
msgid " Recursive nonmembers:\n"
msgstr " éžè¿´çš„éžæˆå“¡ï¼š\n"
-#: nis/nis_print_group_entry.c:170
+#: nis/nis_print_group_entry.c:169
msgid " No recursive nonmembers\n"
msgstr " 沒有éžè¿´çš„éžæˆå“¡\n"
@@ -3664,100 +3688,100 @@ msgstr "netname2user: %s 的本地端項目在 %s 目錄下並ä¸æ˜¯å”¯ä¸€çš„"
msgid "netname2user: should not have uid 0"
msgstr "netname2user: ä¸èƒ½æœ‰ä½¿ç”¨è€… id 為 0 的情æ³"
-#: nis/ypclnt.c:835
+#: nis/ypclnt.c:834
msgid "Request arguments bad"
msgstr "必須引數有錯誤"
-#: nis/ypclnt.c:838
+#: nis/ypclnt.c:837
msgid "RPC failure on NIS operation"
msgstr "NIS é‹ä½œ RPC 失敗"
-#: nis/ypclnt.c:841
+#: nis/ypclnt.c:840
msgid "Can't bind to server which serves this domain"
msgstr "無法與æœå‹™æ–¼æ­¤ç¶²åŸŸçš„伺æœå™¨è¯ç¹«"
-#: nis/ypclnt.c:844
+#: nis/ypclnt.c:843
msgid "No such map in server's domain"
msgstr "在伺æœå™¨çš„領域資料中找ä¸åˆ°æ­¤ä¸€å°æ˜ è¡¨"
-#: nis/ypclnt.c:847
+#: nis/ypclnt.c:846
msgid "No such key in map"
msgstr "在å°æ˜ è¡¨ä¸­æ²’有此一éµå€¼"
-#: nis/ypclnt.c:850
+#: nis/ypclnt.c:849
msgid "Internal NIS error"
msgstr "內部 NIS 錯誤"
-#: nis/ypclnt.c:853
+#: nis/ypclnt.c:852
msgid "Local resource allocation failure"
msgstr "å€åŸŸè³‡æºé…置失敗"
-#: nis/ypclnt.c:856
+#: nis/ypclnt.c:855
msgid "No more records in map database"
msgstr "在å°æ˜ è¡¨è³‡æ–™åº«ä¸­æ²’有其他紀錄了"
-#: nis/ypclnt.c:859
+#: nis/ypclnt.c:858
msgid "Can't communicate with portmapper"
msgstr "無法與 portmapper 通訊"
-#: nis/ypclnt.c:862
+#: nis/ypclnt.c:861
msgid "Can't communicate with ypbind"
msgstr "無法與 ypbind 通訊"
-#: nis/ypclnt.c:865
+#: nis/ypclnt.c:864
msgid "Can't communicate with ypserv"
msgstr "無法與 ypserv 通訊"
-#: nis/ypclnt.c:868
+#: nis/ypclnt.c:867
msgid "Local domain name not set"
msgstr "å€åŸŸç¶²åŸŸå稱沒有設定"
-#: nis/ypclnt.c:871
+#: nis/ypclnt.c:870
msgid "NIS map database is bad"
msgstr "NIS å°æ˜ è³‡æ–™åº«æ˜¯å£žçš„"
-#: nis/ypclnt.c:874
+#: nis/ypclnt.c:873
msgid "NIS client/server version mismatch - can't supply service"
msgstr "NIS 請求端/伺æœç«¯ç‰ˆæœ¬ä¸ç¬¦åˆ - 無法æä¾›æœå‹™"
-#: nis/ypclnt.c:880
+#: nis/ypclnt.c:879
msgid "Database is busy"
msgstr "資料庫正在忙碌"
-#: nis/ypclnt.c:883
+#: nis/ypclnt.c:882
msgid "Unknown NIS error code"
msgstr "未知的 NIS 錯誤碼"
-#: nis/ypclnt.c:923
+#: nis/ypclnt.c:922
msgid "Internal ypbind error"
msgstr "內部 ypbind 錯誤"
-#: nis/ypclnt.c:926
+#: nis/ypclnt.c:925
msgid "Domain not bound"
msgstr "網域找ä¸åˆ°"
-#: nis/ypclnt.c:929
+#: nis/ypclnt.c:928
msgid "System resource allocation failure"
msgstr "系統資æºé…置失敗"
-#: nis/ypclnt.c:932
+#: nis/ypclnt.c:931
msgid "Unknown ypbind error"
msgstr "未知的 ypbind 錯誤"
-#: nis/ypclnt.c:973
+#: nis/ypclnt.c:972
msgid "yp_update: cannot convert host to netname\n"
msgstr "yp_update: 無法轉æ›ä¸»æ©Ÿçš„網路å稱\n"
-#: nis/ypclnt.c:991
+#: nis/ypclnt.c:990
msgid "yp_update: cannot get server address\n"
msgstr "yp_update: 無法å–得伺æœå™¨ä½å€\n"
-#: nscd/aicache.c:82 nscd/hstcache.c:493
+#: nscd/aicache.c:82 nscd/hstcache.c:494
#, c-format
msgid "Haven't found \"%s\" in hosts cache!"
msgstr "尚未在 hosts å¿«å–中找到 \"%s\"!"
-#: nscd/aicache.c:84 nscd/hstcache.c:495
+#: nscd/aicache.c:84 nscd/hstcache.c:496
#, c-format
msgid "Reloading \"%s\" in hosts cache!"
msgstr "é‡æ–°è¼‰å…¥ã€Œ%sã€æ–¼ä¸»æ©Ÿå¿«å–ï¼"
@@ -3771,7 +3795,7 @@ msgstr "加入新的項目「%sã€çš„åž‹æ…‹ %s 用於 %s 到 cache%s"
msgid " (first)"
msgstr " (å…ˆ)"
-#: nscd/cache.c:285 nscd/connections.c:1002
+#: nscd/cache.c:285 nscd/connections.c:1019
#, c-format
msgid "cannot stat() file `%s': %s"
msgstr "無法 stat() 檔案 `%s': %s"
@@ -3786,242 +3810,242 @@ msgstr "pruning %s å¿«å–;時間 %ld"
msgid "considering %s entry \"%s\", timeout %<PRIu64>"
msgstr "èªç‚ºä¸­ %s 項目「%sã€ï¼Œé€¾æ™‚ %<PRIu64>"
-#: nscd/connections.c:570
+#: nscd/connections.c:571
#, c-format
msgid "invalid persistent database file \"%s\": %s"
msgstr "無效的永久性的資料庫檔案「%sã€ï¼š%s"
-#: nscd/connections.c:578
+#: nscd/connections.c:579
msgid "uninitialized header"
msgstr "未起始的標頭"
-#: nscd/connections.c:583
+#: nscd/connections.c:584
msgid "header size does not match"
msgstr "é é¦–大å°ä¸å»åˆ"
-#: nscd/connections.c:593
+#: nscd/connections.c:594
msgid "file size does not match"
msgstr "檔案大å°ä¸å»åˆ"
-#: nscd/connections.c:610
+#: nscd/connections.c:611
msgid "verification failed"
msgstr "查核失敗"
-#: nscd/connections.c:624
+#: nscd/connections.c:625
#, c-format
msgid "suggested size of table for database %s larger than the persistent database's table"
msgstr "用於資料庫 %s 的建議表格大å°å¤§æ–¼æ°¸ä¹…性的資料庫表格"
-#: nscd/connections.c:635 nscd/connections.c:720
+#: nscd/connections.c:636 nscd/connections.c:721
#, c-format
msgid "cannot create read-only descriptor for \"%s\"; no mmap"
msgstr "無法建立用於「%sã€çš„唯讀æ述元;無 mmap"
-#: nscd/connections.c:651
+#: nscd/connections.c:652
#, c-format
msgid "cannot access '%s'"
msgstr "無法存å–『%sã€"
-#: nscd/connections.c:699
+#: nscd/connections.c:700
#, c-format
msgid "database for %s corrupted or simultaneously used; remove %s manually if necessary and restart"
msgstr "資料庫用於 %s å·²æ壞或åŒæ­¥åœ°ä½¿ç”¨ï¼›ç§»é™¤ %s 手動地如果必è¦çš„話和é‡æ–°å•Ÿå‹•"
-#: nscd/connections.c:706
+#: nscd/connections.c:707
#, c-format
msgid "cannot create %s; no persistent database used"
msgstr "無法建立 %s; 未使用永久性的資料庫"
-#: nscd/connections.c:709
+#: nscd/connections.c:710
#, c-format
msgid "cannot create %s; no sharing possible"
msgstr "無法建立 %s; ä¸å¯èƒ½å…±äº«"
-#: nscd/connections.c:780
+#: nscd/connections.c:781
#, c-format
msgid "cannot write to database file %s: %s"
msgstr "無法寫入資料庫檔案 %s: %s"
-#: nscd/connections.c:819
+#: nscd/connections.c:820
#, c-format
msgid "cannot set socket to close on exec: %s; disabling paranoia mode"
msgstr "無法設定通訊端到關閉於 exec:%s; åœç”¨ paranoia 模å¼"
-#: nscd/connections.c:868
+#: nscd/connections.c:869
#, c-format
msgid "cannot open socket: %s"
msgstr "無法開啟 socket: %s"
-#: nscd/connections.c:888 nscd/connections.c:952
+#: nscd/connections.c:889 nscd/connections.c:953
#, c-format
msgid "cannot change socket to nonblocking mode: %s"
msgstr "無法變更通訊端為éžå€å¡Šæ¨¡å¼ï¼š%s"
-#: nscd/connections.c:896 nscd/connections.c:962
+#: nscd/connections.c:897 nscd/connections.c:963
#, c-format
msgid "cannot set socket to close on exec: %s"
msgstr "無法設定通訊端於 exec:%s 時關閉"
-#: nscd/connections.c:909
+#: nscd/connections.c:910
#, c-format
msgid "cannot enable socket to accept connections: %s"
msgstr "無法開啟 socket 來接å—連線: %s"
-#: nscd/connections.c:986
+#: nscd/connections.c:1003
#, c-format
msgid "register trace file %s for database %s"
msgstr "註冊追蹤檔案 %s 用於資料庫 %s"
-#: nscd/connections.c:1116
+#: nscd/connections.c:1133
#, c-format
msgid "provide access to FD %d, for %s"
msgstr "æ供存å–到 FD %d, 用於 %s"
-#: nscd/connections.c:1128
+#: nscd/connections.c:1145
#, c-format
msgid "cannot handle old request version %d; current version is %d"
msgstr "ä¸èƒ½è™•ç†èˆŠ %d 版的請求;目å‰ä½¿ç”¨çš„版本是 %d"
-#: nscd/connections.c:1150
+#: nscd/connections.c:1167
#, c-format
msgid "request from %ld not handled due to missing permission"
msgstr "由於缺少權é™è€Œç„¡æ³•è™•ç†ä¾†è‡ª %ld çš„è¦æ±‚"
-#: nscd/connections.c:1155
+#: nscd/connections.c:1172
#, c-format
msgid "request from '%s' [%ld] not handled due to missing permission"
msgstr "由於缺少權é™è€Œç„¡æ³•è™•ç†ä¾†è‡ª '%s' [%ld] çš„è¦æ±‚"
-#: nscd/connections.c:1160
+#: nscd/connections.c:1177
msgid "request not handled due to missing permission"
msgstr "è¦æ±‚無法控柄的由於缺少權é™"
-#: nscd/connections.c:1198 nscd/connections.c:1251
+#: nscd/connections.c:1215 nscd/connections.c:1268
#, c-format
msgid "cannot write result: %s"
msgstr "無法寫入çµæžœ: %s"
-#: nscd/connections.c:1342
+#: nscd/connections.c:1359
#, c-format
msgid "error getting caller's id: %s"
msgstr "å–得呼å«ç¨‹å¼è­˜åˆ¥ç¢¼æ™‚發生錯誤: %s"
-#: nscd/connections.c:1402
+#: nscd/connections.c:1419
#, c-format
msgid "cannot open /proc/self/cmdline: %s; disabling paranoia mode"
msgstr "無法開啟/proc/self/cmdline:%s; åœç”¨ paranoia 模å¼"
-#: nscd/connections.c:1416
+#: nscd/connections.c:1433
#, c-format
msgid "cannot read /proc/self/cmdline: %s; disabling paranoia mode"
msgstr "無法讀å–/proc/self/cmdline:%s; åœç”¨ paranoia 模å¼"
-#: nscd/connections.c:1456
+#: nscd/connections.c:1473
#, c-format
msgid "cannot change to old UID: %s; disabling paranoia mode"
msgstr "無法變更為舊的 UID:%s; åœç”¨ paranoia 模å¼"
-#: nscd/connections.c:1466
+#: nscd/connections.c:1483
#, c-format
msgid "cannot change to old GID: %s; disabling paranoia mode"
msgstr "無法變更為舊的 GID:%s; åœç”¨ paranoia 模å¼"
-#: nscd/connections.c:1479
+#: nscd/connections.c:1496
#, c-format
msgid "cannot change to old working directory: %s; disabling paranoia mode"
msgstr "無法變更為舊的工作目錄:%s; åœç”¨ paranoia 模å¼"
-#: nscd/connections.c:1525
+#: nscd/connections.c:1542
#, c-format
msgid "re-exec failed: %s; disabling paranoia mode"
msgstr "re-exec 失敗:%s; åœç”¨ paranoia 模å¼"
-#: nscd/connections.c:1534
+#: nscd/connections.c:1551
#, c-format
msgid "cannot change current working directory to \"/\": %s"
msgstr "無法變更目å‰çš„工作目錄到「/ã€ï¼š%s"
-#: nscd/connections.c:1727
+#: nscd/connections.c:1744
#, c-format
msgid "short read while reading request: %s"
msgstr "讀å–請求時發ç¾è¼¸å…¥å€¼éŽçŸ­: %s"
-#: nscd/connections.c:1760
+#: nscd/connections.c:1777
#, c-format
msgid "key length in request too long: %d"
msgstr "在此請求中使用的éµå€¼å¤ªé•·äº†: %d"
-#: nscd/connections.c:1773
+#: nscd/connections.c:1790
#, c-format
msgid "short read while reading request key: %s"
msgstr "讀å–請求的éµå€¼æ™‚發ç¾è¼¸å…¥å€¼éŽçŸ­: %s"
-#: nscd/connections.c:1782
+#: nscd/connections.c:1800
#, c-format
msgid "handle_request: request received (Version = %d) from PID %ld"
msgstr "handle_request: è«‹æ±‚å·²è¢«æŽ¥å— (版本為 %d) 來自於 PID %ld"
-#: nscd/connections.c:1787
+#: nscd/connections.c:1805
#, c-format
msgid "handle_request: request received (Version = %d)"
msgstr "handle_request: è«‹æ±‚å·²è¢«æŽ¥å— (版本為 %d)"
-#: nscd/connections.c:1999 nscd/connections.c:2227
+#: nscd/connections.c:2069 nscd/connections.c:2271
#, c-format
msgid "disabled inotify after read error %d"
msgstr "è®€å– %d 錯誤之後已åœç”¨ inotify"
-#: nscd/connections.c:2374
+#: nscd/connections.c:2394
msgid "could not initialize conditional variable"
msgstr "無法åˆå§‹åŒ–æ¢ä»¶è®Šæ•¸"
-#: nscd/connections.c:2382
+#: nscd/connections.c:2402
msgid "could not start clean-up thread; terminating"
msgstr "無法開始清ç†åŸ·è¡Œç·’;終止中"
-#: nscd/connections.c:2396
+#: nscd/connections.c:2416
msgid "could not start any worker thread; terminating"
msgstr "無法開始任何背景工作執行緒;終止中"
-#: nscd/connections.c:2447 nscd/connections.c:2448 nscd/connections.c:2465
-#: nscd/connections.c:2474 nscd/connections.c:2492 nscd/connections.c:2503
-#: nscd/connections.c:2514
+#: nscd/connections.c:2467 nscd/connections.c:2468 nscd/connections.c:2485
+#: nscd/connections.c:2494 nscd/connections.c:2512 nscd/connections.c:2523
+#: nscd/connections.c:2534
#, c-format
msgid "Failed to run nscd as user '%s'"
msgstr "以使用者 '%s' 的身分執行 nscd 失敗"
-#: nscd/connections.c:2466
+#: nscd/connections.c:2486
#, c-format
msgid "initial getgrouplist failed"
msgstr "åˆå§‹ getgrouplist 失敗"
-#: nscd/connections.c:2475
+#: nscd/connections.c:2495
#, c-format
msgid "getgrouplist failed"
msgstr "getgrouplist 失敗"
-#: nscd/connections.c:2493
+#: nscd/connections.c:2513
#, c-format
msgid "setgroups failed"
msgstr "setgroups 失敗"
-#: nscd/grpcache.c:407 nscd/hstcache.c:440 nscd/initgrcache.c:411
-#: nscd/pwdcache.c:383 nscd/servicescache.c:338
+#: nscd/grpcache.c:413 nscd/hstcache.c:441 nscd/initgrcache.c:419
+#: nscd/pwdcache.c:391 nscd/servicescache.c:346
#, c-format
msgid "short write in %s: %s"
msgstr "寫入 %s 的資料éŽçŸ­: %s"
-#: nscd/grpcache.c:452 nscd/initgrcache.c:77
+#: nscd/grpcache.c:458 nscd/initgrcache.c:77
#, c-format
msgid "Haven't found \"%s\" in group cache!"
msgstr "尚未在群組快å–中找到 \"%s\"!"
-#: nscd/grpcache.c:454 nscd/initgrcache.c:79
+#: nscd/grpcache.c:460 nscd/initgrcache.c:79
#, c-format
msgid "Reloading \"%s\" in group cache!"
msgstr "é‡æ–°è¼‰å…¥ã€Œ%sã€æ–¼ç¾¤çµ„å¿«å–ï¼"
-#: nscd/grpcache.c:533
+#: nscd/grpcache.c:539
#, c-format
msgid "Invalid numeric gid \"%s\"!"
msgstr "無效的 gid 數值 \"%s\"!"
@@ -4046,12 +4070,12 @@ msgstr "尚未在網路群組快å–中找到「%sã€ï¼"
msgid "Reloading \"%s\" in netgroup cache!"
msgstr "é‡æ–°åœ¨ç¶²è·¯ç¾¤çµ„å¿«å–中載入「%sã€ï¼"
-#: nscd/netgroupcache.c:467
+#: nscd/netgroupcache.c:475
#, c-format
msgid "Haven't found \"%s (%s,%s,%s)\" in netgroup cache!"
msgstr "尚未在網路群組快å–中找到「%s (%s,%s,%s)ã€ï¼"
-#: nscd/netgroupcache.c:470
+#: nscd/netgroupcache.c:478
#, c-format
msgid "Reloading \"%s (%s,%s,%s)\" in netgroup cache!"
msgstr "é‡æ–°åœ¨ç¶²è·¯ç¾¤çµ„å¿«å–中載入「%s (%s,%s,%s)ã€ï¼"
@@ -4104,7 +4128,7 @@ msgstr "å°ä¸åŒä½¿ç”¨è€…使用ä¸åŒçš„å¿«å–檔案"
msgid "Name Service Cache Daemon."
msgstr "網域å稱快å–ç²¾éˆ"
-#: nscd/nscd.c:164 nss/getent.c:999 nss/makedb.c:208
+#: nscd/nscd.c:164 nss/getent.c:999 nss/makedb.c:206
#, c-format
msgid "wrong number of arguments"
msgstr "åƒæ•¸æ•¸ç›®ä¸å°"
@@ -4119,46 +4143,46 @@ msgstr "讀å–組態檔案時失敗;這是一個嚴é‡éŒ¯èª¤"
msgid "already running"
msgstr "已在執行"
-#: nscd/nscd.c:201 nscd/nscd.c:259
+#: nscd/nscd.c:201
#, c-format
msgid "cannot fork"
msgstr "無法è¡ç”Ÿ"
-#: nscd/nscd.c:268
+#: nscd/nscd.c:259
#, c-format
msgid "cannot change current working directory to \"/\""
msgstr "無法變更目å‰çš„工作目錄到「/ã€"
-#: nscd/nscd.c:276
+#: nscd/nscd.c:267
msgid "Could not create log file"
msgstr "無法建立記錄檔"
-#: nscd/nscd.c:348 nscd/nscd.c:373 nscd/nscd_stat.c:173
+#: nscd/nscd.c:339 nscd/nscd.c:364 nscd/nscd_stat.c:173
#, c-format
msgid "Only root is allowed to use this option!"
msgstr "åªæœ‰ root æ‰å¯ä»¥ä½¿ç”¨æ­¤ä¸€é¸é …!"
-#: nscd/nscd.c:388
+#: nscd/nscd.c:379
#, c-format
msgid "'%s' is not a known database"
msgstr "『%sã€ä¸¦éžä¸€å·²çŸ¥è³‡æ–™åº«"
-#: nscd/nscd.c:413 nscd/nscd_stat.c:192
+#: nscd/nscd.c:404 nscd/nscd_stat.c:192
#, c-format
msgid "write incomplete"
msgstr "寫入ä¸å®Œå…¨"
-#: nscd/nscd.c:424
+#: nscd/nscd.c:415
#, c-format
msgid "cannot read invalidate ACK"
msgstr "無法讀å–設為無效的 ACK"
-#: nscd/nscd.c:430
+#: nscd/nscd.c:421
#, c-format
msgid "invalidation failed"
msgstr "無效化失敗"
-#: nscd/nscd.c:440
+#: nscd/nscd.c:431
#, c-format
msgid "secure services not implemented anymore"
msgstr "安全æœå‹™ä¸å†å¯¦ä½œ"
@@ -4330,17 +4354,17 @@ msgstr ""
"%15<PRIuMAX> 記憶體é…置失敗\n"
"%15s 檢查 /etc/%s 的變更\n"
-#: nscd/pwdcache.c:428
+#: nscd/pwdcache.c:436
#, c-format
msgid "Haven't found \"%s\" in password cache!"
msgstr "尚未在密碼快å–中找到 \"%s\"!"
-#: nscd/pwdcache.c:430
+#: nscd/pwdcache.c:438
#, c-format
msgid "Reloading \"%s\" in password cache!"
msgstr "é‡æ–°è¼‰å…¥ã€Œ%sã€æ–¼å¯†ç¢¼å¿«å–ï¼"
-#: nscd/pwdcache.c:511
+#: nscd/pwdcache.c:519
#, c-format
msgid "Invalid numeric uid \"%s\"!"
msgstr "無效的 uid 數值 \"%s\"!"
@@ -4447,12 +4471,12 @@ msgstr ""
"%15u CAV 探查\n"
"%15u CAV 缺少\n"
-#: nscd/servicescache.c:387
+#: nscd/servicescache.c:395
#, c-format
msgid "Haven't found \"%s\" in services cache!"
msgstr "尚未在æœå‹™å¿«å–中找到「%sã€!"
-#: nscd/servicescache.c:389
+#: nscd/servicescache.c:397
#, c-format
msgid "Reloading \"%s\" in services cache!"
msgstr "é‡æ–°è¼‰å…¥ã€Œ%sã€æ–¼æœå‹™å¿«å–ï¼"
@@ -4462,8 +4486,12 @@ msgid "database [key ...]"
msgstr "資料庫 [éµå€¼â€¦]"
#: nss/getent.c:58
+msgid "CONFIG"
+msgstr "組態"
+
+#: nss/getent.c:58
msgid "Service configuration to be used"
-msgstr "å°‡è¦ä½¿ç”¨çš„æœå‹™è¨­å®š"
+msgstr "å°‡è¦ä½¿ç”¨çš„æœå‹™çµ„æ…‹"
#: nss/getent.c:59
msgid "disable IDN encoding"
@@ -4492,31 +4520,31 @@ msgstr "支æ´çš„資料庫:\n"
msgid "Unknown database: %s\n"
msgstr "未知的資料庫: %s\n"
-#: nss/makedb.c:118
+#: nss/makedb.c:119
msgid "Convert key to lower case"
msgstr "轉æ›éµè½‰æ›ç‚ºå°å¯«"
-#: nss/makedb.c:121
+#: nss/makedb.c:122
msgid "Do not print messages while building database"
msgstr "ä¸å°å‡ºè¨Šæ¯ç•¶å»ºç«‹è³‡æ–™åº«"
-#: nss/makedb.c:123
+#: nss/makedb.c:124
msgid "Print content of database file, one entry a line"
msgstr "å°å‡ºå…§å®¹çš„資料庫檔案,一個項目列"
-#: nss/makedb.c:124
+#: nss/makedb.c:125
msgid "CHAR"
msgstr "å­—å…ƒ"
-#: nss/makedb.c:125
+#: nss/makedb.c:126
msgid "Generated line not part of iteration"
msgstr "產生的列並éžè¿­ä»£çš„部分"
-#: nss/makedb.c:130
+#: nss/makedb.c:131
msgid "Create simple database from textual input."
msgstr "從文字輸入建立簡單的資料庫。"
-#: nss/makedb.c:133
+#: nss/makedb.c:134
msgid ""
"INPUT-FILE OUTPUT-FILE\n"
"-o OUTPUT-FILE INPUT-FILE\n"
@@ -4526,71 +4554,76 @@ msgstr ""
"-o 輸出檔案å稱 輸入檔案å稱\n"
"-u 輸入檔案å稱"
-#: nss/makedb.c:229
+#: nss/makedb.c:227
#, c-format
msgid "cannot open database file `%s'"
msgstr "無法開啟資料庫檔案 %s"
-#: nss/makedb.c:274
+#: nss/makedb.c:272
#, c-format
msgid "no entries to be processed"
msgstr "沒有æ¢ç›®å¯ä¾›è™•ç†"
-#: nss/makedb.c:284
+#: nss/makedb.c:282
#, c-format
msgid "cannot create temporary file name"
msgstr "無法建立暫存檔案å稱"
-#: nss/makedb.c:306
+#: nss/makedb.c:288
+#, c-format
+msgid "cannot create temporary file"
+msgstr "無法產生暫時檔"
+
+#: nss/makedb.c:304
#, c-format
msgid "cannot stat newly created file"
msgstr "無法å–得新建立檔案的狀態"
-#: nss/makedb.c:317
+#: nss/makedb.c:315
#, c-format
msgid "cannot rename temporary file"
msgstr "無法é‡æ–°å‘½å暫存檔案"
-#: nss/makedb.c:533 nss/makedb.c:556
+#: nss/makedb.c:531 nss/makedb.c:554
#, c-format
msgid "cannot create search tree"
msgstr "無法建立æœå°‹æ¨¹"
-#: nss/makedb.c:562
+#: nss/makedb.c:560
msgid "duplicate key"
msgstr "é‡è¤‡éµå€¼"
-#: nss/makedb.c:574
+#: nss/makedb.c:572
#, c-format
msgid "problems while reading `%s'"
msgstr "讀å–「%sã€æ™‚發生å•é¡Œ"
-#: nss/makedb.c:801
+#: nss/makedb.c:799
#, c-format
msgid "failed to write new database file"
msgstr "寫入新資料庫檔案時失敗"
-#: nss/makedb.c:814
+#: nss/makedb.c:812
#, c-format
msgid "cannot stat database file"
msgstr "無法å–得資料庫檔案的狀態"
-#: nss/makedb.c:819
+#: nss/makedb.c:817
#, c-format
msgid "cannot map database file"
msgstr "無法映射資料庫檔案"
-#: nss/makedb.c:822
+#: nss/makedb.c:820
#, c-format
msgid "file not a database file"
msgstr "檔案ä¸æ˜¯è³‡æ–™åº«æª”案"
-#: nss/makedb.c:873
+#: nss/makedb.c:871
#, c-format
msgid "cannot set file creation context for `%s'"
msgstr "無法為 %s 設定檔案建立語境"
-#: ports/sysdeps/unix/sysv/linux/ia64/makecontext.c:62
+#: ports/sysdeps/unix/sysv/linux/ia64/makecontext.c:58
#, c-format
msgid "makecontext: does not know how to handle more than 8 arguments\n"
msgstr "makecontext: ä¸çŸ¥è¦å¦‚何處ç†è¶…éŽå…«å€‹å¼•æ•¸\n"
@@ -4643,131 +4676,131 @@ msgstr "未定義"
msgid "Unrecognized variable `%s'"
msgstr "無法識別的變數 `%s'"
-#: posix/getopt.c:593 posix/getopt.c:622
+#: posix/getopt.c:592 posix/getopt.c:621
#, c-format
msgid "%s: option '%s' is ambiguous; possibilities:"
msgstr "%s:é¸é …『%sã€æ˜¯æ¨¡ç¨œå…©å¯çš„ï¼›å¯èƒ½æ˜¯ï¼š"
-#: posix/getopt.c:663 posix/getopt.c:667
+#: posix/getopt.c:662 posix/getopt.c:666
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: é¸é … `--%s' ä¸å…許附加引數\n"
-#: posix/getopt.c:676 posix/getopt.c:681
+#: posix/getopt.c:675 posix/getopt.c:680
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: é¸é … `%c%s' ä¸å…許附加引數\n"
-#: posix/getopt.c:724 posix/getopt.c:743
+#: posix/getopt.c:723 posix/getopt.c:742
#, c-format
msgid "%s: option '--%s' requires an argument\n"
msgstr "%s:é¸é …『--%sã€éœ€è¦ä¸€å€‹å¼•æ•¸\n"
-#: posix/getopt.c:781 posix/getopt.c:784
+#: posix/getopt.c:780 posix/getopt.c:783
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: 未知的é¸é … `--%s'\n"
-#: posix/getopt.c:792 posix/getopt.c:795
+#: posix/getopt.c:791 posix/getopt.c:794
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: 未知的é¸é … `%c%s'\n"
-#: posix/getopt.c:844 posix/getopt.c:847
+#: posix/getopt.c:843 posix/getopt.c:846
#, c-format
msgid "%s: invalid option -- '%c'\n"
msgstr "%s: ä¸é©ç”¨çš„é¸é … -- %c\n"
-#: posix/getopt.c:900 posix/getopt.c:917 posix/getopt.c:1127
-#: posix/getopt.c:1145
+#: posix/getopt.c:899 posix/getopt.c:916 posix/getopt.c:1126
+#: posix/getopt.c:1144
#, c-format
msgid "%s: option requires an argument -- '%c'\n"
msgstr "%s: é¸é …需è¦ä¸€å€‹å¼•æ•¸ -- %c\n"
-#: posix/getopt.c:973 posix/getopt.c:989
+#: posix/getopt.c:972 posix/getopt.c:988
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: é¸é … `-W %s' å«ç¾©ä¸æ¸…\n"
-#: posix/getopt.c:1013 posix/getopt.c:1031
+#: posix/getopt.c:1012 posix/getopt.c:1030
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: é¸é … `-W %s' ä¸å…許附加引數\n"
-#: posix/getopt.c:1052 posix/getopt.c:1070
+#: posix/getopt.c:1051 posix/getopt.c:1069
#, c-format
msgid "%s: option '-W %s' requires an argument\n"
msgstr "%s:é¸é …『-W %sã€éœ€è¦ä¸€å€‹å¼•æ•¸\n"
-#: posix/regcomp.c:134
+#: posix/regcomp.c:136
msgid "No match"
msgstr "沒有符åˆçš„é …ç›®"
-#: posix/regcomp.c:137
+#: posix/regcomp.c:139
msgid "Invalid regular expression"
msgstr "ä¸é©ç”¨çš„常è¦è¡¨ç¤ºå¼"
-#: posix/regcomp.c:140
+#: posix/regcomp.c:142
msgid "Invalid collation character"
msgstr "ä¸é©ç”¨çš„å°ç…§å­—å…ƒ"
-#: posix/regcomp.c:143
+#: posix/regcomp.c:145
msgid "Invalid character class name"
msgstr "ä¸é©ç”¨çš„字元類別å"
-#: posix/regcomp.c:146
+#: posix/regcomp.c:148
msgid "Trailing backslash"
msgstr "尾端的å斜線"
-#: posix/regcomp.c:149
+#: posix/regcomp.c:151
msgid "Invalid back reference"
msgstr "ä¸é©ç”¨çš„後部索引"
-#: posix/regcomp.c:152
+#: posix/regcomp.c:154
msgid "Unmatched [ or [^"
msgstr "[ 或 [^ ä¸èƒ½åŒ¹é…"
-#: posix/regcomp.c:155
+#: posix/regcomp.c:157
msgid "Unmatched ( or \\("
msgstr "( 或 \\( ä¸èƒ½åŒ¹é…"
-#: posix/regcomp.c:158
+#: posix/regcomp.c:160
msgid "Unmatched \\{"
msgstr "\\{ ä¸èƒ½åŒ¹é…"
-#: posix/regcomp.c:161
+#: posix/regcomp.c:163
msgid "Invalid content of \\{\\}"
msgstr "ä¸é©ç”¨çš„ \\{\\} 內容"
-#: posix/regcomp.c:164
+#: posix/regcomp.c:166
msgid "Invalid range end"
msgstr "ä¸é©ç”¨çš„範åœçµæŸ"
-#: posix/regcomp.c:167
+#: posix/regcomp.c:169
msgid "Memory exhausted"
msgstr "記憶體用完了"
-#: posix/regcomp.c:170
+#: posix/regcomp.c:172
msgid "Invalid preceding regular expression"
msgstr "ä¸é©ç”¨çš„å‰ç½®å¸¸è¦è¡¨ç¤ºå¼"
-#: posix/regcomp.c:173
+#: posix/regcomp.c:175
msgid "Premature end of regular expression"
msgstr "常è¦è¡¨ç¤ºå¼å¤ªæ—©çµæŸäº†"
-#: posix/regcomp.c:176
+#: posix/regcomp.c:178
msgid "Regular expression too big"
msgstr "æ­£è¦è¡¨ç¤ºå¼å¤ªé•·äº†"
-#: posix/regcomp.c:179
+#: posix/regcomp.c:181
msgid "Unmatched ) or \\)"
msgstr ") 或 \\) ä¸èƒ½åŒ¹é…"
-#: posix/regcomp.c:679
+#: posix/regcomp.c:681
msgid "No previous regular expression"
msgstr "å…ˆå‰ä¸¦æœªä½¿ç”¨éŽå¸¸è¦è¡¨ç¤ºå¼"
-#: posix/wordexp.c:1830
+#: posix/wordexp.c:1840
msgid "parameter null or not set"
msgstr "åƒæ•¸ç‚ºç©ºå­—元或是未設置"
@@ -4799,27 +4832,27 @@ msgstr "內部解讀錯誤"
msgid "Unknown resolver error"
msgstr "未知的解讀錯誤"
-#: resolv/res_hconf.c:122
+#: resolv/res_hconf.c:121
#, c-format
msgid "%s: line %d: cannot specify more than %d trim domains"
msgstr "%s: 第 %d 列: ç„¡æ³•æŒ‡å®šè¶…éŽ %d 個修剪範åœ"
-#: resolv/res_hconf.c:143
+#: resolv/res_hconf.c:142
#, c-format
msgid "%s: line %d: list delimiter not followed by domain"
msgstr "%s: 第 %d 列: 範åœä¸å¯è·Ÿåœ¨è¡¨åˆ—分隔字元之後"
-#: resolv/res_hconf.c:202
+#: resolv/res_hconf.c:201
#, c-format
msgid "%s: line %d: expected `on' or `off', found `%s'\n"
msgstr "%s: 第 %d 列: é æœŸç‚º `on' 或 `off',å»ç™¼ç¾ `%s'\n"
-#: resolv/res_hconf.c:245
+#: resolv/res_hconf.c:244
#, c-format
msgid "%s: line %d: bad command `%s'\n"
msgstr "%s: 第 %d 列: ä¸ç•¶çš„命令 `%s'\n"
-#: resolv/res_hconf.c:280
+#: resolv/res_hconf.c:279
#, c-format
msgid "%s: line %d: ignoring trailing garbage `%s'\n"
msgstr "%s: 第 %d 列: 正在忽略尾端的無用資料 `%s'\n"
@@ -5014,7 +5047,7 @@ msgstr "%s%s未知的信號 %d\n"
msgid "Unknown signal"
msgstr "ä¸æ˜Žçš„信號"
-#: string/_strerror.c:46 sysdeps/mach/_strerror.c:86
+#: string/_strerror.c:45 sysdeps/mach/_strerror.c:86
msgid "Unknown error "
msgstr "未知的錯誤 "
@@ -5032,11 +5065,11 @@ msgstr "å³æ™‚的信號 %d"
msgid "Unknown signal %d"
msgstr "未知的信號 %d"
-#: sunrpc/auth_unix.c:111 sunrpc/clnt_tcp.c:123 sunrpc/clnt_udp.c:134
+#: sunrpc/auth_unix.c:111 sunrpc/clnt_tcp.c:123 sunrpc/clnt_udp.c:135
#: sunrpc/clnt_unix.c:124 sunrpc/svc_tcp.c:188 sunrpc/svc_tcp.c:233
#: sunrpc/svc_udp.c:162 sunrpc/svc_unix.c:188 sunrpc/svc_unix.c:229
-#: sunrpc/xdr.c:630 sunrpc/xdr.c:790 sunrpc/xdr_array.c:97
-#: sunrpc/xdr_rec.c:151 sunrpc/xdr_ref.c:76
+#: sunrpc/xdr.c:631 sunrpc/xdr.c:791 sunrpc/xdr_array.c:97
+#: sunrpc/xdr_rec.c:152 sunrpc/xdr_ref.c:76
msgid "out of memory\n"
msgstr "記憶體ä¸è¶³\n"
@@ -5199,239 +5232,239 @@ msgstr "Broadcast 調查有å•é¡Œ"
msgid "Cannot receive reply to broadcast"
msgstr "無法接å—廣播後的回應"
-#: sunrpc/rpc_main.c:277
+#: sunrpc/rpc_main.c:281
#, c-format
msgid "%s: output would overwrite %s\n"
msgstr "%s: 輸出將會覆蓋 %s\n"
-#: sunrpc/rpc_main.c:284
+#: sunrpc/rpc_main.c:288
#, c-format
msgid "%s: unable to open %s: %m\n"
msgstr "%s: 無法開啟 %s: %m\n"
-#: sunrpc/rpc_main.c:296
+#: sunrpc/rpc_main.c:300
#, c-format
msgid "%s: while writing output %s: %m"
msgstr "%s: 當在寫出輸出 %s 時: %m"
-#: sunrpc/rpc_main.c:332 sunrpc/rpc_main.c:371
+#: sunrpc/rpc_main.c:336 sunrpc/rpc_main.c:375
#, c-format
msgid "cannot find C preprocessor: %s\n"
msgstr "找ä¸åˆ° C å‰ç½®è™•ç†å™¨ï¼š%s\n"
-#: sunrpc/rpc_main.c:407
+#: sunrpc/rpc_main.c:411
#, c-format
msgid "%s: C preprocessor failed with signal %d\n"
msgstr "%s: C å‰ç½®è™•ç†å™¨å¤±æ•ˆï¼Œå…¶è¨Šè™Ÿå€¼ç‚º %d\n"
-#: sunrpc/rpc_main.c:410
+#: sunrpc/rpc_main.c:414
#, c-format
msgid "%s: C preprocessor failed with exit code %d\n"
msgstr "%s: C å‰ç½®è™•ç†å™¨å¤±æ•ˆï¼Œå…¶çµæŸç¢¼ç‚º %d\n"
-#: sunrpc/rpc_main.c:450
+#: sunrpc/rpc_main.c:454
#, c-format
msgid "illegal nettype: `%s'\n"
msgstr "ä¸åˆæ³•çš„ nettype:「%sã€\n"
-#: sunrpc/rpc_main.c:1085
+#: sunrpc/rpc_main.c:1089
#, c-format
msgid "rpcgen: too many defines\n"
msgstr "rpcgen: 太多 define 了\n"
-#: sunrpc/rpc_main.c:1097
+#: sunrpc/rpc_main.c:1101
#, c-format
msgid "rpcgen: arglist coding error\n"
msgstr "rpcgen: arglist 編碼錯誤\n"
#. TRANS: the file will not be removed; this is an
#. TRANS: informative message.
-#: sunrpc/rpc_main.c:1130
+#: sunrpc/rpc_main.c:1134
#, c-format
msgid "file `%s' already exists and may be overwritten\n"
msgstr "檔案 `%s' 已經存在並有å¯èƒ½æœƒè¢«è¦†è“‹æŽ‰\n"
-#: sunrpc/rpc_main.c:1175
+#: sunrpc/rpc_main.c:1179
#, c-format
msgid "Cannot specify more than one input file!\n"
msgstr "無法指定超éŽä¸€å€‹è¼¸å…¥æª”!\n"
-#: sunrpc/rpc_main.c:1345
+#: sunrpc/rpc_main.c:1349
#, c-format
msgid "This implementation doesn't support newstyle or MT-safe code!\n"
msgstr "此實作方å¼ä¸æ”¯æ´æ–°çš„å½¢å¼æˆ–多安全執行åºçš„程å¼!\n"
-#: sunrpc/rpc_main.c:1354
+#: sunrpc/rpc_main.c:1358
#, c-format
msgid "Cannot use netid flag with inetd flag!\n"
msgstr "無法將 netid 旗標與 inetd 旗標一起使用!\n"
-#: sunrpc/rpc_main.c:1363
+#: sunrpc/rpc_main.c:1367
#, c-format
msgid "Cannot use netid flag without TIRPC!\n"
msgstr "無法在沒有 TIRPC 時使用 netid 旗標!\n"
-#: sunrpc/rpc_main.c:1370
+#: sunrpc/rpc_main.c:1374
#, c-format
msgid "Cannot use table flags with newstyle!\n"
msgstr "無法將表格旗標與 newstyle 一起使用!\n"
-#: sunrpc/rpc_main.c:1389
+#: sunrpc/rpc_main.c:1393
#, c-format
msgid "\"infile\" is required for template generation flags.\n"
msgstr "\"infile\" 是樣版產生旗標所需的\n"
-#: sunrpc/rpc_main.c:1394
+#: sunrpc/rpc_main.c:1398
#, c-format
msgid "Cannot have more than one file generation flag!\n"
msgstr "無法使用超éŽä¸€å€‹çš„檔案產生旗標!\n"
-#: sunrpc/rpc_main.c:1403
+#: sunrpc/rpc_main.c:1407
#, c-format
msgid "usage: %s infile\n"
msgstr "用法: %s infile\n"
-#: sunrpc/rpc_main.c:1404
+#: sunrpc/rpc_main.c:1408
#, c-format
msgid "\t%s [-abkCLNTM][-Dname[=value]] [-i size] [-I [-K seconds]] [-Y path] infile\n"
msgstr "\t%s [-abkCLNTM][-Då稱[=值]] [-i 大å°] [-I [-K 秒數]] [-Y 路徑] 輸入檔案\n"
-#: sunrpc/rpc_main.c:1406
+#: sunrpc/rpc_main.c:1410
#, c-format
msgid "\t%s [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm] [-o outfile] [infile]\n"
msgstr "\t%s [-c | -h | -l | -m | -t | -Sc | -Ss | -Sm] [-o 輸出檔案] [輸入檔案]\n"
-#: sunrpc/rpc_main.c:1408
+#: sunrpc/rpc_main.c:1412
#, c-format
msgid "\t%s [-s nettype]* [-o outfile] [infile]\n"
msgstr "\t%s [-s 網路型態]* [-o 輸出檔案] [輸入檔案]\n"
-#: sunrpc/rpc_main.c:1409
+#: sunrpc/rpc_main.c:1413
#, c-format
msgid "\t%s [-n netid]* [-o outfile] [infile]\n"
msgstr "\t%s [-n 網路識別符號]* [-o 輸出檔案] [輸入檔案]\n"
-#: sunrpc/rpc_main.c:1417
+#: sunrpc/rpc_main.c:1421
#, c-format
msgid "options:\n"
msgstr "é¸é …:\n"
-#: sunrpc/rpc_main.c:1418
+#: sunrpc/rpc_main.c:1422
#, c-format
msgid "-a\t\tgenerate all files, including samples\n"
msgstr "-a\t\t產生所有檔案,包å«æ¨£æœ¬\n"
-#: sunrpc/rpc_main.c:1419
+#: sunrpc/rpc_main.c:1423
#, c-format
msgid "-b\t\tbackward compatibility mode (generates code for SunOS 4.1)\n"
msgstr "-b\t\tå›žæº¯ç›¸å®¹æ¨¡å¼ (產生用於 SunOS 4.1 的編碼)\n"
-#: sunrpc/rpc_main.c:1420
+#: sunrpc/rpc_main.c:1424
#, c-format
msgid "-c\t\tgenerate XDR routines\n"
msgstr "-c\t\t產生 XDR 常å¼\n"
-#: sunrpc/rpc_main.c:1421
+#: sunrpc/rpc_main.c:1425
#, c-format
msgid "-C\t\tANSI C mode\n"
msgstr "-C\t\tANSI C 模å¼\n"
-#: sunrpc/rpc_main.c:1422
+#: sunrpc/rpc_main.c:1426
#, c-format
msgid "-Dname[=value]\tdefine a symbol (same as #define)\n"
msgstr "-Då稱[=值]\t定義一個符號 (å¦‚åŒ #define)\n"
-#: sunrpc/rpc_main.c:1423
+#: sunrpc/rpc_main.c:1427
#, c-format
msgid "-h\t\tgenerate header file\n"
msgstr "-h\t\t產生標頭檔\n"
-#: sunrpc/rpc_main.c:1424
+#: sunrpc/rpc_main.c:1428
#, c-format
msgid "-i size\t\tsize at which to start generating inline code\n"
msgstr "-i 大å°\t\t啟始產生內è¯ç·¨ç¢¼çš„大å°\n"
-#: sunrpc/rpc_main.c:1425
+#: sunrpc/rpc_main.c:1429
#, c-format
msgid "-I\t\tgenerate code for inetd support in server (for SunOS 4.1)\n"
msgstr "-I\t\t產生在伺æœå™¨ä¸­æ”¯æ´çš„ inetd 編碼 (用於 SunOS 4.1)\n"
-#: sunrpc/rpc_main.c:1426
+#: sunrpc/rpc_main.c:1430
#, c-format
msgid "-K seconds\tserver exits after K seconds of inactivity\n"
msgstr "-K 秒\tä¸ä½œç”¨ K 秒之後離開伺æœå™¨\n"
-#: sunrpc/rpc_main.c:1427
+#: sunrpc/rpc_main.c:1431
#, c-format
msgid "-l\t\tgenerate client side stubs\n"
msgstr "-l\t\t產生客戶端殘餘\n"
-#: sunrpc/rpc_main.c:1428
+#: sunrpc/rpc_main.c:1432
#, c-format
msgid "-L\t\tserver errors will be printed to syslog\n"
msgstr "-L\t\t伺æœå™¨éŒ¯èª¤å°‡è¢«åˆ—å°åˆ° syslog\n"
-#: sunrpc/rpc_main.c:1429
+#: sunrpc/rpc_main.c:1433
#, c-format
msgid "-m\t\tgenerate server side stubs\n"
msgstr "-m\t\t產生伺æœå™¨ç«¯æ®˜é¤˜\n"
-#: sunrpc/rpc_main.c:1430
+#: sunrpc/rpc_main.c:1434
#, c-format
msgid "-M\t\tgenerate MT-safe code\n"
msgstr "-M\t\t產生 MT-safe 編碼\n"
-#: sunrpc/rpc_main.c:1431
+#: sunrpc/rpc_main.c:1435
#, c-format
msgid "-n netid\tgenerate server code that supports named netid\n"
msgstr "-n netid\t產生支æ´å…·å netid 的伺æœå™¨ç·¨ç¢¼\n"
-#: sunrpc/rpc_main.c:1432
+#: sunrpc/rpc_main.c:1436
#, c-format
msgid "-N\t\tsupports multiple arguments and call-by-value\n"
msgstr "-N\t\t支æ´å¤šé‡å¼•æ•¸å’Œå‚³å€¼å‘¼å«\n"
-#: sunrpc/rpc_main.c:1433
+#: sunrpc/rpc_main.c:1437
#, c-format
msgid "-o outfile\tname of the output file\n"
msgstr "-o 輸出檔\t輸出檔案的å稱\n"
-#: sunrpc/rpc_main.c:1434
+#: sunrpc/rpc_main.c:1438
#, c-format
msgid "-s nettype\tgenerate server code that supports named nettype\n"
msgstr "-s nettype\t產生支æ´å…·å nettype 的伺æœå™¨ç·¨ç¢¼\n"
-#: sunrpc/rpc_main.c:1435
+#: sunrpc/rpc_main.c:1439
#, c-format
msgid "-Sc\t\tgenerate sample client code that uses remote procedures\n"
msgstr "-Sc\t\t產生使用é ç«¯ç¨‹åºçš„範例客戶端編碼\n"
-#: sunrpc/rpc_main.c:1436
+#: sunrpc/rpc_main.c:1440
#, c-format
msgid "-Ss\t\tgenerate sample server code that defines remote procedures\n"
msgstr "-Ss\t\t產生定義é ç«¯ç¨‹åºçš„範例伺æœå™¨ç·¨ç¢¼\n"
-#: sunrpc/rpc_main.c:1437
+#: sunrpc/rpc_main.c:1441
#, c-format
msgid "-Sm \t\tgenerate makefile template \n"
msgstr "-Sm\t\t產生 makefile 模æ¿\n"
-#: sunrpc/rpc_main.c:1438
+#: sunrpc/rpc_main.c:1442
#, c-format
msgid "-t\t\tgenerate RPC dispatch table\n"
msgstr "-t\t\t產生 RPC æ´¾é€è¡¨\n"
-#: sunrpc/rpc_main.c:1439
+#: sunrpc/rpc_main.c:1443
#, c-format
msgid "-T\t\tgenerate code to support RPC dispatch tables\n"
msgstr "-T\t\tç”¢ç”Ÿæ”¯æ´ RPC æ´¾é€è¡¨çš„編碼\n"
-#: sunrpc/rpc_main.c:1440
+#: sunrpc/rpc_main.c:1444
#, c-format
msgid "-Y path\t\tdirectory name to find C preprocessor (cpp)\n"
msgstr "-Y 路徑\t\tè¦å°‹æ‰¾ C å‰ç½®è™•ç†å™¨ (cpp) 的目錄å稱\n"
-#: sunrpc/rpc_main.c:1442
+#: sunrpc/rpc_main.c:1446
#, c-format
msgid ""
"\n"
@@ -6229,46 +6262,47 @@ msgstr "太多使用者"
#. TRANS The user's disk quota was exceeded.
#: sysdeps/gnu/errlist.c:775
msgid "Disk quota exceeded"
-msgstr "硬碟 quota 滿了"
+msgstr "ç£ç¢Ÿé…é¡å·²æ»¿"
-#. TRANS Stale NFS file handle. This indicates an internal confusion in the NFS
-#. TRANS system which is due to file system rearrangements on the server host.
-#. TRANS Repairing this condition usually requires unmounting and remounting
-#. TRANS the NFS file system on the local host.
-#: sysdeps/gnu/errlist.c:787
-msgid "Stale NFS file handle"
-msgstr "éŽèˆŠçš„ NFS 檔案控制碼"
+#. TRANS Stale file handle. This indicates an internal confusion in the
+#. TRANS file system which is due to file system rearrangements on the server host
+#. TRANS for NFS file systems or corruption in other file systems.
+#. TRANS Repairing this condition usually requires unmounting, possibly repairing
+#. TRANS and remounting the file system.
+#: sysdeps/gnu/errlist.c:788
+msgid "Stale file handle"
+msgstr "éŽèˆŠçš„檔案控柄"
#. TRANS An attempt was made to NFS-mount a remote file system with a file name that
#. TRANS already specifies an NFS-mounted file.
#. TRANS (This is an error on some operating systems, but we expect it to work
#. TRANS properly on @gnuhurdsystems{}, making this error code impossible.)
-#: sysdeps/gnu/errlist.c:799
+#: sysdeps/gnu/errlist.c:800
msgid "Object is remote"
msgstr "目標檔案ä½æ–¼é ç«¯"
#. TRANS ???
-#: sysdeps/gnu/errlist.c:808
+#: sysdeps/gnu/errlist.c:809
msgid "RPC struct is bad"
msgstr "RPC çµæ§‹æ˜¯å£žçš„"
#. TRANS ???
-#: sysdeps/gnu/errlist.c:817
+#: sysdeps/gnu/errlist.c:818
msgid "RPC version wrong"
msgstr "RPC 版本錯誤"
#. TRANS ???
-#: sysdeps/gnu/errlist.c:826
+#: sysdeps/gnu/errlist.c:827
msgid "RPC program not available"
msgstr "RPC 程å¼ä¸å­˜åœ¨"
#. TRANS ???
-#: sysdeps/gnu/errlist.c:835
+#: sysdeps/gnu/errlist.c:836
msgid "RPC program version wrong"
msgstr "RPC 程å¼ç‰ˆæœ¬éŒ¯èª¤"
#. TRANS ???
-#: sysdeps/gnu/errlist.c:844
+#: sysdeps/gnu/errlist.c:845
msgid "RPC bad procedure for program"
msgstr "程å¼çš„ RPC 程åºéŒ¯èª¤"
@@ -6276,7 +6310,7 @@ msgstr "程å¼çš„ RPC 程åºéŒ¯èª¤"
#. TRANS @ref{File Locks}. This error is never generated by @gnuhurdsystems{}, but
#. TRANS it can result from an operation to an NFS server running another
#. TRANS operating system.
-#: sysdeps/gnu/errlist.c:856
+#: sysdeps/gnu/errlist.c:857
msgid "No locks available"
msgstr "無法鎖定資料"
@@ -6285,17 +6319,17 @@ msgstr "無法鎖定資料"
#. TRANS
#. TRANS On some systems @code{chmod} returns this error if you try to set the
#. TRANS sticky bit on a non-directory file; @pxref{Setting Permissions}.
-#: sysdeps/gnu/errlist.c:869
+#: sysdeps/gnu/errlist.c:870
msgid "Inappropriate file type or format"
msgstr "ä¸å¸Œæœ›çš„檔案型態或格å¼"
#. TRANS ???
-#: sysdeps/gnu/errlist.c:878
+#: sysdeps/gnu/errlist.c:879
msgid "Authentication error"
msgstr "鑑定錯誤"
#. TRANS ???
-#: sysdeps/gnu/errlist.c:887
+#: sysdeps/gnu/errlist.c:888
msgid "Need authenticator"
msgstr "需è¦èªè­‰"
@@ -6304,7 +6338,7 @@ msgstr "需è¦èªè­‰"
#. TRANS operating system. When you get this error, you can be sure that this
#. TRANS particular function will always fail with @code{ENOSYS} unless you
#. TRANS install a new version of the C library or the operating system.
-#: sysdeps/gnu/errlist.c:900
+#: sysdeps/gnu/errlist.c:901
msgid "Function not implemented"
msgstr "功能沒有實作"
@@ -6320,13 +6354,13 @@ msgstr "功能沒有實作"
#. TRANS
#. TRANS If the entire function is not available at all in the implementation,
#. TRANS it returns @code{ENOSYS} instead.
-#: sysdeps/gnu/errlist.c:920
+#: sysdeps/gnu/errlist.c:921
msgid "Not supported"
msgstr "並未支æ´"
#. TRANS While decoding a multibyte character the function came along an invalid
#. TRANS or an incomplete sequence of bytes or the given wide character is invalid.
-#: sysdeps/gnu/errlist.c:930
+#: sysdeps/gnu/errlist.c:931
msgid "Invalid or incomplete multibyte or wide character"
msgstr "ä¸é©ç”¨æˆ–ä¸å®Œæ•´çš„多ä½å…ƒçµ„字元或寬字元"
@@ -6336,26 +6370,26 @@ msgstr "ä¸é©ç”¨æˆ–ä¸å®Œæ•´çš„多ä½å…ƒçµ„字元或寬字元"
#. TRANS error because functions such as @code{read} and @code{write} translate
#. TRANS it into a @code{SIGTTIN} or @code{SIGTTOU} signal. @xref{Job Control},
#. TRANS for information on process groups and these signals.
-#: sysdeps/gnu/errlist.c:944
+#: sysdeps/gnu/errlist.c:945
msgid "Inappropriate operation for background process"
msgstr "ä¸å¸Œæœ›çš„背景行程é‹ä½œ"
#. TRANS On @gnuhurdsystems{}, opening a file returns this error when the file is
#. TRANS translated by a program and the translator program dies while starting
#. TRANS up, before it has connected to the file.
-#: sysdeps/gnu/errlist.c:955
+#: sysdeps/gnu/errlist.c:956
msgid "Translator died"
msgstr "中介程å¼å·²ç¶“çµæŸ"
#. TRANS The experienced user will know what is wrong.
#. TRANS @c This error code is a joke. Its perror text is part of the joke.
#. TRANS @c Don't change it.
-#: sysdeps/gnu/errlist.c:966
+#: sysdeps/gnu/errlist.c:967
msgid "?"
msgstr "?"
#. TRANS You did @strong{what}?
-#: sysdeps/gnu/errlist.c:975
+#: sysdeps/gnu/errlist.c:976
msgid "You really blew it this time"
msgstr "這次真的被您打敗了"
@@ -6392,56 +6426,56 @@ msgstr "這次真的被您打敗了"
# 簡單的說,兒歌 "å”è€å…ˆç”Ÿæœ‰å¡Šåœ°...",然後呢?? ;-p
#
#. TRANS Go home and have a glass of warm, dairy-fresh milk.
-#: sysdeps/gnu/errlist.c:984
+#: sysdeps/gnu/errlist.c:985
msgid "Computer bought the farm"
msgstr "這臺電腦買了一塊地囉"
#. TRANS This error code has no purpose.
-#: sysdeps/gnu/errlist.c:993
+#: sysdeps/gnu/errlist.c:994
msgid "Gratuitous error"
msgstr "無故的錯誤"
-#: sysdeps/gnu/errlist.c:1001
+#: sysdeps/gnu/errlist.c:1002
msgid "Bad message"
msgstr "錯誤的訊æ¯"
-#: sysdeps/gnu/errlist.c:1009
+#: sysdeps/gnu/errlist.c:1010
msgid "Identifier removed"
msgstr "識別符號移除"
-#: sysdeps/gnu/errlist.c:1017
+#: sysdeps/gnu/errlist.c:1018
msgid "Multihop attempted"
msgstr "嘗試 Multihop"
-#: sysdeps/gnu/errlist.c:1025
+#: sysdeps/gnu/errlist.c:1026
msgid "No data available"
msgstr "沒有å¯ç”¨çš„資料"
-#: sysdeps/gnu/errlist.c:1033
+#: sysdeps/gnu/errlist.c:1034
msgid "Link has been severed"
msgstr "連çµå·²æœ‰æœå‹™"
-#: sysdeps/gnu/errlist.c:1041
+#: sysdeps/gnu/errlist.c:1042
msgid "No message of desired type"
msgstr "沒有符åˆéœ€æ±‚æ ¼å¼çš„訊æ¯"
-#: sysdeps/gnu/errlist.c:1049
+#: sysdeps/gnu/errlist.c:1050
msgid "Out of streams resources"
msgstr "所有資料æµçš„資æºéƒ½å·²ç”¨ç›¡"
-#: sysdeps/gnu/errlist.c:1057
+#: sysdeps/gnu/errlist.c:1058
msgid "Device not a stream"
msgstr "è£ç½®ä¸æ˜¯è³‡æ–™æµ"
-#: sysdeps/gnu/errlist.c:1065
+#: sysdeps/gnu/errlist.c:1066
msgid "Value too large for defined data type"
msgstr "有定義的資料型別值太大"
-#: sysdeps/gnu/errlist.c:1073
+#: sysdeps/gnu/errlist.c:1074
msgid "Protocol error"
msgstr "å”定錯誤"
-#: sysdeps/gnu/errlist.c:1081
+#: sysdeps/gnu/errlist.c:1082
msgid "Timer expired"
msgstr "計時器已逾時"
@@ -6449,195 +6483,195 @@ msgstr "計時器已逾時"
#. TRANS completed. @xref{Asynchronous I/O}. When you call @code{aio_cancel},
#. TRANS the normal result is for the operations affected to complete with this
#. TRANS error; @pxref{Cancel AIO Operations}.
-#: sysdeps/gnu/errlist.c:1093
+#: sysdeps/gnu/errlist.c:1094
msgid "Operation canceled"
msgstr "æ“作已被å–消"
-#: sysdeps/gnu/errlist.c:1101
+#: sysdeps/gnu/errlist.c:1102
msgid "Interrupted system call should be restarted"
msgstr "中斷的系統呼å«å¿…é ˆé‡æ–°å•Ÿå‹•"
-#: sysdeps/gnu/errlist.c:1109
+#: sysdeps/gnu/errlist.c:1110
msgid "Channel number out of range"
msgstr "通é“號碼超出範åœ"
-#: sysdeps/gnu/errlist.c:1117
+#: sysdeps/gnu/errlist.c:1118
msgid "Level 2 not synchronized"
msgstr "層級 2 沒有åŒæ­¥"
-#: sysdeps/gnu/errlist.c:1125
+#: sysdeps/gnu/errlist.c:1126
msgid "Level 3 halted"
msgstr "層級 3 åœæ­¢"
-#: sysdeps/gnu/errlist.c:1133
+#: sysdeps/gnu/errlist.c:1134
msgid "Level 3 reset"
msgstr "層級 3 é‡è¨­"
-#: sysdeps/gnu/errlist.c:1141
+#: sysdeps/gnu/errlist.c:1142
msgid "Link number out of range"
msgstr "連çµæ•¸ç›®è¶…éŽç¯„åœ"
-#: sysdeps/gnu/errlist.c:1149
+#: sysdeps/gnu/errlist.c:1150
msgid "Protocol driver not attached"
msgstr "å”定的驅動程å¼æœªé€£æŽ¥"
-#: sysdeps/gnu/errlist.c:1157
+#: sysdeps/gnu/errlist.c:1158
msgid "No CSI structure available"
msgstr "沒有å¯ç”¨çš„ CSI çµæ§‹äº†"
-#: sysdeps/gnu/errlist.c:1165
+#: sysdeps/gnu/errlist.c:1166
msgid "Level 2 halted"
msgstr "層級 2 åœæ­¢"
-#: sysdeps/gnu/errlist.c:1173
+#: sysdeps/gnu/errlist.c:1174
msgid "Invalid exchange"
msgstr "ä¸é©ç”¨çš„交æ›"
-#: sysdeps/gnu/errlist.c:1181
+#: sysdeps/gnu/errlist.c:1182
msgid "Invalid request descriptor"
msgstr "ä¸é©ç”¨çš„請求敘述項"
-#: sysdeps/gnu/errlist.c:1189
+#: sysdeps/gnu/errlist.c:1190
msgid "Exchange full"
msgstr "交æ›å·²æ»¿"
-#: sysdeps/gnu/errlist.c:1197
+#: sysdeps/gnu/errlist.c:1198
msgid "No anode"
msgstr "沒有 anode"
-#: sysdeps/gnu/errlist.c:1205
+#: sysdeps/gnu/errlist.c:1206
msgid "Invalid request code"
msgstr "ä¸é©ç”¨çš„請求碼"
-#: sysdeps/gnu/errlist.c:1213
+#: sysdeps/gnu/errlist.c:1214
msgid "Invalid slot"
msgstr "ä¸é©ç”¨çš„ slot"
-#: sysdeps/gnu/errlist.c:1221
+#: sysdeps/gnu/errlist.c:1222
msgid "File locking deadlock error"
msgstr "檔案鎖定åœé “錯誤"
-#: sysdeps/gnu/errlist.c:1229
+#: sysdeps/gnu/errlist.c:1230
msgid "Bad font file format"
msgstr "錯誤的字型檔格å¼"
-#: sysdeps/gnu/errlist.c:1237
+#: sysdeps/gnu/errlist.c:1238
msgid "Machine is not on the network"
msgstr "機器ä¸åœ¨ç¶²è·¯ä¸­"
-#: sysdeps/gnu/errlist.c:1245
+#: sysdeps/gnu/errlist.c:1246
msgid "Package not installed"
msgstr "套件並未安è£"
-#: sysdeps/gnu/errlist.c:1253
+#: sysdeps/gnu/errlist.c:1254
msgid "Advertise error"
msgstr "通知錯誤"
-#: sysdeps/gnu/errlist.c:1261
+#: sysdeps/gnu/errlist.c:1262
msgid "Srmount error"
msgstr "Srmount 錯誤"
-#: sysdeps/gnu/errlist.c:1269
+#: sysdeps/gnu/errlist.c:1270
msgid "Communication error on send"
msgstr "在傳é€æ™‚通訊錯誤"
-#: sysdeps/gnu/errlist.c:1277
+#: sysdeps/gnu/errlist.c:1278
msgid "RFS specific error"
msgstr "RFS 特定錯誤"
-#: sysdeps/gnu/errlist.c:1285
+#: sysdeps/gnu/errlist.c:1286
msgid "Name not unique on network"
msgstr "網路上的å稱ä¸æ˜¯å”¯ä¸€çš„"
-#: sysdeps/gnu/errlist.c:1293
+#: sysdeps/gnu/errlist.c:1294
msgid "File descriptor in bad state"
msgstr "檔案敘述項處於錯誤狀態"
-#: sysdeps/gnu/errlist.c:1301
+#: sysdeps/gnu/errlist.c:1302
msgid "Remote address changed"
msgstr "é ç«¯ä½å€æ”¹è®Šäº†"
-#: sysdeps/gnu/errlist.c:1309
+#: sysdeps/gnu/errlist.c:1310
msgid "Can not access a needed shared library"
msgstr "無法存å–所需的分享函å¼åº«"
-#: sysdeps/gnu/errlist.c:1317
+#: sysdeps/gnu/errlist.c:1318
msgid "Accessing a corrupted shared library"
msgstr "å­˜å–一個毀掉的分享函å¼åº«"
-#: sysdeps/gnu/errlist.c:1325
+#: sysdeps/gnu/errlist.c:1326
msgid ".lib section in a.out corrupted"
msgstr "a.out 中 .lib å€æ®µæ¯€æŽ‰äº†"
-#: sysdeps/gnu/errlist.c:1333
+#: sysdeps/gnu/errlist.c:1334
msgid "Attempting to link in too many shared libraries"
msgstr "嘗試去連çµå¤ªå¤šçš„分享資料庫"
-#: sysdeps/gnu/errlist.c:1341
+#: sysdeps/gnu/errlist.c:1342
msgid "Cannot exec a shared library directly"
msgstr "ä¸èƒ½ç›´æŽ¥åŸ·è¡Œä¸€å€‹åˆ†äº«å‡½å¼åº«"
-#: sysdeps/gnu/errlist.c:1349
+#: sysdeps/gnu/errlist.c:1350
msgid "Streams pipe error"
msgstr "資料æµç®¡ç·šéŒ¯èª¤"
-#: sysdeps/gnu/errlist.c:1357
+#: sysdeps/gnu/errlist.c:1358
msgid "Structure needs cleaning"
msgstr "çµæ§‹éœ€è¦æ¸…ç†"
-#: sysdeps/gnu/errlist.c:1365
+#: sysdeps/gnu/errlist.c:1366
msgid "Not a XENIX named type file"
msgstr "ä¸¦éž XENIX 命åæ ¼å¼çš„檔案"
-#: sysdeps/gnu/errlist.c:1373
+#: sysdeps/gnu/errlist.c:1374
msgid "No XENIX semaphores available"
msgstr "沒有å¯ç”¨çš„ XENIX 信號標誌了"
-#: sysdeps/gnu/errlist.c:1381
+#: sysdeps/gnu/errlist.c:1382
msgid "Is a named type file"
msgstr "是個具å的型態檔案"
-#: sysdeps/gnu/errlist.c:1389
+#: sysdeps/gnu/errlist.c:1390
msgid "Remote I/O error"
msgstr "é ç«¯è¼¸å‡ºå…¥éŒ¯èª¤"
-#: sysdeps/gnu/errlist.c:1397
+#: sysdeps/gnu/errlist.c:1398
msgid "No medium found"
msgstr "找ä¸åˆ°åª’é«”"
-#: sysdeps/gnu/errlist.c:1405
+#: sysdeps/gnu/errlist.c:1406
msgid "Wrong medium type"
msgstr "錯誤的媒體型態"
-#: sysdeps/gnu/errlist.c:1413
+#: sysdeps/gnu/errlist.c:1414
msgid "Required key not available"
msgstr "å¿…è¦éµå€¼ç„¡æ³•ä½¿ç”¨"
-#: sysdeps/gnu/errlist.c:1421
+#: sysdeps/gnu/errlist.c:1422
msgid "Key has expired"
msgstr "éµå€¼å·²éŽæœŸ"
-#: sysdeps/gnu/errlist.c:1429
+#: sysdeps/gnu/errlist.c:1430
msgid "Key has been revoked"
msgstr "éµå€¼å·²å–消"
-#: sysdeps/gnu/errlist.c:1437
+#: sysdeps/gnu/errlist.c:1438
msgid "Key was rejected by service"
msgstr "éµå€¼è¢«æœå‹™æ‰€æ‹’絕"
-#: sysdeps/gnu/errlist.c:1445
+#: sysdeps/gnu/errlist.c:1446
msgid "Owner died"
msgstr "æ“有者已消é€"
-#: sysdeps/gnu/errlist.c:1453
+#: sysdeps/gnu/errlist.c:1454
msgid "State not recoverable"
msgstr "狀態無法回復"
-#: sysdeps/gnu/errlist.c:1461
+#: sysdeps/gnu/errlist.c:1462
msgid "Operation not possible due to RF-kill"
msgstr "由於 RF-kill 而無法æ“作"
-#: sysdeps/gnu/errlist.c:1469
+#: sysdeps/gnu/errlist.c:1470
msgid "Memory page has hardware error"
msgstr "記憶體分é æœ‰ç¡¬é«”錯誤"
@@ -6765,7 +6799,7 @@ msgid ""
"\n"
"Report bugs to %s.\n"
msgstr ""
-"%s:用法為 %s [--version] [--help] [-v] [-c [loyear,]hiyear ] zonename ...\n"
+"%s:用法為 %s [--version] [--help] [-v] [-c [低年分,]高年分 ] å€åŸŸå稱 ...\n"
"\n"
"將錯誤通報給 %s。\n"
@@ -6810,8 +6844,8 @@ msgid ""
"\n"
"Report bugs to %s.\n"
msgstr ""
-"%s:用法為 %s [ --version ] [ --help ] [ -v ] [ -l localtime ] [ -p posixrules ] \\\n"
-"\t[ -d directory ] [ -L leapseconds ] [ -y yearistype ] [ filename ... ]\n"
+"%s:用法為 %s [ --version ] [ --help ] [ -v ] [ -l 本地時間 ] [ -p POSIXè¦å‰‡ ] \\\n"
+"\t[ -d 目錄 ] [ -L è·³èºç§’數 ] [ -y 年分類型 ] [ 檔å ... ]\n"
"\n"
"將錯誤通報給 %s。\n"
@@ -6911,7 +6945,7 @@ msgstr "%s: 關閉錯誤 %s: %s\n"
msgid "expected continuation line not found"
msgstr "找ä¸åˆ°é æœŸçš„接續列"
-#: timezone/zic.c:887 timezone/zic.c:2411 timezone/zic.c:2425
+#: timezone/zic.c:887 timezone/zic.c:2413 timezone/zic.c:2427
msgid "time overflow"
msgstr "時間溢ä½"
@@ -7057,93 +7091,93 @@ msgstr "%s: 無法產生 %s: %s\n"
msgid "%s: Error writing %s\n"
msgstr "%s: 寫入錯誤 %s\n"
-#: timezone/zic.c:1964
+#: timezone/zic.c:1966
msgid "no POSIX environment variable for zone"
msgstr "ç„¡ POSIX 環境變數用於å€"
-#: timezone/zic.c:2131
+#: timezone/zic.c:2133
msgid "can't determine time zone abbreviation to use just after until time"
msgstr "無法決定在çµæŸæ™‚間以後該使用的時å€ç°¡å¯«"
-#: timezone/zic.c:2175
+#: timezone/zic.c:2177
msgid "too many transitions?!"
msgstr "太多時間轉æ›äº†?!"
-#: timezone/zic.c:2190
+#: timezone/zic.c:2192
msgid "internal error - addtype called with bad isdst"
msgstr "內部錯誤 - 用錯誤的 isdst å‘¼å« addtype 函å¼"
-#: timezone/zic.c:2194
+#: timezone/zic.c:2196
msgid "internal error - addtype called with bad ttisstd"
msgstr "內部錯誤 - 用錯誤的 ttisstd å‘¼å« addtype 函å¼"
-#: timezone/zic.c:2198
+#: timezone/zic.c:2200
msgid "internal error - addtype called with bad ttisgmt"
msgstr "內部錯誤 - 用錯誤的 ttisgmt å‘¼å« addtype 函å¼"
-#: timezone/zic.c:2217
+#: timezone/zic.c:2219
msgid "too many local time types"
msgstr "太多本地時間格å¼"
-#: timezone/zic.c:2221
+#: timezone/zic.c:2223
msgid "UTC offset out of range"
msgstr "UTC å移超出範åœ"
-#: timezone/zic.c:2245
+#: timezone/zic.c:2247
msgid "too many leap seconds"
msgstr "太多é–秒"
-#: timezone/zic.c:2251
+#: timezone/zic.c:2253
msgid "repeated leap second moment"
msgstr "é‡è¤‡çš„é–秒設定"
-#: timezone/zic.c:2301
+#: timezone/zic.c:2303
msgid "Wild result from command execution"
msgstr "命令執行導致奇怪的çµæžœ"
-#: timezone/zic.c:2302
+#: timezone/zic.c:2304
#, c-format
msgid "%s: command was '%s', result was %d\n"
msgstr "%s: 輸入命令為 '%s', çµæžœç‚º %d\n"
-#: timezone/zic.c:2393
+#: timezone/zic.c:2395
msgid "Odd number of quotation marks"
msgstr "引號數目為奇數"
-#: timezone/zic.c:2470
+#: timezone/zic.c:2472
msgid "use of 2/29 in non leap-year"
msgstr "在éžé–年時用到 2/29 æ—¥"
-#: timezone/zic.c:2505
+#: timezone/zic.c:2507
msgid "rule goes past start/end of month--will not work with pre-2004 versions of zic"
msgstr "è¦å‰‡è¶…éŽé–‹å§‹/çµæŸæœˆåˆ†--將無法é©ç”¨æ—©æ–¼ 2004 çš„ zic 版本"
-#: timezone/zic.c:2536
+#: timezone/zic.c:2538
msgid "time zone abbreviation lacks alphabetic at start"
msgstr "時å€ç¸®å¯«é–‹é ­ç¼ºå°‘å­—æ¯"
-#: timezone/zic.c:2538
+#: timezone/zic.c:2540
msgid "time zone abbreviation has fewer than 3 alphabetics"
msgstr "時間å€ç¸®å¯«å°‘æ–¼ 3 個字æ¯"
-#: timezone/zic.c:2540
+#: timezone/zic.c:2542
msgid "time zone abbreviation has too many alphabetics"
msgstr "時å€ç¸®å¯«å¤ªå¤šå­—æ¯"
-#: timezone/zic.c:2550
+#: timezone/zic.c:2552
msgid "time zone abbreviation differs from POSIX standard"
msgstr "時å€ç¸®å¯«èˆ‡ POSIX 標準ä¸åŒ"
-#: timezone/zic.c:2562
+#: timezone/zic.c:2564
msgid "too many, or too long, time zone abbreviations"
msgstr "時å€ç¸®å¯«å¤ªå¤šæˆ–者太長"
-#: timezone/zic.c:2602
+#: timezone/zic.c:2604
#, c-format
msgid "%s: Can't create directory %s: %s\n"
msgstr "%s: 無法建立目錄 %s: %s\n"
-#: timezone/zic.c:2623
+#: timezone/zic.c:2625
#, c-format
msgid "%s: %d did not sign extend correctly\n"
msgstr "%s: %d 無法正確地延展訊號\n"
diff --git a/ports/ChangeLog b/ports/ChangeLog
index fcb58cc0a5..47294712fc 100644
--- a/ports/ChangeLog
+++ b/ports/ChangeLog
@@ -1,3 +1,8 @@
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * README: Change references to preconfigure.in to
+ preconfigure.ac.
+
2013-01-02 Joseph Myers <joseph@codesourcery.com>
* README: Update copyright dates in example.
diff --git a/ports/ChangeLog.aarch64 b/ports/ChangeLog.aarch64
index 537ae601e0..279a2272c1 100644
--- a/ports/ChangeLog.aarch64
+++ b/ports/ChangeLog.aarch64
@@ -1,3 +1,65 @@
+2013-12-18 Marcus Shawcroft <marcus.shawcroft@linaro.org>
+
+ [BZ #15128]
+ * sysdeps/aarch64/dl-trampoline.S (_dl_runtime_resolve): Save and
+ restore q0-q7.
+
+2013-12-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
+
+ * sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h
+ (FUTEX_WAIT_REQUEUE_PI): Define.
+ (FUTEX_CMP_REQUEUE_PI): Likewise.
+ (lll_futex_wait_requeue_pi): Likewise.
+ (lll_futex_timed_wait_requeue_pi): Likewise.
+ (lll_futex_cmp_requeue_pi): Likewise.
+
+2013-12-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
+
+ * sysdeps/aarch64/libm-test-ulps: Regenerated.
+
+2013-12-17 Marcus Shawcroft <marcus.shawcroft@linaro.org>
+
+ * sysdeps/aarch64/libm-test-ulps: Remove sqrt.
+
+2013-12-11 Marcus Shawcroft <marcus.shawcroft@linaro.org>
+
+ * sysdeps/aarch64/libm-test-ulps: Regenerate.
+
+2013-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/aarch64/fpu/fegetround.c (fegetround): Use
+ libm_hidden_def.
+
+2013-11-26 Will Newton <will.newton@linaro.org>
+
+ * sysdeps/aarch64/dl-irel.h: Include ldsodefs.h.
+ (ELF_MACHINE_IRELA): Define. (elf_ifunc_invoke): Pass
+ hwcap to ifunc resolver function. (elf_irela): New function.
+ * sysdeps/aarch64/dl-machine.h: Include dl-irel.h.
+ (elf_machine_rela) Handle STT_GNU_IFUNC symbols and
+ R_AARCH64_IRELATIVE relocations. (elf_machine_lazy_rel):
+ Handle R_AARCH64_IRELATIVE relocations.
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/aarch64/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/aarch64/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/aarch64/configure: Regenerated.
+
+2013-09-30 Andrew Pinski <andrew.pinski@caviumnetworks.com>
+
+ * sysdeps/unix/sysv/linux/aarch64/sysdep.h (SYSCALL_ERROR_HANDLER):
+ Fix store to errno to use 32bits.
+
+2013-09-24 Venkataramanan Kumar <venkataramanan.kumar@linaro.org>
+
+ * sysdeps/aarch64/machine-gmon.h (__mcount): Accept parameter and
+ pass it to mcount_internal.
+
+2013-09-24 Venkataramanan Kumar <venkataramanan.kumar@linaro.org>
+
+ * sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h: New file.
+
2013-07-26 Marcus Shawcroft <marcus.shawcroft@linaro.org>
* sysdeps/aarch64/Versions: New file.
diff --git a/ports/ChangeLog.alpha b/ports/ChangeLog.alpha
index e5c7bc1da8..24540e4dbd 100644
--- a/ports/ChangeLog.alpha
+++ b/ports/ChangeLog.alpha
@@ -1,3 +1,56 @@
+2013-12-07 Richard Henderson <rth@redhat.com>
+
+ * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Use <bits/mman-linux.h>,
+ dropping common values and overriding different values.
+
+2013-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/alpha/fpu/fegetround.c (fegetround): Use
+ libm_hidden_def.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+ * sysdeps/unix/sysv/linux/alpha/bits/ipc.h: Use __glibc_reserved instead __unused.
+ * sysdeps/unix/sysv/linux/alpha/bits/msq.h: Likewise.
+ * sysdeps/unix/sysv/linux/alpha/bits/sem.h: Likewise.
+ * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
+ * sysdeps/unix/sysv/linux/alpha/bits/stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/alpha/kernel_stat.h: Likewise.
+ * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Likewise.
+
+2013-11-16 Richard Henderson <rth@redhat.com>
+
+ * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Include a nop
+ before each signal thunk.
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/alpha/configure.in: Moved to ...
+ * sysdeps/alpha/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/alpha/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/alpha/configure.ac: ... here.
+ * sysdeps/alpha/configure: Regenerated.
+ * sysdeps/unix/sysv/linux/alpha/configure: Likewise.
+
+2013-10-12 Yuri Chornoivan <yurchor@ukr.net>
+
+ * sysdeps/unix/sysv/linux/alpha/nptl/pt-vfork.S: Fix typos.
+ * sysdeps/unix/sysv/linux/alpha/nptl/vfork.S: Likewise.
+
+2013-10-01 Richard Henderson <rth@redhat.com>
+
+ * sysdeps/unix/alpha/sysdep.h (PTR_MANGLE): Improve conditions under
+ which it is defined.
+
+2013-09-20 Andreas Schwab <schwab@linux-m68k.org>
+
+ * sysdeps/alpha/alphaev67/ffs.S (__ffs): Define as hidden.
+ * sysdeps/alpha/ffs.S (__ffs): Likewise.
+
+2013-09-11 Andreas Schwab <schwab@suse.de>
+
+ * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (__O_TMPFILE):
+ Define.
+
2013-08-30 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/alpha/alphaev67/stpncpy.S: Fix then/than typos.
diff --git a/ports/ChangeLog.am33 b/ports/ChangeLog.am33
index 79bcc0a106..317dd8efbe 100644
--- a/ports/ChangeLog.am33
+++ b/ports/ChangeLog.am33
@@ -1,3 +1,13 @@
+2013-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/am33/fpu/fegetround.c (fegetround): Use libm_hidden_def.
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/am33/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/am33/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/am33/configure: Regenerated.
+
2013-08-29 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/unix/sysv/linux/am33/bits/fcntl.h: Fix typos.
diff --git a/ports/ChangeLog.arm b/ports/ChangeLog.arm
index 8ef09b1161..4a4d319a1b 100644
--- a/ports/ChangeLog.arm
+++ b/ports/ChangeLog.arm
@@ -1,3 +1,87 @@
+2013-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/arm/fegetround.c (fegetround): Use libm_hidden_def.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+ * sysdeps/unix/sysv/linux/arm/bits/shm.h: Use __glibc_reserved instead __unused.
+
+2013-11-22 Roland McGrath <roland@hack.frob.com>
+
+ * sysdeps/arm/armv7/multiarch/memcpy_impl.S
+ [ARM_ALWAYS_BX] (dispatch_helper): Fix PC computation to properly
+ account for instructions after the reference to PC given that 'bx'
+ might actually be expanded to multiple instructions.
+ * sysdeps/arm/arm-features.h (ARM_BX_NINSNS): Macro removed.
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/arm/configure.in: Moved to ...
+ * sysdeps/arm/configure.ac: ... here.
+ * sysdeps/arm/preconfigure.in: Moved to ...
+ * sysdeps/arm/preconfigure.ac: ... here. Change reference to
+ configure.in to configure.ac.
+ * sysdeps/arm/preconfigure: Regenerated.
+ * sysdeps/arm/armv7/configure.in: Moved to ...
+ * sysdeps/arm/armv7/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/arm/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/arm/configure.ac: ... here. Change
+ reference to preconfigure.in to preconfigure.ac.
+ * sysdeps/unix/sysv/linux/arm/configure: Regenerated.
+ * sysdeps/unix/sysv/linux/arm/nptl/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/arm/nptl/configure.ac: ... here.
+ * sysdeps/arm/configure: Regenerated.
+ * sysdeps/sysdeps/arm/armv7/configure: Likewise.
+ * sysdeps/unix/sysv/linux/arm/nptl/configure: Likewise.
+
+2013-10-04 Will Newton <will.newton@linaro.org>
+
+ * sysdeps/arm/__longjmp.S (NO_THUMB): Remove define.
+ (__longjmp): Use Thumb supported instructions.
+ * sysdeps/unix/sysv/linux/arm/____longjmp_chk.S (NO_THUMB):
+ Remove define.
+
+ * sysdeps/arm/setjmp.S (NO_THUMB): Remove define.
+ (__sigsetjmp): Use Thumb supported instructions.
+
+2013-10-03 Will Newton <will.newton@linaro.org>
+
+ * sysdeps/arm/__longjmp.S (__longjmp): Demangle fp, sp
+ and lr when restoring register values.
+ * sysdeps/arm/include/bits/setjmp.h (JMP_BUF_REGLIST): Remove
+ sp and lr from list and replace fp with a4.
+ * sysdeps/arm/jmpbuf-unwind.h (_jmpbuf_sp): New function.
+ (_JMPBUF_UNWINDS_ADJ): Call _jmpbuf_sp.
+ * sysdeps/arm/setjmp.S (__sigsetjmp): Mangle fp, sp and lr
+ before storing register values.
+ * sysdeps/arm/sysdep.h (LDST_GLOBAL): New macro.
+ * sysdeps/unix/sysv/linux/arm/sysdep.h (PTR_MANGLE): New macro.
+ (PTR_DEMANGLE): Likewise. (PTR_MANGLE2): Likewise.
+ (PTR_DEMANGLE2): Likewise.
+
+2013-09-24 Will Newton <will.newton@linaro.org>
+
+ * ports/sysdeps/arm/nptl/tls.h (TLS_INIT_TP_EXPENSIVE): Remove
+ macro.
+
+2013-09-20 Andreas Schwab <schwab@linux-m68k.org>
+
+ * sysdeps/arm/armv6t2/ffs.S (__ffs): Define as hidden.
+
+2013-09-18 Dinar Temirbulatov <dtemirbulatov@gmail.com>
+
+ [BZ #15640]
+ * sysdeps/arm/bits/atomic.h (atomic_exchange_acq, atomic_exchange_rel)
+ (atomic_compare_and_exchange_bool_acq)
+ (atomic_compare_and_exchange_val_acq)
+ (atomic_compare_and_exchange_bool_rel)
+ (atomic_compare_and_exchange_val_rel): Use __atomic_exchange_n and
+ __atomic_compare_exchange_n builtins when GCC supports them.
+
+2013-09-16 Will Newton <will.newton@linaro.org>
+
+ * sysdeps/arm/armv7/multiarch/memcpy_impl.S: Tighten check
+ on entry to aligned copy loop to improve performance.
+
2013-08-30 Roland McGrath <roland@hack.frob.com>
* sysdeps/arm/armv6t2/strlen.S: Use sfi_pld and sfi_breg macros.
diff --git a/ports/ChangeLog.hppa b/ports/ChangeLog.hppa
index ea4ef886fd..98d36a3e14 100644
--- a/ports/ChangeLog.hppa
+++ b/ports/ChangeLog.hppa
@@ -1,3 +1,40 @@
+2013-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/hppa/fpu/fegetround.c (fegetround): Use libm_hidden_def.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+ * sysdeps/unix/sysv/linux/hppa/bits/ipc.h: Use __glibc_reserved instead __unused.
+ * sysdeps/unix/sysv/linux/hppa/bits/msq.h: Likewise.
+ * sysdeps/unix/sysv/linux/hppa/bits/sem.h: Likewise.
+ * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
+ * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
+
+2013-11-21 Guy Martin <gmsoft@tuxicoman.be>
+
+ * sysdeps/hppa/dl-lookupcfg.h: Remove obsolete
+ DL_DT_INIT_ADDRESS() and DL_DT_FINI_ADDRESS() macro and implement
+ DL_CALL_DT_INIT() as well as DL_CALL_DT_FINI().
+ Define DL_DT_FUNCTION_ADDRESS().
+ * sysdeps/hppa/dl-machine.h: Update ELF_MACHINE_START_ADDRESS()
+ to use DL_DT_FUNCTION_ADDRESS().
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/hppa/configure.in: Moved to ...
+ * sysdeps/hppa/configure.ac: ... here.
+ * sysdeps/hppa/configure: Regenerated.
+
+2013-09-11 Andreas Schwab <schwab@suse.de>
+
+ * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h (__O_TMPFILE): Define.
+
+2013-09-02 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/hppa/syscalls.list (fanotify_mark): New
+ entry.
+ * sysdeps/unix/sysv/linux/hppa/Versions (libc): Add GLIBC_2.19 and
+ fanotify_mark.
+
2013-08-30 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/unix/sysv/linux/hppa/clone.S: Fix typos.
diff --git a/ports/ChangeLog.ia64 b/ports/ChangeLog.ia64
index efe352e6bb..1aded589a5 100644
--- a/ports/ChangeLog.ia64
+++ b/ports/ChangeLog.ia64
@@ -1,3 +1,41 @@
+2013-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/ia64/fpu/fegetround.c (fegetround): Use libm_hidden_def.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+ * sysdeps/unix/sysv/linux/ia64/bits/ipc.h: Use __glibc_reserved instead __unused.
+ * sysdeps/unix/sysv/linux/ia64/bits/msq.h: Likewise.
+ * sysdeps/unix/sysv/linux/ia64/bits/sem.h: Likewise.
+ * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
+ * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
+
+2013-11-21 Guy Martin <gmsoft@tuxicoman.be>
+
+ * sysdeps/ia64/dl-lookupcfg.h: Remove obsolete
+ DL_DT_INIT_ADDRESS() and DL_DT_FINI_ADDRESS() macro and implement
+ DL_CALL_DT_INIT() as well as DL_CALL_DT_FINI().
+ Define DL_DT_FUNCTION_ADDRESS().
+ * sysdeps/ia64/dl-machine.h: Update ELF_MACHINE_START_ADDRESS()
+ to use DL_DT_FUNCTION_ADDRESS().
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/ia64/configure.in: Moved to ...
+ * sysdeps/ia64/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/ia64/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/ia64/configure.ac: ... here.
+ * sysdeps/ia64/configure: Regenerated.
+ * sysdeps/unix/sysv/linux/ia64/configure: Likewise.
+
+2013-10-04 Alan Modra <amodra@gmail.com>
+
+ * sysdeps/ia64/fpu/printf_fphex.c: Adjust for fpnum change.
+
+2013-09-22 Carlos O'Donell <carlos@redhat.com>
+
+ [BZ #15754]
+ * sysdeps/ia64/stackguard-macros.h: Define POINTER_CHK_GUARD.
+
2013-08-30 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/ia64/fpu/libm_reduce.S: Fix typos.
diff --git a/ports/ChangeLog.linux-generic b/ports/ChangeLog.linux-generic
index 2e04b65b25..c8acddc88b 100644
--- a/ports/ChangeLog.linux-generic
+++ b/ports/ChangeLog.linux-generic
@@ -1,3 +1,12 @@
+2013-11-13 Chung-Lin Tang <cltang@codesourcery.com>
+
+ * sysdeps/unix/sysv/linux/generic/bits/stat.h (__field64): Use
+ __alignof__(type64) in alignment attribute instead of 8.
+ * sysdeps/unix/sysv/linux/generic/bits/statfs.h (__field64): Use
+ __alignof__(type64) in alignment attribute instead of 8.
+ (struct statfs): Remove alignment attribute.
+ (struct statfs64): Likewise.
+
2013-06-05 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/generic/wordsize-32/syscalls.list:
diff --git a/ports/ChangeLog.m68k b/ports/ChangeLog.m68k
index 8681b1e14a..d3e90b2391 100644
--- a/ports/ChangeLog.m68k
+++ b/ports/ChangeLog.m68k
@@ -1,3 +1,44 @@
+2013-12-10 Andreas Schwab <schwab@linux-m68k.org>
+
+ * sysdeps/m68k/m680x0/fpu/s_nextafterl.c (__nextafterl): Use
+ math_force_eval.
+
+ * sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h
+ (FUTEX_WAIT_REQEUE_PI, FUTEX_CMP_REQEUE_PI)
+ (lll_futex_wait_requeue_pi, lll_futex_timed_wait_requeue_pi)
+ (lll_futex_cmp_requeue_pi): Define.
+
+ * sysdeps/unix/sysv/linux/m68k/kernel-features.h
+ (__ASSUME_REQUEUE_PI, __ASSUME_SET_ROBUST_LIST): Undefine before
+ 3.10.
+
+2013-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/m68k/fpu/fegetround.c (fegetround): Use libm_hidden_def.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+
+ * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Use __glibc_reserved
+ instead of __unused.
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/m68k/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/m68k/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/m68k/configure: Regenerated.
+
+2013-10-08 Andreas Schwab <schwab@suse.de>
+
+ * sysdeps/m68k/start.S [SHARED]: Use PIC.
+
+2013-09-20 Andreas Schwab <schwab@linux-m68k.org>
+
+ * sysdeps/m68k/ffs.c (__ffs): Define as hidden.
+
+2013-09-04 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/unix/sysv/linux/m68k/mmap64.c: New file.
+
2013-08-21 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/m68k/m680x0/fpu/fraiseexcpt.c: Fix typos.
diff --git a/ports/ChangeLog.microblaze b/ports/ChangeLog.microblaze
index 92faa04440..7d47e0468a 100644
--- a/ports/ChangeLog.microblaze
+++ b/ports/ChangeLog.microblaze
@@ -1,3 +1,18 @@
+2013-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/microblaze/fegetround.c (fegetround): Use
+ libm_hidden_def.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+ * sysdeps/unix/sysv/linux/microblaze/bits/stat.h: Use __glibc_reserved instead __unused.
+ * sysdeps/unix/sysv/linux/microblaze/kernel_stat.h: Likewise.
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/microblaze/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/microblaze/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/microblaze/configure: Regenerated.
+
2013-06-15 Siddhesh Poyarekar <siddhesh@redhat.com>
* sysdeps/unix/sysv/linux/microblaze/nptl/libpthread.abilist:
diff --git a/ports/ChangeLog.mips b/ports/ChangeLog.mips
index 5844bf5897..687b21f120 100644
--- a/ports/ChangeLog.mips
+++ b/ports/ChangeLog.mips
@@ -1,3 +1,176 @@
+2013-12-03 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/mips/dl-lookup.c: Update from generic version.
+
+2013-11-28 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/mips/fpu/fegetround.c (fegetround): Use libm_hidden_def.
+
+2013-11-27 Aurelien Jarno <aurelien@aurel32.net>
+
+ * sysdeps/unix/sysv/linux/mips/bits/resource.h (RLIM64_INFINITY): Fix
+ Fix 64-bit value for 32-bit ABIs.
+ * sysdeps/unix/sysv/linux/mips/getrlimit64.c: Rename generic getrlimit64
+ version as getrlimit64@@GLIBC_2_2. Provide the getrlimit64 as
+ getrlimit64@@GLIBC_2_19.
+ * sysdeps/unix/sysv/linux/mips/setrlimit64.c: Ditto with setrlimit64.
+ * sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist (GLIBC_2.19):
+ Add getrlimit64 and setrlimit64.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist: Ditto.
+ * sysdeps/unix/sysv/linux/mips/mips32/Versions (libc): Add
+ getrlimit64@@GLIBC_2_19 and setrlimit64@@GLIBC_2_19.
+ * sysdeps/unix/sysv/linux/mips/mips64/n32/Versions: Ditto.
+
+2013-11-27 Aurelien Jarno <aurelien@aurel32.net>
+
+ * sysdeps/unix/sysv/linux/mips/getrlimit64.c: On O32 and N32 ABIs,
+ include the generic getrlimit64 version as __internal_getrlimit64
+ and add a wrapper around it to convert the RLIM64_INFINITY constant
+ between the libc and the kernel version.
+ * sysdeps/unix/sysv/linux/mips/setrlimit64.c: Ditto with setrlimit64.
+
+2013-11-26 Ondřej Bílka <neleai@seznam.cz>
+ * sysdeps/unix/sysv/linux/mips/bits/ipc.h: Use __glibc_reserved instead __unused.
+ * sysdeps/unix/sysv/linux/mips/bits/msq.h: Likewise.
+ * sysdeps/unix/sysv/linux/mips/bits/sem.h: Likewise.
+ * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
+
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/mips/configure.in: Moved to ...
+ * sysdeps/mips/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/mips/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/mips/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/mips/mips64/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/mips/mips64/configure.ac: ... here.
+ * sysdeps/mips/configure: Regenerated.
+ * sysdeps/unix/sysv/linux/mips/configure: Likewise.
+ * sysdeps/unix/sysv/linux/mips/mips64/configure: Likewise.
+
+2013-09-26 Steve Ellcey <sellcey@mips.com>
+
+ [BZ #15632]
+ * sysdeps/mips/mips32/fpu/e_sqrt.c: New.
+ * sysdeps/mips/mips32/fpu/e_sqrtf.c: New.
+ * sysdeps/mips/mips64/n32/fpu/e_sqrt.c: New.
+ * sysdeps/mips/mips64/n32/fpu/e_sqrtf.c: New.
+ * sysdeps/mips/mips64/n64/fpu/e_sqrt.c: New.
+ * sysdeps/mips/mips64/n64/fpu/e_sqrtf.c: New.
+
+2013-09-23 Steve Ellcey <sellcey@mips.com>
+
+ * sysdeps/mips/math_private.h (libc_feholdexcept_mips): New function.
+ (libc_feholdexcept): New macro.
+ (libc_feholdexceptf): New macro.
+ (libc_feholdexceptl): New macro.
+ (libc_fesetround_mips): New function.
+ (libc_fesetround): New macro.
+ (libc_fesetroundf): New macro.
+ (libc_fesetroundl): New macro.
+ (libc_feholdexcept_setround_mips): New function.
+ (libc_feholdexcept_setround): New macro.
+ (libc_feholdexcept_setroundf): New macro.
+ (libc_feholdexcept_setroundl): New macro.
+ (libc_fesetenv_mips): New function.
+ (libc_fesetenv): New macro.
+ (libc_fesetenvf): New macro.
+ (libc_fesetenvl): New macro.
+ (libc_feupdateenv_mips): New function.
+ (libc_feupdateenv): New macro.
+ (libc_feupdateenvf): New macro.
+ (libc_feupdateenvl): New macro.
+
+2013-09-23 Maciej W. Rozycki <macro@codesourcery.com>
+
+ * sysdeps/mips/bits/atomic.h: Fix comment typo.
+
+2013-09-23 Steve Ellcey <sellcey@mips.com>
+
+ * sysdeps/mips/fpu/fegetround.c (fegetround): Use _FPU_RC_MASK.
+ * sysdeps/mips/fpu/fesetround.c (fesetround): Use _FPU_RC_MASK.
+
+2013-09-23 Steve Ellcey <sellcey@mips.com>
+
+ * sysdeps/mips/fpu_control.h (_FPU_RC_MASK): New.
+
+2013-09-23 Steve Ellcey <sellcey@mips.com>
+
+ * sysdeps/mips/fpu_control.h (comments): Add capitalization and
+ periods to match GNU standard.
+
+2013-09-20 Steve Ellcey <sellcey@mips.com>
+
+ * sysdeps/mips/memset.S: Change prefetching and add loop unrolling.
+ * sysdeps/mips/mips64/memset.S: Remove.
+
+2013-09-18 Maciej W. Rozycki <macro@codesourcery.com>
+ Thomas Schwinge <thomas@codesourcery.com>
+
+ * sysdeps/mips/dl-machine.h (ELF_MACHINE_NAN2008): New macro.
+ (elf_machine_matches_host): Reject objects that use a different
+ NaN encoding convention.
+ * sysdeps/mips/fpu_control.h: Document IEEE 754-2008 feature
+ control bits.
+ (_FPU_ABS2008, _FPU_NAN2008): New macros.
+ (_FPU_RESERVED): Clear bits #20 and #19.
+ (_FPU_DEFAULT) [__mips_nan2008]: Set bit #18.
+ (_FPU_IEEE) [__mips_nan2008]: Likewise.
+ * sysdeps/mips/math_private.h [__mips_nan2008]
+ (HIGH_ORDER_BIT_IS_SET_FOR_SNAN): Don't define.
+ * sysdeps/mips/bits/nan.h [__mips_nan2008] (__qnan_bytes): Define
+ appropriately.
+ * sysdeps/mips/mips64/soft-fp/sfp-machine.h [__mips_nan2008]
+ (_FP_NANFRAC_S, _FP_NANFRAC_D, _FP_NANFRAC_Q): Define 2008-NaN
+ payloads.
+ (_FP_QNANNEGATEDP): Set to 0.
+ * sysdeps/mips/soft-fp/sfp-machine.h [__mips_nan2008]
+ (_FP_NANFRAC_S, _FP_NANFRAC_D, _FP_NANFRAC_Q): Define 2008-NaN
+ payloads.
+ (_FP_QNANNEGATEDP): Set to 0.
+ * sysdeps/unix/sysv/linux/mips/dl-cache.h (_DL_CACHE_DEFAULT_ID):
+ Define 2008 NaN encoding values.
+ * sysdeps/unix/sysv/linux/mips/readelflib.c (process_elf_file):
+ Handle 2008-NaN libraries.
+ * sysdeps/mips/shlib-versions [HAVE_MIPS_NAN2008]: Set
+ ld=ld-linux-mipsn8.so.1.
+ * sysdeps/mips/configure.in: Define HAVE_MIPS_NAN2008 if the
+ 2008 NaN encoding is used.
+ * sysdeps/unix/sysv/linux/mips/Makefile (abi-variants): Add
+ 2008-NaN ABI variants.
+ (abi-o32_soft-options, abi-o32_soft-condition): Update with the
+ __mips_nan2008 macro.
+ (abi-o32_hard-options, abi-o32_hard-condition): Likewise.
+ (abi-n32_soft-options, abi-n32_soft-condition): Likewise.
+ (abi-n32_hard-options, abi-n32_hard-condition): Likewise.
+ (abi-n64_soft-options, abi-n64_soft-condition): Likewise.
+ (abi-n64_hard-options, abi-n64_hard-condition): Likewise.
+ (abi-o32_soft-ld-soname, abi-o32_hard-ld-soname): New macros.
+ (abi-n32_soft-ld-soname, abi-n32_hard-ld-soname): Likewise.
+ (abi-n64_soft-ld-soname, abi-n64_hard-ld-soname): Likewise.
+ (abi-o32_soft_2008-options): Likewise.
+ (abi-o32_soft_2008-condition): Likewise.
+ (abi-o32_hard_2008-options): Likewise.
+ (abi-o32_hard_2008-condition): Likewise.
+ (abi-n32_soft_2008-options): Likewise.
+ (abi-n32_soft_2008-condition): Likewise.
+ (abi-n32_hard_2008-options): Likewise.
+ (abi-n32_hard_2008-condition): Likewise.
+ (abi-n64_soft_2008-options): Likewise.
+ (abi-n64_soft_2008-condition): Likewise.
+ (abi-n64_hard_2008-options): Likewise.
+ (abi-n64_hard_2008-condition): Likewise.
+ (abi-o32_soft_2008-ld-soname): Likewise.
+ (abi-o32_hard_2008-ld-soname): Likewise.
+ (abi-n32_soft_2008-ld-soname): Likewise.
+ (abi-n32_hard_2008-ld-soname): Likewise.
+ (abi-n64_soft_2008-ld-soname): Likewise.
+ (abi-n64_hard_2008-ld-soname): Likewise.
+ * sysdeps/unix/sysv/linux/mips/configure.in: Include the NaN
+ encoding selection in default-abi. Set arch_minimum_kernel to
+ 10.0.0 if 2008 NaN encoding is used.
+ * sysdeps/mips/configure: Regenerate.
+ * sysdeps/unix/sysv/linux/mips/configure: Regenerate.
+
2013-08-30 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/mips/memcpy.S: Fix then/than typos.
diff --git a/ports/ChangeLog.powerpc b/ports/ChangeLog.powerpc
index 375e9566ea..9f04afae19 100644
--- a/ports/ChangeLog.powerpc
+++ b/ports/ChangeLog.powerpc
@@ -1,3 +1,45 @@
+This file describes changes to the soft-float powerpc port while it
+was in the ports add-on directory. This port is no longer part of an
+add-on and so future changes to it should be listed in the top-level
+ChangeLog file, not here.
+
+
+
+2013-10-04 Joseph Myers <joseph@codesourcery.com>
+
+ * sysdeps/powerpc/powerpc32/Makefile: Remove file.
+ * sysdeps/powerpc/nofpu: Move directory to
+ ../sysdeps/powerpc/nofpu.
+ * sysdeps/powerpc/soft-fp: Move directory to
+ ../sysdeps/powerpc/soft-fp.
+ * sysdeps/powerpc/powerpc32/405: Move directory to
+ ../sysdeps/powerpc/powerpc32/405.
+ * sysdeps/powerpc/powerpc32/440: Move directory to
+ ../sysdeps/powerpc/powerpc32/440.
+ * sysdeps/powerpc/powerpc32/464: Move directory to
+ ../sysdeps/powerpc/powerpc32/464.
+ * sysdeps/powerpc/powerpc32/476: Move directory to
+ ../sysdeps/powerpc/powerpc32/476.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu: Move directory
+ to ../sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/405: Move directory to
+ ../sysdeps/unix/sysv/linux/powerpc/powerpc32/405.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/440: Move directory to
+ ../sysdeps/unix/sysv/linux/powerpc/powerpc32/440.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/464: Move directory to
+ ../sysdeps/unix/sysv/linux/powerpc/powerpc32/464.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/476: Move directory to
+ ../sysdeps/unix/sysv/linux/powerpc/powerpc32/476.
+
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/context-e500.h:
+ New file.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S:
+ Include <context-e500.h>.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S:
+ Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S:
+ Likewise.
+
2013-08-30 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/powerpc/powerpc32/405/memcpy.S: Fix typos.
diff --git a/ports/ChangeLog.tile b/ports/ChangeLog.tile
index 5ad254c5ff..a0ec89cac3 100644
--- a/ports/ChangeLog.tile
+++ b/ports/ChangeLog.tile
@@ -1,3 +1,21 @@
+2013-10-30 Mike Frysinger <vapier@gentoo.org>
+
+ * sysdeps/unix/sysv/linux/tile/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/tile/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/tile/tilegx/configure.in: Moved to ...
+ * sysdeps/unix/sysv/linux/tile/tilegx/configure.ac: ... here.
+ * sysdeps/unix/sysv/linux/tile/configure: Regenerated.
+ * sysdeps/unix/sysv/linux/tile/tilegx/configure: Likewise.
+
+2013-09-22 Carlos O'Donell <carlos@redhat.com>
+
+ [BZ #15754]
+ * sysdeps/tile/stackguard-macros.h: Define POINTER_CHK_GUARD.
+
+2013-09-20 Andreas Schwab <schwab@linux-m68k.org>
+
+ * sysdeps/tile/ffs.c (__ffs): Define as hidden.
+
2013-08-21 Ondřej Bílka <neleai@seznam.cz>
* sysdeps/tile/jmpbuf-offsets.h: Fix typos.
diff --git a/ports/README b/ports/README
index d16b0f0f51..2c73b1e803 100644
--- a/ports/README
+++ b/ports/README
@@ -24,7 +24,7 @@ rather than the generic ones here.
The real source code for any ports is found in the sysdeps/ subdirectories.
These should be exactly what would go into the main libc source tree if you
were to incorporate it directly. The only exceptions are the files
-sysdeps/*/preconfigure and sysdeps/*/preconfigure.in; these are fragments
+sysdeps/*/preconfigure and sysdeps/*/preconfigure.ac; these are fragments
used by this add-on's configure fragment. The purpose of these is to set
$base_machine et al when the main libc configure's defaults are not right
for some machine. Everything else can and should be done from a normal
@@ -32,7 +32,7 @@ sysdeps/.../configure fragment that is used only when the configuration
selects that sysdeps subdirectory. Each port that requires some special
treatment before the sysdeps directory list is calculated, should add a
sysdeps/CPU/preconfigure file; this can either be written by hand or
-generated by Autoconf from sysdeps/CPU/preconfigure.in, and follow the
+generated by Autoconf from sysdeps/CPU/preconfigure.ac, and follow the
rules for glibc add-on configure fragments. No preconfigure file should do
anything on an unrelated configuration, so that disparate ports can be put
into a single add-on without interfering with each other.
diff --git a/ports/sysdeps/aarch64/dl-irel.h b/ports/sysdeps/aarch64/dl-irel.h
index 1a3811e7bb..f37ee399c8 100644
--- a/ports/sysdeps/aarch64/dl-irel.h
+++ b/ports/sysdeps/aarch64/dl-irel.h
@@ -22,15 +22,31 @@
#include <stdio.h>
#include <unistd.h>
+#include <ldsodefs.h>
-/* AArch64 does not yet implement IFUNC support. However since
- 2011-06-20 provision of a elf_ifunc_invoke has been mandatory. */
+#define ELF_MACHINE_IRELA 1
static inline ElfW(Addr)
__attribute ((always_inline))
elf_ifunc_invoke (ElfW(Addr) addr)
{
- return ((ElfW(Addr) (*) (void)) (addr)) ();
+ return ((ElfW(Addr) (*) (unsigned long int)) (addr)) (GLRO(dl_hwcap));
+}
+
+static inline void
+__attribute ((always_inline))
+elf_irela (const ElfW(Rela) *reloc)
+{
+ ElfW(Addr) *const reloc_addr = (void *) reloc->r_offset;
+ const unsigned long int r_type = ELFW(R_TYPE) (reloc->r_info);
+
+ if (__glibc_likely (r_type == R_AARCH64_IRELATIVE))
+ {
+ ElfW(Addr) value = elf_ifunc_invoke (reloc->r_addend);
+ *reloc_addr = value;
+ }
+ else
+ __libc_fatal ("unexpected reloc type in static binary");
}
#endif
diff --git a/ports/sysdeps/aarch64/dl-machine.h b/ports/sysdeps/aarch64/dl-machine.h
index 71dd6b3894..01a214fb6b 100644
--- a/ports/sysdeps/aarch64/dl-machine.h
+++ b/ports/sysdeps/aarch64/dl-machine.h
@@ -23,6 +23,7 @@
#include <tls.h>
#include <dl-tlsdesc.h>
+#include <dl-irel.h>
/* Return nonzero iff ELF header is compatible with the running host. */
static inline int __attribute__ ((unused))
@@ -243,6 +244,12 @@ elf_machine_rela (struct link_map *map, const ElfW(Rela) *reloc,
struct link_map *sym_map = RESOLVE_MAP (&sym, version, r_type);
ElfW(Addr) value = sym_map == NULL ? 0 : sym_map->l_addr + sym->st_value;
+ if (sym != NULL
+ && __glibc_unlikely (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC)
+ && __glibc_likely (sym->st_shndx != SHN_UNDEF)
+ && __glibc_likely (!skip_ifunc))
+ value = elf_ifunc_invoke (value);
+
switch (r_type)
{
case R_AARCH64_COPY:
@@ -331,6 +338,12 @@ elf_machine_rela (struct link_map *map, const ElfW(Rela) *reloc,
}
break;
+ case R_AARCH64_IRELATIVE:
+ value = map->l_addr + reloc->r_addend;
+ value = elf_ifunc_invoke (value);
+ *reloc_addr = value;
+ break;
+
default:
_dl_reloc_bad_type (map, r_type, 0);
break;
@@ -374,6 +387,13 @@ elf_machine_lazy_rel (struct link_map *map,
td->entry = (void*)(D_PTR (map, l_info[ADDRIDX (DT_TLSDESC_PLT)])
+ map->l_addr);
}
+ else if (__glibc_unlikely (r_type == R_AARCH64_IRELATIVE))
+ {
+ ElfW(Addr) value = map->l_addr + reloc->r_addend;
+ if (__glibc_likely (!skip_ifunc))
+ value = elf_ifunc_invoke (value);
+ *reloc_addr = value;
+ }
else
_dl_reloc_bad_type (map, r_type, 1);
}
diff --git a/ports/sysdeps/aarch64/dl-trampoline.S b/ports/sysdeps/aarch64/dl-trampoline.S
index 94c69a0e2d..923ca76afc 100644
--- a/ports/sysdeps/aarch64/dl-trampoline.S
+++ b/ports/sysdeps/aarch64/dl-trampoline.S
@@ -41,7 +41,7 @@ _dl_runtime_resolve:
cfi_rel_offset (lr, 8)
/* Save arguments. */
- stp x8, x9, [sp, #-80]!
+ stp x8, x9, [sp, #-(80+8*16)]!
cfi_adjust_cfa_offset (80)
cfi_rel_offset (x8, 0)
cfi_rel_offset (x9, 8)
@@ -62,11 +62,27 @@ _dl_runtime_resolve:
cfi_rel_offset (x0, 64)
cfi_rel_offset (x1, 72)
+ stp q0, q1, [sp, #(80+0*16)]
+ cfi_rel_offset (q0, 80+0*16)
+ cfi_rel_offset (q1, 80+1*16)
+
+ stp q2, q3, [sp, #(80+2*16)]
+ cfi_rel_offset (q0, 80+2*16)
+ cfi_rel_offset (q1, 80+3*16)
+
+ stp q4, q5, [sp, #(80+4*16)]
+ cfi_rel_offset (q0, 80+4*16)
+ cfi_rel_offset (q1, 80+5*16)
+
+ stp q6, q7, [sp, #(80+6*16)]
+ cfi_rel_offset (q0, 80+6*16)
+ cfi_rel_offset (q1, 80+7*16)
+
/* Get pointer to linker struct. */
ldr x0, [ip0, #-8]
/* Prepare to call _dl_fixup(). */
- ldr x1, [sp, 80] /* Recover &PLTGOT[n] */
+ ldr x1, [sp, 80+8*16] /* Recover &PLTGOT[n] */
sub x1, x1, ip0
add x1, x1, x1, lsl #1
@@ -81,12 +97,16 @@ _dl_runtime_resolve:
mov ip0, x0
/* Get arguments and return address back. */
+ ldp q0, q1, [sp, #(80+0*16)]
+ ldp q2, q3, [sp, #(80+2*16)]
+ ldp q4, q5, [sp, #(80+4*16)]
+ ldp q6, q7, [sp, #(80+6*16)]
ldp x0, x1, [sp, #64]
ldp x2, x3, [sp, #48]
ldp x4, x5, [sp, #32]
ldp x6, x7, [sp, #16]
- ldp x8, x9, [sp], #80
- cfi_adjust_cfa_offset (-80)
+ ldp x8, x9, [sp], #(80+8*16)
+ cfi_adjust_cfa_offset (-(80+8*16))
ldp ip1, lr, [sp], #16
cfi_adjust_cfa_offset (-16)
diff --git a/ports/sysdeps/aarch64/fpu/fegetround.c b/ports/sysdeps/aarch64/fpu/fegetround.c
index 3b5b3068b2..370caa16d3 100644
--- a/ports/sysdeps/aarch64/fpu/fegetround.c
+++ b/ports/sysdeps/aarch64/fpu/fegetround.c
@@ -26,3 +26,4 @@ fegetround (void)
_FPU_GETCW (fpcr);
return fpcr & FE_TOWARDZERO;
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/aarch64/libm-test-ulps b/ports/sysdeps/aarch64/libm-test-ulps
index 79afb310da..56d907fc27 100644
--- a/ports/sysdeps/aarch64/libm-test-ulps
+++ b/ports/sysdeps/aarch64/libm-test-ulps
@@ -1,97 +1,159 @@
# Begin of automatic generation
# acos_downward
-Test "acos_downward (-0)":
+Test "acos_downward (-0x8p-4)":
float: 1
ifloat: 1
-Test "acos_downward (-0.5)":
-double: 1
-idouble: 1
-Test "acos_downward (-1)":
-float: 1
-ifloat: 1
-Test "acos_downward (0)":
-float: 1
-ifloat: 1
-Test "acos_downward (0.5)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
ildouble: 1
ldouble: 1
# acos_towardzero
-Test "acos_towardzero (-0)":
+Test "acos_towardzero (-0x8p-4)":
float: 1
ifloat: 1
-Test "acos_towardzero (-0.5)":
+ildouble: 1
+ldouble: 1
+
+# acos_upward
+Test "acos_upward (+0)":
double: 1
idouble: 1
-Test "acos_towardzero (-1)":
-float: 1
-ifloat: 1
-Test "acos_towardzero (0)":
-float: 1
-ifloat: 1
-Test "acos_towardzero (0.5)":
+Test "acos_upward (-0)":
double: 1
-float: 1
idouble: 1
-ifloat: 1
+Test "acos_upward (-0x1p+0)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1.70ef54646d496p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1.70ef54646d497p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1.70ef54p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1.70ef56p-56)":
+double: 1
+idouble: 1
+
+# asin
+Test "asin (-0xf.ffffffffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin (-0xf.fffffffffffffffp-4)":
ildouble: 1
ldouble: 1
-# acos_upward
-Test "acos_upward (-0)":
+# asin_downward
+Test "asin_downward (-0x1p+0)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "acos_upward (-1)":
+Test "asin_downward (-0x8p-4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "acos_upward (0)":
+Test "asin_downward (-0xf.fffffff8p-4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-
-# asin_downward
-Test "asin_downward (-0.5)":
+Test "asin_downward (-0xf.ffffffffffff8p-4)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "asin_downward (-1.0)":
+Test "asin_downward (-0xf.fffffffffffffffp-4)":
ildouble: 1
ldouble: 1
-Test "asin_downward (0.5)":
+Test "asin_downward (-0xf.fffffffffffp-4)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "asin_downward (1.0)":
+Test "asin_downward (-0xf.fffffp-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+Test "asin_downward (0x8p-4)":
+float: 1
+ifloat: 1
+Test "asin_downward (0xcp-4)":
+ildouble: 1
+ldouble: 1
+
+# asin_tonearest
+Test "asin_tonearest (-0xf.ffffffffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_tonearest (-0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
# asin_towardzero
-Test "asin_towardzero (-0.5)":
-double: 1
-idouble: 1
-Test "asin_towardzero (-1.0)":
+Test "asin_towardzero (-0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "asin_towardzero (-0x8p-4)":
float: 1
ifloat: 1
-Test "asin_towardzero (0.5)":
-double: 1
-idouble: 1
-Test "asin_towardzero (1.0)":
+ildouble: 1
+ldouble: 1
+Test "asin_towardzero (-0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_towardzero (0x8p-4)":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "asin_towardzero (0xcp-4)":
+ildouble: 1
+ldouble: 1
# asin_upward
-Test "asin_upward (-1.0)":
+Test "asin_upward (-0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0x8p-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-Test "asin_upward (1.0)":
ildouble: 1
ldouble: 1
+Test "asin_upward (-0xf.fffffff8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.ffffffffffff8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.fffffffffffp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.fffffp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "asin_upward (0x1p+0)":
+double: 1
+idouble: 1
# atan2
Test "atan2 (-0.00756827042671106339, -.001792735857538728036)":
@@ -117,32 +179,28 @@ ildouble: 1
ldouble: 1
# atanh
-Test "atanh (0.75)":
+Test "atanh (0xcp-4)":
float: 1
ifloat: 1
# cacos
Test "Imaginary part of: cacos (+0 + 0.5 i)":
-double: 2
float: 1
-idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: cacos (+0 + 1.0 i)":
-double: 2
+double: 1
float: 1
-idouble: 2
+idouble: 1
ifloat: 1
-ildouble: 3
-ldouble: 3
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (+0 + 1.5 i)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 2
-ldouble: 2
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (+0 - 0.5 i)":
float: 1
ifloat: 1
@@ -161,26 +219,22 @@ idouble: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: cacos (-0 + 0.5 i)":
-double: 2
float: 1
-idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: cacos (-0 + 1.0 i)":
-double: 2
+double: 1
float: 1
-idouble: 2
+idouble: 1
ifloat: 1
-ildouble: 3
-ldouble: 3
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (-0 + 1.5 i)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 2
-ldouble: 2
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: cacos (-0 - 0.5 i)":
float: 1
ifloat: 1
@@ -860,13 +914,6 @@ ldouble: 1
Test "Imaginary part of: cacos (-1.0 - 0x1p5000 i)":
ildouble: 1
ldouble: 1
-Test "Imaginary part of: cacos (-1.5 + +0 i)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
Test "Real part of: cacos (-2 - 3 i)":
float: 1
ifloat: 1
@@ -915,8 +962,6 @@ ldouble: 1
Test "Real part of: cacos (0.5 + +0 i)":
double: 1
idouble: 1
-ildouble: 1
-ldouble: 1
Test "Real part of: cacos (0.5 + 0x1.fp-1025 i)":
double: 1
idouble: 1
@@ -967,8 +1012,6 @@ ldouble: 1
Test "Real part of: cacos (0.5 - 0 i)":
double: 1
idouble: 1
-ildouble: 1
-ldouble: 1
Test "Real part of: cacos (0.5 - 0x1.fp-1025 i)":
double: 1
idouble: 1
@@ -1016,9 +1059,6 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "Imaginary part of: cacos (0.75 + 1.25 i)":
-ildouble: 1
-ldouble: 1
Test "Real part of: cacos (0x0.fffffffffffff8p0 + 0.0 i)":
double: 1
idouble: 1
@@ -1530,13 +1570,6 @@ ldouble: 1
Test "Imaginary part of: cacos (1.0 - 0x1p5000 i)":
ildouble: 1
ldouble: 1
-Test "Imaginary part of: cacos (1.5 + +0 i)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
# cacosh
Test "Real part of: cacosh (+0 + 0.5 i)":
@@ -1658,8 +1691,6 @@ float: 1
idouble: 1
ifloat: 1
Test "Imaginary part of: cacosh (-0.5 + +0 i)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: cacosh (-0.5 + 0x1.fp-1025 i)":
@@ -1715,8 +1746,6 @@ Test "Imaginary part of: cacosh (-0.5 + 1.0 i)":
float: 1
ifloat: 1
Test "Imaginary part of: cacosh (-0.5 - 0 i)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: cacosh (-0.5 - 0x1.fp-1025 i)":
@@ -2273,12 +2302,6 @@ ldouble: 1
Test "Real part of: cacosh (-1.0 - 0x1p5000 i)":
ildouble: 1
ldouble: 1
-Test "Real part of: cacosh (-1.5 + +0 i)":
-float: 1
-ifloat: 1
-Test "Real part of: cacosh (-1.5 - 0 i)":
-float: 1
-ifloat: 1
Test "Imaginary part of: cacosh (-2 - 3 i)":
float: 1
ifloat: 1
@@ -2935,35 +2958,25 @@ ldouble: 1
Test "Real part of: cacosh (1.0 - 0x1p5000 i)":
ildouble: 1
ldouble: 1
-Test "Real part of: cacosh (1.5 + +0 i)":
-float: 1
-ifloat: 1
-Test "Real part of: cacosh (1.5 - 0 i)":
-float: 1
-ifloat: 1
# casin
Test "Imaginary part of: casin (+0 + 0.5 i)":
-double: 2
float: 1
-idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: casin (+0 + 1.0 i)":
-double: 2
+double: 1
float: 1
-idouble: 2
+idouble: 1
ifloat: 1
-ildouble: 3
-ldouble: 3
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (+0 + 1.5 i)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 2
-ldouble: 2
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (+0 - 0.5 i)":
float: 1
ifloat: 1
@@ -2982,26 +2995,22 @@ idouble: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: casin (-0 + 0.5 i)":
-double: 2
float: 1
-idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: casin (-0 + 1.0 i)":
-double: 2
+double: 1
float: 1
-idouble: 2
+idouble: 1
ifloat: 1
-ildouble: 3
-ldouble: 3
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0 + 1.5 i)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 2
-ldouble: 2
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: casin (-0 - 0.5 i)":
float: 1
ifloat: 1
@@ -3593,13 +3602,6 @@ ldouble: 1
Test "Imaginary part of: casin (-1.0 - 0x1p5000 i)":
ildouble: 1
ldouble: 1
-Test "Imaginary part of: casin (-1.5 + +0 i)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
Test "Imaginary part of: casin (0.0 + 0x0.ffffffffffffffffffffffffffcp0 i)":
ildouble: 1
ldouble: 1
@@ -3721,9 +3723,6 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-Test "Imaginary part of: casin (0.75 + 1.25 i)":
-ildouble: 1
-ldouble: 1
Test "Real part of: casin (0x0.fffffffffffff8p0 + 0.0 i)":
ildouble: 1
ldouble: 1
@@ -4191,29 +4190,8 @@ ldouble: 1
Test "Imaginary part of: casin (1.0 - 0x1p5000 i)":
ildouble: 1
ldouble: 1
-Test "Imaginary part of: casin (1.5 + +0 i)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
# casinh
-Test "Real part of: casinh (-0 + 1.5 i)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "Real part of: casinh (-0 - 1.5 i)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
Test "Imaginary part of: casinh (-0.0 + 0x0.fffffffffffff8p0 i)":
ildouble: 1
ldouble: 1
@@ -4239,9 +4217,7 @@ Test "Imaginary part of: casinh (-0.25 - 1.0 i)":
ildouble: 1
ldouble: 1
Test "Real part of: casinh (-0.5 + +0 i)":
-double: 2
float: 1
-idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
@@ -4290,9 +4266,7 @@ Test "Imaginary part of: casinh (-0.5 + 1.0 i)":
float: 1
ifloat: 1
Test "Real part of: casinh (-0.5 - 0 i)":
-double: 2
float: 1
-idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
@@ -4639,12 +4613,12 @@ Test "Real part of: casinh (-0x1p5000 - 1.0 i)":
ildouble: 1
ldouble: 1
Test "Real part of: casinh (-1.0 + +0 i)":
-double: 2
+double: 1
float: 1
-idouble: 2
+idouble: 1
ifloat: 1
-ildouble: 3
-ldouble: 3
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 + 0.25 i)":
float: 1
ifloat: 1
@@ -4715,12 +4689,12 @@ Test "Real part of: casinh (-1.0 + 0x1p5000 i)":
ildouble: 1
ldouble: 1
Test "Real part of: casinh (-1.0 - 0 i)":
-double: 2
+double: 1
float: 1
-idouble: 2
+idouble: 1
ifloat: 1
-ildouble: 3
-ldouble: 3
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.0 - 0.25 i)":
float: 1
ifloat: 1
@@ -4791,12 +4765,10 @@ Test "Real part of: casinh (-1.0 - 0x1p5000 i)":
ildouble: 1
ldouble: 1
Test "Real part of: casinh (-1.5 + +0 i)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 2
-ldouble: 2
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.5 + 0x1.fp-1025 i)":
double: 1
idouble: 1
@@ -4811,12 +4783,10 @@ Test "Real part of: casinh (-1.5 + 0x1.fp-16385 i)":
ildouble: 1
ldouble: 1
Test "Real part of: casinh (-1.5 - 0 i)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-ildouble: 2
-ldouble: 2
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "Real part of: casinh (-1.5 - 0x1.fp-1025 i)":
double: 1
idouble: 1
@@ -4830,20 +4800,6 @@ ldouble: 1
Test "Real part of: casinh (-1.5 - 0x1.fp-16385 i)":
ildouble: 1
ldouble: 1
-Test "Real part of: casinh (-2 - 3 i)":
-double: 5
-float: 1
-idouble: 5
-ifloat: 1
-ildouble: 4
-ldouble: 4
-Test "Imaginary part of: casinh (-2 - 3 i)":
-double: 3
-float: 6
-idouble: 3
-ifloat: 6
-ildouble: 2
-ldouble: 2
Test "Imaginary part of: casinh (0.0 + 0x0.fffffffffffff8p0 i)":
ildouble: 1
ldouble: 1
@@ -5890,13 +5846,11 @@ Test "Real part of: catanh (-1.0 - 0x1p-57 i)":
float: 1
ifloat: 1
Test "Real part of: catanh (-2 - 3 i)":
-double: 4
-idouble: 4
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Test "Real part of: catanh (0.75 + 1.25 i)":
-double: 1
-idouble: 1
ildouble: 1
ldouble: 1
Test "Imaginary part of: catanh (0.75 + 1.25 i)":
@@ -6040,13 +5994,21 @@ float: 1
ifloat: 1
# cbrt
-Test "cbrt (-0.001)":
-ildouble: 1
-ldouble: 1
-Test "cbrt (-27.0)":
+Test "cbrt (-0x1.bp+4)":
double: 1
idouble: 1
-Test "cbrt (0.9921875)":
+Test "cbrt (-0x4.189374bc6a7ecp-12)":
+ildouble: 1
+ldouble: 1
+Test "cbrt (-0x4.189374bc6a7ef9ep-12)":
+ildouble: 1
+ldouble: 1
+Test "cbrt (-0x4.18937p-12)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cbrt (0xf.ep-4)":
double: 1
idouble: 1
@@ -6839,171 +6801,655 @@ idouble: 1
ifloat: 1
# cos
+Test "cos (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos (0x1.921fb54442d18p+0)":
+ildouble: 1
+ldouble: 1
Test "cos (0x1p+120)":
float: 1
ifloat: 1
-Test "cos (0x1p+127)":
+ildouble: 1
+ldouble: 1
+Test "cos (0x1p+28)":
+ildouble: 1
+ldouble: 1
+Test "cos (0x2.182a4705ae6cb08cb7665c1eacf6p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos (0x2.182a4705ae6ccp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos (0x3p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos (0x7p+0)":
float: 1
ifloat: 1
-Test "cos (M_PI_6l * 2.0)":
-double: 1
-idouble: 1
-Test "cos (M_PI_6l * 4.0)":
-double: 2
+Test "cos (0x8p+124)":
float: 1
-idouble: 2
ifloat: 1
+Test "cos (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "cos (0xf.ffffffffffffbffffffffffffcp+1020)":
ildouble: 1
ldouble: 1
# cos_downward
-Test "cos_downward (1)":
+Test "cos_downward (0x1.000000cf4a2a2p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.0000010b239a9p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.00000162a932bp+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.000002d452a1p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.000002p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_downward (0x1.000004p+0)":
float: 1
ifloat: 1
-Test "cos_downward (10)":
+Test "cos_downward (0x1.000006p+0)":
+float: 1
+ifloat: 1
+Test "cos_downward (0x1.0c1522p+0)":
+float: 1
+ifloat: 1
+Test "cos_downward (0x1.0c152382d7365p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.0c1524p+0)":
+float: 1
+ifloat: 1
+Test "cos_downward (0x1.921fb4p+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18469898cc517018p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18469898cc51701b8p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18469898cc51702p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0x1.921fb54442d19p+0)":
ildouble: 1
ldouble: 1
-Test "cos_downward (2)":
+Test "cos_downward (0x1.921fb6p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_downward (0x1p+120)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1p+28)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "cos_downward (3)":
+Test "cos_downward (0x2.182a44p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+Test "cos_downward (0x2.182a4705ae6cap+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2.182a4705ae6cb08cb7665c1eacf4p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6cb08cb7665c1eacf6p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6cb08cb7665c1eadp+0)":
ildouble: 1
ldouble: 1
-Test "cos_downward (4)":
+Test "cos_downward (0x2.182a4705ae6cb08cp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6cb09p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6ccp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a48p+0)":
float: 1
ifloat: 1
-Test "cos_downward (5)":
+Test "cos_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2p+0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "cos_downward (6)":
-ildouble: 1
-ldouble: 1
-Test "cos_downward (7)":
+Test "cos_downward (0x3p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "cos_downward (8)":
+Test "cos_downward (0x4p+48)":
+double: 1
+idouble: 1
+Test "cos_downward (0x8p+0)":
float: 1
ifloat: 1
ildouble: 2
ldouble: 2
-
-# cos_tonearest
-Test "cos_tonearest (7)":
+Test "cos_downward (0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x9p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-
-# cos_towardzero
-Test "cos_towardzero (10)":
ildouble: 1
ldouble: 1
-Test "cos_towardzero (2)":
+Test "cos_downward (0xa.217bap+12)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "cos_towardzero (3)":
+Test "cos_downward (0xap+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "cos_towardzero (5)":
+Test "cos_downward (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xc.d4966p-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+Test "cos_downward (0xc.d4967p-4)":
+float: 1
+ifloat: 1
+Test "cos_downward (0xcp-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "cos_towardzero (6)":
+Test "cos_downward (0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xf.fffffp+124)":
+double: 1
+idouble: 1
+
+# cos_tonearest
+Test "cos_tonearest (0x1.921fb54442d1846ap+0)":
ildouble: 1
ldouble: 1
-Test "cos_towardzero (7)":
+Test "cos_tonearest (0x1.921fb54442d18p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_tonearest (0x1p+120)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "cos_towardzero (8)":
+Test "cos_tonearest (0x1p+28)":
+ildouble: 1
+ldouble: 1
+Test "cos_tonearest (0x2.182a4705ae6cb08cb7665c1eacf6p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_tonearest (0x2.182a4705ae6ccp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_tonearest (0x3p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_tonearest (0x7p+0)":
float: 1
ifloat: 1
-ildouble: 2
-ldouble: 2
+Test "cos_tonearest (0x8p+124)":
+float: 1
+ifloat: 1
+Test "cos_tonearest (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_tonearest (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "cos_tonearest (0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
+
+# cos_towardzero
+Test "cos_towardzero (0x1.000000cf4a2a2p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.0000010b239a9p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.00000162a932bp+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.000002d452a1p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.000002p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.0c152382d7365p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.921fb54442d18469898cc51701b8p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.921fb54442d18469898cc51701b9p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.921fb6p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1p+120)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_towardzero (0x2.182a44p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x2.182a4705ae6cap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x2.182a4705ae6cb08cb7665c1eacp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x2.182a4705ae6ccp+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.182a48p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x4p+48)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x8p+1020)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xa.217bap+12)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xcp-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xf.fffffp+124)":
+double: 1
+idouble: 1
# cos_upward
-Test "cos_upward (1)":
+Test "cos_upward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.000002p+0)":
+float: 1
+ifloat: 1
+Test "cos_upward (0x1.000004p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x1.000005bc7d86dp+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.000006p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x1.0c1522p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x1.0c152382d7366p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.0c1524p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.921fb4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
-Test "cos_upward (10)":
+Test "cos_upward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d18469898cc517018p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d18469898cc51701b9p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d18469898cc51702p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d18p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x1.921fb6p+0)":
float: 1
ifloat: 1
-Test "cos_upward (4)":
ildouble: 1
ldouble: 1
-Test "cos_upward (6)":
+Test "cos_upward (0x1p+0)":
float: 1
ifloat: 1
-Test "cos_upward (7)":
+Test "cos_upward (0x1p+120)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-Test "cos_upward (9)":
-float: 2
-ifloat: 2
ildouble: 1
ldouble: 1
-
-# cosh_downward
-Test "cosh_downward (22)":
+Test "cos_upward (0x1p+28)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a44p+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x2.182a4705ae6cap+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x2.182a4705ae6cb08cb7665c1eacf4p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cb08cb7665c1eacf6p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cb08cb7665c1eacp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x2.182a4705ae6cb08cb7665c1eadp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cb08cp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cb09p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6ccp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a48p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x2.1e19e4p+72)":
float: 1
ifloat: 1
+Test "cos_upward (0x2p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
-Test "cosh_downward (23)":
+Test "cos_upward (0x2p+64)":
+double: 1
+idouble: 1
+Test "cos_upward (0x3p+0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "cosh_downward (24)":
+Test "cos_upward (0x4p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x5p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x6p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x7p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x8p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-
-# cosh_tonearest
-Test "cosh_tonearest (22)":
+Test "cos_upward (0x8p+1020)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-
-# cosh_towardzero
-Test "cosh_towardzero (22)":
+Test "cos_upward (0x8p+124)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+Test "cos_upward (0x9p+0)":
+float: 2
+ifloat: 2
ildouble: 1
ldouble: 1
-Test "cosh_towardzero (23)":
+Test "cos_upward (0xa.217bap+12)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0xap+0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "cosh_towardzero (24)":
+Test "cos_upward (0xc.d4966p-4)":
+float: 1
+ifloat: 1
+Test "cos_upward (0xc.d4967p-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+Test "cos_upward (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+Test "cos_upward (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0xf.ffffffffffffbffffffffffffcp+1020)":
ildouble: 1
ldouble: 1
-# cosh_upward
-Test "cosh_upward (22)":
+# cosh
+Test "cosh (-0x2.c5e3acp+8)":
+double: 1
+idouble: 1
+Test "cosh (0x1.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "cosh (0x2.c5e3acp+8)":
+double: 1
+idouble: 1
+
+# cosh_downward
+Test "cosh_downward (-0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+Test "cosh_downward (0x1.6p+4)":
+double: 1
+idouble: 1
+Test "cosh_downward (0x1.7p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cosh_downward (0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+
+# cosh_tonearest
+Test "cosh_tonearest (-0x2.c5e3acp+8)":
+double: 1
+idouble: 1
+Test "cosh_tonearest (0x1.6p+4)":
ildouble: 1
ldouble: 1
-Test "cosh_upward (23)":
+Test "cosh_tonearest (0x2.c5e3acp+8)":
+double: 1
+idouble: 1
+
+# cosh_towardzero
+Test "cosh_towardzero (-0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+Test "cosh_towardzero (0x1.6p+4)":
+double: 1
+idouble: 1
+Test "cosh_towardzero (0x1.7p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cosh_towardzero (0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+
+# cosh_upward
+Test "cosh_upward (-0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+Test "cosh_upward (0x1.6p+4)":
ildouble: 1
ldouble: 1
-Test "cosh_upward (24)":
+Test "cosh_upward (0x1.8p+4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
+Test "cosh_upward (0x2.c5e3bp+8)":
+double: 1
+idouble: 1
# cpow
Test "Real part of: cpow (0.75 + 1.25 i, 0.0 + 1.0 i)":
@@ -7042,13 +7488,6 @@ ldouble: 2
Test "Imaginary part of: cpow (2 + 3 i, 4 + 0 i)":
float: 2
ifloat: 2
-Test "Imaginary part of: cpow (e + 0 i, 0 + 2 * M_PIl i)":
-double: 2
-float: 2
-idouble: 2
-ifloat: 2
-ildouble: 1
-ldouble: 1
# csin
Test "Real part of: csin (-0.75 + 11357.25 i)":
@@ -7595,129 +8034,267 @@ ildouble: 1
ldouble: 1
# erf
-Test "erf (1.25)":
+Test "erf (-0x7.ffffffffffffcp-4)":
+ildouble: 1
+ldouble: 1
+Test "erf (0x1.4p+0)":
double: 1
idouble: 1
# erfc
-Test "erfc (0.75)":
-float: 1
-ifloat: 1
-Test "erfc (0x1.f7303cp+1)":
-double: 1
-idouble: 1
-Test "erfc (0x1.ffa002p+2)":
+Test "erfc (-0x8p-4)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "erfc (0x1.ffffc8p+2)":
+Test "erfc (0x1.ap+4)":
ildouble: 1
ldouble: 1
-Test "erfc (2.0)":
-double: 1
-idouble: 1
-Test "erfc (27.0)":
+Test "erfc (0x1.bp+4)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x1.cp+4)":
ildouble: 1
ldouble: 1
-Test "erfc (4.125)":
+Test "erfc (0x2p+0)":
double: 1
idouble: 1
+Test "erfc (0x3.ee6078p+0)":
+double: 1
+idouble: 1
+Test "erfc (0x4.2p+0)":
+double: 1
+idouble: 1
+Test "erfc (0x6.4p+4)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x6.a8p+4)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fe8008p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fffd6p+0)":
+float: 1
+ifloat: 1
+Test "erfc (0x7.ffff2p+0)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0xcp-4)":
+float: 1
+ifloat: 1
# exp10
-Test "exp10 (-1)":
+Test "exp10 (-0x1.31p+8)":
double: 1
idouble: 1
-Test "exp10 (-305)":
+Test "exp10 (-0x1p+0)":
double: 1
idouble: 1
-Test "exp10 (-36)":
+Test "exp10 (-0x2.4p+4)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "exp10 (3)":
+Test "exp10 (0x1.344p+12)":
+ildouble: 1
+ldouble: 1
+Test "exp10 (0x2.4p+4)":
double: 1
idouble: 1
-Test "exp10 (36)":
+Test "exp10 (0x3p+0)":
double: 1
idouble: 1
-Test "exp10 (4932)":
-ildouble: 1
-ldouble: 1
# exp2
-Test "exp2 (100.5)":
+Test "exp2 (0x6.48p+4)":
ildouble: 1
ldouble: 1
# exp_downward
-Test "exp_downward (2)":
-float: 1
-ifloat: 1
+Test "exp_downward (0x2p+0)":
+double: 1
+idouble: 1
+Test "exp_downward (0x3p+0)":
+double: 1
+idouble: 1
+Test "exp_downward (0x5.8b9028p+4)":
+double: 1
+idouble: 1
+Test "exp_downward (0xcp-4)":
+double: 1
+idouble: 1
+
+# exp_towardzero
+Test "exp_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+Test "exp_towardzero (0x3p+0)":
+double: 1
+idouble: 1
+Test "exp_towardzero (0x5.8b9028p+4)":
+double: 1
+idouble: 1
+Test "exp_towardzero (0xcp-4)":
+double: 1
+idouble: 1
+
+# exp_upward
+Test "exp_upward (-0x2.e870a4p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.e870a7e5e88c2p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.e870a7e5e88cp+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.e870a8p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.ebe224p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.ebe227861639p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.ebe228p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x4.d2p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "exp_downward (3)":
-float: 1
-ifloat: 1
+Test "exp_upward (-0xf.ffffffffffffbffffffffffffcp+1020)":
ildouble: 1
ldouble: 1
-
-# exp_towardzero
-Test "exp_towardzero (2)":
-float: 1
-ifloat: 1
+Test "exp_upward (-0xf.fffffffffffffffffffffffffff8p+16380)":
ildouble: 1
ldouble: 1
-Test "exp_towardzero (3)":
-float: 1
-ifloat: 1
+Test "exp_upward (-0xf.fffffffffffffffp+16380)":
ildouble: 1
ldouble: 1
-
-# exp_upward
-Test "exp_upward (1)":
-float: 1
-ifloat: 1
+Test "exp_upward (-0xf.fffffp+124)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
+Test "exp_upward (0x1p+0)":
+double: 1
+idouble: 1
+Test "exp_upward (0x2.c5cp+8)":
+double: 1
+idouble: 1
+Test "exp_upward (0x3.2p+4)":
+double: 1
+idouble: 1
# expm1
-Test "expm1 (-79.0)":
+Test "expm1 (-0x1p+4)":
ildouble: 1
ldouble: 1
-Test "expm1 (0.75)":
+Test "expm1 (-0x2.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1 (-0x2.cp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1 (-0x4.ep+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1 (-0x4.fp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1 (0x1.f4p+8)":
double: 1
idouble: 1
-Test "expm1 (1)":
+Test "expm1 (0x1p+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "expm1 (500.0)":
+Test "expm1 (0xcp-4)":
double: 1
idouble: 1
# gamma
-Test "gamma (-0.5)":
+Test "gamma (-0x1p-20)":
+double: 1
+idouble: 1
+Test "gamma (-0x1p-40)":
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x1p-64)":
ildouble: 1
ldouble: 1
-Test "gamma (0.7)":
+Test "gamma (-0x2p-16)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "gamma (-0x4p-12)":
+double: 1
+idouble: 1
+Test "gamma (-0x4p-32)":
ildouble: 1
ldouble: 1
-Test "gamma (1.2)":
+Test "gamma (-0x8p-28)":
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x8p-4)":
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x8p-8)":
double: 1
-float: 2
idouble: 1
-ifloat: 2
ildouble: 1
ldouble: 1
+Test "gamma (0x1.3333333333333332p+0)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0x1.3333333333333333333333333333p+0)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0x1p-60)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0x4p-12)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (0x4p-32)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (0x4p-72)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0x8p-8)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0xb.3333333333333333333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0xb.333333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0xb.333333333333p-4)":
+double: 1
+idouble: 1
+Test "gamma (0xb.33333p-4)":
+double: 1
+idouble: 1
# hypot
Test "hypot (-0.7, -12.4)":
@@ -7746,88 +8323,120 @@ float: 1
ifloat: 1
# j0
-Test "j0 (-0x1.001000001p+593)":
-ildouble: 1
-ldouble: 1
-Test "j0 (-4.0)":
+Test "j0 (-0x2.002000002p+592)":
+ildouble: 2
+ldouble: 2
+Test "j0 (-0x4p+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "j0 (0x1.d7ce3ap+107)":
-float: 2
-ifloat: 2
-ildouble: 1
-ldouble: 1
-Test "j0 (0x1p1023)":
ildouble: 1
ldouble: 1
-Test "j0 (0x1p16383)":
-ildouble: 2
-ldouble: 2
-Test "j0 (10.0)":
+Test "j0 (-0xf.fffffp+124)":
double: 2
-float: 1
+float: 2
idouble: 2
-ifloat: 1
+ifloat: 2
ildouble: 2
ldouble: 2
-Test "j0 (2.0)":
+Test "j0 (0x2p+0)":
ildouble: 2
ldouble: 2
-Test "j0 (4.0)":
+Test "j0 (0x4p+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "j0 (8.0)":
+ildouble: 1
+ldouble: 1
+Test "j0 (0x4p+16380)":
+ildouble: 1
+ldouble: 1
+Test "j0 (0x8p+0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-
-# j1
-Test "j1 (-1.0)":
+Test "j0 (0x8p+1020)":
ildouble: 1
ldouble: 1
-Test "j1 (0.75)":
+Test "j0 (0x8p+16380)":
+ildouble: 2
+ldouble: 2
+Test "j0 (0xap+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "j0 (0xe.be71dp+104)":
+float: 2
+ifloat: 2
ildouble: 1
ldouble: 1
-Test "j1 (0x1.3ffp+74)":
+Test "j0 (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "j0 (0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
+Test "j0 (0xf.fffffp+124)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 2
+ldouble: 2
+
+# j1
+Test "j1 (0x1.ff00000000002p+840)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "j1 (0x1.ff00000000002p+840)":
+Test "j1 (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "j1 (0x2p+0)":
+double: 1
+idouble: 1
+Test "j1 (0x4.ffcp+72)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "j1 (0x1p1023)":
+Test "j1 (0x4p+16380)":
ildouble: 1
ldouble: 1
-Test "j1 (0x1p16382)":
+Test "j1 (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 4
+ldouble: 4
+Test "j1 (0x8p+1020)":
ildouble: 1
ldouble: 1
-Test "j1 (0x1p16383)":
+Test "j1 (0x8p+16380)":
ildouble: 2
ldouble: 2
-Test "j1 (1.0)":
-ildouble: 1
-ldouble: 1
-Test "j1 (10.0)":
+Test "j1 (0xap+0)":
float: 2
ifloat: 2
ildouble: 2
ldouble: 2
-Test "j1 (2.0)":
+Test "j1 (0xcp-4)":
+ildouble: 1
+ldouble: 1
+Test "j1 (0xf.ffffffffffff8p+1020)":
double: 1
idouble: 1
-Test "j1 (8.0)":
+Test "j1 (0xf.fffffp+124)":
double: 1
+float: 1
idouble: 1
-ildouble: 4
-ldouble: 4
+ifloat: 1
# jn
Test "jn (0, -4.0)":
@@ -7898,8 +8507,8 @@ Test "jn (10, 1.0)":
ildouble: 1
ldouble: 1
Test "jn (10, 10.0)":
-float: 1
-ifloat: 1
+float: 2
+ifloat: 2
ildouble: 2
ldouble: 2
Test "jn (10, 2.0)":
@@ -7912,6 +8521,17 @@ double: 2
float: 2
idouble: 2
ifloat: 2
+Test "jn (2, 0x1p1023)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x1p127)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x1p16383)":
+ildouble: 2
+ldouble: 2
Test "jn (2, 2.4048255576957729)":
double: 2
float: 1
@@ -7929,9 +8549,7 @@ double: 1
idouble: 1
Test "jn (3, 10.0)":
double: 3
-float: 1
idouble: 3
-ifloat: 1
ildouble: 2
ldouble: 2
Test "jn (3, 2.0)":
@@ -7984,38 +8602,131 @@ ildouble: 3
ldouble: 3
# lgamma
-Test "lgamma (-0.5)":
+Test "lgamma (-0x1p-20)":
+double: 1
+idouble: 1
+Test "lgamma (-0x1p-40)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x1p-64)":
ildouble: 1
ldouble: 1
-Test "lgamma (0.7)":
+Test "lgamma (-0x2p-16)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "lgamma (-0x4p-12)":
+double: 1
+idouble: 1
+Test "lgamma (-0x4p-32)":
ildouble: 1
ldouble: 1
-Test "lgamma (1.2)":
+Test "lgamma (-0x8p-28)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x8p-4)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x8p-8)":
double: 1
-float: 2
idouble: 1
-ifloat: 2
ildouble: 1
ldouble: 1
+Test "lgamma (0x1.3333333333333332p+0)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x1.3333333333333333333333333333p+0)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x1p-60)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x4p-12)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x4p-32)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x4p-72)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x8p-8)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0xb.3333333333333333333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0xb.333333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0xb.333333333333p-4)":
+double: 1
+idouble: 1
+Test "lgamma (0xb.33333p-4)":
+double: 1
+idouble: 1
+
+# log
+Test "log (0x2.b7e151628aed2a68p+0)":
+ildouble: 1
+ldouble: 1
+Test "log (0x2.b7e151628aed2a6abf7158809cf4p+0)":
+ildouble: 1
+ldouble: 1
+Test "log (0x2.b7e151628aed2p+0)":
+ildouble: 1
+ldouble: 1
+Test "log (0x2.b7e15p+0)":
+float: 1
+ifloat: 1
# log10
-Test "log10 (0.75)":
+Test "log10 (0x1.999998p-4)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x1.999999999999ap-4)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x1.99999ap-4)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x2.b7e151628aed2a6cp+0)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x2.b7e154p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "log10 (0xcp-4)":
double: 1
float: 2
idouble: 1
ifloat: 2
-Test "log10 (e)":
-float: 1
-ifloat: 1
ildouble: 1
ldouble: 1
+# log1p
+Test "log1p (0x1.b7e151628aed2p+0)":
+ildouble: 1
+ldouble: 1
+Test "log1p (0x1.b7e15p+0)":
+float: 1
+ifloat: 1
+
# log2
-Test "log2 (0.75)":
+Test "log2 (0x2.b7e151628aed2a6cp+0)":
+ildouble: 1
+ldouble: 1
+Test "log2 (0xcp-4)":
ildouble: 1
ldouble: 1
@@ -8049,26 +8760,26 @@ ildouble: 1
ldouble: 1
# pow10
-Test "pow10 (-1)":
+Test "pow10 (-0x1.31p+8)":
double: 1
idouble: 1
-Test "pow10 (-305)":
+Test "pow10 (-0x1p+0)":
double: 1
idouble: 1
-Test "pow10 (-36)":
+Test "pow10 (-0x2.4p+4)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "pow10 (3)":
+Test "pow10 (0x1.344p+12)":
+ildouble: 1
+ldouble: 1
+Test "pow10 (0x2.4p+4)":
double: 1
idouble: 1
-Test "pow10 (36)":
+Test "pow10 (0x3p+0)":
double: 1
idouble: 1
-Test "pow10 (4932)":
-ildouble: 1
-ldouble: 1
# pow_downward
Test "pow_downward (1.5, 1.03125)":
@@ -8087,103 +8798,1028 @@ ifloat: 1
ildouble: 1
ldouble: 1
+# sin
+Test "sin (-0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (-0x1.921fb54442d18p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (-0x1.921fb54442d19p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (-0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin (-0x8.60a91c16b9b2c232dd99707ab3dp-4)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x1p+0)":
+float: 1
+ifloat: 1
+Test "sin (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x2p+64)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x3.be735c19be9fffffffffffffffe8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x3.be736p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x3.ec2a0250032a00000000000001p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x3.ec2a0250032a2p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x3.ec2a04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x3.ec2ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x3p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x4.1237e153f7080000000000000004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x4.c92d08p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x4.c92d0ffa4bf00000000000000088p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x4.c92d0ffa4bf00008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x4.c92d0ffa4bf04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x4.c92d0ffa4bfp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x5.fbec7477d4a84p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0x5.fbec78p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0xc.d4967p-4)":
+float: 1
+ifloat: 1
+
# sin_downward
-Test "sin_downward (10)":
+Test "sin_downward (-0x1.921fb4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x1.921fb54442d18p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x1.921fb54442d19p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x1.921fb6p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "sin_downward (-0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b2c232dd99707ab3dp-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b2c232dd99707ab4p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b2c232dd99707abp-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b2c23p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b2c24p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b3p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (-0x8.60a92p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d18469898cc517018p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d18469898cc51701b8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d18469898cc51701b9p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d18469898cc51702p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x1p+120)":
float: 1
ifloat: 1
-Test "sin_downward (2)":
+Test "sin_downward (0x1p+28)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19e4p+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19ep+72)":
+float: 2
+ifloat: 2
+Test "sin_downward (0x2.553534p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.5535376715bap+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x2p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x3.be735c19be9fep+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735c19be9ffffcp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735c19be9fffffffffffffffe8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735c19be9fffffffffffffffeap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735c19be9fffffffffffffffp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735cp+0)":
ildouble: 1
ldouble: 1
-Test "sin_downward (3)":
+Test "sin_downward (0x3.be736p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "sin_downward (4)":
+Test "sin_downward (0x3.ec2a0250032a0000000000000072p+0)":
ildouble: 1
ldouble: 1
-Test "sin_downward (5)":
+Test "sin_downward (0x3.ec2a0250032a00000000000001p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032a0004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032a2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032ap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2ap+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "sin_downward (6)":
+Test "sin_downward (0x3p+0)":
float: 1
ifloat: 1
-Test "sin_downward (8)":
ildouble: 1
ldouble: 1
-Test "sin_downward (9)":
+Test "sin_downward (0x4.093385688a2d1508p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.093385688a2d4p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.093388p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (0x4.1237e153f7080000000000000004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237e153f70800000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237e153f7084p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x4.1237e153f708p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237e8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237ep+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d08p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf00000000000000088p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf000000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf00008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bfp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4p+48)":
+double: 1
+idouble: 1
+Test "sin_downward (0x5.fbec7477d4a8000000000000009cp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7477d4a84p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7477d4a8p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x5.fbec78p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x6p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x8p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x8p+1020)":
+double: 1
+idouble: 1
+Test "sin_downward (0x9p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_downward (0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_downward (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+Test "sin_downward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xf.fffffp+124)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
# sin_tonearest
-Test "sin_tonearest (1)":
+Test "sin_tonearest (-0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (-0x1.921fb54442d18p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (-0x1.921fb54442d19p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (-0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (-0x8.60a91c16b9b2c232dd99707ab3dp-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x1p+0)":
float: 1
ifloat: 1
-Test "sin_tonearest (3)":
+Test "sin_tonearest (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x2p+64)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x3.be735c19be9fffffffffffffffe8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x3.be736p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x3.ec2a0250032a00000000000001p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x3.ec2a0250032a2p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x3.ec2a04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x3.ec2ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x3p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x4.1237e153f7080000000000000004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x4.c92d08p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x4.c92d0ffa4bf00000000000000088p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x4.c92d0ffa4bf00008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x4.c92d0ffa4bf04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x4.c92d0ffa4bfp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x5.fbec7477d4a84p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0x5.fbec78p+0)":
ildouble: 1
ldouble: 1
+Test "sin_tonearest (0xc.d4967p-4)":
+float: 1
+ifloat: 1
# sin_towardzero
-Test "sin_towardzero (1)":
+Test "sin_towardzero (-0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d18469898cc517018p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d18469898cc51701b8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d18469898cc51701b9p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d18469898cc51702p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (-0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (-0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x8.60a91c16b9b2c232dd99707ab3d8p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x8.60a91p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18469898cc517018p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18469898cc51701b8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18469898cc51701b9p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18469898cc51702p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x1p+0)":
float: 1
ifloat: 1
-Test "sin_towardzero (10)":
+Test "sin_towardzero (0x1p+28)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2.1e19ep+72)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-Test "sin_towardzero (2)":
ildouble: 1
ldouble: 1
-Test "sin_towardzero (3)":
+Test "sin_towardzero (0x2.553534p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2.5535376715bap+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2p+64)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "sin_towardzero (4)":
+Test "sin_towardzero (0x3.be735c19beap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x3.be735cp+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+Test "sin_towardzero (0x3.ec2a0250032a000000000000007p+0)":
ildouble: 1
ldouble: 1
-Test "sin_towardzero (5)":
+Test "sin_towardzero (0x3.ec2a04p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+Test "sin_towardzero (0x3p+0)":
ildouble: 1
ldouble: 1
-Test "sin_towardzero (8)":
+Test "sin_towardzero (0x4.093385688a2d1508p-4)":
ildouble: 1
ldouble: 1
-Test "sin_towardzero (9)":
+Test "sin_towardzero (0x4.093385688a2d4p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4.093388p-4)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.1237e153f7084p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4.1237e8p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.1237ep+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.c92d0ffa4bf0000000000000008cp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4.c92d0ffa4bf04p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.c92d0ffa4bfp+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4p+48)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x5.fbec7477d4a80000000000000098p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x5.fbec7477d4a800000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x5.fbec7477d4a80008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x5.fbec7477d4a8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x5.fbec7p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x8p+1020)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x9p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0xb.fa09ap+100)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xc.d4967p-4)":
float: 1
ifloat: 1
+Test "sin_towardzero (0xe.ef3afp-4)":
+float: 1
+ifloat: 1
+Test "sin_towardzero (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0xf.ffffffffffffbffffffffffffcp+1020)":
ildouble: 1
ldouble: 1
# sin_upward
-Test "sin_upward (1)":
+Test "sin_upward (-0x1.921fb4p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18469898cc517018p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18469898cc51701b8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18469898cc51701b9p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18469898cc51702p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb6p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x2p+64)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c232dd99707ab3d8p-4)":
+ildouble: 3
+ldouble: 3
+Test "sin_upward (-0x8.60a91c16b9b2c232dd99707ab3dp-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c232dd99707ab4p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c232dd99707abp-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c23p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c24p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b3p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (-0x8.60a92p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x1.921fb4p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1.921fb6p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1p+120)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_upward (0x1p+28)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19ep+72)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x2.5535376715b9ep+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x2.553538p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x2p+0)":
+float: 1
+ifloat: 1
+Test "sin_upward (0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9fep+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9ffffcp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9fffffffffffffffe8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9fffffffffffffffeap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9fffffffffffffffp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19beap+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x3.be735cp+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be736p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a0000000000000072p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a000000000000007p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x3.ec2a0250032a00000000000001p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a0004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a2p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a04p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "sin_upward (10)":
+Test "sin_upward (0x3.ec2ap+0)":
ildouble: 1
ldouble: 1
-Test "sin_upward (2)":
+Test "sin_upward (0x3p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x4.093385688a2d4p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.093385688a2dp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.09338p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.1237e153f7080000000000000004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237e153f70800000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237e153f7084p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x4.1237e153f708p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237e8p+0)":
+double: 1
float: 2
+idouble: 1
ifloat: 2
-Test "sin_upward (3)":
ildouble: 1
ldouble: 1
-Test "sin_upward (4)":
+Test "sin_upward (0x4.1237ep+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-Test "sin_upward (6)":
ildouble: 1
ldouble: 1
-Test "sin_upward (7)":
+Test "sin_upward (0x4.c92d08p+0)":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
-Test "sin_upward (9)":
+Test "sin_upward (0x4.c92d0ffa4bf00000000000000088p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bf0000000000000008cp+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x4.c92d0ffa4bf000000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bf00008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bf04p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bfp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d1p+0)":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4p+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4p+48)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a80000000000000098p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x5.fbec7477d4a8000000000000009cp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a800000000000002p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x5.fbec7477d4a80008p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x5.fbec7477d4a84p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a8p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x5.fbec78p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x6p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x7p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_upward (0x8.60a91c16b9b3p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8.60a91p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8.60a92p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8p+0)":
+float: 1
+ifloat: 1
+Test "sin_upward (0x8p+124)":
+double: 1
+idouble: 1
+Test "sin_upward (0x9p+0)":
+float: 1
+ifloat: 1
+Test "sin_upward (0xap+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xb.fa09ap+100)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xc.d4967p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xcp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3af1b5d8008p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3af1b5d8p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3afp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3bp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xf.ffffcp+124)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xf.ffffffffffff8p+1020)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xf.fffffp+124)":
+ildouble: 1
+ldouble: 1
# sincos
Test "sincos (0x1p+120) extra output 2":
@@ -8205,772 +9841,1427 @@ float: 1
ifloat: 1
# sinh_downward
-Test "sinh_downward (22)":
+Test "sinh_downward (0x1.6p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0x1.7p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0x1.8p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0xcp-4)":
+ildouble: 1
+ldouble: 1
+
+# sinh_towardzero
+Test "sinh_towardzero (0x1.6p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_towardzero (0x1.7p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_towardzero (0xcp-4)":
+ildouble: 1
+ldouble: 1
+
+# sinh_upward
+Test "sinh_upward (0x1.7p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_upward (0x1.8p+4)":
+double: 1
+idouble: 1
+Test "sinh_upward (0x8p-32)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "sinh_downward (23)":
+Test "sinh_upward (0xcp-4)":
+ildouble: 1
+ldouble: 1
+
+# tan
+Test "tan (-0xc.90fdcp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan (-0xc.90fdp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan (-0xc.90fp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan (0x3p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan (0x6p+0)":
+ildouble: 1
+ldouble: 1
+
+# tan_downward
+Test "tan_downward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_downward (-0xc.908p-4)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90cp-4)":
float: 1
ifloat: 1
-ildouble: 2
-ldouble: 2
-Test "sinh_downward (24)":
+Test "tan_downward (-0xc.90ep-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-
-# sinh_towardzero
-Test "sinh_towardzero (22)":
+Test "tan_downward (-0xc.90f8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fcp-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fd8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fdap-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fdbp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fdcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fdp-4)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "sinh_towardzero (23)":
+Test "tan_downward (-0xc.90fep-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 2
-ldouble: 2
-Test "sinh_towardzero (24)":
+Test "tan_downward (-0xc.90fp-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-
-# sinh_upward
-Test "sinh_upward (22)":
ildouble: 1
ldouble: 1
-Test "sinh_upward (23)":
+Test "tan_downward (-0xc.91p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
-Test "sinh_upward (24)":
+Test "tan_downward (-0xc.92p-4)":
+double: 1
+idouble: 1
+Test "tan_downward (-0xc.98p-4)":
ildouble: 1
ldouble: 1
-
-# tan_downward
-Test "tan_downward (1)":
+Test "tan_downward (-0xc.9p-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tan_downward (10)":
+Test "tan_downward (-0xc.ap-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x1p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x2.1e19ep+72)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x2p+64)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x3p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x4p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x6p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x7p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x8p+16380)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.908p-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-Test "tan_downward (2)":
+Test "tan_downward (0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fdaa22168c8p-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fdbp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.90fdcp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fep-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.91p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.92p-4)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tan_downward (6)":
+Test "tan_downward (0xc.94p-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-Test "tan_downward (8)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.98p-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tan_downward (9)":
+Test "tan_downward (0xc.ap-4)":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xcp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xf.fffffp+124)":
+ildouble: 1
+ldouble: 1
+
+# tan_tonearest
+Test "tan_tonearest (-0xc.90fdcp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (-0xc.90fdp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (-0xc.90fp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x3p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x6p+0)":
+ildouble: 1
+ldouble: 1
# tan_towardzero
-Test "tan_towardzero (10)":
+Test "tan_towardzero (-0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.908p-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-Test "tan_towardzero (3)":
+Test "tan_towardzero (-0xc.90cp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.90f8p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.90fcp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.90fd8p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.90fdap-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.91p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.94p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.98p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.ap-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x1p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tan_towardzero (4)":
+Test "tan_towardzero (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x2p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x5p+0)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x7p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x8p+16380)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x9p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_towardzero (0xc.908p-4)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+Test "tan_towardzero (0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fdaa22168c8p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.94p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.98p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xf.fffffp+124)":
+double: 1
+idouble: 1
+
+# tan_upward
+Test "tan_upward (-0xc.908p-4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "tan_towardzero (5)":
+Test "tan_upward (-0xc.90cp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90ep-4)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tan_towardzero (6)":
+Test "tan_upward (-0xc.90f8p-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90fcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90fd8p-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90fdap-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90fdbp-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (-0xc.90fdcp-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (-0xc.90fdp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
-Test "tan_towardzero (9)":
+Test "tan_upward (-0xc.90fep-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (-0xc.90fp-4)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-
-# tan_upward
-Test "tan_upward (10)":
+Test "tan_upward (-0xc.91p-4)":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
-Test "tan_upward (2)":
+Test "tan_upward (-0xc.94p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (-0xc.98p-4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "tan_upward (3)":
+Test "tan_upward (-0xc.9p-4)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tan_upward (4)":
+Test "tan_upward (-0xc.ap-4)":
ildouble: 1
ldouble: 1
-Test "tan_upward (5)":
-float: 1
-ifloat: 1
+Test "tan_upward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "tan_upward (0x2.1e19ep+72)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "tan_upward (6)":
+Test "tan_upward (0x2p+64)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "tan_upward (9)":
+Test "tan_upward (0x4p+0)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-
-# tanh
-Test "tanh (-0.75)":
+Test "tan_upward (0x5p+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0x7p+0)":
+float: 1
+ifloat: 1
+Test "tan_upward (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0x9p+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0xap+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.908p-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (0xc.90ep-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90f8p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fd8p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fdap-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fdbp-4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "tanh (-1.0)":
+Test "tan_upward (0xc.90fdcp-4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "tanh (0.75)":
+Test "tan_upward (0xc.90fep-4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "tanh (1.0)":
+Test "tan_upward (0xc.90fp-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.91p-4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-
-# tgamma
-Test "tgamma (-0.5)":
+Test "tan_upward (0xc.92p-4)":
double: 1
float: 1
idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x0.fffffffffffff8p0)":
+Test "tan_upward (0xc.94p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.98p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.9p-4)":
double: 1
idouble: 1
-Test "tgamma (-0x0.ffffffffffffffffffffffffffff8p0)":
+Test "tan_upward (0xc.ap-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x0.ffffffp0)":
+Test "tan_upward (0xcp-4)":
float: 1
ifloat: 1
+Test "tan_upward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "tan_upward (0xf.fffffp+124)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1.0000000000000002p0)":
+
+# tanh
+Test "tanh (-0x1p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1.0000000000001p0)":
+Test "tanh (-0xcp-4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1.000002p0)":
-double: 2
-idouble: 2
-Test "tgamma (-0x1.0a32a2p+5)":
-float: 2
-ifloat: 2
-ildouble: 2
-ldouble: 2
-Test "tgamma (-0x1.5800000080001p+7)":
+Test "tanh (0x1p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1.fffffffffffffffep0)":
+Test "tanh (0xcp-4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1.fffffffffffffp0)":
+
+# tgamma
+Test "tgamma (-0x1.0000000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.0000000000001p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x13.ffffep0)":
+Test "tgamma (-0x1.000002p+0)":
+double: 2
+idouble: 2
+Test "tgamma (-0x1.3ffffep+4)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x13.ffffffffffffffep0)":
+Test "tgamma (-0x1.3ffffffffffffffep+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x13.fffffffffffffffffffffffff8p0)":
+Test "tgamma (-0x1.3fffffffffffffffffffffffff8p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x13.ffffffffffffp0)":
+Test "tgamma (-0x1.3ffffffffffffp+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0x14.000000000000000000000000001p0)":
+Test "tgamma (-0x1.4000000000000000000000000001p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x14.000000000001p0)":
+Test "tgamma (-0x1.4000000000001p+4)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x14.00002p0)":
+Test "tgamma (-0x1.400002p+4)":
float: 1
ifloat: 1
ildouble: 4
ldouble: 4
-Test "tgamma (-0x1d.ffffep0)":
+Test "tgamma (-0x1.dffffep+4)":
double: 1
float: 1
idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1d.fffffffffffffffffffffffff8p0)":
+Test "tgamma (-0x1.dfffffffffffffffffffffffff8p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1d.ffffffffffffp0)":
+Test "tgamma (-0x1.dffffffffffffp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1e.000000000000000000000000001p0)":
-ildouble: 2
-ldouble: 2
-Test "tgamma (-0x1e.00000000000000000000000008p0)":
+Test "tgamma (-0x1.e000000000000000000000000001p+4)":
+ildouble: 3
+ldouble: 3
+Test "tgamma (-0x1.e00000000000000000000000008p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1e.000000000000002p0)":
+Test "tgamma (-0x1.e000000000000002p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1e.000000000001p0)":
+Test "tgamma (-0x1.e000000000001p+4)":
double: 3
idouble: 3
-Test "tgamma (-0x1e.00002p0)":
+Test "tgamma (-0x1.e00002p+4)":
double: 1
float: 1
idouble: 1
ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x1.f3ffffffffffffffffffffffff8p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1f3.ffffffffffffffffffffffffffp0)":
+Test "tgamma (-0x1.f3ffffffffffffffffffffffffffp+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x1p-24)":
+Test "tgamma (-0x1.f3fffffffffffp+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x1.f40000000000000000000000008p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x2.0000000000000000000000000002p0)":
+Test "tgamma (-0x1.f40002p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x2.0000000000002p0)":
-double: 1
-idouble: 1
+Test "tgamma (-0x1.fffffffffffffffep+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x2.000004p0)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
+Test "tgamma (-0x1.fffffffffffffp+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.0000000000000000000000000002p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x2.fffffcp0)":
+Test "tgamma (-0x2.00000000000000000000000001p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.0000000000002p+0)":
double: 1
-float: 1
idouble: 1
+Test "tgamma (-0x2.000004p+0)":
+double: 2
+float: 1
+idouble: 2
ifloat: 1
-Test "tgamma (-0x2.ffffffffffffep0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x27.fffffffffffep0)":
+Test "tgamma (-0x2.146544p+4)":
+float: 2
+ifloat: 2
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x2.7fffffffffffep+4)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x27.ffffffffffffffcp0)":
+Test "tgamma (-0x2.7ffffffffffffffcp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x27.ffffffffffffffffffffffffffep0)":
+Test "tgamma (-0x2.7ffffffffffffffffffffffffffep+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0x27.fffffffffffffffffffffffffp0)":
+Test "tgamma (-0x2.7fffffffffffffffffffffffffp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x28.0000000000000000000000001p0)":
+Test "tgamma (-0x2.8000000000000000000000000002p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x28.000000000002p0)":
+Test "tgamma (-0x2.80000000000000000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8000000000002p+4)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x28.00004p0)":
+Test "tgamma (-0x2.800004p+4)":
double: 2
idouble: 2
ildouble: 2
ldouble: 2
-Test "tgamma (-0x28.ffffffffffffffcp0)":
+Test "tgamma (-0x2.8fffffffffffep+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x28.ffffffffffffffffffffffffffep0)":
+Test "tgamma (-0x2.8ffffffffffffffcp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x28.fffffffffffffffffffffffffp0)":
+Test "tgamma (-0x2.8ffffffffffffffffffffffffffep+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x29.000000000000000000000000002p0)":
+Test "tgamma (-0x2.8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+Test "tgamma (-0x2.9000000000000000000000000002p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x29.0000000000000000000000001p0)":
+Test "tgamma (-0x2.90000000000000000000000001p+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0x29.00004p0)":
+Test "tgamma (-0x2.900004p+4)":
double: 1
idouble: 1
-Test "tgamma (-0x29.ffffcp0)":
+Test "tgamma (-0x2.9ffffcp+4)":
double: 1
idouble: 1
-Test "tgamma (-0x29.fffffffffffep0)":
+Test "tgamma (-0x2.9fffffffffffep+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x29.ffffffffffffffcp0)":
+Test "tgamma (-0x2.9ffffffffffffffcp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x29.ffffffffffffffffffffffffffep0)":
+Test "tgamma (-0x2.9ffffffffffffffffffffffffffep+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x29.fffffffffffffffffffffffffp0)":
+Test "tgamma (-0x2.9fffffffffffffffffffffffffp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x2a.000000000000000000000000002p0)":
+Test "tgamma (-0x2.a000000000000000000000000002p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x2a.0000000000000000000000001p0)":
+Test "tgamma (-0x2.a000000000000004p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x2a.000000000000004p0)":
+Test "tgamma (-0x2.a000000000002p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x2a.000000000002p0)":
+Test "tgamma (-0x2.a00004p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x2ed.fffffffffffffffffffffffffep0)":
+Test "tgamma (-0x2.edfffcp+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x2ee.00000000000004p0)":
+Test "tgamma (-0x2.edffffffffffep+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x3.00000000000000000000000001p0)":
+Test "tgamma (-0x2.edfffffffffffffffffffffffffep+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x3.000004p0)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-Test "tgamma (-0x3.fffffcp0)":
+Test "tgamma (-0x2.ee00000000000000000000000002p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.ee00000000000004p+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x2.ee00000000002p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.ee0004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.fffffcp+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "tgamma (-0x3.ffffffffffffep0)":
-double: 2
-idouble: 2
-Test "tgamma (-0x3.fffffffffffffffcp0)":
+Test "tgamma (-0x2.ffffffffffffep+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x3.fffffffffffffffffffffffffffep0)":
+Test "tgamma (-0x2.fffffffffffffffffffffffffffep+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.00000000000000000000000001p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.000004p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "tgamma (-0x3.1ffffcp+4)":
+double: 1
+idouble: 1
ildouble: 2
ldouble: 2
-Test "tgamma (-0x31.fffffffffffep0)":
+Test "tgamma (-0x3.1fffffffffffep+4)":
double: 3
idouble: 3
ildouble: 2
ldouble: 2
-Test "tgamma (-0x31.ffffffffffffffcp0)":
+Test "tgamma (-0x3.1ffffffffffffffcp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x31.ffffffffffffffffffffffffffep0)":
+Test "tgamma (-0x3.1ffffffffffffffffffffffffffep+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x31.fffffffffffffffffffffffffp0)":
+Test "tgamma (-0x3.1fffffffffffffffffffffffffp+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0x32.000000000000000000000000002p0)":
+Test "tgamma (-0x3.2000000000000000000000000002p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x32.0000000000000000000000001p0)":
+Test "tgamma (-0x3.2000000000000004p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x32.000000000000004p0)":
+Test "tgamma (-0x3.200004p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x3e7.fffffffffffffcp0)":
+Test "tgamma (-0x3.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.e7fffffffffffffcp+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x3e7.fffffffffffffffffffffffffep0)":
+Test "tgamma (-0x3.e7fffffffffffffffffffffffffep+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.e7ffffffffffffffffffffffffp+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x3.e800000000000000000000000002p+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x3.e8000000000000000000000001p+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x3.e800000000000004p+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x3.e800000000002p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x3e8.00000000000000000000000002p0)":
+Test "tgamma (-0x3.e80004p+8)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0x3e8.00000000000004p0)":
+Test "tgamma (-0x3.fffffcp+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (-0x3.ffffffffffffep+0)":
+double: 2
+idouble: 2
+Test "tgamma (-0x3.fffffffffffffffcp+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x4.0000000000004p0)":
+Test "tgamma (-0x3.fffffffffffffffffffffffffffep+0)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x4.000008p+0)":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x4.000008p0)":
+Test "tgamma (-0x4.8p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x4.fffff8p0)":
+Test "tgamma (-0x4.e1fffffffffffffffffffffffep+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.e2000000000000000000000002p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.e200000000000008p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.e200000000004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.e20008p+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x4.fffff8p+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "tgamma (-0x4.ffffffffffffcp0)":
+Test "tgamma (-0x4.ffffffffffffcp+0)":
double: 1
idouble: 1
+Test "tgamma (-0x4.fffffffffffffff8p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x4.fffffffffffffffffffffffffep0)":
+Test "tgamma (-0x4.fffffffffffffffffffffffffep+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x4.fffffffffffffffffffffffffffcp0)":
+Test "tgamma (-0x4.fffffffffffffffffffffffffffcp+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x5.0000000000000008p0)":
+Test "tgamma (-0x5.0000000000000008p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x5.0000000000004p0)":
+Test "tgamma (-0x5.0000000000004p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x5.000008p0)":
+Test "tgamma (-0x5.000008p+0)":
double: 1
float: 2
idouble: 1
ifloat: 2
-Test "tgamma (-0x5.fffff8p0)":
-ildouble: 1
-ldouble: 1
-Test "tgamma (-0x5.ffffffffffffcp0)":
+Test "tgamma (-0x5.8p+0)":
double: 1
idouble: 1
+Test "tgamma (-0x5.dbfffffffffffff8p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.dbfffffffffffffffffffffffffcp+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x5.fffffffffffffff8p0)":
+Test "tgamma (-0x5.dc00000000000000000000000004p+8)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0x5.fffffffffffffffffffffffffep0)":
+Test "tgamma (-0x5.dc000000000000000000000002p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x5.fffffffffffffffffffffffffffcp0)":
+Test "tgamma (-0x5.dc00000000004p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x5db.fffffffffffff8p0)":
+Test "tgamma (-0x5.dc0008p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x5db.fffffffffffffffffffffffffcp0)":
+Test "tgamma (-0x5.fffff8p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x5dc.00000000000000000000000004p0)":
+Test "tgamma (-0x5.ffffffffffffcp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.fffffffffffffff8p+0)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0x6.0000000000000000000000000004p0)":
+Test "tgamma (-0x5.fffffffffffffffffffffffffep+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.fffffffffffffffffffffffffffcp+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x6.00000000000000000000000002p0)":
+Test "tgamma (-0x6.0000000000000000000000000004p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x6.0000000000004p0)":
+Test "tgamma (-0x6.00000000000000000000000002p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x6.000008p0)":
+Test "tgamma (-0x6.000008p+0)":
float: 2
ifloat: 2
ildouble: 2
ldouble: 2
-Test "tgamma (-0x6.fffff8p0)":
+Test "tgamma (-0x6.3ffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.3fffffffffffcp+4)":
double: 2
-float: 1
idouble: 2
+Test "tgamma (-0x6.3ffffffffffffff8p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x6.3ffffffffffffffffffffffffep+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x6.4000000000000000000000000004p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.40000000000000000000000002p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.4000000000004p+4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x6.400008p+4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x6.8p+0)":
+float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0x6.ffffffffffffcp0)":
-double: 4
-idouble: 4
+Test "tgamma (-0x6.d5fff8p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x6.fffffffffffffff8p0)":
+Test "tgamma (-0x6.d5ffffffffffcp+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x6.fffffffffffffffffffffffffffcp0)":
+Test "tgamma (-0x6.d5fffffffffffff8p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x63.fffffffffffcp0)":
-double: 2
-idouble: 2
-Test "tgamma (-0x63.ffffffffffffff8p0)":
-ildouble: 2
-ldouble: 2
-Test "tgamma (-0x63.ffffffffffffffffffffffffep0)":
-ildouble: 2
-ldouble: 2
-Test "tgamma (-0x64.000000000000000000000000004p0)":
-ildouble: 2
-ldouble: 2
-Test "tgamma (-0x64.0000000000000000000000002p0)":
+Test "tgamma (-0x6.d5fffffffffffffffffffffffep+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x64.000000000004p0)":
-double: 1
-idouble: 1
+Test "tgamma (-0x6.d600000000000000000000000004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.d6000000000000000000000002p+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x6.d600000000000008p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x6d5.fffffffffffff8p0)":
+Test "tgamma (-0x6.d600000000004p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x6d6.00000000000000000000000004p0)":
+Test "tgamma (-0x6.e2fffffffffffffffffffffffep+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x6.e300000000000000000000000004p+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x6.e3000000000000000000000002p+8)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x6e3.00000000000000000000000004p0)":
+Test "tgamma (-0x6.fffff8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "tgamma (-0x6.ffffffffffffcp+0)":
+double: 4
+idouble: 4
+Test "tgamma (-0x6.fffffffffffffff8p+0)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0x7.0000000000000008p0)":
+Test "tgamma (-0x6.fffffffffffffffffffffffffffcp+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x7.0000000000004p0)":
+Test "tgamma (-0x7.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x7.0000000000004p+0)":
double: 3
idouble: 3
-Test "tgamma (-0x7.000008p0)":
+Test "tgamma (-0x7.000008p+0)":
double: 1
idouble: 1
-Test "tgamma (-0x7.fffff8p0)":
+Test "tgamma (-0x7.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "tgamma (-0x7.fffff8p+0)":
double: 3
float: 1
idouble: 3
ifloat: 1
-Test "tgamma (-0x7.ffffffffffffcp0)":
+Test "tgamma (-0x7.ffffffffffffcp+0)":
double: 3
idouble: 3
-Test "tgamma (-0x7.fffffffffffffff8p0)":
+Test "tgamma (-0x7.fffffffffffffff8p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x7.fffffffffffffffffffffffffep0)":
+Test "tgamma (-0x7.fffffffffffffffffffffffffep+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x7.fffffffffffffffffffffffffffcp0)":
+Test "tgamma (-0x7.fffffffffffffffffffffffffffcp+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x8.0000000000000000000000000008p0)":
+Test "tgamma (-0x8.0000000000000000000000000008p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x8.00000000000000000000000004p0)":
+Test "tgamma (-0x8.00000000000000000000000004p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x8.0000000000008p0)":
+Test "tgamma (-0x8.0000000000008p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x8.00001p0)":
+Test "tgamma (-0x8.00001p+0)":
double: 2
idouble: 2
ildouble: 1
ldouble: 1
-Test "tgamma (-0x9.ffffffffffff8p0)":
+Test "tgamma (-0x8.8p+0)":
double: 1
+float: 1
idouble: 1
-Test "tgamma (-0x9.fffffffffffffffffffffffffff8p0)":
-ildouble: 1
-ldouble: 1
-Test "tgamma (-0x95.ffffffffffffffp0)":
+ifloat: 1
+Test "tgamma (-0x8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (-0x9.5ffffffffffffffp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x96.000000000000000000000000008p0)":
+Test "tgamma (-0x9.5ffffp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x96.0000000000000000000000004p0)":
+Test "tgamma (-0x9.60000000000000000000000004p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0x96.00000000000001p0)":
+Test "tgamma (-0x9.600000000000001p+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0x96.000000000008p0)":
+Test "tgamma (-0x9.6000000000008p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x9.60001p+4)":
double: 1
idouble: 1
-Test "tgamma (-0xa.0000000000008p0)":
+Test "tgamma (-0x9.8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+Test "tgamma (-0x9.ffffffffffff8p+0)":
+double: 1
+idouble: 1
+Test "tgamma (-0x9.fffffffffffffffffffffffffff8p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xa.00001p0)":
+Test "tgamma (-0xa.00001p+0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb4.ffffffffffffffffffffffffcp0)":
+Test "tgamma (-0xa.c000000400008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xa.c0001p+4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb4.ffffffffffffffp0)":
+Test "tgamma (-0xb.4ffffffffffffffffffffffffcp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb5.0000000000000000000000004p0)":
+Test "tgamma (-0xb.4ffffffffffffffffffffffffff8p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb5.00000000000001p0)":
+Test "tgamma (-0xb.4ffffffffffffffp+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0xb5.000000000008p0)":
+Test "tgamma (-0xb.50000000000000000000000004p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb5.ffffffffffffffffffffffffff8p0)":
+Test "tgamma (-0xb.500000000000001p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.5000000000008p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb6.00000000000001p0)":
+Test "tgamma (-0xb.5ffffffffffffffffffffffffff8p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb6.000000000008p0)":
+Test "tgamma (-0xb.5ffffp+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.60000000000000000000000004p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb6.fffffffffff8p0)":
+Test "tgamma (-0xb.600000000000001p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb6.ffffffffffffffffffffffffff8p0)":
+Test "tgamma (-0xb.6000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.6fffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.6ffffffffffffffffffffffffcp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.6ffffffffffffffffffffffffff8p+4)":
ildouble: 3
ldouble: 3
-Test "tgamma (-0xb7.000000000000000000000000008p0)":
+Test "tgamma (-0xb.7000000000000000000000000008p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb7.00000000000001p0)":
+Test "tgamma (-0xb.700000000000001p+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0xb7.000000000008p0)":
+Test "tgamma (-0xb.7000000000008p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb7.ffffffffffffffffffffffffcp0)":
+Test "tgamma (-0xb.70001p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb7.ffffffffffffffffffffffffff8p0)":
+Test "tgamma (-0xb.7ffffffffffffffffffffffffcp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xb8.00000000000001p0)":
+Test "tgamma (-0xb.7ffffffffffffffffffffffffff8p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xbb.ffffffffffffffffffffffffcp0)":
+Test "tgamma (-0xb.800000000000001p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.bfffffffffff8p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.bffffffffffffffffffffffffcp+4)":
ildouble: 3
ldouble: 3
-Test "tgamma (-0xbb.ffffffffffffffffffffffffff8p0)":
+Test "tgamma (-0xb.bffffffffffffffffffffffffff8p+4)":
ildouble: 4
ldouble: 4
-Test "tgamma (-0xbc.000000000000000000000000008p0)":
+Test "tgamma (-0xb.bffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.c000000000000000000000000008p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xbc.0000000000000000000000004p0)":
+Test "tgamma (-0xb.c0000000000000000000000004p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.c00000000000001p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.c000000000008p+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0xbc.00000000000001p0)":
+Test "tgamma (-0xb.c0001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.cfffffffffff8p+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0xbc.ffffffffffffffp0)":
+Test "tgamma (-0xb.cffffffffffffffffffffffffcp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xbd.000000000000000000000000008p0)":
+Test "tgamma (-0xb.cffffffffffffffffffffffffff8p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xbd.00000000000001p0)":
+Test "tgamma (-0xb.cffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.cffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.d000000000000000000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.d00000000000001p+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0xbd.ffffffffffffffp0)":
+Test "tgamma (-0xb.dfffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.dffffffffffffffp+4)":
ildouble: 2
ldouble: 2
-Test "tgamma (-0xbe.000000000000000000000000008p0)":
+Test "tgamma (-0xb.dffffp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xbe.0000000000000000000000004p0)":
+Test "tgamma (-0xb.e000000000000000000000000008p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xbe.ffffffffffffffffffffffffcp0)":
+Test "tgamma (-0xb.e000000000008p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.e0001p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xbe.ffffffffffffffp0)":
+Test "tgamma (-0xb.efffffffffff8p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xbf.000000000000000000000000008p0)":
+Test "tgamma (-0xb.effffffffffffffffffffffffff8p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xbf.0000000000000000000000004p0)":
+Test "tgamma (-0xb.effffffffffffffp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xbf.00000000000001p0)":
+Test "tgamma (-0xb.f000000000000000000000000008p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xf9.ffffffffffffffp0)":
+Test "tgamma (-0xb.f0000000000000000000000004p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-0xfa.000000000000000000000000008p0)":
+Test "tgamma (-0xb.f00000000000001p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-2.5)":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
+Test "tgamma (-0xb.f0001p+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-3.5)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
+Test "tgamma (-0xf.9fffffffffff8p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xf.9ffffffffffffffp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (-4.5)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
-Test "tgamma (-5.5)":
+Test "tgamma (-0xf.9ffffp+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xf.a000000000000000000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.a0000000000000000000000004p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xf.a000000000008p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xf.a0001p+4)":
+ildouble: 3
+ldouble: 3
+Test "tgamma (-0xf.ffffffffffff8p-4)":
double: 1
idouble: 1
-Test "tgamma (-6.5)":
+Test "tgamma (-0xf.fffffffffffffffffffffffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.fffffp-4)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "tgamma (-7.5)":
+Test "tgamma (0x1.28p+4)":
+double: 1
+idouble: 1
+Test "tgamma (0x1.38p+4)":
double: 2
-float: 1
idouble: 2
-ifloat: 1
-Test "tgamma (-8.5)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x1.78p+4)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "tgamma (-9.5)":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
-Test "tgamma (0.5)":
-float: 1
-ifloat: 1
-Test "tgamma (0.7)":
+Test "tgamma (0x1.d8p+4)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "tgamma (0x1.fffffep0)":
+Test "tgamma (0x1.fffffep+0)":
float: 1
ifloat: 1
-Test "tgamma (0x1.fffffffffffffffep0)":
+Test "tgamma (0x1.fffffffffffffffep+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x1.ffffffffffffffffffffffffffffp0)":
+Test "tgamma (0x1.ffffffffffffffffffffffffffffp+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x1.fffffffffffffp0)":
+Test "tgamma (0x1.fffffffffffffp+0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "tgamma (0x1p-113)":
-ildouble: 1
-ldouble: 1
Test "tgamma (0x1p-24)":
float: 1
ifloat: 1
-Test "tgamma (0x1p-53)":
+Test "tgamma (0x2.08p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x2.18p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x2.28p+4)":
double: 1
idouble: 1
Test "tgamma (0x2.30a43cp+4)":
@@ -8978,361 +11269,407 @@ double: 1
idouble: 1
ildouble: 2
ldouble: 2
-Test "tgamma (0x2.fffffcp0)":
+Test "tgamma (0x2.8p+0)":
+float: 2
+ifloat: 2
+Test "tgamma (0x2.fffffcp+0)":
float: 3
ifloat: 3
-Test "tgamma (0x2.ffffffffffffep0)":
+Test "tgamma (0x2.ffffffffffffep+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x3.0000000000002p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x3.0000000000002p0)":
+Test "tgamma (0x3.8p+0)":
+float: 2
+ifloat: 2
ildouble: 1
ldouble: 1
-Test "tgamma (0x3.fffffcp0)":
+Test "tgamma (0x3.fffffcp+0)":
float: 1
ifloat: 1
-Test "tgamma (0x3.ffffffffffffep0)":
+Test "tgamma (0x3.ffffffffffffep+0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "tgamma (0x3.fffffffffffffffcp0)":
+Test "tgamma (0x3.fffffffffffffffcp+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x3.fffffffffffffffffffffffffffep0)":
+Test "tgamma (0x3.fffffffffffffffffffffffffffep+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x4.0000000000000000000000000004p0)":
+Test "tgamma (0x3p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x4.0000000000000000000000000004p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x4.0000000000004p0)":
+Test "tgamma (0x4.0000000000004p+0)":
double: 1
idouble: 1
-Test "tgamma (0x4.000008p0)":
+Test "tgamma (0x4.000008p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x4.fffff8p0)":
+Test "tgamma (0x4.8p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-Test "tgamma (0x4.ffffffffffffcp0)":
+Test "tgamma (0x4.fffff8p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x4.ffffffffffffcp+0)":
double: 1
idouble: 1
-Test "tgamma (0x4.fffffffffffffffffffffffffep0)":
+Test "tgamma (0x4.fffffffffffffffffffffffffep+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x4.fffffffffffffffffffffffffffcp0)":
+Test "tgamma (0x4.fffffffffffffffffffffffffffcp+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x5.0000000000000000000000000004p0)":
+Test "tgamma (0x4p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x5.0000000000000000000000000004p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x5.0000000000004p0)":
+Test "tgamma (0x5.0000000000004p+0)":
double: 1
idouble: 1
-Test "tgamma (0x5.000008p0)":
+Test "tgamma (0x5.000008p+0)":
float: 3
ifloat: 3
-Test "tgamma (0x5.fffff8p0)":
+Test "tgamma (0x5.fffff8p+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "tgamma (0x5.ffffffffffffcp0)":
+Test "tgamma (0x5.ffffffffffffcp+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x5.fffffffffffffff8p0)":
+Test "tgamma (0x5.fffffffffffffff8p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x5.fffffffffffffffffffffffffep0)":
+Test "tgamma (0x5.fffffffffffffffffffffffffep+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x6.0000000000000000000000000004p0)":
+Test "tgamma (0x6.0000000000000000000000000004p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x6.0000000000000008p0)":
+Test "tgamma (0x6.0000000000000008p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x6.0000000000004p0)":
+Test "tgamma (0x6.0000000000004p+0)":
double: 1
idouble: 1
-Test "tgamma (0x6.000008p0)":
+Test "tgamma (0x6.000008p+0)":
float: 2
ifloat: 2
ildouble: 1
ldouble: 1
-Test "tgamma (0x6.fffff8p0)":
+Test "tgamma (0x6.8p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x6.db8c603359a94p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x6.fffff8p+0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "tgamma (0x6.ffffffffffffcp0)":
+Test "tgamma (0x6.ffffffffffffcp+0)":
double: 4
idouble: 4
-Test "tgamma (0x6.fffffffffffffff8p0)":
+Test "tgamma (0x6.fffffffffffffff8p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x7.0000000000000000000000000004p0)":
+Test "tgamma (0x6p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x7.0000000000000000000000000004p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x7.0000000000000008p0)":
+Test "tgamma (0x7.0000000000000008p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x7.0000000000004p0)":
+Test "tgamma (0x7.0000000000004p+0)":
double: 4
idouble: 4
-Test "tgamma (0x7.000008p0)":
+Test "tgamma (0x7.000008p+0)":
double: 1
idouble: 1
-Test "tgamma (0x7.fffff8p0)":
+Test "tgamma (0x7.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "tgamma (0x7.fffff8p+0)":
double: 2
float: 1
idouble: 2
ifloat: 1
-Test "tgamma (0x7.ffffffffffffcp0)":
+Test "tgamma (0x7.ffffffffffffcp+0)":
double: 2
idouble: 2
ildouble: 1
ldouble: 1
-Test "tgamma (0x7.fffffffffffffffffffffffffffcp0)":
+Test "tgamma (0x7.fffffffffffffffffffffffffffcp+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x8.0000000000000000000000000008p0)":
+Test "tgamma (0x7p+0)":
+double: 1
+idouble: 1
+Test "tgamma (0x8.0000000000000000000000000008p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x8.0000000000008p0)":
+Test "tgamma (0x8.0000000000008p+0)":
ildouble: 1
ldouble: 1
-Test "tgamma (0x8.00001p0)":
+Test "tgamma (0x8.00001p+0)":
double: 2
idouble: 2
-Test "tgamma (0xa.b9fd72b0fb238p+4)":
-double: 1
-idouble: 1
-ildouble: 1
-ldouble: 1
-Test "tgamma (0xa.b9fd72b0fb23a9ddbf0d3804f8p+4)":
-ildouble: 2
-ldouble: 2
-Test "tgamma (10)":
+Test "tgamma (0x8.8p+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "tgamma (18.5)":
+Test "tgamma (0x8p+0)":
double: 1
idouble: 1
-Test "tgamma (19.5)":
-double: 2
-idouble: 2
+Test "tgamma (0x8p-116)":
ildouble: 1
ldouble: 1
-Test "tgamma (2.5)":
-float: 2
-ifloat: 2
-Test "tgamma (23.5)":
-double: 1
+Test "tgamma (0x8p-4)":
float: 1
-idouble: 1
ifloat: 1
-Test "tgamma (29.5)":
+Test "tgamma (0x8p-56)":
double: 1
-float: 1
idouble: 1
-ifloat: 1
-Test "tgamma (3)":
+Test "tgamma (0x9.8p+0)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-Test "tgamma (3.5)":
-float: 2
-ifloat: 2
ildouble: 1
ldouble: 1
-Test "tgamma (32.5)":
+Test "tgamma (0x9p+0)":
+double: 1
+idouble: 1
+Test "tgamma (0xa.b9fd72b0fb238p+4)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "tgamma (33.5)":
+Test "tgamma (0xa.b9fd72b0fb23a9ddbf0d3804f8p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (0xa.b9fd72b0fb23a9dp+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (34.5)":
-double: 1
-idouble: 1
-Test "tgamma (4)":
-float: 1
-ifloat: 1
+Test "tgamma (0xa.b9fd72b0fb23a9ep+4)":
ildouble: 1
ldouble: 1
-Test "tgamma (4.5)":
+Test "tgamma (0xa.b9fd7p+4)":
+double: 2
+idouble: 2
+Test "tgamma (0xap+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "tgamma (6)":
-float: 1
-ifloat: 1
-Test "tgamma (6.5)":
+Test "tgamma (0xb.3333333333333333333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
+
+# y0
+Test "y0 (0x1.8p+0)":
+double: 2
float: 1
+idouble: 2
ifloat: 1
-Test "tgamma (7)":
+Test "y0 (0x1.ff00000000002p+840)":
double: 1
idouble: 1
-Test "tgamma (7.5)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0x1p+0)":
double: 2
float: 1
idouble: 2
ifloat: 1
-Test "tgamma (8)":
+Test "y0 (0x1p-100)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0x1p-20)":
double: 1
idouble: 1
-Test "tgamma (8.5)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0x1p-40)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "tgamma (9)":
-double: 1
-idouble: 1
-Test "tgamma (9.5)":
-double: 1
+Test "y0 (0x1p-60)":
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-
-# y0
-Test "y0 (0x1.3ffp+74)":
+Test "y0 (0x1p-80)":
double: 1
idouble: 1
-ildouble: 1
-ldouble: 1
-Test "y0 (0x1.ff00000000002p+840)":
+Test "y0 (0x2p+0)":
+double: 1
+idouble: 1
+Test "y0 (0x4.ffcp+72)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "y0 (0x1p-10)":
+Test "y0 (0x4p+16380)":
ildouble: 1
ldouble: 1
-Test "y0 (0x1p-110)":
+Test "y0 (0x4p-112)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
-Test "y0 (0x1p-20)":
-double: 1
-idouble: 1
-Test "y0 (0x1p-30)":
+Test "y0 (0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p-32)":
float: 1
ifloat: 1
ildouble: 2
ldouble: 2
-Test "y0 (0x1p-40)":
+Test "y0 (0x4p-72)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "y0 (0x1p-60)":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
-Test "y0 (0x1p-70)":
+Test "y0 (0x8p+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
-Test "y0 (0x1p-80)":
-double: 1
-idouble: 1
-Test "y0 (0x1p1023)":
-ildouble: 1
-ldouble: 1
-Test "y0 (0x1p16382)":
+ildouble: 3
+ldouble: 3
+Test "y0 (0x8p+1020)":
ildouble: 1
ldouble: 1
-Test "y0 (0x1p16383)":
+Test "y0 (0x8p+16380)":
ildouble: 2
ldouble: 2
-Test "y0 (1.0)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-Test "y0 (1.5)":
-double: 2
-float: 1
-idouble: 2
-ifloat: 1
-Test "y0 (10.0)":
+Test "y0 (0xap+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
ildouble: 3
ldouble: 3
-Test "y0 (2.0)":
+Test "y0 (0xf.ffffffffffff8p+1020)":
double: 1
idouble: 1
-Test "y0 (8.0)":
+Test "y0 (0xf.fffffp+124)":
double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 3
-ldouble: 3
# y1
-Test "y1 (0.125)":
-double: 1
-idouble: 1
-Test "y1 (0.75)":
+Test "y1 (0x1.8p+0)":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
-Test "y1 (0x1.001000001p+593)":
+Test "y1 (0x1p-100)":
ildouble: 1
ldouble: 1
-Test "y1 (0x1.27e204p+99)":
+Test "y1 (0x1p-20)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0x1p-80)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0x2.002000002p+592)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0x2p+0)":
double: 1
+float: 1
idouble: 1
-Test "y1 (0x1p-10)":
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "y1 (0x2p-4)":
double: 1
idouble: 1
+Test "y1 (0x4p-112)":
ildouble: 1
ldouble: 1
-Test "y1 (0x1p-30)":
+Test "y1 (0x4p-12)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "y1 (0x4p-32)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0x4p-72)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0x4p-92)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0x8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
ildouble: 1
ldouble: 1
-Test "y1 (0x1p1023)":
+Test "y1 (0x8p+1020)":
ildouble: 1
ldouble: 1
-Test "y1 (0x1p16383)":
+Test "y1 (0x8p+16380)":
ildouble: 2
ldouble: 2
-Test "y1 (1.5)":
-float: 1
-ifloat: 1
+Test "y1 (0x9.3f102p+96)":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
-Test "y1 (10.0)":
+Test "y1 (0xap+0)":
double: 3
float: 1
idouble: 3
ifloat: 1
-Test "y1 (2.0)":
-double: 1
-float: 1
-idouble: 1
-ifloat: 1
+Test "y1 (0xf.ffffffffffff8p+1020)":
ildouble: 1
ldouble: 1
-Test "y1 (8.0)":
-double: 1
-float: 2
-idouble: 1
-ifloat: 2
+Test "y1 (0xf.ffffffffffffbffffffffffffcp+1020)":
ildouble: 1
ldouble: 1
+Test "y1 (0xf.fffffp+124)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 2
+ldouble: 2
# yn
+Test "yn (-10, 1.0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "yn (0, 1.0)":
double: 2
float: 1
@@ -9397,9 +11734,9 @@ ildouble: 2
ldouble: 2
Test "yn (10, 0.75)":
double: 1
-float: 2
+float: 1
idouble: 1
-ifloat: 2
+ifloat: 1
ildouble: 5
ldouble: 5
Test "yn (10, 1.0)":
@@ -9409,7 +11746,9 @@ ildouble: 1
ldouble: 1
Test "yn (10, 10.0)":
double: 2
+float: 1
idouble: 2
+ifloat: 1
ildouble: 2
ldouble: 2
Test "yn (10, 2.0)":
@@ -9419,12 +11758,26 @@ idouble: 3
ifloat: 1
ildouble: 2
ldouble: 2
-Test "yn (3, 0.125)":
+Test "yn (2, 0x1.ffff62p+99)":
double: 1
idouble: 1
-Test "yn (3, 0.75)":
+Test "yn (2, 0x1p1023)":
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0x1p127)":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0x1p16383)":
+ildouble: 2
+ldouble: 2
+Test "yn (3, 0.125)":
+double: 1
+idouble: 1
+Test "yn (3, 0.75)":
ildouble: 2
ldouble: 2
Test "yn (3, 10.0)":
@@ -9440,22 +11793,22 @@ idouble: 1
# Maximal error of functions:
Function: "acos_downward":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "acos_towardzero":
-double: 1
float: 1
-idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "acos_upward":
+double: 1
+idouble: 1
+
+Function: "asin":
ildouble: 1
ldouble: 1
@@ -9467,17 +11820,23 @@ ifloat: 1
ildouble: 1
ldouble: 1
+Function: "asin_tonearest":
+ildouble: 1
+ldouble: 1
+
Function: "asin_towardzero":
-double: 1
float: 1
-idouble: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "asin_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "atan2":
float: 1
@@ -9498,9 +11857,9 @@ ildouble: 2
ldouble: 2
Function: Imaginary part of "cacos":
-double: 2
+double: 1
float: 2
-idouble: 2
+idouble: 1
ifloat: 2
ildouble: 2
ldouble: 2
@@ -9530,25 +11889,25 @@ ildouble: 2
ldouble: 2
Function: Imaginary part of "casin":
-double: 2
+double: 1
float: 2
-idouble: 2
+idouble: 1
ifloat: 2
ildouble: 2
ldouble: 2
Function: Real part of "casinh":
-double: 5
+double: 1
float: 2
-idouble: 5
+idouble: 1
ifloat: 2
-ildouble: 4
-ldouble: 4
+ildouble: 2
+ldouble: 2
Function: Imaginary part of "casinh":
-double: 3
+double: 1
float: 1
-idouble: 3
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
@@ -9568,9 +11927,9 @@ ildouble: 1
ldouble: 1
Function: Real part of "catanh":
-double: 4
+double: 1
float: 1
-idouble: 4
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -9583,7 +11942,9 @@ ldouble: 1
Function: "cbrt":
double: 1
+float: 1
idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -9668,52 +12029,68 @@ ildouble: 2
ldouble: 2
Function: "cos":
-double: 2
float: 1
-idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
Function: "cos_downward":
-float: 1
-ifloat: 1
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
ildouble: 2
ldouble: 2
Function: "cos_tonearest":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "cos_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 2
-ldouble: 2
+ildouble: 1
+ldouble: 1
Function: "cos_upward":
+double: 1
float: 2
+idouble: 1
ifloat: 2
+ildouble: 2
+ldouble: 2
+
+Function: "cosh":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Function: "cosh_downward":
-float: 1
-ifloat: 1
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Function: "cosh_tonearest":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Function: "cosh_towardzero":
-float: 1
-ifloat: 1
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Function: "cosh_upward":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
@@ -9726,9 +12103,7 @@ ildouble: 4
ldouble: 4
Function: Imaginary part of "cpow":
-double: 2
float: 2
-idouble: 2
ifloat: 2
ildouble: 1
ldouble: 1
@@ -9918,6 +12293,8 @@ ldouble: 2
Function: "erf":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Function: "erfc":
double: 1
@@ -9938,20 +12315,16 @@ ildouble: 1
ldouble: 1
Function: "exp_downward":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
+double: 1
+idouble: 1
Function: "exp_towardzero":
-float: 1
-ifloat: 1
-ildouble: 1
-ldouble: 1
+double: 1
+idouble: 1
Function: "exp_upward":
-float: 1
-ifloat: 1
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
@@ -9965,9 +12338,9 @@ ldouble: 1
Function: "gamma":
double: 1
-float: 2
+float: 1
idouble: 1
-ifloat: 2
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -10001,9 +12374,15 @@ ldouble: 8
Function: "lgamma":
double: 1
-float: 2
+float: 1
idouble: 1
-ifloat: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
+Function: "log":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -10016,6 +12395,8 @@ ildouble: 1
ldouble: 1
Function: "log1p":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -10049,12 +12430,20 @@ ifloat: 1
ildouble: 1
ldouble: 1
-Function: "sin_downward":
+Function: "sin":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Function: "sin_downward":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+
Function: "sin_tonearest":
float: 1
ifloat: 1
@@ -10062,16 +12451,20 @@ ildouble: 1
ldouble: 1
Function: "sin_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "sin_upward":
+double: 1
float: 2
+idouble: 1
ifloat: 2
-ildouble: 1
-ldouble: 1
+ildouble: 3
+ldouble: 3
Function: "sincos":
double: 1
@@ -10082,42 +12475,56 @@ ildouble: 1
ldouble: 1
Function: "sinh_downward":
-float: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Function: "sinh_towardzero":
-float: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Function: "sinh_upward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Function: "tan":
+ildouble: 1
+ldouble: 1
+
+Function: "tan_downward":
double: 1
+float: 2
idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
-Function: "tan_downward":
-float: 1
-ifloat: 1
+Function: "tan_tonearest":
ildouble: 1
ldouble: 1
Function: "tan_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "tan_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "tanh":
ildouble: 1
diff --git a/ports/sysdeps/aarch64/machine-gmon.h b/ports/sysdeps/aarch64/machine-gmon.h
index 4425965a48..5cc2941258 100644
--- a/ports/sysdeps/aarch64/machine-gmon.h
+++ b/ports/sysdeps/aarch64/machine-gmon.h
@@ -16,10 +16,9 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-/* GCC version 2 gives us a perfect magical function to get
- just the information we need:
- void *__builtin_return_address (unsigned int N)
- returns the return address of the frame N frames up. */
+/* Accept 'frompc' address as argument from the function that calls
+ __mcount for profiling. Use __builtin_return_address (0)
+ for the 'selfpc' address. */
#include <sysdep.h>
@@ -28,8 +27,8 @@ static void mcount_internal (u_long frompc, u_long selfpc);
#define _MCOUNT_DECL(frompc, selfpc) \
static inline void mcount_internal (u_long frompc, u_long selfpc)
-#define MCOUNT \
-void __mcount (void) \
-{ \
- mcount_internal ((u_long) RETURN_ADDRESS (1), (u_long) RETURN_ADDRESS (0)); \
+#define MCOUNT \
+void __mcount (void *frompc) \
+{ \
+ mcount_internal ((u_long) frompc, (u_long) RETURN_ADDRESS (0)); \
}
diff --git a/ports/sysdeps/alpha/alphaev67/ffs.S b/ports/sysdeps/alpha/alphaev67/ffs.S
index e4531525a7..9b3463cbc6 100644
--- a/ports/sysdeps/alpha/alphaev67/ffs.S
+++ b/ports/sysdeps/alpha/alphaev67/ffs.S
@@ -47,4 +47,5 @@ ENTRY(__ffs)
END(__ffs)
weak_alias (__ffs, ffs)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
diff --git a/ports/sysdeps/alpha/configure b/ports/sysdeps/alpha/configure
index 9c03229df2..0403c63fe6 100644
--- a/ports/sysdeps/alpha/configure
+++ b/ports/sysdeps/alpha/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/alpha.
# With required gcc+binutils, we can always access static and hidden
diff --git a/ports/sysdeps/alpha/configure.in b/ports/sysdeps/alpha/configure.ac
index eadc57afe3..eadc57afe3 100644
--- a/ports/sysdeps/alpha/configure.in
+++ b/ports/sysdeps/alpha/configure.ac
diff --git a/ports/sysdeps/alpha/ffs.S b/ports/sysdeps/alpha/ffs.S
index def0f25d77..d1f0c83719 100644
--- a/ports/sysdeps/alpha/ffs.S
+++ b/ports/sysdeps/alpha/ffs.S
@@ -85,6 +85,7 @@ $ffsl..ng:
END(ffsl)
weak_alias (__ffs, ffs)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
weak_extern (ffsl)
weak_alias (ffsl, ffsll)
diff --git a/ports/sysdeps/alpha/fpu/fegetround.c b/ports/sysdeps/alpha/fpu/fegetround.c
index aba657aebd..03a55ee7a7 100644
--- a/ports/sysdeps/alpha/fpu/fegetround.c
+++ b/ports/sysdeps/alpha/fpu/fegetround.c
@@ -28,3 +28,4 @@ fegetround (void)
return (fpcr >> FPCR_ROUND_SHIFT) & 3;
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/am33/fpu/fegetround.c b/ports/sysdeps/am33/fpu/fegetround.c
index b309c92e08..49cae00fd0 100644
--- a/ports/sysdeps/am33/fpu/fegetround.c
+++ b/ports/sysdeps/am33/fpu/fegetround.c
@@ -32,3 +32,4 @@ fegetround (void)
return (cw & ROUND_MASK);
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/arm/__longjmp.S b/ports/sysdeps/arm/__longjmp.S
index a5edede16d..894c121c0f 100644
--- a/ports/sysdeps/arm/__longjmp.S
+++ b/ports/sysdeps/arm/__longjmp.S
@@ -16,8 +16,6 @@
License along with the GNU C Library. If not, see
<http://www.gnu.org/licenses/>. */
-/* ??? Needs more rearrangement for the LDM to handle thumb mode. */
-#define NO_THUMB
#include <sysdep.h>
#include <bits/setjmp.h>
#include <rtld-global-offsets.h>
@@ -28,16 +26,32 @@
ENTRY (__longjmp)
mov ip, r0
movs r0, r1 /* get the return value in place */
+ it eq
moveq r0, #1 /* can't let setjmp() return zero! */
#ifdef CHECK_SP
sfi_breg ip, \
ldr r4, [\B, #32] /* jmpbuf's sp */
cfi_undefined (r4)
+#ifdef PTR_DEMANGLE
+ PTR_DEMANGLE (r4, r4, a3, a4)
+#endif
CHECK_SP (r4)
#endif
sfi_sp sfi_breg ip, \
ldmia \B!, JMP_BUF_REGLIST
+#ifdef PTR_DEMANGLE
+ PTR_DEMANGLE (fp, a4, a3, a2)
+ ldr a4, [ip], #4
+ PTR_DEMANGLE2 (a4, a4, a3)
+ mov sp, a4
+ ldr a4, [ip], #4
+ PTR_DEMANGLE2 (lr, a4, a3)
+#else
+ mov fp, a4
+ ldr sp, [ip], #4
+ ldr lr, [ip], #4
+#endif
cfi_restore (v1)
cfi_restore (v2)
cfi_restore (v3)
diff --git a/ports/sysdeps/arm/arm-features.h b/ports/sysdeps/arm/arm-features.h
index 1d4b0f1be9..336b6905af 100644
--- a/ports/sysdeps/arm/arm-features.h
+++ b/ports/sysdeps/arm/arm-features.h
@@ -53,14 +53,6 @@
# define ARM_BX_ALIGN_LOG2 2
#endif
-/* The number of instructions that 'bx' expands to. A more-specific
- arm-features.h that defines 'bx' as a macro should define this to the
- number instructions it expands to. This is used only in a context
- where the 'bx' expansion won't cross an ARM_BX_ALIGN_LOG2 boundary. */
-#ifndef ARM_BX_NINSNS
-# define ARM_BX_NINSNS 1
-#endif
-
/* An OS-specific arm-features.h file may define ARM_NO_INDEX_REGISTER to
indicate that the two-register addressing modes must never be used. */
diff --git a/ports/sysdeps/arm/armv6t2/ffs.S b/ports/sysdeps/arm/armv6t2/ffs.S
index b2c88b9460..9f999306ff 100644
--- a/ports/sysdeps/arm/armv6t2/ffs.S
+++ b/ports/sysdeps/arm/armv6t2/ffs.S
@@ -32,4 +32,5 @@ END (__ffs)
weak_alias (__ffs, ffs)
weak_alias (__ffs, ffsl)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
diff --git a/ports/sysdeps/arm/armv7/configure b/ports/sysdeps/arm/armv7/configure
index a879ffb5a7..46e5d52df4 100755..100644
--- a/ports/sysdeps/arm/armv7/configure
+++ b/ports/sysdeps/arm/armv7/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/arm/armv7.
# We need binutils 2.21 to ensure that NEON alignments are assembled correctly.
diff --git a/ports/sysdeps/arm/armv7/configure.in b/ports/sysdeps/arm/armv7/configure.ac
index 01e93ecd36..01e93ecd36 100644
--- a/ports/sysdeps/arm/armv7/configure.in
+++ b/ports/sysdeps/arm/armv7/configure.ac
diff --git a/ports/sysdeps/arm/armv7/multiarch/memcpy_impl.S b/ports/sysdeps/arm/armv7/multiarch/memcpy_impl.S
index 3decad60bc..44cecb02d4 100644
--- a/ports/sysdeps/arm/armv7/multiarch/memcpy_impl.S
+++ b/ports/sysdeps/arm/armv7/multiarch/memcpy_impl.S
@@ -24,7 +24,6 @@
ARMv6 (ARMv7-a if using Neon)
ARM state
Unaligned accesses
- LDRD/STRD support unaligned word accesses
*/
@@ -128,25 +127,26 @@
.purgem dispatch_step
.endm
#else
-# if ARM_BX_ALIGN_LOG2 < 4
+# if ARM_BX_ALIGN_LOG2 < 3
# error case not handled
# endif
.macro dispatch_helper steps, log2_bytes_per_step
- .p2align ARM_BX_ALIGN_LOG2
/* TMP1 gets (max_bytes - bytes_to_copy), where max_bytes is
(STEPS << LOG2_BYTES_PER_STEP).
- So this is (steps_to_skip << LOG2_BYTES_PER_STEP). */
- rsb tmp1, tmp1, #(\steps << \log2_bytes_per_step)
- /* Pad so that the add;bx pair immediately precedes an alignment
- boundary. Hence, TMP1=0 will run all the steps. */
- .rept (1 << (ARM_BX_ALIGN_LOG2 - 2)) - (2 + ARM_BX_NINSNS)
- nop
- .endr
+ So this is (steps_to_skip << LOG2_BYTES_PER_STEP).
+ Then it needs further adjustment to compensate for the
+ distance between the PC value taken below (0f + PC_OFS)
+ and the first step's instructions (1f). */
+ rsb tmp1, tmp1, #((\steps << \log2_bytes_per_step) \
+ + ((1f - PC_OFS - 0f) \
+ >> (ARM_BX_ALIGN_LOG2 - \log2_bytes_per_step)))
/* Shifting down LOG2_BYTES_PER_STEP gives us the number of
steps to skip, then shifting up ARM_BX_ALIGN_LOG2 gives us
the (byte) distance to add to the PC. */
- add tmp1, pc, tmp1, lsl #(ARM_BX_ALIGN_LOG2 - \log2_bytes_per_step)
+0: add tmp1, pc, tmp1, lsl #(ARM_BX_ALIGN_LOG2 - \log2_bytes_per_step)
bx tmp1
+ .p2align ARM_BX_ALIGN_LOG2
+1:
.endm
.macro dispatch_7_dword
@@ -369,8 +369,8 @@ ENTRY(memcpy)
cfi_adjust_cfa_offset (FRAME_SIZE)
cfi_rel_offset (tmp2, 0)
cfi_remember_state
- and tmp2, src, #3
- and tmp1, dst, #3
+ and tmp2, src, #7
+ and tmp1, dst, #7
cmp tmp1, tmp2
bne .Lcpy_notaligned
@@ -381,9 +381,9 @@ ENTRY(memcpy)
vmov.f32 s0, s0
#endif
- /* SRC and DST have the same mutual 32-bit alignment, but we may
+ /* SRC and DST have the same mutual 64-bit alignment, but we may
still need to pre-copy some bytes to get to natural alignment.
- We bring DST into full 64-bit alignment. */
+ We bring SRC and DST into full 64-bit alignment. */
lsls tmp2, dst, #29
beq 1f
rsbs tmp2, tmp2, #0
@@ -515,7 +515,7 @@ ENTRY(memcpy)
.Ltail63aligned: /* Count in tmp2. */
/* Copy up to 7 d-words of data. Similar to Ltail63unaligned, but
- we know that the src and dest are 32-bit aligned so we can use
+ we know that the src and dest are 64-bit aligned so we can use
LDRD/STRD to improve efficiency. */
/* TMP2 is now negative, but we don't care about that. The bottom
six bits still tell us how many bytes are left to copy. */
diff --git a/ports/sysdeps/arm/bits/atomic.h b/ports/sysdeps/arm/bits/atomic.h
index 6e20df741d..5e0801dd8e 100644
--- a/ports/sysdeps/arm/bits/atomic.h
+++ b/ports/sysdeps/arm/bits/atomic.h
@@ -35,9 +35,6 @@ typedef uintmax_t uatomic_max_t;
void __arm_link_error (void);
-/* Use the atomic builtins provided by GCC in case the backend provides
- a pattern to do this efficiently. */
-
#ifdef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4
# define atomic_full_barrier() __sync_synchronize ()
#else
@@ -51,9 +48,88 @@ void __arm_link_error (void);
# define __arm_assisted_full_barrier() __arm_link_error()
#endif
-/* Atomic compare and exchange. */
+/* Use the atomic builtins provided by GCC in case the backend provides
+ a pattern to do this efficiently. */
+#if __GNUC_PREREQ (4, 7) && defined __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4
-#ifdef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4
+# define atomic_exchange_acq(mem, value) \
+ __atomic_val_bysize (__arch_exchange, int, mem, value, __ATOMIC_ACQUIRE)
+
+# define atomic_exchange_rel(mem, value) \
+ __atomic_val_bysize (__arch_exchange, int, mem, value, __ATOMIC_RELEASE)
+
+/* Atomic exchange (without compare). */
+
+# define __arch_exchange_8_int(mem, newval, model) \
+ (__arm_link_error (), (typeof (*mem)) 0)
+
+# define __arch_exchange_16_int(mem, newval, model) \
+ (__arm_link_error (), (typeof (*mem)) 0)
+
+# define __arch_exchange_32_int(mem, newval, model) \
+ __atomic_exchange_n (mem, newval, model)
+
+# define __arch_exchange_64_int(mem, newval, model) \
+ (__arm_link_error (), (typeof (*mem)) 0)
+
+/* Compare and exchange with "acquire" semantics, ie barrier after. */
+
+# define atomic_compare_and_exchange_bool_acq(mem, new, old) \
+ __atomic_bool_bysize (__arch_compare_and_exchange_bool, int, \
+ mem, new, old, __ATOMIC_ACQUIRE)
+
+# define atomic_compare_and_exchange_val_acq(mem, new, old) \
+ __atomic_val_bysize (__arch_compare_and_exchange_val, int, \
+ mem, new, old, __ATOMIC_ACQUIRE)
+
+/* Compare and exchange with "release" semantics, ie barrier before. */
+
+# define atomic_compare_and_exchange_bool_rel(mem, new, old) \
+ __atomic_bool_bysize (__arch_compare_and_exchange_bool, int, \
+ mem, new, old, __ATOMIC_RELEASE)
+
+# define atomic_compare_and_exchange_val_rel(mem, new, old) \
+ __atomic_val_bysize (__arch_compare_and_exchange_val, int, \
+ mem, new, old, __ATOMIC_RELEASE)
+
+/* Compare and exchange.
+ For all "bool" routines, we return FALSE if exchange succesful. */
+
+# define __arch_compare_and_exchange_bool_8_int(mem, newval, oldval, model) \
+ ({__arm_link_error (); oldval; })
+
+# define __arch_compare_and_exchange_bool_16_int(mem, newval, oldval, model) \
+ ({__arm_link_error (); oldval; })
+
+# define __arch_compare_and_exchange_bool_32_int(mem, newval, oldval, model) \
+ ({ \
+ typeof (*mem) __oldval = (oldval); \
+ !__atomic_compare_exchange_n (mem, (void *) &__oldval, newval, 0, \
+ model, __ATOMIC_RELAXED); \
+ })
+
+# define __arch_compare_and_exchange_bool_64_int(mem, newval, oldval, model) \
+ ({__arm_link_error (); oldval; })
+
+# define __arch_compare_and_exchange_val_8_int(mem, newval, oldval, model) \
+ ({__arm_link_error (); oldval; })
+
+# define __arch_compare_and_exchange_val_16_int(mem, newval, oldval, model) \
+ ({__arm_link_error (); oldval; })
+
+# define __arch_compare_and_exchange_val_32_int(mem, newval, oldval, model) \
+ ({ \
+ typeof (*mem) __oldval = (oldval); \
+ __atomic_compare_exchange_n (mem, (void *) &__oldval, newval, 0, \
+ model, __ATOMIC_RELAXED); \
+ __oldval; \
+ })
+
+# define __arch_compare_and_exchange_val_64_int(mem, newval, oldval, model) \
+ ({__arm_link_error (); oldval; })
+
+#elif defined __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4
+/* Atomic compare and exchange. */
# define __arch_compare_and_exchange_val_32_acq(mem, newval, oldval) \
__sync_val_compare_and_swap ((mem), (oldval), (newval))
#else
@@ -61,16 +137,18 @@ void __arm_link_error (void);
__arm_assisted_compare_and_exchange_val_32_acq ((mem), (newval), (oldval))
#endif
+#if !__GNUC_PREREQ (4, 7) || !defined (__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
/* We don't support atomic operations on any non-word types.
So make them link errors. */
-#define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \
+# define __arch_compare_and_exchange_val_8_acq(mem, newval, oldval) \
({ __arm_link_error (); oldval; })
-#define __arch_compare_and_exchange_val_16_acq(mem, newval, oldval) \
+# define __arch_compare_and_exchange_val_16_acq(mem, newval, oldval) \
({ __arm_link_error (); oldval; })
-#define __arch_compare_and_exchange_val_64_acq(mem, newval, oldval) \
+# define __arch_compare_and_exchange_val_64_acq(mem, newval, oldval) \
({ __arm_link_error (); oldval; })
+#endif
/* An OS-specific bits/atomic.h file will define this macro if
the OS can provide something. If not, we'll fail to build
diff --git a/ports/sysdeps/arm/configure b/ports/sysdeps/arm/configure
index b84b3f69a9..d79ef76ec9 100644
--- a/ports/sysdeps/arm/configure
+++ b/ports/sysdeps/arm/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/arm.
#AC_DEFINE(PI_STATIC_AND_HIDDEN)
diff --git a/ports/sysdeps/arm/configure.in b/ports/sysdeps/arm/configure.ac
index d66500b3fd..d66500b3fd 100644
--- a/ports/sysdeps/arm/configure.in
+++ b/ports/sysdeps/arm/configure.ac
diff --git a/ports/sysdeps/arm/fegetround.c b/ports/sysdeps/arm/fegetround.c
index 78a3795b23..149a989518 100644
--- a/ports/sysdeps/arm/fegetround.c
+++ b/ports/sysdeps/arm/fegetround.c
@@ -37,3 +37,4 @@ fegetround (void)
/* The current soft-float implementation only handles TONEAREST. */
return FE_TONEAREST;
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/arm/include/bits/setjmp.h b/ports/sysdeps/arm/include/bits/setjmp.h
index 1559d7b8e6..64505dcb94 100644
--- a/ports/sysdeps/arm/include/bits/setjmp.h
+++ b/ports/sysdeps/arm/include/bits/setjmp.h
@@ -26,8 +26,9 @@
#ifndef _ISOMAC
/* Register list for a ldm/stm instruction to load/store
- the general registers from a __jmp_buf. */
-# define JMP_BUF_REGLIST {v1-v6, sl, fp, sp, lr}
+ the general registers from a __jmp_buf. The a4 register
+ contains fp at this point. */
+# define JMP_BUF_REGLIST {a4, v1-v6, sl}
/* Index of __jmp_buf where the sp register resides. */
# define __JMP_BUF_SP 8
diff --git a/ports/sysdeps/arm/jmpbuf-unwind.h b/ports/sysdeps/arm/jmpbuf-unwind.h
index 0863540ce0..1b0d0202e3 100644
--- a/ports/sysdeps/arm/jmpbuf-unwind.h
+++ b/ports/sysdeps/arm/jmpbuf-unwind.h
@@ -17,6 +17,7 @@
#include <setjmp.h>
#include <stdint.h>
+#include <sysdep.h>
#include <unwind.h>
/* Test if longjmp to JMPBUF would unwind the frame
@@ -27,8 +28,18 @@
#define _JMPBUF_CFA_UNWINDS_ADJ(_jmpbuf, _context, _adj) \
_JMPBUF_UNWINDS_ADJ (_jmpbuf, (void *) _Unwind_GetCFA (_context), _adj)
+static inline uintptr_t __attribute__ ((unused))
+_jmpbuf_sp (__jmp_buf regs)
+{
+ uintptr_t sp = regs[__JMP_BUF_SP];
+#ifdef PTR_DEMANGLE
+ PTR_DEMANGLE (sp);
+#endif
+ return sp;
+}
+
#define _JMPBUF_UNWINDS_ADJ(_jmpbuf, _address, _adj) \
- ((uintptr_t) (_address) - (_adj) < (uintptr_t) (_jmpbuf)[__JMP_BUF_SP] - (_adj))
+ ((uintptr_t) (_address) - (_adj) < _jmpbuf_sp (_jmpbuf) - (_adj))
/* We use the normal longjmp for unwinding. */
#define __libc_unwind_longjmp(buf, val) __libc_longjmp (buf, val)
diff --git a/ports/sysdeps/arm/nptl/tls.h b/ports/sysdeps/arm/nptl/tls.h
index e57cdb749e..da1502716c 100644
--- a/ports/sysdeps/arm/nptl/tls.h
+++ b/ports/sysdeps/arm/nptl/tls.h
@@ -119,10 +119,6 @@ typedef struct
#define THREAD_SETMEM_NC(descr, member, idx, value) \
descr->member[idx] = (value)
-/* Initializing the thread pointer will generate a SIGILL if the syscall
- is not available. */
-#define TLS_INIT_TP_EXPENSIVE 1
-
/* Get and set the global scope generation counter in struct pthread. */
#define THREAD_GSCOPE_FLAG_UNUSED 0
#define THREAD_GSCOPE_FLAG_USED 1
diff --git a/ports/sysdeps/arm/preconfigure b/ports/sysdeps/arm/preconfigure
index 908cd34303..b3124edae2 100644
--- a/ports/sysdeps/arm/preconfigure
+++ b/ports/sysdeps/arm/preconfigure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local preconfigure fragment for sysdeps/arm
case "$machine" in
@@ -8,7 +8,7 @@ arm*)
# If the compiler enables unwind tables by default, this causes
# problems with undefined symbols in -nostdlib link tests. To
# avoid this, add -fno-unwind-tables here and remove it in
- # sysdeps/unix/sysv/linux/arm/configure.in after those tests have
+ # sysdeps/unix/sysv/linux/arm/configure.ac after those tests have
# been run.
if test "${CFLAGS+set}" != "set"; then
CFLAGS="-g -O2"
diff --git a/ports/sysdeps/arm/preconfigure.in b/ports/sysdeps/arm/preconfigure.ac
index f8357955eb..39c86218aa 100644
--- a/ports/sysdeps/arm/preconfigure.in
+++ b/ports/sysdeps/arm/preconfigure.ac
@@ -8,7 +8,7 @@ arm*)
# If the compiler enables unwind tables by default, this causes
# problems with undefined symbols in -nostdlib link tests. To
# avoid this, add -fno-unwind-tables here and remove it in
- # sysdeps/unix/sysv/linux/arm/configure.in after those tests have
+ # sysdeps/unix/sysv/linux/arm/configure.ac after those tests have
# been run.
if test "${CFLAGS+set}" != "set"; then
CFLAGS="-g -O2"
diff --git a/ports/sysdeps/arm/setjmp.S b/ports/sysdeps/arm/setjmp.S
index a6c161db54..fedd994313 100644
--- a/ports/sysdeps/arm/setjmp.S
+++ b/ports/sysdeps/arm/setjmp.S
@@ -16,19 +16,32 @@
License along with the GNU C Library. If not, see
<http://www.gnu.org/licenses/>. */
-/* ??? Needs more rearrangement for the STM to handle thumb mode. */
-#define NO_THUMB
#include <sysdep.h>
#include <bits/setjmp.h>
#include <rtld-global-offsets.h>
#include <arm-features.h>
ENTRY (__sigsetjmp)
+#ifdef PTR_MANGLE
+ PTR_MANGLE (a4, fp, a3, ip)
+#else
+ mov a4, fp
+#endif
mov ip, r0
/* Save registers */
sfi_breg ip, \
stmia \B!, JMP_BUF_REGLIST
+#ifdef PTR_MANGLE
+ mov a4, sp
+ PTR_MANGLE2 (a4, a4, a3)
+ str a4, [ip], #4
+ PTR_MANGLE2 (a4, lr, a3)
+ str a4, [ip], #4
+#else
+ str sp, [ip], #4
+ str lr, [ip], #4
+#endif
#if !defined ARM_ASSUME_NO_IWMMXT || defined __SOFTFP__
# define NEED_HWCAP 1
diff --git a/ports/sysdeps/arm/sysdep.h b/ports/sysdeps/arm/sysdep.h
index 550159740b..3823617f13 100644
--- a/ports/sysdeps/arm/sysdep.h
+++ b/ports/sysdeps/arm/sysdep.h
@@ -171,6 +171,18 @@
99: OP R, [pc, T]
# endif
+/* Load or store to/from a global EXPR into/from R, using T. */
+# define LDST_GLOBAL(OP, R, T, EXPR) \
+ ldr T, 99f; \
+ ldr R, 100f; \
+98: add T, T, pc; \
+ ldr T, [T, R]; \
+ .subsection 2; \
+99: .word _GLOBAL_OFFSET_TABLE_ - 98b - PC_OFS; \
+100: .word EXPR##(GOT); \
+ .previous; \
+ OP R, [T]
+
/* Cope with negative memory offsets, which thumb can't encode.
Use NEGOFF_ADJ_BASE to (conditionally) alter the base register,
and then NEGOFF_OFF1 to use 0 for thumb and the offset for arm,
diff --git a/ports/sysdeps/hppa/configure b/ports/sysdeps/hppa/configure
index 762b668f48..d78e1bcd64 100644
--- a/ports/sysdeps/hppa/configure
+++ b/ports/sysdeps/hppa/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for assembler line separator" >&5
$as_echo_n "checking for assembler line separator... " >&6; }
diff --git a/ports/sysdeps/hppa/configure.in b/ports/sysdeps/hppa/configure.ac
index 40f33603e3..40f33603e3 100644
--- a/ports/sysdeps/hppa/configure.in
+++ b/ports/sysdeps/hppa/configure.ac
diff --git a/ports/sysdeps/hppa/dl-lookupcfg.h b/ports/sysdeps/hppa/dl-lookupcfg.h
index f3125e5ec6..feea320789 100644
--- a/ports/sysdeps/hppa/dl-lookupcfg.h
+++ b/ports/sysdeps/hppa/dl-lookupcfg.h
@@ -38,32 +38,36 @@ void _dl_unmap (struct link_map *map);
#define DL_UNMAP(map) _dl_unmap (map)
-#define DL_AUTO_FUNCTION_ADDRESS(map, addr) \
-({ \
- unsigned int fptr[2]; \
- fptr[0] = (unsigned int) (addr); \
- fptr[1] = (map)->l_info[DT_PLTGOT]->d_un.d_ptr; \
- /* Set bit 30 to indicate to $$dyncall that this is a PLABEL. */ \
- (ElfW(Addr))((unsigned int)fptr | 2); \
-})
-
-#define DL_STATIC_FUNCTION_ADDRESS(map, addr) \
-({ \
- static unsigned int fptr[2]; \
- fptr[0] = (unsigned int) (addr); \
- fptr[1] = (map)->l_info[DT_PLTGOT]->d_un.d_ptr; \
- /* Set bit 30 to indicate to $$dyncall that this is a PLABEL. */ \
- (ElfW(Addr))((unsigned int)fptr | 2); \
-})
-
-
-/* The test for "addr & 2" below is to accommodate old binaries which
- violated the ELF ABI by pointing DT_INIT and DT_FINI at a function
- descriptor. */
-#define DL_DT_INIT_ADDRESS(map, addr) \
- ((Elf32_Addr)(addr) & 2 ? (addr) : DL_AUTO_FUNCTION_ADDRESS (map, addr))
-#define DL_DT_FINI_ADDRESS(map, addr) \
- ((Elf32_Addr)(addr) & 2 ? (addr) : DL_AUTO_FUNCTION_ADDRESS (map, addr))
+#define DL_DT_FUNCTION_ADDRESS(map, start, attr, addr) \
+ attr volatile unsigned int fptr[2]; \
+ /* The test for "start & 2" below is to accommodate old binaries which \
+ violated the ELF ABI by pointing DT_INIT and DT_FINI at a function \
+ descriptor. */ \
+ if ((ElfW(Addr)) (start) & 2) \
+ addr = (ElfW(Addr)) start; \
+ else \
+ { \
+ fptr[0] = (unsigned int) (start); \
+ fptr[1] = (map)->l_info[DT_PLTGOT]->d_un.d_ptr; \
+ /* Set bit 30 to indicate to $$dyncall that this is a PLABEL. */ \
+ addr = (ElfW(Addr))((unsigned int)fptr | 2); \
+ } \
+
+#define DL_CALL_DT_INIT(map, start, argc, argv, env) \
+{ \
+ ElfW(Addr) addr; \
+ DL_DT_FUNCTION_ADDRESS(map, start, , addr) \
+ init_t init = (init_t) addr; \
+ init (argc, argv, env); \
+}
+
+#define DL_CALL_DT_FINI(map, start) \
+{ \
+ ElfW(Addr) addr; \
+ DL_DT_FUNCTION_ADDRESS(map, start, , addr) \
+ fini_t fini = (fini_t) addr; \
+ fini (); \
+}
/* The type of the return value of fixup/profile_fixup */
#define DL_FIXUP_VALUE_TYPE struct fdesc
diff --git a/ports/sysdeps/hppa/dl-machine.h b/ports/sysdeps/hppa/dl-machine.h
index d2411a654a..e47e9473e1 100644
--- a/ports/sysdeps/hppa/dl-machine.h
+++ b/ports/sysdeps/hppa/dl-machine.h
@@ -490,8 +490,12 @@ asm ( \
#define ELF_MACHINE_NO_REL 1
/* Return the address of the entry point. */
-#define ELF_MACHINE_START_ADDRESS(map, start) \
- DL_STATIC_FUNCTION_ADDRESS (map, start)
+#define ELF_MACHINE_START_ADDRESS(map, start) \
+({ \
+ ElfW(Addr) addr; \
+ DL_DT_FUNCTION_ADDRESS(map, start, static, addr) \
+ addr; \
+})
/* We define an initialization functions. This is called very early in
* _dl_sysdep_start. */
diff --git a/ports/sysdeps/hppa/fpu/fegetround.c b/ports/sysdeps/hppa/fpu/fegetround.c
index 67dd7c487a..3815fbd94c 100644
--- a/ports/sysdeps/hppa/fpu/fegetround.c
+++ b/ports/sysdeps/hppa/fpu/fegetround.c
@@ -24,3 +24,4 @@ fegetround (void)
{
return get_rounding_mode ();
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/ia64/configure b/ports/sysdeps/ia64/configure
index e1fe62d8c5..66b9bac153 100644
--- a/ports/sysdeps/ia64/configure
+++ b/ports/sysdeps/ia64/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/ia64.
$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
diff --git a/ports/sysdeps/ia64/configure.in b/ports/sysdeps/ia64/configure.ac
index 4ad04ff2f7..4ad04ff2f7 100644
--- a/ports/sysdeps/ia64/configure.in
+++ b/ports/sysdeps/ia64/configure.ac
diff --git a/ports/sysdeps/ia64/dl-lookupcfg.h b/ports/sysdeps/ia64/dl-lookupcfg.h
index 4da12635c8..cfaa2520b3 100644
--- a/ports/sysdeps/ia64/dl-lookupcfg.h
+++ b/ports/sysdeps/ia64/dl-lookupcfg.h
@@ -39,24 +39,28 @@ extern void _dl_unmap (struct link_map *map);
#define DL_UNMAP(map) _dl_unmap (map)
-#define DL_AUTO_FUNCTION_ADDRESS(map, addr) \
-({ \
- unsigned long int fptr[2]; \
- fptr[0] = (unsigned long int) (addr); \
- fptr[1] = (map)->l_info[DT_PLTGOT]->d_un.d_ptr; \
- (Elf64_Addr) fptr; \
-})
-
-#define DL_STATIC_FUNCTION_ADDRESS(map, addr) \
-({ \
- static unsigned long int fptr[2]; \
- fptr[0] = (unsigned long int) (addr); \
- fptr[1] = (map)->l_info[DT_PLTGOT]->d_un.d_ptr; \
- (Elf64_Addr) fptr; \
-})
-
-#define DL_DT_INIT_ADDRESS(map, addr) DL_AUTO_FUNCTION_ADDRESS (map, addr)
-#define DL_DT_FINI_ADDRESS(map, addr) DL_AUTO_FUNCTION_ADDRESS (map, addr)
+#define DL_DT_FUNCTION_ADDRESS(map, start, attr, addr) \
+ attr volatile unsigned long int fptr[2]; \
+ fptr[0] = (unsigned long int) (start); \
+ fptr[1] = (map)->l_info[DT_PLTGOT]->d_un.d_ptr; \
+ addr = (ElfW(Addr)) fptr; \
+
+#define DL_CALL_DT_INIT(map, start, argc, argv, env) \
+{ \
+ ElfW(Addr) addr; \
+ DL_DT_FUNCTION_ADDRESS(map, start, , addr) \
+ init_t init = (init_t) addr; \
+ init (argc, argv, env); \
+}
+
+#define DL_CALL_DT_FINI(map, start) \
+{ \
+ ElfW(Addr) addr; \
+ DL_DT_FUNCTION_ADDRESS(map, start, , addr) \
+ fini_t fini = (fini_t) addr; \
+ fini (); \
+}
+
/* The type of the return value of fixup/profile_fixup. */
#define DL_FIXUP_VALUE_TYPE struct fdesc
/* Construct a value of type DL_FIXUP_VALUE_TYPE from a code address
diff --git a/ports/sysdeps/ia64/dl-machine.h b/ports/sysdeps/ia64/dl-machine.h
index dd469d7a73..61236378fe 100644
--- a/ports/sysdeps/ia64/dl-machine.h
+++ b/ports/sysdeps/ia64/dl-machine.h
@@ -322,8 +322,12 @@ elf_machine_runtime_setup (struct link_map *l, int lazy, int profile)
#define ELF_MACHINE_NO_REL 1
/* Return the address of the entry point. */
-#define ELF_MACHINE_START_ADDRESS(map, start) \
- DL_STATIC_FUNCTION_ADDRESS (map, start)
+#define ELF_MACHINE_START_ADDRESS(map, start) \
+({ \
+ ElfW(Addr) addr; \
+ DL_DT_FUNCTION_ADDRESS(map, start, static, addr) \
+ addr; \
+})
/* Fixup a PLT entry to bounce directly to the function at VALUE. */
static inline struct fdesc __attribute__ ((always_inline))
diff --git a/ports/sysdeps/ia64/fpu/fegetround.c b/ports/sysdeps/ia64/fpu/fegetround.c
index 5c9b34338c..f6dfea7276 100644
--- a/ports/sysdeps/ia64/fpu/fegetround.c
+++ b/ports/sysdeps/ia64/fpu/fegetround.c
@@ -24,3 +24,4 @@ fegetround (void)
{
return get_rounding_mode ();
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/ia64/fpu/printf_fphex.c b/ports/sysdeps/ia64/fpu/printf_fphex.c
index ca021427ec..0698cdad10 100644
--- a/ports/sysdeps/ia64/fpu/printf_fphex.c
+++ b/ports/sysdeps/ia64/fpu/printf_fphex.c
@@ -25,9 +25,11 @@ do { \
/* The "strange" 80 bit format on ia64 has an explicit \
leading digit in the 64 bit mantissa. */ \
unsigned long long int num; \
+ union ieee854_long_double u; \
+ u.d = fpnum.ldbl; \
\
- num = (((unsigned long long int) fpnum.ldbl.ieee.mantissa0) << 32 \
- | fpnum.ldbl.ieee.mantissa1); \
+ num = (((unsigned long long int) u.ieee.mantissa0) << 32 \
+ | u.ieee.mantissa1); \
\
zero_mantissa = num == 0; \
\
@@ -49,8 +51,8 @@ do { \
\
/* We have 3 bits from the mantissa in the leading nibble. \
Therefore we are here using `IEEE854_LONG_DOUBLE_BIAS + 3'. */ \
- exponent = fpnum.ldbl.ieee.exponent; \
- \
+ exponent = u.ieee.exponent; \
+ \
if (exponent == 0) \
{ \
if (zero_mantissa) \
diff --git a/ports/sysdeps/ia64/stackguard-macros.h b/ports/sysdeps/ia64/stackguard-macros.h
index dc683c28c5..390729327a 100644
--- a/ports/sysdeps/ia64/stackguard-macros.h
+++ b/ports/sysdeps/ia64/stackguard-macros.h
@@ -2,3 +2,6 @@
#define STACK_CHK_GUARD \
({ uintptr_t x; asm ("adds %0 = -8, r13;; ld8 %0 = [%0]" : "=r" (x)); x; })
+
+#define POINTER_CHK_GUARD \
+ ({ uintptr_t x; asm ("adds %0 = -16, r13;; ld8 %0 = [%0]" : "=r" (x)); x; })
diff --git a/ports/sysdeps/m68k/ffs.c b/ports/sysdeps/m68k/ffs.c
index fd4e5ffaed..a3c1a0d02b 100644
--- a/ports/sysdeps/m68k/ffs.c
+++ b/ports/sysdeps/m68k/ffs.c
@@ -36,6 +36,7 @@ __ffs (x)
return 32 - cnt;
}
weak_alias (__ffs, ffs)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
#undef ffsl
weak_alias (__ffs, ffsl)
diff --git a/ports/sysdeps/m68k/fpu/fegetround.c b/ports/sysdeps/m68k/fpu/fegetround.c
index f1227fe593..54fa7df896 100644
--- a/ports/sysdeps/m68k/fpu/fegetround.c
+++ b/ports/sysdeps/m68k/fpu/fegetround.c
@@ -28,3 +28,4 @@ fegetround (void)
return fpcr & FE_UPWARD;
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c b/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c
index 9a03b78631..03c136bb08 100644
--- a/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c
+++ b/ports/sysdeps/m68k/m680x0/fpu/s_nextafterl.c
@@ -46,7 +46,8 @@ long double __nextafterl(long double x, long double y)
if((ix|hx|lx)==0) { /* x == 0 */
SET_LDOUBLE_WORDS(x,esy&0x8000,0,1);/* return +-minsubnormal */
y = x*x;
- if(y==x) return y; else return x; /* raise underflow flag */
+ math_force_eval (y); /* raise underflow flag */
+ return x;
}
if(esx>=0) { /* x > 0 */
if(esx>esy||((esx==esy) && (hx>hy||((hx==hy)&&(lx>ly))))) {
@@ -91,10 +92,7 @@ long double __nextafterl(long double x, long double y)
if(esy==0x7fff) return x+x; /* overflow */
if(esy==0 && (hx & 0x80000000) == 0) { /* underflow */
y = x*x;
- if(y!=x) { /* raise underflow flag */
- SET_LDOUBLE_WORDS(y,esx,hx,lx);
- return y;
- }
+ math_force_eval (y); /* raise underflow flag */
}
SET_LDOUBLE_WORDS(x,esx,hx,lx);
return x;
diff --git a/ports/sysdeps/m68k/start.S b/ports/sysdeps/m68k/start.S
index a09896fdc0..c3ceee6fa6 100644
--- a/ports/sysdeps/m68k/start.S
+++ b/ports/sysdeps/m68k/start.S
@@ -52,6 +52,8 @@
NULL
*/
+#include <sysdep.h>
+
.text
.globl _start
.type _start,@function
@@ -74,6 +76,24 @@ _start:
pea (%a1) /* Push address of the shared library
termination function. */
+#ifdef SHARED
+ /* Load PIC register. */
+ LOAD_GOT (%a5)
+
+ /* Push the address of our own entry points to `.fini' and
+ `.init'. */
+ move.l __libc_csu_fini@GOT(%a5), -(%sp)
+ move.l __libc_csu_init@GOT(%a5), -(%sp)
+
+ pea (%a0) /* Push second argument: argv. */
+ move.l %d0, -(%sp) /* Push first argument: argc. */
+
+ move.l main@GOT(%a5), -(%sp)
+
+ /* Call the user's main function, and exit with its value. But
+ let the libc call main. */
+ jbsr __libc_start_main@PLTPC
+#else
/* Push the address of our own entry points to `.fini' and
`.init'. */
pea __libc_csu_fini
@@ -87,6 +107,7 @@ _start:
/* Call the user's main function, and exit with its value. But
let the libc call main. */
jbsr __libc_start_main
+#endif
illegal /* Crash if somehow `exit' does return. */
diff --git a/ports/sysdeps/microblaze/fegetround.c b/ports/sysdeps/microblaze/fegetround.c
index 4f47dd1fef..b1039e8651 100644
--- a/ports/sysdeps/microblaze/fegetround.c
+++ b/ports/sysdeps/microblaze/fegetround.c
@@ -22,3 +22,4 @@ fegetround (void)
{
return FE_TONEAREST;
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/mips/bits/atomic.h b/ports/sysdeps/mips/bits/atomic.h
index 7c735f7262..b31444f575 100644
--- a/ports/sysdeps/mips/bits/atomic.h
+++ b/ports/sysdeps/mips/bits/atomic.h
@@ -84,7 +84,7 @@ typedef uintmax_t uatomic_max_t;
support for their efficient implementation was added only in GCC 4.8.
We still want to use them even with GCC 4.7 for MIPS16 code where we
have no assembly alternative available and want to avoid the __sync_*
- if at all possible. */
+ builtins if at all possible. */
/* Compare and exchange.
For all "bool" routines, we return FALSE if exchange succesful. */
diff --git a/ports/sysdeps/mips/bits/nan.h b/ports/sysdeps/mips/bits/nan.h
index 80f7866a97..c322523275 100644
--- a/ports/sysdeps/mips/bits/nan.h
+++ b/ports/sysdeps/mips/bits/nan.h
@@ -22,10 +22,11 @@
/* IEEE Not A Number. */
-/* Note that MIPS has the qNaN and sNaN patterns reversed compared to most
- other architectures. IEEE 754-1985 left the definition of this open to
- implementations, and for MIPS the top bit of the mantissa must be SET to
- indicate a sNaN. */
+/* In legacy-NaN mode MIPS has the qNaN and sNaN patterns reversed
+ compared to most other architectures. IEEE 754-1985 left the
+ definition of this open to implementations, and for MIPS the top bit
+ of the mantissa must be SET to indicate a sNaN. In 2008-NaN mode
+ MIPS aligned to IEEE 754-2008. */
#if __GNUC_PREREQ(3,3)
@@ -33,6 +34,8 @@
#elif defined __GNUC__
+/* No 2008-NaN mode support in any GCC version before 4.9. */
+
# define NAN \
(__extension__ \
((union { unsigned __l __attribute__ ((__mode__ (__SI__))); float __d; }) \
@@ -43,10 +46,18 @@
# include <endian.h>
# if __BYTE_ORDER == __BIG_ENDIAN
-# define __qnan_bytes { 0x7f, 0xbf, 0xff, 0xff }
+# ifdef __mips_nan2008
+# define __qnan_bytes { 0x7f, 0xc0, 0, 0 }
+# else
+# define __qnan_bytes { 0x7f, 0xbf, 0xff, 0xff }
+# endif
# endif
# if __BYTE_ORDER == __LITTLE_ENDIAN
-# define __qnan_bytes { 0xff, 0xff, 0xbf, 0x7f }
+# ifdef __mips_nan2008
+# define __qnan_bytes { 0, 0, 0xc0, 0x7f }
+# else
+# define __qnan_bytes { 0xff, 0xff, 0xbf, 0x7f }
+# endif
# endif
static union { unsigned char __c[4]; float __d; } __qnan_union
diff --git a/ports/sysdeps/mips/configure b/ports/sysdeps/mips/configure
index 898e4c3f20..f3f5d2e00d 100644
--- a/ports/sysdeps/mips/configure
+++ b/ports/sysdeps/mips/configure
@@ -1,3 +1,163 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/mips.
+
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
+if ${ac_cv_path_GREP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$GREP"; then
+ ac_path_GREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in grep ggrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+# Check for GNU ac_path_GREP and select it if it is found.
+ # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'GREP' >> "conftest.nl"
+ "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_GREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_GREP="$ac_path_GREP"
+ ac_path_GREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_GREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_GREP"; then
+ as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
+else
+ ac_cv_path_GREP=$GREP
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+$as_echo "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+$as_echo_n "checking for egrep... " >&6; }
+if ${ac_cv_path_EGREP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ if test -z "$EGREP"; then
+ ac_path_EGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in egrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+ # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'EGREP' >> "conftest.nl"
+ "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_EGREP="$ac_path_EGREP"
+ ac_path_EGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_EGREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_EGREP"; then
+ as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
+else
+ ac_cv_path_EGREP=$EGREP
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+$as_echo "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler is using the 2008 NaN encoding" >&5
+$as_echo_n "checking whether the compiler is using the 2008 NaN encoding... " >&6; }
+if ${libc_cv_mips_nan2008+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+dnl
+#ifdef __mips_nan2008
+yes
+#endif
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "yes" >/dev/null 2>&1; then :
+ libc_cv_mips_nan2008=yes
+else
+ libc_cv_mips_nan2008=no
+fi
+rm -f conftest*
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mips_nan2008" >&5
+$as_echo "$libc_cv_mips_nan2008" >&6; }
+if test x$libc_cv_mips_nan2008 = xyes; then
+ $as_echo "#define HAVE_MIPS_NAN2008 1" >>confdefs.h
+
+fi
diff --git a/ports/sysdeps/mips/configure.ac b/ports/sysdeps/mips/configure.ac
new file mode 100644
index 0000000000..bcbdaffd9f
--- /dev/null
+++ b/ports/sysdeps/mips/configure.ac
@@ -0,0 +1,15 @@
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/mips.
+
+dnl No MIPS GCC supports accessing static and hidden symbols in an
+dnl position independent way.
+dnl AC_DEFINE(PI_STATIC_AND_HIDDEN)
+
+AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
+ libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
+#ifdef __mips_nan2008
+yes
+#endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
+if test x$libc_cv_mips_nan2008 = xyes; then
+ AC_DEFINE(HAVE_MIPS_NAN2008)
+fi
diff --git a/ports/sysdeps/mips/configure.in b/ports/sysdeps/mips/configure.in
deleted file mode 100644
index be9672d823..0000000000
--- a/ports/sysdeps/mips/configure.in
+++ /dev/null
@@ -1,6 +0,0 @@
-GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
-# Local configure fragment for sysdeps/mips.
-
-dnl No MIPS GCC supports accessing static and hidden symbols in an
-dnl position independent way.
-dnl AC_DEFINE(PI_STATIC_AND_HIDDEN)
diff --git a/ports/sysdeps/mips/dl-lookup.c b/ports/sysdeps/mips/dl-lookup.c
index 6d8f744246..2b7bf15cde 100644
--- a/ports/sysdeps/mips/dl-lookup.c
+++ b/ports/sysdeps/mips/dl-lookup.c
@@ -113,8 +113,7 @@ do_lookup_x (const char *undef_name, uint_fast32_t new_hash,
/* Print some debugging info if wanted. */
if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_SYMBOLS, 0))
_dl_debug_printf ("symbol=%s; lookup in file=%s [%lu]\n",
- undef_name,
- DSO_FILENAME (map->l_name),
+ undef_name, DSO_FILENAME (map->l_name),
map->l_ns);
/* If the hash table is empty there is nothing to do here. */
@@ -764,7 +763,7 @@ _dl_lookup_symbol_x (const char *undef_name, struct link_map *undef_map,
contain the needed symbol. This code is never reached
for unversioned lookups. */
assert (version != NULL);
- const char *reference_name = undef_map ? undef_map->l_name : NULL;
+ const char *reference_name = undef_map ? undef_map->l_name : "";
/* XXX We cannot translate the message. */
_dl_signal_cerror (0, DSO_FILENAME (reference_name),
diff --git a/ports/sysdeps/mips/dl-machine.h b/ports/sysdeps/mips/dl-machine.h
index dae938f039..722c8a0ba8 100644
--- a/ports/sysdeps/mips/dl-machine.h
+++ b/ports/sysdeps/mips/dl-machine.h
@@ -73,6 +73,16 @@ do { if ((l)->l_info[DT_MIPS (RLD_MAP)]) \
(ElfW(Addr)) (r); \
} while (0)
+#if ((defined __mips_nan2008 && !defined HAVE_MIPS_NAN2008) \
+ || (!defined __mips_nan2008 && defined HAVE_MIPS_NAN2008))
+# error "Configuration inconsistency: __mips_nan2008 != HAVE_MIPS_NAN2008, overridden CFLAGS?"
+#endif
+#ifdef __mips_nan2008
+# define ELF_MACHINE_NAN2008 EF_MIPS_NAN2008
+#else
+# define ELF_MACHINE_NAN2008 0
+#endif
+
/* Return nonzero iff ELF header is compatible with the running host. */
static inline int __attribute_used__
elf_machine_matches_host (const ElfW(Ehdr) *ehdr)
@@ -83,6 +93,10 @@ elf_machine_matches_host (const ElfW(Ehdr) *ehdr)
return 0;
#endif
+ /* Don't link 2008-NaN and legacy-NaN objects together. */
+ if ((ehdr->e_flags & EF_MIPS_NAN2008) != ELF_MACHINE_NAN2008)
+ return 0;
+
switch (ehdr->e_machine)
{
case EM_MIPS:
diff --git a/ports/sysdeps/mips/fpu/fegetround.c b/ports/sysdeps/mips/fpu/fegetround.c
index 61217a7c08..011d27f295 100644
--- a/ports/sysdeps/mips/fpu/fegetround.c
+++ b/ports/sysdeps/mips/fpu/fegetround.c
@@ -28,5 +28,6 @@ fegetround (void)
/* Get control word. */
_FPU_GETCW (cw);
- return cw & 0x3;
+ return cw & _FPU_RC_MASK;
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/mips/fpu/fesetround.c b/ports/sysdeps/mips/fpu/fesetround.c
index 7c25f43b79..c6fdd6622f 100644
--- a/ports/sysdeps/mips/fpu/fesetround.c
+++ b/ports/sysdeps/mips/fpu/fesetround.c
@@ -25,7 +25,7 @@ fesetround (int round)
{
fpu_control_t cw;
- if ((round & ~0x3) != 0)
+ if ((round & ~_FPU_RC_MASK) != 0)
/* ROUND is no valid rounding mode. */
return 1;
@@ -33,7 +33,7 @@ fesetround (int round)
_FPU_GETCW (cw);
/* Set rounding bits. */
- cw &= ~0x3;
+ cw &= ~_FPU_RC_MASK;
cw |= round;
/* Set new state. */
_FPU_SETCW (cw);
diff --git a/ports/sysdeps/mips/fpu_control.h b/ports/sysdeps/mips/fpu_control.h
index 770cbb31d8..ee774153f2 100644
--- a/ports/sysdeps/mips/fpu_control.h
+++ b/ports/sysdeps/mips/fpu_control.h
@@ -29,7 +29,9 @@
* available for MIPS III and newer.
* 23 -> Condition bit
* 22-21 -> reserved for architecture implementers
- * 20-18 -> reserved (read as 0, write with 0)
+ * 20 -> reserved (read as 0, write with 0)
+ * 19 -> IEEE 754-2008 non-arithmetic ABS.fmt and NEG.fmt enable
+ * 18 -> IEEE 754-2008 recommended NaN encoding enable
* 17 -> cause bit for unimplemented operation
* 16 -> cause bit for invalid exception
* 15 -> cause bit for division by zero exception
@@ -69,32 +71,45 @@ extern fpu_control_t __fpu_control;
#else /* __mips_soft_float */
-/* masking of interrupts */
+/* Masks for interrupts. */
#define _FPU_MASK_V 0x0800 /* Invalid operation */
#define _FPU_MASK_Z 0x0400 /* Division by zero */
#define _FPU_MASK_O 0x0200 /* Overflow */
#define _FPU_MASK_U 0x0100 /* Underflow */
#define _FPU_MASK_I 0x0080 /* Inexact operation */
-/* flush denormalized numbers to zero */
+/* Flush denormalized numbers to zero. */
#define _FPU_FLUSH_TZ 0x1000000
-/* rounding control */
+/* IEEE 754-2008 compliance control. */
+#define _FPU_ABS2008 0x80000
+#define _FPU_NAN2008 0x40000
+
+/* Rounding control. */
#define _FPU_RC_NEAREST 0x0 /* RECOMMENDED */
#define _FPU_RC_ZERO 0x1
#define _FPU_RC_UP 0x2
#define _FPU_RC_DOWN 0x3
+/* Mask for rounding control. */
+#define _FPU_RC_MASK 0x3
-#define _FPU_RESERVED 0xfe9c0000 /* Reserved bits in cw */
+#define _FPU_RESERVED 0xfe840000 /* Reserved bits in cw, incl NAN2008. */
/* The fdlibm code requires strict IEEE double precision arithmetic,
and no interrupts for exceptions, rounding to nearest. */
+#ifdef __mips_nan2008
+# define _FPU_DEFAULT 0x00040000
+#else
+# define _FPU_DEFAULT 0x00000000
+#endif
-#define _FPU_DEFAULT 0x00000000
-
-/* IEEE: same as above, but exceptions */
-#define _FPU_IEEE 0x00000F80
+/* IEEE: same as above, but exceptions. */
+#ifdef __mips_nan2008
+# define _FPU_IEEE 0x00040F80
+#else
+# define _FPU_IEEE 0x00000F80
+#endif
/* Type of the control word. */
typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__)));
diff --git a/ports/sysdeps/mips/math_private.h b/ports/sysdeps/mips/math_private.h
index f0ba4ee706..4f029b0a6c 100644
--- a/ports/sysdeps/mips/math_private.h
+++ b/ports/sysdeps/mips/math_private.h
@@ -18,9 +18,121 @@
#ifndef _MATH_PRIVATE_H
+#ifdef __mips_nan2008
+/* MIPS aligned to IEEE 754-2008. */
+#else
/* One of the few architectures where the meaning of the quiet/signaling bit is
inverse to IEEE 754-2008 (as well as common practice for IEEE 754-1985). */
-#define HIGH_ORDER_BIT_IS_SET_FOR_SNAN
+# define HIGH_ORDER_BIT_IS_SET_FOR_SNAN
+#endif
+
+/* Inline functions to speed up the math library implementation. The
+ default versions of these routines are in generic/math_private.h
+ and call fesetround, feholdexcept, etc. These routines use inlined
+ code instead. */
+
+#ifdef __mips_hard_float
+
+# include <fenv.h>
+# include <fenv_libc.h>
+# include <fpu_control.h>
+
+static __always_inline void
+libc_feholdexcept_mips (fenv_t *envp)
+{
+ fpu_control_t cw;
+
+ /* Save the current state. */
+ _FPU_GETCW (cw);
+ envp->__fp_control_register = cw;
+
+ /* Clear all exception enable bits and flags. */
+ cw &= ~(_FPU_MASK_V|_FPU_MASK_Z|_FPU_MASK_O|_FPU_MASK_U|_FPU_MASK_I|FE_ALL_EXCEPT);
+ _FPU_SETCW (cw);
+}
+# define libc_feholdexcept libc_feholdexcept_mips
+# define libc_feholdexceptf libc_feholdexcept_mips
+# define libc_feholdexceptl libc_feholdexcept_mips
+
+static __always_inline void
+libc_fesetround_mips (int round)
+{
+ fpu_control_t cw;
+
+ /* Get current state. */
+ _FPU_GETCW (cw);
+
+ /* Set rounding bits. */
+ cw &= ~_FPU_RC_MASK;
+ cw |= round;
+
+ /* Set new state. */
+ _FPU_SETCW (cw);
+}
+# define libc_fesetround libc_fesetround_mips
+# define libc_fesetroundf libc_fesetround_mips
+# define libc_fesetroundl libc_fesetround_mips
+
+static __always_inline void
+libc_feholdexcept_setround_mips (fenv_t *envp, int round)
+{
+ fpu_control_t cw;
+
+ /* Save the current state. */
+ _FPU_GETCW (cw);
+ envp->__fp_control_register = cw;
+
+ /* Clear all exception enable bits and flags. */
+ cw &= ~(_FPU_MASK_V|_FPU_MASK_Z|_FPU_MASK_O|_FPU_MASK_U|_FPU_MASK_I|FE_ALL_EXCEPT);
+
+ /* Set rounding bits. */
+ cw &= ~_FPU_RC_MASK;
+ cw |= round;
+
+ /* Set new state. */
+ _FPU_SETCW (cw);
+}
+# define libc_feholdexcept_setround libc_feholdexcept_setround_mips
+# define libc_feholdexcept_setroundf libc_feholdexcept_setround_mips
+# define libc_feholdexcept_setroundl libc_feholdexcept_setround_mips
+
+static __always_inline void
+libc_fesetenv_mips (fenv_t *envp)
+{
+ fpu_control_t cw;
+
+ /* Read current state to flush fpu pipeline. */
+ _FPU_GETCW (cw);
+
+ _FPU_SETCW (envp->__fp_control_register);
+}
+# define libc_fesetenv libc_fesetenv_mips
+# define libc_fesetenvf libc_fesetenv_mips
+# define libc_fesetenvl libc_fesetenv_mips
+
+static __always_inline void
+libc_feupdateenv_mips (fenv_t *envp)
+{
+ int temp;
+
+ /* Save current exceptions. */
+ _FPU_GETCW (temp);
+
+ /* Set flag bits (which are accumulative), and *also* set the
+ cause bits. The setting of the cause bits is what actually causes
+ the hardware to generate the exception, if the corresponding enable
+ bit is set as well. */
+ temp &= FE_ALL_EXCEPT;
+ temp |= envp->__fp_control_register | (temp << CAUSE_SHIFT);
+
+ /* Set new state. */
+ _FPU_SETCW (temp);
+}
+# define libc_feupdateenv libc_feupdateenv_mips
+# define libc_feupdateenvf libc_feupdateenv_mips
+# define libc_feupdateenvl libc_feupdateenv_mips
+
+#endif
#include_next <math_private.h>
diff --git a/ports/sysdeps/mips/memset.S b/ports/sysdeps/mips/memset.S
index 85062fe2e2..d30b1f0e64 100644
--- a/ports/sysdeps/mips/memset.S
+++ b/ports/sysdeps/mips/memset.S
@@ -1,6 +1,5 @@
-/* Copyright (C) 2002-2013 Free Software Foundation, Inc.
+/* Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Hartvig Ekner <hartvige@mips.com>, 2002.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
@@ -16,70 +15,353 @@
License along with the GNU C Library. If not, see
<http://www.gnu.org/licenses/>. */
-#include <sysdep.h>
+#ifdef ANDROID_CHANGES
+# include "machine/asm.h"
+# include "machine/regdef.h"
+# define PREFETCH_STORE_HINT PREFETCH_HINT_PREPAREFORSTORE
+#elif _LIBC
+# include <sysdep.h>
+# include <regdef.h>
+# include <sys/asm.h>
+# define PREFETCH_STORE_HINT PREFETCH_HINT_PREPAREFORSTORE
+#elif _COMPILING_NEWLIB
+# include "machine/asm.h"
+# include "machine/regdef.h"
+# define PREFETCH_STORE_HINT PREFETCH_HINT_PREPAREFORSTORE
+#else
+# include <regdef.h>
+# include <sys/asm.h>
+#endif
- .set nomips16
+/* Check to see if the MIPS architecture we are compiling for supports
+ prefetching. */
+
+#if (__mips == 4) || (__mips == 5) || (__mips == 32) || (__mips == 64)
+# ifndef DISABLE_PREFETCH
+# define USE_PREFETCH
+# endif
+#endif
+
+#if defined(_MIPS_SIM) && ((_MIPS_SIM == _ABI64) || (_MIPS_SIM == _ABIN32))
+# ifndef DISABLE_DOUBLE
+# define USE_DOUBLE
+# endif
+#endif
+
+#ifndef USE_DOUBLE
+# ifndef DISABLE_DOUBLE_ALIGN
+# define DOUBLE_ALIGN
+# endif
+#endif
+
+/* Some asm.h files do not have the L macro definition. */
+#ifndef L
+# if _MIPS_SIM == _ABIO32
+# define L(label) $L ## label
+# else
+# define L(label) .L ## label
+# endif
+#endif
+
+/* Some asm.h files do not have the PTR_ADDIU macro definition. */
+#ifndef PTR_ADDIU
+# ifdef USE_DOUBLE
+# define PTR_ADDIU daddiu
+# else
+# define PTR_ADDIU addiu
+# endif
+#endif
-/* void *memset(void *s, int c, size_t n). */
+/* Using PREFETCH_HINT_PREPAREFORSTORE instead of PREFETCH_STORE
+ or PREFETCH_STORE_STREAMED offers a large performance advantage
+ but PREPAREFORSTORE has some special restrictions to consider.
-#if __MIPSEB
-# define SWHI swl /* high part is left in big-endian */
+ Prefetch with the 'prepare for store' hint does not copy a memory
+ location into the cache, it just allocates a cache line and zeros
+ it out. This means that if you do not write to the entire cache
+ line before writing it out to memory some data will get zero'ed out
+ when the cache line is written back to memory and data will be lost.
+
+ There are ifdef'ed sections of this memcpy to make sure that it does not
+ do prefetches on cache lines that are not going to be completely written.
+ This code is only needed and only used when PREFETCH_STORE_HINT is set to
+ PREFETCH_HINT_PREPAREFORSTORE. This code assumes that cache lines are
+ less than MAX_PREFETCH_SIZE bytes and if the cache line is larger it will
+ not work correctly. */
+
+#ifdef USE_PREFETCH
+# define PREFETCH_HINT_STORE 1
+# define PREFETCH_HINT_STORE_STREAMED 5
+# define PREFETCH_HINT_STORE_RETAINED 7
+# define PREFETCH_HINT_PREPAREFORSTORE 30
+
+/* If we have not picked out what hints to use at this point use the
+ standard load and store prefetch hints. */
+# ifndef PREFETCH_STORE_HINT
+# define PREFETCH_STORE_HINT PREFETCH_HINT_STORE
+# endif
+
+/* We double everything when USE_DOUBLE is true so we do 2 prefetches to
+ get 64 bytes in that case. The assumption is that each individual
+ prefetch brings in 32 bytes. */
+# ifdef USE_DOUBLE
+# define PREFETCH_CHUNK 64
+# define PREFETCH_FOR_STORE(chunk, reg) \
+ pref PREFETCH_STORE_HINT, (chunk)*64(reg); \
+ pref PREFETCH_STORE_HINT, ((chunk)*64)+32(reg)
+# else
+# define PREFETCH_CHUNK 32
+# define PREFETCH_FOR_STORE(chunk, reg) \
+ pref PREFETCH_STORE_HINT, (chunk)*32(reg)
+# endif
+
+/* MAX_PREFETCH_SIZE is the maximum size of a prefetch, it must not be less
+ than PREFETCH_CHUNK, the assumed size of each prefetch. If the real size
+ of a prefetch is greater than MAX_PREFETCH_SIZE and the PREPAREFORSTORE
+ hint is used, the code will not work correctly. If PREPAREFORSTORE is not
+ used than MAX_PREFETCH_SIZE does not matter. */
+# define MAX_PREFETCH_SIZE 128
+/* PREFETCH_LIMIT is set based on the fact that we never use an offset greater
+ than 5 on a STORE prefetch and that a single prefetch can never be larger
+ than MAX_PREFETCH_SIZE. We add the extra 32 when USE_DOUBLE is set because
+ we actually do two prefetches in that case, one 32 bytes after the other. */
+# ifdef USE_DOUBLE
+# define PREFETCH_LIMIT (5 * PREFETCH_CHUNK) + 32 + MAX_PREFETCH_SIZE
+# else
+# define PREFETCH_LIMIT (5 * PREFETCH_CHUNK) + MAX_PREFETCH_SIZE
+# endif
+
+# if (PREFETCH_STORE_HINT == PREFETCH_HINT_PREPAREFORSTORE) \
+ && ((PREFETCH_CHUNK * 4) < MAX_PREFETCH_SIZE)
+/* We cannot handle this because the initial prefetches may fetch bytes that
+ are before the buffer being copied. We start copies with an offset
+ of 4 so avoid this situation when using PREPAREFORSTORE. */
+# error "PREFETCH_CHUNK is too large and/or MAX_PREFETCH_SIZE is too small."
+# endif
+#else /* USE_PREFETCH not defined */
+# define PREFETCH_FOR_STORE(offset, reg)
+#endif
+
+/* Allow the routine to be named something else if desired. */
+#ifndef MEMSET_NAME
+# define MEMSET_NAME memset
+#endif
+
+/* We load/store 64 bits at a time when USE_DOUBLE is true.
+ The C_ prefix stands for CHUNK and is used to avoid macro name
+ conflicts with system header files. */
+
+#ifdef USE_DOUBLE
+# define C_ST sd
+# if __MIPSEB
+# define C_STHI sdl /* high part is left in big-endian */
+# else
+# define C_STHI sdr /* high part is right in little-endian */
+# endif
#else
-# define SWHI swr /* high part is right in little-endian */
+# define C_ST sw
+# if __MIPSEB
+# define C_STHI swl /* high part is left in big-endian */
+# else
+# define C_STHI swr /* high part is right in little-endian */
+# endif
#endif
-ENTRY (memset)
+/* Bookkeeping values for 32 vs. 64 bit mode. */
+#ifdef USE_DOUBLE
+# define NSIZE 8
+# define NSIZEMASK 0x3f
+# define NSIZEDMASK 0x7f
+#else
+# define NSIZE 4
+# define NSIZEMASK 0x1f
+# define NSIZEDMASK 0x3f
+#endif
+#define UNIT(unit) ((unit)*NSIZE)
+#define UNITM1(unit) (((unit)*NSIZE)-1)
+
+#ifdef ANDROID_CHANGES
+LEAF(MEMSET_NAME,0)
+#else
+LEAF(MEMSET_NAME)
+#endif
+
+ .set nomips16
.set noreorder
+/* If the size is less than 2*NSIZE (8 or 16), go to L(lastb). Regardless of
+ size, copy dst pointer to v0 for the return value. */
+ slti t2,a2,(2 * NSIZE)
+ bne t2,zero,L(lastb)
+ move v0,a0
+
+/* If memset value is not zero, we copy it to all the bytes in a 32 or 64
+ bit word. */
+ beq a1,zero,L(set0) /* If memset value is zero no smear */
+ PTR_SUBU a3,zero,a0
+ nop
+
+ /* smear byte into 32 or 64 bit word */
+#if ((__mips == 64) || (__mips == 32)) && (__mips_isa_rev >= 2)
+# ifdef USE_DOUBLE
+ dins a1, a1, 8, 8 /* Replicate fill byte into half-word. */
+ dins a1, a1, 16, 16 /* Replicate fill byte into word. */
+ dins a1, a1, 32, 32 /* Replicate fill byte into dbl word. */
+# else
+ ins a1, a1, 8, 8 /* Replicate fill byte into half-word. */
+ ins a1, a1, 16, 16 /* Replicate fill byte into word. */
+# endif
+#else
+# ifdef USE_DOUBLE
+ and a1,0xff
+ dsll t2,a1,8
+ or a1,t2
+ dsll t2,a1,16
+ or a1,t2
+ dsll t2,a1,32
+ or a1,t2
+# else
+ and a1,0xff
+ sll t2,a1,8
+ or a1,t2
+ sll t2,a1,16
+ or a1,t2
+# endif
+#endif
+
+/* If the destination address is not aligned do a partial store to get it
+ aligned. If it is already aligned just jump to L(aligned). */
+L(set0):
+ andi t2,a3,(NSIZE-1) /* word-unaligned address? */
+ beq t2,zero,L(aligned) /* t2 is the unalignment count */
+ PTR_SUBU a2,a2,t2
+ C_STHI a1,0(a0)
+ PTR_ADDU a0,a0,t2
+
+L(aligned):
+/* If USE_DOUBLE is not set we may still want to align the data on a 16
+ byte boundry instead of an 8 byte boundry to maximize the opportunity
+ of proAptiv chips to do memory bonding (combining two sequential 4
+ byte stores into one 8 byte store). We know there are at least 4 bytes
+ left to store or we would have jumped to L(lastb) earlier in the code. */
+#ifdef DOUBLE_ALIGN
+ andi t2,a3,4
+ beq t2,zero,L(double_aligned)
+ PTR_SUBU a2,a2,t2
+ sw a1,0(a0)
+ PTR_ADDU a0,a0,t2
+L(double_aligned):
+#endif
- slti t1, a2, 8 # Less than 8?
- bne t1, zero, L(last8)
- move v0, a0 # Setup exit value before too late
-
- beq a1, zero, L(ueven) # If zero pattern, no need to extend
- andi a1, 0xff # Avoid problems with bogus arguments
- sll t0, a1, 8
- or a1, t0
- sll t0, a1, 16
- or a1, t0 # a1 is now pattern in full word
-
-L(ueven):
- subu t0, zero, a0 # Unaligned address?
- andi t0, 0x3
- beq t0, zero, L(chkw)
- subu a2, t0
- SWHI a1, 0(a0) # Yes, handle first unaligned part
- addu a0, t0 # Now both a0 and a2 are updated
+/* Now the destination is aligned to (word or double word) aligned address
+ Set a2 to count how many bytes we have to copy after all the 64/128 byte
+ chunks are copied and a3 to the dest pointer after all the 64/128 byte
+ chunks have been copied. We will loop, incrementing a0 until it equals
+ a3. */
+ andi t8,a2,NSIZEDMASK /* any whole 64-byte/128-byte chunks? */
+ beq a2,t8,L(chkw) /* if a2==t8, no 64-byte/128-byte chunks */
+ PTR_SUBU a3,a2,t8 /* subtract from a2 the reminder */
+ PTR_ADDU a3,a0,a3 /* Now a3 is the final dst after loop */
+/* When in the loop we may prefetch with the 'prepare to store' hint,
+ in this case the a0+x should not be past the "t0-32" address. This
+ means: for x=128 the last "safe" a0 address is "t0-160". Alternatively,
+ for x=64 the last "safe" a0 address is "t0-96" In the current version we
+ will use "prefetch hint,128(a0)", so "t0-160" is the limit. */
+#if defined(USE_PREFETCH) \
+ && (PREFETCH_STORE_HINT == PREFETCH_HINT_PREPAREFORSTORE)
+ PTR_ADDU t0,a0,a2 /* t0 is the "past the end" address */
+ PTR_SUBU t9,t0,PREFETCH_LIMIT /* t9 is the "last safe pref" address */
+#endif
+#if defined(USE_PREFETCH) \
+ && (PREFETCH_STORE_HINT != PREFETCH_HINT_PREPAREFORSTORE)
+ PREFETCH_FOR_STORE (1, a0)
+ PREFETCH_FOR_STORE (2, a0)
+ PREFETCH_FOR_STORE (3, a0)
+#endif
+
+L(loop16w):
+#if defined(USE_PREFETCH) \
+ && (PREFETCH_STORE_HINT == PREFETCH_HINT_PREPAREFORSTORE)
+ sltu v1,t9,a0 /* If a0 > t9 don't use next prefetch */
+ bgtz v1,L(skip_pref)
+ nop
+#endif
+ PREFETCH_FOR_STORE (4, a0)
+ PREFETCH_FOR_STORE (5, a0)
+L(skip_pref):
+ C_ST a1,UNIT(0)(a0)
+ C_ST a1,UNIT(1)(a0)
+ C_ST a1,UNIT(2)(a0)
+ C_ST a1,UNIT(3)(a0)
+ C_ST a1,UNIT(4)(a0)
+ C_ST a1,UNIT(5)(a0)
+ C_ST a1,UNIT(6)(a0)
+ C_ST a1,UNIT(7)(a0)
+ C_ST a1,UNIT(8)(a0)
+ C_ST a1,UNIT(9)(a0)
+ C_ST a1,UNIT(10)(a0)
+ C_ST a1,UNIT(11)(a0)
+ C_ST a1,UNIT(12)(a0)
+ C_ST a1,UNIT(13)(a0)
+ C_ST a1,UNIT(14)(a0)
+ C_ST a1,UNIT(15)(a0)
+ PTR_ADDIU a0,a0,UNIT(16) /* adding 64/128 to dest */
+ bne a0,a3,L(loop16w)
+ nop
+ move a2,t8
+
+/* Here we have dest word-aligned but less than 64-bytes or 128 bytes to go.
+ Check for a 32(64) byte chunk and copy if if there is one. Otherwise
+ jump down to L(chk1w) to handle the tail end of the copy. */
L(chkw):
- andi t0, a2, 0x7 # Enough left for one loop iteration?
- beq t0, a2, L(chkl)
- subu a3, a2, t0
- addu a3, a0 # a3 is last loop address +1
- move a2, t0 # a2 is now # of bytes left after loop
-L(loopw):
- addiu a0, 8 # Handle 2 words pr. iteration
- sw a1, -8(a0)
- bne a0, a3, L(loopw)
- sw a1, -4(a0)
-
-L(chkl):
- andi t0, a2, 0x4 # Check if there is at least a full
- beq t0, zero, L(last8) # word remaining after the loop
- subu a2, t0
- sw a1, 0(a0) # Yes...
- addiu a0, 4
-
-L(last8):
- blez a2, L(exit) # Handle last 8 bytes (if cnt>0)
- addu a3, a2, a0 # a3 is last address +1
-L(lst8l):
- addiu a0, 1
- bne a0, a3, L(lst8l)
- sb a1, -1(a0)
-L(exit):
- j ra # Bye, bye
+ andi t8,a2,NSIZEMASK /* is there a 32-byte/64-byte chunk. */
+ /* the t8 is the reminder count past 32-bytes */
+ beq a2,t8,L(chk1w)/* when a2==t8, no 32-byte chunk */
+ nop
+ C_ST a1,UNIT(0)(a0)
+ C_ST a1,UNIT(1)(a0)
+ C_ST a1,UNIT(2)(a0)
+ C_ST a1,UNIT(3)(a0)
+ C_ST a1,UNIT(4)(a0)
+ C_ST a1,UNIT(5)(a0)
+ C_ST a1,UNIT(6)(a0)
+ C_ST a1,UNIT(7)(a0)
+ PTR_ADDIU a0,a0,UNIT(8)
+
+/* Here we have less than 32(64) bytes to set. Set up for a loop to
+ copy one word (or double word) at a time. Set a2 to count how many
+ bytes we have to copy after all the word (or double word) chunks are
+ copied and a3 to the dest pointer after all the (d)word chunks have
+ been copied. We will loop, incrementing a0 until a0 equals a3. */
+L(chk1w):
+ andi a2,t8,(NSIZE-1) /* a2 is the reminder past one (d)word chunks */
+ beq a2,t8,L(lastb)
+ PTR_SUBU a3,t8,a2 /* a3 is count of bytes in one (d)word chunks */
+ PTR_ADDU a3,a0,a3 /* a3 is the dst address after loop */
+
+/* copying in words (4-byte or 8 byte chunks) */
+L(wordCopy_loop):
+ PTR_ADDIU a0,a0,UNIT(1)
+ bne a0,a3,L(wordCopy_loop)
+ C_ST a1,UNIT(-1)(a0)
+
+/* Copy the last 8 (or 16) bytes */
+L(lastb):
+ blez a2,L(leave)
+ PTR_ADDU a3,a0,a2 /* a3 is the last dst address */
+L(lastbloop):
+ PTR_ADDIU a0,a0,1
+ bne a0,a3,L(lastbloop)
+ sb a1,-1(a0)
+L(leave):
+ j ra
nop
+ .set at
.set reorder
-END (memset)
-libc_hidden_builtin_def (memset)
+END(MEMSET_NAME)
+#ifndef ANDROID_CHANGES
+# ifdef _LIBC
+libc_hidden_builtin_def (MEMSET_NAME)
+# endif
+#endif
diff --git a/ports/sysdeps/mips/mips32/fpu/e_sqrt.c b/ports/sysdeps/mips/mips32/fpu/e_sqrt.c
new file mode 100644
index 0000000000..81f4e77697
--- /dev/null
+++ b/ports/sysdeps/mips/mips32/fpu/e_sqrt.c
@@ -0,0 +1 @@
+#include <sysdeps/mips/fpu/e_sqrt.c>
diff --git a/ports/sysdeps/mips/mips32/fpu/e_sqrtf.c b/ports/sysdeps/mips/mips32/fpu/e_sqrtf.c
new file mode 100644
index 0000000000..fb0700d45c
--- /dev/null
+++ b/ports/sysdeps/mips/mips32/fpu/e_sqrtf.c
@@ -0,0 +1 @@
+#include <sysdeps/mips/fpu/e_sqrtf.c>
diff --git a/ports/sysdeps/mips/mips64/memset.S b/ports/sysdeps/mips/mips64/memset.S
deleted file mode 100644
index 6453335266..0000000000
--- a/ports/sysdeps/mips/mips64/memset.S
+++ /dev/null
@@ -1,90 +0,0 @@
-/* Copyright (C) 2002-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Hartvig Ekner <hartvige@mips.com>, 2002.
- Ported to mips3 n32/n64 by Alexandre Oliva <aoliva@redhat.com>
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library. If not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-#include <sys/asm.h>
-
-
-/* void *memset(void *s, int c, size_t n);
-
- This could probably be optimized further. */
-
-#if __MIPSEB
-# define SDHI sdl /* high part is left in big-endian */
-#else
-# define SDHI sdr /* high part is right in little-endian */
-#endif
-
-ENTRY (memset)
- .set noreorder
-
- slti ta1, a2, 16 # Less than 16?
- bne ta1, zero, L(last16)
- move v0, a0 # Setup exit value before too late
-
- beq a1, zero, L(ueven) # If zero pattern, no need to extend
- andi a1, 0xff # Avoid problems with bogus arguments
- dsll ta0, a1, 8
- or a1, ta0
- dsll ta0, a1, 16
- or a1, ta0 # a1 is now pattern in full word
- dsll ta0, a1, 32
- or a1, ta0 # a1 is now pattern in double word
-
-L(ueven):
- PTR_SUBU ta0, zero, a0 # Unaligned address?
- andi ta0, 0x7
- beq ta0, zero, L(chkw)
- PTR_SUBU a2, ta0
- SDHI a1, 0(a0) # Yes, handle first unaligned part
- PTR_ADDU a0, ta0 # Now both a0 and a2 are updated
-
-L(chkw):
- andi ta0, a2, 0xf # Enough left for one loop iteration?
- beq ta0, a2, L(chkl)
- PTR_SUBU a3, a2, ta0
- PTR_ADDU a3, a0 # a3 is last loop address +1
- move a2, ta0 # a2 is now # of bytes left after loop
-L(loopw):
- PTR_ADDIU a0, 16 # Handle 2 dwords pr. iteration
- sd a1, -16(a0)
- bne a0, a3, L(loopw)
- sd a1, -8(a0)
-
-L(chkl):
- andi ta0, a2, 0x8 # Check if there is at least a double
- beq ta0, zero, L(last16) # word remaining after the loop
- PTR_SUBU a2, ta0
- sd a1, 0(a0) # Yes...
- PTR_ADDIU a0, 8
-
-L(last16):
- blez a2, L(exit) # Handle last 16 bytes (if cnt>0)
- PTR_ADDU a3, a2, a0 # a3 is last address +1
-L(lst16l):
- PTR_ADDIU a0, 1
- bne a0, a3, L(lst16l)
- sb a1, -1(a0)
-L(exit):
- j ra # Bye, bye
- nop
-
- .set reorder
-END (memset)
-libc_hidden_builtin_def (memset)
diff --git a/ports/sysdeps/mips/mips64/n32/fpu/e_sqrt.c b/ports/sysdeps/mips/mips64/n32/fpu/e_sqrt.c
new file mode 100644
index 0000000000..81f4e77697
--- /dev/null
+++ b/ports/sysdeps/mips/mips64/n32/fpu/e_sqrt.c
@@ -0,0 +1 @@
+#include <sysdeps/mips/fpu/e_sqrt.c>
diff --git a/ports/sysdeps/mips/mips64/n32/fpu/e_sqrtf.c b/ports/sysdeps/mips/mips64/n32/fpu/e_sqrtf.c
new file mode 100644
index 0000000000..fb0700d45c
--- /dev/null
+++ b/ports/sysdeps/mips/mips64/n32/fpu/e_sqrtf.c
@@ -0,0 +1 @@
+#include <sysdeps/mips/fpu/e_sqrtf.c>
diff --git a/ports/sysdeps/mips/mips64/n64/fpu/e_sqrt.c b/ports/sysdeps/mips/mips64/n64/fpu/e_sqrt.c
new file mode 100644
index 0000000000..81f4e77697
--- /dev/null
+++ b/ports/sysdeps/mips/mips64/n64/fpu/e_sqrt.c
@@ -0,0 +1 @@
+#include <sysdeps/mips/fpu/e_sqrt.c>
diff --git a/ports/sysdeps/mips/mips64/n64/fpu/e_sqrtf.c b/ports/sysdeps/mips/mips64/n64/fpu/e_sqrtf.c
new file mode 100644
index 0000000000..fb0700d45c
--- /dev/null
+++ b/ports/sysdeps/mips/mips64/n64/fpu/e_sqrtf.c
@@ -0,0 +1 @@
+#include <sysdeps/mips/fpu/e_sqrtf.c>
diff --git a/ports/sysdeps/mips/mips64/soft-fp/sfp-machine.h b/ports/sysdeps/mips/mips64/soft-fp/sfp-machine.h
index 9cfd6fbb7b..5be50927d0 100644
--- a/ports/sysdeps/mips/mips64/soft-fp/sfp-machine.h
+++ b/ports/sysdeps/mips/mips64/soft-fp/sfp-machine.h
@@ -24,15 +24,25 @@
#define _FP_DIV_MEAT_D(R,X,Y) _FP_DIV_MEAT_1_udiv_norm(D,R,X,Y)
#define _FP_DIV_MEAT_Q(R,X,Y) _FP_DIV_MEAT_2_udiv(Q,R,X,Y)
-#define _FP_NANFRAC_S (_FP_QNANBIT_S - 1)
-#define _FP_NANFRAC_D (_FP_QNANBIT_D - 1)
-#define _FP_NANFRAC_Q (_FP_QNANBIT_Q - 1), -1
+#ifdef __mips_nan2008
+# define _FP_NANFRAC_S ((_FP_QNANBIT_S << 1) - 1)
+# define _FP_NANFRAC_D ((_FP_QNANBIT_D << 1) - 1)
+# define _FP_NANFRAC_Q ((_FP_QNANBIT_Q << 1) - 1), -1
+#else
+# define _FP_NANFRAC_S (_FP_QNANBIT_S - 1)
+# define _FP_NANFRAC_D (_FP_QNANBIT_D - 1)
+# define _FP_NANFRAC_Q (_FP_QNANBIT_Q - 1), -1
+#endif
#define _FP_NANSIGN_S 0
#define _FP_NANSIGN_D 0
#define _FP_NANSIGN_Q 0
#define _FP_KEEPNANFRACP 1
-#define _FP_QNANNEGATEDP 1
+#ifdef __mips_nan2008
+# define _FP_QNANNEGATEDP 0
+#else
+# define _FP_QNANNEGATEDP 1
+#endif
/* From my experiments it seems X is chosen unless one of the
NaNs is sNaN, in which case the result is NANSIGN/NANFRAC. */
diff --git a/ports/sysdeps/mips/shlib-versions b/ports/sysdeps/mips/shlib-versions
index 780939369b..b153732c27 100644
--- a/ports/sysdeps/mips/shlib-versions
+++ b/ports/sysdeps/mips/shlib-versions
@@ -3,7 +3,11 @@ mips.*-.*-linux.* libm=6 GLIBC_2.0 GLIBC_2.2
# Working mips versions were never released between 2.0 and 2.2.
mips.*-.*-linux.* libc=6 GLIBC_2.0 GLIBC_2.2
+%ifdef HAVE_MIPS_NAN2008
+mips.*-.*-linux.* ld=ld-linux-mipsn8.so.1 GLIBC_2.0 GLIBC_2.2
+%else
mips.*-.*-linux.* ld=ld.so.1 GLIBC_2.0 GLIBC_2.2
+%endif
mips.*-.*-linux.* libdl=2 GLIBC_2.0 GLIBC_2.2
mips.*-.*-linux.* libresolv=2 GLIBC_2.0 GLIBC_2.2
diff --git a/ports/sysdeps/mips/soft-fp/sfp-machine.h b/ports/sysdeps/mips/soft-fp/sfp-machine.h
index a60bef7665..fff3b3c613 100644
--- a/ports/sysdeps/mips/soft-fp/sfp-machine.h
+++ b/ports/sysdeps/mips/soft-fp/sfp-machine.h
@@ -21,15 +21,25 @@
#define _FP_DIV_MEAT_D(R,X,Y) _FP_DIV_MEAT_2_udiv(D,R,X,Y)
#define _FP_DIV_MEAT_Q(R,X,Y) _FP_DIV_MEAT_4_udiv(Q,R,X,Y)
-#define _FP_NANFRAC_S (_FP_QNANBIT_S - 1)
-#define _FP_NANFRAC_D (_FP_QNANBIT_D - 1), -1
-#define _FP_NANFRAC_Q (_FP_QNANBIT_Q - 1), -1, -1, -1
+#ifdef __mips_nan2008
+# define _FP_NANFRAC_S ((_FP_QNANBIT_S << 1) - 1)
+# define _FP_NANFRAC_D ((_FP_QNANBIT_D << 1) - 1), -1
+# define _FP_NANFRAC_Q ((_FP_QNANBIT_Q << 1) - 1), -1, -1, -1
+#else
+# define _FP_NANFRAC_S (_FP_QNANBIT_S - 1)
+# define _FP_NANFRAC_D (_FP_QNANBIT_D - 1), -1
+# define _FP_NANFRAC_Q (_FP_QNANBIT_Q - 1), -1, -1, -1
+#endif
#define _FP_NANSIGN_S 0
#define _FP_NANSIGN_D 0
#define _FP_NANSIGN_Q 0
#define _FP_KEEPNANFRACP 1
-#define _FP_QNANNEGATEDP 1
+#ifdef __mips_nan2008
+# define _FP_QNANNEGATEDP 0
+#else
+# define _FP_QNANNEGATEDP 1
+#endif
/* From my experiments it seems X is chosen unless one of the
NaNs is sNaN, in which case the result is NANSIGN/NANFRAC. */
diff --git a/ports/sysdeps/powerpc/nofpu/sim-full.c b/ports/sysdeps/powerpc/nofpu/sim-full.c
deleted file mode 100644
index e16703323d..0000000000
--- a/ports/sysdeps/powerpc/nofpu/sim-full.c
+++ /dev/null
@@ -1,46 +0,0 @@
-/* Software floating-point exception handling emulation.
- Copyright (C) 2002-2013 Free Software Foundation, Inc.
- Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library. If not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <signal.h>
-#include "soft-fp.h"
-#include "soft-supp.h"
-
-/* FIXME: these variables should be thread specific (see bugzilla bug
- 15483) and ideally preserved across signal handlers, like hardware
- FP status words, but the latter is quite difficult to accomplish in
- userland. */
-
-/* Global to store sticky exceptions. */
-int __sim_exceptions __attribute__ ((nocommon));
-libc_hidden_data_def (__sim_exceptions);
-
-/* By default, no exceptions should trap. */
-int __sim_disabled_exceptions = 0xffffffff;
-libc_hidden_data_def (__sim_disabled_exceptions);
-
-int __sim_round_mode __attribute__ ((nocommon));
-libc_hidden_data_def (__sim_round_mode);
-
-void
-__simulate_exceptions (int x)
-{
- __sim_exceptions |= x;
- if (x & ~__sim_disabled_exceptions)
- raise (SIGFPE);
-}
diff --git a/ports/sysdeps/powerpc/nofpu/soft-supp.h b/ports/sysdeps/powerpc/nofpu/soft-supp.h
deleted file mode 100644
index 64a3d2a1d2..0000000000
--- a/ports/sysdeps/powerpc/nofpu/soft-supp.h
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Internal support stuff for complete soft float.
- Copyright (C) 2002-2013 Free Software Foundation, Inc.
- Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library. If not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <fenv.h>
-
-typedef union
-{
- fenv_t fenv;
- unsigned int l[2];
-} fenv_union_t;
-
-
-/* FIXME: these variables should be thread specific (see bugzilla bug
- 15483) and ideally preserved across signal handlers, like hardware
- FP status words, but the latter is quite difficult to accomplish in
- userland. */
-
-extern int __sim_exceptions;
-libc_hidden_proto (__sim_exceptions);
-extern int __sim_disabled_exceptions;
-libc_hidden_proto (__sim_disabled_exceptions);
-extern int __sim_round_mode;
-libc_hidden_proto (__sim_round_mode);
-
-extern void __simulate_exceptions (int x) attribute_hidden;
diff --git a/ports/sysdeps/powerpc/powerpc32/Makefile b/ports/sysdeps/powerpc/powerpc32/Makefile
deleted file mode 100644
index 3d235deeb9..0000000000
--- a/ports/sysdeps/powerpc/powerpc32/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-# Some Powerpc32 variants assume soft-fp is the default even though there is
-# an fp variant so provide -mhard-float if --with-fp is explicitly passed.
-
-ifeq ($(with-fp),yes)
-+cflags += -mhard-float
-ASFLAGS += -mhard-float
-sysdep-LDFLAGS += -mhard-float
-endif
diff --git a/ports/sysdeps/tile/ffs.c b/ports/sysdeps/tile/ffs.c
index 93ad9801bd..eb982a6dd3 100644
--- a/ports/sysdeps/tile/ffs.c
+++ b/ports/sysdeps/tile/ffs.c
@@ -27,6 +27,7 @@ __ffs (int x)
return __builtin_ffs (x);
}
weak_alias (__ffs, ffs)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
#undef ffsll
diff --git a/ports/sysdeps/tile/stackguard-macros.h b/ports/sysdeps/tile/stackguard-macros.h
index 589ea2b0d8..f2e041b99b 100644
--- a/ports/sysdeps/tile/stackguard-macros.h
+++ b/ports/sysdeps/tile/stackguard-macros.h
@@ -4,11 +4,17 @@
# if __WORDSIZE == 64
# define STACK_CHK_GUARD \
({ uintptr_t x; asm ("addi %0, tp, -16; ld %0, %0" : "=r" (x)); x; })
+# define POINTER_CHK_GUARD \
+ ({ uintptr_t x; asm ("addi %0, tp, -24; ld %0, %0" : "=r" (x)); x; })
# else
# define STACK_CHK_GUARD \
({ uintptr_t x; asm ("addi %0, tp, -8; ld4s %0, %0" : "=r" (x)); x; })
+# define POINTER_CHK_GUARD \
+ ({ uintptr_t x; asm ("addi %0, tp, -12; ld4s %0, %0" : "=r" (x)); x; })
# endif
#else
# define STACK_CHK_GUARD \
({ uintptr_t x; asm ("addi %0, tp, -8; lw %0, %0" : "=r" (x)); x; })
+# define POINTER_CHK_GUARD \
+ ({ uintptr_t x; asm ("addi %0, tp, -12; lw %0, %0" : "=r" (x)); x; })
#endif
diff --git a/ports/sysdeps/unix/alpha/sysdep.h b/ports/sysdeps/unix/alpha/sysdep.h
index d20bcd6d31..150a91906d 100644
--- a/ports/sysdeps/unix/alpha/sysdep.h
+++ b/ports/sysdeps/unix/alpha/sysdep.h
@@ -343,53 +343,43 @@ __LABEL(name) \
: : inline_syscall_clobbers); \
_sc_ret = _sc_0, _sc_err = _sc_19; \
}
+#endif /* ASSEMBLER */
/* Pointer mangling support. Note that tls access is slow enough that
we don't deoptimize things by placing the pointer check value there. */
-#include <stdint.h>
-
-#if defined NOT_IN_libc && defined IS_IN_rtld
-# ifdef __ASSEMBLER__
+#ifdef __ASSEMBLER__
+# if defined NOT_IN_libc && defined IS_IN_rtld
# define PTR_MANGLE(dst, src, tmp) \
ldah tmp, __pointer_chk_guard_local($29) !gprelhigh; \
ldq tmp, __pointer_chk_guard_local(tmp) !gprellow; \
xor src, tmp, dst
# define PTR_MANGLE2(dst, src, tmp) \
xor src, tmp, dst
-# define PTR_DEMANGLE(dst, tmp) PTR_MANGLE(dst, dst, tmp)
-# define PTR_DEMANGLE2(dst, tmp) PTR_MANGLE2(dst, dst, tmp)
-# else
-extern uintptr_t __pointer_chk_guard_local attribute_relro attribute_hidden;
-# define PTR_MANGLE(var) \
- (var) = (__typeof (var)) ((uintptr_t) (var) ^ __pointer_chk_guard_local)
-# define PTR_DEMANGLE(var) PTR_MANGLE(var)
-# endif
-#elif defined PIC
-# ifdef __ASSEMBLER__
+# elif defined SHARED
# define PTR_MANGLE(dst, src, tmp) \
ldq tmp, __pointer_chk_guard; \
xor src, tmp, dst
-# define PTR_MANGLE2(dst, src, tmp) \
+# else
+# define PTR_MANGLE(dst, src, tmp) \
+ ldq tmp, __pointer_chk_guard_local; \
xor src, tmp, dst
-# define PTR_DEMANGLE(dst, tmp) PTR_MANGLE(dst, dst, tmp)
-# define PTR_DEMANGLE2(dst, tmp) PTR_MANGLE2(dst, dst, tmp)
+# endif
+# define PTR_MANGLE2(dst, src, tmp) \
+ xor src, tmp, dst
+# define PTR_DEMANGLE(dst, tmp) PTR_MANGLE(dst, dst, tmp)
+# define PTR_DEMANGLE2(dst, tmp) PTR_MANGLE2(dst, dst, tmp)
+#else
+# include <stdint.h>
+# if (defined NOT_IN_libc && defined IS_IN_rtld) \
+ || (!defined SHARED && (!defined NOT_IN_libc || defined IS_IN_libpthread))
+extern uintptr_t __pointer_chk_guard_local attribute_relro attribute_hidden;
+# define PTR_MANGLE(var) \
+ (var) = (__typeof (var)) ((uintptr_t) (var) ^ __pointer_chk_guard_local)
# else
extern const uintptr_t __pointer_chk_guard attribute_relro;
-# define PTR_MANGLE(var) \
+# define PTR_MANGLE(var) \
(var) = (__typeof(var)) ((uintptr_t) (var) ^ __pointer_chk_guard)
-# define PTR_DEMANGLE(var) PTR_MANGLE(var)
# endif
-#else
-/* There exists generic C code that assumes that PTR_MANGLE is always
- defined. When generating code for the static libc, we don't have
- __pointer_chk_guard defined. Nor is there any place that would
- initialize it if it were defined, so there's little point in doing
- anything more than nothing. */
-# ifndef __ASSEMBLER__
-# define PTR_MANGLE(var)
-# define PTR_DEMANGLE(var)
-# endif
-#endif
-
+# define PTR_DEMANGLE(var) PTR_MANGLE(var)
#endif /* ASSEMBLER */
diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/configure b/ports/sysdeps/unix/sysv/linux/aarch64/configure
index 6b2608acd7..20593c7bb0 100644
--- a/ports/sysdeps/unix/sysv/linux/aarch64/configure
+++ b/ports/sysdeps/unix/sysv/linux/aarch64/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux/aarch64.
arch_minimum_kernel=3.7.0
diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/configure.in b/ports/sysdeps/unix/sysv/linux/aarch64/configure.ac
index b090702134..b090702134 100644
--- a/ports/sysdeps/unix/sysv/linux/aarch64/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/aarch64/configure.ac
diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h b/ports/sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h
index 52f8a7a27d..851c85d753 100644
--- a/ports/sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h
+++ b/ports/sysdeps/unix/sysv/linux/aarch64/nptl/lowlevellock.h
@@ -37,6 +37,8 @@
#define FUTEX_TRYLOCK_PI 8
#define FUTEX_WAIT_BITSET 9
#define FUTEX_WAKE_BITSET 10
+#define FUTEX_WAIT_REQUEUE_PI 11
+#define FUTEX_CMP_REQUEUE_PI 12
#define FUTEX_PRIVATE_FLAG 128
#define FUTEX_CLOCK_REALTIME 256
@@ -143,6 +145,35 @@
})
+/* Priority Inheritance support. */
+#define lll_futex_wait_requeue_pi(futexp, val, mutex, private) \
+ lll_futex_timed_wait_requeue_pi (futexp, val, NULL, 0, mutex, private)
+
+#define lll_futex_timed_wait_requeue_pi(futexp, val, timespec, clockbit, \
+ mutex, private) \
+ ({ \
+ INTERNAL_SYSCALL_DECL (__err); \
+ long int __ret; \
+ int __op = FUTEX_WAIT_REQUEUE_PI | clockbit; \
+ \
+ __ret = INTERNAL_SYSCALL (futex, __err, 5, (futexp), \
+ __lll_private_flag (__op, private), \
+ (val), (timespec), mutex); \
+ INTERNAL_SYSCALL_ERROR_P (__ret, __err) ? -__ret : __ret; \
+ })
+
+#define lll_futex_cmp_requeue_pi(futexp, nr_wake, nr_move, mutex, val, priv) \
+ ({ \
+ INTERNAL_SYSCALL_DECL (__err); \
+ long int __ret; \
+ \
+ __ret = INTERNAL_SYSCALL (futex, __err, 6, (futexp), \
+ __lll_private_flag (FUTEX_CMP_REQUEUE_PI, priv),\
+ (nr_wake), (nr_move), (mutex), (val)); \
+ INTERNAL_SYSCALL_ERROR_P (__ret, __err); \
+ })
+
+
#define lll_trylock(lock) \
atomic_compare_and_exchange_val_acq(&(lock), 1, 0)
diff --git a/sysdeps/unix/bsd/clock.c b/ports/sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h
index a46cf9c851..42ff38eced 100644
--- a/sysdeps/unix/bsd/clock.c
+++ b/ports/sysdeps/unix/sysv/linux/aarch64/sigcontextinfo.h
@@ -1,4 +1,5 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
+/* AArch64 definitions for signal handling calling conventions.
+ Copyright (C) 1996-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,29 +16,20 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <sys/resource.h>
-#include <sys/time.h>
-#include <time.h>
+#include <sys/ucontext.h>
+#include "kernel-features.h"
-#ifdef __GNUC__
-__inline
-#endif
-static clock_t
-timeval_to_clock_t (const struct timeval *tv)
-{
- return (clock_t) ((tv->tv_sec * CLOCKS_PER_SEC) +
- (tv->tv_usec * CLOCKS_PER_SEC / 1000000));
-}
+#define SIGCONTEXT siginfo_t *_si, struct ucontext *
+#define GET_PC(ctx) ((void *) (ctx)->uc_mcontext.pc)
-/* Return the time used by the program so far (user time + system time). */
-clock_t
-clock (void)
-{
- struct rusage usage;
+/* There is no reliable way to get the sigcontext unless we use a
+ three-argument signal handler. */
+#define __sigaction(sig, act, oact) ({ \
+ (act)->sa_flags |= SA_SIGINFO; \
+ (__sigaction) (sig, act, oact); \
+})
- if (__getrusage (RUSAGE_SELF, &usage) < 0)
- return (clock_t) -1;
-
- return (timeval_to_clock_t (&usage.ru_stime) +
- timeval_to_clock_t (&usage.ru_utime));
-}
+#define sigaction(sig, act, oact) ({ \
+ (act)->sa_flags |= SA_SIGINFO; \
+ (sigaction) (sig, act, oact); \
+})
diff --git a/ports/sysdeps/unix/sysv/linux/aarch64/sysdep.h b/ports/sysdeps/unix/sysv/linux/aarch64/sysdep.h
index 849c904992..9a7b16735c 100644
--- a/ports/sysdeps/unix/sysv/linux/aarch64/sysdep.h
+++ b/ports/sysdeps/unix/sysv/linux/aarch64/sysdep.h
@@ -134,7 +134,7 @@ __local_syscall_error: \
str x19, [sp,16]; \
neg x19, x0; \
bl C_SYMBOL_NAME(__errno_location); \
- str x19, [x0]; \
+ str w19, [x0]; \
mov x0, -1; \
ldr x19, [sp,16]; \
ldp x29, x30, [sp], 32; \
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h b/ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h
index 2e31691c2b..02c9a7f751 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h
+++ b/ports/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h
@@ -36,6 +36,7 @@
#define __O_DIRECT 02000000 /* Direct disk access. */
#define __O_NOATIME 04000000 /* Do not set atime. */
#define __O_PATH 040000000 /* Resolve pathname but do not open file. */
+#define __O_TMPFILE 0100100000 /* Atomically create nameless file. */
/* Not necessary, files are always with 64bit off_t. */
#define __O_LARGEFILE 0
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/ipc.h b/ports/sysdeps/unix/sysv/linux/alpha/bits/ipc.h
index 66903d3ac2..deb3a2b213 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/bits/ipc.h
+++ b/ports/sysdeps/unix/sysv/linux/alpha/bits/ipc.h
@@ -49,6 +49,6 @@ struct ipc_perm
unsigned int mode; /* Read/write permission. */
unsigned short int __seq; /* Sequence number. */
unsigned short int __pad1;
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/mman.h b/ports/sysdeps/unix/sysv/linux/alpha/bits/mman.h
index c51b05d37f..a0d087c1fa 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/bits/mman.h
+++ b/ports/sysdeps/unix/sysv/linux/alpha/bits/mman.h
@@ -23,46 +23,7 @@
/* The following definitions basically come from the kernel headers.
But the kernel header is not namespace clean. */
-
-/* Protections are chosen from these bits, OR'd together. The
- implementation does not necessarily support PROT_EXEC or PROT_WRITE
- without PROT_READ. The only guarantees are that no writing will be
- allowed without PROT_WRITE and no access will be allowed for PROT_NONE. */
-
-#define PROT_READ 0x1 /* Page can be read. */
-#define PROT_WRITE 0x2 /* Page can be written. */
-#define PROT_EXEC 0x4 /* Page can be executed. */
-#define PROT_NONE 0x0 /* Page can not be accessed. */
-#define PROT_GROWSDOWN 0x01000000 /* Extend change to start of
- growsdown vma (mprotect only). */
-#define PROT_GROWSUP 0x02000000 /* Extend change to start of
- growsup vma (mprotect only). */
-
-/* Sharing types (must choose one and only one of these). */
-#define MAP_SHARED 0x01 /* Share changes. */
-#define MAP_PRIVATE 0x02 /* Changes are private. */
-#ifdef __USE_MISC
-# define MAP_TYPE 0x0f /* Mask for type of mapping. */
-#endif
-
-/* Other flags. */
-#define MAP_FIXED 0x100 /* Interpret addr exactly. */
-#ifdef __USE_MISC
-# define MAP_FILE 0
-# define MAP_ANONYMOUS 0x10 /* Don't use a file. */
-# define MAP_ANON MAP_ANONYMOUS
-/* When MAP_HUGETLB is set bits [26:31] encode the log2 of the huge page size. */
-# define MAP_HUGE_SHIFT 26
-# define MAP_HUGE_MASK 0x3f
-#endif
-
-/* Not used by Linux, but here to make sure we don't clash with
- OSF/1 defines. */
-#if 0 && defined __USE_BSD
-# define MAP_HASSEMAPHORE 0x0200
-# define MAP_INHERIT 0x0400
-# define MAP_UNALIGNED 0x0800
-#endif
+#define __MAP_ANONYMOUS 0x10 /* Don't use a file. */
/* These are Linux-specific. */
#ifdef __USE_MISC
@@ -77,53 +38,28 @@
# define MAP_HUGETLB 0x100000 /* Create huge page mapping. */
#endif
-/* Flags to `msync'. */
-#define MS_ASYNC 1 /* Sync memory asynchronously. */
-#define MS_SYNC 2 /* Synchronous memory sync. */
-#define MS_INVALIDATE 4 /* Invalidate the caches. */
-
/* Flags for `mlockall'. */
-#define MCL_CURRENT 8192 /* Lock all currently mapped pages. */
-#define MCL_FUTURE 16384 /* Lock all additions to address
- space. */
+#define MCL_CURRENT 8192
+#define MCL_FUTURE 16384
-/* Flags for `mremap'. */
-#ifdef __USE_GNU
-# define MREMAP_MAYMOVE 1
-# define MREMAP_FIXED 2
-#endif
+#include <bits/mman-linux.h>
+
+/* Values that differ from standard <mman-linux.h>. For the most part newer
+ values are shared, but older values are skewed. */
+
+#undef MAP_FIXED
+#define MAP_FIXED 0x100
+
+#undef MS_SYNC
+#define MS_SYNC 2
+#undef MS_INVALIDATE
+#define MS_INVALIDATE 4
-/* Advice to `madvise'. */
#ifdef __USE_BSD
-# define MADV_NORMAL 0 /* No further special treatment. */
-# define MADV_RANDOM 1 /* Expect random page references. */
-# define MADV_SEQUENTIAL 2 /* Expect sequential page references. */
-# define MADV_WILLNEED 3 /* Will need these pages. */
-# define MADV_DONTNEED 6 /* Don't need these pages. */
-# define MADV_REMOVE 9 /* Remove these pages and resources. */
-# define MADV_DONTFORK 10 /* Do not inherit across fork. */
-# define MADV_DOFORK 11 /* Do inherit across fork. */
-# define MADV_MERGEABLE 12 /* KSM may merge identical pages. */
-# define MADV_UNMERGEABLE 13 /* KSM may not merge identical pages. */
-# define MADV_HUGEPAGE 14 /* Worth backing with hugepages. */
-# define MADV_NOHUGEPAGE 15 /* Not worth backing with hugepages. */
-# define MADV_DONTDUMP 16 /* Exclude from the core dump. */
-# define MADV_DODUMP 17 /* Clear MADV_DONTDUMP. */
-# define MADV_HWPOISON 100 /* Poison a page for testing. */
+# undef MADV_DONTNEED
+# define MADV_DONTNEED 6
#endif
-
-/* The POSIX people had to invent similar names for the same things. */
#ifdef __USE_XOPEN2K
-# define POSIX_MADV_NORMAL 0 /* No further special treatment. */
-# define POSIX_MADV_RANDOM 1 /* Expect random page references. */
-# define POSIX_MADV_SEQUENTIAL 2 /* Expect sequential page references. */
-# define POSIX_MADV_WILLNEED 3 /* Will need these pages. */
-# define POSIX_MADV_DONTNEED 6 /* Don't need these pages. */
-#endif
-
-/* Not used by Linux, but here to make sure we don't clash with
- OSF/1 defines. */
-#if 0 && defined __USE_BSD
-# define MADV_DONTNEED_COMPAT 4 /* Old version? */
-# define MADV_SPACEAVAIL 5 /* Ensure resources are available. */
+# undef POSIX_MADV_DONTNEED
+# define POSIX_MADV_DONTNEED 6
#endif
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/msq.h b/ports/sysdeps/unix/sysv/linux/alpha/bits/msq.h
index 8bb057b4ee..415ef21a99 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/bits/msq.h
+++ b/ports/sysdeps/unix/sysv/linux/alpha/bits/msq.h
@@ -46,8 +46,8 @@ struct msqid_ds
msglen_t msg_qbytes; /* max number of bytes allowed on queue */
__pid_t msg_lspid; /* pid of last msgsnd() */
__pid_t msg_lrpid; /* pid of last msgrcv() */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
#ifdef __USE_MISC
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/sem.h b/ports/sysdeps/unix/sysv/linux/alpha/bits/sem.h
index c2d73aa4e8..739cbc415f 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/bits/sem.h
+++ b/ports/sysdeps/unix/sysv/linux/alpha/bits/sem.h
@@ -41,8 +41,8 @@ struct semid_ds
__time_t sem_otime; /* last semop() time */
__time_t sem_ctime; /* last time changed by semctl() */
unsigned long int sem_nsems; /* number of semaphores in set */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
/* The user should define a union like the following to use it for arguments
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/shm.h b/ports/sysdeps/unix/sysv/linux/alpha/bits/shm.h
index 125e277f35..cd9476f4de 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/bits/shm.h
+++ b/ports/sysdeps/unix/sysv/linux/alpha/bits/shm.h
@@ -56,8 +56,8 @@ struct shmid_ds
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
#ifdef __USE_MISC
@@ -79,10 +79,10 @@ struct shminfo
unsigned long int shmmni;
unsigned long int shmseg;
unsigned long int shmall;
- unsigned long int __unused1;
- unsigned long int __unused2;
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
struct shm_info
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/bits/stat.h b/ports/sysdeps/unix/sysv/linux/alpha/bits/stat.h
index 3e106477f3..c34cbca371 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/bits/stat.h
+++ b/ports/sysdeps/unix/sysv/linux/alpha/bits/stat.h
@@ -92,7 +92,7 @@ struct stat
__ST_TIME(a); /* Time of last access. */
__ST_TIME(m); /* Time of last modification. */
__ST_TIME(c); /* Time of last status change. */
- long __unused[3];
+ long __glibc_reserved[3];
};
#ifdef __USE_LARGEFILE64
@@ -113,7 +113,7 @@ struct stat64
__ST_TIME(a); /* Time of last access. */
__ST_TIME(m); /* Time of last modification. */
__ST_TIME(c); /* Time of last status change. */
- long __unused[3];
+ long __glibc_reserved[3];
};
#endif
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/configure b/ports/sysdeps/unix/sysv/linux/alpha/configure
index b5df524c1c..9afb5874cb 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/configure
+++ b/ports/sysdeps/unix/sysv/linux/alpha/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux/alpha
# We did historically export the unwinder from glibc.
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/configure.in b/ports/sysdeps/unix/sysv/linux/alpha/configure.ac
index a8b6996657..a8b6996657 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/alpha/configure.ac
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/kernel_stat.h b/ports/sysdeps/unix/sysv/linux/alpha/kernel_stat.h
index 94d358efc4..6708411407 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/kernel_stat.h
+++ b/ports/sysdeps/unix/sysv/linux/alpha/kernel_stat.h
@@ -40,7 +40,7 @@ struct kernel_stat64
unsigned long st_mtimensec;
unsigned long st_ctime;
unsigned long st_ctimensec;
- long __unused[3];
+ long __glibc_reserved[3];
};
/* Definition of `struct stat' used by glibc 2.0. */
@@ -82,7 +82,7 @@ struct glibc21_stat
unsigned int st_flags;
unsigned int st_gen;
int __pad3;
- long __unused[4];
+ long __glibc_reserved[4];
};
#define XSTAT_IS_XSTAT64 1
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/pt-vfork.S b/ports/sysdeps/unix/sysv/linux/alpha/nptl/pt-vfork.S
index d9629b9ec5..50b152d0cb 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/nptl/pt-vfork.S
+++ b/ports/sysdeps/unix/sysv/linux/alpha/nptl/pt-vfork.S
@@ -25,7 +25,7 @@
ldl a2, PID_OFFSET(v0); \
mov v0, a1; \
/* Write back its negation, to indicate that the pid value is \
- uninitialized in the the child, and in the window between \
+ uninitialized in the child, and in the window between \
here and the point at which we restore the value. */ \
negl a2, t0; \
stl t0, PID_OFFSET(v0);
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/nptl/vfork.S b/ports/sysdeps/unix/sysv/linux/alpha/nptl/vfork.S
index 1ca7678d1c..03aa37f43c 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/nptl/vfork.S
+++ b/ports/sysdeps/unix/sysv/linux/alpha/nptl/vfork.S
@@ -26,7 +26,7 @@
mov v0, a1; \
/* If the cached value is initialized (nonzero), then write \
back its negation, or INT_MIN, to indicate that the pid \
- value is uninitialized in the the child, and in the window \
+ value is uninitialized in the child, and in the window \
between here and the point at which we restore the value. */ \
ldah t0, -0x8000; \
negl a2, t1; \
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S b/ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S
index 3d291fd0b4..6efa7386d5 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S
+++ b/ports/sysdeps/unix/sysv/linux/alpha/rt_sigaction.S
@@ -83,14 +83,21 @@ PSEUDO_END(__syscall_rt_sigaction)
cfi_offset (64, \base + 2 * 8)
.endm
- .align 4
-
cfi_startproc
cfi_return_column (64)
.cfi_signal_frame
SIGCONTEXT_REGS -648
-
cfi_def_cfa_offset (648)
+
+ /* While this frame is marked as a signal frame, that only applies
+ to how this return address is handled for the outer frame.
+ The return address that arrived here, from the inner frame, is
+ not marked as a signal frame and so the unwinder still tries to
+ subtract 1 to examine the presumed call insn. Thus we must
+ extend the unwind info to a nop before the start. */
+ nop
+ .align 4
+
__syscall_sigreturn:
mov sp, a0
ldi v0, __NR_sigreturn
@@ -98,8 +105,11 @@ __syscall_sigreturn:
.size __syscall_sigreturn, .-__syscall_sigreturn
.type __syscall_sigreturn, @function
- .align 4
+ /* See above wrt including the nop. */
cfi_def_cfa_offset (176 + 648)
+ nop
+ .align 4
+
__syscall_rt_sigreturn:
mov sp,a0
ldi v0,__NR_rt_sigreturn
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/xstatconv.c b/ports/sysdeps/unix/sysv/linux/alpha/xstatconv.c
index 79ec57840e..4e7e78b98f 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/xstatconv.c
+++ b/ports/sysdeps/unix/sysv/linux/alpha/xstatconv.c
@@ -74,10 +74,10 @@ __xstat_conv (int vers, struct kernel_stat *kbuf, void *ubuf)
buf->st_flags = kbuf->st_flags;
buf->st_gen = kbuf->st_gen;
buf->__pad3 = 0;
- buf->__unused[0] = 0;
- buf->__unused[1] = 0;
- buf->__unused[2] = 0;
- buf->__unused[3] = 0;
+ buf->__glibc_reserved[0] = 0;
+ buf->__glibc_reserved[1] = 0;
+ buf->__glibc_reserved[2] = 0;
+ buf->__glibc_reserved[3] = 0;
}
break;
@@ -105,9 +105,9 @@ __xstat_conv (int vers, struct kernel_stat *kbuf, void *ubuf)
buf->st_ctime = kbuf->st_ctime;
buf->st_ctimensec = 0;
- buf->__unused[0] = 0;
- buf->__unused[1] = 0;
- buf->__unused[2] = 0;
+ buf->__glibc_reserved[0] = 0;
+ buf->__glibc_reserved[1] = 0;
+ buf->__glibc_reserved[2] = 0;
}
break;
diff --git a/ports/sysdeps/unix/sysv/linux/am33/configure b/ports/sysdeps/unix/sysv/linux/am33/configure
index 870c6a7929..c916a321ca 100644
--- a/ports/sysdeps/unix/sysv/linux/am33/configure
+++ b/ports/sysdeps/unix/sysv/linux/am33/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for am33/sysdeps/unix/sysv/linux/am33
arch_minimum_kernel=2.6.25
diff --git a/ports/sysdeps/unix/sysv/linux/am33/configure.in b/ports/sysdeps/unix/sysv/linux/am33/configure.ac
index 43e33f74ca..43e33f74ca 100644
--- a/ports/sysdeps/unix/sysv/linux/am33/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/am33/configure.ac
diff --git a/ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S b/ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S
index 6ee7a1aebd..6777ef646b 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S
+++ b/ports/sysdeps/unix/sysv/linux/arm/____longjmp_chk.S
@@ -15,8 +15,6 @@
License along with the GNU C Library. If not, see
<http://www.gnu.org/licenses/>. */
-/* ??? Needs more rearrangement for the LDM to handle thumb mode. */
-#define NO_THUMB
#include <sysdep.h>
.section .rodata.str1.1,"aMS",%progbits,1
diff --git a/ports/sysdeps/unix/sysv/linux/arm/bits/shm.h b/ports/sysdeps/unix/sysv/linux/arm/bits/shm.h
index 08a0ca48b7..eb581eaba9 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/bits/shm.h
+++ b/ports/sysdeps/unix/sysv/linux/arm/bits/shm.h
@@ -51,16 +51,16 @@ struct shmid_ds
struct ipc_perm shm_perm; /* operation permission struct */
size_t shm_segsz; /* size of segment in bytes */
__time_t shm_atime; /* time of last shmat() */
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
__time_t shm_dtime; /* time of last shmdt() */
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
__time_t shm_ctime; /* time of last change by shmctl() */
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#ifdef __USE_MISC
@@ -82,10 +82,10 @@ struct shminfo
unsigned long int shmmni;
unsigned long int shmseg;
unsigned long int shmall;
- unsigned long int __unused1;
- unsigned long int __unused2;
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
struct shm_info
diff --git a/ports/sysdeps/unix/sysv/linux/arm/configure b/ports/sysdeps/unix/sysv/linux/arm/configure
index f66b158289..71eb195942 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/configure
+++ b/ports/sysdeps/unix/sysv/linux/arm/configure
@@ -1,6 +1,6 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux/arm.
libc_cv_gcc_unwind_find_fde=no
-# Remove -fno-unwind-tables that was added in sysdeps/arm/preconfigure.in.
+# Remove -fno-unwind-tables that was added in sysdeps/arm/preconfigure.ac.
CFLAGS=${CFLAGS% -fno-unwind-tables}
diff --git a/ports/sysdeps/unix/sysv/linux/arm/configure.in b/ports/sysdeps/unix/sysv/linux/arm/configure.ac
index 8fffe94051..8e4e20d2b8 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/arm/configure.ac
@@ -2,5 +2,5 @@ GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
# Local configure fragment for sysdeps/unix/sysv/linux/arm.
libc_cv_gcc_unwind_find_fde=no
-# Remove -fno-unwind-tables that was added in sysdeps/arm/preconfigure.in.
+# Remove -fno-unwind-tables that was added in sysdeps/arm/preconfigure.ac.
CFLAGS=${CFLAGS% -fno-unwind-tables}
diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/configure b/ports/sysdeps/unix/sysv/linux/arm/nptl/configure
index 518269913a..a8c34fa3e4 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/nptl/configure
+++ b/ports/sysdeps/unix/sysv/linux/arm/nptl/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
libc_cv_gcc_exceptions=yes
exceptions=-fexceptions
diff --git a/ports/sysdeps/unix/sysv/linux/arm/nptl/configure.in b/ports/sysdeps/unix/sysv/linux/arm/nptl/configure.ac
index 22f6f4b8f2..22f6f4b8f2 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/nptl/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/arm/nptl/configure.ac
diff --git a/ports/sysdeps/unix/sysv/linux/arm/sysdep.h b/ports/sysdeps/unix/sysv/linux/arm/sysdep.h
index b195d8ea1d..6cfe4e08a7 100644
--- a/ports/sysdeps/unix/sysv/linux/arm/sysdep.h
+++ b/ports/sysdeps/unix/sysv/linux/arm/sysdep.h
@@ -435,8 +435,44 @@ __local_syscall_error: \
#endif /* __ASSEMBLER__ */
-/* Pointer mangling is not yet supported for ARM. */
-#define PTR_MANGLE(var) (void) (var)
-#define PTR_DEMANGLE(var) (void) (var)
+/* Pointer mangling support. */
+#if (defined NOT_IN_libc && defined IS_IN_rtld) || \
+ (!defined SHARED && (!defined NOT_IN_libc || defined IS_IN_libpthread))
+# ifdef __ASSEMBLER__
+# define PTR_MANGLE(dst, src, guard, tmp) \
+ LDST_PCREL(ldr, guard, tmp, C_SYMBOL_NAME(__pointer_chk_guard_local)); \
+ PTR_MANGLE2(dst, src, guard)
+/* Use PTR_MANGLE2 for efficiency if guard is already loaded. */
+# define PTR_MANGLE2(dst, src, guard) \
+ eor dst, src, guard
+# define PTR_DEMANGLE(dst, src, guard, tmp) \
+ PTR_MANGLE (dst, src, guard, tmp)
+# define PTR_DEMANGLE2(dst, src, guard) \
+ PTR_MANGLE2 (dst, src, guard)
+# else
+extern uintptr_t __pointer_chk_guard_local attribute_relro attribute_hidden;
+# define PTR_MANGLE(var) \
+ (var) = (__typeof (var)) ((uintptr_t) (var) ^ __pointer_chk_guard_local)
+# define PTR_DEMANGLE(var) PTR_MANGLE (var)
+# endif
+#else
+# ifdef __ASSEMBLER__
+# define PTR_MANGLE(dst, src, guard, tmp) \
+ LDST_GLOBAL(ldr, guard, tmp, C_SYMBOL_NAME(__pointer_chk_guard)); \
+ PTR_MANGLE2(dst, src, guard)
+/* Use PTR_MANGLE2 for efficiency if guard is already loaded. */
+# define PTR_MANGLE2(dst, src, guard) \
+ eor dst, src, guard
+# define PTR_DEMANGLE(dst, src, guard, tmp) \
+ PTR_MANGLE (dst, src, guard, tmp)
+# define PTR_DEMANGLE2(dst, src, guard) \
+ PTR_MANGLE2 (dst, src, guard)
+# else
+extern uintptr_t __pointer_chk_guard attribute_relro;
+# define PTR_MANGLE(var) \
+ (var) = (__typeof (var)) ((uintptr_t) (var) ^ __pointer_chk_guard)
+# define PTR_DEMANGLE(var) PTR_MANGLE (var)
+# endif
+#endif
#endif /* linux/arm/sysdep.h */
diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/msq.h b/ports/sysdeps/unix/sysv/linux/generic/bits/msq.h
index 49cbf0611d..c2680d035e 100644
--- a/ports/sysdeps/unix/sysv/linux/generic/bits/msq.h
+++ b/ports/sysdeps/unix/sysv/linux/generic/bits/msq.h
@@ -41,23 +41,23 @@ struct msqid_ds
struct ipc_perm msg_perm; /* structure describing operation permission */
__time_t msg_stime; /* time of last msgsnd command */
#if __WORDSIZE == 32
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
#endif
__time_t msg_rtime; /* time of last msgrcv command */
#if __WORDSIZE == 32
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
#endif
__time_t msg_ctime; /* time of last change */
#if __WORDSIZE == 32
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
#endif
unsigned long int __msg_cbytes; /* current number of bytes on queue */
msgqnum_t msg_qnum; /* number of messages currently on queue */
msglen_t msg_qbytes; /* max number of bytes allowed on queue */
__pid_t msg_lspid; /* pid of last msgsnd() */
__pid_t msg_lrpid; /* pid of last msgrcv() */
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#ifdef __USE_MISC
diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/sem.h b/ports/sysdeps/unix/sysv/linux/generic/bits/sem.h
index 8b926ceaba..7b5d36ab51 100644
--- a/ports/sysdeps/unix/sysv/linux/generic/bits/sem.h
+++ b/ports/sysdeps/unix/sysv/linux/generic/bits/sem.h
@@ -42,15 +42,15 @@ struct semid_ds
struct ipc_perm sem_perm; /* operation permission struct */
__time_t sem_otime; /* last semop() time */
#if __WORDSIZE == 32
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
#endif
__time_t sem_ctime; /* last time changed by semctl() */
#if __WORDSIZE == 32
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
#endif
unsigned long int sem_nsems; /* number of semaphores in set */
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
/* The user should define a union like the following to use it for arguments
diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/shm.h b/ports/sysdeps/unix/sysv/linux/generic/bits/shm.h
index 070058f7c7..5afd30fdef 100644
--- a/ports/sysdeps/unix/sysv/linux/generic/bits/shm.h
+++ b/ports/sysdeps/unix/sysv/linux/generic/bits/shm.h
@@ -54,21 +54,21 @@ struct shmid_ds
size_t shm_segsz; /* size of segment in bytes */
__time_t shm_atime; /* time of last shmat() */
#if __WORDSIZE == 32
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
#endif
__time_t shm_dtime; /* time of last shmdt() */
#if __WORDSIZE == 32
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
#endif
__time_t shm_ctime; /* time of last change by shmctl() */
#if __WORDSIZE == 32
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
#endif
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#ifdef __USE_MISC
@@ -90,10 +90,10 @@ struct shminfo
unsigned long int shmmni;
unsigned long int shmseg;
unsigned long int shmall;
- unsigned long int __unused1;
- unsigned long int __unused2;
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
struct shm_info
diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/stat.h b/ports/sysdeps/unix/sysv/linux/generic/bits/stat.h
index 6e74cec283..a9a42cca5b 100644
--- a/ports/sysdeps/unix/sysv/linux/generic/bits/stat.h
+++ b/ports/sysdeps/unix/sysv/linux/generic/bits/stat.h
@@ -46,10 +46,10 @@
# define __field64(type, type64, name) type name
#elif __BYTE_ORDER == __LITTLE_ENDIAN
# define __field64(type, type64, name) \
- type name __attribute__((__aligned__(8))); int __##name##_pad
+ type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad
#else
# define __field64(type, type64, name) \
- int __##name##_pad __attribute__((__aligned__(8))); type name
+ int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name
#endif
struct stat
@@ -87,7 +87,7 @@ struct stat
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
#endif
- int __unused[2];
+ int __glibc_reserved[2];
};
#undef __field64
@@ -125,7 +125,7 @@ struct stat64
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
#endif
- int __unused[2];
+ int __glibc_reserved[2];
};
#endif
diff --git a/ports/sysdeps/unix/sysv/linux/generic/bits/statfs.h b/ports/sysdeps/unix/sysv/linux/generic/bits/statfs.h
index 7063c7a242..8aecb042b0 100644
--- a/ports/sysdeps/unix/sysv/linux/generic/bits/statfs.h
+++ b/ports/sysdeps/unix/sysv/linux/generic/bits/statfs.h
@@ -38,10 +38,10 @@
# define __field64(type, type64, name) type name
#elif __BYTE_ORDER == __LITTLE_ENDIAN
# define __field64(type, type64, name) \
- type name __attribute__((__aligned__(8))); int __##name##_pad
+ type name __attribute__((__aligned__ (__alignof__ (type64)))); int __##name##_pad
#else
# define __field64(type, type64, name) \
- int __##name##_pad __attribute__((__aligned__(8))); type name
+ int __##name##_pad __attribute__((__aligned__ (__alignof__ (type64)))); type name
#endif
struct statfs
@@ -58,7 +58,7 @@ struct statfs
__SWORD_TYPE f_frsize;
__SWORD_TYPE f_flags;
__SWORD_TYPE f_spare[4];
- } __attribute__((__aligned__(8)));
+ };
#undef __field64
@@ -77,7 +77,7 @@ struct statfs64
__SWORD_TYPE f_frsize;
__SWORD_TYPE f_flags;
__SWORD_TYPE f_spare[4];
- } __attribute__((__aligned__(8)));
+ };
#endif
/* Tell code we have these members. */
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/Versions b/ports/sysdeps/unix/sysv/linux/hppa/Versions
index a62ef195ad..a392feebc5 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/Versions
+++ b/ports/sysdeps/unix/sysv/linux/hppa/Versions
@@ -32,6 +32,9 @@ libc {
_sys_errlist; sys_errlist; _sys_nerr; sys_nerr;
prlimit64;
}
+ GLIBC_2.19 {
+ fanotify_mark;
+ }
}
librt {
GLIBC_2.3 {
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h b/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h
index 744548a03e..76faa4086d 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h
+++ b/ports/sysdeps/unix/sysv/linux/hppa/bits/fcntl.h
@@ -37,6 +37,7 @@
#define __O_CLOEXEC 010000000 /* Set close_on_exec. */
#define __O_NOATIME 004000000 /* Do not set atime. */
#define __O_PATH 020000000
+#define __O_TMPFILE 040010000 /* Atomically create nameless file. */
#define __O_LARGEFILE 00004000
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h b/ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h
index 04a75e2e87..34827a940f 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h
+++ b/ports/sysdeps/unix/sysv/linux/hppa/bits/ipc.h
@@ -57,6 +57,6 @@ struct ipc_perm
#endif
unsigned short int __seq; /* Sequence number. */
unsigned int __pad3;
- __extension__ unsigned long long int __unused1;
- __extension__ unsigned long long int __unused2;
+ __extension__ unsigned long long int __glibc_reserved1;
+ __extension__ unsigned long long int __glibc_reserved2;
};
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/msq.h b/ports/sysdeps/unix/sysv/linux/hppa/bits/msq.h
index ac35f510b5..366165e0fb 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/bits/msq.h
+++ b/ports/sysdeps/unix/sysv/linux/hppa/bits/msq.h
@@ -56,8 +56,8 @@ struct msqid_ds
msglen_t msg_qbytes; /* max number of bytes allowed on queue */
__pid_t msg_lspid; /* pid of last msgsnd() */
__pid_t msg_lrpid; /* pid of last msgrcv() */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
#ifdef __USE_MISC
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/sem.h b/ports/sysdeps/unix/sysv/linux/hppa/bits/sem.h
index 9c180166de..9f471176da 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/bits/sem.h
+++ b/ports/sysdeps/unix/sysv/linux/hppa/bits/sem.h
@@ -48,8 +48,8 @@ struct semid_ds
#endif
__time_t sem_ctime; /* last time changed by semctl() */
unsigned long int sem_nsems; /* number of semaphores in set */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
/* The user should define a union like the following to use it for arguments
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h b/ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h
index 9ebf2ec0d0..6905df0d26 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h
+++ b/ports/sysdeps/unix/sysv/linux/hppa/bits/shm.h
@@ -64,8 +64,8 @@ struct shmid_ds
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
#ifdef __USE_MISC
@@ -87,10 +87,10 @@ struct shminfo
unsigned long shmmni;
unsigned long shmseg;
unsigned long shmall;
- unsigned long __unused1;
- unsigned long __unused2;
- unsigned long __unused3;
- unsigned long __unused4;
+ unsigned long __glibc_reserved1;
+ unsigned long __glibc_reserved2;
+ unsigned long __glibc_reserved3;
+ unsigned long __glibc_reserved4;
};
struct shm_info
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/kernel_stat.h b/ports/sysdeps/unix/sysv/linux/hppa/kernel_stat.h
index a85c5be464..e3ea72402f 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/kernel_stat.h
+++ b/ports/sysdeps/unix/sysv/linux/hppa/kernel_stat.h
@@ -13,11 +13,11 @@ struct kernel_stat {
struct timespec st_ctim;
long st_blksize;
long st_blocks;
- unsigned long __unused1; /* ACL stuff */
- unsigned long __unused2; /* network */
- unsigned long __unused3; /* network */
- unsigned long __unused4; /* cnodes */
- unsigned short __unused5; /* netsite */
+ unsigned long __glibc_reserved1; /* ACL stuff */
+ unsigned long __glibc_reserved2; /* network */
+ unsigned long __glibc_reserved3; /* network */
+ unsigned long __glibc_reserved4; /* cnodes */
+ unsigned short __glibc_reserved5; /* netsite */
short st_fstype;
unsigned long st_realdev;
unsigned short st_basemode;
diff --git a/ports/sysdeps/unix/sysv/linux/hppa/syscalls.list b/ports/sysdeps/unix/sysv/linux/hppa/syscalls.list
index ae36d46a4d..ae462edfe7 100644
--- a/ports/sysdeps/unix/sysv/linux/hppa/syscalls.list
+++ b/ports/sysdeps/unix/sysv/linux/hppa/syscalls.list
@@ -36,3 +36,4 @@ socketpair - socketpair i:iiif __socketpair socketpair
setrlimit - setrlimit i:ip __setrlimit setrlimit
getrlimit - getrlimit i:ip __getrlimit getrlimit
prlimit64 EXTRA prlimit64 i:iipp __prlimit64 prlimit64@@GLIBC_2.17
+fanotify_mark EXTRA fanotify_mark i:iiiiis __fanotify_mark fanotify_mark@@GLIBC_2.19
diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/ipc.h b/ports/sysdeps/unix/sysv/linux/ia64/bits/ipc.h
index 1063828194..fb78b5bcf0 100644
--- a/ports/sysdeps/unix/sysv/linux/ia64/bits/ipc.h
+++ b/ports/sysdeps/unix/sysv/linux/ia64/bits/ipc.h
@@ -48,6 +48,6 @@ struct ipc_perm
__mode_t mode; /* Read/write permission. */
unsigned short int __seq; /* Sequence number. */
unsigned short int __pad1;
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/msq.h b/ports/sysdeps/unix/sysv/linux/ia64/bits/msq.h
index 8519390c48..f3f9f75a5a 100644
--- a/ports/sysdeps/unix/sysv/linux/ia64/bits/msq.h
+++ b/ports/sysdeps/unix/sysv/linux/ia64/bits/msq.h
@@ -42,8 +42,8 @@ struct msqid_ds
unsigned long int msg_qbytes; /* max number of bytes allowed on queue */
__pid_t msg_lspid; /* pid of last msgsnd() */
__pid_t msg_lrpid; /* pid of last msgrcv() */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
#ifdef __USE_MISC
diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/sem.h b/ports/sysdeps/unix/sysv/linux/ia64/bits/sem.h
index 392493bca8..998ba85ef7 100644
--- a/ports/sysdeps/unix/sysv/linux/ia64/bits/sem.h
+++ b/ports/sysdeps/unix/sysv/linux/ia64/bits/sem.h
@@ -42,8 +42,8 @@ struct semid_ds
__time_t sem_otime; /* last semop() time */
__time_t sem_ctime; /* last time changed by semctl() */
unsigned long int sem_nsems; /* number of semaphores in set */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
/* The user should define a union like the following to use it for arguments
diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/shm.h b/ports/sysdeps/unix/sysv/linux/ia64/bits/shm.h
index 05755f87eb..a6c0910f74 100644
--- a/ports/sysdeps/unix/sysv/linux/ia64/bits/shm.h
+++ b/ports/sysdeps/unix/sysv/linux/ia64/bits/shm.h
@@ -52,8 +52,8 @@ struct shmid_ds
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
#ifdef __USE_MISC
@@ -75,10 +75,10 @@ struct shminfo
unsigned long int shmmni;
unsigned long int shmseg;
unsigned long int shmall;
- unsigned long int __unused1;
- unsigned long int __unused2;
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
struct shm_info
diff --git a/ports/sysdeps/unix/sysv/linux/ia64/bits/stat.h b/ports/sysdeps/unix/sysv/linux/ia64/bits/stat.h
index b2071cdf55..d984dc4477 100644
--- a/ports/sysdeps/unix/sysv/linux/ia64/bits/stat.h
+++ b/ports/sysdeps/unix/sysv/linux/ia64/bits/stat.h
@@ -64,7 +64,7 @@ struct stat
#endif
__blksize_t st_blksize; /* Optimal block size for I/O. */
__blkcnt_t st_blocks; /* Nr. 512-byte blocks allocated. */
- long int __unused[3];
+ long int __glibc_reserved[3];
};
#ifdef __USE_LARGEFILE64
@@ -103,7 +103,7 @@ struct stat64
#endif
__blksize_t st_blksize; /* Optimal block size for I/O. */
__blkcnt64_t st_blocks; /* Nr. 512-byte blocks allocated. */
- long int __unused[3];
+ long int __glibc_reserved[3];
};
#endif
diff --git a/ports/sysdeps/unix/sysv/linux/ia64/configure b/ports/sysdeps/unix/sysv/linux/ia64/configure
index 71323718af..1d4e5d18d6 100644
--- a/ports/sysdeps/unix/sysv/linux/ia64/configure
+++ b/ports/sysdeps/unix/sysv/linux/ia64/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux/ia64
ldd_rewrite_script=$dir/ldd-rewrite.sed
diff --git a/ports/sysdeps/unix/sysv/linux/ia64/configure.in b/ports/sysdeps/unix/sysv/linux/ia64/configure.ac
index 4fb564721b..4fb564721b 100644
--- a/ports/sysdeps/unix/sysv/linux/ia64/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/ia64/configure.ac
diff --git a/ports/sysdeps/unix/sysv/linux/m68k/bits/stat.h b/ports/sysdeps/unix/sysv/linux/m68k/bits/stat.h
index fb65b1446c..da6e45647c 100644
--- a/ports/sysdeps/unix/sysv/linux/m68k/bits/stat.h
+++ b/ports/sysdeps/unix/sysv/linux/m68k/bits/stat.h
@@ -84,8 +84,8 @@ struct stat
unsigned long int st_ctimensec; /* Nsecs of last status change. */
#endif
#ifndef __USE_FILE_OFFSET64
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
#else
__ino64_t st_ino; /* File serial number. */
#endif
diff --git a/ports/sysdeps/unix/sysv/linux/m68k/configure b/ports/sysdeps/unix/sysv/linux/m68k/configure
index a704dacee6..8e955387b7 100644
--- a/ports/sysdeps/unix/sysv/linux/m68k/configure
+++ b/ports/sysdeps/unix/sysv/linux/m68k/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
case $machine in
m68k/coldfire)
;;
diff --git a/ports/sysdeps/unix/sysv/linux/m68k/configure.in b/ports/sysdeps/unix/sysv/linux/m68k/configure.ac
index c21ca9dd47..c21ca9dd47 100644
--- a/ports/sysdeps/unix/sysv/linux/m68k/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/m68k/configure.ac
diff --git a/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h b/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h
index 4203780276..e9763cb1d2 100644
--- a/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h
+++ b/ports/sysdeps/unix/sysv/linux/m68k/kernel-features.h
@@ -47,3 +47,9 @@
# undef __ASSUME_PSELECT
# undef __ASSUME_PPOLL
#endif
+
+/* No support for PI futexes or robust mutexes before 3.10 for m68k. */
+#if __LINUX_KERNEL_VERSION < 0x030a00
+# undef __ASSUME_REQUEUE_PI
+# undef __ASSUME_SET_ROBUST_LIST
+#endif
diff --git a/ports/sysdeps/unix/sysv/linux/m68k/mmap64.c b/ports/sysdeps/unix/sysv/linux/m68k/mmap64.c
new file mode 100644
index 0000000000..8bf8987017
--- /dev/null
+++ b/ports/sysdeps/unix/sysv/linux/m68k/mmap64.c
@@ -0,0 +1,5 @@
+/* ColdFire and Sun 3 kernels have PAGE_SHIFT set to 13 and expect
+ mmap2 offset to be provided in 8K pages. Determine the shift
+ dynamically with getpagesize. */
+#define MMAP2_PAGE_SHIFT -1
+#include <sysdeps/unix/sysv/linux/mmap64.c>
diff --git a/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h b/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h
index 0df660447f..3a2547765f 100644
--- a/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h
+++ b/ports/sysdeps/unix/sysv/linux/m68k/nptl/lowlevellock.h
@@ -38,6 +38,8 @@
#define FUTEX_TRYLOCK_PI 8
#define FUTEX_WAIT_BITSET 9
#define FUTEX_WAKE_BITSET 10
+#define FUTEX_WAIT_REQEUE_PI 11
+#define FUTEX_CMP_REQEUE_PI 12
#define FUTEX_PRIVATE_FLAG 128
#define FUTEX_CLOCK_REALTIME 256
@@ -142,6 +144,33 @@
INTERNAL_SYSCALL_ERROR_P (__ret, __err); \
})
+/* Priority Inheritance support. */
+#define lll_futex_wait_requeue_pi(futexp, val, mutex, private) \
+ lll_futex_timed_wait_requeue_pi (futexp, val, NULL, 0, mutex, private)
+
+#define lll_futex_timed_wait_requeue_pi(futexp, val, timespec, clockbit, \
+ mutex, private) \
+ ({ \
+ INTERNAL_SYSCALL_DECL (__err); \
+ long int __ret; \
+ int __op = FUTEX_WAIT_REQUEUE_PI | clockbit; \
+ \
+ __ret = INTERNAL_SYSCALL (futex, __err, 5, (futexp), \
+ __lll_private_flag (__op, private), \
+ (val), (timespec), mutex); \
+ __ret; \
+ })
+
+#define lll_futex_cmp_requeue_pi(futexp, nr_wake, nr_move, mutex, val, priv) \
+ ({ \
+ INTERNAL_SYSCALL_DECL (__err); \
+ long int __ret; \
+ __ret = INTERNAL_SYSCALL (futex, __err, 6, (futexp), \
+ __lll_private_flag (FUTEX_CMP_REQUEUE_PI, priv),\
+ (nr_wake), (nr_move), (mutex), (val)); \
+ INTERNAL_SYSCALL_ERROR_P (__ret, __err); \
+ })
+
#define lll_trylock(lock) \
atomic_compare_and_exchange_val_acq (&(lock), 1, 0)
diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/bits/stat.h b/ports/sysdeps/unix/sysv/linux/microblaze/bits/stat.h
index 0fa0edb5b0..e41d99270f 100644
--- a/ports/sysdeps/unix/sysv/linux/microblaze/bits/stat.h
+++ b/ports/sysdeps/unix/sysv/linux/microblaze/bits/stat.h
@@ -71,8 +71,8 @@ struct stat
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
#endif
- unsigned int __unused4;
- unsigned int __unused5;
+ unsigned int __glibc_reserved4;
+ unsigned int __glibc_reserved5;
};
#else /* __USE_FILE_OFFSET64 */
/* MS: If __USE_FILE_OFFSET64 is setup then struct stat should match stat64
@@ -115,8 +115,8 @@ struct stat
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
#endif
- unsigned int __unused4;
- unsigned int __unused5;
+ unsigned int __glibc_reserved4;
+ unsigned int __glibc_reserved5;
};
#endif /* __USE_FILE_OFFSET64 */
@@ -156,8 +156,8 @@ struct stat64
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
#endif
- unsigned int __unused4;
- unsigned int __unused5;
+ unsigned int __glibc_reserved4;
+ unsigned int __glibc_reserved5;
};
#endif
diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/configure b/ports/sysdeps/unix/sysv/linux/microblaze/configure
index fa7da73931..086638856c 100644
--- a/ports/sysdeps/unix/sysv/linux/microblaze/configure
+++ b/ports/sysdeps/unix/sysv/linux/microblaze/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux/microblaze.
arch_minimum_kernel=2.6.30
diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/configure.in b/ports/sysdeps/unix/sysv/linux/microblaze/configure.ac
index f283d37702..f283d37702 100644
--- a/ports/sysdeps/unix/sysv/linux/microblaze/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/microblaze/configure.ac
diff --git a/ports/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h b/ports/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h
index 2823856e4d..12d718ef04 100644
--- a/ports/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h
+++ b/ports/sysdeps/unix/sysv/linux/microblaze/kernel_stat.h
@@ -40,10 +40,10 @@ struct kernel_stat
struct timespec st_ctim;
#define _HAVE_STAT_NSEC
#define _HAVE_STAT64_NSEC
- unsigned int __unused4;
+ unsigned int __glibc_reserved4;
#define _HAVE_STAT___UNUSED4
#define _HAVE_STAT64___UNUSED4
- unsigned int __unused5;
+ unsigned int __glibc_reserved5;
#define _HAVE_STAT___UNUSED5
#define _HAVE_STAT64___UNUSED5
};
diff --git a/ports/sysdeps/unix/sysv/linux/mips/Makefile b/ports/sysdeps/unix/sysv/linux/mips/Makefile
index 1e54036bfe..9070b775c4 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/Makefile
+++ b/ports/sysdeps/unix/sysv/linux/mips/Makefile
@@ -8,7 +8,9 @@ sysdep_routines += cachectl cacheflush sysmips _test_and_set
sysdep_headers += sys/cachectl.h sys/sysmips.h sys/tas.h
endif
-abi-variants := o32_soft o32_hard n32_soft n32_hard n64_soft n64_hard
+abi-variants := o32_soft o32_hard o32_soft_2008 o32_hard_2008
+abi-variants += n32_soft n32_hard n32_soft_2008 n32_hard_2008
+abi-variants += n64_soft n64_hard n64_soft_2008 n64_hard_2008
ifeq (,$(filter $(default-abi),$(abi-variants)))
Unknown ABI, must be one of $(abi-variants)
@@ -18,29 +20,89 @@ abi-includes := sgidefs.h
# _MIPS_SIM_ABI32 == 1, _MIPS_SIM_NABI32 == 2, _MIPS_SIM_ABI64 == 3
abi-o32_soft-options := -U_MIPS_SIM -D_MIPS_SIM=1 \
- -D__mips_soft_float -U__mips_hard_float
-abi-o32_soft-condition := defined(__mips_soft_float) \
- && (_MIPS_SIM == _MIPS_SIM_ABI32)
+ -D__mips_soft_float -U__mips_hard_float \
+ -U__mips_nan2008
+abi-o32_soft-condition := !defined(__mips_nan2008) \
+ && defined(__mips_soft_float) \
+ && (_MIPS_SIM == _MIPS_SIM_ABI32)
+abi-o32_soft-ld-soname := ld.so.1
abi-o32_hard-options := -U_MIPS_SIM -D_MIPS_SIM=1 \
- -D__mips_hard_float -U__mips_soft_float
-abi-o32_hard-condition := defined(__mips_hard_float) \
+ -D__mips_hard_float -U__mips_soft_float \
+ -U__mips_nan2008
+abi-o32_hard-condition := !defined(__mips_nan2008) \
+ && defined(__mips_hard_float) \
&& (_MIPS_SIM == _MIPS_SIM_ABI32)
+abi-o32_hard-ld-soname := ld.so.1
+abi-o32_soft_2008-options := -U_MIPS_SIM -D_MIPS_SIM=1 \
+ -D__mips_soft_float -U__mips_hard_float \
+ -D__mips_nan2008
+abi-o32_soft_2008-condition := defined(__mips_nan2008) \
+ && defined(__mips_soft_float) \
+ && (_MIPS_SIM == _MIPS_SIM_ABI32)
+abi-o32_soft_2008-ld-soname := ld-linux-mipsn8.so.1
+abi-o32_hard_2008-options := -U_MIPS_SIM -D_MIPS_SIM=1 \
+ -D__mips_hard_float -U__mips_soft_float \
+ -D__mips_nan2008
+abi-o32_hard_2008-condition := defined(__mips_nan2008) \
+ && defined(__mips_hard_float) \
+ && (_MIPS_SIM == _MIPS_SIM_ABI32)
+abi-o32_hard_2008-ld-soname := ld-linux-mipsn8.so.1
abi-n32_soft-options := -U_MIPS_SIM -D_MIPS_SIM=2 \
- -D__mips_soft_float -U__mips_hard_float
-abi-n32_soft-condition := defined(__mips_soft_float) \
+ -D__mips_soft_float -U__mips_hard_float \
+ -U__mips_nan2008
+abi-n32_soft-condition := !defined(__mips_nan2008) \
+ && defined(__mips_soft_float) \
&& (_MIPS_SIM == _MIPS_SIM_NABI32)
+abi-n32_soft-ld-soname := ld.so.1
abi-n32_hard-options := -U_MIPS_SIM -D_MIPS_SIM=2 \
- -D__mips_hard_float -U__mips_soft_float
-abi-n32_hard-condition := defined(__mips_hard_float) \
+ -D__mips_hard_float -U__mips_soft_float \
+ -U__mips_nan2008
+abi-n32_hard-condition := !defined(__mips_nan2008) \
+ && defined(__mips_hard_float) \
&& (_MIPS_SIM == _MIPS_SIM_NABI32)
+abi-n32_hard-ld-soname := ld.so.1
+abi-n32_soft_2008-options := -U_MIPS_SIM -D_MIPS_SIM=2 \
+ -D__mips_soft_float -U__mips_hard_float \
+ -D__mips_nan2008
+abi-n32_soft_2008-condition := defined(__mips_nan2008) \
+ && defined(__mips_soft_float) \
+ && (_MIPS_SIM == _MIPS_SIM_NABI32)
+abi-n32_soft_2008-ld-soname := ld-linux-mipsn8.so.1
+abi-n32_hard_2008-options := -U_MIPS_SIM -D_MIPS_SIM=2 \
+ -D__mips_hard_float -U__mips_soft_float \
+ -D__mips_nan2008
+abi-n32_hard_2008-condition := defined(__mips_nan2008) \
+ && defined(__mips_hard_float) \
+ && (_MIPS_SIM == _MIPS_SIM_NABI32)
+abi-n32_hard_2008-ld-soname := ld-linux-mipsn8.so.1
abi-n64_soft-options := -U_MIPS_SIM -D_MIPS_SIM=3 \
- -D__mips_soft_float -U__mips_hard_float
-abi-n64_soft-condition := defined(__mips_soft_float) \
+ -D__mips_soft_float -U__mips_hard_float \
+ -U__mips_nan2008
+abi-n64_soft-condition := !defined(__mips_nan2008) \
+ && defined(__mips_soft_float) \
&& (_MIPS_SIM == _MIPS_SIM_ABI64)
+abi-n64_soft-ld-soname := ld.so.1
abi-n64_hard-options := -U_MIPS_SIM -D_MIPS_SIM=3 \
- -D__mips_hard_float -U__mips_soft_float
-abi-n64_hard-condition := defined(__mips_hard_float) \
+ -D__mips_hard_float -U__mips_soft_float \
+ -U__mips_nan2008
+abi-n64_hard-condition := !defined(__mips_nan2008) \
+ && defined(__mips_hard_float) \
&& (_MIPS_SIM == _MIPS_SIM_ABI64)
+abi-n64_hard-ld-soname := ld.so.1
+abi-n64_soft_2008-options := -U_MIPS_SIM -D_MIPS_SIM=3 \
+ -D__mips_soft_float -U__mips_hard_float \
+ -D__mips_nan2008
+abi-n64_soft_2008-condition := defined(__mips_nan2008) \
+ && defined(__mips_soft_float) \
+ && (_MIPS_SIM == _MIPS_SIM_ABI64)
+abi-n64_soft_2008-ld-soname := ld-linux-mipsn8.so.1
+abi-n64_hard_2008-options := -U_MIPS_SIM -D_MIPS_SIM=3 \
+ -D__mips_hard_float -U__mips_soft_float \
+ -D__mips_nan2008
+abi-n64_hard_2008-condition := defined(__mips_nan2008) \
+ && defined(__mips_hard_float) \
+ && (_MIPS_SIM == _MIPS_SIM_ABI64)
+abi-n64_hard_2008-ld-soname := ld-linux-mipsn8.so.1
ifeq ($(subdir),elf)
ifeq ($(build-shared),yes)
diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/ipc.h b/ports/sysdeps/unix/sysv/linux/mips/bits/ipc.h
index 8b2892d52b..82496d6841 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/bits/ipc.h
+++ b/ports/sysdeps/unix/sysv/linux/mips/bits/ipc.h
@@ -49,6 +49,6 @@ struct ipc_perm
unsigned int mode; /* Read/write permission. */
unsigned short int __seq; /* Sequence number. */
unsigned short int __pad1;
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/msq.h b/ports/sysdeps/unix/sysv/linux/mips/bits/msq.h
index e814bc722f..f97585cfd3 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/bits/msq.h
+++ b/ports/sysdeps/unix/sysv/linux/mips/bits/msq.h
@@ -39,33 +39,33 @@ struct msqid_ds
{
struct ipc_perm msg_perm; /* structure describing operation permission */
#if __WORDSIZE == 32 && defined (__MIPSEB__)
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
#endif
__time_t msg_stime; /* time of last msgsnd command */
#if __WORDSIZE == 32 && defined (__MIPSEL__)
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
#endif
#if __WORDSIZE == 32 && defined (__MIPSEB__)
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
#endif
__time_t msg_rtime; /* time of last msgrcv command */
#if __WORDSIZE == 32 && defined (__MIPSEL__)
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
#endif
#if __WORDSIZE == 32 && defined (__MIPSEB__)
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
#endif
__time_t msg_ctime; /* time of last change */
#if __WORDSIZE == 32 && defined (__MIPSEL__)
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
#endif
unsigned long int __msg_cbytes; /* current number of bytes on queue */
msgqnum_t msg_qnum; /* number of messages currently on queue */
msglen_t msg_qbytes; /* max number of bytes allowed on queue */
__pid_t msg_lspid; /* pid of last msgsnd() */
__pid_t msg_lrpid; /* pid of last msgrcv() */
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#ifdef __USE_MISC
diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/resource.h b/ports/sysdeps/unix/sysv/linux/mips/bits/resource.h
index 0882b408f0..e30bbebabc 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/bits/resource.h
+++ b/ports/sysdeps/unix/sysv/linux/mips/bits/resource.h
@@ -122,10 +122,10 @@ enum __rlimit_resource
# ifndef __USE_FILE_OFFSET64
# define RLIM_INFINITY ((long int)(~0UL >> 1))
# else
-# define RLIM_INFINITY 0x7fffffffffffffffULL
+# define RLIM_INFINITY 0xffffffffffffffffULL
# endif
# ifdef __USE_LARGEFILE64
-# define RLIM64_INFINITY 0x7fffffffffffffffULL
+# define RLIM64_INFINITY 0xffffffffffffffffULL
# endif
#endif
diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/sem.h b/ports/sysdeps/unix/sysv/linux/mips/bits/sem.h
index c2d73aa4e8..739cbc415f 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/bits/sem.h
+++ b/ports/sysdeps/unix/sysv/linux/mips/bits/sem.h
@@ -41,8 +41,8 @@ struct semid_ds
__time_t sem_otime; /* last semop() time */
__time_t sem_ctime; /* last time changed by semctl() */
unsigned long int sem_nsems; /* number of semaphores in set */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
/* The user should define a union like the following to use it for arguments
diff --git a/ports/sysdeps/unix/sysv/linux/mips/bits/shm.h b/ports/sysdeps/unix/sysv/linux/mips/bits/shm.h
index 5c118037b1..28d8ab05d1 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/bits/shm.h
+++ b/ports/sysdeps/unix/sysv/linux/mips/bits/shm.h
@@ -53,8 +53,8 @@ struct shmid_ds
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
#ifdef __USE_MISC
@@ -75,10 +75,10 @@ struct shminfo
unsigned long int shmmni;
unsigned long int shmseg;
unsigned long int shmall;
- unsigned long int __unused1;
- unsigned long int __unused2;
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
struct shm_info
diff --git a/ports/sysdeps/unix/sysv/linux/mips/configure b/ports/sysdeps/unix/sysv/linux/mips/configure
index b4ee83e3ae..e8b0d7b154 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/configure
+++ b/ports/sysdeps/unix/sysv/linux/mips/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux/mips.
@@ -105,8 +105,168 @@ if test -z "$libc_mips_float"; then
as_fn_error $? "could not determine if compiler is using hard or soft floating point ABI" "$LINENO" 5
fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
+if ${ac_cv_path_GREP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$GREP"; then
+ ac_path_GREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in grep ggrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+# Check for GNU ac_path_GREP and select it if it is found.
+ # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'GREP' >> "conftest.nl"
+ "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_GREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_GREP="$ac_path_GREP"
+ ac_path_GREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_GREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_GREP"; then
+ as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
+else
+ ac_cv_path_GREP=$GREP
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+$as_echo "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+$as_echo_n "checking for egrep... " >&6; }
+if ${ac_cv_path_EGREP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ if test -z "$EGREP"; then
+ ac_path_EGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in egrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+ # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'EGREP' >> "conftest.nl"
+ "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_EGREP="$ac_path_EGREP"
+ ac_path_EGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_EGREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_EGREP"; then
+ as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
+else
+ ac_cv_path_EGREP=$EGREP
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+$as_echo "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler is using the 2008 NaN encoding" >&5
+$as_echo_n "checking whether the compiler is using the 2008 NaN encoding... " >&6; }
+if ${libc_cv_mips_nan2008+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+dnl
+#ifdef __mips_nan2008
+yes
+#endif
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "yes" >/dev/null 2>&1; then :
+ libc_cv_mips_nan2008=yes
+else
+ libc_cv_mips_nan2008=no
+fi
+rm -f conftest*
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_mips_nan2008" >&5
+$as_echo "$libc_cv_mips_nan2008" >&6; }
+
+libc_mips_nan=
+if test x"$libc_cv_mips_nan2008" = xyes; then
+ libc_mips_nan=_2008
+fi
+
config_vars="$config_vars
-default-abi = ${libc_mips_abi}_${libc_mips_float}"
+default-abi = ${libc_mips_abi}_${libc_mips_float}${libc_mips_nan}"
case "$prefix" in
/usr | /usr/)
@@ -138,3 +298,12 @@ case "$prefix" in
esac
libc_cv_gcc_unwind_find_fde=yes
+
+if test -z "$arch_minimum_kernel"; then
+ if test x$libc_cv_mips_nan2008 = xyes; then
+ # FIXME: Adjust this setting to the actual first upstream kernel
+ # version to support the 2008 NaN encoding and then remove this
+ # comment.
+ arch_minimum_kernel=10.0.0
+ fi
+fi
diff --git a/ports/sysdeps/unix/sysv/linux/mips/configure.in b/ports/sysdeps/unix/sysv/linux/mips/configure.ac
index b8dde6ef7a..7087a14a5e 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/mips/configure.ac
@@ -44,7 +44,19 @@ if test -z "$libc_mips_float"; then
AC_MSG_ERROR([could not determine if compiler is using hard or soft floating point ABI])
fi
-LIBC_CONFIG_VAR([default-abi], [${libc_mips_abi}_${libc_mips_float}])
+AC_CACHE_CHECK([whether the compiler is using the 2008 NaN encoding],
+ libc_cv_mips_nan2008, [AC_EGREP_CPP(yes, [dnl
+#ifdef __mips_nan2008
+yes
+#endif], libc_cv_mips_nan2008=yes, libc_cv_mips_nan2008=no)])
+
+libc_mips_nan=
+if test x"$libc_cv_mips_nan2008" = xyes; then
+ libc_mips_nan=_2008
+fi
+
+LIBC_CONFIG_VAR([default-abi],
+ [${libc_mips_abi}_${libc_mips_float}${libc_mips_nan}])
case "$prefix" in
/usr | /usr/)
@@ -76,3 +88,12 @@ case "$prefix" in
esac
libc_cv_gcc_unwind_find_fde=yes
+
+if test -z "$arch_minimum_kernel"; then
+ if test x$libc_cv_mips_nan2008 = xyes; then
+ # FIXME: Adjust this setting to the actual first upstream kernel
+ # version to support the 2008 NaN encoding and then remove this
+ # comment.
+ arch_minimum_kernel=10.0.0
+ fi
+fi
diff --git a/ports/sysdeps/unix/sysv/linux/mips/dl-cache.h b/ports/sysdeps/unix/sysv/linux/mips/dl-cache.h
index 4a7f3f1f2a..49ad99ab92 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/dl-cache.h
+++ b/ports/sysdeps/unix/sysv/linux/mips/dl-cache.h
@@ -18,11 +18,27 @@
#include <ldconfig.h>
-/* Redefine the cache ID for new ABIs; o32 keeps using the generic check. */
-#if _MIPS_SIM == _ABI64
-# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS64_LIBN64 | FLAG_ELF_LIBC6)
-#elif _MIPS_SIM == _ABIN32
-# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS64_LIBN32 | FLAG_ELF_LIBC6)
+#if ((defined __mips_nan2008 && !defined HAVE_MIPS_NAN2008) \
+ || (!defined __mips_nan2008 && defined HAVE_MIPS_NAN2008))
+# error "Configuration inconsistency: __mips_nan2008 != HAVE_MIPS_NAN2008, overridden CFLAGS?"
+#endif
+
+/* Redefine the cache ID for new ABIs and 2008 NaN support; legacy o32
+ keeps using the generic check. */
+#ifdef __mips_nan2008
+# if _MIPS_SIM == _ABIO32
+# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS_LIB32_NAN2008 | FLAG_ELF_LIBC6)
+# elif _MIPS_SIM == _ABI64
+# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS64_LIBN64_NAN2008 | FLAG_ELF_LIBC6)
+# elif _MIPS_SIM == _ABIN32
+# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS64_LIBN32_NAN2008 | FLAG_ELF_LIBC6)
+# endif
+#else
+# if _MIPS_SIM == _ABI64
+# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS64_LIBN64 | FLAG_ELF_LIBC6)
+# elif _MIPS_SIM == _ABIN32
+# define _DL_CACHE_DEFAULT_ID (FLAG_MIPS64_LIBN32 | FLAG_ELF_LIBC6)
+# endif
#endif
#ifdef _DL_CACHE_DEFAULT_ID
diff --git a/ports/sysdeps/unix/sysv/linux/mips/getrlimit64.c b/ports/sysdeps/unix/sysv/linux/mips/getrlimit64.c
new file mode 100644
index 0000000000..bd2e523f81
--- /dev/null
+++ b/ports/sysdeps/unix/sysv/linux/mips/getrlimit64.c
@@ -0,0 +1,66 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#if _MIPS_SIM == _ABIO32 || _MIPS_SIM == _ABIN32
+
+# include <shlib-compat.h>
+
+# define getrlimit64 __new_getrlimit64
+# include <sysdeps/unix/sysv/linux/getrlimit64.c>
+# undef getrlimit64
+
+versioned_symbol (libc, __new_getrlimit64, getrlimit64, GLIBC_2_19);
+strong_alias (__new_getrlimit64, __GI_getrlimit64)
+
+# if SHLIB_COMPAT (libc, GLIBC_2_2, GLIBC_2_19)
+
+/* RLIM64_INFINITY was supposed to be a glibc convention rather than
+ anything seen by the kernel, but it ended being passed to the kernel
+ through the prlimit64 syscall. Given that a lot of binaries with
+ the wrong constant value are in the wild, provide a wrapper function
+ fixing the value after the syscall. */
+
+# define OLD_RLIM64_INFINITY 0x7fffffffffffffffULL
+
+int
+attribute_compat_text_section
+__old_getrlimit64 (enum __rlimit_resource resource,
+ struct rlimit64 *rlimits)
+{
+ struct rlimit64 krlimits;
+
+ if (__new_getrlimit64 (resource, &krlimits) < 0)
+ return -1;
+
+ if (krlimits.rlim_cur == RLIM64_INFINITY)
+ rlimits->rlim_cur = OLD_RLIM64_INFINITY;
+ else
+ rlimits->rlim_cur = krlimits.rlim_cur;
+ if (krlimits.rlim_max == RLIM64_INFINITY)
+ rlimits->rlim_max = OLD_RLIM64_INFINITY;
+ else
+ rlimits->rlim_max = krlimits.rlim_max;
+
+ return 0;
+}
+
+compat_symbol (libc, __old_getrlimit64, getrlimit64, GLIBC_2_2);
+# endif
+
+#else /* !_ABI_O32 && !_ABI_N32 */
+# include <sysdeps/unix/sysv/linux/getrlimit64.c>
+#endif
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/Versions b/ports/sysdeps/unix/sysv/linux/mips/mips32/Versions
new file mode 100644
index 0000000000..9621fb5cae
--- /dev/null
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips32/Versions
@@ -0,0 +1,6 @@
+libc {
+ GLIBC_2.19 {
+ getrlimit64;
+ setrlimit64;
+ }
+}
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist
index f01278e4a4..1c3490cdeb 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist
@@ -1403,6 +1403,10 @@ GLIBC_2.18
__cxa_thread_atexit_impl F
__mips_fpu_getcw F
__mips_fpu_setcw F
+GLIBC_2.19
+ GLIBC_2.19 A
+ getrlimit64 F
+ setrlimit64 F
GLIBC_2.2
GLIBC_2.2 A
_Exit F
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/configure b/ports/sysdeps/unix/sysv/linux/mips/mips64/configure
index f86f3276a5..26bed649db 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/configure
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux/mips/mips64.
ldd_rewrite_script=$dir/ldd-rewrite.sed
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/configure.in b/ports/sysdeps/unix/sysv/linux/mips/mips64/configure.ac
index c137ec5552..c137ec5552 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/configure.ac
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions
new file mode 100644
index 0000000000..9621fb5cae
--- /dev/null
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/Versions
@@ -0,0 +1,6 @@
+libc {
+ GLIBC_2.19 {
+ getrlimit64;
+ setrlimit64;
+ }
+}
diff --git a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist
index 9dbbd97c8e..3e6ed351b6 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist
+++ b/ports/sysdeps/unix/sysv/linux/mips/mips64/n32/nptl/libc.abilist
@@ -1401,6 +1401,10 @@ GLIBC_2.17
GLIBC_2.18
GLIBC_2.18 A
__cxa_thread_atexit_impl F
+GLIBC_2.19
+ GLIBC_2.19 A
+ getrlimit64 F
+ setrlimit64 F
GLIBC_2.2
GLIBC_2.2 A
_Exit F
diff --git a/ports/sysdeps/unix/sysv/linux/mips/readelflib.c b/ports/sysdeps/unix/sysv/linux/mips/readelflib.c
index 10f0ff7022..fd57a735c3 100644
--- a/ports/sysdeps/unix/sysv/linux/mips/readelflib.c
+++ b/ports/sysdeps/unix/sysv/linux/mips/readelflib.c
@@ -33,19 +33,32 @@ process_elf_file (const char *file_name, const char *lib, int *flag,
unsigned int *osversion, char **soname, void *file_contents,
size_t file_length)
{
- ElfW(Ehdr) *elf_header = (ElfW(Ehdr) *) file_contents;
+ union
+ {
+ Elf64_Ehdr *eh64;
+ Elf32_Ehdr *eh32;
+ ElfW(Ehdr) *eh;
+ }
+ elf_header;
int ret;
- if (elf_header->e_ident [EI_CLASS] == ELFCLASS32)
+ elf_header.eh = file_contents;
+ if (elf_header.eh->e_ident [EI_CLASS] == ELFCLASS32)
{
- Elf32_Ehdr *elf32_header = (Elf32_Ehdr *) elf_header;
-
ret = process_elf32_file (file_name, lib, flag, osversion, soname,
file_contents, file_length);
+ if (!ret)
+ {
+ Elf32_Word flags = elf_header.eh32->e_flags;
+ int nan2008 = (flags & EF_MIPS_NAN2008) != 0;
- /* n32 libraries are always libc.so.6+. */
- if (!ret && (elf32_header->e_flags & EF_MIPS_ABI2) != 0)
- *flag = FLAG_MIPS64_LIBN32|FLAG_ELF_LIBC6;
+ /* n32 libraries are always libc.so.6+, o32 only if 2008 NaN. */
+ if ((flags & EF_MIPS_ABI2) != 0)
+ *flag = (nan2008 ? FLAG_MIPS64_LIBN32_NAN2008
+ : FLAG_MIPS64_LIBN32) | FLAG_ELF_LIBC6;
+ else if (nan2008)
+ *flag = FLAG_MIPS_LIB32_NAN2008 | FLAG_ELF_LIBC6;
+ }
}
else
{
@@ -53,7 +66,13 @@ process_elf_file (const char *file_name, const char *lib, int *flag,
file_contents, file_length);
/* n64 libraries are always libc.so.6+. */
if (!ret)
- *flag = FLAG_MIPS64_LIBN64|FLAG_ELF_LIBC6;
+ {
+ Elf64_Word flags = elf_header.eh64->e_flags;
+ int nan2008 = (flags & EF_MIPS_NAN2008) != 0;
+
+ *flag = (nan2008 ? FLAG_MIPS64_LIBN64_NAN2008
+ : FLAG_MIPS64_LIBN64) | FLAG_ELF_LIBC6;
+ }
}
return ret;
diff --git a/ports/sysdeps/unix/sysv/linux/mips/setrlimit64.c b/ports/sysdeps/unix/sysv/linux/mips/setrlimit64.c
new file mode 100644
index 0000000000..33af37b5c9
--- /dev/null
+++ b/ports/sysdeps/unix/sysv/linux/mips/setrlimit64.c
@@ -0,0 +1,63 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+
+#if _MIPS_SIM == _ABIO32 || _MIPS_SIM == _ABIN32
+
+# include <shlib-compat.h>
+
+# define setrlimit64 __new_setrlimit64
+# include <sysdeps/unix/sysv/linux/setrlimit64.c>
+# undef setrlimit64
+
+versioned_symbol (libc, __new_setrlimit64, setrlimit64, GLIBC_2_19);
+
+# if SHLIB_COMPAT (libc, GLIBC_2_2, GLIBC_2_19)
+
+/* RLIM64_INFINITY was supposed to be a glibc convention rather than
+ anything seen by the kernel, but it ended being passed to the kernel
+ through the prlimit64 syscall. Given that a lot of binaries with
+ the wrong constant value are in the wild, provide a wrapper function
+ fixing the value before the syscall. */
+
+# define OLD_RLIM64_INFINITY 0x7fffffffffffffffULL
+
+int
+attribute_compat_text_section
+__old_setrlimit64 (enum __rlimit_resource resource,
+ const struct rlimit64 *rlimits)
+{
+ struct rlimit64 krlimits;
+
+ if (rlimits->rlim_cur == OLD_RLIM64_INFINITY)
+ krlimits.rlim_cur = RLIM64_INFINITY;
+ else
+ krlimits.rlim_cur = rlimits->rlim_cur;
+ if (rlimits->rlim_max == OLD_RLIM64_INFINITY)
+ krlimits.rlim_max = RLIM64_INFINITY;
+ else
+ krlimits.rlim_max = rlimits->rlim_max;
+
+ return __new_setrlimit64 (resource, &krlimits);
+}
+
+compat_symbol (libc, __old_setrlimit64, setrlimit64, GLIBC_2_2);
+# endif
+
+#else /* !_ABI_O32 && !_ABI_N32 */
+# include <sysdeps/unix/sysv/linux/setrlimit64.c>
+#endif
diff --git a/ports/sysdeps/unix/sysv/linux/tile/configure b/ports/sysdeps/unix/sysv/linux/tile/configure
index 88b5788481..02f6c8c25d 100644
--- a/ports/sysdeps/unix/sysv/linux/tile/configure
+++ b/ports/sysdeps/unix/sysv/linux/tile/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux/tile.
arch_minimum_kernel=2.6.32
diff --git a/ports/sysdeps/unix/sysv/linux/tile/configure.in b/ports/sysdeps/unix/sysv/linux/tile/configure.ac
index b983e28be6..b983e28be6 100644
--- a/ports/sysdeps/unix/sysv/linux/tile/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/tile/configure.ac
diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure b/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure
index bfa30f6dcf..0a6a63ff99 100644
--- a/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure
+++ b/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux/tile/tilegx
ldd_rewrite_script=$dir/ldd-rewrite.sed
diff --git a/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure.in b/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure.ac
index 87d86bd4c0..87d86bd4c0 100644
--- a/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure.in
+++ b/ports/sysdeps/unix/sysv/linux/tile/tilegx/configure.ac
diff --git a/posix/glob.c b/posix/glob.c
index 4c7dce5ee8..85237c2a44 100644
--- a/posix/glob.c
+++ b/posix/glob.c
@@ -193,7 +193,7 @@
# define GET_LOGIN_NAME_MAX() (-1)
#endif
-static const char *next_brace_sub (const char *begin, int flags) __THROW;
+static const char *next_brace_sub (const char *begin, int flags) __THROWNL;
#endif /* !defined _LIBC || !defined GLOB_ONLY_P */
@@ -208,8 +208,8 @@ extern int __glob_pattern_type (const char *pattern, int quote)
attribute_hidden;
#if !defined _LIBC || !defined GLOB_ONLY_P
-static int prefix_array (const char *prefix, char **array, size_t n) __THROW;
-static int collated_compare (const void *, const void *) __THROW;
+static int prefix_array (const char *prefix, char **array, size_t n) __THROWNL;
+static int collated_compare (const void *, const void *) __THROWNL;
/* Find the end of the sub-pattern in a brace expression. */
@@ -276,6 +276,11 @@ glob (pattern, flags, errfunc, pglob)
return -1;
}
+ /* POSIX requires all slashes to be matched. This means that with
+ a trailing slash we must match only directories. */
+ if (pattern[0] && pattern[strlen (pattern) - 1] == '/')
+ flags |= GLOB_ONLYDIR;
+
if (!(flags & GLOB_DOOFFS))
/* Have to do this so `globfree' knows where to start freeing. It
also makes all the code that uses gl_offs simpler. */
diff --git a/posix/tst-gnuglob.c b/posix/tst-gnuglob.c
index 0c967d0a7a..6e42724d08 100644
--- a/posix/tst-gnuglob.c
+++ b/posix/tst-gnuglob.c
@@ -168,7 +168,7 @@ my_opendir (const char *s)
my_DIR *dir;
- if (idx == -1)
+ if (idx == -1 || filesystem[idx].type != DT_DIR)
{
PRINTF ("my_opendir(\"%s\") == NULL\n", s);
return NULL;
@@ -358,7 +358,7 @@ test_result (const char *fmt, int flags, glob_t *gl, const char *str[])
break;
if (str[inner] == NULL)
- errstr = ok ? "" : " *** WRONG";
+ errstr = ok ? "" : " *** WRONG";
else
errstr = ok ? "" : " * wrong position";
@@ -483,6 +483,12 @@ main (void)
"/file1lev1",
"/file2lev1");
+ test ("*/*/", 0 , 0,
+ "dir1lev1/dir1lev2/",
+ "dir1lev1/dir2lev2/",
+ "dir1lev1/dir3lev2/",
+ "dir2lev1/dir1lev2/");
+
test ("", 0, GLOB_NOMATCH, NULL);
test ("", GLOB_NOCHECK, 0, "");
diff --git a/posix/unistd.h b/posix/unistd.h
index 178223d755..f37dce7b46 100644
--- a/posix/unistd.h
+++ b/posix/unistd.h
@@ -630,17 +630,8 @@ extern __pid_t getpid (void) __THROW;
/* Get the process ID of the calling process's parent. */
extern __pid_t getppid (void) __THROW;
-/* Get the process group ID of the calling process.
- This function is different on old BSD. */
-#ifndef __FAVOR_BSD
+/* Get the process group ID of the calling process. */
extern __pid_t getpgrp (void) __THROW;
-#else
-# ifdef __REDIRECT_NTH
-extern __pid_t __REDIRECT_NTH (getpgrp, (__pid_t __pid), __getpgid);
-# else
-# define getpgrp __getpgid
-# endif
-#endif
/* Get the process group ID of process PID. */
extern __pid_t __getpgid (__pid_t __pid) __THROW;
@@ -662,25 +653,12 @@ extern int setpgid (__pid_t __pid, __pid_t __pgid) __THROW;
New programs should always use `setpgid' instead.
- The default in GNU is to provide the System V function. The BSD
- function is available under -D_BSD_SOURCE. */
-
-# ifndef __FAVOR_BSD
+ GNU provides the POSIX.1 function. */
/* Set the process group ID of the calling process to its own PID.
This is exactly the same as `setpgid (0, 0)'. */
extern int setpgrp (void) __THROW;
-# else
-
-/* Another name for `setpgid' (above). */
-# ifdef __REDIRECT_NTH
-extern int __REDIRECT_NTH (setpgrp, (__pid_t __pid, __pid_t __pgrp), setpgid);
-# else
-# define setpgrp setpgid
-# endif
-
-# endif /* Favor BSD. */
#endif /* Use SVID or BSD. */
/* Create a new session with the calling process as its leader.
@@ -1144,7 +1122,8 @@ extern char *crypt (const char *__key, const char *__salt)
/* Encrypt data in BLOCK in place if EDFLAG is zero; otherwise decrypt
block in place. */
-extern void encrypt (char *__block, int __edflag) __THROW __nonnull ((1));
+extern void encrypt (char *__glibc_block, int __edflag)
+ __THROW __nonnull ((1));
/* Swab pairs bytes in the first N bytes of the area pointed to by
diff --git a/resolv/netdb.h b/resolv/netdb.h
index 412343b42b..56729d179b 100644
--- a/resolv/netdb.h
+++ b/resolv/netdb.h
@@ -586,7 +586,7 @@ struct gaicb
struct addrinfo *ar_result; /* Pointer to result. */
/* The following are internal elements. */
int __return;
- int __unused[5];
+ int __glibc_reserved[5];
};
/* Lookup mode. */
diff --git a/resolv/res_libc.c b/resolv/res_libc.c
index 0b37f46aea..ee3fa2114b 100644
--- a/resolv/res_libc.c
+++ b/resolv/res_libc.c
@@ -131,7 +131,7 @@ extern __thread struct __res_state *__libc_resp
/* We declare this with compat_symbol so that it's not
visible at link time. Programs must use the accessor functions. */
-#if defined SHARED && defined DO_VERSIONING
+#ifdef SHARED
# include <shlib-compat.h>
compat_symbol (libc, _res, _res, GLIBC_2_0);
#endif
diff --git a/resolv/res_send.c b/resolv/res_send.c
index 5a73696e55..7f2e85f324 100644
--- a/resolv/res_send.c
+++ b/resolv/res_send.c
@@ -441,7 +441,7 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen,
malloc(sizeof (struct sockaddr_in6));
if (EXT(statp).nsaddrs[n] != NULL) {
memset (mempcpy(EXT(statp).nsaddrs[n],
- &statp->nsaddr_list[n],
+ &statp->nsaddr_list[ns],
sizeof (struct sockaddr_in)),
'\0',
sizeof (struct sockaddr_in6)
diff --git a/rt/aio.h b/rt/aio.h
index 23d602dec7..fd2f15dbd6 100644
--- a/rt/aio.h
+++ b/rt/aio.h
@@ -54,7 +54,7 @@ struct aiocb
#else
__off64_t aio_offset; /* File offset. */
#endif
- char __unused[32];
+ char __glibc_reserved[32];
};
/* The same for the 64bit offsets. Please note that the members aio_fildes
@@ -77,7 +77,7 @@ struct aiocb64
__ssize_t __return_value;
__off64_t aio_offset; /* File offset. */
- char __unused[32];
+ char __glibc_reserved[32];
};
#endif
diff --git a/rt/tst-shm.c b/rt/tst-shm.c
index f9d5ab0098..83ad586ccf 100644
--- a/rt/tst-shm.c
+++ b/rt/tst-shm.c
@@ -34,34 +34,17 @@
/* We want to see output immediately. */
#define STDOUT_UNBUFFERED
-
-static int
-do_open (void)
-{
- int fd;
-
- /* Create the shared memory object. */
- fd = shm_open ("/shm-test", O_RDWR, 0600);
- if (fd == -1)
- {
- /* We don't regard this as a bug. Simply don't run the test. It could
- means there is no such implementation or the object is already in
- use in which case we don't want to disturb. */
- perror ("failed to open shared memory object: shm_open");
- return -1;
- }
-
- return fd;
-}
-
-
static void
worker (int write_now)
{
struct timespec ts;
struct stat64 st;
int i;
- int fd = do_open ();
+ int fd = shm_open ("/glibc-shm-test", O_RDWR, 0600);
+
+ if (fd == -1)
+ error (EXIT_FAILURE, 0, "failed to open shared memory object: shm_open");
+
char *mem;
if (fd == -1)
@@ -134,15 +117,26 @@ do_test (void)
int status2;
struct stat64 st;
+ fd = shm_open ("/../escaped", O_RDWR | O_CREAT | O_TRUNC | O_EXCL, 0600);
+ if (fd != -1)
+ {
+ perror ("read file outside of SHMDIR directory");
+ return 1;
+ }
+
+
/* Create the shared memory object. */
- fd = shm_open ("/shm-test", O_RDWR | O_CREAT | O_TRUNC | O_EXCL, 0600);
+ fd = shm_open ("/glibc-shm-test", O_RDWR | O_CREAT | O_TRUNC | O_EXCL, 0600);
if (fd == -1)
{
- /* We don't regard this as a bug. Simply don't run the test. It could
- means there is no such implementation or the object is already in
- use in which case we don't want to disturb. */
- perror ("failed to create a shared memory object: shm_open");
- return 0;
+ /* If shm_open is unimplemented we skip the test. */
+ if (errno == ENOSYS)
+ {
+ perror ("shm_open unimplemented. Test skipped.");
+ return 0;
+ }
+ else
+ error (EXIT_FAILURE, 0, "failed to create shared memory object: shm_open");
}
/* Size the object. We make it 4000 bytes long. */
@@ -152,18 +146,18 @@ do_test (void)
shared memory itself. */
perror ("failed to size of shared memory object: ftruncate");
close (fd);
- shm_unlink ("/shm-test");
+ shm_unlink ("/glibc-shm-test");
return 0;
}
if (fstat64 (fd, &st) == -1)
{
- shm_unlink ("/shm-test");
+ shm_unlink ("/glibc-shm-test");
error (EXIT_FAILURE, 0, "initial stat failed");
}
if (st.st_size != 4000)
{
- shm_unlink ("/shm-test");
+ shm_unlink ("/glibc-shm-test");
error (EXIT_FAILURE, 0, "initial size not correct");
}
@@ -176,7 +170,7 @@ do_test (void)
/* Couldn't create a second process. */
perror ("fork");
close (fd);
- shm_unlink ("/shm-test");
+ shm_unlink ("/glibc-shm-test");
return 0;
}
@@ -191,7 +185,7 @@ do_test (void)
kill (pid1, SIGTERM);
waitpid (pid1, &ignore, 0);
close (fd);
- shm_unlink ("/shm-test");
+ shm_unlink ("/glibc-shm-test");
return 0;
}
@@ -200,14 +194,14 @@ do_test (void)
waitpid (pid2, &status2, 0);
/* Now we can unlink the shared object. */
- shm_unlink ("/shm-test");
+ shm_unlink ("/glibc-shm-test");
return (!WIFEXITED (status1) || WEXITSTATUS (status1) != 0
|| !WIFEXITED (status2) || WEXITSTATUS (status2) != 0);
}
#define TEST_FUNCTION do_test ()
-#define CLEANUP_HANDLER shm_unlink ("/shm-test");
+#define CLEANUP_HANDLER shm_unlink ("/glibc-shm-test");
#include "../test-skeleton.c"
diff --git a/scripts/bench.pl b/scripts/bench.pl
index dcf1355282..10f0ba4179 100755
--- a/scripts/bench.pl
+++ b/scripts/bench.pl
@@ -21,40 +21,99 @@ use strict;
use warnings;
# Generate a benchmark source file for a given input.
-if (@ARGV < 2) {
- die "Usage: bench.pl <function> [parameter types] [return type]"
+if (@ARGV < 1) {
+ die "Usage: bench.pl <function>"
}
-my $arg;
my $func = $ARGV[0];
my @args;
my $ret = "void";
my $getret = "";
-my $retval = "";
-if (@ARGV >= 2) {
- @args = split(':', $ARGV[1]);
+# We create a hash of inputs for each variant of the test.
+my $variant = "";
+my @curvals;
+my %vals;
+my @include_headers;
+my @include_sources;
+my $incl;
+
+open INPUTS, "<$func-inputs" or die $!;
+
+LINE:while (<INPUTS>) {
+ chomp;
+
+ # Directives.
+ if (/^## ([\w-]+): (.*)/) {
+ # Function argument types.
+ if ($1 eq "args") {
+ @args = split(":", $2);
+ }
+
+ # Function return type.
+ elsif ($1 eq "ret") {
+ $ret = $2;
+ }
+
+ elsif ($1 eq "includes") {
+ @include_headers = split (",", $2);
+ }
+
+ elsif ($1 eq "include-sources") {
+ @include_sources = split (",", $2);
+ }
+
+ # New variant. This is the only directive allowed in the body of the
+ # inputs to separate inputs into variants. All others should be at the
+ # top or else all hell will break loose.
+ elsif ($1 eq "name") {
+
+ # Save values in the previous variant.
+ my @copy = @curvals;
+ $vals{$variant} = \@copy;
+
+ # Prepare for the next.
+ $variant=$2;
+ undef @curvals;
+ next LINE;
+ }
+
+ else {
+ die "Unknown directive: ".$1;
+ }
+ }
+
+ # Skip over comments and blank lines.
+ if (/^#/ || /^$/) {
+ next LINE;
+ }
+ push (@curvals, $_);
}
-if (@ARGV == 3) {
- $ret = $ARGV[2];
+
+my $bench_func = "#define CALL_BENCH_FUNC(v, i) $func (";
+
+# Output variables. These include the return value as well as any pointers
+# that may get passed into the function, denoted by the <> around the type.
+my $outvars = "";
+
+if ($ret ne "void") {
+ $outvars = "static $ret volatile ret;\n";
}
-my $decl = "extern $ret $func (";
+# Print the definitions and macros.
+foreach $incl (@include_headers) {
+ print "#include <" . $incl . ">\n";
+}
-# Function has no arguments.
-if (@args == 0 || $args[0] eq "void") {
- print "$decl void);\n";
- print "#define CALL_BENCH_FUNC(i,j) $func();\n";
- print "#define NUM_VARIANTS (1)\n";
- print "#define NUM_SAMPLES(v) (1)\n";
- print "#define VARIANT(v) FUNCNAME \"()\"\n"
+# Print the source files.
+foreach $incl (@include_sources) {
+ print "#include \"" . $incl . "\"\n";
}
-# The function has arguments, so parse them and populate the inputs.
-else {
- my $num = 0;
- my $bench_func = "#define CALL_BENCH_FUNC(v, i) $func (";
+if (@args > 0) {
+ # Save values in the last variant.
+ $vals{$variant} = \@curvals;
my $struct =
"struct _variants
{
@@ -65,60 +124,31 @@ else {
my $arg_struct = "struct args {";
+ my $num = 0;
+ my $arg;
foreach $arg (@args) {
if ($num > 0) {
$bench_func = "$bench_func,";
- $decl = "$decl,";
}
- $arg_struct = "$arg_struct volatile $arg arg$num;";
- $bench_func = "$bench_func variants[v].in[i].arg$num";
- $decl = "$decl $arg";
+ $_ = $arg;
+ if (/<(.*)\*>/) {
+ # Output variables. These have to be pointers, so dereference once by
+ # dropping one *.
+ $outvars = $outvars . "static $1 out$num;\n";
+ $bench_func = "$bench_func &out$num";
+ }
+ else {
+ $arg_struct = "$arg_struct $arg volatile arg$num;";
+ $bench_func = "$bench_func variants[v].in[i].arg$num";
+ }
+
$num = $num + 1;
}
$arg_struct = $arg_struct . "};\n";
- $decl = $decl . ");\n";
$bench_func = $bench_func . ");\n";
- # We create a hash of inputs for each variant of the test.
- my $variant = "";
- my @curvals;
- my %vals;
-
- open INPUTS, "<$func-inputs" or die $!;
-
- LINE:while (<INPUTS>) {
- chomp;
-
- # New variant.
- if (/^## (\w+): (\w+)/) {
- #We only identify Name for now.
- if ($1 ne "name") {
- next LINE;
- }
-
- # Save values in the last variant.
- my @copy = @curvals;
- $vals{$variant} = \@copy;
-
- # Prepare for the next.
- $variant=$2;
- undef @curvals;
- next LINE;
- }
-
- # Skip over comments.
- if (/^#/) {
- next LINE;
- }
- push (@curvals, $_);
- }
-
- $vals{$variant} = \@curvals;
-
- # Print the definitions and macros.
- print $decl;
print $bench_func;
print $arg_struct;
print $struct;
@@ -147,17 +177,24 @@ else {
$c += 1;
}
print "};\n\n";
-
# Finally, print the last set of macros.
print "#define NUM_VARIANTS $c\n";
print "#define NUM_SAMPLES(i) (variants[i].count)\n";
print "#define VARIANT(i) (variants[i].name)\n";
}
+else {
+ print $bench_func . ");\n";
+ print "#define NUM_VARIANTS (1)\n";
+ print "#define NUM_SAMPLES(v) (1)\n";
+ print "#define VARIANT(v) FUNCNAME \"()\"\n"
+}
+
+# Print the output variable definitions.
+print "$outvars\n";
# In some cases not storing a return value seems to result in the function call
# being optimized out.
if ($ret ne "void") {
- print "static volatile $ret ret = 0.0;\n";
$getret = "ret = ";
}
diff --git a/scripts/config.guess b/scripts/config.guess
index 516ac6c173..9afd676206 100755
--- a/scripts/config.guess
+++ b/scripts/config.guess
@@ -2,7 +2,7 @@
# Attempt to guess a canonical system name.
# Copyright 1992-2013 Free Software Foundation, Inc.
-timestamp='2013-05-16'
+timestamp='2013-11-29'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -1260,16 +1260,26 @@ EOF
if test "$UNAME_PROCESSOR" = unknown ; then
UNAME_PROCESSOR=powerpc
fi
- if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
- if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
- (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
- grep IS_64BIT_ARCH >/dev/null
- then
- case $UNAME_PROCESSOR in
- i386) UNAME_PROCESSOR=x86_64 ;;
- powerpc) UNAME_PROCESSOR=powerpc64 ;;
- esac
+ if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+ grep IS_64BIT_ARCH >/dev/null
+ then
+ case $UNAME_PROCESSOR in
+ i386) UNAME_PROCESSOR=x86_64 ;;
+ powerpc) UNAME_PROCESSOR=powerpc64 ;;
+ esac
+ fi
fi
+ elif test "$UNAME_PROCESSOR" = i386 ; then
+ # Avoid executing cc on OS X 10.9, as it ships with a stub
+ # that puts up a graphical alert prompting to install
+ # developer tools. Any system running Mac OS X 10.7 or
+ # later (Darwin 11 and later) is required to have a 64-bit
+ # processor. This is not true of the ARM version of Darwin
+ # that Apple uses in portable devices.
+ UNAME_PROCESSOR=x86_64
fi
echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
exit ;;
diff --git a/scripts/config.sub b/scripts/config.sub
index 8b612ab89d..61cb4bc22d 100755
--- a/scripts/config.sub
+++ b/scripts/config.sub
@@ -2,7 +2,7 @@
# Configuration validation subroutine script.
# Copyright 1992-2013 Free Software Foundation, Inc.
-timestamp='2013-04-24'
+timestamp='2013-10-01'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -257,7 +257,7 @@ case $basic_machine in
| avr | avr32 \
| be32 | be64 \
| bfin \
- | c4x | clipper \
+ | c4x | c8051 | clipper \
| d10v | d30v | dlx | dsp16xx \
| epiphany \
| fido | fr30 | frv \
@@ -265,6 +265,7 @@ case $basic_machine in
| hexagon \
| i370 | i860 | i960 | ia64 \
| ip2k | iq2000 \
+ | k1om \
| le32 | le64 \
| lm32 \
| m32c | m32r | m32rle | m68000 | m68k | m88k \
@@ -324,7 +325,7 @@ case $basic_machine in
c6x)
basic_machine=tic6x-unknown
;;
- m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
+ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
basic_machine=$basic_machine-unknown
os=-none
;;
@@ -372,7 +373,7 @@ case $basic_machine in
| be32-* | be64-* \
| bfin-* | bs2000-* \
| c[123]* | c30-* | [cjt]90-* | c4x-* \
- | clipper-* | craynv-* | cydra-* \
+ | c8051-* | clipper-* | craynv-* | cydra-* \
| d10v-* | d30v-* | dlx-* \
| elxsi-* \
| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
@@ -381,6 +382,7 @@ case $basic_machine in
| hexagon-* \
| i*86-* | i860-* | i960-* | ia64-* \
| ip2k-* | iq2000-* \
+ | k1om-* \
| le32-* | le64-* \
| lm32-* \
| m32c-* | m32r-* | m32rle-* \
@@ -794,7 +796,7 @@ case $basic_machine in
os=-mingw64
;;
mingw32)
- basic_machine=i386-pc
+ basic_machine=i686-pc
os=-mingw32
;;
mingw32ce)
@@ -830,7 +832,7 @@ case $basic_machine in
basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
;;
msys)
- basic_machine=i386-pc
+ basic_machine=i686-pc
os=-msys
;;
mvs)
@@ -1546,6 +1548,9 @@ case $basic_machine in
c4x-* | tic4x-*)
os=-coff
;;
+ c8051-*)
+ os=-elf
+ ;;
hexagon-*)
os=-elf
;;
diff --git a/setjmp/setjmp.h b/setjmp/setjmp.h
index 67de76c6b1..8e6b5b49d1 100644
--- a/setjmp/setjmp.h
+++ b/setjmp/setjmp.h
@@ -58,20 +58,13 @@ __END_NAMESPACE_STD
This is the internal name for `sigsetjmp'. */
extern int __sigsetjmp (struct __jmp_buf_tag __env[1], int __savemask) __THROWNL;
-#ifndef __FAVOR_BSD
/* Store the calling environment in ENV, not saving the signal mask.
Return 0. */
extern int _setjmp (struct __jmp_buf_tag __env[1]) __THROWNL;
/* Do not save the signal mask. This is equivalent to the `_setjmp'
BSD function. */
-# define setjmp(env) _setjmp (env)
-#else
-/* We are in 4.3 BSD-compatibility mode in which `setjmp'
- saves the signal mask like `sigsetjmp (ENV, 1)'. We have to
- define a macro since ISO C says `setjmp' is one. */
-# define setjmp(env) setjmp (env)
-#endif /* Favor BSD. */
+#define setjmp(env) _setjmp (env)
__BEGIN_NAMESPACE_STD
diff --git a/shlib-versions b/shlib-versions
index 9344590083..51f5327340 100644
--- a/shlib-versions
+++ b/shlib-versions
@@ -23,6 +23,7 @@
s390x-.*-linux.* DEFAULT GLIBC_2.2
powerpc64-.*-linux.* DEFAULT GLIBC_2.3
+powerpc.*le-.*-linux.* DEFAULT GLIBC_2.18
.*-.*-gnu-gnu.* DEFAULT GLIBC_2.2.6
# Configuration ABI Identifier for ABI data files
diff --git a/signal/signal.h b/signal/signal.h
index ec28b3101b..b698d14bb6 100644
--- a/signal/signal.h
+++ b/signal/signal.h
@@ -158,28 +158,20 @@ extern void psiginfo (const siginfo_t *__pinfo, const char *__s);
-/* The `sigpause' function has two different interfaces. The original
- BSD definition defines the argument as a mask of the signal, while
- the more modern interface in X/Open defines it as the signal
- number. We go with the BSD version unless the user explicitly
- selects the X/Open version.
+/* The `sigpause' function in X/Open defines the argument as the
+ signal number. This requires redirecting to another function
+ because the default version in glibc uses an old BSD interface.
This function is a cancellation point and therefore not marked with
__THROW. */
extern int __sigpause (int __sig_or_mask, int __is_sig);
-#ifdef __FAVOR_BSD
-/* Set the mask of blocked signals to MASK,
- wait for a signal to arrive, and then restore the mask. */
-extern int sigpause (int __mask) __THROW __attribute_deprecated__;
-#else
-# ifdef __USE_XOPEN
-# ifdef __GNUC__
+#ifdef __USE_XOPEN
+# ifdef __GNUC__
extern int sigpause (int __sig) __asm__ ("__xpg_sigpause");
-# else
+# else
/* Remove a signal from the signal mask and suspend the process. */
-# define sigpause(sig) __sigpause ((sig), 1)
-# endif
+# define sigpause(sig) __sigpause ((sig), 1)
# endif
#endif
diff --git a/soft-fp/adddf3.c b/soft-fp/adddf3.c
index 55df554b05..5aadfa3318 100644
--- a/soft-fp/adddf3.c
+++ b/soft-fp/adddf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "double.h"
-DFtype __adddf3(DFtype a, DFtype b)
+DFtype
+__adddf3 (DFtype a, DFtype b)
{
FP_DECL_EX;
- FP_DECL_D(A); FP_DECL_D(B); FP_DECL_D(R);
+ FP_DECL_D (A);
+ FP_DECL_D (B);
+ FP_DECL_D (R);
DFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_SEMIRAW_D(A, a);
- FP_UNPACK_SEMIRAW_D(B, b);
- FP_ADD_D(R, A, B);
- FP_PACK_SEMIRAW_D(r, R);
+ FP_UNPACK_SEMIRAW_D (A, a);
+ FP_UNPACK_SEMIRAW_D (B, b);
+ FP_ADD_D (R, A, B);
+ FP_PACK_SEMIRAW_D (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/addsf3.c b/soft-fp/addsf3.c
index 8a31449e37..ac571bad06 100644
--- a/soft-fp/addsf3.c
+++ b/soft-fp/addsf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "single.h"
-SFtype __addsf3(SFtype a, SFtype b)
+SFtype
+__addsf3 (SFtype a, SFtype b)
{
FP_DECL_EX;
- FP_DECL_S(A); FP_DECL_S(B); FP_DECL_S(R);
+ FP_DECL_S (A);
+ FP_DECL_S (B);
+ FP_DECL_S (R);
SFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_SEMIRAW_S(A, a);
- FP_UNPACK_SEMIRAW_S(B, b);
- FP_ADD_S(R, A, B);
- FP_PACK_SEMIRAW_S(r, R);
+ FP_UNPACK_SEMIRAW_S (A, a);
+ FP_UNPACK_SEMIRAW_S (B, b);
+ FP_ADD_S (R, A, B);
+ FP_PACK_SEMIRAW_S (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/addtf3.c b/soft-fp/addtf3.c
index 7a2732513a..1c0d266c66 100644
--- a/soft-fp/addtf3.c
+++ b/soft-fp/addtf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "quad.h"
-TFtype __addtf3(TFtype a, TFtype b)
+TFtype
+__addtf3 (TFtype a, TFtype b)
{
FP_DECL_EX;
- FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(R);
+ FP_DECL_Q (A);
+ FP_DECL_Q (B);
+ FP_DECL_Q (R);
TFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_SEMIRAW_Q(A, a);
- FP_UNPACK_SEMIRAW_Q(B, b);
- FP_ADD_Q(R, A, B);
- FP_PACK_SEMIRAW_Q(r, R);
+ FP_UNPACK_SEMIRAW_Q (A, a);
+ FP_UNPACK_SEMIRAW_Q (B, b);
+ FP_ADD_Q (R, A, B);
+ FP_PACK_SEMIRAW_Q (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/divdf3.c b/soft-fp/divdf3.c
index c3dcf8085e..d357bf0222 100644
--- a/soft-fp/divdf3.c
+++ b/soft-fp/divdf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "double.h"
-DFtype __divdf3(DFtype a, DFtype b)
+DFtype
+__divdf3 (DFtype a, DFtype b)
{
FP_DECL_EX;
- FP_DECL_D(A); FP_DECL_D(B); FP_DECL_D(R);
+ FP_DECL_D (A);
+ FP_DECL_D (B);
+ FP_DECL_D (R);
DFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_D(A, a);
- FP_UNPACK_D(B, b);
- FP_DIV_D(R, A, B);
- FP_PACK_D(r, R);
+ FP_UNPACK_D (A, a);
+ FP_UNPACK_D (B, b);
+ FP_DIV_D (R, A, B);
+ FP_PACK_D (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/divsf3.c b/soft-fp/divsf3.c
index 063462f8a1..b53b4031d7 100644
--- a/soft-fp/divsf3.c
+++ b/soft-fp/divsf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "single.h"
-SFtype __divsf3(SFtype a, SFtype b)
+SFtype
+__divsf3 (SFtype a, SFtype b)
{
FP_DECL_EX;
- FP_DECL_S(A); FP_DECL_S(B); FP_DECL_S(R);
+ FP_DECL_S (A);
+ FP_DECL_S (B);
+ FP_DECL_S (R);
SFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_S(A, a);
- FP_UNPACK_S(B, b);
- FP_DIV_S(R, A, B);
- FP_PACK_S(r, R);
+ FP_UNPACK_S (A, a);
+ FP_UNPACK_S (B, b);
+ FP_DIV_S (R, A, B);
+ FP_PACK_S (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/divtf3.c b/soft-fp/divtf3.c
index 03d017ddb6..5b7175da54 100644
--- a/soft-fp/divtf3.c
+++ b/soft-fp/divtf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "quad.h"
-TFtype __divtf3(TFtype a, TFtype b)
+TFtype
+__divtf3 (TFtype a, TFtype b)
{
FP_DECL_EX;
- FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(R);
+ FP_DECL_Q (A);
+ FP_DECL_Q (B);
+ FP_DECL_Q (R);
TFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_Q(A, a);
- FP_UNPACK_Q(B, b);
- FP_DIV_Q(R, A, B);
- FP_PACK_Q(r, R);
+ FP_UNPACK_Q (A, a);
+ FP_UNPACK_Q (B, b);
+ FP_DIV_Q (R, A, B);
+ FP_PACK_Q (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/double.h b/soft-fp/double.h
index 8653f69138..ef4576707a 100644
--- a/soft-fp/double.h
+++ b/soft-fp/double.h
@@ -31,15 +31,15 @@
<http://www.gnu.org/licenses/>. */
#if _FP_W_TYPE_SIZE < 32
-#error "Here's a nickel kid. Go buy yourself a real computer."
+# error "Here's a nickel kid. Go buy yourself a real computer."
#endif
#if _FP_W_TYPE_SIZE < 64
-#define _FP_FRACTBITS_D (2 * _FP_W_TYPE_SIZE)
-#define _FP_FRACTBITS_DW_D (4 * _FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_D (2 * _FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_DW_D (4 * _FP_W_TYPE_SIZE)
#else
-#define _FP_FRACTBITS_D _FP_W_TYPE_SIZE
-#define _FP_FRACTBITS_DW_D (2 * _FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_D _FP_W_TYPE_SIZE
+# define _FP_FRACTBITS_DW_D (2 * _FP_W_TYPE_SIZE)
#endif
#define _FP_FRACBITS_D 53
@@ -51,226 +51,264 @@
#define _FP_EXPMAX_D 2047
#define _FP_QNANBIT_D \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_D-2) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_D-2) % _FP_W_TYPE_SIZE)
#define _FP_QNANBIT_SH_D \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_D-2+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_D-2+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
#define _FP_IMPLBIT_D \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_D-1) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_D-1) % _FP_W_TYPE_SIZE)
#define _FP_IMPLBIT_SH_D \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_D-1+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_D-1+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
#define _FP_OVERFLOW_D \
- ((_FP_W_TYPE)1 << _FP_WFRACBITS_D % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << _FP_WFRACBITS_D % _FP_W_TYPE_SIZE)
#define _FP_WFRACBITS_DW_D (2 * _FP_WFRACBITS_D)
#define _FP_WFRACXBITS_DW_D (_FP_FRACTBITS_DW_D - _FP_WFRACBITS_DW_D)
#define _FP_HIGHBIT_DW_D \
- ((_FP_W_TYPE)1 << (_FP_WFRACBITS_DW_D - 1) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_WFRACBITS_DW_D - 1) % _FP_W_TYPE_SIZE)
-typedef float DFtype __attribute__((mode(DF)));
+typedef float DFtype __attribute__ ((mode (DF)));
#if _FP_W_TYPE_SIZE < 64
union _FP_UNION_D
{
DFtype flt;
- struct _FP_STRUCT_LAYOUT {
-#if __BYTE_ORDER == __BIG_ENDIAN
+ struct _FP_STRUCT_LAYOUT
+ {
+# if __BYTE_ORDER == __BIG_ENDIAN
unsigned sign : 1;
unsigned exp : _FP_EXPBITS_D;
unsigned frac1 : _FP_FRACBITS_D - (_FP_IMPLBIT_D != 0) - _FP_W_TYPE_SIZE;
unsigned frac0 : _FP_W_TYPE_SIZE;
-#else
+# else
unsigned frac0 : _FP_W_TYPE_SIZE;
unsigned frac1 : _FP_FRACBITS_D - (_FP_IMPLBIT_D != 0) - _FP_W_TYPE_SIZE;
unsigned exp : _FP_EXPBITS_D;
unsigned sign : 1;
-#endif
- } bits __attribute__((packed));
+# endif
+ } bits __attribute__ ((packed));
};
-#define FP_DECL_D(X) _FP_DECL(2,X)
-#define FP_UNPACK_RAW_D(X,val) _FP_UNPACK_RAW_2(D,X,val)
-#define FP_UNPACK_RAW_DP(X,val) _FP_UNPACK_RAW_2_P(D,X,val)
-#define FP_PACK_RAW_D(val,X) _FP_PACK_RAW_2(D,val,X)
-#define FP_PACK_RAW_DP(val,X) \
- do { \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_2_P(D,val,X); \
- } while (0)
-
-#define FP_UNPACK_D(X,val) \
- do { \
- _FP_UNPACK_RAW_2(D,X,val); \
- _FP_UNPACK_CANONICAL(D,2,X); \
- } while (0)
-
-#define FP_UNPACK_DP(X,val) \
- do { \
- _FP_UNPACK_RAW_2_P(D,X,val); \
- _FP_UNPACK_CANONICAL(D,2,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_D(X,val) \
- do { \
- _FP_UNPACK_RAW_2(D,X,val); \
- _FP_UNPACK_SEMIRAW(D,2,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_DP(X,val) \
- do { \
- _FP_UNPACK_RAW_2_P(D,X,val); \
- _FP_UNPACK_SEMIRAW(D,2,X); \
- } while (0)
-
-#define FP_PACK_D(val,X) \
- do { \
- _FP_PACK_CANONICAL(D,2,X); \
- _FP_PACK_RAW_2(D,val,X); \
- } while (0)
-
-#define FP_PACK_DP(val,X) \
- do { \
- _FP_PACK_CANONICAL(D,2,X); \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_2_P(D,val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_D(val,X) \
- do { \
- _FP_PACK_SEMIRAW(D,2,X); \
- _FP_PACK_RAW_2(D,val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_DP(val,X) \
- do { \
- _FP_PACK_SEMIRAW(D,2,X); \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_2_P(D,val,X); \
- } while (0)
-
-#define FP_ISSIGNAN_D(X) _FP_ISSIGNAN(D,2,X)
-#define FP_NEG_D(R,X) _FP_NEG(D,2,R,X)
-#define FP_ADD_D(R,X,Y) _FP_ADD(D,2,R,X,Y)
-#define FP_SUB_D(R,X,Y) _FP_SUB(D,2,R,X,Y)
-#define FP_MUL_D(R,X,Y) _FP_MUL(D,2,R,X,Y)
-#define FP_DIV_D(R,X,Y) _FP_DIV(D,2,R,X,Y)
-#define FP_SQRT_D(R,X) _FP_SQRT(D,2,R,X)
-#define _FP_SQRT_MEAT_D(R,S,T,X,Q) _FP_SQRT_MEAT_2(R,S,T,X,Q)
-#define FP_FMA_D(R,X,Y,Z) _FP_FMA(D,2,4,R,X,Y,Z)
-
-#define FP_CMP_D(r,X,Y,un) _FP_CMP(D,2,r,X,Y,un)
-#define FP_CMP_EQ_D(r,X,Y) _FP_CMP_EQ(D,2,r,X,Y)
-#define FP_CMP_UNORD_D(r,X,Y) _FP_CMP_UNORD(D,2,r,X,Y)
-
-#define FP_TO_INT_D(r,X,rsz,rsg) _FP_TO_INT(D,2,r,X,rsz,rsg)
-#define FP_FROM_INT_D(X,r,rs,rt) _FP_FROM_INT(D,2,X,r,rs,rt)
-
-#define _FP_FRAC_HIGH_D(X) _FP_FRAC_HIGH_2(X)
-#define _FP_FRAC_HIGH_RAW_D(X) _FP_FRAC_HIGH_2(X)
-
-#define _FP_FRAC_HIGH_DW_D(X) _FP_FRAC_HIGH_4(X)
+# define FP_DECL_D(X) _FP_DECL (2, X)
+# define FP_UNPACK_RAW_D(X, val) _FP_UNPACK_RAW_2 (D, X, val)
+# define FP_UNPACK_RAW_DP(X, val) _FP_UNPACK_RAW_2_P (D, X, val)
+# define FP_PACK_RAW_D(val, X) _FP_PACK_RAW_2 (D, val, X)
+# define FP_PACK_RAW_DP(val, X) \
+ do \
+ { \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_2_P (D, val, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_D(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_2 (D, X, val); \
+ _FP_UNPACK_CANONICAL (D, 2, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_DP(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_2_P (D, X, val); \
+ _FP_UNPACK_CANONICAL (D, 2, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_D(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_2 (D, X, val); \
+ _FP_UNPACK_SEMIRAW (D, 2, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_DP(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_2_P (D, X, val); \
+ _FP_UNPACK_SEMIRAW (D, 2, X); \
+ } \
+ while (0)
+
+# define FP_PACK_D(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (D, 2, X); \
+ _FP_PACK_RAW_2 (D, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_DP(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (D, 2, X); \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_2_P (D, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_D(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (D, 2, X); \
+ _FP_PACK_RAW_2 (D, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_DP(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (D, 2, X); \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_2_P (D, val, X); \
+ } \
+ while (0)
+
+# define FP_ISSIGNAN_D(X) _FP_ISSIGNAN (D, 2, X)
+# define FP_NEG_D(R, X) _FP_NEG (D, 2, R, X)
+# define FP_ADD_D(R, X, Y) _FP_ADD (D, 2, R, X, Y)
+# define FP_SUB_D(R, X, Y) _FP_SUB (D, 2, R, X, Y)
+# define FP_MUL_D(R, X, Y) _FP_MUL (D, 2, R, X, Y)
+# define FP_DIV_D(R, X, Y) _FP_DIV (D, 2, R, X, Y)
+# define FP_SQRT_D(R, X) _FP_SQRT (D, 2, R, X)
+# define _FP_SQRT_MEAT_D(R, S, T, X, Q) _FP_SQRT_MEAT_2 (R, S, T, X, Q)
+# define FP_FMA_D(R, X, Y, Z) _FP_FMA (D, 2, 4, R, X, Y, Z)
+
+# define FP_CMP_D(r, X, Y, un) _FP_CMP (D, 2, r, X, Y, un)
+# define FP_CMP_EQ_D(r, X, Y) _FP_CMP_EQ (D, 2, r, X, Y)
+# define FP_CMP_UNORD_D(r, X, Y) _FP_CMP_UNORD (D, 2, r, X, Y)
+
+# define FP_TO_INT_D(r, X, rsz, rsg) _FP_TO_INT (D, 2, r, X, rsz, rsg)
+# define FP_FROM_INT_D(X, r, rs, rt) _FP_FROM_INT (D, 2, X, r, rs, rt)
+
+# define _FP_FRAC_HIGH_D(X) _FP_FRAC_HIGH_2 (X)
+# define _FP_FRAC_HIGH_RAW_D(X) _FP_FRAC_HIGH_2 (X)
+
+# define _FP_FRAC_HIGH_DW_D(X) _FP_FRAC_HIGH_4 (X)
#else
union _FP_UNION_D
{
DFtype flt;
- struct _FP_STRUCT_LAYOUT {
-#if __BYTE_ORDER == __BIG_ENDIAN
+ struct _FP_STRUCT_LAYOUT
+ {
+# if __BYTE_ORDER == __BIG_ENDIAN
unsigned sign : 1;
unsigned exp : _FP_EXPBITS_D;
_FP_W_TYPE frac : _FP_FRACBITS_D - (_FP_IMPLBIT_D != 0);
-#else
+# else
_FP_W_TYPE frac : _FP_FRACBITS_D - (_FP_IMPLBIT_D != 0);
unsigned exp : _FP_EXPBITS_D;
unsigned sign : 1;
-#endif
- } bits __attribute__((packed));
+# endif
+ } bits __attribute__ ((packed));
};
-#define FP_DECL_D(X) _FP_DECL(1,X)
-#define FP_UNPACK_RAW_D(X,val) _FP_UNPACK_RAW_1(D,X,val)
-#define FP_UNPACK_RAW_DP(X,val) _FP_UNPACK_RAW_1_P(D,X,val)
-#define FP_PACK_RAW_D(val,X) _FP_PACK_RAW_1(D,val,X)
-#define FP_PACK_RAW_DP(val,X) \
- do { \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_1_P(D,val,X); \
- } while (0)
-
-#define FP_UNPACK_D(X,val) \
- do { \
- _FP_UNPACK_RAW_1(D,X,val); \
- _FP_UNPACK_CANONICAL(D,1,X); \
- } while (0)
-
-#define FP_UNPACK_DP(X,val) \
- do { \
- _FP_UNPACK_RAW_1_P(D,X,val); \
- _FP_UNPACK_CANONICAL(D,1,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_D(X,val) \
- do { \
- _FP_UNPACK_RAW_1(D,X,val); \
- _FP_UNPACK_SEMIRAW(D,1,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_DP(X,val) \
- do { \
- _FP_UNPACK_RAW_1_P(D,X,val); \
- _FP_UNPACK_SEMIRAW(D,1,X); \
- } while (0)
-
-#define FP_PACK_D(val,X) \
- do { \
- _FP_PACK_CANONICAL(D,1,X); \
- _FP_PACK_RAW_1(D,val,X); \
- } while (0)
-
-#define FP_PACK_DP(val,X) \
- do { \
- _FP_PACK_CANONICAL(D,1,X); \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_1_P(D,val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_D(val,X) \
- do { \
- _FP_PACK_SEMIRAW(D,1,X); \
- _FP_PACK_RAW_1(D,val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_DP(val,X) \
- do { \
- _FP_PACK_SEMIRAW(D,1,X); \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_1_P(D,val,X); \
- } while (0)
-
-#define FP_ISSIGNAN_D(X) _FP_ISSIGNAN(D,1,X)
-#define FP_NEG_D(R,X) _FP_NEG(D,1,R,X)
-#define FP_ADD_D(R,X,Y) _FP_ADD(D,1,R,X,Y)
-#define FP_SUB_D(R,X,Y) _FP_SUB(D,1,R,X,Y)
-#define FP_MUL_D(R,X,Y) _FP_MUL(D,1,R,X,Y)
-#define FP_DIV_D(R,X,Y) _FP_DIV(D,1,R,X,Y)
-#define FP_SQRT_D(R,X) _FP_SQRT(D,1,R,X)
-#define _FP_SQRT_MEAT_D(R,S,T,X,Q) _FP_SQRT_MEAT_1(R,S,T,X,Q)
-#define FP_FMA_D(R,X,Y,Z) _FP_FMA(D,1,2,R,X,Y,Z)
+# define FP_DECL_D(X) _FP_DECL (1, X)
+# define FP_UNPACK_RAW_D(X, val) _FP_UNPACK_RAW_1 (D, X, val)
+# define FP_UNPACK_RAW_DP(X, val) _FP_UNPACK_RAW_1_P (D, X, val)
+# define FP_PACK_RAW_D(val, X) _FP_PACK_RAW_1 (D, val, X)
+# define FP_PACK_RAW_DP(val, X) \
+ do \
+ { \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_1_P (D, val, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_D(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_1 (D, X, val); \
+ _FP_UNPACK_CANONICAL (D, 1, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_DP(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_1_P (D, X, val); \
+ _FP_UNPACK_CANONICAL (D, 1, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_D(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_1 (D, X, val); \
+ _FP_UNPACK_SEMIRAW (D, 1, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_DP(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_1_P (D, X, val); \
+ _FP_UNPACK_SEMIRAW (D, 1, X); \
+ } \
+ while (0)
+
+# define FP_PACK_D(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (D, 1, X); \
+ _FP_PACK_RAW_1 (D, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_DP(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (D, 1, X); \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_1_P (D, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_D(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (D, 1, X); \
+ _FP_PACK_RAW_1 (D, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_DP(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (D, 1, X); \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_1_P (D, val, X); \
+ } \
+ while (0)
+
+# define FP_ISSIGNAN_D(X) _FP_ISSIGNAN (D, 1, X)
+# define FP_NEG_D(R, X) _FP_NEG (D, 1, R, X)
+# define FP_ADD_D(R, X, Y) _FP_ADD (D, 1, R, X, Y)
+# define FP_SUB_D(R, X, Y) _FP_SUB (D, 1, R, X, Y)
+# define FP_MUL_D(R, X, Y) _FP_MUL (D, 1, R, X, Y)
+# define FP_DIV_D(R, X, Y) _FP_DIV (D, 1, R, X, Y)
+# define FP_SQRT_D(R, X) _FP_SQRT (D, 1, R, X)
+# define _FP_SQRT_MEAT_D(R, S, T, X, Q) _FP_SQRT_MEAT_1 (R, S, T, X, Q)
+# define FP_FMA_D(R, X, Y, Z) _FP_FMA (D, 1, 2, R, X, Y, Z)
/* The implementation of _FP_MUL_D and _FP_DIV_D should be chosen by
the target machine. */
-#define FP_CMP_D(r,X,Y,un) _FP_CMP(D,1,r,X,Y,un)
-#define FP_CMP_EQ_D(r,X,Y) _FP_CMP_EQ(D,1,r,X,Y)
-#define FP_CMP_UNORD_D(r,X,Y) _FP_CMP_UNORD(D,1,r,X,Y)
+# define FP_CMP_D(r, X, Y, un) _FP_CMP (D, 1, r, X, Y, un)
+# define FP_CMP_EQ_D(r, X, Y) _FP_CMP_EQ (D, 1, r, X, Y)
+# define FP_CMP_UNORD_D(r, X, Y) _FP_CMP_UNORD (D, 1, r, X, Y)
-#define FP_TO_INT_D(r,X,rsz,rsg) _FP_TO_INT(D,1,r,X,rsz,rsg)
-#define FP_FROM_INT_D(X,r,rs,rt) _FP_FROM_INT(D,1,X,r,rs,rt)
+# define FP_TO_INT_D(r, X, rsz, rsg) _FP_TO_INT (D, 1, r, X, rsz, rsg)
+# define FP_FROM_INT_D(X, r, rs, rt) _FP_FROM_INT (D, 1, X, r, rs, rt)
-#define _FP_FRAC_HIGH_D(X) _FP_FRAC_HIGH_1(X)
-#define _FP_FRAC_HIGH_RAW_D(X) _FP_FRAC_HIGH_1(X)
+# define _FP_FRAC_HIGH_D(X) _FP_FRAC_HIGH_1 (X)
+# define _FP_FRAC_HIGH_RAW_D(X) _FP_FRAC_HIGH_1 (X)
-#define _FP_FRAC_HIGH_DW_D(X) _FP_FRAC_HIGH_2(X)
+# define _FP_FRAC_HIGH_DW_D(X) _FP_FRAC_HIGH_2 (X)
#endif /* W_TYPE_SIZE < 64 */
diff --git a/soft-fp/eqdf2.c b/soft-fp/eqdf2.c
index c93c118f4e..e8cfd7666a 100644
--- a/soft-fp/eqdf2.c
+++ b/soft-fp/eqdf2.c
@@ -31,20 +31,23 @@
#include "soft-fp.h"
#include "double.h"
-CMPtype __eqdf2(DFtype a, DFtype b)
+CMPtype
+__eqdf2 (DFtype a, DFtype b)
{
FP_DECL_EX;
- FP_DECL_D(A); FP_DECL_D(B);
+ FP_DECL_D (A);
+ FP_DECL_D (B);
CMPtype r;
- FP_UNPACK_RAW_D(A, a);
- FP_UNPACK_RAW_D(B, b);
- FP_CMP_EQ_D(r, A, B);
- if (r && (FP_ISSIGNAN_D(A) || FP_ISSIGNAN_D(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_UNPACK_RAW_D (B, b);
+ FP_CMP_EQ_D (r, A, B);
+ if (r && (FP_ISSIGNAN_D (A) || FP_ISSIGNAN_D (B)))
+ FP_SET_EXCEPTION (FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
}
-strong_alias(__eqdf2, __nedf2);
+strong_alias (__eqdf2, __nedf2);
diff --git a/soft-fp/eqsf2.c b/soft-fp/eqsf2.c
index e5b2a5f36a..0bdb7fb223 100644
--- a/soft-fp/eqsf2.c
+++ b/soft-fp/eqsf2.c
@@ -31,20 +31,23 @@
#include "soft-fp.h"
#include "single.h"
-CMPtype __eqsf2(SFtype a, SFtype b)
+CMPtype
+__eqsf2 (SFtype a, SFtype b)
{
FP_DECL_EX;
- FP_DECL_S(A); FP_DECL_S(B);
+ FP_DECL_S (A);
+ FP_DECL_S (B);
CMPtype r;
- FP_UNPACK_RAW_S(A, a);
- FP_UNPACK_RAW_S(B, b);
- FP_CMP_EQ_S(r, A, B);
- if (r && (FP_ISSIGNAN_S(A) || FP_ISSIGNAN_S(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_UNPACK_RAW_S (B, b);
+ FP_CMP_EQ_S (r, A, B);
+ if (r && (FP_ISSIGNAN_S (A) || FP_ISSIGNAN_S (B)))
+ FP_SET_EXCEPTION (FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
}
-strong_alias(__eqsf2, __nesf2);
+strong_alias (__eqsf2, __nesf2);
diff --git a/soft-fp/eqtf2.c b/soft-fp/eqtf2.c
index 47b5d5cb61..edbc6f6832 100644
--- a/soft-fp/eqtf2.c
+++ b/soft-fp/eqtf2.c
@@ -31,20 +31,23 @@
#include "soft-fp.h"
#include "quad.h"
-CMPtype __eqtf2(TFtype a, TFtype b)
+CMPtype
+__eqtf2 (TFtype a, TFtype b)
{
FP_DECL_EX;
- FP_DECL_Q(A); FP_DECL_Q(B);
+ FP_DECL_Q (A);
+ FP_DECL_Q (B);
CMPtype r;
- FP_UNPACK_RAW_Q(A, a);
- FP_UNPACK_RAW_Q(B, b);
- FP_CMP_EQ_Q(r, A, B);
- if (r && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_UNPACK_RAW_Q (B, b);
+ FP_CMP_EQ_Q (r, A, B);
+ if (r && (FP_ISSIGNAN_Q (A) || FP_ISSIGNAN_Q (B)))
+ FP_SET_EXCEPTION (FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
}
-strong_alias(__eqtf2, __netf2);
+strong_alias (__eqtf2, __netf2);
diff --git a/soft-fp/extenddftf2.c b/soft-fp/extenddftf2.c
index ff76a8cc2f..2471fda954 100644
--- a/soft-fp/extenddftf2.c
+++ b/soft-fp/extenddftf2.c
@@ -32,21 +32,22 @@
#include "double.h"
#include "quad.h"
-TFtype __extenddftf2(DFtype a)
+TFtype
+__extenddftf2 (DFtype a)
{
FP_DECL_EX;
- FP_DECL_D(A);
- FP_DECL_Q(R);
+ FP_DECL_D (A);
+ FP_DECL_Q (R);
TFtype r;
- FP_INIT_ROUNDMODE;
- FP_UNPACK_RAW_D(A, a);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q
- FP_EXTEND(Q,D,4,2,R,A);
+ FP_EXTEND (Q, D, 4, 2, R, A);
#else
- FP_EXTEND(Q,D,2,1,R,A);
+ FP_EXTEND (Q, D, 2, 1, R, A);
#endif
- FP_PACK_RAW_Q(r, R);
+ FP_PACK_RAW_Q (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/extended.h b/soft-fp/extended.h
index c8b1583086..1189f7c7d2 100644
--- a/soft-fp/extended.h
+++ b/soft-fp/extended.h
@@ -28,15 +28,15 @@
<http://www.gnu.org/licenses/>. */
#if _FP_W_TYPE_SIZE < 32
-#error "Here's a nickel, kid. Go buy yourself a real computer."
+# error "Here's a nickel, kid. Go buy yourself a real computer."
#endif
#if _FP_W_TYPE_SIZE < 64
-#define _FP_FRACTBITS_E (4*_FP_W_TYPE_SIZE)
-#define _FP_FRACTBITS_DW_E (8*_FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_E (4*_FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_DW_E (8*_FP_W_TYPE_SIZE)
#else
-#define _FP_FRACTBITS_E (2*_FP_W_TYPE_SIZE)
-#define _FP_FRACTBITS_DW_E (4*_FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_E (2*_FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_DW_E (4*_FP_W_TYPE_SIZE)
#endif
#define _FP_FRACBITS_E 64
@@ -48,158 +48,187 @@
#define _FP_EXPMAX_E 32767
#define _FP_QNANBIT_E \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_E-2) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_E-2) % _FP_W_TYPE_SIZE)
#define _FP_QNANBIT_SH_E \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_E-2+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_E-2+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
#define _FP_IMPLBIT_E \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_E-1) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_E-1) % _FP_W_TYPE_SIZE)
#define _FP_IMPLBIT_SH_E \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_E-1+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_E-1+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
#define _FP_OVERFLOW_E \
- ((_FP_W_TYPE)1 << (_FP_WFRACBITS_E % _FP_W_TYPE_SIZE))
+ ((_FP_W_TYPE) 1 << (_FP_WFRACBITS_E % _FP_W_TYPE_SIZE))
#define _FP_WFRACBITS_DW_E (2 * _FP_WFRACBITS_E)
#define _FP_WFRACXBITS_DW_E (_FP_FRACTBITS_DW_E - _FP_WFRACBITS_DW_E)
#define _FP_HIGHBIT_DW_E \
- ((_FP_W_TYPE)1 << (_FP_WFRACBITS_DW_E - 1) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_WFRACBITS_DW_E - 1) % _FP_W_TYPE_SIZE)
-typedef float XFtype __attribute__((mode(XF)));
+typedef float XFtype __attribute__ ((mode (XF)));
#if _FP_W_TYPE_SIZE < 64
union _FP_UNION_E
{
- XFtype flt;
- struct _FP_STRUCT_LAYOUT
- {
-#if __BYTE_ORDER == __BIG_ENDIAN
- unsigned long pad1 : _FP_W_TYPE_SIZE;
- unsigned long pad2 : (_FP_W_TYPE_SIZE - 1 - _FP_EXPBITS_E);
- unsigned long sign : 1;
- unsigned long exp : _FP_EXPBITS_E;
- unsigned long frac1 : _FP_W_TYPE_SIZE;
- unsigned long frac0 : _FP_W_TYPE_SIZE;
-#else
- unsigned long frac0 : _FP_W_TYPE_SIZE;
- unsigned long frac1 : _FP_W_TYPE_SIZE;
- unsigned exp : _FP_EXPBITS_E;
- unsigned sign : 1;
-#endif /* not bigendian */
- } bits __attribute__((packed));
+ XFtype flt;
+ struct _FP_STRUCT_LAYOUT
+ {
+# if __BYTE_ORDER == __BIG_ENDIAN
+ unsigned long pad1 : _FP_W_TYPE_SIZE;
+ unsigned long pad2 : (_FP_W_TYPE_SIZE - 1 - _FP_EXPBITS_E);
+ unsigned long sign : 1;
+ unsigned long exp : _FP_EXPBITS_E;
+ unsigned long frac1 : _FP_W_TYPE_SIZE;
+ unsigned long frac0 : _FP_W_TYPE_SIZE;
+# else
+ unsigned long frac0 : _FP_W_TYPE_SIZE;
+ unsigned long frac1 : _FP_W_TYPE_SIZE;
+ unsigned exp : _FP_EXPBITS_E;
+ unsigned sign : 1;
+# endif /* not bigendian */
+ } bits __attribute__ ((packed));
};
-#define FP_DECL_E(X) _FP_DECL(4,X)
-
-#define FP_UNPACK_RAW_E(X, val) \
- do { \
- union _FP_UNION_E _flo; _flo.flt = (val); \
- \
- X##_f[2] = 0; X##_f[3] = 0; \
- X##_f[0] = _flo.bits.frac0; \
- X##_f[1] = _flo.bits.frac1; \
- X##_e = _flo.bits.exp; \
- X##_s = _flo.bits.sign; \
- } while (0)
-
-#define FP_UNPACK_RAW_EP(X, val) \
- do { \
- union _FP_UNION_E *_flo = \
- (union _FP_UNION_E *)(val); \
- \
- X##_f[2] = 0; X##_f[3] = 0; \
- X##_f[0] = _flo->bits.frac0; \
- X##_f[1] = _flo->bits.frac1; \
- X##_e = _flo->bits.exp; \
- X##_s = _flo->bits.sign; \
- } while (0)
-
-#define FP_PACK_RAW_E(val, X) \
- do { \
- union _FP_UNION_E _flo; \
- \
- if (X##_e) X##_f[1] |= _FP_IMPLBIT_E; \
- else X##_f[1] &= ~(_FP_IMPLBIT_E); \
- _flo.bits.frac0 = X##_f[0]; \
- _flo.bits.frac1 = X##_f[1]; \
- _flo.bits.exp = X##_e; \
- _flo.bits.sign = X##_s; \
- \
- (val) = _flo.flt; \
- } while (0)
-
-#define FP_PACK_RAW_EP(val, X) \
- do { \
- if (!FP_INHIBIT_RESULTS) \
- { \
- union _FP_UNION_E *_flo = \
- (union _FP_UNION_E *)(val); \
- \
- if (X##_e) X##_f[1] |= _FP_IMPLBIT_E; \
- else X##_f[1] &= ~(_FP_IMPLBIT_E); \
- _flo->bits.frac0 = X##_f[0]; \
- _flo->bits.frac1 = X##_f[1]; \
- _flo->bits.exp = X##_e; \
- _flo->bits.sign = X##_s; \
- } \
- } while (0)
-
-#define FP_UNPACK_E(X,val) \
- do { \
- FP_UNPACK_RAW_E(X,val); \
- _FP_UNPACK_CANONICAL(E,4,X); \
- } while (0)
-
-#define FP_UNPACK_EP(X,val) \
- do { \
- FP_UNPACK_RAW_EP(X,val); \
- _FP_UNPACK_CANONICAL(E,4,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_E(X,val) \
- do { \
- FP_UNPACK_RAW_E(X,val); \
- _FP_UNPACK_SEMIRAW(E,4,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_EP(X,val) \
- do { \
- FP_UNPACK_RAW_EP(X,val); \
- _FP_UNPACK_SEMIRAW(E,4,X); \
- } while (0)
-
-#define FP_PACK_E(val,X) \
- do { \
- _FP_PACK_CANONICAL(E,4,X); \
- FP_PACK_RAW_E(val,X); \
- } while (0)
-
-#define FP_PACK_EP(val,X) \
- do { \
- _FP_PACK_CANONICAL(E,4,X); \
- FP_PACK_RAW_EP(val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_E(val,X) \
- do { \
- _FP_PACK_SEMIRAW(E,4,X); \
- FP_PACK_RAW_E(val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_EP(val,X) \
- do { \
- _FP_PACK_SEMIRAW(E,4,X); \
- FP_PACK_RAW_EP(val,X); \
- } while (0)
-
-#define FP_ISSIGNAN_E(X) _FP_ISSIGNAN(E,4,X)
-#define FP_NEG_E(R,X) _FP_NEG(E,4,R,X)
-#define FP_ADD_E(R,X,Y) _FP_ADD(E,4,R,X,Y)
-#define FP_SUB_E(R,X,Y) _FP_SUB(E,4,R,X,Y)
-#define FP_MUL_E(R,X,Y) _FP_MUL(E,4,R,X,Y)
-#define FP_DIV_E(R,X,Y) _FP_DIV(E,4,R,X,Y)
-#define FP_SQRT_E(R,X) _FP_SQRT(E,4,R,X)
-#define FP_FMA_E(R,X,Y,Z) _FP_FMA(E,4,8,R,X,Y,Z)
+# define FP_DECL_E(X) _FP_DECL (4, X)
+
+# define FP_UNPACK_RAW_E(X, val) \
+ do \
+ { \
+ union _FP_UNION_E _flo; \
+ _flo.flt = (val); \
+ \
+ X##_f[2] = 0; \
+ X##_f[3] = 0; \
+ X##_f[0] = _flo.bits.frac0; \
+ X##_f[1] = _flo.bits.frac1; \
+ X##_e = _flo.bits.exp; \
+ X##_s = _flo.bits.sign; \
+ } \
+ while (0)
+
+# define FP_UNPACK_RAW_EP(X, val) \
+ do \
+ { \
+ union _FP_UNION_E *_flo = (union _FP_UNION_E *) (val); \
+ \
+ X##_f[2] = 0; \
+ X##_f[3] = 0; \
+ X##_f[0] = _flo->bits.frac0; \
+ X##_f[1] = _flo->bits.frac1; \
+ X##_e = _flo->bits.exp; \
+ X##_s = _flo->bits.sign; \
+ } \
+ while (0)
+
+# define FP_PACK_RAW_E(val, X) \
+ do \
+ { \
+ union _FP_UNION_E _flo; \
+ \
+ if (X##_e) \
+ X##_f[1] |= _FP_IMPLBIT_E; \
+ else \
+ X##_f[1] &= ~(_FP_IMPLBIT_E); \
+ _flo.bits.frac0 = X##_f[0]; \
+ _flo.bits.frac1 = X##_f[1]; \
+ _flo.bits.exp = X##_e; \
+ _flo.bits.sign = X##_s; \
+ \
+ (val) = _flo.flt; \
+ } \
+ while (0)
+
+# define FP_PACK_RAW_EP(val, X) \
+ do \
+ { \
+ if (!FP_INHIBIT_RESULTS) \
+ { \
+ union _FP_UNION_E *_flo = (union _FP_UNION_E *) (val); \
+ \
+ if (X##_e) \
+ X##_f[1] |= _FP_IMPLBIT_E; \
+ else \
+ X##_f[1] &= ~(_FP_IMPLBIT_E); \
+ _flo->bits.frac0 = X##_f[0]; \
+ _flo->bits.frac1 = X##_f[1]; \
+ _flo->bits.exp = X##_e; \
+ _flo->bits.sign = X##_s; \
+ } \
+ } \
+ while (0)
+
+# define FP_UNPACK_E(X, val) \
+ do \
+ { \
+ FP_UNPACK_RAW_E (X, val); \
+ _FP_UNPACK_CANONICAL (E, 4, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_EP(X, val) \
+ do \
+ { \
+ FP_UNPACK_RAW_EP (X, val); \
+ _FP_UNPACK_CANONICAL (E, 4, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_E(X, val) \
+ do \
+ { \
+ FP_UNPACK_RAW_E (X, val); \
+ _FP_UNPACK_SEMIRAW (E, 4, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_EP(X, val) \
+ do \
+ { \
+ FP_UNPACK_RAW_EP (X, val); \
+ _FP_UNPACK_SEMIRAW (E, 4, X); \
+ } \
+ while (0)
+
+# define FP_PACK_E(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (E, 4, X); \
+ FP_PACK_RAW_E (val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_EP(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (E, 4, X); \
+ FP_PACK_RAW_EP (val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_E(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (E, 4, X); \
+ FP_PACK_RAW_E (val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_EP(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (E, 4, X); \
+ FP_PACK_RAW_EP (val, X); \
+ } \
+ while (0)
+
+# define FP_ISSIGNAN_E(X) _FP_ISSIGNAN (E, 4, X)
+# define FP_NEG_E(R, X) _FP_NEG (E, 4, R, X)
+# define FP_ADD_E(R, X, Y) _FP_ADD (E, 4, R, X, Y)
+# define FP_SUB_E(R, X, Y) _FP_SUB (E, 4, R, X, Y)
+# define FP_MUL_E(R, X, Y) _FP_MUL (E, 4, R, X, Y)
+# define FP_DIV_E(R, X, Y) _FP_DIV (E, 4, R, X, Y)
+# define FP_SQRT_E(R, X) _FP_SQRT (E, 4, R, X)
+# define FP_FMA_E(R, X, Y, Z) _FP_FMA (E, 4, 8, R, X, Y, Z)
/*
* Square root algorithms:
@@ -212,188 +241,218 @@ union _FP_UNION_E
* in two UWtype registers instead of four.
*/
-#define _FP_SQRT_MEAT_E(R, S, T, X, q) \
- do { \
- q = (_FP_W_TYPE)1 << (_FP_W_TYPE_SIZE - 1); \
- _FP_FRAC_SRL_4(X, (_FP_WORKBITS)); \
- while (q) \
- { \
- T##_f[1] = S##_f[1] + q; \
- if (T##_f[1] <= X##_f[1]) \
- { \
- S##_f[1] = T##_f[1] + q; \
- X##_f[1] -= T##_f[1]; \
- R##_f[1] += q; \
- } \
- _FP_FRAC_SLL_2(X, 1); \
- q >>= 1; \
- } \
- q = (_FP_W_TYPE)1 << (_FP_W_TYPE_SIZE - 1); \
- while (q) \
- { \
- T##_f[0] = S##_f[0] + q; \
- T##_f[1] = S##_f[1]; \
- if (T##_f[1] < X##_f[1] || \
- (T##_f[1] == X##_f[1] && \
- T##_f[0] <= X##_f[0])) \
- { \
- S##_f[0] = T##_f[0] + q; \
- S##_f[1] += (T##_f[0] > S##_f[0]); \
- _FP_FRAC_DEC_2(X, T); \
- R##_f[0] += q; \
- } \
- _FP_FRAC_SLL_2(X, 1); \
- q >>= 1; \
- } \
- _FP_FRAC_SLL_4(R, (_FP_WORKBITS)); \
- if (X##_f[0] | X##_f[1]) \
- { \
- if (S##_f[1] < X##_f[1] || \
- (S##_f[1] == X##_f[1] && \
- S##_f[0] < X##_f[0])) \
- R##_f[0] |= _FP_WORK_ROUND; \
- R##_f[0] |= _FP_WORK_STICKY; \
- } \
- } while (0)
-
-#define FP_CMP_E(r,X,Y,un) _FP_CMP(E,4,r,X,Y,un)
-#define FP_CMP_EQ_E(r,X,Y) _FP_CMP_EQ(E,4,r,X,Y)
-#define FP_CMP_UNORD_E(r,X,Y) _FP_CMP_UNORD(E,4,r,X,Y)
-
-#define FP_TO_INT_E(r,X,rsz,rsg) _FP_TO_INT(E,4,r,X,rsz,rsg)
-#define FP_FROM_INT_E(X,r,rs,rt) _FP_FROM_INT(E,4,X,r,rs,rt)
-
-#define _FP_FRAC_HIGH_E(X) (X##_f[2])
-#define _FP_FRAC_HIGH_RAW_E(X) (X##_f[1])
-
-#define _FP_FRAC_HIGH_DW_E(X) (X##_f[4])
+# define _FP_SQRT_MEAT_E(R, S, T, X, q) \
+ do \
+ { \
+ q = (_FP_W_TYPE) 1 << (_FP_W_TYPE_SIZE - 1); \
+ _FP_FRAC_SRL_4 (X, (_FP_WORKBITS)); \
+ while (q) \
+ { \
+ T##_f[1] = S##_f[1] + q; \
+ if (T##_f[1] <= X##_f[1]) \
+ { \
+ S##_f[1] = T##_f[1] + q; \
+ X##_f[1] -= T##_f[1]; \
+ R##_f[1] += q; \
+ } \
+ _FP_FRAC_SLL_2 (X, 1); \
+ q >>= 1; \
+ } \
+ q = (_FP_W_TYPE) 1 << (_FP_W_TYPE_SIZE - 1); \
+ while (q) \
+ { \
+ T##_f[0] = S##_f[0] + q; \
+ T##_f[1] = S##_f[1]; \
+ if (T##_f[1] < X##_f[1] \
+ || (T##_f[1] == X##_f[1] \
+ && T##_f[0] <= X##_f[0])) \
+ { \
+ S##_f[0] = T##_f[0] + q; \
+ S##_f[1] += (T##_f[0] > S##_f[0]); \
+ _FP_FRAC_DEC_2 (X, T); \
+ R##_f[0] += q; \
+ } \
+ _FP_FRAC_SLL_2 (X, 1); \
+ q >>= 1; \
+ } \
+ _FP_FRAC_SLL_4 (R, (_FP_WORKBITS)); \
+ if (X##_f[0] | X##_f[1]) \
+ { \
+ if (S##_f[1] < X##_f[1] \
+ || (S##_f[1] == X##_f[1] \
+ && S##_f[0] < X##_f[0])) \
+ R##_f[0] |= _FP_WORK_ROUND; \
+ R##_f[0] |= _FP_WORK_STICKY; \
+ } \
+ } \
+ while (0)
+
+# define FP_CMP_E(r, X, Y, un) _FP_CMP (E, 4, r, X, Y, un)
+# define FP_CMP_EQ_E(r, X, Y) _FP_CMP_EQ (E, 4, r, X, Y)
+# define FP_CMP_UNORD_E(r, X, Y) _FP_CMP_UNORD (E, 4, r, X, Y)
+
+# define FP_TO_INT_E(r, X, rsz, rsg) _FP_TO_INT (E, 4, r, X, rsz, rsg)
+# define FP_FROM_INT_E(X, r, rs, rt) _FP_FROM_INT (E, 4, X, r, rs, rt)
+
+# define _FP_FRAC_HIGH_E(X) (X##_f[2])
+# define _FP_FRAC_HIGH_RAW_E(X) (X##_f[1])
+
+# define _FP_FRAC_HIGH_DW_E(X) (X##_f[4])
#else /* not _FP_W_TYPE_SIZE < 64 */
union _FP_UNION_E
{
XFtype flt;
- struct _FP_STRUCT_LAYOUT {
-#if __BYTE_ORDER == __BIG_ENDIAN
+ struct _FP_STRUCT_LAYOUT
+ {
+# if __BYTE_ORDER == __BIG_ENDIAN
_FP_W_TYPE pad : (_FP_W_TYPE_SIZE - 1 - _FP_EXPBITS_E);
unsigned sign : 1;
unsigned exp : _FP_EXPBITS_E;
_FP_W_TYPE frac : _FP_W_TYPE_SIZE;
-#else
+# else
_FP_W_TYPE frac : _FP_W_TYPE_SIZE;
unsigned exp : _FP_EXPBITS_E;
unsigned sign : 1;
-#endif
+# endif
} bits;
};
-#define FP_DECL_E(X) _FP_DECL(2,X)
-
-#define FP_UNPACK_RAW_E(X, val) \
- do { \
- union _FP_UNION_E _flo; _flo.flt = (val); \
- \
- X##_f0 = _flo.bits.frac; \
- X##_f1 = 0; \
- X##_e = _flo.bits.exp; \
- X##_s = _flo.bits.sign; \
- } while (0)
-
-#define FP_UNPACK_RAW_EP(X, val) \
- do { \
- union _FP_UNION_E *_flo = \
- (union _FP_UNION_E *)(val); \
- \
- X##_f0 = _flo->bits.frac; \
- X##_f1 = 0; \
- X##_e = _flo->bits.exp; \
- X##_s = _flo->bits.sign; \
- } while (0)
-
-#define FP_PACK_RAW_E(val, X) \
- do { \
- union _FP_UNION_E _flo; \
- \
- if (X##_e) X##_f0 |= _FP_IMPLBIT_E; \
- else X##_f0 &= ~(_FP_IMPLBIT_E); \
- _flo.bits.frac = X##_f0; \
- _flo.bits.exp = X##_e; \
- _flo.bits.sign = X##_s; \
- \
- (val) = _flo.flt; \
- } while (0)
-
-#define FP_PACK_RAW_EP(fs, val, X) \
- do { \
- if (!FP_INHIBIT_RESULTS) \
- { \
- union _FP_UNION_E *_flo = \
- (union _FP_UNION_E *)(val); \
+# define FP_DECL_E(X) _FP_DECL (2, X)
+
+# define FP_UNPACK_RAW_E(X, val) \
+ do \
+ { \
+ union _FP_UNION_E _flo; \
+ _flo.flt = (val); \
+ \
+ X##_f0 = _flo.bits.frac; \
+ X##_f1 = 0; \
+ X##_e = _flo.bits.exp; \
+ X##_s = _flo.bits.sign; \
+ } \
+ while (0)
+
+# define FP_UNPACK_RAW_EP(X, val) \
+ do \
+ { \
+ union _FP_UNION_E *_flo = (union _FP_UNION_E *) (val); \
\
- if (X##_e) X##_f0 |= _FP_IMPLBIT_E; \
- else X##_f0 &= ~(_FP_IMPLBIT_E); \
- _flo->bits.frac = X##_f0; \
- _flo->bits.exp = X##_e; \
- _flo->bits.sign = X##_s; \
- } \
- } while (0)
-
-
-#define FP_UNPACK_E(X,val) \
- do { \
- FP_UNPACK_RAW_E(X,val); \
- _FP_UNPACK_CANONICAL(E,2,X); \
- } while (0)
-
-#define FP_UNPACK_EP(X,val) \
- do { \
- FP_UNPACK_RAW_EP(X,val); \
- _FP_UNPACK_CANONICAL(E,2,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_E(X,val) \
- do { \
- FP_UNPACK_RAW_E(X,val); \
- _FP_UNPACK_SEMIRAW(E,2,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_EP(X,val) \
- do { \
- FP_UNPACK_RAW_EP(X,val); \
- _FP_UNPACK_SEMIRAW(E,2,X); \
- } while (0)
-
-#define FP_PACK_E(val,X) \
- do { \
- _FP_PACK_CANONICAL(E,2,X); \
- FP_PACK_RAW_E(val,X); \
- } while (0)
-
-#define FP_PACK_EP(val,X) \
- do { \
- _FP_PACK_CANONICAL(E,2,X); \
- FP_PACK_RAW_EP(val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_E(val,X) \
- do { \
- _FP_PACK_SEMIRAW(E,2,X); \
- FP_PACK_RAW_E(val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_EP(val,X) \
- do { \
- _FP_PACK_SEMIRAW(E,2,X); \
- FP_PACK_RAW_EP(val,X); \
- } while (0)
-
-#define FP_ISSIGNAN_E(X) _FP_ISSIGNAN(E,2,X)
-#define FP_NEG_E(R,X) _FP_NEG(E,2,R,X)
-#define FP_ADD_E(R,X,Y) _FP_ADD(E,2,R,X,Y)
-#define FP_SUB_E(R,X,Y) _FP_SUB(E,2,R,X,Y)
-#define FP_MUL_E(R,X,Y) _FP_MUL(E,2,R,X,Y)
-#define FP_DIV_E(R,X,Y) _FP_DIV(E,2,R,X,Y)
-#define FP_SQRT_E(R,X) _FP_SQRT(E,2,R,X)
-#define FP_FMA_E(R,X,Y,Z) _FP_FMA(E,2,4,R,X,Y,Z)
+ X##_f0 = _flo->bits.frac; \
+ X##_f1 = 0; \
+ X##_e = _flo->bits.exp; \
+ X##_s = _flo->bits.sign; \
+ } \
+ while (0)
+
+# define FP_PACK_RAW_E(val, X) \
+ do \
+ { \
+ union _FP_UNION_E _flo; \
+ \
+ if (X##_e) \
+ X##_f0 |= _FP_IMPLBIT_E; \
+ else \
+ X##_f0 &= ~(_FP_IMPLBIT_E); \
+ _flo.bits.frac = X##_f0; \
+ _flo.bits.exp = X##_e; \
+ _flo.bits.sign = X##_s; \
+ \
+ (val) = _flo.flt; \
+ } \
+ while (0)
+
+# define FP_PACK_RAW_EP(fs, val, X) \
+ do \
+ { \
+ if (!FP_INHIBIT_RESULTS) \
+ { \
+ union _FP_UNION_E *_flo = (union _FP_UNION_E *) (val); \
+ \
+ if (X##_e) \
+ X##_f0 |= _FP_IMPLBIT_E; \
+ else \
+ X##_f0 &= ~(_FP_IMPLBIT_E); \
+ _flo->bits.frac = X##_f0; \
+ _flo->bits.exp = X##_e; \
+ _flo->bits.sign = X##_s; \
+ } \
+ } \
+ while (0)
+
+
+# define FP_UNPACK_E(X, val) \
+ do \
+ { \
+ FP_UNPACK_RAW_E (X, val); \
+ _FP_UNPACK_CANONICAL (E, 2, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_EP(X, val) \
+ do \
+ { \
+ FP_UNPACK_RAW_EP (X, val); \
+ _FP_UNPACK_CANONICAL (E, 2, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_E(X, val) \
+ do \
+ { \
+ FP_UNPACK_RAW_E (X, val); \
+ _FP_UNPACK_SEMIRAW (E, 2, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_EP(X, val) \
+ do \
+ { \
+ FP_UNPACK_RAW_EP (X, val); \
+ _FP_UNPACK_SEMIRAW (E, 2, X); \
+ } \
+ while (0)
+
+# define FP_PACK_E(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (E, 2, X); \
+ FP_PACK_RAW_E (val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_EP(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (E, 2, X); \
+ FP_PACK_RAW_EP (val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_E(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (E, 2, X); \
+ FP_PACK_RAW_E (val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_EP(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (E, 2, X); \
+ FP_PACK_RAW_EP (val, X); \
+ } \
+ while (0)
+
+# define FP_ISSIGNAN_E(X) _FP_ISSIGNAN (E, 2, X)
+# define FP_NEG_E(R, X) _FP_NEG (E, 2, R, X)
+# define FP_ADD_E(R, X, Y) _FP_ADD (E, 2, R, X, Y)
+# define FP_SUB_E(R, X, Y) _FP_SUB (E, 2, R, X, Y)
+# define FP_MUL_E(R, X, Y) _FP_MUL (E, 2, R, X, Y)
+# define FP_DIV_E(R, X, Y) _FP_DIV (E, 2, R, X, Y)
+# define FP_SQRT_E(R, X) _FP_SQRT (E, 2, R, X)
+# define FP_FMA_E(R, X, Y, Z) _FP_FMA (E, 2, 4, R, X, Y, Z)
/*
* Square root algorithms:
@@ -403,41 +462,43 @@ union _FP_UNION_E
* in one UWtype registers instead of two, although we don't
* have to.
*/
-#define _FP_SQRT_MEAT_E(R, S, T, X, q) \
- do { \
- q = (_FP_W_TYPE)1 << (_FP_W_TYPE_SIZE - 1); \
- _FP_FRAC_SRL_2(X, (_FP_WORKBITS)); \
- while (q) \
- { \
- T##_f0 = S##_f0 + q; \
- if (T##_f0 <= X##_f0) \
- { \
- S##_f0 = T##_f0 + q; \
- X##_f0 -= T##_f0; \
- R##_f0 += q; \
- } \
- _FP_FRAC_SLL_1(X, 1); \
- q >>= 1; \
- } \
- _FP_FRAC_SLL_2(R, (_FP_WORKBITS)); \
- if (X##_f0) \
- { \
- if (S##_f0 < X##_f0) \
- R##_f0 |= _FP_WORK_ROUND; \
- R##_f0 |= _FP_WORK_STICKY; \
- } \
- } while (0)
-
-#define FP_CMP_E(r,X,Y,un) _FP_CMP(E,2,r,X,Y,un)
-#define FP_CMP_EQ_E(r,X,Y) _FP_CMP_EQ(E,2,r,X,Y)
-#define FP_CMP_UNORD_E(r,X,Y) _FP_CMP_UNORD(E,2,r,X,Y)
-
-#define FP_TO_INT_E(r,X,rsz,rsg) _FP_TO_INT(E,2,r,X,rsz,rsg)
-#define FP_FROM_INT_E(X,r,rs,rt) _FP_FROM_INT(E,2,X,r,rs,rt)
-
-#define _FP_FRAC_HIGH_E(X) (X##_f1)
-#define _FP_FRAC_HIGH_RAW_E(X) (X##_f0)
-
-#define _FP_FRAC_HIGH_DW_E(X) (X##_f[2])
+# define _FP_SQRT_MEAT_E(R, S, T, X, q) \
+ do \
+ { \
+ q = (_FP_W_TYPE) 1 << (_FP_W_TYPE_SIZE - 1); \
+ _FP_FRAC_SRL_2 (X, (_FP_WORKBITS)); \
+ while (q) \
+ { \
+ T##_f0 = S##_f0 + q; \
+ if (T##_f0 <= X##_f0) \
+ { \
+ S##_f0 = T##_f0 + q; \
+ X##_f0 -= T##_f0; \
+ R##_f0 += q; \
+ } \
+ _FP_FRAC_SLL_1 (X, 1); \
+ q >>= 1; \
+ } \
+ _FP_FRAC_SLL_2 (R, (_FP_WORKBITS)); \
+ if (X##_f0) \
+ { \
+ if (S##_f0 < X##_f0) \
+ R##_f0 |= _FP_WORK_ROUND; \
+ R##_f0 |= _FP_WORK_STICKY; \
+ } \
+ } \
+ while (0)
+
+# define FP_CMP_E(r, X, Y, un) _FP_CMP (E, 2, r, X, Y, un)
+# define FP_CMP_EQ_E(r, X, Y) _FP_CMP_EQ (E, 2, r, X, Y)
+# define FP_CMP_UNORD_E(r, X, Y) _FP_CMP_UNORD (E, 2, r, X, Y)
+
+# define FP_TO_INT_E(r, X, rsz, rsg) _FP_TO_INT (E, 2, r, X, rsz, rsg)
+# define FP_FROM_INT_E(X, r, rs, rt) _FP_FROM_INT (E, 2, X, r, rs, rt)
+
+# define _FP_FRAC_HIGH_E(X) (X##_f1)
+# define _FP_FRAC_HIGH_RAW_E(X) (X##_f0)
+
+# define _FP_FRAC_HIGH_DW_E(X) (X##_f[2])
#endif /* not _FP_W_TYPE_SIZE < 64 */
diff --git a/soft-fp/extendsfdf2.c b/soft-fp/extendsfdf2.c
index 7fc4046f8a..2276de527f 100644
--- a/soft-fp/extendsfdf2.c
+++ b/soft-fp/extendsfdf2.c
@@ -32,21 +32,22 @@
#include "single.h"
#include "double.h"
-DFtype __extendsfdf2(SFtype a)
+DFtype
+__extendsfdf2 (SFtype a)
{
FP_DECL_EX;
- FP_DECL_S(A);
- FP_DECL_D(R);
+ FP_DECL_S (A);
+ FP_DECL_D (R);
DFtype r;
- FP_INIT_ROUNDMODE;
- FP_UNPACK_RAW_S(A, a);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
#if _FP_W_TYPE_SIZE < _FP_FRACBITS_D
- FP_EXTEND(D,S,2,1,R,A);
+ FP_EXTEND (D, S, 2, 1, R, A);
#else
- FP_EXTEND(D,S,1,1,R,A);
+ FP_EXTEND (D, S, 1, 1, R, A);
#endif
- FP_PACK_RAW_D(r, R);
+ FP_PACK_RAW_D (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/extendsftf2.c b/soft-fp/extendsftf2.c
index 8271a88466..51f60c4569 100644
--- a/soft-fp/extendsftf2.c
+++ b/soft-fp/extendsftf2.c
@@ -32,21 +32,22 @@
#include "single.h"
#include "quad.h"
-TFtype __extendsftf2(SFtype a)
+TFtype
+__extendsftf2 (SFtype a)
{
FP_DECL_EX;
- FP_DECL_S(A);
- FP_DECL_Q(R);
+ FP_DECL_S (A);
+ FP_DECL_Q (R);
TFtype r;
- FP_INIT_ROUNDMODE;
- FP_UNPACK_RAW_S(A, a);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q
- FP_EXTEND(Q,S,4,1,R,A);
+ FP_EXTEND (Q, S, 4, 1, R, A);
#else
- FP_EXTEND(Q,S,2,1,R,A);
+ FP_EXTEND (Q, S, 2, 1, R, A);
#endif
- FP_PACK_RAW_Q(r, R);
+ FP_PACK_RAW_Q (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/extendxftf2.c b/soft-fp/extendxftf2.c
new file mode 100644
index 0000000000..684052d874
--- /dev/null
+++ b/soft-fp/extendxftf2.c
@@ -0,0 +1,53 @@
+/* Software floating-point emulation.
+ Return a converted to IEEE quad
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "extended.h"
+#include "quad.h"
+
+TFtype
+__extendxftf2 (XFtype a)
+{
+ FP_DECL_EX;
+ FP_DECL_E (A);
+ FP_DECL_Q (R);
+ TFtype r;
+
+ FP_INIT_ROUNDMODE;
+ FP_UNPACK_RAW_E (A, a);
+#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q
+ FP_EXTEND (Q, E, 4, 4, R, A);
+#else
+ FP_EXTEND (Q, E, 2, 2, R, A);
+#endif
+ FP_PACK_RAW_Q (r, R);
+ FP_HANDLE_EXCEPTIONS;
+
+ return r;
+}
diff --git a/soft-fp/fixdfdi.c b/soft-fp/fixdfdi.c
index 71ce1d4d71..7b926b3d69 100644
--- a/soft-fp/fixdfdi.c
+++ b/soft-fp/fixdfdi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "double.h"
-DItype __fixdfdi(DFtype a)
+DItype
+__fixdfdi (DFtype a)
{
FP_DECL_EX;
- FP_DECL_D(A);
+ FP_DECL_D (A);
UDItype r;
- FP_UNPACK_RAW_D(A, a);
- FP_TO_INT_D(r, A, DI_BITS, 1);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_TO_INT_D (r, A, DI_BITS, 1);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixdfsi.c b/soft-fp/fixdfsi.c
index f0c9960644..79b2d21505 100644
--- a/soft-fp/fixdfsi.c
+++ b/soft-fp/fixdfsi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "double.h"
-SItype __fixdfsi(DFtype a)
+SItype
+__fixdfsi (DFtype a)
{
FP_DECL_EX;
- FP_DECL_D(A);
+ FP_DECL_D (A);
USItype r;
- FP_UNPACK_RAW_D(A, a);
- FP_TO_INT_D(r, A, SI_BITS, 1);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_TO_INT_D (r, A, SI_BITS, 1);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixdfti.c b/soft-fp/fixdfti.c
new file mode 100644
index 0000000000..b5fe4f99fc
--- /dev/null
+++ b/soft-fp/fixdfti.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert IEEE double to 128bit signed integer
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "double.h"
+
+TItype
+__fixdfti (DFtype a)
+{
+ FP_DECL_EX;
+ FP_DECL_D (A);
+ UTItype r;
+
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_TO_INT_D (r, A, TI_BITS, 1);
+ FP_HANDLE_EXCEPTIONS;
+
+ return r;
+}
diff --git a/soft-fp/fixsfdi.c b/soft-fp/fixsfdi.c
index 5f69d6a288..df6b9c728a 100644
--- a/soft-fp/fixsfdi.c
+++ b/soft-fp/fixsfdi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "single.h"
-DItype __fixsfdi(SFtype a)
+DItype
+__fixsfdi (SFtype a)
{
FP_DECL_EX;
- FP_DECL_S(A);
+ FP_DECL_S (A);
UDItype r;
- FP_UNPACK_RAW_S(A, a);
- FP_TO_INT_S(r, A, DI_BITS, 1);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_TO_INT_S (r, A, DI_BITS, 1);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixsfsi.c b/soft-fp/fixsfsi.c
index 6fffdd7378..4c0bfd39db 100644
--- a/soft-fp/fixsfsi.c
+++ b/soft-fp/fixsfsi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "single.h"
-SItype __fixsfsi(SFtype a)
+SItype
+__fixsfsi (SFtype a)
{
FP_DECL_EX;
- FP_DECL_S(A);
+ FP_DECL_S (A);
USItype r;
- FP_UNPACK_RAW_S(A, a);
- FP_TO_INT_S(r, A, SI_BITS, 1);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_TO_INT_S (r, A, SI_BITS, 1);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixsfti.c b/soft-fp/fixsfti.c
new file mode 100644
index 0000000000..6b5229fe91
--- /dev/null
+++ b/soft-fp/fixsfti.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert IEEE single to 128bit signed integer
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "single.h"
+
+TItype
+__fixsfti (SFtype a)
+{
+ FP_DECL_EX;
+ FP_DECL_S (A);
+ UTItype r;
+
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_TO_INT_S (r, A, TI_BITS, 1);
+ FP_HANDLE_EXCEPTIONS;
+
+ return r;
+}
diff --git a/soft-fp/fixtfdi.c b/soft-fp/fixtfdi.c
index ac67bfbd3c..a65173aa78 100644
--- a/soft-fp/fixtfdi.c
+++ b/soft-fp/fixtfdi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "quad.h"
-DItype __fixtfdi(TFtype a)
+DItype
+__fixtfdi (TFtype a)
{
FP_DECL_EX;
- FP_DECL_Q(A);
+ FP_DECL_Q (A);
UDItype r;
- FP_UNPACK_RAW_Q(A, a);
- FP_TO_INT_Q(r, A, DI_BITS, 1);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_TO_INT_Q (r, A, DI_BITS, 1);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixtfsi.c b/soft-fp/fixtfsi.c
index 8f27ff66f0..bc0ea0b87d 100644
--- a/soft-fp/fixtfsi.c
+++ b/soft-fp/fixtfsi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "quad.h"
-SItype __fixtfsi(TFtype a)
+SItype
+__fixtfsi (TFtype a)
{
FP_DECL_EX;
- FP_DECL_Q(A);
+ FP_DECL_Q (A);
USItype r;
- FP_UNPACK_RAW_Q(A, a);
- FP_TO_INT_Q(r, A, SI_BITS, 1);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_TO_INT_Q (r, A, SI_BITS, 1);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixtfti.c b/soft-fp/fixtfti.c
new file mode 100644
index 0000000000..573ca0ed11
--- /dev/null
+++ b/soft-fp/fixtfti.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert IEEE quad to 128bit signed integer
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "quad.h"
+
+TItype
+__fixtfti (TFtype a)
+{
+ FP_DECL_EX;
+ FP_DECL_Q (A);
+ UTItype r;
+
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_TO_INT_Q (r, A, TI_BITS, 1);
+ FP_HANDLE_EXCEPTIONS;
+
+ return r;
+}
diff --git a/soft-fp/fixunsdfdi.c b/soft-fp/fixunsdfdi.c
index 82fe1c7538..8831cc3d19 100644
--- a/soft-fp/fixunsdfdi.c
+++ b/soft-fp/fixunsdfdi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "double.h"
-UDItype __fixunsdfdi(DFtype a)
+UDItype
+__fixunsdfdi (DFtype a)
{
FP_DECL_EX;
- FP_DECL_D(A);
+ FP_DECL_D (A);
UDItype r;
- FP_UNPACK_RAW_D(A, a);
- FP_TO_INT_D(r, A, DI_BITS, 0);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_TO_INT_D (r, A, DI_BITS, 0);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixunsdfsi.c b/soft-fp/fixunsdfsi.c
index 43287b0073..ff3744467a 100644
--- a/soft-fp/fixunsdfsi.c
+++ b/soft-fp/fixunsdfsi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "double.h"
-USItype __fixunsdfsi(DFtype a)
+USItype
+__fixunsdfsi (DFtype a)
{
FP_DECL_EX;
- FP_DECL_D(A);
+ FP_DECL_D (A);
USItype r;
- FP_UNPACK_RAW_D(A, a);
- FP_TO_INT_D(r, A, SI_BITS, 0);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_TO_INT_D (r, A, SI_BITS, 0);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixunsdfti.c b/soft-fp/fixunsdfti.c
new file mode 100644
index 0000000000..f124a7c6a8
--- /dev/null
+++ b/soft-fp/fixunsdfti.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert IEEE double to 128bit unsigned integer
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "double.h"
+
+UTItype
+__fixunsdfti (DFtype a)
+{
+ FP_DECL_EX;
+ FP_DECL_D (A);
+ UTItype r;
+
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_TO_INT_D (r, A, TI_BITS, 0);
+ FP_HANDLE_EXCEPTIONS;
+
+ return r;
+}
diff --git a/soft-fp/fixunssfdi.c b/soft-fp/fixunssfdi.c
index c0691c663c..4261c5e6a7 100644
--- a/soft-fp/fixunssfdi.c
+++ b/soft-fp/fixunssfdi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "single.h"
-UDItype __fixunssfdi(SFtype a)
+UDItype
+__fixunssfdi (SFtype a)
{
FP_DECL_EX;
- FP_DECL_S(A);
+ FP_DECL_S (A);
UDItype r;
- FP_UNPACK_RAW_S(A, a);
- FP_TO_INT_S(r, A, DI_BITS, 0);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_TO_INT_S (r, A, DI_BITS, 0);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixunssfsi.c b/soft-fp/fixunssfsi.c
index 3d00ce8d56..b4bb890299 100644
--- a/soft-fp/fixunssfsi.c
+++ b/soft-fp/fixunssfsi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "single.h"
-USItype __fixunssfsi(SFtype a)
+USItype
+__fixunssfsi (SFtype a)
{
FP_DECL_EX;
- FP_DECL_S(A);
+ FP_DECL_S (A);
USItype r;
- FP_UNPACK_RAW_S(A, a);
- FP_TO_INT_S(r, A, SI_BITS, 0);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_TO_INT_S (r, A, SI_BITS, 0);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixunssfti.c b/soft-fp/fixunssfti.c
new file mode 100644
index 0000000000..36d01b0cfe
--- /dev/null
+++ b/soft-fp/fixunssfti.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert IEEE single to 128bit unsigned integer
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "single.h"
+
+UTItype
+__fixunssfti (SFtype a)
+{
+ FP_DECL_EX;
+ FP_DECL_S (A);
+ UTItype r;
+
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_TO_INT_S (r, A, TI_BITS, 0);
+ FP_HANDLE_EXCEPTIONS;
+
+ return r;
+}
diff --git a/soft-fp/fixunstfdi.c b/soft-fp/fixunstfdi.c
index d6038fa891..b2355a2ae9 100644
--- a/soft-fp/fixunstfdi.c
+++ b/soft-fp/fixunstfdi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "quad.h"
-UDItype __fixunstfdi(TFtype a)
+UDItype
+__fixunstfdi (TFtype a)
{
FP_DECL_EX;
- FP_DECL_Q(A);
+ FP_DECL_Q (A);
UDItype r;
- FP_UNPACK_RAW_Q(A, a);
- FP_TO_INT_Q(r, A, DI_BITS, 0);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_TO_INT_Q (r, A, DI_BITS, 0);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixunstfsi.c b/soft-fp/fixunstfsi.c
index c8481f1caf..efa1418da1 100644
--- a/soft-fp/fixunstfsi.c
+++ b/soft-fp/fixunstfsi.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "quad.h"
-USItype __fixunstfsi(TFtype a)
+USItype
+__fixunstfsi (TFtype a)
{
FP_DECL_EX;
- FP_DECL_Q(A);
+ FP_DECL_Q (A);
USItype r;
- FP_UNPACK_RAW_Q(A, a);
- FP_TO_INT_Q(r, A, SI_BITS, 0);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_TO_INT_Q (r, A, SI_BITS, 0);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fixunstfti.c b/soft-fp/fixunstfti.c
new file mode 100644
index 0000000000..efe0cf5c5d
--- /dev/null
+++ b/soft-fp/fixunstfti.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert IEEE quad to 128bit unsigned integer
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "quad.h"
+
+UTItype
+__fixunstfti (TFtype a)
+{
+ FP_DECL_EX;
+ FP_DECL_Q (A);
+ UTItype r;
+
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_TO_INT_Q (r, A, TI_BITS, 0);
+ FP_HANDLE_EXCEPTIONS;
+
+ return r;
+}
diff --git a/soft-fp/floatdidf.c b/soft-fp/floatdidf.c
index f6f594a84f..fc8719abd7 100644
--- a/soft-fp/floatdidf.c
+++ b/soft-fp/floatdidf.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "double.h"
-DFtype __floatdidf(DItype i)
+DFtype
+__floatdidf (DItype i)
{
FP_DECL_EX;
- FP_DECL_D(A);
+ FP_DECL_D (A);
DFtype a;
- FP_FROM_INT_D(A, i, DI_BITS, UDItype);
- FP_PACK_RAW_D(a, A);
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_D (A, i, DI_BITS, UDItype);
+ FP_PACK_RAW_D (a, A);
FP_HANDLE_EXCEPTIONS;
return a;
diff --git a/soft-fp/floatdisf.c b/soft-fp/floatdisf.c
index 72252e4a99..b6b6b42525 100644
--- a/soft-fp/floatdisf.c
+++ b/soft-fp/floatdisf.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "single.h"
-SFtype __floatdisf(DItype i)
+SFtype
+__floatdisf (DItype i)
{
FP_DECL_EX;
- FP_DECL_S(A);
+ FP_DECL_S (A);
SFtype a;
- FP_FROM_INT_S(A, i, DI_BITS, UDItype);
- FP_PACK_RAW_S(a, A);
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_S (A, i, DI_BITS, UDItype);
+ FP_PACK_RAW_S (a, A);
FP_HANDLE_EXCEPTIONS;
return a;
diff --git a/soft-fp/floatditf.c b/soft-fp/floatditf.c
index 68da6c60b0..fc3fba361f 100644
--- a/soft-fp/floatditf.c
+++ b/soft-fp/floatditf.c
@@ -28,18 +28,18 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#define FP_NO_EXCEPTIONS
#include "soft-fp.h"
#include "quad.h"
-TFtype __floatditf(DItype i)
+TFtype
+__floatditf (DItype i)
{
- FP_DECL_EX;
- FP_DECL_Q(A);
+ FP_DECL_Q (A);
TFtype a;
- FP_FROM_INT_Q(A, i, DI_BITS, UDItype);
- FP_PACK_RAW_Q(a, A);
- FP_HANDLE_EXCEPTIONS;
+ FP_FROM_INT_Q (A, i, DI_BITS, UDItype);
+ FP_PACK_RAW_Q (a, A);
return a;
}
diff --git a/soft-fp/floatsidf.c b/soft-fp/floatsidf.c
index ec578fba79..7df5265ffc 100644
--- a/soft-fp/floatsidf.c
+++ b/soft-fp/floatsidf.c
@@ -28,18 +28,18 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#define FP_NO_EXCEPTIONS
#include "soft-fp.h"
#include "double.h"
-DFtype __floatsidf(SItype i)
+DFtype
+__floatsidf (SItype i)
{
- FP_DECL_EX;
- FP_DECL_D(A);
+ FP_DECL_D (A);
DFtype a;
- FP_FROM_INT_D(A, i, SI_BITS, USItype);
- FP_PACK_RAW_D(a, A);
- FP_HANDLE_EXCEPTIONS;
+ FP_FROM_INT_D (A, i, SI_BITS, USItype);
+ FP_PACK_RAW_D (a, A);
return a;
}
diff --git a/soft-fp/floatsisf.c b/soft-fp/floatsisf.c
index c9ff205d7f..b55fd3329e 100644
--- a/soft-fp/floatsisf.c
+++ b/soft-fp/floatsisf.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "single.h"
-SFtype __floatsisf(SItype i)
+SFtype
+__floatsisf (SItype i)
{
FP_DECL_EX;
- FP_DECL_S(A);
+ FP_DECL_S (A);
SFtype a;
- FP_FROM_INT_S(A, i, SI_BITS, USItype);
- FP_PACK_RAW_S(a, A);
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_S (A, i, SI_BITS, USItype);
+ FP_PACK_RAW_S (a, A);
FP_HANDLE_EXCEPTIONS;
return a;
diff --git a/soft-fp/floatsitf.c b/soft-fp/floatsitf.c
index 6e24b9ea63..d7c3078e4b 100644
--- a/soft-fp/floatsitf.c
+++ b/soft-fp/floatsitf.c
@@ -28,18 +28,18 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#define FP_NO_EXCEPTIONS
#include "soft-fp.h"
#include "quad.h"
-TFtype __floatsitf(SItype i)
+TFtype
+__floatsitf (SItype i)
{
- FP_DECL_EX;
- FP_DECL_Q(A);
+ FP_DECL_Q (A);
TFtype a;
- FP_FROM_INT_Q(A, i, SI_BITS, USItype);
- FP_PACK_RAW_Q(a, A);
- FP_HANDLE_EXCEPTIONS;
+ FP_FROM_INT_Q (A, i, SI_BITS, USItype);
+ FP_PACK_RAW_Q (a, A);
return a;
}
diff --git a/soft-fp/floattidf.c b/soft-fp/floattidf.c
new file mode 100644
index 0000000000..a28181b23a
--- /dev/null
+++ b/soft-fp/floattidf.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert a 128bit signed integer to IEEE double
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "double.h"
+
+DFtype
+__floattidf (TItype i)
+{
+ FP_DECL_EX;
+ FP_DECL_D (A);
+ DFtype a;
+
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_D (A, i, TI_BITS, UTItype);
+ FP_PACK_RAW_D (a, A);
+ FP_HANDLE_EXCEPTIONS;
+
+ return a;
+}
diff --git a/soft-fp/floattisf.c b/soft-fp/floattisf.c
new file mode 100644
index 0000000000..da81047945
--- /dev/null
+++ b/soft-fp/floattisf.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert a 128bit signed integer to IEEE single
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "single.h"
+
+SFtype
+__floattisf (TItype i)
+{
+ FP_DECL_EX;
+ FP_DECL_S (A);
+ SFtype a;
+
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_S (A, i, TI_BITS, UTItype);
+ FP_PACK_RAW_S (a, A);
+ FP_HANDLE_EXCEPTIONS;
+
+ return a;
+}
diff --git a/soft-fp/floattitf.c b/soft-fp/floattitf.c
new file mode 100644
index 0000000000..ffe217a622
--- /dev/null
+++ b/soft-fp/floattitf.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert a 128bit signed integer to IEEE quad
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "quad.h"
+
+TFtype
+__floattitf (TItype i)
+{
+ FP_DECL_EX;
+ FP_DECL_Q (A);
+ TFtype a;
+
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_Q (A, i, TI_BITS, UTItype);
+ FP_PACK_RAW_Q (a, A);
+ FP_HANDLE_EXCEPTIONS;
+
+ return a;
+}
diff --git a/soft-fp/floatundidf.c b/soft-fp/floatundidf.c
index 1babcec8e0..8a041f827a 100644
--- a/soft-fp/floatundidf.c
+++ b/soft-fp/floatundidf.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "double.h"
-DFtype __floatundidf(UDItype i)
+DFtype
+__floatundidf (UDItype i)
{
FP_DECL_EX;
- FP_DECL_D(A);
+ FP_DECL_D (A);
DFtype a;
- FP_FROM_INT_D(A, i, DI_BITS, UDItype);
- FP_PACK_RAW_D(a, A);
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_D (A, i, DI_BITS, UDItype);
+ FP_PACK_RAW_D (a, A);
FP_HANDLE_EXCEPTIONS;
return a;
diff --git a/soft-fp/floatundisf.c b/soft-fp/floatundisf.c
index 1c645c023d..8dc750851a 100644
--- a/soft-fp/floatundisf.c
+++ b/soft-fp/floatundisf.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "single.h"
-SFtype __floatundisf(UDItype i)
+SFtype
+__floatundisf (UDItype i)
{
FP_DECL_EX;
- FP_DECL_S(A);
+ FP_DECL_S (A);
SFtype a;
- FP_FROM_INT_S(A, i, DI_BITS, UDItype);
- FP_PACK_RAW_S(a, A);
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_S (A, i, DI_BITS, UDItype);
+ FP_PACK_RAW_S (a, A);
FP_HANDLE_EXCEPTIONS;
return a;
diff --git a/soft-fp/floatunditf.c b/soft-fp/floatunditf.c
index fff73fdb67..cc8a3fe06c 100644
--- a/soft-fp/floatunditf.c
+++ b/soft-fp/floatunditf.c
@@ -28,19 +28,18 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#define FP_NO_EXCEPTIONS
#include "soft-fp.h"
#include "quad.h"
TFtype
-__floatunditf(UDItype i)
+__floatunditf (UDItype i)
{
- FP_DECL_EX;
- FP_DECL_Q(A);
+ FP_DECL_Q (A);
TFtype a;
- FP_FROM_INT_Q(A, i, DI_BITS, UDItype);
- FP_PACK_RAW_Q(a, A);
- FP_HANDLE_EXCEPTIONS;
+ FP_FROM_INT_Q (A, i, DI_BITS, UDItype);
+ FP_PACK_RAW_Q (a, A);
return a;
}
diff --git a/soft-fp/floatunsidf.c b/soft-fp/floatunsidf.c
index 548dc7c0c4..059029640c 100644
--- a/soft-fp/floatunsidf.c
+++ b/soft-fp/floatunsidf.c
@@ -28,18 +28,18 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#define FP_NO_EXCEPTIONS
#include "soft-fp.h"
#include "double.h"
-DFtype __floatunsidf(USItype i)
+DFtype
+__floatunsidf (USItype i)
{
- FP_DECL_EX;
- FP_DECL_D(A);
+ FP_DECL_D (A);
DFtype a;
- FP_FROM_INT_D(A, i, SI_BITS, USItype);
- FP_PACK_RAW_D(a, A);
- FP_HANDLE_EXCEPTIONS;
+ FP_FROM_INT_D (A, i, SI_BITS, USItype);
+ FP_PACK_RAW_D (a, A);
return a;
}
diff --git a/soft-fp/floatunsisf.c b/soft-fp/floatunsisf.c
index 2c0cc89763..91c1e4d1a9 100644
--- a/soft-fp/floatunsisf.c
+++ b/soft-fp/floatunsisf.c
@@ -31,14 +31,16 @@
#include "soft-fp.h"
#include "single.h"
-SFtype __floatunsisf(USItype i)
+SFtype
+__floatunsisf (USItype i)
{
FP_DECL_EX;
- FP_DECL_S(A);
+ FP_DECL_S (A);
SFtype a;
- FP_FROM_INT_S(A, i, SI_BITS, USItype);
- FP_PACK_RAW_S(a, A);
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_S (A, i, SI_BITS, USItype);
+ FP_PACK_RAW_S (a, A);
FP_HANDLE_EXCEPTIONS;
return a;
diff --git a/soft-fp/floatunsitf.c b/soft-fp/floatunsitf.c
index 1099c2ee84..b1eecfd7c9 100644
--- a/soft-fp/floatunsitf.c
+++ b/soft-fp/floatunsitf.c
@@ -28,19 +28,18 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#define FP_NO_EXCEPTIONS
#include "soft-fp.h"
#include "quad.h"
TFtype
-__floatunsitf(USItype i)
+__floatunsitf (USItype i)
{
- FP_DECL_EX;
- FP_DECL_Q(A);
+ FP_DECL_Q (A);
TFtype a;
- FP_FROM_INT_Q(A, i, SI_BITS, USItype);
- FP_PACK_RAW_Q(a, A);
- FP_HANDLE_EXCEPTIONS;
+ FP_FROM_INT_Q (A, i, SI_BITS, USItype);
+ FP_PACK_RAW_Q (a, A);
return a;
}
diff --git a/soft-fp/floatuntidf.c b/soft-fp/floatuntidf.c
new file mode 100644
index 0000000000..6a8981daec
--- /dev/null
+++ b/soft-fp/floatuntidf.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert a 128bit unsigned integer to IEEE double
+ Copyright (C) 1997-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "double.h"
+
+DFtype
+__floatuntidf (UTItype i)
+{
+ FP_DECL_EX;
+ FP_DECL_D (A);
+ DFtype a;
+
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_D (A, i, TI_BITS, UTItype);
+ FP_PACK_RAW_D (a, A);
+ FP_HANDLE_EXCEPTIONS;
+
+ return a;
+}
diff --git a/soft-fp/floatuntisf.c b/soft-fp/floatuntisf.c
new file mode 100644
index 0000000000..94d0593f26
--- /dev/null
+++ b/soft-fp/floatuntisf.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert a 128bit unsigned integer to IEEE single
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "single.h"
+
+SFtype
+__floatuntisf (UTItype i)
+{
+ FP_DECL_EX;
+ FP_DECL_S (A);
+ SFtype a;
+
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_S (A, i, TI_BITS, UTItype);
+ FP_PACK_RAW_S (a, A);
+ FP_HANDLE_EXCEPTIONS;
+
+ return a;
+}
diff --git a/soft-fp/floatuntitf.c b/soft-fp/floatuntitf.c
new file mode 100644
index 0000000000..424bfef8fa
--- /dev/null
+++ b/soft-fp/floatuntitf.c
@@ -0,0 +1,46 @@
+/* Software floating-point emulation.
+ Convert a 128bit unsigned integer to IEEE quad
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "quad.h"
+
+TFtype
+__floatuntitf (UTItype i)
+{
+ FP_DECL_EX;
+ FP_DECL_Q (A);
+ TFtype a;
+
+ FP_INIT_ROUNDMODE;
+ FP_FROM_INT_Q (A, i, TI_BITS, UTItype);
+ FP_PACK_RAW_Q (a, A);
+ FP_HANDLE_EXCEPTIONS;
+
+ return a;
+}
diff --git a/soft-fp/fmadf4.c b/soft-fp/fmadf4.c
index ebdc2b1d22..709c47bb4b 100644
--- a/soft-fp/fmadf4.c
+++ b/soft-fp/fmadf4.c
@@ -33,15 +33,18 @@ double
__fma (double a, double b, double c)
{
FP_DECL_EX;
- FP_DECL_D(A); FP_DECL_D(B); FP_DECL_D(C); FP_DECL_D(R);
+ FP_DECL_D (A);
+ FP_DECL_D (B);
+ FP_DECL_D (C);
+ FP_DECL_D (R);
double r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_D(A, a);
- FP_UNPACK_D(B, b);
- FP_UNPACK_D(C, c);
- FP_FMA_D(R, A, B, C);
- FP_PACK_D(r, R);
+ FP_UNPACK_D (A, a);
+ FP_UNPACK_D (B, b);
+ FP_UNPACK_D (C, c);
+ FP_FMA_D (R, A, B, C);
+ FP_PACK_D (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fmasf4.c b/soft-fp/fmasf4.c
index e8d60fb191..6af3701429 100644
--- a/soft-fp/fmasf4.c
+++ b/soft-fp/fmasf4.c
@@ -33,15 +33,18 @@ float
__fmaf (float a, float b, float c)
{
FP_DECL_EX;
- FP_DECL_S(A); FP_DECL_S(B); FP_DECL_S(C); FP_DECL_S(R);
+ FP_DECL_S (A);
+ FP_DECL_S (B);
+ FP_DECL_S (C);
+ FP_DECL_S (R);
float r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_S(A, a);
- FP_UNPACK_S(B, b);
- FP_UNPACK_S(C, c);
- FP_FMA_S(R, A, B, C);
- FP_PACK_S(r, R);
+ FP_UNPACK_S (A, a);
+ FP_UNPACK_S (B, b);
+ FP_UNPACK_S (C, c);
+ FP_FMA_S (R, A, B, C);
+ FP_PACK_S (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/fmatf4.c b/soft-fp/fmatf4.c
index cf489881d7..1427b2542f 100644
--- a/soft-fp/fmatf4.c
+++ b/soft-fp/fmatf4.c
@@ -33,15 +33,18 @@ long double
__fmal (long double a, long double b, long double c)
{
FP_DECL_EX;
- FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(C); FP_DECL_Q(R);
+ FP_DECL_Q (A);
+ FP_DECL_Q (B);
+ FP_DECL_Q (C);
+ FP_DECL_Q (R);
long double r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_Q(A, a);
- FP_UNPACK_Q(B, b);
- FP_UNPACK_Q(C, c);
- FP_FMA_Q(R, A, B, C);
- FP_PACK_Q(r, R);
+ FP_UNPACK_Q (A, a);
+ FP_UNPACK_Q (B, b);
+ FP_UNPACK_Q (C, c);
+ FP_FMA_Q (R, A, B, C);
+ FP_PACK_Q (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/gedf2.c b/soft-fp/gedf2.c
index 0ef9f5de2c..5b6fad2849 100644
--- a/soft-fp/gedf2.c
+++ b/soft-fp/gedf2.c
@@ -31,20 +31,23 @@
#include "soft-fp.h"
#include "double.h"
-CMPtype __gedf2(DFtype a, DFtype b)
+CMPtype
+__gedf2 (DFtype a, DFtype b)
{
FP_DECL_EX;
- FP_DECL_D(A); FP_DECL_D(B);
+ FP_DECL_D (A);
+ FP_DECL_D (B);
CMPtype r;
- FP_UNPACK_RAW_D(A, a);
- FP_UNPACK_RAW_D(B, b);
- FP_CMP_D(r, A, B, -2);
- if (r == -2 && (FP_ISSIGNAN_D(A) || FP_ISSIGNAN_D(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_UNPACK_RAW_D (B, b);
+ FP_CMP_D (r, A, B, -2);
+ if (r == -2)
+ FP_SET_EXCEPTION (FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
}
-strong_alias(__gedf2, __gtdf2);
+strong_alias (__gedf2, __gtdf2);
diff --git a/soft-fp/gesf2.c b/soft-fp/gesf2.c
index f0a8377310..4e5d9393f1 100644
--- a/soft-fp/gesf2.c
+++ b/soft-fp/gesf2.c
@@ -31,20 +31,23 @@
#include "soft-fp.h"
#include "single.h"
-CMPtype __gesf2(SFtype a, SFtype b)
+CMPtype
+__gesf2 (SFtype a, SFtype b)
{
FP_DECL_EX;
- FP_DECL_S(A); FP_DECL_S(B);
+ FP_DECL_S (A);
+ FP_DECL_S (B);
CMPtype r;
- FP_UNPACK_RAW_S(A, a);
- FP_UNPACK_RAW_S(B, b);
- FP_CMP_S(r, A, B, -2);
- if (r == -2 && (FP_ISSIGNAN_S(A) || FP_ISSIGNAN_S(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_UNPACK_RAW_S (B, b);
+ FP_CMP_S (r, A, B, -2);
+ if (r == -2)
+ FP_SET_EXCEPTION (FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
}
-strong_alias(__gesf2, __gtsf2);
+strong_alias (__gesf2, __gtsf2);
diff --git a/soft-fp/getf2.c b/soft-fp/getf2.c
index 705d48b905..ed02f459ea 100644
--- a/soft-fp/getf2.c
+++ b/soft-fp/getf2.c
@@ -31,20 +31,23 @@
#include "soft-fp.h"
#include "quad.h"
-CMPtype __getf2(TFtype a, TFtype b)
+CMPtype
+__getf2 (TFtype a, TFtype b)
{
FP_DECL_EX;
- FP_DECL_Q(A); FP_DECL_Q(B);
+ FP_DECL_Q (A);
+ FP_DECL_Q (B);
CMPtype r;
- FP_UNPACK_RAW_Q(A, a);
- FP_UNPACK_RAW_Q(B, b);
- FP_CMP_Q(r, A, B, -2);
- if (r == -2 && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_UNPACK_RAW_Q (B, b);
+ FP_CMP_Q (r, A, B, -2);
+ if (r == -2)
+ FP_SET_EXCEPTION (FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
}
-strong_alias(__getf2, __gttf2);
+strong_alias (__getf2, __gttf2);
diff --git a/soft-fp/ledf2.c b/soft-fp/ledf2.c
index 7b8f403bb8..476f1c4701 100644
--- a/soft-fp/ledf2.c
+++ b/soft-fp/ledf2.c
@@ -31,20 +31,23 @@
#include "soft-fp.h"
#include "double.h"
-CMPtype __ledf2(DFtype a, DFtype b)
+CMPtype
+__ledf2 (DFtype a, DFtype b)
{
FP_DECL_EX;
- FP_DECL_D(A); FP_DECL_D(B);
+ FP_DECL_D (A);
+ FP_DECL_D (B);
CMPtype r;
- FP_UNPACK_RAW_D(A, a);
- FP_UNPACK_RAW_D(B, b);
- FP_CMP_D(r, A, B, 2);
- if (r == 2 && (FP_ISSIGNAN_D(A) || FP_ISSIGNAN_D(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_UNPACK_RAW_D (B, b);
+ FP_CMP_D (r, A, B, 2);
+ if (r == 2)
+ FP_SET_EXCEPTION (FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
}
-strong_alias(__ledf2, __ltdf2);
+strong_alias (__ledf2, __ltdf2);
diff --git a/soft-fp/lesf2.c b/soft-fp/lesf2.c
index 41f823b5fc..ac2f748a36 100644
--- a/soft-fp/lesf2.c
+++ b/soft-fp/lesf2.c
@@ -31,20 +31,23 @@
#include "soft-fp.h"
#include "single.h"
-CMPtype __lesf2(SFtype a, SFtype b)
+CMPtype
+__lesf2 (SFtype a, SFtype b)
{
FP_DECL_EX;
- FP_DECL_S(A); FP_DECL_S(B);
+ FP_DECL_S (A);
+ FP_DECL_S (B);
CMPtype r;
- FP_UNPACK_RAW_S(A, a);
- FP_UNPACK_RAW_S(B, b);
- FP_CMP_S(r, A, B, 2);
- if (r == 2 && (FP_ISSIGNAN_S(A) || FP_ISSIGNAN_S(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_UNPACK_RAW_S (B, b);
+ FP_CMP_S (r, A, B, 2);
+ if (r == 2)
+ FP_SET_EXCEPTION (FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
}
-strong_alias(__lesf2, __ltsf2);
+strong_alias (__lesf2, __ltsf2);
diff --git a/soft-fp/letf2.c b/soft-fp/letf2.c
index 59342ca4cb..a41055b949 100644
--- a/soft-fp/letf2.c
+++ b/soft-fp/letf2.c
@@ -31,20 +31,23 @@
#include "soft-fp.h"
#include "quad.h"
-CMPtype __letf2(TFtype a, TFtype b)
+CMPtype
+__letf2 (TFtype a, TFtype b)
{
FP_DECL_EX;
- FP_DECL_Q(A); FP_DECL_Q(B);
+ FP_DECL_Q (A);
+ FP_DECL_Q (B);
CMPtype r;
- FP_UNPACK_RAW_Q(A, a);
- FP_UNPACK_RAW_Q(B, b);
- FP_CMP_Q(r, A, B, 2);
- if (r == 2 && (FP_ISSIGNAN_Q(A) || FP_ISSIGNAN_Q(B)))
- FP_SET_EXCEPTION(FP_EX_INVALID);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_UNPACK_RAW_Q (B, b);
+ FP_CMP_Q (r, A, B, 2);
+ if (r == 2)
+ FP_SET_EXCEPTION (FP_EX_INVALID);
FP_HANDLE_EXCEPTIONS;
return r;
}
-strong_alias(__letf2, __lttf2);
+strong_alias (__letf2, __lttf2);
diff --git a/soft-fp/muldf3.c b/soft-fp/muldf3.c
index 8c08281b46..dee3f76e5b 100644
--- a/soft-fp/muldf3.c
+++ b/soft-fp/muldf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "double.h"
-DFtype __muldf3(DFtype a, DFtype b)
+DFtype
+__muldf3 (DFtype a, DFtype b)
{
FP_DECL_EX;
- FP_DECL_D(A); FP_DECL_D(B); FP_DECL_D(R);
+ FP_DECL_D (A);
+ FP_DECL_D (B);
+ FP_DECL_D (R);
DFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_D(A, a);
- FP_UNPACK_D(B, b);
- FP_MUL_D(R, A, B);
- FP_PACK_D(r, R);
+ FP_UNPACK_D (A, a);
+ FP_UNPACK_D (B, b);
+ FP_MUL_D (R, A, B);
+ FP_PACK_D (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/mulsf3.c b/soft-fp/mulsf3.c
index f0341a56c5..f983b30347 100644
--- a/soft-fp/mulsf3.c
+++ b/soft-fp/mulsf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "single.h"
-SFtype __mulsf3(SFtype a, SFtype b)
+SFtype
+__mulsf3 (SFtype a, SFtype b)
{
FP_DECL_EX;
- FP_DECL_S(A); FP_DECL_S(B); FP_DECL_S(R);
+ FP_DECL_S (A);
+ FP_DECL_S (B);
+ FP_DECL_S (R);
SFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_S(A, a);
- FP_UNPACK_S(B, b);
- FP_MUL_S(R, A, B);
- FP_PACK_S(r, R);
+ FP_UNPACK_S (A, a);
+ FP_UNPACK_S (B, b);
+ FP_MUL_S (R, A, B);
+ FP_PACK_S (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/multf3.c b/soft-fp/multf3.c
index 35badf2fc8..1306c63f8a 100644
--- a/soft-fp/multf3.c
+++ b/soft-fp/multf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "quad.h"
-TFtype __multf3(TFtype a, TFtype b)
+TFtype
+__multf3 (TFtype a, TFtype b)
{
FP_DECL_EX;
- FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(R);
+ FP_DECL_Q (A);
+ FP_DECL_Q (B);
+ FP_DECL_Q (R);
TFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_Q(A, a);
- FP_UNPACK_Q(B, b);
- FP_MUL_Q(R, A, B);
- FP_PACK_Q(r, R);
+ FP_UNPACK_Q (A, a);
+ FP_UNPACK_Q (B, b);
+ FP_MUL_Q (R, A, B);
+ FP_PACK_Q (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/negdf2.c b/soft-fp/negdf2.c
index 3cc6f5f400..d74c16c1ed 100644
--- a/soft-fp/negdf2.c
+++ b/soft-fp/negdf2.c
@@ -31,17 +31,16 @@
#include "soft-fp.h"
#include "double.h"
-DFtype __negdf2(DFtype a)
+DFtype
+__negdf2 (DFtype a)
{
- FP_DECL_EX;
- FP_DECL_D(A); FP_DECL_D(R);
+ FP_DECL_D (A);
+ FP_DECL_D (R);
DFtype r;
- FP_UNPACK_D(A, a);
- FP_NEG_D(R, A);
- FP_PACK_D(r, R);
- FP_CLEAR_EXCEPTIONS;
- FP_HANDLE_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_NEG_D (R, A);
+ FP_PACK_RAW_D (r, R);
return r;
}
diff --git a/soft-fp/negsf2.c b/soft-fp/negsf2.c
index d8d5910603..0316105a5d 100644
--- a/soft-fp/negsf2.c
+++ b/soft-fp/negsf2.c
@@ -31,17 +31,16 @@
#include "soft-fp.h"
#include "single.h"
-SFtype __negsf2(SFtype a)
+SFtype
+__negsf2 (SFtype a)
{
- FP_DECL_EX;
- FP_DECL_S(A); FP_DECL_S(R);
+ FP_DECL_S (A);
+ FP_DECL_S (R);
SFtype r;
- FP_UNPACK_S(A, a);
- FP_NEG_S(R, A);
- FP_PACK_S(r, R);
- FP_CLEAR_EXCEPTIONS;
- FP_HANDLE_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_NEG_S (R, A);
+ FP_PACK_RAW_S (r, R);
return r;
}
diff --git a/soft-fp/negtf2.c b/soft-fp/negtf2.c
index 1c08441487..8540af24d2 100644
--- a/soft-fp/negtf2.c
+++ b/soft-fp/negtf2.c
@@ -31,17 +31,16 @@
#include "soft-fp.h"
#include "quad.h"
-TFtype __negtf2(TFtype a)
+TFtype
+__negtf2 (TFtype a)
{
- FP_DECL_EX;
- FP_DECL_Q(A); FP_DECL_Q(R);
+ FP_DECL_Q (A);
+ FP_DECL_Q (R);
TFtype r;
- FP_UNPACK_Q(A, a);
- FP_NEG_Q(R, A);
- FP_PACK_Q(r, R);
- FP_CLEAR_EXCEPTIONS;
- FP_HANDLE_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_NEG_Q (R, A);
+ FP_PACK_RAW_Q (r, R);
return r;
}
diff --git a/soft-fp/op-1.h b/soft-fp/op-1.h
index a9ad0d62cd..8ccb46a796 100644
--- a/soft-fp/op-1.h
+++ b/soft-fp/op-1.h
@@ -31,104 +31,117 @@
<http://www.gnu.org/licenses/>. */
#define _FP_FRAC_DECL_1(X) _FP_W_TYPE X##_f
-#define _FP_FRAC_COPY_1(D,S) (D##_f = S##_f)
-#define _FP_FRAC_SET_1(X,I) (X##_f = I)
+#define _FP_FRAC_COPY_1(D, S) (D##_f = S##_f)
+#define _FP_FRAC_SET_1(X, I) (X##_f = I)
#define _FP_FRAC_HIGH_1(X) (X##_f)
#define _FP_FRAC_LOW_1(X) (X##_f)
-#define _FP_FRAC_WORD_1(X,w) (X##_f)
-
-#define _FP_FRAC_ADDI_1(X,I) (X##_f += I)
-#define _FP_FRAC_SLL_1(X,N) \
- do { \
- if (__builtin_constant_p(N) && (N) == 1) \
- X##_f += X##_f; \
- else \
- X##_f <<= (N); \
- } while (0)
-#define _FP_FRAC_SRL_1(X,N) (X##_f >>= N)
+#define _FP_FRAC_WORD_1(X, w) (X##_f)
+
+#define _FP_FRAC_ADDI_1(X, I) (X##_f += I)
+#define _FP_FRAC_SLL_1(X, N) \
+ do \
+ { \
+ if (__builtin_constant_p (N) && (N) == 1) \
+ X##_f += X##_f; \
+ else \
+ X##_f <<= (N); \
+ } \
+ while (0)
+#define _FP_FRAC_SRL_1(X, N) (X##_f >>= N)
/* Right shift with sticky-lsb. */
-#define _FP_FRAC_SRST_1(X,S,N,sz) __FP_FRAC_SRST_1(X##_f, S, N, sz)
-#define _FP_FRAC_SRS_1(X,N,sz) __FP_FRAC_SRS_1(X##_f, N, sz)
-
-#define __FP_FRAC_SRST_1(X,S,N,sz) \
-do { \
- S = (__builtin_constant_p(N) && (N) == 1 \
- ? X & 1 : (X << (_FP_W_TYPE_SIZE - (N))) != 0); \
- X = X >> (N); \
-} while (0)
-
-#define __FP_FRAC_SRS_1(X,N,sz) \
- (X = (X >> (N) | (__builtin_constant_p(N) && (N) == 1 \
- ? X & 1 : (X << (_FP_W_TYPE_SIZE - (N))) != 0)))
-
-#define _FP_FRAC_ADD_1(R,X,Y) (R##_f = X##_f + Y##_f)
-#define _FP_FRAC_SUB_1(R,X,Y) (R##_f = X##_f - Y##_f)
-#define _FP_FRAC_DEC_1(X,Y) (X##_f -= Y##_f)
-#define _FP_FRAC_CLZ_1(z, X) __FP_CLZ(z, X##_f)
+#define _FP_FRAC_SRST_1(X, S, N, sz) __FP_FRAC_SRST_1 (X##_f, S, N, sz)
+#define _FP_FRAC_SRS_1(X, N, sz) __FP_FRAC_SRS_1 (X##_f, N, sz)
+
+#define __FP_FRAC_SRST_1(X, S, N, sz) \
+ do \
+ { \
+ S = (__builtin_constant_p (N) && (N) == 1 \
+ ? X & 1 \
+ : (X << (_FP_W_TYPE_SIZE - (N))) != 0); \
+ X = X >> (N); \
+ } \
+ while (0)
+
+#define __FP_FRAC_SRS_1(X, N, sz) \
+ (X = (X >> (N) | (__builtin_constant_p (N) && (N) == 1 \
+ ? X & 1 \
+ : (X << (_FP_W_TYPE_SIZE - (N))) != 0)))
+
+#define _FP_FRAC_ADD_1(R, X, Y) (R##_f = X##_f + Y##_f)
+#define _FP_FRAC_SUB_1(R, X, Y) (R##_f = X##_f - Y##_f)
+#define _FP_FRAC_DEC_1(X, Y) (X##_f -= Y##_f)
+#define _FP_FRAC_CLZ_1(z, X) __FP_CLZ (z, X##_f)
/* Predicates */
-#define _FP_FRAC_NEGP_1(X) ((_FP_WS_TYPE)X##_f < 0)
+#define _FP_FRAC_NEGP_1(X) ((_FP_WS_TYPE) X##_f < 0)
#define _FP_FRAC_ZEROP_1(X) (X##_f == 0)
-#define _FP_FRAC_OVERP_1(fs,X) (X##_f & _FP_OVERFLOW_##fs)
-#define _FP_FRAC_CLEAR_OVERP_1(fs,X) (X##_f &= ~_FP_OVERFLOW_##fs)
-#define _FP_FRAC_HIGHBIT_DW_1(fs,X) (X##_f & _FP_HIGHBIT_DW_##fs)
+#define _FP_FRAC_OVERP_1(fs, X) (X##_f & _FP_OVERFLOW_##fs)
+#define _FP_FRAC_CLEAR_OVERP_1(fs, X) (X##_f &= ~_FP_OVERFLOW_##fs)
+#define _FP_FRAC_HIGHBIT_DW_1(fs, X) (X##_f & _FP_HIGHBIT_DW_##fs)
#define _FP_FRAC_EQ_1(X, Y) (X##_f == Y##_f)
#define _FP_FRAC_GE_1(X, Y) (X##_f >= Y##_f)
#define _FP_FRAC_GT_1(X, Y) (X##_f > Y##_f)
#define _FP_ZEROFRAC_1 0
#define _FP_MINFRAC_1 1
-#define _FP_MAXFRAC_1 (~(_FP_WS_TYPE)0)
+#define _FP_MAXFRAC_1 (~(_FP_WS_TYPE) 0)
/*
* Unpack the raw bits of a native fp value. Do not classify or
* normalize the data.
*/
-#define _FP_UNPACK_RAW_1(fs, X, val) \
- do { \
- union _FP_UNION_##fs _flo; _flo.flt = (val); \
- \
- X##_f = _flo.bits.frac; \
- X##_e = _flo.bits.exp; \
- X##_s = _flo.bits.sign; \
- } while (0)
-
-#define _FP_UNPACK_RAW_1_P(fs, X, val) \
- do { \
- union _FP_UNION_##fs *_flo = \
- (union _FP_UNION_##fs *)(val); \
- \
- X##_f = _flo->bits.frac; \
- X##_e = _flo->bits.exp; \
- X##_s = _flo->bits.sign; \
- } while (0)
+#define _FP_UNPACK_RAW_1(fs, X, val) \
+ do \
+ { \
+ union _FP_UNION_##fs _flo; \
+ _flo.flt = (val); \
+ \
+ X##_f = _flo.bits.frac; \
+ X##_e = _flo.bits.exp; \
+ X##_s = _flo.bits.sign; \
+ } \
+ while (0)
+
+#define _FP_UNPACK_RAW_1_P(fs, X, val) \
+ do \
+ { \
+ union _FP_UNION_##fs *_flo = (union _FP_UNION_##fs *) (val); \
+ \
+ X##_f = _flo->bits.frac; \
+ X##_e = _flo->bits.exp; \
+ X##_s = _flo->bits.sign; \
+ } \
+ while (0)
/*
* Repack the raw bits of a native fp value.
*/
-#define _FP_PACK_RAW_1(fs, val, X) \
- do { \
- union _FP_UNION_##fs _flo; \
- \
- _flo.bits.frac = X##_f; \
- _flo.bits.exp = X##_e; \
- _flo.bits.sign = X##_s; \
- \
- (val) = _flo.flt; \
- } while (0)
-
-#define _FP_PACK_RAW_1_P(fs, val, X) \
- do { \
- union _FP_UNION_##fs *_flo = \
- (union _FP_UNION_##fs *)(val); \
- \
- _flo->bits.frac = X##_f; \
- _flo->bits.exp = X##_e; \
- _flo->bits.sign = X##_s; \
- } while (0)
+#define _FP_PACK_RAW_1(fs, val, X) \
+ do \
+ { \
+ union _FP_UNION_##fs _flo; \
+ \
+ _flo.bits.frac = X##_f; \
+ _flo.bits.exp = X##_e; \
+ _flo.bits.sign = X##_s; \
+ \
+ (val) = _flo.flt; \
+ } \
+ while (0)
+
+#define _FP_PACK_RAW_1_P(fs, val, X) \
+ do \
+ { \
+ union _FP_UNION_##fs *_flo = (union _FP_UNION_##fs *) (val); \
+ \
+ _flo->bits.frac = X##_f; \
+ _flo->bits.exp = X##_e; \
+ _flo->bits.sign = X##_s; \
+ } \
+ while (0)
/*
@@ -138,74 +151,86 @@ do { \
/* Basic. Assuming the host word size is >= 2*FRACBITS, we can do the
multiplication immediately. */
-#define _FP_MUL_MEAT_DW_1_imm(wfracbits, R, X, Y) \
- do { \
- R##_f = X##_f * Y##_f; \
- } while (0)
+#define _FP_MUL_MEAT_DW_1_imm(wfracbits, R, X, Y) \
+ do \
+ { \
+ R##_f = X##_f * Y##_f; \
+ } \
+ while (0)
#define _FP_MUL_MEAT_1_imm(wfracbits, R, X, Y) \
- do { \
- _FP_MUL_MEAT_DW_1_imm(wfracbits, R, X, Y); \
- /* Normalize since we know where the msb of the multiplicands \
- were (bit B), we know that the msb of the of the product is \
- at either 2B or 2B-1. */ \
- _FP_FRAC_SRS_1(R, wfracbits-1, 2*wfracbits); \
- } while (0)
+ do \
+ { \
+ _FP_MUL_MEAT_DW_1_imm (wfracbits, R, X, Y); \
+ /* Normalize since we know where the msb of the multiplicands \
+ were (bit B), we know that the msb of the of the product is \
+ at either 2B or 2B-1. */ \
+ _FP_FRAC_SRS_1 (R, wfracbits-1, 2*wfracbits); \
+ } \
+ while (0)
/* Given a 1W * 1W => 2W primitive, do the extended multiplication. */
-#define _FP_MUL_MEAT_DW_1_wide(wfracbits, R, X, Y, doit) \
- do { \
- doit(R##_f1, R##_f0, X##_f, Y##_f); \
- } while (0)
+#define _FP_MUL_MEAT_DW_1_wide(wfracbits, R, X, Y, doit) \
+ do \
+ { \
+ doit (R##_f1, R##_f0, X##_f, Y##_f); \
+ } \
+ while (0)
#define _FP_MUL_MEAT_1_wide(wfracbits, R, X, Y, doit) \
- do { \
- _FP_FRAC_DECL_2(_Z); \
- _FP_MUL_MEAT_DW_1_wide(wfracbits, _Z, X, Y, doit); \
- /* Normalize since we know where the msb of the multiplicands \
- were (bit B), we know that the msb of the of the product is \
- at either 2B or 2B-1. */ \
- _FP_FRAC_SRS_2(_Z, wfracbits-1, 2*wfracbits); \
- R##_f = _Z_f0; \
- } while (0)
+ do \
+ { \
+ _FP_FRAC_DECL_2 (_Z); \
+ _FP_MUL_MEAT_DW_1_wide (wfracbits, _Z, X, Y, doit); \
+ /* Normalize since we know where the msb of the multiplicands \
+ were (bit B), we know that the msb of the of the product is \
+ at either 2B or 2B-1. */ \
+ _FP_FRAC_SRS_2 (_Z, wfracbits-1, 2*wfracbits); \
+ R##_f = _Z_f0; \
+ } \
+ while (0)
/* Finally, a simple widening multiply algorithm. What fun! */
#define _FP_MUL_MEAT_DW_1_hard(wfracbits, R, X, Y) \
- do { \
- _FP_W_TYPE _xh, _xl, _yh, _yl; \
- _FP_FRAC_DECL_2(_a); \
- \
- /* split the words in half */ \
- _xh = X##_f >> (_FP_W_TYPE_SIZE/2); \
- _xl = X##_f & (((_FP_W_TYPE)1 << (_FP_W_TYPE_SIZE/2)) - 1); \
- _yh = Y##_f >> (_FP_W_TYPE_SIZE/2); \
- _yl = Y##_f & (((_FP_W_TYPE)1 << (_FP_W_TYPE_SIZE/2)) - 1); \
+ do \
+ { \
+ _FP_W_TYPE _xh, _xl, _yh, _yl; \
+ _FP_FRAC_DECL_2 (_a); \
\
- /* multiply the pieces */ \
- R##_f0 = _xl * _yl; \
- _a_f0 = _xh * _yl; \
- _a_f1 = _xl * _yh; \
- R##_f1 = _xh * _yh; \
+ /* split the words in half */ \
+ _xh = X##_f >> (_FP_W_TYPE_SIZE/2); \
+ _xl = X##_f & (((_FP_W_TYPE) 1 << (_FP_W_TYPE_SIZE/2)) - 1); \
+ _yh = Y##_f >> (_FP_W_TYPE_SIZE/2); \
+ _yl = Y##_f & (((_FP_W_TYPE) 1 << (_FP_W_TYPE_SIZE/2)) - 1); \
\
- /* reassemble into two full words */ \
- if ((_a_f0 += _a_f1) < _a_f1) \
- R##_f1 += (_FP_W_TYPE)1 << (_FP_W_TYPE_SIZE/2); \
- _a_f1 = _a_f0 >> (_FP_W_TYPE_SIZE/2); \
- _a_f0 = _a_f0 << (_FP_W_TYPE_SIZE/2); \
- _FP_FRAC_ADD_2(R, R, _a); \
- } while (0)
-
-#define _FP_MUL_MEAT_1_hard(wfracbits, R, X, Y) \
- do { \
- _FP_FRAC_DECL_2(_z); \
- _FP_MUL_MEAT_DW_1_hard(wfracbits, _z, X, Y); \
+ /* multiply the pieces */ \
+ R##_f0 = _xl * _yl; \
+ _a_f0 = _xh * _yl; \
+ _a_f1 = _xl * _yh; \
+ R##_f1 = _xh * _yh; \
\
- /* normalize */ \
- _FP_FRAC_SRS_2(_z, wfracbits - 1, 2*wfracbits); \
- R##_f = _z_f0; \
- } while (0)
+ /* reassemble into two full words */ \
+ if ((_a_f0 += _a_f1) < _a_f1) \
+ R##_f1 += (_FP_W_TYPE) 1 << (_FP_W_TYPE_SIZE/2); \
+ _a_f1 = _a_f0 >> (_FP_W_TYPE_SIZE/2); \
+ _a_f0 = _a_f0 << (_FP_W_TYPE_SIZE/2); \
+ _FP_FRAC_ADD_2 (R, R, _a); \
+ } \
+ while (0)
+
+#define _FP_MUL_MEAT_1_hard(wfracbits, R, X, Y) \
+ do \
+ { \
+ _FP_FRAC_DECL_2 (_z); \
+ _FP_MUL_MEAT_DW_1_hard (wfracbits, _z, X, Y); \
+ \
+ /* normalize */ \
+ _FP_FRAC_SRS_2 (_z, wfracbits - 1, 2*wfracbits); \
+ R##_f = _z_f0; \
+ } \
+ while (0)
/*
@@ -217,15 +242,17 @@ do { \
C primitives or _FP_DIV_HELP_ldiv for the ISO function. Which you
choose will depend on what the compiler does with divrem4. */
-#define _FP_DIV_MEAT_1_imm(fs, R, X, Y, doit) \
- do { \
- _FP_W_TYPE _q, _r; \
- X##_f <<= (X##_f < Y##_f \
- ? R##_e--, _FP_WFRACBITS_##fs \
- : _FP_WFRACBITS_##fs - 1); \
- doit(_q, _r, X##_f, Y##_f); \
- R##_f = _q | (_r != 0); \
- } while (0)
+#define _FP_DIV_MEAT_1_imm(fs, R, X, Y, doit) \
+ do \
+ { \
+ _FP_W_TYPE _q, _r; \
+ X##_f <<= (X##_f < Y##_f \
+ ? R##_e--, _FP_WFRACBITS_##fs \
+ : _FP_WFRACBITS_##fs - 1); \
+ doit (_q, _r, X##_f, Y##_f); \
+ R##_f = _q | (_r != 0); \
+ } \
+ while (0)
/* GCC's longlong.h defines a 2W / 1W => (1W,1W) primitive udiv_qrnnd
that may be useful in this situation. This first is for a primitive
@@ -233,46 +260,50 @@ do { \
for UDIV_NEEDS_NORMALIZATION to tell which your machine needs. */
#define _FP_DIV_MEAT_1_udiv_norm(fs, R, X, Y) \
- do { \
- _FP_W_TYPE _nh, _nl, _q, _r, _y; \
+ do \
+ { \
+ _FP_W_TYPE _nh, _nl, _q, _r, _y; \
\
- /* Normalize Y -- i.e. make the most significant bit set. */ \
- _y = Y##_f << _FP_WFRACXBITS_##fs; \
+ /* Normalize Y -- i.e. make the most significant bit set. */ \
+ _y = Y##_f << _FP_WFRACXBITS_##fs; \
\
- /* Shift X op correspondingly high, that is, up one full word. */ \
- if (X##_f < Y##_f) \
- { \
- R##_e--; \
- _nl = 0; \
- _nh = X##_f; \
- } \
- else \
- { \
- _nl = X##_f << (_FP_W_TYPE_SIZE - 1); \
- _nh = X##_f >> 1; \
- } \
+ /* Shift X op correspondingly high, that is, up one full word. */ \
+ if (X##_f < Y##_f) \
+ { \
+ R##_e--; \
+ _nl = 0; \
+ _nh = X##_f; \
+ } \
+ else \
+ { \
+ _nl = X##_f << (_FP_W_TYPE_SIZE - 1); \
+ _nh = X##_f >> 1; \
+ } \
\
- udiv_qrnnd(_q, _r, _nh, _nl, _y); \
- R##_f = _q | (_r != 0); \
- } while (0)
+ udiv_qrnnd (_q, _r, _nh, _nl, _y); \
+ R##_f = _q | (_r != 0); \
+ } \
+ while (0)
#define _FP_DIV_MEAT_1_udiv(fs, R, X, Y) \
- do { \
- _FP_W_TYPE _nh, _nl, _q, _r; \
- if (X##_f < Y##_f) \
- { \
- R##_e--; \
- _nl = X##_f << _FP_WFRACBITS_##fs; \
- _nh = X##_f >> _FP_WFRACXBITS_##fs; \
- } \
- else \
- { \
- _nl = X##_f << (_FP_WFRACBITS_##fs - 1); \
- _nh = X##_f >> (_FP_WFRACXBITS_##fs + 1); \
- } \
- udiv_qrnnd(_q, _r, _nh, _nl, Y##_f); \
- R##_f = _q | (_r != 0); \
- } while (0)
+ do \
+ { \
+ _FP_W_TYPE _nh, _nl, _q, _r; \
+ if (X##_f < Y##_f) \
+ { \
+ R##_e--; \
+ _nl = X##_f << _FP_WFRACBITS_##fs; \
+ _nh = X##_f >> _FP_WFRACXBITS_##fs; \
+ } \
+ else \
+ { \
+ _nl = X##_f << (_FP_WFRACBITS_##fs - 1); \
+ _nh = X##_f >> (_FP_WFRACXBITS_##fs + 1); \
+ } \
+ udiv_qrnnd (_q, _r, _nh, _nl, Y##_f); \
+ R##_f = _q | (_r != 0); \
+ } \
+ while (0)
/*
@@ -281,27 +312,29 @@ do { \
* should be added for those machines where division is fast.
*/
-#define _FP_SQRT_MEAT_1(R, S, T, X, q) \
- do { \
- while (q != _FP_WORK_ROUND) \
- { \
- T##_f = S##_f + q; \
- if (T##_f <= X##_f) \
- { \
- S##_f = T##_f + q; \
- X##_f -= T##_f; \
- R##_f += q; \
- } \
- _FP_FRAC_SLL_1(X, 1); \
- q >>= 1; \
- } \
- if (X##_f) \
- { \
- if (S##_f < X##_f) \
- R##_f |= _FP_WORK_ROUND; \
- R##_f |= _FP_WORK_STICKY; \
- } \
- } while (0)
+#define _FP_SQRT_MEAT_1(R, S, T, X, q) \
+ do \
+ { \
+ while (q != _FP_WORK_ROUND) \
+ { \
+ T##_f = S##_f + q; \
+ if (T##_f <= X##_f) \
+ { \
+ S##_f = T##_f + q; \
+ X##_f -= T##_f; \
+ R##_f += q; \
+ } \
+ _FP_FRAC_SLL_1 (X, 1); \
+ q >>= 1; \
+ } \
+ if (X##_f) \
+ { \
+ if (S##_f < X##_f) \
+ R##_f |= _FP_WORK_ROUND; \
+ R##_f |= _FP_WORK_STICKY; \
+ } \
+ } \
+ while (0)
/*
* Assembly/disassembly for converting to/from integral types.
diff --git a/soft-fp/op-2.h b/soft-fp/op-2.h
index 20088227e1..5ef4217de1 100644
--- a/soft-fp/op-2.h
+++ b/soft-fp/op-2.h
@@ -31,111 +31,113 @@
<http://www.gnu.org/licenses/>. */
#define _FP_FRAC_DECL_2(X) _FP_W_TYPE X##_f0, X##_f1
-#define _FP_FRAC_COPY_2(D,S) (D##_f0 = S##_f0, D##_f1 = S##_f1)
-#define _FP_FRAC_SET_2(X,I) __FP_FRAC_SET_2(X, I)
+#define _FP_FRAC_COPY_2(D, S) (D##_f0 = S##_f0, D##_f1 = S##_f1)
+#define _FP_FRAC_SET_2(X, I) __FP_FRAC_SET_2 (X, I)
#define _FP_FRAC_HIGH_2(X) (X##_f1)
#define _FP_FRAC_LOW_2(X) (X##_f0)
-#define _FP_FRAC_WORD_2(X,w) (X##_f##w)
-
-#define _FP_FRAC_SLL_2(X,N) \
-(void)(((N) < _FP_W_TYPE_SIZE) \
- ? ({ \
- if (__builtin_constant_p(N) && (N) == 1) \
- { \
- X##_f1 = X##_f1 + X##_f1 + (((_FP_WS_TYPE)(X##_f0)) < 0); \
- X##_f0 += X##_f0; \
- } \
- else \
- { \
- X##_f1 = X##_f1 << (N) | X##_f0 >> (_FP_W_TYPE_SIZE - (N)); \
- X##_f0 <<= (N); \
- } \
- 0; \
- }) \
- : ({ \
- X##_f1 = X##_f0 << ((N) - _FP_W_TYPE_SIZE); \
- X##_f0 = 0; \
- }))
-
-
-#define _FP_FRAC_SRL_2(X,N) \
-(void)(((N) < _FP_W_TYPE_SIZE) \
- ? ({ \
- X##_f0 = X##_f0 >> (N) | X##_f1 << (_FP_W_TYPE_SIZE - (N)); \
- X##_f1 >>= (N); \
- }) \
- : ({ \
- X##_f0 = X##_f1 >> ((N) - _FP_W_TYPE_SIZE); \
- X##_f1 = 0; \
- }))
+#define _FP_FRAC_WORD_2(X, w) (X##_f##w)
+
+#define _FP_FRAC_SLL_2(X, N) \
+ (void) (((N) < _FP_W_TYPE_SIZE) \
+ ? ({ \
+ if (__builtin_constant_p (N) && (N) == 1) \
+ { \
+ X##_f1 = X##_f1 + X##_f1 + (((_FP_WS_TYPE) (X##_f0)) < 0); \
+ X##_f0 += X##_f0; \
+ } \
+ else \
+ { \
+ X##_f1 = X##_f1 << (N) | X##_f0 >> (_FP_W_TYPE_SIZE - (N)); \
+ X##_f0 <<= (N); \
+ } \
+ 0; \
+ }) \
+ : ({ \
+ X##_f1 = X##_f0 << ((N) - _FP_W_TYPE_SIZE); \
+ X##_f0 = 0; \
+ }))
+
+
+#define _FP_FRAC_SRL_2(X, N) \
+ (void) (((N) < _FP_W_TYPE_SIZE) \
+ ? ({ \
+ X##_f0 = X##_f0 >> (N) | X##_f1 << (_FP_W_TYPE_SIZE - (N)); \
+ X##_f1 >>= (N); \
+ }) \
+ : ({ \
+ X##_f0 = X##_f1 >> ((N) - _FP_W_TYPE_SIZE); \
+ X##_f1 = 0; \
+ }))
/* Right shift with sticky-lsb. */
-#define _FP_FRAC_SRST_2(X,S, N,sz) \
-(void)(((N) < _FP_W_TYPE_SIZE) \
- ? ({ \
- S = (__builtin_constant_p(N) && (N) == 1 \
- ? X##_f0 & 1 \
- : (X##_f0 << (_FP_W_TYPE_SIZE - (N))) != 0); \
- X##_f0 = (X##_f1 << (_FP_W_TYPE_SIZE - (N)) | X##_f0 >> (N)); \
- X##_f1 >>= (N); \
- }) \
- : ({ \
- S = ((((N) == _FP_W_TYPE_SIZE \
- ? 0 \
- : (X##_f1 << (2*_FP_W_TYPE_SIZE - (N)))) \
- | X##_f0) != 0); \
- X##_f0 = (X##_f1 >> ((N) - _FP_W_TYPE_SIZE)); \
- X##_f1 = 0; \
- }))
-
-#define _FP_FRAC_SRS_2(X,N,sz) \
-(void)(((N) < _FP_W_TYPE_SIZE) \
- ? ({ \
- X##_f0 = (X##_f1 << (_FP_W_TYPE_SIZE - (N)) | X##_f0 >> (N) | \
- (__builtin_constant_p(N) && (N) == 1 \
- ? X##_f0 & 1 \
- : (X##_f0 << (_FP_W_TYPE_SIZE - (N))) != 0)); \
- X##_f1 >>= (N); \
- }) \
- : ({ \
- X##_f0 = (X##_f1 >> ((N) - _FP_W_TYPE_SIZE) | \
- ((((N) == _FP_W_TYPE_SIZE \
- ? 0 \
- : (X##_f1 << (2*_FP_W_TYPE_SIZE - (N)))) \
- | X##_f0) != 0)); \
- X##_f1 = 0; \
- }))
-
-#define _FP_FRAC_ADDI_2(X,I) \
- __FP_FRAC_ADDI_2(X##_f1, X##_f0, I)
-
-#define _FP_FRAC_ADD_2(R,X,Y) \
- __FP_FRAC_ADD_2(R##_f1, R##_f0, X##_f1, X##_f0, Y##_f1, Y##_f0)
-
-#define _FP_FRAC_SUB_2(R,X,Y) \
- __FP_FRAC_SUB_2(R##_f1, R##_f0, X##_f1, X##_f0, Y##_f1, Y##_f0)
-
-#define _FP_FRAC_DEC_2(X,Y) \
- __FP_FRAC_DEC_2(X##_f1, X##_f0, Y##_f1, Y##_f0)
-
-#define _FP_FRAC_CLZ_2(R,X) \
- do { \
- if (X##_f1) \
- __FP_CLZ(R,X##_f1); \
- else \
- { \
- __FP_CLZ(R,X##_f0); \
- R += _FP_W_TYPE_SIZE; \
- } \
- } while(0)
+#define _FP_FRAC_SRST_2(X, S, N, sz) \
+ (void) (((N) < _FP_W_TYPE_SIZE) \
+ ? ({ \
+ S = (__builtin_constant_p (N) && (N) == 1 \
+ ? X##_f0 & 1 \
+ : (X##_f0 << (_FP_W_TYPE_SIZE - (N))) != 0); \
+ X##_f0 = (X##_f1 << (_FP_W_TYPE_SIZE - (N)) | X##_f0 >> (N)); \
+ X##_f1 >>= (N); \
+ }) \
+ : ({ \
+ S = ((((N) == _FP_W_TYPE_SIZE \
+ ? 0 \
+ : (X##_f1 << (2*_FP_W_TYPE_SIZE - (N)))) \
+ | X##_f0) != 0); \
+ X##_f0 = (X##_f1 >> ((N) - _FP_W_TYPE_SIZE)); \
+ X##_f1 = 0; \
+ }))
+
+#define _FP_FRAC_SRS_2(X, N, sz) \
+ (void) (((N) < _FP_W_TYPE_SIZE) \
+ ? ({ \
+ X##_f0 = (X##_f1 << (_FP_W_TYPE_SIZE - (N)) | X##_f0 >> (N) \
+ | (__builtin_constant_p (N) && (N) == 1 \
+ ? X##_f0 & 1 \
+ : (X##_f0 << (_FP_W_TYPE_SIZE - (N))) != 0)); \
+ X##_f1 >>= (N); \
+ }) \
+ : ({ \
+ X##_f0 = (X##_f1 >> ((N) - _FP_W_TYPE_SIZE) \
+ | ((((N) == _FP_W_TYPE_SIZE \
+ ? 0 \
+ : (X##_f1 << (2*_FP_W_TYPE_SIZE - (N)))) \
+ | X##_f0) != 0)); \
+ X##_f1 = 0; \
+ }))
+
+#define _FP_FRAC_ADDI_2(X, I) \
+ __FP_FRAC_ADDI_2 (X##_f1, X##_f0, I)
+
+#define _FP_FRAC_ADD_2(R, X, Y) \
+ __FP_FRAC_ADD_2 (R##_f1, R##_f0, X##_f1, X##_f0, Y##_f1, Y##_f0)
+
+#define _FP_FRAC_SUB_2(R, X, Y) \
+ __FP_FRAC_SUB_2 (R##_f1, R##_f0, X##_f1, X##_f0, Y##_f1, Y##_f0)
+
+#define _FP_FRAC_DEC_2(X, Y) \
+ __FP_FRAC_DEC_2 (X##_f1, X##_f0, Y##_f1, Y##_f0)
+
+#define _FP_FRAC_CLZ_2(R, X) \
+ do \
+ { \
+ if (X##_f1) \
+ __FP_CLZ (R, X##_f1); \
+ else \
+ { \
+ __FP_CLZ (R, X##_f0); \
+ R += _FP_W_TYPE_SIZE; \
+ } \
+ } \
+ while (0)
/* Predicates */
-#define _FP_FRAC_NEGP_2(X) ((_FP_WS_TYPE)X##_f1 < 0)
+#define _FP_FRAC_NEGP_2(X) ((_FP_WS_TYPE) X##_f1 < 0)
#define _FP_FRAC_ZEROP_2(X) ((X##_f1 | X##_f0) == 0)
-#define _FP_FRAC_OVERP_2(fs,X) (_FP_FRAC_HIGH_##fs(X) & _FP_OVERFLOW_##fs)
-#define _FP_FRAC_CLEAR_OVERP_2(fs,X) (_FP_FRAC_HIGH_##fs(X) &= ~_FP_OVERFLOW_##fs)
-#define _FP_FRAC_HIGHBIT_DW_2(fs,X) \
- (_FP_FRAC_HIGH_DW_##fs(X) & _FP_HIGHBIT_DW_##fs)
+#define _FP_FRAC_OVERP_2(fs, X) (_FP_FRAC_HIGH_##fs (X) & _FP_OVERFLOW_##fs)
+#define _FP_FRAC_CLEAR_OVERP_2(fs, X) (_FP_FRAC_HIGH_##fs (X) &= ~_FP_OVERFLOW_##fs)
+#define _FP_FRAC_HIGHBIT_DW_2(fs, X) \
+ (_FP_FRAC_HIGH_DW_##fs (X) & _FP_HIGHBIT_DW_##fs)
#define _FP_FRAC_EQ_2(X, Y) (X##_f1 == Y##_f1 && X##_f0 == Y##_f0)
#define _FP_FRAC_GT_2(X, Y) \
(X##_f1 > Y##_f1 || (X##_f1 == Y##_f1 && X##_f0 > Y##_f0))
@@ -144,57 +146,62 @@
#define _FP_ZEROFRAC_2 0, 0
#define _FP_MINFRAC_2 0, 1
-#define _FP_MAXFRAC_2 (~(_FP_WS_TYPE)0), (~(_FP_WS_TYPE)0)
+#define _FP_MAXFRAC_2 (~(_FP_WS_TYPE) 0), (~(_FP_WS_TYPE) 0)
/*
* Internals
*/
-#define __FP_FRAC_SET_2(X,I1,I0) (X##_f0 = I0, X##_f1 = I1)
-
-#define __FP_CLZ_2(R, xh, xl) \
- do { \
- if (xh) \
- __FP_CLZ(R,xh); \
- else \
- { \
- __FP_CLZ(R,xl); \
- R += _FP_W_TYPE_SIZE; \
- } \
- } while(0)
+#define __FP_FRAC_SET_2(X, I1, I0) (X##_f0 = I0, X##_f1 = I1)
+
+#define __FP_CLZ_2(R, xh, xl) \
+ do \
+ { \
+ if (xh) \
+ __FP_CLZ (R, xh); \
+ else \
+ { \
+ __FP_CLZ (R, xl); \
+ R += _FP_W_TYPE_SIZE; \
+ } \
+ } \
+ while (0)
#if 0
-#ifndef __FP_FRAC_ADDI_2
-#define __FP_FRAC_ADDI_2(xh, xl, i) \
+# ifndef __FP_FRAC_ADDI_2
+# define __FP_FRAC_ADDI_2(xh, xl, i) \
(xh += ((xl += i) < i))
-#endif
-#ifndef __FP_FRAC_ADD_2
-#define __FP_FRAC_ADD_2(rh, rl, xh, xl, yh, yl) \
+# endif
+# ifndef __FP_FRAC_ADD_2
+# define __FP_FRAC_ADD_2(rh, rl, xh, xl, yh, yl) \
(rh = xh + yh + ((rl = xl + yl) < xl))
-#endif
-#ifndef __FP_FRAC_SUB_2
-#define __FP_FRAC_SUB_2(rh, rl, xh, xl, yh, yl) \
+# endif
+# ifndef __FP_FRAC_SUB_2
+# define __FP_FRAC_SUB_2(rh, rl, xh, xl, yh, yl) \
(rh = xh - yh - ((rl = xl - yl) > xl))
-#endif
-#ifndef __FP_FRAC_DEC_2
-#define __FP_FRAC_DEC_2(xh, xl, yh, yl) \
- do { \
- UWtype _t = xl; \
- xh -= yh + ((xl -= yl) > _t); \
- } while (0)
-#endif
+# endif
+# ifndef __FP_FRAC_DEC_2
+# define __FP_FRAC_DEC_2(xh, xl, yh, yl) \
+ do \
+ { \
+ UWtype _t = xl; \
+ xh -= yh + ((xl -= yl) > _t); \
+ } \
+ while (0)
+# endif
#else
-#undef __FP_FRAC_ADDI_2
-#define __FP_FRAC_ADDI_2(xh, xl, i) add_ssaaaa(xh, xl, xh, xl, 0, i)
-#undef __FP_FRAC_ADD_2
-#define __FP_FRAC_ADD_2 add_ssaaaa
-#undef __FP_FRAC_SUB_2
-#define __FP_FRAC_SUB_2 sub_ddmmss
-#undef __FP_FRAC_DEC_2
-#define __FP_FRAC_DEC_2(xh, xl, yh, yl) sub_ddmmss(xh, xl, xh, xl, yh, yl)
+# undef __FP_FRAC_ADDI_2
+# define __FP_FRAC_ADDI_2(xh, xl, i) add_ssaaaa (xh, xl, xh, xl, 0, i)
+# undef __FP_FRAC_ADD_2
+# define __FP_FRAC_ADD_2 add_ssaaaa
+# undef __FP_FRAC_SUB_2
+# define __FP_FRAC_SUB_2 sub_ddmmss
+# undef __FP_FRAC_DEC_2
+# define __FP_FRAC_DEC_2(xh, xl, yh, yl) \
+ sub_ddmmss (xh, xl, xh, xl, yh, yl)
#endif
@@ -203,54 +210,61 @@
* normalize the data.
*/
-#define _FP_UNPACK_RAW_2(fs, X, val) \
- do { \
- union _FP_UNION_##fs _flo; _flo.flt = (val); \
- \
- X##_f0 = _flo.bits.frac0; \
- X##_f1 = _flo.bits.frac1; \
- X##_e = _flo.bits.exp; \
- X##_s = _flo.bits.sign; \
- } while (0)
-
-#define _FP_UNPACK_RAW_2_P(fs, X, val) \
- do { \
- union _FP_UNION_##fs *_flo = \
- (union _FP_UNION_##fs *)(val); \
- \
- X##_f0 = _flo->bits.frac0; \
- X##_f1 = _flo->bits.frac1; \
- X##_e = _flo->bits.exp; \
- X##_s = _flo->bits.sign; \
- } while (0)
+#define _FP_UNPACK_RAW_2(fs, X, val) \
+ do \
+ { \
+ union _FP_UNION_##fs _flo; \
+ _flo.flt = (val); \
+ \
+ X##_f0 = _flo.bits.frac0; \
+ X##_f1 = _flo.bits.frac1; \
+ X##_e = _flo.bits.exp; \
+ X##_s = _flo.bits.sign; \
+ } \
+ while (0)
+
+#define _FP_UNPACK_RAW_2_P(fs, X, val) \
+ do \
+ { \
+ union _FP_UNION_##fs *_flo = (union _FP_UNION_##fs *) (val); \
+ \
+ X##_f0 = _flo->bits.frac0; \
+ X##_f1 = _flo->bits.frac1; \
+ X##_e = _flo->bits.exp; \
+ X##_s = _flo->bits.sign; \
+ } \
+ while (0)
/*
* Repack the raw bits of a native fp value.
*/
-#define _FP_PACK_RAW_2(fs, val, X) \
- do { \
- union _FP_UNION_##fs _flo; \
- \
- _flo.bits.frac0 = X##_f0; \
- _flo.bits.frac1 = X##_f1; \
- _flo.bits.exp = X##_e; \
- _flo.bits.sign = X##_s; \
- \
- (val) = _flo.flt; \
- } while (0)
-
-#define _FP_PACK_RAW_2_P(fs, val, X) \
- do { \
- union _FP_UNION_##fs *_flo = \
- (union _FP_UNION_##fs *)(val); \
- \
- _flo->bits.frac0 = X##_f0; \
- _flo->bits.frac1 = X##_f1; \
- _flo->bits.exp = X##_e; \
- _flo->bits.sign = X##_s; \
- } while (0)
+#define _FP_PACK_RAW_2(fs, val, X) \
+ do \
+ { \
+ union _FP_UNION_##fs _flo; \
+ \
+ _flo.bits.frac0 = X##_f0; \
+ _flo.bits.frac1 = X##_f1; \
+ _flo.bits.exp = X##_e; \
+ _flo.bits.sign = X##_s; \
+ \
+ (val) = _flo.flt; \
+ } \
+ while (0)
+
+#define _FP_PACK_RAW_2_P(fs, val, X) \
+ do \
+ { \
+ union _FP_UNION_##fs *_flo = (union _FP_UNION_##fs *) (val); \
+ \
+ _flo->bits.frac0 = X##_f0; \
+ _flo->bits.frac1 = X##_f1; \
+ _flo->bits.exp = X##_e; \
+ _flo->bits.sign = X##_s; \
+ } \
+ while (0)
/*
@@ -260,111 +274,127 @@
/* Given a 1W * 1W => 2W primitive, do the extended multiplication. */
#define _FP_MUL_MEAT_DW_2_wide(wfracbits, R, X, Y, doit) \
- do { \
- _FP_FRAC_DECL_2(_b); _FP_FRAC_DECL_2(_c); \
+ do \
+ { \
+ _FP_FRAC_DECL_2 (_b); \
+ _FP_FRAC_DECL_2 (_c); \
\
- doit(_FP_FRAC_WORD_4(R,1), _FP_FRAC_WORD_4(R,0), X##_f0, Y##_f0); \
- doit(_b_f1, _b_f0, X##_f0, Y##_f1); \
- doit(_c_f1, _c_f0, X##_f1, Y##_f0); \
- doit(_FP_FRAC_WORD_4(R,3), _FP_FRAC_WORD_4(R,2), X##_f1, Y##_f1); \
+ doit (_FP_FRAC_WORD_4 (R, 1), _FP_FRAC_WORD_4 (R, 0), X##_f0, Y##_f0); \
+ doit (_b_f1, _b_f0, X##_f0, Y##_f1); \
+ doit (_c_f1, _c_f0, X##_f1, Y##_f0); \
+ doit (_FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), X##_f1, Y##_f1); \
\
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_4(R,3),_FP_FRAC_WORD_4(R,2), \
- _FP_FRAC_WORD_4(R,1), 0, _b_f1, _b_f0, \
- _FP_FRAC_WORD_4(R,3),_FP_FRAC_WORD_4(R,2), \
- _FP_FRAC_WORD_4(R,1)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_4(R,3),_FP_FRAC_WORD_4(R,2), \
- _FP_FRAC_WORD_4(R,1), 0, _c_f1, _c_f0, \
- _FP_FRAC_WORD_4(R,3),_FP_FRAC_WORD_4(R,2), \
- _FP_FRAC_WORD_4(R,1)); \
- } while (0)
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), \
+ _FP_FRAC_WORD_4 (R, 1), 0, _b_f1, _b_f0, \
+ _FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), \
+ _FP_FRAC_WORD_4 (R, 1)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), \
+ _FP_FRAC_WORD_4 (R, 1), 0, _c_f1, _c_f0, \
+ _FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), \
+ _FP_FRAC_WORD_4 (R, 1)); \
+ } \
+ while (0)
#define _FP_MUL_MEAT_2_wide(wfracbits, R, X, Y, doit) \
- do { \
- _FP_FRAC_DECL_4(_z); \
+ do \
+ { \
+ _FP_FRAC_DECL_4 (_z); \
\
- _FP_MUL_MEAT_DW_2_wide(wfracbits, _z, X, Y, doit); \
+ _FP_MUL_MEAT_DW_2_wide (wfracbits, _z, X, Y, doit); \
\
- /* Normalize since we know where the msb of the multiplicands \
- were (bit B), we know that the msb of the of the product is \
- at either 2B or 2B-1. */ \
- _FP_FRAC_SRS_4(_z, wfracbits-1, 2*wfracbits); \
- R##_f0 = _FP_FRAC_WORD_4(_z,0); \
- R##_f1 = _FP_FRAC_WORD_4(_z,1); \
- } while (0)
+ /* Normalize since we know where the msb of the multiplicands \
+ were (bit B), we know that the msb of the of the product is \
+ at either 2B or 2B-1. */ \
+ _FP_FRAC_SRS_4 (_z, wfracbits-1, 2*wfracbits); \
+ R##_f0 = _FP_FRAC_WORD_4 (_z, 0); \
+ R##_f1 = _FP_FRAC_WORD_4 (_z, 1); \
+ } \
+ while (0)
/* Given a 1W * 1W => 2W primitive, do the extended multiplication.
Do only 3 multiplications instead of four. This one is for machines
where multiplication is much more expensive than subtraction. */
#define _FP_MUL_MEAT_DW_2_wide_3mul(wfracbits, R, X, Y, doit) \
- do { \
- _FP_FRAC_DECL_2(_b); _FP_FRAC_DECL_2(_c); \
- _FP_W_TYPE _d; \
- int _c1, _c2; \
+ do \
+ { \
+ _FP_FRAC_DECL_2 (_b); \
+ _FP_FRAC_DECL_2 (_c); \
+ _FP_W_TYPE _d; \
+ int _c1, _c2; \
\
- _b_f0 = X##_f0 + X##_f1; \
- _c1 = _b_f0 < X##_f0; \
- _b_f1 = Y##_f0 + Y##_f1; \
- _c2 = _b_f1 < Y##_f0; \
- doit(_d, _FP_FRAC_WORD_4(R,0), X##_f0, Y##_f0); \
- doit(_FP_FRAC_WORD_4(R,2), _FP_FRAC_WORD_4(R,1), _b_f0, _b_f1); \
- doit(_c_f1, _c_f0, X##_f1, Y##_f1); \
+ _b_f0 = X##_f0 + X##_f1; \
+ _c1 = _b_f0 < X##_f0; \
+ _b_f1 = Y##_f0 + Y##_f1; \
+ _c2 = _b_f1 < Y##_f0; \
+ doit (_d, _FP_FRAC_WORD_4 (R, 0), X##_f0, Y##_f0); \
+ doit (_FP_FRAC_WORD_4 (R, 2), _FP_FRAC_WORD_4 (R, 1), _b_f0, _b_f1); \
+ doit (_c_f1, _c_f0, X##_f1, Y##_f1); \
\
- _b_f0 &= -_c2; \
- _b_f1 &= -_c1; \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_4(R,3),_FP_FRAC_WORD_4(R,2), \
- _FP_FRAC_WORD_4(R,1), (_c1 & _c2), 0, _d, \
- 0, _FP_FRAC_WORD_4(R,2), _FP_FRAC_WORD_4(R,1)); \
- __FP_FRAC_ADDI_2(_FP_FRAC_WORD_4(R,3),_FP_FRAC_WORD_4(R,2), \
- _b_f0); \
- __FP_FRAC_ADDI_2(_FP_FRAC_WORD_4(R,3),_FP_FRAC_WORD_4(R,2), \
- _b_f1); \
- __FP_FRAC_DEC_3(_FP_FRAC_WORD_4(R,3),_FP_FRAC_WORD_4(R,2), \
- _FP_FRAC_WORD_4(R,1), \
- 0, _d, _FP_FRAC_WORD_4(R,0)); \
- __FP_FRAC_DEC_3(_FP_FRAC_WORD_4(R,3),_FP_FRAC_WORD_4(R,2), \
- _FP_FRAC_WORD_4(R,1), 0, _c_f1, _c_f0); \
- __FP_FRAC_ADD_2(_FP_FRAC_WORD_4(R,3), _FP_FRAC_WORD_4(R,2), \
- _c_f1, _c_f0, \
- _FP_FRAC_WORD_4(R,3), _FP_FRAC_WORD_4(R,2)); \
- } while (0)
+ _b_f0 &= -_c2; \
+ _b_f1 &= -_c1; \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), \
+ _FP_FRAC_WORD_4 (R, 1), (_c1 & _c2), 0, _d, \
+ 0, _FP_FRAC_WORD_4 (R, 2), _FP_FRAC_WORD_4 (R, 1)); \
+ __FP_FRAC_ADDI_2 (_FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), \
+ _b_f0); \
+ __FP_FRAC_ADDI_2 (_FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), \
+ _b_f1); \
+ __FP_FRAC_DEC_3 (_FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), \
+ _FP_FRAC_WORD_4 (R, 1), \
+ 0, _d, _FP_FRAC_WORD_4 (R, 0)); \
+ __FP_FRAC_DEC_3 (_FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), \
+ _FP_FRAC_WORD_4 (R, 1), 0, _c_f1, _c_f0); \
+ __FP_FRAC_ADD_2 (_FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2), \
+ _c_f1, _c_f0, \
+ _FP_FRAC_WORD_4 (R, 3), _FP_FRAC_WORD_4 (R, 2)); \
+ } \
+ while (0)
#define _FP_MUL_MEAT_2_wide_3mul(wfracbits, R, X, Y, doit) \
- do { \
- _FP_FRAC_DECL_4(_z); \
+ do \
+ { \
+ _FP_FRAC_DECL_4 (_z); \
\
- _FP_MUL_MEAT_DW_2_wide_3mul(wfracbits, _z, X, Y, doit); \
+ _FP_MUL_MEAT_DW_2_wide_3mul (wfracbits, _z, X, Y, doit); \
\
- /* Normalize since we know where the msb of the multiplicands \
- were (bit B), we know that the msb of the of the product is \
- at either 2B or 2B-1. */ \
- _FP_FRAC_SRS_4(_z, wfracbits-1, 2*wfracbits); \
- R##_f0 = _FP_FRAC_WORD_4(_z,0); \
- R##_f1 = _FP_FRAC_WORD_4(_z,1); \
- } while (0)
-
-#define _FP_MUL_MEAT_DW_2_gmp(wfracbits, R, X, Y) \
- do { \
- _FP_W_TYPE _x[2], _y[2]; \
- _x[0] = X##_f0; _x[1] = X##_f1; \
- _y[0] = Y##_f0; _y[1] = Y##_f1; \
- \
- mpn_mul_n(R##_f, _x, _y, 2); \
- } while (0)
+ /* Normalize since we know where the msb of the multiplicands \
+ were (bit B), we know that the msb of the of the product is \
+ at either 2B or 2B-1. */ \
+ _FP_FRAC_SRS_4 (_z, wfracbits-1, 2*wfracbits); \
+ R##_f0 = _FP_FRAC_WORD_4 (_z, 0); \
+ R##_f1 = _FP_FRAC_WORD_4 (_z, 1); \
+ } \
+ while (0)
+
+#define _FP_MUL_MEAT_DW_2_gmp(wfracbits, R, X, Y) \
+ do \
+ { \
+ _FP_W_TYPE _x[2], _y[2]; \
+ _x[0] = X##_f0; \
+ _x[1] = X##_f1; \
+ _y[0] = Y##_f0; \
+ _y[1] = Y##_f1; \
+ \
+ mpn_mul_n (R##_f, _x, _y, 2); \
+ } \
+ while (0)
#define _FP_MUL_MEAT_2_gmp(wfracbits, R, X, Y) \
- do { \
- _FP_FRAC_DECL_4(_z); \
+ do \
+ { \
+ _FP_FRAC_DECL_4 (_z); \
\
- _FP_MUL_MEAT_DW_2_gmp(wfracbits, _z, X, Y); \
+ _FP_MUL_MEAT_DW_2_gmp (wfracbits, _z, X, Y); \
\
- /* Normalize since we know where the msb of the multiplicands \
- were (bit B), we know that the msb of the of the product is \
- at either 2B or 2B-1. */ \
- _FP_FRAC_SRS_4(_z, wfracbits-1, 2*wfracbits); \
- R##_f0 = _z_f[0]; \
- R##_f1 = _z_f[1]; \
- } while (0)
+ /* Normalize since we know where the msb of the multiplicands \
+ were (bit B), we know that the msb of the of the product is \
+ at either 2B or 2B-1. */ \
+ _FP_FRAC_SRS_4 (_z, wfracbits-1, 2*wfracbits); \
+ R##_f0 = _z_f[0]; \
+ R##_f1 = _z_f[1]; \
+ } \
+ while (0)
/* Do at most 120x120=240 bits multiplication using double floating
point multiplication. This is useful if floating point
@@ -375,190 +405,173 @@
SETFETZ is a macro which will disable all FPU exceptions and set rounding
towards zero, RESETFE should optionally reset it back. */
-#define _FP_MUL_MEAT_2_120_240_double(wfracbits, R, X, Y, setfetz, resetfe) \
- do { \
- static const double _const[] = { \
- /* 2^-24 */ 5.9604644775390625e-08, \
- /* 2^-48 */ 3.5527136788005009e-15, \
- /* 2^-72 */ 2.1175823681357508e-22, \
- /* 2^-96 */ 1.2621774483536189e-29, \
- /* 2^28 */ 2.68435456e+08, \
- /* 2^4 */ 1.600000e+01, \
- /* 2^-20 */ 9.5367431640625e-07, \
- /* 2^-44 */ 5.6843418860808015e-14, \
- /* 2^-68 */ 3.3881317890172014e-21, \
- /* 2^-92 */ 2.0194839173657902e-28, \
- /* 2^-116 */ 1.2037062152420224e-35}; \
- double _a240, _b240, _c240, _d240, _e240, _f240, \
- _g240, _h240, _i240, _j240, _k240; \
- union { double d; UDItype i; } _l240, _m240, _n240, _o240, \
- _p240, _q240, _r240, _s240; \
- UDItype _t240, _u240, _v240, _w240, _x240, _y240 = 0; \
- \
- if (wfracbits < 106 || wfracbits > 120) \
- abort(); \
- \
- setfetz; \
- \
- _e240 = (double)(long)(X##_f0 & 0xffffff); \
- _j240 = (double)(long)(Y##_f0 & 0xffffff); \
- _d240 = (double)(long)((X##_f0 >> 24) & 0xffffff); \
- _i240 = (double)(long)((Y##_f0 >> 24) & 0xffffff); \
- _c240 = (double)(long)(((X##_f1 << 16) & 0xffffff) | (X##_f0 >> 48)); \
- _h240 = (double)(long)(((Y##_f1 << 16) & 0xffffff) | (Y##_f0 >> 48)); \
- _b240 = (double)(long)((X##_f1 >> 8) & 0xffffff); \
- _g240 = (double)(long)((Y##_f1 >> 8) & 0xffffff); \
- _a240 = (double)(long)(X##_f1 >> 32); \
- _f240 = (double)(long)(Y##_f1 >> 32); \
- _e240 *= _const[3]; \
- _j240 *= _const[3]; \
- _d240 *= _const[2]; \
- _i240 *= _const[2]; \
- _c240 *= _const[1]; \
- _h240 *= _const[1]; \
- _b240 *= _const[0]; \
- _g240 *= _const[0]; \
- _s240.d = _e240*_j240;\
- _r240.d = _d240*_j240 + _e240*_i240;\
- _q240.d = _c240*_j240 + _d240*_i240 + _e240*_h240;\
- _p240.d = _b240*_j240 + _c240*_i240 + _d240*_h240 + _e240*_g240;\
- _o240.d = _a240*_j240 + _b240*_i240 + _c240*_h240 + _d240*_g240 + _e240*_f240;\
- _n240.d = _a240*_i240 + _b240*_h240 + _c240*_g240 + _d240*_f240; \
- _m240.d = _a240*_h240 + _b240*_g240 + _c240*_f240; \
- _l240.d = _a240*_g240 + _b240*_f240; \
- _k240 = _a240*_f240; \
- _r240.d += _s240.d; \
- _q240.d += _r240.d; \
- _p240.d += _q240.d; \
- _o240.d += _p240.d; \
- _n240.d += _o240.d; \
- _m240.d += _n240.d; \
- _l240.d += _m240.d; \
- _k240 += _l240.d; \
- _s240.d -= ((_const[10]+_s240.d)-_const[10]); \
- _r240.d -= ((_const[9]+_r240.d)-_const[9]); \
- _q240.d -= ((_const[8]+_q240.d)-_const[8]); \
- _p240.d -= ((_const[7]+_p240.d)-_const[7]); \
- _o240.d += _const[7]; \
- _n240.d += _const[6]; \
- _m240.d += _const[5]; \
- _l240.d += _const[4]; \
- if (_s240.d != 0.0) _y240 = 1; \
- if (_r240.d != 0.0) _y240 = 1; \
- if (_q240.d != 0.0) _y240 = 1; \
- if (_p240.d != 0.0) _y240 = 1; \
- _t240 = (DItype)_k240; \
- _u240 = _l240.i; \
- _v240 = _m240.i; \
- _w240 = _n240.i; \
- _x240 = _o240.i; \
- R##_f1 = (_t240 << (128 - (wfracbits - 1))) \
- | ((_u240 & 0xffffff) >> ((wfracbits - 1) - 104)); \
- R##_f0 = ((_u240 & 0xffffff) << (168 - (wfracbits - 1))) \
- | ((_v240 & 0xffffff) << (144 - (wfracbits - 1))) \
- | ((_w240 & 0xffffff) << (120 - (wfracbits - 1))) \
- | ((_x240 & 0xffffff) >> ((wfracbits - 1) - 96)) \
- | _y240; \
- resetfe; \
- } while (0)
+#define _FP_MUL_MEAT_2_120_240_double(wfracbits, R, X, Y, setfetz, resetfe) \
+ do \
+ { \
+ static const double _const[] = \
+ { \
+ /* 2^-24 */ 5.9604644775390625e-08, \
+ /* 2^-48 */ 3.5527136788005009e-15, \
+ /* 2^-72 */ 2.1175823681357508e-22, \
+ /* 2^-96 */ 1.2621774483536189e-29, \
+ /* 2^28 */ 2.68435456e+08, \
+ /* 2^4 */ 1.600000e+01, \
+ /* 2^-20 */ 9.5367431640625e-07, \
+ /* 2^-44 */ 5.6843418860808015e-14, \
+ /* 2^-68 */ 3.3881317890172014e-21, \
+ /* 2^-92 */ 2.0194839173657902e-28, \
+ /* 2^-116 */ 1.2037062152420224e-35 \
+ }; \
+ double _a240, _b240, _c240, _d240, _e240, _f240, \
+ _g240, _h240, _i240, _j240, _k240; \
+ union { double d; UDItype i; } _l240, _m240, _n240, _o240, \
+ _p240, _q240, _r240, _s240; \
+ UDItype _t240, _u240, _v240, _w240, _x240, _y240 = 0; \
+ \
+ if (wfracbits < 106 || wfracbits > 120) \
+ abort (); \
+ \
+ setfetz; \
+ \
+ _e240 = (double) (long) (X##_f0 & 0xffffff); \
+ _j240 = (double) (long) (Y##_f0 & 0xffffff); \
+ _d240 = (double) (long) ((X##_f0 >> 24) & 0xffffff); \
+ _i240 = (double) (long) ((Y##_f0 >> 24) & 0xffffff); \
+ _c240 = (double) (long) (((X##_f1 << 16) & 0xffffff) | (X##_f0 >> 48)); \
+ _h240 = (double) (long) (((Y##_f1 << 16) & 0xffffff) | (Y##_f0 >> 48)); \
+ _b240 = (double) (long) ((X##_f1 >> 8) & 0xffffff); \
+ _g240 = (double) (long) ((Y##_f1 >> 8) & 0xffffff); \
+ _a240 = (double) (long) (X##_f1 >> 32); \
+ _f240 = (double) (long) (Y##_f1 >> 32); \
+ _e240 *= _const[3]; \
+ _j240 *= _const[3]; \
+ _d240 *= _const[2]; \
+ _i240 *= _const[2]; \
+ _c240 *= _const[1]; \
+ _h240 *= _const[1]; \
+ _b240 *= _const[0]; \
+ _g240 *= _const[0]; \
+ _s240.d = _e240*_j240; \
+ _r240.d = _d240*_j240 + _e240*_i240; \
+ _q240.d = _c240*_j240 + _d240*_i240 + _e240*_h240; \
+ _p240.d = _b240*_j240 + _c240*_i240 + _d240*_h240 + _e240*_g240; \
+ _o240.d = _a240*_j240 + _b240*_i240 + _c240*_h240 + _d240*_g240 + _e240*_f240; \
+ _n240.d = _a240*_i240 + _b240*_h240 + _c240*_g240 + _d240*_f240; \
+ _m240.d = _a240*_h240 + _b240*_g240 + _c240*_f240; \
+ _l240.d = _a240*_g240 + _b240*_f240; \
+ _k240 = _a240*_f240; \
+ _r240.d += _s240.d; \
+ _q240.d += _r240.d; \
+ _p240.d += _q240.d; \
+ _o240.d += _p240.d; \
+ _n240.d += _o240.d; \
+ _m240.d += _n240.d; \
+ _l240.d += _m240.d; \
+ _k240 += _l240.d; \
+ _s240.d -= ((_const[10]+_s240.d)-_const[10]); \
+ _r240.d -= ((_const[9]+_r240.d)-_const[9]); \
+ _q240.d -= ((_const[8]+_q240.d)-_const[8]); \
+ _p240.d -= ((_const[7]+_p240.d)-_const[7]); \
+ _o240.d += _const[7]; \
+ _n240.d += _const[6]; \
+ _m240.d += _const[5]; \
+ _l240.d += _const[4]; \
+ if (_s240.d != 0.0) \
+ _y240 = 1; \
+ if (_r240.d != 0.0) \
+ _y240 = 1; \
+ if (_q240.d != 0.0) \
+ _y240 = 1; \
+ if (_p240.d != 0.0) \
+ _y240 = 1; \
+ _t240 = (DItype) _k240; \
+ _u240 = _l240.i; \
+ _v240 = _m240.i; \
+ _w240 = _n240.i; \
+ _x240 = _o240.i; \
+ R##_f1 = ((_t240 << (128 - (wfracbits - 1))) \
+ | ((_u240 & 0xffffff) >> ((wfracbits - 1) - 104))); \
+ R##_f0 = (((_u240 & 0xffffff) << (168 - (wfracbits - 1))) \
+ | ((_v240 & 0xffffff) << (144 - (wfracbits - 1))) \
+ | ((_w240 & 0xffffff) << (120 - (wfracbits - 1))) \
+ | ((_x240 & 0xffffff) >> ((wfracbits - 1) - 96)) \
+ | _y240); \
+ resetfe; \
+ } \
+ while (0)
/*
* Division algorithms:
*/
#define _FP_DIV_MEAT_2_udiv(fs, R, X, Y) \
- do { \
- _FP_W_TYPE _n_f2, _n_f1, _n_f0, _r_f1, _r_f0, _m_f1, _m_f0; \
- if (_FP_FRAC_GT_2(X, Y)) \
- { \
- _n_f2 = X##_f1 >> 1; \
- _n_f1 = X##_f1 << (_FP_W_TYPE_SIZE - 1) | X##_f0 >> 1; \
- _n_f0 = X##_f0 << (_FP_W_TYPE_SIZE - 1); \
- } \
- else \
- { \
- R##_e--; \
- _n_f2 = X##_f1; \
- _n_f1 = X##_f0; \
- _n_f0 = 0; \
- } \
- \
- /* Normalize, i.e. make the most significant bit of the \
- denominator set. */ \
- _FP_FRAC_SLL_2(Y, _FP_WFRACXBITS_##fs); \
+ do \
+ { \
+ _FP_W_TYPE _n_f2, _n_f1, _n_f0, _r_f1, _r_f0, _m_f1, _m_f0; \
+ if (_FP_FRAC_GE_2 (X, Y)) \
+ { \
+ _n_f2 = X##_f1 >> 1; \
+ _n_f1 = X##_f1 << (_FP_W_TYPE_SIZE - 1) | X##_f0 >> 1; \
+ _n_f0 = X##_f0 << (_FP_W_TYPE_SIZE - 1); \
+ } \
+ else \
+ { \
+ R##_e--; \
+ _n_f2 = X##_f1; \
+ _n_f1 = X##_f0; \
+ _n_f0 = 0; \
+ } \
\
- udiv_qrnnd(R##_f1, _r_f1, _n_f2, _n_f1, Y##_f1); \
- umul_ppmm(_m_f1, _m_f0, R##_f1, Y##_f0); \
- _r_f0 = _n_f0; \
- if (_FP_FRAC_GT_2(_m, _r)) \
- { \
- R##_f1--; \
- _FP_FRAC_ADD_2(_r, Y, _r); \
- if (_FP_FRAC_GE_2(_r, Y) && _FP_FRAC_GT_2(_m, _r)) \
- { \
- R##_f1--; \
- _FP_FRAC_ADD_2(_r, Y, _r); \
- } \
- } \
- _FP_FRAC_DEC_2(_r, _m); \
+ /* Normalize, i.e. make the most significant bit of the \
+ denominator set. */ \
+ _FP_FRAC_SLL_2 (Y, _FP_WFRACXBITS_##fs); \
\
- if (_r_f1 == Y##_f1) \
- { \
- /* This is a special case, not an optimization \
- (_r/Y##_f1 would not fit into UWtype). \
- As _r is guaranteed to be < Y, R##_f0 can be either \
- (UWtype)-1 or (UWtype)-2. But as we know what kind \
- of bits it is (sticky, guard, round), we don't care. \
- We also don't care what the reminder is, because the \
- guard bit will be set anyway. -jj */ \
- R##_f0 = -1; \
- } \
- else \
- { \
- udiv_qrnnd(R##_f0, _r_f1, _r_f1, _r_f0, Y##_f1); \
- umul_ppmm(_m_f1, _m_f0, R##_f0, Y##_f0); \
- _r_f0 = 0; \
- if (_FP_FRAC_GT_2(_m, _r)) \
- { \
- R##_f0--; \
- _FP_FRAC_ADD_2(_r, Y, _r); \
- if (_FP_FRAC_GE_2(_r, Y) && _FP_FRAC_GT_2(_m, _r)) \
- { \
- R##_f0--; \
- _FP_FRAC_ADD_2(_r, Y, _r); \
- } \
- } \
- if (!_FP_FRAC_EQ_2(_r, _m)) \
- R##_f0 |= _FP_WORK_STICKY; \
- } \
- } while (0)
-
-
-#define _FP_DIV_MEAT_2_gmp(fs, R, X, Y) \
- do { \
- _FP_W_TYPE _x[4], _y[2], _z[4]; \
- _y[0] = Y##_f0; _y[1] = Y##_f1; \
- _x[0] = _x[3] = 0; \
- if (_FP_FRAC_GT_2(X, Y)) \
- { \
- R##_e++; \
- _x[1] = (X##_f0 << (_FP_WFRACBITS_##fs-1 - _FP_W_TYPE_SIZE) | \
- X##_f1 >> (_FP_W_TYPE_SIZE - \
- (_FP_WFRACBITS_##fs-1 - _FP_W_TYPE_SIZE))); \
- _x[2] = X##_f1 << (_FP_WFRACBITS_##fs-1 - _FP_W_TYPE_SIZE); \
- } \
- else \
- { \
- _x[1] = (X##_f0 << (_FP_WFRACBITS_##fs - _FP_W_TYPE_SIZE) | \
- X##_f1 >> (_FP_W_TYPE_SIZE - \
- (_FP_WFRACBITS_##fs - _FP_W_TYPE_SIZE))); \
- _x[2] = X##_f1 << (_FP_WFRACBITS_##fs - _FP_W_TYPE_SIZE); \
- } \
+ udiv_qrnnd (R##_f1, _r_f1, _n_f2, _n_f1, Y##_f1); \
+ umul_ppmm (_m_f1, _m_f0, R##_f1, Y##_f0); \
+ _r_f0 = _n_f0; \
+ if (_FP_FRAC_GT_2 (_m, _r)) \
+ { \
+ R##_f1--; \
+ _FP_FRAC_ADD_2 (_r, Y, _r); \
+ if (_FP_FRAC_GE_2 (_r, Y) && _FP_FRAC_GT_2 (_m, _r)) \
+ { \
+ R##_f1--; \
+ _FP_FRAC_ADD_2 (_r, Y, _r); \
+ } \
+ } \
+ _FP_FRAC_DEC_2 (_r, _m); \
\
- (void) mpn_divrem (_z, 0, _x, 4, _y, 2); \
- R##_f1 = _z[1]; \
- R##_f0 = _z[0] | ((_x[0] | _x[1]) != 0); \
- } while (0)
+ if (_r_f1 == Y##_f1) \
+ { \
+ /* This is a special case, not an optimization \
+ (_r/Y##_f1 would not fit into UWtype). \
+ As _r is guaranteed to be < Y, R##_f0 can be either \
+ (UWtype)-1 or (UWtype)-2. But as we know what kind \
+ of bits it is (sticky, guard, round), we don't care. \
+ We also don't care what the reminder is, because the \
+ guard bit will be set anyway. -jj */ \
+ R##_f0 = -1; \
+ } \
+ else \
+ { \
+ udiv_qrnnd (R##_f0, _r_f1, _r_f1, _r_f0, Y##_f1); \
+ umul_ppmm (_m_f1, _m_f0, R##_f0, Y##_f0); \
+ _r_f0 = 0; \
+ if (_FP_FRAC_GT_2 (_m, _r)) \
+ { \
+ R##_f0--; \
+ _FP_FRAC_ADD_2 (_r, Y, _r); \
+ if (_FP_FRAC_GE_2 (_r, Y) && _FP_FRAC_GT_2 (_m, _r)) \
+ { \
+ R##_f0--; \
+ _FP_FRAC_ADD_2 (_r, Y, _r); \
+ } \
+ } \
+ if (!_FP_FRAC_EQ_2 (_r, _m)) \
+ R##_f0 |= _FP_WORK_STICKY; \
+ } \
+ } \
+ while (0)
/*
@@ -567,44 +580,46 @@
* should be added for those machines where division is fast.
*/
-#define _FP_SQRT_MEAT_2(R, S, T, X, q) \
- do { \
- while (q) \
- { \
- T##_f1 = S##_f1 + q; \
- if (T##_f1 <= X##_f1) \
- { \
- S##_f1 = T##_f1 + q; \
- X##_f1 -= T##_f1; \
- R##_f1 += q; \
- } \
- _FP_FRAC_SLL_2(X, 1); \
- q >>= 1; \
- } \
- q = (_FP_W_TYPE)1 << (_FP_W_TYPE_SIZE - 1); \
- while (q != _FP_WORK_ROUND) \
- { \
- T##_f0 = S##_f0 + q; \
- T##_f1 = S##_f1; \
- if (T##_f1 < X##_f1 || \
- (T##_f1 == X##_f1 && T##_f0 <= X##_f0)) \
- { \
- S##_f0 = T##_f0 + q; \
- S##_f1 += (T##_f0 > S##_f0); \
- _FP_FRAC_DEC_2(X, T); \
- R##_f0 += q; \
- } \
- _FP_FRAC_SLL_2(X, 1); \
- q >>= 1; \
- } \
- if (X##_f0 | X##_f1) \
- { \
- if (S##_f1 < X##_f1 || \
- (S##_f1 == X##_f1 && S##_f0 < X##_f0)) \
- R##_f0 |= _FP_WORK_ROUND; \
- R##_f0 |= _FP_WORK_STICKY; \
- } \
- } while (0)
+#define _FP_SQRT_MEAT_2(R, S, T, X, q) \
+ do \
+ { \
+ while (q) \
+ { \
+ T##_f1 = S##_f1 + q; \
+ if (T##_f1 <= X##_f1) \
+ { \
+ S##_f1 = T##_f1 + q; \
+ X##_f1 -= T##_f1; \
+ R##_f1 += q; \
+ } \
+ _FP_FRAC_SLL_2 (X, 1); \
+ q >>= 1; \
+ } \
+ q = (_FP_W_TYPE) 1 << (_FP_W_TYPE_SIZE - 1); \
+ while (q != _FP_WORK_ROUND) \
+ { \
+ T##_f0 = S##_f0 + q; \
+ T##_f1 = S##_f1; \
+ if (T##_f1 < X##_f1 \
+ || (T##_f1 == X##_f1 && T##_f0 <= X##_f0)) \
+ { \
+ S##_f0 = T##_f0 + q; \
+ S##_f1 += (T##_f0 > S##_f0); \
+ _FP_FRAC_DEC_2 (X, T); \
+ R##_f0 += q; \
+ } \
+ _FP_FRAC_SLL_2 (X, 1); \
+ q >>= 1; \
+ } \
+ if (X##_f0 | X##_f1) \
+ { \
+ if (S##_f1 < X##_f1 \
+ || (S##_f1 == X##_f1 && S##_f0 < X##_f0)) \
+ R##_f0 |= _FP_WORK_ROUND; \
+ R##_f0 |= _FP_WORK_STICKY; \
+ } \
+ } \
+ while (0)
/*
@@ -613,19 +628,21 @@
*/
#define _FP_FRAC_ASSEMBLE_2(r, X, rsize) \
-(void)((rsize <= _FP_W_TYPE_SIZE) \
- ? ({ r = X##_f0; }) \
- : ({ \
- r = X##_f1; \
- r <<= _FP_W_TYPE_SIZE; \
- r += X##_f0; \
- }))
+ (void) ((rsize <= _FP_W_TYPE_SIZE) \
+ ? ({ r = X##_f0; }) \
+ : ({ \
+ r = X##_f1; \
+ r <<= _FP_W_TYPE_SIZE; \
+ r += X##_f0; \
+ }))
#define _FP_FRAC_DISASSEMBLE_2(X, r, rsize) \
- do { \
- X##_f0 = r; \
- X##_f1 = (rsize <= _FP_W_TYPE_SIZE ? 0 : r >> _FP_W_TYPE_SIZE); \
- } while (0)
+ do \
+ { \
+ X##_f0 = r; \
+ X##_f1 = (rsize <= _FP_W_TYPE_SIZE ? 0 : r >> _FP_W_TYPE_SIZE); \
+ } \
+ while (0)
/*
* Convert FP values between word sizes
@@ -635,4 +652,4 @@
#define _FP_FRAC_COPY_2_1(D, S) ((D##_f0 = S##_f), (D##_f1 = 0))
-#define _FP_FRAC_COPY_2_2(D,S) _FP_FRAC_COPY_2(D,S)
+#define _FP_FRAC_COPY_2_2(D, S) _FP_FRAC_COPY_2 (D, S)
diff --git a/soft-fp/op-4.h b/soft-fp/op-4.h
index f16870d0f7..6c6b461166 100644
--- a/soft-fp/op-4.h
+++ b/soft-fp/op-4.h
@@ -31,54 +31,58 @@
<http://www.gnu.org/licenses/>. */
#define _FP_FRAC_DECL_4(X) _FP_W_TYPE X##_f[4]
-#define _FP_FRAC_COPY_4(D,S) \
+#define _FP_FRAC_COPY_4(D, S) \
(D##_f[0] = S##_f[0], D##_f[1] = S##_f[1], \
D##_f[2] = S##_f[2], D##_f[3] = S##_f[3])
-#define _FP_FRAC_SET_4(X,I) __FP_FRAC_SET_4(X, I)
+#define _FP_FRAC_SET_4(X, I) __FP_FRAC_SET_4 (X, I)
#define _FP_FRAC_HIGH_4(X) (X##_f[3])
#define _FP_FRAC_LOW_4(X) (X##_f[0])
-#define _FP_FRAC_WORD_4(X,w) (X##_f[w])
-
-#define _FP_FRAC_SLL_4(X,N) \
- do { \
- _FP_I_TYPE _up, _down, _skip, _i; \
- _skip = (N) / _FP_W_TYPE_SIZE; \
- _up = (N) % _FP_W_TYPE_SIZE; \
- _down = _FP_W_TYPE_SIZE - _up; \
- if (!_up) \
- for (_i = 3; _i >= _skip; --_i) \
- X##_f[_i] = X##_f[_i-_skip]; \
- else \
- { \
- for (_i = 3; _i > _skip; --_i) \
- X##_f[_i] = X##_f[_i-_skip] << _up \
- | X##_f[_i-_skip-1] >> _down; \
- X##_f[_i--] = X##_f[0] << _up; \
- } \
- for (; _i >= 0; --_i) \
- X##_f[_i] = 0; \
- } while (0)
+#define _FP_FRAC_WORD_4(X, w) (X##_f[w])
+
+#define _FP_FRAC_SLL_4(X, N) \
+ do \
+ { \
+ _FP_I_TYPE _up, _down, _skip, _i; \
+ _skip = (N) / _FP_W_TYPE_SIZE; \
+ _up = (N) % _FP_W_TYPE_SIZE; \
+ _down = _FP_W_TYPE_SIZE - _up; \
+ if (!_up) \
+ for (_i = 3; _i >= _skip; --_i) \
+ X##_f[_i] = X##_f[_i-_skip]; \
+ else \
+ { \
+ for (_i = 3; _i > _skip; --_i) \
+ X##_f[_i] = (X##_f[_i-_skip] << _up \
+ | X##_f[_i-_skip-1] >> _down); \
+ X##_f[_i--] = X##_f[0] << _up; \
+ } \
+ for (; _i >= 0; --_i) \
+ X##_f[_i] = 0; \
+ } \
+ while (0)
/* This one was broken too */
-#define _FP_FRAC_SRL_4(X,N) \
- do { \
- _FP_I_TYPE _up, _down, _skip, _i; \
- _skip = (N) / _FP_W_TYPE_SIZE; \
- _down = (N) % _FP_W_TYPE_SIZE; \
- _up = _FP_W_TYPE_SIZE - _down; \
- if (!_down) \
- for (_i = 0; _i <= 3-_skip; ++_i) \
- X##_f[_i] = X##_f[_i+_skip]; \
- else \
- { \
- for (_i = 0; _i < 3-_skip; ++_i) \
- X##_f[_i] = X##_f[_i+_skip] >> _down \
- | X##_f[_i+_skip+1] << _up; \
- X##_f[_i++] = X##_f[3] >> _down; \
- } \
- for (; _i < 4; ++_i) \
- X##_f[_i] = 0; \
- } while (0)
+#define _FP_FRAC_SRL_4(X, N) \
+ do \
+ { \
+ _FP_I_TYPE _up, _down, _skip, _i; \
+ _skip = (N) / _FP_W_TYPE_SIZE; \
+ _down = (N) % _FP_W_TYPE_SIZE; \
+ _up = _FP_W_TYPE_SIZE - _down; \
+ if (!_down) \
+ for (_i = 0; _i <= 3-_skip; ++_i) \
+ X##_f[_i] = X##_f[_i+_skip]; \
+ else \
+ { \
+ for (_i = 0; _i < 3-_skip; ++_i) \
+ X##_f[_i] = (X##_f[_i+_skip] >> _down \
+ | X##_f[_i+_skip+1] << _up); \
+ X##_f[_i++] = X##_f[3] >> _down; \
+ } \
+ for (; _i < 4; ++_i) \
+ X##_f[_i] = 0; \
+ } \
+ while (0)
/* Right shift with sticky-lsb.
@@ -86,161 +90,172 @@
* but that if any of the bits that fall off the right hand side
* were one then we always set the LSbit.
*/
-#define _FP_FRAC_SRST_4(X,S,N,size) \
- do { \
- _FP_I_TYPE _up, _down, _skip, _i; \
- _FP_W_TYPE _s; \
- _skip = (N) / _FP_W_TYPE_SIZE; \
- _down = (N) % _FP_W_TYPE_SIZE; \
- _up = _FP_W_TYPE_SIZE - _down; \
- for (_s = _i = 0; _i < _skip; ++_i) \
- _s |= X##_f[_i]; \
- if (!_down) \
- for (_i = 0; _i <= 3-_skip; ++_i) \
- X##_f[_i] = X##_f[_i+_skip]; \
- else \
- { \
- _s |= X##_f[_i] << _up; \
- for (_i = 0; _i < 3-_skip; ++_i) \
- X##_f[_i] = X##_f[_i+_skip] >> _down \
- | X##_f[_i+_skip+1] << _up; \
- X##_f[_i++] = X##_f[3] >> _down; \
- } \
- for (; _i < 4; ++_i) \
- X##_f[_i] = 0; \
- S = (_s != 0); \
- } while (0)
-
-#define _FP_FRAC_SRS_4(X,N,size) \
- do { \
- int _sticky; \
- _FP_FRAC_SRST_4(X, _sticky, N, size); \
- X##_f[0] |= _sticky; \
- } while (0)
-
-#define _FP_FRAC_ADD_4(R,X,Y) \
- __FP_FRAC_ADD_4(R##_f[3], R##_f[2], R##_f[1], R##_f[0], \
- X##_f[3], X##_f[2], X##_f[1], X##_f[0], \
- Y##_f[3], Y##_f[2], Y##_f[1], Y##_f[0])
-
-#define _FP_FRAC_SUB_4(R,X,Y) \
- __FP_FRAC_SUB_4(R##_f[3], R##_f[2], R##_f[1], R##_f[0], \
- X##_f[3], X##_f[2], X##_f[1], X##_f[0], \
- Y##_f[3], Y##_f[2], Y##_f[1], Y##_f[0])
-
-#define _FP_FRAC_DEC_4(X,Y) \
- __FP_FRAC_DEC_4(X##_f[3], X##_f[2], X##_f[1], X##_f[0], \
- Y##_f[3], Y##_f[2], Y##_f[1], Y##_f[0])
-
-#define _FP_FRAC_ADDI_4(X,I) \
- __FP_FRAC_ADDI_4(X##_f[3], X##_f[2], X##_f[1], X##_f[0], I)
-
-#define _FP_ZEROFRAC_4 0,0,0,0
-#define _FP_MINFRAC_4 0,0,0,1
-#define _FP_MAXFRAC_4 (~(_FP_WS_TYPE)0), (~(_FP_WS_TYPE)0), (~(_FP_WS_TYPE)0), (~(_FP_WS_TYPE)0)
+#define _FP_FRAC_SRST_4(X, S, N, size) \
+ do \
+ { \
+ _FP_I_TYPE _up, _down, _skip, _i; \
+ _FP_W_TYPE _s; \
+ _skip = (N) / _FP_W_TYPE_SIZE; \
+ _down = (N) % _FP_W_TYPE_SIZE; \
+ _up = _FP_W_TYPE_SIZE - _down; \
+ for (_s = _i = 0; _i < _skip; ++_i) \
+ _s |= X##_f[_i]; \
+ if (!_down) \
+ for (_i = 0; _i <= 3-_skip; ++_i) \
+ X##_f[_i] = X##_f[_i+_skip]; \
+ else \
+ { \
+ _s |= X##_f[_i] << _up; \
+ for (_i = 0; _i < 3-_skip; ++_i) \
+ X##_f[_i] = (X##_f[_i+_skip] >> _down \
+ | X##_f[_i+_skip+1] << _up); \
+ X##_f[_i++] = X##_f[3] >> _down; \
+ } \
+ for (; _i < 4; ++_i) \
+ X##_f[_i] = 0; \
+ S = (_s != 0); \
+ } \
+ while (0)
+
+#define _FP_FRAC_SRS_4(X, N, size) \
+ do \
+ { \
+ int _sticky; \
+ _FP_FRAC_SRST_4 (X, _sticky, N, size); \
+ X##_f[0] |= _sticky; \
+ } \
+ while (0)
+
+#define _FP_FRAC_ADD_4(R, X, Y) \
+ __FP_FRAC_ADD_4 (R##_f[3], R##_f[2], R##_f[1], R##_f[0], \
+ X##_f[3], X##_f[2], X##_f[1], X##_f[0], \
+ Y##_f[3], Y##_f[2], Y##_f[1], Y##_f[0])
+
+#define _FP_FRAC_SUB_4(R, X, Y) \
+ __FP_FRAC_SUB_4 (R##_f[3], R##_f[2], R##_f[1], R##_f[0], \
+ X##_f[3], X##_f[2], X##_f[1], X##_f[0], \
+ Y##_f[3], Y##_f[2], Y##_f[1], Y##_f[0])
+
+#define _FP_FRAC_DEC_4(X, Y) \
+ __FP_FRAC_DEC_4 (X##_f[3], X##_f[2], X##_f[1], X##_f[0], \
+ Y##_f[3], Y##_f[2], Y##_f[1], Y##_f[0])
+
+#define _FP_FRAC_ADDI_4(X, I) \
+ __FP_FRAC_ADDI_4 (X##_f[3], X##_f[2], X##_f[1], X##_f[0], I)
+
+#define _FP_ZEROFRAC_4 0, 0, 0, 0
+#define _FP_MINFRAC_4 0, 0, 0, 1
+#define _FP_MAXFRAC_4 (~(_FP_WS_TYPE) 0), (~(_FP_WS_TYPE) 0), (~(_FP_WS_TYPE) 0), (~(_FP_WS_TYPE) 0)
#define _FP_FRAC_ZEROP_4(X) ((X##_f[0] | X##_f[1] | X##_f[2] | X##_f[3]) == 0)
-#define _FP_FRAC_NEGP_4(X) ((_FP_WS_TYPE)X##_f[3] < 0)
-#define _FP_FRAC_OVERP_4(fs,X) (_FP_FRAC_HIGH_##fs(X) & _FP_OVERFLOW_##fs)
-#define _FP_FRAC_HIGHBIT_DW_4(fs,X) \
- (_FP_FRAC_HIGH_DW_##fs(X) & _FP_HIGHBIT_DW_##fs)
-#define _FP_FRAC_CLEAR_OVERP_4(fs,X) (_FP_FRAC_HIGH_##fs(X) &= ~_FP_OVERFLOW_##fs)
-
-#define _FP_FRAC_EQ_4(X,Y) \
- (X##_f[0] == Y##_f[0] && X##_f[1] == Y##_f[1] \
- && X##_f[2] == Y##_f[2] && X##_f[3] == Y##_f[3])
-
-#define _FP_FRAC_GT_4(X,Y) \
- (X##_f[3] > Y##_f[3] || \
- (X##_f[3] == Y##_f[3] && (X##_f[2] > Y##_f[2] || \
- (X##_f[2] == Y##_f[2] && (X##_f[1] > Y##_f[1] || \
- (X##_f[1] == Y##_f[1] && X##_f[0] > Y##_f[0]) \
- )) \
- )) \
- )
-
-#define _FP_FRAC_GE_4(X,Y) \
- (X##_f[3] > Y##_f[3] || \
- (X##_f[3] == Y##_f[3] && (X##_f[2] > Y##_f[2] || \
- (X##_f[2] == Y##_f[2] && (X##_f[1] > Y##_f[1] || \
- (X##_f[1] == Y##_f[1] && X##_f[0] >= Y##_f[0]) \
- )) \
- )) \
- )
-
-
-#define _FP_FRAC_CLZ_4(R,X) \
- do { \
- if (X##_f[3]) \
- { \
- __FP_CLZ(R,X##_f[3]); \
- } \
- else if (X##_f[2]) \
- { \
- __FP_CLZ(R,X##_f[2]); \
- R += _FP_W_TYPE_SIZE; \
- } \
- else if (X##_f[1]) \
- { \
- __FP_CLZ(R,X##_f[1]); \
- R += _FP_W_TYPE_SIZE*2; \
- } \
- else \
- { \
- __FP_CLZ(R,X##_f[0]); \
- R += _FP_W_TYPE_SIZE*3; \
- } \
- } while(0)
-
-
-#define _FP_UNPACK_RAW_4(fs, X, val) \
- do { \
- union _FP_UNION_##fs _flo; _flo.flt = (val); \
- X##_f[0] = _flo.bits.frac0; \
- X##_f[1] = _flo.bits.frac1; \
- X##_f[2] = _flo.bits.frac2; \
- X##_f[3] = _flo.bits.frac3; \
- X##_e = _flo.bits.exp; \
- X##_s = _flo.bits.sign; \
- } while (0)
-
-#define _FP_UNPACK_RAW_4_P(fs, X, val) \
- do { \
- union _FP_UNION_##fs *_flo = \
- (union _FP_UNION_##fs *)(val); \
- \
- X##_f[0] = _flo->bits.frac0; \
- X##_f[1] = _flo->bits.frac1; \
- X##_f[2] = _flo->bits.frac2; \
- X##_f[3] = _flo->bits.frac3; \
- X##_e = _flo->bits.exp; \
- X##_s = _flo->bits.sign; \
- } while (0)
-
-#define _FP_PACK_RAW_4(fs, val, X) \
- do { \
- union _FP_UNION_##fs _flo; \
- _flo.bits.frac0 = X##_f[0]; \
- _flo.bits.frac1 = X##_f[1]; \
- _flo.bits.frac2 = X##_f[2]; \
- _flo.bits.frac3 = X##_f[3]; \
- _flo.bits.exp = X##_e; \
- _flo.bits.sign = X##_s; \
- (val) = _flo.flt; \
- } while (0)
-
-#define _FP_PACK_RAW_4_P(fs, val, X) \
- do { \
- union _FP_UNION_##fs *_flo = \
- (union _FP_UNION_##fs *)(val); \
- \
- _flo->bits.frac0 = X##_f[0]; \
- _flo->bits.frac1 = X##_f[1]; \
- _flo->bits.frac2 = X##_f[2]; \
- _flo->bits.frac3 = X##_f[3]; \
- _flo->bits.exp = X##_e; \
- _flo->bits.sign = X##_s; \
- } while (0)
+#define _FP_FRAC_NEGP_4(X) ((_FP_WS_TYPE) X##_f[3] < 0)
+#define _FP_FRAC_OVERP_4(fs, X) (_FP_FRAC_HIGH_##fs (X) & _FP_OVERFLOW_##fs)
+#define _FP_FRAC_HIGHBIT_DW_4(fs, X) \
+ (_FP_FRAC_HIGH_DW_##fs (X) & _FP_HIGHBIT_DW_##fs)
+#define _FP_FRAC_CLEAR_OVERP_4(fs, X) (_FP_FRAC_HIGH_##fs (X) &= ~_FP_OVERFLOW_##fs)
+
+#define _FP_FRAC_EQ_4(X, Y) \
+ (X##_f[0] == Y##_f[0] && X##_f[1] == Y##_f[1] \
+ && X##_f[2] == Y##_f[2] && X##_f[3] == Y##_f[3])
+
+#define _FP_FRAC_GT_4(X, Y) \
+ (X##_f[3] > Y##_f[3] \
+ || (X##_f[3] == Y##_f[3] \
+ && (X##_f[2] > Y##_f[2] \
+ || (X##_f[2] == Y##_f[2] \
+ && (X##_f[1] > Y##_f[1] \
+ || (X##_f[1] == Y##_f[1] \
+ && X##_f[0] > Y##_f[0]))))))
+
+#define _FP_FRAC_GE_4(X, Y) \
+ (X##_f[3] > Y##_f[3] \
+ || (X##_f[3] == Y##_f[3] \
+ && (X##_f[2] > Y##_f[2] \
+ || (X##_f[2] == Y##_f[2] \
+ && (X##_f[1] > Y##_f[1] \
+ || (X##_f[1] == Y##_f[1] \
+ && X##_f[0] >= Y##_f[0]))))))
+
+
+#define _FP_FRAC_CLZ_4(R, X) \
+ do \
+ { \
+ if (X##_f[3]) \
+ __FP_CLZ (R, X##_f[3]); \
+ else if (X##_f[2]) \
+ { \
+ __FP_CLZ (R, X##_f[2]); \
+ R += _FP_W_TYPE_SIZE; \
+ } \
+ else if (X##_f[1]) \
+ { \
+ __FP_CLZ (R, X##_f[1]); \
+ R += _FP_W_TYPE_SIZE*2; \
+ } \
+ else \
+ { \
+ __FP_CLZ (R, X##_f[0]); \
+ R += _FP_W_TYPE_SIZE*3; \
+ } \
+ } \
+ while (0)
+
+
+#define _FP_UNPACK_RAW_4(fs, X, val) \
+ do \
+ { \
+ union _FP_UNION_##fs _flo; \
+ _flo.flt = (val); \
+ X##_f[0] = _flo.bits.frac0; \
+ X##_f[1] = _flo.bits.frac1; \
+ X##_f[2] = _flo.bits.frac2; \
+ X##_f[3] = _flo.bits.frac3; \
+ X##_e = _flo.bits.exp; \
+ X##_s = _flo.bits.sign; \
+ } \
+ while (0)
+
+#define _FP_UNPACK_RAW_4_P(fs, X, val) \
+ do \
+ { \
+ union _FP_UNION_##fs *_flo = (union _FP_UNION_##fs *) (val); \
+ \
+ X##_f[0] = _flo->bits.frac0; \
+ X##_f[1] = _flo->bits.frac1; \
+ X##_f[2] = _flo->bits.frac2; \
+ X##_f[3] = _flo->bits.frac3; \
+ X##_e = _flo->bits.exp; \
+ X##_s = _flo->bits.sign; \
+ } \
+ while (0)
+
+#define _FP_PACK_RAW_4(fs, val, X) \
+ do \
+ { \
+ union _FP_UNION_##fs _flo; \
+ _flo.bits.frac0 = X##_f[0]; \
+ _flo.bits.frac1 = X##_f[1]; \
+ _flo.bits.frac2 = X##_f[2]; \
+ _flo.bits.frac3 = X##_f[3]; \
+ _flo.bits.exp = X##_e; \
+ _flo.bits.sign = X##_s; \
+ (val) = _flo.flt; \
+ } \
+ while (0)
+
+#define _FP_PACK_RAW_4_P(fs, val, X) \
+ do \
+ { \
+ union _FP_UNION_##fs *_flo = (union _FP_UNION_##fs *) (val); \
+ \
+ _flo->bits.frac0 = X##_f[0]; \
+ _flo->bits.frac1 = X##_f[1]; \
+ _flo->bits.frac2 = X##_f[2]; \
+ _flo->bits.frac3 = X##_f[3]; \
+ _flo->bits.exp = X##_e; \
+ _flo->bits.sign = X##_s; \
+ } \
+ while (0)
/*
* Multiplication algorithms:
@@ -248,200 +263,216 @@
/* Given a 1W * 1W => 2W primitive, do the extended multiplication. */
-#define _FP_MUL_MEAT_DW_4_wide(wfracbits, R, X, Y, doit) \
- do { \
- _FP_FRAC_DECL_2(_b); _FP_FRAC_DECL_2(_c); \
- _FP_FRAC_DECL_2(_d); _FP_FRAC_DECL_2(_e); _FP_FRAC_DECL_2(_f); \
- \
- doit(_FP_FRAC_WORD_8(R,1), _FP_FRAC_WORD_8(R,0), X##_f[0], Y##_f[0]); \
- doit(_b_f1, _b_f0, X##_f[0], Y##_f[1]); \
- doit(_c_f1, _c_f0, X##_f[1], Y##_f[0]); \
- doit(_d_f1, _d_f0, X##_f[1], Y##_f[1]); \
- doit(_e_f1, _e_f0, X##_f[0], Y##_f[2]); \
- doit(_f_f1, _f_f0, X##_f[2], Y##_f[0]); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,3),_FP_FRAC_WORD_8(R,2), \
- _FP_FRAC_WORD_8(R,1), 0,_b_f1,_b_f0, \
- 0,0,_FP_FRAC_WORD_8(R,1)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,3),_FP_FRAC_WORD_8(R,2), \
- _FP_FRAC_WORD_8(R,1), 0,_c_f1,_c_f0, \
- _FP_FRAC_WORD_8(R,3),_FP_FRAC_WORD_8(R,2), \
- _FP_FRAC_WORD_8(R,1)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,4),_FP_FRAC_WORD_8(R,3), \
- _FP_FRAC_WORD_8(R,2), 0,_d_f1,_d_f0, \
- 0,_FP_FRAC_WORD_8(R,3),_FP_FRAC_WORD_8(R,2)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,4),_FP_FRAC_WORD_8(R,3), \
- _FP_FRAC_WORD_8(R,2), 0,_e_f1,_e_f0, \
- _FP_FRAC_WORD_8(R,4),_FP_FRAC_WORD_8(R,3), \
- _FP_FRAC_WORD_8(R,2)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,4),_FP_FRAC_WORD_8(R,3), \
- _FP_FRAC_WORD_8(R,2), 0,_f_f1,_f_f0, \
- _FP_FRAC_WORD_8(R,4),_FP_FRAC_WORD_8(R,3), \
- _FP_FRAC_WORD_8(R,2)); \
- doit(_b_f1, _b_f0, X##_f[0], Y##_f[3]); \
- doit(_c_f1, _c_f0, X##_f[3], Y##_f[0]); \
- doit(_d_f1, _d_f0, X##_f[1], Y##_f[2]); \
- doit(_e_f1, _e_f0, X##_f[2], Y##_f[1]); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,5),_FP_FRAC_WORD_8(R,4), \
- _FP_FRAC_WORD_8(R,3), 0,_b_f1,_b_f0, \
- 0,_FP_FRAC_WORD_8(R,4),_FP_FRAC_WORD_8(R,3)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,5),_FP_FRAC_WORD_8(R,4), \
- _FP_FRAC_WORD_8(R,3), 0,_c_f1,_c_f0, \
- _FP_FRAC_WORD_8(R,5),_FP_FRAC_WORD_8(R,4), \
- _FP_FRAC_WORD_8(R,3)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,5),_FP_FRAC_WORD_8(R,4), \
- _FP_FRAC_WORD_8(R,3), 0,_d_f1,_d_f0, \
- _FP_FRAC_WORD_8(R,5),_FP_FRAC_WORD_8(R,4), \
- _FP_FRAC_WORD_8(R,3)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,5),_FP_FRAC_WORD_8(R,4), \
- _FP_FRAC_WORD_8(R,3), 0,_e_f1,_e_f0, \
- _FP_FRAC_WORD_8(R,5),_FP_FRAC_WORD_8(R,4), \
- _FP_FRAC_WORD_8(R,3)); \
- doit(_b_f1, _b_f0, X##_f[2], Y##_f[2]); \
- doit(_c_f1, _c_f0, X##_f[1], Y##_f[3]); \
- doit(_d_f1, _d_f0, X##_f[3], Y##_f[1]); \
- doit(_e_f1, _e_f0, X##_f[2], Y##_f[3]); \
- doit(_f_f1, _f_f0, X##_f[3], Y##_f[2]); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,6),_FP_FRAC_WORD_8(R,5), \
- _FP_FRAC_WORD_8(R,4), 0,_b_f1,_b_f0, \
- 0,_FP_FRAC_WORD_8(R,5),_FP_FRAC_WORD_8(R,4)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,6),_FP_FRAC_WORD_8(R,5), \
- _FP_FRAC_WORD_8(R,4), 0,_c_f1,_c_f0, \
- _FP_FRAC_WORD_8(R,6),_FP_FRAC_WORD_8(R,5), \
- _FP_FRAC_WORD_8(R,4)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,6),_FP_FRAC_WORD_8(R,5), \
- _FP_FRAC_WORD_8(R,4), 0,_d_f1,_d_f0, \
- _FP_FRAC_WORD_8(R,6),_FP_FRAC_WORD_8(R,5), \
- _FP_FRAC_WORD_8(R,4)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,7),_FP_FRAC_WORD_8(R,6), \
- _FP_FRAC_WORD_8(R,5), 0,_e_f1,_e_f0, \
- 0,_FP_FRAC_WORD_8(R,6),_FP_FRAC_WORD_8(R,5)); \
- __FP_FRAC_ADD_3(_FP_FRAC_WORD_8(R,7),_FP_FRAC_WORD_8(R,6), \
- _FP_FRAC_WORD_8(R,5), 0,_f_f1,_f_f0, \
- _FP_FRAC_WORD_8(R,7),_FP_FRAC_WORD_8(R,6), \
- _FP_FRAC_WORD_8(R,5)); \
- doit(_b_f1, _b_f0, X##_f[3], Y##_f[3]); \
- __FP_FRAC_ADD_2(_FP_FRAC_WORD_8(R,7),_FP_FRAC_WORD_8(R,6), \
- _b_f1,_b_f0, \
- _FP_FRAC_WORD_8(R,7),_FP_FRAC_WORD_8(R,6)); \
- } while (0)
-
-#define _FP_MUL_MEAT_4_wide(wfracbits, R, X, Y, doit) \
- do { \
- _FP_FRAC_DECL_8(_z); \
- \
- _FP_MUL_MEAT_DW_4_wide(wfracbits, _z, X, Y, doit); \
- \
- /* Normalize since we know where the msb of the multiplicands \
- were (bit B), we know that the msb of the of the product is \
- at either 2B or 2B-1. */ \
- _FP_FRAC_SRS_8(_z, wfracbits-1, 2*wfracbits); \
- __FP_FRAC_SET_4(R, _FP_FRAC_WORD_8(_z,3), _FP_FRAC_WORD_8(_z,2), \
- _FP_FRAC_WORD_8(_z,1), _FP_FRAC_WORD_8(_z,0)); \
- } while (0)
-
-#define _FP_MUL_MEAT_DW_4_gmp(wfracbits, R, X, Y) \
- do { \
- mpn_mul_n(R##_f, _x_f, _y_f, 4); \
- } while (0)
-
-#define _FP_MUL_MEAT_4_gmp(wfracbits, R, X, Y) \
- do { \
- _FP_FRAC_DECL_8(_z); \
- \
- _FP_MUL_MEAT_DW_4_gmp(wfracbits, _z, X, Y); \
- \
- /* Normalize since we know where the msb of the multiplicands \
- were (bit B), we know that the msb of the of the product is \
- at either 2B or 2B-1. */ \
- _FP_FRAC_SRS_8(_z, wfracbits-1, 2*wfracbits); \
- __FP_FRAC_SET_4(R, _FP_FRAC_WORD_8(_z,3), _FP_FRAC_WORD_8(_z,2), \
- _FP_FRAC_WORD_8(_z,1), _FP_FRAC_WORD_8(_z,0)); \
- } while (0)
+#define _FP_MUL_MEAT_DW_4_wide(wfracbits, R, X, Y, doit) \
+ do \
+ { \
+ _FP_FRAC_DECL_2 (_b); \
+ _FP_FRAC_DECL_2 (_c); \
+ _FP_FRAC_DECL_2 (_d); \
+ _FP_FRAC_DECL_2 (_e); \
+ _FP_FRAC_DECL_2 (_f); \
+ \
+ doit (_FP_FRAC_WORD_8 (R, 1), _FP_FRAC_WORD_8 (R, 0), X##_f[0], Y##_f[0]); \
+ doit (_b_f1, _b_f0, X##_f[0], Y##_f[1]); \
+ doit (_c_f1, _c_f0, X##_f[1], Y##_f[0]); \
+ doit (_d_f1, _d_f0, X##_f[1], Y##_f[1]); \
+ doit (_e_f1, _e_f0, X##_f[0], Y##_f[2]); \
+ doit (_f_f1, _f_f0, X##_f[2], Y##_f[0]); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 3), _FP_FRAC_WORD_8 (R, 2), \
+ _FP_FRAC_WORD_8 (R, 1), 0, _b_f1, _b_f0, \
+ 0, 0, _FP_FRAC_WORD_8 (R, 1)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 3), _FP_FRAC_WORD_8 (R, 2), \
+ _FP_FRAC_WORD_8 (R, 1), 0, _c_f1, _c_f0, \
+ _FP_FRAC_WORD_8 (R, 3), _FP_FRAC_WORD_8 (R, 2), \
+ _FP_FRAC_WORD_8 (R, 1)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 4), _FP_FRAC_WORD_8 (R, 3), \
+ _FP_FRAC_WORD_8 (R, 2), 0, _d_f1, _d_f0, \
+ 0, _FP_FRAC_WORD_8 (R, 3), _FP_FRAC_WORD_8 (R, 2)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 4), _FP_FRAC_WORD_8 (R, 3), \
+ _FP_FRAC_WORD_8 (R, 2), 0, _e_f1, _e_f0, \
+ _FP_FRAC_WORD_8 (R, 4), _FP_FRAC_WORD_8 (R, 3), \
+ _FP_FRAC_WORD_8 (R, 2)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 4), _FP_FRAC_WORD_8 (R, 3), \
+ _FP_FRAC_WORD_8 (R, 2), 0, _f_f1, _f_f0, \
+ _FP_FRAC_WORD_8 (R, 4), _FP_FRAC_WORD_8 (R, 3), \
+ _FP_FRAC_WORD_8 (R, 2)); \
+ doit (_b_f1, _b_f0, X##_f[0], Y##_f[3]); \
+ doit (_c_f1, _c_f0, X##_f[3], Y##_f[0]); \
+ doit (_d_f1, _d_f0, X##_f[1], Y##_f[2]); \
+ doit (_e_f1, _e_f0, X##_f[2], Y##_f[1]); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 5), _FP_FRAC_WORD_8 (R, 4), \
+ _FP_FRAC_WORD_8 (R, 3), 0, _b_f1, _b_f0, \
+ 0, _FP_FRAC_WORD_8 (R, 4), _FP_FRAC_WORD_8 (R, 3)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 5), _FP_FRAC_WORD_8 (R, 4), \
+ _FP_FRAC_WORD_8 (R, 3), 0, _c_f1, _c_f0, \
+ _FP_FRAC_WORD_8 (R, 5), _FP_FRAC_WORD_8 (R, 4), \
+ _FP_FRAC_WORD_8 (R, 3)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 5), _FP_FRAC_WORD_8 (R, 4), \
+ _FP_FRAC_WORD_8 (R, 3), 0, _d_f1, _d_f0, \
+ _FP_FRAC_WORD_8 (R, 5), _FP_FRAC_WORD_8 (R, 4), \
+ _FP_FRAC_WORD_8 (R, 3)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 5), _FP_FRAC_WORD_8 (R, 4), \
+ _FP_FRAC_WORD_8 (R, 3), 0, _e_f1, _e_f0, \
+ _FP_FRAC_WORD_8 (R, 5), _FP_FRAC_WORD_8 (R, 4), \
+ _FP_FRAC_WORD_8 (R, 3)); \
+ doit (_b_f1, _b_f0, X##_f[2], Y##_f[2]); \
+ doit (_c_f1, _c_f0, X##_f[1], Y##_f[3]); \
+ doit (_d_f1, _d_f0, X##_f[3], Y##_f[1]); \
+ doit (_e_f1, _e_f0, X##_f[2], Y##_f[3]); \
+ doit (_f_f1, _f_f0, X##_f[3], Y##_f[2]); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 6), _FP_FRAC_WORD_8 (R, 5), \
+ _FP_FRAC_WORD_8 (R, 4), 0, _b_f1, _b_f0, \
+ 0, _FP_FRAC_WORD_8 (R, 5), _FP_FRAC_WORD_8 (R, 4)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 6), _FP_FRAC_WORD_8 (R, 5), \
+ _FP_FRAC_WORD_8 (R, 4), 0, _c_f1, _c_f0, \
+ _FP_FRAC_WORD_8 (R, 6), _FP_FRAC_WORD_8 (R, 5), \
+ _FP_FRAC_WORD_8 (R, 4)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 6), _FP_FRAC_WORD_8 (R, 5), \
+ _FP_FRAC_WORD_8 (R, 4), 0, _d_f1, _d_f0, \
+ _FP_FRAC_WORD_8 (R, 6), _FP_FRAC_WORD_8 (R, 5), \
+ _FP_FRAC_WORD_8 (R, 4)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 7), _FP_FRAC_WORD_8 (R, 6), \
+ _FP_FRAC_WORD_8 (R, 5), 0, _e_f1, _e_f0, \
+ 0, _FP_FRAC_WORD_8 (R, 6), _FP_FRAC_WORD_8 (R, 5)); \
+ __FP_FRAC_ADD_3 (_FP_FRAC_WORD_8 (R, 7), _FP_FRAC_WORD_8 (R, 6), \
+ _FP_FRAC_WORD_8 (R, 5), 0, _f_f1, _f_f0, \
+ _FP_FRAC_WORD_8 (R, 7), _FP_FRAC_WORD_8 (R, 6), \
+ _FP_FRAC_WORD_8 (R, 5)); \
+ doit (_b_f1, _b_f0, X##_f[3], Y##_f[3]); \
+ __FP_FRAC_ADD_2 (_FP_FRAC_WORD_8 (R, 7), _FP_FRAC_WORD_8 (R, 6), \
+ _b_f1, _b_f0, \
+ _FP_FRAC_WORD_8 (R, 7), _FP_FRAC_WORD_8 (R, 6)); \
+ } \
+ while (0)
+
+#define _FP_MUL_MEAT_4_wide(wfracbits, R, X, Y, doit) \
+ do \
+ { \
+ _FP_FRAC_DECL_8 (_z); \
+ \
+ _FP_MUL_MEAT_DW_4_wide (wfracbits, _z, X, Y, doit); \
+ \
+ /* Normalize since we know where the msb of the multiplicands \
+ were (bit B), we know that the msb of the of the product is \
+ at either 2B or 2B-1. */ \
+ _FP_FRAC_SRS_8 (_z, wfracbits-1, 2*wfracbits); \
+ __FP_FRAC_SET_4 (R, _FP_FRAC_WORD_8 (_z, 3), _FP_FRAC_WORD_8 (_z, 2), \
+ _FP_FRAC_WORD_8 (_z, 1), _FP_FRAC_WORD_8 (_z, 0)); \
+ } \
+ while (0)
+
+#define _FP_MUL_MEAT_DW_4_gmp(wfracbits, R, X, Y) \
+ do \
+ { \
+ mpn_mul_n (R##_f, _x_f, _y_f, 4); \
+ } \
+ while (0)
+
+#define _FP_MUL_MEAT_4_gmp(wfracbits, R, X, Y) \
+ do \
+ { \
+ _FP_FRAC_DECL_8 (_z); \
+ \
+ _FP_MUL_MEAT_DW_4_gmp (wfracbits, _z, X, Y); \
+ \
+ /* Normalize since we know where the msb of the multiplicands \
+ were (bit B), we know that the msb of the of the product is \
+ at either 2B or 2B-1. */ \
+ _FP_FRAC_SRS_8 (_z, wfracbits-1, 2*wfracbits); \
+ __FP_FRAC_SET_4 (R, _FP_FRAC_WORD_8 (_z, 3), _FP_FRAC_WORD_8 (_z, 2), \
+ _FP_FRAC_WORD_8 (_z, 1), _FP_FRAC_WORD_8 (_z, 0)); \
+ } \
+ while (0)
/*
* Helper utility for _FP_DIV_MEAT_4_udiv:
* pppp = m * nnn
*/
-#define umul_ppppmnnn(p3,p2,p1,p0,m,n2,n1,n0) \
- do { \
- UWtype _t; \
- umul_ppmm(p1,p0,m,n0); \
- umul_ppmm(p2,_t,m,n1); \
- __FP_FRAC_ADDI_2(p2,p1,_t); \
- umul_ppmm(p3,_t,m,n2); \
- __FP_FRAC_ADDI_2(p3,p2,_t); \
- } while (0)
+#define umul_ppppmnnn(p3, p2, p1, p0, m, n2, n1, n0) \
+ do \
+ { \
+ UWtype _t; \
+ umul_ppmm (p1, p0, m, n0); \
+ umul_ppmm (p2, _t, m, n1); \
+ __FP_FRAC_ADDI_2 (p2, p1, _t); \
+ umul_ppmm (p3, _t, m, n2); \
+ __FP_FRAC_ADDI_2 (p3, p2, _t); \
+ } \
+ while (0)
/*
* Division algorithms:
*/
-#define _FP_DIV_MEAT_4_udiv(fs, R, X, Y) \
- do { \
- int _i; \
- _FP_FRAC_DECL_4(_n); _FP_FRAC_DECL_4(_m); \
- _FP_FRAC_SET_4(_n, _FP_ZEROFRAC_4); \
- if (_FP_FRAC_GT_4(X, Y)) \
- { \
- _n_f[3] = X##_f[0] << (_FP_W_TYPE_SIZE - 1); \
- _FP_FRAC_SRL_4(X, 1); \
- } \
- else \
- R##_e--; \
- \
- /* Normalize, i.e. make the most significant bit of the \
- denominator set. */ \
- _FP_FRAC_SLL_4(Y, _FP_WFRACXBITS_##fs); \
- \
- for (_i = 3; ; _i--) \
- { \
- if (X##_f[3] == Y##_f[3]) \
- { \
- /* This is a special case, not an optimization \
- (X##_f[3]/Y##_f[3] would not fit into UWtype). \
- As X## is guaranteed to be < Y, R##_f[_i] can be either \
- (UWtype)-1 or (UWtype)-2. */ \
- R##_f[_i] = -1; \
- if (!_i) \
- break; \
- __FP_FRAC_SUB_4(X##_f[3], X##_f[2], X##_f[1], X##_f[0], \
- Y##_f[2], Y##_f[1], Y##_f[0], 0, \
- X##_f[2], X##_f[1], X##_f[0], _n_f[_i]); \
- _FP_FRAC_SUB_4(X, Y, X); \
- if (X##_f[3] > Y##_f[3]) \
- { \
- R##_f[_i] = -2; \
- _FP_FRAC_ADD_4(X, Y, X); \
- } \
- } \
- else \
- { \
- udiv_qrnnd(R##_f[_i], X##_f[3], X##_f[3], X##_f[2], Y##_f[3]); \
- umul_ppppmnnn(_m_f[3], _m_f[2], _m_f[1], _m_f[0], \
- R##_f[_i], Y##_f[2], Y##_f[1], Y##_f[0]); \
- X##_f[2] = X##_f[1]; \
- X##_f[1] = X##_f[0]; \
- X##_f[0] = _n_f[_i]; \
- if (_FP_FRAC_GT_4(_m, X)) \
- { \
- R##_f[_i]--; \
- _FP_FRAC_ADD_4(X, Y, X); \
- if (_FP_FRAC_GE_4(X, Y) && _FP_FRAC_GT_4(_m, X)) \
- { \
- R##_f[_i]--; \
- _FP_FRAC_ADD_4(X, Y, X); \
- } \
- } \
- _FP_FRAC_DEC_4(X, _m); \
- if (!_i) \
- { \
- if (!_FP_FRAC_EQ_4(X, _m)) \
- R##_f[0] |= _FP_WORK_STICKY; \
- break; \
- } \
- } \
- } \
- } while (0)
+#define _FP_DIV_MEAT_4_udiv(fs, R, X, Y) \
+ do \
+ { \
+ int _i; \
+ _FP_FRAC_DECL_4 (_n); \
+ _FP_FRAC_DECL_4 (_m); \
+ _FP_FRAC_SET_4 (_n, _FP_ZEROFRAC_4); \
+ if (_FP_FRAC_GE_4 (X, Y)) \
+ { \
+ _n_f[3] = X##_f[0] << (_FP_W_TYPE_SIZE - 1); \
+ _FP_FRAC_SRL_4 (X, 1); \
+ } \
+ else \
+ R##_e--; \
+ \
+ /* Normalize, i.e. make the most significant bit of the \
+ denominator set. */ \
+ _FP_FRAC_SLL_4 (Y, _FP_WFRACXBITS_##fs); \
+ \
+ for (_i = 3; ; _i--) \
+ { \
+ if (X##_f[3] == Y##_f[3]) \
+ { \
+ /* This is a special case, not an optimization \
+ (X##_f[3]/Y##_f[3] would not fit into UWtype). \
+ As X## is guaranteed to be < Y, R##_f[_i] can be either \
+ (UWtype)-1 or (UWtype)-2. */ \
+ R##_f[_i] = -1; \
+ if (!_i) \
+ break; \
+ __FP_FRAC_SUB_4 (X##_f[3], X##_f[2], X##_f[1], X##_f[0], \
+ Y##_f[2], Y##_f[1], Y##_f[0], 0, \
+ X##_f[2], X##_f[1], X##_f[0], _n_f[_i]); \
+ _FP_FRAC_SUB_4 (X, Y, X); \
+ if (X##_f[3] > Y##_f[3]) \
+ { \
+ R##_f[_i] = -2; \
+ _FP_FRAC_ADD_4 (X, Y, X); \
+ } \
+ } \
+ else \
+ { \
+ udiv_qrnnd (R##_f[_i], X##_f[3], X##_f[3], X##_f[2], Y##_f[3]); \
+ umul_ppppmnnn (_m_f[3], _m_f[2], _m_f[1], _m_f[0], \
+ R##_f[_i], Y##_f[2], Y##_f[1], Y##_f[0]); \
+ X##_f[2] = X##_f[1]; \
+ X##_f[1] = X##_f[0]; \
+ X##_f[0] = _n_f[_i]; \
+ if (_FP_FRAC_GT_4 (_m, X)) \
+ { \
+ R##_f[_i]--; \
+ _FP_FRAC_ADD_4 (X, Y, X); \
+ if (_FP_FRAC_GE_4 (X, Y) && _FP_FRAC_GT_4 (_m, X)) \
+ { \
+ R##_f[_i]--; \
+ _FP_FRAC_ADD_4 (X, Y, X); \
+ } \
+ } \
+ _FP_FRAC_DEC_4 (X, _m); \
+ if (!_i) \
+ { \
+ if (!_FP_FRAC_EQ_4 (X, _m)) \
+ R##_f[0] |= _FP_WORK_STICKY; \
+ break; \
+ } \
+ } \
+ } \
+ } \
+ while (0)
/*
@@ -450,183 +481,203 @@
* should be added for those machines where division is fast.
*/
-#define _FP_SQRT_MEAT_4(R, S, T, X, q) \
- do { \
- while (q) \
- { \
- T##_f[3] = S##_f[3] + q; \
- if (T##_f[3] <= X##_f[3]) \
- { \
- S##_f[3] = T##_f[3] + q; \
- X##_f[3] -= T##_f[3]; \
- R##_f[3] += q; \
- } \
- _FP_FRAC_SLL_4(X, 1); \
- q >>= 1; \
- } \
- q = (_FP_W_TYPE)1 << (_FP_W_TYPE_SIZE - 1); \
- while (q) \
- { \
- T##_f[2] = S##_f[2] + q; \
- T##_f[3] = S##_f[3]; \
- if (T##_f[3] < X##_f[3] || \
- (T##_f[3] == X##_f[3] && T##_f[2] <= X##_f[2])) \
- { \
- S##_f[2] = T##_f[2] + q; \
- S##_f[3] += (T##_f[2] > S##_f[2]); \
- __FP_FRAC_DEC_2(X##_f[3], X##_f[2], \
- T##_f[3], T##_f[2]); \
- R##_f[2] += q; \
- } \
- _FP_FRAC_SLL_4(X, 1); \
- q >>= 1; \
- } \
- q = (_FP_W_TYPE)1 << (_FP_W_TYPE_SIZE - 1); \
- while (q) \
- { \
- T##_f[1] = S##_f[1] + q; \
- T##_f[2] = S##_f[2]; \
- T##_f[3] = S##_f[3]; \
- if (T##_f[3] < X##_f[3] || \
- (T##_f[3] == X##_f[3] && (T##_f[2] < X##_f[2] || \
- (T##_f[2] == X##_f[2] && T##_f[1] <= X##_f[1])))) \
- { \
- S##_f[1] = T##_f[1] + q; \
- S##_f[2] += (T##_f[1] > S##_f[1]); \
- S##_f[3] += (T##_f[2] > S##_f[2]); \
- __FP_FRAC_DEC_3(X##_f[3], X##_f[2], X##_f[1], \
- T##_f[3], T##_f[2], T##_f[1]); \
- R##_f[1] += q; \
- } \
- _FP_FRAC_SLL_4(X, 1); \
- q >>= 1; \
- } \
- q = (_FP_W_TYPE)1 << (_FP_W_TYPE_SIZE - 1); \
- while (q != _FP_WORK_ROUND) \
- { \
- T##_f[0] = S##_f[0] + q; \
- T##_f[1] = S##_f[1]; \
- T##_f[2] = S##_f[2]; \
- T##_f[3] = S##_f[3]; \
- if (_FP_FRAC_GE_4(X,T)) \
- { \
- S##_f[0] = T##_f[0] + q; \
- S##_f[1] += (T##_f[0] > S##_f[0]); \
- S##_f[2] += (T##_f[1] > S##_f[1]); \
- S##_f[3] += (T##_f[2] > S##_f[2]); \
- _FP_FRAC_DEC_4(X, T); \
- R##_f[0] += q; \
- } \
- _FP_FRAC_SLL_4(X, 1); \
- q >>= 1; \
- } \
- if (!_FP_FRAC_ZEROP_4(X)) \
- { \
- if (_FP_FRAC_GT_4(X,S)) \
- R##_f[0] |= _FP_WORK_ROUND; \
- R##_f[0] |= _FP_WORK_STICKY; \
- } \
- } while (0)
+#define _FP_SQRT_MEAT_4(R, S, T, X, q) \
+ do \
+ { \
+ while (q) \
+ { \
+ T##_f[3] = S##_f[3] + q; \
+ if (T##_f[3] <= X##_f[3]) \
+ { \
+ S##_f[3] = T##_f[3] + q; \
+ X##_f[3] -= T##_f[3]; \
+ R##_f[3] += q; \
+ } \
+ _FP_FRAC_SLL_4 (X, 1); \
+ q >>= 1; \
+ } \
+ q = (_FP_W_TYPE) 1 << (_FP_W_TYPE_SIZE - 1); \
+ while (q) \
+ { \
+ T##_f[2] = S##_f[2] + q; \
+ T##_f[3] = S##_f[3]; \
+ if (T##_f[3] < X##_f[3] \
+ || (T##_f[3] == X##_f[3] && T##_f[2] <= X##_f[2])) \
+ { \
+ S##_f[2] = T##_f[2] + q; \
+ S##_f[3] += (T##_f[2] > S##_f[2]); \
+ __FP_FRAC_DEC_2 (X##_f[3], X##_f[2], \
+ T##_f[3], T##_f[2]); \
+ R##_f[2] += q; \
+ } \
+ _FP_FRAC_SLL_4 (X, 1); \
+ q >>= 1; \
+ } \
+ q = (_FP_W_TYPE) 1 << (_FP_W_TYPE_SIZE - 1); \
+ while (q) \
+ { \
+ T##_f[1] = S##_f[1] + q; \
+ T##_f[2] = S##_f[2]; \
+ T##_f[3] = S##_f[3]; \
+ if (T##_f[3] < X##_f[3] \
+ || (T##_f[3] == X##_f[3] \
+ && (T##_f[2] < X##_f[2] \
+ || (T##_f[2] == X##_f[2] \
+ && T##_f[1] <= X##_f[1])))) \
+ { \
+ S##_f[1] = T##_f[1] + q; \
+ S##_f[2] += (T##_f[1] > S##_f[1]); \
+ S##_f[3] += (T##_f[2] > S##_f[2]); \
+ __FP_FRAC_DEC_3 (X##_f[3], X##_f[2], X##_f[1], \
+ T##_f[3], T##_f[2], T##_f[1]); \
+ R##_f[1] += q; \
+ } \
+ _FP_FRAC_SLL_4 (X, 1); \
+ q >>= 1; \
+ } \
+ q = (_FP_W_TYPE) 1 << (_FP_W_TYPE_SIZE - 1); \
+ while (q != _FP_WORK_ROUND) \
+ { \
+ T##_f[0] = S##_f[0] + q; \
+ T##_f[1] = S##_f[1]; \
+ T##_f[2] = S##_f[2]; \
+ T##_f[3] = S##_f[3]; \
+ if (_FP_FRAC_GE_4 (X, T)) \
+ { \
+ S##_f[0] = T##_f[0] + q; \
+ S##_f[1] += (T##_f[0] > S##_f[0]); \
+ S##_f[2] += (T##_f[1] > S##_f[1]); \
+ S##_f[3] += (T##_f[2] > S##_f[2]); \
+ _FP_FRAC_DEC_4 (X, T); \
+ R##_f[0] += q; \
+ } \
+ _FP_FRAC_SLL_4 (X, 1); \
+ q >>= 1; \
+ } \
+ if (!_FP_FRAC_ZEROP_4 (X)) \
+ { \
+ if (_FP_FRAC_GT_4 (X, S)) \
+ R##_f[0] |= _FP_WORK_ROUND; \
+ R##_f[0] |= _FP_WORK_STICKY; \
+ } \
+ } \
+ while (0)
/*
* Internals
*/
-#define __FP_FRAC_SET_4(X,I3,I2,I1,I0) \
+#define __FP_FRAC_SET_4(X, I3, I2, I1, I0) \
(X##_f[3] = I3, X##_f[2] = I2, X##_f[1] = I1, X##_f[0] = I0)
#ifndef __FP_FRAC_ADD_3
-#define __FP_FRAC_ADD_3(r2,r1,r0,x2,x1,x0,y2,y1,y0) \
- do { \
- _FP_W_TYPE __FP_FRAC_ADD_3_c1, __FP_FRAC_ADD_3_c2; \
- r0 = x0 + y0; \
- __FP_FRAC_ADD_3_c1 = r0 < x0; \
- r1 = x1 + y1; \
- __FP_FRAC_ADD_3_c2 = r1 < x1; \
- r1 += __FP_FRAC_ADD_3_c1; \
- __FP_FRAC_ADD_3_c2 |= r1 < __FP_FRAC_ADD_3_c1; \
- r2 = x2 + y2 + __FP_FRAC_ADD_3_c2; \
- } while (0)
+# define __FP_FRAC_ADD_3(r2, r1, r0, x2, x1, x0, y2, y1, y0) \
+ do \
+ { \
+ _FP_W_TYPE __FP_FRAC_ADD_3_c1, __FP_FRAC_ADD_3_c2; \
+ r0 = x0 + y0; \
+ __FP_FRAC_ADD_3_c1 = r0 < x0; \
+ r1 = x1 + y1; \
+ __FP_FRAC_ADD_3_c2 = r1 < x1; \
+ r1 += __FP_FRAC_ADD_3_c1; \
+ __FP_FRAC_ADD_3_c2 |= r1 < __FP_FRAC_ADD_3_c1; \
+ r2 = x2 + y2 + __FP_FRAC_ADD_3_c2; \
+ } \
+ while (0)
#endif
#ifndef __FP_FRAC_ADD_4
-#define __FP_FRAC_ADD_4(r3,r2,r1,r0,x3,x2,x1,x0,y3,y2,y1,y0) \
- do { \
- _FP_W_TYPE _c1, _c2, _c3; \
- r0 = x0 + y0; \
- _c1 = r0 < x0; \
- r1 = x1 + y1; \
- _c2 = r1 < x1; \
- r1 += _c1; \
- _c2 |= r1 < _c1; \
- r2 = x2 + y2; \
- _c3 = r2 < x2; \
- r2 += _c2; \
- _c3 |= r2 < _c2; \
- r3 = x3 + y3 + _c3; \
- } while (0)
+# define __FP_FRAC_ADD_4(r3, r2, r1, r0, x3, x2, x1, x0, y3, y2, y1, y0) \
+ do \
+ { \
+ _FP_W_TYPE _c1, _c2, _c3; \
+ r0 = x0 + y0; \
+ _c1 = r0 < x0; \
+ r1 = x1 + y1; \
+ _c2 = r1 < x1; \
+ r1 += _c1; \
+ _c2 |= r1 < _c1; \
+ r2 = x2 + y2; \
+ _c3 = r2 < x2; \
+ r2 += _c2; \
+ _c3 |= r2 < _c2; \
+ r3 = x3 + y3 + _c3; \
+ } \
+ while (0)
#endif
#ifndef __FP_FRAC_SUB_3
-#define __FP_FRAC_SUB_3(r2,r1,r0,x2,x1,x0,y2,y1,y0) \
- do { \
- _FP_W_TYPE _c1, _c2; \
- r0 = x0 - y0; \
- _c1 = r0 > x0; \
- r1 = x1 - y1; \
- _c2 = r1 > x1; \
- r1 -= _c1; \
- _c2 |= _c1 && (y1 == x1); \
- r2 = x2 - y2 - _c2; \
- } while (0)
+# define __FP_FRAC_SUB_3(r2, r1, r0, x2, x1, x0, y2, y1, y0) \
+ do \
+ { \
+ _FP_W_TYPE _c1, _c2; \
+ r0 = x0 - y0; \
+ _c1 = r0 > x0; \
+ r1 = x1 - y1; \
+ _c2 = r1 > x1; \
+ r1 -= _c1; \
+ _c2 |= _c1 && (y1 == x1); \
+ r2 = x2 - y2 - _c2; \
+ } \
+ while (0)
#endif
#ifndef __FP_FRAC_SUB_4
-#define __FP_FRAC_SUB_4(r3,r2,r1,r0,x3,x2,x1,x0,y3,y2,y1,y0) \
- do { \
- _FP_W_TYPE _c1, _c2, _c3; \
- r0 = x0 - y0; \
- _c1 = r0 > x0; \
- r1 = x1 - y1; \
- _c2 = r1 > x1; \
- r1 -= _c1; \
- _c2 |= _c1 && (y1 == x1); \
- r2 = x2 - y2; \
- _c3 = r2 > x2; \
- r2 -= _c2; \
- _c3 |= _c2 && (y2 == x2); \
- r3 = x3 - y3 - _c3; \
- } while (0)
+# define __FP_FRAC_SUB_4(r3, r2, r1, r0, x3, x2, x1, x0, y3, y2, y1, y0) \
+ do \
+ { \
+ _FP_W_TYPE _c1, _c2, _c3; \
+ r0 = x0 - y0; \
+ _c1 = r0 > x0; \
+ r1 = x1 - y1; \
+ _c2 = r1 > x1; \
+ r1 -= _c1; \
+ _c2 |= _c1 && (y1 == x1); \
+ r2 = x2 - y2; \
+ _c3 = r2 > x2; \
+ r2 -= _c2; \
+ _c3 |= _c2 && (y2 == x2); \
+ r3 = x3 - y3 - _c3; \
+ } \
+ while (0)
#endif
#ifndef __FP_FRAC_DEC_3
-#define __FP_FRAC_DEC_3(x2,x1,x0,y2,y1,y0) \
- do { \
- UWtype _t0, _t1, _t2; \
- _t0 = x0, _t1 = x1, _t2 = x2; \
- __FP_FRAC_SUB_3 (x2, x1, x0, _t2, _t1, _t0, y2, y1, y0); \
- } while (0)
+# define __FP_FRAC_DEC_3(x2, x1, x0, y2, y1, y0) \
+ do \
+ { \
+ UWtype _t0, _t1, _t2; \
+ _t0 = x0, _t1 = x1, _t2 = x2; \
+ __FP_FRAC_SUB_3 (x2, x1, x0, _t2, _t1, _t0, y2, y1, y0); \
+ } \
+ while (0)
#endif
#ifndef __FP_FRAC_DEC_4
-#define __FP_FRAC_DEC_4(x3,x2,x1,x0,y3,y2,y1,y0) \
- do { \
- UWtype _t0, _t1, _t2, _t3; \
- _t0 = x0, _t1 = x1, _t2 = x2, _t3 = x3; \
- __FP_FRAC_SUB_4 (x3,x2,x1,x0,_t3,_t2,_t1,_t0, y3,y2,y1,y0); \
- } while (0)
+# define __FP_FRAC_DEC_4(x3, x2, x1, x0, y3, y2, y1, y0) \
+ do \
+ { \
+ UWtype _t0, _t1, _t2, _t3; \
+ _t0 = x0, _t1 = x1, _t2 = x2, _t3 = x3; \
+ __FP_FRAC_SUB_4 (x3, x2, x1, x0, _t3, _t2, _t1, _t0, y3, y2, y1, y0); \
+ } \
+ while (0)
#endif
#ifndef __FP_FRAC_ADDI_4
-#define __FP_FRAC_ADDI_4(x3,x2,x1,x0,i) \
- do { \
- UWtype _t; \
- _t = ((x0 += i) < i); \
- x1 += _t; _t = (x1 < _t); \
- x2 += _t; _t = (x2 < _t); \
- x3 += _t; \
- } while (0)
+# define __FP_FRAC_ADDI_4(x3, x2, x1, x0, i) \
+ do \
+ { \
+ UWtype _t; \
+ _t = ((x0 += i) < i); \
+ x1 += _t; \
+ _t = (x1 < _t); \
+ x2 += _t; \
+ _t = (x2 < _t); \
+ x3 += _t; \
+ } \
+ while (0)
#endif
/* Convert FP values between word sizes. This appears to be more
@@ -639,38 +690,42 @@
#define _FP_FRAC_COPY_1_4(D, S) (D##_f = S##_f[0])
#define _FP_FRAC_COPY_2_4(D, S) \
-do { \
- D##_f0 = S##_f[0]; \
- D##_f1 = S##_f[1]; \
-} while (0)
+ do \
+ { \
+ D##_f0 = S##_f[0]; \
+ D##_f1 = S##_f[1]; \
+ } \
+ while (0)
/* Assembly/disassembly for converting to/from integral types.
* No shifting or overflow handled here.
*/
/* Put the FP value X into r, which is an integer of size rsize. */
#define _FP_FRAC_ASSEMBLE_4(r, X, rsize) \
- do { \
- if (rsize <= _FP_W_TYPE_SIZE) \
- r = X##_f[0]; \
- else if (rsize <= 2*_FP_W_TYPE_SIZE) \
- { \
- r = X##_f[1]; \
- r <<= _FP_W_TYPE_SIZE; \
- r += X##_f[0]; \
- } \
- else \
+ do \
{ \
- /* I'm feeling lazy so we deal with int == 3words (implausible)*/ \
- /* and int == 4words as a single case. */ \
- r = X##_f[3]; \
- r <<= _FP_W_TYPE_SIZE; \
- r += X##_f[2]; \
- r <<= _FP_W_TYPE_SIZE; \
- r += X##_f[1]; \
- r <<= _FP_W_TYPE_SIZE; \
- r += X##_f[0]; \
+ if (rsize <= _FP_W_TYPE_SIZE) \
+ r = X##_f[0]; \
+ else if (rsize <= 2*_FP_W_TYPE_SIZE) \
+ { \
+ r = X##_f[1]; \
+ r = (rsize <= _FP_W_TYPE_SIZE ? 0 : r << _FP_W_TYPE_SIZE); \
+ r += X##_f[0]; \
+ } \
+ else \
+ { \
+ /* I'm feeling lazy so we deal with int == 3words (implausible)*/ \
+ /* and int == 4words as a single case. */ \
+ r = X##_f[3]; \
+ r = (rsize <= _FP_W_TYPE_SIZE ? 0 : r << _FP_W_TYPE_SIZE); \
+ r += X##_f[2]; \
+ r = (rsize <= _FP_W_TYPE_SIZE ? 0 : r << _FP_W_TYPE_SIZE); \
+ r += X##_f[1]; \
+ r = (rsize <= _FP_W_TYPE_SIZE ? 0 : r << _FP_W_TYPE_SIZE); \
+ r += X##_f[0]; \
+ } \
} \
- } while (0)
+ while (0)
/* "No disassemble Number Five!" */
/* move an integer of size rsize into X's fractional part. We rely on
@@ -678,24 +733,30 @@ do { \
* having to mask the values we store into it.
*/
#define _FP_FRAC_DISASSEMBLE_4(X, r, rsize) \
- do { \
- X##_f[0] = r; \
- X##_f[1] = (rsize <= _FP_W_TYPE_SIZE ? 0 : r >> _FP_W_TYPE_SIZE); \
- X##_f[2] = (rsize <= 2*_FP_W_TYPE_SIZE ? 0 : r >> 2*_FP_W_TYPE_SIZE); \
- X##_f[3] = (rsize <= 3*_FP_W_TYPE_SIZE ? 0 : r >> 3*_FP_W_TYPE_SIZE); \
- } while (0);
+ do \
+ { \
+ X##_f[0] = r; \
+ X##_f[1] = (rsize <= _FP_W_TYPE_SIZE ? 0 : r >> _FP_W_TYPE_SIZE); \
+ X##_f[2] = (rsize <= 2*_FP_W_TYPE_SIZE ? 0 : r >> 2*_FP_W_TYPE_SIZE); \
+ X##_f[3] = (rsize <= 3*_FP_W_TYPE_SIZE ? 0 : r >> 3*_FP_W_TYPE_SIZE); \
+ } \
+ while (0)
#define _FP_FRAC_COPY_4_1(D, S) \
-do { \
- D##_f[0] = S##_f; \
- D##_f[1] = D##_f[2] = D##_f[3] = 0; \
-} while (0)
+ do \
+ { \
+ D##_f[0] = S##_f; \
+ D##_f[1] = D##_f[2] = D##_f[3] = 0; \
+ } \
+ while (0)
#define _FP_FRAC_COPY_4_2(D, S) \
-do { \
- D##_f[0] = S##_f0; \
- D##_f[1] = S##_f1; \
- D##_f[2] = D##_f[3] = 0; \
-} while (0)
-
-#define _FP_FRAC_COPY_4_4(D,S) _FP_FRAC_COPY_4(D,S)
+ do \
+ { \
+ D##_f[0] = S##_f0; \
+ D##_f[1] = S##_f1; \
+ D##_f[2] = D##_f[3] = 0; \
+ } \
+ while (0)
+
+#define _FP_FRAC_COPY_4_4(D, S) _FP_FRAC_COPY_4 (D, S)
diff --git a/soft-fp/op-8.h b/soft-fp/op-8.h
index 8890d02201..f1b23db80d 100644
--- a/soft-fp/op-8.h
+++ b/soft-fp/op-8.h
@@ -34,47 +34,51 @@
#define _FP_FRAC_DECL_8(X) _FP_W_TYPE X##_f[8]
#define _FP_FRAC_HIGH_8(X) (X##_f[7])
#define _FP_FRAC_LOW_8(X) (X##_f[0])
-#define _FP_FRAC_WORD_8(X,w) (X##_f[w])
+#define _FP_FRAC_WORD_8(X, w) (X##_f[w])
-#define _FP_FRAC_SLL_8(X,N) \
- do { \
- _FP_I_TYPE _up, _down, _skip, _i; \
- _skip = (N) / _FP_W_TYPE_SIZE; \
- _up = (N) % _FP_W_TYPE_SIZE; \
- _down = _FP_W_TYPE_SIZE - _up; \
- if (!_up) \
- for (_i = 7; _i >= _skip; --_i) \
- X##_f[_i] = X##_f[_i-_skip]; \
- else \
- { \
- for (_i = 7; _i > _skip; --_i) \
- X##_f[_i] = X##_f[_i-_skip] << _up \
- | X##_f[_i-_skip-1] >> _down; \
- X##_f[_i--] = X##_f[0] << _up; \
- } \
- for (; _i >= 0; --_i) \
- X##_f[_i] = 0; \
- } while (0)
+#define _FP_FRAC_SLL_8(X, N) \
+ do \
+ { \
+ _FP_I_TYPE _up, _down, _skip, _i; \
+ _skip = (N) / _FP_W_TYPE_SIZE; \
+ _up = (N) % _FP_W_TYPE_SIZE; \
+ _down = _FP_W_TYPE_SIZE - _up; \
+ if (!_up) \
+ for (_i = 7; _i >= _skip; --_i) \
+ X##_f[_i] = X##_f[_i-_skip]; \
+ else \
+ { \
+ for (_i = 7; _i > _skip; --_i) \
+ X##_f[_i] = (X##_f[_i-_skip] << _up \
+ | X##_f[_i-_skip-1] >> _down); \
+ X##_f[_i--] = X##_f[0] << _up; \
+ } \
+ for (; _i >= 0; --_i) \
+ X##_f[_i] = 0; \
+ } \
+ while (0)
-#define _FP_FRAC_SRL_8(X,N) \
- do { \
- _FP_I_TYPE _up, _down, _skip, _i; \
- _skip = (N) / _FP_W_TYPE_SIZE; \
- _down = (N) % _FP_W_TYPE_SIZE; \
- _up = _FP_W_TYPE_SIZE - _down; \
- if (!_down) \
- for (_i = 0; _i <= 7-_skip; ++_i) \
- X##_f[_i] = X##_f[_i+_skip]; \
- else \
- { \
- for (_i = 0; _i < 7-_skip; ++_i) \
- X##_f[_i] = X##_f[_i+_skip] >> _down \
- | X##_f[_i+_skip+1] << _up; \
- X##_f[_i++] = X##_f[7] >> _down; \
- } \
- for (; _i < 8; ++_i) \
- X##_f[_i] = 0; \
- } while (0)
+#define _FP_FRAC_SRL_8(X, N) \
+ do \
+ { \
+ _FP_I_TYPE _up, _down, _skip, _i; \
+ _skip = (N) / _FP_W_TYPE_SIZE; \
+ _down = (N) % _FP_W_TYPE_SIZE; \
+ _up = _FP_W_TYPE_SIZE - _down; \
+ if (!_down) \
+ for (_i = 0; _i <= 7-_skip; ++_i) \
+ X##_f[_i] = X##_f[_i+_skip]; \
+ else \
+ { \
+ for (_i = 0; _i < 7-_skip; ++_i) \
+ X##_f[_i] = (X##_f[_i+_skip] >> _down \
+ | X##_f[_i+_skip+1] << _up); \
+ X##_f[_i++] = X##_f[7] >> _down; \
+ } \
+ for (; _i < 8; ++_i) \
+ X##_f[_i] = 0; \
+ } \
+ while (0)
/* Right shift with sticky-lsb.
@@ -82,28 +86,31 @@
* but that if any of the bits that fall off the right hand side
* were one then we always set the LSbit.
*/
-#define _FP_FRAC_SRS_8(X,N,size) \
- do { \
- _FP_I_TYPE _up, _down, _skip, _i; \
- _FP_W_TYPE _s; \
- _skip = (N) / _FP_W_TYPE_SIZE; \
- _down = (N) % _FP_W_TYPE_SIZE; \
- _up = _FP_W_TYPE_SIZE - _down; \
- for (_s = _i = 0; _i < _skip; ++_i) \
- _s |= X##_f[_i]; \
- if (!_down) \
- for (_i = 0; _i <= 7-_skip; ++_i) \
- X##_f[_i] = X##_f[_i+_skip]; \
- else \
- { \
- _s |= X##_f[_i] << _up; \
- for (_i = 0; _i < 7-_skip; ++_i) \
- X##_f[_i] = X##_f[_i+_skip] >> _down \
- | X##_f[_i+_skip+1] << _up; \
- X##_f[_i++] = X##_f[7] >> _down; \
- } \
- for (; _i < 8; ++_i) \
- X##_f[_i] = 0; \
- /* don't fix the LSB until the very end when we're sure f[0] is stable */ \
- X##_f[0] |= (_s != 0); \
- } while (0)
+#define _FP_FRAC_SRS_8(X, N, size) \
+ do \
+ { \
+ _FP_I_TYPE _up, _down, _skip, _i; \
+ _FP_W_TYPE _s; \
+ _skip = (N) / _FP_W_TYPE_SIZE; \
+ _down = (N) % _FP_W_TYPE_SIZE; \
+ _up = _FP_W_TYPE_SIZE - _down; \
+ for (_s = _i = 0; _i < _skip; ++_i) \
+ _s |= X##_f[_i]; \
+ if (!_down) \
+ for (_i = 0; _i <= 7-_skip; ++_i) \
+ X##_f[_i] = X##_f[_i+_skip]; \
+ else \
+ { \
+ _s |= X##_f[_i] << _up; \
+ for (_i = 0; _i < 7-_skip; ++_i) \
+ X##_f[_i] = (X##_f[_i+_skip] >> _down \
+ | X##_f[_i+_skip+1] << _up); \
+ X##_f[_i++] = X##_f[7] >> _down; \
+ } \
+ for (; _i < 8; ++_i) \
+ X##_f[_i] = 0; \
+ /* don't fix the LSB until the very end when we're sure f[0] is \
+ stable */ \
+ X##_f[0] |= (_s != 0); \
+ } \
+ while (0)
diff --git a/soft-fp/op-common.h b/soft-fp/op-common.h
index bed1e21fd4..67cdc33b4c 100644
--- a/soft-fp/op-common.h
+++ b/soft-fp/op-common.h
@@ -30,145 +30,157 @@
<http://www.gnu.org/licenses/>. */
#define _FP_DECL(wc, X) \
- _FP_I_TYPE X##_c __attribute__((unused)); \
- _FP_I_TYPE X##_s __attribute__((unused)); \
+ _FP_I_TYPE X##_c __attribute__ ((unused)); \
+ _FP_I_TYPE X##_s __attribute__ ((unused)); \
_FP_I_TYPE X##_e; \
- _FP_FRAC_DECL_##wc(X)
+ _FP_FRAC_DECL_##wc (X)
/* Test whether the qNaN bit denotes a signaling NaN. */
-#define _FP_FRAC_SNANP(fs, X) \
- ((_FP_QNANNEGATEDP) \
- ? (_FP_FRAC_HIGH_RAW_##fs(X) & _FP_QNANBIT_##fs) \
- : !(_FP_FRAC_HIGH_RAW_##fs(X) & _FP_QNANBIT_##fs))
-#define _FP_FRAC_SNANP_SEMIRAW(fs, X) \
- ((_FP_QNANNEGATEDP) \
- ? (_FP_FRAC_HIGH_##fs(X) & _FP_QNANBIT_SH_##fs) \
- : !(_FP_FRAC_HIGH_##fs(X) & _FP_QNANBIT_SH_##fs))
+#define _FP_FRAC_SNANP(fs, X) \
+ ((_FP_QNANNEGATEDP) \
+ ? (_FP_FRAC_HIGH_RAW_##fs (X) & _FP_QNANBIT_##fs) \
+ : !(_FP_FRAC_HIGH_RAW_##fs (X) & _FP_QNANBIT_##fs))
+#define _FP_FRAC_SNANP_SEMIRAW(fs, X) \
+ ((_FP_QNANNEGATEDP) \
+ ? (_FP_FRAC_HIGH_##fs (X) & _FP_QNANBIT_SH_##fs) \
+ : !(_FP_FRAC_HIGH_##fs (X) & _FP_QNANBIT_SH_##fs))
/*
- * Finish truely unpacking a native fp value by classifying the kind
+ * Finish truly unpacking a native fp value by classifying the kind
* of fp value and normalizing both the exponent and the fraction.
*/
-#define _FP_UNPACK_CANONICAL(fs, wc, X) \
-do { \
- switch (X##_e) \
- { \
- default: \
- _FP_FRAC_HIGH_RAW_##fs(X) |= _FP_IMPLBIT_##fs; \
- _FP_FRAC_SLL_##wc(X, _FP_WORKBITS); \
- X##_e -= _FP_EXPBIAS_##fs; \
- X##_c = FP_CLS_NORMAL; \
- break; \
- \
- case 0: \
- if (_FP_FRAC_ZEROP_##wc(X)) \
- X##_c = FP_CLS_ZERO; \
- else \
- { \
- /* a denormalized number */ \
- _FP_I_TYPE _shift; \
- _FP_FRAC_CLZ_##wc(_shift, X); \
- _shift -= _FP_FRACXBITS_##fs; \
- _FP_FRAC_SLL_##wc(X, (_shift+_FP_WORKBITS)); \
- X##_e -= _FP_EXPBIAS_##fs - 1 + _shift; \
- X##_c = FP_CLS_NORMAL; \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- } \
- break; \
- \
- case _FP_EXPMAX_##fs: \
- if (_FP_FRAC_ZEROP_##wc(X)) \
- X##_c = FP_CLS_INF; \
- else \
- { \
- X##_c = FP_CLS_NAN; \
- /* Check for signaling NaN */ \
- if (_FP_FRAC_SNANP(fs, X)) \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
- } \
- break; \
- } \
-} while (0)
+#define _FP_UNPACK_CANONICAL(fs, wc, X) \
+ do \
+ { \
+ switch (X##_e) \
+ { \
+ default: \
+ _FP_FRAC_HIGH_RAW_##fs (X) |= _FP_IMPLBIT_##fs; \
+ _FP_FRAC_SLL_##wc (X, _FP_WORKBITS); \
+ X##_e -= _FP_EXPBIAS_##fs; \
+ X##_c = FP_CLS_NORMAL; \
+ break; \
+ \
+ case 0: \
+ if (_FP_FRAC_ZEROP_##wc (X)) \
+ X##_c = FP_CLS_ZERO; \
+ else \
+ { \
+ /* a denormalized number */ \
+ _FP_I_TYPE _shift; \
+ _FP_FRAC_CLZ_##wc (_shift, X); \
+ _shift -= _FP_FRACXBITS_##fs; \
+ _FP_FRAC_SLL_##wc (X, (_shift+_FP_WORKBITS)); \
+ X##_e -= _FP_EXPBIAS_##fs - 1 + _shift; \
+ X##_c = FP_CLS_NORMAL; \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ } \
+ break; \
+ \
+ case _FP_EXPMAX_##fs: \
+ if (_FP_FRAC_ZEROP_##wc (X)) \
+ X##_c = FP_CLS_INF; \
+ else \
+ { \
+ X##_c = FP_CLS_NAN; \
+ /* Check for signaling NaN */ \
+ if (_FP_FRAC_SNANP (fs, X)) \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ } \
+ break; \
+ } \
+ } \
+ while (0)
/* Finish unpacking an fp value in semi-raw mode: the mantissa is
shifted by _FP_WORKBITS but the implicit MSB is not inserted and
other classification is not done. */
-#define _FP_UNPACK_SEMIRAW(fs, wc, X) _FP_FRAC_SLL_##wc(X, _FP_WORKBITS)
+#define _FP_UNPACK_SEMIRAW(fs, wc, X) _FP_FRAC_SLL_##wc (X, _FP_WORKBITS)
/* A semi-raw value has overflowed to infinity. Adjust the mantissa
and exponent appropriately. */
#define _FP_OVERFLOW_SEMIRAW(fs, wc, X) \
-do { \
- if (FP_ROUNDMODE == FP_RND_NEAREST \
- || (FP_ROUNDMODE == FP_RND_PINF && !X##_s) \
- || (FP_ROUNDMODE == FP_RND_MINF && X##_s)) \
+ do \
{ \
- X##_e = _FP_EXPMAX_##fs; \
- _FP_FRAC_SET_##wc(X, _FP_ZEROFRAC_##wc); \
+ if (FP_ROUNDMODE == FP_RND_NEAREST \
+ || (FP_ROUNDMODE == FP_RND_PINF && !X##_s) \
+ || (FP_ROUNDMODE == FP_RND_MINF && X##_s)) \
+ { \
+ X##_e = _FP_EXPMAX_##fs; \
+ _FP_FRAC_SET_##wc (X, _FP_ZEROFRAC_##wc); \
+ } \
+ else \
+ { \
+ X##_e = _FP_EXPMAX_##fs - 1; \
+ _FP_FRAC_SET_##wc (X, _FP_MAXFRAC_##wc); \
+ } \
+ FP_SET_EXCEPTION (FP_EX_INEXACT); \
+ FP_SET_EXCEPTION (FP_EX_OVERFLOW); \
} \
- else \
- { \
- X##_e = _FP_EXPMAX_##fs - 1; \
- _FP_FRAC_SET_##wc(X, _FP_MAXFRAC_##wc); \
- } \
- FP_SET_EXCEPTION(FP_EX_INEXACT); \
- FP_SET_EXCEPTION(FP_EX_OVERFLOW); \
-} while (0)
+ while (0)
/* Check for a semi-raw value being a signaling NaN and raise the
invalid exception if so. */
-#define _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, X) \
-do { \
- if (X##_e == _FP_EXPMAX_##fs \
- && !_FP_FRAC_ZEROP_##wc(X) \
- && _FP_FRAC_SNANP_SEMIRAW(fs, X)) \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
-} while (0)
+#define _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, X) \
+ do \
+ { \
+ if (X##_e == _FP_EXPMAX_##fs \
+ && !_FP_FRAC_ZEROP_##wc (X) \
+ && _FP_FRAC_SNANP_SEMIRAW (fs, X)) \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ } \
+ while (0)
/* Choose a NaN result from an operation on two semi-raw NaN
values. */
#define _FP_CHOOSENAN_SEMIRAW(fs, wc, R, X, Y, OP) \
-do { \
- /* _FP_CHOOSENAN expects raw values, so shift as required. */ \
- _FP_FRAC_SRL_##wc(X, _FP_WORKBITS); \
- _FP_FRAC_SRL_##wc(Y, _FP_WORKBITS); \
- _FP_CHOOSENAN(fs, wc, R, X, Y, OP); \
- _FP_FRAC_SLL_##wc(R, _FP_WORKBITS); \
-} while (0)
+ do \
+ { \
+ /* _FP_CHOOSENAN expects raw values, so shift as required. */ \
+ _FP_FRAC_SRL_##wc (X, _FP_WORKBITS); \
+ _FP_FRAC_SRL_##wc (Y, _FP_WORKBITS); \
+ _FP_CHOOSENAN (fs, wc, R, X, Y, OP); \
+ _FP_FRAC_SLL_##wc (R, _FP_WORKBITS); \
+ } \
+ while (0)
/* Make the fractional part a quiet NaN, preserving the payload
if possible, otherwise make it the canonical quiet NaN and set
the sign bit accordingly. */
-#define _FP_SETQNAN(fs, wc, X) \
-do { \
- if (_FP_QNANNEGATEDP) \
- { \
- _FP_FRAC_HIGH_RAW_##fs(X) &= _FP_QNANBIT_##fs - 1; \
- if (_FP_FRAC_ZEROP_##wc(X)) \
- { \
- X##_s = _FP_NANSIGN_##fs; \
- _FP_FRAC_SET_##wc(X, _FP_NANFRAC_##fs); \
- } \
- } \
- else \
- _FP_FRAC_HIGH_RAW_##fs(X) |= _FP_QNANBIT_##fs; \
-} while (0)
-#define _FP_SETQNAN_SEMIRAW(fs, wc, X) \
-do { \
- if (_FP_QNANNEGATEDP) \
- { \
- _FP_FRAC_HIGH_##fs(X) &= _FP_QNANBIT_SH_##fs - 1; \
- if (_FP_FRAC_ZEROP_##wc(X)) \
- { \
- X##_s = _FP_NANSIGN_##fs; \
- _FP_FRAC_SET_##wc(X, _FP_NANFRAC_##fs); \
- _FP_FRAC_SLL_##wc(X, _FP_WORKBITS); \
- } \
- } \
- else \
- _FP_FRAC_HIGH_##fs(X) |= _FP_QNANBIT_SH_##fs; \
-} while (0)
+#define _FP_SETQNAN(fs, wc, X) \
+ do \
+ { \
+ if (_FP_QNANNEGATEDP) \
+ { \
+ _FP_FRAC_HIGH_RAW_##fs (X) &= _FP_QNANBIT_##fs - 1; \
+ if (_FP_FRAC_ZEROP_##wc (X)) \
+ { \
+ X##_s = _FP_NANSIGN_##fs; \
+ _FP_FRAC_SET_##wc (X, _FP_NANFRAC_##fs); \
+ } \
+ } \
+ else \
+ _FP_FRAC_HIGH_RAW_##fs (X) |= _FP_QNANBIT_##fs; \
+ } \
+ while (0)
+#define _FP_SETQNAN_SEMIRAW(fs, wc, X) \
+ do \
+ { \
+ if (_FP_QNANNEGATEDP) \
+ { \
+ _FP_FRAC_HIGH_##fs (X) &= _FP_QNANBIT_SH_##fs - 1; \
+ if (_FP_FRAC_ZEROP_##wc (X)) \
+ { \
+ X##_s = _FP_NANSIGN_##fs; \
+ _FP_FRAC_SET_##wc (X, _FP_NANFRAC_##fs); \
+ _FP_FRAC_SLL_##wc (X, _FP_WORKBITS); \
+ } \
+ } \
+ else \
+ _FP_FRAC_HIGH_##fs (X) |= _FP_QNANBIT_SH_##fs; \
+ } \
+ while (0)
/* Test whether a biased exponent is normal (not zero or maximum). */
#define _FP_EXP_NORMAL(fs, wc, X) (((X##_e + 1) & _FP_EXPMAX_##fs) > 1)
@@ -177,34 +189,36 @@ do { \
rounded and shifted right, with the rounding possibly increasing
the exponent (including changing a finite value to infinity). */
#define _FP_PACK_SEMIRAW(fs, wc, X) \
-do { \
- _FP_ROUND(wc, X); \
- if (X##_e == 0 && !_FP_FRAC_ZEROP_##wc(X)) \
- { \
+ do \
+ { \
+ _FP_ROUND (wc, X); \
+ if (X##_e == 0 && !_FP_FRAC_ZEROP_##wc (X)) \
+ { \
if ((FP_CUR_EXCEPTIONS & FP_EX_INEXACT) \
|| (FP_TRAPPING_EXCEPTIONS & FP_EX_UNDERFLOW)) \
- FP_SET_EXCEPTION(FP_EX_UNDERFLOW); \
- } \
- if (_FP_FRAC_HIGH_##fs(X) \
- & (_FP_OVERFLOW_##fs >> 1)) \
- { \
- _FP_FRAC_HIGH_##fs(X) &= ~(_FP_OVERFLOW_##fs >> 1); \
- X##_e++; \
- if (X##_e == _FP_EXPMAX_##fs) \
- _FP_OVERFLOW_SEMIRAW(fs, wc, X); \
- } \
- _FP_FRAC_SRL_##wc(X, _FP_WORKBITS); \
- if (X##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc(X)) \
- { \
- if (!_FP_KEEPNANFRACP) \
+ FP_SET_EXCEPTION (FP_EX_UNDERFLOW); \
+ } \
+ if (_FP_FRAC_HIGH_##fs (X) \
+ & (_FP_OVERFLOW_##fs >> 1)) \
{ \
- _FP_FRAC_SET_##wc(X, _FP_NANFRAC_##fs); \
- X##_s = _FP_NANSIGN_##fs; \
+ _FP_FRAC_HIGH_##fs (X) &= ~(_FP_OVERFLOW_##fs >> 1); \
+ X##_e++; \
+ if (X##_e == _FP_EXPMAX_##fs) \
+ _FP_OVERFLOW_SEMIRAW (fs, wc, X); \
+ } \
+ _FP_FRAC_SRL_##wc (X, _FP_WORKBITS); \
+ if (X##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc (X)) \
+ { \
+ if (!_FP_KEEPNANFRACP) \
+ { \
+ _FP_FRAC_SET_##wc (X, _FP_NANFRAC_##fs); \
+ X##_s = _FP_NANSIGN_##fs; \
+ } \
+ else \
+ _FP_SETQNAN (fs, wc, X); \
} \
- else \
- _FP_SETQNAN(fs, wc, X); \
} \
-} while (0)
+ while (0)
/*
* Before packing the bits back into the native fp result, take care
@@ -213,912 +227,927 @@ do { \
* extracted -- but that is ok, we can regenerate them now.
*/
-#define _FP_PACK_CANONICAL(fs, wc, X) \
-do { \
- switch (X##_c) \
- { \
- case FP_CLS_NORMAL: \
- X##_e += _FP_EXPBIAS_##fs; \
- if (X##_e > 0) \
- { \
- _FP_ROUND(wc, X); \
- if (_FP_FRAC_OVERP_##wc(fs, X)) \
- { \
- _FP_FRAC_CLEAR_OVERP_##wc(fs, X); \
- X##_e++; \
- } \
- _FP_FRAC_SRL_##wc(X, _FP_WORKBITS); \
- if (X##_e >= _FP_EXPMAX_##fs) \
- { \
- /* overflow */ \
- switch (FP_ROUNDMODE) \
- { \
- case FP_RND_NEAREST: \
- X##_c = FP_CLS_INF; \
- break; \
- case FP_RND_PINF: \
- if (!X##_s) X##_c = FP_CLS_INF; \
- break; \
- case FP_RND_MINF: \
- if (X##_s) X##_c = FP_CLS_INF; \
- break; \
- } \
- if (X##_c == FP_CLS_INF) \
- { \
- /* Overflow to infinity */ \
- X##_e = _FP_EXPMAX_##fs; \
- _FP_FRAC_SET_##wc(X, _FP_ZEROFRAC_##wc); \
- } \
- else \
- { \
- /* Overflow to maximum normal */ \
- X##_e = _FP_EXPMAX_##fs - 1; \
- _FP_FRAC_SET_##wc(X, _FP_MAXFRAC_##wc); \
- } \
- FP_SET_EXCEPTION(FP_EX_OVERFLOW); \
- FP_SET_EXCEPTION(FP_EX_INEXACT); \
- } \
- } \
- else \
- { \
- /* we've got a denormalized number */ \
- X##_e = -X##_e + 1; \
- if (X##_e <= _FP_WFRACBITS_##fs) \
- { \
- _FP_FRAC_SRS_##wc(X, X##_e, _FP_WFRACBITS_##fs); \
- _FP_ROUND(wc, X); \
- if (_FP_FRAC_HIGH_##fs(X) \
- & (_FP_OVERFLOW_##fs >> 1)) \
- { \
- X##_e = 1; \
- _FP_FRAC_SET_##wc(X, _FP_ZEROFRAC_##wc); \
- FP_SET_EXCEPTION(FP_EX_INEXACT); \
- } \
- else \
- { \
- X##_e = 0; \
- _FP_FRAC_SRL_##wc(X, _FP_WORKBITS); \
- } \
- if ((FP_CUR_EXCEPTIONS & FP_EX_INEXACT) \
- || (FP_TRAPPING_EXCEPTIONS & FP_EX_UNDERFLOW)) \
- FP_SET_EXCEPTION(FP_EX_UNDERFLOW); \
- } \
- else \
- { \
- /* underflow to zero */ \
- X##_e = 0; \
- if (!_FP_FRAC_ZEROP_##wc(X)) \
- { \
- _FP_FRAC_SET_##wc(X, _FP_MINFRAC_##wc); \
- _FP_ROUND(wc, X); \
- _FP_FRAC_LOW_##wc(X) >>= (_FP_WORKBITS); \
- } \
- FP_SET_EXCEPTION(FP_EX_UNDERFLOW); \
- } \
- } \
- break; \
- \
- case FP_CLS_ZERO: \
- X##_e = 0; \
- _FP_FRAC_SET_##wc(X, _FP_ZEROFRAC_##wc); \
- break; \
- \
- case FP_CLS_INF: \
- X##_e = _FP_EXPMAX_##fs; \
- _FP_FRAC_SET_##wc(X, _FP_ZEROFRAC_##wc); \
- break; \
- \
- case FP_CLS_NAN: \
- X##_e = _FP_EXPMAX_##fs; \
- if (!_FP_KEEPNANFRACP) \
- { \
- _FP_FRAC_SET_##wc(X, _FP_NANFRAC_##fs); \
- X##_s = _FP_NANSIGN_##fs; \
- } \
- else \
- _FP_SETQNAN(fs, wc, X); \
- break; \
- } \
-} while (0)
+#define _FP_PACK_CANONICAL(fs, wc, X) \
+ do \
+ { \
+ switch (X##_c) \
+ { \
+ case FP_CLS_NORMAL: \
+ X##_e += _FP_EXPBIAS_##fs; \
+ if (X##_e > 0) \
+ { \
+ _FP_ROUND (wc, X); \
+ if (_FP_FRAC_OVERP_##wc (fs, X)) \
+ { \
+ _FP_FRAC_CLEAR_OVERP_##wc (fs, X); \
+ X##_e++; \
+ } \
+ _FP_FRAC_SRL_##wc (X, _FP_WORKBITS); \
+ if (X##_e >= _FP_EXPMAX_##fs) \
+ { \
+ /* overflow */ \
+ switch (FP_ROUNDMODE) \
+ { \
+ case FP_RND_NEAREST: \
+ X##_c = FP_CLS_INF; \
+ break; \
+ case FP_RND_PINF: \
+ if (!X##_s) \
+ X##_c = FP_CLS_INF; \
+ break; \
+ case FP_RND_MINF: \
+ if (X##_s) \
+ X##_c = FP_CLS_INF; \
+ break; \
+ } \
+ if (X##_c == FP_CLS_INF) \
+ { \
+ /* Overflow to infinity */ \
+ X##_e = _FP_EXPMAX_##fs; \
+ _FP_FRAC_SET_##wc (X, _FP_ZEROFRAC_##wc); \
+ } \
+ else \
+ { \
+ /* Overflow to maximum normal */ \
+ X##_e = _FP_EXPMAX_##fs - 1; \
+ _FP_FRAC_SET_##wc (X, _FP_MAXFRAC_##wc); \
+ } \
+ FP_SET_EXCEPTION (FP_EX_OVERFLOW); \
+ FP_SET_EXCEPTION (FP_EX_INEXACT); \
+ } \
+ } \
+ else \
+ { \
+ /* we've got a denormalized number */ \
+ X##_e = -X##_e + 1; \
+ if (X##_e <= _FP_WFRACBITS_##fs) \
+ { \
+ _FP_FRAC_SRS_##wc (X, X##_e, _FP_WFRACBITS_##fs); \
+ _FP_ROUND (wc, X); \
+ if (_FP_FRAC_HIGH_##fs (X) \
+ & (_FP_OVERFLOW_##fs >> 1)) \
+ { \
+ X##_e = 1; \
+ _FP_FRAC_SET_##wc (X, _FP_ZEROFRAC_##wc); \
+ FP_SET_EXCEPTION (FP_EX_INEXACT); \
+ } \
+ else \
+ { \
+ X##_e = 0; \
+ _FP_FRAC_SRL_##wc (X, _FP_WORKBITS); \
+ } \
+ if ((FP_CUR_EXCEPTIONS & FP_EX_INEXACT) \
+ || (FP_TRAPPING_EXCEPTIONS & FP_EX_UNDERFLOW)) \
+ FP_SET_EXCEPTION (FP_EX_UNDERFLOW); \
+ } \
+ else \
+ { \
+ /* underflow to zero */ \
+ X##_e = 0; \
+ if (!_FP_FRAC_ZEROP_##wc (X)) \
+ { \
+ _FP_FRAC_SET_##wc (X, _FP_MINFRAC_##wc); \
+ _FP_ROUND (wc, X); \
+ _FP_FRAC_LOW_##wc (X) >>= (_FP_WORKBITS); \
+ } \
+ FP_SET_EXCEPTION (FP_EX_UNDERFLOW); \
+ } \
+ } \
+ break; \
+ \
+ case FP_CLS_ZERO: \
+ X##_e = 0; \
+ _FP_FRAC_SET_##wc (X, _FP_ZEROFRAC_##wc); \
+ break; \
+ \
+ case FP_CLS_INF: \
+ X##_e = _FP_EXPMAX_##fs; \
+ _FP_FRAC_SET_##wc (X, _FP_ZEROFRAC_##wc); \
+ break; \
+ \
+ case FP_CLS_NAN: \
+ X##_e = _FP_EXPMAX_##fs; \
+ if (!_FP_KEEPNANFRACP) \
+ { \
+ _FP_FRAC_SET_##wc (X, _FP_NANFRAC_##fs); \
+ X##_s = _FP_NANSIGN_##fs; \
+ } \
+ else \
+ _FP_SETQNAN (fs, wc, X); \
+ break; \
+ } \
+ } \
+ while (0)
/* This one accepts raw argument and not cooked, returns
* 1 if X is a signaling NaN.
*/
-#define _FP_ISSIGNAN(fs, wc, X) \
-({ \
- int __ret = 0; \
- if (X##_e == _FP_EXPMAX_##fs) \
- { \
- if (!_FP_FRAC_ZEROP_##wc(X) \
- && _FP_FRAC_SNANP(fs, X)) \
- __ret = 1; \
- } \
- __ret; \
-})
+#define _FP_ISSIGNAN(fs, wc, X) \
+ ({ \
+ int __ret = 0; \
+ if (X##_e == _FP_EXPMAX_##fs) \
+ { \
+ if (!_FP_FRAC_ZEROP_##wc (X) \
+ && _FP_FRAC_SNANP (fs, X)) \
+ __ret = 1; \
+ } \
+ __ret; \
+ })
/* Addition on semi-raw values. */
-#define _FP_ADD_INTERNAL(fs, wc, R, X, Y, OP) \
-do { \
- if (X##_s == Y##_s) \
- { \
- /* Addition. */ \
- R##_s = X##_s; \
- int ediff = X##_e - Y##_e; \
- if (ediff > 0) \
- { \
- R##_e = X##_e; \
- if (Y##_e == 0) \
- { \
- /* Y is zero or denormalized. */ \
- if (_FP_FRAC_ZEROP_##wc(Y)) \
- { \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, X); \
- _FP_FRAC_COPY_##wc(R, X); \
- goto add_done; \
- } \
- else \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- ediff--; \
- if (ediff == 0) \
- { \
- _FP_FRAC_ADD_##wc(R, X, Y); \
- goto add3; \
- } \
- if (X##_e == _FP_EXPMAX_##fs) \
- { \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, X); \
- _FP_FRAC_COPY_##wc(R, X); \
- goto add_done; \
- } \
- goto add1; \
- } \
- } \
- else if (X##_e == _FP_EXPMAX_##fs) \
- { \
- /* X is NaN or Inf, Y is normal. */ \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, X); \
- _FP_FRAC_COPY_##wc(R, X); \
- goto add_done; \
- } \
- \
- /* Insert implicit MSB of Y. */ \
- _FP_FRAC_HIGH_##fs(Y) |= _FP_IMPLBIT_SH_##fs; \
- \
- add1: \
- /* Shift the mantissa of Y to the right EDIFF steps; \
- remember to account later for the implicit MSB of X. */ \
- if (ediff <= _FP_WFRACBITS_##fs) \
- _FP_FRAC_SRS_##wc(Y, ediff, _FP_WFRACBITS_##fs); \
- else if (!_FP_FRAC_ZEROP_##wc(Y)) \
- _FP_FRAC_SET_##wc(Y, _FP_MINFRAC_##wc); \
- _FP_FRAC_ADD_##wc(R, X, Y); \
- } \
- else if (ediff < 0) \
- { \
- ediff = -ediff; \
- R##_e = Y##_e; \
- if (X##_e == 0) \
- { \
- /* X is zero or denormalized. */ \
- if (_FP_FRAC_ZEROP_##wc(X)) \
- { \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, Y); \
- _FP_FRAC_COPY_##wc(R, Y); \
- goto add_done; \
- } \
- else \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- ediff--; \
- if (ediff == 0) \
- { \
- _FP_FRAC_ADD_##wc(R, Y, X); \
- goto add3; \
- } \
- if (Y##_e == _FP_EXPMAX_##fs) \
- { \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, Y); \
- _FP_FRAC_COPY_##wc(R, Y); \
- goto add_done; \
- } \
- goto add2; \
- } \
- } \
- else if (Y##_e == _FP_EXPMAX_##fs) \
- { \
- /* Y is NaN or Inf, X is normal. */ \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, Y); \
- _FP_FRAC_COPY_##wc(R, Y); \
- goto add_done; \
- } \
- \
- /* Insert implicit MSB of X. */ \
- _FP_FRAC_HIGH_##fs(X) |= _FP_IMPLBIT_SH_##fs; \
- \
- add2: \
- /* Shift the mantissa of X to the right EDIFF steps; \
- remember to account later for the implicit MSB of Y. */ \
- if (ediff <= _FP_WFRACBITS_##fs) \
- _FP_FRAC_SRS_##wc(X, ediff, _FP_WFRACBITS_##fs); \
- else if (!_FP_FRAC_ZEROP_##wc(X)) \
- _FP_FRAC_SET_##wc(X, _FP_MINFRAC_##wc); \
- _FP_FRAC_ADD_##wc(R, Y, X); \
- } \
- else \
- { \
- /* ediff == 0. */ \
- if (!_FP_EXP_NORMAL(fs, wc, X)) \
- { \
- if (X##_e == 0) \
- { \
- /* X and Y are zero or denormalized. */ \
- R##_e = 0; \
- if (_FP_FRAC_ZEROP_##wc(X)) \
- { \
- if (!_FP_FRAC_ZEROP_##wc(Y)) \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- _FP_FRAC_COPY_##wc(R, Y); \
- goto add_done; \
- } \
- else if (_FP_FRAC_ZEROP_##wc(Y)) \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- _FP_FRAC_COPY_##wc(R, X); \
- goto add_done; \
- } \
- else \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- _FP_FRAC_ADD_##wc(R, X, Y); \
- if (_FP_FRAC_HIGH_##fs(R) & _FP_IMPLBIT_SH_##fs) \
- { \
- /* Normalized result. */ \
- _FP_FRAC_HIGH_##fs(R) \
- &= ~(_FP_W_TYPE)_FP_IMPLBIT_SH_##fs; \
- R##_e = 1; \
- } \
- goto add_done; \
- } \
- } \
- else \
- { \
- /* X and Y are NaN or Inf. */ \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, X); \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, Y); \
- R##_e = _FP_EXPMAX_##fs; \
- if (_FP_FRAC_ZEROP_##wc(X)) \
- _FP_FRAC_COPY_##wc(R, Y); \
- else if (_FP_FRAC_ZEROP_##wc(Y)) \
- _FP_FRAC_COPY_##wc(R, X); \
- else \
- _FP_CHOOSENAN_SEMIRAW(fs, wc, R, X, Y, OP); \
- goto add_done; \
- } \
- } \
- /* The exponents of X and Y, both normal, are equal. The \
- implicit MSBs will always add to increase the \
- exponent. */ \
- _FP_FRAC_ADD_##wc(R, X, Y); \
- R##_e = X##_e + 1; \
- _FP_FRAC_SRS_##wc(R, 1, _FP_WFRACBITS_##fs); \
- if (R##_e == _FP_EXPMAX_##fs) \
- /* Overflow to infinity (depending on rounding mode). */ \
- _FP_OVERFLOW_SEMIRAW(fs, wc, R); \
- goto add_done; \
- } \
- add3: \
- if (_FP_FRAC_HIGH_##fs(R) & _FP_IMPLBIT_SH_##fs) \
- { \
- /* Overflow. */ \
- _FP_FRAC_HIGH_##fs(R) &= ~(_FP_W_TYPE)_FP_IMPLBIT_SH_##fs; \
- R##_e++; \
- _FP_FRAC_SRS_##wc(R, 1, _FP_WFRACBITS_##fs); \
- if (R##_e == _FP_EXPMAX_##fs) \
- /* Overflow to infinity (depending on rounding mode). */ \
- _FP_OVERFLOW_SEMIRAW(fs, wc, R); \
- } \
- add_done: ; \
- } \
- else \
- { \
- /* Subtraction. */ \
- int ediff = X##_e - Y##_e; \
- if (ediff > 0) \
- { \
- R##_e = X##_e; \
- R##_s = X##_s; \
- if (Y##_e == 0) \
- { \
- /* Y is zero or denormalized. */ \
- if (_FP_FRAC_ZEROP_##wc(Y)) \
- { \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, X); \
- _FP_FRAC_COPY_##wc(R, X); \
- goto sub_done; \
- } \
- else \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- ediff--; \
- if (ediff == 0) \
- { \
- _FP_FRAC_SUB_##wc(R, X, Y); \
- goto sub3; \
- } \
- if (X##_e == _FP_EXPMAX_##fs) \
- { \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, X); \
- _FP_FRAC_COPY_##wc(R, X); \
- goto sub_done; \
- } \
- goto sub1; \
- } \
- } \
- else if (X##_e == _FP_EXPMAX_##fs) \
- { \
- /* X is NaN or Inf, Y is normal. */ \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, X); \
- _FP_FRAC_COPY_##wc(R, X); \
- goto sub_done; \
- } \
- \
- /* Insert implicit MSB of Y. */ \
- _FP_FRAC_HIGH_##fs(Y) |= _FP_IMPLBIT_SH_##fs; \
- \
- sub1: \
- /* Shift the mantissa of Y to the right EDIFF steps; \
- remember to account later for the implicit MSB of X. */ \
- if (ediff <= _FP_WFRACBITS_##fs) \
- _FP_FRAC_SRS_##wc(Y, ediff, _FP_WFRACBITS_##fs); \
- else if (!_FP_FRAC_ZEROP_##wc(Y)) \
- _FP_FRAC_SET_##wc(Y, _FP_MINFRAC_##wc); \
- _FP_FRAC_SUB_##wc(R, X, Y); \
- } \
- else if (ediff < 0) \
- { \
- ediff = -ediff; \
- R##_e = Y##_e; \
- R##_s = Y##_s; \
- if (X##_e == 0) \
- { \
- /* X is zero or denormalized. */ \
- if (_FP_FRAC_ZEROP_##wc(X)) \
- { \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, Y); \
- _FP_FRAC_COPY_##wc(R, Y); \
- goto sub_done; \
- } \
- else \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- ediff--; \
- if (ediff == 0) \
- { \
- _FP_FRAC_SUB_##wc(R, Y, X); \
- goto sub3; \
- } \
- if (Y##_e == _FP_EXPMAX_##fs) \
- { \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, Y); \
- _FP_FRAC_COPY_##wc(R, Y); \
- goto sub_done; \
- } \
- goto sub2; \
- } \
- } \
- else if (Y##_e == _FP_EXPMAX_##fs) \
- { \
- /* Y is NaN or Inf, X is normal. */ \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, Y); \
- _FP_FRAC_COPY_##wc(R, Y); \
- goto sub_done; \
- } \
- \
- /* Insert implicit MSB of X. */ \
- _FP_FRAC_HIGH_##fs(X) |= _FP_IMPLBIT_SH_##fs; \
- \
- sub2: \
- /* Shift the mantissa of X to the right EDIFF steps; \
- remember to account later for the implicit MSB of Y. */ \
- if (ediff <= _FP_WFRACBITS_##fs) \
- _FP_FRAC_SRS_##wc(X, ediff, _FP_WFRACBITS_##fs); \
- else if (!_FP_FRAC_ZEROP_##wc(X)) \
- _FP_FRAC_SET_##wc(X, _FP_MINFRAC_##wc); \
- _FP_FRAC_SUB_##wc(R, Y, X); \
- } \
- else \
- { \
- /* ediff == 0. */ \
- if (!_FP_EXP_NORMAL(fs, wc, X)) \
- { \
- if (X##_e == 0) \
- { \
- /* X and Y are zero or denormalized. */ \
- R##_e = 0; \
- if (_FP_FRAC_ZEROP_##wc(X)) \
- { \
- _FP_FRAC_COPY_##wc(R, Y); \
- if (_FP_FRAC_ZEROP_##wc(Y)) \
- R##_s = (FP_ROUNDMODE == FP_RND_MINF); \
- else \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- R##_s = Y##_s; \
- } \
- goto sub_done; \
- } \
- else if (_FP_FRAC_ZEROP_##wc(Y)) \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- _FP_FRAC_COPY_##wc(R, X); \
- R##_s = X##_s; \
- goto sub_done; \
- } \
- else \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- _FP_FRAC_SUB_##wc(R, X, Y); \
- R##_s = X##_s; \
- if (_FP_FRAC_HIGH_##fs(R) & _FP_IMPLBIT_SH_##fs) \
- { \
- /* |X| < |Y|, negate result. */ \
- _FP_FRAC_SUB_##wc(R, Y, X); \
- R##_s = Y##_s; \
- } \
- else if (_FP_FRAC_ZEROP_##wc(R)) \
- R##_s = (FP_ROUNDMODE == FP_RND_MINF); \
- goto sub_done; \
- } \
- } \
- else \
- { \
- /* X and Y are NaN or Inf, of opposite signs. */ \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, X); \
- _FP_CHECK_SIGNAN_SEMIRAW(fs, wc, Y); \
- R##_e = _FP_EXPMAX_##fs; \
- if (_FP_FRAC_ZEROP_##wc(X)) \
- { \
- if (_FP_FRAC_ZEROP_##wc(Y)) \
- { \
- /* Inf - Inf. */ \
- R##_s = _FP_NANSIGN_##fs; \
- _FP_FRAC_SET_##wc(R, _FP_NANFRAC_##fs); \
- _FP_FRAC_SLL_##wc(R, _FP_WORKBITS); \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
- } \
- else \
- { \
- /* Inf - NaN. */ \
- R##_s = Y##_s; \
- _FP_FRAC_COPY_##wc(R, Y); \
- } \
- } \
- else \
- { \
- if (_FP_FRAC_ZEROP_##wc(Y)) \
- { \
- /* NaN - Inf. */ \
- R##_s = X##_s; \
- _FP_FRAC_COPY_##wc(R, X); \
- } \
- else \
- { \
- /* NaN - NaN. */ \
- _FP_CHOOSENAN_SEMIRAW(fs, wc, R, X, Y, OP); \
- } \
- } \
- goto sub_done; \
- } \
- } \
- /* The exponents of X and Y, both normal, are equal. The \
- implicit MSBs cancel. */ \
- R##_e = X##_e; \
- _FP_FRAC_SUB_##wc(R, X, Y); \
- R##_s = X##_s; \
- if (_FP_FRAC_HIGH_##fs(R) & _FP_IMPLBIT_SH_##fs) \
- { \
- /* |X| < |Y|, negate result. */ \
- _FP_FRAC_SUB_##wc(R, Y, X); \
- R##_s = Y##_s; \
- } \
- else if (_FP_FRAC_ZEROP_##wc(R)) \
- { \
- R##_e = 0; \
- R##_s = (FP_ROUNDMODE == FP_RND_MINF); \
- goto sub_done; \
- } \
- goto norm; \
- } \
- sub3: \
- if (_FP_FRAC_HIGH_##fs(R) & _FP_IMPLBIT_SH_##fs) \
- { \
- int diff; \
- /* Carry into most significant bit of larger one of X and Y, \
- canceling it; renormalize. */ \
- _FP_FRAC_HIGH_##fs(R) &= _FP_IMPLBIT_SH_##fs - 1; \
- norm: \
- _FP_FRAC_CLZ_##wc(diff, R); \
- diff -= _FP_WFRACXBITS_##fs; \
- _FP_FRAC_SLL_##wc(R, diff); \
- if (R##_e <= diff) \
- { \
- /* R is denormalized. */ \
- diff = diff - R##_e + 1; \
- _FP_FRAC_SRS_##wc(R, diff, _FP_WFRACBITS_##fs); \
- R##_e = 0; \
- } \
- else \
- { \
- R##_e -= diff; \
- _FP_FRAC_HIGH_##fs(R) &= ~(_FP_W_TYPE)_FP_IMPLBIT_SH_##fs; \
- } \
- } \
- sub_done: ; \
- } \
-} while (0)
+#define _FP_ADD_INTERNAL(fs, wc, R, X, Y, OP) \
+ do \
+ { \
+ if (X##_s == Y##_s) \
+ { \
+ /* Addition. */ \
+ R##_s = X##_s; \
+ int ediff = X##_e - Y##_e; \
+ if (ediff > 0) \
+ { \
+ R##_e = X##_e; \
+ if (Y##_e == 0) \
+ { \
+ /* Y is zero or denormalized. */ \
+ if (_FP_FRAC_ZEROP_##wc (Y)) \
+ { \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, X); \
+ _FP_FRAC_COPY_##wc (R, X); \
+ goto add_done; \
+ } \
+ else \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ ediff--; \
+ if (ediff == 0) \
+ { \
+ _FP_FRAC_ADD_##wc (R, X, Y); \
+ goto add3; \
+ } \
+ if (X##_e == _FP_EXPMAX_##fs) \
+ { \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, X); \
+ _FP_FRAC_COPY_##wc (R, X); \
+ goto add_done; \
+ } \
+ goto add1; \
+ } \
+ } \
+ else if (X##_e == _FP_EXPMAX_##fs) \
+ { \
+ /* X is NaN or Inf, Y is normal. */ \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, X); \
+ _FP_FRAC_COPY_##wc (R, X); \
+ goto add_done; \
+ } \
+ \
+ /* Insert implicit MSB of Y. */ \
+ _FP_FRAC_HIGH_##fs (Y) |= _FP_IMPLBIT_SH_##fs; \
+ \
+ add1: \
+ /* Shift the mantissa of Y to the right EDIFF steps; \
+ remember to account later for the implicit MSB of X. */ \
+ if (ediff <= _FP_WFRACBITS_##fs) \
+ _FP_FRAC_SRS_##wc (Y, ediff, _FP_WFRACBITS_##fs); \
+ else if (!_FP_FRAC_ZEROP_##wc (Y)) \
+ _FP_FRAC_SET_##wc (Y, _FP_MINFRAC_##wc); \
+ _FP_FRAC_ADD_##wc (R, X, Y); \
+ } \
+ else if (ediff < 0) \
+ { \
+ ediff = -ediff; \
+ R##_e = Y##_e; \
+ if (X##_e == 0) \
+ { \
+ /* X is zero or denormalized. */ \
+ if (_FP_FRAC_ZEROP_##wc (X)) \
+ { \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, Y); \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ goto add_done; \
+ } \
+ else \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ ediff--; \
+ if (ediff == 0) \
+ { \
+ _FP_FRAC_ADD_##wc (R, Y, X); \
+ goto add3; \
+ } \
+ if (Y##_e == _FP_EXPMAX_##fs) \
+ { \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, Y); \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ goto add_done; \
+ } \
+ goto add2; \
+ } \
+ } \
+ else if (Y##_e == _FP_EXPMAX_##fs) \
+ { \
+ /* Y is NaN or Inf, X is normal. */ \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, Y); \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ goto add_done; \
+ } \
+ \
+ /* Insert implicit MSB of X. */ \
+ _FP_FRAC_HIGH_##fs (X) |= _FP_IMPLBIT_SH_##fs; \
+ \
+ add2: \
+ /* Shift the mantissa of X to the right EDIFF steps; \
+ remember to account later for the implicit MSB of Y. */ \
+ if (ediff <= _FP_WFRACBITS_##fs) \
+ _FP_FRAC_SRS_##wc (X, ediff, _FP_WFRACBITS_##fs); \
+ else if (!_FP_FRAC_ZEROP_##wc (X)) \
+ _FP_FRAC_SET_##wc (X, _FP_MINFRAC_##wc); \
+ _FP_FRAC_ADD_##wc (R, Y, X); \
+ } \
+ else \
+ { \
+ /* ediff == 0. */ \
+ if (!_FP_EXP_NORMAL (fs, wc, X)) \
+ { \
+ if (X##_e == 0) \
+ { \
+ /* X and Y are zero or denormalized. */ \
+ R##_e = 0; \
+ if (_FP_FRAC_ZEROP_##wc (X)) \
+ { \
+ if (!_FP_FRAC_ZEROP_##wc (Y)) \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ goto add_done; \
+ } \
+ else if (_FP_FRAC_ZEROP_##wc (Y)) \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ _FP_FRAC_COPY_##wc (R, X); \
+ goto add_done; \
+ } \
+ else \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ _FP_FRAC_ADD_##wc (R, X, Y); \
+ if (_FP_FRAC_HIGH_##fs (R) & _FP_IMPLBIT_SH_##fs) \
+ { \
+ /* Normalized result. */ \
+ _FP_FRAC_HIGH_##fs (R) \
+ &= ~(_FP_W_TYPE) _FP_IMPLBIT_SH_##fs; \
+ R##_e = 1; \
+ } \
+ goto add_done; \
+ } \
+ } \
+ else \
+ { \
+ /* X and Y are NaN or Inf. */ \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, X); \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, Y); \
+ R##_e = _FP_EXPMAX_##fs; \
+ if (_FP_FRAC_ZEROP_##wc (X)) \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ else if (_FP_FRAC_ZEROP_##wc (Y)) \
+ _FP_FRAC_COPY_##wc (R, X); \
+ else \
+ _FP_CHOOSENAN_SEMIRAW (fs, wc, R, X, Y, OP); \
+ goto add_done; \
+ } \
+ } \
+ /* The exponents of X and Y, both normal, are equal. The \
+ implicit MSBs will always add to increase the \
+ exponent. */ \
+ _FP_FRAC_ADD_##wc (R, X, Y); \
+ R##_e = X##_e + 1; \
+ _FP_FRAC_SRS_##wc (R, 1, _FP_WFRACBITS_##fs); \
+ if (R##_e == _FP_EXPMAX_##fs) \
+ /* Overflow to infinity (depending on rounding mode). */ \
+ _FP_OVERFLOW_SEMIRAW (fs, wc, R); \
+ goto add_done; \
+ } \
+ add3: \
+ if (_FP_FRAC_HIGH_##fs (R) & _FP_IMPLBIT_SH_##fs) \
+ { \
+ /* Overflow. */ \
+ _FP_FRAC_HIGH_##fs (R) &= ~(_FP_W_TYPE) _FP_IMPLBIT_SH_##fs; \
+ R##_e++; \
+ _FP_FRAC_SRS_##wc (R, 1, _FP_WFRACBITS_##fs); \
+ if (R##_e == _FP_EXPMAX_##fs) \
+ /* Overflow to infinity (depending on rounding mode). */ \
+ _FP_OVERFLOW_SEMIRAW (fs, wc, R); \
+ } \
+ add_done: ; \
+ } \
+ else \
+ { \
+ /* Subtraction. */ \
+ int ediff = X##_e - Y##_e; \
+ if (ediff > 0) \
+ { \
+ R##_e = X##_e; \
+ R##_s = X##_s; \
+ if (Y##_e == 0) \
+ { \
+ /* Y is zero or denormalized. */ \
+ if (_FP_FRAC_ZEROP_##wc (Y)) \
+ { \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, X); \
+ _FP_FRAC_COPY_##wc (R, X); \
+ goto sub_done; \
+ } \
+ else \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ ediff--; \
+ if (ediff == 0) \
+ { \
+ _FP_FRAC_SUB_##wc (R, X, Y); \
+ goto sub3; \
+ } \
+ if (X##_e == _FP_EXPMAX_##fs) \
+ { \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, X); \
+ _FP_FRAC_COPY_##wc (R, X); \
+ goto sub_done; \
+ } \
+ goto sub1; \
+ } \
+ } \
+ else if (X##_e == _FP_EXPMAX_##fs) \
+ { \
+ /* X is NaN or Inf, Y is normal. */ \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, X); \
+ _FP_FRAC_COPY_##wc (R, X); \
+ goto sub_done; \
+ } \
+ \
+ /* Insert implicit MSB of Y. */ \
+ _FP_FRAC_HIGH_##fs (Y) |= _FP_IMPLBIT_SH_##fs; \
+ \
+ sub1: \
+ /* Shift the mantissa of Y to the right EDIFF steps; \
+ remember to account later for the implicit MSB of X. */ \
+ if (ediff <= _FP_WFRACBITS_##fs) \
+ _FP_FRAC_SRS_##wc (Y, ediff, _FP_WFRACBITS_##fs); \
+ else if (!_FP_FRAC_ZEROP_##wc (Y)) \
+ _FP_FRAC_SET_##wc (Y, _FP_MINFRAC_##wc); \
+ _FP_FRAC_SUB_##wc (R, X, Y); \
+ } \
+ else if (ediff < 0) \
+ { \
+ ediff = -ediff; \
+ R##_e = Y##_e; \
+ R##_s = Y##_s; \
+ if (X##_e == 0) \
+ { \
+ /* X is zero or denormalized. */ \
+ if (_FP_FRAC_ZEROP_##wc (X)) \
+ { \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, Y); \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ goto sub_done; \
+ } \
+ else \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ ediff--; \
+ if (ediff == 0) \
+ { \
+ _FP_FRAC_SUB_##wc (R, Y, X); \
+ goto sub3; \
+ } \
+ if (Y##_e == _FP_EXPMAX_##fs) \
+ { \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, Y); \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ goto sub_done; \
+ } \
+ goto sub2; \
+ } \
+ } \
+ else if (Y##_e == _FP_EXPMAX_##fs) \
+ { \
+ /* Y is NaN or Inf, X is normal. */ \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, Y); \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ goto sub_done; \
+ } \
+ \
+ /* Insert implicit MSB of X. */ \
+ _FP_FRAC_HIGH_##fs (X) |= _FP_IMPLBIT_SH_##fs; \
+ \
+ sub2: \
+ /* Shift the mantissa of X to the right EDIFF steps; \
+ remember to account later for the implicit MSB of Y. */ \
+ if (ediff <= _FP_WFRACBITS_##fs) \
+ _FP_FRAC_SRS_##wc (X, ediff, _FP_WFRACBITS_##fs); \
+ else if (!_FP_FRAC_ZEROP_##wc (X)) \
+ _FP_FRAC_SET_##wc (X, _FP_MINFRAC_##wc); \
+ _FP_FRAC_SUB_##wc (R, Y, X); \
+ } \
+ else \
+ { \
+ /* ediff == 0. */ \
+ if (!_FP_EXP_NORMAL (fs, wc, X)) \
+ { \
+ if (X##_e == 0) \
+ { \
+ /* X and Y are zero or denormalized. */ \
+ R##_e = 0; \
+ if (_FP_FRAC_ZEROP_##wc (X)) \
+ { \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ if (_FP_FRAC_ZEROP_##wc (Y)) \
+ R##_s = (FP_ROUNDMODE == FP_RND_MINF); \
+ else \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ R##_s = Y##_s; \
+ } \
+ goto sub_done; \
+ } \
+ else if (_FP_FRAC_ZEROP_##wc (Y)) \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ _FP_FRAC_COPY_##wc (R, X); \
+ R##_s = X##_s; \
+ goto sub_done; \
+ } \
+ else \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ _FP_FRAC_SUB_##wc (R, X, Y); \
+ R##_s = X##_s; \
+ if (_FP_FRAC_HIGH_##fs (R) & _FP_IMPLBIT_SH_##fs) \
+ { \
+ /* |X| < |Y|, negate result. */ \
+ _FP_FRAC_SUB_##wc (R, Y, X); \
+ R##_s = Y##_s; \
+ } \
+ else if (_FP_FRAC_ZEROP_##wc (R)) \
+ R##_s = (FP_ROUNDMODE == FP_RND_MINF); \
+ goto sub_done; \
+ } \
+ } \
+ else \
+ { \
+ /* X and Y are NaN or Inf, of opposite signs. */ \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, X); \
+ _FP_CHECK_SIGNAN_SEMIRAW (fs, wc, Y); \
+ R##_e = _FP_EXPMAX_##fs; \
+ if (_FP_FRAC_ZEROP_##wc (X)) \
+ { \
+ if (_FP_FRAC_ZEROP_##wc (Y)) \
+ { \
+ /* Inf - Inf. */ \
+ R##_s = _FP_NANSIGN_##fs; \
+ _FP_FRAC_SET_##wc (R, _FP_NANFRAC_##fs); \
+ _FP_FRAC_SLL_##wc (R, _FP_WORKBITS); \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ } \
+ else \
+ { \
+ /* Inf - NaN. */ \
+ R##_s = Y##_s; \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ } \
+ } \
+ else \
+ { \
+ if (_FP_FRAC_ZEROP_##wc (Y)) \
+ { \
+ /* NaN - Inf. */ \
+ R##_s = X##_s; \
+ _FP_FRAC_COPY_##wc (R, X); \
+ } \
+ else \
+ { \
+ /* NaN - NaN. */ \
+ _FP_CHOOSENAN_SEMIRAW (fs, wc, R, X, Y, OP); \
+ } \
+ } \
+ goto sub_done; \
+ } \
+ } \
+ /* The exponents of X and Y, both normal, are equal. The \
+ implicit MSBs cancel. */ \
+ R##_e = X##_e; \
+ _FP_FRAC_SUB_##wc (R, X, Y); \
+ R##_s = X##_s; \
+ if (_FP_FRAC_HIGH_##fs (R) & _FP_IMPLBIT_SH_##fs) \
+ { \
+ /* |X| < |Y|, negate result. */ \
+ _FP_FRAC_SUB_##wc (R, Y, X); \
+ R##_s = Y##_s; \
+ } \
+ else if (_FP_FRAC_ZEROP_##wc (R)) \
+ { \
+ R##_e = 0; \
+ R##_s = (FP_ROUNDMODE == FP_RND_MINF); \
+ goto sub_done; \
+ } \
+ goto norm; \
+ } \
+ sub3: \
+ if (_FP_FRAC_HIGH_##fs (R) & _FP_IMPLBIT_SH_##fs) \
+ { \
+ int diff; \
+ /* Carry into most significant bit of larger one of X and Y, \
+ canceling it; renormalize. */ \
+ _FP_FRAC_HIGH_##fs (R) &= _FP_IMPLBIT_SH_##fs - 1; \
+ norm: \
+ _FP_FRAC_CLZ_##wc (diff, R); \
+ diff -= _FP_WFRACXBITS_##fs; \
+ _FP_FRAC_SLL_##wc (R, diff); \
+ if (R##_e <= diff) \
+ { \
+ /* R is denormalized. */ \
+ diff = diff - R##_e + 1; \
+ _FP_FRAC_SRS_##wc (R, diff, _FP_WFRACBITS_##fs); \
+ R##_e = 0; \
+ } \
+ else \
+ { \
+ R##_e -= diff; \
+ _FP_FRAC_HIGH_##fs (R) &= ~(_FP_W_TYPE) _FP_IMPLBIT_SH_##fs; \
+ } \
+ } \
+ sub_done: ; \
+ } \
+ } \
+ while (0)
-#define _FP_ADD(fs, wc, R, X, Y) _FP_ADD_INTERNAL(fs, wc, R, X, Y, '+')
-#define _FP_SUB(fs, wc, R, X, Y) \
- do { \
- if (!(Y##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc(Y))) Y##_s ^= 1; \
- _FP_ADD_INTERNAL(fs, wc, R, X, Y, '-'); \
- } while (0)
+#define _FP_ADD(fs, wc, R, X, Y) _FP_ADD_INTERNAL (fs, wc, R, X, Y, '+')
+#define _FP_SUB(fs, wc, R, X, Y) \
+ do \
+ { \
+ if (!(Y##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc (Y))) \
+ Y##_s ^= 1; \
+ _FP_ADD_INTERNAL (fs, wc, R, X, Y, '-'); \
+ } \
+ while (0)
/*
- * Main negation routine. FIXME -- when we care about setting exception
- * bits reliably, this will not do. We should examine all of the fp classes.
+ * Main negation routine. The input value is raw.
*/
-#define _FP_NEG(fs, wc, R, X) \
- do { \
- _FP_FRAC_COPY_##wc(R, X); \
- R##_c = X##_c; \
- R##_e = X##_e; \
- R##_s = 1 ^ X##_s; \
- } while (0)
+#define _FP_NEG(fs, wc, R, X) \
+ do \
+ { \
+ _FP_FRAC_COPY_##wc (R, X); \
+ R##_e = X##_e; \
+ R##_s = 1 ^ X##_s; \
+ } \
+ while (0)
/*
* Main multiplication routine. The input values should be cooked.
*/
-#define _FP_MUL(fs, wc, R, X, Y) \
-do { \
- R##_s = X##_s ^ Y##_s; \
- R##_e = X##_e + Y##_e + 1; \
- switch (_FP_CLS_COMBINE(X##_c, Y##_c)) \
- { \
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_NORMAL): \
- R##_c = FP_CLS_NORMAL; \
- \
- _FP_MUL_MEAT_##fs(R,X,Y); \
- \
- if (_FP_FRAC_OVERP_##wc(fs, R)) \
- _FP_FRAC_SRS_##wc(R, 1, _FP_WFRACBITS_##fs); \
- else \
- R##_e--; \
- break; \
- \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_NAN): \
- _FP_CHOOSENAN(fs, wc, R, X, Y, '*'); \
- break; \
- \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_NORMAL): \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_ZERO): \
- R##_s = X##_s; \
- \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_NORMAL): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_NORMAL): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_ZERO): \
- _FP_FRAC_COPY_##wc(R, X); \
- R##_c = X##_c; \
- break; \
- \
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_NAN): \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_NAN): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_NAN): \
- R##_s = Y##_s; \
- \
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_ZERO): \
- _FP_FRAC_COPY_##wc(R, Y); \
- R##_c = Y##_c; \
- break; \
- \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_ZERO): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_INF): \
- R##_s = _FP_NANSIGN_##fs; \
- R##_c = FP_CLS_NAN; \
- _FP_FRAC_SET_##wc(R, _FP_NANFRAC_##fs); \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
- break; \
- \
- default: \
- abort(); \
- } \
-} while (0)
-
-
-/* Fused multiply-add. The input values should be cooked. */
-
-#define _FP_FMA(fs, wc, dwc, R, X, Y, Z) \
-do { \
- FP_DECL_##fs(T); \
- T##_s = X##_s ^ Y##_s; \
- T##_e = X##_e + Y##_e + 1; \
- switch (_FP_CLS_COMBINE(X##_c, Y##_c)) \
- { \
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_NORMAL): \
- switch (Z##_c) \
- { \
- case FP_CLS_INF: \
- case FP_CLS_NAN: \
- R##_s = Z##_s; \
- _FP_FRAC_COPY_##wc(R, Z); \
- R##_c = Z##_c; \
- break; \
+#define _FP_MUL(fs, wc, R, X, Y) \
+ do \
+ { \
+ R##_s = X##_s ^ Y##_s; \
+ R##_e = X##_e + Y##_e + 1; \
+ switch (_FP_CLS_COMBINE (X##_c, Y##_c)) \
+ { \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_NORMAL): \
+ R##_c = FP_CLS_NORMAL; \
\
- case FP_CLS_ZERO: \
- R##_c = FP_CLS_NORMAL; \
- R##_s = T##_s; \
- R##_e = T##_e; \
+ _FP_MUL_MEAT_##fs (R, X, Y); \
\
- _FP_MUL_MEAT_##fs(R, X, Y); \
+ if (_FP_FRAC_OVERP_##wc (fs, R)) \
+ _FP_FRAC_SRS_##wc (R, 1, _FP_WFRACBITS_##fs); \
+ else \
+ R##_e--; \
+ break; \
\
- if (_FP_FRAC_OVERP_##wc(fs, R)) \
- _FP_FRAC_SRS_##wc(R, 1, _FP_WFRACBITS_##fs); \
- else \
- R##_e--; \
- break; \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_NAN): \
+ _FP_CHOOSENAN (fs, wc, R, X, Y, '*'); \
+ break; \
\
- case FP_CLS_NORMAL:; \
- _FP_FRAC_DECL_##dwc(TD); \
- _FP_FRAC_DECL_##dwc(ZD); \
- _FP_FRAC_DECL_##dwc(RD); \
- _FP_MUL_MEAT_DW_##fs(TD, X, Y); \
- R##_e = T##_e; \
- int tsh = _FP_FRAC_HIGHBIT_DW_##dwc(fs, TD) == 0; \
- T##_e -= tsh; \
- int ediff = T##_e - Z##_e; \
- if (ediff >= 0) \
- { \
- int shift = _FP_WFRACBITS_##fs - tsh - ediff; \
- if (shift <= -_FP_WFRACBITS_##fs) \
- _FP_FRAC_SET_##dwc(ZD, _FP_MINFRAC_##dwc); \
- else \
- { \
- _FP_FRAC_COPY_##dwc##_##wc(ZD, Z); \
- if (shift < 0) \
- _FP_FRAC_SRS_##dwc(ZD, -shift, \
- _FP_WFRACBITS_DW_##fs); \
- else if (shift > 0) \
- _FP_FRAC_SLL_##dwc(ZD, shift); \
- } \
- R##_s = T##_s; \
- if (T##_s == Z##_s) \
- _FP_FRAC_ADD_##dwc(RD, TD, ZD); \
- else \
- { \
- _FP_FRAC_SUB_##dwc(RD, TD, ZD); \
- if (_FP_FRAC_NEGP_##dwc(RD)) \
- { \
- R##_s = Z##_s; \
- _FP_FRAC_SUB_##dwc(RD, ZD, TD); \
- } \
- } \
- } \
- else \
- { \
- R##_e = Z##_e; \
- R##_s = Z##_s; \
- _FP_FRAC_COPY_##dwc##_##wc(ZD, Z); \
- _FP_FRAC_SLL_##dwc(ZD, _FP_WFRACBITS_##fs); \
- int shift = -ediff - tsh; \
- if (shift >= _FP_WFRACBITS_DW_##fs) \
- _FP_FRAC_SET_##dwc(TD, _FP_MINFRAC_##dwc); \
- else if (shift > 0) \
- _FP_FRAC_SRS_##dwc(TD, shift, \
- _FP_WFRACBITS_DW_##fs); \
- if (Z##_s == T##_s) \
- _FP_FRAC_ADD_##dwc(RD, ZD, TD); \
- else \
- _FP_FRAC_SUB_##dwc(RD, ZD, TD); \
- } \
- if (_FP_FRAC_ZEROP_##dwc(RD)) \
- { \
- if (T##_s == Z##_s) \
- R##_s = Z##_s; \
- else \
- R##_s = (FP_ROUNDMODE == FP_RND_MINF); \
- _FP_FRAC_SET_##wc(R, _FP_ZEROFRAC_##wc); \
- R##_c = FP_CLS_ZERO; \
- } \
- else \
- { \
- int rlz; \
- _FP_FRAC_CLZ_##dwc(rlz, RD); \
- rlz -= _FP_WFRACXBITS_DW_##fs; \
- R##_e -= rlz; \
- int shift = _FP_WFRACBITS_##fs - rlz; \
- if (shift > 0) \
- _FP_FRAC_SRS_##dwc(RD, shift, \
- _FP_WFRACBITS_DW_##fs); \
- else if (shift < 0) \
- _FP_FRAC_SLL_##dwc(RD, -shift); \
- _FP_FRAC_COPY_##wc##_##dwc(R, RD); \
- R##_c = FP_CLS_NORMAL; \
- } \
- break; \
- } \
- goto done_fma; \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_NORMAL): \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_ZERO): \
+ R##_s = X##_s; \
\
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_NAN): \
- _FP_CHOOSENAN(fs, wc, T, X, Y, '*'); \
- break; \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_NORMAL): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_NORMAL): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_ZERO): \
+ _FP_FRAC_COPY_##wc (R, X); \
+ R##_c = X##_c; \
+ break; \
\
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_NORMAL): \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_ZERO): \
- T##_s = X##_s; \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_NAN): \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_NAN): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_NAN): \
+ R##_s = Y##_s; \
\
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_NORMAL): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_NORMAL): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_ZERO): \
- _FP_FRAC_COPY_##wc(T, X); \
- T##_c = X##_c; \
- break; \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_ZERO): \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ R##_c = Y##_c; \
+ break; \
\
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_NAN): \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_NAN): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_NAN): \
- T##_s = Y##_s; \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_ZERO): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_INF): \
+ R##_s = _FP_NANSIGN_##fs; \
+ R##_c = FP_CLS_NAN; \
+ _FP_FRAC_SET_##wc (R, _FP_NANFRAC_##fs); \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ break; \
\
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_ZERO): \
- _FP_FRAC_COPY_##wc(T, Y); \
- T##_c = Y##_c; \
- break; \
+ default: \
+ abort (); \
+ } \
+ } \
+ while (0)
+
+
+/* Fused multiply-add. The input values should be cooked. */
+
+#define _FP_FMA(fs, wc, dwc, R, X, Y, Z) \
+ do \
+ { \
+ FP_DECL_##fs (T); \
+ T##_s = X##_s ^ Y##_s; \
+ T##_e = X##_e + Y##_e + 1; \
+ switch (_FP_CLS_COMBINE (X##_c, Y##_c)) \
+ { \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_NORMAL): \
+ switch (Z##_c) \
+ { \
+ case FP_CLS_INF: \
+ case FP_CLS_NAN: \
+ R##_s = Z##_s; \
+ _FP_FRAC_COPY_##wc (R, Z); \
+ R##_c = Z##_c; \
+ break; \
+ \
+ case FP_CLS_ZERO: \
+ R##_c = FP_CLS_NORMAL; \
+ R##_s = T##_s; \
+ R##_e = T##_e; \
+ \
+ _FP_MUL_MEAT_##fs (R, X, Y); \
+ \
+ if (_FP_FRAC_OVERP_##wc (fs, R)) \
+ _FP_FRAC_SRS_##wc (R, 1, _FP_WFRACBITS_##fs); \
+ else \
+ R##_e--; \
+ break; \
+ \
+ case FP_CLS_NORMAL:; \
+ _FP_FRAC_DECL_##dwc (TD); \
+ _FP_FRAC_DECL_##dwc (ZD); \
+ _FP_FRAC_DECL_##dwc (RD); \
+ _FP_MUL_MEAT_DW_##fs (TD, X, Y); \
+ R##_e = T##_e; \
+ int tsh = _FP_FRAC_HIGHBIT_DW_##dwc (fs, TD) == 0; \
+ T##_e -= tsh; \
+ int ediff = T##_e - Z##_e; \
+ if (ediff >= 0) \
+ { \
+ int shift = _FP_WFRACBITS_##fs - tsh - ediff; \
+ if (shift <= -_FP_WFRACBITS_##fs) \
+ _FP_FRAC_SET_##dwc (ZD, _FP_MINFRAC_##dwc); \
+ else \
+ { \
+ _FP_FRAC_COPY_##dwc##_##wc (ZD, Z); \
+ if (shift < 0) \
+ _FP_FRAC_SRS_##dwc (ZD, -shift, \
+ _FP_WFRACBITS_DW_##fs); \
+ else if (shift > 0) \
+ _FP_FRAC_SLL_##dwc (ZD, shift); \
+ } \
+ R##_s = T##_s; \
+ if (T##_s == Z##_s) \
+ _FP_FRAC_ADD_##dwc (RD, TD, ZD); \
+ else \
+ { \
+ _FP_FRAC_SUB_##dwc (RD, TD, ZD); \
+ if (_FP_FRAC_NEGP_##dwc (RD)) \
+ { \
+ R##_s = Z##_s; \
+ _FP_FRAC_SUB_##dwc (RD, ZD, TD); \
+ } \
+ } \
+ } \
+ else \
+ { \
+ R##_e = Z##_e; \
+ R##_s = Z##_s; \
+ _FP_FRAC_COPY_##dwc##_##wc (ZD, Z); \
+ _FP_FRAC_SLL_##dwc (ZD, _FP_WFRACBITS_##fs); \
+ int shift = -ediff - tsh; \
+ if (shift >= _FP_WFRACBITS_DW_##fs) \
+ _FP_FRAC_SET_##dwc (TD, _FP_MINFRAC_##dwc); \
+ else if (shift > 0) \
+ _FP_FRAC_SRS_##dwc (TD, shift, \
+ _FP_WFRACBITS_DW_##fs); \
+ if (Z##_s == T##_s) \
+ _FP_FRAC_ADD_##dwc (RD, ZD, TD); \
+ else \
+ _FP_FRAC_SUB_##dwc (RD, ZD, TD); \
+ } \
+ if (_FP_FRAC_ZEROP_##dwc (RD)) \
+ { \
+ if (T##_s == Z##_s) \
+ R##_s = Z##_s; \
+ else \
+ R##_s = (FP_ROUNDMODE == FP_RND_MINF); \
+ _FP_FRAC_SET_##wc (R, _FP_ZEROFRAC_##wc); \
+ R##_c = FP_CLS_ZERO; \
+ } \
+ else \
+ { \
+ int rlz; \
+ _FP_FRAC_CLZ_##dwc (rlz, RD); \
+ rlz -= _FP_WFRACXBITS_DW_##fs; \
+ R##_e -= rlz; \
+ int shift = _FP_WFRACBITS_##fs - rlz; \
+ if (shift > 0) \
+ _FP_FRAC_SRS_##dwc (RD, shift, \
+ _FP_WFRACBITS_DW_##fs); \
+ else if (shift < 0) \
+ _FP_FRAC_SLL_##dwc (RD, -shift); \
+ _FP_FRAC_COPY_##wc##_##dwc (R, RD); \
+ R##_c = FP_CLS_NORMAL; \
+ } \
+ break; \
+ } \
+ goto done_fma; \
+ \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_NAN): \
+ _FP_CHOOSENAN (fs, wc, T, X, Y, '*'); \
+ break; \
+ \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_NORMAL): \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_ZERO): \
+ T##_s = X##_s; \
+ \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_NORMAL): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_NORMAL): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_ZERO): \
+ _FP_FRAC_COPY_##wc (T, X); \
+ T##_c = X##_c; \
+ break; \
+ \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_NAN): \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_NAN): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_NAN): \
+ T##_s = Y##_s; \
+ \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_ZERO): \
+ _FP_FRAC_COPY_##wc (T, Y); \
+ T##_c = Y##_c; \
+ break; \
+ \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_ZERO): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_INF): \
+ T##_s = _FP_NANSIGN_##fs; \
+ T##_c = FP_CLS_NAN; \
+ _FP_FRAC_SET_##wc (T, _FP_NANFRAC_##fs); \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ break; \
+ \
+ default: \
+ abort (); \
+ } \
+ \
+ /* T = X * Y is zero, infinity or NaN. */ \
+ switch (_FP_CLS_COMBINE (T##_c, Z##_c)) \
+ { \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_NAN): \
+ _FP_CHOOSENAN (fs, wc, R, T, Z, '+'); \
+ break; \
+ \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_NORMAL): \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_ZERO): \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_NORMAL): \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_ZERO): \
+ R##_s = T##_s; \
+ _FP_FRAC_COPY_##wc (R, T); \
+ R##_c = T##_c; \
+ break; \
+ \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_NAN): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_NAN): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_NORMAL): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_INF): \
+ R##_s = Z##_s; \
+ _FP_FRAC_COPY_##wc (R, Z); \
+ R##_c = Z##_c; \
+ break; \
+ \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_INF): \
+ if (T##_s == Z##_s) \
+ { \
+ R##_s = Z##_s; \
+ _FP_FRAC_COPY_##wc (R, Z); \
+ R##_c = Z##_c; \
+ } \
+ else \
+ { \
+ R##_s = _FP_NANSIGN_##fs; \
+ R##_c = FP_CLS_NAN; \
+ _FP_FRAC_SET_##wc (R, _FP_NANFRAC_##fs); \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ } \
+ break; \
+ \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_ZERO): \
+ if (T##_s == Z##_s) \
+ R##_s = Z##_s; \
+ else \
+ R##_s = (FP_ROUNDMODE == FP_RND_MINF); \
+ _FP_FRAC_COPY_##wc (R, Z); \
+ R##_c = Z##_c; \
+ break; \
+ \
+ default: \
+ abort (); \
+ } \
+ done_fma: ; \
+ } \
+ while (0)
+
+
+/*
+ * Main division routine. The input values should be cooked.
+ */
+
+#define _FP_DIV(fs, wc, R, X, Y) \
+ do \
+ { \
+ R##_s = X##_s ^ Y##_s; \
+ R##_e = X##_e - Y##_e; \
+ switch (_FP_CLS_COMBINE (X##_c, Y##_c)) \
+ { \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_NORMAL): \
+ R##_c = FP_CLS_NORMAL; \
\
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_ZERO): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_INF): \
- T##_s = _FP_NANSIGN_##fs; \
- T##_c = FP_CLS_NAN; \
- _FP_FRAC_SET_##wc(T, _FP_NANFRAC_##fs); \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
- break; \
+ _FP_DIV_MEAT_##fs (R, X, Y); \
+ break; \
\
- default: \
- abort(); \
- } \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_NAN): \
+ _FP_CHOOSENAN (fs, wc, R, X, Y, '/'); \
+ break; \
\
- /* T = X * Y is zero, infinity or NaN. */ \
- switch (_FP_CLS_COMBINE(T##_c, Z##_c)) \
- { \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_NAN): \
- _FP_CHOOSENAN(fs, wc, R, T, Z, '+'); \
- break; \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_NORMAL): \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_NAN, FP_CLS_ZERO): \
+ R##_s = X##_s; \
+ _FP_FRAC_COPY_##wc (R, X); \
+ R##_c = X##_c; \
+ break; \
\
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_NORMAL): \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_ZERO): \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_NORMAL): \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_ZERO): \
- R##_s = T##_s; \
- _FP_FRAC_COPY_##wc(R, T); \
- R##_c = T##_c; \
- break; \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_NAN): \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_NAN): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_NAN): \
+ R##_s = Y##_s; \
+ _FP_FRAC_COPY_##wc (R, Y); \
+ R##_c = Y##_c; \
+ break; \
\
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_NAN): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_NAN): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_NORMAL): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_INF): \
- R##_s = Z##_s; \
- _FP_FRAC_COPY_##wc(R, Z); \
- R##_c = Z##_c; \
- break; \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_NORMAL): \
+ R##_c = FP_CLS_ZERO; \
+ break; \
\
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_INF): \
- if (T##_s == Z##_s) \
- { \
- R##_s = Z##_s; \
- _FP_FRAC_COPY_##wc(R, Z); \
- R##_c = Z##_c; \
- } \
- else \
- { \
- R##_s = _FP_NANSIGN_##fs; \
- R##_c = FP_CLS_NAN; \
- _FP_FRAC_SET_##wc(R, _FP_NANFRAC_##fs); \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
- } \
- break; \
+ case _FP_CLS_COMBINE (FP_CLS_NORMAL, FP_CLS_ZERO): \
+ FP_SET_EXCEPTION (FP_EX_DIVZERO); \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_ZERO): \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_NORMAL): \
+ R##_c = FP_CLS_INF; \
+ break; \
\
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_ZERO): \
- if (T##_s == Z##_s) \
- R##_s = Z##_s; \
- else \
- R##_s = (FP_ROUNDMODE == FP_RND_MINF); \
- _FP_FRAC_COPY_##wc(R, Z); \
- R##_c = Z##_c; \
- break; \
+ case _FP_CLS_COMBINE (FP_CLS_INF, FP_CLS_INF): \
+ case _FP_CLS_COMBINE (FP_CLS_ZERO, FP_CLS_ZERO): \
+ R##_s = _FP_NANSIGN_##fs; \
+ R##_c = FP_CLS_NAN; \
+ _FP_FRAC_SET_##wc (R, _FP_NANFRAC_##fs); \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ break; \
\
- default: \
- abort(); \
- } \
- done_fma: ; \
-} while (0)
-
-
-/*
- * Main division routine. The input values should be cooked.
- */
-
-#define _FP_DIV(fs, wc, R, X, Y) \
-do { \
- R##_s = X##_s ^ Y##_s; \
- R##_e = X##_e - Y##_e; \
- switch (_FP_CLS_COMBINE(X##_c, Y##_c)) \
- { \
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_NORMAL): \
- R##_c = FP_CLS_NORMAL; \
- \
- _FP_DIV_MEAT_##fs(R,X,Y); \
- break; \
- \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_NAN): \
- _FP_CHOOSENAN(fs, wc, R, X, Y, '/'); \
- break; \
- \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_NORMAL): \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_NAN,FP_CLS_ZERO): \
- R##_s = X##_s; \
- _FP_FRAC_COPY_##wc(R, X); \
- R##_c = X##_c; \
- break; \
- \
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_NAN): \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_NAN): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_NAN): \
- R##_s = Y##_s; \
- _FP_FRAC_COPY_##wc(R, Y); \
- R##_c = Y##_c; \
- break; \
- \
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_NORMAL): \
- R##_c = FP_CLS_ZERO; \
- break; \
- \
- case _FP_CLS_COMBINE(FP_CLS_NORMAL,FP_CLS_ZERO): \
- FP_SET_EXCEPTION(FP_EX_DIVZERO); \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_ZERO): \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_NORMAL): \
- R##_c = FP_CLS_INF; \
- break; \
- \
- case _FP_CLS_COMBINE(FP_CLS_INF,FP_CLS_INF): \
- case _FP_CLS_COMBINE(FP_CLS_ZERO,FP_CLS_ZERO): \
- R##_s = _FP_NANSIGN_##fs; \
- R##_c = FP_CLS_NAN; \
- _FP_FRAC_SET_##wc(R, _FP_NANFRAC_##fs); \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
- break; \
- \
- default: \
- abort(); \
- } \
-} while (0)
+ default: \
+ abort (); \
+ } \
+ } \
+ while (0)
/*
@@ -1127,122 +1156,131 @@ do { \
*/
#define _FP_CMP(fs, wc, ret, X, Y, un) \
- do { \
- /* NANs are unordered */ \
- if ((X##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc(X)) \
- || (Y##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc(Y))) \
- { \
- ret = un; \
- } \
- else \
- { \
- int __is_zero_x; \
- int __is_zero_y; \
+ do \
+ { \
+ /* NANs are unordered */ \
+ if ((X##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc (X)) \
+ || (Y##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc (Y))) \
+ { \
+ ret = un; \
+ } \
+ else \
+ { \
+ int __is_zero_x; \
+ int __is_zero_y; \
\
- __is_zero_x = (!X##_e && _FP_FRAC_ZEROP_##wc(X)) ? 1 : 0; \
- __is_zero_y = (!Y##_e && _FP_FRAC_ZEROP_##wc(Y)) ? 1 : 0; \
+ __is_zero_x = (!X##_e && _FP_FRAC_ZEROP_##wc (X)) ? 1 : 0; \
+ __is_zero_y = (!Y##_e && _FP_FRAC_ZEROP_##wc (Y)) ? 1 : 0; \
\
- if (__is_zero_x && __is_zero_y) \
- ret = 0; \
- else if (__is_zero_x) \
- ret = Y##_s ? 1 : -1; \
- else if (__is_zero_y) \
- ret = X##_s ? -1 : 1; \
- else if (X##_s != Y##_s) \
- ret = X##_s ? -1 : 1; \
- else if (X##_e > Y##_e) \
- ret = X##_s ? -1 : 1; \
- else if (X##_e < Y##_e) \
- ret = X##_s ? 1 : -1; \
- else if (_FP_FRAC_GT_##wc(X, Y)) \
- ret = X##_s ? -1 : 1; \
- else if (_FP_FRAC_GT_##wc(Y, X)) \
- ret = X##_s ? 1 : -1; \
- else \
- ret = 0; \
- } \
- } while (0)
+ if (__is_zero_x && __is_zero_y) \
+ ret = 0; \
+ else if (__is_zero_x) \
+ ret = Y##_s ? 1 : -1; \
+ else if (__is_zero_y) \
+ ret = X##_s ? -1 : 1; \
+ else if (X##_s != Y##_s) \
+ ret = X##_s ? -1 : 1; \
+ else if (X##_e > Y##_e) \
+ ret = X##_s ? -1 : 1; \
+ else if (X##_e < Y##_e) \
+ ret = X##_s ? 1 : -1; \
+ else if (_FP_FRAC_GT_##wc (X, Y)) \
+ ret = X##_s ? -1 : 1; \
+ else if (_FP_FRAC_GT_##wc (Y, X)) \
+ ret = X##_s ? 1 : -1; \
+ else \
+ ret = 0; \
+ } \
+ } \
+ while (0)
/* Simplification for strict equality. */
-#define _FP_CMP_EQ(fs, wc, ret, X, Y) \
- do { \
- /* NANs are unordered */ \
- if ((X##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc(X)) \
- || (Y##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc(Y))) \
- { \
- ret = 1; \
- } \
- else \
- { \
- ret = !(X##_e == Y##_e \
- && _FP_FRAC_EQ_##wc(X, Y) \
- && (X##_s == Y##_s || (!X##_e && _FP_FRAC_ZEROP_##wc(X)))); \
- } \
- } while (0)
+#define _FP_CMP_EQ(fs, wc, ret, X, Y) \
+ do \
+ { \
+ /* NANs are unordered */ \
+ if ((X##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc (X)) \
+ || (Y##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc (Y))) \
+ { \
+ ret = 1; \
+ } \
+ else \
+ { \
+ ret = !(X##_e == Y##_e \
+ && _FP_FRAC_EQ_##wc (X, Y) \
+ && (X##_s == Y##_s || (!X##_e && _FP_FRAC_ZEROP_##wc (X)))); \
+ } \
+ } \
+ while (0)
/* Version to test unordered. */
#define _FP_CMP_UNORD(fs, wc, ret, X, Y) \
- do { \
- ret = ((X##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc(X)) \
- || (Y##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc(Y))); \
- } while (0)
+ do \
+ { \
+ ret = ((X##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc (X)) \
+ || (Y##_e == _FP_EXPMAX_##fs && !_FP_FRAC_ZEROP_##wc (Y))); \
+ } \
+ while (0)
/*
* Main square root routine. The input value should be cooked.
*/
-#define _FP_SQRT(fs, wc, R, X) \
-do { \
- _FP_FRAC_DECL_##wc(T); _FP_FRAC_DECL_##wc(S); \
- _FP_W_TYPE q; \
- switch (X##_c) \
- { \
- case FP_CLS_NAN: \
- _FP_FRAC_COPY_##wc(R, X); \
- R##_s = X##_s; \
- R##_c = FP_CLS_NAN; \
- break; \
- case FP_CLS_INF: \
- if (X##_s) \
- { \
- R##_s = _FP_NANSIGN_##fs; \
- R##_c = FP_CLS_NAN; /* NAN */ \
- _FP_FRAC_SET_##wc(R, _FP_NANFRAC_##fs); \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
- } \
- else \
- { \
- R##_s = 0; \
- R##_c = FP_CLS_INF; /* sqrt(+inf) = +inf */ \
- } \
- break; \
- case FP_CLS_ZERO: \
- R##_s = X##_s; \
- R##_c = FP_CLS_ZERO; /* sqrt(+-0) = +-0 */ \
- break; \
- case FP_CLS_NORMAL: \
- R##_s = 0; \
- if (X##_s) \
- { \
- R##_c = FP_CLS_NAN; /* NAN */ \
- R##_s = _FP_NANSIGN_##fs; \
- _FP_FRAC_SET_##wc(R, _FP_NANFRAC_##fs); \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
- break; \
- } \
- R##_c = FP_CLS_NORMAL; \
- if (X##_e & 1) \
- _FP_FRAC_SLL_##wc(X, 1); \
- R##_e = X##_e >> 1; \
- _FP_FRAC_SET_##wc(S, _FP_ZEROFRAC_##wc); \
- _FP_FRAC_SET_##wc(R, _FP_ZEROFRAC_##wc); \
- q = _FP_OVERFLOW_##fs >> 1; \
- _FP_SQRT_MEAT_##wc(R, S, T, X, q); \
- } \
- } while (0)
+#define _FP_SQRT(fs, wc, R, X) \
+ do \
+ { \
+ _FP_FRAC_DECL_##wc (T); \
+ _FP_FRAC_DECL_##wc (S); \
+ _FP_W_TYPE q; \
+ switch (X##_c) \
+ { \
+ case FP_CLS_NAN: \
+ _FP_FRAC_COPY_##wc (R, X); \
+ R##_s = X##_s; \
+ R##_c = FP_CLS_NAN; \
+ break; \
+ case FP_CLS_INF: \
+ if (X##_s) \
+ { \
+ R##_s = _FP_NANSIGN_##fs; \
+ R##_c = FP_CLS_NAN; /* NAN */ \
+ _FP_FRAC_SET_##wc (R, _FP_NANFRAC_##fs); \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ } \
+ else \
+ { \
+ R##_s = 0; \
+ R##_c = FP_CLS_INF; /* sqrt(+inf) = +inf */ \
+ } \
+ break; \
+ case FP_CLS_ZERO: \
+ R##_s = X##_s; \
+ R##_c = FP_CLS_ZERO; /* sqrt(+-0) = +-0 */ \
+ break; \
+ case FP_CLS_NORMAL: \
+ R##_s = 0; \
+ if (X##_s) \
+ { \
+ R##_c = FP_CLS_NAN; /* NAN */ \
+ R##_s = _FP_NANSIGN_##fs; \
+ _FP_FRAC_SET_##wc (R, _FP_NANFRAC_##fs); \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ break; \
+ } \
+ R##_c = FP_CLS_NORMAL; \
+ if (X##_e & 1) \
+ _FP_FRAC_SLL_##wc (X, 1); \
+ R##_e = X##_e >> 1; \
+ _FP_FRAC_SET_##wc (S, _FP_ZEROFRAC_##wc); \
+ _FP_FRAC_SET_##wc (R, _FP_ZEROFRAC_##wc); \
+ q = _FP_OVERFLOW_##fs >> 1; \
+ _FP_SQRT_MEAT_##wc (R, S, T, X, q); \
+ } \
+ } \
+ while (0)
/*
* Convert from FP to integer. Input is raw.
@@ -1260,292 +1298,306 @@ do { \
* depending on the sign in such case.
*/
#define _FP_TO_INT(fs, wc, r, X, rsize, rsigned) \
-do { \
- if (X##_e < _FP_EXPBIAS_##fs) \
+ do \
{ \
- r = 0; \
- if (X##_e == 0) \
+ if (X##_e < _FP_EXPBIAS_##fs) \
{ \
- if (!_FP_FRAC_ZEROP_##wc(X)) \
+ r = 0; \
+ if (X##_e == 0) \
{ \
- FP_SET_EXCEPTION(FP_EX_INEXACT); \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
+ if (!_FP_FRAC_ZEROP_##wc (X)) \
+ { \
+ FP_SET_EXCEPTION (FP_EX_INEXACT); \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ } \
} \
+ else \
+ FP_SET_EXCEPTION (FP_EX_INEXACT); \
} \
- else \
- FP_SET_EXCEPTION(FP_EX_INEXACT); \
- } \
- else if (X##_e >= _FP_EXPBIAS_##fs + rsize - (rsigned > 0 || X##_s) \
- || (!rsigned && X##_s)) \
- { \
- /* Overflow or converting to the most negative integer. */ \
- if (rsigned) \
+ else if (X##_e >= _FP_EXPBIAS_##fs + rsize - (rsigned > 0 || X##_s) \
+ || (!rsigned && X##_s)) \
{ \
- r = 1; \
- r <<= rsize - 1; \
- r -= 1 - X##_s; \
- } else { \
- r = 0; \
- if (X##_s) \
- r = ~r; \
- } \
+ /* Overflow or converting to the most negative integer. */ \
+ if (rsigned) \
+ { \
+ r = 1; \
+ r <<= rsize - 1; \
+ r -= 1 - X##_s; \
+ } else { \
+ r = 0; \
+ if (!X##_s) \
+ r = ~r; \
+ } \
\
- if (rsigned && X##_s && X##_e == _FP_EXPBIAS_##fs + rsize - 1) \
- { \
- /* Possibly converting to most negative integer; check the \
- mantissa. */ \
- int inexact = 0; \
- (void)((_FP_FRACBITS_##fs > rsize) \
- ? ({ _FP_FRAC_SRST_##wc(X, inexact, \
- _FP_FRACBITS_##fs - rsize, \
- _FP_FRACBITS_##fs); 0; }) \
- : 0); \
- if (!_FP_FRAC_ZEROP_##wc(X)) \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
- else if (inexact) \
- FP_SET_EXCEPTION(FP_EX_INEXACT); \
+ if (rsigned && X##_s && X##_e == _FP_EXPBIAS_##fs + rsize - 1) \
+ { \
+ /* Possibly converting to most negative integer; check the \
+ mantissa. */ \
+ int inexact = 0; \
+ (void) ((_FP_FRACBITS_##fs > rsize) \
+ ? ({ \
+ _FP_FRAC_SRST_##wc (X, inexact, \
+ _FP_FRACBITS_##fs - rsize, \
+ _FP_FRACBITS_##fs); \
+ 0; \
+ }) \
+ : 0); \
+ if (!_FP_FRAC_ZEROP_##wc (X)) \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ else if (inexact) \
+ FP_SET_EXCEPTION (FP_EX_INEXACT); \
+ } \
+ else \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
} \
else \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
+ { \
+ _FP_FRAC_HIGH_RAW_##fs (X) |= _FP_IMPLBIT_##fs; \
+ if (X##_e >= _FP_EXPBIAS_##fs + _FP_FRACBITS_##fs - 1) \
+ { \
+ _FP_FRAC_ASSEMBLE_##wc (r, X, rsize); \
+ r <<= X##_e - _FP_EXPBIAS_##fs - _FP_FRACBITS_##fs + 1; \
+ } \
+ else \
+ { \
+ int inexact; \
+ _FP_FRAC_SRST_##wc (X, inexact, \
+ (_FP_FRACBITS_##fs + _FP_EXPBIAS_##fs - 1 \
+ - X##_e), \
+ _FP_FRACBITS_##fs); \
+ if (inexact) \
+ FP_SET_EXCEPTION (FP_EX_INEXACT); \
+ _FP_FRAC_ASSEMBLE_##wc (r, X, rsize); \
+ } \
+ if (rsigned && X##_s) \
+ r = -r; \
+ } \
} \
- else \
+ while (0)
+
+/* Convert integer to fp. Output is raw. RTYPE is unsigned even if
+ input is signed. */
+#define _FP_FROM_INT(fs, wc, X, r, rsize, rtype) \
+ do \
{ \
- _FP_FRAC_HIGH_RAW_##fs(X) |= _FP_IMPLBIT_##fs; \
- if (X##_e >= _FP_EXPBIAS_##fs + _FP_FRACBITS_##fs - 1) \
+ if (r) \
{ \
- _FP_FRAC_ASSEMBLE_##wc(r, X, rsize); \
- r <<= X##_e - _FP_EXPBIAS_##fs - _FP_FRACBITS_##fs + 1; \
+ rtype ur_; \
+ \
+ if ((X##_s = (r < 0))) \
+ r = -(rtype) r; \
+ \
+ ur_ = (rtype) r; \
+ (void) ((rsize <= _FP_W_TYPE_SIZE) \
+ ? ({ \
+ int lz_; \
+ __FP_CLZ (lz_, (_FP_W_TYPE) ur_); \
+ X##_e = _FP_EXPBIAS_##fs + _FP_W_TYPE_SIZE - 1 - lz_; \
+ }) \
+ : ((rsize <= 2 * _FP_W_TYPE_SIZE) \
+ ? ({ \
+ int lz_; \
+ __FP_CLZ_2 (lz_, \
+ (_FP_W_TYPE) (ur_ >> _FP_W_TYPE_SIZE), \
+ (_FP_W_TYPE) ur_); \
+ X##_e = (_FP_EXPBIAS_##fs + 2 * _FP_W_TYPE_SIZE - 1 \
+ - lz_); \
+ }) \
+ : (abort (), 0))); \
+ \
+ if (rsize - 1 + _FP_EXPBIAS_##fs >= _FP_EXPMAX_##fs \
+ && X##_e >= _FP_EXPMAX_##fs) \
+ { \
+ /* Exponent too big; overflow to infinity. (May also \
+ happen after rounding below.) */ \
+ _FP_OVERFLOW_SEMIRAW (fs, wc, X); \
+ goto pack_semiraw; \
+ } \
+ \
+ if (rsize <= _FP_FRACBITS_##fs \
+ || X##_e < _FP_EXPBIAS_##fs + _FP_FRACBITS_##fs) \
+ { \
+ /* Exactly representable; shift left. */ \
+ _FP_FRAC_DISASSEMBLE_##wc (X, ur_, rsize); \
+ if (_FP_EXPBIAS_##fs + _FP_FRACBITS_##fs - 1 - X##_e > 0) \
+ _FP_FRAC_SLL_##wc (X, (_FP_EXPBIAS_##fs \
+ + _FP_FRACBITS_##fs - 1 - X##_e)); \
+ } \
+ else \
+ { \
+ /* More bits in integer than in floating type; need to \
+ round. */ \
+ if (_FP_EXPBIAS_##fs + _FP_WFRACBITS_##fs - 1 < X##_e) \
+ ur_ = ((ur_ >> (X##_e - _FP_EXPBIAS_##fs \
+ - _FP_WFRACBITS_##fs + 1)) \
+ | ((ur_ << (rsize - (X##_e - _FP_EXPBIAS_##fs \
+ - _FP_WFRACBITS_##fs + 1))) \
+ != 0)); \
+ _FP_FRAC_DISASSEMBLE_##wc (X, ur_, rsize); \
+ if ((_FP_EXPBIAS_##fs + _FP_WFRACBITS_##fs - 1 - X##_e) > 0) \
+ _FP_FRAC_SLL_##wc (X, (_FP_EXPBIAS_##fs \
+ + _FP_WFRACBITS_##fs - 1 - X##_e)); \
+ _FP_FRAC_HIGH_##fs (X) &= ~(_FP_W_TYPE) _FP_IMPLBIT_SH_##fs; \
+ pack_semiraw: \
+ _FP_PACK_SEMIRAW (fs, wc, X); \
+ } \
} \
else \
{ \
- int inexact; \
- _FP_FRAC_SRST_##wc(X, inexact, \
- (_FP_FRACBITS_##fs + _FP_EXPBIAS_##fs - 1 \
- - X##_e), \
- _FP_FRACBITS_##fs); \
- if (inexact) \
- FP_SET_EXCEPTION(FP_EX_INEXACT); \
- _FP_FRAC_ASSEMBLE_##wc(r, X, rsize); \
+ X##_s = 0; \
+ X##_e = 0; \
+ _FP_FRAC_SET_##wc (X, _FP_ZEROFRAC_##wc); \
} \
- if (rsigned && X##_s) \
- r = -r; \
} \
-} while (0)
-
-/* Convert integer to fp. Output is raw. RTYPE is unsigned even if
- input is signed. */
-#define _FP_FROM_INT(fs, wc, X, r, rsize, rtype) \
- do { \
- if (r) \
- { \
- rtype ur_; \
- \
- if ((X##_s = (r < 0))) \
- r = -(rtype)r; \
- \
- ur_ = (rtype) r; \
- (void)((rsize <= _FP_W_TYPE_SIZE) \
- ? ({ \
- int lz_; \
- __FP_CLZ(lz_, (_FP_W_TYPE)ur_); \
- X##_e = _FP_EXPBIAS_##fs + _FP_W_TYPE_SIZE - 1 - lz_; \
- }) \
- : ((rsize <= 2 * _FP_W_TYPE_SIZE) \
- ? ({ \
- int lz_; \
- __FP_CLZ_2(lz_, (_FP_W_TYPE)(ur_ >> _FP_W_TYPE_SIZE), \
- (_FP_W_TYPE)ur_); \
- X##_e = (_FP_EXPBIAS_##fs + 2 * _FP_W_TYPE_SIZE - 1 \
- - lz_); \
- }) \
- : (abort(), 0))); \
- \
- if (rsize - 1 + _FP_EXPBIAS_##fs >= _FP_EXPMAX_##fs \
- && X##_e >= _FP_EXPMAX_##fs) \
- { \
- /* Exponent too big; overflow to infinity. (May also \
- happen after rounding below.) */ \
- _FP_OVERFLOW_SEMIRAW(fs, wc, X); \
- goto pack_semiraw; \
- } \
- \
- if (rsize <= _FP_FRACBITS_##fs \
- || X##_e < _FP_EXPBIAS_##fs + _FP_FRACBITS_##fs) \
- { \
- /* Exactly representable; shift left. */ \
- _FP_FRAC_DISASSEMBLE_##wc(X, ur_, rsize); \
- if (_FP_EXPBIAS_##fs + _FP_FRACBITS_##fs - 1 - X##_e > 0) \
- _FP_FRAC_SLL_##wc(X, (_FP_EXPBIAS_##fs \
- + _FP_FRACBITS_##fs - 1 - X##_e)); \
- } \
- else \
- { \
- /* More bits in integer than in floating type; need to \
- round. */ \
- if (_FP_EXPBIAS_##fs + _FP_WFRACBITS_##fs - 1 < X##_e) \
- ur_ = ((ur_ >> (X##_e - _FP_EXPBIAS_##fs \
- - _FP_WFRACBITS_##fs + 1)) \
- | ((ur_ << (rsize - (X##_e - _FP_EXPBIAS_##fs \
- - _FP_WFRACBITS_##fs + 1))) \
- != 0)); \
- _FP_FRAC_DISASSEMBLE_##wc(X, ur_, rsize); \
- if ((_FP_EXPBIAS_##fs + _FP_WFRACBITS_##fs - 1 - X##_e) > 0) \
- _FP_FRAC_SLL_##wc(X, (_FP_EXPBIAS_##fs \
- + _FP_WFRACBITS_##fs - 1 - X##_e)); \
- _FP_FRAC_HIGH_##fs(X) &= ~(_FP_W_TYPE)_FP_IMPLBIT_SH_##fs; \
- pack_semiraw: \
- _FP_PACK_SEMIRAW(fs, wc, X); \
- } \
- } \
- else \
- { \
- X##_s = 0; \
- X##_e = 0; \
- _FP_FRAC_SET_##wc(X, _FP_ZEROFRAC_##wc); \
- } \
- } while (0)
+ while (0)
/* Extend from a narrower floating-point format to a wider one. Input
and output are raw. */
-#define FP_EXTEND(dfs,sfs,dwc,swc,D,S) \
-do { \
- if (_FP_FRACBITS_##dfs < _FP_FRACBITS_##sfs \
- || (_FP_EXPMAX_##dfs - _FP_EXPBIAS_##dfs \
- < _FP_EXPMAX_##sfs - _FP_EXPBIAS_##sfs) \
- || (_FP_EXPBIAS_##dfs < _FP_EXPBIAS_##sfs + _FP_FRACBITS_##sfs - 1 \
- && _FP_EXPBIAS_##dfs != _FP_EXPBIAS_##sfs)) \
- abort(); \
- D##_s = S##_s; \
- _FP_FRAC_COPY_##dwc##_##swc(D, S); \
- if (_FP_EXP_NORMAL(sfs, swc, S)) \
- { \
- D##_e = S##_e + _FP_EXPBIAS_##dfs - _FP_EXPBIAS_##sfs; \
- _FP_FRAC_SLL_##dwc(D, (_FP_FRACBITS_##dfs - _FP_FRACBITS_##sfs)); \
- } \
- else \
- { \
- if (S##_e == 0) \
- { \
- if (_FP_FRAC_ZEROP_##swc(S)) \
- D##_e = 0; \
- else if (_FP_EXPBIAS_##dfs \
- < _FP_EXPBIAS_##sfs + _FP_FRACBITS_##sfs - 1) \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- _FP_FRAC_SLL_##dwc(D, (_FP_FRACBITS_##dfs \
- - _FP_FRACBITS_##sfs)); \
- D##_e = 0; \
- } \
- else \
- { \
- int _lz; \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- _FP_FRAC_CLZ_##swc(_lz, S); \
- _FP_FRAC_SLL_##dwc(D, \
- _lz + _FP_FRACBITS_##dfs \
- - _FP_FRACTBITS_##sfs); \
- D##_e = (_FP_EXPBIAS_##dfs - _FP_EXPBIAS_##sfs + 1 \
- + _FP_FRACXBITS_##sfs - _lz); \
- } \
- } \
- else \
- { \
- D##_e = _FP_EXPMAX_##dfs; \
- if (!_FP_FRAC_ZEROP_##swc(S)) \
- { \
- if (_FP_FRAC_SNANP(sfs, S)) \
- FP_SET_EXCEPTION(FP_EX_INVALID); \
- _FP_FRAC_SLL_##dwc(D, (_FP_FRACBITS_##dfs \
- - _FP_FRACBITS_##sfs)); \
- } \
- } \
- } \
-} while (0)
+#define FP_EXTEND(dfs, sfs, dwc, swc, D, S) \
+ do \
+ { \
+ if (_FP_FRACBITS_##dfs < _FP_FRACBITS_##sfs \
+ || (_FP_EXPMAX_##dfs - _FP_EXPBIAS_##dfs \
+ < _FP_EXPMAX_##sfs - _FP_EXPBIAS_##sfs) \
+ || (_FP_EXPBIAS_##dfs < _FP_EXPBIAS_##sfs + _FP_FRACBITS_##sfs - 1 \
+ && _FP_EXPBIAS_##dfs != _FP_EXPBIAS_##sfs)) \
+ abort (); \
+ D##_s = S##_s; \
+ _FP_FRAC_COPY_##dwc##_##swc (D, S); \
+ if (_FP_EXP_NORMAL (sfs, swc, S)) \
+ { \
+ D##_e = S##_e + _FP_EXPBIAS_##dfs - _FP_EXPBIAS_##sfs; \
+ _FP_FRAC_SLL_##dwc (D, (_FP_FRACBITS_##dfs - _FP_FRACBITS_##sfs)); \
+ } \
+ else \
+ { \
+ if (S##_e == 0) \
+ { \
+ if (_FP_FRAC_ZEROP_##swc (S)) \
+ D##_e = 0; \
+ else if (_FP_EXPBIAS_##dfs \
+ < _FP_EXPBIAS_##sfs + _FP_FRACBITS_##sfs - 1) \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ _FP_FRAC_SLL_##dwc (D, (_FP_FRACBITS_##dfs \
+ - _FP_FRACBITS_##sfs)); \
+ D##_e = 0; \
+ } \
+ else \
+ { \
+ int _lz; \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ _FP_FRAC_CLZ_##swc (_lz, S); \
+ _FP_FRAC_SLL_##dwc (D, \
+ _lz + _FP_FRACBITS_##dfs \
+ - _FP_FRACTBITS_##sfs); \
+ D##_e = (_FP_EXPBIAS_##dfs - _FP_EXPBIAS_##sfs + 1 \
+ + _FP_FRACXBITS_##sfs - _lz); \
+ } \
+ } \
+ else \
+ { \
+ D##_e = _FP_EXPMAX_##dfs; \
+ if (!_FP_FRAC_ZEROP_##swc (S)) \
+ { \
+ if (_FP_FRAC_SNANP (sfs, S)) \
+ FP_SET_EXCEPTION (FP_EX_INVALID); \
+ _FP_FRAC_SLL_##dwc (D, (_FP_FRACBITS_##dfs \
+ - _FP_FRACBITS_##sfs)); \
+ _FP_SETQNAN (dfs, dwc, D); \
+ } \
+ } \
+ } \
+ } \
+ while (0)
/* Truncate from a wider floating-point format to a narrower one.
Input and output are semi-raw. */
-#define FP_TRUNC(dfs,sfs,dwc,swc,D,S) \
-do { \
- if (_FP_FRACBITS_##sfs < _FP_FRACBITS_##dfs \
- || (_FP_EXPBIAS_##sfs < _FP_EXPBIAS_##dfs + _FP_FRACBITS_##dfs - 1 \
- && _FP_EXPBIAS_##sfs != _FP_EXPBIAS_##dfs)) \
- abort(); \
- D##_s = S##_s; \
- if (_FP_EXP_NORMAL(sfs, swc, S)) \
- { \
- D##_e = S##_e + _FP_EXPBIAS_##dfs - _FP_EXPBIAS_##sfs; \
- if (D##_e >= _FP_EXPMAX_##dfs) \
- _FP_OVERFLOW_SEMIRAW(dfs, dwc, D); \
- else \
- { \
- if (D##_e <= 0) \
- { \
- if (D##_e < 1 - _FP_FRACBITS_##dfs) \
- { \
- _FP_FRAC_SET_##swc(S, _FP_ZEROFRAC_##swc); \
- _FP_FRAC_LOW_##swc(S) |= 1; \
- } \
- else \
- { \
- _FP_FRAC_HIGH_##sfs(S) |= _FP_IMPLBIT_SH_##sfs; \
- _FP_FRAC_SRS_##swc(S, (_FP_WFRACBITS_##sfs \
- - _FP_WFRACBITS_##dfs + 1 - D##_e), \
- _FP_WFRACBITS_##sfs); \
- } \
- D##_e = 0; \
- } \
- else \
- _FP_FRAC_SRS_##swc(S, (_FP_WFRACBITS_##sfs \
- - _FP_WFRACBITS_##dfs), \
- _FP_WFRACBITS_##sfs); \
- _FP_FRAC_COPY_##dwc##_##swc(D, S); \
- } \
- } \
- else \
- { \
- if (S##_e == 0) \
- { \
- D##_e = 0; \
- if (_FP_FRAC_ZEROP_##swc(S)) \
- _FP_FRAC_SET_##dwc(D, _FP_ZEROFRAC_##dwc); \
- else \
- { \
- FP_SET_EXCEPTION(FP_EX_DENORM); \
- if (_FP_EXPBIAS_##sfs \
- < _FP_EXPBIAS_##dfs + _FP_FRACBITS_##dfs - 1) \
- { \
- _FP_FRAC_SRS_##swc(S, (_FP_WFRACBITS_##sfs \
- - _FP_WFRACBITS_##dfs), \
- _FP_WFRACBITS_##sfs); \
- _FP_FRAC_COPY_##dwc##_##swc(D, S); \
- } \
- else \
- { \
- _FP_FRAC_SET_##dwc(D, _FP_ZEROFRAC_##dwc); \
- _FP_FRAC_LOW_##dwc(D) |= 1; \
- } \
- } \
- } \
- else \
- { \
- D##_e = _FP_EXPMAX_##dfs; \
- if (_FP_FRAC_ZEROP_##swc(S)) \
- _FP_FRAC_SET_##dwc(D, _FP_ZEROFRAC_##dwc); \
- else \
- { \
- _FP_CHECK_SIGNAN_SEMIRAW(sfs, swc, S); \
- _FP_FRAC_SRL_##swc(S, (_FP_WFRACBITS_##sfs \
- - _FP_WFRACBITS_##dfs)); \
- _FP_FRAC_COPY_##dwc##_##swc(D, S); \
- /* Semi-raw NaN must have all workbits cleared. */ \
- _FP_FRAC_LOW_##dwc(D) \
- &= ~(_FP_W_TYPE) ((1 << _FP_WORKBITS) - 1); \
- _FP_SETQNAN_SEMIRAW(dfs, dwc, D); \
- } \
- } \
- } \
-} while (0)
+#define FP_TRUNC(dfs, sfs, dwc, swc, D, S) \
+ do \
+ { \
+ if (_FP_FRACBITS_##sfs < _FP_FRACBITS_##dfs \
+ || (_FP_EXPBIAS_##sfs < _FP_EXPBIAS_##dfs + _FP_FRACBITS_##dfs - 1 \
+ && _FP_EXPBIAS_##sfs != _FP_EXPBIAS_##dfs)) \
+ abort (); \
+ D##_s = S##_s; \
+ if (_FP_EXP_NORMAL (sfs, swc, S)) \
+ { \
+ D##_e = S##_e + _FP_EXPBIAS_##dfs - _FP_EXPBIAS_##sfs; \
+ if (D##_e >= _FP_EXPMAX_##dfs) \
+ _FP_OVERFLOW_SEMIRAW (dfs, dwc, D); \
+ else \
+ { \
+ if (D##_e <= 0) \
+ { \
+ if (D##_e < 1 - _FP_FRACBITS_##dfs) \
+ { \
+ _FP_FRAC_SET_##swc (S, _FP_ZEROFRAC_##swc); \
+ _FP_FRAC_LOW_##swc (S) |= 1; \
+ } \
+ else \
+ { \
+ _FP_FRAC_HIGH_##sfs (S) |= _FP_IMPLBIT_SH_##sfs; \
+ _FP_FRAC_SRS_##swc (S, (_FP_WFRACBITS_##sfs \
+ - _FP_WFRACBITS_##dfs \
+ + 1 - D##_e), \
+ _FP_WFRACBITS_##sfs); \
+ } \
+ D##_e = 0; \
+ } \
+ else \
+ _FP_FRAC_SRS_##swc (S, (_FP_WFRACBITS_##sfs \
+ - _FP_WFRACBITS_##dfs), \
+ _FP_WFRACBITS_##sfs); \
+ _FP_FRAC_COPY_##dwc##_##swc (D, S); \
+ } \
+ } \
+ else \
+ { \
+ if (S##_e == 0) \
+ { \
+ D##_e = 0; \
+ if (_FP_FRAC_ZEROP_##swc (S)) \
+ _FP_FRAC_SET_##dwc (D, _FP_ZEROFRAC_##dwc); \
+ else \
+ { \
+ FP_SET_EXCEPTION (FP_EX_DENORM); \
+ if (_FP_EXPBIAS_##sfs \
+ < _FP_EXPBIAS_##dfs + _FP_FRACBITS_##dfs - 1) \
+ { \
+ _FP_FRAC_SRS_##swc (S, (_FP_WFRACBITS_##sfs \
+ - _FP_WFRACBITS_##dfs), \
+ _FP_WFRACBITS_##sfs); \
+ _FP_FRAC_COPY_##dwc##_##swc (D, S); \
+ } \
+ else \
+ { \
+ _FP_FRAC_SET_##dwc (D, _FP_ZEROFRAC_##dwc); \
+ _FP_FRAC_LOW_##dwc (D) |= 1; \
+ } \
+ } \
+ } \
+ else \
+ { \
+ D##_e = _FP_EXPMAX_##dfs; \
+ if (_FP_FRAC_ZEROP_##swc (S)) \
+ _FP_FRAC_SET_##dwc (D, _FP_ZEROFRAC_##dwc); \
+ else \
+ { \
+ _FP_CHECK_SIGNAN_SEMIRAW (sfs, swc, S); \
+ _FP_FRAC_SRL_##swc (S, (_FP_WFRACBITS_##sfs \
+ - _FP_WFRACBITS_##dfs)); \
+ _FP_FRAC_COPY_##dwc##_##swc (D, S); \
+ /* Semi-raw NaN must have all workbits cleared. */ \
+ _FP_FRAC_LOW_##dwc (D) \
+ &= ~(_FP_W_TYPE) ((1 << _FP_WORKBITS) - 1); \
+ _FP_SETQNAN_SEMIRAW (dfs, dwc, D); \
+ } \
+ } \
+ } \
+ } \
+ while (0)
/*
* Helper primitives.
@@ -1555,64 +1607,72 @@ do { \
#ifndef __FP_CLZ
/* GCC 3.4 and later provide the builtins for us. */
-#define __FP_CLZ(r, x) \
- do { \
- if (sizeof (_FP_W_TYPE) == sizeof (unsigned int)) \
- r = __builtin_clz (x); \
- else if (sizeof (_FP_W_TYPE) == sizeof (unsigned long)) \
- r = __builtin_clzl (x); \
- else if (sizeof (_FP_W_TYPE) == sizeof (unsigned long long)) \
- r = __builtin_clzll (x); \
- else \
- abort (); \
- } while (0)
+# define __FP_CLZ(r, x) \
+ do \
+ { \
+ if (sizeof (_FP_W_TYPE) == sizeof (unsigned int)) \
+ r = __builtin_clz (x); \
+ else if (sizeof (_FP_W_TYPE) == sizeof (unsigned long)) \
+ r = __builtin_clzl (x); \
+ else if (sizeof (_FP_W_TYPE) == sizeof (unsigned long long)) \
+ r = __builtin_clzll (x); \
+ else \
+ abort (); \
+ } \
+ while (0)
#endif /* ndef __FP_CLZ */
#define _FP_DIV_HELP_imm(q, r, n, d) \
- do { \
- q = n / d, r = n % d; \
- } while (0)
+ do \
+ { \
+ q = n / d, r = n % d; \
+ } \
+ while (0)
/* A restoring bit-by-bit division primitive. */
#define _FP_DIV_MEAT_N_loop(fs, wc, R, X, Y) \
- do { \
- int count = _FP_WFRACBITS_##fs; \
- _FP_FRAC_DECL_##wc (u); \
- _FP_FRAC_DECL_##wc (v); \
- _FP_FRAC_COPY_##wc (u, X); \
- _FP_FRAC_COPY_##wc (v, Y); \
- _FP_FRAC_SET_##wc (R, _FP_ZEROFRAC_##wc); \
- /* Normalize U and V. */ \
- _FP_FRAC_SLL_##wc (u, _FP_WFRACXBITS_##fs); \
- _FP_FRAC_SLL_##wc (v, _FP_WFRACXBITS_##fs); \
- /* First round. Since the operands are normalized, either the \
- first or second bit will be set in the fraction. Produce a \
- normalized result by checking which and adjusting the loop \
- count and exponent accordingly. */ \
- if (_FP_FRAC_GE_1 (u, v)) \
- { \
- _FP_FRAC_SUB_##wc (u, u, v); \
- _FP_FRAC_LOW_##wc (R) |= 1; \
- count--; \
- } \
- else \
- R##_e--; \
- /* Subsequent rounds. */ \
- do { \
- int msb = (_FP_WS_TYPE) _FP_FRAC_HIGH_##wc (u) < 0; \
- _FP_FRAC_SLL_##wc (u, 1); \
- _FP_FRAC_SLL_##wc (R, 1); \
- if (msb || _FP_FRAC_GE_1 (u, v)) \
+ do \
+ { \
+ int count = _FP_WFRACBITS_##fs; \
+ _FP_FRAC_DECL_##wc (u); \
+ _FP_FRAC_DECL_##wc (v); \
+ _FP_FRAC_COPY_##wc (u, X); \
+ _FP_FRAC_COPY_##wc (v, Y); \
+ _FP_FRAC_SET_##wc (R, _FP_ZEROFRAC_##wc); \
+ /* Normalize U and V. */ \
+ _FP_FRAC_SLL_##wc (u, _FP_WFRACXBITS_##fs); \
+ _FP_FRAC_SLL_##wc (v, _FP_WFRACXBITS_##fs); \
+ /* First round. Since the operands are normalized, either the \
+ first or second bit will be set in the fraction. Produce a \
+ normalized result by checking which and adjusting the loop \
+ count and exponent accordingly. */ \
+ if (_FP_FRAC_GE_1 (u, v)) \
{ \
_FP_FRAC_SUB_##wc (u, u, v); \
_FP_FRAC_LOW_##wc (R) |= 1; \
+ count--; \
} \
- } while (--count > 0); \
- /* If there's anything left in U, the result is inexact. */ \
- _FP_FRAC_LOW_##wc (R) |= !_FP_FRAC_ZEROP_##wc (u); \
- } while (0)
+ else \
+ R##_e--; \
+ /* Subsequent rounds. */ \
+ do \
+ { \
+ int msb = (_FP_WS_TYPE) _FP_FRAC_HIGH_##wc (u) < 0; \
+ _FP_FRAC_SLL_##wc (u, 1); \
+ _FP_FRAC_SLL_##wc (R, 1); \
+ if (msb || _FP_FRAC_GE_1 (u, v)) \
+ { \
+ _FP_FRAC_SUB_##wc (u, u, v); \
+ _FP_FRAC_LOW_##wc (R) |= 1; \
+ } \
+ } \
+ while (--count > 0); \
+ /* If there's anything left in U, the result is inexact. */ \
+ _FP_FRAC_LOW_##wc (R) |= !_FP_FRAC_ZEROP_##wc (u); \
+ } \
+ while (0)
#define _FP_DIV_MEAT_1_loop(fs, R, X, Y) _FP_DIV_MEAT_N_loop (fs, 1, R, X, Y)
#define _FP_DIV_MEAT_2_loop(fs, R, X, Y) _FP_DIV_MEAT_N_loop (fs, 2, R, X, Y)
diff --git a/soft-fp/quad.h b/soft-fp/quad.h
index 9a16bf3284..5002da5a53 100644
--- a/soft-fp/quad.h
+++ b/soft-fp/quad.h
@@ -31,15 +31,15 @@
<http://www.gnu.org/licenses/>. */
#if _FP_W_TYPE_SIZE < 32
-#error "Here's a nickel, kid. Go buy yourself a real computer."
+# error "Here's a nickel, kid. Go buy yourself a real computer."
#endif
#if _FP_W_TYPE_SIZE < 64
-#define _FP_FRACTBITS_Q (4*_FP_W_TYPE_SIZE)
-#define _FP_FRACTBITS_DW_Q (8*_FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_Q (4*_FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_DW_Q (8*_FP_W_TYPE_SIZE)
#else
-#define _FP_FRACTBITS_Q (2*_FP_W_TYPE_SIZE)
-#define _FP_FRACTBITS_DW_Q (4*_FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_Q (2*_FP_W_TYPE_SIZE)
+# define _FP_FRACTBITS_DW_Q (4*_FP_W_TYPE_SIZE)
#endif
#define _FP_FRACBITS_Q 113
@@ -51,233 +51,271 @@
#define _FP_EXPMAX_Q 32767
#define _FP_QNANBIT_Q \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_Q-2) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_Q-2) % _FP_W_TYPE_SIZE)
#define _FP_QNANBIT_SH_Q \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_Q-2+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_Q-2+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
#define _FP_IMPLBIT_Q \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_Q-1) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_Q-1) % _FP_W_TYPE_SIZE)
#define _FP_IMPLBIT_SH_Q \
- ((_FP_W_TYPE)1 << (_FP_FRACBITS_Q-1+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_FRACBITS_Q-1+_FP_WORKBITS) % _FP_W_TYPE_SIZE)
#define _FP_OVERFLOW_Q \
- ((_FP_W_TYPE)1 << (_FP_WFRACBITS_Q % _FP_W_TYPE_SIZE))
+ ((_FP_W_TYPE) 1 << (_FP_WFRACBITS_Q % _FP_W_TYPE_SIZE))
#define _FP_WFRACBITS_DW_Q (2 * _FP_WFRACBITS_Q)
#define _FP_WFRACXBITS_DW_Q (_FP_FRACTBITS_DW_Q - _FP_WFRACBITS_DW_Q)
#define _FP_HIGHBIT_DW_Q \
- ((_FP_W_TYPE)1 << (_FP_WFRACBITS_DW_Q - 1) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_WFRACBITS_DW_Q - 1) % _FP_W_TYPE_SIZE)
-typedef float TFtype __attribute__((mode(TF)));
+typedef float TFtype __attribute__ ((mode (TF)));
#if _FP_W_TYPE_SIZE < 64
union _FP_UNION_Q
{
- TFtype flt;
- struct _FP_STRUCT_LAYOUT
- {
-#if __BYTE_ORDER == __BIG_ENDIAN
- unsigned sign : 1;
- unsigned exp : _FP_EXPBITS_Q;
- unsigned long frac3 : _FP_FRACBITS_Q - (_FP_IMPLBIT_Q != 0)-(_FP_W_TYPE_SIZE * 3);
- unsigned long frac2 : _FP_W_TYPE_SIZE;
- unsigned long frac1 : _FP_W_TYPE_SIZE;
- unsigned long frac0 : _FP_W_TYPE_SIZE;
-#else
- unsigned long frac0 : _FP_W_TYPE_SIZE;
- unsigned long frac1 : _FP_W_TYPE_SIZE;
- unsigned long frac2 : _FP_W_TYPE_SIZE;
- unsigned long frac3 : _FP_FRACBITS_Q - (_FP_IMPLBIT_Q != 0)-(_FP_W_TYPE_SIZE * 3);
- unsigned exp : _FP_EXPBITS_Q;
- unsigned sign : 1;
-#endif /* not bigendian */
- } bits __attribute__((packed));
+ TFtype flt;
+ struct _FP_STRUCT_LAYOUT
+ {
+# if __BYTE_ORDER == __BIG_ENDIAN
+ unsigned sign : 1;
+ unsigned exp : _FP_EXPBITS_Q;
+ unsigned long frac3 : _FP_FRACBITS_Q - (_FP_IMPLBIT_Q != 0)-(_FP_W_TYPE_SIZE * 3);
+ unsigned long frac2 : _FP_W_TYPE_SIZE;
+ unsigned long frac1 : _FP_W_TYPE_SIZE;
+ unsigned long frac0 : _FP_W_TYPE_SIZE;
+# else
+ unsigned long frac0 : _FP_W_TYPE_SIZE;
+ unsigned long frac1 : _FP_W_TYPE_SIZE;
+ unsigned long frac2 : _FP_W_TYPE_SIZE;
+ unsigned long frac3 : _FP_FRACBITS_Q - (_FP_IMPLBIT_Q != 0)-(_FP_W_TYPE_SIZE * 3);
+ unsigned exp : _FP_EXPBITS_Q;
+ unsigned sign : 1;
+# endif /* not bigendian */
+ } bits __attribute__ ((packed));
};
-#define FP_DECL_Q(X) _FP_DECL(4,X)
-#define FP_UNPACK_RAW_Q(X,val) _FP_UNPACK_RAW_4(Q,X,val)
-#define FP_UNPACK_RAW_QP(X,val) _FP_UNPACK_RAW_4_P(Q,X,val)
-#define FP_PACK_RAW_Q(val,X) _FP_PACK_RAW_4(Q,val,X)
-#define FP_PACK_RAW_QP(val,X) \
- do { \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_4_P(Q,val,X); \
- } while (0)
-
-#define FP_UNPACK_Q(X,val) \
- do { \
- _FP_UNPACK_RAW_4(Q,X,val); \
- _FP_UNPACK_CANONICAL(Q,4,X); \
- } while (0)
-
-#define FP_UNPACK_QP(X,val) \
- do { \
- _FP_UNPACK_RAW_4_P(Q,X,val); \
- _FP_UNPACK_CANONICAL(Q,4,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_Q(X,val) \
- do { \
- _FP_UNPACK_RAW_4(Q,X,val); \
- _FP_UNPACK_SEMIRAW(Q,4,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_QP(X,val) \
- do { \
- _FP_UNPACK_RAW_4_P(Q,X,val); \
- _FP_UNPACK_SEMIRAW(Q,4,X); \
- } while (0)
-
-#define FP_PACK_Q(val,X) \
- do { \
- _FP_PACK_CANONICAL(Q,4,X); \
- _FP_PACK_RAW_4(Q,val,X); \
- } while (0)
-
-#define FP_PACK_QP(val,X) \
- do { \
- _FP_PACK_CANONICAL(Q,4,X); \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_4_P(Q,val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_Q(val,X) \
- do { \
- _FP_PACK_SEMIRAW(Q,4,X); \
- _FP_PACK_RAW_4(Q,val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_QP(val,X) \
- do { \
- _FP_PACK_SEMIRAW(Q,4,X); \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_4_P(Q,val,X); \
- } while (0)
-
-#define FP_ISSIGNAN_Q(X) _FP_ISSIGNAN(Q,4,X)
-#define FP_NEG_Q(R,X) _FP_NEG(Q,4,R,X)
-#define FP_ADD_Q(R,X,Y) _FP_ADD(Q,4,R,X,Y)
-#define FP_SUB_Q(R,X,Y) _FP_SUB(Q,4,R,X,Y)
-#define FP_MUL_Q(R,X,Y) _FP_MUL(Q,4,R,X,Y)
-#define FP_DIV_Q(R,X,Y) _FP_DIV(Q,4,R,X,Y)
-#define FP_SQRT_Q(R,X) _FP_SQRT(Q,4,R,X)
-#define _FP_SQRT_MEAT_Q(R,S,T,X,Q) _FP_SQRT_MEAT_4(R,S,T,X,Q)
-#define FP_FMA_Q(R,X,Y,Z) _FP_FMA(Q,4,8,R,X,Y,Z)
-
-#define FP_CMP_Q(r,X,Y,un) _FP_CMP(Q,4,r,X,Y,un)
-#define FP_CMP_EQ_Q(r,X,Y) _FP_CMP_EQ(Q,4,r,X,Y)
-#define FP_CMP_UNORD_Q(r,X,Y) _FP_CMP_UNORD(Q,4,r,X,Y)
-
-#define FP_TO_INT_Q(r,X,rsz,rsg) _FP_TO_INT(Q,4,r,X,rsz,rsg)
-#define FP_FROM_INT_Q(X,r,rs,rt) _FP_FROM_INT(Q,4,X,r,rs,rt)
-
-#define _FP_FRAC_HIGH_Q(X) _FP_FRAC_HIGH_4(X)
-#define _FP_FRAC_HIGH_RAW_Q(X) _FP_FRAC_HIGH_4(X)
-
-#define _FP_FRAC_HIGH_DW_Q(X) _FP_FRAC_HIGH_8(X)
+# define FP_DECL_Q(X) _FP_DECL (4, X)
+# define FP_UNPACK_RAW_Q(X, val) _FP_UNPACK_RAW_4 (Q, X, val)
+# define FP_UNPACK_RAW_QP(X, val) _FP_UNPACK_RAW_4_P (Q, X, val)
+# define FP_PACK_RAW_Q(val, X) _FP_PACK_RAW_4 (Q, val, X)
+# define FP_PACK_RAW_QP(val, X) \
+ do \
+ { \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_4_P (Q, val, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_Q(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_4 (Q, X, val); \
+ _FP_UNPACK_CANONICAL (Q, 4, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_QP(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_4_P (Q, X, val); \
+ _FP_UNPACK_CANONICAL (Q, 4, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_Q(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_4 (Q, X, val); \
+ _FP_UNPACK_SEMIRAW (Q, 4, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_QP(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_4_P (Q, X, val); \
+ _FP_UNPACK_SEMIRAW (Q, 4, X); \
+ } \
+ while (0)
+
+# define FP_PACK_Q(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (Q, 4, X); \
+ _FP_PACK_RAW_4 (Q, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_QP(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (Q, 4, X); \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_4_P (Q, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_Q(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (Q, 4, X); \
+ _FP_PACK_RAW_4 (Q, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_QP(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (Q, 4, X); \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_4_P (Q, val, X); \
+ } \
+ while (0)
+
+# define FP_ISSIGNAN_Q(X) _FP_ISSIGNAN (Q, 4, X)
+# define FP_NEG_Q(R, X) _FP_NEG (Q, 4, R, X)
+# define FP_ADD_Q(R, X, Y) _FP_ADD (Q, 4, R, X, Y)
+# define FP_SUB_Q(R, X, Y) _FP_SUB (Q, 4, R, X, Y)
+# define FP_MUL_Q(R, X, Y) _FP_MUL (Q, 4, R, X, Y)
+# define FP_DIV_Q(R, X, Y) _FP_DIV (Q, 4, R, X, Y)
+# define FP_SQRT_Q(R, X) _FP_SQRT (Q, 4, R, X)
+# define _FP_SQRT_MEAT_Q(R, S, T, X, Q) _FP_SQRT_MEAT_4 (R, S, T, X, Q)
+# define FP_FMA_Q(R, X, Y, Z) _FP_FMA (Q, 4, 8, R, X, Y, Z)
+
+# define FP_CMP_Q(r, X, Y, un) _FP_CMP (Q, 4, r, X, Y, un)
+# define FP_CMP_EQ_Q(r, X, Y) _FP_CMP_EQ (Q, 4, r, X, Y)
+# define FP_CMP_UNORD_Q(r, X, Y) _FP_CMP_UNORD (Q, 4, r, X, Y)
+
+# define FP_TO_INT_Q(r, X, rsz, rsg) _FP_TO_INT (Q, 4, r, X, rsz, rsg)
+# define FP_FROM_INT_Q(X, r, rs, rt) _FP_FROM_INT (Q, 4, X, r, rs, rt)
+
+# define _FP_FRAC_HIGH_Q(X) _FP_FRAC_HIGH_4 (X)
+# define _FP_FRAC_HIGH_RAW_Q(X) _FP_FRAC_HIGH_4 (X)
+
+# define _FP_FRAC_HIGH_DW_Q(X) _FP_FRAC_HIGH_8 (X)
#else /* not _FP_W_TYPE_SIZE < 64 */
union _FP_UNION_Q
{
- TFtype flt /* __attribute__((mode(TF))) */ ;
- struct _FP_STRUCT_LAYOUT {
+ TFtype flt /* __attribute__ ((mode (TF))) */ ;
+ struct _FP_STRUCT_LAYOUT
+ {
_FP_W_TYPE a, b;
} longs;
- struct _FP_STRUCT_LAYOUT {
-#if __BYTE_ORDER == __BIG_ENDIAN
+ struct _FP_STRUCT_LAYOUT
+ {
+# if __BYTE_ORDER == __BIG_ENDIAN
unsigned sign : 1;
unsigned exp : _FP_EXPBITS_Q;
_FP_W_TYPE frac1 : _FP_FRACBITS_Q - (_FP_IMPLBIT_Q != 0) - _FP_W_TYPE_SIZE;
_FP_W_TYPE frac0 : _FP_W_TYPE_SIZE;
-#else
+# else
_FP_W_TYPE frac0 : _FP_W_TYPE_SIZE;
_FP_W_TYPE frac1 : _FP_FRACBITS_Q - (_FP_IMPLBIT_Q != 0) - _FP_W_TYPE_SIZE;
unsigned exp : _FP_EXPBITS_Q;
unsigned sign : 1;
-#endif
+# endif
} bits;
};
-#define FP_DECL_Q(X) _FP_DECL(2,X)
-#define FP_UNPACK_RAW_Q(X,val) _FP_UNPACK_RAW_2(Q,X,val)
-#define FP_UNPACK_RAW_QP(X,val) _FP_UNPACK_RAW_2_P(Q,X,val)
-#define FP_PACK_RAW_Q(val,X) _FP_PACK_RAW_2(Q,val,X)
-#define FP_PACK_RAW_QP(val,X) \
- do { \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_2_P(Q,val,X); \
- } while (0)
-
-#define FP_UNPACK_Q(X,val) \
- do { \
- _FP_UNPACK_RAW_2(Q,X,val); \
- _FP_UNPACK_CANONICAL(Q,2,X); \
- } while (0)
-
-#define FP_UNPACK_QP(X,val) \
- do { \
- _FP_UNPACK_RAW_2_P(Q,X,val); \
- _FP_UNPACK_CANONICAL(Q,2,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_Q(X,val) \
- do { \
- _FP_UNPACK_RAW_2(Q,X,val); \
- _FP_UNPACK_SEMIRAW(Q,2,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_QP(X,val) \
- do { \
- _FP_UNPACK_RAW_2_P(Q,X,val); \
- _FP_UNPACK_SEMIRAW(Q,2,X); \
- } while (0)
-
-#define FP_PACK_Q(val,X) \
- do { \
- _FP_PACK_CANONICAL(Q,2,X); \
- _FP_PACK_RAW_2(Q,val,X); \
- } while (0)
-
-#define FP_PACK_QP(val,X) \
- do { \
- _FP_PACK_CANONICAL(Q,2,X); \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_2_P(Q,val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_Q(val,X) \
- do { \
- _FP_PACK_SEMIRAW(Q,2,X); \
- _FP_PACK_RAW_2(Q,val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_QP(val,X) \
- do { \
- _FP_PACK_SEMIRAW(Q,2,X); \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_2_P(Q,val,X); \
- } while (0)
-
-#define FP_ISSIGNAN_Q(X) _FP_ISSIGNAN(Q,2,X)
-#define FP_NEG_Q(R,X) _FP_NEG(Q,2,R,X)
-#define FP_ADD_Q(R,X,Y) _FP_ADD(Q,2,R,X,Y)
-#define FP_SUB_Q(R,X,Y) _FP_SUB(Q,2,R,X,Y)
-#define FP_MUL_Q(R,X,Y) _FP_MUL(Q,2,R,X,Y)
-#define FP_DIV_Q(R,X,Y) _FP_DIV(Q,2,R,X,Y)
-#define FP_SQRT_Q(R,X) _FP_SQRT(Q,2,R,X)
-#define _FP_SQRT_MEAT_Q(R,S,T,X,Q) _FP_SQRT_MEAT_2(R,S,T,X,Q)
-#define FP_FMA_Q(R,X,Y,Z) _FP_FMA(Q,2,4,R,X,Y,Z)
-
-#define FP_CMP_Q(r,X,Y,un) _FP_CMP(Q,2,r,X,Y,un)
-#define FP_CMP_EQ_Q(r,X,Y) _FP_CMP_EQ(Q,2,r,X,Y)
-#define FP_CMP_UNORD_Q(r,X,Y) _FP_CMP_UNORD(Q,2,r,X,Y)
-
-#define FP_TO_INT_Q(r,X,rsz,rsg) _FP_TO_INT(Q,2,r,X,rsz,rsg)
-#define FP_FROM_INT_Q(X,r,rs,rt) _FP_FROM_INT(Q,2,X,r,rs,rt)
-
-#define _FP_FRAC_HIGH_Q(X) _FP_FRAC_HIGH_2(X)
-#define _FP_FRAC_HIGH_RAW_Q(X) _FP_FRAC_HIGH_2(X)
-
-#define _FP_FRAC_HIGH_DW_Q(X) _FP_FRAC_HIGH_4(X)
+# define FP_DECL_Q(X) _FP_DECL (2, X)
+# define FP_UNPACK_RAW_Q(X, val) _FP_UNPACK_RAW_2 (Q, X, val)
+# define FP_UNPACK_RAW_QP(X, val) _FP_UNPACK_RAW_2_P (Q, X, val)
+# define FP_PACK_RAW_Q(val, X) _FP_PACK_RAW_2 (Q, val, X)
+# define FP_PACK_RAW_QP(val, X) \
+ do \
+ { \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_2_P (Q, val, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_Q(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_2 (Q, X, val); \
+ _FP_UNPACK_CANONICAL (Q, 2, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_QP(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_2_P (Q, X, val); \
+ _FP_UNPACK_CANONICAL (Q, 2, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_Q(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_2 (Q, X, val); \
+ _FP_UNPACK_SEMIRAW (Q, 2, X); \
+ } \
+ while (0)
+
+# define FP_UNPACK_SEMIRAW_QP(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_2_P (Q, X, val); \
+ _FP_UNPACK_SEMIRAW (Q, 2, X); \
+ } \
+ while (0)
+
+# define FP_PACK_Q(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (Q, 2, X); \
+ _FP_PACK_RAW_2 (Q, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_QP(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (Q, 2, X); \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_2_P (Q, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_Q(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (Q, 2, X); \
+ _FP_PACK_RAW_2 (Q, val, X); \
+ } \
+ while (0)
+
+# define FP_PACK_SEMIRAW_QP(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (Q, 2, X); \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_2_P (Q, val, X); \
+ } \
+ while (0)
+
+# define FP_ISSIGNAN_Q(X) _FP_ISSIGNAN (Q, 2, X)
+# define FP_NEG_Q(R, X) _FP_NEG (Q, 2, R, X)
+# define FP_ADD_Q(R, X, Y) _FP_ADD (Q, 2, R, X, Y)
+# define FP_SUB_Q(R, X, Y) _FP_SUB (Q, 2, R, X, Y)
+# define FP_MUL_Q(R, X, Y) _FP_MUL (Q, 2, R, X, Y)
+# define FP_DIV_Q(R, X, Y) _FP_DIV (Q, 2, R, X, Y)
+# define FP_SQRT_Q(R, X) _FP_SQRT (Q, 2, R, X)
+# define _FP_SQRT_MEAT_Q(R, S, T, X, Q) _FP_SQRT_MEAT_2 (R, S, T, X, Q)
+# define FP_FMA_Q(R, X, Y, Z) _FP_FMA (Q, 2, 4, R, X, Y, Z)
+
+# define FP_CMP_Q(r, X, Y, un) _FP_CMP (Q, 2, r, X, Y, un)
+# define FP_CMP_EQ_Q(r, X, Y) _FP_CMP_EQ (Q, 2, r, X, Y)
+# define FP_CMP_UNORD_Q(r, X, Y) _FP_CMP_UNORD (Q, 2, r, X, Y)
+
+# define FP_TO_INT_Q(r, X, rsz, rsg) _FP_TO_INT (Q, 2, r, X, rsz, rsg)
+# define FP_FROM_INT_Q(X, r, rs, rt) _FP_FROM_INT (Q, 2, X, r, rs, rt)
+
+# define _FP_FRAC_HIGH_Q(X) _FP_FRAC_HIGH_2 (X)
+# define _FP_FRAC_HIGH_RAW_Q(X) _FP_FRAC_HIGH_2 (X)
+
+# define _FP_FRAC_HIGH_DW_Q(X) _FP_FRAC_HIGH_4 (X)
#endif /* not _FP_W_TYPE_SIZE < 64 */
diff --git a/soft-fp/single.h b/soft-fp/single.h
index c94f31f99b..af60c96e68 100644
--- a/soft-fp/single.h
+++ b/soft-fp/single.h
@@ -31,7 +31,7 @@
<http://www.gnu.org/licenses/>. */
#if _FP_W_TYPE_SIZE < 32
-#error "Here's a nickel kid. Go buy yourself a real computer."
+# error "Here's a nickel kid. Go buy yourself a real computer."
#endif
#define _FP_FRACTBITS_S _FP_W_TYPE_SIZE
@@ -49,26 +49,27 @@
#define _FP_EXPBITS_S 8
#define _FP_EXPBIAS_S 127
#define _FP_EXPMAX_S 255
-#define _FP_QNANBIT_S ((_FP_W_TYPE)1 << (_FP_FRACBITS_S-2))
-#define _FP_QNANBIT_SH_S ((_FP_W_TYPE)1 << (_FP_FRACBITS_S-2+_FP_WORKBITS))
-#define _FP_IMPLBIT_S ((_FP_W_TYPE)1 << (_FP_FRACBITS_S-1))
-#define _FP_IMPLBIT_SH_S ((_FP_W_TYPE)1 << (_FP_FRACBITS_S-1+_FP_WORKBITS))
-#define _FP_OVERFLOW_S ((_FP_W_TYPE)1 << (_FP_WFRACBITS_S))
+#define _FP_QNANBIT_S ((_FP_W_TYPE) 1 << (_FP_FRACBITS_S-2))
+#define _FP_QNANBIT_SH_S ((_FP_W_TYPE) 1 << (_FP_FRACBITS_S-2+_FP_WORKBITS))
+#define _FP_IMPLBIT_S ((_FP_W_TYPE) 1 << (_FP_FRACBITS_S-1))
+#define _FP_IMPLBIT_SH_S ((_FP_W_TYPE) 1 << (_FP_FRACBITS_S-1+_FP_WORKBITS))
+#define _FP_OVERFLOW_S ((_FP_W_TYPE) 1 << (_FP_WFRACBITS_S))
#define _FP_WFRACBITS_DW_S (2 * _FP_WFRACBITS_S)
#define _FP_WFRACXBITS_DW_S (_FP_FRACTBITS_DW_S - _FP_WFRACBITS_DW_S)
#define _FP_HIGHBIT_DW_S \
- ((_FP_W_TYPE)1 << (_FP_WFRACBITS_DW_S - 1) % _FP_W_TYPE_SIZE)
+ ((_FP_W_TYPE) 1 << (_FP_WFRACBITS_DW_S - 1) % _FP_W_TYPE_SIZE)
/* The implementation of _FP_MUL_MEAT_S and _FP_DIV_MEAT_S should be
chosen by the target machine. */
-typedef float SFtype __attribute__((mode(SF)));
+typedef float SFtype __attribute__ ((mode (SF)));
union _FP_UNION_S
{
SFtype flt;
- struct _FP_STRUCT_LAYOUT {
+ struct _FP_STRUCT_LAYOUT
+ {
#if __BYTE_ORDER == __BIG_ENDIAN
unsigned sign : 1;
unsigned exp : _FP_EXPBITS_S;
@@ -78,96 +79,114 @@ union _FP_UNION_S
unsigned exp : _FP_EXPBITS_S;
unsigned sign : 1;
#endif
- } bits __attribute__((packed));
+ } bits __attribute__ ((packed));
};
-#define FP_DECL_S(X) _FP_DECL(1,X)
-#define FP_UNPACK_RAW_S(X,val) _FP_UNPACK_RAW_1(S,X,val)
-#define FP_UNPACK_RAW_SP(X,val) _FP_UNPACK_RAW_1_P(S,X,val)
-#define FP_PACK_RAW_S(val,X) _FP_PACK_RAW_1(S,val,X)
-#define FP_PACK_RAW_SP(val,X) \
- do { \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_1_P(S,val,X); \
- } while (0)
-
-#define FP_UNPACK_S(X,val) \
- do { \
- _FP_UNPACK_RAW_1(S,X,val); \
- _FP_UNPACK_CANONICAL(S,1,X); \
- } while (0)
-
-#define FP_UNPACK_SP(X,val) \
- do { \
- _FP_UNPACK_RAW_1_P(S,X,val); \
- _FP_UNPACK_CANONICAL(S,1,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_S(X,val) \
- do { \
- _FP_UNPACK_RAW_1(S,X,val); \
- _FP_UNPACK_SEMIRAW(S,1,X); \
- } while (0)
-
-#define FP_UNPACK_SEMIRAW_SP(X,val) \
- do { \
- _FP_UNPACK_RAW_1_P(S,X,val); \
- _FP_UNPACK_SEMIRAW(S,1,X); \
- } while (0)
-
-#define FP_PACK_S(val,X) \
- do { \
- _FP_PACK_CANONICAL(S,1,X); \
- _FP_PACK_RAW_1(S,val,X); \
- } while (0)
-
-#define FP_PACK_SP(val,X) \
- do { \
- _FP_PACK_CANONICAL(S,1,X); \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_1_P(S,val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_S(val,X) \
- do { \
- _FP_PACK_SEMIRAW(S,1,X); \
- _FP_PACK_RAW_1(S,val,X); \
- } while (0)
-
-#define FP_PACK_SEMIRAW_SP(val,X) \
- do { \
- _FP_PACK_SEMIRAW(S,1,X); \
- if (!FP_INHIBIT_RESULTS) \
- _FP_PACK_RAW_1_P(S,val,X); \
- } while (0)
-
-#define FP_ISSIGNAN_S(X) _FP_ISSIGNAN(S,1,X)
-#define FP_NEG_S(R,X) _FP_NEG(S,1,R,X)
-#define FP_ADD_S(R,X,Y) _FP_ADD(S,1,R,X,Y)
-#define FP_SUB_S(R,X,Y) _FP_SUB(S,1,R,X,Y)
-#define FP_MUL_S(R,X,Y) _FP_MUL(S,1,R,X,Y)
-#define FP_DIV_S(R,X,Y) _FP_DIV(S,1,R,X,Y)
-#define FP_SQRT_S(R,X) _FP_SQRT(S,1,R,X)
-#define _FP_SQRT_MEAT_S(R,S,T,X,Q) _FP_SQRT_MEAT_1(R,S,T,X,Q)
+#define FP_DECL_S(X) _FP_DECL (1, X)
+#define FP_UNPACK_RAW_S(X, val) _FP_UNPACK_RAW_1 (S, X, val)
+#define FP_UNPACK_RAW_SP(X, val) _FP_UNPACK_RAW_1_P (S, X, val)
+#define FP_PACK_RAW_S(val, X) _FP_PACK_RAW_1 (S, val, X)
+#define FP_PACK_RAW_SP(val, X) \
+ do \
+ { \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_1_P (S, val, X); \
+ } \
+ while (0)
+
+#define FP_UNPACK_S(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_1 (S, X, val); \
+ _FP_UNPACK_CANONICAL (S, 1, X); \
+ } \
+ while (0)
+
+#define FP_UNPACK_SP(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_1_P (S, X, val); \
+ _FP_UNPACK_CANONICAL (S, 1, X); \
+ } \
+ while (0)
+
+#define FP_UNPACK_SEMIRAW_S(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_1 (S, X, val); \
+ _FP_UNPACK_SEMIRAW (S, 1, X); \
+ } \
+ while (0)
+
+#define FP_UNPACK_SEMIRAW_SP(X, val) \
+ do \
+ { \
+ _FP_UNPACK_RAW_1_P (S, X, val); \
+ _FP_UNPACK_SEMIRAW (S, 1, X); \
+ } \
+ while (0)
+
+#define FP_PACK_S(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (S, 1, X); \
+ _FP_PACK_RAW_1 (S, val, X); \
+ } \
+ while (0)
+
+#define FP_PACK_SP(val, X) \
+ do \
+ { \
+ _FP_PACK_CANONICAL (S, 1, X); \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_1_P (S, val, X); \
+ } \
+ while (0)
+
+#define FP_PACK_SEMIRAW_S(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (S, 1, X); \
+ _FP_PACK_RAW_1 (S, val, X); \
+ } \
+ while (0)
+
+#define FP_PACK_SEMIRAW_SP(val, X) \
+ do \
+ { \
+ _FP_PACK_SEMIRAW (S, 1, X); \
+ if (!FP_INHIBIT_RESULTS) \
+ _FP_PACK_RAW_1_P (S, val, X); \
+ } \
+ while (0)
+
+#define FP_ISSIGNAN_S(X) _FP_ISSIGNAN (S, 1, X)
+#define FP_NEG_S(R, X) _FP_NEG (S, 1, R, X)
+#define FP_ADD_S(R, X, Y) _FP_ADD (S, 1, R, X, Y)
+#define FP_SUB_S(R, X, Y) _FP_SUB (S, 1, R, X, Y)
+#define FP_MUL_S(R, X, Y) _FP_MUL (S, 1, R, X, Y)
+#define FP_DIV_S(R, X, Y) _FP_DIV (S, 1, R, X, Y)
+#define FP_SQRT_S(R, X) _FP_SQRT (S, 1, R, X)
+#define _FP_SQRT_MEAT_S(R, S, T, X, Q) _FP_SQRT_MEAT_1 (R, S, T, X, Q)
#if _FP_W_TYPE_SIZE < 64
-# define FP_FMA_S(R, X, Y, Z) _FP_FMA(S, 1, 2, R, X, Y, Z)
+# define FP_FMA_S(R, X, Y, Z) _FP_FMA (S, 1, 2, R, X, Y, Z)
#else
-# define FP_FMA_S(R, X, Y, Z) _FP_FMA(S, 1, 1, R, X, Y, Z)
+# define FP_FMA_S(R, X, Y, Z) _FP_FMA (S, 1, 1, R, X, Y, Z)
#endif
-#define FP_CMP_S(r,X,Y,un) _FP_CMP(S,1,r,X,Y,un)
-#define FP_CMP_EQ_S(r,X,Y) _FP_CMP_EQ(S,1,r,X,Y)
-#define FP_CMP_UNORD_S(r,X,Y) _FP_CMP_UNORD(S,1,r,X,Y)
+#define FP_CMP_S(r, X, Y, un) _FP_CMP (S, 1, r, X, Y, un)
+#define FP_CMP_EQ_S(r, X, Y) _FP_CMP_EQ (S, 1, r, X, Y)
+#define FP_CMP_UNORD_S(r, X, Y) _FP_CMP_UNORD (S, 1, r, X, Y)
-#define FP_TO_INT_S(r,X,rsz,rsg) _FP_TO_INT(S,1,r,X,rsz,rsg)
-#define FP_FROM_INT_S(X,r,rs,rt) _FP_FROM_INT(S,1,X,r,rs,rt)
+#define FP_TO_INT_S(r, X, rsz, rsg) _FP_TO_INT (S, 1, r, X, rsz, rsg)
+#define FP_FROM_INT_S(X, r, rs, rt) _FP_FROM_INT (S, 1, X, r, rs, rt)
-#define _FP_FRAC_HIGH_S(X) _FP_FRAC_HIGH_1(X)
-#define _FP_FRAC_HIGH_RAW_S(X) _FP_FRAC_HIGH_1(X)
+#define _FP_FRAC_HIGH_S(X) _FP_FRAC_HIGH_1 (X)
+#define _FP_FRAC_HIGH_RAW_S(X) _FP_FRAC_HIGH_1 (X)
#if _FP_W_TYPE_SIZE < 64
-# define _FP_FRAC_HIGH_DW_S(X) _FP_FRAC_HIGH_2(X)
+# define _FP_FRAC_HIGH_DW_S(X) _FP_FRAC_HIGH_2 (X)
#else
-# define _FP_FRAC_HIGH_DW_S(X) _FP_FRAC_HIGH_1(X)
+# define _FP_FRAC_HIGH_DW_S(X) _FP_FRAC_HIGH_1 (X)
#endif
diff --git a/soft-fp/soft-fp.h b/soft-fp/soft-fp.h
index b1c6e619b5..696fc8676c 100644
--- a/soft-fp/soft-fp.h
+++ b/soft-fp/soft-fp.h
@@ -33,25 +33,25 @@
#define SOFT_FP_H
#ifdef _LIBC
-#include <sfp-machine.h>
+# include <sfp-machine.h>
#else
-#include "sfp-machine.h"
+# include "sfp-machine.h"
#endif
/* Allow sfp-machine to have its own byte order definitions. */
#ifndef __BYTE_ORDER
-#ifdef _LIBC
-#include <endian.h>
-#else
-#error "endianness not defined by sfp-machine.h"
-#endif
+# ifdef _LIBC
+# include <endian.h>
+# else
+# error "endianness not defined by sfp-machine.h"
+# endif
#endif
#define _FP_WORKBITS 3
-#define _FP_WORK_LSB ((_FP_W_TYPE)1 << 3)
-#define _FP_WORK_ROUND ((_FP_W_TYPE)1 << 2)
-#define _FP_WORK_GUARD ((_FP_W_TYPE)1 << 1)
-#define _FP_WORK_STICKY ((_FP_W_TYPE)1 << 0)
+#define _FP_WORK_LSB ((_FP_W_TYPE) 1 << 3)
+#define _FP_WORK_ROUND ((_FP_W_TYPE) 1 << 2)
+#define _FP_WORK_GUARD ((_FP_W_TYPE) 1 << 1)
+#define _FP_WORK_STICKY ((_FP_W_TYPE) 1 << 0)
#ifndef FP_RND_NEAREST
# define FP_RND_NEAREST 0
@@ -65,22 +65,22 @@
/* By default don't care about exceptions. */
#ifndef FP_EX_INVALID
-#define FP_EX_INVALID 0
+# define FP_EX_INVALID 0
#endif
#ifndef FP_EX_OVERFLOW
-#define FP_EX_OVERFLOW 0
+# define FP_EX_OVERFLOW 0
#endif
#ifndef FP_EX_UNDERFLOW
-#define FP_EX_UNDERFLOW 0
+# define FP_EX_UNDERFLOW 0
#endif
#ifndef FP_EX_DIVZERO
-#define FP_EX_DIVZERO 0
+# define FP_EX_DIVZERO 0
#endif
#ifndef FP_EX_INEXACT
-#define FP_EX_INEXACT 0
+# define FP_EX_INEXACT 0
#endif
#ifndef FP_EX_DENORM
-#define FP_EX_DENORM 0
+# define FP_EX_DENORM 0
#endif
/* _FP_STRUCT_LAYOUT may be defined as an attribute to determine the
@@ -90,23 +90,31 @@
differences in how consecutive bit-fields are laid out from the
default expected by soft-fp. */
#ifndef _FP_STRUCT_LAYOUT
-#define _FP_STRUCT_LAYOUT
+# define _FP_STRUCT_LAYOUT
#endif
#ifdef _FP_DECL_EX
-#define FP_DECL_EX \
+# define FP_DECL_EX \
int _fex = 0; \
_FP_DECL_EX
#else
-#define FP_DECL_EX int _fex = 0
+# define FP_DECL_EX int _fex = 0
#endif
+/* Initialize any machine-specific state used in FP_ROUNDMODE,
+ FP_TRAPPING_EXCEPTIONS or FP_HANDLE_EXCEPTIONS. */
#ifndef FP_INIT_ROUNDMODE
-#define FP_INIT_ROUNDMODE do {} while (0)
+# define FP_INIT_ROUNDMODE do {} while (0)
+#endif
+
+/* Initialize any machine-specific state used in
+ FP_HANDLE_EXCEPTIONS. */
+#ifndef FP_INIT_EXCEPTIONS
+# define FP_INIT_EXCEPTIONS FP_INIT_ROUNDMODE
#endif
#ifndef FP_HANDLE_EXCEPTIONS
-#define FP_HANDLE_EXCEPTIONS do {} while (0)
+# define FP_HANDLE_EXCEPTIONS do {} while (0)
#endif
#ifndef FP_INHIBIT_RESULTS
@@ -115,15 +123,12 @@
* check if some exceptions are unmasked
* and inhibit it in such a case.
*/
-#define FP_INHIBIT_RESULTS 0
+# define FP_INHIBIT_RESULTS 0
#endif
#define FP_SET_EXCEPTION(ex) \
_fex |= (ex)
-#define FP_UNSET_EXCEPTION(ex) \
- _fex &= ~(ex)
-
#define FP_CLEAR_EXCEPTIONS \
_fex = 0
@@ -131,58 +136,90 @@
(_fex)
#ifndef FP_TRAPPING_EXCEPTIONS
-#define FP_TRAPPING_EXCEPTIONS 0
+# define FP_TRAPPING_EXCEPTIONS 0
#endif
-#define _FP_ROUND_NEAREST(wc, X) \
-do { \
- if ((_FP_FRAC_LOW_##wc(X) & 15) != _FP_WORK_ROUND) \
- _FP_FRAC_ADDI_##wc(X, _FP_WORK_ROUND); \
-} while (0)
+/* A file using soft-fp may define FP_NO_EXCEPTIONS before including
+ soft-fp.h to indicate that, although a macro used there could raise
+ exceptions, or do rounding and potentially thereby raise
+ exceptions, for some arguments, for the particular arguments used
+ in that file no exceptions or rounding can occur. Such a file
+ should not itself use macros relating to handling exceptions and
+ rounding modes; this is only for indirect uses (in particular, in
+ _FP_FROM_INT and the macros it calls). */
+#ifdef FP_NO_EXCEPTIONS
-#define _FP_ROUND_ZERO(wc, X) (void)0
+# undef FP_SET_EXCEPTION
+# define FP_SET_EXCEPTION(ex) do {} while (0)
-#define _FP_ROUND_PINF(wc, X) \
-do { \
- if (!X##_s && (_FP_FRAC_LOW_##wc(X) & 7)) \
- _FP_FRAC_ADDI_##wc(X, _FP_WORK_LSB); \
-} while (0)
+# undef FP_CUR_EXCEPTIONS
+# define FP_CUR_EXCEPTIONS 0
-#define _FP_ROUND_MINF(wc, X) \
-do { \
- if (X##_s && (_FP_FRAC_LOW_##wc(X) & 7)) \
- _FP_FRAC_ADDI_##wc(X, _FP_WORK_LSB); \
-} while (0)
+# undef FP_TRAPPING_EXCEPTIONS
+# define FP_TRAPPING_EXCEPTIONS 0
+
+# undef FP_ROUNDMODE
+# define FP_ROUNDMODE FP_RND_ZERO
+
+#endif
+
+#define _FP_ROUND_NEAREST(wc, X) \
+ do \
+ { \
+ if ((_FP_FRAC_LOW_##wc (X) & 15) != _FP_WORK_ROUND) \
+ _FP_FRAC_ADDI_##wc (X, _FP_WORK_ROUND); \
+ } \
+ while (0)
+
+#define _FP_ROUND_ZERO(wc, X) (void) 0
+
+#define _FP_ROUND_PINF(wc, X) \
+ do \
+ { \
+ if (!X##_s && (_FP_FRAC_LOW_##wc (X) & 7)) \
+ _FP_FRAC_ADDI_##wc (X, _FP_WORK_LSB); \
+ } \
+ while (0)
+
+#define _FP_ROUND_MINF(wc, X) \
+ do \
+ { \
+ if (X##_s && (_FP_FRAC_LOW_##wc (X) & 7)) \
+ _FP_FRAC_ADDI_##wc (X, _FP_WORK_LSB); \
+ } \
+ while (0)
#define _FP_ROUND(wc, X) \
-do { \
- if (_FP_FRAC_LOW_##wc(X) & 7) \
- { \
- FP_SET_EXCEPTION(FP_EX_INEXACT); \
- switch (FP_ROUNDMODE) \
- { \
- case FP_RND_NEAREST: \
- _FP_ROUND_NEAREST(wc,X); \
- break; \
- case FP_RND_ZERO: \
- _FP_ROUND_ZERO(wc,X); \
- break; \
- case FP_RND_PINF: \
- _FP_ROUND_PINF(wc,X); \
- break; \
- case FP_RND_MINF: \
- _FP_ROUND_MINF(wc,X); \
- break; \
- } \
- } \
-} while (0)
+ do \
+ { \
+ if (_FP_FRAC_LOW_##wc (X) & 7) \
+ { \
+ FP_SET_EXCEPTION (FP_EX_INEXACT); \
+ switch (FP_ROUNDMODE) \
+ { \
+ case FP_RND_NEAREST: \
+ _FP_ROUND_NEAREST (wc, X); \
+ break; \
+ case FP_RND_ZERO: \
+ _FP_ROUND_ZERO (wc, X); \
+ break; \
+ case FP_RND_PINF: \
+ _FP_ROUND_PINF (wc, X); \
+ break; \
+ case FP_RND_MINF: \
+ _FP_ROUND_MINF (wc, X); \
+ break; \
+ } \
+ } \
+ } \
+ while (0)
#define FP_CLS_NORMAL 0
#define FP_CLS_ZERO 1
#define FP_CLS_INF 2
#define FP_CLS_NAN 3
-#define _FP_CLS_COMBINE(x,y) (((x) << 2) | (y))
+#define _FP_CLS_COMBINE(x, y) (((x) << 2) | (y))
#include "op-1.h"
#include "op-2.h"
@@ -194,35 +231,35 @@ do { \
#define UWtype _FP_W_TYPE
#define W_TYPE_SIZE _FP_W_TYPE_SIZE
-typedef int QItype __attribute__((mode(QI)));
-typedef int SItype __attribute__((mode(SI)));
-typedef int DItype __attribute__((mode(DI)));
-typedef unsigned int UQItype __attribute__((mode(QI)));
-typedef unsigned int USItype __attribute__((mode(SI)));
-typedef unsigned int UDItype __attribute__((mode(DI)));
+typedef int QItype __attribute__ ((mode (QI)));
+typedef int SItype __attribute__ ((mode (SI)));
+typedef int DItype __attribute__ ((mode (DI)));
+typedef unsigned int UQItype __attribute__ ((mode (QI)));
+typedef unsigned int USItype __attribute__ ((mode (SI)));
+typedef unsigned int UDItype __attribute__ ((mode (DI)));
#if _FP_W_TYPE_SIZE == 32
-typedef unsigned int UHWtype __attribute__((mode(HI)));
+typedef unsigned int UHWtype __attribute__ ((mode (HI)));
#elif _FP_W_TYPE_SIZE == 64
typedef USItype UHWtype;
#endif
#ifndef CMPtype
-#define CMPtype int
+# define CMPtype int
#endif
-#define SI_BITS (__CHAR_BIT__ * (int)sizeof(SItype))
-#define DI_BITS (__CHAR_BIT__ * (int)sizeof(DItype))
+#define SI_BITS (__CHAR_BIT__ * (int) sizeof (SItype))
+#define DI_BITS (__CHAR_BIT__ * (int) sizeof (DItype))
#ifndef umul_ppmm
-#ifdef _LIBC
-#include <stdlib/longlong.h>
-#else
-#include "longlong.h"
-#endif
+# ifdef _LIBC
+# include <stdlib/longlong.h>
+# else
+# include "longlong.h"
+# endif
#endif
#ifdef _LIBC
-#include <stdlib.h>
+# include <stdlib.h>
#else
extern void abort (void);
#endif
diff --git a/soft-fp/sqrtdf2.c b/soft-fp/sqrtdf2.c
index eaa510d3ee..266e1925af 100644
--- a/soft-fp/sqrtdf2.c
+++ b/soft-fp/sqrtdf2.c
@@ -31,16 +31,18 @@
#include "soft-fp.h"
#include "double.h"
-DFtype __sqrtdf2(DFtype a)
+DFtype
+__sqrtdf2 (DFtype a)
{
FP_DECL_EX;
- FP_DECL_D(A); FP_DECL_D(R);
+ FP_DECL_D (A);
+ FP_DECL_D (R);
DFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_D(A, a);
- FP_SQRT_D(R, A);
- FP_PACK_D(r, R);
+ FP_UNPACK_D (A, a);
+ FP_SQRT_D (R, A);
+ FP_PACK_D (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/sqrtsf2.c b/soft-fp/sqrtsf2.c
index eb6c4c8ccc..ded6e87f53 100644
--- a/soft-fp/sqrtsf2.c
+++ b/soft-fp/sqrtsf2.c
@@ -31,16 +31,18 @@
#include "soft-fp.h"
#include "single.h"
-SFtype __sqrtsf2(SFtype a)
+SFtype
+__sqrtsf2 (SFtype a)
{
FP_DECL_EX;
- FP_DECL_S(A); FP_DECL_S(R);
+ FP_DECL_S (A);
+ FP_DECL_S (R);
SFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_S(A, a);
- FP_SQRT_S(R, A);
- FP_PACK_S(r, R);
+ FP_UNPACK_S (A, a);
+ FP_SQRT_S (R, A);
+ FP_PACK_S (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/sqrttf2.c b/soft-fp/sqrttf2.c
index 40b35830eb..9f3e7187b0 100644
--- a/soft-fp/sqrttf2.c
+++ b/soft-fp/sqrttf2.c
@@ -31,16 +31,18 @@
#include "soft-fp.h"
#include "quad.h"
-TFtype __sqrttf2(TFtype a)
+TFtype
+__sqrttf2 (TFtype a)
{
FP_DECL_EX;
- FP_DECL_Q(A); FP_DECL_Q(R);
+ FP_DECL_Q (A);
+ FP_DECL_Q (R);
TFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_Q(A, a);
- FP_SQRT_Q(R, A);
- FP_PACK_Q(r, R);
+ FP_UNPACK_Q (A, a);
+ FP_SQRT_Q (R, A);
+ FP_PACK_Q (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/subdf3.c b/soft-fp/subdf3.c
index 032ac0f291..6846e98dbd 100644
--- a/soft-fp/subdf3.c
+++ b/soft-fp/subdf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "double.h"
-DFtype __subdf3(DFtype a, DFtype b)
+DFtype
+__subdf3 (DFtype a, DFtype b)
{
FP_DECL_EX;
- FP_DECL_D(A); FP_DECL_D(B); FP_DECL_D(R);
+ FP_DECL_D (A);
+ FP_DECL_D (B);
+ FP_DECL_D (R);
DFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_SEMIRAW_D(A, a);
- FP_UNPACK_SEMIRAW_D(B, b);
- FP_SUB_D(R, A, B);
- FP_PACK_SEMIRAW_D(r, R);
+ FP_UNPACK_SEMIRAW_D (A, a);
+ FP_UNPACK_SEMIRAW_D (B, b);
+ FP_SUB_D (R, A, B);
+ FP_PACK_SEMIRAW_D (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/subsf3.c b/soft-fp/subsf3.c
index c9f56c7176..d46ddf58ae 100644
--- a/soft-fp/subsf3.c
+++ b/soft-fp/subsf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "single.h"
-SFtype __subsf3(SFtype a, SFtype b)
+SFtype
+__subsf3 (SFtype a, SFtype b)
{
FP_DECL_EX;
- FP_DECL_S(A); FP_DECL_S(B); FP_DECL_S(R);
+ FP_DECL_S (A);
+ FP_DECL_S (B);
+ FP_DECL_S (R);
SFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_SEMIRAW_S(A, a);
- FP_UNPACK_SEMIRAW_S(B, b);
- FP_SUB_S(R, A, B);
- FP_PACK_SEMIRAW_S(r, R);
+ FP_UNPACK_SEMIRAW_S (A, a);
+ FP_UNPACK_SEMIRAW_S (B, b);
+ FP_SUB_S (R, A, B);
+ FP_PACK_SEMIRAW_S (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/subtf3.c b/soft-fp/subtf3.c
index a111d571e1..88c6edeb61 100644
--- a/soft-fp/subtf3.c
+++ b/soft-fp/subtf3.c
@@ -31,17 +31,20 @@
#include "soft-fp.h"
#include "quad.h"
-TFtype __subtf3(TFtype a, TFtype b)
+TFtype
+__subtf3 (TFtype a, TFtype b)
{
FP_DECL_EX;
- FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(R);
+ FP_DECL_Q (A);
+ FP_DECL_Q (B);
+ FP_DECL_Q (R);
TFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_SEMIRAW_Q(A, a);
- FP_UNPACK_SEMIRAW_Q(B, b);
- FP_SUB_Q(R, A, B);
- FP_PACK_SEMIRAW_Q(r, R);
+ FP_UNPACK_SEMIRAW_Q (A, a);
+ FP_UNPACK_SEMIRAW_Q (B, b);
+ FP_SUB_Q (R, A, B);
+ FP_PACK_SEMIRAW_Q (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/truncdfsf2.c b/soft-fp/truncdfsf2.c
index e9a7223674..3ec56fdf8a 100644
--- a/soft-fp/truncdfsf2.c
+++ b/soft-fp/truncdfsf2.c
@@ -32,21 +32,22 @@
#include "single.h"
#include "double.h"
-SFtype __truncdfsf2(DFtype a)
+SFtype
+__truncdfsf2 (DFtype a)
{
FP_DECL_EX;
- FP_DECL_D(A);
- FP_DECL_S(R);
+ FP_DECL_D (A);
+ FP_DECL_S (R);
SFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_SEMIRAW_D(A, a);
+ FP_UNPACK_SEMIRAW_D (A, a);
#if _FP_W_TYPE_SIZE < _FP_FRACBITS_D
- FP_TRUNC(S,D,1,2,R,A);
+ FP_TRUNC (S, D, 1, 2, R, A);
#else
- FP_TRUNC(S,D,1,1,R,A);
+ FP_TRUNC (S, D, 1, 1, R, A);
#endif
- FP_PACK_SEMIRAW_S(r, R);
+ FP_PACK_SEMIRAW_S (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/trunctfdf2.c b/soft-fp/trunctfdf2.c
index 35c6496362..e970210129 100644
--- a/soft-fp/trunctfdf2.c
+++ b/soft-fp/trunctfdf2.c
@@ -32,21 +32,22 @@
#include "double.h"
#include "quad.h"
-DFtype __trunctfdf2(TFtype a)
+DFtype
+__trunctfdf2 (TFtype a)
{
FP_DECL_EX;
- FP_DECL_Q(A);
- FP_DECL_D(R);
+ FP_DECL_Q (A);
+ FP_DECL_D (R);
DFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_SEMIRAW_Q(A, a);
+ FP_UNPACK_SEMIRAW_Q (A, a);
#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q
- FP_TRUNC(D,Q,2,4,R,A);
+ FP_TRUNC (D, Q, 2, 4, R, A);
#else
- FP_TRUNC(D,Q,1,2,R,A);
+ FP_TRUNC (D, Q, 1, 2, R, A);
#endif
- FP_PACK_SEMIRAW_D(r, R);
+ FP_PACK_SEMIRAW_D (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/trunctfsf2.c b/soft-fp/trunctfsf2.c
index 751c7c8d76..d8a3728a0d 100644
--- a/soft-fp/trunctfsf2.c
+++ b/soft-fp/trunctfsf2.c
@@ -32,21 +32,22 @@
#include "single.h"
#include "quad.h"
-SFtype __trunctfsf2(TFtype a)
+SFtype
+__trunctfsf2 (TFtype a)
{
FP_DECL_EX;
- FP_DECL_Q(A);
- FP_DECL_S(R);
+ FP_DECL_Q (A);
+ FP_DECL_S (R);
SFtype r;
FP_INIT_ROUNDMODE;
- FP_UNPACK_SEMIRAW_Q(A, a);
+ FP_UNPACK_SEMIRAW_Q (A, a);
#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q
- FP_TRUNC(S,Q,1,4,R,A);
+ FP_TRUNC (S, Q, 1, 4, R, A);
#else
- FP_TRUNC(S,Q,1,2,R,A);
+ FP_TRUNC (S, Q, 1, 2, R, A);
#endif
- FP_PACK_SEMIRAW_S(r, R);
+ FP_PACK_SEMIRAW_S (r, R);
FP_HANDLE_EXCEPTIONS;
return r;
diff --git a/soft-fp/trunctfxf2.c b/soft-fp/trunctfxf2.c
new file mode 100644
index 0000000000..750bec1808
--- /dev/null
+++ b/soft-fp/trunctfxf2.c
@@ -0,0 +1,53 @@
+/* Software floating-point emulation.
+ Truncate IEEE quad into IEEE extended
+ Copyright (C) 2007-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Uros Bizjak (ubizjak@gmail.com).
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ In addition to the permissions in the GNU Lesser General Public
+ License, the Free Software Foundation gives you unlimited
+ permission to link the compiled version of this file into
+ combinations with other programs, and to distribute those
+ combinations without any restriction coming from the use of this
+ file. (The Lesser General Public License restrictions do apply in
+ other respects; for example, they cover modification of the file,
+ and distribution when not linked into a combine executable.)
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "extended.h"
+#include "quad.h"
+
+XFtype
+__trunctfxf2 (TFtype a)
+{
+ FP_DECL_EX;
+ FP_DECL_Q (A);
+ FP_DECL_E (R);
+ XFtype r;
+
+ FP_INIT_ROUNDMODE;
+ FP_UNPACK_SEMIRAW_Q (A, a);
+#if (2 * _FP_W_TYPE_SIZE) < _FP_FRACBITS_Q
+ FP_TRUNC (E, Q, 4, 4, R, A);
+#else
+ FP_TRUNC (E, Q, 2, 2, R, A);
+#endif
+ FP_PACK_SEMIRAW_E (r, R);
+ FP_HANDLE_EXCEPTIONS;
+
+ return r;
+}
diff --git a/soft-fp/unorddf2.c b/soft-fp/unorddf2.c
index 2e77f2d8ff..641c869725 100644
--- a/soft-fp/unorddf2.c
+++ b/soft-fp/unorddf2.c
@@ -30,14 +30,21 @@
#include "soft-fp.h"
#include "double.h"
-CMPtype __unorddf2(DFtype a, DFtype b)
+CMPtype
+__unorddf2 (DFtype a, DFtype b)
{
- FP_DECL_D(A); FP_DECL_D(B);
+ FP_DECL_EX;
+ FP_DECL_D (A);
+ FP_DECL_D (B);
CMPtype r;
- FP_UNPACK_RAW_D(A, a);
- FP_UNPACK_RAW_D(B, b);
- FP_CMP_UNORD_D(r, A, B);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_D (A, a);
+ FP_UNPACK_RAW_D (B, b);
+ FP_CMP_UNORD_D (r, A, B);
+ if (r && (FP_ISSIGNAN_D (A) || FP_ISSIGNAN_D (B)))
+ FP_SET_EXCEPTION (FP_EX_INVALID);
+ FP_HANDLE_EXCEPTIONS;
return r;
}
diff --git a/soft-fp/unordsf2.c b/soft-fp/unordsf2.c
index b5b5322c16..f271421283 100644
--- a/soft-fp/unordsf2.c
+++ b/soft-fp/unordsf2.c
@@ -30,15 +30,21 @@
#include "soft-fp.h"
#include "single.h"
-CMPtype __unordsf2(SFtype a, SFtype b)
+CMPtype
+__unordsf2 (SFtype a, SFtype b)
{
- FP_DECL_S(A);
- FP_DECL_S(B);
+ FP_DECL_EX;
+ FP_DECL_S (A);
+ FP_DECL_S (B);
CMPtype r;
- FP_UNPACK_RAW_S(A, a);
- FP_UNPACK_RAW_S(B, b);
- FP_CMP_UNORD_S(r, A, B);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_S (A, a);
+ FP_UNPACK_RAW_S (B, b);
+ FP_CMP_UNORD_S (r, A, B);
+ if (r && (FP_ISSIGNAN_S (A) || FP_ISSIGNAN_S (B)))
+ FP_SET_EXCEPTION (FP_EX_INVALID);
+ FP_HANDLE_EXCEPTIONS;
return r;
}
diff --git a/soft-fp/unordtf2.c b/soft-fp/unordtf2.c
index 1a85c252c1..38cc1a78b2 100644
--- a/soft-fp/unordtf2.c
+++ b/soft-fp/unordtf2.c
@@ -30,15 +30,21 @@
#include "soft-fp.h"
#include "quad.h"
-CMPtype __unordtf2(TFtype a, TFtype b)
+CMPtype
+__unordtf2 (TFtype a, TFtype b)
{
- FP_DECL_Q(A);
- FP_DECL_Q(B);
+ FP_DECL_EX;
+ FP_DECL_Q (A);
+ FP_DECL_Q (B);
CMPtype r;
- FP_UNPACK_RAW_Q(A, a);
- FP_UNPACK_RAW_Q(B, b);
- FP_CMP_UNORD_Q(r, A, B);
+ FP_INIT_EXCEPTIONS;
+ FP_UNPACK_RAW_Q (A, a);
+ FP_UNPACK_RAW_Q (B, b);
+ FP_CMP_UNORD_Q (r, A, B);
+ if (r && (FP_ISSIGNAN_Q (A) || FP_ISSIGNAN_Q (B)))
+ FP_SET_EXCEPTION (FP_EX_INVALID);
+ FP_HANDLE_EXCEPTIONS;
return r;
}
diff --git a/stdio-common/Makefile b/stdio-common/Makefile
index 658804bbe8..16f8f1bd63 100644
--- a/stdio-common/Makefile
+++ b/stdio-common/Makefile
@@ -119,6 +119,7 @@ CFLAGS-tst-sprintf.c = -Wno-format
tst-sprintf-ENV = LOCPATH=$(common-objpfx)localedata
tst-sscanf-ENV = LOCPATH=$(common-objpfx)localedata
tst-swprintf-ENV = LOCPATH=$(common-objpfx)localedata
+tst-swscanf-ENV = LOCPATH=$(common-objpfx)localedata
test-vfprintf-ENV = LOCPATH=$(common-objpfx)localedata
scanf13-ENV = LOCPATH=$(common-objpfx)localedata
bug14-ENV = LOCPATH=$(common-objpfx)localedata
diff --git a/stdio-common/printf_fp.c b/stdio-common/printf_fp.c
index e20eab6a34..2b93e6c57a 100644
--- a/stdio-common/printf_fp.c
+++ b/stdio-common/printf_fp.c
@@ -332,8 +332,7 @@ ___printf_fp (FILE *fp,
int res;
if (__isnanl (fpnum.ldbl))
{
- union ieee854_long_double u = { .d = fpnum.ldbl };
- is_neg = u.ieee.negative != 0;
+ is_neg = signbit (fpnum.ldbl);
if (isupper (info->spec))
{
special = "NAN";
diff --git a/stdio-common/printf_fphex.c b/stdio-common/printf_fphex.c
index 3da2eec40c..50b6fbfbc7 100644
--- a/stdio-common/printf_fphex.c
+++ b/stdio-common/printf_fphex.c
@@ -93,7 +93,7 @@ __printf_fphex (FILE *fp,
union
{
union ieee754_double dbl;
- union ieee854_long_double ldbl;
+ long double ldbl;
}
fpnum;
@@ -162,12 +162,11 @@ __printf_fphex (FILE *fp,
#ifndef __NO_LONG_DOUBLE_MATH
if (info->is_long_double && sizeof (long double) > sizeof (double))
{
- fpnum.ldbl.d = *(const long double *) args[0];
+ fpnum.ldbl = *(const long double *) args[0];
/* Check for special values: not a number or infinity. */
- if (__isnanl (fpnum.ldbl.d))
+ if (__isnanl (fpnum.ldbl))
{
- negative = fpnum.ldbl.ieee.negative != 0;
if (isupper (info->spec))
{
special = "NAN";
@@ -181,8 +180,7 @@ __printf_fphex (FILE *fp,
}
else
{
- int res = __isinfl (fpnum.ldbl.d);
- if (res)
+ if (__isinfl (fpnum.ldbl))
{
if (isupper (info->spec))
{
@@ -194,11 +192,9 @@ __printf_fphex (FILE *fp,
special = "inf";
wspecial = L"inf";
}
- negative = res < 0;
}
- else
- negative = signbit (fpnum.ldbl.d);
}
+ negative = signbit (fpnum.ldbl);
}
else
#endif /* no long double */
diff --git a/stdio-common/printf_size.c b/stdio-common/printf_size.c
index 2c496e5b2f..dfb3a539b9 100644
--- a/stdio-common/printf_size.c
+++ b/stdio-common/printf_size.c
@@ -103,7 +103,7 @@ __printf_size (FILE *fp, const struct printf_info *info,
union
{
union ieee754_double dbl;
- union ieee854_long_double ldbl;
+ long double ldbl;
}
fpnum;
const void *ptr = &fpnum;
@@ -123,25 +123,25 @@ __printf_size (FILE *fp, const struct printf_info *info,
#ifndef __NO_LONG_DOUBLE_MATH
if (info->is_long_double && sizeof (long double) > sizeof (double))
{
- fpnum.ldbl.d = *(const long double *) args[0];
+ fpnum.ldbl = *(const long double *) args[0];
/* Check for special values: not a number or infinity. */
- if (__isnanl (fpnum.ldbl.d))
+ if (__isnanl (fpnum.ldbl))
{
special = "nan";
wspecial = L"nan";
// fpnum_sign = 0; Already zero
}
- else if ((res = __isinfl (fpnum.ldbl.d)))
+ else if ((res = __isinfl (fpnum.ldbl)))
{
fpnum_sign = res;
special = "inf";
wspecial = L"inf";
}
else
- while (fpnum.ldbl.d >= divisor && tag[1] != '\0')
+ while (fpnum.ldbl >= divisor && tag[1] != '\0')
{
- fpnum.ldbl.d /= divisor;
+ fpnum.ldbl /= divisor;
++tag;
}
}
diff --git a/stdio-common/psiginfo-data.h b/stdio-common/psiginfo-data.h
index 02ebf8af29..05bb76c179 100644
--- a/stdio-common/psiginfo-data.h
+++ b/stdio-common/psiginfo-data.h
@@ -34,7 +34,7 @@ P (TRAP_TRACE, N_("Process trace trap"))
#if NOW == SIGCLD
P (CLD_EXITED, N_("Child has exited"))
P (CLD_KILLED, N_("Child has terminated abnormally and did not create a core file"))
-P (CLD_DUMPED, N_("Child hat terminated abnormally and created a core file"))
+P (CLD_DUMPED, N_("Child has terminated abnormally and created a core file"))
P (CLD_TRAPPED, N_("Traced child has trapped"))
P (CLD_STOPPED, N_("Child has stopped"))
P (CLD_CONTINUED, N_("Stopped child has continued"))
diff --git a/stdio-common/tst-long-dbl-fphex.c b/stdio-common/tst-long-dbl-fphex.c
index 0be80cad2a..a406a71800 100644
--- a/stdio-common/tst-long-dbl-fphex.c
+++ b/stdio-common/tst-long-dbl-fphex.c
@@ -28,9 +28,9 @@ do_test (void)
int result = 0;
const long double x = 24.5;
wchar_t a[16];
- swprintf (a, sizeof (a), L"%La\n", x);
+ swprintf (a, sizeof a / sizeof a[0], L"%La\n", x);
wchar_t A[16];
- swprintf (A, sizeof (A) / sizeof (A[0]), L"%LA\n", x);
+ swprintf (A, sizeof A / sizeof A[0], L"%LA\n", x);
/* Here wprintf can return four valid variants. We must accept all
of them. */
diff --git a/stdio-common/tst-sscanf.c b/stdio-common/tst-sscanf.c
index 1edb227199..a77bc7e30b 100644
--- a/stdio-common/tst-sscanf.c
+++ b/stdio-common/tst-sscanf.c
@@ -92,6 +92,8 @@ struct test
{ L("foo bar"), L("foo bar"), 0 },
{ L("foo bar"), L("foo %d"), 0 },
{ L("foo bar"), L("foon%d"), 0 },
+ { L("foo (nil)"), L("foo %p"), 1},
+ { L("foo (nil)"), L("foo %4p"), 0},
{ L("foo "), L("foo %n"), 0 },
{ L("foo%bar1"), L("foo%%bar%d"), 1 },
/* Some OSes skip whitespace here while others don't. */
@@ -109,6 +111,19 @@ struct test double_tests[] =
{ L("-inf"), L("%g"), 1 }
};
+struct test2
+{
+ const CHAR *str;
+ const CHAR *fmt;
+ int retval;
+ char residual;
+} double_tests2[] =
+{
+ { L("0e+0"), L("%g%c"), 1, 0 },
+ { L("0xe+0"), L("%g%c"), 2, '+' },
+ { L("0x.e+0"), L("%g%c"), 2, '+' },
+};
+
int
main (void)
{
@@ -196,5 +211,26 @@ main (void)
}
}
+ for (i = 0; i < sizeof (double_tests2) / sizeof (double_tests2[0]); ++i)
+ {
+ double dummy;
+ int ret;
+ char c = 0;
+
+ if ((ret = SSCANF (double_tests2[i].str, double_tests2[i].fmt,
+ &dummy, &c)) != double_tests2[i].retval)
+ {
+ printf ("double_tests2[%d] returned %d != %d\n",
+ i, ret, double_tests2[i].retval);
+ result = 1;
+ }
+ else if (ret == 2 && c != double_tests2[i].residual)
+ {
+ printf ("double_tests2[%d] stopped at '%c' != '%c'\n",
+ i, c, double_tests2[i].residual);
+ result = 1;
+ }
+ }
+
return result;
}
diff --git a/stdio-common/vfprintf.c b/stdio-common/vfprintf.c
index fb22f6969e..8cd7a85b21 100644
--- a/stdio-common/vfprintf.c
+++ b/stdio-common/vfprintf.c
@@ -90,13 +90,13 @@
do { \
if (width > 0) \
{ \
- unsigned int d = _IO_padn (s, (Padchar), width); \
- if (__glibc_unlikely (d == EOF)) \
+ _IO_ssize_t written = _IO_padn (s, (Padchar), width); \
+ if (__glibc_unlikely (written != width)) \
{ \
done = -1; \
goto all_done; \
} \
- done_add (d); \
+ done_add (written); \
} \
} while (0)
# define PUTC(C, F) _IO_putc_unlocked (C, F)
@@ -119,13 +119,13 @@
do { \
if (width > 0) \
{ \
- unsigned int d = _IO_wpadn (s, (Padchar), width); \
- if (__glibc_unlikely (d == EOF)) \
+ _IO_ssize_t written = _IO_wpadn (s, (Padchar), width); \
+ if (__glibc_unlikely (written != width)) \
{ \
done = -1; \
goto all_done; \
} \
- done_add (d); \
+ done_add (written); \
} \
} while (0)
# define PUTC(C, F) _IO_putwc_unlocked (C, F)
diff --git a/stdio-common/vfscanf.c b/stdio-common/vfscanf.c
index 78dc2fcfe5..c0b93ae3b7 100644
--- a/stdio-common/vfscanf.c
+++ b/stdio-common/vfscanf.c
@@ -1757,7 +1757,7 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr,
we must recognize "(nil)" as well. */
if (__builtin_expect (wpsize == 0
&& (flags & READ_POINTER)
- && (width < 0 || width >= 0)
+ && (width < 0 || width >= 5)
&& c == '('
&& TOLOWER (inchar ()) == L_('n')
&& TOLOWER (inchar ()) == L_('i')
@@ -1966,6 +1966,8 @@ _IO_vfscanf_internal (_IO_FILE *s, const char *format, _IO_va_list argptr,
if (width > 0)
--width;
}
+ else
+ got_digit = 1;
}
while (1)
diff --git a/stdlib/div.c b/stdlib/div.c
index 44a30a7ea4..0f5569a5dd 100644
--- a/stdlib/div.c
+++ b/stdlib/div.c
@@ -59,27 +59,5 @@ div (numer, denom)
result.quot = numer / denom;
result.rem = numer % denom;
- /* The ANSI standard says that |QUOT| <= |NUMER / DENOM|, where
- NUMER / DENOM is to be computed in infinite precision. In
- other words, we should always truncate the quotient towards
- zero, never -infinity. Machine division and remainer may
- work either way when one or both of NUMER or DENOM is
- negative. If only one is negative and QUOT has been
- truncated towards -infinity, REM will have the same sign as
- DENOM and the opposite sign of NUMER; if both are negative
- and QUOT has been truncated towards -infinity, REM will be
- positive (will have the opposite sign of NUMER). These are
- considered `wrong'. If both are NUM and DENOM are positive,
- RESULT will always be positive. This all boils down to: if
- NUMER >= 0, but REM < 0, we got the wrong answer. In that
- case, to get the right answer, add 1 to QUOT and subtract
- DENOM from REM. */
-
- if (numer >= 0 && result.rem < 0)
- {
- ++result.quot;
- result.rem -= denom;
- }
-
return result;
}
diff --git a/stdlib/isomac.c b/stdlib/isomac.c
index 2c9009b328..621b5154d2 100644
--- a/stdlib/isomac.c
+++ b/stdlib/isomac.c
@@ -263,6 +263,7 @@ get_null_defines (void)
if (system (command))
{
puts ("system() returned nonzero");
+ free (command);
return NULL;
}
free (command);
diff --git a/stdlib/ldiv.c b/stdlib/ldiv.c
index 76d474fc62..a03057fc0d 100644
--- a/stdlib/ldiv.c
+++ b/stdlib/ldiv.c
@@ -27,27 +27,5 @@ ldiv (long int numer, long int denom)
result.quot = numer / denom;
result.rem = numer % denom;
- /* The ANSI standard says that |QUOT| <= |NUMER / DENOM|, where
- NUMER / DENOM is to be computed in infinite precision. In
- other words, we should always truncate the quotient towards
- zero, never -infinity. Machine division and remainer may
- work either way when one or both of NUMER or DENOM is
- negative. If only one is negative and QUOT has been
- truncated towards -infinity, REM will have the same sign as
- DENOM and the opposite sign of NUMER; if both are negative
- and QUOT has been truncated towards -infinity, REM will be
- positive (will have the opposite sign of NUMER). These are
- considered `wrong'. If both are NUM and DENOM are positive,
- RESULT will always be positive. This all boils down to: if
- NUMER >= 0, but REM < 0, we got the wrong answer. In that
- case, to get the right answer, add 1 to QUOT and subtract
- DENOM from REM. */
-
- if (numer >= 0 && result.rem < 0)
- {
- ++result.quot;
- result.rem -= denom;
- }
-
return result;
}
diff --git a/stdlib/lldiv.c b/stdlib/lldiv.c
index d1202bf9f9..0da1a6afc1 100644
--- a/stdlib/lldiv.c
+++ b/stdlib/lldiv.c
@@ -30,27 +30,5 @@ lldiv (numer, denom)
result.quot = numer / denom;
result.rem = numer % denom;
- /* The ANSI standard says that |QUOT| <= |NUMER / DENOM|, where
- NUMER / DENOM is to be computed in infinite precision. In
- other words, we should always truncate the quotient towards
- zero, never -infinity. Machine division and remainer may
- work either way when one or both of NUMER or DENOM is
- negative. If only one is negative and QUOT has been
- truncated towards -infinity, REM will have the same sign as
- DENOM and the opposite sign of NUMER; if both are negative
- and QUOT has been truncated towards -infinity, REM will be
- positive (will have the opposite sign of NUMER). These are
- considered `wrong'. If both are NUM and DENOM are positive,
- RESULT will always be positive. This all boils down to: if
- NUMER >= 0, but REM < 0, we got the wrong answer. In that
- case, to get the right answer, add 1 to QUOT and subtract
- DENOM from REM. */
-
- if (numer >= 0 && result.rem < 0)
- {
- ++result.quot;
- result.rem -= denom;
- }
-
return result;
}
diff --git a/stdlib/longlong.h b/stdlib/longlong.h
index c4b1b97be0..5f00e548a7 100644
--- a/stdlib/longlong.h
+++ b/stdlib/longlong.h
@@ -188,16 +188,20 @@ extern UDItype __udiv_qrnnd (UDItype *, UDItype, UDItype, UDItype);
"rIJ" ((USItype) (bh)), \
"r" ((USItype) (al)), \
"rIJ" ((USItype) (bl)))
-/* Call libgcc routine. */
-#define umul_ppmm(w1, w0, u, v) \
-do { \
- DWunion __w; \
- __w.ll = __umulsidi3 (u, v); \
- w1 = __w.s.high; \
- w0 = __w.s.low; \
-} while (0)
-#define __umulsidi3 __umulsidi3
-UDItype __umulsidi3 (USItype, USItype);
+
+#define __umulsidi3(u,v) ((UDItype)(USItype)u*(USItype)v)
+#ifdef __ARC_NORM__
+#define count_leading_zeros(count, x) \
+ do \
+ { \
+ SItype c_; \
+ \
+ __asm__ ("norm.f\t%0,%1\n\tmov.mi\t%0,-1" : "=r" (c_) : "r" (x) : "cc");\
+ (count) = c_ + 1; \
+ } \
+ while (0)
+#define COUNT_LEADING_ZEROS_0 32
+#endif
#endif
#if defined (__arm__) && (defined (__thumb2__) || !defined (__thumb__)) \
@@ -285,12 +289,39 @@ UDItype __umulsidi3 (USItype, USItype);
#endif /* defined (__AVR__) */
-#if defined (__CRIS__) && __CRIS_arch_version >= 3
+#if defined (__CRIS__)
+
+#if __CRIS_arch_version >= 3
#define count_leading_zeros(COUNT, X) ((COUNT) = __builtin_clz (X))
+#define COUNT_LEADING_ZEROS_0 32
+#endif /* __CRIS_arch_version >= 3 */
+
#if __CRIS_arch_version >= 8
#define count_trailing_zeros(COUNT, X) ((COUNT) = __builtin_ctz (X))
-#endif
-#endif /* __CRIS__ */
+#endif /* __CRIS_arch_version >= 8 */
+
+#if __CRIS_arch_version >= 10
+#define __umulsidi3(u,v) ((UDItype)(USItype) (u) * (UDItype)(USItype) (v))
+#else
+#define __umulsidi3 __umulsidi3
+extern UDItype __umulsidi3 (USItype, USItype);
+#endif /* __CRIS_arch_version >= 10 */
+
+#define umul_ppmm(w1, w0, u, v) \
+ do { \
+ UDItype __x = __umulsidi3 (u, v); \
+ (w0) = (USItype) (__x); \
+ (w1) = (USItype) (__x >> 32); \
+ } while (0)
+
+/* FIXME: defining add_ssaaaa and sub_ddmmss should be advantageous for
+ DFmode ("double" intrinsics, avoiding two of the three insns handling
+ carry), but defining them as open-code C composing and doing the
+ operation in DImode (UDImode) shows that the DImode needs work:
+ register pressure from requiring neighboring registers and the
+ traffic to and from them come to dominate, in the 4.7 series. */
+
+#endif /* defined (__CRIS__) */
#if defined (__hppa) && W_TYPE_SIZE == 32
#define add_ssaaaa(sh, sl, ah, al, bh, bl) \
diff --git a/stdlib/strfmon_l.c b/stdlib/strfmon_l.c
index 345e0056e1..a257dac26a 100644
--- a/stdlib/strfmon_l.c
+++ b/stdlib/strfmon_l.c
@@ -158,8 +158,8 @@ __vstrfmon_l (char *s, size_t maxsize, __locale_t loc, const char *format,
group = 1; /* Print digits grouped. */
pad = ' '; /* Fill character is <SP>. */
is_long_double = 0; /* Double argument by default. */
- p_sign_posn = -1; /* This indicates whether the */
- n_sign_posn = -1; /* '(' flag is given. */
+ p_sign_posn = -2; /* This indicates whether the */
+ n_sign_posn = -2; /* '(' flag is given. */
width = -1; /* No width specified so far. */
left = 0; /* Right justified by default. */
@@ -181,7 +181,7 @@ __vstrfmon_l (char *s, size_t maxsize, __locale_t loc, const char *format,
group = 0;
continue;
case '+': /* Use +/- for sign of number. */
- if (n_sign_posn != -1)
+ if (n_sign_posn != -2)
{
__set_errno (EINVAL);
return -1;
@@ -190,7 +190,7 @@ __vstrfmon_l (char *s, size_t maxsize, __locale_t loc, const char *format,
n_sign_posn = *_NL_CURRENT (LC_MONETARY, N_SIGN_POSN);
continue;
case '(': /* Use ( ) for negative sign. */
- if (n_sign_posn != -1)
+ if (n_sign_posn != -2)
{
__set_errno (EINVAL);
return -1;
@@ -310,16 +310,16 @@ __vstrfmon_l (char *s, size_t maxsize, __locale_t loc, const char *format,
/* If not specified by the format string now find the values for
the format specification. */
- if (p_sign_posn == -1)
+ if (p_sign_posn == -2)
p_sign_posn = *_NL_CURRENT (LC_MONETARY, int_format ? INT_P_SIGN_POSN : P_SIGN_POSN);
- if (n_sign_posn == -1)
+ if (n_sign_posn == -2)
n_sign_posn = *_NL_CURRENT (LC_MONETARY, int_format ? INT_N_SIGN_POSN : N_SIGN_POSN);
if (right_prec == -1)
{
right_prec = *_NL_CURRENT (LC_MONETARY, int_format ? INT_FRAC_DIGITS : FRAC_DIGITS);
- if (right_prec == CHAR_MAX)
+ if (right_prec == '\377')
right_prec = 2;
}
@@ -384,13 +384,13 @@ __vstrfmon_l (char *s, size_t maxsize, __locale_t loc, const char *format,
cs_precedes = 1;
if (other_cs_precedes != 0)
other_cs_precedes = 1;
- if (sep_by_space == CHAR_MAX)
+ if (sep_by_space == '\377')
sep_by_space = 0;
- if (other_sep_by_space == CHAR_MAX)
+ if (other_sep_by_space == '\377')
other_sep_by_space = 0;
- if (sign_posn == CHAR_MAX)
+ if (sign_posn == '\377')
sign_posn = 1;
- if (other_sign_posn == CHAR_MAX)
+ if (other_sign_posn == '\377')
other_sign_posn = 1;
/* Check for degenerate cases */
diff --git a/stdlib/strtod_l.c b/stdlib/strtod_l.c
index 8f60653fb0..c1c5c0db4e 100644
--- a/stdlib/strtod_l.c
+++ b/stdlib/strtod_l.c
@@ -228,7 +228,7 @@ round_and_return (mp_limb_t *retval, intmax_t exponent, int negative,
round_limb = retval[RETURN_LIMB_SIZE - 1];
round_bit = (MANT_DIG - 1) % BITS_PER_MP_LIMB;
- for (i = 0; i < RETURN_LIMB_SIZE; ++i)
+ for (i = 0; i < RETURN_LIMB_SIZE - 1; ++i)
more_bits |= retval[i] != 0;
MPN_ZERO (retval, RETURN_LIMB_SIZE);
}
@@ -1752,7 +1752,7 @@ ____STRTOF_INTERNAL (nptr, endptr, group, loc)
got_limb;
}
- for (i = densize; num[i] == 0 && i >= 0; --i)
+ for (i = densize; i >= 0 && num[i] == 0; --i)
;
return round_and_return (retval, exponent - 1, negative,
quot, BITS_PER_MP_LIMB - 1 - used,
diff --git a/stdlib/tst-strtod-round-data b/stdlib/tst-strtod-round-data
index 86d460e3b6..a6c37677eb 100644
--- a/stdlib/tst-strtod-round-data
+++ b/stdlib/tst-strtod-round-data
@@ -109,3 +109,11 @@
-0x0.7p-1074
-0x0.7p-16445
-0x0.7p-16494
+0x1p-150
+0x1p-1075
+0x1p-16446
+0x1p-16495
+-0x1p-150
+-0x1p-1075
+-0x1p-16446
+-0x1p-16495
diff --git a/stdlib/tst-strtod-round.c b/stdlib/tst-strtod-round.c
index 9a440264d0..e7aaed17e8 100644
--- a/stdlib/tst-strtod-round.c
+++ b/stdlib/tst-strtod-round.c
@@ -7535,6 +7535,294 @@ static const struct test tests[] = {
-0x0p+0L,
-0x0p+0L,
-0x0p+0L),
+ TEST ("0x1p-150",
+ false,
+ 0x0p+0f,
+ 0x0p+0f,
+ 0x0p+0f,
+ 0x8p-152f,
+ true,
+ 0x4p-152,
+ 0x4p-152,
+ 0x4p-152,
+ 0x4p-152,
+ true,
+ 0x4p-152L,
+ 0x4p-152L,
+ 0x4p-152L,
+ 0x4p-152L,
+ true,
+ 0x4p-152L,
+ 0x4p-152L,
+ 0x4p-152L,
+ 0x4p-152L,
+ true,
+ 0x4p-152L,
+ 0x4p-152L,
+ 0x4p-152L,
+ 0x4p-152L,
+ true,
+ 0x4p-152L,
+ 0x4p-152L,
+ 0x4p-152L,
+ 0x4p-152L,
+ true,
+ 0x4p-152L,
+ 0x4p-152L,
+ 0x4p-152L,
+ 0x4p-152L),
+ TEST ("0x1p-1075",
+ false,
+ 0x0p+0f,
+ 0x0p+0f,
+ 0x0p+0f,
+ 0x8p-152f,
+ false,
+ 0x0p+0,
+ 0x0p+0,
+ 0x0p+0,
+ 0x4p-1076,
+ false,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x4p-1076L,
+ true,
+ 0x2p-1076L,
+ 0x2p-1076L,
+ 0x2p-1076L,
+ 0x2p-1076L,
+ true,
+ 0x2p-1076L,
+ 0x2p-1076L,
+ 0x2p-1076L,
+ 0x2p-1076L,
+ false,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x4p-1076L,
+ true,
+ 0x2p-1076L,
+ 0x2p-1076L,
+ 0x2p-1076L,
+ 0x2p-1076L),
+ TEST ("0x1p-16446",
+ false,
+ 0x0p+0f,
+ 0x0p+0f,
+ 0x0p+0f,
+ 0x8p-152f,
+ false,
+ 0x0p+0,
+ 0x0p+0,
+ 0x0p+0,
+ 0x4p-1076,
+ false,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x4p-1076L,
+ false,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x8p-16448L,
+ true,
+ 0x4p-16448L,
+ 0x4p-16448L,
+ 0x4p-16448L,
+ 0x4p-16448L,
+ false,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x4p-1076L,
+ true,
+ 0x4p-16448L,
+ 0x4p-16448L,
+ 0x4p-16448L,
+ 0x4p-16448L),
+ TEST ("0x1p-16495",
+ false,
+ 0x0p+0f,
+ 0x0p+0f,
+ 0x0p+0f,
+ 0x8p-152f,
+ false,
+ 0x0p+0,
+ 0x0p+0,
+ 0x0p+0,
+ 0x4p-1076,
+ false,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x4p-1076L,
+ false,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x8p-16448L,
+ false,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x4p-16448L,
+ false,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x4p-1076L,
+ false,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x0p+0L,
+ 0x4p-16496L),
+ TEST ("-0x1p-150",
+ false,
+ -0x8p-152f,
+ -0x0p+0f,
+ -0x0p+0f,
+ -0x0p+0f,
+ true,
+ -0x4p-152,
+ -0x4p-152,
+ -0x4p-152,
+ -0x4p-152,
+ true,
+ -0x4p-152L,
+ -0x4p-152L,
+ -0x4p-152L,
+ -0x4p-152L,
+ true,
+ -0x4p-152L,
+ -0x4p-152L,
+ -0x4p-152L,
+ -0x4p-152L,
+ true,
+ -0x4p-152L,
+ -0x4p-152L,
+ -0x4p-152L,
+ -0x4p-152L,
+ true,
+ -0x4p-152L,
+ -0x4p-152L,
+ -0x4p-152L,
+ -0x4p-152L,
+ true,
+ -0x4p-152L,
+ -0x4p-152L,
+ -0x4p-152L,
+ -0x4p-152L),
+ TEST ("-0x1p-1075",
+ false,
+ -0x8p-152f,
+ -0x0p+0f,
+ -0x0p+0f,
+ -0x0p+0f,
+ false,
+ -0x4p-1076,
+ -0x0p+0,
+ -0x0p+0,
+ -0x0p+0,
+ false,
+ -0x4p-1076L,
+ -0x0p+0L,
+ -0x0p+0L,
+ -0x0p+0L,
+ true,
+ -0x2p-1076L,
+ -0x2p-1076L,
+ -0x2p-1076L,
+ -0x2p-1076L,
+ true,
+ -0x2p-1076L,
+ -0x2p-1076L,
+ -0x2p-1076L,
+ -0x2p-1076L,
+ false,
+ -0x4p-1076L,
+ -0x0p+0L,
+ -0x0p+0L,
+ -0x0p+0L,
+ true,
+ -0x2p-1076L,
+ -0x2p-1076L,
+ -0x2p-1076L,
+ -0x2p-1076L),
+ TEST ("-0x1p-16446",
+ false,
+ -0x8p-152f,
+ -0x0p+0f,
+ -0x0p+0f,
+ -0x0p+0f,
+ false,
+ -0x4p-1076,
+ -0x0p+0,
+ -0x0p+0,
+ -0x0p+0,
+ false,
+ -0x4p-1076L,
+ -0x0p+0L,
+ -0x0p+0L,
+ -0x0p+0L,
+ false,
+ -0x8p-16448L,
+ -0x0p+0L,
+ -0x0p+0L,
+ -0x0p+0L,
+ true,
+ -0x4p-16448L,
+ -0x4p-16448L,
+ -0x4p-16448L,
+ -0x4p-16448L,
+ false,
+ -0x4p-1076L,
+ -0x0p+0L,
+ -0x0p+0L,
+ -0x0p+0L,
+ true,
+ -0x4p-16448L,
+ -0x4p-16448L,
+ -0x4p-16448L,
+ -0x4p-16448L),
+ TEST ("-0x1p-16495",
+ false,
+ -0x8p-152f,
+ -0x0p+0f,
+ -0x0p+0f,
+ -0x0p+0f,
+ false,
+ -0x4p-1076,
+ -0x0p+0,
+ -0x0p+0,
+ -0x0p+0,
+ false,
+ -0x4p-1076L,
+ -0x0p+0L,
+ -0x0p+0L,
+ -0x0p+0L,
+ false,
+ -0x8p-16448L,
+ -0x0p+0L,
+ -0x0p+0L,
+ -0x0p+0L,
+ false,
+ -0x4p-16448L,
+ -0x0p+0L,
+ -0x0p+0L,
+ -0x0p+0L,
+ false,
+ -0x4p-1076L,
+ -0x0p+0L,
+ -0x0p+0L,
+ -0x0p+0L,
+ false,
+ -0x4p-16496L,
+ -0x0p+0L,
+ -0x0p+0L,
+ -0x0p+0L),
};
static int
diff --git a/string/Makefile b/string/Makefile
index aaad74355a..35135a03e7 100644
--- a/string/Makefile
+++ b/string/Makefile
@@ -45,7 +45,7 @@ strop-tests := memchr memcmp memcpy memmove mempcpy memset memccpy \
stpcpy stpncpy strcat strchr strcmp strcpy strcspn \
strlen strncmp strncpy strpbrk strrchr strspn memmem \
strstr strcasestr strnlen strcasecmp strncasecmp \
- strncat rawmemchr strchrnul bcopy bzero
+ strncat rawmemchr strchrnul bcopy bzero memrchr
tests := tester inl-tester noinl-tester testcopy test-ffs \
tst-strlen stratcliff tst-svc tst-inlcall \
bug-strncat1 bug-strspn1 bug-strpbrk1 tst-bswap \
@@ -54,8 +54,7 @@ tests := tester inl-tester noinl-tester testcopy test-ffs \
bug-envz1 tst-strxfrm2 tst-endian tst-svc2 \
tst-strtok_r
-tests-ifunc := $(strop-tests:%=test-%-ifunc)
-tests += $(tests-ifunc)
+xtests = tst-strcoll-overflow
include ../Rules
@@ -67,8 +66,6 @@ tst-strxfrm2-ENV = LOCPATH=$(common-objpfx)localedata
bug-strcoll1-ENV = LOCPATH=$(common-objpfx)localedata
test-strcasecmp-ENV = LOCPATH=$(common-objpfx)localedata
test-strncasecmp-ENV = LOCPATH=$(common-objpfx)localedata
-test-strcasecmp-ifunc-ENV = LOCPATH=$(common-objpfx)localedata
-test-strncasecmp-ifunc-ENV = LOCPATH=$(common-objpfx)localedata
CFLAGS-inl-tester.c = -fno-builtin
CFLAGS-noinl-tester.c = -fno-builtin
CFLAGS-tst-strlen.c = -fno-builtin
diff --git a/string/ffs.c b/string/ffs.c
index a645224f07..916c5c3483 100644
--- a/string/ffs.c
+++ b/string/ffs.c
@@ -46,6 +46,7 @@ __ffs (i)
return table[x >> a] + a;
}
weak_alias (__ffs, ffs)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
#if ULONG_MAX == UINT_MAX
diff --git a/string/memchr.c b/string/memchr.c
index 2427c4b4b6..7a09de8932 100644
--- a/string/memchr.c
+++ b/string/memchr.c
@@ -51,9 +51,13 @@
#undef memchr
#undef __memchr
+#ifndef MEMCHR
+# define MEMCHR __memchr
+#endif
+
/* Search no more than N bytes of S for C. */
__ptr_t
-__memchr (s, c_in, n)
+MEMCHR (s, c_in, n)
const __ptr_t s;
int c_in;
size_t n;
diff --git a/string/memcmp.c b/string/memcmp.c
index dd76145f03..d7c57db8bd 100644
--- a/string/memcmp.c
+++ b/string/memcmp.c
@@ -29,6 +29,10 @@
#undef memcmp
+#ifndef MEMCMP
+# define MEMCMP memcmp
+#endif
+
#ifdef _LIBC
# include <memcopy.h>
@@ -304,7 +308,7 @@ memcmp_not_common_alignment (srcp1, srcp2, len)
}
int
-memcmp (s1, s2, len)
+MEMCMP (s1, s2, len)
const __ptr_t s1;
const __ptr_t s2;
size_t len;
diff --git a/string/mempcpy.c b/string/mempcpy.c
index c0d2448205..a626c9cc60 100644
--- a/string/mempcpy.c
+++ b/string/mempcpy.c
@@ -24,8 +24,12 @@
#undef mempcpy
#undef __mempcpy
+#ifndef MEMPCPY
+# define MEMPCPY __mempcpy
+#endif
+
void *
-__mempcpy (void *dest, const void *src, size_t len)
+MEMPCPY (void *dest, const void *src, size_t len)
{
return memcpy (dest, src, len) + len;
}
diff --git a/string/rawmemchr.c b/string/rawmemchr.c
index 30fbe87614..7702ecf047 100644
--- a/string/rawmemchr.c
+++ b/string/rawmemchr.c
@@ -47,10 +47,13 @@
#undef memchr
+#ifndef RAWMEMCHR
+# define RAWMEMCHR __rawmemchr
+#endif
/* Find the first occurrence of C in S. */
__ptr_t
-__rawmemchr (s, c_in)
+RAWMEMCHR (s, c_in)
const __ptr_t s;
int c_in;
{
diff --git a/string/strchrnul.c b/string/strchrnul.c
index 1f63572d6c..bf39636872 100644
--- a/string/strchrnul.c
+++ b/string/strchrnul.c
@@ -27,9 +27,13 @@
#undef __strchrnul
#undef strchrnul
+#ifndef STRCHRNUL
+# define STRCHRNUL __strchrnul
+#endif
+
/* Find the first occurrence of C in S or the final NUL byte. */
char *
-__strchrnul (s, c_in)
+STRCHRNUL (s, c_in)
const char *s;
int c_in;
{
diff --git a/string/strcoll_l.c b/string/strcoll_l.c
index 50ed84d281..5095e98fb7 100644
--- a/string/strcoll_l.c
+++ b/string/strcoll_l.c
@@ -24,6 +24,7 @@
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
+#include <sys/param.h>
#ifndef STRING_TYPE
# define STRING_TYPE char
@@ -45,7 +46,7 @@
typedef struct
{
int len; /* Length of the current sequence. */
- int val; /* Position of the sequence relative to the
+ size_t val; /* Position of the sequence relative to the
previous non-ignored sequence. */
size_t idxnow; /* Current index in sequences. */
size_t idxmax; /* Maximum index in sequences. */
@@ -55,6 +56,12 @@ typedef struct
const USTRING_TYPE *us; /* The string. */
int32_t *idxarr; /* Array to cache weight indices. */
unsigned char *rulearr; /* Array to cache rules. */
+ unsigned char rule; /* Saved rule for the first sequence. */
+ int32_t idx; /* Index to weight of the current sequence. */
+ int32_t save_idx; /* Save looked up index of a forward
+ sequence after the last backward
+ sequence. */
+ const USTRING_TYPE *back_us; /* Beginning of the backward sequence. */
} coll_seq;
/* Get next sequence. The weight indices are cached, so we don't need to
@@ -64,7 +71,7 @@ get_next_seq_cached (coll_seq *seq, int nrules, int pass,
const unsigned char *rulesets,
const USTRING_TYPE *weights)
{
- int val = seq->val = 0;
+ size_t val = seq->val = 0;
int len = seq->len;
size_t backw_stop = seq->backw_stop;
size_t backw = seq->backw;
@@ -146,7 +153,7 @@ get_next_seq (coll_seq *seq, int nrules, const unsigned char *rulesets,
const USTRING_TYPE *extra, const int32_t *indirect)
{
#include WEIGHT_H
- int val = seq->val = 0;
+ size_t val = seq->val = 0;
int len = seq->len;
size_t backw_stop = seq->backw_stop;
size_t backw = seq->backw;
@@ -162,7 +169,7 @@ get_next_seq (coll_seq *seq, int nrules, const unsigned char *rulesets,
++val;
if (backw_stop != ~0ul)
{
- /* The is something pushed. */
+ /* There is something pushed. */
if (backw == backw_stop)
{
/* The last pushed character was handled. Continue
@@ -227,15 +234,199 @@ get_next_seq (coll_seq *seq, int nrules, const unsigned char *rulesets,
seq->us = us;
}
-/* Compare two sequences. */
+/* Get next sequence. Traverse the string as required. This function does not
+ set or use any index or rule cache. */
+static void
+get_next_seq_nocache (coll_seq *seq, int nrules, const unsigned char *rulesets,
+ const USTRING_TYPE *weights, const int32_t *table,
+ const USTRING_TYPE *extra, const int32_t *indirect,
+ int pass)
+{
+#include WEIGHT_H
+ size_t val = seq->val = 0;
+ int len = seq->len;
+ size_t backw_stop = seq->backw_stop;
+ size_t backw = seq->backw;
+ size_t idxcnt = seq->idxcnt;
+ size_t idxmax = seq->idxmax;
+ int32_t idx = seq->idx;
+ const USTRING_TYPE *us = seq->us;
+
+ while (len == 0)
+ {
+ ++val;
+ if (backw_stop != ~0ul)
+ {
+ /* There is something pushed. */
+ if (backw == backw_stop)
+ {
+ /* The last pushed character was handled. Continue
+ with forward characters. */
+ if (idxcnt < idxmax)
+ {
+ idx = seq->save_idx;
+ backw_stop = ~0ul;
+ }
+ else
+ {
+ /* Nothing anymore. The backward sequence ended with
+ the last sequence in the string. Note that len is
+ still zero. */
+ idx = 0;
+ break;
+ }
+ }
+ else
+ {
+ /* XXX Traverse BACKW sequences from the beginning of
+ BACKW_STOP to get the next sequence. Is ther a quicker way
+ to do this? */
+ size_t i = backw_stop;
+ us = seq->back_us;
+ while (i < backw)
+ {
+ int32_t tmp = findidx (&us, -1);
+ idx = tmp & 0xffffff;
+ i++;
+ }
+ --backw;
+ us = seq->us;
+ }
+ }
+ else
+ {
+ backw_stop = idxmax;
+ int32_t prev_idx = idx;
+
+ while (*us != L('\0'))
+ {
+ int32_t tmp = findidx (&us, -1);
+ unsigned char rule = tmp >> 24;
+ prev_idx = idx;
+ idx = tmp & 0xffffff;
+ idxcnt = idxmax++;
+
+ /* Save the rule for the first sequence. */
+ if (__glibc_unlikely (idxcnt == 0))
+ seq->rule = rule;
+
+ if ((rulesets[rule * nrules + pass]
+ & sort_backward) == 0)
+ /* No more backward characters to push. */
+ break;
+ ++idxcnt;
+ }
+
+ if (backw_stop >= idxcnt)
+ {
+ /* No sequence at all or just one. */
+ if (idxcnt == idxmax || backw_stop > idxcnt)
+ /* Note that len is still zero. */
+ break;
+
+ backw_stop = ~0ul;
+ }
+ else
+ {
+ /* We pushed backward sequences. If the stream ended with the
+ backward sequence, then we process the last sequence we
+ found. Otherwise we process the sequence before the last
+ one since the last one was a forward sequence. */
+ seq->back_us = seq->us;
+ seq->us = us;
+ backw = idxcnt;
+ if (idxmax > idxcnt)
+ {
+ backw--;
+ seq->save_idx = idx;
+ idx = prev_idx;
+ }
+ if (backw > backw_stop)
+ backw--;
+ }
+ }
+
+ len = weights[idx++];
+ /* Skip over indices of previous levels. */
+ for (int i = 0; i < pass; i++)
+ {
+ idx += len;
+ len = weights[idx];
+ idx++;
+ }
+ }
+
+ /* Update the structure. */
+ seq->val = val;
+ seq->len = len;
+ seq->backw_stop = backw_stop;
+ seq->backw = backw;
+ seq->idxcnt = idxcnt;
+ seq->idxmax = idxmax;
+ seq->us = us;
+ seq->idx = idx;
+}
+
+/* Compare two sequences. This version does not use the index and rules
+ cache. */
+static int
+do_compare_nocache (coll_seq *seq1, coll_seq *seq2, int position,
+ const USTRING_TYPE *weights)
+{
+ int seq1len = seq1->len;
+ int seq2len = seq2->len;
+ size_t val1 = seq1->val;
+ size_t val2 = seq2->val;
+ int idx1 = seq1->idx;
+ int idx2 = seq2->idx;
+ int result = 0;
+
+ /* Test for position if necessary. */
+ if (position && val1 != val2)
+ {
+ result = val1 > val2 ? 1 : -1;
+ goto out;
+ }
+
+ /* Compare the two sequences. */
+ do
+ {
+ if (weights[idx1] != weights[idx2])
+ {
+ /* The sequences differ. */
+ result = weights[idx1] - weights[idx2];
+ goto out;
+ }
+
+ /* Increment the offsets. */
+ ++idx1;
+ ++idx2;
+
+ --seq1len;
+ --seq2len;
+ }
+ while (seq1len > 0 && seq2len > 0);
+
+ if (position && seq1len != seq2len)
+ result = seq1len - seq2len;
+
+out:
+ seq1->len = seq1len;
+ seq2->len = seq2len;
+ seq1->idx = idx1;
+ seq2->idx = idx2;
+ return result;
+}
+
+/* Compare two sequences using the index cache. */
static int
do_compare (coll_seq *seq1, coll_seq *seq2, int position,
const USTRING_TYPE *weights)
{
int seq1len = seq1->len;
int seq2len = seq2->len;
- int val1 = seq1->val;
- int val2 = seq2->val;
+ size_t val1 = seq1->val;
+ size_t val2 = seq2->val;
int32_t *idx1arr = seq1->idxarr;
int32_t *idx2arr = seq2->idxarr;
int idx1now = seq1->idxnow;
@@ -245,7 +436,7 @@ do_compare (coll_seq *seq1, coll_seq *seq2, int position,
/* Test for position if necessary. */
if (position && val1 != val2)
{
- result = val1 - val2;
+ result = val1 > val2 ? 1 : -1;
goto out;
}
@@ -334,57 +525,70 @@ STRCOLL (const STRING_TYPE *s1, const STRING_TYPE *s2, __locale_t l)
memset (&seq1, 0, sizeof (seq1));
seq2 = seq1;
- /* We need the elements of the strings as unsigned values since they
- are used as indices. */
- seq1.us = (const USTRING_TYPE *) s1;
- seq2.us = (const USTRING_TYPE *) s2;
+ size_t size_max = SIZE_MAX / (sizeof (int32_t) + 1);
- if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1)))
+ if (MIN (s1len, s2len) > size_max
+ || MAX (s1len, s2len) > size_max - MIN (s1len, s2len))
+ {
+ /* If the strings are long enough to cause overflow in the size request,
+ then skip the allocation and proceed with the non-cached routines. */
+ }
+ else if (! __libc_use_alloca ((s1len + s2len) * (sizeof (int32_t) + 1)))
{
seq1.idxarr = (int32_t *) malloc ((s1len + s2len) * (sizeof (int32_t) + 1));
- seq2.idxarr = &seq1.idxarr[s1len];
- seq1.rulearr = (unsigned char *) &seq2.idxarr[s2len];
- seq2.rulearr = &seq1.rulearr[s1len];
-
- if (seq1.idxarr == NULL)
- /* No memory. Well, go with the stack then.
-
- XXX Once this implementation is stable we will handle this
- differently. Instead of precomputing the indices we will
- do this in time. This means, though, that this happens for
- every pass again. */
- goto try_stack;
- use_malloc = true;
+
+ /* If we failed to allocate memory, we leave everything as NULL so that
+ we use the nocache version of traversal and comparison functions. */
+ if (seq1.idxarr != NULL)
+ {
+ seq2.idxarr = &seq1.idxarr[s1len];
+ seq1.rulearr = (unsigned char *) &seq2.idxarr[s2len];
+ seq2.rulearr = &seq1.rulearr[s1len];
+ use_malloc = true;
+ }
}
else
{
- try_stack:
seq1.idxarr = (int32_t *) alloca (s1len * sizeof (int32_t));
seq2.idxarr = (int32_t *) alloca (s2len * sizeof (int32_t));
seq1.rulearr = (unsigned char *) alloca (s1len);
seq2.rulearr = (unsigned char *) alloca (s2len);
}
- seq1.rulearr[0] = 0;
+ int rule = 0;
/* Cache values in the first pass and if needed, use them in subsequent
passes. */
for (int pass = 0; pass < nrules; ++pass)
{
seq1.idxcnt = 0;
+ seq1.idx = 0;
+ seq2.idx = 0;
seq1.backw_stop = ~0ul;
seq1.backw = ~0ul;
seq2.idxcnt = 0;
seq2.backw_stop = ~0ul;
seq2.backw = ~0ul;
+ /* We need the elements of the strings as unsigned values since they
+ are used as indices. */
+ seq1.us = (const USTRING_TYPE *) s1;
+ seq2.us = (const USTRING_TYPE *) s2;
+
/* We assume that if a rule has defined `position' in one section
this is true for all of them. */
- int position = rulesets[seq1.rulearr[0] * nrules + pass] & sort_position;
+ int position = rulesets[rule * nrules + pass] & sort_position;
while (1)
{
- if (pass == 0)
+ if (__glibc_unlikely (seq1.idxarr == NULL))
+ {
+ get_next_seq_nocache (&seq1, nrules, rulesets, weights, table,
+ extra, indirect, pass);
+ get_next_seq_nocache (&seq2, nrules, rulesets, weights, table,
+ extra, indirect, pass);
+ }
+ else if (pass == 0)
{
get_next_seq (&seq1, nrules, rulesets, weights, table, extra,
indirect);
@@ -411,10 +615,18 @@ STRCOLL (const STRING_TYPE *s1, const STRING_TYPE *s2, __locale_t l)
goto free_and_return;
}
- result = do_compare (&seq1, &seq2, position, weights);
+ if (__glibc_unlikely (seq1.idxarr == NULL))
+ result = do_compare_nocache (&seq1, &seq2, position, weights);
+ else
+ result = do_compare (&seq1, &seq2, position, weights);
if (result != 0)
goto free_and_return;
}
+
+ if (__glibc_likely (seq1.rulearr != NULL))
+ rule = seq1.rulearr[0];
+ else
+ rule = seq1.rule;
}
/* Free the memory if needed. */
diff --git a/string/test-bcopy-ifunc.c b/string/test-bcopy-ifunc.c
deleted file mode 100644
index 9e136e3a31..0000000000
--- a/string/test-bcopy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of bcopy function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-bcopy.c"
diff --git a/string/test-bzero-ifunc.c b/string/test-bzero-ifunc.c
deleted file mode 100644
index 7c3ac2ea65..0000000000
--- a/string/test-bzero-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of bzero function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-bzero.c"
diff --git a/string/test-memccpy-ifunc.c b/string/test-memccpy-ifunc.c
deleted file mode 100644
index aa713abebd..0000000000
--- a/string/test-memccpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of memccpy function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-memccpy.c"
diff --git a/string/test-memchr-ifunc.c b/string/test-memchr-ifunc.c
deleted file mode 100644
index a390a78b14..0000000000
--- a/string/test-memchr-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of memchr function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-memchr.c"
diff --git a/string/test-memcmp-ifunc.c b/string/test-memcmp-ifunc.c
deleted file mode 100644
index a333d75bac..0000000000
--- a/string/test-memcmp-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of memcmp function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-memcmp.c"
diff --git a/string/test-memcpy-ifunc.c b/string/test-memcpy-ifunc.c
deleted file mode 100644
index e8bf929445..0000000000
--- a/string/test-memcpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of memcpy function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-memcpy.c"
diff --git a/string/test-memcpy.c b/string/test-memcpy.c
index d121ef02a5..b7ebe5f4e0 100644
--- a/string/test-memcpy.c
+++ b/string/test-memcpy.c
@@ -63,8 +63,8 @@ do_one_test (impl_t *impl, char *dst, const char *src,
if (memcmp (dst, src, len) != 0)
{
- error (0, 0, "Wrong result in function %s dst \"%s\" src \"%s\"",
- impl->name, dst, src);
+ error (0, 0, "Wrong result in function %s dst %p \"%.*s\" src %p \"%.*s\" len %zu",
+ impl->name, dst, (int) len, dst, src, (int) len, src, len);
ret = 1;
return;
}
diff --git a/string/test-memmem-ifunc.c b/string/test-memmem-ifunc.c
deleted file mode 100644
index d6bca91d43..0000000000
--- a/string/test-memmem-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of memmem function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-memmem.c"
diff --git a/string/test-memmove-ifunc.c b/string/test-memmove-ifunc.c
deleted file mode 100644
index 066f0749ea..0000000000
--- a/string/test-memmove-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of memmove function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-memmove.c"
diff --git a/string/test-mempcpy-ifunc.c b/string/test-mempcpy-ifunc.c
deleted file mode 100644
index 3b24eb2041..0000000000
--- a/string/test-mempcpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of mempcpy function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-mempcpy.c"
diff --git a/string/test-memrchr.c b/string/test-memrchr.c
new file mode 100644
index 0000000000..a4fe81190e
--- /dev/null
+++ b/string/test-memrchr.c
@@ -0,0 +1,169 @@
+/* Test and measure memrchr functions.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Written by Jakub Jelinek <jakub@redhat.com>, 1999.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define TEST_MAIN
+#define TEST_NAME "memrchr"
+#include "test-string.h"
+
+typedef char *(*proto_t) (const char *, int, size_t);
+char *simple_memrchr (const char *, int, size_t);
+
+IMPL (simple_memrchr, 0)
+IMPL (memrchr, 1)
+
+char *
+simple_memrchr (const char *s, int c, size_t n)
+{
+ s = s + n;
+ while (n--)
+ if (*--s == (char) c)
+ return (char *) s;
+ return NULL;
+}
+
+static void
+do_one_test (impl_t *impl, const char *s, int c, size_t n, char *exp_res)
+{
+ char *res = CALL (impl, s, c, n);
+ if (res != exp_res)
+ {
+ error (0, 0, "Wrong result in function %s %p %p", impl->name,
+ res, exp_res);
+ ret = 1;
+ return;
+ }
+}
+
+static void
+do_test (size_t align, size_t pos, size_t len, int seek_char)
+{
+ size_t i;
+ char *result;
+
+ align &= 7;
+ if (align + len >= page_size)
+ return;
+
+ for (i = 0; i < len; ++i)
+ {
+ buf1[align + i] = 1 + 23 * i % 127;
+ if (buf1[align + i] == seek_char)
+ buf1[align + i] = seek_char + 1;
+ }
+ buf1[align + len] = 0;
+
+ if (pos < len)
+ {
+ buf1[align + pos] = seek_char;
+ buf1[align + len] = -seek_char;
+ result = (char *) (buf1 + align + pos);
+ }
+ else
+ {
+ result = NULL;
+ buf1[align + len] = seek_char;
+ }
+
+ FOR_EACH_IMPL (impl, 0)
+ do_one_test (impl, (char *) (buf1 + align), seek_char, len, result);
+}
+
+static void
+do_random_tests (void)
+{
+ size_t i, j, n, align, pos, len;
+ int seek_char;
+ char *result;
+ unsigned char *p = buf1 + page_size - 512;
+
+ for (n = 0; n < ITERATIONS; n++)
+ {
+ align = random () & 15;
+ pos = random () & 511;
+ if (pos + align >= 512)
+ pos = 511 - align - (random () & 7);
+ len = random () & 511;
+ if (pos >= len)
+ len = pos + (random () & 7);
+ if (len + align >= 512)
+ len = 512 - align - (random () & 7);
+ seek_char = random () & 255;
+ j = len + align + 64;
+ if (j > 512)
+ j = 512;
+
+ for (i = 0; i < j; i++)
+ {
+ if (i == pos + align)
+ p[i] = seek_char;
+ else
+ {
+ p[i] = random () & 255;
+ if (p[i] == seek_char)
+ p[i] = seek_char + 13;
+ }
+ }
+
+ if (pos < len)
+ result = (char *) (p + pos + align);
+ else
+ result = NULL;
+
+ FOR_EACH_IMPL (impl, 1)
+ if (CALL (impl, (char *) (p + align), seek_char, len) != result)
+ {
+ error (0, 0, "Iteration %zd - wrong result in function %s (%zd, %d, %zd, %zd) %p != %p, p %p",
+ n, impl->name, align, seek_char, len, pos,
+ CALL (impl, (char *) (p + align), seek_char, len),
+ result, p);
+ ret = 1;
+ }
+ }
+}
+
+int
+test_main (void)
+{
+ size_t i;
+
+ test_init ();
+
+ printf ("%20s", "");
+ FOR_EACH_IMPL (impl, 0)
+ printf ("\t%s", impl->name);
+ putchar ('\n');
+
+ for (i = 1; i < 8; ++i)
+ {
+ do_test (0, 16 << i, 2048, 23);
+ do_test (i, 64, 256, 23);
+ do_test (0, 16 << i, 2048, 0);
+ do_test (i, 64, 256, 0);
+ }
+ for (i = 1; i < 32; ++i)
+ {
+ do_test (0, i, i + 1, 23);
+ do_test (0, i, i + 1, 0);
+ }
+
+ do_random_tests ();
+ return ret;
+}
+
+#include "../test-skeleton.c"
diff --git a/string/test-memset-ifunc.c b/string/test-memset-ifunc.c
deleted file mode 100644
index 435cb77a58..0000000000
--- a/string/test-memset-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of memset function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-memset.c"
diff --git a/string/test-stpcpy-ifunc.c b/string/test-stpcpy-ifunc.c
deleted file mode 100644
index 0755a368e2..0000000000
--- a/string/test-stpcpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of stpcpy function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-stpcpy.c"
diff --git a/string/test-stpncpy-ifunc.c b/string/test-stpncpy-ifunc.c
deleted file mode 100644
index 43833fdcd3..0000000000
--- a/string/test-stpncpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of stpncpy function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-stpncpy.c"
diff --git a/string/test-strcasecmp-ifunc.c b/string/test-strcasecmp-ifunc.c
deleted file mode 100644
index 0cac4ed77c..0000000000
--- a/string/test-strcasecmp-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strcasecmp function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strcasecmp.c"
diff --git a/string/test-strcasestr-ifunc.c b/string/test-strcasestr-ifunc.c
deleted file mode 100644
index 77ec32999e..0000000000
--- a/string/test-strcasestr-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strcasestr function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strcasestr.c"
diff --git a/string/test-strcat-ifunc.c b/string/test-strcat-ifunc.c
deleted file mode 100644
index d9fb5f2c77..0000000000
--- a/string/test-strcat-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strcat function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strcat.c"
diff --git a/string/test-strchr-ifunc.c b/string/test-strchr-ifunc.c
deleted file mode 100644
index 2f758a9902..0000000000
--- a/string/test-strchr-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strchr function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strchr.c"
diff --git a/string/test-strcmp-ifunc.c b/string/test-strcmp-ifunc.c
deleted file mode 100644
index f6a8c94084..0000000000
--- a/string/test-strcmp-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strcmp function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strcmp.c"
diff --git a/string/test-strcpy-ifunc.c b/string/test-strcpy-ifunc.c
deleted file mode 100644
index e4ec2059ea..0000000000
--- a/string/test-strcpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strcpy function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strcpy.c"
diff --git a/string/test-strcspn-ifunc.c b/string/test-strcspn-ifunc.c
deleted file mode 100644
index 0dce0c411d..0000000000
--- a/string/test-strcspn-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strcspn function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strcspn.c"
diff --git a/string/test-string.h b/string/test-string.h
index afb6980d59..5385fa04f5 100644
--- a/string/test-string.h
+++ b/string/test-string.h
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#include <sys/cdefs.h>
+#define TEST_IFUNC
typedef struct
{
diff --git a/string/test-strlen-ifunc.c b/string/test-strlen-ifunc.c
deleted file mode 100644
index 8cf6755ec3..0000000000
--- a/string/test-strlen-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strlen function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strlen.c"
diff --git a/string/test-strncasecmp-ifunc.c b/string/test-strncasecmp-ifunc.c
deleted file mode 100644
index bafcf0267d..0000000000
--- a/string/test-strncasecmp-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strncasecmp function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strncasecmp.c"
diff --git a/string/test-strncat-ifunc.c b/string/test-strncat-ifunc.c
deleted file mode 100644
index d1e035492c..0000000000
--- a/string/test-strncat-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strncat function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strncat.c"
diff --git a/string/test-strncmp-ifunc.c b/string/test-strncmp-ifunc.c
deleted file mode 100644
index c4a5b3b528..0000000000
--- a/string/test-strncmp-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strncmp function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strncmp.c"
diff --git a/string/test-strncpy-ifunc.c b/string/test-strncpy-ifunc.c
deleted file mode 100644
index 04de132211..0000000000
--- a/string/test-strncpy-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strncpy function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strncpy.c"
diff --git a/string/test-strnlen-ifunc.c b/string/test-strnlen-ifunc.c
deleted file mode 100644
index 5722b8f960..0000000000
--- a/string/test-strnlen-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strnlen function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strnlen.c"
diff --git a/string/test-strpbrk-ifunc.c b/string/test-strpbrk-ifunc.c
deleted file mode 100644
index be6f03161d..0000000000
--- a/string/test-strpbrk-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strpbrk function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strpbrk.c"
diff --git a/string/test-strrchr-ifunc.c b/string/test-strrchr-ifunc.c
deleted file mode 100644
index 83e2348c36..0000000000
--- a/string/test-strrchr-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strrchr function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strrchr.c"
diff --git a/string/test-strspn-ifunc.c b/string/test-strspn-ifunc.c
deleted file mode 100644
index ae9de07991..0000000000
--- a/string/test-strspn-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strspn function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strspn.c"
diff --git a/string/test-strstr-ifunc.c b/string/test-strstr-ifunc.c
deleted file mode 100644
index 42e9c5e390..0000000000
--- a/string/test-strstr-ifunc.c
+++ /dev/null
@@ -1,20 +0,0 @@
-/* Test and measure IFUNC implementations of strstr function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#define TEST_IFUNC 1
-#include "test-strstr.c"
diff --git a/string/tester.c b/string/tester.c
index 2fe520caf1..f1ea4381d4 100644
--- a/string/tester.c
+++ b/string/tester.c
@@ -704,7 +704,7 @@ test_memrchr (void)
more than 128 byte chunks: */
{
char buf[128 + sizeof(long)];
- long align, len, i, pos;
+ long align, len, i, pos, n = 9;
for (align = 0; align < (long) sizeof(long); ++align) {
for (len = 0; len < (long) (sizeof(buf) - align); ++len) {
@@ -715,9 +715,9 @@ test_memrchr (void)
#if 0
printf("align %d, len %d, pos %d\n", align, len, pos);
#endif
- check(memrchr(buf + align, 'x', len) == buf + align + pos, 9);
+ check(memrchr(buf + align, 'x', len) == buf + align + pos, n++);
check(memrchr(buf + align + pos + 1, 'x', len - (pos + 1)) == NULL,
- 10);
+ n++);
buf[align + pos] = '-';
}
}
diff --git a/string/tst-strcoll-overflow.c b/string/tst-strcoll-overflow.c
new file mode 100644
index 0000000000..bb665ac514
--- /dev/null
+++ b/string/tst-strcoll-overflow.c
@@ -0,0 +1,61 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <locale.h>
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+
+/* Verify that strcoll does not crash for large strings for which it cannot
+ cache weight lookup results. The size is large enough to cause integer
+ overflows on 32-bit as well as buffer overflows on 64-bit. The test should
+ work reasonably reliably when overcommit is disabled, but it obviously
+ depends on how much memory the system has. There's a limitation to this
+ test in that it does not run to completion. Actually collating such a
+ large string can take days and we can't have xcheck running that long. For
+ that reason, we run the test for about 5 minutes and then assume that
+ everything is fine if there are no crashes. */
+#define SIZE 0x40000000ul
+
+int
+do_test (void)
+{
+ if (setlocale (LC_COLLATE, "en_GB.UTF-8") == NULL)
+ {
+ puts ("setlocale failed, cannot test for overflow");
+ return 0;
+ }
+
+ char *p = malloc (SIZE);
+
+ if (p == NULL)
+ {
+ puts ("could not allocate memory");
+ return 1;
+ }
+
+ memset (p, 'x', SIZE - 1);
+ p[SIZE - 1] = 0;
+ printf ("%d\n", strcoll (p, p));
+ return 0;
+}
+
+#define TIMEOUT 300
+#define EXPECTED_SIGNAL SIGALRM
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
diff --git a/string/wordcopy.c b/string/wordcopy.c
index 726894b6e4..51c1fad0ec 100644
--- a/string/wordcopy.c
+++ b/string/wordcopy.c
@@ -26,11 +26,12 @@
block beginning at DSTP with LEN `op_t' words (not LEN bytes!).
Both SRCP and DSTP should be aligned for memory operations on `op_t's. */
+#ifndef WORDCOPY_FWD_ALIGNED
+# define WORDCOPY_FWD_ALIGNED _wordcopy_fwd_aligned
+#endif
+
void
-_wordcopy_fwd_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_FWD_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1;
@@ -134,11 +135,12 @@ _wordcopy_fwd_aligned (dstp, srcp, len)
DSTP should be aligned for memory operations on `op_t's, but SRCP must
*not* be aligned. */
+#ifndef WORDCOPY_FWD_DEST_ALIGNED
+# define WORDCOPY_FWD_DEST_ALIGNED _wordcopy_fwd_dest_aligned
+#endif
+
void
-_wordcopy_fwd_dest_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_FWD_DEST_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1, a2, a3;
int sh_1, sh_2;
@@ -221,11 +223,12 @@ _wordcopy_fwd_dest_aligned (dstp, srcp, len)
(not LEN bytes!). Both SRCP and DSTP should be aligned for memory
operations on `op_t's. */
+#ifndef WORDCOPY_BWD_ALIGNED
+# define WORDCOPY_BWD_ALIGNED _wordcopy_bwd_aligned
+#endif
+
void
-_wordcopy_bwd_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_BWD_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1;
@@ -329,11 +332,12 @@ _wordcopy_bwd_aligned (dstp, srcp, len)
words (not LEN bytes!). DSTP should be aligned for memory
operations on `op_t', but SRCP must *not* be aligned. */
+#ifndef WORDCOPY_BWD_DEST_ALIGNED
+# define WORDCOPY_BWD_DEST_ALIGNED _wordcopy_bwd_dest_aligned
+#endif
+
void
-_wordcopy_bwd_dest_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_BWD_DEST_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1, a2, a3;
int sh_1, sh_2;
diff --git a/sunrpc/Makefile b/sunrpc/Makefile
index 51a58aac42..9b59796b10 100644
--- a/sunrpc/Makefile
+++ b/sunrpc/Makefile
@@ -64,7 +64,7 @@ ifeq ($(link-obsolete-rpc),yes)
headers += $(headers-in-tirpc) $(headers-not-in-tirpc)
endif
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
need-export-routines := auth_des auth_unix clnt_gen clnt_perr clnt_tcp \
clnt_udp get_myaddr key_call netname pm_getport \
rpc_thread svc svc_tcp svc_udp xcrypt xdr_array xdr \
diff --git a/sunrpc/rpc/types.h b/sunrpc/rpc/types.h
index 3dca5c40f6..beded52555 100644
--- a/sunrpc/rpc/types.h
+++ b/sunrpc/rpc/types.h
@@ -69,6 +69,11 @@ typedef unsigned long rpcport_t;
#include <sys/types.h>
#endif
+#if defined __APPLE_CC__ || defined __FreeBSD__
+# define __u_char_defined
+# define __daddr_t_defined
+#endif
+
#ifndef __u_char_defined
typedef __u_char u_char;
typedef __u_short u_short;
diff --git a/sunrpc/rpc_main.c b/sunrpc/rpc_main.c
index 0223c9a9fc..0a51e2cfa2 100644
--- a/sunrpc/rpc_main.c
+++ b/sunrpc/rpc_main.c
@@ -1442,6 +1442,9 @@ options_usage (FILE *stream, int status)
f_print (stream, _("-t\t\tgenerate RPC dispatch table\n"));
f_print (stream, _("-T\t\tgenerate code to support RPC dispatch tables\n"));
f_print (stream, _("-Y path\t\tdirectory name to find C preprocessor (cpp)\n"));
+ f_print (stream, _("-5\t\tSysVr4 compatibility mode\n"));
+ f_print (stream, _("--help\t\tgive this help list\n"));
+ f_print (stream, _("--version\tprint program version\n"));
f_print (stream, _("\n\
For bug reporting instructions, please see:\n\
diff --git a/sysdeps/generic/ldconfig.h b/sysdeps/generic/ldconfig.h
index d96089d492..037f959954 100644
--- a/sysdeps/generic/ldconfig.h
+++ b/sysdeps/generic/ldconfig.h
@@ -21,24 +21,27 @@
#include <stdint.h>
-#define FLAG_ANY -1
-#define FLAG_TYPE_MASK 0x00ff
-#define FLAG_LIBC4 0x0000
-#define FLAG_ELF 0x0001
-#define FLAG_ELF_LIBC5 0x0002
-#define FLAG_ELF_LIBC6 0x0003
-#define FLAG_REQUIRED_MASK 0xff00
-#define FLAG_SPARC_LIB64 0x0100
-#define FLAG_IA64_LIB64 0x0200
-#define FLAG_X8664_LIB64 0x0300
-#define FLAG_S390_LIB64 0x0400
-#define FLAG_POWERPC_LIB64 0x0500
-#define FLAG_MIPS64_LIBN32 0x0600
-#define FLAG_MIPS64_LIBN64 0x0700
-#define FLAG_X8664_LIBX32 0x0800
-#define FLAG_ARM_LIBHF 0x0900
-#define FLAG_AARCH64_LIB64 0x0a00
-#define FLAG_ARM_LIBSF 0x0b00
+#define FLAG_ANY -1
+#define FLAG_TYPE_MASK 0x00ff
+#define FLAG_LIBC4 0x0000
+#define FLAG_ELF 0x0001
+#define FLAG_ELF_LIBC5 0x0002
+#define FLAG_ELF_LIBC6 0x0003
+#define FLAG_REQUIRED_MASK 0xff00
+#define FLAG_SPARC_LIB64 0x0100
+#define FLAG_IA64_LIB64 0x0200
+#define FLAG_X8664_LIB64 0x0300
+#define FLAG_S390_LIB64 0x0400
+#define FLAG_POWERPC_LIB64 0x0500
+#define FLAG_MIPS64_LIBN32 0x0600
+#define FLAG_MIPS64_LIBN64 0x0700
+#define FLAG_X8664_LIBX32 0x0800
+#define FLAG_ARM_LIBHF 0x0900
+#define FLAG_AARCH64_LIB64 0x0a00
+#define FLAG_ARM_LIBSF 0x0b00
+#define FLAG_MIPS_LIB32_NAN2008 0x0c00
+#define FLAG_MIPS64_LIBN32_NAN2008 0x0d00
+#define FLAG_MIPS64_LIBN64_NAN2008 0x0e00
/* Name of auxiliary cache. */
#define _PATH_LDCONFIG_AUX_CACHE "/var/cache/ldconfig/aux-cache"
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h
index 51e61a1215..cfd4d8003f 100644
--- a/sysdeps/generic/ldsodefs.h
+++ b/sysdeps/generic/ldsodefs.h
@@ -76,8 +76,9 @@ typedef struct link_map *lookup_t;
# define DL_SYMBOL_ADDRESS(map, ref) \
(void *) (LOOKUP_VALUE_ADDRESS (map) + ref->st_value)
# define DL_LOOKUP_ADDRESS(addr) ((ElfW(Addr)) (addr))
-# define DL_DT_INIT_ADDRESS(map, start) (start)
-# define DL_DT_FINI_ADDRESS(map, start) (start)
+# define DL_CALL_DT_INIT(map, start, argc, argv, env) \
+ ((init_t) (start)) (argc, argv, env)
+# define DL_CALL_DT_FINI(map, start) ((fini_t) (start)) ()
#endif
/* On some architectures dladdr can't use st_size of all symbols this way. */
@@ -233,6 +234,11 @@ extern int _dl_name_match_p (const char *__name, const struct link_map *__map)
extern unsigned long int _dl_higher_prime_number (unsigned long int n)
internal_function;
+/* Mask every signal, returning the previous sigmask in OLD. */
+extern void _dl_mask_all_signals (sigset_t *old) internal_function;
+/* Undo _dl_mask_all_signals. */
+extern void _dl_unmask_signals (sigset_t *old) internal_function;
+
/* Function used as argument for `_dl_receive_error' function. The
arguments are the error code, error string, and the objname the
error occurred in. */
@@ -984,6 +990,17 @@ extern void *_dl_allocate_tls_storage (void)
extern void *_dl_allocate_tls_init (void *) internal_function;
rtld_hidden_proto (_dl_allocate_tls_init)
+/* Remove all allocated dynamic TLS regions from a DTV
+ for reuse by new thread. */
+extern void _dl_clear_dtv (dtv_t *dtv) internal_function;
+rtld_hidden_proto (_dl_clear_dtv)
+
+extern void *__signal_safe_memalign (size_t boundary, size_t size);
+extern void *__signal_safe_malloc (size_t size);
+extern void __signal_safe_free (void *ptr);
+extern void *__signal_safe_realloc (void *ptr, size_t size);
+extern void *__signal_safe_calloc (size_t nmemb, size_t size);
+
/* Deallocate memory allocated with _dl_allocate_tls. */
extern void _dl_deallocate_tls (void *tcb, bool dealloc_tcb) internal_function;
rtld_hidden_proto (_dl_deallocate_tls)
diff --git a/sysdeps/generic/math_private.h b/sysdeps/generic/math_private.h
index c0fc03d38d..9b881a3e76 100644
--- a/sysdeps/generic/math_private.h
+++ b/sysdeps/generic/math_private.h
@@ -356,10 +356,8 @@ extern void __dubcos (double __x, double __dx, double __v[]);
extern double __halfulp (double __x, double __y);
extern double __sin32 (double __x, double __res, double __res1);
extern double __cos32 (double __x, double __res, double __res1);
-extern double __mpsin (double __x, double __dx);
-extern double __mpcos (double __x, double __dx);
-extern double __mpsin1 (double __x);
-extern double __mpcos1 (double __x);
+extern double __mpsin (double __x, double __dx, bool __range_reduce);
+extern double __mpcos (double __x, double __dx, bool __range_reduce);
extern double __slowexp (double __x);
extern double __slowpow (double __x, double __y, double __z);
extern void __docos (double __x, double __dx, double __v[]);
diff --git a/sysdeps/generic/stackguard-macros.h b/sysdeps/generic/stackguard-macros.h
index ababf65d37..b4a6b23ff8 100644
--- a/sysdeps/generic/stackguard-macros.h
+++ b/sysdeps/generic/stackguard-macros.h
@@ -2,3 +2,11 @@
extern uintptr_t __stack_chk_guard;
#define STACK_CHK_GUARD __stack_chk_guard
+
+#ifdef PTRGUARD_LOCAL
+extern uintptr_t __pointer_chk_guard_local;
+# define POINTER_CHK_GUARD __pointer_chk_guard_local
+#else
+extern uintptr_t __pointer_chk_guard;
+# define POINTER_CHK_GUARD __pointer_chk_guard
+#endif
diff --git a/sysdeps/generic/sys/swap.h b/sysdeps/generic/sys/swap.h
index 5299f9b732..52c73c5693 100644
--- a/sysdeps/generic/sys/swap.h
+++ b/sysdeps/generic/sys/swap.h
@@ -24,7 +24,7 @@
/* Make the block special device PATH available to the system for swapping.
This call is restricted to the super-user. */
-extern int swapon (const char *__path) __THROW;
+extern int swapon (const char *__path, int __flags) __THROW;
/* Stop using block special device PATH for swapping. */
extern int swapoff (const char *__path) __THROW;
diff --git a/sysdeps/gnu/Makefile b/sysdeps/gnu/Makefile
index 6695cbf0cf..b3166967cc 100644
--- a/sysdeps/gnu/Makefile
+++ b/sysdeps/gnu/Makefile
@@ -29,7 +29,7 @@ ifeq ($(subdir),stdio-common)
errlist-c = $(firstword $(wildcard $(addsuffix /errlist.c,$(sysdirs) .)))
-ifeq ($(versioning),yes)
+ifeq ($(build-shared),yes)
$(objpfx)errlist-compat.c: $(errlist-c) $(..)sysdeps/gnu/errlist-compat.awk \
$(common-objpfx)Versions.v.i $(before-compile)
else
diff --git a/sysdeps/gnu/bits/utmp.h b/sysdeps/gnu/bits/utmp.h
index 8a768d97c5..ebb611cf32 100644
--- a/sysdeps/gnu/bits/utmp.h
+++ b/sysdeps/gnu/bits/utmp.h
@@ -81,7 +81,7 @@ struct utmp
#endif
int32_t ut_addr_v6[4]; /* Internet address of remote host. */
- char __unused[20]; /* Reserved for future use. */
+ char __glibc_reserved[20]; /* Reserved for future use. */
};
/* Backwards compatibility hacks. */
diff --git a/sysdeps/gnu/bits/utmpx.h b/sysdeps/gnu/bits/utmpx.h
index 6cfb31644b..271d8b7d96 100644
--- a/sysdeps/gnu/bits/utmpx.h
+++ b/sysdeps/gnu/bits/utmpx.h
@@ -78,7 +78,7 @@ struct utmpx
struct timeval ut_tv; /* Time entry was made. */
#endif
__int32_t ut_addr_v6[4]; /* Internet address of remote host. */
- char __unused[20]; /* Reserved for future use. */
+ char __glibc_reserved[20]; /* Reserved for future use. */
};
diff --git a/sysdeps/gnu/configure b/sysdeps/gnu/configure
index 70aaa90191..e7f0e43959 100644
--- a/sysdeps/gnu/configure
+++ b/sysdeps/gnu/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/gnu.
diff --git a/sysdeps/gnu/configure.in b/sysdeps/gnu/configure.ac
index ce251df0c5..ce251df0c5 100644
--- a/sysdeps/gnu/configure.in
+++ b/sysdeps/gnu/configure.ac
diff --git a/sysdeps/gnu/netinet/ip_icmp.h b/sysdeps/gnu/netinet/ip_icmp.h
index 136fb4703e..d23318c9d3 100644
--- a/sysdeps/gnu/netinet/ip_icmp.h
+++ b/sysdeps/gnu/netinet/ip_icmp.h
@@ -38,7 +38,7 @@ struct icmphdr
u_int32_t gateway; /* gateway address */
struct
{
- u_int16_t __unused;
+ u_int16_t __glibc_reserved;
u_int16_t mtu;
} frag; /* path mtu discovery */
} un;
diff --git a/sysdeps/gnu/netinet/tcp.h b/sysdeps/gnu/netinet/tcp.h
index b7bf9b38d4..f6602ecfde 100644
--- a/sysdeps/gnu/netinet/tcp.h
+++ b/sysdeps/gnu/netinet/tcp.h
@@ -66,7 +66,6 @@
# include <sys/types.h>
# include <sys/socket.h>
-# ifdef __FAVOR_BSD
typedef u_int32_t tcp_seq;
/*
* TCP header.
@@ -74,66 +73,69 @@ typedef u_int32_t tcp_seq;
*/
struct tcphdr
{
- u_int16_t th_sport; /* source port */
- u_int16_t th_dport; /* destination port */
- tcp_seq th_seq; /* sequence number */
- tcp_seq th_ack; /* acknowledgement number */
-# if __BYTE_ORDER == __LITTLE_ENDIAN
- u_int8_t th_x2:4; /* (unused) */
- u_int8_t th_off:4; /* data offset */
-# endif
-# if __BYTE_ORDER == __BIG_ENDIAN
- u_int8_t th_off:4; /* data offset */
- u_int8_t th_x2:4; /* (unused) */
-# endif
- u_int8_t th_flags;
-# define TH_FIN 0x01
-# define TH_SYN 0x02
-# define TH_RST 0x04
-# define TH_PUSH 0x08
-# define TH_ACK 0x10
-# define TH_URG 0x20
- u_int16_t th_win; /* window */
- u_int16_t th_sum; /* checksum */
- u_int16_t th_urp; /* urgent pointer */
+ __extension__ union
+ {
+ struct
+ {
+ u_int16_t th_sport; /* source port */
+ u_int16_t th_dport; /* destination port */
+ tcp_seq th_seq; /* sequence number */
+ tcp_seq th_ack; /* acknowledgement number */
+# if __BYTE_ORDER == __LITTLE_ENDIAN
+ u_int8_t th_x2:4; /* (unused) */
+ u_int8_t th_off:4; /* data offset */
+# endif
+# if __BYTE_ORDER == __BIG_ENDIAN
+ u_int8_t th_off:4; /* data offset */
+ u_int8_t th_x2:4; /* (unused) */
+# endif
+ u_int8_t th_flags;
+# define TH_FIN 0x01
+# define TH_SYN 0x02
+# define TH_RST 0x04
+# define TH_PUSH 0x08
+# define TH_ACK 0x10
+# define TH_URG 0x20
+ u_int16_t th_win; /* window */
+ u_int16_t th_sum; /* checksum */
+ u_int16_t th_urp; /* urgent pointer */
+ };
+ struct
+ {
+ u_int16_t source;
+ u_int16_t dest;
+ u_int32_t seq;
+ u_int32_t ack_seq;
+# if __BYTE_ORDER == __LITTLE_ENDIAN
+ u_int16_t res1:4;
+ u_int16_t doff:4;
+ u_int16_t fin:1;
+ u_int16_t syn:1;
+ u_int16_t rst:1;
+ u_int16_t psh:1;
+ u_int16_t ack:1;
+ u_int16_t urg:1;
+ u_int16_t res2:2;
+# elif __BYTE_ORDER == __BIG_ENDIAN
+ u_int16_t doff:4;
+ u_int16_t res1:4;
+ u_int16_t res2:2;
+ u_int16_t urg:1;
+ u_int16_t ack:1;
+ u_int16_t psh:1;
+ u_int16_t rst:1;
+ u_int16_t syn:1;
+ u_int16_t fin:1;
+# else
+# error "Adjust your <bits/endian.h> defines"
+# endif
+ u_int16_t window;
+ u_int16_t check;
+ u_int16_t urg_ptr;
+ };
+ };
};
-# else /* !__FAVOR_BSD */
-struct tcphdr
- {
- u_int16_t source;
- u_int16_t dest;
- u_int32_t seq;
- u_int32_t ack_seq;
-# if __BYTE_ORDER == __LITTLE_ENDIAN
- u_int16_t res1:4;
- u_int16_t doff:4;
- u_int16_t fin:1;
- u_int16_t syn:1;
- u_int16_t rst:1;
- u_int16_t psh:1;
- u_int16_t ack:1;
- u_int16_t urg:1;
- u_int16_t res2:2;
-# elif __BYTE_ORDER == __BIG_ENDIAN
- u_int16_t doff:4;
- u_int16_t res1:4;
- u_int16_t res2:2;
- u_int16_t urg:1;
- u_int16_t ack:1;
- u_int16_t psh:1;
- u_int16_t rst:1;
- u_int16_t syn:1;
- u_int16_t fin:1;
-# else
-# error "Adjust your <bits/endian.h> defines"
-# endif
- u_int16_t window;
- u_int16_t check;
- u_int16_t urg_ptr;
-};
-# endif /* __FAVOR_BSD */
-
enum
{
TCP_ESTABLISHED = 1,
diff --git a/sysdeps/gnu/netinet/udp.h b/sysdeps/gnu/netinet/udp.h
index 3beb3715b8..0bf8696acf 100644
--- a/sysdeps/gnu/netinet/udp.h
+++ b/sysdeps/gnu/netinet/udp.h
@@ -52,27 +52,28 @@
/* UDP header as specified by RFC 768, August 1980. */
-#ifdef __FAVOR_BSD
struct udphdr
{
- u_int16_t uh_sport; /* source port */
- u_int16_t uh_dport; /* destination port */
- u_int16_t uh_ulen; /* udp length */
- u_int16_t uh_sum; /* udp checksum */
+ __extension__ union
+ {
+ struct
+ {
+ u_int16_t uh_sport; /* source port */
+ u_int16_t uh_dport; /* destination port */
+ u_int16_t uh_ulen; /* udp length */
+ u_int16_t uh_sum; /* udp checksum */
+ };
+ struct
+ {
+ u_int16_t source;
+ u_int16_t dest;
+ u_int16_t len;
+ u_int16_t check;
+ };
+ };
};
-#else
-
-struct udphdr
-{
- u_int16_t source;
- u_int16_t dest;
- u_int16_t len;
- u_int16_t check;
-};
-#endif
-
/* UDP socket options */
#define UDP_CORK 1 /* Never send partially complete segments. */
#define UDP_ENCAP 100 /* Set the socket to accept
diff --git a/sysdeps/i386/configure b/sysdeps/i386/configure
index 53b6a619d3..5dcc159900 100644
--- a/sysdeps/i386/configure
+++ b/sysdeps/i386/configure
@@ -29,7 +29,7 @@ $as_echo "$ac_res" >&6; }
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_header_compile
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/i386.
# We no longer support i386 since it lacks the atomic instructions
diff --git a/sysdeps/i386/configure.in b/sysdeps/i386/configure.ac
index 96ab7b0f5a..96ab7b0f5a 100644
--- a/sysdeps/i386/configure.in
+++ b/sysdeps/i386/configure.ac
diff --git a/sysdeps/i386/ffs.c b/sysdeps/i386/ffs.c
index 47496dcf79..77d2e60b76 100644
--- a/sysdeps/i386/ffs.c
+++ b/sysdeps/i386/ffs.c
@@ -41,6 +41,7 @@ __ffs (x)
return cnt;
}
weak_alias (__ffs, ffs)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
#undef ffsl
weak_alias (__ffs, ffsl)
diff --git a/sysdeps/i386/fpu/e_expl.S b/sysdeps/i386/fpu/e_expl.S
index af339f0ff4..a8a5e70b07 100644
--- a/sysdeps/i386/fpu/e_expl.S
+++ b/sysdeps/i386/fpu/e_expl.S
@@ -130,9 +130,24 @@ ENTRY(IEEE754_EXPL)
#endif
3: FLDLOG /* 1 log2(base) */
fmul %st(1), %st /* 1 x log2(base) */
+#ifdef USE_AS_EXPM1L
+ /* Set round-to-nearest temporarily. */
+ subl $8, %esp
+ cfi_adjust_cfa_offset (8)
+ fstcw 4(%esp)
+ movl $0xf3ff, %edx
+ andl 4(%esp), %edx
+ movl %edx, (%esp)
+ fldcw (%esp)
+#endif
frndint /* 1 i */
fld %st(1) /* 2 x */
frndint /* 2 xi */
+#ifdef USE_AS_EXPM1L
+ fldcw 4(%esp)
+ addl $8, %esp
+ cfi_adjust_cfa_offset (-8)
+#endif
fld %st(1) /* 3 i */
fldt MO(c0) /* 4 c0 */
fld %st(2) /* 5 xi */
diff --git a/sysdeps/i386/fpu/e_pow.S b/sysdeps/i386/fpu/e_pow.S
index 109c395934..835c39b7bd 100644
--- a/sysdeps/i386/fpu/e_pow.S
+++ b/sysdeps/i386/fpu/e_pow.S
@@ -98,6 +98,9 @@ ENTRY(__ieee754_pow)
cmpb $0x05, %ah
je 15f // x is ±inf
+ cmpb $0x01, %ah
+ je 32f // x is NaN
+
fxch // y : x
/* fistpll raises invalid exception for |y| >= 1L<<63. */
@@ -166,6 +169,12 @@ ENTRY(__ieee754_pow)
ret
cfi_adjust_cfa_offset (8)
+32: addl $8, %esp
+ cfi_adjust_cfa_offset (-8)
+ fstp %st(1)
+ ret
+
+ cfi_adjust_cfa_offset (8)
.align ALIGNARG(4)
2: // y is a large integer (absolute value at least 1L<<10), but
// may be odd unless at least 1L<<64. So it may be necessary
diff --git a/sysdeps/i386/fpu/e_powf.S b/sysdeps/i386/fpu/e_powf.S
index 7fad90f6cb..90d3d0ca6a 100644
--- a/sysdeps/i386/fpu/e_powf.S
+++ b/sysdeps/i386/fpu/e_powf.S
@@ -95,6 +95,9 @@ ENTRY(__ieee754_powf)
cmpb $0x05, %ah
je 15f // x is ±inf
+ cmpb $0x01, %ah
+ je 32f // x is NaN
+
fxch // y : x
/* fistpl raises invalid exception for |y| >= 1L<<31. */
@@ -180,7 +183,7 @@ ENTRY(__ieee754_powf)
f2xm1 // 2^fract(y*log2(x))-1 : int(y*log2(x))
faddl MO(one) // 2^fract(y*log2(x)) : int(y*log2(x))
fscale // 2^fract(y*log2(x))*2^int(y*log2(x)) : int(y*log2(x))
- addl $4, %esp
+32: addl $4, %esp
cfi_adjust_cfa_offset (-4)
fstp %st(1) // 2^fract(y*log2(x))*2^int(y*log2(x))
ret
diff --git a/sysdeps/i386/fpu/e_powl.S b/sysdeps/i386/fpu/e_powl.S
index 3c23117c39..91e22c8a29 100644
--- a/sysdeps/i386/fpu/e_powl.S
+++ b/sysdeps/i386/fpu/e_powl.S
@@ -104,6 +104,9 @@ ENTRY(__ieee754_powl)
cmpb $0x05, %ah
je 15f // x is ±inf
+ cmpb $0x01, %ah
+ je 32f // x is NaN
+
fxch // y : x
/* fistpll raises invalid exception for |y| >= 1L<<63. */
@@ -188,6 +191,12 @@ ENTRY(__ieee754_powl)
ret
cfi_adjust_cfa_offset (8)
+32: addl $8, %esp
+ cfi_adjust_cfa_offset (-8)
+ fstp %st(1)
+ ret
+
+ cfi_adjust_cfa_offset (8)
.align ALIGNARG(4)
2: // y is a large integer (absolute value at least 8), but
// may be odd unless at least 1L<<64. So it may be necessary
diff --git a/sysdeps/i386/fpu/e_sqrt.S b/sysdeps/i386/fpu/e_sqrt.S
index 1054ba4532..fba5833a9a 100644
--- a/sysdeps/i386/fpu/e_sqrt.S
+++ b/sysdeps/i386/fpu/e_sqrt.S
@@ -7,7 +7,17 @@
ENTRY(__ieee754_sqrt)
fldl 4(%esp)
+ subl $8, %esp
+ cfi_adjust_cfa_offset (8)
+ fstcw 4(%esp)
+ movl $0xfeff, %edx
+ andl 4(%esp), %edx
+ movl %edx, (%esp)
+ fldcw (%esp)
fsqrt
+ fldcw 4(%esp)
+ addl $8, %esp
+ cfi_adjust_cfa_offset (-8)
ret
END (__ieee754_sqrt)
strong_alias (__ieee754_sqrt, __sqrt_finite)
diff --git a/sysdeps/i386/fpu/fegetround.c b/sysdeps/i386/fpu/fegetround.c
index d0170d3c86..cd96ae99d3 100644
--- a/sysdeps/i386/fpu/fegetround.c
+++ b/sysdeps/i386/fpu/fegetround.c
@@ -28,3 +28,4 @@ fegetround (void)
return cw & 0xc00;
}
+libm_hidden_def (fegetround)
diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps
index 530dbd7402..ca16bc5e53 100644
--- a/sysdeps/i386/fpu/libm-test-ulps
+++ b/sysdeps/i386/fpu/libm-test-ulps
@@ -4,6 +4,9 @@
Test "acos (0.75)":
ildouble: 1
ldouble: 1
+Test "acos (0xcp-4)":
+ildouble: 1
+ldouble: 1
# acos_downward
Test "acos_downward (-0)":
@@ -31,6 +34,26 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "acos_downward (0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_downward (0xf.ffffffffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_downward (0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_downward (0xf.fffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_downward (0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
+
+# acos_tonearest
+Test "acos_tonearest (0xcp-4)":
+ildouble: 1
+ldouble: 1
# acos_towardzero
Test "acos_towardzero (-0)":
@@ -58,6 +81,21 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "acos_towardzero (0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_towardzero (0xf.ffffffffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_towardzero (0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_towardzero (0xf.fffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_towardzero (0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
# acos_upward
Test "acos_upward (-0)":
@@ -75,8 +113,32 @@ idouble: 1
Test "acos_upward (0.5)":
ildouble: 1
ldouble: 1
+Test "acos_upward (0xcp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_upward (0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
# asin_downward
+Test "asin_downward (-0x8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.ffffffffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.fffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
Test "asin_downward (-1.0)":
double: 1
idouble: 1
@@ -119,19 +181,48 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "asin_upward (-0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.ffffffffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.fffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
Test "asin_upward (-1.0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "asin_upward (0x8p-4)":
+ildouble: 1
+ldouble: 1
Test "asin_upward (1.0)":
double: 1
idouble: 1
+# atan2
+Test "atan2 (-0x1.effe81f852716ffep-8, -0x7.57d1de0e5124664p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1ep-12)":
+ildouble: 1
+ldouble: 1
+
# atanh
Test "atanh (0.75)":
ildouble: 2
ldouble: 1
+Test "atanh (0xcp-4)":
+ildouble: 2
+ldouble: 1
# cacos
Test "Imaginary part of: cacos (+0 + 0.5 i)":
@@ -4100,12 +4191,30 @@ ildouble: 1
ldouble: 1
# cbrt
+Test "cbrt (-0x1.bp+4)":
+ildouble: 1
+ldouble: 1
+Test "cbrt (-0x4.189374bc6a7ecp-12)":
+ildouble: 1
+ldouble: 1
+Test "cbrt (-0x4.189374bc6a7ef9ep-12)":
+ildouble: 1
+ldouble: 1
+Test "cbrt (-0x4.189374bc6a7fp-12)":
+ildouble: 1
+ldouble: 1
+Test "cbrt (-0x4.18937p-12)":
+ildouble: 1
+ldouble: 1
Test "cbrt (-27.0)":
ildouble: 1
ldouble: 1
Test "cbrt (0.75)":
ildouble: 1
ldouble: 1
+Test "cbrt (0xcp-4)":
+ildouble: 1
+ldouble: 1
# ccos
Test "Real part of: ccos (-0.75 + 710.5 i)":
@@ -4758,6 +4867,9 @@ idouble: 1
ifloat: 1
# cos
+Test "cos (0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
Test "cos (M_PI_6l * 2.0)":
double: 1
idouble: 1
@@ -4768,6 +4880,151 @@ idouble: 2
ifloat: 1
# cos_downward
+Test "cos_downward (0x1.000000cf4a2a2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.0000010b239a9p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.00000162a932bp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.000002d452a1p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.000002p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.0c152382d7365p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d19p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb6p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1p+120)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1p+28)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a44p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6cap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6cb08cp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6cb09p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6ccp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a48p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x3p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x4p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x4p+48)":
+double: 1
+idouble: 1
+Test "cos_downward (0x8p+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x9p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xa.217bap+12)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xcp-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "cos_downward (1)":
ildouble: 1
ldouble: 1
@@ -4800,7 +5057,105 @@ Test "cos_downward (9)":
float: 1
ifloat: 1
+# cos_tonearest
+Test "cos_tonearest (0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
+
# cos_towardzero
+Test "cos_towardzero (0x1.000000cf4a2a2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.0000010b239a9p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.00000162a932bp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.000002d452a1p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.000002p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.0c152382d7365p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1p+120)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.182a4705ae6ccp+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.182a48p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x4p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x4p+48)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x8p+1020)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xa.217bap+12)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xcp-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "cos_towardzero (1)":
ildouble: 1
ldouble: 1
@@ -4832,6 +5187,139 @@ ildouble: 1
ldouble: 1
# cos_upward
+Test "cos_upward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.000004p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.000005bc7d86dp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.000006p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.0c1522p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.0c152382d7366p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.0c1524p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.921fb4p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d18p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb6p+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x1p+120)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1p+28)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a44p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cb08cp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cb09p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6ccp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a48p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2p+64)":
+double: 1
+idouble: 1
+Test "cos_upward (0x3p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x5p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x6p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x7p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x8p+124)":
+double: 1
+idouble: 1
+Test "cos_upward (0x9p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0xa.217bap+12)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0xc.d4967p-4)":
+double: 1
+idouble: 1
+Test "cos_upward (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+Test "cos_upward (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
Test "cos_upward (1)":
float: 1
ifloat: 1
@@ -4861,7 +5349,22 @@ Test "cos_upward (9)":
ildouble: 1
ldouble: 1
+# cosh
+Test "cosh (-0x2.c5e3acp+8)":
+ildouble: 1
+Test "cosh (-0x2.c5e3bp+8)":
+ildouble: 1
+Test "cosh (0x1.6p+4)":
+ldouble: 1
+
# cosh_downward
+Test "cosh_downward (-0x2.c5e3acd2922a6p+8)":
+ildouble: 1
+Test "cosh_downward (-0x2.c5e3bp+8)":
+ildouble: 1
+Test "cosh_downward (0x1.6p+4)":
+ildouble: 1
+ldouble: 2
Test "cosh_downward (22)":
double: 1
float: 1
@@ -4883,10 +5386,21 @@ ildouble: 1
ldouble: 1
# cosh_tonearest
+Test "cosh_tonearest (-0x2.c5e3acp+8)":
+ildouble: 1
+Test "cosh_tonearest (-0x2.c5e3bp+8)":
+ildouble: 1
+Test "cosh_tonearest (0x1.6p+4)":
+ldouble: 1
Test "cosh_tonearest (22)":
ldouble: 1
# cosh_towardzero
+Test "cosh_towardzero (-0x2.c5e3acd2922a6p+8)":
+ildouble: 1
+Test "cosh_towardzero (0x1.6p+4)":
+ildouble: 1
+ldouble: 2
Test "cosh_towardzero (22)":
double: 1
float: 1
@@ -4908,6 +5422,30 @@ ildouble: 1
ldouble: 1
# cosh_upward
+Test "cosh_upward (-0x2.c5e3acd2922a6p+8)":
+double: 1
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (-0x2.c5e3acp+8)":
+ildouble: 1
+Test "cosh_upward (-0x2.c5e3bp+8)":
+ildouble: 1
+Test "cosh_upward (0x1.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (0x1.7p+4)":
+ildouble: 2
+ldouble: 1
+Test "cosh_upward (0x1.8p+4)":
+ildouble: 1
+Test "cosh_upward (0x2.c5e3acd2922a6p+8)":
+double: 1
+ildouble: 2
+ldouble: 1
+Test "cosh_upward (0x2.c5e3acp+8)":
+ildouble: 1
+Test "cosh_upward (0x2.c5e3bp+8)":
+ildouble: 1
Test "cosh_upward (22)":
ildouble: 2
ldouble: 1
@@ -5269,6 +5807,9 @@ ldouble: 1
Test "Imaginary part of: ctanh (0 + 0x3.243f6cp-1 i)":
float: 1
ifloat: 1
+Test "Imaginary part of: ctanh (0 + M_PI_4l i)":
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: ctanh (0 + pi/4 i)":
ildouble: 1
ldouble: 1
@@ -5378,11 +5919,20 @@ ildouble: 2
ldouble: 2
# erf
+Test "erf (-0x8p-4)":
+ildouble: 1
+ldouble: 1
+Test "erf (0x1.4p+0)":
+double: 1
+idouble: 1
Test "erf (1.25)":
double: 1
idouble: 1
# erfc
+Test "erfc (0x1.4p+0)":
+ildouble: 1
+ldouble: 1
Test "erfc (0x1.f7303cp+1)":
double: 1
idouble: 1
@@ -5394,6 +5944,39 @@ ldouble: 1
Test "erfc (0x1.ffffc8p+2)":
double: 1
idouble: 1
+Test "erfc (0x2p+0)":
+double: 1
+idouble: 1
+Test "erfc (0x3.ee6078p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "erfc (0x4.2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "erfc (0x6.4p+4)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fe8008p+0)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fffd58p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fffd59e26af37bc8p+0)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fffd59e26af37bcp+0)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.ffff2p+0)":
+double: 1
+idouble: 1
Test "erfc (1.25)":
ildouble: 1
ldouble: 1
@@ -5410,8 +5993,22 @@ ldouble: 1
Test "exp10 (0.75)":
ildouble: 1
ldouble: 1
+Test "exp10 (0xcp-4)":
+ildouble: 1
+ldouble: 1
# exp_downward
+Test "exp_downward (0x2.c5cp+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_downward (0x2p+0)":
+ildouble: 1
+ldouble: 1
+Test "exp_downward (0x3.e8p+8)":
+ildouble: 1
+ldouble: 1
Test "exp_downward (1)":
ildouble: 1
ldouble: 1
@@ -5431,6 +6028,41 @@ ildouble: 1
ldouble: 1
# exp_towardzero
+Test "exp_towardzero (-0x2.e870a4p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.e870a7e5e88c1f0cp+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.e870a7e5e88c1f1p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.e870a7e5e88c2p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.e870a7e5e88cp+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.e870a8p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.ebe224p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.ebe228p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (0x2.c5cp+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (0x2p+0)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (0x3.e8p+8)":
+ildouble: 1
+ldouble: 1
Test "exp_towardzero (1)":
ildouble: 1
ldouble: 1
@@ -5450,6 +6082,12 @@ ildouble: 1
ldouble: 1
# exp_upward
+Test "exp_upward (-0x2.e870a7e5e88c1f0cp+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_upward (-0x2.e870a7e5e88cp+8)":
+ildouble: 1
+ldouble: 1
Test "exp_upward (1)":
double: 1
float: 1
@@ -5457,22 +6095,429 @@ idouble: 1
ifloat: 1
# expm1
+Test "expm1 (-0x1p-64)":
+ildouble: 1
+ldouble: 1
+Test "expm1 (-0x2.dp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1 (-0x4p-12)":
+ildouble: 1
+ldouble: 1
Test "expm1 (-45.0)":
ildouble: 1
ldouble: 1
+Test "expm1 (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "expm1 (0x2.c5c4p+12)":
+ildouble: 1
+ldouble: 1
Test "expm1 (11356.25)":
ildouble: 1
ldouble: 1
+# expm1_downward
+Test "expm1_downward (-0x1p-100)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x2.ep+4)":
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x4.9p+4)":
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x4.bp+4)":
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x4p-4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x5p+4)":
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x6.4p+4)":
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x1p-100)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x1p-32)":
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x3.2p+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x4p-52)":
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x7.fp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x8p-32)":
+ildouble: 1
+ldouble: 1
+
+# expm1_tonearest
+Test "expm1_tonearest (-0x1p-64)":
+ildouble: 1
+ldouble: 1
+Test "expm1_tonearest (-0x2.dp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_tonearest (-0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_tonearest (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "expm1_tonearest (0x2.c5c4p+12)":
+ildouble: 1
+ldouble: 1
+
+# expm1_towardzero
+Test "expm1_towardzero (-0x1.2p+4)":
+float: 1
+Test "expm1_towardzero (-0x1.86ap+16)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x1p-100)":
+double: 1
+float: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x1p-20)":
+ildouble: 2
+ldouble: 2
+Test "expm1_towardzero (-0x1p-32)":
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x1p-64)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x2.4p+4)":
+float: 1
+Test "expm1_towardzero (-0x2.5p+4)":
+float: 1
+Test "expm1_towardzero (-0x2.6p+4)":
+double: 1
+float: 1
+Test "expm1_towardzero (-0x2.71p+12)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x2.cp+4)":
+double: 1
+float: 1
+Test "expm1_towardzero (-0x2.dp+4)":
+double: 1
+float: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x2.ep+4)":
+double: 1
+float: 1
+Test "expm1_towardzero (-0x3.e8p+8)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4.9p+4)":
+double: 1
+float: 1
+Test "expm1_towardzero (-0x4.ap+4)":
+double: 1
+float: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4.bp+4)":
+double: 1
+float: 1
+Test "expm1_towardzero (-0x4.ep+4)":
+double: 1
+float: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4.fp+4)":
+double: 1
+float: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4p-52)":
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "expm1_towardzero (-0x5p+4)":
+double: 1
+float: 1
+Test "expm1_towardzero (-0x6.4p+4)":
+double: 1
+float: 1
+Test "expm1_towardzero (-0x8p-32)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0xf.fffffffffffffffp+16380)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x1p-100)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x1p-32)":
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x3.2p+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x4p-52)":
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x7.fp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x8p-32)":
+ildouble: 1
+ldouble: 1
+
+# expm1_upward
+Test "expm1_upward (-0x1.2p+4)":
+float: 1
+Test "expm1_upward (-0x1.86ap+16)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x1p-100)":
+double: 1
+float: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x1p-20)":
+ildouble: 2
+ldouble: 2
+Test "expm1_upward (-0x1p-32)":
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x1p-64)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x2.4p+4)":
+float: 1
+Test "expm1_upward (-0x2.5p+4)":
+float: 1
+Test "expm1_upward (-0x2.6p+4)":
+double: 1
+float: 1
+Test "expm1_upward (-0x2.71p+12)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x2.cp+4)":
+double: 1
+float: 1
+Test "expm1_upward (-0x2.dp+4)":
+double: 1
+float: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x2.ep+4)":
+double: 1
+float: 1
+Test "expm1_upward (-0x3.e8p+8)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x4.9p+4)":
+double: 1
+float: 1
+Test "expm1_upward (-0x4.ap+4)":
+double: 1
+float: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x4.bp+4)":
+double: 1
+float: 1
+Test "expm1_upward (-0x4.ep+4)":
+double: 1
+float: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x4.fp+4)":
+double: 1
+float: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x4p-52)":
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "expm1_upward (-0x5p+4)":
+double: 1
+float: 1
+Test "expm1_upward (-0x6.4p+4)":
+double: 1
+float: 1
+Test "expm1_upward (-0x8p-32)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0xf.fffffffffffffffp+16380)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (0x1.f4p+8)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (0x4p-4)":
+ildouble: 1
+ldouble: 1
+
# gamma
Test "gamma (-0.5)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "gamma (-0x1p-10)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x1p-15)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "gamma (-0x1p-20)":
+double: 1
+idouble: 1
+Test "gamma (-0x1p-30)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x1p-5)":
+double: 1
+idouble: 1
+Test "gamma (-0x2p-16)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "gamma (-0x4p-12)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x4p-32)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x8p-8)":
+double: 1
+idouble: 1
Test "gamma (0.7)":
float: 1
ifloat: 1
+Test "gamma (0x1.3333333333334p+0)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0x1p-40)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
Test "gamma (1.2)":
double: 1
float: 2
@@ -5488,6 +6533,42 @@ ifloat: 1
Test "hypot (-0.7, 12.4)":
float: 1
ifloat: 1
+Test "hypot (-0xb.333333333333333p-4, -0xc.666666666666p+0)":
+ildouble: 1
+Test "hypot (-0xb.333333333333333p-4, 0xc.666666666666p+0)":
+ildouble: 1
+Test "hypot (-0xb.333333333333334p-4, -0xc.666666666666p+0)":
+ildouble: 1
+Test "hypot (-0xb.333333333333334p-4, 0xc.666666666666p+0)":
+ildouble: 1
+Test "hypot (-0xb.3333333333338p-4, -0xc.6666666666668p+0)":
+ldouble: 1
+Test "hypot (-0xb.3333333333338p-4, 0xc.6666666666668p+0)":
+ldouble: 1
+Test "hypot (-0xb.33333p-4, -0xc.666666666666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.33333p-4, 0xc.666666666666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.6666666666668p+0, -0xb.3333333333338p-4)":
+ldouble: 1
+Test "hypot (-0xc.6666666666668p+0, 0xb.3333333333338p-4)":
+ldouble: 1
+Test "hypot (-0xc.666666666666p+0, -0xb.333333333333333p-4)":
+ildouble: 1
+Test "hypot (-0xc.666666666666p+0, -0xb.333333333333334p-4)":
+ildouble: 1
+Test "hypot (-0xc.666666666666p+0, -0xb.33333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.666666666666p+0, 0xb.333333333333333p-4)":
+ildouble: 1
+Test "hypot (-0xc.666666666666p+0, 0xb.333333333333334p-4)":
+ildouble: 1
+Test "hypot (-0xc.666666666666p+0, 0xb.33333p-4)":
+ildouble: 1
+ldouble: 1
Test "hypot (-12.4, -0.7)":
float: 1
ifloat: 1
@@ -5500,6 +6581,52 @@ ifloat: 1
Test "hypot (0.7, 12.4)":
float: 1
ifloat: 1
+Test "hypot (0x1.23456789abcdef02p-500, 0x1.23456789abcdefp-500)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0x1.23456789abcdefp-500, 0x1.23456789abcdef02p-500)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0x1.23456789abcdefp-500, 0x1.23456789abcdfp-500)":
+ldouble: 1
+Test "hypot (0x1.23456789abcdfp-500, 0x1.23456789abcdefp-500)":
+ldouble: 1
+Test "hypot (0xb.333333333333333p-4, -0xc.666666666666p+0)":
+ildouble: 1
+Test "hypot (0xb.333333333333333p-4, 0xc.666666666666p+0)":
+ildouble: 1
+Test "hypot (0xb.333333333333334p-4, -0xc.666666666666p+0)":
+ildouble: 1
+Test "hypot (0xb.333333333333334p-4, 0xc.666666666666p+0)":
+ildouble: 1
+Test "hypot (0xb.3333333333338p-4, -0xc.6666666666668p+0)":
+ldouble: 1
+Test "hypot (0xb.3333333333338p-4, 0xc.6666666666668p+0)":
+ldouble: 1
+Test "hypot (0xb.33333p-4, -0xc.666666666666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.33333p-4, 0xc.666666666666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.6666666666668p+0, -0xb.3333333333338p-4)":
+ldouble: 1
+Test "hypot (0xc.6666666666668p+0, 0xb.3333333333338p-4)":
+ldouble: 1
+Test "hypot (0xc.666666666666p+0, -0xb.333333333333333p-4)":
+ildouble: 1
+Test "hypot (0xc.666666666666p+0, -0xb.333333333333334p-4)":
+ildouble: 1
+Test "hypot (0xc.666666666666p+0, -0xb.33333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.666666666666p+0, 0xb.333333333333333p-4)":
+ildouble: 1
+Test "hypot (0xc.666666666666p+0, 0xb.333333333333334p-4)":
+ildouble: 1
+Test "hypot (0xc.666666666666p+0, 0xb.33333p-4)":
+ildouble: 1
+ldouble: 1
Test "hypot (12.4, -0.7)":
float: 1
ifloat: 1
@@ -5511,6 +6638,23 @@ ifloat: 1
Test "j0 (-0x1.001000001p+593)":
ildouble: 2
ldouble: 2
+Test "j0 (-0x2.002000002p+592)":
+ildouble: 2
+ldouble: 2
+Test "j0 (-0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "j0 (-0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "j0 (-4.0)":
double: 1
float: 1
@@ -5527,6 +6671,43 @@ idouble: 1
Test "j0 (0x1p16382)":
ildouble: 1
ldouble: 1
+Test "j0 (0x2p+0)":
+float: 1
+ifloat: 1
+Test "j0 (0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "j0 (0x4p+16380)":
+ildouble: 1
+ldouble: 1
+Test "j0 (0x8p+0)":
+float: 1
+ifloat: 1
+Test "j0 (0x8p+1020)":
+double: 1
+idouble: 1
+Test "j0 (0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "j0 (0xe.be71dp+104)":
+float: 1
+ifloat: 1
+Test "j0 (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "j0 (0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "j0 (10.0)":
double: 1
float: 1
@@ -5558,6 +6739,32 @@ idouble: 1
Test "j1 (0x1p16382)":
ildouble: 1
ldouble: 1
+Test "j1 (0x2p+0)":
+double: 1
+idouble: 1
+Test "j1 (0x4.ffcp+72)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "j1 (0x4p+16380)":
+ildouble: 1
+ldouble: 1
+Test "j1 (0x8p+0)":
+float: 1
+ifloat: 1
+Test "j1 (0xap+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "j1 (0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "j1 (10.0)":
double: 2
float: 1
@@ -5573,6 +6780,13 @@ float: 1
ifloat: 1
# jn
+Test "jn (0, -0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
Test "jn (0, -4.0)":
double: 1
float: 1
@@ -5580,6 +6794,24 @@ idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
+Test "jn (0, 0x2p+0)":
+float: 1
+ifloat: 1
+Test "jn (0, 0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "jn (0, 0x8p+0)":
+float: 1
+ifloat: 1
+Test "jn (0, 0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "jn (0, 10.0)":
double: 1
float: 1
@@ -5598,6 +6830,19 @@ ldouble: 2
Test "jn (0, 8.0)":
float: 1
ifloat: 1
+Test "jn (1, 0x2p+0)":
+double: 1
+idouble: 1
+Test "jn (1, 0x8p+0)":
+float: 1
+ifloat: 1
+Test "jn (1, 0xap+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "jn (1, 10.0)":
double: 2
float: 1
@@ -5611,6 +6856,13 @@ idouble: 1
Test "jn (1, 8.0)":
float: 1
ifloat: 1
+Test "jn (10, -0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "jn (10, -1.0)":
double: 1
float: 1
@@ -5626,18 +6878,43 @@ float: 1
ifloat: 1
ildouble: 2
ldouble: 2
-Test "jn (10, 1.0)":
+Test "jn (10, 0x1p+0)":
double: 1
float: 1
idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
-Test "jn (10, 10.0)":
+Test "jn (10, 0x2p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (10, 0x2p-4)":
+float: 1
+ifloat: 1
+Test "jn (10, 0xap+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 2
+ldouble: 2
+Test "jn (10, 0xcp-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "jn (10, 1.0)":
double: 1
float: 1
idouble: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (10, 10.0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
ildouble: 2
ldouble: 2
Test "jn (10, 2.0)":
@@ -5648,6 +6925,63 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "jn (2, 0x1p1023)":
+double: 1
+idouble: 1
+Test "jn (2, 0x1p127)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a4p+0)":
+float: 1
+ifloat: 1
+ildouble: 3
+ldouble: 3
+Test "jn (2, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a5d2e36801p+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (2, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a5d2e368p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a8p+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "jn (2, 0x8p+1020)":
+double: 1
+idouble: 1
+Test "jn (2, 0x8p+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0xf.fffb1p+96)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "jn (2, 2.4048255576957729)":
double: 1
float: 1
@@ -5655,9 +6989,45 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "jn (3, -0x1p+0)":
+ildouble: 1
+ldouble: 1
Test "jn (3, -1.0)":
ildouble: 1
ldouble: 1
+Test "jn (3, 0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2.67a2a4p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2.67a2a5d2e36801p+0)":
+ildouble: 3
+ldouble: 3
+Test "jn (3, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2.67a2a8p+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0xap+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "jn (3, 1.0)":
ildouble: 1
ldouble: 1
@@ -5674,9 +7044,45 @@ ldouble: 1
Test "jn (3, 2.4048255576957729)":
ildouble: 1
ldouble: 1
+Test "jn (4, 0x2.67a2a4p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (4, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (4, 0x2.67a2a5d2e36801p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (4, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+Test "jn (4, 0x2.67a2a5d2e368p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (4, 0x2.67a2a8p+0)":
+ildouble: 1
+ldouble: 1
Test "jn (4, 2.4048255576957729)":
ildouble: 2
ldouble: 2
+Test "jn (5, 0x2.67a2a4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (5, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (5, 0x2.67a2a5d2e36801p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (5, 0x2.67a2a5d2e368p+0)":
+ildouble: 1
+ldouble: 1
Test "jn (5, 2.4048255576957729)":
double: 1
float: 1
@@ -5684,6 +7090,32 @@ idouble: 1
ifloat: 1
ildouble: 3
ldouble: 3
+Test "jn (6, 0x2.67a2a4p+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "jn (6, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (6, 0x2.67a2a5d2e36801p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (6, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (6, 0x2.67a2a5d2e368p+0)":
+double: 1
+idouble: 1
+Test "jn (6, 0x2.67a2a8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "jn (6, 2.4048255576957729)":
double: 1
float: 2
@@ -5691,11 +7123,53 @@ idouble: 1
ifloat: 2
ildouble: 1
ldouble: 1
+Test "jn (7, 0x2.67a2a4p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+Test "jn (7, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (7, 0x2.67a2a5d2e36801p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (7, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+ildouble: 4
+ldouble: 4
+Test "jn (7, 0x2.67a2a5d2e368p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (7, 0x2.67a2a8p+0)":
+float: 1
+ifloat: 1
Test "jn (7, 2.4048255576957729)":
double: 1
float: 2
idouble: 1
ifloat: 2
+Test "jn (8, 0x2.67a2a4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (8, 0x2.67a2a5d2e3682p+0)":
+double: 2
+idouble: 2
+Test "jn (8, 0x2.67a2a5d2e368p+0)":
+double: 1
+idouble: 1
+Test "jn (8, 0x2.67a2a8p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "jn (8, 2.4048255576957729)":
double: 1
float: 3
@@ -5703,6 +7177,22 @@ idouble: 1
ifloat: 3
ildouble: 2
ldouble: 2
+Test "jn (9, 0x2.67a2a4p+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "jn (9, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+Test "jn (9, 0x2.67a2a5d2e368p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (9, 0x2.67a2a8p+0)":
+float: 3
+ifloat: 3
+ildouble: 3
+ldouble: 3
Test "jn (9, 2.4048255576957729)":
float: 4
ifloat: 4
@@ -5715,9 +7205,69 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "lgamma (-0x1p-10)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x1p-15)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "lgamma (-0x1p-20)":
+double: 1
+idouble: 1
+Test "lgamma (-0x1p-30)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x1p-5)":
+double: 1
+idouble: 1
+Test "lgamma (-0x2p-16)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "lgamma (-0x4p-12)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x4p-32)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x8p-8)":
+double: 1
+idouble: 1
Test "lgamma (0.7)":
float: 1
ifloat: 1
+Test "lgamma (0x1.3333333333334p+0)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x1p-40)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
Test "lgamma (1.2)":
double: 1
float: 2
@@ -5726,10 +7276,36 @@ ifloat: 2
ildouble: 1
ldouble: 1
+# log
+Test "log (0x5.e2d59p-4)":
+ildouble: 1
+ldouble: 1
+
# log10
Test "log10 (0.75)":
ildouble: 1
ldouble: 1
+Test "log10 (0x1.999998p-4)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x1.9999999999999998p-4)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x1.999999999999ap-4)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x2.b7e151628aed2a68p+0)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x2.b7e151628aed2p+0)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x4p-128)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0xcp-4)":
+ildouble: 1
+ldouble: 1
Test "log10 (e)":
float: 1
ifloat: 1
@@ -5740,11 +7316,23 @@ ldouble: 1
Test "pow (0x0.ffffffp0, -0x1p24)":
ildouble: 1
ldouble: 1
+Test "pow (0x1.0000000000001p+0, 0x2.468adp+60)":
+ildouble: 1
+ldouble: 1
+Test "pow (0xf.ffffffffffff8p-4, 0x4.8d15ap+60)":
+ildouble: 1
+ldouble: 1
+Test "pow (0xf.fffffp-4, -0x1p+24)":
+ildouble: 1
+ldouble: 1
# pow10
Test "pow10 (0.75)":
ildouble: 1
ldouble: 1
+Test "pow10 (0xcp-4)":
+ildouble: 1
+ldouble: 1
# pow_downward
Test "pow_downward (1.0625, 1.125)":
@@ -5754,6 +7342,17 @@ Test "pow_downward (1.5, 1.03125)":
float: 1
ifloat: 1
+# pow_tonearest
+Test "pow_tonearest (0x1.0000000000001p+0, 0x2.468adp+60)":
+ildouble: 1
+ldouble: 1
+Test "pow_tonearest (0xf.ffffffffffff8p-4, 0x4.8d15ap+60)":
+ildouble: 1
+ldouble: 1
+Test "pow_tonearest (0xf.fffffp-4, -0x1p+24)":
+ildouble: 1
+ldouble: 1
+
# pow_towardzero
Test "pow_towardzero (1.0625, 1.125)":
double: 1
@@ -5774,7 +7373,246 @@ idouble: 1
ildouble: 1
ldouble: 1
+# sin
+Test "sin (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+
# sin_downward
+Test "sin_downward (-0x1.921fb4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x1.921fb6p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "sin_downward (-0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b2c24p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b3p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a92p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1p+28)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19e4p+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19ep+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.553534p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x2.5535376715bap+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x2p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x3.be735c19be9fep+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735c19be9ffffcp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735c19beap+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0x3.be735cp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be736p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032a0004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032a2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032ap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2ap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0x4.093388p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237e153f7084p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237e153f708p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x4.1237e8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237ep+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d08p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf00008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bfp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d1p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4p+48)":
+double: 1
+idouble: 1
+Test "sin_downward (0x5.fbec7477d4a80008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7477d4a84p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7477d4a8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec78p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x6p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x8p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x8p+1020)":
+double: 1
+idouble: 1
+Test "sin_downward (0x9p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0xap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (0xe.ef3af1b5d8p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xf.fffffp+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "sin_downward (1)":
ildouble: 1
ldouble: 1
@@ -5796,7 +7634,137 @@ ifloat: 1
ildouble: 1
ldouble: 1
+# sin_tonearest
+Test "sin_tonearest (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+
# sin_towardzero
+Test "sin_towardzero (-0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2.553534p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2.5535376715bap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x3.be735c19beap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x3.be735cp+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x3.ec2a0250032ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x3.ec2a04p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.093388p-4)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.1237e153f708p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4.1237e8p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.1237ep+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.c92d0ffa4bf04p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.c92d0ffa4bfp+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4p+48)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x5.fbec7p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x8p+1020)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x9p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xb.fa09ap+100)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
Test "sin_towardzero (1)":
ildouble: 1
ldouble: 1
@@ -5825,6 +7793,258 @@ ildouble: 1
ldouble: 1
# sin_upward
+Test "sin_upward (-0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb6p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x2p+64)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c23p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c24p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b3p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a92p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x1.921fb4p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1.921fb6p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1p+120)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1p+28)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.5535376715b9ep+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x2.5535376715bap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.553538p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9fep+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9ffffcp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19beap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735cp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be736p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a0004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a2p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032ap+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x3.ec2a04p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.093385688a2d1508p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.093385688a2d4p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.093385688a2dp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.09338p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237e153f7084p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237e153f708p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237e8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237ep+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d08p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bf00008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bf04p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bfp+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.c92d1p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a80008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a84p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a8p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x5.fbec78p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x6p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x7p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8.60a91c16b9b3p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8.60a91p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8.60a92p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8p+124)":
+double: 1
+idouble: 1
+Test "sin_upward (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xb.fa09ap+100)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xc.d4967p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xcp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3af1b5d8008p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3af1b5d8p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3afp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3bp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xf.fffffp+124)":
+ildouble: 1
+ldouble: 1
Test "sin_upward (1)":
float: 1
ifloat: 1
@@ -5864,6 +8084,12 @@ float: 1
ifloat: 1
# sincos
+Test "sincos (0x1.921fb4p+0) extra output 2":
+ildouble: 1
+ldouble: 1
+Test "sincos (0xf.ffffffffffff8p+1020) extra output 1":
+ildouble: 1
+ldouble: 1
Test "sincos (M_PI_6l*2.0) extra output 1":
double: 1
float: 1
@@ -5881,8 +8107,25 @@ ildouble: 1
Test "sinh (0x8p-32)":
ildouble: 1
ldouble: 1
+Test "sinh (0xcp-4)":
+ildouble: 1
# sinh_downward
+Test "sinh_downward (0x1.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0x1.7p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0x1.8p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0x8p-32)":
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0xcp-4)":
+float: 1
+ildouble: 1
Test "sinh_downward (22)":
double: 1
float: 1
@@ -5903,7 +8146,26 @@ ifloat: 1
ildouble: 2
ldouble: 2
+# sinh_tonearest
+Test "sinh_tonearest (0xcp-4)":
+ildouble: 1
+
# sinh_towardzero
+Test "sinh_towardzero (0x1.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_towardzero (0x1.7p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_towardzero (0x1.8p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_towardzero (0x8p-32)":
+ildouble: 1
+ldouble: 1
+Test "sinh_towardzero (0xcp-4)":
+float: 1
+ildouble: 1
Test "sinh_towardzero (22)":
double: 1
float: 1
@@ -5925,6 +8187,19 @@ ildouble: 2
ldouble: 2
# sinh_upward
+Test "sinh_upward (0x1.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_upward (0x1.7p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_upward (0x8p-32)":
+double: 1
+float: 1
+Test "sinh_upward (0xcp-4)":
+float: 1
+ildouble: 2
+ldouble: 1
Test "sinh_upward (22)":
ildouble: 1
ldouble: 1
@@ -5954,9 +8229,26 @@ ifloat: 1
Test "tan (-0xc.94p-4)":
float: 1
ifloat: 1
+Test "tan (0x1p+0)":
+ildouble: 1
+ldouble: 1
Test "tan (0x1p16383)":
ildouble: 1
ldouble: 1
+Test "tan (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "tan (0x2p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan (0x8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan (0x8p+16380)":
+ildouble: 1
+ldouble: 1
Test "tan (0xc.90fdbp-4)":
float: 1
ifloat: 1
@@ -5983,6 +8275,168 @@ float: 1
ifloat: 1
# tan_downward
+Test "tan_downward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_downward (-0xc.908p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90cp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90ep-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90f8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fcp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fd8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fdap-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fdbp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fdcp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fdp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fep-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.91p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.92p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.94p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.98p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.9p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.ap-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x2p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x3p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x4p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x6p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x7p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.908p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fdaa22168c8p-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fdcp-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fep-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (0xc.91p-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (0xc.92p-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (0xc.94p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (0xc.98p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (0xcp-4)":
+double: 1
+idouble: 1
Test "tan_downward (1)":
float: 2
ifloat: 2
@@ -6018,6 +8472,59 @@ float: 1
ifloat: 1
# tan_tonearest
+Test "tan_tonearest (-0xc.90fdbp-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (-0xc.90fdcp-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (-0xc.90fep-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (-0xc.91p-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (-0xc.92p-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (-0xc.94p-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x2p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x8p+16380)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0xc.90fdbp-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (0xc.90fdcp-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (0xc.90fep-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (0xc.91p-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (0xc.92p-4)":
+float: 1
+ifloat: 1
+Test "tan_tonearest (0xc.94p-4)":
+float: 1
+ifloat: 1
Test "tan_tonearest (1)":
ildouble: 1
ldouble: 1
@@ -6031,6 +8538,100 @@ ildouble: 1
ldouble: 1
# tan_towardzero
+Test "tan_towardzero (-0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.908p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_towardzero (-0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.94p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.98p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.ap-4)":
+float: 1
+ifloat: 1
+Test "tan_towardzero (0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x5p+0)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x7p+0)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x9p+0)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.908p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_towardzero (0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fdaa22168c8p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.94p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.98p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.ap-4)":
+float: 1
+ifloat: 1
+Test "tan_towardzero (0xcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "tan_towardzero (1)":
ildouble: 1
ldouble: 1
@@ -6061,6 +8662,174 @@ ildouble: 1
ldouble: 1
# tan_upward
+Test "tan_upward (-0xc.908p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90cp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90ep-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90f8p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fcp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fd8p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fdap-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fdbp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fdcp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fdp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fep-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.91p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.92p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.94p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.98p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.9p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.ap-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0x1p+0)":
+float: 1
+ifloat: 1
+Test "tan_upward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "tan_upward (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "tan_upward (0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_upward (0x4p+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0x5p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0x7p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0x8p+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0x9p+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0xap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.908p-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (0xc.90ep-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90f8p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fd8p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fdap-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fdbp-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fdcp-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fep-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fp-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.91p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.92p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.9p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.ap-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_upward (0xcp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "tan_upward (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "tan_upward (1)":
float: 1
ifloat: 1
@@ -6097,6 +8866,11 @@ idouble: 1
Test "tgamma (-0x0.ffffffffffffffffp0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x1.000002p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x1.000002p0)":
double: 1
idouble: 1
@@ -6105,11 +8879,61 @@ ldouble: 1
Test "tgamma (-0x1.0a32a2p+5)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x1.3ffffep+4)":
+float: 1
+ifloat: 1
+Test "tgamma (-0x1.3ffffffffffffffep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.3ffffffffffffp+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.4000000000001p+4)":
+ildouble: 2
+ldouble: 2
Test "tgamma (-0x1.5800000080001p+7)":
double: 1
idouble: 1
ildouble: 2
ldouble: 2
+Test "tgamma (-0x1.8p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.dffffep+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.dffffffffffffffep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.e000000000000002p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x1.e00002p+4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.f3fffep+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.f3fffffffffffp+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.f400000000000002p+8)":
+ildouble: 3
+ldouble: 3
+Test "tgamma (-0x1.f40002p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.fffffffffffffp+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x1.fffffffffffffp0)":
ildouble: 1
ldouble: 1
@@ -6149,17 +8973,89 @@ ldouble: 3
Test "tgamma (-0x1p-24)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x2.0000000000000004p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x2.0000000000000004p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x2.0000000000002p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x2.0000000000002p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x2.000004p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x2.000004p0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x2.146544p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.7ffffcp+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.7fffffffffffep+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8000000000002p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x2.800004p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8ffffcp+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8fffffffffffep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8ffffffffffffffcp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8p+0)":
+double: 1
+idouble: 1
+Test "tgamma (-0x2.9000000000000004p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.9000000000002p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.900004p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.9ffffcp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.a00004p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.edfffffffffffffcp+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.ee00000000002p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.fffffcp+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x2.fffffcp0)":
double: 1
idouble: 1
@@ -6212,18 +9108,62 @@ ldouble: 1
Test "tgamma (-0x2ed.fffffffffffffcp0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x3.0000000000002p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x3.0000000000002p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x3.000004p+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x3.000004p0)":
double: 1
idouble: 1
+Test "tgamma (-0x3.1fffffffffffep+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.2000000000000004p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.2000000000002p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.200004p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.e7fffcp+8)":
+ildouble: 3
+ldouble: 3
+Test "tgamma (-0x3.e7fffffffffffffcp+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.e800000000000004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.e800000000002p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.e80004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.fffffcp+0)":
+float: 1
+ifloat: 1
Test "tgamma (-0x3.fffffcp0)":
float: 1
ifloat: 1
+Test "tgamma (-0x3.ffffffffffffep+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x3.ffffffffffffep0)":
double: 1
idouble: 1
+Test "tgamma (-0x3.fffffffffffffffcp+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x3.fffffffffffffffcp0)":
ildouble: 1
ldouble: 1
@@ -6244,51 +9184,152 @@ ldouble: 1
Test "tgamma (-0x3e8.00000000000004p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x4.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x4.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x4.000008p+0)":
+float: 2
+ifloat: 2
Test "tgamma (-0x4.000008p0)":
float: 2
ifloat: 2
+Test "tgamma (-0x4.8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.e200000000000008p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.e200000000004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.e20008p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.fffff8p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x4.fffff8p0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x4.ffffffffffffcp+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x4.ffffffffffffcp0)":
double: 1
idouble: 1
Test "tgamma (-0x4e2.00000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x5.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x5.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x5.0000000000004p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x5.0000000000004p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x5.000008p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x5.000008p0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x5.8p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (-0x5.dbfff8p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.dbffffffffffcp+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.dbfffffffffffff8p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.dc00000000004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.fffff8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "tgamma (-0x5.fffff8p0)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (-0x5.ffffffffffffcp+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x5.ffffffffffffcp0)":
double: 1
idouble: 1
Test "tgamma (-0x5db.fffffffffffff8p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x6.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x6.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x6.000008p+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x6.000008p0)":
double: 1
idouble: 1
+Test "tgamma (-0x6.3ffff8p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.3fffffffffffcp+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.3ffffffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.4000000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.4000000000004p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x6.400008p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x6.8p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (-0x6.d600000000000008p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.fffff8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 2
+ldouble: 2
Test "tgamma (-0x6.fffff8p0)":
double: 2
float: 1
@@ -6296,6 +9337,11 @@ idouble: 2
ifloat: 1
ildouble: 2
ldouble: 2
+Test "tgamma (-0x6.ffffffffffffcp+0)":
+double: 3
+idouble: 3
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x6.ffffffffffffcp0)":
double: 3
idouble: 3
@@ -6318,14 +9364,29 @@ ldouble: 2
Test "tgamma (-0x6d6.00000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x7.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.0000000000004p+0)":
+double: 4
+idouble: 4
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x7.0000000000004p0)":
double: 4
idouble: 4
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.000008p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x7.000008p0)":
double: 1
float: 1
@@ -6333,25 +9394,81 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.8p+0)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x7.fffff8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x7.fffff8p0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.ffffffffffffcp+0)":
+double: 2
+idouble: 2
Test "tgamma (-0x7.ffffffffffffcp0)":
double: 2
idouble: 2
+Test "tgamma (-0x7.fffffffffffffff8p+0)":
+ildouble: 4
+ldouble: 4
Test "tgamma (-0x7.fffffffffffffff8p0)":
ildouble: 4
ldouble: 4
+Test "tgamma (-0x8.000000000000001p+0)":
+ildouble: 2
+ldouble: 2
Test "tgamma (-0x8.000000000000001p0)":
ildouble: 2
ldouble: 2
+Test "tgamma (-0x8.00001p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x8.00001p0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x8.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x8p-4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x9.5fffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x9.5ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x9.6000000000008p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x9.60001p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x9.8p+0)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x9.ffffffffffff8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x9.ffffffffffff8p0)":
double: 1
idouble: 1
@@ -6368,12 +9485,25 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0xa.000000000000001p+0)":
+ildouble: 2
+ldouble: 2
Test "tgamma (-0xa.000000000000001p0)":
ildouble: 2
ldouble: 2
+Test "tgamma (-0xa.0000000000008p+0)":
+double: 1
+idouble: 1
Test "tgamma (-0xa.0000000000008p0)":
double: 1
idouble: 1
+Test "tgamma (-0xa.00001p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0xa.00001p0)":
double: 1
float: 1
@@ -6381,6 +9511,85 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0xa.c000000400008p+4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xa.c0001p+4)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.4ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.500000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.5000000000008p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.5ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.600000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.6fffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.6ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.7fffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.7ffffffffffffffp+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.8000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.bffffffffffffffp+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.c00000000000001p+4)":
+ildouble: 3
+ldouble: 3
+Test "tgamma (-0xb.c000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.d00000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.d000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.dffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.e00000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.e000000000008p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.e0001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.effffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.effffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.f00000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.f000000000008p+4)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0xb4.ffffffffffffffp0)":
ildouble: 1
ldouble: 1
@@ -6429,6 +9638,24 @@ ldouble: 1
Test "tgamma (-0xbf.00000000000001p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0xf.9fffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.9ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.a00000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.a000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.a0001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0xf9.ffffffffffffffp0)":
ildouble: 1
ldouble: 1
@@ -6475,9 +9702,41 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (0x1.28p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x1.38p+4)":
+double: 1
+idouble: 1
+Test "tgamma (0x1.78p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x1.d8p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x1.e8p+4)":
+float: 1
+ifloat: 1
+Test "tgamma (0x1.f8p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (0x1.fffffep+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x1.fffffep0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x1.fffffffffffffffep+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x1.fffffffffffffffep0)":
ildouble: 1
ldouble: 1
@@ -6490,68 +9749,167 @@ idouble: 1
Test "tgamma (0x1p-64)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x2.0000000000002p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.0000000000002p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x2.000004p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.000004p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x2.08p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x2.28p+4)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.30a43cp+4)":
double: 1
idouble: 1
+Test "tgamma (0x2.8p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x2.fffffcp+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.fffffcp0)":
float: 2
ifloat: 2
ildouble: 1
ldouble: 1
+Test "tgamma (0x2.ffffffffffffep+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.ffffffffffffep0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x3.0000000000002p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x3.0000000000002p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x3.8p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x3.e8p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x3.fffffcp+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x3.fffffcp0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x3.fffffffffffffffcp+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x3.fffffffffffffffcp0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x3p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x4.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x4.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x4.000008p+0)":
+float: 1
+ifloat: 1
Test "tgamma (0x4.000008p0)":
float: 1
ifloat: 1
+Test "tgamma (0x4.8p+0)":
+double: 1
+idouble: 1
+Test "tgamma (0x4.fffff8p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x4.fffff8p0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x4.fffffffffffffff8p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x4.fffffffffffffff8p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x4p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x5.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x5.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x5.000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x5.000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x5.8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x5.fffff8p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x5.fffff8p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x5.ffffffffffffcp+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x5.ffffffffffffcp0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x6.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x6.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x6.000008p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x6.000008p0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x6.8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x6.db8c603359a94p+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (0x6.fffff8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x6.fffff8p0)":
double: 1
float: 1
@@ -6559,17 +9917,35 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x6.ffffffffffffcp+0)":
+double: 3
+idouble: 3
Test "tgamma (0x6.ffffffffffffcp0)":
double: 3
idouble: 3
+Test "tgamma (0x7.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x7.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x7.0000000000004p+0)":
+double: 4
+idouble: 4
+ildouble: 1
+ldouble: 1
Test "tgamma (0x7.0000000000004p0)":
double: 4
idouble: 4
ildouble: 1
ldouble: 1
+Test "tgamma (0x7.000008p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x7.000008p0)":
double: 1
float: 1
@@ -6577,33 +9953,106 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x7.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x7.fffff8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x7.fffff8p0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x7.ffffffffffffcp+0)":
+double: 2
+idouble: 2
Test "tgamma (0x7.ffffffffffffcp0)":
double: 2
idouble: 2
+Test "tgamma (0x7.fffffffffffffff8p+0)":
+ildouble: 3
+ldouble: 3
Test "tgamma (0x7.fffffffffffffff8p0)":
ildouble: 3
ldouble: 3
+Test "tgamma (0x8.000000000000001p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x8.000000000000001p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x8.0000000000008p+0)":
+double: 1
+idouble: 1
Test "tgamma (0x8.0000000000008p0)":
double: 1
idouble: 1
+Test "tgamma (0x8.00001p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x8.00001p0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x8.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (0x8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x8p-4)":
+float: 1
+ifloat: 1
+Test "tgamma (0x8p-56)":
+double: 1
+idouble: 1
+Test "tgamma (0x9.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x9p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0xa.b9fd72b0fb238p+4)":
double: 1
idouble: 1
ildouble: 2
ldouble: 2
+Test "tgamma (0xa.b9fd72b0fb23a9dp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0xa.b9fd72b0fb23a9ep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0xa.b9fd7p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0xa.b9fd8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0xap+0)":
+double: 1
+idouble: 1
+Test "tgamma (0xb.333333333333p-4)":
+ildouble: 1
+ldouble: 1
Test "tgamma (10)":
double: 1
idouble: 1
@@ -6705,6 +10154,9 @@ ldouble: 1
Test "y0 (0x1.ff00000000002p+840)":
double: 1
idouble: 1
+Test "y0 (0x1p+0)":
+ildouble: 1
+ldouble: 1
Test "y0 (0x1p-10)":
ildouble: 1
ldouble: 1
@@ -6730,6 +10182,48 @@ idouble: 1
Test "y0 (0x1p16382)":
ildouble: 1
ldouble: 1
+Test "y0 (0x2p-4)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4.ffcp+72)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p+16380)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p-32)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p-72)":
+double: 1
+idouble: 1
+Test "y0 (0x8p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "y0 (0xcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "y0 (0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "y0 (1.0)":
ildouble: 1
ldouble: 1
@@ -6767,6 +10261,53 @@ idouble: 1
Test "y1 (0x1p16382)":
ildouble: 1
ldouble: 1
+Test "y1 (0x2.002000002p+592)":
+ildouble: 2
+ldouble: 2
+Test "y1 (0x2p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "y1 (0x2p-4)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0x4p+16380)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0x4p-12)":
+float: 1
+ifloat: 1
+Test "y1 (0x8p+0)":
+float: 2
+ifloat: 2
+Test "y1 (0x8p+1020)":
+double: 1
+idouble: 1
+Test "y1 (0x9.3f102p+96)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "y1 (0xap+0)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+Test "y1 (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "y1 (10.0)":
double: 2
float: 2
@@ -6784,6 +10325,12 @@ float: 2
ifloat: 2
# yn
+Test "yn (-10, 0x1p+0)":
+float: 2
+ifloat: 2
+Test "yn (-10, 1.0)":
+float: 2
+ifloat: 2
Test "yn (0, 0.125)":
ildouble: 1
ldouble: 1
@@ -6792,6 +10339,27 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "yn (0, 0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "yn (0, 0x2p-4)":
+ildouble: 1
+ldouble: 1
+Test "yn (0, 0x8p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (0, 0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "yn (0, 0xcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "yn (0, 1.0)":
ildouble: 1
ldouble: 1
@@ -6808,6 +10376,24 @@ ldouble: 1
Test "yn (1, 0.125)":
ildouble: 1
ldouble: 1
+Test "yn (1, 0x2p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "yn (1, 0x2p-4)":
+ildouble: 1
+ldouble: 1
+Test "yn (1, 0x8p+0)":
+float: 2
+ifloat: 2
+Test "yn (1, 0xap+0)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
Test "yn (1, 10.0)":
double: 2
float: 2
@@ -6833,6 +10419,36 @@ float: 1
ifloat: 1
ildouble: 4
ldouble: 4
+Test "yn (10, 0x1p+0)":
+float: 2
+ifloat: 2
+Test "yn (10, 0x2p+0)":
+float: 3
+ifloat: 3
+Test "yn (10, 0x2p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "yn (10, 0x4p-1024)":
+ildouble: 1
+ldouble: 1
+Test "yn (10, 0x4p-128)":
+ildouble: 1
+ldouble: 1
+Test "yn (10, 0x8p-972)":
+ildouble: 1
+ldouble: 1
+Test "yn (10, 0xap+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "yn (10, 0xcp-4)":
+float: 1
+ifloat: 1
+ildouble: 4
+ldouble: 4
Test "yn (10, 1.0)":
float: 2
ifloat: 2
@@ -6844,6 +10460,27 @@ ifloat: 1
Test "yn (10, 2.0)":
float: 3
ifloat: 3
+Test "yn (2, 0x1.ffff62p+99)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0x1p127)":
+float: 2
+ifloat: 2
+Test "yn (2, 0x8p+124)":
+float: 2
+ifloat: 2
+Test "yn (2, 0xf.fffb1p+96)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "yn (3, 0.125)":
ildouble: 1
ldouble: 1
@@ -6852,6 +10489,22 @@ double: 1
idouble: 1
ildouble: 2
ldouble: 2
+Test "yn (3, 0x2p+0)":
+float: 1
+ifloat: 1
+Test "yn (3, 0x2p-4)":
+ildouble: 1
+ldouble: 1
+Test "yn (3, 0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "yn (3, 0xcp-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
Test "yn (3, 10.0)":
double: 1
float: 1
@@ -6874,6 +10527,10 @@ ifloat: 1
ildouble: 1
ldouble: 1
+Function: "acos_tonearest":
+ildouble: 1
+ldouble: 1
+
Function: "acos_towardzero":
double: 1
float: 1
@@ -6912,6 +10569,10 @@ ifloat: 1
ildouble: 1
ldouble: 1
+Function: "atan2":
+ildouble: 1
+ldouble: 1
+
Function: "atanh":
ildouble: 2
ldouble: 1
@@ -7079,20 +10740,34 @@ ildouble: 1
ldouble: 1
Function: "cos_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 2
+ldouble: 2
+
+Function: "cos_tonearest":
ildouble: 1
ldouble: 1
Function: "cos_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "cos_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 2
+ldouble: 2
+
+Function: "cosh":
ildouble: 1
ldouble: 1
@@ -7105,6 +10780,7 @@ ildouble: 1
ldouble: 2
Function: "cosh_tonearest":
+ildouble: 1
ldouble: 1
Function: "cosh_towardzero":
@@ -7302,6 +10978,8 @@ ldouble: 2
Function: "erf":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Function: "erfc":
double: 1
@@ -7334,11 +11012,41 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "expm1":
ildouble: 1
ldouble: 1
+Function: "expm1_downward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
+Function: "expm1_tonearest":
+ildouble: 1
+ldouble: 1
+
+Function: "expm1_towardzero":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+
+Function: "expm1_upward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+
Function: "gamma":
double: 1
float: 2
@@ -7350,6 +11058,8 @@ ldouble: 1
Function: "hypot":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "j0":
double: 1
@@ -7372,8 +11082,8 @@ double: 2
float: 4
idouble: 2
ifloat: 4
-ildouble: 3
-ldouble: 3
+ildouble: 4
+ldouble: 4
Function: "lgamma":
double: 1
@@ -7386,6 +11096,8 @@ ldouble: 1
Function: "log":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "log10":
float: 1
@@ -7393,6 +11105,10 @@ ifloat: 1
ildouble: 1
ldouble: 1
+Function: "log1p":
+ildouble: 1
+ldouble: 1
+
Function: "pow":
ildouble: 1
ldouble: 1
@@ -7407,6 +11123,10 @@ float: 1
idouble: 1
ifloat: 1
+Function: "pow_tonearest":
+ildouble: 1
+ldouble: 1
+
Function: "pow_towardzero":
double: 1
float: 1
@@ -7421,23 +11141,37 @@ ifloat: 1
ildouble: 1
ldouble: 1
+Function: "sin":
+ildouble: 1
+ldouble: 1
+
Function: "sin_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 2
+ldouble: 2
+
+Function: "sin_tonearest":
ildouble: 1
ldouble: 1
Function: "sin_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "sin_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "sincos":
double: 1
@@ -7459,6 +11193,9 @@ ifloat: 1
ildouble: 2
ldouble: 2
+Function: "sinh_tonearest":
+ildouble: 1
+
Function: "sinh_towardzero":
double: 1
float: 1
@@ -7469,8 +11206,9 @@ ldouble: 2
Function: "sinh_upward":
double: 1
+float: 1
idouble: 1
-ildouble: 1
+ildouble: 2
ldouble: 1
Function: "tan":
@@ -7482,7 +11220,9 @@ ildouble: 1
ldouble: 1
Function: "tan_downward":
+double: 1
float: 2
+idouble: 1
ifloat: 2
ildouble: 1
ldouble: 1
@@ -7494,13 +11234,17 @@ ildouble: 1
ldouble: 1
Function: "tan_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "tan_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
diff --git a/sysdeps/i386/fpu/s_expm1.S b/sysdeps/i386/fpu/s_expm1.S
index 91617eb74c..398055276e 100644
--- a/sysdeps/i386/fpu/s_expm1.S
+++ b/sysdeps/i386/fpu/s_expm1.S
@@ -78,7 +78,18 @@ ENTRY(__expm1)
5: fldt MO(l2e) // log2(e) : x
fmulp // log2(e)*x
fld %st // log2(e)*x : log2(e)*x
+ // Set round-to-nearest temporarily.
+ subl $8, %esp
+ cfi_adjust_cfa_offset (8)
+ fstcw 4(%esp)
+ movl $0xf3ff, %ecx
+ andl 4(%esp), %ecx
+ movl %ecx, (%esp)
+ fldcw (%esp)
frndint // int(log2(e)*x) : log2(e)*x
+ fldcw 4(%esp)
+ addl $8, %esp
+ cfi_adjust_cfa_offset (-8)
fsubr %st, %st(1) // int(log2(e)*x) : fract(log2(e)*x)
fxch // fract(log2(e)*x) : int(log2(e)*x)
f2xm1 // 2^fract(log2(e)*x)-1 : int(log2(e)*x)
diff --git a/sysdeps/i386/fpu/s_expm1f.S b/sysdeps/i386/fpu/s_expm1f.S
index 2f1b6f69fc..e5e52a08f3 100644
--- a/sysdeps/i386/fpu/s_expm1f.S
+++ b/sysdeps/i386/fpu/s_expm1f.S
@@ -78,7 +78,18 @@ ENTRY(__expm1f)
5: fldt MO(l2e) // log2(e) : x
fmulp // log2(e)*x
fld %st // log2(e)*x : log2(e)*x
+ // Set round-to-nearest temporarily.
+ subl $8, %esp
+ cfi_adjust_cfa_offset (8)
+ fstcw 4(%esp)
+ movl $0xf3ff, %ecx
+ andl 4(%esp), %ecx
+ movl %ecx, (%esp)
+ fldcw (%esp)
frndint // int(log2(e)*x) : log2(e)*x
+ fldcw 4(%esp)
+ addl $8, %esp
+ cfi_adjust_cfa_offset (-8)
fsubr %st, %st(1) // int(log2(e)*x) : fract(log2(e)*x)
fxch // fract(log2(e)*x) : int(log2(e)*x)
f2xm1 // 2^fract(log2(e)*x)-1 : int(log2(e)*x)
diff --git a/sysdeps/i386/fpu/w_sqrt.c b/sysdeps/i386/fpu/w_sqrt.c
new file mode 100644
index 0000000000..19b5074179
--- /dev/null
+++ b/sysdeps/i386/fpu/w_sqrt.c
@@ -0,0 +1,8 @@
+/* The inline __ieee754_sqrt is not correctly rounding; it's OK for
+ most internal uses in glibc, but not for sqrt itself. */
+#define __ieee754_sqrt __avoid_ieee754_sqrt
+#include <math.h>
+#include <math_private.h>
+#undef __ieee754_sqrt
+extern double __ieee754_sqrt (double);
+#include <math/w_sqrt.c>
diff --git a/sysdeps/i386/i686/ffs.c b/sysdeps/i386/i686/ffs.c
index 5c97050e87..cde1c99566 100644
--- a/sysdeps/i386/i686/ffs.c
+++ b/sysdeps/i386/i686/ffs.c
@@ -39,6 +39,7 @@ __ffs (x)
return cnt + 1;
}
weak_alias (__ffs, ffs)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
#undef ffsl
weak_alias (__ffs, ffsl)
diff --git a/sysdeps/i386/i686/multiarch/Makefile b/sysdeps/i386/i686/multiarch/Makefile
index 8946bfa586..55778cbcd1 100644
--- a/sysdeps/i386/i686/multiarch/Makefile
+++ b/sysdeps/i386/i686/multiarch/Makefile
@@ -11,7 +11,7 @@ sysdep_routines += bzero-sse2 memset-sse2 memcpy-ssse3 mempcpy-ssse3 \
memmove-ssse3-rep bcopy-ssse3 bcopy-ssse3-rep \
memset-sse2-rep bzero-sse2-rep strcmp-ssse3 \
strcmp-sse4 strncmp-c strncmp-ssse3 strncmp-sse4 \
- memcmp-ssse3 memcmp-sse4 strcasestr-nonascii varshift \
+ memcmp-ssse3 memcmp-sse4 varshift \
strlen-sse2 strlen-sse2-bsf strncpy-c strcpy-ssse3 \
strncpy-ssse3 stpcpy-ssse3 stpncpy-ssse3 strcpy-sse2 \
strncpy-sse2 stpcpy-sse2 stpncpy-sse2 strcat-ssse3 \
@@ -25,14 +25,11 @@ sysdep_routines += bzero-sse2 memset-sse2 memcpy-ssse3 mempcpy-ssse3 \
strncase_l-c strncase-c strncase_l-ssse3 \
strcasecmp_l-sse4 strncase_l-sse4
ifeq (yes,$(config-cflags-sse4))
-sysdep_routines += strcspn-c strpbrk-c strspn-c strstr-c strcasestr-c
+sysdep_routines += strcspn-c strpbrk-c strspn-c
CFLAGS-varshift.c += -msse4
CFLAGS-strcspn-c.c += -msse4
CFLAGS-strpbrk-c.c += -msse4
CFLAGS-strspn-c.c += -msse4
-CFLAGS-strstr.c += -msse4
-CFLAGS-strcasestr.c += -msse4
-CFLAGS-strcasestr-nonascii.c += -msse4
endif
endif
diff --git a/sysdeps/i386/i686/multiarch/ifunc-impl-list.c b/sysdeps/i386/i686/multiarch/ifunc-impl-list.c
index 2c282bdb72..3a8d094c89 100644
--- a/sysdeps/i386/i686/multiarch/ifunc-impl-list.c
+++ b/sysdeps/i386/i686/multiarch/ifunc-impl-list.c
@@ -141,12 +141,6 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
IFUNC_IMPL_ADD (array, i, strcasecmp_l, 1,
__strcasecmp_l_ia32))
- /* Support sysdeps/i386/i686/multiarch/strcasestr.c. */
- IFUNC_IMPL (i, name, strcasestr,
- IFUNC_IMPL_ADD (array, i, strcasestr, HAS_SSE4_2,
- __strcasestr_sse42)
- IFUNC_IMPL_ADD (array, i, strcasestr, 1, __strcasestr_ia32))
-
/* Support sysdeps/i386/i686/multiarch/strcat.S. */
IFUNC_IMPL (i, name, strcat,
IFUNC_IMPL_ADD (array, i, strcat, HAS_SSSE3, __strcat_ssse3)
@@ -234,11 +228,6 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
IFUNC_IMPL_ADD (array, i, strspn, HAS_SSE4_2, __strspn_sse42)
IFUNC_IMPL_ADD (array, i, strspn, 1, __strspn_ia32))
- /* Support sysdeps/i386/i686/multiarch/strstr-c.c. */
- IFUNC_IMPL (i, name, strstr,
- IFUNC_IMPL_ADD (array, i, strstr, HAS_SSE4_2, __strstr_sse42)
- IFUNC_IMPL_ADD (array, i, strstr, 1, __strstr_ia32))
-
/* Support sysdeps/i386/i686/multiarch/wcschr.S. */
IFUNC_IMPL (i, name, wcschr,
IFUNC_IMPL_ADD (array, i, wcschr, HAS_SSE2, __wcschr_sse2)
diff --git a/sysdeps/i386/i686/multiarch/strcasestr-nonascii.c b/sysdeps/i386/i686/multiarch/strcasestr-nonascii.c
deleted file mode 100644
index 4cc4444f7e..0000000000
--- a/sysdeps/i386/i686/multiarch/strcasestr-nonascii.c
+++ /dev/null
@@ -1,2 +0,0 @@
-#include <nmmintrin.h>
-#include <sysdeps/x86_64/multiarch/strcasestr-nonascii.c>
diff --git a/sysdeps/i386/i686/multiarch/strcasestr.c b/sysdeps/i386/i686/multiarch/strcasestr.c
deleted file mode 100644
index 511bb29ede..0000000000
--- a/sysdeps/i386/i686/multiarch/strcasestr.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/x86_64/multiarch/strcasestr.c>
diff --git a/sysdeps/i386/i686/multiarch/strstr-c.c b/sysdeps/i386/i686/multiarch/strstr-c.c
deleted file mode 100644
index 7516c7ffee..0000000000
--- a/sysdeps/i386/i686/multiarch/strstr-c.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/* Multiple versions of strstr
- All versions must be listed in ifunc-impl-list.c. */
-
-#include "init-arch.h"
-
-#define STRSTR __strstr_ia32
-#if defined SHARED && defined DO_VERSIONING && !defined NO_HIDDEN
-#undef libc_hidden_builtin_def
-#define libc_hidden_builtin_def(name) \
- __hidden_ver1 (__strstr_ia32, __GI_strstr, __strstr_ia32);
-#endif
-
-/* Redefine strstr so that the compiler won't complain about the type
- mismatch with the IFUNC selector in strong_alias, below. */
-#undef strstr
-#define strstr __redirect_strstr
-
-#include "string/strstr.c"
-
-extern __typeof (__redirect_strstr) __strstr_sse42 attribute_hidden;
-extern __typeof (__redirect_strstr) __strstr_ia32 attribute_hidden;
-
-/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
- ifunc symbol properly. */
-extern __typeof (__redirect_strstr) __libc_strstr;
-libc_ifunc (__libc_strstr, HAS_SSE4_2 ? __strstr_sse42 : __strstr_ia32)
-
-#undef strstr
-strong_alias (__libc_strstr, strstr)
diff --git a/sysdeps/i386/i686/multiarch/strstr.c b/sysdeps/i386/i686/multiarch/strstr.c
deleted file mode 100644
index a97428c125..0000000000
--- a/sysdeps/i386/i686/multiarch/strstr.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/x86_64/multiarch/strstr.c>
diff --git a/sysdeps/i386/stackguard-macros.h b/sysdeps/i386/stackguard-macros.h
index 8c31e197e1..039762927c 100644
--- a/sysdeps/i386/stackguard-macros.h
+++ b/sysdeps/i386/stackguard-macros.h
@@ -2,3 +2,11 @@
#define STACK_CHK_GUARD \
({ uintptr_t x; asm ("movl %%gs:0x14, %0" : "=r" (x)); x; })
+
+#define POINTER_CHK_GUARD \
+ ({ \
+ uintptr_t x; \
+ asm ("movl %%gs:%c1, %0" : "=r" (x) \
+ : "i" (offsetof (tcbhead_t, pointer_guard))); \
+ x; \
+ })
diff --git a/sysdeps/ieee754/dbl-64/Makefile b/sysdeps/ieee754/dbl-64/Makefile
index 1a7b31158d..35f545ff8e 100644
--- a/sysdeps/ieee754/dbl-64/Makefile
+++ b/sysdeps/ieee754/dbl-64/Makefile
@@ -1,4 +1,5 @@
ifeq ($(subdir),math)
# branred depends on precise IEEE double rounding
CFLAGS-branred.c = $(config-cflags-nofma)
+CFLAGS-e_sqrt.c = $(config-cflags-nofma)
endif
diff --git a/sysdeps/ieee754/dbl-64/MathLib.h b/sysdeps/ieee754/dbl-64/MathLib.h
index 23f71980bb..cf56606e36 100644
--- a/sysdeps/ieee754/dbl-64/MathLib.h
+++ b/sysdeps/ieee754/dbl-64/MathLib.h
@@ -33,14 +33,14 @@
/* It returns the original status of these modes. */
/* See further explanations of usage in DPChange.h */
/********************************************************************/
-unsigned short Init_Lib(void);
+unsigned short Init_Lib (void);
/********************************************************************/
/* Function that changes the precision and rounding modes to the */
/* specified by the argument received. See further explanations in */
/* DPChange.h */
/********************************************************************/
-void Exit_Lib(unsigned short);
+void Exit_Lib (unsigned short);
/* The asin() function calculates the arc sine of its argument. */
@@ -48,7 +48,7 @@ void Exit_Lib(unsigned short);
/* (between -PI/2 and PI/2). */
/* If the argument is greater than 1 or less than -1 it returns */
/* a NaN. */
-double uasin(double );
+double uasin (double);
/* The acos() function calculates the arc cosine of its argument. */
@@ -56,47 +56,45 @@ double uasin(double );
/* (between -PI/2 and PI/2). */
/* If the argument is greater than 1 or less than -1 it returns */
/* a NaN. */
-double uacos(double );
+double uacos (double);
/* The atan() function calculates the arctanget of its argument. */
/* The function returns the arc tangent in radians */
/* (between -PI/2 and PI/2). */
-double uatan(double );
+double uatan (double);
/* The uatan2() function calculates the arc tangent of the two arguments x */
/* and y (x is the right argument and y is the left one).The signs of both */
/* arguments are used to determine the quadrant of the result. */
/* The function returns the result in radians, which is between -PI and PI */
-double uatan2(double ,double );
+double uatan2 (double, double);
/* Compute log(x). The base of log is e (natural logarithm) */
-double ulog(double );
+double ulog (double);
/* Compute e raised to the power of argument x. */
-double uexp(double );
+double uexp (double);
/* Compute sin(x). The argument x is assumed to be given in radians.*/
-double usin(double );
+double usin (double);
/* Compute cos(x). The argument x is assumed to be given in radians.*/
-double ucos(double );
+double ucos (double);
/* Compute tan(x). The argument x is assumed to be given in radians.*/
-double utan(double );
+double utan (double);
/* Compute the square root of non-negative argument x. */
/* If x is negative the returned value is NaN. */
-double usqrt(double );
+double usqrt (double);
/* Compute x raised to the power of y, where x is the left argument */
/* and y is the right argument. The function returns a NaN if x<0. */
/* If x equals zero it returns -inf */
-double upow(double , double );
+double upow (double, double);
/* Computing x mod y, where x is the left argument and y is the */
/* right one. */
-double uremainder(double , double );
-
-
+double uremainder (double, double);
#endif
diff --git a/sysdeps/ieee754/dbl-64/dbl2mpn.c b/sysdeps/ieee754/dbl-64/dbl2mpn.c
index f2294de5aa..087d64377b 100644
--- a/sysdeps/ieee754/dbl-64/dbl2mpn.c
+++ b/sysdeps/ieee754/dbl-64/dbl2mpn.c
@@ -40,14 +40,14 @@ __mpn_extract_double (mp_ptr res_ptr, mp_size_t size,
#if BITS_PER_MP_LIMB == 32
res_ptr[0] = u.ieee.mantissa1; /* Low-order 32 bits of fraction. */
res_ptr[1] = u.ieee.mantissa0; /* High-order 20 bits. */
- #define N 2
+ # define N 2
#elif BITS_PER_MP_LIMB == 64
/* Hopefully the compiler will combine the two bitfield extracts
and this composition into just the original quadword extract. */
res_ptr[0] = ((mp_limb_t) u.ieee.mantissa0 << 32) | u.ieee.mantissa1;
- #define N 1
+ # define N 1
#else
- #error "mp_limb size " BITS_PER_MP_LIMB "not accounted for"
+ # error "mp_limb size " BITS_PER_MP_LIMB "not accounted for"
#endif
/* The format does not fill the last limb. There are some zeros. */
#define NUM_LEADING_ZEROS (BITS_PER_MP_LIMB \
@@ -73,7 +73,7 @@ __mpn_extract_double (mp_ptr res_ptr, mp_size_t size,
#if N == 2
res_ptr[N - 1] = res_ptr[1] << cnt
| (N - 1)
- * (res_ptr[0] >> (BITS_PER_MP_LIMB - cnt));
+ * (res_ptr[0] >> (BITS_PER_MP_LIMB - cnt));
res_ptr[0] <<= cnt;
#else
res_ptr[N - 1] <<= cnt;
diff --git a/sysdeps/ieee754/dbl-64/dla.h b/sysdeps/ieee754/dbl-64/dla.h
index b09f00ec75..6666982bfa 100644
--- a/sysdeps/ieee754/dbl-64/dla.h
+++ b/sysdeps/ieee754/dbl-64/dla.h
@@ -61,13 +61,13 @@
/* storage variables of type double. */
#ifdef DLA_FMS
-# define EMULV(x,y,z,zz,p,hx,tx,hy,ty) \
- z=x*y; zz=DLA_FMS(x,y,z);
+# define EMULV(x, y, z, zz, p, hx, tx, hy, ty) \
+ z = x * y; zz = DLA_FMS (x, y, z);
#else
-# define EMULV(x,y,z,zz,p,hx,tx,hy,ty) \
- p=CN*(x); hx=((x)-p)+p; tx=(x)-hx; \
- p=CN*(y); hy=((y)-p)+p; ty=(y)-hy; \
- z=(x)*(y); zz=(((hx*hy-z)+hx*ty)+tx*hy)+tx*ty;
+# define EMULV(x, y, z, zz, p, hx, tx, hy, ty) \
+ p = CN * (x); hx = ((x) - p) + p; tx = (x) - hx; \
+ p = CN * (y); hy = ((y) - p) + p; ty = (y) - hy; \
+ z = (x) * (y); zz = (((hx * hy - z) + hx * ty) + tx * hy) + tx * ty;
#endif
@@ -93,11 +93,11 @@
/* are assumed to be double-length numbers. r,s are temporary */
/* storage variables of type double. */
-#define ADD2(x,xx,y,yy,z,zz,r,s) \
- r=(x)+(y); s=(ABS(x)>ABS(y)) ? \
- (((((x)-r)+(y))+(yy))+(xx)) : \
- (((((y)-r)+(x))+(xx))+(yy)); \
- z=r+s; zz=(r-z)+s;
+#define ADD2(x, xx, y, yy, z, zz, r, s) \
+ r = (x) + (y); s = (ABS (x) > ABS (y)) ? \
+ (((((x) - r) + (y)) + (yy)) + (xx)) : \
+ (((((y) - r) + (x)) + (xx)) + (yy)); \
+ z = r + s; zz = (r - z) + s;
/* Double-length subtraction, Dekker. The macro produces a double-length */
@@ -106,11 +106,11 @@
/* are assumed to be double-length numbers. r,s are temporary */
/* storage variables of type double. */
-#define SUB2(x,xx,y,yy,z,zz,r,s) \
- r=(x)-(y); s=(ABS(x)>ABS(y)) ? \
- (((((x)-r)-(y))-(yy))+(xx)) : \
- ((((x)-((y)+r))+(xx))-(yy)); \
- z=r+s; zz=(r-z)+s;
+#define SUB2(x, xx, y, yy, z, zz, r, s) \
+ r = (x) - (y); s = (ABS (x) > ABS (y)) ? \
+ (((((x) - r) - (y)) - (yy)) + (xx)) : \
+ ((((x) - ((y) + r)) + (xx)) - (yy)); \
+ z = r + s; zz = (r - z) + s;
/* Double-length multiplication, Dekker. The macro produces a double-length */
@@ -119,9 +119,9 @@
/* are assumed to be double-length numbers. p,hx,tx,hy,ty,q,c,cc are */
/* temporary storage variables of type double. */
-#define MUL2(x,xx,y,yy,z,zz,p,hx,tx,hy,ty,q,c,cc) \
- MUL12(x,y,c,cc,p,hx,tx,hy,ty,q) \
- cc=((x)*(yy)+(xx)*(y))+cc; z=c+cc; zz=(c-z)+cc;
+#define MUL2(x, xx, y, yy, z, zz, p, hx, tx, hy, ty, q, c, cc) \
+ MUL12 (x, y, c, cc, p, hx, tx, hy, ty, q) \
+ cc = ((x) * (yy) + (xx) * (y)) + cc; z = c + cc; zz = (c - z) + cc;
/* Double-length division, Dekker. The macro produces a double-length */
@@ -142,18 +142,18 @@
/* are assumed to be double-length numbers. r,rr,s,ss,u,uu,w */
/* are temporary storage variables of type double. */
-#define ADD2A(x,xx,y,yy,z,zz,r,rr,s,ss,u,uu,w) \
- r=(x)+(y); \
- if (ABS(x)>ABS(y)) { rr=((x)-r)+(y); s=(rr+(yy))+(xx); } \
- else { rr=((y)-r)+(x); s=(rr+(xx))+(yy); } \
- if (rr!=0.0) { \
- z=r+s; zz=(r-z)+s; } \
- else { \
- ss=(ABS(xx)>ABS(yy)) ? (((xx)-s)+(yy)) : (((yy)-s)+(xx)); \
- u=r+s; \
- uu=(ABS(r)>ABS(s)) ? ((r-u)+s) : ((s-u)+r) ; \
- w=uu+ss; z=u+w; \
- zz=(ABS(u)>ABS(w)) ? ((u-z)+w) : ((w-z)+u) ; }
+#define ADD2A(x, xx, y, yy, z, zz, r, rr, s, ss, u, uu, w) \
+ r = (x) + (y); \
+ if (ABS (x) > ABS (y)) { rr = ((x) - r) + (y); s = (rr + (yy)) + (xx); } \
+ else { rr = ((y) - r) + (x); s = (rr + (xx)) + (yy); } \
+ if (rr != 0.0) { \
+ z = r + s; zz = (r - z) + s; } \
+ else { \
+ ss = (ABS (xx) > ABS (yy)) ? (((xx) - s) + (yy)) : (((yy) - s) + (xx));\
+ u = r + s; \
+ uu = (ABS (r) > ABS (s)) ? ((r - u) + s) : ((s - u) + r); \
+ w = uu + ss; z = u + w; \
+ zz = (ABS (u) > ABS (w)) ? ((u - z) + w) : ((w - z) + u); }
/* Double-length subtraction, slower but more accurate than SUB2. */
@@ -163,15 +163,15 @@
/* are assumed to be double-length numbers. r,rr,s,ss,u,uu,w */
/* are temporary storage variables of type double. */
-#define SUB2A(x,xx,y,yy,z,zz,r,rr,s,ss,u,uu,w) \
- r=(x)-(y); \
- if (ABS(x)>ABS(y)) { rr=((x)-r)-(y); s=(rr-(yy))+(xx); } \
- else { rr=(x)-((y)+r); s=(rr+(xx))-(yy); } \
- if (rr!=0.0) { \
- z=r+s; zz=(r-z)+s; } \
- else { \
- ss=(ABS(xx)>ABS(yy)) ? (((xx)-s)-(yy)) : ((xx)-((yy)+s)); \
- u=r+s; \
- uu=(ABS(r)>ABS(s)) ? ((r-u)+s) : ((s-u)+r) ; \
- w=uu+ss; z=u+w; \
- zz=(ABS(u)>ABS(w)) ? ((u-z)+w) : ((w-z)+u) ; }
+#define SUB2A(x, xx, y, yy, z, zz, r, rr, s, ss, u, uu, w) \
+ r = (x) - (y); \
+ if (ABS (x) > ABS (y)) { rr = ((x) - r) - (y); s = (rr - (yy)) + (xx); } \
+ else { rr = (x) - ((y) + r); s = (rr + (xx)) - (yy); } \
+ if (rr != 0.0) { \
+ z = r + s; zz = (r - z) + s; } \
+ else { \
+ ss = (ABS (xx) > ABS (yy)) ? (((xx) - s) - (yy)) : ((xx) - ((yy) + s)); \
+ u = r + s; \
+ uu = (ABS (r) > ABS (s)) ? ((r - u) + s) : ((s - u) + r); \
+ w = uu + ss; z = u + w; \
+ zz = (ABS (u) > ABS (w)) ? ((u - z) + w) : ((w - z) + u); }
diff --git a/sysdeps/ieee754/dbl-64/dosincos.c b/sysdeps/ieee754/dbl-64/dosincos.c
index 00726285a9..e1c8836b72 100644
--- a/sysdeps/ieee754/dbl-64/dosincos.c
+++ b/sysdeps/ieee754/dbl-64/dosincos.c
@@ -57,49 +57,52 @@ extern const union
void
SECTION
-__dubsin(double x, double dx, double v[]) {
- double r,s,c,cc,d,dd,d2,dd2,e,ee,
- sn,ssn,cs,ccs,ds,dss,dc,dcc;
+__dubsin (double x, double dx, double v[])
+{
+ double r, s, c, cc, d, dd, d2, dd2, e, ee,
+ sn, ssn, cs, ccs, ds, dss, dc, dcc;
#ifndef DLA_FMS
- double p,hx,tx,hy,ty,q;
+ double p, hx, tx, hy, ty, q;
#endif
mynumber u;
int4 k;
- u.x=x+big.x;
- k = u.i[LOW_HALF]<<2;
- x=x-(u.x-big.x);
- d=x+dx;
- dd=(x-d)+dx;
- /* sin(x+dx)=sin(Xi+t)=sin(Xi)*cos(t) + cos(Xi)sin(t) where t ->0 */
- MUL2(d,dd,d,dd,d2,dd2,p,hx,tx,hy,ty,q,c,cc);
- sn=__sincostab.x[k]; /* */
- ssn=__sincostab.x[k+1]; /* sin(Xi) and cos(Xi) */
- cs=__sincostab.x[k+2]; /* */
- ccs=__sincostab.x[k+3]; /* */
- MUL2(d2,dd2,s7.x,ss7.x,ds,dss,p,hx,tx,hy,ty,q,c,cc); /* Taylor */
- ADD2(ds,dss,s5.x,ss5.x,ds,dss,r,s);
- MUL2(d2,dd2,ds,dss,ds,dss,p,hx,tx,hy,ty,q,c,cc); /* series */
- ADD2(ds,dss,s3.x,ss3.x,ds,dss,r,s);
- MUL2(d2,dd2,ds,dss,ds,dss,p,hx,tx,hy,ty,q,c,cc); /* for sin */
- MUL2(d,dd,ds,dss,ds,dss,p,hx,tx,hy,ty,q,c,cc);
- ADD2(ds,dss,d,dd,ds,dss,r,s); /* ds=sin(t) */
-
- MUL2(d2,dd2,c8.x,cc8.x,dc,dcc,p,hx,tx,hy,ty,q,c,cc); ;/* Taylor */
- ADD2(dc,dcc,c6.x,cc6.x,dc,dcc,r,s);
- MUL2(d2,dd2,dc,dcc,dc,dcc,p,hx,tx,hy,ty,q,c,cc); /* series */
- ADD2(dc,dcc,c4.x,cc4.x,dc,dcc,r,s);
- MUL2(d2,dd2,dc,dcc,dc,dcc,p,hx,tx,hy,ty,q,c,cc); /* for cos */
- ADD2(dc,dcc,c2.x,cc2.x,dc,dcc,r,s);
- MUL2(d2,dd2,dc,dcc,dc,dcc,p,hx,tx,hy,ty,q,c,cc); /* dc=cos(t) */
-
- MUL2(cs,ccs,ds,dss,e,ee,p,hx,tx,hy,ty,q,c,cc);
- MUL2(dc,dcc,sn,ssn,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
- SUB2(e,ee,dc,dcc,e,ee,r,s);
- ADD2(e,ee,sn,ssn,e,ee,r,s); /* e+ee=sin(x+dx) */
-
- v[0]=e;
- v[1]=ee;
+ u.x = x + big.x;
+ k = u.i[LOW_HALF] << 2;
+ x = x - (u.x - big.x);
+ d = x + dx;
+ dd = (x - d) + dx;
+ /* sin(x+dx)=sin(Xi+t)=sin(Xi)*cos(t) + cos(Xi)sin(t) where t ->0 */
+ MUL2 (d, dd, d, dd, d2, dd2, p, hx, tx, hy, ty, q, c, cc);
+ sn = __sincostab.x[k]; /* */
+ ssn = __sincostab.x[k + 1]; /* sin(Xi) and cos(Xi) */
+ cs = __sincostab.x[k + 2]; /* */
+ ccs = __sincostab.x[k + 3]; /* */
+ /* Taylor series for sin ds=sin(t) */
+ MUL2 (d2, dd2, s7.x, ss7.x, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (ds, dss, s5.x, ss5.x, ds, dss, r, s);
+ MUL2 (d2, dd2, ds, dss, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (ds, dss, s3.x, ss3.x, ds, dss, r, s);
+ MUL2 (d2, dd2, ds, dss, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ MUL2 (d, dd, ds, dss, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (ds, dss, d, dd, ds, dss, r, s);
+
+ /* Taylor series for cos dc=cos(t) */
+ MUL2 (d2, dd2, c8.x, cc8.x, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (dc, dcc, c6.x, cc6.x, dc, dcc, r, s);
+ MUL2 (d2, dd2, dc, dcc, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (dc, dcc, c4.x, cc4.x, dc, dcc, r, s);
+ MUL2 (d2, dd2, dc, dcc, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (dc, dcc, c2.x, cc2.x, dc, dcc, r, s);
+ MUL2 (d2, dd2, dc, dcc, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+
+ MUL2 (cs, ccs, ds, dss, e, ee, p, hx, tx, hy, ty, q, c, cc);
+ MUL2 (dc, dcc, sn, ssn, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ SUB2 (e, ee, dc, dcc, e, ee, r, s);
+ ADD2 (e, ee, sn, ssn, e, ee, r, s); /* e+ee=sin(x+dx) */
+
+ v[0] = e;
+ v[1] = ee;
}
/**********************************************************************/
/* Routine receive Double-Length number (x+dx) and computes cos(x+dx) */
@@ -110,64 +113,65 @@ __dubsin(double x, double dx, double v[]) {
void
SECTION
-__dubcos(double x, double dx, double v[]) {
- double r,s,c,cc,d,dd,d2,dd2,e,ee,
- sn,ssn,cs,ccs,ds,dss,dc,dcc;
+__dubcos (double x, double dx, double v[])
+{
+ double r, s, c, cc, d, dd, d2, dd2, e, ee,
+ sn, ssn, cs, ccs, ds, dss, dc, dcc;
#ifndef DLA_FMS
- double p,hx,tx,hy,ty,q;
+ double p, hx, tx, hy, ty, q;
#endif
mynumber u;
int4 k;
- u.x=x+big.x;
- k = u.i[LOW_HALF]<<2;
- x=x-(u.x-big.x);
- d=x+dx;
- dd=(x-d)+dx; /* cos(x+dx)=cos(Xi+t)=cos(Xi)cos(t) - sin(Xi)sin(t) */
- MUL2(d,dd,d,dd,d2,dd2,p,hx,tx,hy,ty,q,c,cc);
- sn=__sincostab.x[k]; /* */
- ssn=__sincostab.x[k+1]; /* sin(Xi) and cos(Xi) */
- cs=__sincostab.x[k+2]; /* */
- ccs=__sincostab.x[k+3]; /* */
- MUL2(d2,dd2,s7.x,ss7.x,ds,dss,p,hx,tx,hy,ty,q,c,cc);
- ADD2(ds,dss,s5.x,ss5.x,ds,dss,r,s);
- MUL2(d2,dd2,ds,dss,ds,dss,p,hx,tx,hy,ty,q,c,cc);
- ADD2(ds,dss,s3.x,ss3.x,ds,dss,r,s);
- MUL2(d2,dd2,ds,dss,ds,dss,p,hx,tx,hy,ty,q,c,cc);
- MUL2(d,dd,ds,dss,ds,dss,p,hx,tx,hy,ty,q,c,cc);
- ADD2(ds,dss,d,dd,ds,dss,r,s);
-
- MUL2(d2,dd2,c8.x,cc8.x,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
- ADD2(dc,dcc,c6.x,cc6.x,dc,dcc,r,s);
- MUL2(d2,dd2,dc,dcc,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
- ADD2(dc,dcc,c4.x,cc4.x,dc,dcc,r,s);
- MUL2(d2,dd2,dc,dcc,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
- ADD2(dc,dcc,c2.x,cc2.x,dc,dcc,r,s);
- MUL2(d2,dd2,dc,dcc,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
-
- MUL2(cs,ccs,ds,dss,e,ee,p,hx,tx,hy,ty,q,c,cc);
- MUL2(dc,dcc,sn,ssn,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
-
- MUL2(d2,dd2,s7.x,ss7.x,ds,dss,p,hx,tx,hy,ty,q,c,cc);
- ADD2(ds,dss,s5.x,ss5.x,ds,dss,r,s);
- MUL2(d2,dd2,ds,dss,ds,dss,p,hx,tx,hy,ty,q,c,cc);
- ADD2(ds,dss,s3.x,ss3.x,ds,dss,r,s);
- MUL2(d2,dd2,ds,dss,ds,dss,p,hx,tx,hy,ty,q,c,cc);
- MUL2(d,dd,ds,dss,ds,dss,p,hx,tx,hy,ty,q,c,cc);
- ADD2(ds,dss,d,dd,ds,dss,r,s);
- MUL2(d2,dd2,c8.x,cc8.x,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
- ADD2(dc,dcc,c6.x,cc6.x,dc,dcc,r,s);
- MUL2(d2,dd2,dc,dcc,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
- ADD2(dc,dcc,c4.x,cc4.x,dc,dcc,r,s);
- MUL2(d2,dd2,dc,dcc,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
- ADD2(dc,dcc,c2.x,cc2.x,dc,dcc,r,s);
- MUL2(d2,dd2,dc,dcc,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
- MUL2(sn,ssn,ds,dss,e,ee,p,hx,tx,hy,ty,q,c,cc);
- MUL2(dc,dcc,cs,ccs,dc,dcc,p,hx,tx,hy,ty,q,c,cc);
- ADD2(e,ee,dc,dcc,e,ee,r,s);
- SUB2(cs,ccs,e,ee,e,ee,r,s);
-
- v[0]=e;
- v[1]=ee;
+ u.x = x + big.x;
+ k = u.i[LOW_HALF] << 2;
+ x = x - (u.x - big.x);
+ d = x + dx;
+ dd = (x - d) + dx; /* cos(x+dx)=cos(Xi+t)=cos(Xi)cos(t) - sin(Xi)sin(t) */
+ MUL2 (d, dd, d, dd, d2, dd2, p, hx, tx, hy, ty, q, c, cc);
+ sn = __sincostab.x[k]; /* */
+ ssn = __sincostab.x[k + 1]; /* sin(Xi) and cos(Xi) */
+ cs = __sincostab.x[k + 2]; /* */
+ ccs = __sincostab.x[k + 3]; /* */
+ MUL2 (d2, dd2, s7.x, ss7.x, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (ds, dss, s5.x, ss5.x, ds, dss, r, s);
+ MUL2 (d2, dd2, ds, dss, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (ds, dss, s3.x, ss3.x, ds, dss, r, s);
+ MUL2 (d2, dd2, ds, dss, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ MUL2 (d, dd, ds, dss, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (ds, dss, d, dd, ds, dss, r, s);
+
+ MUL2 (d2, dd2, c8.x, cc8.x, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (dc, dcc, c6.x, cc6.x, dc, dcc, r, s);
+ MUL2 (d2, dd2, dc, dcc, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (dc, dcc, c4.x, cc4.x, dc, dcc, r, s);
+ MUL2 (d2, dd2, dc, dcc, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (dc, dcc, c2.x, cc2.x, dc, dcc, r, s);
+ MUL2 (d2, dd2, dc, dcc, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+
+ MUL2 (cs, ccs, ds, dss, e, ee, p, hx, tx, hy, ty, q, c, cc);
+ MUL2 (dc, dcc, sn, ssn, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+
+ MUL2 (d2, dd2, s7.x, ss7.x, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (ds, dss, s5.x, ss5.x, ds, dss, r, s);
+ MUL2 (d2, dd2, ds, dss, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (ds, dss, s3.x, ss3.x, ds, dss, r, s);
+ MUL2 (d2, dd2, ds, dss, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ MUL2 (d, dd, ds, dss, ds, dss, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (ds, dss, d, dd, ds, dss, r, s);
+ MUL2 (d2, dd2, c8.x, cc8.x, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (dc, dcc, c6.x, cc6.x, dc, dcc, r, s);
+ MUL2 (d2, dd2, dc, dcc, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (dc, dcc, c4.x, cc4.x, dc, dcc, r, s);
+ MUL2 (d2, dd2, dc, dcc, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (dc, dcc, c2.x, cc2.x, dc, dcc, r, s);
+ MUL2 (d2, dd2, dc, dcc, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ MUL2 (sn, ssn, ds, dss, e, ee, p, hx, tx, hy, ty, q, c, cc);
+ MUL2 (dc, dcc, cs, ccs, dc, dcc, p, hx, tx, hy, ty, q, c, cc);
+ ADD2 (e, ee, dc, dcc, e, ee, r, s);
+ SUB2 (cs, ccs, e, ee, e, ee, r, s);
+
+ v[0] = e;
+ v[1] = ee;
}
/**********************************************************************/
/* Routine receive Double-Length number (x+dx) and computes cos(x+dx) */
@@ -175,29 +179,45 @@ __dubcos(double x, double dx, double v[]) {
/**********************************************************************/
void
SECTION
-__docos(double x, double dx, double v[]) {
- double y,yy,p,w[2];
- if (x>0) {y=x; yy=dx;}
- else {y=-x; yy=-dx;}
- if (y<0.5*hp0.x) /* y< PI/4 */
- {__dubcos(y,yy,w); v[0]=w[0]; v[1]=w[1];}
- else if (y<1.5*hp0.x) { /* y< 3/4 * PI */
- p=hp0.x-y; /* p = PI/2 - y */
- yy=hp1.x-yy;
- y=p+yy;
- yy=(p-y)+yy;
- if (y>0) {__dubsin(y,yy,w); v[0]=w[0]; v[1]=w[1];}
- /* cos(x) = sin ( 90 - x ) */
- else {__dubsin(-y,-yy,w); v[0]=-w[0]; v[1]=-w[1];
- }
- }
- else { /* y>= 3/4 * PI */
- p=2.0*hp0.x-y; /* p = PI- y */
- yy=2.0*hp1.x-yy;
- y=p+yy;
- yy=(p-y)+yy;
- __dubcos(y,yy,w);
- v[0]=-w[0];
- v[1]=-w[1];
- }
+__docos (double x, double dx, double v[])
+{
+ double y, yy, p, w[2];
+ if (x > 0)
+ {
+ y = x; yy = dx;
+ }
+ else
+ {
+ y = -x; yy = -dx;
+ }
+ if (y < 0.5 * hp0.x) /* y< PI/4 */
+ {
+ __dubcos (y, yy, w); v[0] = w[0]; v[1] = w[1];
+ }
+ else if (y < 1.5 * hp0.x) /* y< 3/4 * PI */
+ {
+ p = hp0.x - y; /* p = PI/2 - y */
+ yy = hp1.x - yy;
+ y = p + yy;
+ yy = (p - y) + yy;
+ if (y > 0)
+ {
+ __dubsin (y, yy, w); v[0] = w[0]; v[1] = w[1];
+ }
+ /* cos(x) = sin ( 90 - x ) */
+ else
+ {
+ __dubsin (-y, -yy, w); v[0] = -w[0]; v[1] = -w[1];
+ }
+ }
+ else /* y>= 3/4 * PI */
+ {
+ p = 2.0 * hp0.x - y; /* p = PI- y */
+ yy = 2.0 * hp1.x - yy;
+ y = p + yy;
+ yy = (p - y) + yy;
+ __dubcos (y, yy, w);
+ v[0] = -w[0];
+ v[1] = -w[1];
+ }
}
diff --git a/sysdeps/ieee754/dbl-64/e_acosh.c b/sysdeps/ieee754/dbl-64/e_acosh.c
index b24a6f6459..c1f3590f75 100644
--- a/sysdeps/ieee754/dbl-64/e_acosh.c
+++ b/sysdeps/ieee754/dbl-64/e_acosh.c
@@ -28,31 +28,42 @@
#include <math_private.h>
static const double
-one = 1.0,
-ln2 = 6.93147180559945286227e-01; /* 0x3FE62E42, 0xFEFA39EF */
+ one = 1.0,
+ ln2 = 6.93147180559945286227e-01; /* 0x3FE62E42, 0xFEFA39EF */
double
-__ieee754_acosh(double x)
+__ieee754_acosh (double x)
{
- double t;
- int32_t hx;
- u_int32_t lx;
- EXTRACT_WORDS(hx,lx,x);
- if(hx<0x3ff00000) { /* x < 1 */
- return (x-x)/(x-x);
- } else if(hx >=0x41b00000) { /* x > 2**28 */
- if(hx >=0x7ff00000) { /* x is inf of NaN */
- return x+x;
- } else
- return __ieee754_log(x)+ln2; /* acosh(huge)=log(2x) */
- } else if(((hx-0x3ff00000)|lx)==0) {
- return 0.0; /* acosh(1) = 0 */
- } else if (hx > 0x40000000) { /* 2**28 > x > 2 */
- t=x*x;
- return __ieee754_log(2.0*x-one/(x+__ieee754_sqrt(t-one)));
- } else { /* 1<x<2 */
- t = x-one;
- return __log1p(t+__ieee754_sqrt(2.0*t+t*t));
+ double t;
+ int32_t hx;
+ u_int32_t lx;
+ EXTRACT_WORDS (hx, lx, x);
+ if (hx < 0x3ff00000) /* x < 1 */
+ {
+ return (x - x) / (x - x);
+ }
+ else if (hx >= 0x41b00000) /* x > 2**28 */
+ {
+ if (hx >= 0x7ff00000) /* x is inf of NaN */
+ {
+ return x + x;
}
+ else
+ return __ieee754_log (x) + ln2; /* acosh(huge)=log(2x) */
+ }
+ else if (((hx - 0x3ff00000) | lx) == 0)
+ {
+ return 0.0; /* acosh(1) = 0 */
+ }
+ else if (hx > 0x40000000) /* 2**28 > x > 2 */
+ {
+ t = x * x;
+ return __ieee754_log (2.0 * x - one / (x + __ieee754_sqrt (t - one)));
+ }
+ else /* 1<x<2 */
+ {
+ t = x - one;
+ return __log1p (t + __ieee754_sqrt (2.0 * t + t * t));
+ }
}
strong_alias (__ieee754_acosh, __acosh_finite)
diff --git a/sysdeps/ieee754/dbl-64/e_atan2.c b/sysdeps/ieee754/dbl-64/e_atan2.c
index 4ebe9c01f9..e36305cda7 100644
--- a/sysdeps/ieee754/dbl-64/e_atan2.c
+++ b/sysdeps/ieee754/dbl-64/e_atan2.c
@@ -42,6 +42,7 @@
#include "uatan.tbl"
#include "atnat2.h"
#include <math_private.h>
+#include <stap-probe.h>
#ifndef SECTION
# define SECTION
@@ -71,14 +72,14 @@ __ieee754_atan2 (double y, double x)
int i, de, ux, dx, uy, dy;
static const int pr[MM] = { 6, 8, 10, 20, 32 };
double ax, ay, u, du, u9, ua, v, vv, dv, t1, t2, t3, t7, t8,
- z, zz, cor, s1, ss1, s2, ss2;
+ z, zz, cor, s1, ss1, s2, ss2;
#ifndef DLA_FMS
double t4, t5, t6;
#endif
number num;
- static const int ep = 59768832, /* 57*16**5 */
- em = -59768832; /* -57*16**5 */
+ static const int ep = 59768832, /* 57*16**5 */
+ em = -59768832; /* -57*16**5 */
/* x=NaN or y=NaN */
num.d = x;
@@ -293,17 +294,17 @@ __ieee754_atan2 (double y, double x)
if (i < 112)
{
if (i < 48)
- u9 = u91.d; /* u < 1/4 */
+ u9 = u91.d; /* u < 1/4 */
else
u9 = u92.d;
- } /* 1/4 <= u < 1/2 */
+ } /* 1/4 <= u < 1/2 */
else
{
if (i < 176)
- u9 = u93.d; /* 1/2 <= u < 3/4 */
+ u9 = u93.d; /* 1/2 <= u < 3/4 */
else
u9 = u94.d;
- } /* 3/4 <= u <= 1 */
+ } /* 3/4 <= u <= 1 */
if ((z = t1 + (zz - u9 * t1)) == t1 + (zz + u9 * t1))
return signArctan2 (y, z);
@@ -311,9 +312,9 @@ __ieee754_atan2 (double y, double x)
EADD (t1, du, v, vv);
s1 = v * (hij[i][11].d
+ v * (hij[i][12].d
- + v * (hij[i][13].d
- + v * (hij[i][14].d
- + v * hij[i][15].d))));
+ + v * (hij[i][13].d
+ + v * (hij[i][14].d
+ + v * hij[i][15].d))));
ADD2 (hij[i][9].d, hij[i][10].d, s1, 0, s2, ss2, t1, t2);
MUL2 (v, vv, s2, ss2, s1, ss1, t1, t2, t3, t4, t5, t6, t7, t8);
ADD2 (hij[i][7].d, hij[i][8].d, s1, ss1, s2, ss2, t1, t2);
@@ -597,7 +598,11 @@ atan2Mp (double x, double y, const int pr[])
__mp_dbl (&mpz1, &z1, p);
__mp_dbl (&mpz2, &z2, p);
if (z1 == z2)
- return z1;
+ {
+ LIBC_PROBE (slowatan2, 4, &p, &x, &y, &z1);
+ return z1;
+ }
}
+ LIBC_PROBE (slowatan2_inexact, 4, &p, &x, &y, &z1);
return z1; /*if impossible to do exact computing */
}
diff --git a/sysdeps/ieee754/dbl-64/e_cosh.c b/sysdeps/ieee754/dbl-64/e_cosh.c
index 229d5a2fb3..6caf943ed0 100644
--- a/sysdeps/ieee754/dbl-64/e_cosh.c
+++ b/sysdeps/ieee754/dbl-64/e_cosh.c
@@ -34,49 +34,55 @@
#include <math.h>
#include <math_private.h>
-static const double one = 1.0, half=0.5, huge = 1.0e300;
+static const double one = 1.0, half = 0.5, huge = 1.0e300;
double
__ieee754_cosh (double x)
{
- double t,w;
- int32_t ix;
- u_int32_t lx;
+ double t, w;
+ int32_t ix;
+ u_int32_t lx;
- /* High word of |x|. */
- GET_HIGH_WORD(ix,x);
- ix &= 0x7fffffff;
+ /* High word of |x|. */
+ GET_HIGH_WORD (ix, x);
+ ix &= 0x7fffffff;
- /* |x| in [0,22] */
- if (ix < 0x40360000) {
- /* |x| in [0,0.5*ln2], return 1+expm1(|x|)^2/(2*exp(|x|)) */
- if(ix<0x3fd62e43) {
- t = __expm1(fabs(x));
- w = one+t;
- if (ix<0x3c800000) return w; /* cosh(tiny) = 1 */
- return one+(t*t)/(w+w);
- }
-
- /* |x| in [0.5*ln2,22], return (exp(|x|)+1/exp(|x|)/2; */
- t = __ieee754_exp(fabs(x));
- return half*t+half/t;
+ /* |x| in [0,22] */
+ if (ix < 0x40360000)
+ {
+ /* |x| in [0,0.5*ln2], return 1+expm1(|x|)^2/(2*exp(|x|)) */
+ if (ix < 0x3fd62e43)
+ {
+ t = __expm1 (fabs (x));
+ w = one + t;
+ if (ix < 0x3c800000)
+ return w; /* cosh(tiny) = 1 */
+ return one + (t * t) / (w + w);
}
- /* |x| in [22, log(maxdouble)] return half*exp(|x|) */
- if (ix < 0x40862e42) return half*__ieee754_exp(fabs(x));
+ /* |x| in [0.5*ln2,22], return (exp(|x|)+1/exp(|x|)/2; */
+ t = __ieee754_exp (fabs (x));
+ return half * t + half / t;
+ }
- /* |x| in [log(maxdouble), overflowthresold] */
- GET_LOW_WORD(lx,x);
- if (ix<0x408633ce || ((ix==0x408633ce)&&(lx<=(u_int32_t)0x8fb9f87d))) {
- w = __ieee754_exp(half*fabs(x));
- t = half*w;
- return t*w;
- }
+ /* |x| in [22, log(maxdouble)] return half*exp(|x|) */
+ if (ix < 0x40862e42)
+ return half * __ieee754_exp (fabs (x));
+
+ /* |x| in [log(maxdouble), overflowthresold] */
+ GET_LOW_WORD (lx, x);
+ if (ix < 0x408633ce || ((ix == 0x408633ce) && (lx <= (u_int32_t) 0x8fb9f87d)))
+ {
+ w = __ieee754_exp (half * fabs (x));
+ t = half * w;
+ return t * w;
+ }
- /* x is INF or NaN */
- if(ix>=0x7ff00000) return x*x;
+ /* x is INF or NaN */
+ if (ix >= 0x7ff00000)
+ return x * x;
- /* |x| > overflowthresold, cosh(x) overflow */
- return huge*huge;
+ /* |x| > overflowthresold, cosh(x) overflow */
+ return huge * huge;
}
strong_alias (__ieee754_cosh, __cosh_finite)
diff --git a/sysdeps/ieee754/dbl-64/e_exp.c b/sysdeps/ieee754/dbl-64/e_exp.c
index 07cc4a91b6..9d35e6d66c 100644
--- a/sysdeps/ieee754/dbl-64/e_exp.c
+++ b/sysdeps/ieee754/dbl-64/e_exp.c
@@ -39,226 +39,315 @@
#include "uexp.tbl"
#include <math_private.h>
#include <fenv.h>
+#include <float.h>
#ifndef SECTION
# define SECTION
#endif
-double __slowexp(double);
+double __slowexp (double);
-/***************************************************************************/
-/* An ultimate exp routine. Given an IEEE double machine number x */
-/* it computes the correctly rounded (to nearest) value of e^x */
-/***************************************************************************/
+/* An ultimate exp routine. Given an IEEE double machine number x it computes
+ the correctly rounded (to nearest) value of e^x. */
double
SECTION
-__ieee754_exp(double x) {
+__ieee754_exp (double x)
+{
double bexp, t, eps, del, base, y, al, bet, res, rem, cor;
- mynumber junk1, junk2, binexp = {{0,0}};
- int4 i,j,m,n,ex;
+ mynumber junk1, junk2, binexp = {{0, 0}};
+ int4 i, j, m, n, ex;
double retval;
SET_RESTORE_ROUND (FE_TONEAREST);
junk1.x = x;
m = junk1.i[HIGH_HALF];
- n = m&hugeint;
-
- if (n > smallint && n < bigint) {
-
- y = x*log2e.x + three51.x;
- bexp = y - three51.x; /* multiply the result by 2**bexp */
-
- junk1.x = y;
-
- eps = bexp*ln_two2.x; /* x = bexp*ln(2) + t - eps */
- t = x - bexp*ln_two1.x;
-
- y = t + three33.x;
- base = y - three33.x; /* t rounded to a multiple of 2**-18 */
- junk2.x = y;
- del = (t - base) - eps; /* x = bexp*ln(2) + base + del */
- eps = del + del*del*(p3.x*del + p2.x);
-
- binexp.i[HIGH_HALF] =(junk1.i[LOW_HALF]+1023)<<20;
-
- i = ((junk2.i[LOW_HALF]>>8)&0xfffffffe)+356;
- j = (junk2.i[LOW_HALF]&511)<<1;
-
- al = coar.x[i]*fine.x[j];
- bet =(coar.x[i]*fine.x[j+1] + coar.x[i+1]*fine.x[j]) + coar.x[i+1]*fine.x[j+1];
-
- rem=(bet + bet*eps)+al*eps;
- res = al + rem;
- cor = (al - res) + rem;
- if (res == (res+cor*err_0)) { retval = res*binexp.x; goto ret; }
- else { retval = __slowexp(x); goto ret; } /*if error is over bound */
- }
+ n = m & hugeint;
+
+ if (n > smallint && n < bigint)
+ {
+ y = x * log2e.x + three51.x;
+ bexp = y - three51.x; /* multiply the result by 2**bexp */
+
+ junk1.x = y;
+
+ eps = bexp * ln_two2.x; /* x = bexp*ln(2) + t - eps */
+ t = x - bexp * ln_two1.x;
+
+ y = t + three33.x;
+ base = y - three33.x; /* t rounded to a multiple of 2**-18 */
+ junk2.x = y;
+ del = (t - base) - eps; /* x = bexp*ln(2) + base + del */
+ eps = del + del * del * (p3.x * del + p2.x);
+
+ binexp.i[HIGH_HALF] = (junk1.i[LOW_HALF] + 1023) << 20;
+
+ i = ((junk2.i[LOW_HALF] >> 8) & 0xfffffffe) + 356;
+ j = (junk2.i[LOW_HALF] & 511) << 1;
+
+ al = coar.x[i] * fine.x[j];
+ bet = ((coar.x[i] * fine.x[j + 1] + coar.x[i + 1] * fine.x[j])
+ + coar.x[i + 1] * fine.x[j + 1]);
+
+ rem = (bet + bet * eps) + al * eps;
+ res = al + rem;
+ cor = (al - res) + rem;
+ if (res == (res + cor * err_0))
+ {
+ retval = res * binexp.x;
+ goto ret;
+ }
+ else
+ {
+ retval = __slowexp (x);
+ goto ret;
+ } /*if error is over bound */
+ }
- if (n <= smallint) { retval = 1.0; goto ret; }
+ if (n <= smallint)
+ {
+ retval = 1.0;
+ goto ret;
+ }
- if (n >= badint) {
- if (n > infint) { retval = x+x; goto ret; } /* x is NaN */
- if (n < infint) { retval = (x>0) ? (hhuge*hhuge) : (tiny*tiny); goto ret; }
- /* x is finite, cause either overflow or underflow */
- if (junk1.i[LOW_HALF] != 0) { retval = x+x; goto ret; } /* x is NaN */
- retval = (x>0)?inf.x:zero; /* |x| = inf; return either inf or 0 */
- goto ret;
- }
+ if (n >= badint)
+ {
+ if (n > infint)
+ {
+ retval = x + x;
+ goto ret;
+ } /* x is NaN */
+ if (n < infint)
+ {
+ retval = (x > 0) ? (hhuge * hhuge) : (tiny * tiny);
+ goto ret;
+ }
+ /* x is finite, cause either overflow or underflow */
+ if (junk1.i[LOW_HALF] != 0)
+ {
+ retval = x + x;
+ goto ret;
+ } /* x is NaN */
+ retval = (x > 0) ? inf.x : zero; /* |x| = inf; return either inf or 0 */
+ goto ret;
+ }
- y = x*log2e.x + three51.x;
+ y = x * log2e.x + three51.x;
bexp = y - three51.x;
junk1.x = y;
- eps = bexp*ln_two2.x;
- t = x - bexp*ln_two1.x;
+ eps = bexp * ln_two2.x;
+ t = x - bexp * ln_two1.x;
y = t + three33.x;
base = y - three33.x;
junk2.x = y;
del = (t - base) - eps;
- eps = del + del*del*(p3.x*del + p2.x);
- i = ((junk2.i[LOW_HALF]>>8)&0xfffffffe)+356;
- j = (junk2.i[LOW_HALF]&511)<<1;
- al = coar.x[i]*fine.x[j];
- bet =(coar.x[i]*fine.x[j+1] + coar.x[i+1]*fine.x[j]) + coar.x[i+1]*fine.x[j+1];
- rem=(bet + bet*eps)+al*eps;
+ eps = del + del * del * (p3.x * del + p2.x);
+ i = ((junk2.i[LOW_HALF] >> 8) & 0xfffffffe) + 356;
+ j = (junk2.i[LOW_HALF] & 511) << 1;
+ al = coar.x[i] * fine.x[j];
+ bet = ((coar.x[i] * fine.x[j + 1] + coar.x[i + 1] * fine.x[j])
+ + coar.x[i + 1] * fine.x[j + 1]);
+ rem = (bet + bet * eps) + al * eps;
res = al + rem;
cor = (al - res) + rem;
- if (m>>31) {
- ex=junk1.i[LOW_HALF];
- if (res < 1.0) {res+=res; cor+=cor; ex-=1;}
- if (ex >=-1022) {
- binexp.i[HIGH_HALF] = (1023+ex)<<20;
- if (res == (res+cor*err_0)) { retval = res*binexp.x; goto ret; }
- else { retval = __slowexp(x); goto ret; } /*if error is over bound */
- }
- ex = -(1022+ex);
- binexp.i[HIGH_HALF] = (1023-ex)<<20;
- res*=binexp.x;
- cor*=binexp.x;
- eps=1.0000000001+err_0*binexp.x;
- t=1.0+res;
- y = ((1.0-t)+res)+cor;
- res=t+y;
- cor = (t-res)+y;
- if (res == (res + eps*cor))
- { binexp.i[HIGH_HALF] = 0x00100000;
- retval = (res-1.0)*binexp.x;
+ if (m >> 31)
+ {
+ ex = junk1.i[LOW_HALF];
+ if (res < 1.0)
+ {
+ res += res;
+ cor += cor;
+ ex -= 1;
+ }
+ if (ex >= -1022)
+ {
+ binexp.i[HIGH_HALF] = (1023 + ex) << 20;
+ if (res == (res + cor * err_0))
+ {
+ retval = res * binexp.x;
+ goto ret;
+ }
+ else
+ {
+ retval = __slowexp (x);
+ goto check_uflow_ret;
+ } /*if error is over bound */
+ }
+ ex = -(1022 + ex);
+ binexp.i[HIGH_HALF] = (1023 - ex) << 20;
+ res *= binexp.x;
+ cor *= binexp.x;
+ eps = 1.0000000001 + err_0 * binexp.x;
+ t = 1.0 + res;
+ y = ((1.0 - t) + res) + cor;
+ res = t + y;
+ cor = (t - res) + y;
+ if (res == (res + eps * cor))
+ {
+ binexp.i[HIGH_HALF] = 0x00100000;
+ retval = (res - 1.0) * binexp.x;
+ goto check_uflow_ret;
+ }
+ else
+ {
+ retval = __slowexp (x);
+ goto check_uflow_ret;
+ } /* if error is over bound */
+ check_uflow_ret:
+ if (retval < DBL_MIN)
+ {
+#if FLT_EVAL_METHOD != 0
+ volatile
+#endif
+ double force_underflow = tiny * tiny;
+ math_force_eval (force_underflow);
+ }
goto ret;
}
- else { retval = __slowexp(x); goto ret; } /* if error is over bound */
- }
- else {
- binexp.i[HIGH_HALF] =(junk1.i[LOW_HALF]+767)<<20;
- if (res == (res+cor*err_0)) { retval = res*binexp.x*t256.x; goto ret; }
- else { retval = __slowexp(x); goto ret; }
- }
- ret:
+ else
+ {
+ binexp.i[HIGH_HALF] = (junk1.i[LOW_HALF] + 767) << 20;
+ if (res == (res + cor * err_0))
+ {
+ retval = res * binexp.x * t256.x;
+ goto ret;
+ }
+ else
+ {
+ retval = __slowexp (x);
+ goto ret;
+ }
+ }
+ret:
return retval;
}
#ifndef __ieee754_exp
strong_alias (__ieee754_exp, __exp_finite)
#endif
-/************************************************************************/
-/* Compute e^(x+xx)(Double-Length number) .The routine also receive */
-/* bound of error of previous calculation .If after computing exp */
-/* error bigger than allows routine return non positive number */
-/*else return e^(x + xx) (always positive ) */
-/************************************************************************/
-
+/* Compute e^(x+xx). The routine also receives bound of error of previous
+ calculation. If after computing exp the error exceeds the allowed bounds,
+ the routine returns a non-positive number. Otherwise it returns the
+ computed result, which is always positive. */
double
SECTION
-__exp1(double x, double xx, double error) {
+__exp1 (double x, double xx, double error)
+{
double bexp, t, eps, del, base, y, al, bet, res, rem, cor;
- mynumber junk1, junk2, binexp = {{0,0}};
- int4 i,j,m,n,ex;
+ mynumber junk1, junk2, binexp = {{0, 0}};
+ int4 i, j, m, n, ex;
junk1.x = x;
m = junk1.i[HIGH_HALF];
- n = m&hugeint; /* no sign */
-
- if (n > smallint && n < bigint) {
- y = x*log2e.x + three51.x;
- bexp = y - three51.x; /* multiply the result by 2**bexp */
+ n = m & hugeint; /* no sign */
- junk1.x = y;
+ if (n > smallint && n < bigint)
+ {
+ y = x * log2e.x + three51.x;
+ bexp = y - three51.x; /* multiply the result by 2**bexp */
- eps = bexp*ln_two2.x; /* x = bexp*ln(2) + t - eps */
- t = x - bexp*ln_two1.x;
+ junk1.x = y;
- y = t + three33.x;
- base = y - three33.x; /* t rounded to a multiple of 2**-18 */
- junk2.x = y;
- del = (t - base) + (xx-eps); /* x = bexp*ln(2) + base + del */
- eps = del + del*del*(p3.x*del + p2.x);
+ eps = bexp * ln_two2.x; /* x = bexp*ln(2) + t - eps */
+ t = x - bexp * ln_two1.x;
- binexp.i[HIGH_HALF] =(junk1.i[LOW_HALF]+1023)<<20;
+ y = t + three33.x;
+ base = y - three33.x; /* t rounded to a multiple of 2**-18 */
+ junk2.x = y;
+ del = (t - base) + (xx - eps); /* x = bexp*ln(2) + base + del */
+ eps = del + del * del * (p3.x * del + p2.x);
- i = ((junk2.i[LOW_HALF]>>8)&0xfffffffe)+356;
- j = (junk2.i[LOW_HALF]&511)<<1;
+ binexp.i[HIGH_HALF] = (junk1.i[LOW_HALF] + 1023) << 20;
- al = coar.x[i]*fine.x[j];
- bet =(coar.x[i]*fine.x[j+1] + coar.x[i+1]*fine.x[j]) + coar.x[i+1]*fine.x[j+1];
+ i = ((junk2.i[LOW_HALF] >> 8) & 0xfffffffe) + 356;
+ j = (junk2.i[LOW_HALF] & 511) << 1;
- rem=(bet + bet*eps)+al*eps;
- res = al + rem;
- cor = (al - res) + rem;
- if (res == (res+cor*(1.0+error+err_1))) return res*binexp.x;
- else return -10.0;
- }
+ al = coar.x[i] * fine.x[j];
+ bet = ((coar.x[i] * fine.x[j + 1] + coar.x[i + 1] * fine.x[j])
+ + coar.x[i + 1] * fine.x[j + 1]);
- if (n <= smallint) return 1.0; /* if x->0 e^x=1 */
+ rem = (bet + bet * eps) + al * eps;
+ res = al + rem;
+ cor = (al - res) + rem;
+ if (res == (res + cor * (1.0 + error + err_1)))
+ return res * binexp.x;
+ else
+ return -10.0;
+ }
- if (n >= badint) {
- if (n > infint) return(zero/zero); /* x is NaN, return invalid */
- if (n < infint) return ( (x>0) ? (hhuge*hhuge) : (tiny*tiny) );
- /* x is finite, cause either overflow or underflow */
- if (junk1.i[LOW_HALF] != 0) return (zero/zero); /* x is NaN */
- return ((x>0)?inf.x:zero ); /* |x| = inf; return either inf or 0 */
- }
+ if (n <= smallint)
+ return 1.0; /* if x->0 e^x=1 */
+
+ if (n >= badint)
+ {
+ if (n > infint)
+ return (zero / zero); /* x is NaN, return invalid */
+ if (n < infint)
+ return ((x > 0) ? (hhuge * hhuge) : (tiny * tiny));
+ /* x is finite, cause either overflow or underflow */
+ if (junk1.i[LOW_HALF] != 0)
+ return (zero / zero); /* x is NaN */
+ return ((x > 0) ? inf.x : zero); /* |x| = inf; return either inf or 0 */
+ }
- y = x*log2e.x + three51.x;
+ y = x * log2e.x + three51.x;
bexp = y - three51.x;
junk1.x = y;
- eps = bexp*ln_two2.x;
- t = x - bexp*ln_two1.x;
+ eps = bexp * ln_two2.x;
+ t = x - bexp * ln_two1.x;
y = t + three33.x;
base = y - three33.x;
junk2.x = y;
- del = (t - base) + (xx-eps);
- eps = del + del*del*(p3.x*del + p2.x);
- i = ((junk2.i[LOW_HALF]>>8)&0xfffffffe)+356;
- j = (junk2.i[LOW_HALF]&511)<<1;
- al = coar.x[i]*fine.x[j];
- bet =(coar.x[i]*fine.x[j+1] + coar.x[i+1]*fine.x[j]) + coar.x[i+1]*fine.x[j+1];
- rem=(bet + bet*eps)+al*eps;
+ del = (t - base) + (xx - eps);
+ eps = del + del * del * (p3.x * del + p2.x);
+ i = ((junk2.i[LOW_HALF] >> 8) & 0xfffffffe) + 356;
+ j = (junk2.i[LOW_HALF] & 511) << 1;
+ al = coar.x[i] * fine.x[j];
+ bet = ((coar.x[i] * fine.x[j + 1] + coar.x[i + 1] * fine.x[j])
+ + coar.x[i + 1] * fine.x[j + 1]);
+ rem = (bet + bet * eps) + al * eps;
res = al + rem;
cor = (al - res) + rem;
- if (m>>31) {
- ex=junk1.i[LOW_HALF];
- if (res < 1.0) {res+=res; cor+=cor; ex-=1;}
- if (ex >=-1022) {
- binexp.i[HIGH_HALF] = (1023+ex)<<20;
- if (res == (res+cor*(1.0+error+err_1))) return res*binexp.x;
- else return -10.0;
+ if (m >> 31)
+ {
+ ex = junk1.i[LOW_HALF];
+ if (res < 1.0)
+ {
+ res += res;
+ cor += cor;
+ ex -= 1;
+ }
+ if (ex >= -1022)
+ {
+ binexp.i[HIGH_HALF] = (1023 + ex) << 20;
+ if (res == (res + cor * (1.0 + error + err_1)))
+ return res * binexp.x;
+ else
+ return -10.0;
+ }
+ ex = -(1022 + ex);
+ binexp.i[HIGH_HALF] = (1023 - ex) << 20;
+ res *= binexp.x;
+ cor *= binexp.x;
+ eps = 1.00000000001 + (error + err_1) * binexp.x;
+ t = 1.0 + res;
+ y = ((1.0 - t) + res) + cor;
+ res = t + y;
+ cor = (t - res) + y;
+ if (res == (res + eps * cor))
+ {
+ binexp.i[HIGH_HALF] = 0x00100000;
+ return (res - 1.0) * binexp.x;
+ }
+ else
+ return -10.0;
+ }
+ else
+ {
+ binexp.i[HIGH_HALF] = (junk1.i[LOW_HALF] + 767) << 20;
+ if (res == (res + cor * (1.0 + error + err_1)))
+ return res * binexp.x * t256.x;
+ else
+ return -10.0;
}
- ex = -(1022+ex);
- binexp.i[HIGH_HALF] = (1023-ex)<<20;
- res*=binexp.x;
- cor*=binexp.x;
- eps=1.00000000001+(error+err_1)*binexp.x;
- t=1.0+res;
- y = ((1.0-t)+res)+cor;
- res=t+y;
- cor = (t-res)+y;
- if (res == (res + eps*cor))
- {binexp.i[HIGH_HALF] = 0x00100000; return (res-1.0)*binexp.x;}
- else return -10.0;
- }
- else {
- binexp.i[HIGH_HALF] =(junk1.i[LOW_HALF]+767)<<20;
- if (res == (res+cor*(1.0+error+err_1)))
- return res*binexp.x*t256.x;
- else return -10.0;
- }
}
diff --git a/sysdeps/ieee754/dbl-64/e_exp2.c b/sysdeps/ieee754/dbl-64/e_exp2.c
index 96ec735e3f..e1ba940e6c 100644
--- a/sysdeps/ieee754/dbl-64/e_exp2.c
+++ b/sysdeps/ieee754/dbl-64/e_exp2.c
@@ -46,7 +46,7 @@ __ieee754_exp2 (double x)
if (__builtin_expect (isless (x, himark), 1))
{
/* Exceptional cases: */
- if (__builtin_expect (! isgreaterequal (x, lomark), 0))
+ if (__builtin_expect (!isgreaterequal (x, lomark), 0))
{
if (__isinf (x))
/* e^-inf == 0, with no error. */
@@ -93,7 +93,7 @@ __ieee754_exp2 (double x)
/* 3. Compute ex2 = 2^(t/512+e+ex). */
ex2_u.d = exp2_accuratetable[tval & 511];
tval >>= 9;
- unsafe = abs(tval) >= -DBL_MIN_EXP - 1;
+ unsafe = abs (tval) >= -DBL_MIN_EXP - 1;
ex2_u.ieee.exponent += tval >> unsafe;
scale_u.d = 1.0;
scale_u.ieee.exponent += tval - (tval >> unsafe);
@@ -106,7 +106,7 @@ __ieee754_exp2 (double x)
* x + .055504110254308625)
* x + .240226506959100583)
* x + .69314718055994495) * ex2_u.d;
- math_opt_barrier (x22);
+ math_opt_barrier (x22);
}
/* 5. Return (2^x2-1) * 2^(t/512+e+ex) + 2^(t/512+e+ex). */
@@ -119,6 +119,6 @@ __ieee754_exp2 (double x)
}
else
/* Return x, if x is a NaN or Inf; or overflow, otherwise. */
- return TWO1023*x;
+ return TWO1023 * x;
}
strong_alias (__ieee754_exp2, __exp2_finite)
diff --git a/sysdeps/ieee754/dbl-64/e_fmod.c b/sysdeps/ieee754/dbl-64/e_fmod.c
index b8548fae4b..c83c2aedb2 100644
--- a/sysdeps/ieee754/dbl-64/e_fmod.c
+++ b/sysdeps/ieee754/dbl-64/e_fmod.c
@@ -18,111 +18,156 @@
#include <math.h>
#include <math_private.h>
-static const double one = 1.0, Zero[] = {0.0, -0.0,};
+static const double one = 1.0, Zero[] = { 0.0, -0.0, };
double
__ieee754_fmod (double x, double y)
{
- int32_t n,hx,hy,hz,ix,iy,sx,i;
- u_int32_t lx,ly,lz;
+ int32_t n, hx, hy, hz, ix, iy, sx, i;
+ u_int32_t lx, ly, lz;
- EXTRACT_WORDS(hx,lx,x);
- EXTRACT_WORDS(hy,ly,y);
- sx = hx&0x80000000; /* sign of x */
- hx ^=sx; /* |x| */
- hy &= 0x7fffffff; /* |y| */
+ EXTRACT_WORDS (hx, lx, x);
+ EXTRACT_WORDS (hy, ly, y);
+ sx = hx & 0x80000000; /* sign of x */
+ hx ^= sx; /* |x| */
+ hy &= 0x7fffffff; /* |y| */
- /* purge off exception values */
- if((hy|ly)==0||(hx>=0x7ff00000)|| /* y=0,or x not finite */
- ((hy|((ly|-ly)>>31))>0x7ff00000)) /* or y is NaN */
- return (x*y)/(x*y);
- if(hx<=hy) {
- if((hx<hy)||(lx<ly)) return x; /* |x|<|y| return x */
- if(lx==ly)
- return Zero[(u_int32_t)sx>>31]; /* |x|=|y| return x*0*/
- }
+ /* purge off exception values */
+ if ((hy | ly) == 0 || (hx >= 0x7ff00000) || /* y=0,or x not finite */
+ ((hy | ((ly | -ly) >> 31)) > 0x7ff00000)) /* or y is NaN */
+ return (x * y) / (x * y);
+ if (hx <= hy)
+ {
+ if ((hx < hy) || (lx < ly))
+ return x; /* |x|<|y| return x */
+ if (lx == ly)
+ return Zero[(u_int32_t) sx >> 31]; /* |x|=|y| return x*0*/
+ }
- /* determine ix = ilogb(x) */
- if(__builtin_expect(hx<0x00100000, 0)) { /* subnormal x */
- if(hx==0) {
- for (ix = -1043, i=lx; i>0; i<<=1) ix -=1;
- } else {
- for (ix = -1022,i=(hx<<11); i>0; i<<=1) ix -=1;
- }
- } else ix = (hx>>20)-1023;
+ /* determine ix = ilogb(x) */
+ if (__builtin_expect (hx < 0x00100000, 0)) /* subnormal x */
+ {
+ if (hx == 0)
+ {
+ for (ix = -1043, i = lx; i > 0; i <<= 1)
+ ix -= 1;
+ }
+ else
+ {
+ for (ix = -1022, i = (hx << 11); i > 0; i <<= 1)
+ ix -= 1;
+ }
+ }
+ else
+ ix = (hx >> 20) - 1023;
- /* determine iy = ilogb(y) */
- if(__builtin_expect(hy<0x00100000, 0)) { /* subnormal y */
- if(hy==0) {
- for (iy = -1043, i=ly; i>0; i<<=1) iy -=1;
- } else {
- for (iy = -1022,i=(hy<<11); i>0; i<<=1) iy -=1;
- }
- } else iy = (hy>>20)-1023;
+ /* determine iy = ilogb(y) */
+ if (__builtin_expect (hy < 0x00100000, 0)) /* subnormal y */
+ {
+ if (hy == 0)
+ {
+ for (iy = -1043, i = ly; i > 0; i <<= 1)
+ iy -= 1;
+ }
+ else
+ {
+ for (iy = -1022, i = (hy << 11); i > 0; i <<= 1)
+ iy -= 1;
+ }
+ }
+ else
+ iy = (hy >> 20) - 1023;
- /* set up {hx,lx}, {hy,ly} and align y to x */
- if(__builtin_expect(ix >= -1022, 1))
- hx = 0x00100000|(0x000fffff&hx);
- else { /* subnormal x, shift x to normal */
- n = -1022-ix;
- if(n<=31) {
- hx = (hx<<n)|(lx>>(32-n));
- lx <<= n;
- } else {
- hx = lx<<(n-32);
- lx = 0;
- }
+ /* set up {hx,lx}, {hy,ly} and align y to x */
+ if (__builtin_expect (ix >= -1022, 1))
+ hx = 0x00100000 | (0x000fffff & hx);
+ else /* subnormal x, shift x to normal */
+ {
+ n = -1022 - ix;
+ if (n <= 31)
+ {
+ hx = (hx << n) | (lx >> (32 - n));
+ lx <<= n;
+ }
+ else
+ {
+ hx = lx << (n - 32);
+ lx = 0;
+ }
+ }
+ if (__builtin_expect (iy >= -1022, 1))
+ hy = 0x00100000 | (0x000fffff & hy);
+ else /* subnormal y, shift y to normal */
+ {
+ n = -1022 - iy;
+ if (n <= 31)
+ {
+ hy = (hy << n) | (ly >> (32 - n));
+ ly <<= n;
}
- if(__builtin_expect(iy >= -1022, 1))
- hy = 0x00100000|(0x000fffff&hy);
- else { /* subnormal y, shift y to normal */
- n = -1022-iy;
- if(n<=31) {
- hy = (hy<<n)|(ly>>(32-n));
- ly <<= n;
- } else {
- hy = ly<<(n-32);
- ly = 0;
- }
+ else
+ {
+ hy = ly << (n - 32);
+ ly = 0;
}
+ }
- /* fix point fmod */
- n = ix - iy;
- while(n--) {
- hz=hx-hy;lz=lx-ly; if(lx<ly) hz -= 1;
- if(hz<0){hx = hx+hx+(lx>>31); lx = lx+lx;}
- else {
- if((hz|lz)==0) /* return sign(x)*0 */
- return Zero[(u_int32_t)sx>>31];
- hx = hz+hz+(lz>>31); lx = lz+lz;
- }
+ /* fix point fmod */
+ n = ix - iy;
+ while (n--)
+ {
+ hz = hx - hy; lz = lx - ly; if (lx < ly)
+ hz -= 1;
+ if (hz < 0)
+ {
+ hx = hx + hx + (lx >> 31); lx = lx + lx;
}
- hz=hx-hy;lz=lx-ly; if(lx<ly) hz -= 1;
- if(hz>=0) {hx=hz;lx=lz;}
+ else
+ {
+ if ((hz | lz) == 0) /* return sign(x)*0 */
+ return Zero[(u_int32_t) sx >> 31];
+ hx = hz + hz + (lz >> 31); lx = lz + lz;
+ }
+ }
+ hz = hx - hy; lz = lx - ly; if (lx < ly)
+ hz -= 1;
+ if (hz >= 0)
+ {
+ hx = hz; lx = lz;
+ }
- /* convert back to floating value and restore the sign */
- if((hx|lx)==0) /* return sign(x)*0 */
- return Zero[(u_int32_t)sx>>31];
- while(hx<0x00100000) { /* normalize x */
- hx = hx+hx+(lx>>31); lx = lx+lx;
- iy -= 1;
+ /* convert back to floating value and restore the sign */
+ if ((hx | lx) == 0) /* return sign(x)*0 */
+ return Zero[(u_int32_t) sx >> 31];
+ while (hx < 0x00100000) /* normalize x */
+ {
+ hx = hx + hx + (lx >> 31); lx = lx + lx;
+ iy -= 1;
+ }
+ if (__builtin_expect (iy >= -1022, 1)) /* normalize output */
+ {
+ hx = ((hx - 0x00100000) | ((iy + 1023) << 20));
+ INSERT_WORDS (x, hx | sx, lx);
+ }
+ else /* subnormal output */
+ {
+ n = -1022 - iy;
+ if (n <= 20)
+ {
+ lx = (lx >> n) | ((u_int32_t) hx << (32 - n));
+ hx >>= n;
+ }
+ else if (n <= 31)
+ {
+ lx = (hx << (32 - n)) | (lx >> n); hx = sx;
}
- if(__builtin_expect(iy>= -1022, 1)) { /* normalize output */
- hx = ((hx-0x00100000)|((iy+1023)<<20));
- INSERT_WORDS(x,hx|sx,lx);
- } else { /* subnormal output */
- n = -1022 - iy;
- if(n<=20) {
- lx = (lx>>n)|((u_int32_t)hx<<(32-n));
- hx >>= n;
- } else if (n<=31) {
- lx = (hx<<(32-n))|(lx>>n); hx = sx;
- } else {
- lx = hx>>(n-32); hx = sx;
- }
- INSERT_WORDS(x,hx|sx,lx);
- x *= one; /* create necessary signal */
+ else
+ {
+ lx = hx >> (n - 32); hx = sx;
}
- return x; /* exact output */
+ INSERT_WORDS (x, hx | sx, lx);
+ x *= one; /* create necessary signal */
+ }
+ return x; /* exact output */
}
strong_alias (__ieee754_fmod, __fmod_finite)
diff --git a/sysdeps/ieee754/dbl-64/e_gamma_r.c b/sysdeps/ieee754/dbl-64/e_gamma_r.c
index 5b17f7b5ad..13e389d7c1 100644
--- a/sysdeps/ieee754/dbl-64/e_gamma_r.c
+++ b/sysdeps/ieee754/dbl-64/e_gamma_r.c
@@ -135,7 +135,7 @@ __ieee754_gamma_r (double x, int *signgamp)
*signgamp = 0;
return (x - x) / (x - x);
}
- if (__builtin_expect ((unsigned int) hx == 0xfff00000 && lx==0, 0))
+ if (__builtin_expect ((unsigned int) hx == 0xfff00000 && lx == 0, 0))
{
/* x == -Inf. According to ISO this is NaN. */
*signgamp = 0;
diff --git a/sysdeps/ieee754/dbl-64/e_hypot.c b/sysdeps/ieee754/dbl-64/e_hypot.c
index 2dd681cf1a..88242bc4f6 100644
--- a/sysdeps/ieee754/dbl-64/e_hypot.c
+++ b/sysdeps/ieee754/dbl-64/e_hypot.c
@@ -46,76 +46,112 @@
#include <math_private.h>
double
-__ieee754_hypot(double x, double y)
+__ieee754_hypot (double x, double y)
{
- double a,b,t1,t2,y1,y2,w;
- int32_t j,k,ha,hb;
+ double a, b, t1, t2, y1, y2, w;
+ int32_t j, k, ha, hb;
- GET_HIGH_WORD(ha,x);
- ha &= 0x7fffffff;
- GET_HIGH_WORD(hb,y);
- hb &= 0x7fffffff;
- if(hb > ha) {a=y;b=x;j=ha; ha=hb;hb=j;} else {a=x;b=y;}
- SET_HIGH_WORD(a,ha); /* a <- |a| */
- SET_HIGH_WORD(b,hb); /* b <- |b| */
- if((ha-hb)>0x3c00000) {return a+b;} /* x/y > 2**60 */
- k=0;
- if(__builtin_expect(ha > 0x5f300000, 0)) { /* a>2**500 */
- if(ha >= 0x7ff00000) { /* Inf or NaN */
- u_int32_t low;
- w = a+b; /* for sNaN */
- GET_LOW_WORD(low,a);
- if(((ha&0xfffff)|low)==0) w = a;
- GET_LOW_WORD(low,b);
- if(((hb^0x7ff00000)|low)==0) w = b;
- return w;
- }
- /* scale a and b by 2**-600 */
- ha -= 0x25800000; hb -= 0x25800000; k += 600;
- SET_HIGH_WORD(a,ha);
- SET_HIGH_WORD(b,hb);
+ GET_HIGH_WORD (ha, x);
+ ha &= 0x7fffffff;
+ GET_HIGH_WORD (hb, y);
+ hb &= 0x7fffffff;
+ if (hb > ha)
+ {
+ a = y; b = x; j = ha; ha = hb; hb = j;
+ }
+ else
+ {
+ a = x; b = y;
+ }
+ SET_HIGH_WORD (a, ha); /* a <- |a| */
+ SET_HIGH_WORD (b, hb); /* b <- |b| */
+ if ((ha - hb) > 0x3c00000)
+ {
+ return a + b;
+ } /* x/y > 2**60 */
+ k = 0;
+ if (__builtin_expect (ha > 0x5f300000, 0)) /* a>2**500 */
+ {
+ if (ha >= 0x7ff00000) /* Inf or NaN */
+ {
+ u_int32_t low;
+ w = a + b; /* for sNaN */
+ GET_LOW_WORD (low, a);
+ if (((ha & 0xfffff) | low) == 0)
+ w = a;
+ GET_LOW_WORD (low, b);
+ if (((hb ^ 0x7ff00000) | low) == 0)
+ w = b;
+ return w;
}
- if(__builtin_expect(hb < 0x20b00000, 0)) { /* b < 2**-500 */
- if(hb <= 0x000fffff) { /* subnormal b or 0 */
- u_int32_t low;
- GET_LOW_WORD(low,b);
- if((hb|low)==0) return a;
- t1=0;
- SET_HIGH_WORD(t1,0x7fd00000); /* t1=2^1022 */
- b *= t1;
- a *= t1;
- k -= 1022;
- } else { /* scale a and b by 2^600 */
- ha += 0x25800000; /* a *= 2^600 */
- hb += 0x25800000; /* b *= 2^600 */
- k -= 600;
- SET_HIGH_WORD(a,ha);
- SET_HIGH_WORD(b,hb);
+ /* scale a and b by 2**-600 */
+ ha -= 0x25800000; hb -= 0x25800000; k += 600;
+ SET_HIGH_WORD (a, ha);
+ SET_HIGH_WORD (b, hb);
+ }
+ if (__builtin_expect (hb < 0x23d00000, 0)) /* b < 2**-450 */
+ {
+ if (hb <= 0x000fffff) /* subnormal b or 0 */
+ {
+ u_int32_t low;
+ GET_LOW_WORD (low, b);
+ if ((hb | low) == 0)
+ return a;
+ t1 = 0;
+ SET_HIGH_WORD (t1, 0x7fd00000); /* t1=2^1022 */
+ b *= t1;
+ a *= t1;
+ k -= 1022;
+ GET_HIGH_WORD (ha, a);
+ GET_HIGH_WORD (hb, b);
+ if (hb > ha)
+ {
+ t1 = a;
+ a = b;
+ b = t1;
+ j = ha;
+ ha = hb;
+ hb = j;
}
}
- /* medium size a and b */
- w = a-b;
- if (w>b) {
- t1 = 0;
- SET_HIGH_WORD(t1,ha);
- t2 = a-t1;
- w = __ieee754_sqrt(t1*t1-(b*(-b)-t2*(a+t1)));
- } else {
- a = a+a;
- y1 = 0;
- SET_HIGH_WORD(y1,hb);
- y2 = b - y1;
- t1 = 0;
- SET_HIGH_WORD(t1,ha+0x00100000);
- t2 = a - t1;
- w = __ieee754_sqrt(t1*y1-(w*(-w)-(t1*y2+t2*b)));
+ else /* scale a and b by 2^600 */
+ {
+ ha += 0x25800000; /* a *= 2^600 */
+ hb += 0x25800000; /* b *= 2^600 */
+ k -= 600;
+ SET_HIGH_WORD (a, ha);
+ SET_HIGH_WORD (b, hb);
}
- if(k!=0) {
- u_int32_t high;
- t1 = 1.0;
- GET_HIGH_WORD(high,t1);
- SET_HIGH_WORD(t1,high+(k<<20));
- return t1*w;
- } else return w;
+ }
+ /* medium size a and b */
+ w = a - b;
+ if (w > b)
+ {
+ t1 = 0;
+ SET_HIGH_WORD (t1, ha);
+ t2 = a - t1;
+ w = __ieee754_sqrt (t1 * t1 - (b * (-b) - t2 * (a + t1)));
+ }
+ else
+ {
+ a = a + a;
+ y1 = 0;
+ SET_HIGH_WORD (y1, hb);
+ y2 = b - y1;
+ t1 = 0;
+ SET_HIGH_WORD (t1, ha + 0x00100000);
+ t2 = a - t1;
+ w = __ieee754_sqrt (t1 * y1 - (w * (-w) - (t1 * y2 + t2 * b)));
+ }
+ if (k != 0)
+ {
+ u_int32_t high;
+ t1 = 1.0;
+ GET_HIGH_WORD (high, t1);
+ SET_HIGH_WORD (t1, high + (k << 20));
+ return t1 * w;
+ }
+ else
+ return w;
}
strong_alias (__ieee754_hypot, __hypot_finite)
diff --git a/sysdeps/ieee754/dbl-64/e_ilogb.c b/sysdeps/ieee754/dbl-64/e_ilogb.c
index 0452a71fb8..1e338a59c1 100644
--- a/sysdeps/ieee754/dbl-64/e_ilogb.c
+++ b/sysdeps/ieee754/dbl-64/e_ilogb.c
@@ -25,30 +25,39 @@ static char rcsid[] = "$NetBSD: s_ilogb.c,v 1.9 1995/05/10 20:47:28 jtc Exp $";
#include <math.h>
#include <math_private.h>
-int __ieee754_ilogb(double x)
+int
+__ieee754_ilogb (double x)
{
- int32_t hx,lx,ix;
+ int32_t hx, lx, ix;
- GET_HIGH_WORD(hx,x);
- hx &= 0x7fffffff;
- if(hx<0x00100000) {
- GET_LOW_WORD(lx,x);
- if((hx|lx)==0)
- return FP_ILOGB0; /* ilogb(0) = FP_ILOGB0 */
- else /* subnormal x */
- if(hx==0) {
- for (ix = -1043; lx>0; lx<<=1) ix -=1;
- } else {
- for (ix = -1022,hx<<=11; hx>0; hx<<=1) ix -=1;
- }
- return ix;
+ GET_HIGH_WORD (hx, x);
+ hx &= 0x7fffffff;
+ if (hx < 0x00100000)
+ {
+ GET_LOW_WORD (lx, x);
+ if ((hx | lx) == 0)
+ return FP_ILOGB0; /* ilogb(0) = FP_ILOGB0 */
+ else /* subnormal x */
+ if (hx == 0)
+ {
+ for (ix = -1043; lx > 0; lx <<= 1)
+ ix -= 1;
}
- else if (hx<0x7ff00000) return (hx>>20)-1023;
- else if (FP_ILOGBNAN != INT_MAX) {
- /* ISO C99 requires ilogb(+-Inf) == INT_MAX. */
- GET_LOW_WORD(lx,x);
- if(((hx^0x7ff00000)|lx) == 0)
- return INT_MAX;
+ else
+ {
+ for (ix = -1022, hx <<= 11; hx > 0; hx <<= 1)
+ ix -= 1;
}
- return FP_ILOGBNAN;
+ return ix;
+ }
+ else if (hx < 0x7ff00000)
+ return (hx >> 20) - 1023;
+ else if (FP_ILOGBNAN != INT_MAX)
+ {
+ /* ISO C99 requires ilogb(+-Inf) == INT_MAX. */
+ GET_LOW_WORD (lx, x);
+ if (((hx ^ 0x7ff00000) | lx) == 0)
+ return INT_MAX;
+ }
+ return FP_ILOGBNAN;
}
diff --git a/sysdeps/ieee754/dbl-64/e_j0.c b/sysdeps/ieee754/dbl-64/e_j0.c
index d641a09149..d165e80925 100644
--- a/sysdeps/ieee754/dbl-64/e_j0.c
+++ b/sysdeps/ieee754/dbl-64/e_j0.c
@@ -11,7 +11,7 @@
*/
/* Modified by Naohiko Shimizu/Tokai University, Japan 1997/08/26,
for performance improvement on pipelined processors.
-*/
+ */
/* __ieee754_j0(x), __ieee754_y0(x)
* Bessel function of the first and second kinds of order zero.
@@ -61,154 +61,166 @@
#include <math.h>
#include <math_private.h>
-static double pzero(double), qzero(double);
+static double pzero (double), qzero (double);
static const double
-huge = 1e300,
-one = 1.0,
-invsqrtpi= 5.64189583547756279280e-01, /* 0x3FE20DD7, 0x50429B6D */
-tpi = 6.36619772367581382433e-01, /* 0x3FE45F30, 0x6DC9C883 */
- /* R0/S0 on [0, 2.00] */
-R[] = {0.0, 0.0, 1.56249999999999947958e-02, /* 0x3F8FFFFF, 0xFFFFFFFD */
- -1.89979294238854721751e-04, /* 0xBF28E6A5, 0xB61AC6E9 */
- 1.82954049532700665670e-06, /* 0x3EBEB1D1, 0x0C503919 */
- -4.61832688532103189199e-09}, /* 0xBE33D5E7, 0x73D63FCE */
-S[] = {0.0, 1.56191029464890010492e-02, /* 0x3F8FFCE8, 0x82C8C2A4 */
- 1.16926784663337450260e-04, /* 0x3F1EA6D2, 0xDD57DBF4 */
- 5.13546550207318111446e-07, /* 0x3EA13B54, 0xCE84D5A9 */
- 1.16614003333790000205e-09}; /* 0x3E1408BC, 0xF4745D8F */
+ huge = 1e300,
+ one = 1.0,
+ invsqrtpi = 5.64189583547756279280e-01, /* 0x3FE20DD7, 0x50429B6D */
+ tpi = 6.36619772367581382433e-01, /* 0x3FE45F30, 0x6DC9C883 */
+/* R0/S0 on [0, 2.00] */
+ R[] = { 0.0, 0.0, 1.56249999999999947958e-02, /* 0x3F8FFFFF, 0xFFFFFFFD */
+ -1.89979294238854721751e-04, /* 0xBF28E6A5, 0xB61AC6E9 */
+ 1.82954049532700665670e-06, /* 0x3EBEB1D1, 0x0C503919 */
+ -4.61832688532103189199e-09 }, /* 0xBE33D5E7, 0x73D63FCE */
+ S[] = { 0.0, 1.56191029464890010492e-02, /* 0x3F8FFCE8, 0x82C8C2A4 */
+ 1.16926784663337450260e-04, /* 0x3F1EA6D2, 0xDD57DBF4 */
+ 5.13546550207318111446e-07, /* 0x3EA13B54, 0xCE84D5A9 */
+ 1.16614003333790000205e-09 }; /* 0x3E1408BC, 0xF4745D8F */
static const double zero = 0.0;
double
-__ieee754_j0(double x)
+__ieee754_j0 (double x)
{
- double z, s,c,ss,cc,r,u,v,r1,r2,s1,s2,z2,z4;
- int32_t hx,ix;
+ double z, s, c, ss, cc, r, u, v, r1, r2, s1, s2, z2, z4;
+ int32_t hx, ix;
- GET_HIGH_WORD(hx,x);
- ix = hx&0x7fffffff;
- if(ix>=0x7ff00000) return one/(x*x);
- x = fabs(x);
- if(ix >= 0x40000000) { /* |x| >= 2.0 */
- __sincos (x, &s, &c);
- ss = s-c;
- cc = s+c;
- if(ix<0x7fe00000) { /* make sure x+x not overflow */
- z = -__cos(x+x);
- if ((s*c)<zero) cc = z/ss;
- else ss = z/cc;
- }
- /*
- * j0(x) = 1/sqrt(pi) * (P(0,x)*cc - Q(0,x)*ss) / sqrt(x)
- * y0(x) = 1/sqrt(pi) * (P(0,x)*ss + Q(0,x)*cc) / sqrt(x)
- */
- if(ix>0x48000000) z = (invsqrtpi*cc)/__ieee754_sqrt(x);
- else {
- u = pzero(x); v = qzero(x);
- z = invsqrtpi*(u*cc-v*ss)/__ieee754_sqrt(x);
- }
- return z;
- }
- if(ix<0x3f200000) { /* |x| < 2**-13 */
- math_force_eval(huge+x); /* raise inexact if x != 0 */
- if(ix<0x3e400000) return one; /* |x|<2**-27 */
- else return one - 0.25*x*x;
+ GET_HIGH_WORD (hx, x);
+ ix = hx & 0x7fffffff;
+ if (ix >= 0x7ff00000)
+ return one / (x * x);
+ x = fabs (x);
+ if (ix >= 0x40000000) /* |x| >= 2.0 */
+ {
+ __sincos (x, &s, &c);
+ ss = s - c;
+ cc = s + c;
+ if (ix < 0x7fe00000) /* make sure x+x not overflow */
+ {
+ z = -__cos (x + x);
+ if ((s * c) < zero)
+ cc = z / ss;
+ else
+ ss = z / cc;
}
- z = x*x;
-#ifdef DO_NOT_USE_THIS
- r = z*(R02+z*(R03+z*(R04+z*R05)));
- s = one+z*(S01+z*(S02+z*(S03+z*S04)));
-#else
- r1 = z*R[2]; z2=z*z;
- r2 = R[3]+z*R[4]; z4=z2*z2;
- r = r1 + z2*r2 + z4*R[5];
- s1 = one+z*S[1];
- s2 = S[2]+z*S[3];
- s = s1 + z2*s2 + z4*S[4];
-#endif
- if(ix < 0x3FF00000) { /* |x| < 1.00 */
- return one + z*(-0.25+(r/s));
- } else {
- u = 0.5*x;
- return((one+u)*(one-u)+z*(r/s));
+ /*
+ * j0(x) = 1/sqrt(pi) * (P(0,x)*cc - Q(0,x)*ss) / sqrt(x)
+ * y0(x) = 1/sqrt(pi) * (P(0,x)*ss + Q(0,x)*cc) / sqrt(x)
+ */
+ if (ix > 0x48000000)
+ z = (invsqrtpi * cc) / __ieee754_sqrt (x);
+ else
+ {
+ u = pzero (x); v = qzero (x);
+ z = invsqrtpi * (u * cc - v * ss) / __ieee754_sqrt (x);
}
+ return z;
+ }
+ if (ix < 0x3f200000) /* |x| < 2**-13 */
+ {
+ math_force_eval (huge + x); /* raise inexact if x != 0 */
+ if (ix < 0x3e400000)
+ return one; /* |x|<2**-27 */
+ else
+ return one - 0.25 * x * x;
+ }
+ z = x * x;
+ r1 = z * R[2]; z2 = z * z;
+ r2 = R[3] + z * R[4]; z4 = z2 * z2;
+ r = r1 + z2 * r2 + z4 * R[5];
+ s1 = one + z * S[1];
+ s2 = S[2] + z * S[3];
+ s = s1 + z2 * s2 + z4 * S[4];
+ if (ix < 0x3FF00000) /* |x| < 1.00 */
+ {
+ return one + z * (-0.25 + (r / s));
+ }
+ else
+ {
+ u = 0.5 * x;
+ return ((one + u) * (one - u) + z * (r / s));
+ }
}
strong_alias (__ieee754_j0, __j0_finite)
static const double
-U[] = {-7.38042951086872317523e-02, /* 0xBFB2E4D6, 0x99CBD01F */
- 1.76666452509181115538e-01, /* 0x3FC69D01, 0x9DE9E3FC */
- -1.38185671945596898896e-02, /* 0xBF8C4CE8, 0xB16CFA97 */
- 3.47453432093683650238e-04, /* 0x3F36C54D, 0x20B29B6B */
- -3.81407053724364161125e-06, /* 0xBECFFEA7, 0x73D25CAD */
- 1.95590137035022920206e-08, /* 0x3E550057, 0x3B4EABD4 */
- -3.98205194132103398453e-11}, /* 0xBDC5E43D, 0x693FB3C8 */
-V[] = {1.27304834834123699328e-02, /* 0x3F8A1270, 0x91C9C71A */
- 7.60068627350353253702e-05, /* 0x3F13ECBB, 0xF578C6C1 */
- 2.59150851840457805467e-07, /* 0x3E91642D, 0x7FF202FD */
- 4.41110311332675467403e-10}; /* 0x3DFE5018, 0x3BD6D9EF */
+U[] = { -7.38042951086872317523e-02, /* 0xBFB2E4D6, 0x99CBD01F */
+ 1.76666452509181115538e-01, /* 0x3FC69D01, 0x9DE9E3FC */
+ -1.38185671945596898896e-02, /* 0xBF8C4CE8, 0xB16CFA97 */
+ 3.47453432093683650238e-04, /* 0x3F36C54D, 0x20B29B6B */
+ -3.81407053724364161125e-06, /* 0xBECFFEA7, 0x73D25CAD */
+ 1.95590137035022920206e-08, /* 0x3E550057, 0x3B4EABD4 */
+ -3.98205194132103398453e-11 }, /* 0xBDC5E43D, 0x693FB3C8 */
+V[] = { 1.27304834834123699328e-02, /* 0x3F8A1270, 0x91C9C71A */
+ 7.60068627350353253702e-05, /* 0x3F13ECBB, 0xF578C6C1 */
+ 2.59150851840457805467e-07, /* 0x3E91642D, 0x7FF202FD */
+ 4.41110311332675467403e-10 }; /* 0x3DFE5018, 0x3BD6D9EF */
double
-__ieee754_y0(double x)
+__ieee754_y0 (double x)
{
- double z, s,c,ss,cc,u,v,z2,z4,z6,u1,u2,u3,v1,v2;
- int32_t hx,ix,lx;
+ double z, s, c, ss, cc, u, v, z2, z4, z6, u1, u2, u3, v1, v2;
+ int32_t hx, ix, lx;
- EXTRACT_WORDS(hx,lx,x);
- ix = 0x7fffffff&hx;
- /* Y0(NaN) is NaN, y0(-inf) is Nan, y0(inf) is 0, y0(0) is -inf. */
- if(ix>=0x7ff00000) return one/(x+x*x);
- if((ix|lx)==0) return -HUGE_VAL+x; /* -inf and overflow exception. */
- if(hx<0) return zero/(zero*x);
- if(ix >= 0x40000000) { /* |x| >= 2.0 */
- /* y0(x) = sqrt(2/(pi*x))*(p0(x)*sin(x0)+q0(x)*cos(x0))
- * where x0 = x-pi/4
- * Better formula:
- * cos(x0) = cos(x)cos(pi/4)+sin(x)sin(pi/4)
- * = 1/sqrt(2) * (sin(x) + cos(x))
- * sin(x0) = sin(x)cos(3pi/4)-cos(x)sin(3pi/4)
- * = 1/sqrt(2) * (sin(x) - cos(x))
- * To avoid cancellation, use
- * sin(x) +- cos(x) = -cos(2x)/(sin(x) -+ cos(x))
- * to compute the worse one.
- */
- __sincos (x, &s, &c);
- ss = s-c;
- cc = s+c;
- /*
- * j0(x) = 1/sqrt(pi) * (P(0,x)*cc - Q(0,x)*ss) / sqrt(x)
- * y0(x) = 1/sqrt(pi) * (P(0,x)*ss + Q(0,x)*cc) / sqrt(x)
- */
- if(ix<0x7fe00000) { /* make sure x+x not overflow */
- z = -__cos(x+x);
- if ((s*c)<zero) cc = z/ss;
- else ss = z/cc;
- }
- if(ix>0x48000000) z = (invsqrtpi*ss)/__ieee754_sqrt(x);
- else {
- u = pzero(x); v = qzero(x);
- z = invsqrtpi*(u*ss+v*cc)/__ieee754_sqrt(x);
- }
- return z;
+ EXTRACT_WORDS (hx, lx, x);
+ ix = 0x7fffffff & hx;
+ /* Y0(NaN) is NaN, y0(-inf) is Nan, y0(inf) is 0, y0(0) is -inf. */
+ if (ix >= 0x7ff00000)
+ return one / (x + x * x);
+ if ((ix | lx) == 0)
+ return -HUGE_VAL + x; /* -inf and overflow exception. */
+ if (hx < 0)
+ return zero / (zero * x);
+ if (ix >= 0x40000000) /* |x| >= 2.0 */
+ { /* y0(x) = sqrt(2/(pi*x))*(p0(x)*sin(x0)+q0(x)*cos(x0))
+ * where x0 = x-pi/4
+ * Better formula:
+ * cos(x0) = cos(x)cos(pi/4)+sin(x)sin(pi/4)
+ * = 1/sqrt(2) * (sin(x) + cos(x))
+ * sin(x0) = sin(x)cos(3pi/4)-cos(x)sin(3pi/4)
+ * = 1/sqrt(2) * (sin(x) - cos(x))
+ * To avoid cancellation, use
+ * sin(x) +- cos(x) = -cos(2x)/(sin(x) -+ cos(x))
+ * to compute the worse one.
+ */
+ __sincos (x, &s, &c);
+ ss = s - c;
+ cc = s + c;
+ /*
+ * j0(x) = 1/sqrt(pi) * (P(0,x)*cc - Q(0,x)*ss) / sqrt(x)
+ * y0(x) = 1/sqrt(pi) * (P(0,x)*ss + Q(0,x)*cc) / sqrt(x)
+ */
+ if (ix < 0x7fe00000) /* make sure x+x not overflow */
+ {
+ z = -__cos (x + x);
+ if ((s * c) < zero)
+ cc = z / ss;
+ else
+ ss = z / cc;
}
- if(ix<=0x3e400000) { /* x < 2**-27 */
- return(U[0] + tpi*__ieee754_log(x));
+ if (ix > 0x48000000)
+ z = (invsqrtpi * ss) / __ieee754_sqrt (x);
+ else
+ {
+ u = pzero (x); v = qzero (x);
+ z = invsqrtpi * (u * ss + v * cc) / __ieee754_sqrt (x);
}
- z = x*x;
-#ifdef DO_NOT_USE_THIS
- u = u00+z*(u01+z*(u02+z*(u03+z*(u04+z*(u05+z*u06)))));
- v = one+z*(v01+z*(v02+z*(v03+z*v04)));
-#else
- u1 = U[0]+z*U[1]; z2=z*z;
- u2 = U[2]+z*U[3]; z4=z2*z2;
- u3 = U[4]+z*U[5]; z6=z4*z2;
- u = u1 + z2*u2 + z4*u3 + z6*U[6];
- v1 = one+z*V[0];
- v2 = V[1]+z*V[2];
- v = v1 + z2*v2 + z4*V[3];
-#endif
- return(u/v + tpi*(__ieee754_j0(x)*__ieee754_log(x)));
+ return z;
+ }
+ if (ix <= 0x3e400000) /* x < 2**-27 */
+ {
+ return (U[0] + tpi * __ieee754_log (x));
+ }
+ z = x * x;
+ u1 = U[0] + z * U[1]; z2 = z * z;
+ u2 = U[2] + z * U[3]; z4 = z2 * z2;
+ u3 = U[4] + z * U[5]; z6 = z4 * z2;
+ u = u1 + z2 * u2 + z4 * u3 + z6 * U[6];
+ v1 = one + z * V[0];
+ v2 = V[1] + z * V[2];
+ v = v1 + z2 * v2 + z4 * V[3];
+ return (u / v + tpi * (__ieee754_j0 (x) * __ieee754_log (x)));
}
strong_alias (__ieee754_y0, __y0_finite)
@@ -286,33 +298,43 @@ static const double pS2[5] = {
};
static double
-pzero(double x)
+pzero (double x)
{
- const double *p,*q;
- double z,r,s,z2,z4,r1,r2,r3,s1,s2,s3;
- int32_t ix;
- GET_HIGH_WORD(ix,x);
- ix &= 0x7fffffff;
- if (ix>=0x41b00000) {return one;}
- else if(ix>=0x40200000){p = pR8; q= pS8;}
- else if(ix>=0x40122E8B){p = pR5; q= pS5;}
- else if(ix>=0x4006DB6D){p = pR3; q= pS3;}
- else if(ix>=0x40000000){p = pR2; q= pS2;}
- z = one/(x*x);
-#ifdef DO_NOT_USE_THIS
- r = p[0]+z*(p[1]+z*(p[2]+z*(p[3]+z*(p[4]+z*p[5]))));
- s = one+z*(q[0]+z*(q[1]+z*(q[2]+z*(q[3]+z*q[4]))));
-#else
- r1 = p[0]+z*p[1]; z2=z*z;
- r2 = p[2]+z*p[3]; z4=z2*z2;
- r3 = p[4]+z*p[5];
- r = r1 + z2*r2 + z4*r3;
- s1 = one+z*q[0];
- s2 = q[1]+z*q[2];
- s3 = q[3]+z*q[4];
- s = s1 + z2*s2 + z4*s3;
-#endif
- return one+ r/s;
+ const double *p, *q;
+ double z, r, s, z2, z4, r1, r2, r3, s1, s2, s3;
+ int32_t ix;
+ GET_HIGH_WORD (ix, x);
+ ix &= 0x7fffffff;
+ if (ix >= 0x41b00000)
+ {
+ return one;
+ }
+ else if (ix >= 0x40200000)
+ {
+ p = pR8; q = pS8;
+ }
+ else if (ix >= 0x40122E8B)
+ {
+ p = pR5; q = pS5;
+ }
+ else if (ix >= 0x4006DB6D)
+ {
+ p = pR3; q = pS3;
+ }
+ else if (ix >= 0x40000000)
+ {
+ p = pR2; q = pS2;
+ }
+ z = one / (x * x);
+ r1 = p[0] + z * p[1]; z2 = z * z;
+ r2 = p[2] + z * p[3]; z4 = z2 * z2;
+ r3 = p[4] + z * p[5];
+ r = r1 + z2 * r2 + z4 * r3;
+ s1 = one + z * q[0];
+ s2 = q[1] + z * q[2];
+ s3 = q[3] + z * q[4];
+ s = s1 + z2 * s2 + z4 * s3;
+ return one + r / s;
}
@@ -394,31 +416,41 @@ static const double qS2[6] = {
};
static double
-qzero(double x)
+qzero (double x)
{
- const double *p,*q;
- double s,r,z,z2,z4,z6,r1,r2,r3,s1,s2,s3;
- int32_t ix;
- GET_HIGH_WORD(ix,x);
- ix &= 0x7fffffff;
- if (ix>=0x41b00000) {return -.125/x;}
- else if(ix>=0x40200000){p = qR8; q= qS8;}
- else if(ix>=0x40122E8B){p = qR5; q= qS5;}
- else if(ix>=0x4006DB6D){p = qR3; q= qS3;}
- else if(ix>=0x40000000){p = qR2; q= qS2;}
- z = one/(x*x);
-#ifdef DO_NOT_USE_THIS
- r = p[0]+z*(p[1]+z*(p[2]+z*(p[3]+z*(p[4]+z*p[5]))));
- s = one+z*(q[0]+z*(q[1]+z*(q[2]+z*(q[3]+z*(q[4]+z*q[5])))));
-#else
- r1 = p[0]+z*p[1]; z2=z*z;
- r2 = p[2]+z*p[3]; z4=z2*z2;
- r3 = p[4]+z*p[5]; z6=z4*z2;
- r= r1 + z2*r2 + z4*r3;
- s1 = one+z*q[0];
- s2 = q[1]+z*q[2];
- s3 = q[3]+z*q[4];
- s = s1 + z2*s2 + z4*s3 +z6*q[5];
-#endif
- return (-.125 + r/s)/x;
+ const double *p, *q;
+ double s, r, z, z2, z4, z6, r1, r2, r3, s1, s2, s3;
+ int32_t ix;
+ GET_HIGH_WORD (ix, x);
+ ix &= 0x7fffffff;
+ if (ix >= 0x41b00000)
+ {
+ return -.125 / x;
+ }
+ else if (ix >= 0x40200000)
+ {
+ p = qR8; q = qS8;
+ }
+ else if (ix >= 0x40122E8B)
+ {
+ p = qR5; q = qS5;
+ }
+ else if (ix >= 0x4006DB6D)
+ {
+ p = qR3; q = qS3;
+ }
+ else if (ix >= 0x40000000)
+ {
+ p = qR2; q = qS2;
+ }
+ z = one / (x * x);
+ r1 = p[0] + z * p[1]; z2 = z * z;
+ r2 = p[2] + z * p[3]; z4 = z2 * z2;
+ r3 = p[4] + z * p[5]; z6 = z4 * z2;
+ r = r1 + z2 * r2 + z4 * r3;
+ s1 = one + z * q[0];
+ s2 = q[1] + z * q[2];
+ s3 = q[3] + z * q[4];
+ s = s1 + z2 * s2 + z4 * s3 + z6 * q[5];
+ return (-.125 + r / s) / x;
}
diff --git a/sysdeps/ieee754/dbl-64/e_j1.c b/sysdeps/ieee754/dbl-64/e_j1.c
index cca5f20b4f..ab754c6ee0 100644
--- a/sysdeps/ieee754/dbl-64/e_j1.c
+++ b/sysdeps/ieee754/dbl-64/e_j1.c
@@ -11,7 +11,7 @@
*/
/* Modified by Naohiko Shimizu/Tokai University, Japan 1997/08/26,
for performance improvement on pipelined processors.
-*/
+ */
/* __ieee754_j1(x), __ieee754_y1(x)
* Bessel function of the first and second kinds of order zero.
@@ -61,76 +61,81 @@
#include <math.h>
#include <math_private.h>
-static double pone(double), qone(double);
+static double pone (double), qone (double);
static const double
-huge = 1e300,
-one = 1.0,
-invsqrtpi= 5.64189583547756279280e-01, /* 0x3FE20DD7, 0x50429B6D */
-tpi = 6.36619772367581382433e-01, /* 0x3FE45F30, 0x6DC9C883 */
- /* R0/S0 on [0,2] */
-R[] = {-6.25000000000000000000e-02, /* 0xBFB00000, 0x00000000 */
- 1.40705666955189706048e-03, /* 0x3F570D9F, 0x98472C61 */
- -1.59955631084035597520e-05, /* 0xBEF0C5C6, 0xBA169668 */
- 4.96727999609584448412e-08}, /* 0x3E6AAAFA, 0x46CA0BD9 */
-S[] = {0.0, 1.91537599538363460805e-02, /* 0x3F939D0B, 0x12637E53 */
- 1.85946785588630915560e-04, /* 0x3F285F56, 0xB9CDF664 */
- 1.17718464042623683263e-06, /* 0x3EB3BFF8, 0x333F8498 */
- 5.04636257076217042715e-09, /* 0x3E35AC88, 0xC97DFF2C */
- 1.23542274426137913908e-11}; /* 0x3DAB2ACF, 0xCFB97ED8 */
+ huge = 1e300,
+ one = 1.0,
+ invsqrtpi = 5.64189583547756279280e-01, /* 0x3FE20DD7, 0x50429B6D */
+ tpi = 6.36619772367581382433e-01, /* 0x3FE45F30, 0x6DC9C883 */
+/* R0/S0 on [0,2] */
+ R[] = { -6.25000000000000000000e-02, /* 0xBFB00000, 0x00000000 */
+ 1.40705666955189706048e-03, /* 0x3F570D9F, 0x98472C61 */
+ -1.59955631084035597520e-05, /* 0xBEF0C5C6, 0xBA169668 */
+ 4.96727999609584448412e-08 }, /* 0x3E6AAAFA, 0x46CA0BD9 */
+ S[] = { 0.0, 1.91537599538363460805e-02, /* 0x3F939D0B, 0x12637E53 */
+ 1.85946785588630915560e-04, /* 0x3F285F56, 0xB9CDF664 */
+ 1.17718464042623683263e-06, /* 0x3EB3BFF8, 0x333F8498 */
+ 5.04636257076217042715e-09, /* 0x3E35AC88, 0xC97DFF2C */
+ 1.23542274426137913908e-11 }; /* 0x3DAB2ACF, 0xCFB97ED8 */
-static const double zero = 0.0;
+static const double zero = 0.0;
double
-__ieee754_j1(double x)
+__ieee754_j1 (double x)
{
- double z, s,c,ss,cc,r,u,v,y,r1,r2,s1,s2,s3,z2,z4;
- int32_t hx,ix;
+ double z, s, c, ss, cc, r, u, v, y, r1, r2, s1, s2, s3, z2, z4;
+ int32_t hx, ix;
- GET_HIGH_WORD(hx,x);
- ix = hx&0x7fffffff;
- if(__builtin_expect(ix>=0x7ff00000, 0)) return one/x;
- y = fabs(x);
- if(ix >= 0x40000000) { /* |x| >= 2.0 */
- __sincos (y, &s, &c);
- ss = -s-c;
- cc = s-c;
- if(ix<0x7fe00000) { /* make sure y+y not overflow */
- z = __cos(y+y);
- if ((s*c)>zero) cc = z/ss;
- else ss = z/cc;
- }
- /*
- * j1(x) = 1/sqrt(pi) * (P(1,x)*cc - Q(1,x)*ss) / sqrt(x)
- * y1(x) = 1/sqrt(pi) * (P(1,x)*ss + Q(1,x)*cc) / sqrt(x)
- */
- if(ix>0x48000000) z = (invsqrtpi*cc)/__ieee754_sqrt(y);
- else {
- u = pone(y); v = qone(y);
- z = invsqrtpi*(u*cc-v*ss)/__ieee754_sqrt(y);
- }
- if(hx<0) return -z;
- else return z;
+ GET_HIGH_WORD (hx, x);
+ ix = hx & 0x7fffffff;
+ if (__builtin_expect (ix >= 0x7ff00000, 0))
+ return one / x;
+ y = fabs (x);
+ if (ix >= 0x40000000) /* |x| >= 2.0 */
+ {
+ __sincos (y, &s, &c);
+ ss = -s - c;
+ cc = s - c;
+ if (ix < 0x7fe00000) /* make sure y+y not overflow */
+ {
+ z = __cos (y + y);
+ if ((s * c) > zero)
+ cc = z / ss;
+ else
+ ss = z / cc;
}
- if(__builtin_expect(ix<0x3e400000, 0)) { /* |x|<2**-27 */
- if(huge+x>one) return 0.5*x;/* inexact if x!=0 necessary */
+ /*
+ * j1(x) = 1/sqrt(pi) * (P(1,x)*cc - Q(1,x)*ss) / sqrt(x)
+ * y1(x) = 1/sqrt(pi) * (P(1,x)*ss + Q(1,x)*cc) / sqrt(x)
+ */
+ if (ix > 0x48000000)
+ z = (invsqrtpi * cc) / __ieee754_sqrt (y);
+ else
+ {
+ u = pone (y); v = qone (y);
+ z = invsqrtpi * (u * cc - v * ss) / __ieee754_sqrt (y);
}
- z = x*x;
-#ifdef DO_NOT_USE_THIS
- r = z*(r00+z*(r01+z*(r02+z*r03)));
- s = one+z*(s01+z*(s02+z*(s03+z*(s04+z*s05))));
- r *= x;
-#else
- r1 = z*R[0]; z2=z*z;
- r2 = R[1]+z*R[2]; z4=z2*z2;
- r = r1 + z2*r2 + z4*R[3];
- r *= x;
- s1 = one+z*S[1];
- s2 = S[2]+z*S[3];
- s3 = S[4]+z*S[5];
- s = s1 + z2*s2 + z4*s3;
-#endif
- return(x*0.5+r/s);
+ if (hx < 0)
+ return -z;
+ else
+ return z;
+ }
+ if (__builtin_expect (ix < 0x3e400000, 0)) /* |x|<2**-27 */
+ {
+ if (huge + x > one)
+ return 0.5 * x; /* inexact if x!=0 necessary */
+ }
+ z = x * x;
+ r1 = z * R[0]; z2 = z * z;
+ r2 = R[1] + z * R[2]; z4 = z2 * z2;
+ r = r1 + z2 * r2 + z4 * R[3];
+ r *= x;
+ s1 = one + z * S[1];
+ s2 = S[2] + z * S[3];
+ s3 = S[4] + z * S[5];
+ s = s1 + z2 * s2 + z4 * s3;
+ return (x * 0.5 + r / s);
}
strong_alias (__ieee754_j1, __j1_finite)
@@ -150,62 +155,67 @@ static const double V0[5] = {
};
double
-__ieee754_y1(double x)
+__ieee754_y1 (double x)
{
- double z, s,c,ss,cc,u,v,u1,u2,v1,v2,v3,z2,z4;
- int32_t hx,ix,lx;
+ double z, s, c, ss, cc, u, v, u1, u2, v1, v2, v3, z2, z4;
+ int32_t hx, ix, lx;
- EXTRACT_WORDS(hx,lx,x);
- ix = 0x7fffffff&hx;
- /* if Y1(NaN) is NaN, Y1(-inf) is NaN, Y1(inf) is 0 */
- if(__builtin_expect(ix>=0x7ff00000, 0)) return one/(x+x*x);
- if(__builtin_expect((ix|lx)==0, 0))
- return -HUGE_VAL+x; /* -inf and overflow exception. */;
- if(__builtin_expect(hx<0, 0)) return zero/(zero*x);
- if(ix >= 0x40000000) { /* |x| >= 2.0 */
- __sincos (x, &s, &c);
- ss = -s-c;
- cc = s-c;
- if(ix<0x7fe00000) { /* make sure x+x not overflow */
- z = __cos(x+x);
- if ((s*c)>zero) cc = z/ss;
- else ss = z/cc;
- }
- /* y1(x) = sqrt(2/(pi*x))*(p1(x)*sin(x0)+q1(x)*cos(x0))
- * where x0 = x-3pi/4
- * Better formula:
- * cos(x0) = cos(x)cos(3pi/4)+sin(x)sin(3pi/4)
- * = 1/sqrt(2) * (sin(x) - cos(x))
- * sin(x0) = sin(x)cos(3pi/4)-cos(x)sin(3pi/4)
- * = -1/sqrt(2) * (cos(x) + sin(x))
- * To avoid cancellation, use
- * sin(x) +- cos(x) = -cos(2x)/(sin(x) -+ cos(x))
- * to compute the worse one.
- */
- if(ix>0x48000000) z = (invsqrtpi*ss)/__ieee754_sqrt(x);
- else {
- u = pone(x); v = qone(x);
- z = invsqrtpi*(u*ss+v*cc)/__ieee754_sqrt(x);
- }
- return z;
+ EXTRACT_WORDS (hx, lx, x);
+ ix = 0x7fffffff & hx;
+ /* if Y1(NaN) is NaN, Y1(-inf) is NaN, Y1(inf) is 0 */
+ if (__builtin_expect (ix >= 0x7ff00000, 0))
+ return one / (x + x * x);
+ if (__builtin_expect ((ix | lx) == 0, 0))
+ return -HUGE_VAL + x;
+ /* -inf and overflow exception. */;
+ if (__builtin_expect (hx < 0, 0))
+ return zero / (zero * x);
+ if (ix >= 0x40000000) /* |x| >= 2.0 */
+ {
+ __sincos (x, &s, &c);
+ ss = -s - c;
+ cc = s - c;
+ if (ix < 0x7fe00000) /* make sure x+x not overflow */
+ {
+ z = __cos (x + x);
+ if ((s * c) > zero)
+ cc = z / ss;
+ else
+ ss = z / cc;
}
- if(__builtin_expect(ix<=0x3c900000, 0)) { /* x < 2**-54 */
- return(-tpi/x);
+ /* y1(x) = sqrt(2/(pi*x))*(p1(x)*sin(x0)+q1(x)*cos(x0))
+ * where x0 = x-3pi/4
+ * Better formula:
+ * cos(x0) = cos(x)cos(3pi/4)+sin(x)sin(3pi/4)
+ * = 1/sqrt(2) * (sin(x) - cos(x))
+ * sin(x0) = sin(x)cos(3pi/4)-cos(x)sin(3pi/4)
+ * = -1/sqrt(2) * (cos(x) + sin(x))
+ * To avoid cancellation, use
+ * sin(x) +- cos(x) = -cos(2x)/(sin(x) -+ cos(x))
+ * to compute the worse one.
+ */
+ if (ix > 0x48000000)
+ z = (invsqrtpi * ss) / __ieee754_sqrt (x);
+ else
+ {
+ u = pone (x); v = qone (x);
+ z = invsqrtpi * (u * ss + v * cc) / __ieee754_sqrt (x);
}
- z = x*x;
-#ifdef DO_NOT_USE_THIS
- u = U0[0]+z*(U0[1]+z*(U0[2]+z*(U0[3]+z*U0[4])));
- v = one+z*(V0[0]+z*(V0[1]+z*(V0[2]+z*(V0[3]+z*V0[4]))));
-#else
- u1 = U0[0]+z*U0[1];z2=z*z;
- u2 = U0[2]+z*U0[3];z4=z2*z2;
- u = u1 + z2*u2 + z4*U0[4];
- v1 = one+z*V0[0];
- v2 = V0[1]+z*V0[2];
- v3 = V0[3]+z*V0[4];
- v = v1 + z2*v2 + z4*v3;
-#endif
- return(x*(u/v) + tpi*(__ieee754_j1(x)*__ieee754_log(x)-one/x));
+ return z;
+ }
+ if (__builtin_expect (ix <= 0x3c900000, 0)) /* x < 2**-54 */
+ {
+ return (-tpi / x);
+ }
+ z = x * x;
+ u1 = U0[0] + z * U0[1]; z2 = z * z;
+ u2 = U0[2] + z * U0[3]; z4 = z2 * z2;
+ u = u1 + z2 * u2 + z4 * U0[4];
+ v1 = one + z * V0[0];
+ v2 = V0[1] + z * V0[2];
+ v3 = V0[3] + z * V0[4];
+ v = v1 + z2 * v2 + z4 * v3;
+ return (x * (u / v) + tpi * (__ieee754_j1 (x) * __ieee754_log (x) - one / x));
}
strong_alias (__ieee754_y1, __y1_finite)
@@ -267,7 +277,7 @@ static const double ps3[5] = {
1.03787932439639277504e+02, /* 0x4059F26D, 0x7C2EED53 */
};
-static const double pr2[6] = {/* for x in [2.8570,2]=1/[0.3499,0.5] */
+static const double pr2[6] = { /* for x in [2.8570,2]=1/[0.3499,0.5] */
1.07710830106873743082e-07, /* 0x3E7CE9D4, 0xF65544F4 */
1.17176219462683348094e-01, /* 0x3FBDFF42, 0xBE760D83 */
2.36851496667608785174e+00, /* 0x4002F2B7, 0xF98FAEC0 */
@@ -284,33 +294,43 @@ static const double ps2[5] = {
};
static double
-pone(double x)
+pone (double x)
{
- const double *p,*q;
- double z,r,s,r1,r2,r3,s1,s2,s3,z2,z4;
- int32_t ix;
- GET_HIGH_WORD(ix,x);
- ix &= 0x7fffffff;
- if (ix>=0x41b00000) {return one;}
- else if(ix>=0x40200000){p = pr8; q= ps8;}
- else if(ix>=0x40122E8B){p = pr5; q= ps5;}
- else if(ix>=0x4006DB6D){p = pr3; q= ps3;}
- else if(ix>=0x40000000){p = pr2; q= ps2;}
- z = one/(x*x);
-#ifdef DO_NOT_USE_THIS
- r = p[0]+z*(p[1]+z*(p[2]+z*(p[3]+z*(p[4]+z*p[5]))));
- s = one+z*(q[0]+z*(q[1]+z*(q[2]+z*(q[3]+z*q[4]))));
-#else
- r1 = p[0]+z*p[1]; z2=z*z;
- r2 = p[2]+z*p[3]; z4=z2*z2;
- r3 = p[4]+z*p[5];
- r = r1 + z2*r2 + z4*r3;
- s1 = one+z*q[0];
- s2 = q[1]+z*q[2];
- s3 = q[3]+z*q[4];
- s = s1 + z2*s2 + z4*s3;
-#endif
- return one+ r/s;
+ const double *p, *q;
+ double z, r, s, r1, r2, r3, s1, s2, s3, z2, z4;
+ int32_t ix;
+ GET_HIGH_WORD (ix, x);
+ ix &= 0x7fffffff;
+ if (ix >= 0x41b00000)
+ {
+ return one;
+ }
+ else if (ix >= 0x40200000)
+ {
+ p = pr8; q = ps8;
+ }
+ else if (ix >= 0x40122E8B)
+ {
+ p = pr5; q = ps5;
+ }
+ else if (ix >= 0x4006DB6D)
+ {
+ p = pr3; q = ps3;
+ }
+ else if (ix >= 0x40000000)
+ {
+ p = pr2; q = ps2;
+ }
+ z = one / (x * x);
+ r1 = p[0] + z * p[1]; z2 = z * z;
+ r2 = p[2] + z * p[3]; z4 = z2 * z2;
+ r3 = p[4] + z * p[5];
+ r = r1 + z2 * r2 + z4 * r3;
+ s1 = one + z * q[0];
+ s2 = q[1] + z * q[2];
+ s3 = q[3] + z * q[4];
+ s = s1 + z2 * s2 + z4 * s3;
+ return one + r / s;
}
@@ -375,7 +395,7 @@ static const double qs3[6] = {
-1.35201191444307340817e+02, /* 0xC060E670, 0x290A311F */
};
-static const double qr2[6] = {/* for x in [2.8570,2]=1/[0.3499,0.5] */
+static const double qr2[6] = { /* for x in [2.8570,2]=1/[0.3499,0.5] */
-1.78381727510958865572e-07, /* 0xBE87F126, 0x44C626D2 */
-1.02517042607985553460e-01, /* 0xBFBA3E8E, 0x9148B010 */
-2.75220568278187460720e+00, /* 0xC0060484, 0x69BB4EDA */
@@ -393,31 +413,41 @@ static const double qs2[6] = {
};
static double
-qone(double x)
+qone (double x)
{
- const double *p,*q;
- double s,r,z,r1,r2,r3,s1,s2,s3,z2,z4,z6;
- int32_t ix;
- GET_HIGH_WORD(ix,x);
- ix &= 0x7fffffff;
- if (ix>=0x41b00000) {return .375/x;}
- else if(ix>=0x40200000){p = qr8; q= qs8;}
- else if(ix>=0x40122E8B){p = qr5; q= qs5;}
- else if(ix>=0x4006DB6D){p = qr3; q= qs3;}
- else if(ix>=0x40000000){p = qr2; q= qs2;}
- z = one/(x*x);
-#ifdef DO_NOT_USE_THIS
- r = p[0]+z*(p[1]+z*(p[2]+z*(p[3]+z*(p[4]+z*p[5]))));
- s = one+z*(q[0]+z*(q[1]+z*(q[2]+z*(q[3]+z*(q[4]+z*q[5])))));
-#else
- r1 = p[0]+z*p[1]; z2=z*z;
- r2 = p[2]+z*p[3]; z4=z2*z2;
- r3 = p[4]+z*p[5]; z6=z4*z2;
- r = r1 + z2*r2 + z4*r3;
- s1 = one+z*q[0];
- s2 = q[1]+z*q[2];
- s3 = q[3]+z*q[4];
- s = s1 + z2*s2 + z4*s3 + z6*q[5];
-#endif
- return (.375 + r/s)/x;
+ const double *p, *q;
+ double s, r, z, r1, r2, r3, s1, s2, s3, z2, z4, z6;
+ int32_t ix;
+ GET_HIGH_WORD (ix, x);
+ ix &= 0x7fffffff;
+ if (ix >= 0x41b00000)
+ {
+ return .375 / x;
+ }
+ else if (ix >= 0x40200000)
+ {
+ p = qr8; q = qs8;
+ }
+ else if (ix >= 0x40122E8B)
+ {
+ p = qr5; q = qs5;
+ }
+ else if (ix >= 0x4006DB6D)
+ {
+ p = qr3; q = qs3;
+ }
+ else if (ix >= 0x40000000)
+ {
+ p = qr2; q = qs2;
+ }
+ z = one / (x * x);
+ r1 = p[0] + z * p[1]; z2 = z * z;
+ r2 = p[2] + z * p[3]; z4 = z2 * z2;
+ r3 = p[4] + z * p[5]; z6 = z4 * z2;
+ r = r1 + z2 * r2 + z4 * r3;
+ s1 = one + z * q[0];
+ s2 = q[1] + z * q[2];
+ s3 = q[3] + z * q[4];
+ s = s1 + z2 * s2 + z4 * s3 + z6 * q[5];
+ return (.375 + r / s) / x;
}
diff --git a/sysdeps/ieee754/dbl-64/e_jn.c b/sysdeps/ieee754/dbl-64/e_jn.c
index 0d2a24c93b..f48e43a0d9 100644
--- a/sysdeps/ieee754/dbl-64/e_jn.c
+++ b/sysdeps/ieee754/dbl-64/e_jn.c
@@ -41,246 +41,284 @@
#include <math_private.h>
static const double
-invsqrtpi= 5.64189583547756279280e-01, /* 0x3FE20DD7, 0x50429B6D */
-two = 2.00000000000000000000e+00, /* 0x40000000, 0x00000000 */
-one = 1.00000000000000000000e+00; /* 0x3FF00000, 0x00000000 */
+ invsqrtpi = 5.64189583547756279280e-01, /* 0x3FE20DD7, 0x50429B6D */
+ two = 2.00000000000000000000e+00, /* 0x40000000, 0x00000000 */
+ one = 1.00000000000000000000e+00; /* 0x3FF00000, 0x00000000 */
-static const double zero = 0.00000000000000000000e+00;
+static const double zero = 0.00000000000000000000e+00;
double
-__ieee754_jn(int n, double x)
+__ieee754_jn (int n, double x)
{
- int32_t i,hx,ix,lx, sgn;
- double a, b, temp, di;
- double z, w;
+ int32_t i, hx, ix, lx, sgn;
+ double a, b, temp, di;
+ double z, w;
- /* J(-n,x) = (-1)^n * J(n, x), J(n, -x) = (-1)^n * J(n, x)
- * Thus, J(-n,x) = J(n,-x)
- */
- EXTRACT_WORDS(hx,lx,x);
- ix = 0x7fffffff&hx;
- /* if J(n,NaN) is NaN */
- if(__builtin_expect((ix|((u_int32_t)(lx|-lx))>>31)>0x7ff00000, 0))
- return x+x;
- if(n<0){
- n = -n;
- x = -x;
- hx ^= 0x80000000;
+ /* J(-n,x) = (-1)^n * J(n, x), J(n, -x) = (-1)^n * J(n, x)
+ * Thus, J(-n,x) = J(n,-x)
+ */
+ EXTRACT_WORDS (hx, lx, x);
+ ix = 0x7fffffff & hx;
+ /* if J(n,NaN) is NaN */
+ if (__builtin_expect ((ix | ((u_int32_t) (lx | -lx)) >> 31) > 0x7ff00000, 0))
+ return x + x;
+ if (n < 0)
+ {
+ n = -n;
+ x = -x;
+ hx ^= 0x80000000;
+ }
+ if (n == 0)
+ return (__ieee754_j0 (x));
+ if (n == 1)
+ return (__ieee754_j1 (x));
+ sgn = (n & 1) & (hx >> 31); /* even n -- 0, odd n -- sign(x) */
+ x = fabs (x);
+ if (__builtin_expect ((ix | lx) == 0 || ix >= 0x7ff00000, 0))
+ /* if x is 0 or inf */
+ b = zero;
+ else if ((double) n <= x)
+ {
+ /* Safe to use J(n+1,x)=2n/x *J(n,x)-J(n-1,x) */
+ if (ix >= 0x52D00000) /* x > 2**302 */
+ { /* (x >> n**2)
+ * Jn(x) = cos(x-(2n+1)*pi/4)*sqrt(2/x*pi)
+ * Yn(x) = sin(x-(2n+1)*pi/4)*sqrt(2/x*pi)
+ * Let s=sin(x), c=cos(x),
+ * xn=x-(2n+1)*pi/4, sqt2 = sqrt(2),then
+ *
+ * n sin(xn)*sqt2 cos(xn)*sqt2
+ * ----------------------------------
+ * 0 s-c c+s
+ * 1 -s-c -c+s
+ * 2 -s+c -c-s
+ * 3 s+c c-s
+ */
+ double s;
+ double c;
+ __sincos (x, &s, &c);
+ switch (n & 3)
+ {
+ case 0: temp = c + s; break;
+ case 1: temp = -c + s; break;
+ case 2: temp = -c - s; break;
+ case 3: temp = c - s; break;
+ }
+ b = invsqrtpi * temp / __ieee754_sqrt (x);
}
- if(n==0) return(__ieee754_j0(x));
- if(n==1) return(__ieee754_j1(x));
- sgn = (n&1)&(hx>>31); /* even n -- 0, odd n -- sign(x) */
- x = fabs(x);
- if(__builtin_expect((ix|lx)==0||ix>=0x7ff00000,0))
- /* if x is 0 or inf */
- b = zero;
- else if((double)n<=x) {
- /* Safe to use J(n+1,x)=2n/x *J(n,x)-J(n-1,x) */
- if(ix>=0x52D00000) { /* x > 2**302 */
- /* (x >> n**2)
- * Jn(x) = cos(x-(2n+1)*pi/4)*sqrt(2/x*pi)
- * Yn(x) = sin(x-(2n+1)*pi/4)*sqrt(2/x*pi)
- * Let s=sin(x), c=cos(x),
- * xn=x-(2n+1)*pi/4, sqt2 = sqrt(2),then
- *
- * n sin(xn)*sqt2 cos(xn)*sqt2
- * ----------------------------------
- * 0 s-c c+s
- * 1 -s-c -c+s
- * 2 -s+c -c-s
- * 3 s+c c-s
- */
- double s;
- double c;
- __sincos (x, &s, &c);
- switch(n&3) {
- case 0: temp = c + s; break;
- case 1: temp = -c + s; break;
- case 2: temp = -c - s; break;
- case 3: temp = c - s; break;
- }
- b = invsqrtpi*temp/__ieee754_sqrt(x);
- } else {
- a = __ieee754_j0(x);
- b = __ieee754_j1(x);
- for(i=1;i<n;i++){
- temp = b;
- b = b*((double)(i+i)/x) - a; /* avoid underflow */
- a = temp;
- }
+ else
+ {
+ a = __ieee754_j0 (x);
+ b = __ieee754_j1 (x);
+ for (i = 1; i < n; i++)
+ {
+ temp = b;
+ b = b * ((double) (i + i) / x) - a; /* avoid underflow */
+ a = temp;
}
- } else {
- if(ix<0x3e100000) { /* x < 2**-29 */
- /* x is tiny, return the first Taylor expansion of J(n,x)
- * J(n,x) = 1/n!*(x/2)^n - ...
- */
- if(n>33) /* underflow */
- b = zero;
- else {
- temp = x*0.5; b = temp;
- for (a=one,i=2;i<=n;i++) {
- a *= (double)i; /* a = n! */
- b *= temp; /* b = (x/2)^n */
- }
- b = b/a;
+ }
+ }
+ else
+ {
+ if (ix < 0x3e100000) /* x < 2**-29 */
+ { /* x is tiny, return the first Taylor expansion of J(n,x)
+ * J(n,x) = 1/n!*(x/2)^n - ...
+ */
+ if (n > 33) /* underflow */
+ b = zero;
+ else
+ {
+ temp = x * 0.5; b = temp;
+ for (a = one, i = 2; i <= n; i++)
+ {
+ a *= (double) i; /* a = n! */
+ b *= temp; /* b = (x/2)^n */
}
- } else {
- /* use backward recurrence */
- /* x x^2 x^2
- * J(n,x)/J(n-1,x) = ---- ------ ------ .....
- * 2n - 2(n+1) - 2(n+2)
- *
- * 1 1 1
- * (for large x) = ---- ------ ------ .....
- * 2n 2(n+1) 2(n+2)
- * -- - ------ - ------ -
- * x x x
- *
- * Let w = 2n/x and h=2/x, then the above quotient
- * is equal to the continued fraction:
- * 1
- * = -----------------------
- * 1
- * w - -----------------
- * 1
- * w+h - ---------
- * w+2h - ...
- *
- * To determine how many terms needed, let
- * Q(0) = w, Q(1) = w(w+h) - 1,
- * Q(k) = (w+k*h)*Q(k-1) - Q(k-2),
- * When Q(k) > 1e4 good for single
- * When Q(k) > 1e9 good for double
- * When Q(k) > 1e17 good for quadruple
- */
- /* determine k */
- double t,v;
- double q0,q1,h,tmp; int32_t k,m;
- w = (n+n)/(double)x; h = 2.0/(double)x;
- q0 = w; z = w+h; q1 = w*z - 1.0; k=1;
- while(q1<1.0e9) {
- k += 1; z += h;
- tmp = z*q1 - q0;
- q0 = q1;
- q1 = tmp;
+ b = b / a;
+ }
+ }
+ else
+ {
+ /* use backward recurrence */
+ /* x x^2 x^2
+ * J(n,x)/J(n-1,x) = ---- ------ ------ .....
+ * 2n - 2(n+1) - 2(n+2)
+ *
+ * 1 1 1
+ * (for large x) = ---- ------ ------ .....
+ * 2n 2(n+1) 2(n+2)
+ * -- - ------ - ------ -
+ * x x x
+ *
+ * Let w = 2n/x and h=2/x, then the above quotient
+ * is equal to the continued fraction:
+ * 1
+ * = -----------------------
+ * 1
+ * w - -----------------
+ * 1
+ * w+h - ---------
+ * w+2h - ...
+ *
+ * To determine how many terms needed, let
+ * Q(0) = w, Q(1) = w(w+h) - 1,
+ * Q(k) = (w+k*h)*Q(k-1) - Q(k-2),
+ * When Q(k) > 1e4 good for single
+ * When Q(k) > 1e9 good for double
+ * When Q(k) > 1e17 good for quadruple
+ */
+ /* determine k */
+ double t, v;
+ double q0, q1, h, tmp; int32_t k, m;
+ w = (n + n) / (double) x; h = 2.0 / (double) x;
+ q0 = w; z = w + h; q1 = w * z - 1.0; k = 1;
+ while (q1 < 1.0e9)
+ {
+ k += 1; z += h;
+ tmp = z * q1 - q0;
+ q0 = q1;
+ q1 = tmp;
+ }
+ m = n + n;
+ for (t = zero, i = 2 * (n + k); i >= m; i -= 2)
+ t = one / (i / x - t);
+ a = t;
+ b = one;
+ /* estimate log((2/x)^n*n!) = n*log(2/x)+n*ln(n)
+ * Hence, if n*(log(2n/x)) > ...
+ * single 8.8722839355e+01
+ * double 7.09782712893383973096e+02
+ * long double 1.1356523406294143949491931077970765006170e+04
+ * then recurrent value may overflow and the result is
+ * likely underflow to zero
+ */
+ tmp = n;
+ v = two / x;
+ tmp = tmp * __ieee754_log (fabs (v * tmp));
+ if (tmp < 7.09782712893383973096e+02)
+ {
+ for (i = n - 1, di = (double) (i + i); i > 0; i--)
+ {
+ temp = b;
+ b *= di;
+ b = b / x - a;
+ a = temp;
+ di -= two;
}
- m = n+n;
- for(t=zero, i = 2*(n+k); i>=m; i -= 2) t = one/(i/x-t);
- a = t;
- b = one;
- /* estimate log((2/x)^n*n!) = n*log(2/x)+n*ln(n)
- * Hence, if n*(log(2n/x)) > ...
- * single 8.8722839355e+01
- * double 7.09782712893383973096e+02
- * long double 1.1356523406294143949491931077970765006170e+04
- * then recurrent value may overflow and the result is
- * likely underflow to zero
- */
- tmp = n;
- v = two/x;
- tmp = tmp*__ieee754_log(fabs(v*tmp));
- if(tmp<7.09782712893383973096e+02) {
- for(i=n-1,di=(double)(i+i);i>0;i--){
- temp = b;
- b *= di;
- b = b/x - a;
- a = temp;
- di -= two;
- }
- } else {
- for(i=n-1,di=(double)(i+i);i>0;i--){
- temp = b;
- b *= di;
- b = b/x - a;
- a = temp;
- di -= two;
- /* scale b to avoid spurious overflow */
- if(b>1e100) {
- a /= b;
- t /= b;
- b = one;
- }
+ }
+ else
+ {
+ for (i = n - 1, di = (double) (i + i); i > 0; i--)
+ {
+ temp = b;
+ b *= di;
+ b = b / x - a;
+ a = temp;
+ di -= two;
+ /* scale b to avoid spurious overflow */
+ if (b > 1e100)
+ {
+ a /= b;
+ t /= b;
+ b = one;
}
}
- /* j0() and j1() suffer enormous loss of precision at and
- * near zero; however, we know that their zero points never
- * coincide, so just choose the one further away from zero.
- */
- z = __ieee754_j0 (x);
- w = __ieee754_j1 (x);
- if (fabs (z) >= fabs (w))
- b = (t * z / b);
- else
- b = (t * w / a);
}
+ /* j0() and j1() suffer enormous loss of precision at and
+ * near zero; however, we know that their zero points never
+ * coincide, so just choose the one further away from zero.
+ */
+ z = __ieee754_j0 (x);
+ w = __ieee754_j1 (x);
+ if (fabs (z) >= fabs (w))
+ b = (t * z / b);
+ else
+ b = (t * w / a);
}
- if(sgn==1) return -b; else return b;
+ }
+ if (sgn == 1)
+ return -b;
+ else
+ return b;
}
strong_alias (__ieee754_jn, __jn_finite)
double
-__ieee754_yn(int n, double x)
+__ieee754_yn (int n, double x)
{
- int32_t i,hx,ix,lx;
- int32_t sign;
- double a, b, temp;
+ int32_t i, hx, ix, lx;
+ int32_t sign;
+ double a, b, temp;
- EXTRACT_WORDS(hx,lx,x);
- ix = 0x7fffffff&hx;
- /* if Y(n,NaN) is NaN */
- if(__builtin_expect((ix|((u_int32_t)(lx|-lx))>>31)>0x7ff00000,0))
- return x+x;
- if(__builtin_expect((ix|lx)==0, 0))
- return -HUGE_VAL+x; /* -inf and overflow exception. */;
- if(__builtin_expect(hx<0, 0)) return zero/(zero*x);
- sign = 1;
- if(n<0){
- n = -n;
- sign = 1 - ((n&1)<<1);
+ EXTRACT_WORDS (hx, lx, x);
+ ix = 0x7fffffff & hx;
+ /* if Y(n,NaN) is NaN */
+ if (__builtin_expect ((ix | ((u_int32_t) (lx | -lx)) >> 31) > 0x7ff00000, 0))
+ return x + x;
+ if (__builtin_expect ((ix | lx) == 0, 0))
+ return -HUGE_VAL + x;
+ /* -inf and overflow exception. */;
+ if (__builtin_expect (hx < 0, 0))
+ return zero / (zero * x);
+ sign = 1;
+ if (n < 0)
+ {
+ n = -n;
+ sign = 1 - ((n & 1) << 1);
+ }
+ if (n == 0)
+ return (__ieee754_y0 (x));
+ if (n == 1)
+ return (sign * __ieee754_y1 (x));
+ if (__builtin_expect (ix == 0x7ff00000, 0))
+ return zero;
+ if (ix >= 0x52D00000) /* x > 2**302 */
+ { /* (x >> n**2)
+ * Jn(x) = cos(x-(2n+1)*pi/4)*sqrt(2/x*pi)
+ * Yn(x) = sin(x-(2n+1)*pi/4)*sqrt(2/x*pi)
+ * Let s=sin(x), c=cos(x),
+ * xn=x-(2n+1)*pi/4, sqt2 = sqrt(2),then
+ *
+ * n sin(xn)*sqt2 cos(xn)*sqt2
+ * ----------------------------------
+ * 0 s-c c+s
+ * 1 -s-c -c+s
+ * 2 -s+c -c-s
+ * 3 s+c c-s
+ */
+ double c;
+ double s;
+ __sincos (x, &s, &c);
+ switch (n & 3)
+ {
+ case 0: temp = s - c; break;
+ case 1: temp = -s - c; break;
+ case 2: temp = -s + c; break;
+ case 3: temp = s + c; break;
}
- if(n==0) return(__ieee754_y0(x));
- if(n==1) return(sign*__ieee754_y1(x));
- if(__builtin_expect(ix==0x7ff00000, 0)) return zero;
- if(ix>=0x52D00000) { /* x > 2**302 */
- /* (x >> n**2)
- * Jn(x) = cos(x-(2n+1)*pi/4)*sqrt(2/x*pi)
- * Yn(x) = sin(x-(2n+1)*pi/4)*sqrt(2/x*pi)
- * Let s=sin(x), c=cos(x),
- * xn=x-(2n+1)*pi/4, sqt2 = sqrt(2),then
- *
- * n sin(xn)*sqt2 cos(xn)*sqt2
- * ----------------------------------
- * 0 s-c c+s
- * 1 -s-c -c+s
- * 2 -s+c -c-s
- * 3 s+c c-s
- */
- double c;
- double s;
- __sincos (x, &s, &c);
- switch(n&3) {
- case 0: temp = s - c; break;
- case 1: temp = -s - c; break;
- case 2: temp = -s + c; break;
- case 3: temp = s + c; break;
- }
- b = invsqrtpi*temp/__ieee754_sqrt(x);
- } else {
- u_int32_t high;
- a = __ieee754_y0(x);
- b = __ieee754_y1(x);
- /* quit if b is -inf */
- GET_HIGH_WORD(high,b);
- for(i=1;i<n&&high!=0xfff00000;i++){
- temp = b;
- b = ((double)(i+i)/x)*b - a;
- GET_HIGH_WORD(high,b);
- a = temp;
- }
- /* If B is +-Inf, set up errno accordingly. */
- if (! __finite (b))
- __set_errno (ERANGE);
+ b = invsqrtpi * temp / __ieee754_sqrt (x);
+ }
+ else
+ {
+ u_int32_t high;
+ a = __ieee754_y0 (x);
+ b = __ieee754_y1 (x);
+ /* quit if b is -inf */
+ GET_HIGH_WORD (high, b);
+ for (i = 1; i < n && high != 0xfff00000; i++)
+ {
+ temp = b;
+ b = ((double) (i + i) / x) * b - a;
+ GET_HIGH_WORD (high, b);
+ a = temp;
}
- if(sign>0) return b; else return -b;
+ /* If B is +-Inf, set up errno accordingly. */
+ if (!__finite (b))
+ __set_errno (ERANGE);
+ }
+ if (sign > 0)
+ return b;
+ else
+ return -b;
}
strong_alias (__ieee754_yn, __yn_finite)
diff --git a/sysdeps/ieee754/dbl-64/e_log.c b/sysdeps/ieee754/dbl-64/e_log.c
index f9300f9cef..a7ab544354 100644
--- a/sysdeps/ieee754/dbl-64/e_log.c
+++ b/sysdeps/ieee754/dbl-64/e_log.c
@@ -39,6 +39,7 @@
#include "mpa.h"
#include "MathLib.h"
#include <math_private.h>
+#include <stap-probe.h>
#ifndef SECTION
# define SECTION
@@ -55,12 +56,12 @@ SECTION
__ieee754_log (double x)
{
#define M 4
- static const int pr[M] = {8, 10, 18, 32};
+ static const int pr[M] = { 8, 10, 18, 32 };
int i, j, n, ux, dx, p;
double dbl_n, u, p0, q, r0, w, nln2a, luai, lubi, lvaj, lvbj,
- sij, ssij, ttij, A, B, B0, y, y1, y2, polI, polII, sa, sb,
- t1, t2, t7, t8, t, ra, rb, ww,
- a0, aa0, s1, s2, ss2, s3, ss3, a1, aa1, a, aa, b, bb, c;
+ sij, ssij, ttij, A, B, B0, y, y1, y2, polI, polII, sa, sb,
+ t1, t2, t7, t8, t, ra, rb, ww,
+ a0, aa0, s1, s2, ss2, s3, ss3, a1, aa1, a, aa, b, bb, c;
#ifndef DLA_FMS
double t3, t4, t5, t6;
#endif
@@ -79,15 +80,15 @@ __ieee754_log (double x)
if (__builtin_expect (ux < 0x00100000, 0))
{
if (__builtin_expect (((ux & 0x7fffffff) | dx) == 0, 0))
- return MHALF / 0.0; /* return -INF */
+ return MHALF / 0.0; /* return -INF */
if (__builtin_expect (ux < 0, 0))
- return (x - x) / 0.0; /* return NaN */
+ return (x - x) / 0.0; /* return NaN */
n -= 54;
- x *= two54.d; /* scale x */
+ x *= two54.d; /* scale x */
num.d = x;
}
if (__builtin_expect (ux >= 0x7ff00000, 0))
- return x + x; /* INF or NaN */
+ return x + x; /* INF or NaN */
/* Regular values of x */
@@ -242,8 +243,12 @@ stage_n:
__mp_dbl (&mpy1, &y1, p);
__mp_dbl (&mpy2, &y2, p);
if (y1 == y2)
- return y1;
+ {
+ LIBC_PROBE (slowlog, 3, &p, &x, &y1);
+ return y1;
+ }
}
+ LIBC_PROBE (slowlog_inexact, 3, &p, &x, &y1);
return y1;
}
diff --git a/sysdeps/ieee754/dbl-64/e_log10.c b/sysdeps/ieee754/dbl-64/e_log10.c
index ab5069e58e..c3d465a4a9 100644
--- a/sysdeps/ieee754/dbl-64/e_log10.c
+++ b/sysdeps/ieee754/dbl-64/e_log10.c
@@ -46,10 +46,10 @@
#include <math.h>
#include <math_private.h>
-static const double two54 = 1.80143985094819840000e+16; /* 0x43500000, 0x00000000 */
-static const double ivln10 = 4.34294481903251816668e-01; /* 0x3FDBCB7B, 0x1526E50E */
-static const double log10_2hi = 3.01029995663611771306e-01; /* 0x3FD34413, 0x509F6000 */
-static const double log10_2lo = 3.69423907715893078616e-13; /* 0x3D59FEF3, 0x11F12B36 */
+static const double two54 = 1.80143985094819840000e+16; /* 0x43500000, 0x00000000 */
+static const double ivln10 = 4.34294481903251816668e-01; /* 0x3FDBCB7B, 0x1526E50E */
+static const double log10_2hi = 3.01029995663611771306e-01; /* 0x3FD34413, 0x509F6000 */
+static const double log10_2lo = 3.69423907715893078616e-13; /* 0x3D59FEF3, 0x11F12B36 */
double
__ieee754_log10 (double x)
@@ -62,13 +62,13 @@ __ieee754_log10 (double x)
k = 0;
if (hx < 0x00100000)
- { /* x < 2**-1022 */
+ { /* x < 2**-1022 */
if (__builtin_expect (((hx & 0x7fffffff) | lx) == 0, 0))
- return -two54 / (x - x); /* log(+-0)=-inf */
+ return -two54 / (x - x); /* log(+-0)=-inf */
if (__builtin_expect (hx < 0, 0))
- return (x - x) / (x - x); /* log(-#) = NaN */
+ return (x - x) / (x - x); /* log(-#) = NaN */
k -= 54;
- x *= two54; /* subnormal number, scale up x */
+ x *= two54; /* subnormal number, scale up x */
GET_HIGH_WORD (hx, x);
}
if (__builtin_expect (hx >= 0x7ff00000, 0))
diff --git a/sysdeps/ieee754/dbl-64/e_log2.c b/sysdeps/ieee754/dbl-64/e_log2.c
index 4d5cab0ed3..890a4a2bd0 100644
--- a/sysdeps/ieee754/dbl-64/e_log2.c
+++ b/sysdeps/ieee754/dbl-64/e_log2.c
@@ -58,14 +58,14 @@
#include <math_private.h>
static const double ln2 = 0.69314718055994530942;
-static const double two54 = 1.80143985094819840000e+16; /* 43500000 00000000 */
-static const double Lg1 = 6.666666666666735130e-01; /* 3FE55555 55555593 */
-static const double Lg2 = 3.999999999940941908e-01; /* 3FD99999 9997FA04 */
-static const double Lg3 = 2.857142874366239149e-01; /* 3FD24924 94229359 */
-static const double Lg4 = 2.222219843214978396e-01; /* 3FCC71C5 1D8E78AF */
-static const double Lg5 = 1.818357216161805012e-01; /* 3FC74664 96CB03DE */
-static const double Lg6 = 1.531383769920937332e-01; /* 3FC39A09 D078C69F */
-static const double Lg7 = 1.479819860511658591e-01; /* 3FC2F112 DF3E5244 */
+static const double two54 = 1.80143985094819840000e+16; /* 43500000 00000000 */
+static const double Lg1 = 6.666666666666735130e-01; /* 3FE55555 55555593 */
+static const double Lg2 = 3.999999999940941908e-01; /* 3FD99999 9997FA04 */
+static const double Lg3 = 2.857142874366239149e-01; /* 3FD24924 94229359 */
+static const double Lg4 = 2.222219843214978396e-01; /* 3FCC71C5 1D8E78AF */
+static const double Lg5 = 1.818357216161805012e-01; /* 3FC74664 96CB03DE */
+static const double Lg6 = 1.531383769920937332e-01; /* 3FC39A09 D078C69F */
+static const double Lg7 = 1.479819860511658591e-01; /* 3FC2F112 DF3E5244 */
static const double zero = 0.0;
@@ -80,13 +80,13 @@ __ieee754_log2 (double x)
k = 0;
if (hx < 0x00100000)
- { /* x < 2**-1022 */
+ { /* x < 2**-1022 */
if (__builtin_expect (((hx & 0x7fffffff) | lx) == 0, 0))
- return -two54 / (x - x); /* log(+-0)=-inf */
+ return -two54 / (x - x); /* log(+-0)=-inf */
if (__builtin_expect (hx < 0, 0))
- return (x - x) / (x - x); /* log(-#) = NaN */
+ return (x - x) / (x - x); /* log(-#) = NaN */
k -= 54;
- x *= two54; /* subnormal number, scale up x */
+ x *= two54; /* subnormal number, scale up x */
GET_HIGH_WORD (hx, x);
}
if (__builtin_expect (hx >= 0x7ff00000, 0))
@@ -94,12 +94,12 @@ __ieee754_log2 (double x)
k += (hx >> 20) - 1023;
hx &= 0x000fffff;
i = (hx + 0x95f64) & 0x100000;
- SET_HIGH_WORD (x, hx | (i ^ 0x3ff00000)); /* normalize x or x/2 */
+ SET_HIGH_WORD (x, hx | (i ^ 0x3ff00000)); /* normalize x or x/2 */
k += (i >> 20);
dk = (double) k;
f = x - 1.0;
if ((0x000fffff & (2 + hx)) < 3)
- { /* |f| < 2**-20 */
+ { /* |f| < 2**-20 */
if (f == zero)
return dk;
R = f * f * (0.5 - 0.33333333333333333 * f);
diff --git a/sysdeps/ieee754/dbl-64/e_pow.c b/sysdeps/ieee754/dbl-64/e_pow.c
index 9a766e7224..9cf2309174 100644
--- a/sysdeps/ieee754/dbl-64/e_pow.c
+++ b/sysdeps/ieee754/dbl-64/e_pow.c
@@ -49,354 +49,407 @@
static const double huge = 1.0e300, tiny = 1.0e-300;
-double __exp1(double x, double xx, double error);
-static double log1(double x, double *delta, double *error);
-static double my_log2(double x, double *delta, double *error);
-double __slowpow(double x, double y,double z);
-static double power1(double x, double y);
-static int checkint(double x);
+double __exp1 (double x, double xx, double error);
+static double log1 (double x, double *delta, double *error);
+static double my_log2 (double x, double *delta, double *error);
+double __slowpow (double x, double y, double z);
+static double power1 (double x, double y);
+static int checkint (double x);
-/***************************************************************************/
-/* An ultimate power routine. Given two IEEE double machine numbers y,x */
-/* it computes the correctly rounded (to nearest) value of X^y. */
-/***************************************************************************/
+/* An ultimate power routine. Given two IEEE double machine numbers y, x it
+ computes the correctly rounded (to nearest) value of X^y. */
double
SECTION
-__ieee754_pow(double x, double y) {
- double z,a,aa,error, t,a1,a2,y1,y2;
- mynumber u,v;
+__ieee754_pow (double x, double y)
+{
+ double z, a, aa, error, t, a1, a2, y1, y2;
+ mynumber u, v;
int k;
- int4 qx,qy;
- v.x=y;
- u.x=x;
- if (v.i[LOW_HALF] == 0) { /* of y */
- qx = u.i[HIGH_HALF]&0x7fffffff;
- /* Is x a NaN? */
- if (((qx == 0x7ff00000) && (u.i[LOW_HALF] != 0)) || (qx > 0x7ff00000))
- return x;
- if (y == 1.0) return x;
- if (y == 2.0) return x*x;
- if (y == -1.0) return 1.0/x;
- if (y == 0) return 1.0;
- }
+ int4 qx, qy;
+ v.x = y;
+ u.x = x;
+ if (v.i[LOW_HALF] == 0)
+ { /* of y */
+ qx = u.i[HIGH_HALF] & 0x7fffffff;
+ /* Is x a NaN? */
+ if (((qx == 0x7ff00000) && (u.i[LOW_HALF] != 0)) || (qx > 0x7ff00000))
+ return x;
+ if (y == 1.0)
+ return x;
+ if (y == 2.0)
+ return x * x;
+ if (y == -1.0)
+ return 1.0 / x;
+ if (y == 0)
+ return 1.0;
+ }
/* else */
- if(((u.i[HIGH_HALF]>0 && u.i[HIGH_HALF]<0x7ff00000)|| /* x>0 and not x->0 */
- (u.i[HIGH_HALF]==0 && u.i[LOW_HALF]!=0)) &&
- /* 2^-1023< x<= 2^-1023 * 0x1.0000ffffffff */
- (v.i[HIGH_HALF]&0x7fffffff) < 0x4ff00000) { /* if y<-1 or y>1 */
- double retval;
+ if (((u.i[HIGH_HALF] > 0 && u.i[HIGH_HALF] < 0x7ff00000) || /* x>0 and not x->0 */
+ (u.i[HIGH_HALF] == 0 && u.i[LOW_HALF] != 0)) &&
+ /* 2^-1023< x<= 2^-1023 * 0x1.0000ffffffff */
+ (v.i[HIGH_HALF] & 0x7fffffff) < 0x4ff00000)
+ { /* if y<-1 or y>1 */
+ double retval;
- SET_RESTORE_ROUND (FE_TONEAREST);
+ SET_RESTORE_ROUND (FE_TONEAREST);
- /* Avoid internal underflow for tiny y. The exact value of y does
- not matter if |y| <= 2**-64. */
- if (ABS (y) < 0x1p-64)
- y = y < 0 ? -0x1p-64 : 0x1p-64;
- z = log1(x,&aa,&error); /* x^y =e^(y log (X)) */
- t = y*CN;
- y1 = t - (t-y);
- y2 = y - y1;
- t = z*CN;
- a1 = t - (t-z);
- a2 = (z - a1)+aa;
- a = y1*a1;
- aa = y2*a1 + y*a2;
- a1 = a+aa;
- a2 = (a-a1)+aa;
- error = error*ABS(y);
- t = __exp1(a1,a2,1.9e16*error); /* return -10 or 0 if wasn't computed exactly */
- retval = (t>0)?t:power1(x,y);
+ /* Avoid internal underflow for tiny y. The exact value of y does
+ not matter if |y| <= 2**-64. */
+ if (ABS (y) < 0x1p-64)
+ y = y < 0 ? -0x1p-64 : 0x1p-64;
+ z = log1 (x, &aa, &error); /* x^y =e^(y log (X)) */
+ t = y * CN;
+ y1 = t - (t - y);
+ y2 = y - y1;
+ t = z * CN;
+ a1 = t - (t - z);
+ a2 = (z - a1) + aa;
+ a = y1 * a1;
+ aa = y2 * a1 + y * a2;
+ a1 = a + aa;
+ a2 = (a - a1) + aa;
+ error = error * ABS (y);
+ t = __exp1 (a1, a2, 1.9e16 * error); /* return -10 or 0 if wasn't computed exactly */
+ retval = (t > 0) ? t : power1 (x, y);
- return retval;
- }
+ return retval;
+ }
- if (x == 0) {
- if (((v.i[HIGH_HALF] & 0x7fffffff) == 0x7ff00000 && v.i[LOW_HALF] != 0)
- || (v.i[HIGH_HALF] & 0x7fffffff) > 0x7ff00000) /* NaN */
- return y;
- if (ABS(y) > 1.0e20) return (y>0)?0:1.0/0.0;
- k = checkint(y);
- if (k == -1)
- return y < 0 ? 1.0/x : x;
- else
- return y < 0 ? 1.0/0.0 : 0.0; /* return 0 */
- }
+ if (x == 0)
+ {
+ if (((v.i[HIGH_HALF] & 0x7fffffff) == 0x7ff00000 && v.i[LOW_HALF] != 0)
+ || (v.i[HIGH_HALF] & 0x7fffffff) > 0x7ff00000) /* NaN */
+ return y;
+ if (ABS (y) > 1.0e20)
+ return (y > 0) ? 0 : 1.0 / 0.0;
+ k = checkint (y);
+ if (k == -1)
+ return y < 0 ? 1.0 / x : x;
+ else
+ return y < 0 ? 1.0 / 0.0 : 0.0; /* return 0 */
+ }
- qx = u.i[HIGH_HALF]&0x7fffffff; /* no sign */
- qy = v.i[HIGH_HALF]&0x7fffffff; /* no sign */
+ qx = u.i[HIGH_HALF] & 0x7fffffff; /* no sign */
+ qy = v.i[HIGH_HALF] & 0x7fffffff; /* no sign */
- if (qx >= 0x7ff00000 && (qx > 0x7ff00000 || u.i[LOW_HALF] != 0)) /* NaN */
+ if (qx >= 0x7ff00000 && (qx > 0x7ff00000 || u.i[LOW_HALF] != 0)) /* NaN */
return x;
- if (qy >= 0x7ff00000 && (qy > 0x7ff00000 || v.i[LOW_HALF] != 0)) /* NaN */
+ if (qy >= 0x7ff00000 && (qy > 0x7ff00000 || v.i[LOW_HALF] != 0)) /* NaN */
return x == 1.0 ? 1.0 : y;
/* if x<0 */
- if (u.i[HIGH_HALF] < 0) {
- k = checkint(y);
- if (k==0) {
- if (qy == 0x7ff00000) {
- if (x == -1.0) return 1.0;
- else if (x > -1.0) return v.i[HIGH_HALF] < 0 ? INF.x : 0.0;
- else return v.i[HIGH_HALF] < 0 ? 0.0 : INF.x;
- }
+ if (u.i[HIGH_HALF] < 0)
+ {
+ k = checkint (y);
+ if (k == 0)
+ {
+ if (qy == 0x7ff00000)
+ {
+ if (x == -1.0)
+ return 1.0;
+ else if (x > -1.0)
+ return v.i[HIGH_HALF] < 0 ? INF.x : 0.0;
+ else
+ return v.i[HIGH_HALF] < 0 ? 0.0 : INF.x;
+ }
+ else if (qx == 0x7ff00000)
+ return y < 0 ? 0.0 : INF.x;
+ return (x - x) / (x - x); /* y not integer and x<0 */
+ }
else if (qx == 0x7ff00000)
- return y < 0 ? 0.0 : INF.x;
- return (x - x) / (x - x); /* y not integer and x<0 */
+ {
+ if (k < 0)
+ return y < 0 ? nZERO.x : nINF.x;
+ else
+ return y < 0 ? 0.0 : INF.x;
+ }
+ /* if y even or odd */
+ return (k == 1) ? __ieee754_pow (-x, y) : -__ieee754_pow (-x, y);
}
- else if (qx == 0x7ff00000)
- {
- if (k < 0)
- return y < 0 ? nZERO.x : nINF.x;
- else
- return y < 0 ? 0.0 : INF.x;
- }
- return (k==1)?__ieee754_pow(-x,y):-__ieee754_pow(-x,y); /* if y even or odd */
- }
/* x>0 */
- if (qx == 0x7ff00000) /* x= 2^-0x3ff */
+ if (qx == 0x7ff00000) /* x= 2^-0x3ff */
return y > 0 ? x : 0;
- if (qy > 0x45f00000 && qy < 0x7ff00000) {
- if (x == 1.0) return 1.0;
- if (y>0) return (x>1.0)?huge*huge:tiny*tiny;
- if (y<0) return (x<1.0)?huge*huge:tiny*tiny;
- }
+ if (qy > 0x45f00000 && qy < 0x7ff00000)
+ {
+ if (x == 1.0)
+ return 1.0;
+ if (y > 0)
+ return (x > 1.0) ? huge * huge : tiny * tiny;
+ if (y < 0)
+ return (x < 1.0) ? huge * huge : tiny * tiny;
+ }
- if (x == 1.0) return 1.0;
- if (y>0) return (x>1.0)?INF.x:0;
- if (y<0) return (x<1.0)?INF.x:0;
- return 0; /* unreachable, to make the compiler happy */
+ if (x == 1.0)
+ return 1.0;
+ if (y > 0)
+ return (x > 1.0) ? INF.x : 0;
+ if (y < 0)
+ return (x < 1.0) ? INF.x : 0;
+ return 0; /* unreachable, to make the compiler happy */
}
+
#ifndef __ieee754_pow
strong_alias (__ieee754_pow, __pow_finite)
#endif
-/**************************************************************************/
-/* Computing x^y using more accurate but more slow log routine */
-/**************************************************************************/
+/* Compute x^y using more accurate but more slow log routine. */
static double
SECTION
-power1(double x, double y) {
- double z,a,aa,error, t,a1,a2,y1,y2;
- z = my_log2(x,&aa,&error);
- t = y*CN;
- y1 = t - (t-y);
+power1 (double x, double y)
+{
+ double z, a, aa, error, t, a1, a2, y1, y2;
+ z = my_log2 (x, &aa, &error);
+ t = y * CN;
+ y1 = t - (t - y);
y2 = y - y1;
- t = z*CN;
- a1 = t - (t-z);
+ t = z * CN;
+ a1 = t - (t - z);
a2 = z - a1;
- a = y*z;
- aa = ((y1*a1-a)+y1*a2+y2*a1)+y2*a2+aa*y;
- a1 = a+aa;
- a2 = (a-a1)+aa;
- error = error*ABS(y);
- t = __exp1(a1,a2,1.9e16*error);
- return (t >= 0)?t:__slowpow(x,y,z);
+ a = y * z;
+ aa = ((y1 * a1 - a) + y1 * a2 + y2 * a1) + y2 * a2 + aa * y;
+ a1 = a + aa;
+ a2 = (a - a1) + aa;
+ error = error * ABS (y);
+ t = __exp1 (a1, a2, 1.9e16 * error);
+ return (t >= 0) ? t : __slowpow (x, y, z);
}
-/****************************************************************************/
-/* Computing log(x) (x is left argument). The result is the returned double */
-/* + the parameter delta. */
-/* The result is bounded by error (rightmost argument) */
-/****************************************************************************/
+/* Compute log(x) (x is left argument). The result is the returned double + the
+ parameter DELTA. The result is bounded by ERROR. */
static double
SECTION
-log1(double x, double *delta, double *error) {
- int i,j,m;
- double uu,vv,eps,nx,e,e1,e2,t,t1,t2,res,add=0;
- mynumber u,v;
+log1 (double x, double *delta, double *error)
+{
+ int i, j, m;
+ double uu, vv, eps, nx, e, e1, e2, t, t1, t2, res, add = 0;
+ mynumber u, v;
#ifdef BIG_ENDI
- mynumber
-/**/ two52 = {{0x43300000, 0x00000000}}; /* 2**52 */
+ mynumber /**/ two52 = {{0x43300000, 0x00000000}}; /* 2**52 */
#else
-#ifdef LITTLE_ENDI
- mynumber
-/**/ two52 = {{0x00000000, 0x43300000}}; /* 2**52 */
-#endif
+# ifdef LITTLE_ENDI
+ mynumber /**/ two52 = {{0x00000000, 0x43300000}}; /* 2**52 */
+# endif
#endif
u.x = x;
m = u.i[HIGH_HALF];
*error = 0;
*delta = 0;
- if (m < 0x00100000) /* 1<x<2^-1007 */
- { x = x*t52.x; add = -52.0; u.x = x; m = u.i[HIGH_HALF];}
+ if (m < 0x00100000) /* 1<x<2^-1007 */
+ {
+ x = x * t52.x;
+ add = -52.0;
+ u.x = x;
+ m = u.i[HIGH_HALF];
+ }
- if ((m&0x000fffff) < 0x0006a09e)
- {u.i[HIGH_HALF] = (m&0x000fffff)|0x3ff00000; two52.i[LOW_HALF]=(m>>20); }
+ if ((m & 0x000fffff) < 0x0006a09e)
+ {
+ u.i[HIGH_HALF] = (m & 0x000fffff) | 0x3ff00000;
+ two52.i[LOW_HALF] = (m >> 20);
+ }
else
- {u.i[HIGH_HALF] = (m&0x000fffff)|0x3fe00000; two52.i[LOW_HALF]=(m>>20)+1; }
+ {
+ u.i[HIGH_HALF] = (m & 0x000fffff) | 0x3fe00000;
+ two52.i[LOW_HALF] = (m >> 20) + 1;
+ }
v.x = u.x + bigu.x;
uu = v.x - bigu.x;
- i = (v.i[LOW_HALF]&0x000003ff)<<2;
- if (two52.i[LOW_HALF] == 1023) /* nx = 0 */
- {
- if (i > 1192 && i < 1208) /* |x-1| < 1.5*2**-10 */
- {
+ i = (v.i[LOW_HALF] & 0x000003ff) << 2;
+ if (two52.i[LOW_HALF] == 1023) /* nx = 0 */
+ {
+ if (i > 1192 && i < 1208) /* |x-1| < 1.5*2**-10 */
+ {
t = x - 1.0;
- t1 = (t+5.0e6)-5.0e6;
- t2 = t-t1;
- e1 = t - 0.5*t1*t1;
- e2 = t*t*t*(r3+t*(r4+t*(r5+t*(r6+t*(r7+t*r8)))))-0.5*t2*(t+t1);
- res = e1+e2;
- *error = 1.0e-21*ABS(t);
- *delta = (e1-res)+e2;
+ t1 = (t + 5.0e6) - 5.0e6;
+ t2 = t - t1;
+ e1 = t - 0.5 * t1 * t1;
+ e2 = (t * t * t * (r3 + t * (r4 + t * (r5 + t * (r6 + t
+ * (r7 + t * r8)))))
+ - 0.5 * t2 * (t + t1));
+ res = e1 + e2;
+ *error = 1.0e-21 * ABS (t);
+ *delta = (e1 - res) + e2;
return res;
- } /* |x-1| < 1.5*2**-10 */
+ } /* |x-1| < 1.5*2**-10 */
else
- {
- v.x = u.x*(ui.x[i]+ui.x[i+1])+bigv.x;
- vv = v.x-bigv.x;
- j = v.i[LOW_HALF]&0x0007ffff;
- j = j+j+j;
- eps = u.x - uu*vv;
- e1 = eps*ui.x[i];
- e2 = eps*(ui.x[i+1]+vj.x[j]*(ui.x[i]+ui.x[i+1]));
- e = e1+e2;
- e2 = ((e1-e)+e2);
- t=ui.x[i+2]+vj.x[j+1];
- t1 = t+e;
- t2 = (((t-t1)+e)+(ui.x[i+3]+vj.x[j+2]))+e2+e*e*(p2+e*(p3+e*p4));
- res=t1+t2;
+ {
+ v.x = u.x * (ui.x[i] + ui.x[i + 1]) + bigv.x;
+ vv = v.x - bigv.x;
+ j = v.i[LOW_HALF] & 0x0007ffff;
+ j = j + j + j;
+ eps = u.x - uu * vv;
+ e1 = eps * ui.x[i];
+ e2 = eps * (ui.x[i + 1] + vj.x[j] * (ui.x[i] + ui.x[i + 1]));
+ e = e1 + e2;
+ e2 = ((e1 - e) + e2);
+ t = ui.x[i + 2] + vj.x[j + 1];
+ t1 = t + e;
+ t2 = ((((t - t1) + e) + (ui.x[i + 3] + vj.x[j + 2])) + e2 + e * e
+ * (p2 + e * (p3 + e * p4)));
+ res = t1 + t2;
*error = 1.0e-24;
- *delta = (t1-res)+t2;
+ *delta = (t1 - res) + t2;
return res;
- }
- } /* nx = 0 */
- else /* nx != 0 */
- {
+ }
+ } /* nx = 0 */
+ else /* nx != 0 */
+ {
eps = u.x - uu;
- nx = (two52.x - two52e.x)+add;
- e1 = eps*ui.x[i];
- e2 = eps*ui.x[i+1];
- e=e1+e2;
- e2 = (e1-e)+e2;
- t=nx*ln2a.x+ui.x[i+2];
- t1=t+e;
- t2=(((t-t1)+e)+nx*ln2b.x+ui.x[i+3]+e2)+e*e*(q2+e*(q3+e*(q4+e*(q5+e*q6))));
- res = t1+t2;
+ nx = (two52.x - two52e.x) + add;
+ e1 = eps * ui.x[i];
+ e2 = eps * ui.x[i + 1];
+ e = e1 + e2;
+ e2 = (e1 - e) + e2;
+ t = nx * ln2a.x + ui.x[i + 2];
+ t1 = t + e;
+ t2 = ((((t - t1) + e) + nx * ln2b.x + ui.x[i + 3] + e2) + e * e
+ * (q2 + e * (q3 + e * (q4 + e * (q5 + e * q6)))));
+ res = t1 + t2;
*error = 1.0e-21;
- *delta = (t1-res)+t2;
+ *delta = (t1 - res) + t2;
return res;
- } /* nx != 0 */
+ } /* nx != 0 */
}
-/****************************************************************************/
-/* More slow but more accurate routine of log */
-/* Computing log(x)(x is left argument).The result is return double + delta.*/
-/* The result is bounded by error (right argument) */
-/****************************************************************************/
+/* Slower but more accurate routine of log. The returned result is double +
+ DELTA. The result is bounded by ERROR. */
static double
SECTION
-my_log2(double x, double *delta, double *error) {
- int i,j,m;
- double uu,vv,eps,nx,e,e1,e2,t,t1,t2,res,add=0;
- double ou1,ou2,lu1,lu2,ov,lv1,lv2,a,a1,a2;
- double y,yy,z,zz,j1,j2,j7,j8;
+my_log2 (double x, double *delta, double *error)
+{
+ int i, j, m;
+ double uu, vv, eps, nx, e, e1, e2, t, t1, t2, res, add = 0;
+ double ou1, ou2, lu1, lu2, ov, lv1, lv2, a, a1, a2;
+ double y, yy, z, zz, j1, j2, j7, j8;
#ifndef DLA_FMS
- double j3,j4,j5,j6;
+ double j3, j4, j5, j6;
#endif
- mynumber u,v;
+ mynumber u, v;
#ifdef BIG_ENDI
- mynumber
-/**/ two52 = {{0x43300000, 0x00000000}}; /* 2**52 */
+ mynumber /**/ two52 = {{0x43300000, 0x00000000}}; /* 2**52 */
#else
-#ifdef LITTLE_ENDI
- mynumber
-/**/ two52 = {{0x00000000, 0x43300000}}; /* 2**52 */
-#endif
+# ifdef LITTLE_ENDI
+ mynumber /**/ two52 = {{0x00000000, 0x43300000}}; /* 2**52 */
+# endif
#endif
u.x = x;
m = u.i[HIGH_HALF];
*error = 0;
*delta = 0;
- add=0;
- if (m<0x00100000) { /* x < 2^-1022 */
- x = x*t52.x; add = -52.0; u.x = x; m = u.i[HIGH_HALF]; }
+ add = 0;
+ if (m < 0x00100000)
+ { /* x < 2^-1022 */
+ x = x * t52.x;
+ add = -52.0;
+ u.x = x;
+ m = u.i[HIGH_HALF];
+ }
- if ((m&0x000fffff) < 0x0006a09e)
- {u.i[HIGH_HALF] = (m&0x000fffff)|0x3ff00000; two52.i[LOW_HALF]=(m>>20); }
+ if ((m & 0x000fffff) < 0x0006a09e)
+ {
+ u.i[HIGH_HALF] = (m & 0x000fffff) | 0x3ff00000;
+ two52.i[LOW_HALF] = (m >> 20);
+ }
else
- {u.i[HIGH_HALF] = (m&0x000fffff)|0x3fe00000; two52.i[LOW_HALF]=(m>>20)+1; }
+ {
+ u.i[HIGH_HALF] = (m & 0x000fffff) | 0x3fe00000;
+ two52.i[LOW_HALF] = (m >> 20) + 1;
+ }
v.x = u.x + bigu.x;
uu = v.x - bigu.x;
- i = (v.i[LOW_HALF]&0x000003ff)<<2;
+ i = (v.i[LOW_HALF] & 0x000003ff) << 2;
/*------------------------------------- |x-1| < 2**-11------------------------------- */
- if ((two52.i[LOW_HALF] == 1023) && (i == 1200))
- {
+ if ((two52.i[LOW_HALF] == 1023) && (i == 1200))
+ {
t = x - 1.0;
- EMULV(t,s3,y,yy,j1,j2,j3,j4,j5);
- ADD2(-0.5,0,y,yy,z,zz,j1,j2);
- MUL2(t,0,z,zz,y,yy,j1,j2,j3,j4,j5,j6,j7,j8);
- MUL2(t,0,y,yy,z,zz,j1,j2,j3,j4,j5,j6,j7,j8);
+ EMULV (t, s3, y, yy, j1, j2, j3, j4, j5);
+ ADD2 (-0.5, 0, y, yy, z, zz, j1, j2);
+ MUL2 (t, 0, z, zz, y, yy, j1, j2, j3, j4, j5, j6, j7, j8);
+ MUL2 (t, 0, y, yy, z, zz, j1, j2, j3, j4, j5, j6, j7, j8);
- e1 = t+z;
- e2 = (((t-e1)+z)+zz)+t*t*t*(ss3+t*(s4+t*(s5+t*(s6+t*(s7+t*s8)))));
- res = e1+e2;
- *error = 1.0e-25*ABS(t);
- *delta = (e1-res)+e2;
+ e1 = t + z;
+ e2 = ((((t - e1) + z) + zz) + t * t * t
+ * (ss3 + t * (s4 + t * (s5 + t * (s6 + t * (s7 + t * s8))))));
+ res = e1 + e2;
+ *error = 1.0e-25 * ABS (t);
+ *delta = (e1 - res) + e2;
return res;
- }
+ }
/*----------------------------- |x-1| > 2**-11 -------------------------- */
else
- { /*Computing log(x) according to log table */
- nx = (two52.x - two52e.x)+add;
+ { /*Computing log(x) according to log table */
+ nx = (two52.x - two52e.x) + add;
ou1 = ui.x[i];
- ou2 = ui.x[i+1];
- lu1 = ui.x[i+2];
- lu2 = ui.x[i+3];
- v.x = u.x*(ou1+ou2)+bigv.x;
- vv = v.x-bigv.x;
- j = v.i[LOW_HALF]&0x0007ffff;
- j = j+j+j;
- eps = u.x - uu*vv;
- ov = vj.x[j];
- lv1 = vj.x[j+1];
- lv2 = vj.x[j+2];
- a = (ou1+ou2)*(1.0+ov);
- a1 = (a+1.0e10)-1.0e10;
- a2 = a*(1.0-a1*uu*vv);
- e1 = eps*a1;
- e2 = eps*a2;
- e = e1+e2;
- e2 = (e1-e)+e2;
- t=nx*ln2a.x+lu1+lv1;
- t1 = t+e;
- t2 = (((t-t1)+e)+(lu2+lv2+nx*ln2b.x+e2))+e*e*(p2+e*(p3+e*p4));
- res=t1+t2;
+ ou2 = ui.x[i + 1];
+ lu1 = ui.x[i + 2];
+ lu2 = ui.x[i + 3];
+ v.x = u.x * (ou1 + ou2) + bigv.x;
+ vv = v.x - bigv.x;
+ j = v.i[LOW_HALF] & 0x0007ffff;
+ j = j + j + j;
+ eps = u.x - uu * vv;
+ ov = vj.x[j];
+ lv1 = vj.x[j + 1];
+ lv2 = vj.x[j + 2];
+ a = (ou1 + ou2) * (1.0 + ov);
+ a1 = (a + 1.0e10) - 1.0e10;
+ a2 = a * (1.0 - a1 * uu * vv);
+ e1 = eps * a1;
+ e2 = eps * a2;
+ e = e1 + e2;
+ e2 = (e1 - e) + e2;
+ t = nx * ln2a.x + lu1 + lv1;
+ t1 = t + e;
+ t2 = ((((t - t1) + e) + (lu2 + lv2 + nx * ln2b.x + e2)) + e * e
+ * (p2 + e * (p3 + e * p4)));
+ res = t1 + t2;
*error = 1.0e-27;
- *delta = (t1-res)+t2;
+ *delta = (t1 - res) + t2;
return res;
- }
+ }
}
-/**********************************************************************/
-/* Routine receives a double x and checks if it is an integer. If not */
-/* it returns 0, else it returns 1 if even or -1 if odd. */
-/**********************************************************************/
+/* This function receives a double x and checks if it is an integer. If not,
+ it returns 0, else it returns 1 if even or -1 if odd. */
static int
SECTION
-checkint(double x) {
- union {int4 i[2]; double x;} u;
- int k,m,n;
+checkint (double x)
+{
+ union
+ {
+ int4 i[2];
+ double x;
+ } u;
+ int k, m, n;
u.x = x;
- m = u.i[HIGH_HALF]&0x7fffffff; /* no sign */
- if (m >= 0x7ff00000) return 0; /* x is +/-inf or NaN */
- if (m >= 0x43400000) return 1; /* |x| >= 2**53 */
- if (m < 0x40000000) return 0; /* |x| < 2, can not be 0 or 1 */
+ m = u.i[HIGH_HALF] & 0x7fffffff; /* no sign */
+ if (m >= 0x7ff00000)
+ return 0; /* x is +/-inf or NaN */
+ if (m >= 0x43400000)
+ return 1; /* |x| >= 2**53 */
+ if (m < 0x40000000)
+ return 0; /* |x| < 2, can not be 0 or 1 */
n = u.i[LOW_HALF];
- k = (m>>20)-1023; /* 1 <= k <= 52 */
- if (k == 52) return (n&1)? -1:1; /* odd or even*/
- if (k>20) {
- if (n<<(k-20)) return 0; /* if not integer */
- return (n<<(k-21))?-1:1;
- }
- if (n) return 0; /*if not integer*/
- if (k == 20) return (m&1)? -1:1;
- if (m<<(k+12)) return 0;
- return (m<<(k+11))?-1:1;
+ k = (m >> 20) - 1023; /* 1 <= k <= 52 */
+ if (k == 52)
+ return (n & 1) ? -1 : 1; /* odd or even */
+ if (k > 20)
+ {
+ if (n << (k - 20))
+ return 0; /* if not integer */
+ return (n << (k - 21)) ? -1 : 1;
+ }
+ if (n)
+ return 0; /*if not integer */
+ if (k == 20)
+ return (m & 1) ? -1 : 1;
+ if (m << (k + 12))
+ return 0;
+ return (m << (k + 11)) ? -1 : 1;
}
diff --git a/sysdeps/ieee754/dbl-64/e_rem_pio2.c b/sysdeps/ieee754/dbl-64/e_rem_pio2.c
index 4478be0b07..2f55ca294b 100644
--- a/sysdeps/ieee754/dbl-64/e_rem_pio2.c
+++ b/sysdeps/ieee754/dbl-64/e_rem_pio2.c
@@ -57,110 +57,137 @@ static const int32_t npio2_hw[] = {
*/
static const double
-zero = 0.00000000000000000000e+00, /* 0x00000000, 0x00000000 */
-half = 5.00000000000000000000e-01, /* 0x3FE00000, 0x00000000 */
-two24 = 1.67772160000000000000e+07, /* 0x41700000, 0x00000000 */
-invpio2 = 6.36619772367581382433e-01, /* 0x3FE45F30, 0x6DC9C883 */
-pio2_1 = 1.57079632673412561417e+00, /* 0x3FF921FB, 0x54400000 */
-pio2_1t = 6.07710050650619224932e-11, /* 0x3DD0B461, 0x1A626331 */
-pio2_2 = 6.07710050630396597660e-11, /* 0x3DD0B461, 0x1A600000 */
-pio2_2t = 2.02226624879595063154e-21, /* 0x3BA3198A, 0x2E037073 */
-pio2_3 = 2.02226624871116645580e-21, /* 0x3BA3198A, 0x2E000000 */
-pio2_3t = 8.47842766036889956997e-32; /* 0x397B839A, 0x252049C1 */
+ zero = 0.00000000000000000000e+00, /* 0x00000000, 0x00000000 */
+ half = 5.00000000000000000000e-01, /* 0x3FE00000, 0x00000000 */
+ two24 = 1.67772160000000000000e+07, /* 0x41700000, 0x00000000 */
+ invpio2 = 6.36619772367581382433e-01, /* 0x3FE45F30, 0x6DC9C883 */
+ pio2_1 = 1.57079632673412561417e+00, /* 0x3FF921FB, 0x54400000 */
+ pio2_1t = 6.07710050650619224932e-11, /* 0x3DD0B461, 0x1A626331 */
+ pio2_2 = 6.07710050630396597660e-11, /* 0x3DD0B461, 0x1A600000 */
+ pio2_2t = 2.02226624879595063154e-21, /* 0x3BA3198A, 0x2E037073 */
+ pio2_3 = 2.02226624871116645580e-21, /* 0x3BA3198A, 0x2E000000 */
+ pio2_3t = 8.47842766036889956997e-32; /* 0x397B839A, 0x252049C1 */
int32_t
-__ieee754_rem_pio2(double x, double *y)
+__ieee754_rem_pio2 (double x, double *y)
{
- double z,w,t,r,fn;
- double tx[3];
- int32_t e0,i,j,nx,n,ix,hx;
- u_int32_t low;
+ double z, w, t, r, fn;
+ double tx[3];
+ int32_t e0, i, j, nx, n, ix, hx;
+ u_int32_t low;
- GET_HIGH_WORD(hx,x); /* high word of x */
- ix = hx&0x7fffffff;
- if(ix<=0x3fe921fb) /* |x| ~<= pi/4 , no need for reduction */
- {y[0] = x; y[1] = 0; return 0;}
- if(ix<0x4002d97c) { /* |x| < 3pi/4, special case with n=+-1 */
- if(hx>0) {
- z = x - pio2_1;
- if(ix!=0x3ff921fb) { /* 33+53 bit pi is good enough */
- y[0] = z - pio2_1t;
- y[1] = (z-y[0])-pio2_1t;
- } else { /* near pi/2, use 33+33+53 bit pi */
- z -= pio2_2;
- y[0] = z - pio2_2t;
- y[1] = (z-y[0])-pio2_2t;
- }
- return 1;
- } else { /* negative x */
- z = x + pio2_1;
- if(ix!=0x3ff921fb) { /* 33+53 bit pi is good enough */
- y[0] = z + pio2_1t;
- y[1] = (z-y[0])+pio2_1t;
- } else { /* near pi/2, use 33+33+53 bit pi */
- z += pio2_2;
- y[0] = z + pio2_2t;
- y[1] = (z-y[0])+pio2_2t;
- }
- return -1;
+ GET_HIGH_WORD (hx, x); /* high word of x */
+ ix = hx & 0x7fffffff;
+ if (ix <= 0x3fe921fb) /* |x| ~<= pi/4 , no need for reduction */
+ {
+ y[0] = x; y[1] = 0; return 0;
+ }
+ if (ix < 0x4002d97c) /* |x| < 3pi/4, special case with n=+-1 */
+ {
+ if (hx > 0)
+ {
+ z = x - pio2_1;
+ if (ix != 0x3ff921fb) /* 33+53 bit pi is good enough */
+ {
+ y[0] = z - pio2_1t;
+ y[1] = (z - y[0]) - pio2_1t;
+ }
+ else /* near pi/2, use 33+33+53 bit pi */
+ {
+ z -= pio2_2;
+ y[0] = z - pio2_2t;
+ y[1] = (z - y[0]) - pio2_2t;
}
+ return 1;
}
- if(ix<=0x413921fb) { /* |x| ~<= 2^19*(pi/2), medium size */
- t = fabs(x);
- n = (int32_t) (t*invpio2+half);
- fn = (double)n;
- r = t-fn*pio2_1;
- w = fn*pio2_1t; /* 1st round good to 85 bit */
- if(n<32&&ix!=npio2_hw[n-1]) {
- y[0] = r-w; /* quick check no cancellation */
- } else {
- u_int32_t high;
- j = ix>>20;
- y[0] = r-w;
- GET_HIGH_WORD(high,y[0]);
- i = j-((high>>20)&0x7ff);
- if(i>16) { /* 2nd iteration needed, good to 118 */
- t = r;
- w = fn*pio2_2;
- r = t-w;
- w = fn*pio2_2t-((t-r)-w);
- y[0] = r-w;
- GET_HIGH_WORD(high,y[0]);
- i = j-((high>>20)&0x7ff);
- if(i>49) { /* 3rd iteration need, 151 bits acc */
- t = r; /* will cover all possible cases */
- w = fn*pio2_3;
- r = t-w;
- w = fn*pio2_3t-((t-r)-w);
- y[0] = r-w;
- }
- }
+ else /* negative x */
+ {
+ z = x + pio2_1;
+ if (ix != 0x3ff921fb) /* 33+53 bit pi is good enough */
+ {
+ y[0] = z + pio2_1t;
+ y[1] = (z - y[0]) + pio2_1t;
+ }
+ else /* near pi/2, use 33+33+53 bit pi */
+ {
+ z += pio2_2;
+ y[0] = z + pio2_2t;
+ y[1] = (z - y[0]) + pio2_2t;
}
- y[1] = (r-y[0])-w;
- if(hx<0) {y[0] = -y[0]; y[1] = -y[1]; return -n;}
- else return n;
+ return -1;
}
- /*
- * all other (large) arguments
- */
- if(ix>=0x7ff00000) { /* x is inf or NaN */
- y[0]=y[1]=x-x; return 0;
+ }
+ if (ix <= 0x413921fb) /* |x| ~<= 2^19*(pi/2), medium size */
+ {
+ t = fabs (x);
+ n = (int32_t) (t * invpio2 + half);
+ fn = (double) n;
+ r = t - fn * pio2_1;
+ w = fn * pio2_1t; /* 1st round good to 85 bit */
+ if (n < 32 && ix != npio2_hw[n - 1])
+ {
+ y[0] = r - w; /* quick check no cancellation */
}
- /* set z = scalbn(|x|,ilogb(x)-23) */
- GET_LOW_WORD(low,x);
- SET_LOW_WORD(z,low);
- e0 = (ix>>20)-1046; /* e0 = ilogb(z)-23; */
- SET_HIGH_WORD(z, ix - ((int32_t)(e0<<20)));
- for(i=0;i<2;i++) {
- tx[i] = (double)((int32_t)(z));
- z = (z-tx[i])*two24;
+ else
+ {
+ u_int32_t high;
+ j = ix >> 20;
+ y[0] = r - w;
+ GET_HIGH_WORD (high, y[0]);
+ i = j - ((high >> 20) & 0x7ff);
+ if (i > 16) /* 2nd iteration needed, good to 118 */
+ {
+ t = r;
+ w = fn * pio2_2;
+ r = t - w;
+ w = fn * pio2_2t - ((t - r) - w);
+ y[0] = r - w;
+ GET_HIGH_WORD (high, y[0]);
+ i = j - ((high >> 20) & 0x7ff);
+ if (i > 49) /* 3rd iteration need, 151 bits acc */
+ {
+ t = r; /* will cover all possible cases */
+ w = fn * pio2_3;
+ r = t - w;
+ w = fn * pio2_3t - ((t - r) - w);
+ y[0] = r - w;
+ }
+ }
}
- tx[2] = z;
- nx = 3;
- while(tx[nx-1]==zero) nx--; /* skip zero term */
- n = __kernel_rem_pio2(tx,y,e0,nx,2,two_over_pi);
- if(hx<0) {y[0] = -y[0]; y[1] = -y[1]; return -n;}
+ y[1] = (r - y[0]) - w;
+ if (hx < 0)
+ {
+ y[0] = -y[0]; y[1] = -y[1]; return -n;
+ }
+ else
return n;
+ }
+ /*
+ * all other (large) arguments
+ */
+ if (ix >= 0x7ff00000) /* x is inf or NaN */
+ {
+ y[0] = y[1] = x - x; return 0;
+ }
+ /* set z = scalbn(|x|,ilogb(x)-23) */
+ GET_LOW_WORD (low, x);
+ SET_LOW_WORD (z, low);
+ e0 = (ix >> 20) - 1046; /* e0 = ilogb(z)-23; */
+ SET_HIGH_WORD (z, ix - ((int32_t) (e0 << 20)));
+ for (i = 0; i < 2; i++)
+ {
+ tx[i] = (double) ((int32_t) (z));
+ z = (z - tx[i]) * two24;
+ }
+ tx[2] = z;
+ nx = 3;
+ while (tx[nx - 1] == zero)
+ nx--; /* skip zero term */
+ n = __kernel_rem_pio2 (tx, y, e0, nx, 2, two_over_pi);
+ if (hx < 0)
+ {
+ y[0] = -y[0]; y[1] = -y[1]; return -n;
+ }
+ return n;
}
-
#endif
diff --git a/sysdeps/ieee754/dbl-64/e_remainder.c b/sysdeps/ieee754/dbl-64/e_remainder.c
index 2d20bb1dfe..c6a1901b10 100644
--- a/sysdeps/ieee754/dbl-64/e_remainder.c
+++ b/sysdeps/ieee754/dbl-64/e_remainder.c
@@ -39,89 +39,111 @@
/* An ultimate remainder routine. Given two IEEE double machine numbers x */
/* ,y it computes the correctly rounded (to nearest) value of remainder */
/**************************************************************************/
-double __ieee754_remainder(double x, double y)
+double
+__ieee754_remainder (double x, double y)
{
- double z,d,xx;
- int4 kx,ky,n,nn,n1,m1,l;
- mynumber u,t,w={{0,0}},v={{0,0}},ww={{0,0}},r;
- u.x=x;
- t.x=y;
- kx=u.i[HIGH_HALF]&0x7fffffff; /* no sign for x*/
- t.i[HIGH_HALF]&=0x7fffffff; /*no sign for y */
- ky=t.i[HIGH_HALF];
+ double z, d, xx;
+ int4 kx, ky, n, nn, n1, m1, l;
+ mynumber u, t, w = { { 0, 0 } }, v = { { 0, 0 } }, ww = { { 0, 0 } }, r;
+ u.x = x;
+ t.x = y;
+ kx = u.i[HIGH_HALF] & 0x7fffffff; /* no sign for x*/
+ t.i[HIGH_HALF] &= 0x7fffffff; /*no sign for y */
+ ky = t.i[HIGH_HALF];
/*------ |x| < 2^1023 and 2^-970 < |y| < 2^1024 ------------------*/
- if (kx<0x7fe00000 && ky<0x7ff00000 && ky>=0x03500000) {
- SET_RESTORE_ROUND_NOEX (FE_TONEAREST);
- if (kx+0x00100000<ky) return x;
- if ((kx-0x01500000)<ky) {
- z=x/t.x;
- v.i[HIGH_HALF]=t.i[HIGH_HALF];
- d=(z+big.x)-big.x;
- xx=(x-d*v.x)-d*(t.x-v.x);
- if (d-z!=0.5&&d-z!=-0.5) return (xx!=0)?xx:((x>0)?ZERO.x:nZERO.x);
- else {
- if (ABS(xx)>0.5*t.x) return (z>d)?xx-t.x:xx+t.x;
- else return xx;
- }
- } /* (kx<(ky+0x01500000)) */
- else {
- r.x=1.0/t.x;
- n=t.i[HIGH_HALF];
- nn=(n&0x7ff00000)+0x01400000;
- w.i[HIGH_HALF]=n;
- ww.x=t.x-w.x;
- l=(kx-nn)&0xfff00000;
- n1=ww.i[HIGH_HALF];
- m1=r.i[HIGH_HALF];
- while (l>0) {
- r.i[HIGH_HALF]=m1-l;
- z=u.x*r.x;
- w.i[HIGH_HALF]=n+l;
- ww.i[HIGH_HALF]=(n1)?n1+l:n1;
- d=(z+big.x)-big.x;
- u.x=(u.x-d*w.x)-d*ww.x;
- l=(u.i[HIGH_HALF]&0x7ff00000)-nn;
- }
- r.i[HIGH_HALF]=m1;
- w.i[HIGH_HALF]=n;
- ww.i[HIGH_HALF]=n1;
- z=u.x*r.x;
- d=(z+big.x)-big.x;
- u.x=(u.x-d*w.x)-d*ww.x;
- if (ABS(u.x)<0.5*t.x) return (u.x!=0)?u.x:((x>0)?ZERO.x:nZERO.x);
+ if (kx < 0x7fe00000 && ky < 0x7ff00000 && ky >= 0x03500000)
+ {
+ SET_RESTORE_ROUND_NOEX (FE_TONEAREST);
+ if (kx + 0x00100000 < ky)
+ return x;
+ if ((kx - 0x01500000) < ky)
+ {
+ z = x / t.x;
+ v.i[HIGH_HALF] = t.i[HIGH_HALF];
+ d = (z + big.x) - big.x;
+ xx = (x - d * v.x) - d * (t.x - v.x);
+ if (d - z != 0.5 && d - z != -0.5)
+ return (xx != 0) ? xx : ((x > 0) ? ZERO.x : nZERO.x);
+ else
+ {
+ if (ABS (xx) > 0.5 * t.x)
+ return (z > d) ? xx - t.x : xx + t.x;
+ else
+ return xx;
+ }
+ } /* (kx<(ky+0x01500000)) */
else
- if (ABS(u.x)>0.5*t.x) return (d>z)?u.x+t.x:u.x-t.x;
- else
- {z=u.x/t.x; d=(z+big.x)-big.x; return ((u.x-d*w.x)-d*ww.x);}
- }
-
- } /* (kx<0x7fe00000&&ky<0x7ff00000&&ky>=0x03500000) */
- else {
- if (kx<0x7fe00000&&ky<0x7ff00000&&(ky>0||t.i[LOW_HALF]!=0)) {
- y=ABS(y)*t128.x;
- z=__ieee754_remainder(x,y)*t128.x;
- z=__ieee754_remainder(z,y)*tm128.x;
- return z;
- }
- else {
- if ((kx&0x7ff00000)==0x7fe00000&&ky<0x7ff00000&&(ky>0||t.i[LOW_HALF]!=0)) {
- y=ABS(y);
- z=2.0*__ieee754_remainder(0.5*x,y);
- d = ABS(z);
- if (d <= ABS(d-y)) return z;
- else return (z>0)?z-y:z+y;
- }
- else { /* if x is too big */
- if (ky==0 && t.i[LOW_HALF] == 0) /* y = 0 */
- return (x * y) / (x * y);
- else if (kx >= 0x7ff00000 /* x not finite */
- || (ky>0x7ff00000 /* y is NaN */
- || (ky == 0x7ff00000 && t.i[LOW_HALF] != 0)))
- return (x * y) / (x * y);
+ {
+ r.x = 1.0 / t.x;
+ n = t.i[HIGH_HALF];
+ nn = (n & 0x7ff00000) + 0x01400000;
+ w.i[HIGH_HALF] = n;
+ ww.x = t.x - w.x;
+ l = (kx - nn) & 0xfff00000;
+ n1 = ww.i[HIGH_HALF];
+ m1 = r.i[HIGH_HALF];
+ while (l > 0)
+ {
+ r.i[HIGH_HALF] = m1 - l;
+ z = u.x * r.x;
+ w.i[HIGH_HALF] = n + l;
+ ww.i[HIGH_HALF] = (n1) ? n1 + l : n1;
+ d = (z + big.x) - big.x;
+ u.x = (u.x - d * w.x) - d * ww.x;
+ l = (u.i[HIGH_HALF] & 0x7ff00000) - nn;
+ }
+ r.i[HIGH_HALF] = m1;
+ w.i[HIGH_HALF] = n;
+ ww.i[HIGH_HALF] = n1;
+ z = u.x * r.x;
+ d = (z + big.x) - big.x;
+ u.x = (u.x - d * w.x) - d * ww.x;
+ if (ABS (u.x) < 0.5 * t.x)
+ return (u.x != 0) ? u.x : ((x > 0) ? ZERO.x : nZERO.x);
+ else
+ if (ABS (u.x) > 0.5 * t.x)
+ return (d > z) ? u.x + t.x : u.x - t.x;
+ else
+ {
+ z = u.x / t.x; d = (z + big.x) - big.x;
+ return ((u.x - d * w.x) - d * ww.x);
+ }
+ }
+ } /* (kx<0x7fe00000&&ky<0x7ff00000&&ky>=0x03500000) */
+ else
+ {
+ if (kx < 0x7fe00000 && ky < 0x7ff00000 && (ky > 0 || t.i[LOW_HALF] != 0))
+ {
+ y = ABS (y) * t128.x;
+ z = __ieee754_remainder (x, y) * t128.x;
+ z = __ieee754_remainder (z, y) * tm128.x;
+ return z;
+ }
else
- return x;
+ {
+ if ((kx & 0x7ff00000) == 0x7fe00000 && ky < 0x7ff00000 &&
+ (ky > 0 || t.i[LOW_HALF] != 0))
+ {
+ y = ABS (y);
+ z = 2.0 * __ieee754_remainder (0.5 * x, y);
+ d = ABS (z);
+ if (d <= ABS (d - y))
+ return z;
+ else
+ return (z > 0) ? z - y : z + y;
+ }
+ else /* if x is too big */
+ {
+ if (ky == 0 && t.i[LOW_HALF] == 0) /* y = 0 */
+ return (x * y) / (x * y);
+ else if (kx >= 0x7ff00000 /* x not finite */
+ || (ky > 0x7ff00000 /* y is NaN */
+ || (ky == 0x7ff00000 && t.i[LOW_HALF] != 0)))
+ return (x * y) / (x * y);
+ else
+ return x;
+ }
+ }
}
- }
- }
}
strong_alias (__ieee754_remainder, __remainder_finite)
diff --git a/sysdeps/ieee754/dbl-64/e_sinh.c b/sysdeps/ieee754/dbl-64/e_sinh.c
index b954100baa..851b510aaa 100644
--- a/sysdeps/ieee754/dbl-64/e_sinh.c
+++ b/sysdeps/ieee754/dbl-64/e_sinh.c
@@ -38,43 +38,50 @@ static char rcsid[] = "$NetBSD: e_sinh.c,v 1.7 1995/05/10 20:46:13 jtc Exp $";
static const double one = 1.0, shuge = 1.0e307;
double
-__ieee754_sinh(double x)
+__ieee754_sinh (double x)
{
- double t,w,h;
- int32_t ix,jx;
- u_int32_t lx;
+ double t, w, h;
+ int32_t ix, jx;
+ u_int32_t lx;
- /* High word of |x|. */
- GET_HIGH_WORD(jx,x);
- ix = jx&0x7fffffff;
+ /* High word of |x|. */
+ GET_HIGH_WORD (jx, x);
+ ix = jx & 0x7fffffff;
- /* x is INF or NaN */
- if(__builtin_expect(ix>=0x7ff00000, 0)) return x+x;
+ /* x is INF or NaN */
+ if (__builtin_expect (ix >= 0x7ff00000, 0))
+ return x + x;
- h = 0.5;
- if (jx<0) h = -h;
- /* |x| in [0,22], return sign(x)*0.5*(E+E/(E+1))) */
- if (ix < 0x40360000) { /* |x|<22 */
- if (__builtin_expect(ix<0x3e300000, 0)) /* |x|<2**-28 */
- if(shuge+x>one)
- return x;/* sinh(tiny) = tiny with inexact */
- t = __expm1(fabs(x));
- if(ix<0x3ff00000) return h*(2.0*t-t*t/(t+one));
- return h*(t+t/(t+one));
- }
+ h = 0.5;
+ if (jx < 0)
+ h = -h;
+ /* |x| in [0,22], return sign(x)*0.5*(E+E/(E+1))) */
+ if (ix < 0x40360000) /* |x|<22 */
+ {
+ if (__builtin_expect (ix < 0x3e300000, 0)) /* |x|<2**-28 */
+ if (shuge + x > one)
+ return x;
+ /* sinh(tiny) = tiny with inexact */
+ t = __expm1 (fabs (x));
+ if (ix < 0x3ff00000)
+ return h * (2.0 * t - t * t / (t + one));
+ return h * (t + t / (t + one));
+ }
- /* |x| in [22, log(maxdouble)] return 0.5*exp(|x|) */
- if (ix < 0x40862e42) return h*__ieee754_exp(fabs(x));
+ /* |x| in [22, log(maxdouble)] return 0.5*exp(|x|) */
+ if (ix < 0x40862e42)
+ return h * __ieee754_exp (fabs (x));
- /* |x| in [log(maxdouble), overflowthresold] */
- GET_LOW_WORD(lx,x);
- if (ix<0x408633ce || ((ix==0x408633ce)&&(lx<=(u_int32_t)0x8fb9f87d))) {
- w = __ieee754_exp(0.5*fabs(x));
- t = h*w;
- return t*w;
- }
+ /* |x| in [log(maxdouble), overflowthresold] */
+ GET_LOW_WORD (lx, x);
+ if (ix < 0x408633ce || ((ix == 0x408633ce) && (lx <= (u_int32_t) 0x8fb9f87d)))
+ {
+ w = __ieee754_exp (0.5 * fabs (x));
+ t = h * w;
+ return t * w;
+ }
- /* |x| > overflowthresold, sinh(x) overflow */
- return x*shuge;
+ /* |x| > overflowthresold, sinh(x) overflow */
+ return x * shuge;
}
strong_alias (__ieee754_sinh, __sinh_finite)
diff --git a/sysdeps/ieee754/dbl-64/e_sqrt.c b/sysdeps/ieee754/dbl-64/e_sqrt.c
index 54610eeeab..88809daa76 100644
--- a/sysdeps/ieee754/dbl-64/e_sqrt.c
+++ b/sysdeps/ieee754/dbl-64/e_sqrt.c
@@ -44,58 +44,97 @@
/* it computes the correctly rounded (to nearest) value of square */
/* root of x. */
/*********************************************************************/
-double __ieee754_sqrt(double x) {
+double
+__ieee754_sqrt (double x)
+{
#include "uroot.h"
static const double
rt0 = 9.99999999859990725855365213134618E-01,
rt1 = 4.99999999495955425917856814202739E-01,
rt2 = 3.75017500867345182581453026130850E-01,
rt3 = 3.12523626554518656309172508769531E-01;
- static const double big = 134217728.0;
- double y,t,del,res,res1,hy,z,zz,p,hx,tx,ty,s;
- mynumber a,c={{0,0}};
+ static const double big = 134217728.0;
+ double y, t, del, res, res1, hy, z, zz, p, hx, tx, ty, s;
+ mynumber a, c = { { 0, 0 } };
int4 k;
- a.x=x;
- k=a.i[HIGH_HALF];
- a.i[HIGH_HALF]=(k&0x001fffff)|0x3fe00000;
- t=inroot[(k&0x001fffff)>>14];
- s=a.x;
+ a.x = x;
+ k = a.i[HIGH_HALF];
+ a.i[HIGH_HALF] = (k & 0x001fffff) | 0x3fe00000;
+ t = inroot[(k & 0x001fffff) >> 14];
+ s = a.x;
/*----------------- 2^-1022 <= | x |< 2^1024 -----------------*/
- if (k>0x000fffff && k<0x7ff00000) {
- fenv_t env;
- libc_feholdexcept (&env);
- double ret;
- y=1.0-t*(t*s);
- t=t*(rt0+y*(rt1+y*(rt2+y*rt3)));
- c.i[HIGH_HALF]=0x20000000+((k&0x7fe00000)>>1);
- y=t*s;
- hy=(y+big)-big;
- del=0.5*t*((s-hy*hy)-(y-hy)*(y+hy));
- res=y+del;
- if (res == (res+1.002*((y-res)+del))) ret = res*c.x;
- else {
- res1=res+1.5*((y-res)+del);
- EMULV(res,res1,z,zz,p,hx,tx,hy,ty); /* (z+zz)=res*res1 */
- ret = ((((z-s)+zz)<0)?max(res,res1):min(res,res1))*c.x;
+ if (k > 0x000fffff && k < 0x7ff00000)
+ {
+ int rm = fegetround ();
+ fenv_t env;
+ libc_feholdexcept_setround (&env, FE_TONEAREST);
+ double ret;
+ y = 1.0 - t * (t * s);
+ t = t * (rt0 + y * (rt1 + y * (rt2 + y * rt3)));
+ c.i[HIGH_HALF] = 0x20000000 + ((k & 0x7fe00000) >> 1);
+ y = t * s;
+ hy = (y + big) - big;
+ del = 0.5 * t * ((s - hy * hy) - (y - hy) * (y + hy));
+ res = y + del;
+ if (res == (res + 1.002 * ((y - res) + del)))
+ ret = res * c.x;
+ else
+ {
+ res1 = res + 1.5 * ((y - res) + del);
+ EMULV (res, res1, z, zz, p, hx, tx, hy, ty); /* (z+zz)=res*res1 */
+ res = ((((z - s) + zz) < 0) ? max (res, res1) :
+ min (res, res1));
+ ret = res * c.x;
+ }
+ math_force_eval (ret);
+ libc_fesetenv (&env);
+ double dret = x / ret;
+ if (dret != ret)
+ {
+ double force_inexact = 1.0 / 3.0;
+ math_force_eval (force_inexact);
+ /* The square root is inexact, ret is the round-to-nearest
+ value which may need adjusting for other rounding
+ modes. */
+ switch (rm)
+ {
+#ifdef FE_UPWARD
+ case FE_UPWARD:
+ if (dret > ret)
+ ret = (res + 0x1p-1022) * c.x;
+ break;
+#endif
+
+#ifdef FE_DOWNWARD
+ case FE_DOWNWARD:
+#endif
+#ifdef FE_TOWARDZERO
+ case FE_TOWARDZERO:
+#endif
+#if defined FE_DOWNWARD || defined FE_TOWARDZERO
+ if (dret < ret)
+ ret = (res - 0x1p-1022) * c.x;
+ break;
+#endif
+
+ default:
+ break;
+ }
+ }
+ /* Otherwise (x / ret == ret), either the square root was exact or
+ the division was inexact. */
+ return ret;
+ }
+ else
+ {
+ if ((k & 0x7ff00000) == 0x7ff00000)
+ return x * x + x; /* sqrt(NaN)=NaN, sqrt(+inf)=+inf, sqrt(-inf)=sNaN */
+ if (x == 0)
+ return x; /* sqrt(+0)=+0, sqrt(-0)=-0 */
+ if (k < 0)
+ return (x - x) / (x - x); /* sqrt(-ve)=sNaN */
+ return tm256.x * __ieee754_sqrt (x * t512.x);
}
- math_force_eval (ret);
- libc_fesetenv (&env);
- if (x / ret != ret)
- {
- double force_inexact = 1.0 / 3.0;
- math_force_eval (force_inexact);
- }
- /* Otherwise (x / ret == ret), either the square root was exact or
- the division was inexact. */
- return ret;
- }
- else {
- if ((k & 0x7ff00000) == 0x7ff00000)
- return x*x+x; /* sqrt(NaN)=NaN, sqrt(+inf)=+inf, sqrt(-inf)=sNaN */
- if (x==0) return x; /* sqrt(+0)=+0, sqrt(-0)=-0 */
- if (k<0) return (x-x)/(x-x); /* sqrt(-ve)=sNaN */
- return tm256.x*__ieee754_sqrt(x*t512.x);
- }
}
strong_alias (__ieee754_sqrt, __sqrt_finite)
diff --git a/sysdeps/ieee754/dbl-64/halfulp.c b/sysdeps/ieee754/dbl-64/halfulp.c
index 8c5a9312a0..382ad7aada 100644
--- a/sysdeps/ieee754/dbl-64/halfulp.c
+++ b/sysdeps/ieee754/dbl-64/halfulp.c
@@ -44,86 +44,109 @@
#endif
static const int4 tab54[32] = {
- 262143, 11585, 1782, 511, 210, 107, 63, 42,
- 30, 22, 17, 14, 12, 10, 9, 7,
- 7, 6, 5, 5, 5, 4, 4, 4,
- 3, 3, 3, 3, 3, 3, 3, 3 };
+ 262143, 11585, 1782, 511, 210, 107, 63, 42,
+ 30, 22, 17, 14, 12, 10, 9, 7,
+ 7, 6, 5, 5, 5, 4, 4, 4,
+ 3, 3, 3, 3, 3, 3, 3, 3
+};
double
SECTION
-__halfulp(double x, double y)
+__halfulp (double x, double y)
{
mynumber v;
- double z,u,uu;
+ double z, u, uu;
#ifndef DLA_FMS
- double j1,j2,j3,j4,j5;
+ double j1, j2, j3, j4, j5;
#endif
- int4 k,l,m,n;
- if (y <= 0) { /*if power is negative or zero */
- v.x = y;
- if (v.i[LOW_HALF] != 0) return -10.0;
- v.x = x;
- if (v.i[LOW_HALF] != 0) return -10.0;
- if ((v.i[HIGH_HALF]&0x000fffff) != 0) return -10; /* if x =2 ^ n */
- k = ((v.i[HIGH_HALF]&0x7fffffff)>>20)-1023; /* find this n */
- z = (double) k;
- return (z*y == -1075.0)?0: -10.0;
- }
- /* if y > 0 */
+ int4 k, l, m, n;
+ if (y <= 0) /*if power is negative or zero */
+ {
+ v.x = y;
+ if (v.i[LOW_HALF] != 0)
+ return -10.0;
+ v.x = x;
+ if (v.i[LOW_HALF] != 0)
+ return -10.0;
+ if ((v.i[HIGH_HALF] & 0x000fffff) != 0)
+ return -10; /* if x =2 ^ n */
+ k = ((v.i[HIGH_HALF] & 0x7fffffff) >> 20) - 1023; /* find this n */
+ z = (double) k;
+ return (z * y == -1075.0) ? 0 : -10.0;
+ }
+ /* if y > 0 */
v.x = y;
- if (v.i[LOW_HALF] != 0) return -10.0;
+ if (v.i[LOW_HALF] != 0)
+ return -10.0;
- v.x=x;
- /* case where x = 2**n for some integer n */
- if (((v.i[HIGH_HALF]&0x000fffff)|v.i[LOW_HALF]) == 0) {
- k=(v.i[HIGH_HALF]>>20)-1023;
- return (((double) k)*y == -1075.0)?0:-10.0;
- }
+ v.x = x;
+ /* case where x = 2**n for some integer n */
+ if (((v.i[HIGH_HALF] & 0x000fffff) | v.i[LOW_HALF]) == 0)
+ {
+ k = (v.i[HIGH_HALF] >> 20) - 1023;
+ return (((double) k) * y == -1075.0) ? 0 : -10.0;
+ }
v.x = y;
k = v.i[HIGH_HALF];
- m = k<<12;
+ m = k << 12;
l = 0;
while (m)
- {m = m<<1; l++; }
- n = (k&0x000fffff)|0x00100000;
- n = n>>(20-l); /* n is the odd integer of y */
- k = ((k>>20) -1023)-l; /* y = n*2**k */
- if (k>5) return -10.0;
- if (k>0) for (;k>0;k--) n *= 2;
- if (n > 34) return -10.0;
+ {
+ m = m << 1; l++;
+ }
+ n = (k & 0x000fffff) | 0x00100000;
+ n = n >> (20 - l); /* n is the odd integer of y */
+ k = ((k >> 20) - 1023) - l; /* y = n*2**k */
+ if (k > 5)
+ return -10.0;
+ if (k > 0)
+ for (; k > 0; k--)
+ n *= 2;
+ if (n > 34)
+ return -10.0;
k = -k;
- if (k>5) return -10.0;
+ if (k > 5)
+ return -10.0;
- /* now treat x */
- while (k>0) {
- z = __ieee754_sqrt(x);
- EMULV(z,z,u,uu,j1,j2,j3,j4,j5);
- if (((u-x)+uu) != 0) break;
- x = z;
- k--;
- }
- if (k) return -10.0;
+ /* now treat x */
+ while (k > 0)
+ {
+ z = __ieee754_sqrt (x);
+ EMULV (z, z, u, uu, j1, j2, j3, j4, j5);
+ if (((u - x) + uu) != 0)
+ break;
+ x = z;
+ k--;
+ }
+ if (k)
+ return -10.0;
/* it is impossible that n == 2, so the mantissa of x must be short */
v.x = x;
- if (v.i[LOW_HALF]) return -10.0;
+ if (v.i[LOW_HALF])
+ return -10.0;
k = v.i[HIGH_HALF];
- m = k<<12;
+ m = k << 12;
l = 0;
- while (m) {m = m<<1; l++; }
- m = (k&0x000fffff)|0x00100000;
- m = m>>(20-l); /* m is the odd integer of x */
+ while (m)
+ {
+ m = m << 1; l++;
+ }
+ m = (k & 0x000fffff) | 0x00100000;
+ m = m >> (20 - l); /* m is the odd integer of x */
- /* now check whether the length of m**n is at most 54 bits */
+ /* now check whether the length of m**n is at most 54 bits */
- if (m > tab54[n-3]) return -10.0;
+ if (m > tab54[n - 3])
+ return -10.0;
- /* yes, it is - now compute x**n by simple multiplications */
+ /* yes, it is - now compute x**n by simple multiplications */
u = x;
- for (k=1;k<n;k++) u = u*x;
+ for (k = 1; k < n; k++)
+ u = u * x;
return u;
}
diff --git a/sysdeps/ieee754/dbl-64/k_rem_pio2.c b/sysdeps/ieee754/dbl-64/k_rem_pio2.c
index ec4b4cf600..047c6c2886 100644
--- a/sysdeps/ieee754/dbl-64/k_rem_pio2.c
+++ b/sysdeps/ieee754/dbl-64/k_rem_pio2.c
@@ -147,166 +147,215 @@ static const double PIo2[] = {
};
static const double
-zero = 0.0,
-one = 1.0,
-two24 = 1.67772160000000000000e+07, /* 0x41700000, 0x00000000 */
-twon24 = 5.96046447753906250000e-08; /* 0x3E700000, 0x00000000 */
+ zero = 0.0,
+ one = 1.0,
+ two24 = 1.67772160000000000000e+07, /* 0x41700000, 0x00000000 */
+ twon24 = 5.96046447753906250000e-08; /* 0x3E700000, 0x00000000 */
-int __kernel_rem_pio2(double *x, double *y, int e0, int nx, int prec, const int32_t *ipio2)
+int
+__kernel_rem_pio2 (double *x, double *y, int e0, int nx, int prec,
+ const int32_t *ipio2)
{
- int32_t jz,jx,jv,jp,jk,carry,n,iq[20],i,j,k,m,q0,ih;
- double z,fw,f[20],fq[20],q[20];
+ int32_t jz, jx, jv, jp, jk, carry, n, iq[20], i, j, k, m, q0, ih;
+ double z, fw, f[20], fq[20], q[20];
- /* initialize jk*/
- jk = init_jk[prec];
- jp = jk;
+ /* initialize jk*/
+ jk = init_jk[prec];
+ jp = jk;
- /* determine jx,jv,q0, note that 3>q0 */
- jx = nx-1;
- jv = (e0-3)/24; if(jv<0) jv=0;
- q0 = e0-24*(jv+1);
+ /* determine jx,jv,q0, note that 3>q0 */
+ jx = nx - 1;
+ jv = (e0 - 3) / 24; if (jv < 0)
+ jv = 0;
+ q0 = e0 - 24 * (jv + 1);
- /* set up f[0] to f[jx+jk] where f[jx+jk] = ipio2[jv+jk] */
- j = jv-jx; m = jx+jk;
- for(i=0;i<=m;i++,j++) f[i] = (j<0)? zero : (double) ipio2[j];
+ /* set up f[0] to f[jx+jk] where f[jx+jk] = ipio2[jv+jk] */
+ j = jv - jx; m = jx + jk;
+ for (i = 0; i <= m; i++, j++)
+ f[i] = (j < 0) ? zero : (double) ipio2[j];
- /* compute q[0],q[1],...q[jk] */
- for (i=0;i<=jk;i++) {
- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j]; q[i] = fw;
- }
+ /* compute q[0],q[1],...q[jk] */
+ for (i = 0; i <= jk; i++)
+ {
+ for (j = 0, fw = 0.0; j <= jx; j++)
+ fw += x[j] * f[jx + i - j];
+ q[i] = fw;
+ }
- jz = jk;
+ jz = jk;
recompute:
- /* distill q[] into iq[] reversingly */
- for(i=0,j=jz,z=q[jz];j>0;i++,j--) {
- fw = (double)((int32_t)(twon24* z));
- iq[i] = (int32_t)(z-two24*fw);
- z = q[j-1]+fw;
- }
+ /* distill q[] into iq[] reversingly */
+ for (i = 0, j = jz, z = q[jz]; j > 0; i++, j--)
+ {
+ fw = (double) ((int32_t) (twon24 * z));
+ iq[i] = (int32_t) (z - two24 * fw);
+ z = q[j - 1] + fw;
+ }
- /* compute n */
- z = __scalbn(z,q0); /* actual value of z */
- z -= 8.0*__floor(z*0.125); /* trim off integer >= 8 */
- n = (int32_t) z;
- z -= (double)n;
- ih = 0;
- if(q0>0) { /* need iq[jz-1] to determine n */
- i = (iq[jz-1]>>(24-q0)); n += i;
- iq[jz-1] -= i<<(24-q0);
- ih = iq[jz-1]>>(23-q0);
- }
- else if(q0==0) ih = iq[jz-1]>>23;
- else if(z>=0.5) ih=2;
+ /* compute n */
+ z = __scalbn (z, q0); /* actual value of z */
+ z -= 8.0 * __floor (z * 0.125); /* trim off integer >= 8 */
+ n = (int32_t) z;
+ z -= (double) n;
+ ih = 0;
+ if (q0 > 0) /* need iq[jz-1] to determine n */
+ {
+ i = (iq[jz - 1] >> (24 - q0)); n += i;
+ iq[jz - 1] -= i << (24 - q0);
+ ih = iq[jz - 1] >> (23 - q0);
+ }
+ else if (q0 == 0)
+ ih = iq[jz - 1] >> 23;
+ else if (z >= 0.5)
+ ih = 2;
- if(ih>0) { /* q > 0.5 */
- n += 1; carry = 0;
- for(i=0;i<jz ;i++) { /* compute 1-q */
- j = iq[i];
- if(carry==0) {
- if(j!=0) {
- carry = 1; iq[i] = 0x1000000- j;
- }
- } else iq[i] = 0xffffff - j;
- }
- if(q0>0) { /* rare case: chance is 1 in 12 */
- switch(q0) {
- case 1:
- iq[jz-1] &= 0x7fffff; break;
- case 2:
- iq[jz-1] &= 0x3fffff; break;
- }
+ if (ih > 0) /* q > 0.5 */
+ {
+ n += 1; carry = 0;
+ for (i = 0; i < jz; i++) /* compute 1-q */
+ {
+ j = iq[i];
+ if (carry == 0)
+ {
+ if (j != 0)
+ {
+ carry = 1; iq[i] = 0x1000000 - j;
+ }
}
- if(ih==2) {
- z = one - z;
- if(carry!=0) z -= __scalbn(one,q0);
+ else
+ iq[i] = 0xffffff - j;
+ }
+ if (q0 > 0) /* rare case: chance is 1 in 12 */
+ {
+ switch (q0)
+ {
+ case 1:
+ iq[jz - 1] &= 0x7fffff; break;
+ case 2:
+ iq[jz - 1] &= 0x3fffff; break;
}
}
+ if (ih == 2)
+ {
+ z = one - z;
+ if (carry != 0)
+ z -= __scalbn (one, q0);
+ }
+ }
- /* check if recomputation is needed */
- if(z==zero) {
- j = 0;
- for (i=jz-1;i>=jk;i--) j |= iq[i];
- if(j==0) { /* need recomputation */
- for(k=1;iq[jk-k]==0;k++); /* k = no. of terms needed */
+ /* check if recomputation is needed */
+ if (z == zero)
+ {
+ j = 0;
+ for (i = jz - 1; i >= jk; i--)
+ j |= iq[i];
+ if (j == 0) /* need recomputation */
+ {
+ for (k = 1; iq[jk - k] == 0; k++)
+ ; /* k = no. of terms needed */
- for(i=jz+1;i<=jz+k;i++) { /* add q[jz+1] to q[jz+k] */
- f[jx+i] = (double) ipio2[jv+i];
- for(j=0,fw=0.0;j<=jx;j++) fw += x[j]*f[jx+i-j];
- q[i] = fw;
- }
- jz += k;
- goto recompute;
+ for (i = jz + 1; i <= jz + k; i++) /* add q[jz+1] to q[jz+k] */
+ {
+ f[jx + i] = (double) ipio2[jv + i];
+ for (j = 0, fw = 0.0; j <= jx; j++)
+ fw += x[j] * f[jx + i - j];
+ q[i] = fw;
}
+ jz += k;
+ goto recompute;
}
+ }
- /* chop off zero terms */
- if(z==0.0) {
- jz -= 1; q0 -= 24;
- while(iq[jz]==0) { jz--; q0-=24;}
- } else { /* break z into 24-bit if necessary */
- z = __scalbn(z,-q0);
- if(z>=two24) {
- fw = (double)((int32_t)(twon24*z));
- iq[jz] = (int32_t)(z-two24*fw);
- jz += 1; q0 += 24;
- iq[jz] = (int32_t) fw;
- } else iq[jz] = (int32_t) z ;
+ /* chop off zero terms */
+ if (z == 0.0)
+ {
+ jz -= 1; q0 -= 24;
+ while (iq[jz] == 0)
+ {
+ jz--; q0 -= 24;
}
-
- /* convert integer "bit" chunk to floating-point value */
- fw = __scalbn(one,q0);
- for(i=jz;i>=0;i--) {
- q[i] = fw*(double)iq[i]; fw*=twon24;
+ }
+ else /* break z into 24-bit if necessary */
+ {
+ z = __scalbn (z, -q0);
+ if (z >= two24)
+ {
+ fw = (double) ((int32_t) (twon24 * z));
+ iq[jz] = (int32_t) (z - two24 * fw);
+ jz += 1; q0 += 24;
+ iq[jz] = (int32_t) fw;
}
+ else
+ iq[jz] = (int32_t) z;
+ }
- /* compute PIo2[0,...,jp]*q[jz,...,0] */
- for(i=jz;i>=0;i--) {
- for(fw=0.0,k=0;k<=jp&&k<=jz-i;k++) fw += PIo2[k]*q[i+k];
- fq[jz-i] = fw;
- }
+ /* convert integer "bit" chunk to floating-point value */
+ fw = __scalbn (one, q0);
+ for (i = jz; i >= 0; i--)
+ {
+ q[i] = fw * (double) iq[i]; fw *= twon24;
+ }
- /* compress fq[] into y[] */
- switch(prec) {
- case 0:
- fw = 0.0;
- for (i=jz;i>=0;i--) fw += fq[i];
- y[0] = (ih==0)? fw: -fw;
- break;
- case 1:
- case 2:;
+ /* compute PIo2[0,...,jp]*q[jz,...,0] */
+ for (i = jz; i >= 0; i--)
+ {
+ for (fw = 0.0, k = 0; k <= jp && k <= jz - i; k++)
+ fw += PIo2[k] * q[i + k];
+ fq[jz - i] = fw;
+ }
+
+ /* compress fq[] into y[] */
+ switch (prec)
+ {
+ case 0:
+ fw = 0.0;
+ for (i = jz; i >= 0; i--)
+ fw += fq[i];
+ y[0] = (ih == 0) ? fw : -fw;
+ break;
+ case 1:
+ case 2:;
#if __FLT_EVAL_METHOD__ != 0
- volatile
+ volatile
#endif
- double fv = 0.0;
- for (i=jz;i>=0;i--) fv += fq[i];
- y[0] = (ih==0)? fv: -fv;
- fv = fq[0]-fv;
- for (i=1;i<=jz;i++) fv += fq[i];
- y[1] = (ih==0)? fv: -fv;
- break;
- case 3: /* painful */
- for (i=jz;i>0;i--) {
+ double fv = 0.0;
+ for (i = jz; i >= 0; i--)
+ fv += fq[i];
+ y[0] = (ih == 0) ? fv : -fv;
+ fv = fq[0] - fv;
+ for (i = 1; i <= jz; i++)
+ fv += fq[i];
+ y[1] = (ih == 0) ? fv : -fv;
+ break;
+ case 3: /* painful */
+ for (i = jz; i > 0; i--)
+ {
#if __FLT_EVAL_METHOD__ != 0
- volatile
+ volatile
#endif
- double fv = (double)(fq[i-1]+fq[i]);
- fq[i] += fq[i-1]-fv;
- fq[i-1] = fv;
- }
- for (i=jz;i>1;i--) {
+ double fv = (double) (fq[i - 1] + fq[i]);
+ fq[i] += fq[i - 1] - fv;
+ fq[i - 1] = fv;
+ }
+ for (i = jz; i > 1; i--)
+ {
#if __FLT_EVAL_METHOD__ != 0
- volatile
+ volatile
#endif
- double fv = (double)(fq[i-1]+fq[i]);
- fq[i] += fq[i-1]-fv;
- fq[i-1] = fv;
- }
- for (fw=0.0,i=jz;i>=2;i--) fw += fq[i];
- if(ih==0) {
- y[0] = fq[0]; y[1] = fq[1]; y[2] = fw;
- } else {
- y[0] = -fq[0]; y[1] = -fq[1]; y[2] = -fw;
- }
+ double fv = (double) (fq[i - 1] + fq[i]);
+ fq[i] += fq[i - 1] - fv;
+ fq[i - 1] = fv;
+ }
+ for (fw = 0.0, i = jz; i >= 2; i--)
+ fw += fq[i];
+ if (ih == 0)
+ {
+ y[0] = fq[0]; y[1] = fq[1]; y[2] = fw;
+ }
+ else
+ {
+ y[0] = -fq[0]; y[1] = -fq[1]; y[2] = -fw;
}
- return n&7;
+ }
+ return n & 7;
}
diff --git a/sysdeps/ieee754/dbl-64/mpa-arch.h b/sysdeps/ieee754/dbl-64/mpa-arch.h
index 7de9d51ae2..779a43d9b0 100644
--- a/sysdeps/ieee754/dbl-64/mpa-arch.h
+++ b/sysdeps/ieee754/dbl-64/mpa-arch.h
@@ -22,15 +22,15 @@ typedef int64_t mantissa_store_t;
#define TWOPOW(i) (1L << i)
#define RADIX_EXP 24
-#define RADIX TWOPOW (RADIX_EXP) /* 2^24 */
+#define RADIX TWOPOW (RADIX_EXP) /* 2^24 */
/* Divide D by RADIX and put the remainder in R. D must be a non-negative
integral value. */
#define DIV_RADIX(d, r) \
- ({ \
- r = d & (RADIX - 1); \
- d >>= RADIX_EXP; \
- })
+ ({ \
+ r = d & (RADIX - 1); \
+ d >>= RADIX_EXP; \
+ })
/* Put the integer component of a double X in R and retain the fraction in
X. This is used in extracting mantissa digits for MP_NO by using the
@@ -38,10 +38,10 @@ typedef int64_t mantissa_store_t;
digit and then scaling by RADIX to get the next mantissa digit in the same
manner. */
#define INTEGER_OF(x, i) \
- ({ \
- i = (mantissa_t) x; \
- x -= i; \
- })
+ ({ \
+ i = (mantissa_t) x; \
+ x -= i; \
+ })
/* Align IN down to F. The code assumes that F is a power of two. */
-#define ALIGN_DOWN_TO(in, f) ((in) & -(f))
+#define ALIGN_DOWN_TO(in, f) ((in) & - (f))
diff --git a/sysdeps/ieee754/dbl-64/mpa.c b/sysdeps/ieee754/dbl-64/mpa.c
index a3feb175ed..190e8a6373 100644
--- a/sysdeps/ieee754/dbl-64/mpa.c
+++ b/sysdeps/ieee754/dbl-64/mpa.c
@@ -50,8 +50,8 @@
#endif
#ifndef NO__CONST
-const mp_no mpone = {1, {1.0, 1.0}};
-const mp_no mptwo = {1, {1.0, 2.0}};
+const mp_no mpone = { 1, { 1.0, 1.0 } };
+const mp_no mptwo = { 1, { 1.0, 2.0 } };
#endif
#ifndef NO___ACR
@@ -123,7 +123,7 @@ __cpy (const mp_no *x, mp_no *y, int p)
static void
norm (const mp_no *x, double *y, int p)
{
-#define R RADIXI
+# define R RADIXI
long i;
double c;
mantissa_t a, u, v, z[5];
@@ -140,7 +140,7 @@ norm (const mp_no *x, double *y, int p)
}
else
{
- for (a = 1, z[1] = X[1]; z[1] < TWO23;)
+ for (a = 1, z[1] = X[1]; z[1] < TWO23; )
{
a *= 2;
z[1] *= 2;
@@ -188,7 +188,7 @@ norm (const mp_no *x, double *y, int p)
c *= RADIXI;
*y = c;
-#undef R
+# undef R
}
/* Convert a multiple precision number *X into a double precision
@@ -201,7 +201,7 @@ denorm (const mp_no *x, double *y, int p)
double c;
mantissa_t u, z[5];
-#define R RADIXI
+# define R RADIXI
if (EX < -44 || (EX == -44 && X[1] < TWO5))
{
*y = 0;
@@ -298,7 +298,7 @@ denorm (const mp_no *x, double *y, int p)
c = X[0] * ((z[1] + R * (z[2] + R * z[3])) - TWO10);
*y = c * TWOM1032;
-#undef R
+# undef R
}
/* Convert multiple precision number *X into double precision number *Y. The
@@ -394,7 +394,7 @@ add_magnitudes (const mp_no *x, const mp_no *y, mp_no *z, int p)
zk = 1;
}
else
- {
+ {
Z[k--] = zk;
zk = 0;
}
@@ -409,7 +409,7 @@ add_magnitudes (const mp_no *x, const mp_no *y, mp_no *z, int p)
zk = 1;
}
else
- {
+ {
Z[k--] = zk;
zk = 0;
}
@@ -471,7 +471,7 @@ sub_magnitudes (const mp_no *x, const mp_no *y, mp_no *z, int p)
zk = -1;
}
else
- {
+ {
Z[k--] = zk;
zk = 0;
}
@@ -487,18 +487,19 @@ sub_magnitudes (const mp_no *x, const mp_no *y, mp_no *z, int p)
zk = -1;
}
else
- {
+ {
Z[k--] = zk;
zk = 0;
}
}
/* Normalize. */
- for (i = 1; Z[i] == 0; i++);
+ for (i = 1; Z[i] == 0; i++)
+ ;
EZ = EZ - i + 1;
- for (k = 1; i <= p2 + 1;)
+ for (k = 1; i <= p2 + 1; )
Z[k++] = Z[i++];
- for (; k <= p2;)
+ for (; k <= p2; )
Z[k++] = 0;
}
diff --git a/sysdeps/ieee754/dbl-64/mpatan.c b/sysdeps/ieee754/dbl-64/mpatan.c
index 807b16a9bc..a6ae611955 100644
--- a/sysdeps/ieee754/dbl-64/mpatan.c
+++ b/sysdeps/ieee754/dbl-64/mpatan.c
@@ -43,7 +43,6 @@ void
SECTION
__mpatan (mp_no *x, mp_no *y, int p)
{
-
int i, m, n;
double dx;
mp_no mptwoim1 =
diff --git a/sysdeps/ieee754/dbl-64/mpn2dbl.c b/sysdeps/ieee754/dbl-64/mpn2dbl.c
index 8a2f45b9db..0fada79a0c 100644
--- a/sysdeps/ieee754/dbl-64/mpn2dbl.c
+++ b/sysdeps/ieee754/dbl-64/mpn2dbl.c
@@ -40,7 +40,7 @@ __mpn_construct_double (mp_srcptr frac_ptr, int expt, int negative)
u.ieee.mantissa0 = (frac_ptr[0] >> 32) & (((mp_limb_t) 1
<< (DBL_MANT_DIG - 32)) - 1);
#else
- #error "mp_limb size " BITS_PER_MP_LIMB "not accounted for"
+ # error "mp_limb size " BITS_PER_MP_LIMB "not accounted for"
#endif
return u.d;
diff --git a/sysdeps/ieee754/dbl-64/mptan.c b/sysdeps/ieee754/dbl-64/mptan.c
index 281bfca1c3..a5c3fb36c9 100644
--- a/sysdeps/ieee754/dbl-64/mptan.c
+++ b/sysdeps/ieee754/dbl-64/mptan.c
@@ -44,7 +44,6 @@ void
SECTION
__mptan (double x, mp_no *mpy, int p)
{
-
int n;
mp_no mpw, mpc, mps;
diff --git a/sysdeps/ieee754/dbl-64/mydefs.h b/sysdeps/ieee754/dbl-64/mydefs.h
index 89ca965c6a..a430397c67 100644
--- a/sysdeps/ieee754/dbl-64/mydefs.h
+++ b/sysdeps/ieee754/dbl-64/mydefs.h
@@ -28,10 +28,9 @@
#define MY_H
typedef int int4;
-typedef union {int4 i[2]; double x;} mynumber;
-
-#define ABS(x) (((x)>0)?(x):-(x))
-#define max(x,y) (((y)>(x))?(y):(x))
-#define min(x,y) (((y)<(x))?(y):(x))
+typedef union { int4 i[2]; double x; } mynumber;
+#define ABS(x) (((x) > 0) ? (x) : -(x))
+#define max(x, y) (((y) > (x)) ? (y) : (x))
+#define min(x, y) (((y) < (x)) ? (y) : (x))
#endif
diff --git a/sysdeps/ieee754/dbl-64/s_asinh.c b/sysdeps/ieee754/dbl-64/s_asinh.c
index 68e854f5f4..5500746848 100644
--- a/sysdeps/ieee754/dbl-64/s_asinh.c
+++ b/sysdeps/ieee754/dbl-64/s_asinh.c
@@ -25,33 +25,43 @@
#include <math_private.h>
static const double
-one = 1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */
-ln2 = 6.93147180559945286227e-01, /* 0x3FE62E42, 0xFEFA39EF */
-huge= 1.00000000000000000000e+300;
+ one = 1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */
+ ln2 = 6.93147180559945286227e-01, /* 0x3FE62E42, 0xFEFA39EF */
+ huge = 1.00000000000000000000e+300;
double
-__asinh(double x)
+__asinh (double x)
{
- double w;
- int32_t hx,ix;
- GET_HIGH_WORD(hx,x);
- ix = hx&0x7fffffff;
- if(__builtin_expect(ix< 0x3e300000, 0)) { /* |x|<2**-28 */
- if(huge+x>one) return x; /* return x inexact except 0 */
+ double w;
+ int32_t hx, ix;
+ GET_HIGH_WORD (hx, x);
+ ix = hx & 0x7fffffff;
+ if (__builtin_expect (ix < 0x3e300000, 0)) /* |x|<2**-28 */
+ {
+ if (huge + x > one)
+ return x; /* return x inexact except 0 */
+ }
+ if (__builtin_expect (ix > 0x41b00000, 0)) /* |x| > 2**28 */
+ {
+ if (ix >= 0x7ff00000)
+ return x + x; /* x is inf or NaN */
+ w = __ieee754_log (fabs (x)) + ln2;
+ }
+ else
+ {
+ double xa = fabs (x);
+ if (ix > 0x40000000) /* 2**28 > |x| > 2.0 */
+ {
+ w = __ieee754_log (2.0 * xa + one / (__ieee754_sqrt (xa * xa + one) +
+ xa));
}
- if(__builtin_expect(ix>0x41b00000, 0)) { /* |x| > 2**28 */
- if(ix>=0x7ff00000) return x+x; /* x is inf or NaN */
- w = __ieee754_log(fabs(x))+ln2;
- } else {
- double xa = fabs(x);
- if (ix>0x40000000) { /* 2**28 > |x| > 2.0 */
- w = __ieee754_log(2.0*xa+one/(__ieee754_sqrt(xa*xa+one)+xa));
- } else { /* 2.0 > |x| > 2**-28 */
- double t = xa*xa;
- w =__log1p(xa+t/(one+__ieee754_sqrt(one+t)));
- }
+ else /* 2.0 > |x| > 2**-28 */
+ {
+ double t = xa * xa;
+ w = __log1p (xa + t / (one + __ieee754_sqrt (one + t)));
}
- return __copysign(w, x);
+ }
+ return __copysign (w, x);
}
weak_alias (__asinh, asinh)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_atan.c b/sysdeps/ieee754/dbl-64/s_atan.c
index 7b6c83ffb6..744e961469 100644
--- a/sysdeps/ieee754/dbl-64/s_atan.c
+++ b/sysdeps/ieee754/dbl-64/s_atan.c
@@ -42,6 +42,7 @@
#include "uatan.tbl"
#include "atnat.h"
#include <math.h>
+#include <stap-probe.h>
void __mpatan (mp_no *, mp_no *, int); /* see definition in mpatan.c */
static double atanMp (double, const int[]);
@@ -60,7 +61,7 @@ double
atan (double x)
{
double cor, s1, ss1, s2, ss2, t1, t2, t3, t7, t8, t9, t10, u, u2, u3,
- v, vv, w, ww, y, yy, z, zz;
+ v, vv, w, ww, y, yy, z, zz;
#ifndef DLA_FMS
double t4, t5, t6;
#endif
@@ -190,17 +191,17 @@ atan (double x)
yy = cij[i][4].d + z * yy;
yy = cij[i][3].d + z * yy;
yy = cij[i][2].d + z * yy;
- yy = HPI1 - z * yy;
+ yy = HPI1 - z * yy;
t1 = HPI - cij[i][1].d;
if (i < 112)
- u3 = U31; /* w < 1/2 */
+ u3 = U31; /* w < 1/2 */
else
- u3 = U32; /* w >= 1/2 */
+ u3 = U32; /* w >= 1/2 */
if ((y = t1 + (yy - u3)) == t1 + (yy + u3))
return __signArctan (x, y);
- DIV2 (1 , 0, u, 0, w, ww, t1, t2, t3, t4, t5, t6, t7, t8, t9,
+ DIV2 (1, 0, u, 0, w, ww, t1, t2, t3, t4, t5, t6, t7, t8, t9,
t10);
t1 = w - hij[i][0].d;
EADD (t1, ww, z, zz);
@@ -229,7 +230,7 @@ atan (double x)
else
{
if (u < E)
- { /* D <= u < E */
+ { /* D <= u < E */
w = 1 / u;
v = w * w;
EMULV (w, u, t1, t2, t3, t4, t5, t6, t7);
@@ -247,7 +248,7 @@ atan (double x)
if ((y = t3 + (yy - U4)) == t3 + (yy + U4))
return __signArctan (x, y);
- DIV2 (1 , 0, u, 0, w, ww, t1, t2, t3, t4, t5, t6, t7, t8,
+ DIV2 (1, 0, u, 0, w, ww, t1, t2, t3, t4, t5, t6, t7, t8,
t9, t10);
MUL2 (w, ww, w, ww, v, vv, t1, t2, t3, t4, t5, t6, t7, t8);
@@ -306,8 +307,12 @@ atanMp (double x, const int pr[])
__mp_dbl (&mpy1, &y1, p);
__mp_dbl (&mpy2, &y2, p);
if (y1 == y2)
- return y1;
+ {
+ LIBC_PROBE (slowatan, 3, &p, &x, &y1);
+ return y1;
+ }
}
+ LIBC_PROBE (slowatan_inexact, 3, &p, &x, &y1);
return y1; /*if impossible to do exact computing */
}
diff --git a/sysdeps/ieee754/dbl-64/s_cbrt.c b/sysdeps/ieee754/dbl-64/s_cbrt.c
index a7120e1e1f..208a369a6c 100644
--- a/sysdeps/ieee754/dbl-64/s_cbrt.c
+++ b/sysdeps/ieee754/dbl-64/s_cbrt.c
@@ -51,16 +51,17 @@ __cbrt (double x)
if (xe == 0 && fpclassify (x) <= FP_ZERO)
return x + x;
- u = (0.354895765043919860
- + ((1.50819193781584896
- + ((-2.11499494167371287
- + ((2.44693122563534430
- + ((-1.83469277483613086
- + (0.784932344976639262 - 0.145263899385486377 * xm) * xm)
+ u = (0.354895765043919860
+ + ((1.50819193781584896
+ + ((-2.11499494167371287
+ + ((2.44693122563534430
+ + ((-1.83469277483613086
+ + (0.784932344976639262 - 0.145263899385486377 * xm)
+ * xm)
+ * xm))
* xm))
- * xm))
- * xm))
- * xm));
+ * xm))
+ * xm));
t2 = u * u * u;
diff --git a/sysdeps/ieee754/dbl-64/s_ceil.c b/sysdeps/ieee754/dbl-64/s_ceil.c
index e048c81c20..b2154b407d 100644
--- a/sysdeps/ieee754/dbl-64/s_ceil.c
+++ b/sysdeps/ieee754/dbl-64/s_ceil.c
@@ -25,44 +25,67 @@
static const double huge = 1.0e300;
double
-__ceil(double x)
+__ceil (double x)
{
- int32_t i0,i1,j0;
- u_int32_t i,j;
- EXTRACT_WORDS(i0,i1,x);
- j0 = ((i0>>20)&0x7ff)-0x3ff;
- if(j0<20) {
- if(j0<0) { /* raise inexact if x != 0 */
- math_force_eval(huge+x);
- /* return 0*sign(x) if |x|<1 */
- if(i0<0) {i0=0x80000000;i1=0;}
- else if((i0|i1)!=0) { i0=0x3ff00000;i1=0;}
- } else {
- i = (0x000fffff)>>j0;
- if(((i0&i)|i1)==0) return x; /* x is integral */
- math_force_eval(huge+x); /* raise inexact flag */
- if(i0>0) i0 += (0x00100000)>>j0;
- i0 &= (~i); i1=0;
+ int32_t i0, i1, j0;
+ u_int32_t i, j;
+ EXTRACT_WORDS (i0, i1, x);
+ j0 = ((i0 >> 20) & 0x7ff) - 0x3ff;
+ if (j0 < 20)
+ {
+ if (j0 < 0) /* raise inexact if x != 0 */
+ {
+ math_force_eval (huge + x);
+ /* return 0*sign(x) if |x|<1 */
+ if (i0 < 0)
+ {
+ i0 = 0x80000000; i1 = 0;
}
- } else if (j0>51) {
- if(j0==0x400) return x+x; /* inf or NaN */
- else return x; /* x is integral */
- } else {
- i = ((u_int32_t)(0xffffffff))>>(j0-20);
- if((i1&i)==0) return x; /* x is integral */
- math_force_eval(huge+x); /* raise inexact flag */
- if(i0>0) {
- if(j0==20) i0+=1;
- else {
- j = i1 + (1<<(52-j0));
- if(j<i1) i0+=1; /* got a carry */
- i1 = j;
- }
+ else if ((i0 | i1) != 0)
+ {
+ i0 = 0x3ff00000; i1 = 0;
}
- i1 &= (~i);
}
- INSERT_WORDS(x,i0,i1);
- return x;
+ else
+ {
+ i = (0x000fffff) >> j0;
+ if (((i0 & i) | i1) == 0)
+ return x; /* x is integral */
+ math_force_eval (huge + x); /* raise inexact flag */
+ if (i0 > 0)
+ i0 += (0x00100000) >> j0;
+ i0 &= (~i); i1 = 0;
+ }
+ }
+ else if (j0 > 51)
+ {
+ if (j0 == 0x400)
+ return x + x; /* inf or NaN */
+ else
+ return x; /* x is integral */
+ }
+ else
+ {
+ i = ((u_int32_t) (0xffffffff)) >> (j0 - 20);
+ if ((i1 & i) == 0)
+ return x; /* x is integral */
+ math_force_eval (huge + x); /* raise inexact flag */
+ if (i0 > 0)
+ {
+ if (j0 == 20)
+ i0 += 1;
+ else
+ {
+ j = i1 + (1 << (52 - j0));
+ if (j < i1)
+ i0 += 1; /* got a carry */
+ i1 = j;
+ }
+ }
+ i1 &= (~i);
+ }
+ INSERT_WORDS (x, i0, i1);
+ return x;
}
#ifndef __ceil
weak_alias (__ceil, ceil)
diff --git a/sysdeps/ieee754/dbl-64/s_copysign.c b/sysdeps/ieee754/dbl-64/s_copysign.c
index a541ceb05d..9caf24e8f2 100644
--- a/sysdeps/ieee754/dbl-64/s_copysign.c
+++ b/sysdeps/ieee754/dbl-64/s_copysign.c
@@ -23,13 +23,14 @@ static char rcsid[] = "$NetBSD: s_copysign.c,v 1.8 1995/05/10 20:46:57 jtc Exp $
#include <math.h>
#include <math_private.h>
-double __copysign(double x, double y)
+double
+__copysign (double x, double y)
{
- u_int32_t hx,hy;
- GET_HIGH_WORD(hx,x);
- GET_HIGH_WORD(hy,y);
- SET_HIGH_WORD(x,(hx&0x7fffffff)|(hy&0x80000000));
- return x;
+ u_int32_t hx, hy;
+ GET_HIGH_WORD (hx, x);
+ GET_HIGH_WORD (hy, y);
+ SET_HIGH_WORD (x, (hx & 0x7fffffff) | (hy & 0x80000000));
+ return x;
}
weak_alias (__copysign, copysign)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_erf.c b/sysdeps/ieee754/dbl-64/s_erf.c
index e25e28d9d5..3f37397224 100644
--- a/sysdeps/ieee754/dbl-64/s_erf.c
+++ b/sysdeps/ieee754/dbl-64/s_erf.c
@@ -112,185 +112,182 @@ static char rcsid[] = "$NetBSD: s_erf.c,v 1.8 1995/05/10 20:47:05 jtc Exp $";
*/
+#include <errno.h>
+#include <float.h>
#include <math.h>
#include <math_private.h>
static const double
-tiny = 1e-300,
-half= 5.00000000000000000000e-01, /* 0x3FE00000, 0x00000000 */
-one = 1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */
-two = 2.00000000000000000000e+00, /* 0x40000000, 0x00000000 */
- /* c = (float)0.84506291151 */
-erx = 8.45062911510467529297e-01, /* 0x3FEB0AC1, 0x60000000 */
+ tiny = 1e-300,
+ half = 5.00000000000000000000e-01, /* 0x3FE00000, 0x00000000 */
+ one = 1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */
+ two = 2.00000000000000000000e+00, /* 0x40000000, 0x00000000 */
+/* c = (float)0.84506291151 */
+ erx = 8.45062911510467529297e-01, /* 0x3FEB0AC1, 0x60000000 */
/*
* Coefficients for approximation to erf on [0,0.84375]
*/
-efx = 1.28379167095512586316e-01, /* 0x3FC06EBA, 0x8214DB69 */
-efx8= 1.02703333676410069053e+00, /* 0x3FF06EBA, 0x8214DB69 */
-pp[] = {1.28379167095512558561e-01, /* 0x3FC06EBA, 0x8214DB68 */
- -3.25042107247001499370e-01, /* 0xBFD4CD7D, 0x691CB913 */
- -2.84817495755985104766e-02, /* 0xBF9D2A51, 0xDBD7194F */
- -5.77027029648944159157e-03, /* 0xBF77A291, 0x236668E4 */
- -2.37630166566501626084e-05}, /* 0xBEF8EAD6, 0x120016AC */
-qq[] = {0.0, 3.97917223959155352819e-01, /* 0x3FD97779, 0xCDDADC09 */
- 6.50222499887672944485e-02, /* 0x3FB0A54C, 0x5536CEBA */
- 5.08130628187576562776e-03, /* 0x3F74D022, 0xC4D36B0F */
- 1.32494738004321644526e-04, /* 0x3F215DC9, 0x221C1A10 */
- -3.96022827877536812320e-06}, /* 0xBED09C43, 0x42A26120 */
+ efx = 1.28379167095512586316e-01, /* 0x3FC06EBA, 0x8214DB69 */
+ efx8 = 1.02703333676410069053e+00, /* 0x3FF06EBA, 0x8214DB69 */
+ pp[] = { 1.28379167095512558561e-01, /* 0x3FC06EBA, 0x8214DB68 */
+ -3.25042107247001499370e-01, /* 0xBFD4CD7D, 0x691CB913 */
+ -2.84817495755985104766e-02, /* 0xBF9D2A51, 0xDBD7194F */
+ -5.77027029648944159157e-03, /* 0xBF77A291, 0x236668E4 */
+ -2.37630166566501626084e-05 }, /* 0xBEF8EAD6, 0x120016AC */
+ qq[] = { 0.0, 3.97917223959155352819e-01, /* 0x3FD97779, 0xCDDADC09 */
+ 6.50222499887672944485e-02, /* 0x3FB0A54C, 0x5536CEBA */
+ 5.08130628187576562776e-03, /* 0x3F74D022, 0xC4D36B0F */
+ 1.32494738004321644526e-04, /* 0x3F215DC9, 0x221C1A10 */
+ -3.96022827877536812320e-06 }, /* 0xBED09C43, 0x42A26120 */
/*
* Coefficients for approximation to erf in [0.84375,1.25]
*/
-pa[] = {-2.36211856075265944077e-03, /* 0xBF6359B8, 0xBEF77538 */
- 4.14856118683748331666e-01, /* 0x3FDA8D00, 0xAD92B34D */
- -3.72207876035701323847e-01, /* 0xBFD7D240, 0xFBB8C3F1 */
- 3.18346619901161753674e-01, /* 0x3FD45FCA, 0x805120E4 */
- -1.10894694282396677476e-01, /* 0xBFBC6398, 0x3D3E28EC */
- 3.54783043256182359371e-02, /* 0x3FA22A36, 0x599795EB */
- -2.16637559486879084300e-03}, /* 0xBF61BF38, 0x0A96073F */
-qa[] = {0.0, 1.06420880400844228286e-01, /* 0x3FBB3E66, 0x18EEE323 */
- 5.40397917702171048937e-01, /* 0x3FE14AF0, 0x92EB6F33 */
- 7.18286544141962662868e-02, /* 0x3FB2635C, 0xD99FE9A7 */
- 1.26171219808761642112e-01, /* 0x3FC02660, 0xE763351F */
- 1.36370839120290507362e-02, /* 0x3F8BEDC2, 0x6B51DD1C */
- 1.19844998467991074170e-02}, /* 0x3F888B54, 0x5735151D */
+ pa[] = { -2.36211856075265944077e-03, /* 0xBF6359B8, 0xBEF77538 */
+ 4.14856118683748331666e-01, /* 0x3FDA8D00, 0xAD92B34D */
+ -3.72207876035701323847e-01, /* 0xBFD7D240, 0xFBB8C3F1 */
+ 3.18346619901161753674e-01, /* 0x3FD45FCA, 0x805120E4 */
+ -1.10894694282396677476e-01, /* 0xBFBC6398, 0x3D3E28EC */
+ 3.54783043256182359371e-02, /* 0x3FA22A36, 0x599795EB */
+ -2.16637559486879084300e-03 }, /* 0xBF61BF38, 0x0A96073F */
+ qa[] = { 0.0, 1.06420880400844228286e-01, /* 0x3FBB3E66, 0x18EEE323 */
+ 5.40397917702171048937e-01, /* 0x3FE14AF0, 0x92EB6F33 */
+ 7.18286544141962662868e-02, /* 0x3FB2635C, 0xD99FE9A7 */
+ 1.26171219808761642112e-01, /* 0x3FC02660, 0xE763351F */
+ 1.36370839120290507362e-02, /* 0x3F8BEDC2, 0x6B51DD1C */
+ 1.19844998467991074170e-02 }, /* 0x3F888B54, 0x5735151D */
/*
* Coefficients for approximation to erfc in [1.25,1/0.35]
*/
-ra[] = {-9.86494403484714822705e-03, /* 0xBF843412, 0x600D6435 */
- -6.93858572707181764372e-01, /* 0xBFE63416, 0xE4BA7360 */
- -1.05586262253232909814e+01, /* 0xC0251E04, 0x41B0E726 */
- -6.23753324503260060396e+01, /* 0xC04F300A, 0xE4CBA38D */
- -1.62396669462573470355e+02, /* 0xC0644CB1, 0x84282266 */
- -1.84605092906711035994e+02, /* 0xC067135C, 0xEBCCABB2 */
- -8.12874355063065934246e+01, /* 0xC0545265, 0x57E4D2F2 */
- -9.81432934416914548592e+00}, /* 0xC023A0EF, 0xC69AC25C */
-sa[] = {0.0,1.96512716674392571292e+01, /* 0x4033A6B9, 0xBD707687 */
- 1.37657754143519042600e+02, /* 0x4061350C, 0x526AE721 */
- 4.34565877475229228821e+02, /* 0x407B290D, 0xD58A1A71 */
- 6.45387271733267880336e+02, /* 0x40842B19, 0x21EC2868 */
- 4.29008140027567833386e+02, /* 0x407AD021, 0x57700314 */
- 1.08635005541779435134e+02, /* 0x405B28A3, 0xEE48AE2C */
- 6.57024977031928170135e+00, /* 0x401A47EF, 0x8E484A93 */
- -6.04244152148580987438e-02}, /* 0xBFAEEFF2, 0xEE749A62 */
+ ra[] = { -9.86494403484714822705e-03, /* 0xBF843412, 0x600D6435 */
+ -6.93858572707181764372e-01, /* 0xBFE63416, 0xE4BA7360 */
+ -1.05586262253232909814e+01, /* 0xC0251E04, 0x41B0E726 */
+ -6.23753324503260060396e+01, /* 0xC04F300A, 0xE4CBA38D */
+ -1.62396669462573470355e+02, /* 0xC0644CB1, 0x84282266 */
+ -1.84605092906711035994e+02, /* 0xC067135C, 0xEBCCABB2 */
+ -8.12874355063065934246e+01, /* 0xC0545265, 0x57E4D2F2 */
+ -9.81432934416914548592e+00 }, /* 0xC023A0EF, 0xC69AC25C */
+ sa[] = { 0.0, 1.96512716674392571292e+01, /* 0x4033A6B9, 0xBD707687 */
+ 1.37657754143519042600e+02, /* 0x4061350C, 0x526AE721 */
+ 4.34565877475229228821e+02, /* 0x407B290D, 0xD58A1A71 */
+ 6.45387271733267880336e+02, /* 0x40842B19, 0x21EC2868 */
+ 4.29008140027567833386e+02, /* 0x407AD021, 0x57700314 */
+ 1.08635005541779435134e+02, /* 0x405B28A3, 0xEE48AE2C */
+ 6.57024977031928170135e+00, /* 0x401A47EF, 0x8E484A93 */
+ -6.04244152148580987438e-02 }, /* 0xBFAEEFF2, 0xEE749A62 */
/*
* Coefficients for approximation to erfc in [1/.35,28]
*/
-rb[] = {-9.86494292470009928597e-03, /* 0xBF843412, 0x39E86F4A */
- -7.99283237680523006574e-01, /* 0xBFE993BA, 0x70C285DE */
- -1.77579549177547519889e+01, /* 0xC031C209, 0x555F995A */
- -1.60636384855821916062e+02, /* 0xC064145D, 0x43C5ED98 */
- -6.37566443368389627722e+02, /* 0xC083EC88, 0x1375F228 */
- -1.02509513161107724954e+03, /* 0xC0900461, 0x6A2E5992 */
- -4.83519191608651397019e+02}, /* 0xC07E384E, 0x9BDC383F */
-sb[] = {0.0,3.03380607434824582924e+01, /* 0x403E568B, 0x261D5190 */
- 3.25792512996573918826e+02, /* 0x40745CAE, 0x221B9F0A */
- 1.53672958608443695994e+03, /* 0x409802EB, 0x189D5118 */
- 3.19985821950859553908e+03, /* 0x40A8FFB7, 0x688C246A */
- 2.55305040643316442583e+03, /* 0x40A3F219, 0xCEDF3BE6 */
- 4.74528541206955367215e+02, /* 0x407DA874, 0xE79FE763 */
- -2.24409524465858183362e+01}; /* 0xC03670E2, 0x42712D62 */
+ rb[] = { -9.86494292470009928597e-03, /* 0xBF843412, 0x39E86F4A */
+ -7.99283237680523006574e-01, /* 0xBFE993BA, 0x70C285DE */
+ -1.77579549177547519889e+01, /* 0xC031C209, 0x555F995A */
+ -1.60636384855821916062e+02, /* 0xC064145D, 0x43C5ED98 */
+ -6.37566443368389627722e+02, /* 0xC083EC88, 0x1375F228 */
+ -1.02509513161107724954e+03, /* 0xC0900461, 0x6A2E5992 */
+ -4.83519191608651397019e+02 }, /* 0xC07E384E, 0x9BDC383F */
+ sb[] = { 0.0, 3.03380607434824582924e+01, /* 0x403E568B, 0x261D5190 */
+ 3.25792512996573918826e+02, /* 0x40745CAE, 0x221B9F0A */
+ 1.53672958608443695994e+03, /* 0x409802EB, 0x189D5118 */
+ 3.19985821950859553908e+03, /* 0x40A8FFB7, 0x688C246A */
+ 2.55305040643316442583e+03, /* 0x40A3F219, 0xCEDF3BE6 */
+ 4.74528541206955367215e+02, /* 0x407DA874, 0xE79FE763 */
+ -2.24409524465858183362e+01 }; /* 0xC03670E2, 0x42712D62 */
-double __erf(double x)
+double
+__erf (double x)
{
- int32_t hx,ix,i;
- double R,S,P,Q,s,y,z,r;
- GET_HIGH_WORD(hx,x);
- ix = hx&0x7fffffff;
- if(ix>=0x7ff00000) { /* erf(nan)=nan */
- i = ((u_int32_t)hx>>31)<<1;
- return (double)(1-i)+one/x; /* erf(+-inf)=+-1 */
- }
+ int32_t hx, ix, i;
+ double R, S, P, Q, s, y, z, r;
+ GET_HIGH_WORD (hx, x);
+ ix = hx & 0x7fffffff;
+ if (ix >= 0x7ff00000) /* erf(nan)=nan */
+ {
+ i = ((u_int32_t) hx >> 31) << 1;
+ return (double) (1 - i) + one / x; /* erf(+-inf)=+-1 */
+ }
- if(ix < 0x3feb0000) { /* |x|<0.84375 */
- double r1,r2,s1,s2,s3,z2,z4;
- if(ix < 0x3e300000) { /* |x|<2**-28 */
- if (ix < 0x00800000)
- return 0.125*(8.0*x+efx8*x); /*avoid underflow */
- return x + efx*x;
- }
- z = x*x;
-#ifdef DO_NOT_USE_THIS
- r = pp0+z*(pp1+z*(pp2+z*(pp3+z*pp4)));
- s = one+z*(qq1+z*(qq2+z*(qq3+z*(qq4+z*qq5))));
-#else
- r1 = pp[0]+z*pp[1]; z2=z*z;
- r2 = pp[2]+z*pp[3]; z4=z2*z2;
- s1 = one+z*qq[1];
- s2 = qq[2]+z*qq[3];
- s3 = qq[4]+z*qq[5];
- r = r1 + z2*r2 + z4*pp[4];
- s = s1 + z2*s2 + z4*s3;
-#endif
- y = r/s;
- return x + x*y;
- }
- if(ix < 0x3ff40000) { /* 0.84375 <= |x| < 1.25 */
- double s2,s4,s6,P1,P2,P3,P4,Q1,Q2,Q3,Q4;
- s = fabs(x)-one;
-#ifdef DO_NOT_USE_THIS
- P = pa0+s*(pa1+s*(pa2+s*(pa3+s*(pa4+s*(pa5+s*pa6)))));
- Q = one+s*(qa1+s*(qa2+s*(qa3+s*(qa4+s*(qa5+s*qa6)))));
-#else
- P1 = pa[0]+s*pa[1]; s2=s*s;
- Q1 = one+s*qa[1]; s4=s2*s2;
- P2 = pa[2]+s*pa[3]; s6=s4*s2;
- Q2 = qa[2]+s*qa[3];
- P3 = pa[4]+s*pa[5];
- Q3 = qa[4]+s*qa[5];
- P4 = pa[6];
- Q4 = qa[6];
- P = P1 + s2*P2 + s4*P3 + s6*P4;
- Q = Q1 + s2*Q2 + s4*Q3 + s6*Q4;
-#endif
- if(hx>=0) return erx + P/Q; else return -erx - P/Q;
- }
- if (ix >= 0x40180000) { /* inf>|x|>=6 */
- if(hx>=0) return one-tiny; else return tiny-one;
+ if (ix < 0x3feb0000) /* |x|<0.84375 */
+ {
+ double r1, r2, s1, s2, s3, z2, z4;
+ if (ix < 0x3e300000) /* |x|<2**-28 */
+ {
+ if (ix < 0x00800000)
+ return 0.125 * (8.0 * x + efx8 * x); /*avoid underflow */
+ return x + efx * x;
}
- x = fabs(x);
- s = one/(x*x);
- if(ix< 0x4006DB6E) { /* |x| < 1/0.35 */
-#ifdef DO_NOT_USE_THIS
- R=ra0+s*(ra1+s*(ra2+s*(ra3+s*(ra4+s*(
- ra5+s*(ra6+s*ra7))))));
- S=one+s*(sa1+s*(sa2+s*(sa3+s*(sa4+s*(
- sa5+s*(sa6+s*(sa7+s*sa8)))))));
-#else
- double R1,R2,R3,R4,S1,S2,S3,S4,s2,s4,s6,s8;
- R1 = ra[0]+s*ra[1];s2 = s*s;
- S1 = one+s*sa[1]; s4 = s2*s2;
- R2 = ra[2]+s*ra[3];s6 = s4*s2;
- S2 = sa[2]+s*sa[3];s8 = s4*s4;
- R3 = ra[4]+s*ra[5];
- S3 = sa[4]+s*sa[5];
- R4 = ra[6]+s*ra[7];
- S4 = sa[6]+s*sa[7];
- R = R1 + s2*R2 + s4*R3 + s6*R4;
- S = S1 + s2*S2 + s4*S3 + s6*S4 + s8*sa[8];
-#endif
- } else { /* |x| >= 1/0.35 */
-#ifdef DO_NOT_USE_THIS
- R=rb0+s*(rb1+s*(rb2+s*(rb3+s*(rb4+s*(
- rb5+s*rb6)))));
- S=one+s*(sb1+s*(sb2+s*(sb3+s*(sb4+s*(
- sb5+s*(sb6+s*sb7))))));
-#else
- double R1,R2,R3,S1,S2,S3,S4,s2,s4,s6;
- R1 = rb[0]+s*rb[1];s2 = s*s;
- S1 = one+s*sb[1]; s4 = s2*s2;
- R2 = rb[2]+s*rb[3];s6 = s4*s2;
- S2 = sb[2]+s*sb[3];
- R3 = rb[4]+s*rb[5];
- S3 = sb[4]+s*sb[5];
- S4 = sb[6]+s*sb[7];
- R = R1 + s2*R2 + s4*R3 + s6*rb[6];
- S = S1 + s2*S2 + s4*S3 + s6*S4;
-#endif
- }
- z = x;
- SET_LOW_WORD(z,0);
- r = __ieee754_exp(-z*z-0.5625)*__ieee754_exp((z-x)*(z+x)+R/S);
- if(hx>=0) return one-r/x; else return r/x-one;
+ z = x * x;
+ r1 = pp[0] + z * pp[1]; z2 = z * z;
+ r2 = pp[2] + z * pp[3]; z4 = z2 * z2;
+ s1 = one + z * qq[1];
+ s2 = qq[2] + z * qq[3];
+ s3 = qq[4] + z * qq[5];
+ r = r1 + z2 * r2 + z4 * pp[4];
+ s = s1 + z2 * s2 + z4 * s3;
+ y = r / s;
+ return x + x * y;
+ }
+ if (ix < 0x3ff40000) /* 0.84375 <= |x| < 1.25 */
+ {
+ double s2, s4, s6, P1, P2, P3, P4, Q1, Q2, Q3, Q4;
+ s = fabs (x) - one;
+ P1 = pa[0] + s * pa[1]; s2 = s * s;
+ Q1 = one + s * qa[1]; s4 = s2 * s2;
+ P2 = pa[2] + s * pa[3]; s6 = s4 * s2;
+ Q2 = qa[2] + s * qa[3];
+ P3 = pa[4] + s * pa[5];
+ Q3 = qa[4] + s * qa[5];
+ P4 = pa[6];
+ Q4 = qa[6];
+ P = P1 + s2 * P2 + s4 * P3 + s6 * P4;
+ Q = Q1 + s2 * Q2 + s4 * Q3 + s6 * Q4;
+ if (hx >= 0)
+ return erx + P / Q;
+ else
+ return -erx - P / Q;
+ }
+ if (ix >= 0x40180000) /* inf>|x|>=6 */
+ {
+ if (hx >= 0)
+ return one - tiny;
+ else
+ return tiny - one;
+ }
+ x = fabs (x);
+ s = one / (x * x);
+ if (ix < 0x4006DB6E) /* |x| < 1/0.35 */
+ {
+ double R1, R2, R3, R4, S1, S2, S3, S4, s2, s4, s6, s8;
+ R1 = ra[0] + s * ra[1]; s2 = s * s;
+ S1 = one + s * sa[1]; s4 = s2 * s2;
+ R2 = ra[2] + s * ra[3]; s6 = s4 * s2;
+ S2 = sa[2] + s * sa[3]; s8 = s4 * s4;
+ R3 = ra[4] + s * ra[5];
+ S3 = sa[4] + s * sa[5];
+ R4 = ra[6] + s * ra[7];
+ S4 = sa[6] + s * sa[7];
+ R = R1 + s2 * R2 + s4 * R3 + s6 * R4;
+ S = S1 + s2 * S2 + s4 * S3 + s6 * S4 + s8 * sa[8];
+ }
+ else /* |x| >= 1/0.35 */
+ {
+ double R1, R2, R3, S1, S2, S3, S4, s2, s4, s6;
+ R1 = rb[0] + s * rb[1]; s2 = s * s;
+ S1 = one + s * sb[1]; s4 = s2 * s2;
+ R2 = rb[2] + s * rb[3]; s6 = s4 * s2;
+ S2 = sb[2] + s * sb[3];
+ R3 = rb[4] + s * rb[5];
+ S3 = sb[4] + s * sb[5];
+ S4 = sb[6] + s * sb[7];
+ R = R1 + s2 * R2 + s4 * R3 + s6 * rb[6];
+ S = S1 + s2 * S2 + s4 * S3 + s6 * S4;
+ }
+ z = x;
+ SET_LOW_WORD (z, 0);
+ r = __ieee754_exp (-z * z - 0.5625) *
+ __ieee754_exp ((z - x) * (z + x) + R / S);
+ if (hx >= 0)
+ return one - r / x;
+ else
+ return r / x - one;
}
weak_alias (__erf, erf)
#ifdef NO_LONG_DOUBLE
@@ -298,117 +295,126 @@ strong_alias (__erf, __erfl)
weak_alias (__erf, erfl)
#endif
-double __erfc(double x)
+double
+__erfc (double x)
{
- int32_t hx,ix;
- double R,S,P,Q,s,y,z,r;
- GET_HIGH_WORD(hx,x);
- ix = hx&0x7fffffff;
- if(ix>=0x7ff00000) { /* erfc(nan)=nan */
- /* erfc(+-inf)=0,2 */
- return (double)(((u_int32_t)hx>>31)<<1)+one/x;
- }
+ int32_t hx, ix;
+ double R, S, P, Q, s, y, z, r;
+ GET_HIGH_WORD (hx, x);
+ ix = hx & 0x7fffffff;
+ if (ix >= 0x7ff00000) /* erfc(nan)=nan */
+ { /* erfc(+-inf)=0,2 */
+ return (double) (((u_int32_t) hx >> 31) << 1) + one / x;
+ }
- if(ix < 0x3feb0000) { /* |x|<0.84375 */
- double r1,r2,s1,s2,s3,z2,z4;
- if(ix < 0x3c700000) /* |x|<2**-56 */
- return one-x;
- z = x*x;
-#ifdef DO_NOT_USE_THIS
- r = pp0+z*(pp1+z*(pp2+z*(pp3+z*pp4)));
- s = one+z*(qq1+z*(qq2+z*(qq3+z*(qq4+z*qq5))));
-#else
- r1 = pp[0]+z*pp[1]; z2=z*z;
- r2 = pp[2]+z*pp[3]; z4=z2*z2;
- s1 = one+z*qq[1];
- s2 = qq[2]+z*qq[3];
- s3 = qq[4]+z*qq[5];
- r = r1 + z2*r2 + z4*pp[4];
- s = s1 + z2*s2 + z4*s3;
-#endif
- y = r/s;
- if(hx < 0x3fd00000) { /* x<1/4 */
- return one-(x+x*y);
- } else {
- r = x*y;
- r += (x-half);
- return half - r ;
- }
+ if (ix < 0x3feb0000) /* |x|<0.84375 */
+ {
+ double r1, r2, s1, s2, s3, z2, z4;
+ if (ix < 0x3c700000) /* |x|<2**-56 */
+ return one - x;
+ z = x * x;
+ r1 = pp[0] + z * pp[1]; z2 = z * z;
+ r2 = pp[2] + z * pp[3]; z4 = z2 * z2;
+ s1 = one + z * qq[1];
+ s2 = qq[2] + z * qq[3];
+ s3 = qq[4] + z * qq[5];
+ r = r1 + z2 * r2 + z4 * pp[4];
+ s = s1 + z2 * s2 + z4 * s3;
+ y = r / s;
+ if (hx < 0x3fd00000) /* x<1/4 */
+ {
+ return one - (x + x * y);
}
- if(ix < 0x3ff40000) { /* 0.84375 <= |x| < 1.25 */
- double s2,s4,s6,P1,P2,P3,P4,Q1,Q2,Q3,Q4;
- s = fabs(x)-one;
-#ifdef DO_NOT_USE_THIS
- P = pa0+s*(pa1+s*(pa2+s*(pa3+s*(pa4+s*(pa5+s*pa6)))));
- Q = one+s*(qa1+s*(qa2+s*(qa3+s*(qa4+s*(qa5+s*qa6)))));
-#else
- P1 = pa[0]+s*pa[1]; s2=s*s;
- Q1 = one+s*qa[1]; s4=s2*s2;
- P2 = pa[2]+s*pa[3]; s6=s4*s2;
- Q2 = qa[2]+s*qa[3];
- P3 = pa[4]+s*pa[5];
- Q3 = qa[4]+s*qa[5];
- P4 = pa[6];
- Q4 = qa[6];
- P = P1 + s2*P2 + s4*P3 + s6*P4;
- Q = Q1 + s2*Q2 + s4*Q3 + s6*Q4;
-#endif
- if(hx>=0) {
- z = one-erx; return z - P/Q;
- } else {
- z = erx+P/Q; return one+z;
- }
+ else
+ {
+ r = x * y;
+ r += (x - half);
+ return half - r;
}
- if (ix < 0x403c0000) { /* |x|<28 */
- x = fabs(x);
- s = one/(x*x);
- if(ix< 0x4006DB6D) { /* |x| < 1/.35 ~ 2.857143*/
-#ifdef DO_NOT_USE_THIS
- R=ra0+s*(ra1+s*(ra2+s*(ra3+s*(ra4+s*(
- ra5+s*(ra6+s*ra7))))));
- S=one+s*(sa1+s*(sa2+s*(sa3+s*(sa4+s*(
- sa5+s*(sa6+s*(sa7+s*sa8)))))));
-#else
- double R1,R2,R3,R4,S1,S2,S3,S4,s2,s4,s6,s8;
- R1 = ra[0]+s*ra[1];s2 = s*s;
- S1 = one+s*sa[1]; s4 = s2*s2;
- R2 = ra[2]+s*ra[3];s6 = s4*s2;
- S2 = sa[2]+s*sa[3];s8 = s4*s4;
- R3 = ra[4]+s*ra[5];
- S3 = sa[4]+s*sa[5];
- R4 = ra[6]+s*ra[7];
- S4 = sa[6]+s*sa[7];
- R = R1 + s2*R2 + s4*R3 + s6*R4;
- S = S1 + s2*S2 + s4*S3 + s6*S4 + s8*sa[8];
-#endif
- } else { /* |x| >= 1/.35 ~ 2.857143 */
- double R1,R2,R3,S1,S2,S3,S4,s2,s4,s6;
- if(hx<0&&ix>=0x40180000) return two-tiny;/* x < -6 */
-#ifdef DO_NOT_USE_THIS
- R=rb0+s*(rb1+s*(rb2+s*(rb3+s*(rb4+s*(
- rb5+s*rb6)))));
- S=one+s*(sb1+s*(sb2+s*(sb3+s*(sb4+s*(
- sb5+s*(sb6+s*sb7))))));
-#else
- R1 = rb[0]+s*rb[1];s2 = s*s;
- S1 = one+s*sb[1]; s4 = s2*s2;
- R2 = rb[2]+s*rb[3];s6 = s4*s2;
- S2 = sb[2]+s*sb[3];
- R3 = rb[4]+s*rb[5];
- S3 = sb[4]+s*sb[5];
- S4 = sb[6]+s*sb[7];
- R = R1 + s2*R2 + s4*R3 + s6*rb[6];
- S = S1 + s2*S2 + s4*S3 + s6*S4;
+ }
+ if (ix < 0x3ff40000) /* 0.84375 <= |x| < 1.25 */
+ {
+ double s2, s4, s6, P1, P2, P3, P4, Q1, Q2, Q3, Q4;
+ s = fabs (x) - one;
+ P1 = pa[0] + s * pa[1]; s2 = s * s;
+ Q1 = one + s * qa[1]; s4 = s2 * s2;
+ P2 = pa[2] + s * pa[3]; s6 = s4 * s2;
+ Q2 = qa[2] + s * qa[3];
+ P3 = pa[4] + s * pa[5];
+ Q3 = qa[4] + s * qa[5];
+ P4 = pa[6];
+ Q4 = qa[6];
+ P = P1 + s2 * P2 + s4 * P3 + s6 * P4;
+ Q = Q1 + s2 * Q2 + s4 * Q3 + s6 * Q4;
+ if (hx >= 0)
+ {
+ z = one - erx; return z - P / Q;
+ }
+ else
+ {
+ z = erx + P / Q; return one + z;
+ }
+ }
+ if (ix < 0x403c0000) /* |x|<28 */
+ {
+ x = fabs (x);
+ s = one / (x * x);
+ if (ix < 0x4006DB6D) /* |x| < 1/.35 ~ 2.857143*/
+ {
+ double R1, R2, R3, R4, S1, S2, S3, S4, s2, s4, s6, s8;
+ R1 = ra[0] + s * ra[1]; s2 = s * s;
+ S1 = one + s * sa[1]; s4 = s2 * s2;
+ R2 = ra[2] + s * ra[3]; s6 = s4 * s2;
+ S2 = sa[2] + s * sa[3]; s8 = s4 * s4;
+ R3 = ra[4] + s * ra[5];
+ S3 = sa[4] + s * sa[5];
+ R4 = ra[6] + s * ra[7];
+ S4 = sa[6] + s * sa[7];
+ R = R1 + s2 * R2 + s4 * R3 + s6 * R4;
+ S = S1 + s2 * S2 + s4 * S3 + s6 * S4 + s8 * sa[8];
+ }
+ else /* |x| >= 1/.35 ~ 2.857143 */
+ {
+ double R1, R2, R3, S1, S2, S3, S4, s2, s4, s6;
+ if (hx < 0 && ix >= 0x40180000)
+ return two - tiny; /* x < -6 */
+ R1 = rb[0] + s * rb[1]; s2 = s * s;
+ S1 = one + s * sb[1]; s4 = s2 * s2;
+ R2 = rb[2] + s * rb[3]; s6 = s4 * s2;
+ S2 = sb[2] + s * sb[3];
+ R3 = rb[4] + s * rb[5];
+ S3 = sb[4] + s * sb[5];
+ S4 = sb[6] + s * sb[7];
+ R = R1 + s2 * R2 + s4 * R3 + s6 * rb[6];
+ S = S1 + s2 * S2 + s4 * S3 + s6 * S4;
+ }
+ z = x;
+ SET_LOW_WORD (z, 0);
+ r = __ieee754_exp (-z * z - 0.5625) *
+ __ieee754_exp ((z - x) * (z + x) + R / S);
+ if (hx > 0)
+ {
+#if FLT_EVAL_METHOD != 0
+ volatile
#endif
- }
- z = x;
- SET_LOW_WORD(z,0);
- r = __ieee754_exp(-z*z-0.5625)*
- __ieee754_exp((z-x)*(z+x)+R/S);
- if(hx>0) return r/x; else return two-r/x;
- } else {
- if(hx>0) return tiny*tiny; else return two-tiny;
+ double ret = r / x;
+ if (ret == 0)
+ __set_errno (ERANGE);
+ return ret;
+ }
+ else
+ return two - r / x;
+ }
+ else
+ {
+ if (hx > 0)
+ {
+ __set_errno (ERANGE);
+ return tiny * tiny;
}
+ else
+ return two - tiny;
+ }
}
weak_alias (__erfc, erfc)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_expm1.c b/sysdeps/ieee754/dbl-64/s_expm1.c
index 1a4bcd979a..9c9bb34559 100644
--- a/sysdeps/ieee754/dbl-64/s_expm1.c
+++ b/sysdeps/ieee754/dbl-64/s_expm1.c
@@ -11,7 +11,7 @@
*/
/* Modified by Naohiko Shimizu/Tokai University, Japan 1997/08/25,
for performance improvement on pipelined processors.
-*/
+ */
/* expm1(x)
* Returns exp(x)-1, the exponential of x minus 1.
@@ -113,120 +113,145 @@
#include <math_private.h>
#define one Q[0]
static const double
-huge = 1.0e+300,
-tiny = 1.0e-300,
-o_threshold = 7.09782712893383973096e+02,/* 0x40862E42, 0xFEFA39EF */
-ln2_hi = 6.93147180369123816490e-01,/* 0x3fe62e42, 0xfee00000 */
-ln2_lo = 1.90821492927058770002e-10,/* 0x3dea39ef, 0x35793c76 */
-invln2 = 1.44269504088896338700e+00,/* 0x3ff71547, 0x652b82fe */
- /* scaled coefficients related to expm1 */
-Q[] = {1.0, -3.33333333333331316428e-02, /* BFA11111 111110F4 */
- 1.58730158725481460165e-03, /* 3F5A01A0 19FE5585 */
- -7.93650757867487942473e-05, /* BF14CE19 9EAADBB7 */
- 4.00821782732936239552e-06, /* 3ED0CFCA 86E65239 */
- -2.01099218183624371326e-07}; /* BE8AFDB7 6E09C32D */
+ huge = 1.0e+300,
+ tiny = 1.0e-300,
+ o_threshold = 7.09782712893383973096e+02, /* 0x40862E42, 0xFEFA39EF */
+ ln2_hi = 6.93147180369123816490e-01, /* 0x3fe62e42, 0xfee00000 */
+ ln2_lo = 1.90821492927058770002e-10, /* 0x3dea39ef, 0x35793c76 */
+ invln2 = 1.44269504088896338700e+00, /* 0x3ff71547, 0x652b82fe */
+/* scaled coefficients related to expm1 */
+ Q[] = { 1.0, -3.33333333333331316428e-02, /* BFA11111 111110F4 */
+ 1.58730158725481460165e-03, /* 3F5A01A0 19FE5585 */
+ -7.93650757867487942473e-05, /* BF14CE19 9EAADBB7 */
+ 4.00821782732936239552e-06, /* 3ED0CFCA 86E65239 */
+ -2.01099218183624371326e-07 }; /* BE8AFDB7 6E09C32D */
double
-__expm1(double x)
+__expm1 (double x)
{
- double y,hi,lo,c,t,e,hxs,hfx,r1,h2,h4,R1,R2,R3;
- int32_t k,xsb;
- u_int32_t hx;
+ double y, hi, lo, c, t, e, hxs, hfx, r1, h2, h4, R1, R2, R3;
+ int32_t k, xsb;
+ u_int32_t hx;
- GET_HIGH_WORD(hx,x);
- xsb = hx&0x80000000; /* sign bit of x */
- if(xsb==0) y=x; else y= -x; /* y = |x| */
- hx &= 0x7fffffff; /* high word of |x| */
+ GET_HIGH_WORD (hx, x);
+ xsb = hx & 0x80000000; /* sign bit of x */
+ if (xsb == 0)
+ y = x;
+ else
+ y = -x; /* y = |x| */
+ hx &= 0x7fffffff; /* high word of |x| */
- /* filter out huge and non-finite argument */
- if(hx >= 0x4043687A) { /* if |x|>=56*ln2 */
- if(hx >= 0x40862E42) { /* if |x|>=709.78... */
- if(hx>=0x7ff00000) {
- u_int32_t low;
- GET_LOW_WORD(low,x);
- if(((hx&0xfffff)|low)!=0)
- return x+x; /* NaN */
- else return (xsb==0)? x:-1.0;/* exp(+-inf)={inf,-1} */
- }
- if(x > o_threshold) {
- __set_errno (ERANGE);
- return huge*huge; /* overflow */
- }
+ /* filter out huge and non-finite argument */
+ if (hx >= 0x4043687A) /* if |x|>=56*ln2 */
+ {
+ if (hx >= 0x40862E42) /* if |x|>=709.78... */
+ {
+ if (hx >= 0x7ff00000)
+ {
+ u_int32_t low;
+ GET_LOW_WORD (low, x);
+ if (((hx & 0xfffff) | low) != 0)
+ return x + x; /* NaN */
+ else
+ return (xsb == 0) ? x : -1.0; /* exp(+-inf)={inf,-1} */
}
- if(xsb!=0) { /* x < -56*ln2, return -1.0 with inexact */
- math_force_eval(x+tiny); /* raise inexact */
- return tiny-one; /* return -1 */
+ if (x > o_threshold)
+ {
+ __set_errno (ERANGE);
+ return huge * huge; /* overflow */
}
}
+ if (xsb != 0) /* x < -56*ln2, return -1.0 with inexact */
+ {
+ math_force_eval (x + tiny); /* raise inexact */
+ return tiny - one; /* return -1 */
+ }
+ }
- /* argument reduction */
- if(hx > 0x3fd62e42) { /* if |x| > 0.5 ln2 */
- if(hx < 0x3FF0A2B2) { /* and |x| < 1.5 ln2 */
- if(xsb==0)
- {hi = x - ln2_hi; lo = ln2_lo; k = 1;}
- else
- {hi = x + ln2_hi; lo = -ln2_lo; k = -1;}
- } else {
- k = invln2*x+((xsb==0)?0.5:-0.5);
- t = k;
- hi = x - t*ln2_hi; /* t*ln2_hi is exact here */
- lo = t*ln2_lo;
+ /* argument reduction */
+ if (hx > 0x3fd62e42) /* if |x| > 0.5 ln2 */
+ {
+ if (hx < 0x3FF0A2B2) /* and |x| < 1.5 ln2 */
+ {
+ if (xsb == 0)
+ {
+ hi = x - ln2_hi; lo = ln2_lo; k = 1;
+ }
+ else
+ {
+ hi = x + ln2_hi; lo = -ln2_lo; k = -1;
}
- x = hi - lo;
- c = (hi-x)-lo;
}
- else if(hx < 0x3c900000) { /* when |x|<2**-54, return x */
- t = huge+x; /* return x with inexact flags when x!=0 */
- return x - (t-(huge+x));
+ else
+ {
+ k = invln2 * x + ((xsb == 0) ? 0.5 : -0.5);
+ t = k;
+ hi = x - t * ln2_hi; /* t*ln2_hi is exact here */
+ lo = t * ln2_lo;
}
- else k = 0;
+ x = hi - lo;
+ c = (hi - x) - lo;
+ }
+ else if (hx < 0x3c900000) /* when |x|<2**-54, return x */
+ {
+ t = huge + x; /* return x with inexact flags when x!=0 */
+ return x - (t - (huge + x));
+ }
+ else
+ k = 0;
- /* x is now in primary range */
- hfx = 0.5*x;
- hxs = x*hfx;
-#ifdef DO_NOT_USE_THIS
- r1 = one+hxs*(Q1+hxs*(Q2+hxs*(Q3+hxs*(Q4+hxs*Q5))));
-#else
- R1 = one+hxs*Q[1]; h2 = hxs*hxs;
- R2 = Q[2]+hxs*Q[3]; h4 = h2*h2;
- R3 = Q[4]+hxs*Q[5];
- r1 = R1 + h2*R2 + h4*R3;
-#endif
- t = 3.0-r1*hfx;
- e = hxs*((r1-t)/(6.0 - x*t));
- if(k==0) return x - (x*e-hxs); /* c is 0 */
- else {
- e = (x*(e-c)-c);
- e -= hxs;
- if(k== -1) return 0.5*(x-e)-0.5;
- if(k==1) {
- if(x < -0.25) return -2.0*(e-(x+0.5));
- else return one+2.0*(x-e);
- }
- if (k <= -2 || k>56) { /* suffice to return exp(x)-1 */
- u_int32_t high;
- y = one-(e-x);
- GET_HIGH_WORD(high,y);
- SET_HIGH_WORD(y,high+(k<<20)); /* add k to y's exponent */
- return y-one;
- }
- t = one;
- if(k<20) {
- u_int32_t high;
- SET_HIGH_WORD(t,0x3ff00000 - (0x200000>>k)); /* t=1-2^-k */
- y = t-(e-x);
- GET_HIGH_WORD(high,y);
- SET_HIGH_WORD(y,high+(k<<20)); /* add k to y's exponent */
- } else {
- u_int32_t high;
- SET_HIGH_WORD(t,((0x3ff-k)<<20)); /* 2^-k */
- y = x-(e+t);
- y += one;
- GET_HIGH_WORD(high,y);
- SET_HIGH_WORD(y,high+(k<<20)); /* add k to y's exponent */
- }
+ /* x is now in primary range */
+ hfx = 0.5 * x;
+ hxs = x * hfx;
+ R1 = one + hxs * Q[1]; h2 = hxs * hxs;
+ R2 = Q[2] + hxs * Q[3]; h4 = h2 * h2;
+ R3 = Q[4] + hxs * Q[5];
+ r1 = R1 + h2 * R2 + h4 * R3;
+ t = 3.0 - r1 * hfx;
+ e = hxs * ((r1 - t) / (6.0 - x * t));
+ if (k == 0)
+ return x - (x * e - hxs); /* c is 0 */
+ else
+ {
+ e = (x * (e - c) - c);
+ e -= hxs;
+ if (k == -1)
+ return 0.5 * (x - e) - 0.5;
+ if (k == 1)
+ {
+ if (x < -0.25)
+ return -2.0 * (e - (x + 0.5));
+ else
+ return one + 2.0 * (x - e);
+ }
+ if (k <= -2 || k > 56) /* suffice to return exp(x)-1 */
+ {
+ u_int32_t high;
+ y = one - (e - x);
+ GET_HIGH_WORD (high, y);
+ SET_HIGH_WORD (y, high + (k << 20)); /* add k to y's exponent */
+ return y - one;
+ }
+ t = one;
+ if (k < 20)
+ {
+ u_int32_t high;
+ SET_HIGH_WORD (t, 0x3ff00000 - (0x200000 >> k)); /* t=1-2^-k */
+ y = t - (e - x);
+ GET_HIGH_WORD (high, y);
+ SET_HIGH_WORD (y, high + (k << 20)); /* add k to y's exponent */
+ }
+ else
+ {
+ u_int32_t high;
+ SET_HIGH_WORD (t, ((0x3ff - k) << 20)); /* 2^-k */
+ y = x - (e + t);
+ y += one;
+ GET_HIGH_WORD (high, y);
+ SET_HIGH_WORD (y, high + (k << 20)); /* add k to y's exponent */
}
- return y;
+ }
+ return y;
}
weak_alias (__expm1, expm1)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_fabs.c b/sysdeps/ieee754/dbl-64/s_fabs.c
index 86f1d52be6..c82c4210ed 100644
--- a/sysdeps/ieee754/dbl-64/s_fabs.c
+++ b/sysdeps/ieee754/dbl-64/s_fabs.c
@@ -21,12 +21,13 @@ static char rcsid[] = "$NetBSD: s_fabs.c,v 1.7 1995/05/10 20:47:13 jtc Exp $";
#include <math.h>
#include <math_private.h>
-double __fabs(double x)
+double
+__fabs (double x)
{
- u_int32_t high;
- GET_HIGH_WORD(high,x);
- SET_HIGH_WORD(x,high&0x7fffffff);
- return x;
+ u_int32_t high;
+ GET_HIGH_WORD (high, x);
+ SET_HIGH_WORD (x, high & 0x7fffffff);
+ return x;
}
weak_alias (__fabs, fabs)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_finite.c b/sysdeps/ieee754/dbl-64/s_finite.c
index 47dad5df2c..49986bbde9 100644
--- a/sysdeps/ieee754/dbl-64/s_finite.c
+++ b/sysdeps/ieee754/dbl-64/s_finite.c
@@ -23,11 +23,16 @@ static char rcsid[] = "$NetBSD: s_finite.c,v 1.8 1995/05/10 20:47:17 jtc Exp $";
#include <math_private.h>
#undef __finite
-int __finite(double x)
+
+#ifndef FINITE
+# define FINITE __finite
+#endif
+
+int FINITE(double x)
{
- int32_t hx;
- GET_HIGH_WORD(hx,x);
- return (int)((u_int32_t)((hx&0x7fffffff)-0x7ff00000)>>31);
+ int32_t hx;
+ GET_HIGH_WORD (hx, x);
+ return (int) ((u_int32_t) ((hx & 0x7fffffff) - 0x7ff00000) >> 31);
}
hidden_def (__finite)
weak_alias (__finite, finite)
diff --git a/sysdeps/ieee754/dbl-64/s_floor.c b/sysdeps/ieee754/dbl-64/s_floor.c
index 5c7297842c..bd6afa72e8 100644
--- a/sysdeps/ieee754/dbl-64/s_floor.c
+++ b/sysdeps/ieee754/dbl-64/s_floor.c
@@ -24,44 +24,67 @@
static const double huge = 1.0e300;
-double __floor(double x)
+double
+__floor (double x)
{
- int32_t i0,i1,j0;
- u_int32_t i,j;
- EXTRACT_WORDS(i0,i1,x);
- j0 = ((i0>>20)&0x7ff)-0x3ff;
- if(j0<20) {
- if(j0<0) { /* raise inexact if x != 0 */
- math_force_eval(huge+x);/* return 0*sign(x) if |x|<1 */
- if(i0>=0) {i0=i1=0;}
- else if(((i0&0x7fffffff)|i1)!=0)
- { i0=0xbff00000;i1=0;}
- } else {
- i = (0x000fffff)>>j0;
- if(((i0&i)|i1)==0) return x; /* x is integral */
- math_force_eval(huge+x); /* raise inexact flag */
- if(i0<0) i0 += (0x00100000)>>j0;
- i0 &= (~i); i1=0;
+ int32_t i0, i1, j0;
+ u_int32_t i, j;
+ EXTRACT_WORDS (i0, i1, x);
+ j0 = ((i0 >> 20) & 0x7ff) - 0x3ff;
+ if (j0 < 20)
+ {
+ if (j0 < 0) /* raise inexact if x != 0 */
+ {
+ math_force_eval (huge + x); /* return 0*sign(x) if |x|<1 */
+ if (i0 >= 0)
+ {
+ i0 = i1 = 0;
}
- } else if (j0>51) {
- if(j0==0x400) return x+x; /* inf or NaN */
- else return x; /* x is integral */
- } else {
- i = ((u_int32_t)(0xffffffff))>>(j0-20);
- if((i1&i)==0) return x; /* x is integral */
- math_force_eval(huge+x); /* raise inexact flag */
- if(i0<0) {
- if(j0==20) i0+=1;
- else {
- j = i1+(1<<(52-j0));
- if(j<i1) i0 +=1 ; /* got a carry */
- i1=j;
- }
+ else if (((i0 & 0x7fffffff) | i1) != 0)
+ {
+ i0 = 0xbff00000; i1 = 0;
}
- i1 &= (~i);
}
- INSERT_WORDS(x,i0,i1);
- return x;
+ else
+ {
+ i = (0x000fffff) >> j0;
+ if (((i0 & i) | i1) == 0)
+ return x; /* x is integral */
+ math_force_eval (huge + x); /* raise inexact flag */
+ if (i0 < 0)
+ i0 += (0x00100000) >> j0;
+ i0 &= (~i); i1 = 0;
+ }
+ }
+ else if (j0 > 51)
+ {
+ if (j0 == 0x400)
+ return x + x; /* inf or NaN */
+ else
+ return x; /* x is integral */
+ }
+ else
+ {
+ i = ((u_int32_t) (0xffffffff)) >> (j0 - 20);
+ if ((i1 & i) == 0)
+ return x; /* x is integral */
+ math_force_eval (huge + x); /* raise inexact flag */
+ if (i0 < 0)
+ {
+ if (j0 == 20)
+ i0 += 1;
+ else
+ {
+ j = i1 + (1 << (52 - j0));
+ if (j < i1)
+ i0 += 1; /* got a carry */
+ i1 = j;
+ }
+ }
+ i1 &= (~i);
+ }
+ INSERT_WORDS (x, i0, i1);
+ return x;
}
#ifndef __floor
weak_alias (__floor, floor)
diff --git a/sysdeps/ieee754/dbl-64/s_frexp.c b/sysdeps/ieee754/dbl-64/s_frexp.c
index 516f561a17..1b8d8500ba 100644
--- a/sysdeps/ieee754/dbl-64/s_frexp.c
+++ b/sysdeps/ieee754/dbl-64/s_frexp.c
@@ -28,25 +28,28 @@ static char rcsid[] = "$NetBSD: s_frexp.c,v 1.9 1995/05/10 20:47:24 jtc Exp $";
#include <math_private.h>
static const double
-two54 = 1.80143985094819840000e+16; /* 0x43500000, 0x00000000 */
+ two54 = 1.80143985094819840000e+16; /* 0x43500000, 0x00000000 */
-double __frexp(double x, int *eptr)
+double
+__frexp (double x, int *eptr)
{
- int32_t hx, ix, lx;
- EXTRACT_WORDS(hx,lx,x);
- ix = 0x7fffffff&hx;
- *eptr = 0;
- if(ix>=0x7ff00000||((ix|lx)==0)) return x; /* 0,inf,nan */
- if (ix<0x00100000) { /* subnormal */
- x *= two54;
- GET_HIGH_WORD(hx,x);
- ix = hx&0x7fffffff;
- *eptr = -54;
- }
- *eptr += (ix>>20)-1022;
- hx = (hx&0x800fffff)|0x3fe00000;
- SET_HIGH_WORD(x,hx);
- return x;
+ int32_t hx, ix, lx;
+ EXTRACT_WORDS (hx, lx, x);
+ ix = 0x7fffffff & hx;
+ *eptr = 0;
+ if (ix >= 0x7ff00000 || ((ix | lx) == 0))
+ return x; /* 0,inf,nan */
+ if (ix < 0x00100000) /* subnormal */
+ {
+ x *= two54;
+ GET_HIGH_WORD (hx, x);
+ ix = hx & 0x7fffffff;
+ *eptr = -54;
+ }
+ *eptr += (ix >> 20) - 1022;
+ hx = (hx & 0x800fffff) | 0x3fe00000;
+ SET_HIGH_WORD (x, hx);
+ return x;
}
weak_alias (__frexp, frexp)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_isinf.c b/sysdeps/ieee754/dbl-64/s_isinf.c
index 886b346f51..46a7266e7f 100644
--- a/sysdeps/ieee754/dbl-64/s_isinf.c
+++ b/sysdeps/ieee754/dbl-64/s_isinf.c
@@ -19,11 +19,11 @@ static char rcsid[] = "$NetBSD: s_isinf.c,v 1.3 1995/05/11 23:20:14 jtc Exp $";
int
__isinf (double x)
{
- int32_t hx,lx;
- EXTRACT_WORDS(hx,lx,x);
- lx |= (hx & 0x7fffffff) ^ 0x7ff00000;
- lx |= -lx;
- return ~(lx >> 31) & (hx >> 30);
+ int32_t hx, lx;
+ EXTRACT_WORDS (hx, lx, x);
+ lx |= (hx & 0x7fffffff) ^ 0x7ff00000;
+ lx |= -lx;
+ return ~(lx >> 31) & (hx >> 30);
}
hidden_def (__isinf)
weak_alias (__isinf, isinf)
diff --git a/sysdeps/ieee754/dbl-64/s_isinf_ns.c b/sysdeps/ieee754/dbl-64/s_isinf_ns.c
index 0ce50352c7..d8142bcf6e 100644
--- a/sysdeps/ieee754/dbl-64/s_isinf_ns.c
+++ b/sysdeps/ieee754/dbl-64/s_isinf_ns.c
@@ -14,7 +14,7 @@
int
__isinf_ns (double x)
{
- int32_t hx,lx;
- EXTRACT_WORDS(hx,lx,x);
- return !(lx | ((hx & 0x7fffffff) ^ 0x7ff00000));
+ int32_t hx, lx;
+ EXTRACT_WORDS (hx, lx, x);
+ return !(lx | ((hx & 0x7fffffff) ^ 0x7ff00000));
}
diff --git a/sysdeps/ieee754/dbl-64/s_isnan.c b/sysdeps/ieee754/dbl-64/s_isnan.c
index f8958dcbbf..5d9f31be20 100644
--- a/sysdeps/ieee754/dbl-64/s_isnan.c
+++ b/sysdeps/ieee754/dbl-64/s_isnan.c
@@ -23,14 +23,15 @@ static char rcsid[] = "$NetBSD: s_isnan.c,v 1.8 1995/05/10 20:47:36 jtc Exp $";
#include <math_private.h>
#undef __isnan
-int __isnan(double x)
+int
+__isnan (double x)
{
- int32_t hx,lx;
- EXTRACT_WORDS(hx,lx,x);
- hx &= 0x7fffffff;
- hx |= (u_int32_t)(lx|(-lx))>>31;
- hx = 0x7ff00000 - hx;
- return (int)(((u_int32_t)hx)>>31);
+ int32_t hx, lx;
+ EXTRACT_WORDS (hx, lx, x);
+ hx &= 0x7fffffff;
+ hx |= (u_int32_t) (lx | (-lx)) >> 31;
+ hx = 0x7ff00000 - hx;
+ return (int) (((u_int32_t) hx) >> 31);
}
hidden_def (__isnan)
weak_alias (__isnan, isnan)
diff --git a/sysdeps/ieee754/dbl-64/s_llround.c b/sysdeps/ieee754/dbl-64/s_llround.c
index e8c2232e91..7d50a57dd3 100644
--- a/sysdeps/ieee754/dbl-64/s_llround.c
+++ b/sysdeps/ieee754/dbl-64/s_llround.c
@@ -66,7 +66,7 @@ __llround (double x)
else
{
/* The number is too large. It is left implementation defined
- what happens. */
+ what happens. */
return (long long int) x;
}
diff --git a/sysdeps/ieee754/dbl-64/s_log1p.c b/sysdeps/ieee754/dbl-64/s_log1p.c
index e3e6860966..ea1dc6ca76 100644
--- a/sysdeps/ieee754/dbl-64/s_log1p.c
+++ b/sysdeps/ieee754/dbl-64/s_log1p.c
@@ -11,7 +11,7 @@
*/
/* Modified by Naohiko Shimizu/Tokai University, Japan 1997/08/25,
for performance improvement on pipelined processors.
-*/
+ */
/* double log1p(double x)
*
@@ -82,91 +82,112 @@
#include <math_private.h>
static const double
-ln2_hi = 6.93147180369123816490e-01, /* 3fe62e42 fee00000 */
-ln2_lo = 1.90821492927058770002e-10, /* 3dea39ef 35793c76 */
-two54 = 1.80143985094819840000e+16, /* 43500000 00000000 */
-Lp[] = {0.0, 6.666666666666735130e-01, /* 3FE55555 55555593 */
- 3.999999999940941908e-01, /* 3FD99999 9997FA04 */
- 2.857142874366239149e-01, /* 3FD24924 94229359 */
- 2.222219843214978396e-01, /* 3FCC71C5 1D8E78AF */
- 1.818357216161805012e-01, /* 3FC74664 96CB03DE */
- 1.531383769920937332e-01, /* 3FC39A09 D078C69F */
- 1.479819860511658591e-01}; /* 3FC2F112 DF3E5244 */
+ ln2_hi = 6.93147180369123816490e-01, /* 3fe62e42 fee00000 */
+ ln2_lo = 1.90821492927058770002e-10, /* 3dea39ef 35793c76 */
+ two54 = 1.80143985094819840000e+16, /* 43500000 00000000 */
+ Lp[] = { 0.0, 6.666666666666735130e-01, /* 3FE55555 55555593 */
+ 3.999999999940941908e-01, /* 3FD99999 9997FA04 */
+ 2.857142874366239149e-01, /* 3FD24924 94229359 */
+ 2.222219843214978396e-01, /* 3FCC71C5 1D8E78AF */
+ 1.818357216161805012e-01, /* 3FC74664 96CB03DE */
+ 1.531383769920937332e-01, /* 3FC39A09 D078C69F */
+ 1.479819860511658591e-01 }; /* 3FC2F112 DF3E5244 */
static const double zero = 0.0;
double
-__log1p(double x)
+__log1p (double x)
{
- double hfsq,f,c,s,z,R,u,z2,z4,z6,R1,R2,R3,R4;
- int32_t k,hx,hu,ax;
+ double hfsq, f, c, s, z, R, u, z2, z4, z6, R1, R2, R3, R4;
+ int32_t k, hx, hu, ax;
- GET_HIGH_WORD(hx,x);
- ax = hx&0x7fffffff;
+ GET_HIGH_WORD (hx, x);
+ ax = hx & 0x7fffffff;
- k = 1;
- if (hx < 0x3FDA827A) { /* x < 0.41422 */
- if(__builtin_expect(ax>=0x3ff00000, 0)) { /* x <= -1.0 */
- if(x==-1.0) return -two54/(x-x);/* log1p(-1)=+inf */
- else return (x-x)/(x-x); /* log1p(x<-1)=NaN */
- }
- if(__builtin_expect(ax<0x3e200000, 0)) { /* |x| < 2**-29 */
- math_force_eval(two54+x); /* raise inexact */
- if (ax<0x3c900000) /* |x| < 2**-54 */
- return x;
- else
- return x - x*x*0.5;
- }
- if(hx>0||hx<=((int32_t)0xbfd2bec3)) {
- k=0;f=x;hu=1;} /* -0.2929<x<0.41422 */
+ k = 1;
+ if (hx < 0x3FDA827A) /* x < 0.41422 */
+ {
+ if (__builtin_expect (ax >= 0x3ff00000, 0)) /* x <= -1.0 */
+ {
+ if (x == -1.0)
+ return -two54 / (x - x); /* log1p(-1)=+inf */
+ else
+ return (x - x) / (x - x); /* log1p(x<-1)=NaN */
}
- else if (__builtin_expect(hx >= 0x7ff00000, 0)) return x+x;
- if(k!=0) {
- if(hx<0x43400000) {
- u = 1.0+x;
- GET_HIGH_WORD(hu,u);
- k = (hu>>20)-1023;
- c = (k>0)? 1.0-(u-x):x-(u-1.0);/* correction term */
- c /= u;
- } else {
- u = x;
- GET_HIGH_WORD(hu,u);
- k = (hu>>20)-1023;
- c = 0;
- }
- hu &= 0x000fffff;
- if(hu<0x6a09e) {
- SET_HIGH_WORD(u,hu|0x3ff00000); /* normalize u */
- } else {
- k += 1;
- SET_HIGH_WORD(u,hu|0x3fe00000); /* normalize u/2 */
- hu = (0x00100000-hu)>>2;
- }
- f = u-1.0;
+ if (__builtin_expect (ax < 0x3e200000, 0)) /* |x| < 2**-29 */
+ {
+ math_force_eval (two54 + x); /* raise inexact */
+ if (ax < 0x3c900000) /* |x| < 2**-54 */
+ return x;
+ else
+ return x - x * x * 0.5;
}
- hfsq=0.5*f*f;
- if(hu==0) { /* |f| < 2**-20 */
- if(f==zero) {
- if(k==0) return zero;
- else {c += k*ln2_lo; return k*ln2_hi+c;}
+ if (hx > 0 || hx <= ((int32_t) 0xbfd2bec3))
+ {
+ k = 0; f = x; hu = 1;
+ } /* -0.2929<x<0.41422 */
+ }
+ else if (__builtin_expect (hx >= 0x7ff00000, 0))
+ return x + x;
+ if (k != 0)
+ {
+ if (hx < 0x43400000)
+ {
+ u = 1.0 + x;
+ GET_HIGH_WORD (hu, u);
+ k = (hu >> 20) - 1023;
+ c = (k > 0) ? 1.0 - (u - x) : x - (u - 1.0); /* correction term */
+ c /= u;
+ }
+ else
+ {
+ u = x;
+ GET_HIGH_WORD (hu, u);
+ k = (hu >> 20) - 1023;
+ c = 0;
+ }
+ hu &= 0x000fffff;
+ if (hu < 0x6a09e)
+ {
+ SET_HIGH_WORD (u, hu | 0x3ff00000); /* normalize u */
+ }
+ else
+ {
+ k += 1;
+ SET_HIGH_WORD (u, hu | 0x3fe00000); /* normalize u/2 */
+ hu = (0x00100000 - hu) >> 2;
+ }
+ f = u - 1.0;
+ }
+ hfsq = 0.5 * f * f;
+ if (hu == 0) /* |f| < 2**-20 */
+ {
+ if (f == zero)
+ {
+ if (k == 0)
+ return zero;
+ else
+ {
+ c += k * ln2_lo; return k * ln2_hi + c;
}
- R = hfsq*(1.0-0.66666666666666666*f);
- if(k==0) return f-R; else
- return k*ln2_hi-((R-(k*ln2_lo+c))-f);
}
- s = f/(2.0+f);
- z = s*s;
-#ifdef DO_NOT_USE_THIS
- R = z*(Lp1+z*(Lp2+z*(Lp3+z*(Lp4+z*(Lp5+z*(Lp6+z*Lp7))))));
-#else
- R1 = z*Lp[1]; z2=z*z;
- R2 = Lp[2]+z*Lp[3]; z4=z2*z2;
- R3 = Lp[4]+z*Lp[5]; z6=z4*z2;
- R4 = Lp[6]+z*Lp[7];
- R = R1 + z2*R2 + z4*R3 + z6*R4;
-#endif
- if(k==0) return f-(hfsq-s*(hfsq+R)); else
- return k*ln2_hi-((hfsq-(s*(hfsq+R)+(k*ln2_lo+c)))-f);
+ R = hfsq * (1.0 - 0.66666666666666666 * f);
+ if (k == 0)
+ return f - R;
+ else
+ return k * ln2_hi - ((R - (k * ln2_lo + c)) - f);
+ }
+ s = f / (2.0 + f);
+ z = s * s;
+ R1 = z * Lp[1]; z2 = z * z;
+ R2 = Lp[2] + z * Lp[3]; z4 = z2 * z2;
+ R3 = Lp[4] + z * Lp[5]; z6 = z4 * z2;
+ R4 = Lp[6] + z * Lp[7];
+ R = R1 + z2 * R2 + z4 * R3 + z6 * R4;
+ if (k == 0)
+ return f - (hfsq - s * (hfsq + R));
+ else
+ return k * ln2_hi - ((hfsq - (s * (hfsq + R) + (k * ln2_lo + c))) - f);
}
weak_alias (__log1p, log1p)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_logb.c b/sysdeps/ieee754/dbl-64/s_logb.c
index 17aa94b755..c065826dd2 100644
--- a/sysdeps/ieee754/dbl-64/s_logb.c
+++ b/sysdeps/ieee754/dbl-64/s_logb.c
@@ -25,7 +25,7 @@ __logb (double x)
int32_t lx, ix, rix;
EXTRACT_WORDS (ix, lx, x);
- ix &= 0x7fffffff; /* high |x| */
+ ix &= 0x7fffffff; /* high |x| */
if ((ix | lx) == 0)
return -1.0 / fabs (x);
if (ix >= 0x7ff00000)
diff --git a/sysdeps/ieee754/dbl-64/s_lrint.c b/sysdeps/ieee754/dbl-64/s_lrint.c
index a68c97e599..1c3037364b 100644
--- a/sysdeps/ieee754/dbl-64/s_lrint.c
+++ b/sysdeps/ieee754/dbl-64/s_lrint.c
@@ -33,7 +33,7 @@ long int
__lrint (double x)
{
int32_t j0;
- u_int32_t i0,i1;
+ u_int32_t i0, i1;
volatile double w;
double t;
long int result;
diff --git a/sysdeps/ieee754/dbl-64/s_modf.c b/sysdeps/ieee754/dbl-64/s_modf.c
index b9911c1af6..1dce6381ae 100644
--- a/sysdeps/ieee754/dbl-64/s_modf.c
+++ b/sysdeps/ieee754/dbl-64/s_modf.c
@@ -25,45 +25,59 @@
static const double one = 1.0;
double
-__modf(double x, double *iptr)
+__modf (double x, double *iptr)
{
- int32_t i0,i1,j0;
- u_int32_t i;
- EXTRACT_WORDS(i0,i1,x);
- j0 = ((i0>>20)&0x7ff)-0x3ff; /* exponent of x */
- if(j0<20) { /* integer part in high x */
- if(j0<0) { /* |x|<1 */
- INSERT_WORDS(*iptr,i0&0x80000000,0); /* *iptr = +-0 */
- return x;
- } else {
- i = (0x000fffff)>>j0;
- if(((i0&i)|i1)==0) { /* x is integral */
- *iptr = x;
- INSERT_WORDS(x,i0&0x80000000,0); /* return +-0 */
- return x;
- } else {
- INSERT_WORDS(*iptr,i0&(~i),0);
- return x - *iptr;
- }
+ int32_t i0, i1, j0;
+ u_int32_t i;
+ EXTRACT_WORDS (i0, i1, x);
+ j0 = ((i0 >> 20) & 0x7ff) - 0x3ff; /* exponent of x */
+ if (j0 < 20) /* integer part in high x */
+ {
+ if (j0 < 0) /* |x|<1 */
+ {
+ INSERT_WORDS (*iptr, i0 & 0x80000000, 0); /* *iptr = +-0 */
+ return x;
+ }
+ else
+ {
+ i = (0x000fffff) >> j0;
+ if (((i0 & i) | i1) == 0) /* x is integral */
+ {
+ *iptr = x;
+ INSERT_WORDS (x, i0 & 0x80000000, 0); /* return +-0 */
+ return x;
}
- } else if (__builtin_expect(j0>51, 0)) { /* no fraction part */
- *iptr = x*one;
- /* We must handle NaNs separately. */
- if (j0 == 0x400 && ((i0 & 0xfffff) | i1))
- return x*one;
- INSERT_WORDS(x,i0&0x80000000,0); /* return +-0 */
- return x;
- } else { /* fraction part in low x */
- i = ((u_int32_t)(0xffffffff))>>(j0-20);
- if((i1&i)==0) { /* x is integral */
- *iptr = x;
- INSERT_WORDS(x,i0&0x80000000,0); /* return +-0 */
- return x;
- } else {
- INSERT_WORDS(*iptr,i0,i1&(~i));
- return x - *iptr;
+ else
+ {
+ INSERT_WORDS (*iptr, i0 & (~i), 0);
+ return x - *iptr;
}
}
+ }
+ else if (__builtin_expect (j0 > 51, 0)) /* no fraction part */
+ {
+ *iptr = x * one;
+ /* We must handle NaNs separately. */
+ if (j0 == 0x400 && ((i0 & 0xfffff) | i1))
+ return x * one;
+ INSERT_WORDS (x, i0 & 0x80000000, 0); /* return +-0 */
+ return x;
+ }
+ else /* fraction part in low x */
+ {
+ i = ((u_int32_t) (0xffffffff)) >> (j0 - 20);
+ if ((i1 & i) == 0) /* x is integral */
+ {
+ *iptr = x;
+ INSERT_WORDS (x, i0 & 0x80000000, 0); /* return +-0 */
+ return x;
+ }
+ else
+ {
+ INSERT_WORDS (*iptr, i0, i1 & (~i));
+ return x - *iptr;
+ }
+ }
}
weak_alias (__modf, modf)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_nearbyint.c b/sysdeps/ieee754/dbl-64/s_nearbyint.c
index 5017f471d2..dec0c5d6ee 100644
--- a/sysdeps/ieee754/dbl-64/s_nearbyint.c
+++ b/sysdeps/ieee754/dbl-64/s_nearbyint.c
@@ -29,40 +29,47 @@ static char rcsid[] = "$NetBSD: s_rint.c,v 1.8 1995/05/10 20:48:04 jtc Exp $";
#include <math_private.h>
static const double
-TWO52[2]={
+ TWO52[2] = {
4.50359962737049600000e+15, /* 0x43300000, 0x00000000 */
-4.50359962737049600000e+15, /* 0xC3300000, 0x00000000 */
};
-double __nearbyint(double x)
+double
+__nearbyint (double x)
{
- fenv_t env;
- int32_t i0,j0,sx;
- double w,t;
- GET_HIGH_WORD(i0,x);
- sx = (i0>>31)&1;
- j0 = ((i0>>20)&0x7ff)-0x3ff;
- if(j0<52) {
- if(j0<0) {
- libc_feholdexcept (&env);
- w = TWO52[sx]+x;
- t = w-TWO52[sx];
- math_force_eval (t);
- libc_fesetenv (&env);
- GET_HIGH_WORD(i0,t);
- SET_HIGH_WORD(t,(i0&0x7fffffff)|(sx<<31));
- return t;
- }
- } else {
- if(j0==0x400) return x+x; /* inf or NaN */
- else return x; /* x is integral */
+ fenv_t env;
+ int32_t i0, j0, sx;
+ double w, t;
+ GET_HIGH_WORD (i0, x);
+ sx = (i0 >> 31) & 1;
+ j0 = ((i0 >> 20) & 0x7ff) - 0x3ff;
+ if (j0 < 52)
+ {
+ if (j0 < 0)
+ {
+ libc_feholdexcept (&env);
+ w = TWO52[sx] + x;
+ t = w - TWO52[sx];
+ math_force_eval (t);
+ libc_fesetenv (&env);
+ GET_HIGH_WORD (i0, t);
+ SET_HIGH_WORD (t, (i0 & 0x7fffffff) | (sx << 31));
+ return t;
}
- libc_feholdexcept (&env);
- w = TWO52[sx]+x;
- t = w-TWO52[sx];
- math_force_eval (t);
- libc_fesetenv (&env);
- return t;
+ }
+ else
+ {
+ if (j0 == 0x400)
+ return x + x; /* inf or NaN */
+ else
+ return x; /* x is integral */
+ }
+ libc_feholdexcept (&env);
+ w = TWO52[sx] + x;
+ t = w - TWO52[sx];
+ math_force_eval (t);
+ libc_fesetenv (&env);
+ return t;
}
weak_alias (__nearbyint, nearbyint)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_remquo.c b/sysdeps/ieee754/dbl-64/s_remquo.c
index 642581edee..c406150043 100644
--- a/sysdeps/ieee754/dbl-64/s_remquo.c
+++ b/sysdeps/ieee754/dbl-64/s_remquo.c
@@ -28,8 +28,8 @@ static const double zero = 0.0;
double
__remquo (double x, double y, int *quo)
{
- int32_t hx,hy;
- u_int32_t sx,lx,ly;
+ int32_t hx, hy;
+ u_int32_t sx, lx, ly;
int cquo, qs;
EXTRACT_WORDS (hx, lx, x);
@@ -41,14 +41,14 @@ __remquo (double x, double y, int *quo)
/* Purge off exception values. */
if ((hy | ly) == 0)
- return (x * y) / (x * y); /* y = 0 */
- if ((hx >= 0x7ff00000) /* x not finite */
- || ((hy >= 0x7ff00000) /* p is NaN */
+ return (x * y) / (x * y); /* y = 0 */
+ if ((hx >= 0x7ff00000) /* x not finite */
+ || ((hy >= 0x7ff00000) /* p is NaN */
&& (((hy - 0x7ff00000) | ly) != 0)))
return (x * y) / (x * y);
if (hy <= 0x7fbfffff)
- x = __ieee754_fmod (x, 8 * y); /* now x < 8y */
+ x = __ieee754_fmod (x, 8 * y); /* now x < 8y */
if (((hx - hy) | (lx - ly)) == 0)
{
@@ -56,8 +56,8 @@ __remquo (double x, double y, int *quo)
return zero * x;
}
- x = fabs (x);
- y = fabs (y);
+ x = fabs (x);
+ y = fabs (y);
cquo = 0;
if (x >= 4 * y)
diff --git a/sysdeps/ieee754/dbl-64/s_rint.c b/sysdeps/ieee754/dbl-64/s_rint.c
index 8458909165..a9c0d27842 100644
--- a/sysdeps/ieee754/dbl-64/s_rint.c
+++ b/sysdeps/ieee754/dbl-64/s_rint.c
@@ -24,33 +24,39 @@
#include <math_private.h>
static const double
-TWO52[2]={
+ TWO52[2] = {
4.50359962737049600000e+15, /* 0x43300000, 0x00000000 */
-4.50359962737049600000e+15, /* 0xC3300000, 0x00000000 */
};
double
-__rint(double x)
+__rint (double x)
{
- int32_t i0,j0,sx;
- double w,t;
- GET_HIGH_WORD(i0,x);
- sx = (i0>>31)&1;
- j0 = ((i0>>20)&0x7ff)-0x3ff;
- if(j0<52) {
- if(j0<0) {
- w = TWO52[sx]+x;
- t = w-TWO52[sx];
- GET_HIGH_WORD(i0,t);
- SET_HIGH_WORD(t,(i0&0x7fffffff)|(sx<<31));
- return t;
- }
- } else {
- if(j0==0x400) return x+x; /* inf or NaN */
- else return x; /* x is integral */
+ int32_t i0, j0, sx;
+ double w, t;
+ GET_HIGH_WORD (i0, x);
+ sx = (i0 >> 31) & 1;
+ j0 = ((i0 >> 20) & 0x7ff) - 0x3ff;
+ if (j0 < 52)
+ {
+ if (j0 < 0)
+ {
+ w = TWO52[sx] + x;
+ t = w - TWO52[sx];
+ GET_HIGH_WORD (i0, t);
+ SET_HIGH_WORD (t, (i0 & 0x7fffffff) | (sx << 31));
+ return t;
}
- w = TWO52[sx]+x;
- return w-TWO52[sx];
+ }
+ else
+ {
+ if (j0 == 0x400)
+ return x + x; /* inf or NaN */
+ else
+ return x; /* x is integral */
+ }
+ w = TWO52[sx] + x;
+ return w - TWO52[sx];
}
#ifndef __rint
weak_alias (__rint, rint)
diff --git a/sysdeps/ieee754/dbl-64/s_scalbln.c b/sysdeps/ieee754/dbl-64/s_scalbln.c
index 271a24c3ea..6402927d23 100644
--- a/sysdeps/ieee754/dbl-64/s_scalbln.c
+++ b/sysdeps/ieee754/dbl-64/s_scalbln.c
@@ -20,38 +20,43 @@
#include <math_private.h>
static const double
-two54 = 1.80143985094819840000e+16, /* 0x43500000, 0x00000000 */
-twom54 = 5.55111512312578270212e-17, /* 0x3C900000, 0x00000000 */
-huge = 1.0e+300,
-tiny = 1.0e-300;
+ two54 = 1.80143985094819840000e+16, /* 0x43500000, 0x00000000 */
+ twom54 = 5.55111512312578270212e-17, /* 0x3C900000, 0x00000000 */
+ huge = 1.0e+300,
+ tiny = 1.0e-300;
double
__scalbln (double x, long int n)
{
- int32_t k,hx,lx;
- EXTRACT_WORDS(hx,lx,x);
- k = (hx&0x7ff00000)>>20; /* extract exponent */
- if (__builtin_expect(k==0, 0)) { /* 0 or subnormal x */
- if ((lx|(hx&0x7fffffff))==0) return x; /* +-0 */
- x *= two54;
- GET_HIGH_WORD(hx,x);
- k = ((hx&0x7ff00000)>>20) - 54;
- }
- if (__builtin_expect(k==0x7ff, 0)) return x+x; /* NaN or Inf */
- if (__builtin_expect(n< -50000, 0))
- return tiny*__copysign(tiny,x); /*underflow*/
- if (__builtin_expect(n> 50000 || k+n > 0x7fe, 0))
- return huge*__copysign(huge,x); /* overflow */
- /* Now k and n are bounded we know that k = k+n does not
- overflow. */
- k = k+n;
- if (__builtin_expect(k > 0, 1)) /* normal result */
- {SET_HIGH_WORD(x,(hx&0x800fffff)|(k<<20)); return x;}
- if (k <= -54)
- return tiny*__copysign(tiny,x); /*underflow*/
- k += 54; /* subnormal result */
- SET_HIGH_WORD(x,(hx&0x800fffff)|(k<<20));
- return x*twom54;
+ int32_t k, hx, lx;
+ EXTRACT_WORDS (hx, lx, x);
+ k = (hx & 0x7ff00000) >> 20; /* extract exponent */
+ if (__builtin_expect (k == 0, 0)) /* 0 or subnormal x */
+ {
+ if ((lx | (hx & 0x7fffffff)) == 0)
+ return x; /* +-0 */
+ x *= two54;
+ GET_HIGH_WORD (hx, x);
+ k = ((hx & 0x7ff00000) >> 20) - 54;
+ }
+ if (__builtin_expect (k == 0x7ff, 0))
+ return x + x; /* NaN or Inf */
+ if (__builtin_expect (n < -50000, 0))
+ return tiny * __copysign (tiny, x); /*underflow*/
+ if (__builtin_expect (n > 50000 || k + n > 0x7fe, 0))
+ return huge * __copysign (huge, x); /* overflow */
+ /* Now k and n are bounded we know that k = k+n does not
+ overflow. */
+ k = k + n;
+ if (__builtin_expect (k > 0, 1)) /* normal result */
+ {
+ SET_HIGH_WORD (x, (hx & 0x800fffff) | (k << 20)); return x;
+ }
+ if (k <= -54)
+ return tiny * __copysign (tiny, x); /*underflow*/
+ k += 54; /* subnormal result */
+ SET_HIGH_WORD (x, (hx & 0x800fffff) | (k << 20));
+ return x * twom54;
}
weak_alias (__scalbln, scalbln)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_scalbn.c b/sysdeps/ieee754/dbl-64/s_scalbn.c
index 1f302557ef..6e7d5ad217 100644
--- a/sysdeps/ieee754/dbl-64/s_scalbn.c
+++ b/sysdeps/ieee754/dbl-64/s_scalbn.c
@@ -20,38 +20,43 @@
#include <math_private.h>
static const double
-two54 = 1.80143985094819840000e+16, /* 0x43500000, 0x00000000 */
-twom54 = 5.55111512312578270212e-17, /* 0x3C900000, 0x00000000 */
-huge = 1.0e+300,
-tiny = 1.0e-300;
+ two54 = 1.80143985094819840000e+16, /* 0x43500000, 0x00000000 */
+ twom54 = 5.55111512312578270212e-17, /* 0x3C900000, 0x00000000 */
+ huge = 1.0e+300,
+ tiny = 1.0e-300;
double
__scalbn (double x, int n)
{
- int32_t k,hx,lx;
- EXTRACT_WORDS(hx,lx,x);
- k = (hx&0x7ff00000)>>20; /* extract exponent */
- if (__builtin_expect(k==0, 0)) { /* 0 or subnormal x */
- if ((lx|(hx&0x7fffffff))==0) return x; /* +-0 */
- x *= two54;
- GET_HIGH_WORD(hx,x);
- k = ((hx&0x7ff00000)>>20) - 54;
- }
- if (__builtin_expect(k==0x7ff, 0)) return x+x; /* NaN or Inf */
- if (__builtin_expect(n< -50000, 0))
- return tiny*__copysign(tiny,x); /*underflow*/
- if (__builtin_expect(n> 50000 || k+n > 0x7fe, 0))
- return huge*__copysign(huge,x); /* overflow */
- /* Now k and n are bounded we know that k = k+n does not
- overflow. */
- k = k+n;
- if (__builtin_expect(k > 0, 1)) /* normal result */
- {SET_HIGH_WORD(x,(hx&0x800fffff)|(k<<20)); return x;}
- if (k <= -54)
- return tiny*__copysign(tiny,x); /*underflow*/
- k += 54; /* subnormal result */
- SET_HIGH_WORD(x,(hx&0x800fffff)|(k<<20));
- return x*twom54;
+ int32_t k, hx, lx;
+ EXTRACT_WORDS (hx, lx, x);
+ k = (hx & 0x7ff00000) >> 20; /* extract exponent */
+ if (__builtin_expect (k == 0, 0)) /* 0 or subnormal x */
+ {
+ if ((lx | (hx & 0x7fffffff)) == 0)
+ return x; /* +-0 */
+ x *= two54;
+ GET_HIGH_WORD (hx, x);
+ k = ((hx & 0x7ff00000) >> 20) - 54;
+ }
+ if (__builtin_expect (k == 0x7ff, 0))
+ return x + x; /* NaN or Inf */
+ if (__builtin_expect (n < -50000, 0))
+ return tiny * __copysign (tiny, x); /*underflow*/
+ if (__builtin_expect (n > 50000 || k + n > 0x7fe, 0))
+ return huge * __copysign (huge, x); /* overflow */
+ /* Now k and n are bounded we know that k = k+n does not
+ overflow. */
+ k = k + n;
+ if (__builtin_expect (k > 0, 1)) /* normal result */
+ {
+ SET_HIGH_WORD (x, (hx & 0x800fffff) | (k << 20)); return x;
+ }
+ if (k <= -54)
+ return tiny * __copysign (tiny, x); /*underflow*/
+ k += 54; /* subnormal result */
+ SET_HIGH_WORD (x, (hx & 0x800fffff) | (k << 20));
+ return x * twom54;
}
weak_alias (__scalbn, scalbn)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/s_sin.c b/sysdeps/ieee754/dbl-64/s_sin.c
index 5c388c8b93..9066667040 100644
--- a/sysdeps/ieee754/dbl-64/s_sin.c
+++ b/sysdeps/ieee754/dbl-64/s_sin.c
@@ -55,6 +55,58 @@
#include <math_private.h>
#include <fenv.h>
+/* Helper macros to compute sin of the input values. */
+#define POLYNOMIAL2(xx) ((((s5 * (xx) + s4) * (xx) + s3) * (xx) + s2) * (xx))
+
+#define POLYNOMIAL(xx) (POLYNOMIAL2 (xx) + s1)
+
+/* The computed polynomial is a variation of the Taylor series expansion for
+ sin(a):
+
+ a - a^3/3! + a^5/5! - a^7/7! + a^9/9! + (1 - a^2) * da / 2
+
+ The constants s1, s2, s3, etc. are pre-computed values of 1/3!, 1/5! and so
+ on. The result is returned to LHS and correction in COR. */
+#define TAYLOR_SIN(xx, a, da, cor) \
+({ \
+ double t = ((POLYNOMIAL (xx) * (a) - 0.5 * (da)) * (xx) + (da)); \
+ double res = (a) + t; \
+ (cor) = ((a) - res) + t; \
+ res; \
+})
+
+/* This is again a variation of the Taylor series expansion with the term
+ x^3/3! expanded into the following for better accuracy:
+
+ bb * x ^ 3 + 3 * aa * x * x1 * x2 + aa * x1 ^ 3 + aa * x2 ^ 3
+
+ The correction term is dx and bb + aa = -1/3!
+ */
+#define TAYLOR_SLOW(x0, dx, cor) \
+({ \
+ static const double th2_36 = 206158430208.0; /* 1.5*2**37 */ \
+ double xx = (x0) * (x0); \
+ double x1 = ((x0) + th2_36) - th2_36; \
+ double y = aa * x1 * x1 * x1; \
+ double r = (x0) + y; \
+ double x2 = ((x0) - x1) + (dx); \
+ double t = (((POLYNOMIAL2 (xx) + bb) * xx + 3.0 * aa * x1 * x2) \
+ * (x0) + aa * x2 * x2 * x2 + (dx)); \
+ t = (((x0) - r) + y) + t; \
+ double res = r + t; \
+ (cor) = (r - res) + t; \
+ res; \
+})
+
+#define SINCOS_TABLE_LOOKUP(u, sn, ssn, cs, ccs) \
+({ \
+ int4 k = u.i[LOW_HALF] << 2; \
+ sn = __sincostab.x[k]; \
+ ssn = __sincostab.x[k + 1]; \
+ cs = __sincostab.x[k + 2]; \
+ ccs = __sincostab.x[k + 3]; \
+})
+
#ifndef SECTION
# define SECTION
#endif
@@ -72,12 +124,12 @@ static const double
cs4 = -4.16666666666664434524222570944589E-02,
cs6 = 1.38888874007937613028114285595617E-03;
+static const double t22 = 0x1.8p22;
+
void __dubsin (double x, double dx, double w[]);
void __docos (double x, double dx, double w[]);
-double __mpsin (double x, double dx);
-double __mpcos (double x, double dx);
-double __mpsin1 (double x);
-double __mpcos1 (double x);
+double __mpsin (double x, double dx, bool reduce_range);
+double __mpcos (double x, double dx, bool reduce_range);
static double slow (double x);
static double slow1 (double x);
static double slow2 (double x);
@@ -93,6 +145,39 @@ static double csloww (double x, double dx, double orig);
static double csloww1 (double x, double dx, double orig);
static double csloww2 (double x, double dx, double orig, int n);
+/* Reduce range of X and compute sin of a + da. K is the amount by which to
+ rotate the quadrants. This allows us to use the same routine to compute cos
+ by simply rotating the quadrants by 1. */
+static inline double
+__always_inline
+reduce_and_compute (double x, double a, double da, unsigned int k)
+{
+ double retval = 0;
+ unsigned int n = __branred (x, &a, &da);
+ k = (n + k) % 4;
+ switch (k)
+ {
+ case 0:
+ if (a * a < 0.01588)
+ retval = bsloww (a, da, x, n);
+ else
+ retval = bsloww1 (a, da, x, n);
+ break;
+ case 2:
+ if (a * a < 0.01588)
+ retval = bsloww (-a, -da, x, n);
+ else
+ retval = bsloww1 (-a, -da, x, n);
+ break;
+
+ case 1:
+ case 3:
+ retval = bsloww2 (a, da, x, n);
+ break;
+ }
+ return retval;
+}
+
/*******************************************************************/
/* An ultimate sin routine. Given an IEEE double machine number x */
/* it computes the correctly rounded (to nearest) value of sin(x) */
@@ -113,81 +198,71 @@ __sin (double x)
m = u.i[HIGH_HALF];
k = 0x7fffffff & m; /* no sign */
if (k < 0x3e500000) /* if x->0 =>sin(x)=x */
- {
- retval = x;
- goto ret;
- }
+ retval = x;
/*---------------------------- 2^-26 < |x|< 0.25 ----------------------*/
else if (k < 0x3fd00000)
{
xx = x * x;
- /*Taylor series. */
- t = (((((s5.x * xx + s4.x) * xx + s3.x) * xx + s2.x) * xx + s1.x)
- * (xx * x));
+ /* Taylor series. */
+ t = POLYNOMIAL (xx) * (xx * x);
res = x + t;
cor = (x - res) + t;
retval = (res == res + 1.07 * cor) ? res : slow (x);
- goto ret;
} /* else if (k < 0x3fd00000) */
/*---------------------------- 0.25<|x|< 0.855469---------------------- */
else if (k < 0x3feb6000)
{
- u.x = (m > 0) ? big.x + x : big.x - x;
- y = (m > 0) ? x - (u.x - big.x) : x + (u.x - big.x);
+ u.x = (m > 0) ? big + x : big - x;
+ y = (m > 0) ? x - (u.x - big) : x + (u.x - big);
xx = y * y;
s = y + y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = (m > 0) ? __sincostab.x[k] : -__sincostab.x[k];
- ssn = (m > 0) ? __sincostab.x[k + 1] : -__sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
+ if (m <= 0)
+ {
+ sn = -sn;
+ ssn = -ssn;
+ }
cor = (ssn + s * ccs - sn * c) + cs * s;
res = sn + cor;
cor = (sn - res) + cor;
retval = (res == res + 1.096 * cor) ? res : slow1 (x);
- goto ret;
} /* else if (k < 0x3feb6000) */
/*----------------------- 0.855469 <|x|<2.426265 ----------------------*/
else if (k < 0x400368fd)
{
- y = (m > 0) ? hp0.x - x : hp0.x + x;
+ y = (m > 0) ? hp0 - x : hp0 + x;
if (y >= 0)
{
- u.x = big.x + y;
- y = (y - (u.x - big.x)) + hp1.x;
+ u.x = big + y;
+ y = (y - (u.x - big)) + hp1;
}
else
{
- u.x = big.x - y;
- y = (-hp1.x) - (y + (u.x - big.x));
+ u.x = big - y;
+ y = (-hp1) - (y + (u.x - big));
}
xx = y * y;
s = y + y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
cor = (ccs - s * ssn - cs * c) - sn * s;
res = cs + cor;
cor = (cs - res) + cor;
retval = (res == res + 1.020 * cor) ? ((m > 0) ? res : -res) : slow2 (x);
- goto ret;
} /* else if (k < 0x400368fd) */
/*-------------------------- 2.426265<|x|< 105414350 ----------------------*/
else if (k < 0x419921FB)
{
- t = (x * hpinv.x + toint.x);
- xn = t - toint.x;
+ t = (x * hpinv + toint);
+ xn = t - toint;
v.x = t;
- y = (x - xn * mp1.x) - xn * mp2.x;
+ y = (x - xn * mp1) - xn * mp2;
n = v.i[LOW_HALF] & 3;
- da = xn * mp3.x;
+ da = xn * mp3;
a = y - da;
da = (y - a) - da;
eps = ABS (x) * 1.2e-30;
@@ -204,14 +279,10 @@ __sin (double x)
}
if (xx < 0.01588)
{
- /*Taylor series */
- t = (((((s5.x * xx + s4.x) * xx + s3.x) * xx + s2.x) * xx
- + s1.x) * a - 0.5 * da) * xx + da;
- res = a + t;
- cor = (a - res) + t;
+ /* Taylor series. */
+ res = TAYLOR_SIN (xx, a, da, cor);
cor = (cor > 0) ? 1.02 * cor + eps : 1.02 * cor - eps;
retval = (res == res + cor) ? res : sloww (a, da, x);
- goto ret;
}
else
{
@@ -227,23 +298,18 @@ __sin (double x)
t = -a;
db = -da;
}
- u.x = big.x + t;
- y = t - (u.x - big.x);
+ u.x = big + t;
+ y = t - (u.x - big);
xx = y * y;
s = y + (db + y * xx * (sn3 + xx * sn5));
c = y * db + xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
cor = (ssn + s * ccs - sn * c) + cs * s;
res = sn + cor;
cor = (sn - res) + cor;
cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps;
retval = ((res == res + cor) ? ((m) ? res : -res)
: sloww1 (a, da, x));
- goto ret;
}
break;
@@ -254,14 +320,10 @@ __sin (double x)
a = -a;
da = -da;
}
- u.x = big.x + a;
- y = a - (u.x - big.x) + da;
+ u.x = big + a;
+ y = a - (u.x - big) + da;
xx = y * y;
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
s = y + y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
cor = (ccs - s * ssn - cs * c) - sn * s;
@@ -270,27 +332,24 @@ __sin (double x)
cor = (cor > 0) ? 1.025 * cor + eps : 1.025 * cor - eps;
retval = ((res == res + cor) ? ((n & 2) ? -res : res)
: sloww2 (a, da, x, n));
- goto ret;
-
break;
}
-
} /* else if (k < 0x419921FB ) */
/*---------------------105414350 <|x|< 281474976710656 --------------------*/
else if (k < 0x42F00000)
{
- t = (x * hpinv.x + toint.x);
- xn = t - toint.x;
+ t = (x * hpinv + toint);
+ xn = t - toint;
v.x = t;
xn1 = (xn + 8.0e22) - 8.0e22;
xn2 = xn - xn1;
- y = ((((x - xn1 * mp1.x) - xn1 * mp2.x) - xn2 * mp1.x) - xn2 * mp2.x);
+ y = ((((x - xn1 * mp1) - xn1 * mp2) - xn2 * mp1) - xn2 * mp2);
n = v.i[LOW_HALF] & 3;
- da = xn1 * pp3.x;
+ da = xn1 * pp3;
t = y - da;
da = (y - t) - da;
- da = (da - xn2 * pp3.x) - xn * pp4.x;
+ da = (da - xn2 * pp3) - xn * pp4;
a = t + da;
da = (t - a) + da;
eps = 1.0e-24;
@@ -307,14 +366,10 @@ __sin (double x)
}
if (xx < 0.01588)
{
- /* Taylor series */
- t = (((((s5.x * xx + s4.x) * xx + s3.x) * xx + s2.x) * xx
- + s1.x) * a - 0.5 * da) * xx + da;
- res = a + t;
- cor = (a - res) + t;
+ /* Taylor series. */
+ res = TAYLOR_SIN (xx, a, da, cor);
cor = (cor > 0) ? 1.02 * cor + eps : 1.02 * cor - eps;
retval = (res == res + cor) ? res : bsloww (a, da, x, n);
- goto ret;
}
else
{
@@ -330,23 +385,18 @@ __sin (double x)
t = -a;
db = -da;
}
- u.x = big.x + t;
- y = t - (u.x - big.x);
+ u.x = big + t;
+ y = t - (u.x - big);
xx = y * y;
s = y + (db + y * xx * (sn3 + xx * sn5));
c = y * db + xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
cor = (ssn + s * ccs - sn * c) + cs * s;
res = sn + cor;
cor = (sn - res) + cor;
cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps;
retval = ((res == res + cor) ? ((m) ? res : -res)
: bsloww1 (a, da, x, n));
- goto ret;
}
break;
@@ -357,14 +407,10 @@ __sin (double x)
a = -a;
da = -da;
}
- u.x = big.x + a;
- y = a - (u.x - big.x) + da;
+ u.x = big + a;
+ y = a - (u.x - big) + da;
xx = y * y;
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
s = y + y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
cor = (ccs - s * ssn - cs * c) - sn * s;
@@ -373,40 +419,13 @@ __sin (double x)
cor = (cor > 0) ? 1.025 * cor + eps : 1.025 * cor - eps;
retval = ((res == res + cor) ? ((n & 2) ? -res : res)
: bsloww2 (a, da, x, n));
- goto ret;
-
break;
}
} /* else if (k < 0x42F00000 ) */
/* -----------------281474976710656 <|x| <2^1024----------------------------*/
else if (k < 0x7ff00000)
- {
- n = __branred (x, &a, &da);
- switch (n)
- {
- case 0:
- if (a * a < 0.01588)
- retval = bsloww (a, da, x, n);
- else
- retval = bsloww1 (a, da, x, n);
- goto ret;
- break;
- case 2:
- if (a * a < 0.01588)
- retval = bsloww (-a, -da, x, n);
- else
- retval = bsloww1 (-a, -da, x, n);
- goto ret;
- break;
-
- case 1:
- case 3:
- retval = bsloww2 (a, da, x, n);
- goto ret;
- break;
- }
- } /* else if (k < 0x7ff00000 ) */
+ retval = reduce_and_compute (x, a, da, 0);
/*--------------------- |x| > 2^1024 ----------------------------------*/
else
@@ -414,10 +433,8 @@ __sin (double x)
if (k == 0x7ff00000 && u.i[LOW_HALF] == 0)
__set_errno (EDOM);
retval = x / x;
- goto ret;
}
-ret:
return retval;
}
@@ -444,47 +461,36 @@ __cos (double x)
m = u.i[HIGH_HALF];
k = 0x7fffffff & m;
+ /* |x|<2^-27 => cos(x)=1 */
if (k < 0x3e400000)
- {
- retval = 1.0;
- goto ret;
- } /* |x|<2^-27 => cos(x)=1 */
+ retval = 1.0;
else if (k < 0x3feb6000)
{ /* 2^-27 < |x| < 0.855469 */
y = ABS (x);
- u.x = big.x + y;
- y = y - (u.x - big.x);
+ u.x = big + y;
+ y = y - (u.x - big);
xx = y * y;
s = y + y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
cor = (ccs - s * ssn - cs * c) - sn * s;
res = cs + cor;
cor = (cs - res) + cor;
retval = (res == res + 1.020 * cor) ? res : cslow2 (x);
- goto ret;
} /* else if (k < 0x3feb6000) */
else if (k < 0x400368fd)
{ /* 0.855469 <|x|<2.426265 */ ;
- y = hp0.x - ABS (x);
- a = y + hp1.x;
- da = (y - a) + hp1.x;
+ y = hp0 - ABS (x);
+ a = y + hp1;
+ da = (y - a) + hp1;
xx = a * a;
if (xx < 0.01588)
{
- t = (((((s5.x * xx + s4.x) * xx + s3.x) * xx + s2.x) * xx + s1.x)
- * a - 0.5 * da) * xx + da;
- res = a + t;
- cor = (a - res) + t;
+ res = TAYLOR_SIN (xx, a, da, cor);
cor = (cor > 0) ? 1.02 * cor + 1.0e-31 : 1.02 * cor - 1.0e-31;
retval = (res == res + cor) ? res : csloww (a, da, x);
- goto ret;
}
else
{
@@ -500,23 +506,18 @@ __cos (double x)
t = -a;
db = -da;
}
- u.x = big.x + t;
- y = t - (u.x - big.x);
+ u.x = big + t;
+ y = t - (u.x - big);
xx = y * y;
s = y + (db + y * xx * (sn3 + xx * sn5));
c = y * db + xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
cor = (ssn + s * ccs - sn * c) + cs * s;
res = sn + cor;
cor = (sn - res) + cor;
cor = (cor > 0) ? 1.035 * cor + 1.0e-31 : 1.035 * cor - 1.0e-31;
retval = ((res == res + cor) ? ((m) ? res : -res)
: csloww1 (a, da, x));
- goto ret;
}
} /* else if (k < 0x400368fd) */
@@ -524,12 +525,12 @@ __cos (double x)
else if (k < 0x419921FB)
{ /* 2.426265<|x|< 105414350 */
- t = (x * hpinv.x + toint.x);
- xn = t - toint.x;
+ t = (x * hpinv + toint);
+ xn = t - toint;
v.x = t;
- y = (x - xn * mp1.x) - xn * mp2.x;
+ y = (x - xn * mp1) - xn * mp2;
n = v.i[LOW_HALF] & 3;
- da = xn * mp3.x;
+ da = xn * mp3;
a = y - da;
da = (y - a) - da;
eps = ABS (x) * 1.2e-30;
@@ -546,13 +547,9 @@ __cos (double x)
}
if (xx < 0.01588)
{
- t = (((((s5.x * xx + s4.x) * xx + s3.x) * xx + s2.x) * xx
- + s1.x) * a - 0.5 * da) * xx + da;
- res = a + t;
- cor = (a - res) + t;
+ res = TAYLOR_SIN (xx, a, da, cor);
cor = (cor > 0) ? 1.02 * cor + eps : 1.02 * cor - eps;
retval = (res == res + cor) ? res : csloww (a, da, x);
- goto ret;
}
else
{
@@ -568,23 +565,18 @@ __cos (double x)
t = -a;
db = -da;
}
- u.x = big.x + t;
- y = t - (u.x - big.x);
+ u.x = big + t;
+ y = t - (u.x - big);
xx = y * y;
s = y + (db + y * xx * (sn3 + xx * sn5));
c = y * db + xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
cor = (ssn + s * ccs - sn * c) + cs * s;
res = sn + cor;
cor = (sn - res) + cor;
cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps;
retval = ((res == res + cor) ? ((m) ? res : -res)
: csloww1 (a, da, x));
- goto ret;
}
break;
@@ -595,14 +587,10 @@ __cos (double x)
a = -a;
da = -da;
}
- u.x = big.x + a;
- y = a - (u.x - big.x) + da;
+ u.x = big + a;
+ y = a - (u.x - big) + da;
xx = y * y;
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
s = y + y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
cor = (ccs - s * ssn - cs * c) - sn * s;
@@ -611,25 +599,23 @@ __cos (double x)
cor = (cor > 0) ? 1.025 * cor + eps : 1.025 * cor - eps;
retval = ((res == res + cor) ? ((n) ? -res : res)
: csloww2 (a, da, x, n));
- goto ret;
-
break;
}
} /* else if (k < 0x419921FB ) */
else if (k < 0x42F00000)
{
- t = (x * hpinv.x + toint.x);
- xn = t - toint.x;
+ t = (x * hpinv + toint);
+ xn = t - toint;
v.x = t;
xn1 = (xn + 8.0e22) - 8.0e22;
xn2 = xn - xn1;
- y = ((((x - xn1 * mp1.x) - xn1 * mp2.x) - xn2 * mp1.x) - xn2 * mp2.x);
+ y = ((((x - xn1 * mp1) - xn1 * mp2) - xn2 * mp1) - xn2 * mp2);
n = v.i[LOW_HALF] & 3;
- da = xn1 * pp3.x;
+ da = xn1 * pp3;
t = y - da;
da = (y - t) - da;
- da = (da - xn2 * pp3.x) - xn * pp4.x;
+ da = (da - xn2 * pp3) - xn * pp4;
a = t + da;
da = (t - a) + da;
eps = 1.0e-24;
@@ -646,13 +632,9 @@ __cos (double x)
}
if (xx < 0.01588)
{
- t = (((((s5.x * xx + s4.x) * xx + s3.x) * xx + s2.x) * xx
- + s1.x) * a - 0.5 * da) * xx + da;
- res = a + t;
- cor = (a - res) + t;
+ res = TAYLOR_SIN (xx, a, da, cor);
cor = (cor > 0) ? 1.02 * cor + eps : 1.02 * cor - eps;
retval = (res == res + cor) ? res : bsloww (a, da, x, n);
- goto ret;
}
else
{
@@ -668,23 +650,18 @@ __cos (double x)
t = -a;
db = -da;
}
- u.x = big.x + t;
- y = t - (u.x - big.x);
+ u.x = big + t;
+ y = t - (u.x - big);
xx = y * y;
s = y + (db + y * xx * (sn3 + xx * sn5));
c = y * db + xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
cor = (ssn + s * ccs - sn * c) + cs * s;
res = sn + cor;
cor = (sn - res) + cor;
cor = (cor > 0) ? 1.035 * cor + eps : 1.035 * cor - eps;
retval = ((res == res + cor) ? ((m) ? res : -res)
: bsloww1 (a, da, x, n));
- goto ret;
}
break;
@@ -695,14 +672,10 @@ __cos (double x)
a = -a;
da = -da;
}
- u.x = big.x + a;
- y = a - (u.x - big.x) + da;
+ u.x = big + a;
+ y = a - (u.x - big) + da;
xx = y * y;
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
s = y + y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
cor = (ccs - s * ssn - cs * c) - sn * s;
@@ -711,49 +684,21 @@ __cos (double x)
cor = (cor > 0) ? 1.025 * cor + eps : 1.025 * cor - eps;
retval = ((res == res + cor) ? ((n) ? -res : res)
: bsloww2 (a, da, x, n));
- goto ret;
break;
}
} /* else if (k < 0x42F00000 ) */
+ /* 281474976710656 <|x| <2^1024 */
else if (k < 0x7ff00000)
- { /* 281474976710656 <|x| <2^1024 */
-
- n = __branred (x, &a, &da);
- switch (n)
- {
- case 1:
- if (a * a < 0.01588)
- retval = bsloww (-a, -da, x, n);
- else
- retval = bsloww1 (-a, -da, x, n);
- goto ret;
- break;
- case 3:
- if (a * a < 0.01588)
- retval = bsloww (a, da, x, n);
- else
- retval = bsloww1 (a, da, x, n);
- goto ret;
- break;
-
- case 0:
- case 2:
- retval = bsloww2 (a, da, x, n);
- goto ret;
- break;
- }
- } /* else if (k < 0x7ff00000 ) */
+ retval = reduce_and_compute (x, a, da, 1);
else
{
if (k == 0x7ff00000 && u.i[LOW_HALF] == 0)
__set_errno (EDOM);
retval = x / x; /* |x| > 2^1024 */
- goto ret;
}
-ret:
return retval;
}
@@ -766,18 +711,8 @@ static double
SECTION
slow (double x)
{
- static const double th2_36 = 206158430208.0; /* 1.5*2**37 */
- double y, x1, x2, xx, r, t, res, cor, w[2];
- x1 = (x + th2_36) - th2_36;
- y = aa.x * x1 * x1 * x1;
- r = x + y;
- x2 = x - x1;
- xx = x * x;
- t = (((((s5.x * xx + s4.x) * xx + s3.x) * xx + s2.x) * xx + bb.x) * xx
- + 3.0 * aa.x * x1 * x2) * x + aa.x * x2 * x2 * x2;
- t = ((x - r) + y) + t;
- res = r + t;
- cor = (r - res) + t;
+ double res, cor, w[2];
+ res = TAYLOR_SLOW (x, 0, cor);
if (res == res + 1.0007 * cor)
return res;
else
@@ -786,12 +721,12 @@ slow (double x)
if (w[0] == w[0] + 1.000000001 * w[1])
return (x > 0) ? w[0] : -w[0];
else
- return (x > 0) ? __mpsin (x, 0) : -__mpsin (-x, 0);
+ return (x > 0) ? __mpsin (x, 0, false) : -__mpsin (-x, 0, false);
}
}
/*******************************************************************************/
-/* Routine compute sin(x) for 0.25<|x|< 0.855469 by __sincostab.tbl and Taylor */
+/* Routine compute sin(x) for 0.25<|x|< 0.855469 by __sincostab.tbl and Taylor */
/* and if result still doesn't accurate enough by mpsin or dubsin */
/*******************************************************************************/
@@ -801,19 +736,13 @@ slow1 (double x)
{
mynumber u;
double sn, ssn, cs, ccs, s, c, w[2], y, y1, y2, c1, c2, xx, cor, res;
- static const double t22 = 6291456.0;
- int4 k;
y = ABS (x);
- u.x = big.x + y;
- y = y - (u.x - big.x);
+ u.x = big + y;
+ y = y - (u.x - big);
xx = y * y;
s = y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k]; /* Data */
- ssn = __sincostab.x[k + 1]; /* from */
- cs = __sincostab.x[k + 2]; /* tables */
- ccs = __sincostab.x[k + 3]; /* __sincostab.tbl */
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
y1 = (y + t22) - t22;
y2 = y - y1;
c1 = (cs + t22) - t22;
@@ -831,7 +760,7 @@ slow1 (double x)
if (w[0] == w[0] + 1.000000005 * w[1])
return (x > 0) ? w[0] : -w[0];
else
- return (x > 0) ? __mpsin (x, 0) : -__mpsin (-x, 0);
+ return (x > 0) ? __mpsin (x, 0, false) : -__mpsin (-x, 0, false);
}
}
@@ -845,30 +774,25 @@ slow2 (double x)
{
mynumber u;
double sn, ssn, cs, ccs, s, c, w[2], y, y1, y2, e1, e2, xx, cor, res, del;
- static const double t22 = 6291456.0;
- int4 k;
+
y = ABS (x);
- y = hp0.x - y;
+ y = hp0 - y;
if (y >= 0)
{
- u.x = big.x + y;
- y = y - (u.x - big.x);
- del = hp1.x;
+ u.x = big + y;
+ y = y - (u.x - big);
+ del = hp1;
}
else
{
- u.x = big.x - y;
- y = -(y + (u.x - big.x));
- del = -hp1.x;
+ u.x = big - y;
+ y = -(y + (u.x - big));
+ del = -hp1;
}
xx = y * y;
s = y * xx * (sn3 + xx * sn5);
c = y * del + xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
y1 = (y + t22) - t22;
y2 = (y - y1) + del;
e1 = (sn + t22) - t22;
@@ -882,14 +806,14 @@ slow2 (double x)
return (x > 0) ? res : -res;
else
{
- y = ABS (x) - hp0.x;
- y1 = y - hp1.x;
- y2 = (y - y1) - hp1.x;
+ y = ABS (x) - hp0;
+ y1 = y - hp1;
+ y2 = (y - y1) - hp1;
__docos (y1, y2, w);
if (w[0] == w[0] + 1.000000005 * w[1])
return (x > 0) ? w[0] : -w[0];
else
- return (x > 0) ? __mpsin (x, 0) : -__mpsin (-x, 0);
+ return (x > 0) ? __mpsin (x, 0, false) : -__mpsin (-x, 0, false);
}
}
@@ -905,28 +829,15 @@ static double
SECTION
sloww (double x, double dx, double orig)
{
- static const double th2_36 = 206158430208.0; /* 1.5*2**37 */
- double y, x1, x2, xx, r, t, res, cor, w[2], a, da, xn;
- union
- {
- int4 i[2];
- double x;
- } v;
+ double y, t, res, cor, w[2], a, da, xn;
+ mynumber v;
int4 n;
- x1 = (x + th2_36) - th2_36;
- y = aa.x * x1 * x1 * x1;
- r = x + y;
- x2 = (x - x1) + dx;
- xx = x * x;
- t = (((((s5.x * xx + s4.x) * xx + s3.x) * xx + s2.x) * xx + bb.x) * xx
- + 3.0 * aa.x * x1 * x2) * x + aa.x * x2 * x2 * x2 + dx;
- t = ((x - r) + y) + t;
- res = r + t;
- cor = (r - res) + t;
- cor =
- (cor >
- 0) ? 1.0005 * cor + ABS (orig) * 3.1e-30 : 1.0005 * cor -
- ABS (orig) * 3.1e-30;
+ res = TAYLOR_SLOW (x, dx, cor);
+ if (cor > 0)
+ cor = 1.0005 * cor + ABS (orig) * 3.1e-30;
+ else
+ cor = 1.0005 * cor - ABS (orig) * 3.1e-30;
+
if (res == res + cor)
return res;
else
@@ -941,15 +852,15 @@ sloww (double x, double dx, double orig)
return (x > 0) ? w[0] : -w[0];
else
{
- t = (orig * hpinv.x + toint.x);
- xn = t - toint.x;
+ t = (orig * hpinv + toint);
+ xn = t - toint;
v.x = t;
- y = (orig - xn * mp1.x) - xn * mp2.x;
+ y = (orig - xn * mp1) - xn * mp2;
n = v.i[LOW_HALF] & 3;
- da = xn * pp3.x;
+ da = xn * pp3;
t = y - da;
da = (y - t) - da;
- y = xn * pp4.x;
+ y = xn * pp4;
a = t - y;
da = ((t - a) - y) + da;
if (n & 2)
@@ -966,7 +877,7 @@ sloww (double x, double dx, double orig)
if (w[0] == w[0] + cor)
return (a > 0) ? w[0] : -w[0];
else
- return __mpsin1 (orig);
+ return __mpsin (orig, 0, true);
}
}
}
@@ -984,21 +895,15 @@ sloww1 (double x, double dx, double orig)
{
mynumber u;
double sn, ssn, cs, ccs, s, c, w[2], y, y1, y2, c1, c2, xx, cor, res;
- static const double t22 = 6291456.0;
- int4 k;
y = ABS (x);
- u.x = big.x + y;
- y = y - (u.x - big.x);
+ u.x = big + y;
+ y = y - (u.x - big);
dx = (x > 0) ? dx : -dx;
xx = y * y;
s = y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
y1 = (y + t22) - t22;
y2 = (y - y1) + dx;
c1 = (cs + t22) - t22;
@@ -1028,7 +933,7 @@ sloww1 (double x, double dx, double orig)
if (w[0] == w[0] + cor)
return (x > 0) ? w[0] : -w[0];
else
- return __mpsin1 (orig);
+ return __mpsin (orig, 0, true);
}
}
@@ -1045,21 +950,15 @@ sloww2 (double x, double dx, double orig, int n)
{
mynumber u;
double sn, ssn, cs, ccs, s, c, w[2], y, y1, y2, e1, e2, xx, cor, res;
- static const double t22 = 6291456.0;
- int4 k;
y = ABS (x);
- u.x = big.x + y;
- y = y - (u.x - big.x);
+ u.x = big + y;
+ y = y - (u.x - big);
dx = (x > 0) ? dx : -dx;
xx = y * y;
s = y * xx * (sn3 + xx * sn5);
c = y * dx + xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
y1 = (y + t22) - t22;
y2 = (y - y1) + dx;
@@ -1090,7 +989,7 @@ sloww2 (double x, double dx, double orig, int n)
if (w[0] == w[0] + cor)
return (n & 2) ? -w[0] : w[0];
else
- return __mpsin1 (orig);
+ return __mpsin (orig, 0, true);
}
}
@@ -1106,19 +1005,9 @@ static double
SECTION
bsloww (double x, double dx, double orig, int n)
{
- static const double th2_36 = 206158430208.0; /* 1.5*2**37 */
- double y, x1, x2, xx, r, t, res, cor, w[2];
-
- x1 = (x + th2_36) - th2_36;
- y = aa.x * x1 * x1 * x1;
- r = x + y;
- x2 = (x - x1) + dx;
- xx = x * x;
- t = (((((s5.x * xx + s4.x) * xx + s3.x) * xx + s2.x) * xx + bb.x) * xx
- + 3.0 * aa.x * x1 * x2) * x + aa.x * x2 * x2 * x2 + dx;
- t = ((x - r) + y) + t;
- res = r + t;
- cor = (r - res) + t;
+ double res, cor, w[2];
+
+ res = TAYLOR_SLOW (x, dx, cor);
cor = (cor > 0) ? 1.0005 * cor + 1.1e-24 : 1.0005 * cor - 1.1e-24;
if (res == res + cor)
return res;
@@ -1132,7 +1021,7 @@ bsloww (double x, double dx, double orig, int n)
if (w[0] == w[0] + cor)
return (x > 0) ? w[0] : -w[0];
else
- return (n & 1) ? __mpcos1 (orig) : __mpsin1 (orig);
+ return (n & 1) ? __mpcos (orig, 0, true) : __mpsin (orig, 0, true);
}
}
@@ -1149,21 +1038,15 @@ bsloww1 (double x, double dx, double orig, int n)
{
mynumber u;
double sn, ssn, cs, ccs, s, c, w[2], y, y1, y2, c1, c2, xx, cor, res;
- static const double t22 = 6291456.0;
- int4 k;
y = ABS (x);
- u.x = big.x + y;
- y = y - (u.x - big.x);
+ u.x = big + y;
+ y = y - (u.x - big);
dx = (x > 0) ? dx : -dx;
xx = y * y;
s = y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
y1 = (y + t22) - t22;
y2 = (y - y1) + dx;
c1 = (cs + t22) - t22;
@@ -1188,7 +1071,7 @@ bsloww1 (double x, double dx, double orig, int n)
if (w[0] == w[0] + cor)
return (x > 0) ? w[0] : -w[0];
else
- return (n & 1) ? __mpcos1 (orig) : __mpsin1 (orig);
+ return (n & 1) ? __mpcos (orig, 0, true) : __mpsin (orig, 0, true);
}
}
@@ -1205,21 +1088,15 @@ bsloww2 (double x, double dx, double orig, int n)
{
mynumber u;
double sn, ssn, cs, ccs, s, c, w[2], y, y1, y2, e1, e2, xx, cor, res;
- static const double t22 = 6291456.0;
- int4 k;
y = ABS (x);
- u.x = big.x + y;
- y = y - (u.x - big.x);
+ u.x = big + y;
+ y = y - (u.x - big);
dx = (x > 0) ? dx : -dx;
xx = y * y;
s = y * xx * (sn3 + xx * sn5);
c = y * dx + xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
y1 = (y + t22) - t22;
y2 = (y - y1) + dx;
@@ -1245,7 +1122,7 @@ bsloww2 (double x, double dx, double orig, int n)
if (w[0] == w[0] + cor)
return (n & 2) ? -w[0] : w[0];
else
- return (n & 1) ? __mpsin1 (orig) : __mpcos1 (orig);
+ return (n & 1) ? __mpsin (orig, 0, true) : __mpcos (orig, 0, true);
}
}
@@ -1260,20 +1137,14 @@ cslow2 (double x)
{
mynumber u;
double sn, ssn, cs, ccs, s, c, w[2], y, y1, y2, e1, e2, xx, cor, res;
- static const double t22 = 6291456.0;
- int4 k;
y = ABS (x);
- u.x = big.x + y;
- y = y - (u.x - big.x);
+ u.x = big + y;
+ y = y - (u.x - big);
xx = y * y;
s = y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
y1 = (y + t22) - t22;
y2 = y - y1;
e1 = (sn + t22) - t22;
@@ -1292,7 +1163,7 @@ cslow2 (double x)
if (w[0] == w[0] + 1.000000005 * w[1])
return w[0];
else
- return __mpcos (x, 0);
+ return __mpcos (x, 0, false);
}
}
@@ -1308,26 +1179,12 @@ static double
SECTION
csloww (double x, double dx, double orig)
{
- static const double th2_36 = 206158430208.0; /* 1.5*2**37 */
- double y, x1, x2, xx, r, t, res, cor, w[2], a, da, xn;
- union
- {
- int4 i[2];
- double x;
- } v;
+ double y, t, res, cor, w[2], a, da, xn;
+ mynumber v;
int4 n;
- x1 = (x + th2_36) - th2_36;
- y = aa.x * x1 * x1 * x1;
- r = x + y;
- x2 = (x - x1) + dx;
- xx = x * x;
/* Taylor series */
- t = (((((s5.x * xx + s4.x) * xx + s3.x) * xx + s2.x) * xx + bb.x) * xx
- + 3.0 * aa.x * x1 * x2) * x + aa.x * x2 * x2 * x2 + dx;
- t = ((x - r) + y) + t;
- res = r + t;
- cor = (r - res) + t;
+ t = TAYLOR_SLOW (x, dx, cor);
if (cor > 0)
cor = 1.0005 * cor + ABS (orig) * 3.1e-30;
@@ -1349,15 +1206,15 @@ csloww (double x, double dx, double orig)
return (x > 0) ? w[0] : -w[0];
else
{
- t = (orig * hpinv.x + toint.x);
- xn = t - toint.x;
+ t = (orig * hpinv + toint);
+ xn = t - toint;
v.x = t;
- y = (orig - xn * mp1.x) - xn * mp2.x;
+ y = (orig - xn * mp1) - xn * mp2;
n = v.i[LOW_HALF] & 3;
- da = xn * pp3.x;
+ da = xn * pp3;
t = y - da;
da = (y - t) - da;
- y = xn * pp4.x;
+ y = xn * pp4;
a = t - y;
da = ((t - a) - y) + da;
if (n == 1)
@@ -1375,7 +1232,7 @@ csloww (double x, double dx, double orig)
if (w[0] == w[0] + cor)
return (a > 0) ? w[0] : -w[0];
else
- return __mpcos1 (orig);
+ return __mpcos (orig, 0, true);
}
}
}
@@ -1393,21 +1250,15 @@ csloww1 (double x, double dx, double orig)
{
mynumber u;
double sn, ssn, cs, ccs, s, c, w[2], y, y1, y2, c1, c2, xx, cor, res;
- static const double t22 = 6291456.0;
- int4 k;
y = ABS (x);
- u.x = big.x + y;
- y = y - (u.x - big.x);
+ u.x = big + y;
+ y = y - (u.x - big);
dx = (x > 0) ? dx : -dx;
xx = y * y;
s = y * xx * (sn3 + xx * sn5);
c = xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
y1 = (y + t22) - t22;
y2 = (y - y1) + dx;
c1 = (cs + t22) - t22;
@@ -1435,7 +1286,7 @@ csloww1 (double x, double dx, double orig)
if (w[0] == w[0] + cor)
return (x > 0) ? w[0] : -w[0];
else
- return __mpcos1 (orig);
+ return __mpcos (orig, 0, true);
}
}
@@ -1453,21 +1304,15 @@ csloww2 (double x, double dx, double orig, int n)
{
mynumber u;
double sn, ssn, cs, ccs, s, c, w[2], y, y1, y2, e1, e2, xx, cor, res;
- static const double t22 = 6291456.0;
- int4 k;
y = ABS (x);
- u.x = big.x + y;
- y = y - (u.x - big.x);
+ u.x = big + y;
+ y = y - (u.x - big);
dx = (x > 0) ? dx : -dx;
xx = y * y;
s = y * xx * (sn3 + xx * sn5);
c = y * dx + xx * (cs2 + xx * (cs4 + xx * cs6));
- k = u.i[LOW_HALF] << 2;
- sn = __sincostab.x[k];
- ssn = __sincostab.x[k + 1];
- cs = __sincostab.x[k + 2];
- ccs = __sincostab.x[k + 3];
+ SINCOS_TABLE_LOOKUP (u, sn, ssn, cs, ccs);
y1 = (y + t22) - t22;
y2 = (y - y1) + dx;
@@ -1496,7 +1341,7 @@ csloww2 (double x, double dx, double orig, int n)
if (w[0] == w[0] + cor)
return (n) ? -w[0] : w[0];
else
- return __mpcos1 (orig);
+ return __mpcos (orig, 0, true);
}
}
diff --git a/sysdeps/ieee754/dbl-64/s_sincos.c b/sysdeps/ieee754/dbl-64/s_sincos.c
index b6d5432f46..01d1bdf977 100644
--- a/sysdeps/ieee754/dbl-64/s_sincos.c
+++ b/sysdeps/ieee754/dbl-64/s_sincos.c
@@ -32,7 +32,7 @@ __sincos (double x, double *sinx, double *cosx)
/* |x| ~< pi/4 */
ix &= 0x7fffffff;
- if (ix>=0x7ff00000)
+ if (ix >= 0x7ff00000)
{
/* sin(Inf or NaN) is NaN */
*sinx = *cosx = x - x;
diff --git a/sysdeps/ieee754/dbl-64/s_tan.c b/sysdeps/ieee754/dbl-64/s_tan.c
index 54f863e544..09db096d05 100644
--- a/sysdeps/ieee754/dbl-64/s_tan.c
+++ b/sysdeps/ieee754/dbl-64/s_tan.c
@@ -41,6 +41,7 @@
#include <math.h>
#include <math_private.h>
#include <fenv.h>
+#include <stap-probe.h>
#ifndef SECTION
# define SECTION
@@ -58,8 +59,8 @@ tan (double x)
int ux, i, n;
double a, da, a2, b, db, c, dc, c1, cc1, c2, cc2, c3, cc3, fi, ffi, gi, pz,
- s, sy, t, t1, t2, t3, t4, t7, t8, t9, t10, w, x2, xn, xx2, y, ya, yya, z0,
- z, zz, z2, zz2;
+ s, sy, t, t1, t2, t3, t4, t7, t8, t9, t10, w, x2, xn, xx2, y, ya,
+ yya, z0, z, zz, z2, zz2;
#ifndef DLA_FMS
double t5, t6;
#endif
@@ -97,7 +98,6 @@ tan (double x)
/* (II) The case 1.259e-8 < abs(x) <= 0.0608 */
if (w <= g2.d)
{
-
/* First stage */
x2 = x * x;
@@ -149,7 +149,6 @@ tan (double x)
/* (III) The case 0.0608 < abs(x) <= 0.787 */
if (w <= g3.d)
{
-
/* First stage */
i = ((int) (mfftnhf.d + TWO8 * w));
z = w - xfg[i][0].d;
@@ -376,7 +375,7 @@ tan (double x)
/* Second stage */
ffi = xfg[i][3].d;
EADD (z0, yya, z, zz)
- MUL2 (z, zz, z, zz, z2, zz2, t1, t2, t3, t4, t5, t6, t7, t8);
+ MUL2 (z, zz, z, zz, z2, zz2, t1, t2, t3, t4, t5, t6, t7, t8);
c1 = z2 * (a7.d + z2 * (a9.d + z2 * a11.d));
ADD2 (a5.d, aa5.d, c1, 0.0, c2, cc2, t1, t2);
MUL2 (z2, zz2, c2, cc2, c1, cc1, t1, t2, t3, t4, t5, t6, t7, t8);
@@ -838,6 +837,7 @@ tanMp (double x)
p = 32;
__mptan (x, &mpy, p);
__mp_dbl (&mpy, &y, p);
+ LIBC_PROBE (slowtan, 2, &x, &y);
return y;
}
diff --git a/sysdeps/ieee754/dbl-64/s_tanh.c b/sysdeps/ieee754/dbl-64/s_tanh.c
index ded0d6025d..23cfcdead5 100644
--- a/sysdeps/ieee754/dbl-64/s_tanh.c
+++ b/sysdeps/ieee754/dbl-64/s_tanh.c
@@ -41,41 +41,51 @@ static char rcsid[] = "$NetBSD: s_tanh.c,v 1.7 1995/05/10 20:48:22 jtc Exp $";
#include <math.h>
#include <math_private.h>
-static const double one=1.0, two=2.0, tiny = 1.0e-300;
+static const double one = 1.0, two = 2.0, tiny = 1.0e-300;
-double __tanh(double x)
+double
+__tanh (double x)
{
- double t,z;
- int32_t jx,ix,lx;
+ double t, z;
+ int32_t jx, ix, lx;
- /* High word of |x|. */
- EXTRACT_WORDS(jx,lx,x);
- ix = jx&0x7fffffff;
+ /* High word of |x|. */
+ EXTRACT_WORDS (jx, lx, x);
+ ix = jx & 0x7fffffff;
- /* x is INF or NaN */
- if(ix>=0x7ff00000) {
- if (jx>=0) return one/x+one; /* tanh(+-inf)=+-1 */
- else return one/x-one; /* tanh(NaN) = NaN */
- }
+ /* x is INF or NaN */
+ if (ix >= 0x7ff00000)
+ {
+ if (jx >= 0)
+ return one / x + one; /* tanh(+-inf)=+-1 */
+ else
+ return one / x - one; /* tanh(NaN) = NaN */
+ }
- /* |x| < 22 */
- if (ix < 0x40360000) { /* |x|<22 */
- if ((ix | lx) == 0)
- return x; /* x == +-0 */
- if (ix<0x3c800000) /* |x|<2**-55 */
- return x*(one+x); /* tanh(small) = small */
- if (ix>=0x3ff00000) { /* |x|>=1 */
- t = __expm1(two*fabs(x));
- z = one - two/(t+two);
- } else {
- t = __expm1(-two*fabs(x));
- z= -t/(t+two);
- }
- /* |x| > 22, return +-1 */
- } else {
- z = one - tiny; /* raised inexact flag */
+ /* |x| < 22 */
+ if (ix < 0x40360000) /* |x|<22 */
+ {
+ if ((ix | lx) == 0)
+ return x; /* x == +-0 */
+ if (ix < 0x3c800000) /* |x|<2**-55 */
+ return x * (one + x); /* tanh(small) = small */
+ if (ix >= 0x3ff00000) /* |x|>=1 */
+ {
+ t = __expm1 (two * fabs (x));
+ z = one - two / (t + two);
+ }
+ else
+ {
+ t = __expm1 (-two * fabs (x));
+ z = -t / (t + two);
}
- return (jx>=0)? z: -z;
+ /* |x| > 22, return +-1 */
+ }
+ else
+ {
+ z = one - tiny; /* raised inexact flag */
+ }
+ return (jx >= 0) ? z : -z;
}
weak_alias (__tanh, tanh)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/ieee754/dbl-64/sincos32.c b/sysdeps/ieee754/dbl-64/sincos32.c
index 954db66d6b..e42fd27250 100644
--- a/sysdeps/ieee754/dbl-64/sincos32.c
+++ b/sysdeps/ieee754/dbl-64/sincos32.c
@@ -43,317 +43,326 @@
#include "mpa.h"
#include "sincos32.h"
#include <math_private.h>
+#include <stap-probe.h>
#ifndef SECTION
# define SECTION
#endif
-/****************************************************************/
-/* Compute Multi-Precision sin() function for given p. Receive */
-/* Multi Precision number x and result stored at y */
-/****************************************************************/
+/* Compute Multi-Precision sin() function for given p. Receive Multi Precision
+ number x and result stored at y. */
static void
SECTION
-ss32(mp_no *x, mp_no *y, int p) {
+ss32 (mp_no *x, mp_no *y, int p)
+{
int i;
double a;
- mp_no mpt1,x2,gor,sum ,mpk={1,{1.0}};
- for (i=1;i<=p;i++) mpk.d[i]=0;
+ mp_no mpt1, x2, gor, sum, mpk = {1, {1.0}};
+ for (i = 1; i <= p; i++)
+ mpk.d[i] = 0;
- __sqr(x,&x2,p);
- __cpy(&oofac27,&gor,p);
- __cpy(&gor,&sum,p);
- for (a=27.0;a>1.0;a-=2.0) {
- mpk.d[1]=a*(a-1.0);
- __mul(&gor,&mpk,&mpt1,p);
- __cpy(&mpt1,&gor,p);
- __mul(&x2,&sum,&mpt1,p);
- __sub(&gor,&mpt1,&sum,p);
- }
- __mul(x,&sum,y,p);
+ __sqr (x, &x2, p);
+ __cpy (&oofac27, &gor, p);
+ __cpy (&gor, &sum, p);
+ for (a = 27.0; a > 1.0; a -= 2.0)
+ {
+ mpk.d[1] = a * (a - 1.0);
+ __mul (&gor, &mpk, &mpt1, p);
+ __cpy (&mpt1, &gor, p);
+ __mul (&x2, &sum, &mpt1, p);
+ __sub (&gor, &mpt1, &sum, p);
+ }
+ __mul (x, &sum, y, p);
}
-/**********************************************************************/
-/* Compute Multi-Precision cos() function for given p. Receive Multi */
-/* Precision number x and result stored at y */
-/**********************************************************************/
+/* Compute Multi-Precision cos() function for given p. Receive Multi Precision
+ number x and result stored at y. */
static void
SECTION
-cc32(mp_no *x, mp_no *y, int p) {
+cc32 (mp_no *x, mp_no *y, int p)
+{
int i;
double a;
- mp_no mpt1,x2,gor,sum ,mpk={1,{1.0}};
- for (i=1;i<=p;i++) mpk.d[i]=0;
+ mp_no mpt1, x2, gor, sum, mpk = {1, {1.0}};
+ for (i = 1; i <= p; i++)
+ mpk.d[i] = 0;
- __sqr(x,&x2,p);
- mpk.d[1]=27.0;
- __mul(&oofac27,&mpk,&gor,p);
- __cpy(&gor,&sum,p);
- for (a=26.0;a>2.0;a-=2.0) {
- mpk.d[1]=a*(a-1.0);
- __mul(&gor,&mpk,&mpt1,p);
- __cpy(&mpt1,&gor,p);
- __mul(&x2,&sum,&mpt1,p);
- __sub(&gor,&mpt1,&sum,p);
- }
- __mul(&x2,&sum,y,p);
+ __sqr (x, &x2, p);
+ mpk.d[1] = 27.0;
+ __mul (&oofac27, &mpk, &gor, p);
+ __cpy (&gor, &sum, p);
+ for (a = 26.0; a > 2.0; a -= 2.0)
+ {
+ mpk.d[1] = a * (a - 1.0);
+ __mul (&gor, &mpk, &mpt1, p);
+ __cpy (&mpt1, &gor, p);
+ __mul (&x2, &sum, &mpt1, p);
+ __sub (&gor, &mpt1, &sum, p);
+ }
+ __mul (&x2, &sum, y, p);
}
-/***************************************************************************/
-/* c32() computes both sin(x), cos(x) as Multi precision numbers */
-/***************************************************************************/
+/* Compute both sin(x), cos(x) as Multi precision numbers. */
void
SECTION
-__c32(mp_no *x, mp_no *y, mp_no *z, int p) {
- mp_no u,t,t1,t2,c,s;
+__c32 (mp_no *x, mp_no *y, mp_no *z, int p)
+{
+ mp_no u, t, t1, t2, c, s;
int i;
- __cpy(x,&u,p);
- u.e=u.e-1;
- cc32(&u,&c,p);
- ss32(&u,&s,p);
- for (i=0;i<24;i++) {
- __mul(&c,&s,&t,p);
- __sub(&s,&t,&t1,p);
- __add(&t1,&t1,&s,p);
- __sub(&mptwo,&c,&t1,p);
- __mul(&t1,&c,&t2,p);
- __add(&t2,&t2,&c,p);
- }
- __sub(&mpone,&c,y,p);
- __cpy(&s,z,p);
+ __cpy (x, &u, p);
+ u.e = u.e - 1;
+ cc32 (&u, &c, p);
+ ss32 (&u, &s, p);
+ for (i = 0; i < 24; i++)
+ {
+ __mul (&c, &s, &t, p);
+ __sub (&s, &t, &t1, p);
+ __add (&t1, &t1, &s, p);
+ __sub (&mptwo, &c, &t1, p);
+ __mul (&t1, &c, &t2, p);
+ __add (&t2, &t2, &c, p);
+ }
+ __sub (&mpone, &c, y, p);
+ __cpy (&s, z, p);
}
-/************************************************************************/
-/*Routine receive double x and two double results of sin(x) and return */
-/*result which is more accurate */
-/*Computing sin(x) with multi precision routine c32 */
-/************************************************************************/
+/* Receive double x and two double results of sin(x) and return result which is
+ more accurate, computing sin(x) with multi precision routine c32. */
double
SECTION
-__sin32(double x, double res, double res1) {
+__sin32 (double x, double res, double res1)
+{
int p;
- mp_no a,b,c;
- p=32;
- __dbl_mp(res,&a,p);
- __dbl_mp(0.5*(res1-res),&b,p);
- __add(&a,&b,&c,p);
- if (x>0.8)
- { __sub(&hp,&c,&a,p);
- __c32(&a,&b,&c,p);
- }
- else __c32(&c,&a,&b,p); /* b=sin(0.5*(res+res1)) */
- __dbl_mp(x,&c,p); /* c = x */
- __sub(&b,&c,&a,p);
- /* if a>0 return min(res,res1), otherwise return max(res,res1) */
- if (a.d[0]>0) return (res<res1)?res:res1;
- else return (res>res1)?res:res1;
+ mp_no a, b, c;
+ p = 32;
+ __dbl_mp (res, &a, p);
+ __dbl_mp (0.5 * (res1 - res), &b, p);
+ __add (&a, &b, &c, p);
+ if (x > 0.8)
+ {
+ __sub (&hp, &c, &a, p);
+ __c32 (&a, &b, &c, p);
+ }
+ else
+ __c32 (&c, &a, &b, p); /* b=sin(0.5*(res+res1)) */
+ __dbl_mp (x, &c, p); /* c = x */
+ __sub (&b, &c, &a, p);
+ /* if a > 0 return min (res, res1), otherwise return max (res, res1). */
+ if ((a.d[0] > 0 && res >= res1) || (a.d[0] <= 0 && res <= res1))
+ res = res1;
+ LIBC_PROBE (slowasin, 2, &res, &x);
+ return res;
}
-/************************************************************************/
-/*Routine receive double x and two double results of cos(x) and return */
-/*result which is more accurate */
-/*Computing cos(x) with multi precision routine c32 */
-/************************************************************************/
+/* Receive double x and two double results of cos(x) and return result which is
+ more accurate, computing cos(x) with multi precision routine c32. */
double
SECTION
-__cos32(double x, double res, double res1) {
+__cos32 (double x, double res, double res1)
+{
int p;
- mp_no a,b,c;
- p=32;
- __dbl_mp(res,&a,p);
- __dbl_mp(0.5*(res1-res),&b,p);
- __add(&a,&b,&c,p);
- if (x>2.4)
- { __sub(&pi,&c,&a,p);
- __c32(&a,&b,&c,p);
- b.d[0]=-b.d[0];
- }
- else if (x>0.8)
- { __sub(&hp,&c,&a,p);
- __c32(&a,&c,&b,p);
- }
- else __c32(&c,&b,&a,p); /* b=cos(0.5*(res+res1)) */
- __dbl_mp(x,&c,p); /* c = x */
- __sub(&b,&c,&a,p);
- /* if a>0 return max(res,res1), otherwise return min(res,res1) */
- if (a.d[0]>0) return (res>res1)?res:res1;
- else return (res<res1)?res:res1;
+ mp_no a, b, c;
+ p = 32;
+ __dbl_mp (res, &a, p);
+ __dbl_mp (0.5 * (res1 - res), &b, p);
+ __add (&a, &b, &c, p);
+ if (x > 2.4)
+ {
+ __sub (&pi, &c, &a, p);
+ __c32 (&a, &b, &c, p);
+ b.d[0] = -b.d[0];
+ }
+ else if (x > 0.8)
+ {
+ __sub (&hp, &c, &a, p);
+ __c32 (&a, &c, &b, p);
+ }
+ else
+ __c32 (&c, &b, &a, p); /* b=cos(0.5*(res+res1)) */
+ __dbl_mp (x, &c, p); /* c = x */
+ __sub (&b, &c, &a, p);
+ /* if a > 0 return max (res, res1), otherwise return min (res, res1). */
+ if ((a.d[0] > 0 && res <= res1) || (a.d[0] <= 0 && res >= res1))
+ res = res1;
+ LIBC_PROBE (slowacos, 2, &res, &x);
+ return res;
}
-/*******************************************************************/
-/*Compute sin(x+dx) as Multi Precision number and return result as */
-/* double */
-/*******************************************************************/
+/* Compute sin() of double-length number (X + DX) as Multi Precision number and
+ return result as double. If REDUCE_RANGE is true, X is assumed to be the
+ original input and DX is ignored. */
double
SECTION
-__mpsin(double x, double dx) {
- int p;
+__mpsin (double x, double dx, bool reduce_range)
+{
double y;
- mp_no a,b,c;
- p=32;
- __dbl_mp(x,&a,p);
- __dbl_mp(dx,&b,p);
- __add(&a,&b,&c,p);
- if (x>0.8) { __sub(&hp,&c,&a,p); __c32(&a,&b,&c,p); }
- else __c32(&c,&a,&b,p); /* b = sin(x+dx) */
- __mp_dbl(&b,&y,p);
- return y;
-}
+ mp_no a, b, c, s;
+ int n;
+ int p = 32;
-/*******************************************************************/
-/* Compute cos()of double-length number (x+dx) as Multi Precision */
-/* number and return result as double */
-/*******************************************************************/
-double
-SECTION
-__mpcos(double x, double dx) {
- int p;
- double y;
- mp_no a,b,c;
- p=32;
- __dbl_mp(x,&a,p);
- __dbl_mp(dx,&b,p);
- __add(&a,&b,&c,p);
- if (x>0.8)
- { __sub(&hp,&c,&b,p);
- __c32(&b,&c,&a,p);
- }
- else __c32(&c,&a,&b,p); /* a = cos(x+dx) */
- __mp_dbl(&a,&y,p);
- return y;
-}
+ if (reduce_range)
+ {
+ n = __mpranred (x, &a, p); /* n is 0, 1, 2 or 3. */
+ __c32 (&a, &c, &s, p);
+ }
+ else
+ {
+ n = -1;
+ __dbl_mp (x, &b, p);
+ __dbl_mp (dx, &c, p);
+ __add (&b, &c, &a, p);
+ if (x > 0.8)
+ {
+ __sub (&hp, &a, &b, p);
+ __c32 (&b, &s, &c, p);
+ }
+ else
+ __c32 (&a, &c, &s, p); /* b = sin(x+dx) */
+ }
-/******************************************************************/
-/* mpranred() performs range reduction of a double number x into */
-/* multi precision number y, such that y=x-n*pi/2, abs(y)<pi/4, */
-/* n=0,+-1,+-2,.... */
-/* Return int which indicates in which quarter of circle x is */
-/******************************************************************/
-int
-SECTION
-__mpranred(double x, mp_no *y, int p)
-{
- number v;
- double t,xn;
- int i,k,n;
- mp_no a,b,c;
+ /* Convert result based on which quarter of unit circle y is in. */
+ switch (n)
+ {
+ case 1:
+ __mp_dbl (&c, &y, p);
+ break;
+
+ case 3:
+ __mp_dbl (&c, &y, p);
+ y = -y;
+ break;
+
+ case 2:
+ __mp_dbl (&s, &y, p);
+ y = -y;
+ break;
- if (ABS(x) < 2.8e14) {
- t = (x*hpinv.d + toint.d);
- xn = t - toint.d;
- v.d = t;
- n =v.i[LOW_HALF]&3;
- __dbl_mp(xn,&a,p);
- __mul(&a,&hp,&b,p);
- __dbl_mp(x,&c,p);
- __sub(&c,&b,y,p);
- return n;
- }
- else { /* if x is very big more precision required */
- __dbl_mp(x,&a,p);
- a.d[0]=1.0;
- k = a.e-5;
- if (k < 0) k=0;
- b.e = -k;
- b.d[0] = 1.0;
- for (i=0;i<p;i++) b.d[i+1] = toverp[i+k];
- __mul(&a,&b,&c,p);
- t = c.d[c.e];
- for (i=1;i<=p-c.e;i++) c.d[i]=c.d[i+c.e];
- for (i=p+1-c.e;i<=p;i++) c.d[i]=0;
- c.e=0;
- if (c.d[1] >= HALFRAD)
- { t +=1.0;
- __sub(&c,&mpone,&b,p);
- __mul(&b,&hp,y,p);
+ /* Quadrant not set, so the result must be sin (X + DX), which is also in
+ S. */
+ case 0:
+ default:
+ __mp_dbl (&s, &y, p);
}
- else __mul(&c,&hp,y,p);
- n = (int) t;
- if (x < 0) { y->d[0] = - y->d[0]; n = -n; }
- return (n&3);
- }
+ LIBC_PROBE (slowsin, 3, &x, &dx, &y);
+ return y;
}
-/*******************************************************************/
-/* Multi-Precision sin() function subroutine, for p=32. It is */
-/* based on the routines mpranred() and c32(). */
-/*******************************************************************/
+/* Compute cos() of double-length number (X + DX) as Multi Precision number and
+ return result as double. If REDUCE_RANGE is true, X is assumed to be the
+ original input and DX is ignored. */
double
SECTION
-__mpsin1(double x)
+__mpcos (double x, double dx, bool reduce_range)
{
- int p;
- int n;
- mp_no u,s,c;
double y;
- p=32;
- n=__mpranred(x,&u,p); /* n is 0, 1, 2 or 3 */
- __c32(&u,&c,&s,p);
- switch (n) { /* in which quarter of unit circle y is*/
- case 0:
- __mp_dbl(&s,&y,p);
- return y;
- break;
+ mp_no a, b, c, s;
+ int n;
+ int p = 32;
- case 2:
- __mp_dbl(&s,&y,p);
- return -y;
- break;
+ if (reduce_range)
+ {
+ n = __mpranred (x, &a, p); /* n is 0, 1, 2 or 3. */
+ __c32 (&a, &c, &s, p);
+ }
+ else
+ {
+ n = -1;
+ __dbl_mp (x, &b, p);
+ __dbl_mp (dx, &c, p);
+ __add (&b, &c, &a, p);
+ if (x > 0.8)
+ {
+ __sub (&hp, &a, &b, p);
+ __c32 (&b, &s, &c, p);
+ }
+ else
+ __c32 (&a, &c, &s, p); /* a = cos(x+dx) */
+ }
- case 1:
- __mp_dbl(&c,&y,p);
- return y;
- break;
+ /* Convert result based on which quarter of unit circle y is in. */
+ switch (n)
+ {
+ case 1:
+ __mp_dbl (&s, &y, p);
+ y = -y;
+ break;
- case 3:
- __mp_dbl(&c,&y,p);
- return -y;
- break;
+ case 3:
+ __mp_dbl (&s, &y, p);
+ break;
- }
- return 0; /* unreachable, to make the compiler happy */
-}
+ case 2:
+ __mp_dbl (&c, &y, p);
+ y = -y;
+ break;
-/*****************************************************************/
-/* Multi-Precision cos() function subroutine, for p=32. It is */
-/* based on the routines mpranred() and c32(). */
-/*****************************************************************/
+ /* Quadrant not set, so the result must be cos (X + DX), which is also
+ stored in C. */
+ case 0:
+ default:
+ __mp_dbl (&c, &y, p);
+ }
+ LIBC_PROBE (slowcos, 3, &x, &dx, &y);
+ return y;
+}
-double
+/* Perform range reduction of a double number x into multi precision number y,
+ such that y = x - n * pi / 2, abs (y) < pi / 4, n = 0, +-1, +-2, ...
+ Return int which indicates in which quarter of circle x is. */
+int
SECTION
-__mpcos1(double x)
+__mpranred (double x, mp_no *y, int p)
{
- int p;
- int n;
- mp_no u,s,c;
- double y;
-
- p=32;
- n=__mpranred(x,&u,p); /* n is 0, 1, 2 or 3 */
- __c32(&u,&c,&s,p);
- switch (n) { /* in what quarter of unit circle y is*/
-
- case 0:
- __mp_dbl(&c,&y,p);
- return y;
- break;
-
- case 2:
- __mp_dbl(&c,&y,p);
- return -y;
- break;
-
- case 1:
- __mp_dbl(&s,&y,p);
- return -y;
- break;
-
- case 3:
- __mp_dbl(&s,&y,p);
- return y;
- break;
+ number v;
+ double t, xn;
+ int i, k, n;
+ mp_no a, b, c;
- }
- return 0; /* unreachable, to make the compiler happy */
+ if (ABS (x) < 2.8e14)
+ {
+ t = (x * hpinv.d + toint.d);
+ xn = t - toint.d;
+ v.d = t;
+ n = v.i[LOW_HALF] & 3;
+ __dbl_mp (xn, &a, p);
+ __mul (&a, &hp, &b, p);
+ __dbl_mp (x, &c, p);
+ __sub (&c, &b, y, p);
+ return n;
+ }
+ else
+ {
+ /* If x is very big more precision required. */
+ __dbl_mp (x, &a, p);
+ a.d[0] = 1.0;
+ k = a.e - 5;
+ if (k < 0)
+ k = 0;
+ b.e = -k;
+ b.d[0] = 1.0;
+ for (i = 0; i < p; i++)
+ b.d[i + 1] = toverp[i + k];
+ __mul (&a, &b, &c, p);
+ t = c.d[c.e];
+ for (i = 1; i <= p - c.e; i++)
+ c.d[i] = c.d[i + c.e];
+ for (i = p + 1 - c.e; i <= p; i++)
+ c.d[i] = 0;
+ c.e = 0;
+ if (c.d[1] >= HALFRAD)
+ {
+ t += 1.0;
+ __sub (&c, &mpone, &b, p);
+ __mul (&b, &hp, y, p);
+ }
+ else
+ __mul (&c, &hp, y, p);
+ n = (int) t;
+ if (x < 0)
+ {
+ y->d[0] = -y->d[0];
+ n = -n;
+ }
+ return (n & 3);
+ }
}
-/******************************************************************/
diff --git a/sysdeps/ieee754/dbl-64/slowexp.c b/sysdeps/ieee754/dbl-64/slowexp.c
index 8f353f634f..525224f44a 100644
--- a/sysdeps/ieee754/dbl-64/slowexp.c
+++ b/sysdeps/ieee754/dbl-64/slowexp.c
@@ -29,6 +29,8 @@
/**************************************************************************/
#include <math_private.h>
+#include <stap-probe.h>
+
#ifndef USE_LONG_DOUBLE_FOR_MP
# include "mpa.h"
void __mpexp (mp_no *x, mp_no *y, int p);
@@ -60,13 +62,22 @@ __slowexp (double x)
__mp_dbl (&mpw, &w, p);
__mp_dbl (&mpz, &z, p);
if (w == z)
- return w;
+ {
+ /* Track how often we get to the slow exp code plus
+ its input/output values. */
+ LIBC_PROBE (slowexp_p6, 2, &x, &w);
+ return w;
+ }
else
{
p = 32;
__dbl_mp (x, &mpx, p);
__mpexp (&mpx, &mpy, p);
__mp_dbl (&mpy, &res, p);
+
+ /* Track how often we get to the uber-slow exp code plus
+ its input/output values. */
+ LIBC_PROBE (slowexp_p32, 2, &x, &res);
return res;
}
#else
diff --git a/sysdeps/ieee754/dbl-64/slowpow.c b/sysdeps/ieee754/dbl-64/slowpow.c
index a379728b14..d200c39e59 100644
--- a/sysdeps/ieee754/dbl-64/slowpow.c
+++ b/sysdeps/ieee754/dbl-64/slowpow.c
@@ -34,6 +34,8 @@
#include "mpa.h"
#include <math_private.h>
+#include <stap-probe.h>
+
#ifndef SECTION
# define SECTION
#endif
@@ -97,7 +99,12 @@ __slowpow (double x, double y, double z)
__sub (&mpp, &eps, &mpr1, p);
__mp_dbl (&mpr1, &res1, p);
if (res == res1)
- return res;
+ {
+ /* Track how often we get to the slow pow code plus
+ its input/output values. */
+ LIBC_PROBE (slowpow_p10, 4, &x, &y, &z, &res);
+ return res;
+ }
/* If we don't, then we repeat using a higher precision. 768 bits of
precision ought to be enough for anybody. */
@@ -109,5 +116,10 @@ __slowpow (double x, double y, double z)
__mul (&mpy, &mpz, &mpw, p);
__mpexp (&mpw, &mpp, p);
__mp_dbl (&mpp, &res, p);
+
+ /* Track how often we get to the uber-slow pow code plus
+ its input/output values. */
+ LIBC_PROBE (slowpow_p32, 4, &x, &y, &z, &res);
+
return res;
}
diff --git a/sysdeps/ieee754/dbl-64/usncs.h b/sysdeps/ieee754/dbl-64/usncs.h
index 11c189ce34..209c74f33d 100644
--- a/sysdeps/ieee754/dbl-64/usncs.h
+++ b/sysdeps/ieee754/dbl-64/usncs.h
@@ -27,51 +27,22 @@
#ifndef USNCS_H
#define USNCS_H
-#ifdef BIG_ENDI
-static const mynumber
-
-/**/ s1 = {{0xBFC55555, 0x55555555 }}, /* -0.16666666666666666 */
-/**/ s2 = {{0x3F811111, 0x11110ECE }}, /* 0.0083333333333323288 */
-/**/ s3 = {{0xBF2A01A0, 0x19DB08B8 }}, /* -0.00019841269834414642 */
-/**/ s4 = {{0x3EC71DE2, 0x7B9A7ED9 }}, /* 2.755729806860771e-06 */
-/**/ s5 = {{0xBE5ADDFF, 0xC2FCDF59 }}, /* -2.5022014848318398e-08 */
-/**/ aa = {{0xBFC55580, 0x00000000 }}, /* -0.1666717529296875 */
-/**/ bb = {{0x3ED55555, 0x55556E24 }}, /* 5.0862630208387126e-06 */
-/**/ big = {{0x42c80000, 0x00000000 }}, /* 52776558133248 */
-/**/ hp0 = {{0x3FF921FB, 0x54442D18 }}, /* 1.5707963267948966 */
-/**/ hp1 = {{0x3C91A626, 0x33145C07 }}, /* 6.123233995736766e-17 */
-/**/ mp1 = {{0x3FF921FB, 0x58000000 }}, /* 1.5707963407039642 */
-/**/ mp2 = {{0xBE4DDE97, 0x3C000000 }}, /* -1.3909067564377153e-08 */
-/**/ mp3 = {{0xBC8CB3B3, 0x99D747F2 }}, /* -4.9789962505147994e-17 */
-/**/ pp3 = {{0xBC8CB3B3, 0x98000000 }}, /* -4.9789962314799099e-17 */
-/**/ pp4 = {{0xbacd747f, 0x23e32ed7 }}, /* -1.9034889620193266e-25 */
-/**/ hpinv = {{0x3FE45F30, 0x6DC9C883 }}, /* 0.63661977236758138 */
-/**/ toint = {{0x43380000, 0x00000000 }}; /* 6755399441055744 */
-
-#else
-#ifdef LITTLE_ENDI
-static const mynumber
-
-/**/ s1 = {{0x55555555, 0xBFC55555 }},/* -0.16666666666666666 */
-/**/ s2 = {{0x11110ECE, 0x3F811111 }},/* 0.0083333333333323288 */
-/**/ s3 = {{0x19DB08B8, 0xBF2A01A0 }},/* -0.00019841269834414642 */
-/**/ s4 = {{0x7B9A7ED9, 0x3EC71DE2 }},/* 2.755729806860771e-06 */
-/**/ s5 = {{0xC2FCDF59, 0xBE5ADDFF }},/* -2.5022014848318398e-08 */
-/**/ aa = {{0x00000000, 0xBFC55580 }},/* -0.1666717529296875 */
-/**/ bb = {{0x55556E24, 0x3ED55555 }},/* 5.0862630208387126e-06 */
-/**/ big = {{0x00000000, 0x42c80000 }},/* 52776558133248 */
-/**/ hp0 = {{0x54442D18, 0x3FF921FB }},/* 1.5707963267948966 */
-/**/ hp1 = {{0x33145C07, 0x3C91A626 }},/* 6.123233995736766e-17 */
-/**/ mp1 = {{0x58000000, 0x3FF921FB }},/* 1.5707963407039642 */
-/**/ mp2 = {{0x3C000000, 0xBE4DDE97 }},/* -1.3909067564377153e-08 */
-/**/ mp3 = {{0x99D747F2, 0xBC8CB3B3 }},/* -4.9789962505147994e-17 */
-/**/ pp3 = {{0x98000000, 0xBC8CB3B3 }},/* -4.9789962314799099e-17 */
-/**/ pp4 = {{0x23e32ed7, 0xbacd747f }},/* -1.9034889620193266e-25 */
-/**/ hpinv = {{0x6DC9C883, 0x3FE45F30 }},/* 0.63661977236758138 */
-/**/ toint = {{0x00000000, 0x43380000 }};/* 6755399441055744 */
-
-
-#endif
-#endif
+static const double s1 = -0x1.5555555555555p-3; /* -0.16666666666666666 */
+static const double s2 = 0x1.1111111110ECEp-7; /* 0.0083333333333323288 */
+static const double s3 = -0x1.A01A019DB08B8p-13; /* -0.00019841269834414642 */
+static const double s4 = 0x1.71DE27B9A7ED9p-19; /* 2.755729806860771e-06 */
+static const double s5 = -0x1.ADDFFC2FCDF59p-26; /* -2.5022014848318398e-08 */
+static const double aa = -0x1.5558000000000p-3; /* -0.1666717529296875 */
+static const double bb = 0x1.5555555556E24p-18; /* 5.0862630208387126e-06 */
+static const double big = 0x1.8000000000000p45; /* 52776558133248 */
+static const double hp0 = 0x1.921FB54442D18p0; /* 1.5707963267948966 */
+static const double hp1 = 0x1.1A62633145C07p-54; /* 6.123233995736766e-17 */
+static const double mp1 = 0x1.921FB58000000p0; /* 1.5707963407039642 */
+static const double mp2 = -0x1.DDE973C000000p-27; /* -1.3909067564377153e-08 */
+static const double mp3 = -0x1.CB3B399D747F2p-55; /* -4.9789962505147994e-17 */
+static const double pp3 = -0x1.CB3B398000000p-55; /* -4.9789962314799099e-17 */
+static const double pp4 = -0x1.d747f23e32ed7p-83; /* -1.9034889620193266e-25 */
+static const double hpinv = 0x1.45F306DC9C883p-1; /* 0.63661977236758138 */
+static const double toint = 0x1.8000000000000p52; /* 6755399441055744 */
#endif
diff --git a/sysdeps/ieee754/flt-32/e_jnf.c b/sysdeps/ieee754/flt-32/e_jnf.c
index ad26d7e8a6..5984d94a3c 100644
--- a/sysdeps/ieee754/flt-32/e_jnf.c
+++ b/sysdeps/ieee754/flt-32/e_jnf.c
@@ -54,7 +54,7 @@ __ieee754_jnf(int n, float x)
b = __ieee754_j1f(x);
for(i=1;i<n;i++){
temp = b;
- b = b*((float)(i+i)/x) - a; /* avoid underflow */
+ b = b*((double)(i+i)/x) - a; /* avoid underflow */
a = temp;
}
} else {
@@ -196,7 +196,7 @@ __ieee754_ynf(int n, float x)
GET_FLOAT_WORD(ib,b);
for(i=1;i<n&&ib!=0xff800000;i++){
temp = b;
- b = ((float)(i+i)/x)*b - a;
+ b = ((double)(i+i)/x)*b - a;
GET_FLOAT_WORD(ib,b);
a = temp;
}
diff --git a/sysdeps/ieee754/flt-32/e_lgammaf_r.c b/sysdeps/ieee754/flt-32/e_lgammaf_r.c
index 2e92269085..0dba9af8d7 100644
--- a/sysdeps/ieee754/flt-32/e_lgammaf_r.c
+++ b/sysdeps/ieee754/flt-32/e_lgammaf_r.c
@@ -150,8 +150,8 @@ __ieee754_lgammaf_r(float x, int *signgamp)
*signgamp = -1;
return one/fabsf(x);
}
- if(__builtin_expect(ix<0x1c800000, 0)) {
- /* |x|<2**-70, return -log(|x|) */
+ if(__builtin_expect(ix<0x30800000, 0)) {
+ /* |x|<2**-30, return -log(|x|) */
if(hx<0) {
*signgamp = -1;
return -__ieee754_logf(-x);
diff --git a/sysdeps/ieee754/flt-32/s_erff.c b/sysdeps/ieee754/flt-32/s_erff.c
index 7d17f426e9..7c09589648 100644
--- a/sysdeps/ieee754/flt-32/s_erff.c
+++ b/sysdeps/ieee754/flt-32/s_erff.c
@@ -17,6 +17,8 @@
static char rcsid[] = "$NetBSD: s_erff.c,v 1.4 1995/05/10 20:47:07 jtc Exp $";
#endif
+#include <errno.h>
+#include <float.h>
#include <math.h>
#include <math_private.h>
@@ -203,9 +205,22 @@ float __erfcf(float x)
SET_FLOAT_WORD(z,ix&0xffffe000);
r = __ieee754_expf(-z*z-(float)0.5625)*
__ieee754_expf((z-x)*(z+x)+R/S);
- if(hx>0) return r/x; else return two-r/x;
+ if(hx>0) {
+#if FLT_EVAL_METHOD != 0
+ volatile
+#endif
+ float ret = r/x;
+ if (ret == 0)
+ __set_errno (ERANGE);
+ return ret;
+ } else
+ return two-r/x;
} else {
- if(hx>0) return tiny*tiny; else return two-tiny;
+ if(hx>0) {
+ __set_errno (ERANGE);
+ return tiny*tiny;
+ } else
+ return two-tiny;
}
}
weak_alias (__erfcf, erfcf)
diff --git a/sysdeps/ieee754/flt-32/s_finitef.c b/sysdeps/ieee754/flt-32/s_finitef.c
index dfdf4ad0b7..4ea270ae07 100644
--- a/sysdeps/ieee754/flt-32/s_finitef.c
+++ b/sysdeps/ieee754/flt-32/s_finitef.c
@@ -26,7 +26,12 @@ static char rcsid[] = "$NetBSD: s_finitef.c,v 1.4 1995/05/10 20:47:18 jtc Exp $"
#include <math_private.h>
#undef __finitef
-int __finitef(float x)
+
+#ifndef FINITEF
+# define FINITEF __finitef
+#endif
+
+int FINITEF(float x)
{
int32_t ix;
GET_FLOAT_WORD(ix,x);
diff --git a/sysdeps/ieee754/k_standard.c b/sysdeps/ieee754/k_standard.c
index 4a0d82d1a6..5399c6682d 100644
--- a/sysdeps/ieee754/k_standard.c
+++ b/sysdeps/ieee754/k_standard.c
@@ -248,7 +248,7 @@ __kernel_standard(double x, double y, int type)
else
exc.retval = -HUGE_VAL;
if (_LIB_VERSION == _POSIX_)
- __set_errno (EDOM);
+ __set_errno (ERANGE);
else if (!matherr(&exc)) {
if (_LIB_VERSION == _SVID_) {
(void) WRITE2("y0: DOMAIN error\n", 17);
@@ -265,7 +265,7 @@ __kernel_standard(double x, double y, int type)
if (_LIB_VERSION == _SVID_)
exc.retval = -HUGE;
else
- exc.retval = -HUGE_VAL;
+ exc.retval = NAN;
if (_LIB_VERSION == _POSIX_)
__set_errno (EDOM);
else if (!matherr(&exc)) {
@@ -286,7 +286,7 @@ __kernel_standard(double x, double y, int type)
else
exc.retval = -HUGE_VAL;
if (_LIB_VERSION == _POSIX_)
- __set_errno (EDOM);
+ __set_errno (ERANGE);
else if (!matherr(&exc)) {
if (_LIB_VERSION == _SVID_) {
(void) WRITE2("y1: DOMAIN error\n", 17);
@@ -303,7 +303,7 @@ __kernel_standard(double x, double y, int type)
if (_LIB_VERSION == _SVID_)
exc.retval = -HUGE;
else
- exc.retval = -HUGE_VAL;
+ exc.retval = NAN;
if (_LIB_VERSION == _POSIX_)
__set_errno (EDOM);
else if (!matherr(&exc)) {
@@ -322,9 +322,11 @@ __kernel_standard(double x, double y, int type)
if (_LIB_VERSION == _SVID_)
exc.retval = -HUGE;
else
- exc.retval = -HUGE_VAL;
+ exc.retval = ((x < 0 && ((int) x & 1) != 0)
+ ? HUGE_VAL
+ : -HUGE_VAL);
if (_LIB_VERSION == _POSIX_)
- __set_errno (EDOM);
+ __set_errno (ERANGE);
else if (!matherr(&exc)) {
if (_LIB_VERSION == _SVID_) {
(void) WRITE2("yn: DOMAIN error\n", 17);
@@ -341,7 +343,7 @@ __kernel_standard(double x, double y, int type)
if (_LIB_VERSION == _SVID_)
exc.retval = -HUGE;
else
- exc.retval = -HUGE_VAL;
+ exc.retval = NAN;
if (_LIB_VERSION == _POSIX_)
__set_errno (EDOM);
else if (!matherr(&exc)) {
diff --git a/sysdeps/ieee754/ldbl-128/e_hypotl.c b/sysdeps/ieee754/ldbl-128/e_hypotl.c
index f5ab901e6a..01444cfb4e 100644
--- a/sysdeps/ieee754/ldbl-128/e_hypotl.c
+++ b/sysdeps/ieee754/ldbl-128/e_hypotl.c
@@ -89,6 +89,17 @@ __ieee754_hypotl(long double x, long double y)
b *= t1;
a *= t1;
k -= 16382;
+ GET_LDOUBLE_MSW64 (ha, a);
+ GET_LDOUBLE_MSW64 (hb, b);
+ if (hb > ha)
+ {
+ t1 = a;
+ a = b;
+ b = t1;
+ j = ha;
+ ha = hb;
+ hb = j;
+ }
} else { /* scale a and b by 2^9600 */
ha += 0x2580000000000000LL; /* a *= 2^9600 */
hb += 0x2580000000000000LL; /* b *= 2^9600 */
diff --git a/sysdeps/ieee754/ldbl-128/e_jnl.c b/sysdeps/ieee754/ldbl-128/e_jnl.c
index 70d5672fd9..c2a49235c3 100644
--- a/sysdeps/ieee754/ldbl-128/e_jnl.c
+++ b/sysdeps/ieee754/ldbl-128/e_jnl.c
@@ -316,7 +316,7 @@ __ieee754_ynl (int n, long double x)
if (x <= 0.0L)
{
if (x == 0.0L)
- return -HUGE_VALL + x;
+ return ((n < 0 && (n & 1) != 0) ? 1.0L : -1.0L) / 0.0L;
if (se & 0x80000000)
return zero / (zero * x);
}
diff --git a/sysdeps/ieee754/ldbl-128/e_logl.c b/sysdeps/ieee754/ldbl-128/e_logl.c
index 395a76302a..3d1034dd61 100644
--- a/sysdeps/ieee754/ldbl-128/e_logl.c
+++ b/sysdeps/ieee754/ldbl-128/e_logl.c
@@ -212,9 +212,8 @@ __ieee754_logl(long double x)
}
/* Extract exponent and reduce domain to 0.703125 <= u < 1.40625 */
- e = (int) (m >> 16) - (int) 0x3ffe;
- m &= 0xffff;
- u.parts32.w0 = m | 0x3ffe0000;
+ u.value = __frexpl (x, &e);
+ m = u.parts32.w0 & 0xffff;
m |= 0x10000;
/* Find lookup table index k from high order bits of the significand. */
if (m < 0x16800)
diff --git a/sysdeps/ieee754/ldbl-128/printf_fphex.c b/sysdeps/ieee754/ldbl-128/printf_fphex.c
index c9e09a4b74..e82228a53e 100644
--- a/sysdeps/ieee754/ldbl-128/printf_fphex.c
+++ b/sysdeps/ieee754/ldbl-128/printf_fphex.c
@@ -24,13 +24,15 @@ do { \
digits we use only the implicit digits for the number before \
the decimal point. */ \
unsigned long long int num0, num1; \
+ union ieee854_long_double u; \
+ u.d = fpnum.ldbl; \
\
assert (sizeof (long double) == 16); \
\
- num0 = (((unsigned long long int) fpnum.ldbl.ieee.mantissa0) << 32 \
- | fpnum.ldbl.ieee.mantissa1); \
- num1 = (((unsigned long long int) fpnum.ldbl.ieee.mantissa2) << 32 \
- | fpnum.ldbl.ieee.mantissa3); \
+ num0 = (((unsigned long long int) u.ieee.mantissa0) << 32 \
+ | u.ieee.mantissa1); \
+ num1 = (((unsigned long long int) u.ieee.mantissa2) << 32 \
+ | u.ieee.mantissa3); \
\
zero_mantissa = (num0|num1) == 0; \
\
@@ -75,9 +77,9 @@ do { \
*--wnumstr = L'0'; \
} \
\
- leading = fpnum.ldbl.ieee.exponent == 0 ? '0' : '1'; \
+ leading = u.ieee.exponent == 0 ? '0' : '1'; \
\
- exponent = fpnum.ldbl.ieee.exponent; \
+ exponent = u.ieee.exponent; \
\
if (exponent == 0) \
{ \
diff --git a/sysdeps/ieee754/ldbl-128/s_erfl.c b/sysdeps/ieee754/ldbl-128/s_erfl.c
index d9d4195ad2..ef65ed8922 100644
--- a/sysdeps/ieee754/ldbl-128/s_erfl.c
+++ b/sysdeps/ieee754/ldbl-128/s_erfl.c
@@ -96,6 +96,7 @@
* erfc/erf(NaN) is NaN
*/
+#include <errno.h>
#include <math.h>
#include <math_private.h>
@@ -918,14 +919,22 @@ __erfcl (long double x)
r = __ieee754_expl (-z * z - 0.5625) *
__ieee754_expl ((z - x) * (z + x) + p);
if ((sign & 0x80000000) == 0)
- return r / x;
+ {
+ long double ret = r / x;
+ if (ret == 0)
+ __set_errno (ERANGE);
+ return ret;
+ }
else
return two - r / x;
}
else
{
if ((sign & 0x80000000) == 0)
- return tiny * tiny;
+ {
+ __set_errno (ERANGE);
+ return tiny * tiny;
+ }
else
return two - tiny;
}
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c b/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c
index abc78a35bd..8a4a5bb7b9 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_acoshl.c
@@ -36,8 +36,12 @@ __ieee754_acoshl(long double x)
{
long double t;
int64_t hx;
- u_int64_t lx;
- GET_LDOUBLE_WORDS64(hx,lx,x);
+ uint64_t lx;
+ double xhi, xlo;
+
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
+ EXTRACT_WORDS64 (lx, xlo);
if(hx<0x3ff0000000000000LL) { /* x < 1 */
return (x-x)/(x-x);
} else if(hx >=0x41b0000000000000LL) { /* x > 2**28 */
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_acosl.c b/sysdeps/ieee754/ldbl-128ibm/e_acosl.c
index 5d2af30346..2cb288238b 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_acosl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_acosl.c
@@ -151,26 +151,27 @@ static const long double
long double
__ieee754_acosl (long double x)
{
- long double z, r, w, p, q, s, t, f2;
- ieee854_long_double_shape_type u;
+ long double a, z, r, w, p, q, s, t, f2;
- u.value = __builtin_fabsl (x);
- if (u.value == 1.0L)
+ if (__glibc_unlikely (__isnanl (x)))
+ return x + x;
+ a = __builtin_fabsl (x);
+ if (a == 1.0L)
{
if (x > 0.0L)
return 0.0; /* acos(1) = 0 */
else
return (2.0 * pio2_hi) + (2.0 * pio2_lo); /* acos(-1)= pi */
}
- else if (u.value > 1.0L)
+ else if (a > 1.0L)
{
return (x - x) / (x - x); /* acos(|x| > 1) is NaN */
}
- if (u.value < 0.5L)
+ if (a < 0.5L)
{
- if (u.value < 6.938893903907228e-18L) /* |x| < 2**-57 */
+ if (a < 6.938893903907228e-18L) /* |x| < 2**-57 */
return pio2_hi + pio2_lo;
- if (u.value < 0.4375L)
+ if (a < 0.4375L)
{
/* Arcsine of x. */
z = x * x;
@@ -199,7 +200,7 @@ __ieee754_acosl (long double x)
return z;
}
/* .4375 <= |x| < .5 */
- t = u.value - 0.4375L;
+ t = a - 0.4375L;
p = ((((((((((P10 * t
+ P9) * t
+ P8) * t
@@ -230,9 +231,9 @@ __ieee754_acosl (long double x)
r = acosr4375 + r;
return r;
}
- else if (u.value < 0.625L)
+ else if (a < 0.625L)
{
- t = u.value - 0.5625L;
+ t = a - 0.5625L;
p = ((((((((((rS10 * t
+ rS9) * t
+ rS8) * t
@@ -264,7 +265,9 @@ __ieee754_acosl (long double x)
}
else
{ /* |x| >= .625 */
- z = (one - u.value) * 0.5;
+ double shi, slo;
+
+ z = (one - a) * 0.5;
s = __ieee754_sqrtl (z);
/* Compute an extended precision square root from
the Newton iteration s -> 0.5 * (s + z / s).
@@ -273,12 +276,11 @@ __ieee754_acosl (long double x)
Express s = f1 + f2 where f1 * f1 is exactly representable.
w = (z - s^2)/2s = (z - f1^2 - 2 f1 f2 - f2^2)/2s .
s + w has extended precision. */
- u.value = s;
- u.parts32.w2 = 0;
- u.parts32.w3 = 0;
- f2 = s - u.value;
- w = z - u.value * u.value;
- w = w - 2.0 * u.value * f2;
+ ldbl_unpack (s, &shi, &slo);
+ a = shi;
+ f2 = slo;
+ w = z - a * a;
+ w = w - 2.0 * a * f2;
w = w - f2 * f2;
w = w / (2.0 * s);
/* Arcsine of s. */
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_asinl.c b/sysdeps/ieee754/ldbl-128ibm/e_asinl.c
index b395439495..dece11875b 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_asinl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_asinl.c
@@ -131,19 +131,20 @@ static const long double
long double
__ieee754_asinl (long double x)
{
- long double t, w, p, q, c, r, s;
+ long double a, t, w, p, q, c, r, s;
int flag;
- ieee854_long_double_shape_type u;
+ if (__glibc_unlikely (__isnanl (x)))
+ return x + x;
flag = 0;
- u.value = __builtin_fabsl (x);
- if (u.value == 1.0L) /* |x|>= 1 */
+ a = __builtin_fabsl (x);
+ if (a == 1.0L) /* |x|>= 1 */
return x * pio2_hi + x * pio2_lo; /* asin(1)=+-pi/2 with inexact */
- else if (u.value >= 1.0L)
+ else if (a >= 1.0L)
return (x - x) / (x - x); /* asin(|x|>1) is NaN */
- else if (u.value < 0.5L)
+ else if (a < 0.5L)
{
- if (u.value < 6.938893903907228e-18L) /* |x| < 2**-57 */
+ if (a < 6.938893903907228e-18L) /* |x| < 2**-57 */
{
if (huge + x > one)
return x; /* return x with inexact if x!=0 */
@@ -155,9 +156,9 @@ __ieee754_asinl (long double x)
flag = 1;
}
}
- else if (u.value < 0.625L)
+ else if (a < 0.625L)
{
- t = u.value - 0.5625;
+ t = a - 0.5625;
p = ((((((((((rS10 * t
+ rS9) * t
+ rS8) * t
@@ -190,7 +191,7 @@ __ieee754_asinl (long double x)
else
{
/* 1 > |x| >= 0.625 */
- w = one - u.value;
+ w = one - a;
t = w * 0.5;
}
@@ -223,17 +224,14 @@ __ieee754_asinl (long double x)
}
s = __ieee754_sqrtl (t);
- if (u.value > 0.975L)
+ if (a > 0.975L)
{
w = p / q;
t = pio2_hi - (2.0 * (s + s * w) - pio2_lo);
}
else
{
- u.value = s;
- u.parts32.w3 = 0;
- u.parts32.w2 = 0;
- w = u.value;
+ w = ldbl_high (s);
c = (t - w * w) / (s + w);
r = p / q;
p = 2.0 * s * r - (pio2_lo - 2.0 * c);
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c b/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c
index 3e0535561c..b625323df3 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_atan2l.c
@@ -56,11 +56,15 @@ __ieee754_atan2l(long double y, long double x)
{
long double z;
int64_t k,m,hx,hy,ix,iy;
- u_int64_t lx,ly;
+ uint64_t lx;
+ double xhi, xlo, yhi;
- GET_LDOUBLE_WORDS64(hx,lx,x);
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
+ EXTRACT_WORDS64 (lx, xlo);
ix = hx&0x7fffffffffffffffLL;
- GET_LDOUBLE_WORDS64(hy,ly,y);
+ yhi = ldbl_high (y);
+ EXTRACT_WORDS64 (hy, yhi);
iy = hy&0x7fffffffffffffffLL;
if(((ix)>0x7ff0000000000000LL)||
((iy)>0x7ff0000000000000LL)) /* x or y is NaN */
@@ -70,7 +74,7 @@ __ieee754_atan2l(long double y, long double x)
m = ((hy>>63)&1)|((hx>>62)&2); /* 2*sign(x)+sign(y) */
/* when y = 0 */
- if((iy|(ly&0x7fffffffffffffffLL))==0) {
+ if(iy==0) {
switch(m) {
case 0:
case 1: return y; /* atan(+-0,+anything)=+-0 */
@@ -79,7 +83,7 @@ __ieee754_atan2l(long double y, long double x)
}
}
/* when x = 0 */
- if((ix|(lx&0x7fffffffffffffff))==0) return (hy<0)? -pi_o_2-tiny: pi_o_2+tiny;
+ if(ix==0) return (hy<0)? -pi_o_2-tiny: pi_o_2+tiny;
/* when x is INF */
if(ix==0x7ff0000000000000LL) {
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c b/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c
index f35182f03e..29f2e92072 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_atanhl.c
@@ -40,8 +40,10 @@ __ieee754_atanhl(long double x)
{
long double t;
int64_t hx,ix;
- u_int64_t lx __attribute__ ((unused));
- GET_LDOUBLE_WORDS64(hx,lx,x);
+ double xhi;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
ix = hx&0x7fffffffffffffffLL;
if (ix >= 0x3ff0000000000000LL) { /* |x|>=1 */
if (ix > 0x3ff0000000000000LL)
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_coshl.c b/sysdeps/ieee754/ldbl-128ibm/e_coshl.c
index 3e8e1875c6..05683bc02f 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_coshl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_coshl.c
@@ -41,9 +41,11 @@ __ieee754_coshl (long double x)
{
long double t,w;
int64_t ix;
+ double xhi;
/* High word of |x|. */
- GET_LDOUBLE_MSW64(ix,x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (ix, xhi);
ix &= 0x7fffffffffffffffLL;
/* x is INF or NaN */
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c b/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c
index 1eaf2fe398..49121ca315 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_exp10l.c
@@ -36,9 +36,9 @@ __ieee754_exp10l (long double arg)
else if (arg > LDBL_MAX_10_EXP + 1)
return LDBL_MAX * LDBL_MAX;
- u.d = arg;
- arg_high = u.dd[0];
- arg_low = u.dd[1];
+ u.ld = arg;
+ arg_high = u.d[0].d;
+ arg_low = u.d[1].d;
exp_high = arg_high * log10_high;
exp_low = arg_high * log10_low + arg_low * M_LN10l;
return __ieee754_expl (exp_high) * __ieee754_expl (exp_low);
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_expl.c b/sysdeps/ieee754/ldbl-128ibm/e_expl.c
index 1b994cd7a9..65ef18532d 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_expl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_expl.c
@@ -134,18 +134,17 @@ static const long double C[] = {
long double
__ieee754_expl (long double x)
{
+ long double result, x22;
+ union ibm_extended_long_double ex2_u, scale_u;
+ int unsafe;
+
/* Check for usual case. */
if (isless (x, himark) && isgreater (x, lomark))
{
- int tval1, tval2, unsafe, n_i, exponent2;
- long double x22, n, result, xl;
- union ibm_extended_long_double ex2_u, scale_u;
- fenv_t oldenv;
-
- feholdexcept (&oldenv);
-#ifdef FE_TONEAREST
- fesetround (FE_TONEAREST);
-#endif
+ int tval1, tval2, n_i, exponent2;
+ long double n, xl;
+
+ SET_RESTORE_ROUND (FE_TONEAREST);
n = __roundl (x*M_1_LN2);
x = x-n*M_LN2_0;
@@ -162,50 +161,45 @@ __ieee754_expl (long double x)
x = x + xl;
/* Compute ex2 = 2^n_0 e^(argtable[tval1]) e^(argtable[tval2]). */
- ex2_u.d = __expl_table[T_EXPL_RES1 + tval1]
- * __expl_table[T_EXPL_RES2 + tval2];
+ ex2_u.ld = (__expl_table[T_EXPL_RES1 + tval1]
+ * __expl_table[T_EXPL_RES2 + tval2]);
n_i = (int)n;
/* 'unsafe' is 1 iff n_1 != 0. */
unsafe = fabsl(n_i) >= -LDBL_MIN_EXP - 1;
- ex2_u.ieee.exponent += n_i >> unsafe;
+ ex2_u.d[0].ieee.exponent += n_i >> unsafe;
/* Fortunately, there are no subnormal lowpart doubles in
__expl_table, only normal values and zeros.
But after scaling it can be subnormal. */
- exponent2 = ex2_u.ieee.exponent2 + (n_i >> unsafe);
- if (ex2_u.ieee.exponent2 == 0)
- /* assert ((ex2_u.ieee.mantissa2|ex2_u.ieee.mantissa3) == 0) */;
+ exponent2 = ex2_u.d[1].ieee.exponent + (n_i >> unsafe);
+ if (ex2_u.d[1].ieee.exponent == 0)
+ /* assert ((ex2_u.d[1].ieee.mantissa0|ex2_u.d[1].ieee.mantissa1) == 0) */;
else if (exponent2 > 0)
- ex2_u.ieee.exponent2 = exponent2;
+ ex2_u.d[1].ieee.exponent = exponent2;
else if (exponent2 <= -54)
{
- ex2_u.ieee.exponent2 = 0;
- ex2_u.ieee.mantissa2 = 0;
- ex2_u.ieee.mantissa3 = 0;
+ ex2_u.d[1].ieee.exponent = 0;
+ ex2_u.d[1].ieee.mantissa0 = 0;
+ ex2_u.d[1].ieee.mantissa1 = 0;
}
else
{
static const double
two54 = 1.80143985094819840000e+16, /* 4350000000000000 */
twom54 = 5.55111512312578270212e-17; /* 3C90000000000000 */
- ex2_u.dd[1] *= two54;
- ex2_u.ieee.exponent2 += n_i >> unsafe;
- ex2_u.dd[1] *= twom54;
+ ex2_u.d[1].d *= two54;
+ ex2_u.d[1].ieee.exponent += n_i >> unsafe;
+ ex2_u.d[1].d *= twom54;
}
/* Compute scale = 2^n_1. */
- scale_u.d = 1.0L;
- scale_u.ieee.exponent += n_i - (n_i >> unsafe);
+ scale_u.ld = 1.0L;
+ scale_u.d[0].ieee.exponent += n_i - (n_i >> unsafe);
/* Approximate e^x2 - 1, using a seventh-degree polynomial,
with maximum error in [-2^-16-2^-53,2^-16+2^-53]
less than 4.8e-39. */
x22 = x + x*x*(P1+x*(P2+x*(P3+x*(P4+x*(P5+x*P6)))));
- /* Return result. */
- fesetenv (&oldenv);
-
- result = x22 * ex2_u.d + ex2_u.d;
-
/* Now we can test whether the result is ultimate or if we are unsure.
In the later case we should probably call a mpn based routine to give
the ultimate result.
@@ -235,10 +229,6 @@ __ieee754_expl (long double x)
return __ieee754_expl_proc2 (origx);
}
*/
- if (!unsafe)
- return result;
- else
- return result * scale_u.d;
}
/* Exceptional cases: */
else if (isless (x, himark))
@@ -253,5 +243,10 @@ __ieee754_expl (long double x)
else
/* Return x, if x is a NaN or Inf; or overflow, otherwise. */
return TWO1023*x;
+
+ result = x22 * ex2_u.ld + ex2_u.ld;
+ if (!unsafe)
+ return result;
+ return result * scale_u.ld;
}
strong_alias (__ieee754_expl, __expl_finite)
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c b/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c
index a60963c84d..a140fb322d 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_fmodl.c
@@ -27,76 +27,83 @@ static const long double one = 1.0, Zero[] = {0.0, -0.0,};
long double
__ieee754_fmodl (long double x, long double y)
{
- int64_t n,hx,hy,hz,ix,iy,sx, i;
- u_int64_t lx,ly,lz;
- int temp;
+ int64_t hx, hy, hz, sx, sy;
+ uint64_t lx, ly, lz;
+ int n, ix, iy;
+ double xhi, xlo, yhi, ylo;
- GET_LDOUBLE_WORDS64(hx,lx,x);
- GET_LDOUBLE_WORDS64(hy,ly,y);
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
+ EXTRACT_WORDS64 (lx, xlo);
+ ldbl_unpack (y, &yhi, &ylo);
+ EXTRACT_WORDS64 (hy, yhi);
+ EXTRACT_WORDS64 (ly, ylo);
sx = hx&0x8000000000000000ULL; /* sign of x */
- hx ^=sx; /* |x| */
- hy &= 0x7fffffffffffffffLL; /* |y| */
+ hx ^= sx; /* |x| */
+ sy = hy&0x8000000000000000ULL; /* sign of y */
+ hy ^= sy; /* |y| */
/* purge off exception values */
- if(__builtin_expect((hy|(ly&0x7fffffffffffffff))==0 ||
+ if(__builtin_expect(hy==0 ||
(hx>=0x7ff0000000000000LL)|| /* y=0,or x not finite */
(hy>0x7ff0000000000000LL),0)) /* or y is NaN */
return (x*y)/(x*y);
- if(__builtin_expect(hx<=hy,0)) {
- if((hx<hy)||(lx<ly)) return x; /* |x|<|y| return x */
- if(lx==ly)
- return Zero[(u_int64_t)sx>>63]; /* |x|=|y| return x*0*/
+ if (__builtin_expect (hx <= hy, 0))
+ {
+ /* If |x| < |y| return x. */
+ if (hx < hy)
+ return x;
+ /* At this point the absolute value of the high doubles of
+ x and y must be equal. */
+ /* If the low double of y is the same sign as the high
+ double of y (ie. the low double increases |y|)... */
+ if (((ly ^ sy) & 0x8000000000000000LL) == 0
+ /* ... then a different sign low double to high double
+ for x or same sign but lower magnitude... */
+ && (int64_t) (lx ^ sx) < (int64_t) (ly ^ sy))
+ /* ... means |x| < |y|. */
+ return x;
+ /* If the low double of x differs in sign to the high
+ double of x (ie. the low double decreases |x|)... */
+ if (((lx ^ sx) & 0x8000000000000000LL) != 0
+ /* ... then a different sign low double to high double
+ for y with lower magnitude (we've already caught
+ the same sign for y case above)... */
+ && (int64_t) (lx ^ sx) > (int64_t) (ly ^ sy))
+ /* ... means |x| < |y|. */
+ return x;
+ /* If |x| == |y| return x*0. */
+ if ((lx ^ sx) == (ly ^ sy))
+ return Zero[(uint64_t) sx >> 63];
}
- /* determine ix = ilogb(x) */
- if(__builtin_expect(hx<0x0010000000000000LL,0)) { /* subnormal x */
- if(hx==0) {
- for (ix = -1043, i=lx; i>0; i<<=1) ix -=1;
- } else {
- for (ix = -1022, i=(hx<<11); i>0; i<<=1) ix -=1;
- }
- } else ix = (hx>>52)-0x3ff;
-
- /* determine iy = ilogb(y) */
- if(__builtin_expect(hy<0x0010000000000000LL,0)) { /* subnormal y */
- if(hy==0) {
- for (iy = -1043, i=ly; i>0; i<<=1) iy -=1;
- } else {
- for (iy = -1022, i=(hy<<11); i>0; i<<=1) iy -=1;
- }
- } else iy = (hy>>52)-0x3ff;
-
/* Make the IBM extended format 105 bit mantissa look like the ieee854 112
bit mantissa so the following operations will give the correct
result. */
- ldbl_extract_mantissa(&hx, &lx, &temp, x);
- ldbl_extract_mantissa(&hy, &ly, &temp, y);
+ ldbl_extract_mantissa(&hx, &lx, &ix, x);
+ ldbl_extract_mantissa(&hy, &ly, &iy, y);
- /* set up {hx,lx}, {hy,ly} and align y to x */
- if(__builtin_expect(ix >= -1022, 1))
- hx = 0x0001000000000000LL|(0x0000ffffffffffffLL&hx);
- else { /* subnormal x, shift x to normal */
- n = -1022-ix;
- if(n<=63) {
- hx = (hx<<n)|(lx>>(64-n));
- lx <<= n;
- } else {
- hx = lx<<(n-64);
- lx = 0;
- }
- }
- if(__builtin_expect(iy >= -1022, 1))
- hy = 0x0001000000000000LL|(0x0000ffffffffffffLL&hy);
- else { /* subnormal y, shift y to normal */
- n = -1022-iy;
- if(n<=63) {
- hy = (hy<<n)|(ly>>(64-n));
- ly <<= n;
- } else {
- hy = ly<<(n-64);
- ly = 0;
- }
- }
+ if (__builtin_expect (ix == -IEEE754_DOUBLE_BIAS, 0))
+ {
+ /* subnormal x, shift x to normal. */
+ while ((hx & (1LL << 48)) == 0)
+ {
+ hx = (hx << 1) | (lx >> 63);
+ lx = lx << 1;
+ ix -= 1;
+ }
+ }
+
+ if (__builtin_expect (iy == -IEEE754_DOUBLE_BIAS, 0))
+ {
+ /* subnormal y, shift y to normal. */
+ while ((hy & (1LL << 48)) == 0)
+ {
+ hy = (hy << 1) | (ly >> 63);
+ ly = ly << 1;
+ iy -= 1;
+ }
+ }
/* fix point fmod */
n = ix - iy;
@@ -104,7 +111,7 @@ __ieee754_fmodl (long double x, long double y)
hz=hx-hy;lz=lx-ly; if(lx<ly) hz -= 1;
if(hz<0){hx = hx+hx+(lx>>63); lx = lx+lx;}
else {
- if((hz|(lz&0x7fffffffffffffff))==0) /* return sign(x)*0 */
+ if((hz|lz)==0) /* return sign(x)*0 */
return Zero[(u_int64_t)sx>>63];
hx = hz+hz+(lz>>63); lx = lz+lz;
}
@@ -113,7 +120,7 @@ __ieee754_fmodl (long double x, long double y)
if(hz>=0) {hx=hz;lx=lz;}
/* convert back to floating value and restore the sign */
- if((hx|(lx&0x7fffffffffffffff))==0) /* return sign(x)*0 */
+ if((hx|lx)==0) /* return sign(x)*0 */
return Zero[(u_int64_t)sx>>63];
while(hx<0x0001000000000000LL) { /* normalize x */
hx = hx+hx+(lx>>63); lx = lx+lx;
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c b/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c
index 90d8e3f0d2..84c13de9b8 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_gammal_r.c
@@ -122,11 +122,12 @@ long double
__ieee754_gammal_r (long double x, int *signgamp)
{
int64_t hx;
- u_int64_t lx;
+ double xhi;
- GET_LDOUBLE_WORDS64 (hx, lx, x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
- if (((hx | lx) & 0x7fffffffffffffffLL) == 0)
+ if ((hx & 0x7fffffffffffffffLL) == 0)
{
/* Return value for x == 0 is Inf with divide by zero exception. */
*signgamp = 0;
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c b/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c
index 768bd3b06c..3b07a47b40 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_hypotl.c
@@ -45,76 +45,84 @@
#include <math.h>
#include <math_private.h>
-static const long double two600 = 0x1.0p+600L;
-static const long double two1022 = 0x1.0p+1022L;
-
long double
__ieee754_hypotl(long double x, long double y)
{
- long double a,b,t1,t2,y1,y2,w,kld;
+ long double a,b,a1,a2,b1,b2,w,kld;
int64_t j,k,ha,hb;
+ double xhi, yhi, hi, lo;
- GET_LDOUBLE_MSW64(ha,x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (ha, xhi);
+ yhi = ldbl_high (y);
+ EXTRACT_WORDS64 (hb, yhi);
ha &= 0x7fffffffffffffffLL;
- GET_LDOUBLE_MSW64(hb,y);
hb &= 0x7fffffffffffffffLL;
if(hb > ha) {a=y;b=x;j=ha; ha=hb;hb=j;} else {a=x;b=y;}
a = fabsl(a); /* a <- |a| */
b = fabsl(b); /* b <- |b| */
- if((ha-hb)>0x780000000000000LL) {return a+b;} /* x/y > 2**120 */
+ if((ha-hb)>0x0780000000000000LL) {return a+b;} /* x/y > 2**120 */
k=0;
kld = 1.0L;
if(ha > 0x5f30000000000000LL) { /* a>2**500 */
if(ha >= 0x7ff0000000000000LL) { /* Inf or NaN */
- u_int64_t low;
w = a+b; /* for sNaN */
- GET_LDOUBLE_LSW64(low,a);
- if(((ha&0xfffffffffffffLL)|(low&0x7fffffffffffffffLL))==0)
+ if(ha == 0x7ff0000000000000LL)
w = a;
- GET_LDOUBLE_LSW64(low,b);
- if(((hb^0x7ff0000000000000LL)|(low&0x7fffffffffffffffLL))==0)
+ if(hb == 0x7ff0000000000000LL)
w = b;
return w;
}
/* scale a and b by 2**-600 */
- ha -= 0x2580000000000000LL; hb -= 0x2580000000000000LL; k += 600;
- a /= two600;
- b /= two600;
- k += 600;
- kld = two600;
+ a *= 0x1p-600L;
+ b *= 0x1p-600L;
+ k = 600;
+ kld = 0x1p+600L;
}
- if(hb < 0x23d0000000000000LL) { /* b < 2**-450 */
+ else if(hb < 0x23d0000000000000LL) { /* b < 2**-450 */
if(hb <= 0x000fffffffffffffLL) { /* subnormal b or 0 */
- u_int64_t low;
- GET_LDOUBLE_LSW64(low,b);
- if((hb|(low&0x7fffffffffffffffLL))==0) return a;
- t1=two1022; /* t1=2^1022 */
- b *= t1;
- a *= t1;
- k -= 1022;
- kld = kld / two1022;
+ if(hb==0) return a;
+ a *= 0x1p+1022L;
+ b *= 0x1p+1022L;
+ k = -1022;
+ kld = 0x1p-1022L;
} else { /* scale a and b by 2^600 */
- ha += 0x2580000000000000LL; /* a *= 2^600 */
- hb += 0x2580000000000000LL; /* b *= 2^600 */
- k -= 600;
- a *= two600;
- b *= two600;
- kld = kld / two600;
+ a *= 0x1p+600L;
+ b *= 0x1p+600L;
+ k = -600;
+ kld = 0x1p-600L;
}
}
/* medium size a and b */
w = a-b;
if (w>b) {
- SET_LDOUBLE_WORDS64(t1,ha,0);
- t2 = a-t1;
- w = __ieee754_sqrtl(t1*t1-(b*(-b)-t2*(a+t1)));
+ ldbl_unpack (a, &hi, &lo);
+ a1 = hi;
+ a2 = lo;
+ /* a*a + b*b
+ = (a1+a2)*a + b*b
+ = a1*a + a2*a + b*b
+ = a1*(a1+a2) + a2*a + b*b
+ = a1*a1 + a1*a2 + a2*a + b*b
+ = a1*a1 + a2*(a+a1) + b*b */
+ w = __ieee754_sqrtl(a1*a1-(b*(-b)-a2*(a+a1)));
} else {
a = a+a;
- SET_LDOUBLE_WORDS64(y1,hb,0);
- y2 = b - y1;
- SET_LDOUBLE_WORDS64(t1,ha+0x0010000000000000LL,0);
- t2 = a - t1;
- w = __ieee754_sqrtl(t1*y1-(w*(-w)-(t1*y2+t2*b)));
+ ldbl_unpack (b, &hi, &lo);
+ b1 = hi;
+ b2 = lo;
+ ldbl_unpack (a, &hi, &lo);
+ a1 = hi;
+ a2 = lo;
+ /* a*a + b*b
+ = a*a + (a-b)*(a-b) - (a-b)*(a-b) + b*b
+ = a*a + w*w - (a*a - 2*a*b + b*b) + b*b
+ = w*w + 2*a*b
+ = w*w + (a1+a2)*b
+ = w*w + a1*b + a2*b
+ = w*w + a1*(b1+b2) + a2*b
+ = w*w + a1*b1 + a1*b2 + a2*b */
+ w = __ieee754_sqrtl(a1*b1-(w*(-w)-(a1*b2+a2*b)));
}
if(k!=0)
return w*kld;
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c b/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c
index 55f87ed422..aeace7c977 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_ilogbl.c
@@ -31,26 +31,24 @@ static char rcsid[] = "$NetBSD: $";
int __ieee754_ilogbl(long double x)
{
- int64_t hx,lx;
+ int64_t hx;
int ix;
+ double xhi;
- GET_LDOUBLE_WORDS64(hx,lx,x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
hx &= 0x7fffffffffffffffLL;
if(hx <= 0x0010000000000000LL) {
- if((hx|(lx&0x7fffffffffffffffLL))==0)
+ if(hx==0)
return FP_ILOGB0; /* ilogbl(0) = FP_ILOGB0 */
else /* subnormal x */
- if(hx==0) {
- for (ix = -1043; lx>0; lx<<=1) ix -=1;
- } else {
- for (ix = -1022, hx<<=11; hx>0; hx<<=1) ix -=1;
- }
+ for (ix = -1022, hx<<=11; hx>0; hx<<=1) ix -=1;
return ix;
}
else if (hx<0x7ff0000000000000LL) return (hx>>52)-0x3ff;
else if (FP_ILOGBNAN != INT_MAX) {
/* ISO C99 requires ilogbl(+-Inf) == INT_MAX. */
- if (((hx^0x7ff0000000000000LL)|lx) == 0)
+ if (hx==0x7ff0000000000000LL)
return INT_MAX;
}
return FP_ILOGBNAN;
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c
index 40012e41e1..6761a0d26f 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_jnl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_jnl.c
@@ -70,26 +70,25 @@ static const long double
long double
__ieee754_jnl (int n, long double x)
{
- u_int32_t se;
+ uint32_t se, lx;
int32_t i, ix, sgn;
long double a, b, temp, di;
long double z, w;
- ieee854_long_double_shape_type u;
+ double xhi;
/* J(-n,x) = (-1)^n * J(n, x), J(n, -x) = (-1)^n * J(n, x)
* Thus, J(-n,x) = J(n,-x)
*/
- u.value = x;
- se = u.parts32.w0;
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS (se, lx, xhi);
ix = se & 0x7fffffff;
/* if J(n,NaN) is NaN */
if (ix >= 0x7ff00000)
{
- if ((u.parts32.w0 & 0xfffff) | u.parts32.w1
- | (u.parts32.w2 & 0x7fffffff) | u.parts32.w3)
+ if (((ix - 0x7ff00000) | lx) != 0)
return x + x;
}
@@ -298,27 +297,26 @@ strong_alias (__ieee754_jnl, __jnl_finite)
long double
__ieee754_ynl (int n, long double x)
{
- u_int32_t se;
+ uint32_t se, lx;
int32_t i, ix;
int32_t sign;
long double a, b, temp;
- ieee854_long_double_shape_type u;
+ double xhi;
- u.value = x;
- se = u.parts32.w0;
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS (se, lx, xhi);
ix = se & 0x7fffffff;
/* if Y(n,NaN) is NaN */
if (ix >= 0x7ff00000)
{
- if ((u.parts32.w0 & 0xfffff) | u.parts32.w1
- | (u.parts32.w2 & 0x7fffffff) | u.parts32.w3)
+ if (((ix - 0x7ff00000) | lx) != 0)
return x + x;
}
if (x <= 0.0L)
{
if (x == 0.0L)
- return -HUGE_VALL + x;
+ return ((n < 0 && (n & 1) != 0) ? 1.0L : -1.0L) / 0.0L;
if (se & 0x80000000)
return zero / (zero * x);
}
@@ -377,14 +375,16 @@ __ieee754_ynl (int n, long double x)
a = __ieee754_y0l (x);
b = __ieee754_y1l (x);
/* quit if b is -inf */
- u.value = b;
- se = u.parts32.w0 & 0xfff00000;
+ xhi = ldbl_high (b);
+ GET_HIGH_WORD (se, xhi);
+ se &= 0xfff00000;
for (i = 1; i < n && se != 0xfff00000; i++)
{
temp = b;
b = ((long double) (i + i) / x) * b - a;
- u.value = b;
- se = u.parts32.w0 & 0xfff00000;
+ xhi = ldbl_high (b);
+ GET_HIGH_WORD (se, xhi);
+ se &= 0xfff00000;
a = temp;
}
}
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_log10l.c b/sysdeps/ieee754/ldbl-128ibm/e_log10l.c
index fae774cea8..1a6a4a0fa3 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_log10l.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_log10l.c
@@ -182,11 +182,13 @@ __ieee754_log10l (long double x)
long double z;
long double y;
int e;
- int64_t hx, lx;
+ int64_t hx;
+ double xhi;
/* Test for domain */
- GET_LDOUBLE_WORDS64 (hx, lx, x);
- if (((hx & 0x7fffffffffffffffLL) | (lx & 0x7fffffffffffffffLL)) == 0)
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
+ if ((hx & 0x7fffffffffffffffLL) == 0)
return (-1.0L / (x - x));
if (hx < 0)
return (x - x) / (x - x);
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_log2l.c b/sysdeps/ieee754/ldbl-128ibm/e_log2l.c
index f0098f6c73..323ded0c0f 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_log2l.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_log2l.c
@@ -177,11 +177,13 @@ __ieee754_log2l (x)
long double z;
long double y;
int e;
- int64_t hx, lx;
+ int64_t hx;
+ double xhi;
/* Test for domain */
- GET_LDOUBLE_WORDS64 (hx, lx, x);
- if (((hx & 0x7fffffffffffffffLL) | (lx & 0x7fffffffffffffffLL)) == 0)
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
+ if ((hx & 0x7fffffffffffffffLL) == 0)
return (-1.0L / (x - x));
if (hx < 0)
return (x - x) / (x - x);
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_logl.c b/sysdeps/ieee754/ldbl-128ibm/e_logl.c
index 15b5edfab3..b7db2b9784 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_logl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_logl.c
@@ -188,18 +188,20 @@ static const long double
long double
__ieee754_logl(long double x)
{
- long double z, y, w;
- ieee854_long_double_shape_type u, t;
+ long double z, y, w, t;
unsigned int m;
int k, e;
+ double xhi;
+ uint32_t hx, lx;
- u.value = x;
- m = u.parts32.w0;
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS (hx, lx, xhi);
+ m = hx;
/* Check for IEEE special cases. */
k = m & 0x7fffffff;
/* log(0) = -infinity. */
- if ((k | u.parts32.w1 | (u.parts32.w2 & 0x7fffffff) | u.parts32.w3) == 0)
+ if ((k | lx) == 0)
{
return -0.5L / ZERO;
}
@@ -219,7 +221,7 @@ __ieee754_logl(long double x)
{
z = x - 1.0L;
k = 64;
- t.value = 1.0L;
+ t = 1.0L;
e = 0;
}
else
@@ -236,10 +238,8 @@ __ieee754_logl(long double x)
k = (m - 0xff000) >> 13;
/* t is the argument 0.5 + (k+26)/128
of the nearest item to u in the lookup table. */
- t.parts32.w0 = 0x3ff00000 + (k << 13);
- t.parts32.w1 = 0;
- t.parts32.w2 = 0;
- t.parts32.w3 = 0;
+ INSERT_WORDS (xhi, 0x3ff00000 + (k << 13), 0);
+ t = xhi;
w0 += 0x100000;
e -= 1;
k += 64;
@@ -247,17 +247,15 @@ __ieee754_logl(long double x)
else
{
k = (m - 0xfe000) >> 14;
- t.parts32.w0 = 0x3fe00000 + (k << 14);
- t.parts32.w1 = 0;
- t.parts32.w2 = 0;
- t.parts32.w3 = 0;
+ INSERT_WORDS (xhi, 0x3fe00000 + (k << 14), 0);
+ t = xhi;
}
- u.value = __scalbnl (u.value, ((int) ((w0 - u.parts32.w0) * 2)) >> 21);
+ x = __scalbnl (x, ((int) ((w0 - hx) * 2)) >> 21);
/* log(u) = log( t u/t ) = log(t) + log(u/t)
log(t) is tabulated in the lookup table.
Express log(u/t) = log(1+z), where z = u/t - 1 = (u-t)/t.
cf. Cody & Waite. */
- z = (u.value - t.value) / t.value;
+ z = (x - t) / t;
}
/* Series expansion of log(1+z). */
w = z * z;
@@ -284,7 +282,7 @@ __ieee754_logl(long double x)
y += e * ln2b; /* Base 2 exponent offset times ln(2). */
y += z;
y += logtbl[k-26]; /* log(t) - (t-1) */
- y += (t.value - 1.0L);
+ y += (t - 1.0L);
y += e * ln2a;
return y;
}
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_powl.c b/sysdeps/ieee754/ldbl-128ibm/e_powl.c
index 8bd35d0c88..c942f2f249 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_powl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_powl.c
@@ -151,37 +151,32 @@ __ieee754_powl (long double x, long double y)
long double y1, t1, t2, r, s, t, u, v, w;
long double s2, s_h, s_l, t_h, t_l, ay;
int32_t i, j, k, yisint, n;
- u_int32_t ix, iy;
- int32_t hx, hy;
- ieee854_long_double_shape_type o, p, q;
+ uint32_t ix, iy;
+ int32_t hx, hy, hax;
+ double ohi, xhi, xlo, yhi, ylo;
+ uint32_t lx, ly, lj;
- p.value = x;
- hx = p.parts32.w0;
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS (hx, lx, xhi);
ix = hx & 0x7fffffff;
- q.value = y;
- hy = q.parts32.w0;
+ ldbl_unpack (y, &yhi, &ylo);
+ EXTRACT_WORDS (hy, ly, yhi);
iy = hy & 0x7fffffff;
-
/* y==zero: x**0 = 1 */
- if ((iy | q.parts32.w1 | (q.parts32.w2 & 0x7fffffff) | q.parts32.w3) == 0)
+ if ((iy | ly) == 0)
return one;
/* 1.0**y = 1; -1.0**+-Inf = 1 */
if (x == one)
return one;
- if (x == -1.0L && iy == 0x7ff00000
- && (q.parts32.w1 | (q.parts32.w2 & 0x7fffffff) | q.parts32.w3) == 0)
+ if (x == -1.0L && ((iy - 0x7ff00000) | ly) == 0)
return one;
/* +-NaN return x+y */
- if ((ix > 0x7ff00000)
- || ((ix == 0x7ff00000)
- && ((p.parts32.w1 | (p.parts32.w2 & 0x7fffffff) | p.parts32.w3) != 0))
- || (iy > 0x7ff00000)
- || ((iy == 0x7ff00000)
- && ((q.parts32.w1 | (q.parts32.w2 & 0x7fffffff) | q.parts32.w3) != 0)))
+ if ((ix >= 0x7ff00000 && ((ix - 0x7ff00000) | lx) != 0)
+ || (iy >= 0x7ff00000 && ((iy - 0x7ff00000) | ly) != 0))
return x + y;
/* determine if y is an odd int when x < 0
@@ -192,7 +187,10 @@ __ieee754_powl (long double x, long double y)
yisint = 0;
if (hx < 0)
{
- if ((q.parts32.w2 & 0x7fffffff) >= 0x43400000) /* Low part >= 2^53 */
+ uint32_t low_ye;
+
+ GET_HIGH_WORD (low_ye, ylo);
+ if ((low_ye & 0x7fffffff) >= 0x43400000) /* Low part >= 2^53 */
yisint = 2; /* even integer y */
else if (iy >= 0x3ff00000) /* 1.0 */
{
@@ -207,42 +205,43 @@ __ieee754_powl (long double x, long double y)
}
}
+ ax = fabsl (x);
+
/* special value of y */
- if ((q.parts32.w1 | (q.parts32.w2 & 0x7fffffff) | q.parts32.w3) == 0)
+ if (ly == 0)
{
- if (iy == 0x7ff00000 && q.parts32.w1 == 0) /* y is +-inf */
+ if (iy == 0x7ff00000) /* y is +-inf */
{
- if (((ix - 0x3ff00000) | p.parts32.w1
- | (p.parts32.w2 & 0x7fffffff) | p.parts32.w3) == 0)
- return y - y; /* inf**+-1 is NaN */
- else if (ix > 0x3ff00000 || fabsl (x) > 1.0L)
+ if (ax > one)
/* (|x|>1)**+-inf = inf,0 */
return (hy >= 0) ? y : zero;
else
/* (|x|<1)**-,+inf = inf,0 */
return (hy < 0) ? -y : zero;
}
- if (iy == 0x3ff00000)
- { /* y is +-1 */
- if (hy < 0)
- return one / x;
- else
- return x;
- }
- if (hy == 0x40000000)
- return x * x; /* y is 2 */
- if (hy == 0x3fe00000)
- { /* y is 0.5 */
- if (hx >= 0) /* x >= +0 */
- return __ieee754_sqrtl (x);
+ if (ylo == 0.0)
+ {
+ if (iy == 0x3ff00000)
+ { /* y is +-1 */
+ if (hy < 0)
+ return one / x;
+ else
+ return x;
+ }
+ if (hy == 0x40000000)
+ return x * x; /* y is 2 */
+ if (hy == 0x3fe00000)
+ { /* y is 0.5 */
+ if (hx >= 0) /* x >= +0 */
+ return __ieee754_sqrtl (x);
+ }
}
}
- ax = fabsl (x);
/* special value of x */
- if ((p.parts32.w1 | (p.parts32.w2 & 0x7fffffff) | p.parts32.w3) == 0)
+ if (lx == 0)
{
- if (ix == 0x7ff00000 || ix == 0 || ix == 0x3ff00000)
+ if (ix == 0x7ff00000 || ix == 0 || (ix == 0x3ff00000 && xlo == 0.0))
{
z = ax; /*x is +-0,+-inf,+-1 */
if (hy < 0)
@@ -294,8 +293,8 @@ __ieee754_powl (long double x, long double y)
{
ax *= two113;
n -= 113;
- o.value = ax;
- ix = o.parts32.w0;
+ ohi = ldbl_high (ax);
+ GET_HIGH_WORD (ix, ohi);
}
n += ((ix) >> 20) - 0x3ff;
j = ix & 0x000fffff;
@@ -312,26 +311,19 @@ __ieee754_powl (long double x, long double y)
ix -= 0x00100000;
}
- o.value = ax;
- o.value = __scalbnl (o.value, ((int) ((ix - o.parts32.w0) * 2)) >> 21);
- ax = o.value;
+ ohi = ldbl_high (ax);
+ GET_HIGH_WORD (hax, ohi);
+ ax = __scalbnl (ax, ((int) ((ix - hax) * 2)) >> 21);
/* compute s = s_h+s_l = (x-1)/(x+1) or (x-1.5)/(x+1.5) */
u = ax - bp[k]; /* bp[0]=1.0, bp[1]=1.5 */
v = one / (ax + bp[k]);
s = u * v;
- s_h = s;
+ s_h = ldbl_high (s);
- o.value = s_h;
- o.parts32.w3 = 0;
- o.parts32.w2 = 0;
- s_h = o.value;
/* t_h=ax+bp[k] High */
t_h = ax + bp[k];
- o.value = t_h;
- o.parts32.w3 = 0;
- o.parts32.w2 = 0;
- t_h = o.value;
+ t_h = ldbl_high (t_h);
t_l = ax - (t_h - bp[k]);
s_l = v * ((u - s_h * t_h) - s_h * t_l);
/* compute log(ax) */
@@ -342,30 +334,21 @@ __ieee754_powl (long double x, long double y)
r += s_l * (s_h + s);
s2 = s_h * s_h;
t_h = 3.0 + s2 + r;
- o.value = t_h;
- o.parts32.w3 = 0;
- o.parts32.w2 = 0;
- t_h = o.value;
+ t_h = ldbl_high (t_h);
t_l = r - ((t_h - 3.0) - s2);
/* u+v = s*(1+...) */
u = s_h * t_h;
v = s_l * t_h + t_l * s;
/* 2/(3log2)*(s+...) */
p_h = u + v;
- o.value = p_h;
- o.parts32.w3 = 0;
- o.parts32.w2 = 0;
- p_h = o.value;
+ p_h = ldbl_high (p_h);
p_l = v - (p_h - u);
z_h = cp_h * p_h; /* cp_h+cp_l = 2/(3*log2) */
z_l = cp_l * p_h + p_l * cp + dp_l[k];
/* log2(ax) = (s+..)*2/(3*log2) = n + dp_h + z_h + z_l */
t = (long double) n;
t1 = (((z_h + z_l) + dp_h[k]) + t);
- o.value = t1;
- o.parts32.w3 = 0;
- o.parts32.w2 = 0;
- t1 = o.value;
+ t1 = ldbl_high (t1);
t2 = z_l - (((t1 - t) - dp_h[k]) - z_h);
/* s (sign of result -ve**odd) = -1 else = 1 */
@@ -374,21 +357,16 @@ __ieee754_powl (long double x, long double y)
s = -one; /* (-ve)**(odd int) */
/* split up y into y1+y2 and compute (y1+y2)*(t1+t2) */
- y1 = y;
- o.value = y1;
- o.parts32.w3 = 0;
- o.parts32.w2 = 0;
- y1 = o.value;
+ y1 = ldbl_high (y);
p_l = (y - y1) * t1 + y * t2;
p_h = y1 * t1;
z = p_l + p_h;
- o.value = z;
- j = o.parts32.w0;
+ ohi = ldbl_high (z);
+ EXTRACT_WORDS (j, lj, ohi);
if (j >= 0x40d00000) /* z >= 16384 */
{
/* if z > 16384 */
- if (((j - 0x40d00000) | o.parts32.w1
- | (o.parts32.w2 & 0x7fffffff) | o.parts32.w3) != 0)
+ if (((j - 0x40d00000) | lj) != 0)
return s * huge * huge; /* overflow */
else
{
@@ -399,8 +377,7 @@ __ieee754_powl (long double x, long double y)
else if ((j & 0x7fffffff) >= 0x40d01b90) /* z <= -16495 */
{
/* z < -16495 */
- if (((j - 0xc0d01bc0) | o.parts32.w1
- | (o.parts32.w2 & 0x7fffffff) | o.parts32.w3) != 0)
+ if (((j - 0xc0d01bc0) | lj) != 0)
return s * tiny * tiny; /* underflow */
else
{
@@ -419,10 +396,7 @@ __ieee754_powl (long double x, long double y)
p_h -= t;
}
t = p_l + p_h;
- o.value = t;
- o.parts32.w3 = 0;
- o.parts32.w2 = 0;
- t = o.value;
+ t = ldbl_high (t);
u = t * lg2_h;
v = (p_l - (t - p_h)) * lg2 + t * lg2_l;
z = u + v;
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c b/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
index 6a72d6a853..36bc03226b 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_rem_pio2l.c
@@ -200,10 +200,11 @@ int32_t __ieee754_rem_pio2l(long double x, long double *y)
double tx[8];
int exp;
int64_t n, ix, hx, ixd;
- u_int64_t lx __attribute__ ((unused));
u_int64_t lxd;
+ double xhi;
- GET_LDOUBLE_WORDS64 (hx, lx, x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
ix = hx & 0x7fffffffffffffffLL;
if (ix <= 0x3fe921fb54442d10LL) /* x in <-pi/4, pi/4> */
{
@@ -243,7 +244,7 @@ int32_t __ieee754_rem_pio2l(long double x, long double *y)
We split the 113 bits of the mantissa into 5 24bit integers
stored in a double array. */
/* Make the IBM extended format 105 bit mantissa look like the ieee854 112
- bit mantissa so the next operatation will give the correct result. */
+ bit mantissa so the next operation will give the correct result. */
ldbl_extract_mantissa (&ixd, &lxd, &exp, x);
exp = exp - 23;
/* This is faster than doing this in floating point, because we
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c b/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c
index 67d7db7fbe..800416f29a 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_remainderl.c
@@ -33,18 +33,22 @@ __ieee754_remainderl(long double x, long double p)
int64_t hx,hp;
u_int64_t sx,lx,lp;
long double p_half;
+ double xhi, xlo, phi, plo;
- GET_LDOUBLE_WORDS64(hx,lx,x);
- GET_LDOUBLE_WORDS64(hp,lp,p);
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
+ EXTRACT_WORDS64 (lx, xlo);
+ ldbl_unpack (p, &phi, &plo);
+ EXTRACT_WORDS64 (hp, phi);
+ EXTRACT_WORDS64 (lp, plo);
sx = hx&0x8000000000000000ULL;
hp &= 0x7fffffffffffffffLL;
hx &= 0x7fffffffffffffffLL;
/* purge off exception values */
- if((hp|(lp&0x7fffffffffffffff))==0) return (x*p)/(x*p); /* p = 0 */
+ if(hp==0) return (x*p)/(x*p); /* p = 0 */
if((hx>=0x7ff0000000000000LL)|| /* x not finite */
- ((hp>=0x7ff0000000000000LL)&& /* p is NaN */
- (((hp-0x7ff0000000000000LL)|lp)!=0)))
+ (hp>0x7ff0000000000000LL)) /* p is NaN */
return (x*p)/(x*p);
@@ -64,8 +68,8 @@ __ieee754_remainderl(long double x, long double p)
if(x>=p_half) x -= p;
}
}
- GET_LDOUBLE_MSW64(hx,x);
- SET_LDOUBLE_MSW64(x,hx^sx);
+ if (sx)
+ x = -x;
return x;
}
strong_alias (__ieee754_remainderl, __remainderl_finite)
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c b/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c
index 4e8481c419..1790bef87e 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_sinhl.c
@@ -38,9 +38,11 @@ __ieee754_sinhl(long double x)
{
long double t,w,h;
int64_t ix,jx;
+ double xhi;
/* High word of |x|. */
- GET_LDOUBLE_MSW64(jx,x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (jx, xhi);
ix = jx&0x7fffffffffffffffLL;
/* x is INF or NaN */
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c b/sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c
index 2b0f7c62e4..61feb367f7 100644
--- a/sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/e_sqrtl.c
@@ -34,15 +34,13 @@
#include <math_private.h>
-typedef unsigned int int4;
-typedef union {int4 i[4]; long double x; double d[2]; } mynumber;
+typedef union {int64_t i[2]; long double x; double d[2]; } mynumber;
-static const mynumber
- t512 = {{0x5ff00000, 0x00000000, 0x00000000, 0x00000000 }}, /* 2^512 */
- tm256 = {{0x2ff00000, 0x00000000, 0x00000000, 0x00000000 }}; /* 2^-256 */
static const double
-two54 = 1.80143985094819840000e+16, /* 0x4350000000000000 */
-twom54 = 5.55111512312578270212e-17; /* 0x3C90000000000000 */
+ t512 = 0x1p512,
+ tm256 = 0x1p-256,
+ two54 = 0x1p54, /* 0x4350000000000000 */
+ twom54 = 0x1p-54; /* 0x3C90000000000000 */
/*********************************************************************/
/* An ultimate sqrt routine. Given an IEEE double machine number x */
@@ -54,56 +52,53 @@ long double __ieee754_sqrtl(long double x)
static const long double big = 134217728.0, big1 = 134217729.0;
long double t,s,i;
mynumber a,c;
- int4 k, l, m;
- int n;
+ uint64_t k, l;
+ int64_t m, n;
double d;
a.x=x;
- k=a.i[0] & 0x7fffffff;
+ k=a.i[0] & INT64_C(0x7fffffffffffffff);
/*----------------- 2^-1022 <= | x |< 2^1024 -----------------*/
- if (k>0x000fffff && k<0x7ff00000) {
+ if (k>INT64_C(0x000fffff00000000) && k<INT64_C(0x7ff0000000000000)) {
if (x < 0) return (big1-big1)/(big-big);
- l = (k&0x001fffff)|0x3fe00000;
- if (((a.i[2] & 0x7fffffff) | a.i[3]) != 0) {
- n = (int) ((l - k) * 2) >> 21;
- m = (a.i[2] >> 20) & 0x7ff;
+ l = (k&INT64_C(0x001fffffffffffff))|INT64_C(0x3fe0000000000000);
+ if ((a.i[1] & INT64_C(0x7fffffffffffffff)) != 0) {
+ n = (int64_t) ((l - k) * 2) >> 53;
+ m = (a.i[1] >> 52) & 0x7ff;
if (m == 0) {
a.d[1] *= two54;
- m = ((a.i[2] >> 20) & 0x7ff) - 54;
+ m = ((a.i[1] >> 52) & 0x7ff) - 54;
}
m += n;
- if ((int) m > 0)
- a.i[2] = (a.i[2] & 0x800fffff) | (m << 20);
- else if ((int) m <= -54) {
- a.i[2] &= 0x80000000;
- a.i[3] = 0;
+ if (m > 0)
+ a.i[1] = (a.i[1] & INT64_C(0x800fffffffffffff)) | (m << 52);
+ else if (m <= -54) {
+ a.i[1] &= INT64_C(0x8000000000000000);
} else {
m += 54;
- a.i[2] = (a.i[2] & 0x800fffff) | (m << 20);
+ a.i[1] = (a.i[1] & INT64_C(0x800fffffffffffff)) | (m << 52);
a.d[1] *= twom54;
}
}
a.i[0] = l;
s = a.x;
d = __ieee754_sqrt (a.d[0]);
- c.i[0] = 0x20000000+((k&0x7fe00000)>>1);
+ c.i[0] = INT64_C(0x2000000000000000)+((k&INT64_C(0x7fe0000000000000))>>1);
c.i[1] = 0;
- c.i[2] = 0;
- c.i[3] = 0;
i = d;
t = 0.5L * (i + s / i);
i = 0.5L * (t + s / t);
return c.x * i;
}
else {
- if (k>=0x7ff00000) {
- if (a.i[0] == 0xfff00000 && a.i[1] == 0)
+ if (k>=INT64_C(0x7ff0000000000000)) {
+ if (a.i[0] == INT64_C(0xfff0000000000000))
return (big1-big1)/(big-big); /* sqrt (-Inf) = NaN. */
return x; /* sqrt (NaN) = NaN, sqrt (+Inf) = +Inf. */
}
if (x == 0) return x;
if (x < 0) return (big1-big1)/(big-big);
- return tm256.x*__ieee754_sqrtl(x*t512.x);
+ return tm256*__ieee754_sqrtl(x*t512);
}
}
strong_alias (__ieee754_sqrtl, __sqrtl_finite)
diff --git a/sysdeps/ieee754/ldbl-128ibm/ieee754.h b/sysdeps/ieee754/ldbl-128ibm/ieee754.h
index 9e94f53b04..0c97a99207 100644
--- a/sysdeps/ieee754/ldbl-128ibm/ieee754.h
+++ b/sysdeps/ieee754/ldbl-128ibm/ieee754.h
@@ -111,61 +111,6 @@ union ieee754_double
#define IEEE754_DOUBLE_BIAS 0x3ff /* Added to exponent. */
-union ieee854_long_double
- {
- long double d;
-
- /* This is the IEEE 854 quad-precision format. */
- struct
- {
-#if __BYTE_ORDER == __BIG_ENDIAN
- unsigned int negative:1;
- unsigned int exponent:15;
- /* Together these comprise the mantissa. */
- unsigned int mantissa0:16;
- unsigned int mantissa1:32;
- unsigned int mantissa2:32;
- unsigned int mantissa3:32;
-#endif /* Big endian. */
-#if __BYTE_ORDER == __LITTLE_ENDIAN
- /* Together these comprise the mantissa. */
- unsigned int mantissa3:32;
- unsigned int mantissa2:32;
- unsigned int mantissa1:32;
- unsigned int mantissa0:16;
- unsigned int exponent:15;
- unsigned int negative:1;
-#endif /* Little endian. */
- } ieee;
-
- /* This format makes it easier to see if a NaN is a signalling NaN. */
- struct
- {
-#if __BYTE_ORDER == __BIG_ENDIAN
- unsigned int negative:1;
- unsigned int exponent:15;
- unsigned int quiet_nan:1;
- /* Together these comprise the mantissa. */
- unsigned int mantissa0:15;
- unsigned int mantissa1:32;
- unsigned int mantissa2:32;
- unsigned int mantissa3:32;
-#else
- /* Together these comprise the mantissa. */
- unsigned int mantissa3:32;
- unsigned int mantissa2:32;
- unsigned int mantissa1:32;
- unsigned int mantissa0:15;
- unsigned int quiet_nan:1;
- unsigned int exponent:15;
- unsigned int negative:1;
-#endif
- } ieee_nan;
- };
-
-#define IEEE854_LONG_DOUBLE_BIAS 0x3fff /* Added to exponent. */
-
-
/* IBM extended format for long double.
Each long double is made up of two IEEE doubles. The value of the
@@ -179,49 +124,10 @@ union ieee854_long_double
union ibm_extended_long_double
{
- long double d;
- double dd[2];
-
- /* This is the IBM extended format long double. */
- struct
- { /* Big endian. There is no other. */
-
- unsigned int negative:1;
- unsigned int exponent:11;
- /* Together Mantissa0-3 comprise the mantissa. */
- unsigned int mantissa0:20;
- unsigned int mantissa1:32;
-
- unsigned int negative2:1;
- unsigned int exponent2:11;
- /* There is an implied 1 here? */
- /* Together these comprise the mantissa. */
- unsigned int mantissa2:20;
- unsigned int mantissa3:32;
- } ieee;
-
- /* This format makes it easier to see if a NaN is a signalling NaN. */
- struct
- { /* Big endian. There is no other. */
-
- unsigned int negative:1;
- unsigned int exponent:11;
- unsigned int quiet_nan:1;
- /* Together Mantissa0-3 comprise the mantissa. */
- unsigned int mantissa0:19;
- unsigned int mantissa1:32;
-
- unsigned int negative2:1;
- unsigned int exponent2:11;
- /* There is an implied 1 here? */
- /* Together these comprise the mantissa. */
- unsigned int mantissa2:20;
- unsigned int mantissa3:32;
- } ieee_nan;
+ long double ld;
+ union ieee754_double d[2];
};
-#define IBM_EXTENDED_LONG_DOUBLE_BIAS 0x3ff /* Added to exponent. */
-
__END_DECLS
#endif /* ieee754.h */
diff --git a/sysdeps/ieee754/ldbl-128ibm/k_cosl.c b/sysdeps/ieee754/ldbl-128ibm/k_cosl.c
index 0b81782fdb..046f3b573c 100644
--- a/sysdeps/ieee754/ldbl-128ibm/k_cosl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/k_cosl.c
@@ -81,8 +81,11 @@ __kernel_cosl(long double x, long double y)
{
long double h, l, z, sin_l, cos_l_m1;
int64_t ix;
- u_int32_t tix, hix, index;
- GET_LDOUBLE_MSW64 (ix, x);
+ uint32_t tix, hix, index;
+ double xhi, hhi;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (ix, xhi);
tix = ((u_int64_t)ix) >> 32;
tix &= ~0x80000000; /* tix = |x|'s high 32 bits */
if (tix < 0x3fc30000) /* |x| < 0.1484375 */
@@ -136,7 +139,8 @@ __kernel_cosl(long double x, long double y)
case 2: index = (hix - 0x3fc30000) >> 14; break;
}
*/
- SET_LDOUBLE_WORDS64(h, ((u_int64_t)hix) << 32, 0);
+ INSERT_WORDS64 (hhi, ((uint64_t)hix) << 32);
+ h = hhi;
l = y - (h - x);
z = l * l;
sin_l = l*(ONE+z*(SSIN1+z*(SSIN2+z*(SSIN3+z*(SSIN4+z*SSIN5)))));
diff --git a/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c b/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c
index fc1ead6597..3ba9d7e907 100644
--- a/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/k_sincosl.c
@@ -100,9 +100,12 @@ __kernel_sincosl(long double x, long double y, long double *sinx, long double *c
{
long double h, l, z, sin_l, cos_l_m1;
int64_t ix;
- u_int32_t tix, hix, index;
- GET_LDOUBLE_MSW64 (ix, x);
- tix = ((u_int64_t)ix) >> 32;
+ uint32_t tix, hix, index;
+ double xhi, hhi;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (ix, xhi);
+ tix = ((uint64_t)ix) >> 32;
tix &= ~0x80000000; /* tix = |x|'s high 32 bits */
if (tix < 0x3fc30000) /* |x| < 0.1484375 */
{
@@ -164,7 +167,8 @@ __kernel_sincosl(long double x, long double y, long double *sinx, long double *c
case 2: index = (hix - 0x3fc30000) >> 14; break;
}
*/
- SET_LDOUBLE_WORDS64(h, ((u_int64_t)hix) << 32, 0);
+ INSERT_WORDS64 (hhi, ((uint64_t)hix) << 32);
+ h = hhi;
if (iy)
l = y - (h - x);
else
diff --git a/sysdeps/ieee754/ldbl-128ibm/k_sinl.c b/sysdeps/ieee754/ldbl-128ibm/k_sinl.c
index f17c0ae5db..b12ea134d5 100644
--- a/sysdeps/ieee754/ldbl-128ibm/k_sinl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/k_sinl.c
@@ -82,7 +82,10 @@ __kernel_sinl(long double x, long double y, int iy)
long double h, l, z, sin_l, cos_l_m1;
int64_t ix;
u_int32_t tix, hix, index;
- GET_LDOUBLE_MSW64 (ix, x);
+ double xhi, hhi;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (ix, xhi);
tix = ((u_int64_t)ix) >> 32;
tix &= ~0x80000000; /* tix = |x|'s high 32 bits */
if (tix < 0x3fc30000) /* |x| < 0.1484375 */
@@ -132,7 +135,8 @@ __kernel_sinl(long double x, long double y, int iy)
case 2: index = (hix - 0x3fc30000) >> 14; break;
}
*/
- SET_LDOUBLE_WORDS64(h, ((u_int64_t)hix) << 32, 0);
+ INSERT_WORDS64 (hhi, ((uint64_t)hix) << 32);
+ h = hhi;
if (iy)
l = (ix < 0 ? -y : y) - (h - x);
else
diff --git a/sysdeps/ieee754/ldbl-128ibm/k_tanl.c b/sysdeps/ieee754/ldbl-128ibm/k_tanl.c
index 1f6bad241b..bcf8b5e7d6 100644
--- a/sysdeps/ieee754/ldbl-128ibm/k_tanl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/k_tanl.c
@@ -85,17 +85,17 @@ long double
__kernel_tanl (long double x, long double y, int iy)
{
long double z, r, v, w, s;
- int32_t ix, sign;
- ieee854_long_double_shape_type u, u1;
+ int32_t ix, sign, hx, lx;
+ double xhi;
- u.value = x;
- ix = u.parts32.w0 & 0x7fffffff;
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS (hx, lx, xhi);
+ ix = hx & 0x7fffffff;
if (ix < 0x3c600000) /* x < 2**-57 */
{
- if ((int) x == 0)
- { /* generate inexact */
- if ((ix | u.parts32.w1 | (u.parts32.w2 & 0x7fffffff) | u.parts32.w3
- | (iy + 1)) == 0)
+ if ((int) x == 0) /* generate inexact */
+ {
+ if ((ix | lx | (iy + 1)) == 0)
return one / fabs (x);
else
return (iy == 1) ? x : -one / x;
@@ -103,7 +103,7 @@ __kernel_tanl (long double x, long double y, int iy)
}
if (ix >= 0x3fe59420) /* |x| >= 0.6743316650390625 */
{
- if ((u.parts32.w0 & 0x80000000) != 0)
+ if ((hx & 0x80000000) != 0)
{
x = -x;
y = -y;
@@ -139,15 +139,13 @@ __kernel_tanl (long double x, long double y, int iy)
{ /* if allow error up to 2 ulp,
simply return -1.0/(x+r) here */
/* compute -1.0/(x+r) accurately */
- u1.value = w;
- u1.parts32.w2 = 0;
- u1.parts32.w3 = 0;
- v = r - (u1.value - x); /* u1+v = r+x */
+ long double u1, z1;
+
+ u1 = ldbl_high (w);
+ v = r - (u1 - x); /* u1+v = r+x */
z = -1.0 / w;
- u.value = z;
- u.parts32.w2 = 0;
- u.parts32.w3 = 0;
- s = 1.0 + u.value * u1.value;
- return u.value + z * (s + u.value * v);
+ z1 = ldbl_high (z);
+ s = 1.0 + z1 * u1;
+ return z1 + z * (s + z1 * v);
}
}
diff --git a/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c b/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c
index 00e44b8b92..e46fde74fc 100644
--- a/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c
+++ b/sysdeps/ieee754/ldbl-128ibm/ldbl2mpn.c
@@ -36,34 +36,44 @@ __mpn_extract_long_double (mp_ptr res_ptr, mp_size_t size,
union ibm_extended_long_double u;
unsigned long long hi, lo;
int ediff;
- u.d = value;
- *is_neg = u.ieee.negative;
- *expt = (int) u.ieee.exponent - IBM_EXTENDED_LONG_DOUBLE_BIAS;
+ u.ld = value;
- lo = ((long long) u.ieee.mantissa2 << 32) | u.ieee.mantissa3;
- hi = ((long long) u.ieee.mantissa0 << 32) | u.ieee.mantissa1;
- /* If the lower double is not a denomal or zero then set the hidden
+ *is_neg = u.d[0].ieee.negative;
+ *expt = (int) u.d[0].ieee.exponent - IEEE754_DOUBLE_BIAS;
+
+ lo = ((long long) u.d[1].ieee.mantissa0 << 32) | u.d[1].ieee.mantissa1;
+ hi = ((long long) u.d[0].ieee.mantissa0 << 32) | u.d[0].ieee.mantissa1;
+
+ /* If the lower double is not a denormal or zero then set the hidden
53rd bit. */
- if (u.ieee.exponent2 > 0)
- {
- lo |= 1LL << 52;
+ if (u.d[1].ieee.exponent != 0)
+ lo |= 1ULL << 52;
+ else
+ lo = lo << 1;
- /* The lower double is normalized separately from the upper. We may
- need to adjust the lower manitissa to reflect this. */
- ediff = u.ieee.exponent - u.ieee.exponent2;
- if (ediff > 53)
- lo = lo >> (ediff-53);
+ /* The lower double is normalized separately from the upper. We may
+ need to adjust the lower manitissa to reflect this. */
+ ediff = u.d[0].ieee.exponent - u.d[1].ieee.exponent - 53;
+ if (ediff > 0)
+ {
+ if (ediff < 64)
+ lo = lo >> ediff;
+ else
+ lo = 0;
}
+ else if (ediff < 0)
+ lo = lo << -ediff;
+
/* The high double may be rounded and the low double reflects the
difference between the long double and the rounded high double
value. This is indicated by a differnce between the signs of the
high and low doubles. */
- if ((u.ieee.negative != u.ieee.negative2)
- && ((u.ieee.exponent2 != 0) && (lo != 0L)))
+ if (u.d[0].ieee.negative != u.d[1].ieee.negative
+ && lo != 0)
{
lo = (1ULL << 53) - lo;
- if (hi == 0LL)
+ if (hi == 0)
{
/* we have a borrow from the hidden bit, so shift left 1. */
hi = 0x0ffffffffffffeLL | (lo >> 51);
@@ -92,7 +102,7 @@ __mpn_extract_long_double (mp_ptr res_ptr, mp_size_t size,
#define NUM_LEADING_ZEROS (BITS_PER_MP_LIMB \
- (LDBL_MANT_DIG - ((N - 1) * BITS_PER_MP_LIMB)))
- if (u.ieee.exponent == 0)
+ if (u.d[0].ieee.exponent == 0)
{
/* A biased exponent of zero is a special case.
Either it is a zero or it is a denormal number. */
diff --git a/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h b/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
index 046293e598..1b6e27a9ff 100644
--- a/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
+++ b/sysdeps/ieee754/ldbl-128ibm/math_ldbl.h
@@ -2,10 +2,13 @@
#error "Never use <math_ldbl.h> directly; include <math_private.h> instead."
#endif
-#include <sysdeps/ieee754/ldbl-128/math_ldbl.h>
#include <ieee754.h>
#include <stdint.h>
+/* To suit our callers we return *hi64 and *lo64 as if they came from
+ an ieee854 112 bit mantissa, that is, 48 bits in *hi64 (plus one
+ implicit bit) and 64 bits in *lo64. */
+
static inline void
ldbl_extract_mantissa (int64_t *hi64, uint64_t *lo64, int *exp, long double x)
{
@@ -14,77 +17,119 @@ ldbl_extract_mantissa (int64_t *hi64, uint64_t *lo64, int *exp, long double x)
the number before the decimal point and the second implicit bit
as bit 53 of the mantissa. */
uint64_t hi, lo;
- int ediff;
- union ibm_extended_long_double eldbl;
- eldbl.d = x;
- *exp = eldbl.ieee.exponent - IBM_EXTENDED_LONG_DOUBLE_BIAS;
-
- lo = ((int64_t)eldbl.ieee.mantissa2 << 32) | eldbl.ieee.mantissa3;
- hi = ((int64_t)eldbl.ieee.mantissa0 << 32) | eldbl.ieee.mantissa1;
- /* If the lower double is not a denomal or zero then set the hidden
- 53rd bit. */
- if (eldbl.ieee.exponent2 > 0x001)
- {
- lo |= (1ULL << 52);
- lo = lo << 7; /* pre-shift lo to match ieee854. */
- /* The lower double is normalized separately from the upper. We
- may need to adjust the lower manitissa to reflect this. */
- ediff = eldbl.ieee.exponent - eldbl.ieee.exponent2;
- if (ediff > 53)
- lo = lo >> (ediff-53);
- hi |= (1ULL << 52);
- }
+ union ibm_extended_long_double u;
- if ((eldbl.ieee.negative != eldbl.ieee.negative2)
- && ((eldbl.ieee.exponent2 != 0) && (lo != 0LL)))
+ u.ld = x;
+ *exp = u.d[0].ieee.exponent - IEEE754_DOUBLE_BIAS;
+
+ lo = ((uint64_t) u.d[1].ieee.mantissa0 << 32) | u.d[1].ieee.mantissa1;
+ hi = ((uint64_t) u.d[0].ieee.mantissa0 << 32) | u.d[0].ieee.mantissa1;
+
+ if (u.d[0].ieee.exponent != 0)
{
- hi--;
- lo = (1ULL << 60) - lo;
- if (hi < (1ULL << 52))
+ int ediff;
+
+ /* If not a denormal or zero then we have an implicit 53rd bit. */
+ hi |= (uint64_t) 1 << 52;
+
+ if (u.d[1].ieee.exponent != 0)
+ lo |= (uint64_t) 1 << 52;
+ else
+ /* A denormal is to be interpreted as having a biased exponent
+ of 1. */
+ lo = lo << 1;
+
+ /* We are going to shift 4 bits out of hi later, because we only
+ want 48 bits in *hi64. That means we want 60 bits in lo, but
+ we currently only have 53. Shift the value up. */
+ lo = lo << 7;
+
+ /* The lower double is normalized separately from the upper.
+ We may need to adjust the lower mantissa to reflect this.
+ The difference between the exponents can be larger than 53
+ when the low double is much less than 1ULP of the upper
+ (in which case there are significant bits, all 0's or all
+ 1's, between the two significands). The difference between
+ the exponents can be less than 53 when the upper double
+ exponent is nearing its minimum value (in which case the low
+ double is denormal ie. has an exponent of zero). */
+ ediff = u.d[0].ieee.exponent - u.d[1].ieee.exponent - 53;
+ if (ediff > 0)
+ {
+ if (ediff < 64)
+ lo = lo >> ediff;
+ else
+ lo = 0;
+ }
+ else if (ediff < 0)
+ lo = lo << -ediff;
+
+ if (u.d[0].ieee.negative != u.d[1].ieee.negative
+ && lo != 0)
{
- /* we have a borrow from the hidden bit, so shift left 1. */
- hi = (hi << 1) | (lo >> 59);
- lo = 0xfffffffffffffffLL & (lo << 1);
- *exp = *exp - 1;
+ hi--;
+ lo = ((uint64_t) 1 << 60) - lo;
+ if (hi < (uint64_t) 1 << 52)
+ {
+ /* We have a borrow from the hidden bit, so shift left 1. */
+ hi = (hi << 1) | (lo >> 59);
+ lo = (((uint64_t) 1 << 60) - 1) & (lo << 1);
+ *exp = *exp - 1;
+ }
}
}
+ else
+ /* If the larger magnitude double is denormal then the smaller
+ one must be zero. */
+ hi = hi << 1;
+
*lo64 = (hi << 60) | lo;
*hi64 = hi >> 4;
}
static inline long double
-ldbl_insert_mantissa (int sign, int exp, int64_t hi64, u_int64_t lo64)
+ldbl_insert_mantissa (int sign, int exp, int64_t hi64, uint64_t lo64)
{
union ibm_extended_long_double u;
- unsigned long hidden2, lzcount;
- unsigned long long hi, lo;
+ int expnt2;
+ uint64_t hi, lo;
+
+ u.d[0].ieee.negative = sign;
+ u.d[1].ieee.negative = sign;
+ u.d[0].ieee.exponent = exp + IEEE754_DOUBLE_BIAS;
+ u.d[1].ieee.exponent = 0;
+ expnt2 = exp - 53 + IEEE754_DOUBLE_BIAS;
- u.ieee.negative = sign;
- u.ieee.negative2 = sign;
- u.ieee.exponent = exp + IBM_EXTENDED_LONG_DOUBLE_BIAS;
- u.ieee.exponent2 = exp-53 + IBM_EXTENDED_LONG_DOUBLE_BIAS;
/* Expect 113 bits (112 bits + hidden) right justified in two longs.
The low order 53 bits (52 + hidden) go into the lower double */
- lo = (lo64 >> 7)& ((1ULL << 53) - 1);
- hidden2 = (lo64 >> 59) & 1ULL;
+ lo = (lo64 >> 7) & (((uint64_t) 1 << 53) - 1);
/* The high order 53 bits (52 + hidden) go into the upper double */
- hi = (lo64 >> 60) & ((1ULL << 11) - 1);
- hi |= (hi64 << 4);
+ hi = lo64 >> 60;
+ hi |= hi64 << 4;
- if (lo != 0LL)
+ if (lo != 0)
{
- /* hidden2 bit of low double controls rounding of the high double.
- If hidden2 is '1' then round up hi and adjust lo (2nd mantissa)
+ int lzcount;
+
+ /* hidden bit of low double controls rounding of the high double.
+ If hidden is '1' and either the explicit mantissa is non-zero
+ or hi is odd, then round up hi and adjust lo (2nd mantissa)
plus change the sign of the low double to compensate. */
- if (hidden2)
+ if ((lo & ((uint64_t) 1 << 52)) != 0
+ && ((hi & 1) != 0 || (lo & (((uint64_t) 1 << 52) - 1)) != 0))
{
hi++;
- u.ieee.negative2 = !sign;
- lo = (1ULL << 53) - lo;
+ if ((hi & ((uint64_t) 1 << 53)) != 0)
+ {
+ hi = hi >> 1;
+ u.d[0].ieee.exponent++;
+ }
+ u.d[1].ieee.negative = !sign;
+ lo = ((uint64_t) 1 << 53) - lo;
}
- /* The hidden bit of the lo mantissa is zero so we need to
- normalize the it for the low double. Shift it left until the
- hidden bit is '1' then adjust the 2nd exponent accordingly. */
+
+ /* Normalize the low double. Shift the mantissa left until
+ the hidden bit is '1' and adjust the exponent accordingly. */
if (sizeof (lo) == sizeof (long))
lzcount = __builtin_clzl (lo);
@@ -92,35 +137,31 @@ ldbl_insert_mantissa (int sign, int exp, int64_t hi64, u_int64_t lo64)
lzcount = __builtin_clzl ((long) (lo >> 32));
else
lzcount = __builtin_clzl ((long) lo) + 32;
- lzcount = lzcount - 11;
- if (lzcount > 0)
+ lzcount = lzcount - (64 - 53);
+ lo <<= lzcount;
+ expnt2 -= lzcount;
+
+ if (expnt2 >= 1)
+ /* Not denormal. */
+ u.d[1].ieee.exponent = expnt2;
+ else
{
- int expnt2 = u.ieee.exponent2 - lzcount;
- if (expnt2 >= 1)
- {
- /* Not denormal. Normalize and set low exponent. */
- lo = lo << lzcount;
- u.ieee.exponent2 = expnt2;
- }
+ /* Is denormal. Note that biased exponent of 0 is treated
+ as if it was 1, hence the extra shift. */
+ if (expnt2 > -53)
+ lo >>= 1 - expnt2;
else
- {
- /* Is denormal. */
- lo = lo << (lzcount + expnt2);
- u.ieee.exponent2 = 0;
- }
+ lo = 0;
}
}
else
- {
- u.ieee.negative2 = 0;
- u.ieee.exponent2 = 0;
- }
+ u.d[1].ieee.negative = 0;
- u.ieee.mantissa3 = lo & ((1ULL << 32) - 1);
- u.ieee.mantissa2 = (lo >> 32) & ((1ULL << 20) - 1);
- u.ieee.mantissa1 = hi & ((1ULL << 32) - 1);
- u.ieee.mantissa0 = (hi >> 32) & ((1ULL << 20) - 1);
- return u.d;
+ u.d[1].ieee.mantissa1 = lo;
+ u.d[1].ieee.mantissa0 = lo >> 32;
+ u.d[0].ieee.mantissa1 = hi;
+ u.d[0].ieee.mantissa0 = hi >> 32;
+ return u.ld;
}
/* Handy utility functions to pack/unpack/cononicalize and find the nearbyint
@@ -129,18 +170,18 @@ static inline long double
default_ldbl_pack (double a, double aa)
{
union ibm_extended_long_double u;
- u.dd[0] = a;
- u.dd[1] = aa;
- return u.d;
+ u.d[0].d = a;
+ u.d[1].d = aa;
+ return u.ld;
}
static inline void
default_ldbl_unpack (long double l, double *a, double *aa)
{
union ibm_extended_long_double u;
- u.d = l;
- *a = u.dd[0];
- *aa = u.dd[1];
+ u.ld = l;
+ *a = u.d[0].d;
+ *aa = u.d[1].d;
}
#ifndef ldbl_pack
@@ -150,6 +191,9 @@ default_ldbl_unpack (long double l, double *a, double *aa)
# define ldbl_unpack default_ldbl_unpack
#endif
+/* Extract high double. */
+#define ldbl_high(x) ((double) x)
+
/* Convert a finite long double to canonical form.
Does not handle +/-Inf properly. */
static inline void
@@ -163,13 +207,13 @@ ldbl_canonicalize (double *a, double *aa)
*aa = xl;
}
-/* Simple inline nearbyint (double) function .
+/* Simple inline nearbyint (double) function.
Only works in the default rounding mode
but is useful in long double rounding functions. */
static inline double
ldbl_nearbyint (double a)
{
- double two52 = 0x10000000000000LL;
+ double two52 = 0x1p52;
if (__builtin_expect ((__builtin_fabs (a) < two52), 1))
{
diff --git a/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c b/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
index 3df42c5666..c96852dfd9 100644
--- a/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/mpn2ldbl.c
@@ -33,11 +33,11 @@ __mpn_construct_long_double (mp_srcptr frac_ptr, int expt, int sign)
unsigned long long hi, lo;
int exponent2;
- u.ieee.negative = sign;
- u.ieee.negative2 = sign;
- u.ieee.exponent = expt + IBM_EXTENDED_LONG_DOUBLE_BIAS;
- u.ieee.exponent2 = 0;
- exponent2 = expt - 53 + IBM_EXTENDED_LONG_DOUBLE_BIAS;
+ u.d[0].ieee.negative = sign;
+ u.d[1].ieee.negative = sign;
+ u.d[0].ieee.exponent = expt + IEEE754_DOUBLE_BIAS;
+ u.d[1].ieee.exponent = 0;
+ exponent2 = expt - 53 + IEEE754_DOUBLE_BIAS;
#if BITS_PER_MP_LIMB == 32
/* The low order 53 bits (52 + hidden) go into the lower double */
@@ -69,19 +69,19 @@ __mpn_construct_long_double (mp_srcptr frac_ptr, int expt, int sign)
else
lzcount = __builtin_clzl ((long) val) + 32;
if (hi)
- lzcount = lzcount - 11;
+ lzcount = lzcount - (64 - 53);
else
- lzcount = lzcount + 42;
+ lzcount = lzcount + 53 - (64 - 53);
- if (lzcount > u.ieee.exponent)
+ if (lzcount > u.d[0].ieee.exponent)
{
- lzcount = u.ieee.exponent;
- u.ieee.exponent = 0;
+ lzcount = u.d[0].ieee.exponent;
+ u.d[0].ieee.exponent = 0;
exponent2 -= lzcount;
}
else
{
- u.ieee.exponent -= (lzcount - 1);
+ u.d[0].ieee.exponent -= (lzcount - 1);
exponent2 -= (lzcount - 1);
}
@@ -97,29 +97,27 @@ __mpn_construct_long_double (mp_srcptr frac_ptr, int expt, int sign)
}
}
- if (lo != 0L)
+ if (lo != 0)
{
- /* hidden2 bit of low double controls rounding of the high double.
- If hidden2 is '1' and either the explicit mantissa is non-zero
+ /* hidden bit of low double controls rounding of the high double.
+ If hidden is '1' and either the explicit mantissa is non-zero
or hi is odd, then round up hi and adjust lo (2nd mantissa)
plus change the sign of the low double to compensate. */
if ((lo & (1LL << 52)) != 0
- && ((hi & 1) != 0 || (lo & ((1LL << 52) - 1))))
+ && ((hi & 1) != 0 || (lo & ((1LL << 52) - 1)) != 0))
{
hi++;
- if ((hi & ((1LL << 52) - 1)) == 0)
+ if ((hi & (1LL << 53)) != 0)
{
- if ((hi & (1LL << 53)) != 0)
- hi -= 1LL << 52;
- u.ieee.exponent++;
+ hi >>= 1;
+ u.d[0].ieee.exponent++;
}
- u.ieee.negative2 = !sign;
+ u.d[1].ieee.negative = !sign;
lo = (1LL << 53) - lo;
}
- /* The hidden bit of the lo mantissa is zero so we need to normalize
- it for the low double. Shift it left until the hidden bit is '1'
- then adjust the 2nd exponent accordingly. */
+ /* Normalize the low double. Shift the mantissa left until
+ the hidden bit is '1' and adjust the exponent accordingly. */
if (sizeof (lo) == sizeof (long))
lzcount = __builtin_clzl (lo);
@@ -127,24 +125,24 @@ __mpn_construct_long_double (mp_srcptr frac_ptr, int expt, int sign)
lzcount = __builtin_clzl ((long) (lo >> 32));
else
lzcount = __builtin_clzl ((long) lo) + 32;
- lzcount = lzcount - 11;
- if (lzcount > 0)
- {
- lo = lo << lzcount;
- exponent2 = exponent2 - lzcount;
- }
+ lzcount = lzcount - (64 - 53);
+ lo <<= lzcount;
+ exponent2 -= lzcount;
+
if (exponent2 > 0)
- u.ieee.exponent2 = exponent2;
- else
+ u.d[1].ieee.exponent = exponent2;
+ else if (exponent2 > -53)
lo >>= 1 - exponent2;
+ else
+ lo = 0;
}
else
- u.ieee.negative2 = 0;
+ u.d[1].ieee.negative = 0;
- u.ieee.mantissa3 = lo & 0xffffffffLL;
- u.ieee.mantissa2 = (lo >> 32) & 0xfffff;
- u.ieee.mantissa1 = hi & 0xffffffffLL;
- u.ieee.mantissa0 = (hi >> 32) & ((1LL << (LDBL_MANT_DIG - 86)) - 1);
+ u.d[1].ieee.mantissa1 = lo;
+ u.d[1].ieee.mantissa0 = lo >> 32;
+ u.d[0].ieee.mantissa1 = hi;
+ u.d[0].ieee.mantissa0 = hi >> 32;
- return u.d;
+ return u.ld;
}
diff --git a/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c b/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
index 247dc20e5a..e0ec422b01 100644
--- a/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
+++ b/sysdeps/ieee754/ldbl-128ibm/printf_fphex.c
@@ -26,31 +26,31 @@ do { \
unsigned long long int num0, num1; \
unsigned long long hi, lo; \
int ediff; \
- union ibm_extended_long_double eldbl; \
- eldbl.d = fpnum.ldbl.d; \
+ union ibm_extended_long_double u; \
+ u.ld = fpnum.ldbl; \
\
assert (sizeof (long double) == 16); \
\
- lo = ((long long)eldbl.ieee.mantissa2 << 32) | eldbl.ieee.mantissa3; \
- hi = ((long long)eldbl.ieee.mantissa0 << 32) | eldbl.ieee.mantissa1; \
+ lo = ((long long)u.d[1].ieee.mantissa0 << 32) | u.d[1].ieee.mantissa1; \
+ hi = ((long long)u.d[0].ieee.mantissa0 << 32) | u.d[0].ieee.mantissa1; \
lo <<= 7; /* pre-shift lo to match ieee854. */ \
- /* If the lower double is not a denomal or zero then set the hidden \
+ /* If the lower double is not a denormal or zero then set the hidden \
53rd bit. */ \
- if (eldbl.ieee.exponent2 != 0) \
+ if (u.d[1].ieee.exponent != 0) \
lo |= (1ULL << (52 + 7)); \
else \
lo <<= 1; \
/* The lower double is normalized separately from the upper. We \
may need to adjust the lower manitissa to reflect this. */ \
- ediff = eldbl.ieee.exponent - eldbl.ieee.exponent2; \
- if (ediff > 53 + 63) \
+ ediff = u.d[0].ieee.exponent - u.d[1].ieee.exponent - 53; \
+ if (ediff > 63) \
lo = 0; \
- else if (ediff > 53) \
- lo = lo >> (ediff - 53); \
- else if (eldbl.ieee.exponent2 == 0 && ediff < 53) \
- lo = lo << (53 - ediff); \
- if (eldbl.ieee.negative != eldbl.ieee.negative2 \
- && (eldbl.ieee.exponent2 != 0 || lo != 0L)) \
+ else if (ediff > 0) \
+ lo = lo >> ediff; \
+ else if (ediff < 0) \
+ lo = lo << -ediff; \
+ if (u.d[0].ieee.negative != u.d[1].ieee.negative \
+ && lo != 0) \
{ \
lo = (1ULL << 60) - lo; \
if (hi == 0L) \
@@ -58,7 +58,7 @@ do { \
/* we have a borrow from the hidden bit, so shift left 1. */ \
hi = 0xffffffffffffeLL | (lo >> 59); \
lo = 0xfffffffffffffffLL & (lo << 1); \
- eldbl.ieee.exponent--; \
+ u.d[0].ieee.exponent--; \
} \
else \
hi--; \
@@ -109,9 +109,9 @@ do { \
*--wnumstr = L'0'; \
} \
\
- leading = eldbl.ieee.exponent == 0 ? '0' : '1'; \
+ leading = u.d[0].ieee.exponent == 0 ? '0' : '1'; \
\
- exponent = eldbl.ieee.exponent; \
+ exponent = u.d[0].ieee.exponent; \
\
if (exponent == 0) \
{ \
@@ -121,18 +121,18 @@ do { \
{ \
/* This is a denormalized number. */ \
expnegative = 1; \
- exponent = IBM_EXTENDED_LONG_DOUBLE_BIAS - 1; \
+ exponent = IEEE754_DOUBLE_BIAS - 1; \
} \
} \
- else if (exponent >= IBM_EXTENDED_LONG_DOUBLE_BIAS) \
+ else if (exponent >= IEEE754_DOUBLE_BIAS) \
{ \
expnegative = 0; \
- exponent -= IBM_EXTENDED_LONG_DOUBLE_BIAS; \
+ exponent -= IEEE754_DOUBLE_BIAS; \
} \
else \
{ \
expnegative = 1; \
- exponent = -(exponent - IBM_EXTENDED_LONG_DOUBLE_BIAS); \
+ exponent = -(exponent - IEEE754_DOUBLE_BIAS); \
} \
} while (0)
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c b/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c
index a833457eab..63c6edbb1a 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_asinhl.c
@@ -38,7 +38,10 @@ long double __asinhl(long double x)
{
long double t,w;
int64_t hx,ix;
- GET_LDOUBLE_MSW64(hx,x);
+ double xhi;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
ix = hx&0x7fffffffffffffffLL;
if(ix>=0x7ff0000000000000LL) return x+x; /* x is inf or NaN */
if(ix< 0x3e20000000000000LL) { /* |x|<2**-29 */
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_atanl.c b/sysdeps/ieee754/ldbl-128ibm/s_atanl.c
index 2a36d16bb4..41dde23998 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_atanl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_atanl.c
@@ -173,23 +173,20 @@ static const long double
long double
__atanl (long double x)
{
- int k, sign;
+ int32_t k, sign, lx;
long double t, u, p, q;
- ieee854_long_double_shape_type s;
+ double xhi;
- s.value = x;
- k = s.parts32.w0;
- if (k & 0x80000000)
- sign = 1;
- else
- sign = 0;
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS (k, lx, xhi);
+ sign = k & 0x80000000;
/* Check for IEEE special cases. */
k &= 0x7fffffff;
if (k >= 0x7ff00000)
{
/* NaN. */
- if ((k & 0xfffff) | s.parts32.w1 )
+ if (((k - 0x7ff00000) | lx) != 0)
return (x + x);
/* Infinity. */
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_cosl.c b/sysdeps/ieee754/ldbl-128ibm/s_cosl.c
index 23148392f1..54c6cc77d2 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_cosl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_cosl.c
@@ -53,9 +53,11 @@ long double __cosl(long double x)
{
long double y[2],z=0.0L;
int64_t n, ix;
+ double xhi;
/* High word of x. */
- GET_LDOUBLE_MSW64(ix,x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (ix, xhi);
/* |x| ~< pi/4 */
ix &= 0x7fffffffffffffffLL;
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_erfl.c b/sysdeps/ieee754/ldbl-128ibm/s_erfl.c
index 6a4475ed6b..95dc415845 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_erfl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_erfl.c
@@ -101,6 +101,7 @@
* erfc/erf(NaN) is NaN
*/
+#include <errno.h>
#include <math.h>
#include <math_private.h>
#include <math_ldbl_opt.h>
@@ -760,16 +761,16 @@ long double
__erfl (long double x)
{
long double a, y, z;
- int32_t i, ix, sign;
- ieee854_long_double_shape_type u;
+ int32_t i, ix, hx;
+ double xhi;
- u.value = x;
- sign = u.parts32.w0;
- ix = sign & 0x7fffffff;
+ xhi = ldbl_high (x);
+ GET_HIGH_WORD (hx, xhi);
+ ix = hx & 0x7fffffff;
if (ix >= 0x7ff00000)
{ /* erf(nan)=nan */
- i = ((sign & 0xfff00000) >> 31) << 1;
+ i = ((uint32_t) hx >> 31) << 1;
return (long double) (1 - i) + one / x; /* erf(+-inf)=+-1 */
}
@@ -778,7 +779,7 @@ __erfl (long double x)
if (ix >= 0x4039A0DE)
{
/* __erfcl (x) underflows if x > 25.6283 */
- if (sign)
+ if ((hx & 0x80000000) == 0)
return one-tiny;
else
return tiny-one;
@@ -789,8 +790,9 @@ __erfl (long double x)
return (one - y);
}
}
- u.parts32.w0 = ix;
- a = u.value;
+ a = x;
+ if ((hx & 0x80000000) != 0)
+ a = -a;
z = x * x;
if (ix < 0x3fec0000) /* a < 0.875 */
{
@@ -814,7 +816,7 @@ __erfl (long double x)
y = erf_const + neval (a, TN2, NTN2) / deval (a, TD2, NTD2);
}
- if (sign & 0x80000000) /* x < 0 */
+ if (hx & 0x80000000) /* x < 0 */
y = -y;
return( y );
}
@@ -824,18 +826,18 @@ long double
__erfcl (long double x)
{
long double y, z, p, r;
- int32_t i, ix, sign;
- ieee854_long_double_shape_type u;
+ int32_t i, ix;
+ uint32_t hx;
+ double xhi;
- u.value = x;
- sign = u.parts32.w0;
- ix = sign & 0x7fffffff;
- u.parts32.w0 = ix;
+ xhi = ldbl_high (x);
+ GET_HIGH_WORD (hx, xhi);
+ ix = hx & 0x7fffffff;
if (ix >= 0x7ff00000)
{ /* erfc(nan)=nan */
/* erfc(+-inf)=0,2 */
- return (long double) (((u_int32_t) sign >> 31) << 1) + one / x;
+ return (long double) ((hx >> 31) << 1) + one / x;
}
if (ix < 0x3fd00000) /* |x| <1/4 */
@@ -846,7 +848,8 @@ __erfcl (long double x)
}
if (ix < 0x3ff40000) /* 1.25 */
{
- x = u.value;
+ if ((hx & 0x80000000) != 0)
+ x = -x;
i = 8.0 * x;
switch (i)
{
@@ -891,7 +894,7 @@ __erfcl (long double x)
y += C20a;
break;
}
- if (sign & 0x80000000)
+ if (hx & 0x80000000)
y = 2.0L - y;
return y;
}
@@ -899,10 +902,11 @@ __erfcl (long double x)
if (ix < 0x405ac000)
{
/* x < -9 */
- if ((ix >= 0x40220000) && (sign & 0x80000000))
+ if (hx >= 0xc0220000)
return two - tiny;
- x = fabsl (x);
+ if ((hx & 0x80000000) != 0)
+ x = -x;
z = one / (x * x);
i = 8.0 / x;
switch (i)
@@ -933,22 +937,26 @@ __erfcl (long double x)
p = neval (z, RNr8, NRNr8) / deval (z, RDr8, NRDr8);
break;
}
- u.value = x;
- u.parts32.w3 = 0;
- u.parts32.w2 = 0;
- u.parts32.w1 &= 0xf8000000;
- z = u.value;
+ z = (float) x;
r = __ieee754_expl (-z * z - 0.5625) *
__ieee754_expl ((z - x) * (z + x) + p);
- if ((sign & 0x80000000) == 0)
- return r / x;
+ if ((hx & 0x80000000) == 0)
+ {
+ long double ret = r / x;
+ if (ret == 0)
+ __set_errno (ERANGE);
+ return ret;
+ }
else
return two - r / x;
}
else
{
- if ((sign & 0x80000000) == 0)
- return tiny * tiny;
+ if ((hx & 0x80000000) == 0)
+ {
+ __set_errno (ERANGE);
+ return tiny * tiny;
+ }
else
return two - tiny;
}
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c b/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c
index 8808dcd896..007e785346 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_expm1l.c
@@ -92,19 +92,19 @@ long double
__expm1l (long double x)
{
long double px, qx, xx;
- int32_t ix, sign;
- ieee854_long_double_shape_type u;
+ int32_t ix, lx, sign;
int k;
+ double xhi;
/* Detect infinity and NaN. */
- u.value = x;
- ix = u.parts32.w0;
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS (ix, lx, xhi);
sign = ix & 0x80000000;
ix &= 0x7fffffff;
if (ix >= 0x7ff00000)
{
/* Infinity. */
- if (((ix & 0xfffff) | u.parts32.w1 | (u.parts32.w2&0x7fffffff) | u.parts32.w3) == 0)
+ if (((ix - 0x7ff00000) | lx) == 0)
{
if (sign)
return -1.0L;
@@ -116,7 +116,7 @@ __expm1l (long double x)
}
/* expm1(+- 0) = +- 0. */
- if ((ix == 0) && (u.parts32.w1 | (u.parts32.w2&0x7fffffff) | u.parts32.w3) == 0)
+ if ((ix | lx) == 0)
return x;
/* Overflow. */
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c b/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c
index 99146d8021..c801c97065 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_fabsl.c
@@ -29,10 +29,16 @@ static char rcsid[] = "$NetBSD: $";
long double __fabsl(long double x)
{
u_int64_t hx, lx;
- GET_LDOUBLE_WORDS64(hx,lx,x);
+ double xhi, xlo;
+
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
+ EXTRACT_WORDS64 (lx, xlo);
lx = lx ^ ( hx & 0x8000000000000000LL );
hx = hx & 0x7fffffffffffffffLL;
- SET_LDOUBLE_WORDS64(x,hx,lx);
+ INSERT_WORDS64 (xhi, hx);
+ INSERT_WORDS64 (xlo, lx);
+ x = ldbl_pack (xhi, xlo);
return x;
}
long_double_symbol (libm, __fabsl, fabsl);
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_finitel.c b/sysdeps/ieee754/ldbl-128ibm/s_finitel.c
index 8edb34154d..7b4655fadb 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_finitel.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_finitel.c
@@ -29,10 +29,14 @@ static char rcsid[] = "$NetBSD: $";
int
___finitel (long double x)
{
- int64_t hx;
- GET_LDOUBLE_MSW64(hx,x);
- return (int)((u_int64_t)((hx&0x7fffffffffffffffLL)
- -0x7ff0000000000000LL)>>63);
+ uint64_t hx;
+ double xhi;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
+ hx &= 0x7fffffffffffffffLL;
+ hx -= 0x7ff0000000000000LL;
+ return hx >> 63;
}
hidden_ver (___finitel, __finitel)
weak_alias (___finitel, ____finitel)
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c b/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c
index f4a90b08c7..90586e822e 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_fpclassifyl.c
@@ -46,8 +46,10 @@ ___fpclassifyl (long double x)
{
u_int64_t hx, lx;
int retval = FP_NORMAL;
+ double xhi, xlo;
- GET_LDOUBLE_WORDS64 (hx, lx, x);
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
if ((hx & 0x7ff0000000000000ULL) == 0x7ff0000000000000ULL) {
/* +/-NaN or +/-Inf */
if (hx & 0x000fffffffffffffULL) {
@@ -65,6 +67,7 @@ ___fpclassifyl (long double x)
retval = FP_NORMAL;
} else {
if ((hx & 0x7ff0000000000000ULL) == 0x0360000000000000ULL) {
+ EXTRACT_WORDS64 (lx, xlo);
if ((lx & 0x7fffffffffffffff) /* lower is non-zero */
&& ((lx^hx) & 0x8000000000000000ULL)) { /* and sign differs */
/* +/- denormal */
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c b/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c
index 3ac5374116..7e40663fd4 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_frexpl.c
@@ -36,16 +36,21 @@ two107 = 162259276829213363391578010288128.0; /* 0x4670000000000000, 0 */
long double __frexpl(long double x, int *eptr)
{
- u_int64_t hx, lx, ix, ixl;
+ uint64_t hx, lx, ix, ixl;
int64_t explo;
- GET_LDOUBLE_WORDS64(hx,lx,x);
+ double xhi, xlo;
+
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
+ EXTRACT_WORDS64 (lx, xlo);
ixl = 0x7fffffffffffffffULL&lx;
ix = 0x7fffffffffffffffULL&hx;
*eptr = 0;
- if(ix>=0x7ff0000000000000ULL||((ix|ixl)==0)) return x; /* 0,inf,nan */
+ if(ix>=0x7ff0000000000000ULL||ix==0) return x; /* 0,inf,nan */
if (ix<0x0010000000000000ULL) { /* subnormal */
x *= two107;
- GET_LDOUBLE_MSW64(hx,x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
ix = hx&0x7fffffffffffffffULL;
*eptr = -107;
}
@@ -54,7 +59,7 @@ long double __frexpl(long double x, int *eptr)
if (ixl != 0ULL) {
explo = (ixl>>52) - (ix>>52) + 0x3fe;
if ((ixl&0x7ff0000000000000ULL) == 0LL) {
- /* the lower double is a denomal so we need to correct its
+ /* the lower double is a denormal so we need to correct its
mantissa and perhaps its exponent. */
int cnt;
@@ -73,7 +78,9 @@ long double __frexpl(long double x, int *eptr)
lx = 0ULL;
hx = (hx&0x800fffffffffffffULL) | 0x3fe0000000000000ULL;
- SET_LDOUBLE_WORDS64(x,hx,lx);
+ INSERT_WORDS64 (xhi, hx);
+ INSERT_WORDS64 (xlo, lx);
+ x = ldbl_pack (xhi, xlo);
return x;
}
#ifdef IS_IN_libm
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c b/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c
index c8dd9ff98a..54e72c9166 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_isinf_nsl.c
@@ -1,6 +1,7 @@
/*
* __isinf_nsl(x) returns != 0 if x is ±inf, else 0;
* no branching!
+ * slightly dodgy in relying on signed shift right copying sign bit
*/
#include <math.h>
@@ -9,8 +10,14 @@
int
__isinf_nsl (long double x)
{
- int64_t hx,lx;
- GET_LDOUBLE_WORDS64(hx,lx,x);
- return !((lx & 0x7fffffffffffffffLL)
- | ((hx & 0x7fffffffffffffffLL) ^ 0x7ff0000000000000LL));
+ double xhi;
+ int64_t hx, mask;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
+
+ mask = (hx & 0x7fffffffffffffffLL) ^ 0x7ff0000000000000LL;
+ mask |= -mask;
+ mask >>= 63;
+ return ~mask;
}
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c b/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c
index 5f5b0144b2..6a728221fc 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_isinfl.c
@@ -11,6 +11,7 @@ static char rcsid[] = "$NetBSD: $";
/*
* isinfl(x) returns 1 if x is inf, -1 if x is -inf, else 0;
* no branching!
+ * slightly dodgy in relying on signed shift right copying sign bit
*/
#include <math.h>
@@ -20,12 +21,16 @@ static char rcsid[] = "$NetBSD: $";
int
___isinfl (long double x)
{
- int64_t hx,lx;
- GET_LDOUBLE_WORDS64(hx,lx,x);
- lx = (lx & 0x7fffffffffffffffLL);
- lx |= (hx & 0x7fffffffffffffffLL) ^ 0x7ff0000000000000LL;
- lx |= -lx;
- return ~(lx >> 63) & (hx >> 62);
+ double xhi;
+ int64_t hx, mask;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
+
+ mask = (hx & 0x7fffffffffffffffLL) ^ 0x7ff0000000000000LL;
+ mask |= -mask;
+ mask >>= 63;
+ return ~mask & (hx >> 62);
}
hidden_ver (___isinfl, __isinfl)
#ifndef IS_IN_libm
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c b/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c
index 264dec745e..d12f1d3bf5 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_isnanl.c
@@ -29,12 +29,14 @@ static char rcsid[] = "$NetBSD: $";
int
___isnanl (long double x)
{
- int64_t hx;
- int64_t lx __attribute__ ((unused));
- GET_LDOUBLE_WORDS64(hx,lx,x);
- hx &= 0x7fffffffffffffffLL;
- hx = 0x7ff0000000000000LL - hx;
- return (int)((u_int64_t)hx>>63);
+ uint64_t hx;
+ double xhi;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
+ hx &= 0x7fffffffffffffffLL;
+ hx = 0x7ff0000000000000LL - hx;
+ return (int) (hx >> 63);
}
hidden_ver (___isnanl, __isnanl)
#ifndef IS_IN_libm
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c b/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c
index 96fab1aff1..bdd58f8f25 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_issignalingl.c
@@ -22,10 +22,13 @@
int
__issignalingl (long double x)
{
- u_int64_t xi;
+ uint64_t xi;
/* For inspecting NaN status, we only have to look at the first of the pair
of IEEE 754 64-bit precision numbers. */
- GET_LDOUBLE_MSW64 (xi, x);
+ double xhi;
+
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (xi, xhi);
#ifdef HIGH_ORDER_BIT_IS_SET_FOR_SNAN
# error untested
/* We only have to care about the high-order bit of x's significand, because
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_llrintl.c b/sysdeps/ieee754/ldbl-128ibm/s_llrintl.c
index 8560349631..35039737bf 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_llrintl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_llrintl.c
@@ -43,7 +43,7 @@ __llrintl (long double x)
#endif
)
{
- save_round = fegetround ();
+ save_round = __fegetround ();
if (__builtin_expect ((xh == -(double) (-__LONG_LONG_MAX__ - 1)), 0))
{
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c b/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c
index 77c4fdea84..a346383052 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_log1pl.c
@@ -126,19 +126,18 @@ long double
__log1pl (long double xm1)
{
long double x, y, z, r, s;
- ieee854_long_double_shape_type u;
- int32_t hx;
+ double xhi;
+ int32_t hx, lx;
int e;
/* Test for NaN or infinity input. */
- u.value = xm1;
- hx = u.parts32.w0;
+ xhi = ldbl_high (xm1);
+ EXTRACT_WORDS (hx, lx, xhi);
if (hx >= 0x7ff00000)
return xm1;
/* log1p(+- 0) = +- 0. */
- if (((hx & 0x7fffffff) == 0)
- && (u.parts32.w1 | (u.parts32.w2 & 0x7fffffff) | u.parts32.w3) == 0)
+ if (((hx & 0x7fffffff) | lx) == 0)
return xm1;
x = xm1 + 1.0L;
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_logbl.c b/sysdeps/ieee754/ldbl-128ibm/s_logbl.c
index 6cbfcfa1cc..da8d71bdec 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_logbl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_logbl.c
@@ -27,9 +27,10 @@ long double
__logbl (long double x)
{
int64_t hx, rhx;
- int64_t lx __attribute__ ((unused));
+ double xhi;
- GET_LDOUBLE_WORDS64 (hx, lx, x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (hx, xhi);
hx &= 0x7fffffffffffffffLL; /* high |x| */
if (hx == 0)
return -1.0 / fabs (x);
@@ -43,5 +44,6 @@ __logbl (long double x)
}
return (long double) (rhx - 1023);
}
-
+#ifndef __logbl
long_double_symbol (libm, __logbl, logbl);
+#endif
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_lrintl.c b/sysdeps/ieee754/ldbl-128ibm/s_lrintl.c
index 588098d090..49dbd42f5b 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_lrintl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_lrintl.c
@@ -49,7 +49,7 @@ __lrintl (long double x)
#endif
)
{
- save_round = fegetround ();
+ save_round = __fegetround ();
#if __LONG_MAX__ == 2147483647
long long llhi = (long long) xh;
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_modfl.c b/sysdeps/ieee754/ldbl-128ibm/s_modfl.c
index 39de9d4bfb..ed03ce236c 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_modfl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_modfl.c
@@ -37,43 +37,54 @@ long double __modfl(long double x, long double *iptr)
{
int64_t i0,i1,j0;
u_int64_t i;
- GET_LDOUBLE_WORDS64(i0,i1,x);
+ double xhi, xlo;
+
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (i0, xhi);
+ EXTRACT_WORDS64 (i1, xlo);
i1 &= 0x000fffffffffffffLL;
j0 = ((i0>>52)&0x7ff)-0x3ff; /* exponent of x */
if(j0<52) { /* integer part in high x */
if(j0<0) { /* |x|<1 */
/* *iptr = +-0 */
- SET_LDOUBLE_WORDS64(*iptr,i0&0x8000000000000000ULL,0);
+ INSERT_WORDS64 (xhi, i0&0x8000000000000000ULL);
+ *iptr = xhi;
return x;
} else {
i = (0x000fffffffffffffLL)>>j0;
if(((i0&i)|(i1&0x7fffffffffffffffLL))==0) { /* x is integral */
*iptr = x;
/* return +-0 */
- SET_LDOUBLE_WORDS64(x,i0&0x8000000000000000ULL,0);
+ INSERT_WORDS64 (xhi, i0&0x8000000000000000ULL);
+ x = xhi;
return x;
} else {
- SET_LDOUBLE_WORDS64(*iptr,i0&(~i),0);
+ INSERT_WORDS64 (xhi, i0&(~i));
+ *iptr = xhi;
return x - *iptr;
}
}
} else if (j0>103) { /* no fraction part */
*iptr = x*one;
/* We must handle NaNs separately. */
- if (j0 == 0x400 && ((i0 & 0x000fffffffffffffLL) | i1))
+ if ((i0 & 0x7fffffffffffffffLL) > 0x7ff0000000000000LL)
return x*one;
/* return +-0 */
- SET_LDOUBLE_WORDS64(x,i0&0x8000000000000000ULL,0);
+ INSERT_WORDS64 (xhi, i0&0x8000000000000000ULL);
+ x = xhi;
return x;
} else { /* fraction part in low x */
i = -1ULL>>(j0-52);
if((i1&i)==0) { /* x is integral */
*iptr = x;
/* return +-0 */
- SET_LDOUBLE_WORDS64(x,i0&0x8000000000000000ULL,0);
+ INSERT_WORDS64 (xhi, i0&0x8000000000000000ULL);
+ x = xhi;
return x;
} else {
- SET_LDOUBLE_WORDS64(*iptr,i0,i1&(~i));
+ INSERT_WORDS64 (xhi, i0);
+ INSERT_WORDS64 (xlo, i1&(~i));
+ *iptr = ldbl_pack (xhi, xlo);
return x - *iptr;
}
}
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c b/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c
index bfcd11044d..92ced5218b 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_nearbyintl.c
@@ -34,11 +34,11 @@ __nearbyintl (long double x)
fenv_t env;
static const long double TWO52 = 4503599627370496.0L;
union ibm_extended_long_double u;
- u.d = x;
+ u.ld = x;
- if (fabs (u.dd[0]) < TWO52)
+ if (fabs (u.d[0].d) < TWO52)
{
- double high = u.dd[0];
+ double high = u.d[0].d;
feholdexcept (&env);
if (high > 0.0)
{
@@ -52,13 +52,13 @@ __nearbyintl (long double x)
high += TWO52;
if (high == 0.0) high = -0.0;
}
- u.dd[0] = high;
- u.dd[1] = 0.0;
- math_force_eval (u.dd[0]);
- math_force_eval (u.dd[1]);
+ u.d[0].d = high;
+ u.d[1].d = 0.0;
+ math_force_eval (u.d[0]);
+ math_force_eval (u.d[1]);
fesetenv (&env);
}
- else if (fabs (u.dd[1]) < TWO52 && u.dd[1] != 0.0)
+ else if (fabs (u.d[1].d) < TWO52 && u.d[1].d != 0.0)
{
double high, low, tau;
/* In this case we have to round the low double and handle any
@@ -67,57 +67,57 @@ __nearbyintl (long double x)
may already be rounded and the low double may have the
opposite sign to compensate. */
feholdexcept (&env);
- if (u.dd[0] > 0.0)
+ if (u.d[0].d > 0.0)
{
- if (u.dd[1] > 0.0)
+ if (u.d[1].d > 0.0)
{
/* If the high/low doubles are the same sign then simply
round the low double. */
- high = u.dd[0];
- low = u.dd[1];
+ high = u.d[0].d;
+ low = u.d[1].d;
}
- else if (u.dd[1] < 0.0)
+ else if (u.d[1].d < 0.0)
{
/* Else the high double is pre rounded and we need to
adjust for that. */
- tau = __nextafter (u.dd[0], 0.0);
- tau = (u.dd[0] - tau) * 2.0;
- high = u.dd[0] - tau;
- low = u.dd[1] + tau;
+ tau = __nextafter (u.d[0].d, 0.0);
+ tau = (u.d[0].d - tau) * 2.0;
+ high = u.d[0].d - tau;
+ low = u.d[1].d + tau;
}
low += TWO52;
low -= TWO52;
}
- else if (u.dd[0] < 0.0)
+ else if (u.d[0].d < 0.0)
{
- if (u.dd[1] < 0.0)
+ if (u.d[1].d < 0.0)
{
/* If the high/low doubles are the same sign then simply
round the low double. */
- high = u.dd[0];
- low = u.dd[1];
+ high = u.d[0].d;
+ low = u.d[1].d;
}
- else if (u.dd[1] > 0.0)
+ else if (u.d[1].d > 0.0)
{
/* Else the high double is pre rounded and we need to
adjust for that. */
- tau = __nextafter (u.dd[0], 0.0);
- tau = (u.dd[0] - tau) * 2.0;
- high = u.dd[0] - tau;
- low = u.dd[1] + tau;
+ tau = __nextafter (u.d[0].d, 0.0);
+ tau = (u.d[0].d - tau) * 2.0;
+ high = u.d[0].d - tau;
+ low = u.d[1].d + tau;
}
low = TWO52 - low;
low = -(low - TWO52);
}
- u.dd[0] = high + low;
- u.dd[1] = high - u.dd[0] + low;
- math_force_eval (u.dd[0]);
- math_force_eval (u.dd[1]);
+ u.d[0].d = high + low;
+ u.d[1].d = high - u.d[0].d + low;
+ math_force_eval (u.d[0]);
+ math_force_eval (u.d[1]);
fesetenv (&env);
}
- return u.d;
+ return u.ld;
}
long_double_symbol (libm, __nearbyintl, nearbyintl);
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c b/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
index 7e581274a3..c050944c0c 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_nextafterl.c
@@ -30,27 +30,28 @@ static char rcsid[] = "$NetBSD: $";
long double __nextafterl(long double x, long double y)
{
- int64_t hx,hy,ihx,ihy,ilx;
- u_int64_t lx;
- u_int64_t ly __attribute__ ((unused));
+ int64_t hx,hy,ihx,ihy;
+ uint64_t lx;
+ double xhi, xlo, yhi;
- GET_LDOUBLE_WORDS64(hx,lx,x);
- GET_LDOUBLE_WORDS64(hy,ly,y);
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
+ EXTRACT_WORDS64 (lx, xlo);
+ yhi = ldbl_high (y);
+ EXTRACT_WORDS64 (hy, yhi);
ihx = hx&0x7fffffffffffffffLL; /* |hx| */
- ilx = lx&0x7fffffffffffffffLL; /* |lx| */
ihy = hy&0x7fffffffffffffffLL; /* |hy| */
- if((((ihx&0x7ff0000000000000LL)==0x7ff0000000000000LL)&&
- ((ihx&0x000fffffffffffffLL)!=0)) || /* x is nan */
- (((ihy&0x7ff0000000000000LL)==0x7ff0000000000000LL)&&
- ((ihy&0x000fffffffffffffLL)!=0))) /* y is nan */
+ if((ihx>0x7ff0000000000000LL) || /* x is nan */
+ (ihy>0x7ff0000000000000LL)) /* y is nan */
return x+y; /* signal the nan */
if(x==y)
return y; /* x=y, return y */
- if(ihx == 0 && ilx == 0) { /* x == 0 */
- long double u;
+ if(ihx == 0) { /* x == 0 */
+ long double u; /* return +-minsubnormal */
hy = (hy & 0x8000000000000000ULL) | 1;
- SET_LDOUBLE_WORDS64(x,hy,0ULL);/* return +-minsubnormal */
+ INSERT_WORDS64 (yhi, hy);
+ x = yhi;
u = math_opt_barrier (x);
u = u * u;
math_force_eval (u); /* raise underflow flag */
@@ -59,10 +60,16 @@ long double __nextafterl(long double x, long double y)
long double u;
if(x > y) { /* x > y, x -= ulp */
+ /* This isn't the largest magnitude correctly rounded
+ long double as you can see from the lowest mantissa
+ bit being zero. It is however the largest magnitude
+ long double with a 106 bit mantissa, and nextafterl
+ is insane with variable precision. So to make
+ nextafterl sane we assume 106 bit precision. */
if((hx==0xffefffffffffffffLL)&&(lx==0xfc8ffffffffffffeLL))
return x+x; /* overflow, return -inf */
if (hx >= 0x7ff0000000000000LL) {
- SET_LDOUBLE_WORDS64(u,0x7fefffffffffffffLL,0x7c8ffffffffffffeLL);
+ u = 0x1.fffffffffffff7ffffffffffff8p+1023L;
return u;
}
if(ihx <= 0x0360000000000000LL) { /* x <= LDBL_MIN */
@@ -77,16 +84,19 @@ long double __nextafterl(long double x, long double y)
return x;
}
if (ihx < 0x06a0000000000000LL) { /* ulp will denormal */
- SET_LDOUBLE_WORDS64(u,(hx&0x7ff0000000000000LL),0ULL);
+ INSERT_WORDS64 (yhi, hx & (0x7ffLL<<52));
+ u = yhi;
u *= 0x1.0000000000000p-105L;
- } else
- SET_LDOUBLE_WORDS64(u,(hx&0x7ff0000000000000LL)-0x0690000000000000LL,0ULL);
+ } else {
+ INSERT_WORDS64 (yhi, (hx & (0x7ffLL<<52))-(0x069LL<<52));
+ u = yhi;
+ }
return x - u;
} else { /* x < y, x += ulp */
if((hx==0x7fefffffffffffffLL)&&(lx==0x7c8ffffffffffffeLL))
return x+x; /* overflow, return +inf */
- if ((u_int64_t) hx >= 0xfff0000000000000ULL) {
- SET_LDOUBLE_WORDS64(u,0xffefffffffffffffLL,0xfc8ffffffffffffeLL);
+ if ((uint64_t) hx >= 0xfff0000000000000ULL) {
+ u = -0x1.fffffffffffff7ffffffffffff8p+1023L;
return u;
}
if(ihx <= 0x0360000000000000LL) { /* x <= LDBL_MIN */
@@ -103,10 +113,13 @@ long double __nextafterl(long double x, long double y)
return x;
}
if (ihx < 0x06a0000000000000LL) { /* ulp will denormal */
- SET_LDOUBLE_WORDS64(u,(hx&0x7ff0000000000000LL),0ULL);
+ INSERT_WORDS64 (yhi, hx & (0x7ffLL<<52));
+ u = yhi;
u *= 0x1.0000000000000p-105L;
- } else
- SET_LDOUBLE_WORDS64(u,(hx&0x7ff0000000000000LL)-0x0690000000000000LL,0ULL);
+ } else {
+ INSERT_WORDS64 (yhi, (hx & (0x7ffLL<<52))-(0x069LL<<52));
+ u = yhi;
+ }
return x + u;
}
}
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c b/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c
index 7e288a4368..b40cf167f3 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_nexttoward.c
@@ -34,23 +34,22 @@ double __nexttoward(double x, long double y)
{
int32_t hx,ix;
int64_t hy,iy;
- u_int32_t lx;
- u_int64_t ly,uly;
+ uint32_t lx;
+ double yhi;
EXTRACT_WORDS(hx,lx,x);
- GET_LDOUBLE_WORDS64(hy,ly,y);
+ yhi = ldbl_high (y);
+ EXTRACT_WORDS64(hy,yhi);
ix = hx&0x7fffffff; /* |x| */
iy = hy&0x7fffffffffffffffLL; /* |y| */
- uly = ly&0x7fffffffffffffffLL; /* |y| */
if(((ix>=0x7ff00000)&&((ix-0x7ff00000)|lx)!=0) || /* x is nan */
- ((iy>=0x7ff0000000000000LL)&&((iy-0x7ff0000000000000LL)|uly)!=0))
- /* y is nan */
+ iy>0x7ff0000000000000LL) /* y is nan */
return x+y;
if((long double) x==y) return y; /* x=y, return y */
if((ix|lx)==0) { /* x == 0 */
double u;
- INSERT_WORDS(x,(u_int32_t)((hy>>32)&0x80000000),1);/* return +-minsub */
+ INSERT_WORDS(x,(uint32_t)((hy>>32)&0x80000000),1);/* return +-minsub */
u = math_opt_barrier (x);
u = u * u;
math_force_eval (u); /* raise underflow flag */
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c b/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c
index b387a91192..19522f4762 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_nexttowardf.c
@@ -27,16 +27,16 @@ float __nexttowardf(float x, long double y)
{
int32_t hx,ix;
int64_t hy,iy;
- u_int64_t ly, uly;
+ double yhi;
GET_FLOAT_WORD(hx,x);
- GET_LDOUBLE_WORDS64(hy,ly,y);
+ yhi = ldbl_high (y);
+ EXTRACT_WORDS64 (hy, yhi);
ix = hx&0x7fffffff; /* |x| */
iy = hy&0x7fffffffffffffffLL; /* |y| */
- uly = ly&0x7fffffffffffffffLL; /* |y| */
if((ix>0x7f800000) || /* x is nan */
- ((iy>=0x7ff0000000000000LL)&&((iy-0x7ff0000000000000LL)|uly)!=0))
+ (iy>0x7ff0000000000000LL))
/* y is nan */
return x+y;
if((long double) x==y) return y; /* x=y, return y */
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_remquol.c b/sysdeps/ieee754/ldbl-128ibm/s_remquol.c
index f4777a0e1a..195e108ca9 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_remquol.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_remquol.c
@@ -33,20 +33,24 @@ __remquol (long double x, long double y, int *quo)
int64_t hx,hy;
u_int64_t sx,lx,ly,qs;
int cquo;
-
- GET_LDOUBLE_WORDS64 (hx, lx, x);
- GET_LDOUBLE_WORDS64 (hy, ly, y);
+ double xhi, xlo, yhi, ylo;
+
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
+ EXTRACT_WORDS64 (lx, xlo);
+ ldbl_unpack (y, &yhi, &ylo);
+ EXTRACT_WORDS64 (hy, yhi);
+ EXTRACT_WORDS64 (ly, ylo);
sx = hx & 0x8000000000000000ULL;
qs = sx ^ (hy & 0x8000000000000000ULL);
hy &= 0x7fffffffffffffffLL;
hx &= 0x7fffffffffffffffLL;
/* Purge off exception values. */
- if ((hy | (ly & 0x7fffffffffffffff)) == 0)
+ if (hy == 0)
return (x * y) / (x * y); /* y = 0 */
if ((hx >= 0x7ff0000000000000LL) /* x not finite */
- || ((hy >= 0x7ff0000000000000LL) /* y is NaN */
- && (((hy - 0x7ff0000000000000LL) | ly) != 0)))
+ || (hy > 0x7ff0000000000000LL)) /* y is NaN */
return (x * y) / (x * y);
if (hy <= 0x7fbfffffffffffffLL)
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_rintl.c b/sysdeps/ieee754/ldbl-128ibm/s_rintl.c
index 48dbe8569c..5fd6bb8702 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_rintl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_rintl.c
@@ -40,7 +40,7 @@ __rintl (long double x)
__builtin_inf ()), 1))
{
double orig_xh;
- int save_round = fegetround ();
+ int save_round = __fegetround ();
/* Long double arithmetic, including the canonicalisation below,
only works in round-to-nearest mode. */
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c b/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c
index d752568885..03d4597271 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_scalblnl.c
@@ -41,11 +41,15 @@ long double __scalblnl (long double x, long int n)
{
int64_t k,l,hx,lx;
union { int64_t i; double d; } u;
- GET_LDOUBLE_WORDS64(hx,lx,x);
+ double xhi, xlo;
+
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
+ EXTRACT_WORDS64 (lx, xlo);
k = (hx>>52)&0x7ff; /* extract exponent */
l = (lx>>52)&0x7ff;
if (k==0) { /* 0 or subnormal x */
- if (((hx|lx)&0x7fffffffffffffffULL)==0) return x; /* +-0 */
+ if ((hx&0x7fffffffffffffffULL)==0) return x; /* +-0 */
u.i = hx;
u.d *= two54;
hx = u.i;
@@ -61,7 +65,9 @@ long double __scalblnl (long double x, long int n)
if (k > 0) { /* normal result */
hx = (hx&0x800fffffffffffffULL)|(k<<52);
if ((lx & 0x7fffffffffffffffULL) == 0) { /* low part +-0 */
- SET_LDOUBLE_WORDS64(x,hx,lx);
+ INSERT_WORDS64 (xhi, hx);
+ INSERT_WORDS64 (xlo, lx);
+ x = ldbl_pack (xhi, xlo);
return x;
}
if (l == 0) { /* low part subnormal */
@@ -81,14 +87,19 @@ long double __scalblnl (long double x, long int n)
u.d *= twom54;
lx = u.i;
}
- SET_LDOUBLE_WORDS64(x,hx,lx);
+ INSERT_WORDS64 (xhi, hx);
+ INSERT_WORDS64 (xlo, lx);
+ x = ldbl_pack (xhi, xlo);
return x;
}
if (k <= -54)
return tiny*__copysignl(tiny,x); /*underflow*/
k += 54; /* subnormal result */
lx &= 0x8000000000000000ULL;
- SET_LDOUBLE_WORDS64(x,(hx&0x800fffffffffffffULL)|(k<<52),lx);
+ hx &= 0x800fffffffffffffULL;
+ INSERT_WORDS64 (xhi, hx|(k<<52));
+ INSERT_WORDS64 (xlo, lx);
+ x = ldbl_pack (xhi, xlo);
return x*twolm54;
}
long_double_symbol (libm, __scalblnl, scalblnl);
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c b/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c
index bcdb23bdaa..161172db6e 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_scalbnl.c
@@ -41,11 +41,15 @@ long double __scalbnl (long double x, int n)
{
int64_t k,l,hx,lx;
union { int64_t i; double d; } u;
- GET_LDOUBLE_WORDS64(hx,lx,x);
+ double xhi, xlo;
+
+ ldbl_unpack (x, &xhi, &xlo);
+ EXTRACT_WORDS64 (hx, xhi);
+ EXTRACT_WORDS64 (lx, xlo);
k = (hx>>52)&0x7ff; /* extract exponent */
l = (lx>>52)&0x7ff;
if (k==0) { /* 0 or subnormal x */
- if (((hx|lx)&0x7fffffffffffffffULL)==0) return x; /* +-0 */
+ if ((hx&0x7fffffffffffffffULL)==0) return x; /* +-0 */
u.i = hx;
u.d *= two54;
hx = u.i;
@@ -61,7 +65,9 @@ long double __scalbnl (long double x, int n)
if (k > 0) { /* normal result */
hx = (hx&0x800fffffffffffffULL)|(k<<52);
if ((lx & 0x7fffffffffffffffULL) == 0) { /* low part +-0 */
- SET_LDOUBLE_WORDS64(x,hx,lx);
+ INSERT_WORDS64 (xhi, hx);
+ INSERT_WORDS64 (xlo, lx);
+ x = ldbl_pack (xhi, xlo);
return x;
}
if (l == 0) { /* low part subnormal */
@@ -81,14 +87,19 @@ long double __scalbnl (long double x, int n)
u.d *= twom54;
lx = u.i;
}
- SET_LDOUBLE_WORDS64(x,hx,lx);
+ INSERT_WORDS64 (xhi, hx);
+ INSERT_WORDS64 (xlo, lx);
+ x = ldbl_pack (xhi, xlo);
return x;
}
if (k <= -54)
return tiny*__copysignl(tiny,x); /*underflow*/
k += 54; /* subnormal result */
lx &= 0x8000000000000000ULL;
- SET_LDOUBLE_WORDS64(x,(hx&0x800fffffffffffffULL)|(k<<52),lx);
+ hx &= 0x800fffffffffffffULL;
+ INSERT_WORDS64 (xhi, hx|(k<<52));
+ INSERT_WORDS64 (xlo, lx);
+ x = ldbl_pack (xhi, xlo);
return x*twolm54;
}
#ifdef IS_IN_libm
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c b/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c
index ee4aea6cf4..aecb1fd792 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_signbitl.c
@@ -25,8 +25,10 @@ int
___signbitl (long double x)
{
int64_t e;
+ double xhi;
- GET_LDOUBLE_MSW64 (e, x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (e, xhi);
return e < 0;
}
#ifdef IS_IN_libm
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c b/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c
index 3b1e547bdc..a9e2f3d19a 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_sincosl.c
@@ -27,9 +27,11 @@ void
__sincosl (long double x, long double *sinx, long double *cosx)
{
int64_t ix;
+ double xhi;
/* High word of x. */
- GET_LDOUBLE_MSW64 (ix, x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (ix, xhi);
/* |x| ~< pi/4 */
ix &= 0x7fffffffffffffffLL;
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_sinl.c b/sysdeps/ieee754/ldbl-128ibm/s_sinl.c
index 6fec16f851..087921a913 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_sinl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_sinl.c
@@ -53,9 +53,11 @@ long double __sinl(long double x)
{
long double y[2],z=0.0L;
int64_t n, ix;
+ double xhi;
/* High word of x. */
- GET_LDOUBLE_MSW64(ix,x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (ix, xhi);
/* |x| ~< pi/4 */
ix &= 0x7fffffffffffffffLL;
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c b/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c
index 138b63cd1a..c63e25345d 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_tanhl.c
@@ -47,10 +47,12 @@ static const long double one=1.0L, two=2.0L, tiny = 1.0e-300L;
long double __tanhl(long double x)
{
long double t,z;
- int64_t jx,ix,lx;
+ int64_t jx,ix;
+ double xhi;
/* High word of |x|. */
- GET_LDOUBLE_WORDS64(jx,lx,x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (jx, xhi);
ix = jx&0x7fffffffffffffffLL;
/* x is INF or NaN */
@@ -61,7 +63,7 @@ long double __tanhl(long double x)
/* |x| < 22 */
if (ix < 0x4036000000000000LL) { /* |x|<22 */
- if ((ix | (lx&0x7fffffffffffffffLL)) == 0)
+ if (ix == 0)
return x; /* x == +-0 */
if (ix<0x3c60000000000000LL) /* |x|<2**-57 */
return x*(one+x); /* tanh(small) = small */
diff --git a/sysdeps/ieee754/ldbl-128ibm/s_tanl.c b/sysdeps/ieee754/ldbl-128ibm/s_tanl.c
index 9967d0c206..66b8a0621e 100644
--- a/sysdeps/ieee754/ldbl-128ibm/s_tanl.c
+++ b/sysdeps/ieee754/ldbl-128ibm/s_tanl.c
@@ -53,9 +53,11 @@ long double __tanl(long double x)
{
long double y[2],z=0.0L;
int64_t n, ix;
+ double xhi;
/* High word of x. */
- GET_LDOUBLE_MSW64(ix,x);
+ xhi = ldbl_high (x);
+ EXTRACT_WORDS64 (ix, xhi);
/* |x| ~< pi/4 */
ix &= 0x7fffffffffffffffLL;
diff --git a/sysdeps/ieee754/ldbl-128ibm/strtold_l.c b/sysdeps/ieee754/ldbl-128ibm/strtold_l.c
index 04e3288571..93a80c5eec 100644
--- a/sysdeps/ieee754/ldbl-128ibm/strtold_l.c
+++ b/sysdeps/ieee754/ldbl-128ibm/strtold_l.c
@@ -43,11 +43,11 @@ libc_hidden_proto (STRTOF)
#define FLOAT_HUGE_VAL HUGE_VALL
# define SET_MANTISSA(flt, mant) \
do { union ibm_extended_long_double u; \
- u.d = (flt); \
- u.ieee_nan.mantissa0 = (mant) >> 32; \
- u.ieee_nan.mantissa1 = (mant); \
- if ((u.ieee.mantissa0 | u.ieee.mantissa1) != 0) \
- (flt) = u.d; \
+ u.ld = (flt); \
+ u.d[0].ieee_nan.mantissa0 = (mant) >> 32; \
+ u.d[0].ieee_nan.mantissa1 = (mant); \
+ if ((u.d[0].ieee.mantissa0 | u.d[0].ieee.mantissa1) != 0) \
+ (flt) = u.ld; \
} while (0)
#include <strtod_l.c>
diff --git a/sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c b/sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c
index ed0d4a5067..06dcf02ffe 100644
--- a/sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c
+++ b/sysdeps/ieee754/ldbl-128ibm/x2y2m1l.c
@@ -89,23 +89,23 @@ __x2y2m1l (long double x, long double y)
double vals[12];
SET_RESTORE_ROUND (FE_TONEAREST);
union ibm_extended_long_double xu, yu;
- xu.d = x;
- yu.d = y;
- if (fabs (xu.dd[1]) < 0x1p-500)
- xu.dd[1] = 0.0;
- if (fabs (yu.dd[1]) < 0x1p-500)
- yu.dd[1] = 0.0;
- mul_split (&vals[1], &vals[0], xu.dd[0], xu.dd[0]);
- mul_split (&vals[3], &vals[2], xu.dd[0], xu.dd[1]);
+ xu.ld = x;
+ yu.ld = y;
+ if (fabs (xu.d[1].d) < 0x1p-500)
+ xu.d[1].d = 0.0;
+ if (fabs (yu.d[1].d) < 0x1p-500)
+ yu.d[1].d = 0.0;
+ mul_split (&vals[1], &vals[0], xu.d[0].d, xu.d[0].d);
+ mul_split (&vals[3], &vals[2], xu.d[0].d, xu.d[1].d);
vals[2] *= 2.0;
vals[3] *= 2.0;
- mul_split (&vals[5], &vals[4], xu.dd[1], xu.dd[1]);
- mul_split (&vals[7], &vals[6], yu.dd[0], yu.dd[0]);
- mul_split (&vals[9], &vals[8], yu.dd[0], yu.dd[1]);
+ mul_split (&vals[5], &vals[4], xu.d[1].d, xu.d[1].d);
+ mul_split (&vals[7], &vals[6], yu.d[0].d, yu.d[0].d);
+ mul_split (&vals[9], &vals[8], yu.d[0].d, yu.d[1].d);
vals[8] *= 2.0;
vals[9] *= 2.0;
- mul_split (&vals[11], &vals[10], yu.dd[1], yu.dd[1]);
- if (xu.dd[0] >= 0.75)
+ mul_split (&vals[11], &vals[10], yu.d[1].d, yu.d[1].d);
+ if (xu.d[0].d >= 0.75)
vals[1] -= 1.0;
else
{
diff --git a/sysdeps/ieee754/ldbl-96/e_atan2l.c b/sysdeps/ieee754/ldbl-96/e_atan2l.c
deleted file mode 100644
index 209f29bbd2..0000000000
--- a/sysdeps/ieee754/ldbl-96/e_atan2l.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/* e_atan2l.c -- long double version of e_atan2.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-/* __ieee754_atan2l(y,x)
- * Method :
- * 1. Reduce y to positive by atan2(y,x)=-atan2(-y,x).
- * 2. Reduce x to positive by (if x and y are unexceptional):
- * ARG (x+iy) = arctan(y/x) ... if x > 0,
- * ARG (x+iy) = pi - arctan[y/(-x)] ... if x < 0,
- *
- * Special cases:
- *
- * ATAN2((anything), NaN ) is NaN;
- * ATAN2(NAN , (anything) ) is NaN;
- * ATAN2(+-0, +(anything but NaN)) is +-0 ;
- * ATAN2(+-0, -(anything but NaN)) is +-pi ;
- * ATAN2(+-(anything but 0 and NaN), 0) is +-pi/2;
- * ATAN2(+-(anything but INF and NaN), +INF) is +-0 ;
- * ATAN2(+-(anything but INF and NaN), -INF) is +-pi;
- * ATAN2(+-INF,+INF ) is +-pi/4 ;
- * ATAN2(+-INF,-INF ) is +-3pi/4;
- * ATAN2(+-INF, (anything but,0,NaN, and INF)) is +-pi/2;
- *
- * Constants:
- * The hexadecimal values are the intended ones for the following
- * constants. The decimal values may be used, provided that the
- * compiler will convert from decimal to binary accurately enough
- * to produce the hexadecimal values shown.
- */
-
-#include <math.h>
-#include <math_private.h>
-
-static const long double
-tiny = 1.0e-4900L,
-zero = 0.0,
-pi_o_4 = 7.85398163397448309628202E-01L, /* 0x3FFE, 0xC90FDAA2, 0x2168C235 */
-pi_o_2 = 1.5707963267948966192564E+00L, /* 0x3FFF, 0xC90FDAA2, 0x2168C235 */
-pi = 3.14159265358979323851281E+00L, /* 0x4000, 0xC90FDAA2, 0x2168C235 */
-pi_lo = -5.01655761266833202345176e-20L;/* 0xBFBE, 0xECE675D1, 0xFC8F8CBB */
-
-long double
-__ieee754_atan2l (long double y, long double x)
-{
- long double z;
- int32_t k,m,hx,hy,ix,iy;
- u_int32_t sx,sy,lx,ly;
-
- GET_LDOUBLE_WORDS(sx,hx,lx,x);
- ix = sx&0x7fff;
- lx |= hx & 0x7fffffff;
- GET_LDOUBLE_WORDS(sy,hy,ly,y);
- iy = sy&0x7fff;
- ly |= hy & 0x7fffffff;
- if(((2*ix|((lx|-lx)>>31))>0xfffe)||
- ((2*iy|((ly|-ly)>>31))>0xfffe)) /* x or y is NaN */
- return x+y;
- if(((sx-0x3fff)|lx)==0) return __atanl(y); /* x=1.0 */
- m = ((sy>>15)&1)|((sx>>14)&2); /* 2*sign(x)+sign(y) */
-
- /* when y = 0 */
- if((iy|ly)==0) {
- switch(m) {
- case 0:
- case 1: return y; /* atan(+-0,+anything)=+-0 */
- case 2: return pi+tiny;/* atan(+0,-anything) = pi */
- case 3: return -pi-tiny;/* atan(-0,-anything) =-pi */
- }
- }
- /* when x = 0 */
- if((ix|lx)==0) return (sy>=0x8000)? -pi_o_2-tiny: pi_o_2+tiny;
-
- /* when x is INF */
- if(ix==0x7fff) {
- if(iy==0x7fff) {
- switch(m) {
- case 0: return pi_o_4+tiny;/* atan(+INF,+INF) */
- case 1: return -pi_o_4-tiny;/* atan(-INF,+INF) */
- case 2: return 3.0*pi_o_4+tiny;/*atan(+INF,-INF)*/
- case 3: return -3.0*pi_o_4-tiny;/*atan(-INF,-INF)*/
- }
- } else {
- switch(m) {
- case 0: return zero ; /* atan(+...,+INF) */
- case 1: return -zero ; /* atan(-...,+INF) */
- case 2: return pi+tiny ; /* atan(+...,-INF) */
- case 3: return -pi-tiny ; /* atan(-...,-INF) */
- }
- }
- }
- /* when y is INF */
- if(iy==0x7fff) return (sy>=0x8000)? -pi_o_2-tiny: pi_o_2+tiny;
-
- /* compute y/x */
- k = sy-sx;
- if(k > 70) z=pi_o_2+0.5*pi_lo; /* |y/x| > 2**70 */
- else if(sx>=0x8000&&k<-70) z=0.0; /* |y|/x < -2**70 */
- else z=__atanl(fabsl(y/x)); /* safe to do y/x */
- switch (m) {
- case 0: return z ; /* atan(+,+) */
- case 1: {
- u_int32_t sz;
- GET_LDOUBLE_EXP(sz,z);
- SET_LDOUBLE_EXP(z,sz ^ 0x8000);
- }
- return z ; /* atan(-,+) */
- case 2: return pi-(z-pi_lo);/* atan(+,-) */
- default: /* case 3 */
- return (z-pi_lo)-pi;/* atan(-,-) */
- }
-}
-strong_alias (__ieee754_atan2l, __atan2l_finite)
diff --git a/sysdeps/ieee754/ldbl-96/e_hypotl.c b/sysdeps/ieee754/ldbl-96/e_hypotl.c
index 7895488848..d3152f91e5 100644
--- a/sysdeps/ieee754/ldbl-96/e_hypotl.c
+++ b/sysdeps/ieee754/ldbl-96/e_hypotl.c
@@ -89,6 +89,17 @@ long double __ieee754_hypotl(long double x, long double y)
b *= t1;
a *= t1;
k -= 16382;
+ GET_LDOUBLE_EXP (ea, a);
+ GET_LDOUBLE_EXP (eb, b);
+ if (eb > ea)
+ {
+ t1 = a;
+ a = b;
+ b = t1;
+ j = ea;
+ ea = eb;
+ eb = j;
+ }
} else { /* scale a and b by 2^9600 */
ea += 0x2580; /* a *= 2^9600 */
eb += 0x2580; /* b *= 2^9600 */
diff --git a/sysdeps/ieee754/ldbl-96/e_ilogbl.c b/sysdeps/ieee754/ldbl-96/e_ilogbl.c
deleted file mode 100644
index 0c7d9d5440..0000000000
--- a/sysdeps/ieee754/ldbl-96/e_ilogbl.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/* s_ilogbl.c -- long double version of s_ilogb.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: $";
-#endif
-
-/* ilogbl(long double x)
- * return the binary exponent of non-zero x
- * ilogbl(0) = FP_ILOGB0
- * ilogbl(NaN) = FP_ILOGBNAN (no signal is raised)
- * ilogbl(+-Inf) = INT_MAX (no signal is raised)
- */
-
-#include <limits.h>
-#include <math.h>
-#include <math_private.h>
-
-int __ieee754_ilogbl (long double x)
-{
- int32_t es,hx,lx,ix;
-
- GET_LDOUBLE_EXP(es,x);
- es &= 0x7fff;
- if(es==0) {
- GET_LDOUBLE_WORDS(es,hx,lx,x);
- if((hx|lx)==0)
- return FP_ILOGB0; /* ilogbl(0) = FP_ILOGB0 */
- else /* subnormal x */
- if(hx==0) {
- for (ix = -16415; lx>0; lx<<=1) ix -=1;
- } else {
- for (ix = -16383; hx>0; hx<<=1) ix -=1;
- }
- return ix;
- }
- else if (es<0x7fff) return es-0x3fff;
- else if (FP_ILOGBNAN != INT_MAX)
- {
- GET_LDOUBLE_WORDS(es,hx,lx,x);
- if (((hx & 0x7fffffff)|lx) == 0)
- /* ISO C99 requires ilogbl(+-Inf) == INT_MAX. */
- return INT_MAX;
- }
- return FP_ILOGBNAN;
-}
diff --git a/sysdeps/ieee754/ldbl-96/e_jnl.c b/sysdeps/ieee754/ldbl-96/e_jnl.c
index 58a9107f7d..fa8e27efec 100644
--- a/sysdeps/ieee754/ldbl-96/e_jnl.c
+++ b/sysdeps/ieee754/ldbl-96/e_jnl.c
@@ -302,7 +302,8 @@ __ieee754_ynl (int n, long double x)
if (__builtin_expect ((ix == 0x7fff) && ((i0 & 0x7fffffff) != 0), 0))
return x + x;
if (__builtin_expect ((ix | i0 | i1) == 0, 0))
- return -HUGE_VALL + x; /* -inf and overflow exception. */
+ /* -inf or inf and divide-by-zero exception. */
+ return ((n < 0 && (n & 1) != 0) ? 1.0L : -1.0L) / 0.0L;
if (__builtin_expect (se & 0x8000, 0))
return zero / (zero * x);
sign = 1;
diff --git a/sysdeps/ieee754/ldbl-96/e_remainderl.c b/sysdeps/ieee754/ldbl-96/e_remainderl.c
deleted file mode 100644
index 290e483ae5..0000000000
--- a/sysdeps/ieee754/ldbl-96/e_remainderl.c
+++ /dev/null
@@ -1,72 +0,0 @@
-/* e_remainderl.c -- long double version of e_remainder.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-/* __ieee754_remainderl(x,p)
- * Return :
- * returns x REM p = x - [x/p]*p as if in infinite
- * precise arithmetic, where [x/p] is the (infinite bit)
- * integer nearest x/p (in half way case choose the even one).
- * Method :
- * Based on fmod() return x-[x/p]chopped*p exactlp.
- */
-
-#include <math.h>
-#include <math_private.h>
-
-static const long double zero = 0.0;
-
-
-long double
-__ieee754_remainderl(long double x, long double p)
-{
- u_int32_t sx,sex,sep,x0,x1,p0,p1;
- long double p_half;
-
- GET_LDOUBLE_WORDS(sex,x0,x1,x);
- GET_LDOUBLE_WORDS(sep,p0,p1,p);
- sx = sex&0x8000;
- sep &= 0x7fff;
- sex &= 0x7fff;
-
- /* purge off exception values */
- if((sep|p0|p1)==0) return (x*p)/(x*p); /* p = 0 */
- if((sex==0x7fff)|| /* x not finite */
- ((sep==0x7fff)&& /* p is NaN */
- ((p0|p1)!=0)))
- return (x*p)/(x*p);
-
-
- if (sep<0x7ffe) x = __ieee754_fmodl(x,p+p); /* now x < 2p */
- if (((sex-sep)|(x0-p0)|(x1-p1))==0) return zero*x;
- x = fabsl(x);
- p = fabsl(p);
- if (sep<0x0002) {
- if(x+x>p) {
- x-=p;
- if(x+x>=p) x -= p;
- }
- } else {
- p_half = 0.5*p;
- if(x>p_half) {
- x-=p;
- if(x>=p_half) x -= p;
- }
- }
- GET_LDOUBLE_EXP(sex,x);
- SET_LDOUBLE_EXP(x,sex^sx);
- return x;
-}
-strong_alias (__ieee754_remainderl, __remainderl_finite)
diff --git a/sysdeps/ieee754/ldbl-96/printf_fphex.c b/sysdeps/ieee754/ldbl-96/printf_fphex.c
index f356a4843e..715c93b500 100644
--- a/sysdeps/ieee754/ldbl-96/printf_fphex.c
+++ b/sysdeps/ieee754/ldbl-96/printf_fphex.c
@@ -25,11 +25,13 @@ do { \
/* The "strange" 80 bit format on ix86 and m68k has an explicit \
leading digit in the 64 bit mantissa. */ \
unsigned long long int num; \
+ union ieee854_long_double u; \
+ u.d = fpnum.ldbl; \
\
assert (sizeof (long double) == 12); \
\
- num = (((unsigned long long int) fpnum.ldbl.ieee.mantissa0) << 32 \
- | fpnum.ldbl.ieee.mantissa1); \
+ num = (((unsigned long long int) u.ieee.mantissa0) << 32 \
+ | u.ieee.mantissa1); \
\
zero_mantissa = num == 0; \
\
@@ -62,7 +64,7 @@ do { \
\
/* We have 3 bits from the mantissa in the leading nibble. \
Therefore we are here using `IEEE854_LONG_DOUBLE_BIAS + 3'. */ \
- exponent = fpnum.ldbl.ieee.exponent; \
+ exponent = u.ieee.exponent; \
\
if (exponent == 0) \
{ \
diff --git a/sysdeps/ieee754/ldbl-96/s_ceill.c b/sysdeps/ieee754/ldbl-96/s_ceill.c
deleted file mode 100644
index aef8a32f63..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_ceill.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/* s_ceill.c -- long double version of s_ceil.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: $";
-#endif
-
-/*
- * ceill(x)
- * Return x rounded toward -inf to integral value
- * Method:
- * Bit twiddling.
- * Exception:
- * Inexact flag raised if x not equal to ceil(x).
- */
-
-#include <math.h>
-#include <math_private.h>
-
-static const long double huge = 1.0e4930;
-
-long double __ceill(long double x)
-{
- int32_t i1,j0;
- u_int32_t i,j,se,i0,sx;
- GET_LDOUBLE_WORDS(se,i0,i1,x);
- sx = (se>>15)&1;
- j0 = (se&0x7fff)-0x3fff;
- if(j0<31) {
- if(j0<0) { /* raise inexact if x != 0 */
- if(huge+x>0.0) {/* return 0*sign(x) if |x|<1 */
- if(sx) {se=0x8000;i0=0;i1=0;}
- else if((i0|i1)!=0) { se=0x3fff;i0=0;i1=0;}
- }
- } else {
- i = (0x7fffffff)>>j0;
- if(((i0&i)|i1)==0) return x; /* x is integral */
- if(huge+x>0.0) { /* raise inexact flag */
- if(sx==0) {
- if (j0>0 && (i0+(0x80000000>>j0))>i0)
- i0+=0x80000000>>j0;
- else
- {
- i = 0x7fffffff;
- ++se;
- }
- }
- i0 &= (~i); i1=0;
- }
- }
- } else if (j0>62) {
- if(j0==0x4000) return x+x; /* inf or NaN */
- else return x; /* x is integral */
- } else {
- i = ((u_int32_t)(0xffffffff))>>(j0-31);
- if((i1&i)==0) return x; /* x is integral */
- if(huge+x>0.0) { /* raise inexact flag */
- if(sx==0) {
- if(j0==31) i0+=1;
- else {
- j = i1 + (1<<(63-j0));
- if(j<i1) i0+=1; /* got a carry */
- i1 = j;
- }
- }
- i1 &= (~i);
- }
- }
- SET_LDOUBLE_WORDS(x,se,i0,i1);
- return x;
-}
-weak_alias (__ceill, ceill)
diff --git a/sysdeps/ieee754/ldbl-96/s_erfl.c b/sysdeps/ieee754/ldbl-96/s_erfl.c
index 17d2278524..47e4b9e909 100644
--- a/sysdeps/ieee754/ldbl-96/s_erfl.c
+++ b/sysdeps/ieee754/ldbl-96/s_erfl.c
@@ -104,6 +104,7 @@
*/
+#include <errno.h>
#include <math.h>
#include <math_private.h>
@@ -422,14 +423,22 @@ __erfcl (long double x)
r = __ieee754_expl (-z * z - 0.5625) *
__ieee754_expl ((z - x) * (z + x) + R / S);
if ((se & 0x8000) == 0)
- return r / x;
+ {
+ long double ret = r / x;
+ if (ret == 0)
+ __set_errno (ERANGE);
+ return ret;
+ }
else
return two - r / x;
}
else
{
if ((se & 0x8000) == 0)
- return tiny * tiny;
+ {
+ __set_errno (ERANGE);
+ return tiny * tiny;
+ }
else
return two - tiny;
}
diff --git a/sysdeps/ieee754/ldbl-96/s_fabsl.c b/sysdeps/ieee754/ldbl-96/s_fabsl.c
deleted file mode 100644
index fdc70e0dcd..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_fabsl.c
+++ /dev/null
@@ -1,35 +0,0 @@
-/* s_fabsl.c -- long double version of s_fabs.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: $";
-#endif
-
-/*
- * fabsl(x) returns the absolute value of x.
- */
-
-#include <math.h>
-#include <math_private.h>
-
-long double __fabsl(long double x)
-{
- u_int32_t exp;
- GET_LDOUBLE_EXP(exp,x);
- SET_LDOUBLE_EXP(x,exp&0x7fff);
- return x;
-}
-weak_alias (__fabsl, fabsl)
diff --git a/sysdeps/ieee754/ldbl-96/s_finitel.c b/sysdeps/ieee754/ldbl-96/s_finitel.c
deleted file mode 100644
index fbf4cc691c..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_finitel.c
+++ /dev/null
@@ -1,36 +0,0 @@
-/* s_finitel.c -- long double version of s_finite.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: $";
-#endif
-
-/*
- * finitel(x) returns 1 is x is finite, else 0;
- * no branching!
- */
-
-#include <math.h>
-#include <math_private.h>
-
-int __finitel(long double x)
-{
- int32_t exp;
- GET_LDOUBLE_EXP(exp,x);
- return (int)((u_int32_t)((exp&0x7fff)-0x7fff)>>31);
-}
-hidden_def (__finitel)
-weak_alias (__finitel, finitel)
diff --git a/sysdeps/ieee754/ldbl-96/s_floorl.c b/sysdeps/ieee754/ldbl-96/s_floorl.c
deleted file mode 100644
index cad7935b33..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_floorl.c
+++ /dev/null
@@ -1,86 +0,0 @@
-/* s_floorl.c -- long double version of s_floor.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: $";
-#endif
-
-/*
- * floorl(x)
- * Return x rounded toward -inf to integral value
- * Method:
- * Bit twiddling.
- * Exception:
- * Inexact flag raised if x not equal to floor(x).
- */
-
-#include <math.h>
-#include <math_private.h>
-
-static const long double huge = 1.0e4930;
-
-long double __floorl(long double x)
-{
- int32_t i1,j0;
- u_int32_t i,j,se,i0,sx;
- GET_LDOUBLE_WORDS(se,i0,i1,x);
- sx = (se>>15)&1;
- j0 = (se&0x7fff)-0x3fff;
- if(j0<31) {
- if(j0<0) { /* raise inexact if x != 0 */
- if(huge+x>0.0) {/* return 0*sign(x) if |x|<1 */
- if(sx==0) {se=0;i0=i1=0;}
- else if(((se&0x7fff)|i0|i1)!=0)
- { se=0xbfff;i0=i1=0;}
- }
- } else {
- i = (0x7fffffff)>>j0;
- if(((i0&i)|i1)==0) return x; /* x is integral */
- if(huge+x>0.0) { /* raise inexact flag */
- if(sx) {
- if (j0>0 && (i0+(0x80000000>>j0))>i0)
- i0 += (0x80000000)>>j0;
- else
- {
- i = 0x7fffffff;
- ++se;
- }
- }
- i0 &= (~i); i1=0;
- }
- }
- } else if (j0>62) {
- if(j0==0x4000) return x+x; /* inf or NaN */
- else return x; /* x is integral */
- } else {
- i = ((u_int32_t)(0xffffffff))>>(j0-31);
- if((i1&i)==0) return x; /* x is integral */
- if(huge+x>0.0) { /* raise inexact flag */
- if(sx) {
- if(j0==31) i0+=1;
- else {
- j = i1+(1<<(63-j0));
- if(j<i1) i0 +=1 ; /* got a carry */
- i1=j;
- }
- }
- i1 &= (~i);
- }
- }
- SET_LDOUBLE_WORDS(x,se,i0,i1);
- return x;
-}
-weak_alias (__floorl, floorl)
diff --git a/sysdeps/ieee754/ldbl-96/s_isinfl.c b/sysdeps/ieee754/ldbl-96/s_isinfl.c
deleted file mode 100644
index 94639f00f8..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_isinfl.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Written by J.T. Conklin <jtc@netbsd.org>.
- * Change for long double by Ulrich Drepper <drepper@cygnus.com>.
- * Public domain.
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: $";
-#endif
-
-/*
- * isinfl(x) returns 1 if x is inf, -1 if x is -inf, else 0;
- * no branching!
- */
-
-#include <math.h>
-#include <math_private.h>
-
-int
-__isinfl (long double x)
-{
- int32_t se,hx,lx;
- GET_LDOUBLE_WORDS(se,hx,lx,x);
- lx |= (hx & 0x7fffffff) | ((se & 0x7fff) ^ 0x7fff);
- lx |= -lx;
- se &= 0x8000;
- return ~(lx >> 31) & (1 - (se >> 14));
-}
-hidden_def (__isinfl)
-weak_alias (__isinfl, isinfl)
diff --git a/sysdeps/ieee754/ldbl-96/s_isnanl.c b/sysdeps/ieee754/ldbl-96/s_isnanl.c
deleted file mode 100644
index fd270fd849..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_isnanl.c
+++ /dev/null
@@ -1,40 +0,0 @@
-/* s_isnanl.c -- long double version of s_isnan.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: $";
-#endif
-
-/*
- * isnanl(x) returns 1 is x is nan, else 0;
- * no branching!
- */
-
-#include <math.h>
-#include <math_private.h>
-
-int __isnanl(long double x)
-{
- int32_t se,hx,lx;
- GET_LDOUBLE_WORDS(se,hx,lx,x);
- se = (se & 0x7fff) << 1;
- lx |= hx & 0x7fffffff;
- se |= (u_int32_t)(lx|(-lx))>>31;
- se = 0xfffe - se;
- return (int)(((u_int32_t)(se))>>31);
-}
-hidden_def (__isnanl)
-weak_alias (__isnanl, isnanl)
diff --git a/sysdeps/ieee754/ldbl-96/s_logbl.c b/sysdeps/ieee754/ldbl-96/s_logbl.c
deleted file mode 100644
index 4289be1933..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_logbl.c
+++ /dev/null
@@ -1,51 +0,0 @@
-/* s_logbl.c -- long double version of s_logb.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-/*
- * long double logbl(x)
- * IEEE 754 logb. Included to pass IEEE test suite. Not recommend.
- * Use ilogb instead.
- */
-
-#include <math.h>
-#include <math_private.h>
-
-long double
-__logbl (long double x)
-{
- int32_t es, lx, ix;
-
- GET_LDOUBLE_WORDS (es, ix, lx, x);
- es &= 0x7fff; /* exponent */
- if ((es | ix | lx) == 0)
- return -1.0 / fabs (x);
- if (es == 0x7fff)
- return x * x;
- if (es == 0) /* IEEE 754 logb */
- {
- /* POSIX specifies that denormal number is treated as
- though it were normalized. */
- int ma;
- if (ix == 0)
- ma = __builtin_clz (lx) + 32;
- else
- ma = __builtin_clz (ix);
- es -= ma - 1;
- }
- return (long double) (es - 16383);
-}
-
-weak_alias (__logbl, logbl)
diff --git a/sysdeps/ieee754/ldbl-96/s_nearbyintl.c b/sysdeps/ieee754/ldbl-96/s_nearbyintl.c
deleted file mode 100644
index c1d77f0c02..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_nearbyintl.c
+++ /dev/null
@@ -1,88 +0,0 @@
-/* s_rintl.c -- long double version of s_rint.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-/* Adapted for use as nearbyint by Ulrich Drepper <drepper@cygnus.com>. */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-/*
- * rintl(x)
- * Return x rounded to integral value according to the prevailing
- * rounding mode.
- * Method:
- * Using floating addition.
- * Exception:
- * Inexact flag raised if x not equal to rintl(x).
- */
-
-#include <fenv.h>
-#include <math.h>
-#include <math_private.h>
-
-static const long double
-TWO63[2]={
- 9.223372036854775808000000e+18, /* 0x403E, 0x00000000, 0x00000000 */
- -9.223372036854775808000000e+18 /* 0xC03E, 0x00000000, 0x00000000 */
-};
-
-long double __nearbyintl(long double x)
-{
- fenv_t env;
- int32_t se,j0,sx;
- u_int32_t i,i0,i1;
- long double w,t;
- GET_LDOUBLE_WORDS(se,i0,i1,x);
- sx = (se>>15)&1;
- j0 = (se&0x7fff)-0x3fff;
- if(j0<31) {
- if(j0<0) {
- if(((se&0x7fff)|i0|i1)==0) return x;
- i1 |= i0;
- i0 &= 0xe0000000;
- i0 |= (i1|-i1)&0x80000000;
- SET_LDOUBLE_MSW(x,i0);
- feholdexcept (&env);
- w = TWO63[sx]+x;
- t = w-TWO63[sx];
- math_force_eval (t);
- fesetenv (&env);
- GET_LDOUBLE_EXP(i0,t);
- SET_LDOUBLE_EXP(t,(i0&0x7fff)|(sx<<15));
- return t;
- } else {
- i = (0x7fffffff)>>j0;
- if(((i0&i)|i1)==0) return x; /* x is integral */
- i>>=1;
- if(((i0&i)|i1)!=0) {
- if (j0==30) i1 = 0x40000000; else
- i0 = (i0&(~i))|((0x20000000)>>j0);
- }
- }
- } else if (j0>62) {
- if(j0==0x4000) return x+x; /* inf or NaN */
- else return x; /* x is integral */
- } else {
- i = ((u_int32_t)(0xffffffff))>>(j0-31);
- if((i1&i)==0) return x; /* x is integral */
- i>>=1;
- if((i1&i)!=0) i1 = (i1&(~i))|((0x40000000)>>(j0-31));
- }
- SET_LDOUBLE_WORDS(x,se,i0,i1);
- feholdexcept (&env);
- w = TWO63[sx]+x;
- t = w-TWO63[sx];
- math_force_eval (t);
- fesetenv (&env);
- return t;
-}
-weak_alias (__nearbyintl, nearbyintl)
diff --git a/sysdeps/ieee754/ldbl-96/s_nextafterl.c b/sysdeps/ieee754/ldbl-96/s_nextafterl.c
deleted file mode 100644
index 6859349b7c..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_nextafterl.c
+++ /dev/null
@@ -1,96 +0,0 @@
-/* s_nextafterl.c -- long double version of s_nextafter.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: $";
-#endif
-
-/* IEEE functions
- * nextafterl(x,y)
- * return the next machine floating-point number of x in the
- * direction toward y.
- * Special cases:
- */
-
-#include <math.h>
-#include <math_private.h>
-
-long double __nextafterl(long double x, long double y)
-{
- int32_t hx,hy,ix,iy;
- u_int32_t lx,ly,esx,esy;
-
- GET_LDOUBLE_WORDS(esx,hx,lx,x);
- GET_LDOUBLE_WORDS(esy,hy,ly,y);
- ix = esx&0x7fff; /* |x| */
- iy = esy&0x7fff; /* |y| */
-
- if (((ix==0x7fff)&&((hx|lx)!=0)) || /* x is nan */
- ((iy==0x7fff)&&((hy|ly)!=0))) /* y is nan */
- return x+y;
- if(x==y) return y; /* x=y, return y */
- if((ix|hx|lx)==0) { /* x == 0 */
- long double u;
- SET_LDOUBLE_WORDS(x,esy&0x8000,0,1);/* return +-minsubnormal */
- u = math_opt_barrier (x);
- u = u * u;
- math_force_eval (u); /* raise underflow flag */
- return x;
- }
- if(esx<0x8000) { /* x > 0 */
- if(ix>iy||((ix==iy) && (hx>hy||((hx==hy)&&(lx>ly))))) {
- /* x > y, x -= ulp */
- if(lx==0) {
- if (hx==0) esx -= 1;
- hx -= 1;
- }
- lx -= 1;
- } else { /* x < y, x += ulp */
- lx += 1;
- if(lx==0) {
- hx += 1;
- if (hx==0)
- esx += 1;
- }
- }
- } else { /* x < 0 */
- if(esy>=0||(ix>iy||((ix==iy)&&(hx>hy||((hx==hy)&&(lx>ly)))))){
- /* x < y, x -= ulp */
- if(lx==0) {
- if (hx==0) esx -= 1;
- hx -= 1;
- }
- lx -= 1;
- } else { /* x > y, x += ulp */
- lx += 1;
- if(lx==0) {
- hx += 1;
- if (hx==0) esx += 1;
- }
- }
- }
- esy = esx&0x7fff;
- if(esy==0x7fff) return x+x; /* overflow */
- if(esy==0) {
- long double u = x*x; /* underflow */
- math_force_eval (u); /* raise underflow flag */
- }
- SET_LDOUBLE_WORDS(x,esx,hx,lx);
- return x;
-}
-weak_alias (__nextafterl, nextafterl)
-strong_alias (__nextafterl, __nexttowardl)
-weak_alias (__nextafterl, nexttowardl)
diff --git a/sysdeps/ieee754/ldbl-96/s_rintl.c b/sysdeps/ieee754/ldbl-96/s_rintl.c
deleted file mode 100644
index b6f899d4ef..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_rintl.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/* s_rintl.c -- long double version of s_rint.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-#if defined(LIBM_SCCS) && !defined(lint)
-static char rcsid[] = "$NetBSD: $";
-#endif
-
-/*
- * rintl(x)
- * Return x rounded to integral value according to the prevailing
- * rounding mode.
- * Method:
- * Using floating addition.
- * Exception:
- * Inexact flag raised if x not equal to rintl(x).
- */
-
-#include <math.h>
-#include <math_private.h>
-
-static const long double
-TWO63[2]={
- 9.223372036854775808000000e+18, /* 0x403E, 0x00000000, 0x00000000 */
- -9.223372036854775808000000e+18 /* 0xC03E, 0x00000000, 0x00000000 */
-};
-
-long double __rintl(long double x)
-{
- int32_t se,j0,sx;
- u_int32_t i,i0,i1;
- long double w,t;
- GET_LDOUBLE_WORDS(se,i0,i1,x);
- sx = (se>>15)&1;
- j0 = (se&0x7fff)-0x3fff;
- if(j0<31) {
- if(j0<0) {
- if(((se&0x7fff)|i0|i1)==0) return x;
- i1 |= i0;
- i0 &= 0xe0000000;
- i0 |= (i1|-i1)&0x80000000;
- SET_LDOUBLE_MSW(x,i0);
- w = TWO63[sx]+x;
- t = w-TWO63[sx];
- GET_LDOUBLE_EXP(i0,t);
- SET_LDOUBLE_EXP(t,(i0&0x7fff)|(sx<<15));
- return t;
- } else {
- i = (0x7fffffff)>>j0;
- if(((i0&i)|i1)==0) return x; /* x is integral */
- i>>=1;
- if(((i0&i)|i1)!=0) {
- if(j0==30) i1 = 0x40000000; else
- i0 = (i0&(~i))|((0x20000000)>>j0);
- }
- }
- } else if (j0>62) {
- if(j0==0x4000) return x+x; /* inf or NaN */
- else return x; /* x is integral */
- } else {
- i = ((u_int32_t)(0xffffffff))>>(j0-31);
- if((i1&i)==0) return x; /* x is integral */
- i>>=1;
- if((i1&i)!=0) i1 = (i1&(~i))|((0x40000000)>>(j0-31));
- }
- SET_LDOUBLE_WORDS(x,se,i0,i1);
- w = TWO63[sx]+x;
- return w-TWO63[sx];
-}
-weak_alias (__rintl, rintl)
diff --git a/sysdeps/ieee754/ldbl-96/s_scalbnl.c b/sysdeps/ieee754/ldbl-96/s_scalbnl.c
deleted file mode 100644
index 266a37b9c0..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_scalbnl.c
+++ /dev/null
@@ -1,61 +0,0 @@
-/* s_scalbnl.c -- long double version of s_scalbn.c.
- * Conversion to long double by Ulrich Drepper,
- * Cygnus Support, drepper@cygnus.com.
- */
-
-/*
- * ====================================================
- * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
- *
- * Developed at SunPro, a Sun Microsystems, Inc. business.
- * Permission to use, copy, modify, and distribute this
- * software is freely granted, provided that this notice
- * is preserved.
- * ====================================================
- */
-
-/*
- * scalbnl (long double x, int n)
- * scalbnl(x,n) returns x* 2**n computed by exponent
- * manipulation rather than by actually performing an
- * exponentiation or a multiplication.
- */
-
-#include <math.h>
-#include <math_private.h>
-
-static const long double
-two64 = 1.8446744073709551616e19L,
-twom64 = 5.421010862427522170037e-20L,
-huge = 1.0e+4900L,
-tiny = 1.0e-4900L;
-
-long double
-__scalbnl (long double x, int n)
-{
- int32_t k,es,hx,lx;
- GET_LDOUBLE_WORDS(es,hx,lx,x);
- k = es&0x7fff; /* extract exponent */
- if (__builtin_expect(k==0, 0)) { /* 0 or subnormal x */
- if ((lx|(hx&0x7fffffff))==0) return x; /* +-0 */
- x *= two64;
- GET_LDOUBLE_EXP(hx,x);
- k = (hx&0x7fff) - 64;
- }
- if (__builtin_expect(k==0x7fff, 0)) return x+x; /* NaN or Inf */
- if (__builtin_expect(n< -50000, 0))
- return tiny*__copysignl(tiny,x);
- if (__builtin_expect(n> 50000 || k+n > 0x7ffe, 0))
- return huge*__copysignl(huge,x); /* overflow */
- /* Now k and n are bounded we know that k = k+n does not
- overflow. */
- k = k+n;
- if (__builtin_expect(k > 0, 1)) /* normal result */
- {SET_LDOUBLE_EXP(x,(es&0x8000)|k); return x;}
- if (k <= -64)
- return tiny*__copysignl(tiny,x); /*underflow*/
- k += 64; /* subnormal result */
- SET_LDOUBLE_EXP(x,(es&0x8000)|k);
- return x*twom64;
-}
-weak_alias (__scalbnl, scalbnl)
diff --git a/sysdeps/ieee754/ldbl-96/s_truncl.c b/sysdeps/ieee754/ldbl-96/s_truncl.c
deleted file mode 100644
index cc58fb0b77..0000000000
--- a/sysdeps/ieee754/ldbl-96/s_truncl.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/* Truncate argument to nearest integral value not larger than the argument.
- Copyright (C) 1997-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <math.h>
-
-#include <math_private.h>
-
-
-long double
-__truncl (long double x)
-{
- int32_t i0, j0;
- u_int32_t se, i1;
- int sx;
-
- GET_LDOUBLE_WORDS (se, i0, i1, x);
- sx = se & 0x8000;
- j0 = (se & 0x7fff) - 0x3fff;
- if (j0 < 31)
- {
- if (j0 < 0)
- /* The magnitude of the number is < 1 so the result is +-0. */
- SET_LDOUBLE_WORDS (x, sx, 0, 0);
- else
- SET_LDOUBLE_WORDS (x, se, i0 & ~(0x7fffffff >> j0), 0);
- }
- else if (j0 > 63)
- {
- if (j0 == 0x4000)
- /* x is inf or NaN. */
- return x + x;
- }
- else
- {
- SET_LDOUBLE_WORDS (x, se, i0, i1 & ~(0xffffffffu >> (j0 - 31)));
- }
-
- return x;
-}
-weak_alias (__truncl, truncl)
diff --git a/sysdeps/ieee754/ldbl-opt/configure b/sysdeps/ieee754/ldbl-opt/configure
index 6e69038b93..ad9d77b88c 100644
--- a/sysdeps/ieee754/ldbl-opt/configure
+++ b/sysdeps/ieee754/ldbl-opt/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/ieee754/ldbl-opt/.
diff --git a/sysdeps/ieee754/ldbl-opt/configure.in b/sysdeps/ieee754/ldbl-opt/configure.ac
index a77fadd1c4..a77fadd1c4 100644
--- a/sysdeps/ieee754/ldbl-opt/configure.in
+++ b/sysdeps/ieee754/ldbl-opt/configure.ac
diff --git a/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h b/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h
index b0b863cba5..af861c11ea 100644
--- a/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h
+++ b/sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h
@@ -10,7 +10,7 @@
SHLIB_COMPAT(lib, introduced, LONG_DOUBLE_COMPAT_VERSION)
#define long_double_symbol(lib, local, symbol) \
long_double_symbol_1 (lib, local, symbol, LONG_DOUBLE_COMPAT_VERSION)
-#if defined SHARED && defined DO_VERSIONING
+#ifdef SHARED
# define ldbl_hidden_def(local, name) libc_hidden_ver (local, name)
# define ldbl_strong_alias(name, aliasname) \
strong_alias (name, __GL_##name##_##aliasname) \
diff --git a/sysdeps/mach/configure b/sysdeps/mach/configure
index 3af372560f..61ac7d9684 100644
--- a/sysdeps/mach/configure
+++ b/sysdeps/mach/configure
@@ -65,7 +65,7 @@ $as_echo "$ac_res" >&6; }
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_header_preproc
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}mig", so it can be a program name with args.
diff --git a/sysdeps/mach/configure.in b/sysdeps/mach/configure.ac
index db85f47eae..db85f47eae 100644
--- a/sysdeps/mach/configure.in
+++ b/sysdeps/mach/configure.ac
diff --git a/sysdeps/mach/hurd/configure b/sysdeps/mach/hurd/configure
index 84948a549c..a0f97217e9 100644
--- a/sysdeps/mach/hurd/configure
+++ b/sysdeps/mach/hurd/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
$as_echo "#define NO_HIDDEN 1" >>confdefs.h
diff --git a/sysdeps/mach/hurd/configure.in b/sysdeps/mach/hurd/configure.ac
index ad915a568b..ad915a568b 100644
--- a/sysdeps/mach/hurd/configure.in
+++ b/sysdeps/mach/hurd/configure.ac
diff --git a/sysdeps/mach/hurd/dl-sysdep.h b/sysdeps/mach/hurd/dl-sysdep.h
index 52563b0ca0..0e7cac4ab0 100644
--- a/sysdeps/mach/hurd/dl-sysdep.h
+++ b/sysdeps/mach/hurd/dl-sysdep.h
@@ -29,3 +29,10 @@
# define DL_ARGV_NOT_RELRO 1
# define LIBC_STACK_END_NOT_RELRO 1
#endif
+
+#include <signal.h>
+inline void _dl_mask_all_signals (sigset_t *) internal_function;
+inline void _dl_mask_all_signals (sigset_t *) { }
+
+inline void _dl_unmask_all_signals (sigset_t *) internal_function;
+inline void _dl_unmask_all_signals (sigset_t *) { }
diff --git a/sysdeps/mach/hurd/fork.c b/sysdeps/mach/hurd/fork.c
index 6d5bfa9606..f5d8063f1f 100644
--- a/sysdeps/mach/hurd/fork.c
+++ b/sysdeps/mach/hurd/fork.c
@@ -34,6 +34,11 @@
symbol_set_declare (_hurd_fork_locks)
+/* Application callbacks registered through pthread_atfork. */
+DEFINE_HOOK (_hurd_atfork_prepare_hook, (void));
+DEFINE_HOOK (_hurd_atfork_child_hook, (void));
+DEFINE_HOOK (_hurd_atfork_parent_hook, (void));
+
/* Things that want to be called before we fork, to prepare the parent for
task_create, when the new child task will inherit our address space. */
DEFINE_HOOK (_hurd_fork_prepare_hook, (void));
@@ -62,6 +67,8 @@ __fork (void)
error_t err;
struct hurd_sigstate *volatile ss;
+ RUN_HOOK (_hurd_atfork_prepare_hook, ());
+
ss = _hurd_self_sigstate ();
__spin_lock (&ss->critical_section_lock);
@@ -718,6 +725,14 @@ __fork (void)
_hurd_critical_section_unlock (ss);
+ if (!err)
+ {
+ if (pid != 0)
+ RUN_HOOK (_hurd_atfork_parent_hook, ());
+ else
+ RUN_HOOK (_hurd_atfork_child_hook, ());
+ }
+
return err ? __hurd_fail (err) : pid;
}
libc_hidden_def (__fork)
diff --git a/sysdeps/mach/hurd/i386/tls.h b/sysdeps/mach/hurd/i386/tls.h
index 87fa4caa69..25623e910c 100644
--- a/sysdeps/mach/hurd/i386/tls.h
+++ b/sysdeps/mach/hurd/i386/tls.h
@@ -118,7 +118,6 @@ _hurd_tls_init (tcbhead_t *tcb, int secondcall)
operation can cause a failure 'errno' must not be touched. */
# define TLS_INIT_TP(descr, secondcall) \
_hurd_tls_init ((tcbhead_t *) (descr), (secondcall))
-# define TLS_INIT_TP_EXPENSIVE 1
/* Return the TCB address of the current thread. */
# define THREAD_SELF \
diff --git a/sysdeps/posix/dirstream.h b/sysdeps/posix/dirstream.h
index 8e8570dd48..be20895051 100644
--- a/sysdeps/posix/dirstream.h
+++ b/sysdeps/posix/dirstream.h
@@ -41,8 +41,13 @@ struct __dirstream
int errcode; /* Delayed error code. */
- /* Directory block. */
- char data[0] __attribute__ ((aligned (__alignof__ (void*))));
+ /* Directory block. We must make sure that this block starts
+ at an address that is aligned adequately enough to store
+ dirent entries. Using the alignment of "void *" is not
+ sufficient because dirents on 32-bit platforms can require
+ 64-bit alignment. We use "long double" here to be consistent
+ with what malloc uses. */
+ char data[0] __attribute__ ((aligned (__alignof__ (long double))));
};
#define _DIR_dirfd(dirp) ((dirp)->fd)
diff --git a/sysdeps/posix/getaddrinfo.c b/sysdeps/posix/getaddrinfo.c
index 52177e454c..8218237af2 100644
--- a/sysdeps/posix/getaddrinfo.c
+++ b/sysdeps/posix/getaddrinfo.c
@@ -71,13 +71,6 @@ extern int __idna_to_unicode_lzlz (const char *input, char **output,
# include <libidn/idna.h>
#endif
-#define GAIH_OKIFUNSPEC 0x0100
-#define GAIH_EAI ~(GAIH_OKIFUNSPEC)
-
-#ifndef UNIX_PATH_MAX
-# define UNIX_PATH_MAX 108
-#endif
-
struct gaih_service
{
const char *name;
@@ -127,14 +120,6 @@ static const struct gaih_typeproto gaih_inet_typeproto[] =
{ 0, 0, 0, false, "" }
};
-struct gaih
- {
- int family;
- int (*gaih)(const char *name, const struct gaih_service *service,
- const struct addrinfo *req, struct addrinfo **pai,
- unsigned int *naddrs);
- };
-
static const struct addrinfo default_hints =
{
.ai_flags = AI_DEFAULT,
@@ -169,7 +154,7 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp,
if (r == ERANGE)
tmpbuflen *= 2;
else
- return GAIH_OKIFUNSPEC | -EAI_SERVICE;
+ return -EAI_SERVICE;
}
}
while (r);
@@ -197,7 +182,22 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp,
&rc, &herrno, NULL, &localcanon)); \
if (rc != ERANGE || herrno != NETDB_INTERNAL) \
break; \
- tmpbuf = extend_alloca (tmpbuf, tmpbuflen, 2 * tmpbuflen); \
+ if (!malloc_tmpbuf && __libc_use_alloca (alloca_used + 2 * tmpbuflen)) \
+ tmpbuf = extend_alloca_account (tmpbuf, tmpbuflen, 2 * tmpbuflen, \
+ alloca_used); \
+ else \
+ { \
+ char *newp = realloc (malloc_tmpbuf ? tmpbuf : NULL, \
+ 2 * tmpbuflen); \
+ if (newp == NULL) \
+ { \
+ result = -EAI_MEMORY; \
+ goto free_and_return; \
+ } \
+ tmpbuf = newp; \
+ malloc_tmpbuf = true; \
+ tmpbuflen = 2 * tmpbuflen; \
+ } \
} \
if (status == NSS_STATUS_SUCCESS && rc == 0) \
h = &th; \
@@ -209,7 +209,8 @@ gaih_inet_serv (const char *servicename, const struct gaih_typeproto *tp,
{ \
__set_h_errno (herrno); \
_res.options |= old_res_options & RES_USE_INET6; \
- return -EAI_SYSTEM; \
+ result = -EAI_SYSTEM; \
+ goto free_and_return; \
} \
if (herrno == TRY_AGAIN) \
no_data = EAI_AGAIN; \
@@ -295,9 +296,9 @@ gaih_inet (const char *name, const struct gaih_service *service,
if (! tp->name[0])
{
if (req->ai_socktype)
- return GAIH_OKIFUNSPEC | -EAI_SOCKTYPE;
+ return -EAI_SOCKTYPE;
else
- return GAIH_OKIFUNSPEC | -EAI_SERVICE;
+ return -EAI_SERVICE;
}
}
@@ -305,7 +306,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
if (service != NULL)
{
if ((tp->protoflag & GAI_PROTO_NOSERVICE) != 0)
- return GAIH_OKIFUNSPEC | -EAI_SERVICE;
+ return -EAI_SERVICE;
if (service->num < 0)
{
@@ -341,7 +342,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
if ((rc = gaih_inet_serv (service->name, tp, req, newp)))
{
- if (rc & GAIH_OKIFUNSPEC)
+ if (rc)
continue;
return rc;
}
@@ -350,7 +351,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
pst = &(newp->next);
}
if (st == (struct gaih_servtuple *) &nullserv)
- return GAIH_OKIFUNSPEC | -EAI_SERVICE;
+ return -EAI_SERVICE;
}
}
else
@@ -542,7 +543,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
10);
if (*end != '\0')
{
- result = GAIH_OKIFUNSPEC | -EAI_NONAME;
+ result = -EAI_NONAME;
goto free_and_return;
}
}
@@ -558,16 +559,17 @@ gaih_inet (const char *name, const struct gaih_service *service,
struct gaih_addrtuple **pat = &at;
int no_data = 0;
int no_inet6_data = 0;
- service_user *nip = NULL;
+ service_user *nip;
enum nss_status inet6_status = NSS_STATUS_UNAVAIL;
enum nss_status status = NSS_STATUS_UNAVAIL;
int no_more;
int old_res_options;
- /* If we do not have to look for IPv6 addresses, use
- the simple, old functions, which do not support
- IPv6 scope ids. */
- if (req->ai_family == AF_INET)
+ /* If we do not have to look for IPv6 addresses or the canonical
+ name, use the simple, old functions, which do not support
+ IPv6 scope ids, nor retrieving the canonical name. */
+ if (req->ai_family == AF_INET
+ && (req->ai_flags & AI_CANONNAME) == 0)
{
/* Allocate additional room for struct host_data. */
size_t tmpbuflen = (512 + MAX_NR_ALIASES * sizeof(char*)
@@ -662,7 +664,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
else
/* We made requests but they turned out no data.
The name is known, though. */
- result = GAIH_OKIFUNSPEC | -EAI_NODATA;
+ result = -EAI_NODATA;
goto free_and_return;
}
@@ -768,7 +770,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
if (at->family == AF_UNSPEC)
{
- result = GAIH_OKIFUNSPEC | -EAI_NONAME;
+ result = -EAI_NONAME;
goto free_and_return;
}
@@ -791,15 +793,13 @@ gaih_inet (const char *name, const struct gaih_service *service,
}
#endif
- if (__nss_hosts_database != NULL)
- {
- no_more = 0;
- nip = __nss_hosts_database;
- }
- else
+ if (__nss_hosts_database == NULL)
no_more = __nss_database_lookup ("hosts", NULL,
"dns [!UNAVAIL=return] files",
- &nip);
+ &__nss_hosts_database);
+ else
+ no_more = 0;
+ nip = __nss_hosts_database;
/* Initialize configurations. */
if (__glibc_unlikely (!_res_hconf.initialized))
@@ -1011,8 +1011,9 @@ gaih_inet (const char *name, const struct gaih_service *service,
canon = s;
else
{
- /* Set to name now to avoid using
- gethostbyaddr. */
+ /* If the canonical name cannot be
+ determined, use the passed in
+ string. */
if (malloc_canonbuf)
{
free (canonbuf);
@@ -1060,7 +1061,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
if (h_errno == NETDB_INTERNAL)
{
- result = GAIH_OKIFUNSPEC | -EAI_SYSTEM;
+ result = -EAI_SYSTEM;
goto free_and_return;
}
@@ -1072,7 +1073,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
else
/* We made requests but they turned out no data. The name
is known, though. */
- result = GAIH_OKIFUNSPEC | -EAI_NODATA;
+ result = -EAI_NODATA;
goto free_and_return;
}
@@ -1081,7 +1082,7 @@ gaih_inet (const char *name, const struct gaih_service *service,
process_list:
if (at->family == AF_UNSPEC)
{
- result = GAIH_OKIFUNSPEC | -EAI_NONAME;
+ result = -EAI_NONAME;
goto free_and_return;
}
}
@@ -1127,70 +1128,10 @@ gaih_inet (const char *name, const struct gaih_service *service,
/* Only the first entry gets the canonical name. */
if (at2 == at && (req->ai_flags & AI_CANONNAME) != 0)
{
- char *tmpbuf2 = NULL;
- bool malloc_tmpbuf2 = false;
-
if (canon == NULL)
- {
- struct hostent *h = NULL;
- int herrno;
- struct hostent th;
- /* Add room for struct host_data. */
- size_t tmpbuf2len = (512 + (MAX_NR_ALIASES+MAX_NR_ADDRS+1)
- * sizeof(char*) + 16 * sizeof(char));
-
- do
- {
- if (__libc_use_alloca (alloca_used + 2 * tmpbuf2len))
- tmpbuf2 = extend_alloca_account (tmpbuf2, tmpbuf2len,
- tmpbuf2len * 2,
- alloca_used);
- else
- {
- char *newp = realloc (malloc_tmpbuf2 ? tmpbuf2 : NULL,
- 2 * tmpbuf2len);
- if (newp == NULL)
- {
- if (malloc_tmpbuf2)
- free (tmpbuf2);
- result = -EAI_MEMORY;
- goto free_and_return;
- }
-
- tmpbuf2 = newp;
- tmpbuf2len = 2 * tmpbuf2len;
- malloc_tmpbuf2 = true;
- }
-
- rc = __gethostbyaddr_r (at2->addr,
- ((at2->family == AF_INET6)
- ? sizeof (struct in6_addr)
- : sizeof (struct in_addr)),
- at2->family, &th, tmpbuf2,
- tmpbuf2len, &h, &herrno);
- }
- while (rc == ERANGE && herrno == NETDB_INTERNAL);
-
- if (rc != 0 && herrno == NETDB_INTERNAL)
- {
- if (malloc_tmpbuf2)
- free (tmpbuf2);
-
- __set_h_errno (herrno);
- result = -EAI_SYSTEM;
- goto free_and_return;
- }
-
- if (h != NULL)
- canon = h->h_name;
- else
- {
- assert (orig_name != NULL);
- /* If the canonical name cannot be determined, use
- the passed in string. */
- canon = orig_name;
- }
- }
+ /* If the canonical name cannot be determined, use
+ the passed in string. */
+ canon = orig_name;
#ifdef HAVE_LIBIDN
if (req->ai_flags & AI_CANONIDN)
@@ -1205,9 +1146,6 @@ gaih_inet (const char *name, const struct gaih_service *service,
int rc = __idna_to_unicode_lzlz (canon, &out, idn_flags);
if (rc != IDNA_SUCCESS)
{
- if (malloc_tmpbuf2)
- free (tmpbuf2);
-
if (rc == IDNA_MALLOC_ERROR)
result = -EAI_MEMORY;
else if (rc == IDNA_DLOPEN_ERROR)
@@ -1237,17 +1175,11 @@ gaih_inet (const char *name, const struct gaih_service *service,
canon = strdup (canon);
if (canon == NULL)
{
- if (malloc_tmpbuf2)
- free (tmpbuf2);
-
result = -EAI_MEMORY;
goto free_and_return;
}
}
}
-
- if (malloc_tmpbuf2)
- free (tmpbuf2);
}
family = at2->family;
@@ -1735,13 +1667,13 @@ rfc3484_sort (const void *p1, const void *p2, void *arg)
/* Fill in the results in all the records. */
for (int i = 0; i < src->nresults; ++i)
- if (src->results[i].index == a1_index)
+ if (a1_index != -1 && src->results[i].index == a1_index)
{
assert (src->results[i].native == -1
|| src->results[i].native == a1_native);
src->results[i].native = a1_native;
}
- else if (src->results[i].index == a2_index)
+ else if (a2_index != -1 && src->results[i].index == a2_index)
{
assert (src->results[i].native == -1
|| src->results[i].native == a2_native);
@@ -2477,7 +2409,7 @@ getaddrinfo (const char *name, const char *service,
freeaddrinfo (p);
__free_in6ai (in6ai);
- return -(last_i & GAIH_EAI);
+ return -last_i;
}
while (*end)
{
@@ -2601,7 +2533,14 @@ getaddrinfo (const char *name, const char *service,
tmp.addr[0] = 0;
tmp.addr[1] = 0;
tmp.addr[2] = htonl (0xffff);
- tmp.addr[3] = sinp->sin_addr.s_addr;
+ /* Special case for lo interface, the source address
+ being possibly different than the interface
+ address. */
+ if ((ntohl(sinp->sin_addr.s_addr) & 0xff000000)
+ == 0x7f000000)
+ tmp.addr[3] = htonl(0x7f000001);
+ else
+ tmp.addr[3] = sinp->sin_addr.s_addr;
}
else
{
@@ -2703,7 +2642,7 @@ getaddrinfo (const char *name, const char *service,
return 0;
}
- return last_i ? -(last_i & GAIH_EAI) : EAI_NONAME;
+ return last_i ? -last_i : EAI_NONAME;
}
libc_hidden_def (getaddrinfo)
diff --git a/sysdeps/powerpc/bits/fenv.h b/sysdeps/powerpc/bits/fenv.h
index 122edd3dc3..86bf94e8fd 100644
--- a/sysdeps/powerpc/bits/fenv.h
+++ b/sysdeps/powerpc/bits/fenv.h
@@ -153,15 +153,12 @@ extern const fenv_t __fe_enabled_env;
extern const fenv_t __fe_nonieee_env;
# define FE_NONIEEE_ENV (&__fe_nonieee_env)
-__BEGIN_DECLS
-
/* Floating-point environment with all exceptions enabled. Note that
just evaluating this value does not change the processor exception mode.
Passing this mask to fesetenv will result in a prctl syscall to change
the MSR FE0/FE1 bits to "Precise Mode". On some processors this will
result in slower floating point execution. This will last until an
fenv or exception mask is installed that disables all FP exceptions. */
-extern const fenv_t *__fe_nomask_env (void);
# define FE_NOMASK_ENV FE_ENABLED_ENV
/* Floating-point environment with all exceptions disabled. Note that
@@ -169,9 +166,6 @@ extern const fenv_t *__fe_nomask_env (void);
Passing this mask to fesetenv will result in a prctl syscall to change
the MSR FE0/FE1 bits to "Ignore Exceptions Mode". On most processors
this allows the fastest possible floating point execution.*/
-extern const fenv_t *__fe_mask_env (void);
# define FE_MASK_ENV FE_DFL_ENV
-__END_DECLS
-
#endif
diff --git a/sysdeps/powerpc/bits/link.h b/sysdeps/powerpc/bits/link.h
index f06092f105..2f1da8be4f 100644
--- a/sysdeps/powerpc/bits/link.h
+++ b/sysdeps/powerpc/bits/link.h
@@ -63,7 +63,7 @@ extern unsigned int la_ppc32_gnu_pltexit (Elf32_Sym *__sym,
__END_DECLS
-#else
+#elif _CALL_ELF != 2
/* Registers for entry into PLT on PPC64. */
typedef struct La_ppc64_regs
@@ -107,4 +107,48 @@ extern unsigned int la_ppc64_gnu_pltexit (Elf64_Sym *__sym,
__END_DECLS
+#else
+
+/* Registers for entry into PLT on PPC64 in the ELFv2 ABI. */
+typedef struct La_ppc64v2_regs
+{
+ uint64_t lr_reg[8];
+ double lr_fp[13];
+ uint32_t __padding;
+ uint32_t lr_vrsave;
+ uint32_t lr_vreg[12][4] __attribute__ ((aligned (16)));
+ uint64_t lr_r1;
+ uint64_t lr_lr;
+} La_ppc64v2_regs;
+
+/* Return values for calls from PLT on PPC64 in the ELFv2 ABI. */
+typedef struct La_ppc64v2_retval
+{
+ uint64_t lrv_r3;
+ uint64_t lrv_r4;
+ double lrv_fp[10];
+ uint32_t lrv_vreg[8][4] __attribute__ ((aligned (16)));
+} La_ppc64v2_retval;
+
+
+__BEGIN_DECLS
+
+extern Elf64_Addr la_ppc64v2_gnu_pltenter (Elf64_Sym *__sym,
+ unsigned int __ndx,
+ uintptr_t *__refcook,
+ uintptr_t *__defcook,
+ La_ppc64v2_regs *__regs,
+ unsigned int *__flags,
+ const char *__symname,
+ long int *__framesizep);
+extern unsigned int la_ppc64v2_gnu_pltexit (Elf64_Sym *__sym,
+ unsigned int __ndx,
+ uintptr_t *__refcook,
+ uintptr_t *__defcook,
+ const La_ppc64v2_regs *__inregs,
+ La_ppc64v2_retval *__outregs,
+ const char *__symname);
+
+__END_DECLS
+
#endif
diff --git a/sysdeps/powerpc/bits/mathinline.h b/sysdeps/powerpc/bits/mathinline.h
index 140fff08ef..cef5b29b14 100644
--- a/sysdeps/powerpc/bits/mathinline.h
+++ b/sysdeps/powerpc/bits/mathinline.h
@@ -61,21 +61,28 @@
__MATH_INLINE int
__NTH (__signbitf (float __x))
{
+#if __GNUC_PREREQ (4, 0)
+ return __builtin_signbitf (__x);
+#else
__extension__ union { float __f; int __i; } __u = { __f: __x };
return __u.__i < 0;
+#endif
}
__MATH_INLINE int
__NTH (__signbit (double __x))
{
- __extension__ union { double __d; int __i[2]; } __u = { __d: __x };
- return __u.__i[0] < 0;
+#if __GNUC_PREREQ (4, 0)
+ return __builtin_signbit (__x);
+#else
+ __extension__ union { double __d; long long __i; } __u = { __d: __x };
+ return __u.__i < 0;
+#endif
}
# ifdef __LONG_DOUBLE_128__
__MATH_INLINE int
__NTH (__signbitl (long double __x))
{
- __extension__ union { long double __d; int __i[4]; } __u = { __d: __x };
- return __u.__i[0] < 0;
+ return __signbit ((double) __x);
}
# endif
# endif
@@ -92,22 +99,17 @@ __NTH (lrint (double __x))
{
union {
double __d;
- int __ll[2];
+ long long __ll;
} __u;
__asm__ ("fctiw %0,%1" : "=f"(__u.__d) : "f"(__x));
- return __u.__ll[1];
+ return __u.__ll;
}
__MATH_INLINE long int lrintf (float __x) __THROW;
__MATH_INLINE long int
__NTH (lrintf (float __x))
{
- union {
- double __d;
- int __ll[2];
- } __u;
- __asm__ ("fctiw %0,%1" : "=f"(__u.__d) : "f"(__x));
- return __u.__ll[1];
+ return lrint ((double) __x);
}
# endif
diff --git a/sysdeps/powerpc/configure b/sysdeps/powerpc/configure
index 4afbc29ab3..fccee659a0 100644
--- a/sysdeps/powerpc/configure
+++ b/sysdeps/powerpc/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/powerpc.
# Accept binutils which knows about ".machine".
diff --git a/sysdeps/powerpc/configure.in b/sysdeps/powerpc/configure.ac
index 28cc85934d..28cc85934d 100644
--- a/sysdeps/powerpc/configure.in
+++ b/sysdeps/powerpc/configure.ac
diff --git a/sysdeps/powerpc/ffs.c b/sysdeps/powerpc/ffs.c
index e0fee46b32..deba0cdd09 100644
--- a/sysdeps/powerpc/ffs.c
+++ b/sysdeps/powerpc/ffs.c
@@ -35,6 +35,7 @@ __ffs (int x)
return 32 - cnt;
}
weak_alias (__ffs, ffs)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
#if ULONG_MAX == UINT_MAX
#undef ffsl
diff --git a/sysdeps/powerpc/fpu/e_sqrt.c b/sysdeps/powerpc/fpu/e_sqrt.c
index 3efe277f37..2d50fb525e 100644
--- a/sysdeps/powerpc/fpu/e_sqrt.c
+++ b/sysdeps/powerpc/fpu/e_sqrt.c
@@ -145,7 +145,7 @@ __slow_ieee754_sqrt (double x)
feraiseexcept (FE_INVALID_SQRT);
fenv_union_t u = { .fenv = fegetenv_register () };
- if ((u.l[1] & FE_INVALID) == 0)
+ if ((u.l & FE_INVALID) == 0)
#endif
feraiseexcept (FE_INVALID);
x = a_nan.value;
diff --git a/sysdeps/powerpc/fpu/e_sqrtf.c b/sysdeps/powerpc/fpu/e_sqrtf.c
index 6e50a3cd75..91d2d37d7b 100644
--- a/sysdeps/powerpc/fpu/e_sqrtf.c
+++ b/sysdeps/powerpc/fpu/e_sqrtf.c
@@ -121,7 +121,7 @@ __slow_ieee754_sqrtf (float x)
feraiseexcept (FE_INVALID_SQRT);
fenv_union_t u = { .fenv = fegetenv_register () };
- if ((u.l[1] & FE_INVALID) == 0)
+ if ((u.l & FE_INVALID) == 0)
#endif
feraiseexcept (FE_INVALID);
x = a_nan.value;
diff --git a/sysdeps/powerpc/fpu/fclrexcpt.c b/sysdeps/powerpc/fpu/fclrexcpt.c
index 86575dba67..7f66e21ce2 100644
--- a/sysdeps/powerpc/fpu/fclrexcpt.c
+++ b/sysdeps/powerpc/fpu/fclrexcpt.c
@@ -28,8 +28,8 @@ __feclearexcept (int excepts)
u.fenv = fegetenv_register ();
/* Clear the relevant bits. */
- u.l[1] = u.l[1] & ~((-(excepts >> (31 - FPSCR_VX) & 1) & FE_ALL_INVALID)
- | (excepts & FPSCR_STICKY_BITS));
+ u.l = u.l & ~((-(excepts >> (31 - FPSCR_VX) & 1) & FE_ALL_INVALID)
+ | (excepts & FPSCR_STICKY_BITS));
/* Put the new state in effect. */
fesetenv_register (u.fenv);
diff --git a/sysdeps/powerpc/fpu/fe_nomask.c b/sysdeps/powerpc/fpu/fe_nomask.c
index 5127000c26..f54c0760d5 100644
--- a/sysdeps/powerpc/fpu/fe_nomask.c
+++ b/sysdeps/powerpc/fpu/fe_nomask.c
@@ -24,10 +24,9 @@
normally involve a syscall. */
const fenv_t *
-__fe_nomask_env(void)
+__fe_nomask_env_priv (void)
{
__set_errno (ENOSYS);
return FE_ENABLED_ENV;
}
-libm_hidden_def (__fe_nomask_env)
-stub_warning (__fe_nomask_env)
+stub_warning (__fe_nomask_env_priv)
diff --git a/sysdeps/powerpc/fpu/fedisblxcpt.c b/sysdeps/powerpc/fpu/fedisblxcpt.c
index 659566b67e..f2c45a60c6 100644
--- a/sysdeps/powerpc/fpu/fedisblxcpt.c
+++ b/sysdeps/powerpc/fpu/fedisblxcpt.c
@@ -32,15 +32,15 @@ fedisableexcept (int excepts)
fe.fenv = fegetenv_register ();
if (excepts & FE_INEXACT)
- fe.l[1] &= ~(1 << (31 - FPSCR_XE));
+ fe.l &= ~(1 << (31 - FPSCR_XE));
if (excepts & FE_DIVBYZERO)
- fe.l[1] &= ~(1 << (31 - FPSCR_ZE));
+ fe.l &= ~(1 << (31 - FPSCR_ZE));
if (excepts & FE_UNDERFLOW)
- fe.l[1] &= ~(1 << (31 - FPSCR_UE));
+ fe.l &= ~(1 << (31 - FPSCR_UE));
if (excepts & FE_OVERFLOW)
- fe.l[1] &= ~(1 << (31 - FPSCR_OE));
+ fe.l &= ~(1 << (31 - FPSCR_OE));
if (excepts & FE_INVALID)
- fe.l[1] &= ~(1 << (31 - FPSCR_VE));
+ fe.l &= ~(1 << (31 - FPSCR_VE));
fesetenv_register (fe.fenv);
new = __fegetexcept ();
diff --git a/sysdeps/powerpc/fpu/feenablxcpt.c b/sysdeps/powerpc/fpu/feenablxcpt.c
index fc4bfffad5..35e977e1e0 100644
--- a/sysdeps/powerpc/fpu/feenablxcpt.c
+++ b/sysdeps/powerpc/fpu/feenablxcpt.c
@@ -32,20 +32,20 @@ feenableexcept (int excepts)
fe.fenv = fegetenv_register ();
if (excepts & FE_INEXACT)
- fe.l[1] |= (1 << (31 - FPSCR_XE));
+ fe.l |= (1 << (31 - FPSCR_XE));
if (excepts & FE_DIVBYZERO)
- fe.l[1] |= (1 << (31 - FPSCR_ZE));
+ fe.l |= (1 << (31 - FPSCR_ZE));
if (excepts & FE_UNDERFLOW)
- fe.l[1] |= (1 << (31 - FPSCR_UE));
+ fe.l |= (1 << (31 - FPSCR_UE));
if (excepts & FE_OVERFLOW)
- fe.l[1] |= (1 << (31 - FPSCR_OE));
+ fe.l |= (1 << (31 - FPSCR_OE));
if (excepts & FE_INVALID)
- fe.l[1] |= (1 << (31 - FPSCR_VE));
+ fe.l |= (1 << (31 - FPSCR_VE));
fesetenv_register (fe.fenv);
new = __fegetexcept ();
if (new != 0 && result == 0)
- (void)__fe_nomask_env ();
+ (void) __fe_nomask_env_priv ();
if ((new & excepts) != excepts)
result = -1;
diff --git a/sysdeps/powerpc/fpu/fegetexcept.c b/sysdeps/powerpc/fpu/fegetexcept.c
index f3d5724e91..23d47a27e9 100644
--- a/sysdeps/powerpc/fpu/fegetexcept.c
+++ b/sysdeps/powerpc/fpu/fegetexcept.c
@@ -27,15 +27,15 @@ __fegetexcept (void)
fe.fenv = fegetenv_register ();
- if (fe.l[1] & (1 << (31 - FPSCR_XE)))
+ if (fe.l & (1 << (31 - FPSCR_XE)))
result |= FE_INEXACT;
- if (fe.l[1] & (1 << (31 - FPSCR_ZE)))
+ if (fe.l & (1 << (31 - FPSCR_ZE)))
result |= FE_DIVBYZERO;
- if (fe.l[1] & (1 << (31 - FPSCR_UE)))
+ if (fe.l & (1 << (31 - FPSCR_UE)))
result |= FE_UNDERFLOW;
- if (fe.l[1] & (1 << (31 - FPSCR_OE)))
+ if (fe.l & (1 << (31 - FPSCR_OE)))
result |= FE_OVERFLOW;
- if (fe.l[1] & (1 << (31 - FPSCR_VE)))
+ if (fe.l & (1 << (31 - FPSCR_VE)))
result |= FE_INVALID;
return result;
diff --git a/sysdeps/powerpc/fpu/fegetround.c b/sysdeps/powerpc/fpu/fegetround.c
index bcb6caab9d..078911f4a3 100644
--- a/sysdeps/powerpc/fpu/fegetround.c
+++ b/sysdeps/powerpc/fpu/fegetround.c
@@ -24,3 +24,4 @@ fegetround (void)
{
return __fegetround();
}
+libm_hidden_def (fegetround)
diff --git a/sysdeps/powerpc/fpu/feholdexcpt.c b/sysdeps/powerpc/fpu/feholdexcpt.c
index 013d2bfbb4..0ecf0f7bc5 100644
--- a/sysdeps/powerpc/fpu/feholdexcpt.c
+++ b/sysdeps/powerpc/fpu/feholdexcpt.c
@@ -30,13 +30,12 @@ feholdexcept (fenv_t *envp)
/* Clear everything except for the rounding modes and non-IEEE arithmetic
flag. */
- new.l[1] = old.l[1] & 7;
- new.l[0] = old.l[0];
+ new.l = old.l & 0xffffffff00000007LL;
/* If the old env had any enabled exceptions, then mask SIGFPE in the
MSR FE0/FE1 bits. This may allow the FPU to run faster because it
always takes the default action and can not generate SIGFPE. */
- if ((old.l[1] & _FPU_MASK_ALL) != 0)
+ if ((old.l & _FPU_MASK_ALL) != 0)
(void)__fe_mask_env ();
/* Put the new state in effect. */
diff --git a/sysdeps/powerpc/fpu/fenv_libc.h b/sysdeps/powerpc/fpu/fenv_libc.h
index 1910951568..74d633d942 100644
--- a/sysdeps/powerpc/fpu/fenv_libc.h
+++ b/sysdeps/powerpc/fpu/fenv_libc.h
@@ -23,7 +23,9 @@
#include <ldsodefs.h>
#include <sysdep.h>
-libm_hidden_proto (__fe_nomask_env)
+extern const fenv_t *__fe_nomask_env_priv (void);
+
+extern const fenv_t *__fe_mask_env (void) attribute_hidden;
/* The sticky bits in the FPSCR indicating exceptions have occurred. */
#define FPSCR_STICKY_BITS ((FE_ALL_EXCEPT | FE_ALL_INVALID) & ~FE_INVALID)
@@ -69,7 +71,7 @@ libm_hidden_proto (__fe_nomask_env)
typedef union
{
fenv_t fenv;
- unsigned int l[2];
+ unsigned long long l;
} fenv_union_t;
@@ -81,7 +83,6 @@ __fegetround (void)
"mfcr %0" : "=r"(result) : : "cr7");
return result & 3;
}
-#define fegetround() __fegetround()
static inline int
__fesetround (int round)
@@ -105,7 +106,6 @@ __fesetround (int round)
return 0;
}
-#define fesetround(mode) __fesetround(mode)
/* Definitions of all the FPSCR bit numbers */
enum {
diff --git a/sysdeps/powerpc/fpu/fenv_private.h b/sysdeps/powerpc/fpu/fenv_private.h
new file mode 100644
index 0000000000..bc78c3ffb0
--- /dev/null
+++ b/sysdeps/powerpc/fpu/fenv_private.h
@@ -0,0 +1,274 @@
+/* Private floating point rounding and exceptions handling. PowerPC version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef FENV_PRIVATE_H
+#define FENV_PRIVATE_H 1
+
+#include <fenv.h>
+#include <fenv_libc.h>
+#include <fpu_control.h>
+
+#define _FPU_MASK_ALL (_FPU_MASK_ZM | _FPU_MASK_OM | _FPU_MASK_UM \
+ | _FPU_MASK_XM | _FPU_MASK_IM)
+
+/* Mask everything but the rounding moded and non-IEEE arithmetic flags. */
+#define _FPU_MASK_ROUNDING 0xffffffff00000007LL
+
+/* Mask restore rounding mode and exception enabled. */
+#define _FPU_MASK_EXCEPT_ROUND 0xffffffff1fffff00LL
+
+/* Mask exception enable but fraction rounded/inexact and FP result/CC
+ bits. */
+#define _FPU_MASK_FRAC_INEX_RET_CC 0x1ff80fff
+
+static __always_inline void
+libc_feholdexcept_ppc (fenv_t *envp)
+{
+ fenv_union_t old, new;
+
+ old.fenv = *envp = fegetenv_register ();
+
+ new.l = old.l & _FPU_MASK_ROUNDING;
+
+ /* If the old env had any enabled exceptions, then mask SIGFPE in the
+ MSR FE0/FE1 bits. This may allow the FPU to run faster because it
+ always takes the default action and can not generate SIGFPE. */
+ if ((old.l & _FPU_MASK_ALL) != 0)
+ (void) __fe_mask_env ();
+
+ fesetenv_register (new.fenv);
+}
+
+static __always_inline void
+libc_fesetround_ppc (int r)
+{
+ __fesetround (r);
+}
+
+static __always_inline void
+libc_feholdexcept_setround_ppc (fenv_t *envp, int r)
+{
+ fenv_union_t old, new;
+
+ old.fenv = *envp = fegetenv_register ();
+
+ new.l = (old.l & _FPU_MASK_ROUNDING) | r;
+
+ if ((old.l & _FPU_MASK_ALL) != 0)
+ (void) __fe_mask_env ();
+
+ fesetenv_register (new.fenv);
+}
+
+static __always_inline int
+libc_fetestexcept_ppc (int e)
+{
+ fenv_union_t u;
+ u.fenv = fegetenv_register ();
+ return u.l & e;
+}
+
+static __always_inline void
+libc_fesetenv_ppc (const fenv_t *envp)
+{
+ fenv_union_t old, new;
+
+ new.fenv = *envp;
+ old.fenv = fegetenv_register ();
+
+ /* If the old env has no enabled exceptions and the new env has any enabled
+ exceptions, then unmask SIGFPE in the MSR FE0/FE1 bits. This will put the
+ hardware into "precise mode" and may cause the FPU to run slower on some
+ hardware. */
+ if ((old.l & _FPU_MASK_ALL) == 0 && (new.l & _FPU_MASK_ALL) != 0)
+ (void) __fe_nomask_env_priv ();
+
+ /* If the old env had any enabled exceptions and the new env has no enabled
+ exceptions, then mask SIGFPE in the MSR FE0/FE1 bits. This may allow the
+ FPU to run faster because it always takes the default action and can not
+ generate SIGFPE. */
+ if ((old.l & _FPU_MASK_ALL) != 0 && (new.l & _FPU_MASK_ALL) == 0)
+ (void) __fe_mask_env ();
+
+ fesetenv_register (*envp);
+}
+
+static __always_inline int
+libc_feupdateenv_test_ppc (fenv_t *envp, int ex)
+{
+ fenv_union_t old, new;
+
+ new.fenv = *envp;
+ old.fenv = fegetenv_register ();
+
+ /* Restore rounding mode and exception enable from *envp and merge
+ exceptions. Leave fraction rounded/inexact and FP result/CC bits
+ unchanged. */
+ new.l = (old.l & _FPU_MASK_EXCEPT_ROUND)
+ | (new.l & _FPU_MASK_FRAC_INEX_RET_CC);
+
+ if ((old.l & _FPU_MASK_ALL) == 0 && (new.l & _FPU_MASK_ALL) != 0)
+ (void) __fe_nomask_env_priv ();
+
+ if ((old.l & _FPU_MASK_ALL) != 0 && (new.l & _FPU_MASK_ALL) == 0)
+ (void) __fe_mask_env ();
+
+ fesetenv_register (new.fenv);
+
+ return old.l & ex;
+}
+
+static __always_inline void
+libc_feupdateenv_ppc (fenv_t *e)
+{
+ libc_feupdateenv_test_ppc (e, 0);
+}
+
+static __always_inline void
+libc_feholdsetround_ppc (fenv_t *e, int r)
+{
+ fenv_union_t old, new;
+
+ old.fenv = fegetenv_register ();
+ /* Clear current precision and set newer one. */
+ new.l = (old.l & ~0x3) | r;
+ *e = old.fenv;
+
+ if ((old.l & _FPU_MASK_ALL) != 0)
+ (void) __fe_mask_env ();
+ fesetenv_register (new.fenv);
+}
+
+static __always_inline void
+libc_feresetround_ppc (fenv_t *envp)
+{
+ fenv_union_t old, new;
+
+ new.fenv = *envp;
+ old.fenv = fegetenv_register ();
+
+ /* Restore rounding mode and exception enable from *envp and merge
+ exceptions. Leave fraction rounded/inexact and FP result/CC bits
+ unchanged. */
+ new.l = (old.l & _FPU_MASK_EXCEPT_ROUND)
+ | (new.l & _FPU_MASK_FRAC_INEX_RET_CC);
+
+ if ((old.l & _FPU_MASK_ALL) == 0 && (new.l & _FPU_MASK_ALL) != 0)
+ (void) __fe_nomask_env_priv ();
+
+ if ((old.l & _FPU_MASK_ALL) != 0 && (new.l & _FPU_MASK_ALL) == 0)
+ (void) __fe_mask_env ();
+
+ /* Atomically enable and raise (if appropriate) exceptions set in `new'. */
+ fesetenv_register (new.fenv);
+}
+
+#define libc_feholdexceptf libc_feholdexcept_ppc
+#define libc_feholdexcept libc_feholdexcept_ppc
+#define libc_feholdexcept_setroundf libc_feholdexcept_setround_ppc
+#define libc_feholdexcept_setround libc_feholdexcept_setround_ppc
+#define libc_fetestexceptf libc_fetestexcept_ppc
+#define libc_fetestexcept libc_fetestexcept_ppc
+#define libc_fesetroundf libc_fesetround_ppc
+#define libc_fesetround libc_fesetround_ppc
+#define libc_fesetenvf libc_fesetenv_ppc
+#define libc_fesetenv libc_fesetenv_ppc
+#define libc_feupdateenv_testf libc_feupdateenv_test_ppc
+#define libc_feupdateenv_test libc_feupdateenv_test_ppc
+#define libc_feupdateenvf libc_feupdateenv_ppc
+#define libc_feupdateenv libc_feupdateenv_ppc
+#define libc_feholdsetroundf libc_feholdsetround_ppc
+#define libc_feholdsetround libc_feholdsetround_ppc
+#define libc_feresetroundf libc_feresetround_ppc
+#define libc_feresetround libc_feresetround_ppc
+
+
+/* We have support for rounding mode context. */
+#define HAVE_RM_CTX 1
+
+static __always_inline void
+libc_feholdexcept_setround_ppc_ctx (struct rm_ctx *ctx, int r)
+{
+ fenv_union_t old, new;
+
+ old.fenv = fegetenv_register ();
+
+ new.l = (old.l & _FPU_MASK_ROUNDING) | r;
+ ctx->env = old.fenv;
+ if (__glibc_unlikely (new.l != old.l))
+ {
+ if ((old.l & _FPU_MASK_ALL) != 0)
+ (void) __fe_mask_env ();
+ fesetenv_register (new.fenv);
+ ctx->updated_status = true;
+ }
+ else
+ ctx->updated_status = false;
+}
+
+static __always_inline void
+libc_fesetenv_ppc_ctx (struct rm_ctx *ctx)
+{
+ libc_fesetenv_ppc (&ctx->env);
+}
+
+static __always_inline void
+libc_feupdateenv_ppc_ctx (struct rm_ctx *ctx)
+{
+ if (__glibc_unlikely (ctx->updated_status))
+ libc_feupdateenv_test_ppc (&ctx->env, 0);
+}
+
+static __always_inline void
+libc_feholdsetround_ppc_ctx (struct rm_ctx *ctx, int r)
+{
+ fenv_union_t old, new;
+
+ old.fenv = fegetenv_register ();
+ new.l = (old.l & ~0x3) | r;
+ ctx->env = old.fenv;
+ if (__glibc_unlikely (new.l != old.l))
+ {
+ if ((old.l & _FPU_MASK_ALL) != 0)
+ (void) __fe_mask_env ();
+ fesetenv_register (new.fenv);
+ ctx->updated_status = true;
+ }
+ else
+ ctx->updated_status = false;
+}
+
+static __always_inline void
+libc_feresetround_ppc_ctx (struct rm_ctx *ctx)
+{
+ if (__glibc_unlikely (ctx->updated_status))
+ libc_feresetround_ppc (&ctx->env);
+}
+
+#define libc_feholdexcept_setroundf_ctx libc_feholdexcept_setround_ppc_ctx
+#define libc_feholdexcept_setround_ctx libc_feholdexcept_setround_ppc_ctx
+#define libc_fesetenv_ctx libc_fesetenv_ppc_ctx
+#define libc_fesetenvf_ctx libc_fesetenv_ppc_ctx
+#define libc_feholdsetround_ctx libc_feholdsetround_ppc_ctx
+#define libc_feholdsetroundf_ctx libc_feholdsetround_ppc_ctx
+#define libc_feresetround_ctx libc_feresetround_ppc_ctx
+#define libc_feresetroundf_ctx libc_feresetround_ppc_ctx
+#define libc_feupdateenvf_ctx libc_feupdateenv_ppc_ctx
+#define libc_feupdateenv_ctx libc_feupdateenv_ppc_ctx
+
+#endif
diff --git a/sysdeps/powerpc/fpu/fesetenv.c b/sysdeps/powerpc/fpu/fesetenv.c
index e92adb4c58..5de6ff5f71 100644
--- a/sysdeps/powerpc/fpu/fesetenv.c
+++ b/sysdeps/powerpc/fpu/fesetenv.c
@@ -34,14 +34,14 @@ __fesetenv (const fenv_t *envp)
exceptions, then unmask SIGFPE in the MSR FE0/FE1 bits. This will put the
hardware into "precise mode" and may cause the FPU to run slower on some
hardware. */
- if ((old.l[1] & _FPU_MASK_ALL) == 0 && (new.l[1] & _FPU_MASK_ALL) != 0)
- (void)__fe_nomask_env ();
+ if ((old.l & _FPU_MASK_ALL) == 0 && (new.l & _FPU_MASK_ALL) != 0)
+ (void) __fe_nomask_env_priv ();
/* If the old env had any enabled exceptions and the new env has no enabled
exceptions, then mask SIGFPE in the MSR FE0/FE1 bits. This may allow the
FPU to run faster because it always takes the default action and can not
generate SIGFPE. */
- if ((old.l[1] & _FPU_MASK_ALL) != 0 && (new.l[1] & _FPU_MASK_ALL) == 0)
+ if ((old.l & _FPU_MASK_ALL) != 0 && (new.l & _FPU_MASK_ALL) == 0)
(void)__fe_mask_env ();
fesetenv_register (*envp);
diff --git a/sysdeps/powerpc/fpu/feupdateenv.c b/sysdeps/powerpc/fpu/feupdateenv.c
index 6500ea1737..262e2135a6 100644
--- a/sysdeps/powerpc/fpu/feupdateenv.c
+++ b/sysdeps/powerpc/fpu/feupdateenv.c
@@ -34,20 +34,20 @@ __feupdateenv (const fenv_t *envp)
/* Restore rounding mode and exception enable from *envp and merge
exceptions. Leave fraction rounded/inexact and FP result/CC bits
unchanged. */
- new.l[1] = (old.l[1] & 0x1FFFFF00) | (new.l[1] & 0x1FF80FFF);
+ new.l = (old.l & 0xffffffff1fffff00LL) | (new.l & 0x1ff80fff);
/* If the old env has no enabled exceptions and the new env has any enabled
exceptions, then unmask SIGFPE in the MSR FE0/FE1 bits. This will put
the hardware into "precise mode" and may cause the FPU to run slower on
some hardware. */
- if ((old.l[1] & _FPU_MASK_ALL) == 0 && (new.l[1] & _FPU_MASK_ALL) != 0)
- (void)__fe_nomask_env ();
+ if ((old.l & _FPU_MASK_ALL) == 0 && (new.l & _FPU_MASK_ALL) != 0)
+ (void) __fe_nomask_env_priv ();
/* If the old env had any enabled exceptions and the new env has no enabled
exceptions, then mask SIGFPE in the MSR FE0/FE1 bits. This may allow the
FPU to run faster because it always takes the default action and can not
generate SIGFPE. */
- if ((old.l[1] & _FPU_MASK_ALL) != 0 && (new.l[1] & _FPU_MASK_ALL) == 0)
+ if ((old.l & _FPU_MASK_ALL) != 0 && (new.l & _FPU_MASK_ALL) == 0)
(void)__fe_mask_env ();
/* Atomically enable and raise (if appropriate) exceptions set in `new'. */
diff --git a/sysdeps/powerpc/fpu/fgetexcptflg.c b/sysdeps/powerpc/fpu/fgetexcptflg.c
index f6327ce170..1395bede0c 100644
--- a/sysdeps/powerpc/fpu/fgetexcptflg.c
+++ b/sysdeps/powerpc/fpu/fgetexcptflg.c
@@ -27,7 +27,7 @@ __fegetexceptflag (fexcept_t *flagp, int excepts)
u.fenv = fegetenv_register ();
/* Return (all of) it. */
- *flagp = u.l[1] & excepts & FE_ALL_EXCEPT;
+ *flagp = u.l & excepts & FE_ALL_EXCEPT;
/* Success. */
return 0;
diff --git a/sysdeps/powerpc/fpu/fraiseexcpt.c b/sysdeps/powerpc/fpu/fraiseexcpt.c
index 9118c1954a..6193071bd4 100644
--- a/sysdeps/powerpc/fpu/fraiseexcpt.c
+++ b/sysdeps/powerpc/fpu/fraiseexcpt.c
@@ -33,11 +33,11 @@ __feraiseexcept (int excepts)
u.fenv = fegetenv_register ();
/* Add the exceptions */
- u.l[1] = (u.l[1]
- | (excepts & FPSCR_STICKY_BITS)
- /* Turn FE_INVALID into FE_INVALID_SOFTWARE. */
- | (excepts >> ((31 - FPSCR_VX) - (31 - FPSCR_VXSOFT))
- & FE_INVALID_SOFTWARE));
+ u.l = (u.l
+ | (excepts & FPSCR_STICKY_BITS)
+ /* Turn FE_INVALID into FE_INVALID_SOFTWARE. */
+ | (excepts >> ((31 - FPSCR_VX) - (31 - FPSCR_VXSOFT))
+ & FE_INVALID_SOFTWARE));
/* Store the new status word (along with the rest of the environment),
triggering any appropriate exceptions. */
@@ -49,7 +49,7 @@ __feraiseexcept (int excepts)
don't have FE_INVALID_SOFTWARE implemented. Detect this
case and raise FE_INVALID_SNAN instead. */
u.fenv = fegetenv_register ();
- if ((u.l[1] & FE_INVALID) == 0)
+ if ((u.l & FE_INVALID) == 0)
set_fpscr_bit (FPSCR_VXSNAN);
}
diff --git a/sysdeps/powerpc/fpu/fsetexcptflg.c b/sysdeps/powerpc/fpu/fsetexcptflg.c
index c050d4022b..0d309c8d5f 100644
--- a/sysdeps/powerpc/fpu/fsetexcptflg.c
+++ b/sysdeps/powerpc/fpu/fsetexcptflg.c
@@ -31,10 +31,10 @@ __fesetexceptflag (const fexcept_t *flagp, int excepts)
flag = *flagp & excepts;
/* Replace the exception status */
- u.l[1] = ((u.l[1] & ~(FPSCR_STICKY_BITS & excepts))
- | (flag & FPSCR_STICKY_BITS)
- | (flag >> ((31 - FPSCR_VX) - (31 - FPSCR_VXSOFT))
- & FE_INVALID_SOFTWARE));
+ u.l = ((u.l & ~(FPSCR_STICKY_BITS & excepts))
+ | (flag & FPSCR_STICKY_BITS)
+ | (flag >> ((31 - FPSCR_VX) - (31 - FPSCR_VXSOFT))
+ & FE_INVALID_SOFTWARE));
/* Store the new status word (along with the rest of the environment).
This may cause floating-point exceptions if the restored state
diff --git a/sysdeps/powerpc/fpu/ftestexcept.c b/sysdeps/powerpc/fpu/ftestexcept.c
index 0dbc3befb8..86eea0fb08 100644
--- a/sysdeps/powerpc/fpu/ftestexcept.c
+++ b/sysdeps/powerpc/fpu/ftestexcept.c
@@ -28,6 +28,6 @@ fetestexcept (int excepts)
/* The FE_INVALID bit is dealt with correctly by the hardware, so we can
just: */
- return u.l[1] & excepts;
+ return u.l & excepts;
}
libm_hidden_def (fetestexcept)
diff --git a/sysdeps/powerpc/fpu/libm-test-ulps b/sysdeps/powerpc/fpu/libm-test-ulps
index 6fdace9ee4..4450083a6b 100644
--- a/sysdeps/powerpc/fpu/libm-test-ulps
+++ b/sysdeps/powerpc/fpu/libm-test-ulps
@@ -7,6 +7,30 @@ ldouble: 1
Test "acos (-0x0.ffffffp0)":
ildouble: 1
ldouble: 1
+Test "acos (-0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos (-0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos (0x1.70ef54646d496892137dfd73f58p-56)":
+ildouble: 1
+ldouble: 1
+Test "acos (0x1.70ef54646d496892137dfd73f6p-56)":
+ildouble: 1
+ldouble: 1
+Test "acos (0x1.70ef54646d496892p-56)":
+ildouble: 1
+ldouble: 1
+Test "acos (0x1.70ef54646d496894p-56)":
+ildouble: 1
+ldouble: 1
+Test "acos (0x1.70ef54646d496p-56)":
+ildouble: 1
+ldouble: 1
+Test "acos (0x1.70ef54646d497p-56)":
+ildouble: 1
+ldouble: 1
Test "acos (2e-17)":
ildouble: 1
ldouble: 1
@@ -20,6 +44,15 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "acos_downward (-0x8p-4)":
+float: 1
+ifloat: 1
+Test "acos_downward (-0xf.fffffffffffffffp-4)":
+ildouble: 2
+ldouble: 2
+Test "acos_downward (-0xf.fffffffffffp-4)":
+ildouble: 2
+ldouble: 2
Test "acos_downward (-1)":
float: 1
ifloat: 1
@@ -33,6 +66,62 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "acos_downward (0x1.70ef54646d496892137dfd73f58p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_downward (0x1.70ef54646d496892137dfd73f6p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_downward (0x1.70ef54646d496892p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_downward (0x1.70ef54646d496894p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_downward (0x1.70ef54646d496p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_downward (0x1.70ef54646d497p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_downward (0x1.70ef54p-56)":
+ildouble: 3
+ldouble: 3
+Test "acos_downward (0x1.70ef56p-56)":
+ildouble: 3
+ldouble: 3
+Test "acos_downward (0x1p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_downward (0xcp-4)":
+ildouble: 1
+ldouble: 1
+
+# acos_tonearest
+Test "acos_tonearest (-0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_tonearest (-0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_tonearest (0x1.70ef54646d496892137dfd73f58p-56)":
+ildouble: 1
+ldouble: 1
+Test "acos_tonearest (0x1.70ef54646d496892137dfd73f6p-56)":
+ildouble: 1
+ldouble: 1
+Test "acos_tonearest (0x1.70ef54646d496892p-56)":
+ildouble: 1
+ldouble: 1
+Test "acos_tonearest (0x1.70ef54646d496894p-56)":
+ildouble: 1
+ldouble: 1
+Test "acos_tonearest (0x1.70ef54646d496p-56)":
+ildouble: 1
+ldouble: 1
+Test "acos_tonearest (0x1.70ef54646d497p-56)":
+ildouble: 1
+ldouble: 1
# acos_towardzero
Test "acos_towardzero (-0)":
@@ -43,6 +132,15 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "acos_towardzero (-0x8p-4)":
+float: 1
+ifloat: 1
+Test "acos_towardzero (-0xf.fffffffffffffffp-4)":
+ildouble: 2
+ldouble: 2
+Test "acos_towardzero (-0xf.fffffffffffp-4)":
+ildouble: 2
+ldouble: 2
Test "acos_towardzero (-1)":
float: 1
ifloat: 1
@@ -56,17 +154,77 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "acos_towardzero (0x1.70ef54646d496892137dfd73f58p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_towardzero (0x1.70ef54646d496892137dfd73f6p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_towardzero (0x1.70ef54646d496892p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_towardzero (0x1.70ef54646d496894p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_towardzero (0x1.70ef54646d496p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_towardzero (0x1.70ef54646d497p-56)":
+ildouble: 2
+ldouble: 2
+Test "acos_towardzero (0x1.70ef54p-56)":
+ildouble: 3
+ldouble: 3
+Test "acos_towardzero (0x1.70ef56p-56)":
+ildouble: 3
+ldouble: 3
+Test "acos_towardzero (0x1p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_towardzero (0xcp-4)":
+ildouble: 1
+ldouble: 1
# acos_upward
+Test "acos_upward (+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "acos_upward (-0)":
+double: 1
+idouble: 1
ildouble: 2
ldouble: 2
+Test "acos_upward (-0x1p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "acos_upward (-1)":
ildouble: 2
ldouble: 2
Test "acos_upward (0)":
ildouble: 2
ldouble: 2
+Test "acos_upward (0x1.70ef54646d496p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1.70ef54646d497p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1.70ef54p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1.70ef56p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_upward (0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
# asin
Test "asin (-0x0.ffffffff8p0)":
@@ -75,6 +233,12 @@ ldouble: 1
Test "asin (-0x0.ffffffp0)":
ildouble: 1
ldouble: 1
+Test "asin (-0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin (-0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
Test "asin (0.75)":
ildouble: 2
ldouble: 2
@@ -84,6 +248,15 @@ ldouble: 1
Test "asin (0x0.ffffffp0)":
ildouble: 1
ldouble: 1
+Test "asin (0xcp-4)":
+ildouble: 2
+ldouble: 2
+Test "asin (0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin (0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
# asin_downward
Test "asin_downward (-0.5)":
@@ -91,6 +264,39 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "asin_downward (-0x1p+0)":
+double: 1
+idouble: 1
+Test "asin_downward (-0x8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.fffffff8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.ffffffffffff8p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "asin_downward (-0xf.fffffffffffffffp-4)":
+ildouble: 2
+ldouble: 2
+Test "asin_downward (-0xf.fffffffffffp-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "asin_downward (-0xf.fffffp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
Test "asin_downward (-1.0)":
ildouble: 1
ldouble: 1
@@ -99,16 +305,60 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "asin_downward (0x8p-4)":
+float: 1
+ifloat: 1
+Test "asin_downward (0xcp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_downward (0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_downward (0xf.fffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_downward (0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
Test "asin_downward (1.0)":
float: 1
ifloat: 1
+# asin_tonearest
+Test "asin_tonearest (-0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_tonearest (-0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_tonearest (0xcp-4)":
+ildouble: 2
+ldouble: 2
+Test "asin_tonearest (0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_tonearest (0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
+
# asin_towardzero
Test "asin_towardzero (-0.5)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "asin_towardzero (-0x8p-4)":
+float: 1
+ifloat: 1
+Test "asin_towardzero (-0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_towardzero (-0xf.fffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_towardzero (-0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
Test "asin_towardzero (-1.0)":
float: 1
ifloat: 1
@@ -117,14 +367,61 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "asin_towardzero (0x8p-4)":
+float: 1
+ifloat: 1
+Test "asin_towardzero (0xcp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_towardzero (0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_towardzero (0xf.fffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_towardzero (0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
Test "asin_towardzero (1.0)":
float: 1
ifloat: 1
# asin_upward
+Test "asin_upward (-0x8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.fffffff8p-4)":
+double: 1
+idouble: 1
+Test "asin_upward (-0xf.ffffffffffff8p-4)":
+double: 1
+idouble: 1
+Test "asin_upward (-0xf.fffffffffffp-4)":
+double: 1
+idouble: 1
+Test "asin_upward (-0xf.fffffp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "asin_upward (-1.0)":
float: 1
ifloat: 1
+Test "asin_upward (0x1p+0)":
+double: 1
+idouble: 1
+Test "asin_upward (0xf.fffffffffffffffp-4)":
+ildouble: 2
+ldouble: 2
+Test "asin_upward (0xf.fffffffffffp-4)":
+ildouble: 1
+ldouble: 1
Test "asin_upward (1.0)":
ildouble: 1
ldouble: 1
@@ -136,6 +433,203 @@ ldouble: 1
Test "atan2 (-0.75, -1.0)":
float: 1
ifloat: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac28p-8, -0x7.57d1d8p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac28p-8, -0x7.57d1de0e51244p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac28p-8, -0x7.57d1de0e51246640cc2340ca48p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac28p-8, -0x7.57d1de0e51246640cc2340ca4ap-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac28p-8, -0x7.57d1de0e51246648p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac28p-8, -0x7.57d1de0e5124664p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac28p-8, -0x7.57d1de0e51248p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac28p-8, -0x7.57d1ep-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac3p-8, -0x7.57d1d8p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac3p-8, -0x7.57d1de0e51244p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac3p-8, -0x7.57d1de0e51246640cc2340ca48p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac3p-8, -0x7.57d1de0e51246640cc2340ca4ap-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac3p-8, -0x7.57d1de0e51246648p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac3p-8, -0x7.57d1de0e5124664p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac3p-8, -0x7.57d1de0e51248p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffc0f3eeb1ac3p-8, -0x7.57d1ep-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffcp-8, -0x7.57d1d8p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716ffcp-8, -0x7.57d1de0e51244p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffcp-8, -0x7.57d1de0e51246640cc2340ca48p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716ffcp-8, -0x7.57d1de0e51246640cc2340ca4ap-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffcp-8, -0x7.57d1de0e51246648p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffcp-8, -0x7.57d1de0e5124664p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffcp-8, -0x7.57d1de0e51248p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffcp-8, -0x7.57d1ep-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffep-8, -0x7.57d1d8p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffep-8, -0x7.57d1de0e51244p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffep-8, -0x7.57d1de0e51246640cc2340ca48p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716ffep-8, -0x7.57d1de0e51246640cc2340ca4ap-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716ffep-8, -0x7.57d1de0e51246648p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716ffep-8, -0x7.57d1de0e5124664p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffep-8, -0x7.57d1de0e51248p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716ffep-8, -0x7.57d1ep-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716p-8, -0x7.57d1d8p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716p-8, -0x7.57d1de0e51244p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716p-8, -0x7.57d1de0e51246640cc2340ca48p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716p-8, -0x7.57d1de0e51246640cc2340ca4ap-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716p-8, -0x7.57d1de0e51246648p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716p-8, -0x7.57d1de0e5124664p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852716p-8, -0x7.57d1de0e51248p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852716p-8, -0x7.57d1ep-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1d8p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1de0e51244p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1de0e51246640cc2340ca48p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1de0e51246640cc2340ca4ap-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1de0e51246648p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1de0e5124664p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1de0e51248p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1ep-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe82p-8, -0x7.57d1d8p-12)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe82p-8, -0x7.57d1de0e51244p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe82p-8, -0x7.57d1de0e51246640cc2340ca48p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe82p-8, -0x7.57d1de0e51246640cc2340ca4ap-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe82p-8, -0x7.57d1de0e5124664p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe82p-8, -0x7.57d1de0e51248p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe82p-8, -0x7.57d1ep-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe8p-8, -0x7.57d1d8p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe8p-8, -0x7.57d1de0e51244p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe8p-8, -0x7.57d1de0e51246640cc2340ca48p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe8p-8, -0x7.57d1de0e51246640cc2340ca4ap-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe8p-8, -0x7.57d1de0e51246648p-12)":
+ildouble: 2
+ldouble: 2
+Test "atan2 (-0x1.effe8p-8, -0x7.57d1de0e5124664p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe8p-8, -0x7.57d1de0e51248p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe8p-8, -0x7.57d1ep-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0xcp-4, -0x1p+0)":
+float: 1
+ifloat: 1
+Test "atan2 (-0xf.fffffp+124, -0x4p-128)":
+float: 1
+ifloat: 1
Test "atan2 (-inf, -inf)":
ildouble: 1
ldouble: 1
@@ -145,6 +639,23 @@ ifloat: 1
Test "atan2 (0.75, -1.0)":
float: 1
ifloat: 1
+Test "atan2 (0x1.64p+0, 0xe.ep-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "atan2 (0x6.4p-4, 0x1.30164840e1719f7ep-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (0x6.4p-4, 0x1.30164ap-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (0xcp-4, -0x1p+0)":
+float: 1
+ifloat: 1
+Test "atan2 (0xf.ffffffffffff8p+1020, 0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
Test "atan2 (1.390625, 0.9296875)":
float: 1
ifloat: 1
@@ -158,6 +669,9 @@ ldouble: 1
Test "atanh (0.75)":
float: 1
ifloat: 1
+Test "atanh (0xcp-4)":
+float: 1
+ifloat: 1
# cabs
Test "cabs (-0.75 + 12.390625 i)":
@@ -4503,12 +5017,21 @@ float: 1
ifloat: 1
# cbrt
+Test "cbrt (-0x1.bp+4)":
+double: 1
+idouble: 1
+Test "cbrt (-0x4.18937p-12)":
+float: 1
+ifloat: 1
Test "cbrt (-27.0)":
double: 1
idouble: 1
Test "cbrt (0.9921875)":
double: 1
idouble: 1
+Test "cbrt (0xf.ep-4)":
+double: 1
+idouble: 1
# ccos
Test "Imaginary part of: ccos (-0.75 + 710.5 i)":
@@ -5188,6 +5711,24 @@ ifloat: 1
Test "cos (0x1p+127)":
float: 1
ifloat: 1
+Test "cos (0x2.182a4705ae6cb08cb7665c1eacp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos (0x2.182a4705ae6cb08cb7665c1eadp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos (0x2.182a4705ae6cb08cp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos (0x2.182a4705ae6cb09p+0)":
+ildouble: 2
+ldouble: 2
+Test "cos (0x7p+0)":
+float: 1
+ifloat: 1
+Test "cos (0x8p+124)":
+float: 1
+ifloat: 1
Test "cos (16.0)":
ildouble: 2
ldouble: 2
@@ -5210,6 +5751,200 @@ idouble: 1
ifloat: 1
# cos_downward
+Test "cos_downward (0x1.000000cf4a2a2p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.0000010b239a9p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.00000162a932bp+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.000002d452a1p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.000002p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_downward (0x1.000004p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.000006p+0)":
+float: 1
+ifloat: 1
+Test "cos_downward (0x1.0c1522p+0)":
+float: 1
+ifloat: 1
+Test "cos_downward (0x1.0c152382d7365p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.0c1524p+0)":
+float: 1
+ifloat: 1
+Test "cos_downward (0x1.921fb4p+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18469898cc517018p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18469898cc51702p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d19p+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0x1.921fb6p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 3
+ldouble: 3
+Test "cos_downward (0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_downward (0x1p+120)":
+float: 2
+ifloat: 2
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0x1p+28)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a44p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_downward (0x2.182a4705ae6cap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6cb08cb7665c1eacp+0)":
+ildouble: 3
+ldouble: 3
+Test "cos_downward (0x2.182a4705ae6cb08cb7665c1eadp+0)":
+ildouble: 3
+ldouble: 3
+Test "cos_downward (0x2.182a4705ae6cb08cp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0x2.182a4705ae6cb09p+0)":
+ildouble: 3
+ldouble: 3
+Test "cos_downward (0x2.182a4705ae6ccp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a48p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x3p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_downward (0x4p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x4p+48)":
+double: 1
+idouble: 1
+Test "cos_downward (0x8p+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x9p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xa.217bap+12)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xc.d4966p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_downward (0xc.d4967p-4)":
+float: 1
+ifloat: 1
+Test "cos_downward (0xcp-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xf.ffffcp+124)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "cos_downward (1)":
float: 1
ifloat: 1
@@ -5246,11 +5981,148 @@ ildouble: 1
ldouble: 1
# cos_tonearest
+Test "cos_tonearest (0x1p+120)":
+float: 1
+ifloat: 1
+Test "cos_tonearest (0x2.182a4705ae6cb08cb7665c1eacp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_tonearest (0x2.182a4705ae6cb08cb7665c1eadp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_tonearest (0x2.182a4705ae6cb08cp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_tonearest (0x2.182a4705ae6cb09p+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_tonearest (0x7p+0)":
+float: 1
+ifloat: 1
+Test "cos_tonearest (0x8p+124)":
+float: 1
+ifloat: 1
Test "cos_tonearest (7)":
float: 1
ifloat: 1
# cos_towardzero
+Test "cos_towardzero (0x1.000000cf4a2a2p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.0000010b239a9p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.00000162a932bp+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.000002d452a1p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.000002p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.000004p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.0c152382d7365p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.921fb4p+0)":
+ildouble: 3
+ldouble: 3
+Test "cos_towardzero (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cos_towardzero (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 3
+ldouble: 3
+Test "cos_towardzero (0x1.921fb6p+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_towardzero (0x1p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1p+120)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_towardzero (0x2.182a4705ae6cb08cb7665c1eacp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x2.182a4705ae6cb08cb7665c1eadp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x2.182a4705ae6cb08cp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_towardzero (0x2.182a4705ae6cb09p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x2.182a4705ae6ccp+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.182a48p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x4p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x4p+48)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x5p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x8p+1020)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xa.217bap+12)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xcp-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xf.ffffcp+124)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "cos_towardzero (1)":
ildouble: 1
ldouble: 1
@@ -5279,6 +6151,195 @@ ildouble: 2
ldouble: 2
# cos_upward
+Test "cos_upward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.000002p+0)":
+float: 1
+ifloat: 1
+Test "cos_upward (0x1.000004p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x1.000005bc7d86dp+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.000006p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x1.0c1522p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x1.0c152382d7366p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.0c1524p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.921fb4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 4
+ldouble: 4
+Test "cos_upward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d18p+0)":
+ildouble: 3
+ldouble: 3
+Test "cos_upward (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb6p+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x1p+0)":
+float: 1
+ifloat: 1
+Test "cos_upward (0x1p+120)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x1p+28)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a44p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cb08cb7665c1eacp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x2.182a4705ae6cb08cb7665c1eadp+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x2.182a4705ae6cb08cp+0)":
+ildouble: 3
+ldouble: 3
+Test "cos_upward (0x2.182a4705ae6cb09p+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x2.182a4705ae6ccp+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x2.182a48p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.1e19e4p+72)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x2p+64)":
+double: 1
+idouble: 1
+Test "cos_upward (0x3p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x5p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x6p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x7p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x8p+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0x9p+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0xa.217bap+12)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0xap+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0xc.d4966d92d171p-4)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0xc.d4966p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0xc.d4967p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "cos_upward (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+Test "cos_upward (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
Test "cos_upward (1)":
ildouble: 2
ldouble: 2
@@ -5305,7 +6366,53 @@ Test "cos_upward (9)":
float: 2
ifloat: 2
+# cosh
+Test "cosh (-0x2.c5e3acp+8)":
+double: 1
+idouble: 1
+Test "cosh (0x1.8p+4)":
+ildouble: 1
+ldouble: 1
+Test "cosh (0x2.c5e3acp+8)":
+double: 1
+idouble: 1
+
# cosh_downward
+Test "cosh_downward (-0x2.c5e3acd2922a6p+8)":
+ildouble: 1
+ldouble: 1
+Test "cosh_downward (-0x2.c5e3acp+8)":
+ildouble: 2
+ldouble: 2
+Test "cosh_downward (-0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cosh_downward (0x1.6p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cosh_downward (0x1.7p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cosh_downward (0x2.c5e3acd2922a6p+8)":
+ildouble: 1
+ldouble: 1
+Test "cosh_downward (0x2.c5e3acp+8)":
+ildouble: 2
+ldouble: 2
+Test "cosh_downward (0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cosh_downward (0xcp-4)":
+ildouble: 2
+ldouble: 2
Test "cosh_downward (22)":
float: 1
ifloat: 1
@@ -5323,11 +6430,55 @@ ildouble: 1
ldouble: 1
# cosh_tonearest
+Test "cosh_tonearest (-0x2.c5e3acp+8)":
+double: 1
+idouble: 1
+Test "cosh_tonearest (0x1.8p+4)":
+ildouble: 1
+ldouble: 1
+Test "cosh_tonearest (0x2.c5e3acp+8)":
+double: 1
+idouble: 1
Test "cosh_tonearest (24)":
ildouble: 1
ldouble: 1
# cosh_towardzero
+Test "cosh_towardzero (-0x2.c5e3acd2922a6p+8)":
+ildouble: 1
+ldouble: 1
+Test "cosh_towardzero (-0x2.c5e3acp+8)":
+ildouble: 2
+ldouble: 2
+Test "cosh_towardzero (-0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cosh_towardzero (0x1.6p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cosh_towardzero (0x1.7p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cosh_towardzero (0x2.c5e3acd2922a6p+8)":
+ildouble: 1
+ldouble: 1
+Test "cosh_towardzero (0x2.c5e3acp+8)":
+ildouble: 2
+ldouble: 2
+Test "cosh_towardzero (0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cosh_towardzero (0xcp-4)":
+ildouble: 2
+ldouble: 2
Test "cosh_towardzero (22)":
float: 1
ifloat: 1
@@ -5345,6 +6496,39 @@ ildouble: 1
ldouble: 1
# cosh_upward
+Test "cosh_upward (-0x2.c5e3acd2922a6p+8)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (-0x2.c5e3acp+8)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (-0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (0x1.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (0x1.7p+4)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (0x1.8p+4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cosh_upward (0x2.c5e3acd2922a6p+8)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (0x2.c5e3acp+8)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "cosh_upward (22)":
ildouble: 2
ldouble: 2
@@ -5705,6 +6889,11 @@ float: 1
ifloat: 1
ildouble: 2
ldouble: 2
+Test "Imaginary part of: ctanh (0 + M_PI_4l i)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "Imaginary part of: ctanh (0 + pi/4 i)":
double: 1
float: 1
@@ -5815,11 +7004,17 @@ ildouble: 5
ldouble: 5
# erf
+Test "erf (0x1.4p+0)":
+double: 1
+idouble: 1
Test "erf (1.25)":
double: 1
idouble: 1
# erfc
+Test "erfc (-0x8p-4)":
+float: 1
+ifloat: 1
Test "erfc (0.75)":
float: 1
ifloat: 1
@@ -5832,6 +7027,33 @@ ifloat: 1
Test "erfc (0x1.ffff56789abcdef0123456789a8p+2)":
ildouble: 1
ldouble: 1
+Test "erfc (0x2p+0)":
+double: 1
+idouble: 1
+Test "erfc (0x3.ee6078p+0)":
+double: 1
+idouble: 1
+Test "erfc (0x4.2p+0)":
+double: 1
+idouble: 1
+Test "erfc (0x7.fe8008p+0)":
+float: 1
+ifloat: 1
+Test "erfc (0x7.fffd59e26af37bc048d159e26ap+0)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fffd59e26af37bc8p+0)":
+ildouble: 2
+ldouble: 2
+Test "erfc (0x7.fffd59e26af37bcp+0)":
+ildouble: 2
+ldouble: 2
+Test "erfc (0x7.fffd6p+0)":
+float: 1
+ifloat: 1
+Test "erfc (0xcp-4)":
+float: 1
+ifloat: 1
Test "erfc (2.0)":
double: 1
idouble: 1
@@ -5843,11 +7065,28 @@ idouble: 1
Test "exp (0.75)":
ildouble: 1
ldouble: 1
+Test "exp (0x3.2p+4)":
+ildouble: 1
+ldouble: 1
+Test "exp (0xcp-4)":
+ildouble: 1
+ldouble: 1
Test "exp (50.0)":
ildouble: 1
ldouble: 1
# exp10
+Test "exp10 (-0x1.31p+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp10 (-0x1p+0)":
+double: 1
+idouble: 1
+Test "exp10 (-0x2.4p+4)":
+double: 1
+idouble: 1
Test "exp10 (-1)":
double: 2
float: 1
@@ -5870,6 +7109,12 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "exp10 (0x2.4p+4)":
+double: 1
+idouble: 1
+Test "exp10 (0x3p+0)":
+double: 1
+idouble: 1
Test "exp10 (3)":
double: 1
float: 1
@@ -5887,6 +7132,21 @@ ildouble: 2
ldouble: 2
# exp_downward
+Test "exp_downward (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "exp_downward (0x2p+0)":
+double: 1
+idouble: 1
+Test "exp_downward (0x3p+0)":
+double: 1
+idouble: 1
+Test "exp_downward (0x5.8b9028p+4)":
+double: 1
+idouble: 1
+Test "exp_downward (0xcp-4)":
+double: 1
+idouble: 1
Test "exp_downward (2)":
float: 1
ifloat: 1
@@ -5896,7 +7156,30 @@ ifloat: 1
ildouble: 1
ldouble: 1
+# exp_tonearest
+Test "exp_tonearest (0x3.2p+4)":
+ildouble: 1
+ldouble: 1
+Test "exp_tonearest (0xcp-4)":
+ildouble: 1
+ldouble: 1
+
# exp_towardzero
+Test "exp_towardzero (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+Test "exp_towardzero (0x3p+0)":
+double: 1
+idouble: 1
+Test "exp_towardzero (0x5.8b9028p+4)":
+double: 1
+idouble: 1
+Test "exp_towardzero (0xcp-4)":
+double: 1
+idouble: 1
Test "exp_towardzero (2)":
float: 1
ifloat: 1
@@ -5907,6 +7190,65 @@ ildouble: 1
ldouble: 1
# exp_upward
+Test "exp_upward (-0x2.e870a4p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.e870a7e5e88c2p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.e870a7e5e88cp+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.e870a8p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.ebe224p+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_upward (-0x2.ebe227861639p+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_upward (-0x2.ebe228p+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_upward (-0x4.d2p+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_upward (-0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_upward (-0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
+Test "exp_upward (-0xf.fffffp+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_upward (0x1p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_upward (0x2.c5cp+8)":
+double: 1
+idouble: 1
+Test "exp_upward (0x2p+0)":
+ildouble: 1
+ldouble: 1
+Test "exp_upward (0x3.2p+4)":
+double: 1
+idouble: 1
Test "exp_upward (1)":
float: 1
ifloat: 1
@@ -5917,6 +7259,17 @@ ldouble: 1
Test "expm1 (0.75)":
double: 1
idouble: 1
+Test "expm1 (0x1.f4p+8)":
+double: 1
+idouble: 1
+Test "expm1 (0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "expm1 (0xcp-4)":
+double: 1
+idouble: 1
Test "expm1 (1)":
double: 1
float: 1
@@ -5926,12 +7279,206 @@ Test "expm1 (500.0)":
double: 1
idouble: 1
+# expm1_downward
+Test "expm1_downward (-0x1p-32)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x2.cp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x4.bp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x1.f4p+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x1p-32)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x3.2p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x7.fp+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+
+# expm1_tonearest
+Test "expm1_tonearest (0x1.f4p+8)":
+double: 1
+idouble: 1
+Test "expm1_tonearest (0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "expm1_tonearest (0xcp-4)":
+double: 1
+idouble: 1
+
+# expm1_towardzero
+Test "expm1_towardzero (-0x1p-100)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "expm1_towardzero (-0x1p-32)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x1p-64)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "expm1_towardzero (-0x2.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4.ap+4)":
+ildouble: 2
+ldouble: 2
+Test "expm1_towardzero (-0x4.ep+4)":
+ildouble: 2
+ldouble: 2
+Test "expm1_towardzero (-0x4.fp+4)":
+ildouble: 2
+ldouble: 2
+Test "expm1_towardzero (-0x4p-52)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x8p-32)":
+float: 1
+ifloat: 1
+Test "expm1_towardzero (-0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x1.f4p+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x1p-32)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x3.2p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x7.fp+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+
+# expm1_upward
+Test "expm1_upward (-0x1p-100)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "expm1_upward (-0x1p-32)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x1p-64)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "expm1_upward (-0x4p-52)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x8p-32)":
+float: 1
+ifloat: 1
+Test "expm1_upward (-0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (0x1p-100)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "expm1_upward (0x1p-32)":
+float: 1
+ifloat: 1
+Test "expm1_upward (0x1p-64)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "expm1_upward (0x4p-52)":
+float: 1
+ifloat: 1
+Test "expm1_upward (0x8p-32)":
+float: 1
+ifloat: 1
+
# gamma
+Test "gamma (-0x1p-10)":
+double: 1
+idouble: 1
+Test "gamma (-0x1p-15)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "gamma (-0x1p-20)":
+double: 1
+idouble: 1
+Test "gamma (-0x1p-5)":
+double: 1
+idouble: 1
+Test "gamma (-0x2p-16)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "gamma (-0x4p-12)":
+double: 1
+idouble: 1
+Test "gamma (-0x8p-8)":
+double: 1
+idouble: 1
Test "gamma (0.7)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "gamma (0x1p-10)":
+float: 1
+ifloat: 1
+Test "gamma (0x1p-30)":
+double: 1
+idouble: 1
+Test "gamma (0x4p-12)":
+float: 1
+ifloat: 1
+Test "gamma (0x4p-32)":
+double: 1
+idouble: 1
+Test "gamma (0xb.333333333333p-4)":
+double: 1
+idouble: 1
+Test "gamma (0xb.33333p-4)":
+double: 1
+idouble: 1
Test "gamma (1.2)":
double: 1
float: 2
@@ -5951,6 +7498,78 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "hypot (-0xb.33333333333333333333333334p-4, -0xc.66666666666666666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.33333333333333333333333334p-4, 0xc.66666666666666666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.3333333333333333333333333p-4, -0xc.66666666666666666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.3333333333333333333333333p-4, 0xc.66666666666666666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.333333333333334p-4, -0xc.666666666666667p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.333333333333334p-4, -0xc.66666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.333333333333334p-4, 0xc.666666666666667p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.333333333333334p-4, 0xc.66666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.333333333333p-4, -0xc.6666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.333333333333p-4, 0xc.6666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.33334p-4, -0xc.6666666666668p+0)":
+double: 1
+idouble: 1
+Test "hypot (-0xb.33334p-4, 0xc.6666666666668p+0)":
+double: 1
+idouble: 1
+Test "hypot (-0xc.66666666666666666666666668p+0, -0xb.33333333333333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.66666666666666666666666668p+0, -0xb.3333333333333333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.66666666666666666666666668p+0, 0xb.33333333333333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.66666666666666666666666668p+0, 0xb.3333333333333333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.666666666666667p+0, -0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.666666666666667p+0, 0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.6666666666668p+0, -0xb.333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.6666666666668p+0, -0xb.33334p-4)":
+double: 1
+idouble: 1
+Test "hypot (-0xc.6666666666668p+0, 0xb.333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.6666666666668p+0, 0xb.33334p-4)":
+double: 1
+idouble: 1
+Test "hypot (-0xc.66666p+0, -0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.66666p+0, 0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
Test "hypot (-12.4, -0.7)":
double: 1
float: 1
@@ -5979,6 +7598,84 @@ ldouble: 1
Test "hypot (0x1.234566p-126, 0x1.234566p-126)":
double: 1
idouble: 1
+Test "hypot (0x1.23456789abcdefp-500, 0x1.23456789abcdefp-500)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.33333333333333333333333334p-4, -0xc.66666666666666666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.33333333333333333333333334p-4, 0xc.66666666666666666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.3333333333333333333333333p-4, -0xc.66666666666666666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.3333333333333333333333333p-4, 0xc.66666666666666666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.333333333333334p-4, -0xc.666666666666667p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.333333333333334p-4, -0xc.66666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.333333333333334p-4, 0xc.666666666666667p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.333333333333334p-4, 0xc.66666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.333333333333p-4, -0xc.6666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.333333333333p-4, 0xc.6666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.33334p-4, -0xc.6666666666668p+0)":
+double: 1
+idouble: 1
+Test "hypot (0xb.33334p-4, 0xc.6666666666668p+0)":
+double: 1
+idouble: 1
+Test "hypot (0xc.66666666666666666666666668p+0, -0xb.33333333333333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.66666666666666666666666668p+0, -0xb.3333333333333333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.66666666666666666666666668p+0, 0xb.33333333333333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.66666666666666666666666668p+0, 0xb.3333333333333333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.666666666666667p+0, -0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.666666666666667p+0, 0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.6666666666668p+0, -0xb.333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.6666666666668p+0, -0xb.33334p-4)":
+double: 1
+idouble: 1
+Test "hypot (0xc.6666666666668p+0, 0xb.333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.6666666666668p+0, 0xb.33334p-4)":
+double: 1
+idouble: 1
+Test "hypot (0xc.66666p+0, -0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.66666p+0, 0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xcp-4, 0x1.4p+0)":
+ildouble: 1
+ldouble: 1
Test "hypot (12.4, -0.7)":
double: 1
float: 1
@@ -5994,6 +7691,19 @@ ifloat: 1
Test "j0 (-0x1.001000001p+593)":
ildouble: 2
ldouble: 2
+Test "j0 (-0x2.002000002p+592)":
+ildouble: 2
+ldouble: 2
+Test "j0 (-0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "j0 (-0xf.fffffp+124)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
Test "j0 (-4.0)":
double: 1
float: 2
@@ -6011,6 +7721,32 @@ ldouble: 1
Test "j0 (0x1p1023)":
ildouble: 1
ldouble: 1
+Test "j0 (0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "j0 (0x8p+0)":
+float: 1
+ifloat: 1
+Test "j0 (0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "j0 (0xap+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "j0 (0xe.be71dp+104)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "j0 (0xf.fffffp+124)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
Test "j0 (10.0)":
double: 3
float: 1
@@ -6050,6 +7786,38 @@ ldouble: 1
Test "j1 (0x1p1023)":
ildouble: 1
ldouble: 1
+Test "j1 (0x2p+0)":
+double: 1
+idouble: 1
+Test "j1 (0x4.ffcp+72)":
+double: 1
+idouble: 1
+Test "j1 (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "j1 (0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "j1 (0xap+0)":
+float: 2
+ifloat: 2
+Test "j1 (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "j1 (0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
+Test "j1 (0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "j1 (10.0)":
float: 2
ifloat: 2
@@ -6065,6 +7833,11 @@ ildouble: 1
ldouble: 1
# jn
+Test "jn (0, -0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "jn (0, -4.0)":
double: 1
float: 2
@@ -6072,6 +7845,19 @@ idouble: 1
ifloat: 2
ildouble: 1
ldouble: 1
+Test "jn (0, 0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "jn (0, 0x8p+0)":
+float: 1
+ifloat: 1
+Test "jn (0, 0xap+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
Test "jn (0, 10.0)":
double: 3
float: 1
@@ -6098,6 +7884,17 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "jn (1, 0x2p+0)":
+double: 1
+idouble: 1
+Test "jn (1, 0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (1, 0xap+0)":
+float: 2
+ifloat: 2
Test "jn (1, 10.0)":
float: 2
ifloat: 2
@@ -6111,6 +7908,9 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "jn (10, -0x1p+0)":
+ildouble: 1
+ldouble: 1
Test "jn (10, -1.0)":
ildouble: 1
ldouble: 1
@@ -6126,14 +7926,39 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "jn (10, 0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (10, 0x2p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+Test "jn (10, 0x2p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (10, 0xap+0)":
+float: 2
+ifloat: 2
+ildouble: 4
+ldouble: 4
+Test "jn (10, 0xcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "jn (10, 1.0)":
ildouble: 1
ldouble: 1
Test "jn (10, 10.0)":
double: 2
-float: 1
+float: 2
idouble: 2
-ifloat: 1
+ifloat: 2
ildouble: 4
ldouble: 4
Test "jn (10, 2.0)":
@@ -6146,11 +7971,67 @@ double: 2
float: 2
idouble: 2
ifloat: 2
+Test "jn (2, 0x1p1023)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x1p127)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a4p+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "jn (2, 0x2.67a2a5d2e36800fce3e16f10cbp+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a5d2e368p+0)":
+double: 2
+idouble: 2
+Test "jn (2, 0x2.67a2a8p+0)":
+double: 1
+float: 3
+idouble: 1
+ifloat: 3
+Test "jn (2, 0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x8p+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0xf.fffb1p+96)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+Test "jn (2, 0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0xf.fffffp+124)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
Test "jn (2, 2.4048255576957729)":
double: 2
float: 1
idouble: 2
ifloat: 1
+Test "jn (3, -0x1p+0)":
+ildouble: 1
+ldouble: 1
Test "jn (3, -1.0)":
ildouble: 1
ldouble: 1
@@ -6162,6 +8043,55 @@ ifloat: 1
Test "jn (3, 0.75)":
double: 1
idouble: 1
+Test "jn (3, 0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2.67a2a4p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2.67a2a5d2e36800fce3e16f10cbp+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (3, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 3
+ldouble: 3
+Test "jn (3, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+ildouble: 3
+ldouble: 3
+Test "jn (3, 0x2.67a2a5d2e368p+0)":
+double: 3
+idouble: 3
+ildouble: 2
+ldouble: 2
+Test "jn (3, 0x2.67a2a8p+0)":
+double: 1
+float: 3
+idouble: 1
+ifloat: 3
+ildouble: 2
+ldouble: 2
+Test "jn (3, 0x2p+0)":
+float: 1
+ifloat: 1
+Test "jn (3, 0x2p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "jn (3, 0xap+0)":
+double: 3
+idouble: 3
+ildouble: 2
+ldouble: 2
+Test "jn (3, 0xcp-4)":
+double: 1
+idouble: 1
Test "jn (3, 1.0)":
ildouble: 1
ldouble: 1
@@ -6184,11 +8114,60 @@ double: 3
idouble: 3
ildouble: 1
ldouble: 1
+Test "jn (4, 0x2.67a2a4p+0)":
+float: 1
+ifloat: 1
+Test "jn (4, 0x2.67a2a5d2e36800fce3e16f10cap+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (4, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (4, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "jn (4, 0x2.67a2a5d2e368p+0)":
+double: 1
+idouble: 1
+Test "jn (4, 0x2.67a2a8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
Test "jn (4, 2.4048255576957729)":
double: 1
idouble: 1
ildouble: 2
ldouble: 2
+Test "jn (5, 0x2.67a2a4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (5, 0x2.67a2a5d2e36801p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (5, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (5, 0x2.67a2a5d2e368p+0)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
+Test "jn (5, 0x2.67a2a8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
Test "jn (5, 2.4048255576957729)":
double: 3
float: 1
@@ -6196,6 +8175,28 @@ idouble: 3
ifloat: 1
ildouble: 1
ldouble: 1
+Test "jn (6, 0x2.67a2a4p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "jn (6, 0x2.67a2a5d2e36800fce3e16f10cbp+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (6, 0x2.67a2a5d2e36801p+0)":
+ildouble: 4
+ldouble: 4
+Test "jn (6, 0x2.67a2a5d2e3682p+0)":
+double: 2
+idouble: 2
+Test "jn (6, 0x2.67a2a5d2e368p+0)":
+double: 4
+idouble: 4
+ildouble: 4
+ldouble: 4
+Test "jn (6, 0x2.67a2a8p+0)":
+float: 3
+ifloat: 3
Test "jn (6, 2.4048255576957729)":
double: 4
float: 3
@@ -6203,6 +8204,30 @@ idouble: 4
ifloat: 3
ildouble: 4
ldouble: 4
+Test "jn (7, 0x2.67a2a4p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (7, 0x2.67a2a5d2e36800fce3e16f10cap+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (7, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 3
+ldouble: 3
+Test "jn (7, 0x2.67a2a5d2e3682p+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (7, 0x2.67a2a5d2e368p+0)":
+double: 3
+idouble: 3
+ildouble: 2
+ldouble: 2
+Test "jn (7, 0x2.67a2a8p+0)":
+float: 3
+ifloat: 3
Test "jn (7, 2.4048255576957729)":
double: 3
float: 5
@@ -6210,6 +8235,31 @@ idouble: 3
ifloat: 5
ildouble: 2
ldouble: 2
+Test "jn (8, 0x2.67a2a4p+0)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 2
+ldouble: 2
+Test "jn (8, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (8, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+Test "jn (8, 0x2.67a2a5d2e368p+0)":
+double: 3
+idouble: 3
+ildouble: 1
+ldouble: 1
+Test "jn (8, 0x2.67a2a8p+0)":
+double: 1
+float: 4
+idouble: 1
+ifloat: 4
+ildouble: 1
+ldouble: 1
Test "jn (8, 2.4048255576957729)":
double: 3
float: 2
@@ -6217,6 +8267,36 @@ idouble: 3
ifloat: 2
ildouble: 4
ldouble: 4
+Test "jn (9, 0x2.67a2a4p+0)":
+double: 3
+float: 3
+idouble: 3
+ifloat: 3
+ildouble: 1
+ldouble: 1
+Test "jn (9, 0x2.67a2a5d2e36800fce3e16f10cap+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (9, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 3
+ldouble: 3
+Test "jn (9, 0x2.67a2a5d2e3682p+0)":
+double: 4
+idouble: 4
+ildouble: 3
+ldouble: 3
+Test "jn (9, 0x2.67a2a5d2e368p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "jn (9, 0x2.67a2a8p+0)":
+double: 2
+float: 3
+idouble: 2
+ifloat: 3
+ildouble: 1
+ldouble: 1
Test "jn (9, 2.4048255576957729)":
double: 2
float: 2
@@ -6226,11 +8306,54 @@ ildouble: 7
ldouble: 7
# lgamma
+Test "lgamma (-0x1p-10)":
+double: 1
+idouble: 1
+Test "lgamma (-0x1p-15)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "lgamma (-0x1p-20)":
+double: 1
+idouble: 1
+Test "lgamma (-0x1p-5)":
+double: 1
+idouble: 1
+Test "lgamma (-0x2p-16)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "lgamma (-0x4p-12)":
+double: 1
+idouble: 1
+Test "lgamma (-0x8p-8)":
+double: 1
+idouble: 1
Test "lgamma (0.7)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "lgamma (0x1p-10)":
+float: 1
+ifloat: 1
+Test "lgamma (0x1p-30)":
+double: 1
+idouble: 1
+Test "lgamma (0x4p-12)":
+float: 1
+ifloat: 1
+Test "lgamma (0x4p-32)":
+double: 1
+idouble: 1
+Test "lgamma (0xb.333333333333p-4)":
+double: 1
+idouble: 1
+Test "lgamma (0xb.33333p-4)":
+double: 1
+idouble: 1
Test "lgamma (1.2)":
double: 1
float: 2
@@ -6239,12 +8362,25 @@ ifloat: 2
ildouble: 3
ldouble: 3
+# log
+Test "log (0x2.b7e15p+0)":
+float: 1
+ifloat: 1
+
# log10
Test "log10 (0.75)":
double: 1
float: 2
idouble: 1
ifloat: 2
+Test "log10 (0x2.b7e154p+0)":
+float: 1
+ifloat: 1
+Test "log10 (0xcp-4)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
Test "log10 (e)":
float: 1
ifloat: 1
@@ -6253,6 +8389,9 @@ ifloat: 1
Test "log1p (-0.25)":
float: 1
ifloat: 1
+Test "log1p (0x1.b7e15p+0)":
+float: 1
+ifloat: 1
# log2
Test "log2 (e)":
@@ -6269,8 +8408,22 @@ ifloat: 1
Test "pow (0x1.000002p0, 0x1p24)":
float: 1
ifloat: 1
+Test "pow (0xf.fffffp-4, 0x1p+24)":
+float: 1
+ifloat: 1
# pow10
+Test "pow10 (-0x1.31p+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "pow10 (-0x1p+0)":
+double: 1
+idouble: 1
+Test "pow10 (-0x2.4p+4)":
+double: 1
+idouble: 1
Test "pow10 (-1)":
double: 1
idouble: 1
@@ -6282,6 +8435,12 @@ ldouble: 1
Test "pow10 (-36)":
double: 1
idouble: 1
+Test "pow10 (0x2.4p+4)":
+double: 1
+idouble: 1
+Test "pow10 (0x3p+0)":
+double: 1
+idouble: 1
Test "pow10 (3)":
double: 1
idouble: 1
@@ -6297,6 +8456,11 @@ Test "pow_downward (1.5, 1.03125)":
float: 1
ifloat: 1
+# pow_tonearest
+Test "pow_tonearest (0xf.fffffp-4, 0x1p+24)":
+float: 1
+ifloat: 1
+
# pow_towardzero
Test "pow_towardzero (1.0625, 1.125)":
ildouble: 1
@@ -6314,11 +8478,319 @@ ildouble: 1
ldouble: 1
# sin
+Test "sin (0x1p+0)":
+float: 1
+ifloat: 1
+Test "sin (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin (0xc.d4967p-4)":
+float: 1
+ifloat: 1
+Test "sin (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
Test "sin (16.0)":
ildouble: 2
ldouble: 2
# sin_downward
+Test "sin_downward (-0x1.921fb4p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (-0x1.921fb6p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b28p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (-0x8.60a91c16b9b2c232dd99707ab4p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b2c24p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b3p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (-0x8.60a91p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (-0x8.60a92p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1p+120)":
+float: 1
+ifloat: 1
+Test "sin_downward (0x1p+28)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19e4p+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19ep+72)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.553534p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x2.5535376715b9ep+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.5535376715bap+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x2p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x3.be735c19be9fep+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735c19be9fffffffffffffffp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735c19beap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735cp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be736p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_downward (0x3.ec2a0250032a00000000000001p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032a0004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032a2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032ap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2ap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_downward (0x3p+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0x4.093385688a2d150c00bf42a09p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.093388p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (0x4.1237e153f70800000000000002p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237e153f7084p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0x4.1237e153f708p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237e8p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0x4.1237ep+0)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0x4.c92d08p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf000000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf00008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bfp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4p+48)":
+double: 1
+idouble: 1
+Test "sin_downward (0x5.fbec7477d4a800000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7477d4a84p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x5.fbec7477d4a8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec78p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_downward (0x6p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x8.60a92p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x8p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x8p+1020)":
+double: 1
+idouble: 1
+Test "sin_downward (0x9p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_downward (0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_downward (0xb.fa09ap+100)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xc.d4966d92d17082980965c1a66p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xc.d4966d92d170829p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xc.d4966d92d17082ap-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xc.d4966d92d171p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xc.d4966p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xc.d4967p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xe.ef3af1b5d800001p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xe.ef3af1b5d8008p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xe.ef3af1b5d8p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xe.ef3afp-4)":
+ildouble: 3
+ldouble: 3
+Test "sin_downward (0xe.ef3bp-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+Test "sin_downward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xf.fffffp+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "sin_downward (1)":
ildouble: 4
ldouble: 4
@@ -6349,11 +8821,208 @@ ildouble: 1
ldouble: 1
# sin_tonearest
+Test "sin_tonearest (0x1p+0)":
+float: 1
+ifloat: 1
+Test "sin_tonearest (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_tonearest (0xc.d4967p-4)":
+float: 1
+ifloat: 1
+Test "sin_tonearest (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
Test "sin_tonearest (1)":
float: 1
ifloat: 1
# sin_towardzero
+Test "sin_towardzero (-0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (-0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (-0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x8.60a92p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x1p+0)":
+float: 1
+ifloat: 1
+ildouble: 3
+ldouble: 3
+Test "sin_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2.1e19ep+72)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_towardzero (0x2.553534p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2.5535376715b9ep+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x2.5535376715b9ffffffffffffffp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x2.5535376715bap+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x3.be735c19beap+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x3.be735cp+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_towardzero (0x3.be736p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x3.ec2a04p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_towardzero (0x3p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4.093385688a2d150c00bf42a09p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4.093388p-4)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.1237e153f70800000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4.1237e153f7084p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4.1237e153f708p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4.1237e8p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.1237ep+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.c92d0ffa4bf04p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.c92d0ffa4bfp+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4p+48)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x5.fbec7p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x8.60a92p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x8p+1020)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x9p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xb.fa09ap+100)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xc.d4966d92d17082980965c1a664p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_towardzero (0xc.d4966d92d17082980965c1a66p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_towardzero (0xc.d4966d92d170829p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_towardzero (0xc.d4966d92d17082ap-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_towardzero (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_towardzero (0xc.d4966d92d171p-4)":
+ildouble: 4
+ldouble: 4
+Test "sin_towardzero (0xc.d4966p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_towardzero (0xc.d4967p-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "sin_towardzero (0xe.ef3af1b5d80000000000000004p-4)":
+ildouble: 3
+ldouble: 3
+Test "sin_towardzero (0xe.ef3af1b5d800001p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_towardzero (0xe.ef3af1b5d8008p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_towardzero (0xe.ef3af1b5d8p-4)":
+ildouble: 3
+ldouble: 3
+Test "sin_towardzero (0xe.ef3afp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0xe.ef3bp-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_towardzero (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
Test "sin_towardzero (1)":
float: 1
ifloat: 1
@@ -6384,6 +9053,343 @@ ildouble: 1
ldouble: 1
# sin_upward
+Test "sin_upward (-0x1.921fb4p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (-0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (-0x1.921fb6p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x2p+64)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c232dd99707ab4p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c24p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b3p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a92p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x1.921fb4p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1.921fb6p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x1p+120)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_upward (0x1p+28)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19ep+72)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.5535376715b9ep+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x2.5535376715b9ffffffffffffffp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.553538p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x2p+0)":
+float: 1
+ifloat: 1
+Test "sin_upward (0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9fep+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9ffffcp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9fffffffffffffffp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19beap+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x3.be735cp+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_upward (0x3.be736p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a00000000000001p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a0004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a2p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a04p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_upward (0x3.ec2ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x4.093385688a2d4p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.093385688a2dp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.09338p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.1237e153f70800000000000002p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x4.1237e153f7080008p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x4.1237e153f7084p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x4.1237e153f708p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x4.1237e8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237ep+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x4.c92d08p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bf000000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bf00008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bf04p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bfp+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.c92d1p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4p+0)":
+float: 2
+ifloat: 2
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x4p+48)":
+float: 1
+ifloat: 1
+Test "sin_upward (0x5.fbec7477d4a800000000000002p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a80008p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x5.fbec7477d4a84p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec78p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x6p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x7p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sin_upward (0x8.60a91c16b9b3p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8.60a91p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8.60a92p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8p+0)":
+float: 1
+ifloat: 1
+Test "sin_upward (0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x8p+124)":
+double: 1
+idouble: 1
+Test "sin_upward (0x9p+0)":
+float: 1
+ifloat: 1
+Test "sin_upward (0xap+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xb.fa09ap+100)":
+double: 1
+idouble: 1
+Test "sin_upward (0xc.d4966d92d17082980965c1a664p-4)":
+ildouble: 3
+ldouble: 3
+Test "sin_upward (0xc.d4966d92d17082980965c1a66p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xc.d4966d92d170829p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xc.d4966d92d17082ap-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xc.d4966d92d1708p-4)":
+ildouble: 3
+ldouble: 3
+Test "sin_upward (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+ildouble: 3
+ldouble: 3
+Test "sin_upward (0xc.d4966p-4)":
+ildouble: 3
+ldouble: 3
+Test "sin_upward (0xc.d4967p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xcp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3af1b5d80000000000000004p-4)":
+ildouble: 3
+ldouble: 3
+Test "sin_upward (0xe.ef3af1b5d800001p-4)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xe.ef3af1b5d8008p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xe.ef3af1b5d8p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xe.ef3afp-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xe.ef3bp-4)":
+double: 1
+idouble: 1
+ildouble: 3
+ldouble: 3
+Test "sin_upward (0xf.ffffcp+124)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xf.fffffp+124)":
+ildouble: 1
+ldouble: 1
Test "sin_upward (1)":
float: 1
ifloat: 1
@@ -6408,12 +9414,33 @@ float: 1
ifloat: 1
# sincos
+Test "sincos (0x1.0c1522p+0) extra output 1":
+float: 1
+ifloat: 1
+Test "sincos (0x1.0c152382d7366p+0) extra output 2":
+ildouble: 1
+ldouble: 1
Test "sincos (0x1p+120) extra output 2":
float: 1
ifloat: 1
Test "sincos (0x1p+127) extra output 2":
float: 1
ifloat: 1
+Test "sincos (0x8.60a92p-4) extra output 2":
+float: 1
+ifloat: 1
+Test "sincos (0x8p+124) extra output 2":
+float: 1
+ifloat: 1
+Test "sincos (0xc.d4966d92d17082980965c1a66p-4) extra output 2":
+ildouble: 1
+ldouble: 1
+Test "sincos (0xc.d4967p-4) extra output 1":
+float: 1
+ifloat: 1
+Test "sincos (0xf.ffffffffffff8p+1020) extra output 1":
+ildouble: 1
+ldouble: 1
Test "sincos (M_PI_6l*2.0) extra output 1":
double: 1
float: 1
@@ -6437,8 +9464,22 @@ ifloat: 1
Test "sinh (0.75)":
ildouble: 1
ldouble: 1
+Test "sinh (0xcp-4)":
+ildouble: 1
+ldouble: 1
# sinh_downward
+Test "sinh_downward (0x1.6p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0x1.7p+4)":
+double: 1
+idouble: 1
+Test "sinh_downward (0x1.8p+4)":
+ildouble: 1
+ldouble: 1
Test "sinh_downward (22)":
float: 1
ifloat: 1
@@ -6453,7 +9494,23 @@ ifloat: 1
ildouble: 1
ldouble: 1
+# sinh_tonearest
+Test "sinh_tonearest (0xcp-4)":
+ildouble: 1
+ldouble: 1
+
# sinh_towardzero
+Test "sinh_towardzero (0x1.6p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_towardzero (0x1.7p+4)":
+double: 1
+idouble: 1
+Test "sinh_towardzero (0x1.8p+4)":
+ildouble: 1
+ldouble: 1
Test "sinh_towardzero (22)":
float: 1
ifloat: 1
@@ -6469,6 +9526,19 @@ ildouble: 1
ldouble: 1
# sinh_upward
+Test "sinh_upward (0x1.8p+4)":
+double: 1
+idouble: 1
+Test "sinh_upward (0x8p-32)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_upward (0xcp-4)":
+ildouble: 1
+ldouble: 1
Test "sinh_upward (23)":
ildouble: 1
ldouble: 1
@@ -6484,6 +9554,171 @@ Test "sqrt (2)":
double: 1
idouble: 1
+# sqrt_downward
+Test "sqrt_downward (0x1.33b43b08p-1016)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.000000000000cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.000000000001cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.000000000002cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.000000000003cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.000000000004cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.000000000005cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.000000000006cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.000000000007cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.000000000008cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.000000000009cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.00000000000acp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.00000000000bcp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.00000000000ccp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x4.00000000000dcp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x5.c59ef8p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x5.c59efp+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x5.f6ba5a510bf98p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x5.fe1118p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x6.379124f88b718p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x6.4920a685e8a2p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x6.4920a8p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0x6.54d82p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_downward (0xd.0ac284p-1020)":
+ildouble: 1
+ldouble: 1
+
+# sqrt_towardzero
+Test "sqrt_towardzero (0x1.33b43b08p-1016)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.000000000000cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.000000000001cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.000000000002cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.000000000003cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.000000000004cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.000000000005cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.000000000006cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.000000000007cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.000000000008cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.000000000009cp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.00000000000acp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.00000000000bcp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.00000000000ccp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x4.00000000000dcp-1024)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x5.c59ef8p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x5.c59efp+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x5.f6ba5a510bf98p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x5.fe1118p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x6.379124f88b718p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x6.4920a685e8a2p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x6.4920a8p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0x6.54d82p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0xd.0ac284p-1020)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_towardzero (0xf.ffffffffffff8p-4)":
+ildouble: 1
+ldouble: 1
+
+# sqrt_upward
+Test "sqrt_upward (0x5.f6ba6p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_upward (0x6.16fb78p+4)":
+ildouble: 1
+ldouble: 1
+Test "sqrt_upward (0x6.1ce128p+4)":
+ildouble: 1
+ldouble: 1
+
# tan
Test "tan (-0xc.908p-4)":
ildouble: 2
@@ -6512,6 +9747,18 @@ ldouble: 1
Test "tan (-0xc.9p-4)":
ildouble: 1
ldouble: 1
+Test "tan (0x2.1e19ep+72)":
+ildouble: 1
+ldouble: 1
+Test "tan (0x4p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan (0x7p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan (0xap+0)":
+ildouble: 1
+ldouble: 1
Test "tan (0xc.908p-4)":
ildouble: 2
ldouble: 2
@@ -6530,6 +9777,12 @@ ldouble: 1
Test "tan (0xc.90fd8p-4)":
ildouble: 1
ldouble: 1
+Test "tan (0xc.90fdaa22168c234c4c6628b81p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan (0xc.90fdaa22168c235p-4)":
+ildouble: 1
+ldouble: 1
Test "tan (0xc.90fdap-4)":
ildouble: 1
ldouble: 1
@@ -6546,6 +9799,190 @@ ildouble: 1
ldouble: 1
# tan_downward
+Test "tan_downward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_downward (-0xc.908p-4)":
+float: 2
+ifloat: 2
+Test "tan_downward (-0xc.90cp-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (-0xc.90ep-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90f8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fcp-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fd8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fdap-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fdbp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fdcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fdp-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fep-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.90fp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.91p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (-0xc.92p-4)":
+double: 1
+idouble: 1
+Test "tan_downward (-0xc.94p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_downward (-0xc.98p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.9p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.ap-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0x1p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x2.1e19ep+72)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x3p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x4p+0)":
+float: 1
+ifloat: 1
+Test "tan_downward (0x6p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x7p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x8p+1020)":
+double: 1
+idouble: 1
+Test "tan_downward (0x9p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.908p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90ep-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.90f8p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_downward (0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fd8p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.90fdaa22168c234c4c6628b81p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_downward (0xc.90fdaa22168c235p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.90fdaa22168c8p-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fdap-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fep-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.90fp-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_downward (0xc.92p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.94p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (0xc.98p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (0xc.9p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_downward (0xc.ap-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (0xcp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xf.fffffp+124)":
+ildouble: 2
+ldouble: 2
Test "tan_downward (1)":
float: 1
ifloat: 1
@@ -6576,6 +10013,78 @@ ildouble: 1
ldouble: 1
# tan_tonearest
+Test "tan_tonearest (-0xc.908p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_tonearest (-0xc.90cp-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_tonearest (-0xc.90ep-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_tonearest (-0xc.90f8p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_tonearest (-0xc.90fcp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (-0xc.90fd8p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (-0xc.90fdap-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (-0xc.92p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (-0xc.9p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x2.1e19ep+72)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x4p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x7p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0xc.908p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_tonearest (0xc.90cp-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_tonearest (0xc.90ep-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_tonearest (0xc.90f8p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_tonearest (0xc.90fcp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0xc.90fd8p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0xc.90fdaa22168c234c4c6628b81p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0xc.90fdaa22168c235p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0xc.90fdap-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0xc.92p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0xc.9p-4)":
+ildouble: 1
+ldouble: 1
Test "tan_tonearest (10)":
ildouble: 1
ldouble: 1
@@ -6587,11 +10096,186 @@ ildouble: 1
ldouble: 1
# tan_towardzero
+Test "tan_towardzero (-0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (-0xc.908p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_towardzero (-0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.90ep-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.90f8p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (-0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.90fd8p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.90fdap-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.90fp-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (-0xc.94p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.98p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (-0xc.9p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_towardzero (0x2.1e19e0c9bab24p+72)":
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x2p+0)":
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0x3p+0)":
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0x4p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x5p+0)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x6p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x7p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x8p+1020)":
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0x9p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_towardzero (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xc.908p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_towardzero (0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90ep-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xc.90f8p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fd8p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xc.90fdaa22168c234c4c6628b80cp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xc.90fdaa22168c234p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xc.90fdaa22168c8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xc.90fdaa22168cp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xc.90fdap-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fp-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0xc.94p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xc.98p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xc.9p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_towardzero (0xcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "tan_towardzero (10)":
float: 1
ifloat: 1
ildouble: 2
ldouble: 2
+Test "tan_towardzero (2)":
+ildouble: 1
+ldouble: 1
Test "tan_towardzero (3)":
float: 1
ifloat: 1
@@ -6618,6 +10302,238 @@ ildouble: 1
ldouble: 1
# tan_upward
+Test "tan_upward (-0xc.908p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90cp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90ep-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90f8p-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90fcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90fd8p-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90fdap-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fdbp-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (-0xc.90fdcp-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (-0xc.90fdp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.90fep-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (-0xc.90fp-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (-0xc.91p-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (-0xc.94p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.98p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.9p-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "tan_upward (0x2p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0x3p+0)":
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0x4p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0x5p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0x6p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0x7p+0)":
+float: 1
+ifloat: 1
+Test "tan_upward (0x8p+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0x8p+1020)":
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0x9p+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0xap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.908p-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (0xc.90ep-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.90f8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.90fcp-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.90fd8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.90fdaa22168c234c4c6628b80cp-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0xc.90fdaa22168c234c4c6628b81p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.90fdaa22168c234p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0xc.90fdaa22168c235p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.90fdaa22168c8p-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0xc.90fdaa22168cp-4)":
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0xc.90fdap-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fdbp-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0xc.90fdcp-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0xc.90fep-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.90fp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.91p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0xc.92p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.94p-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0xc.98p-4)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0xc.9p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.ap-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0xcp-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "tan_upward (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "tan_upward (10)":
ildouble: 1
ldouble: 1
@@ -6645,9 +10561,15 @@ ldouble: 1
Test "tanh (-0.75)":
ildouble: 1
ldouble: 1
+Test "tanh (-0xcp-4)":
+ildouble: 1
+ldouble: 1
Test "tanh (0.75)":
ildouble: 1
ldouble: 1
+Test "tanh (0xcp-4)":
+ildouble: 1
+ldouble: 1
# tgamma
Test "tgamma (-0.5)":
@@ -6663,6 +10585,9 @@ ldouble: 1
Test "tgamma (-0x0.ffffffp0)":
float: 1
ifloat: 1
+Test "tgamma (-0x1.000002p+0)":
+double: 2
+idouble: 2
Test "tgamma (-0x1.000002p0)":
double: 2
idouble: 2
@@ -6671,6 +10596,58 @@ ldouble: 1
Test "tgamma (-0x1.0a32a2p+5)":
float: 2
ifloat: 2
+Test "tgamma (-0x1.3ffffep+4)":
+float: 1
+ifloat: 1
+Test "tgamma (-0x1.3ffffffffffffffep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.3fffffffffffffffffffffffff8p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x1.3ffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.4000000000000002p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.4000000000001p+4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x1.400002p+4)":
+float: 1
+ifloat: 1
+Test "tgamma (-0x1.dffffep+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.dffffffffffffffep+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x1.dfffffffffffffffffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.dffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.e00000000000000000000000008p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x1.e000000000001p+4)":
+double: 3
+idouble: 3
+ildouble: 3
+ldouble: 3
+Test "tgamma (-0x1.e00002p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "tgamma (-0x13.ffffep0)":
float: 2
ifloat: 2
@@ -6714,9 +10691,19 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (-0x2.0000000000002p+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x2.0000000000002p0)":
double: 1
idouble: 1
+Test "tgamma (-0x2.000004p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x2.000004p0)":
double: 2
float: 1
@@ -6724,6 +10711,60 @@ idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x2.146544p+4)":
+float: 2
+ifloat: 2
+Test "tgamma (-0x2.7fffffffffffep+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x2.7fffffffffffffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8000000000002p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.800004p+4)":
+double: 2
+idouble: 2
+Test "tgamma (-0x2.8ffffffffffffffcp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.90000000000000000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.9000000000000004p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.900004p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x2.9ffffcp+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.9fffffffffffep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.a0000000000000000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.fffffcp+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x2.fffffcp0)":
double: 1
float: 1
@@ -6765,16 +10806,54 @@ ldouble: 1
Test "tgamma (-0x2a.0000000000000000000000001p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x3.000004p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
Test "tgamma (-0x3.000004p0)":
double: 2
float: 1
idouble: 2
ifloat: 1
+Test "tgamma (-0x3.1ffffcp+4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x3.1fffffffffffep+4)":
+double: 3
+idouble: 3
+Test "tgamma (-0x3.1ffffffffffffffcp+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x3.20000000000000000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.2000000000002p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.200004p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x3.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (-0x3.fffffcp+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "tgamma (-0x3.fffffcp0)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (-0x3.ffffffffffffep+0)":
+double: 2
+idouble: 2
Test "tgamma (-0x3.ffffffffffffep0)":
double: 2
idouble: 2
@@ -6787,35 +10866,106 @@ ldouble: 1
Test "tgamma (-0x32.000000000002p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x4.000008p+0)":
+float: 1
+ifloat: 1
Test "tgamma (-0x4.000008p0)":
float: 1
ifloat: 1
+Test "tgamma (-0x4.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.fffff8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "tgamma (-0x4.fffff8p0)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (-0x4.ffffffffffffcp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x4.ffffffffffffcp0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x5.0000000000004p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x5.0000000000004p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x5.000008p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
Test "tgamma (-0x5.000008p0)":
double: 1
float: 2
idouble: 1
ifloat: 2
+Test "tgamma (-0x5.8p+0)":
+double: 1
+idouble: 1
+Test "tgamma (-0x5.ffffffffffffcp+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x5.ffffffffffffcp0)":
double: 1
idouble: 1
+Test "tgamma (-0x5.fffffffffffffff8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.000008p+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x6.000008p0)":
float: 2
ifloat: 2
ildouble: 1
ldouble: 1
+Test "tgamma (-0x6.3fffffffffffcp+4)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.3ffffffffffffffffffffffffep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.4000000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.4000000000004p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.400008p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x6.8p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (-0x6.fffff8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x6.fffff8p0)":
double: 2
float: 1
@@ -6823,6 +10973,11 @@ idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x6.ffffffffffffcp+0)":
+double: 4
+idouble: 4
+ildouble: 2
+ldouble: 2
Test "tgamma (-0x6.ffffffffffffcp0)":
double: 4
idouble: 4
@@ -6841,37 +10996,104 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.0000000000004p+0)":
+double: 3
+idouble: 3
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x7.0000000000004p0)":
double: 3
idouble: 3
ildouble: 2
ldouble: 2
+Test "tgamma (-0x7.000008p+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x7.000008p0)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (-0x7.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "tgamma (-0x7.fffff8p+0)":
+double: 3
+float: 1
+idouble: 3
+ifloat: 1
Test "tgamma (-0x7.fffff8p0)":
double: 3
float: 1
idouble: 3
ifloat: 1
+Test "tgamma (-0x7.ffffffffffffcp+0)":
+double: 3
+idouble: 3
+ildouble: 3
+ldouble: 3
Test "tgamma (-0x7.ffffffffffffcp0)":
double: 3
idouble: 3
ildouble: 3
ldouble: 3
+Test "tgamma (-0x7.fffffffffffffff8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x8.00000000000000000000000004p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x8.00000000000000000000000004p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x8.00001p+0)":
+double: 2
+idouble: 2
Test "tgamma (-0x8.00001p0)":
double: 2
idouble: 2
+Test "tgamma (-0x8.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (-0x8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (-0x9.5ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x9.600000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x9.6000000000008p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x9.60001p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x9.8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+Test "tgamma (-0x9.ffffffffffff8p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
Test "tgamma (-0x9.ffffffffffff8p0)":
double: 1
idouble: 1
ildouble: 2
ldouble: 2
+Test "tgamma (-0x9.fffffp+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x9.fffffp0)":
float: 1
ifloat: 1
@@ -6880,11 +11102,27 @@ ldouble: 1
Test "tgamma (-0x96.000000000008p0)":
double: 1
idouble: 1
+Test "tgamma (-0xa.00001p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
Test "tgamma (-0xa.00001p0)":
double: 1
idouble: 1
ildouble: 2
ldouble: 2
+Test "tgamma (-0xa.c0001p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0xf.ffffffffffff8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.fffffp-4)":
+float: 1
+ifloat: 1
Test "tgamma (-2.5)":
double: 1
float: 2
@@ -6933,9 +11171,33 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (0x1.28p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x1.38p+4)":
+double: 2
+idouble: 2
+Test "tgamma (0x1.78p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (0x1.d8p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (0x1.fffffep+0)":
+float: 1
+ifloat: 1
Test "tgamma (0x1.fffffep0)":
float: 1
ifloat: 1
+Test "tgamma (0x1.fffffffffffffp+0)":
+double: 1
+idouble: 1
Test "tgamma (0x1.fffffffffffffp0)":
double: 1
idouble: 1
@@ -6945,79 +11207,210 @@ ifloat: 1
Test "tgamma (0x1p-53)":
double: 1
idouble: 1
+Test "tgamma (0x2.18p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x2.28p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.30a43cp+4)":
double: 1
float: 2
idouble: 1
ifloat: 2
+Test "tgamma (0x2.8p+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x2.fffffcp+0)":
+float: 3
+ifloat: 3
Test "tgamma (0x2.fffffcp0)":
float: 3
ifloat: 3
+Test "tgamma (0x3.8p+0)":
+float: 2
+ifloat: 2
+Test "tgamma (0x3.fffffcp+0)":
+float: 1
+ifloat: 1
Test "tgamma (0x3.fffffcp0)":
float: 1
ifloat: 1
+Test "tgamma (0x3.ffffffffffffep+0)":
+double: 1
+idouble: 1
Test "tgamma (0x3.ffffffffffffep0)":
double: 1
idouble: 1
+Test "tgamma (0x3p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x4.0000000000004p+0)":
+double: 1
+idouble: 1
Test "tgamma (0x4.0000000000004p0)":
double: 1
idouble: 1
+Test "tgamma (0x4.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (0x4.fffff8p+0)":
+float: 1
+ifloat: 1
Test "tgamma (0x4.fffff8p0)":
float: 1
ifloat: 1
+Test "tgamma (0x4.ffffffffffffcp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x4.ffffffffffffcp0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x4p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x5.0000000000004p+0)":
+double: 1
+idouble: 1
Test "tgamma (0x5.0000000000004p0)":
double: 1
idouble: 1
+Test "tgamma (0x5.000008p+0)":
+float: 3
+ifloat: 3
Test "tgamma (0x5.000008p0)":
float: 3
ifloat: 3
+Test "tgamma (0x5.fffff8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "tgamma (0x5.fffff8p0)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (0x6.0000000000004p+0)":
+double: 1
+idouble: 1
Test "tgamma (0x6.0000000000004p0)":
double: 1
idouble: 1
+Test "tgamma (0x6.000008p+0)":
+float: 2
+ifloat: 2
Test "tgamma (0x6.000008p0)":
float: 2
ifloat: 2
+Test "tgamma (0x6.8p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x6.fffff8p+0)":
+double: 1
+idouble: 1
Test "tgamma (0x6.fffff8p0)":
double: 1
idouble: 1
+Test "tgamma (0x6.ffffffffffffcp+0)":
+double: 4
+idouble: 4
+ildouble: 1
+ldouble: 1
Test "tgamma (0x6.ffffffffffffcp0)":
double: 4
idouble: 4
ildouble: 1
ldouble: 1
+Test "tgamma (0x6p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x7.0000000000004p+0)":
+double: 4
+idouble: 4
Test "tgamma (0x7.0000000000004p0)":
double: 4
idouble: 4
ildouble: 1
ldouble: 1
+Test "tgamma (0x7.000008p+0)":
+double: 1
+idouble: 1
Test "tgamma (0x7.000008p0)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (0x7.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x7.fffff8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
Test "tgamma (0x7.fffff8p0)":
double: 2
float: 1
idouble: 2
ifloat: 1
+Test "tgamma (0x7.ffffffffffffcp+0)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
Test "tgamma (0x7.ffffffffffffcp0)":
double: 2
idouble: 2
ildouble: 1
ldouble: 1
+Test "tgamma (0x7p+0)":
+double: 1
+idouble: 1
+Test "tgamma (0x8.00001p+0)":
+double: 2
+idouble: 2
Test "tgamma (0x8.00001p0)":
double: 2
idouble: 2
+Test "tgamma (0x8.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (0x8p+0)":
+double: 1
+idouble: 1
+Test "tgamma (0x8p-4)":
+float: 1
+ifloat: 1
+Test "tgamma (0x8p-56)":
+double: 1
+idouble: 1
+Test "tgamma (0x9.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x9p+0)":
+double: 1
+idouble: 1
Test "tgamma (0xa.b9fd72b0fb238p+4)":
double: 1
idouble: 1
@@ -7026,6 +11419,22 @@ ldouble: 2
Test "tgamma (0xa.b9fd72b0fb23a9ddbf0d3804f4p+4)":
ildouble: 1
ldouble: 1
+Test "tgamma (0xa.b9fd7p+4)":
+double: 2
+idouble: 2
+ildouble: 2
+ldouble: 2
+Test "tgamma (0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (0xb.333333333333333p-4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0xb.33334p-4)":
+ildouble: 1
+ldouble: 1
Test "tgamma (10)":
double: 1
float: 1
@@ -7132,11 +11541,23 @@ ldouble: 1
Test "y0 (0x1.3ffp+74)":
double: 1
idouble: 1
+Test "y0 (0x1.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
Test "y0 (0x1.ff00000000002p+840)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "y0 (0x1p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "y0 (0x1p-100)":
ildouble: 1
ldouble: 1
@@ -7172,6 +11593,60 @@ idouble: 1
Test "y0 (0x1p1023)":
ildouble: 1
ldouble: 1
+Test "y0 (0x2p+0)":
+double: 1
+idouble: 1
+Test "y0 (0x2p-4)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4.ffcp+72)":
+double: 1
+idouble: 1
+Test "y0 (0x4p-112)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p-32)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p-72)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "y0 (0x8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "y0 (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "y0 (1.0)":
double: 2
float: 1
@@ -7216,6 +11691,9 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "y1 (0x1.8p+0)":
+float: 1
+ifloat: 1
Test "y1 (0x1p-10)":
double: 1
idouble: 1
@@ -7225,6 +11703,47 @@ ldouble: 1
Test "y1 (0x1p1023)":
ildouble: 1
ldouble: 1
+Test "y1 (0x2.002000002p+592)":
+ildouble: 2
+ldouble: 2
+Test "y1 (0x2p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "y1 (0x2p-4)":
+double: 1
+idouble: 1
+Test "y1 (0x4p-12)":
+double: 1
+idouble: 1
+Test "y1 (0x8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "y1 (0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0x9.3f102p+96)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "y1 (0xap+0)":
+double: 3
+float: 1
+idouble: 3
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "y1 (0xf.fffffp+124)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
Test "y1 (1.5)":
float: 1
ifloat: 1
@@ -7249,12 +11768,48 @@ ildouble: 1
ldouble: 1
# yn
+Test "yn (-10, 0x1p+0)":
+float: 2
+ifloat: 2
+Test "yn (-10, 1.0)":
+float: 2
+ifloat: 2
Test "yn (0, 0.125)":
ildouble: 1
ldouble: 1
Test "yn (0, 0.75)":
ildouble: 1
ldouble: 1
+Test "yn (0, 0x1.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "yn (0, 0x1p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (0, 0x2p+0)":
+double: 1
+idouble: 1
+Test "yn (0, 0x2p-4)":
+ildouble: 1
+ldouble: 1
+Test "yn (0, 0x8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (0, 0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "yn (0, 1.0)":
double: 2
float: 1
@@ -7287,6 +11842,31 @@ ldouble: 1
Test "yn (1, 0.125)":
double: 1
idouble: 1
+Test "yn (1, 0x1.8p+0)":
+float: 1
+ifloat: 1
+Test "yn (1, 0x2p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "yn (1, 0x2p-4)":
+double: 1
+idouble: 1
+Test "yn (1, 0x8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "yn (1, 0xap+0)":
+double: 3
+float: 1
+idouble: 3
+ifloat: 1
+ildouble: 2
+ldouble: 2
Test "yn (1, 1.5)":
float: 2
ifloat: 2
@@ -7317,6 +11897,29 @@ double: 1
float: 2
idouble: 1
ifloat: 2
+Test "yn (10, 0x1p+0)":
+float: 2
+ifloat: 2
+Test "yn (10, 0x2p+0)":
+double: 3
+float: 1
+idouble: 3
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (10, 0x2p-4)":
+double: 1
+idouble: 1
+Test "yn (10, 0xap+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "yn (10, 0xcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "yn (10, 1.0)":
float: 2
ifloat: 2
@@ -7334,12 +11937,66 @@ idouble: 3
ifloat: 1
ildouble: 1
ldouble: 1
+Test "yn (2, 0x1.ffff62p+99)":
+double: 1
+idouble: 1
+Test "yn (2, 0x1p1023)":
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0x1p127)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0x8p+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0xf.fffb1p+96)":
+double: 1
+idouble: 1
+Test "yn (2, 0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0xf.ffffffffffffbffffffffffffcp+1020)":
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "yn (3, 0.125)":
double: 1
idouble: 1
Test "yn (3, 0.75)":
float: 1
ifloat: 1
+Test "yn (3, 0x2p+0)":
+double: 1
+idouble: 1
+Test "yn (3, 0x2p-4)":
+double: 1
+idouble: 1
+Test "yn (3, 0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "yn (3, 10.0)":
double: 1
float: 1
@@ -7361,8 +12018,8 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 3
+ldouble: 3
Function: "acos_tonearest":
ildouble: 1
@@ -7373,10 +12030,12 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 3
+ldouble: 3
Function: "acos_upward":
+double: 1
+idouble: 1
ildouble: 2
ldouble: 2
@@ -7393,12 +12052,12 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "asin_tonearest":
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "asin_towardzero":
double: 1
@@ -7409,10 +12068,12 @@ ildouble: 1
ldouble: 1
Function: "asin_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "asinh":
ildouble: 1
@@ -7421,8 +12082,8 @@ ldouble: 1
Function: "atan2":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "atanh":
float: 1
@@ -7493,8 +12154,6 @@ ldouble: 1
Function: Real part of "catan":
float: 4
ifloat: 4
-ildouble: 1
-ldouble: 1
Function: Imaginary part of "catan":
double: 1
@@ -7515,14 +12174,12 @@ ldouble: 1
Function: Imaginary part of "catanh":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
Function: "cbrt":
double: 1
+float: 1
idouble: 1
-ildouble: 1
-ldouble: 1
+ifloat: 1
Function: Real part of "ccos":
double: 1
@@ -7613,50 +12270,66 @@ ildouble: 2
ldouble: 2
Function: "cos_downward":
-float: 1
-ifloat: 1
-ildouble: 2
-ldouble: 2
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 3
+ldouble: 3
Function: "cos_tonearest":
float: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "cos_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 2
-ldouble: 2
+ildouble: 3
+ldouble: 3
Function: "cos_upward":
+double: 1
float: 2
+idouble: 1
ifloat: 2
-ildouble: 1
-ldouble: 1
+ildouble: 4
+ldouble: 4
Function: "cosh":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Function: "cosh_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "cosh_tonearest":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Function: "cosh_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "cosh_upward":
+double: 1
+idouble: 1
ildouble: 2
ldouble: 2
@@ -7873,8 +12546,8 @@ double: 1
float: 1
idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "exp":
ildouble: 1
@@ -7893,7 +12566,9 @@ ildouble: 2
ldouble: 2
Function: "exp_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -7903,13 +12578,17 @@ ildouble: 1
ldouble: 1
Function: "exp_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "exp_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -7922,13 +12601,41 @@ ifloat: 1
ildouble: 1
ldouble: 1
+Function: "expm1_downward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
+Function: "expm1_tonearest":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
+Function: "expm1_towardzero":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+
+Function: "expm1_upward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
Function: "gamma":
double: 1
float: 2
idouble: 1
ifloat: 2
-ildouble: 3
-ldouble: 3
Function: "hypot":
double: 1
@@ -7967,10 +12674,10 @@ double: 1
float: 2
idouble: 1
ifloat: 2
-ildouble: 3
-ldouble: 3
Function: "log":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -8010,6 +12717,12 @@ ifloat: 1
ildouble: 1
ldouble: 1
+Function: "pow_tonearest":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
Function: "pow_towardzero":
float: 1
ifloat: 1
@@ -8023,12 +12736,16 @@ ildouble: 1
ldouble: 1
Function: "sin":
+float: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Function: "sin_downward":
-float: 1
-ifloat: 1
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
ildouble: 4
ldouble: 4
@@ -8039,13 +12756,17 @@ ildouble: 1
ldouble: 1
Function: "sin_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 3
-ldouble: 3
+ildouble: 4
+ldouble: 4
Function: "sin_upward":
+double: 1
float: 2
+idouble: 1
ifloat: 2
ildouble: 3
ldouble: 3
@@ -8063,7 +12784,9 @@ ildouble: 1
ldouble: 1
Function: "sinh_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
@@ -8073,18 +12796,42 @@ ildouble: 1
ldouble: 1
Function: "sinh_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
Function: "sinh_upward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
Function: "sqrt":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
+
+Function: "sqrt_downward":
+ildouble: 1
+ldouble: 1
+
+Function: "sqrt_tonearest":
+ildouble: 1
+ldouble: 1
+
+Function: "sqrt_towardzero":
+ildouble: 1
+ldouble: 1
+
+Function: "sqrt_upward":
+ildouble: 1
+ldouble: 1
Function: "tan":
double: 1
@@ -8093,23 +12840,29 @@ ildouble: 2
ldouble: 2
Function: "tan_downward":
-float: 1
-ifloat: 1
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
ildouble: 2
ldouble: 2
Function: "tan_tonearest":
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "tan_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 3
ldouble: 3
Function: "tan_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 3
ldouble: 3
diff --git a/sysdeps/powerpc/fpu/math_private.h b/sysdeps/powerpc/fpu/math_private.h
index 6c00785633..c8833d694f 100644
--- a/sysdeps/powerpc/fpu/math_private.h
+++ b/sysdeps/powerpc/fpu/math_private.h
@@ -22,6 +22,7 @@
#include <sysdep.h>
#include <ldsodefs.h>
#include <dl-procinfo.h>
+#include <fenv_private.h>
#include_next <math_private.h>
# if __WORDSIZE == 64 || defined _ARCH_PWR4
diff --git a/sysdeps/powerpc/fpu/s_float_bitwise.h b/sysdeps/powerpc/fpu/s_float_bitwise.h
index 8e4adca868..c0a4e56be0 100644
--- a/sysdeps/powerpc/fpu/s_float_bitwise.h
+++ b/sysdeps/powerpc/fpu/s_float_bitwise.h
@@ -23,18 +23,19 @@
#include <math_private.h>
/* Returns (int)(num & 0x7FFFFFF0 == value) */
-static inline
-int __float_and_test28 (float num, float value)
+static inline int
+__float_and_test28 (float num, float value)
{
float ret;
#ifdef _ARCH_PWR7
- vector int mask = (vector int) {
- 0x7ffffffe, 0x00000000, 0x00000000, 0x0000000
- };
+ union {
+ int i;
+ float f;
+ } mask = { .i = 0x7ffffff0 };
__asm__ (
- /* the 'f' constrain is use on mask because we just need
+ /* the 'f' constraint is used on mask because we just need
* to compare floats, not full vector */
- "xxland %x0,%x1,%x2" : "=f" (ret) : "f" (num), "f" (mask)
+ "xxland %x0,%x1,%x2" : "=f" (ret) : "f" (num), "f" (mask.f)
);
#else
int32_t inum;
@@ -46,16 +47,17 @@ int __float_and_test28 (float num, float value)
}
/* Returns (int)(num & 0x7FFFFF00 == value) */
-static inline
-int __float_and_test24 (float num, float value)
+static inline int
+__float_and_test24 (float num, float value)
{
float ret;
#ifdef _ARCH_PWR7
- vector int mask = (vector int) {
- 0x7fffffe0, 0x00000000, 0x00000000, 0x0000000
- };
+ union {
+ int i;
+ float f;
+ } mask = { .i = 0x7fffff00 };
__asm__ (
- "xxland %x0,%x1,%x2" : "=f" (ret) : "f" (num), "f" (mask)
+ "xxland %x0,%x1,%x2" : "=f" (ret) : "f" (num), "f" (mask.f)
);
#else
int32_t inum;
@@ -67,16 +69,17 @@ int __float_and_test24 (float num, float value)
}
/* Returns (float)(num & 0x7F800000) */
-static inline
-float __float_and8 (float num)
+static inline float
+__float_and8 (float num)
{
float ret;
#ifdef _ARCH_PWR7
- vector int mask = (vector int) {
- 0x7ff00000, 0x00000000, 0x00000000, 0x00000000
- };
+ union {
+ int i;
+ float f;
+ } mask = { .i = 0x7f800000 };
__asm__ (
- "xxland %x0,%x1,%x2" : "=f" (ret) : "f" (num), "f" (mask)
+ "xxland %x0,%x1,%x2" : "=f" (ret) : "f" (num), "f" (mask.f)
);
#else
int32_t inum;
@@ -88,17 +91,18 @@ float __float_and8 (float num)
}
/* Returns ((int32_t)(num & 0x7F800000) >> 23) */
-static inline
-int32_t __float_get_exp (float num)
+static inline int32_t
+__float_get_exp (float num)
{
int32_t inum;
#ifdef _ARCH_PWR7
float ret;
- vector int mask = (vector int) {
- 0x7ff00000, 0x00000000, 0x00000000, 0x00000000
- };
+ union {
+ int i;
+ float f;
+ } mask = { .i = 0x7f800000 };
__asm__ (
- "xxland %x0,%x1,%x2" : "=f" (ret) : "f" (num), "f" (mask)
+ "xxland %x0,%x1,%x2" : "=f" (ret) : "f" (num), "f" (mask.f)
);
GET_FLOAT_WORD(inum, ret);
#else
diff --git a/sysdeps/powerpc/fpu/s_llround.c b/sysdeps/powerpc/fpu/s_llround.c
index 9a01826539..995d0a724a 100644
--- a/sysdeps/powerpc/fpu/s_llround.c
+++ b/sysdeps/powerpc/fpu/s_llround.c
@@ -19,29 +19,28 @@
#include <math.h>
#include <math_ldbl_opt.h>
-/* I think that what this routine is supposed to do is round a value
- to the nearest integer, with values exactly on the boundary rounded
- away from zero. */
-/* This routine relies on (long long)x, when x is out of range of a long long,
- clipping to MAX_LLONG or MIN_LLONG. */
+/* Round to the nearest integer, with values exactly on a 0.5 boundary
+ rounded away from zero, regardless of the current rounding mode.
+ If (long long)x, when x is out of range of a long long, clips at
+ LLONG_MAX or LLONG_MIN, then this implementation also clips. */
long long int
__llround (double x)
{
- double xrf;
- long long int xr;
- xr = (long long int) x;
- xrf = (double) xr;
+ long long xr = (long long) x;
+ double xrf = (double) xr;
+
if (x >= 0.0)
- if (x - xrf >= 0.5 && x - xrf < 1.0 && x+1 > 0)
- return x+1;
- else
- return x;
+ {
+ if (x - xrf >= 0.5)
+ xr += (long long) ((unsigned long long) xr + 1) > 0;
+ }
else
- if (xrf - x >= 0.5 && xrf - x < 1.0 && x-1 < 0)
- return x-1;
- else
- return x;
+ {
+ if (xrf - x >= 0.5)
+ xr -= (long long) ((unsigned long long) xr - 1) < 0;
+ }
+ return xr;
}
weak_alias (__llround, llround)
#ifdef NO_LONG_DOUBLE
diff --git a/sysdeps/powerpc/fpu/s_llroundf.c b/sysdeps/powerpc/fpu/s_llroundf.c
index 07d12adbfb..0935de6624 100644
--- a/sysdeps/powerpc/fpu/s_llroundf.c
+++ b/sysdeps/powerpc/fpu/s_llroundf.c
@@ -18,28 +18,27 @@
#include <math.h>
-/* I think that what this routine is supposed to do is round a value
- to the nearest integer, with values exactly on the boundary rounded
- away from zero. */
-/* This routine relies on (long long)x, when x is out of range of a long long,
- clipping to MAX_LLONG or MIN_LLONG. */
+/* Round to the nearest integer, with values exactly on a 0.5 boundary
+ rounded away from zero, regardless of the current rounding mode.
+ If (long long)x, when x is out of range of a long long, clips at
+ LLONG_MAX or LLONG_MIN, then this implementation also clips. */
long long int
__llroundf (float x)
{
- float xrf;
- long long int xr;
- xr = (long long int) x;
- xrf = (float) xr;
+ long long xr = (long long) x;
+ float xrf = (float) xr;
+
if (x >= 0.0)
- if (x - xrf >= 0.5 && x - xrf < 1.0 && x+1 > 0)
- return x+1;
- else
- return x;
+ {
+ if (x - xrf >= 0.5)
+ xr += (long long) ((unsigned long long) xr + 1) > 0;
+ }
else
- if (xrf - x >= 0.5 && xrf - x < 1.0 && x-1 < 0)
- return x-1;
- else
- return x;
+ {
+ if (xrf - x >= 0.5)
+ xr -= (long long) ((unsigned long long) xr - 1) < 0;
+ }
+ return xr;
}
weak_alias (__llroundf, llroundf)
diff --git a/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c b/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c
index feffa6b4ff..cc9b320bfd 100644
--- a/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c
+++ b/sysdeps/powerpc/fpu/tst-setcontext-fpscr.c
@@ -83,7 +83,7 @@ ElfW(Addr) query_auxv(int type)
return 0;
}
-typedef unsigned long long di_fpscr_t __attribute__ ((__mode__ (__DI__)));
+typedef unsigned int di_fpscr_t __attribute__ ((__mode__ (__DI__)));
typedef unsigned int si_fpscr_t __attribute__ ((__mode__ (__SI__)));
#define _FPSCR_RESERVED 0xfffffff8ffffff04ULL
@@ -95,50 +95,51 @@ typedef unsigned int si_fpscr_t __attribute__ ((__mode__ (__SI__)));
#define _FPSCR_TEST1_RN 0x0000000000000002ULL
/* Macros for accessing the hardware control word on Power6[x]. */
-# define _GET_DI_FPSCR(__fpscr) ({ \
- union { double d; \
- di_fpscr_t fpscr; } \
- tmp __attribute__ ((__aligned__(8))); \
- __asm__ ("mffs 0; stfd%U0 0,%0" : "=m" (tmp.d) : : "fr0"); \
- (__fpscr)=tmp.fpscr; \
- tmp.fpscr; })
-
-/* We make sure to zero fp0 after we use it in order to prevent stale data
+#define _GET_DI_FPSCR(__fpscr) \
+ ({union { double d; di_fpscr_t fpscr; } u; \
+ register double fr; \
+ __asm__ ("mffs %0" : "=f" (fr)); \
+ u.d = fr; \
+ (__fpscr) = u.fpscr; \
+ u.fpscr; \
+ })
+
+/* We make sure to zero fp after we use it in order to prevent stale data
in an fp register from making a test-case pass erroneously. */
-# define _SET_DI_FPSCR(__fpscr) { \
- union { double d; di_fpscr_t fpscr; } \
- tmp __attribute__ ((__aligned__(8))); \
- tmp.fpscr = __fpscr; \
- /* Set the entire 64-bit FPSCR. */ \
- __asm__ ("lfd%U0 0,%0; " \
- ".machine push; " \
- ".machine \"power6\"; " \
- "mtfsf 255,0,1,0; " \
- ".machine pop" : : "m" (tmp.d) : "fr0"); \
- tmp.d = 0; \
- __asm__("lfd%U0 0,%0" : : "m" (tmp.d) : "fr0"); \
-}
-
-# define _GET_SI_FPSCR(__fpscr) ({ \
- union { double d; \
- si_fpscr_t cw[2]; } \
- tmp __attribute__ ((__aligned__(8))); \
- __asm__ ("mffs 0; stfd%U0 0,%0" : "=m" (tmp.d) : : "fr0"); \
- (__fpscr)=tmp.cw[1]; \
- tmp.cw[0]; })
-
-/* We make sure to zero fp0 after we use it in order to prevent stale data
+# define _SET_DI_FPSCR(__fpscr) \
+ { union { double d; di_fpscr_t fpscr; } u; \
+ register double fr; \
+ u.fpscr = __fpscr; \
+ fr = u.d; \
+ /* Set the entire 64-bit FPSCR. */ \
+ __asm__ (".machine push; " \
+ ".machine \"power6\"; " \
+ "mtfsf 255,%0,1,0; " \
+ ".machine pop" : : "f" (fr)); \
+ fr = 0.0; \
+ }
+
+# define _GET_SI_FPSCR(__fpscr) \
+ ({union { double d; di_fpscr_t fpscr; } u; \
+ register double fr; \
+ __asm__ ("mffs %0" : "=f" (fr)); \
+ u.d = fr; \
+ (__fpscr) = (si_fpscr_t) u.fpscr; \
+ (si_fpscr_t) u.fpscr; \
+ })
+
+/* We make sure to zero fp after we use it in order to prevent stale data
in an fp register from making a test-case pass erroneously. */
-# define _SET_SI_FPSCR(__fpscr) { \
- union { double d; si_fpscr_t fpscr[2]; } \
- tmp __attribute__ ((__aligned__(8))); \
- /* More-or-less arbitrary; this is a QNaN. */ \
- tmp.fpscr[0] = 0xFFF80000; \
- tmp.fpscr[1] = __fpscr; \
- __asm__ ("lfd%U0 0,%0; mtfsf 255,0" : : "m" (tmp.d) : "fr0"); \
- tmp.d = 0; \
- __asm__("lfd%U0 0,%0" : : "m" (tmp.d) : "fr0"); \
-}
+# define _SET_SI_FPSCR(__fpscr) \
+ { union { double d; di_fpscr_t fpscr; } u; \
+ register double fr; \
+ /* More-or-less arbitrary; this is a QNaN. */ \
+ u.fpscr = 0xfff80000ULL << 32; \
+ u.fpscr |= __fpscr & 0xffffffffULL; \
+ fr = u.d; \
+ __asm__ ("mtfsf 255,%0" : : "f" (fr)); \
+ fr = 0.0; \
+ }
void prime_special_regs(int which)
{
diff --git a/sysdeps/powerpc/fpu_control.h b/sysdeps/powerpc/fpu_control.h
index 159543beed..e82e7913cb 100644
--- a/sysdeps/powerpc/fpu_control.h
+++ b/sysdeps/powerpc/fpu_control.h
@@ -19,7 +19,7 @@
#ifndef _FPU_CONTROL_H
#define _FPU_CONTROL_H
-#if defined _SOFT_FLOAT || defined __NO_FPRS__
+#ifdef _SOFT_FLOAT
# define _FPU_RESERVED 0xffffffff
# define _FPU_DEFAULT 0x00000000 /* Default value. */
@@ -28,6 +28,41 @@ typedef unsigned int fpu_control_t;
# define _FPU_SETCW(cw) (void) (cw)
extern fpu_control_t __fpu_control;
+#elif defined __NO_FPRS__ /* e500 */
+
+/* rounding control */
+# define _FPU_RC_NEAREST 0x00 /* RECOMMENDED */
+# define _FPU_RC_DOWN 0x03
+# define _FPU_RC_UP 0x02
+# define _FPU_RC_ZERO 0x01
+
+/* masking of interrupts */
+# define _FPU_MASK_ZM 0x10 /* zero divide */
+# define _FPU_MASK_OM 0x04 /* overflow */
+# define _FPU_MASK_UM 0x08 /* underflow */
+# define _FPU_MASK_XM 0x40 /* inexact */
+# define _FPU_MASK_IM 0x20 /* invalid operation */
+
+# define _FPU_RESERVED 0x00c10080 /* These bits are reserved and not changed. */
+
+/* Correct IEEE semantics require traps to be enabled at the hardware
+ level; the kernel then does the emulation and determines whether
+ generation of signals from those traps was enabled using prctl. */
+# define _FPU_DEFAULT 0x0000003c /* Default value. */
+# define _FPU_IEEE _FPU_DEFAULT
+
+/* Type of the control word. */
+typedef unsigned int fpu_control_t;
+
+/* Macros for accessing the hardware control word. */
+# define _FPU_GETCW(cw) \
+ __asm__ volatile ("mfspefscr %0" : "=r" (cw))
+# define _FPU_SETCW(cw) \
+ __asm__ volatile ("mtspefscr %0" : : "r" (cw))
+
+/* Default control word set at startup. */
+extern fpu_control_t __fpu_control;
+
#else /* PowerPC 6xx floating-point. */
/* rounding control */
@@ -56,22 +91,26 @@ extern fpu_control_t __fpu_control;
# define _FPU_IEEE 0x000000f0
/* Type of the control word. */
-typedef unsigned int fpu_control_t __attribute__ ((__mode__ (__SI__)));
+typedef unsigned int fpu_control_t;
/* Macros for accessing the hardware control word. */
-# define _FPU_GETCW(__cw) ( { \
- union { double d; fpu_control_t cw[2]; } \
- tmp __attribute__ ((__aligned__(8))); \
- __asm__ ("mffs 0; stfd%U0 0,%0" : "=m" (tmp.d) : : "fr0"); \
- (__cw)=tmp.cw[1]; \
- tmp.cw[1]; } )
-# define _FPU_SETCW(__cw) { \
- union { double d; fpu_control_t cw[2]; } \
- tmp __attribute__ ((__aligned__(8))); \
- tmp.cw[0] = 0xFFF80000; /* More-or-less arbitrary; this is a QNaN. */ \
- tmp.cw[1] = __cw; \
- __asm__ ("lfd%U0 0,%0; mtfsf 255,0" : : "m" (tmp.d) : "fr0"); \
-}
+# define _FPU_GETCW(cw) \
+ ({union { double __d; unsigned long long __ll; } __u; \
+ register double __fr; \
+ __asm__ ("mffs %0" : "=f" (__fr)); \
+ __u.__d = __fr; \
+ (cw) = (fpu_control_t) __u.__ll; \
+ (fpu_control_t) __u.__ll; \
+ })
+
+# define _FPU_SETCW(cw) \
+ { union { double __d; unsigned long long __ll; } __u; \
+ register double __fr; \
+ __u.__ll = 0xfff80000LL << 32; /* This is a QNaN. */ \
+ __u.__ll |= (cw) & 0xffffffffLL; \
+ __fr = __u.__d; \
+ __asm__ ("mtfsf 255,%0" : : "f" (__fr)); \
+ }
/* Default control word set at startup. */
extern fpu_control_t __fpu_control;
diff --git a/sysdeps/powerpc/jmpbuf-offsets.h b/sysdeps/powerpc/jmpbuf-offsets.h
index 64c658a588..f2116bd703 100644
--- a/sysdeps/powerpc/jmpbuf-offsets.h
+++ b/sysdeps/powerpc/jmpbuf-offsets.h
@@ -21,12 +21,10 @@
#define JB_LR 2 /* The address we will return to */
#if __WORDSIZE == 64
# define JB_GPRS 3 /* GPRs 14 through 31 are saved, 18*2 words total. */
-# define JB_CR 21 /* Condition code registers with the VRSAVE at */
- /* offset 172 (low half of the double word. */
+# define JB_CR 21 /* Shared dword with VRSAVE. CR word at offset 172. */
# define JB_FPRS 22 /* FPRs 14 through 31 are saved, 18*2 words total. */
# define JB_SIZE (64 * 8) /* As per PPC64-VMX ABI. */
-# define JB_VRSAVE 21 /* VRSAVE shares a double word with the CR at offset */
- /* 168 (high half of the double word). */
+# define JB_VRSAVE 21 /* Shared dword with CR. VRSAVE word at offset 168. */
# define JB_VRS 40 /* VRs 20 through 31 are saved, 12*4 words total. */
#else
# define JB_GPRS 3 /* GPRs 14 through 31 are saved, 18 in total. */
diff --git a/sysdeps/powerpc/ldsodefs.h b/sysdeps/powerpc/ldsodefs.h
index ef849e961c..435821c246 100644
--- a/sysdeps/powerpc/ldsodefs.h
+++ b/sysdeps/powerpc/ldsodefs.h
@@ -25,6 +25,8 @@ struct La_ppc32_regs;
struct La_ppc32_retval;
struct La_ppc64_regs;
struct La_ppc64_retval;
+struct La_ppc64v2_regs;
+struct La_ppc64v2_retval;
#define ARCH_PLTENTER_MEMBERS \
Elf32_Addr (*ppc32_gnu_pltenter) (Elf32_Sym *, unsigned int, uintptr_t *, \
@@ -34,7 +36,12 @@ struct La_ppc64_retval;
Elf64_Addr (*ppc64_gnu_pltenter) (Elf64_Sym *, unsigned int, uintptr_t *, \
uintptr_t *, struct La_ppc64_regs *, \
unsigned int *, const char *name, \
- long int *framesizep)
+ long int *framesizep); \
+ Elf64_Addr (*ppc64v2_gnu_pltenter) (Elf64_Sym *, unsigned int, \
+ uintptr_t *, uintptr_t *, \
+ struct La_ppc64v2_regs *, \
+ unsigned int *, const char *name, \
+ long int *framesizep)
#define ARCH_PLTEXIT_MEMBERS \
unsigned int (*ppc32_gnu_pltexit) (Elf32_Sym *, unsigned int, \
@@ -47,7 +54,14 @@ struct La_ppc64_retval;
uintptr_t *, \
uintptr_t *, \
const struct La_ppc64_regs *, \
- struct La_ppc64_retval *, const char *)
+ struct La_ppc64_retval *, \
+ const char *); \
+ unsigned int (*ppc64v2_gnu_pltexit) (Elf64_Sym *, unsigned int, \
+ uintptr_t *, \
+ uintptr_t *, \
+ const struct La_ppc64v2_regs *,\
+ struct La_ppc64v2_retval *, \
+ const char *)
#include_next <ldsodefs.h>
diff --git a/sysdeps/powerpc/longjmp.c b/sysdeps/powerpc/longjmp.c
index 198c894208..189fc03aba 100644
--- a/sysdeps/powerpc/longjmp.c
+++ b/sysdeps/powerpc/longjmp.c
@@ -55,6 +55,6 @@ weak_alias (__vmx__libc_siglongjmp, __vmxsiglongjmp)
default_symbol_version (__vmx__libc_longjmp, __libc_longjmp, GLIBC_PRIVATE);
default_symbol_version (__vmx__libc_siglongjmp, __libc_siglongjmp, GLIBC_PRIVATE);
-default_symbol_version (__vmx_longjmp, _longjmp, GLIBC_2.3.4);
-default_symbol_version (__vmxlongjmp, longjmp, GLIBC_2.3.4);
-default_symbol_version (__vmxsiglongjmp, siglongjmp, GLIBC_2.3.4);
+versioned_symbol (libc, __vmx_longjmp, _longjmp, GLIBC_2_3_4);
+versioned_symbol (libc, __vmxlongjmp, longjmp, GLIBC_2_3_4);
+versioned_symbol (libc, __vmxsiglongjmp, siglongjmp, GLIBC_2_3_4);
diff --git a/ports/sysdeps/powerpc/nofpu/Makefile b/sysdeps/powerpc/nofpu/Makefile
index 6bdff45465..9de7c43747 100644
--- a/ports/sysdeps/powerpc/nofpu/Makefile
+++ b/sysdeps/powerpc/nofpu/Makefile
@@ -2,7 +2,8 @@
ifeq ($(subdir),soft-fp)
sysdep_routines += $(gcc-single-routines) $(gcc-double-routines) \
- sim-full
+ sim-full atomic-feholdexcept atomic-feclearexcept \
+ atomic-feupdateenv flt-rounds
endif
ifeq ($(subdir),math)
@@ -14,6 +15,7 @@ CPPFLAGS += -I../soft-fp/
# gcc-4.1.1 and may be too late for gcc-4.2. So we need these flags
# until the fix in a gcc release and glibc drops support for earlier
# versions of gcc.
+CFLAGS-e_hypotl.c += -fno-builtin-fabsl
CFLAGS-e_powl.c += -fno-builtin-fabsl
CFLAGS-s_ccoshl.c += -fno-builtin-fabsl
CFLAGS-s_csinhl.c += -fno-builtin-fabsl
@@ -21,4 +23,9 @@ CFLAGS-s_clogl.c += -fno-builtin-fabsl
CFLAGS-s_clog10l.c += -fno-builtin-fabsl
CFLAGS-s_csinl.c += -fno-builtin-fabsl
CFLAGS-s_csqrtl.c += -fno-builtin-fabsl
+CFLAGS-w_acosl.c += -fno-builtin-fabsl
+CFLAGS-w_asinl.c += -fno-builtin-fabsl
+CFLAGS-w_atanhl.c += -fno-builtin-fabsl
+CFLAGS-w_j0l.c += -fno-builtin-fabsl
+CFLAGS-w_j1l.c += -fno-builtin-fabsl
endif
diff --git a/ports/sysdeps/powerpc/nofpu/Subdirs b/sysdeps/powerpc/nofpu/Subdirs
index 87eadf3024..87eadf3024 100644
--- a/ports/sysdeps/powerpc/nofpu/Subdirs
+++ b/sysdeps/powerpc/nofpu/Subdirs
diff --git a/ports/sysdeps/powerpc/nofpu/Versions b/sysdeps/powerpc/nofpu/Versions
index 1a29319d5a..9f569bd1a5 100644
--- a/ports/sysdeps/powerpc/nofpu/Versions
+++ b/sysdeps/powerpc/nofpu/Versions
@@ -2,9 +2,9 @@ libc {
GLIBC_2.3.2 {
__sim_exceptions; __sim_disabled_exceptions; __sim_round_mode;
__adddf3; __addsf3; __divdf3; __divsf3; __eqdf2; __eqsf2;
- __extendsfdf2; __fixdfdi; __fixdfsi; __fixsfdi; __fixsfsi;
- __fixunsdfdi; __fixunsdfsi; __fixunssfdi; __fixunssfsi;
- __floatdidf; __floatdisf; __floatsidf; __floatsisf;
+ __extendsfdf2; __fixdfsi; __fixsfsi;
+ __fixunsdfsi; __fixunssfsi;
+ __floatsidf; __floatsisf;
__gedf2; __gesf2; __ledf2; __lesf2; __muldf3; __mulsf3;
__negdf2; __negsf2; __sqrtdf2; __sqrtsf2; __subdf3;
__subsf3; __truncdfsf2;
@@ -17,4 +17,13 @@ libc {
__gtdf2; __gtsf2;
__ltdf2; __ltsf2;
}
+ GLIBC_2.19 {
+ __atomic_feholdexcept; __atomic_feclearexcept; __atomic_feupdateenv;
+ __flt_rounds;
+ }
+ GLIBC_PRIVATE {
+ __sim_exceptions_thread;
+ __sim_disabled_exceptions_thread;
+ __sim_round_mode_thread;
+ }
}
diff --git a/sysdeps/powerpc/nofpu/atomic-feclearexcept.c b/sysdeps/powerpc/nofpu/atomic-feclearexcept.c
new file mode 100644
index 0000000000..c2b2ee9386
--- /dev/null
+++ b/sysdeps/powerpc/nofpu/atomic-feclearexcept.c
@@ -0,0 +1,28 @@
+/* Clear floating-point exceptions for atomic compound assignment.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "soft-supp.h"
+
+void
+__atomic_feclearexcept (void)
+{
+ /* This function postdates the global variables being turned into
+ compat symbols, so no need to set them. */
+ __sim_exceptions_thread = 0;
+}
diff --git a/sysdeps/powerpc/nofpu/atomic-feholdexcept.c b/sysdeps/powerpc/nofpu/atomic-feholdexcept.c
new file mode 100644
index 0000000000..07b11d0557
--- /dev/null
+++ b/sysdeps/powerpc/nofpu/atomic-feholdexcept.c
@@ -0,0 +1,38 @@
+/* Store current floating-point environment and clear exceptions for
+ atomic compound assignment.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "soft-supp.h"
+
+void
+__atomic_feholdexcept (fenv_t *envp)
+{
+ fenv_union_t u;
+
+ u.l[0] = __sim_exceptions_thread;
+ /* The rounding mode is not changed by arithmetic, so no need to
+ save it. */
+ u.l[1] = __sim_disabled_exceptions_thread;
+ *envp = u.fenv;
+
+ /* This function postdates the global variables being turned into
+ compat symbols, so no need to set them. */
+ __sim_exceptions_thread = 0;
+ __sim_disabled_exceptions_thread = FE_ALL_EXCEPT;
+}
diff --git a/sysdeps/powerpc/nofpu/atomic-feupdateenv.c b/sysdeps/powerpc/nofpu/atomic-feupdateenv.c
new file mode 100644
index 0000000000..9334e1192c
--- /dev/null
+++ b/sysdeps/powerpc/nofpu/atomic-feupdateenv.c
@@ -0,0 +1,37 @@
+/* Install given floating-point environment and raise exceptions for
+ atomic compound assignment.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "soft-supp.h"
+#include <signal.h>
+
+void
+__atomic_feupdateenv (const fenv_t *envp)
+{
+ fenv_union_t u;
+ int saved_exceptions = __sim_exceptions_thread;
+
+ /* This function postdates the global variables being turned into
+ compat symbols, so no need to set them. */
+ u.fenv = *envp;
+ __sim_exceptions_thread |= u.l[0];
+ __sim_disabled_exceptions_thread = u.l[1];
+ if (saved_exceptions & ~__sim_disabled_exceptions_thread)
+ raise (SIGFPE);
+}
diff --git a/ports/sysdeps/powerpc/nofpu/fclrexcpt.c b/sysdeps/powerpc/nofpu/fclrexcpt.c
index fabda0ab98..da0b61a894 100644
--- a/ports/sysdeps/powerpc/nofpu/fclrexcpt.c
+++ b/sysdeps/powerpc/nofpu/fclrexcpt.c
@@ -23,7 +23,8 @@
int
__feclearexcept (int x)
{
- __sim_exceptions &= ~x;
+ __sim_exceptions_thread &= ~x;
+ SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread);
return 0;
}
diff --git a/ports/sysdeps/powerpc/nofpu/fedisblxcpt.c b/sysdeps/powerpc/nofpu/fedisblxcpt.c
index e06c8f7676..00490fd6ed 100644
--- a/ports/sysdeps/powerpc/nofpu/fedisblxcpt.c
+++ b/sysdeps/powerpc/nofpu/fedisblxcpt.c
@@ -24,9 +24,11 @@
int
fedisableexcept (int x)
{
- int old_exceptions = ~__sim_disabled_exceptions & FE_ALL_EXCEPT;
+ int old_exceptions = ~__sim_disabled_exceptions_thread & FE_ALL_EXCEPT;
- __sim_disabled_exceptions |= x;
+ __sim_disabled_exceptions_thread |= x;
+ SIM_SET_GLOBAL (__sim_disabled_exceptions_global,
+ __sim_disabled_exceptions_thread);
return old_exceptions;
}
diff --git a/ports/sysdeps/powerpc/nofpu/feenablxcpt.c b/sysdeps/powerpc/nofpu/feenablxcpt.c
index 93249abf6c..09eb823b8b 100644
--- a/ports/sysdeps/powerpc/nofpu/feenablxcpt.c
+++ b/sysdeps/powerpc/nofpu/feenablxcpt.c
@@ -17,16 +17,17 @@
License along with the GNU C Library. If not, see
<http://www.gnu.org/licenses/>. */
+#include "soft-supp.h"
#include <fenv.h>
-extern int __sim_disabled_exceptions;
-
int
feenableexcept (int exceptions)
{
- int old_exceptions = ~__sim_disabled_exceptions & FE_ALL_EXCEPT;
+ int old_exceptions = ~__sim_disabled_exceptions_thread & FE_ALL_EXCEPT;
- __sim_disabled_exceptions &= ~exceptions;
+ __sim_disabled_exceptions_thread &= ~exceptions;
+ SIM_SET_GLOBAL (__sim_disabled_exceptions_global,
+ __sim_disabled_exceptions_thread);
return old_exceptions;
}
diff --git a/ports/sysdeps/powerpc/nofpu/fegetenv.c b/sysdeps/powerpc/nofpu/fegetenv.c
index 51bcef30a1..351e5526c7 100644
--- a/ports/sysdeps/powerpc/nofpu/fegetenv.c
+++ b/sysdeps/powerpc/nofpu/fegetenv.c
@@ -20,18 +20,14 @@
#include "soft-fp.h"
#include "soft-supp.h"
-extern int __sim_exceptions;
-extern int __sim_disabled_exceptions;
-extern int __sim_round_mode;
-
int
__fegetenv (fenv_t *envp)
{
fenv_union_t u;
- u.l[0] = __sim_exceptions;
- u.l[0] |= __sim_round_mode;
- u.l[1] = __sim_disabled_exceptions;
+ u.l[0] = __sim_exceptions_thread;
+ u.l[0] |= __sim_round_mode_thread;
+ u.l[1] = __sim_disabled_exceptions_thread;
*envp = u.fenv;
diff --git a/ports/sysdeps/powerpc/nofpu/fegetexcept.c b/sysdeps/powerpc/nofpu/fegetexcept.c
index ea39a82b73..d907555fb6 100644
--- a/ports/sysdeps/powerpc/nofpu/fegetexcept.c
+++ b/sysdeps/powerpc/nofpu/fegetexcept.c
@@ -23,5 +23,5 @@
int
fegetexcept (void)
{
- return (__sim_disabled_exceptions ^ FE_ALL_EXCEPT) & FE_ALL_EXCEPT;
+ return (__sim_disabled_exceptions_thread ^ FE_ALL_EXCEPT) & FE_ALL_EXCEPT;
}
diff --git a/ports/sysdeps/powerpc/nofpu/fegetround.c b/sysdeps/powerpc/nofpu/fegetround.c
index c232ae3794..2c7bdbe5f6 100644
--- a/ports/sysdeps/powerpc/nofpu/fegetround.c
+++ b/sysdeps/powerpc/nofpu/fegetround.c
@@ -24,5 +24,6 @@
int
fegetround (void)
{
- return __sim_round_mode;
+ return __sim_round_mode_thread;
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/powerpc/nofpu/feholdexcpt.c b/sysdeps/powerpc/nofpu/feholdexcpt.c
index ba6a53accb..ba6a53accb 100644
--- a/ports/sysdeps/powerpc/nofpu/feholdexcpt.c
+++ b/sysdeps/powerpc/nofpu/feholdexcpt.c
diff --git a/ports/sysdeps/powerpc/nofpu/fenv_const.c b/sysdeps/powerpc/nofpu/fenv_const.c
index 291b1accc7..291b1accc7 100644
--- a/ports/sysdeps/powerpc/nofpu/fenv_const.c
+++ b/sysdeps/powerpc/nofpu/fenv_const.c
diff --git a/ports/sysdeps/powerpc/nofpu/fenv_libc.h b/sysdeps/powerpc/nofpu/fenv_libc.h
index 14a2d04a25..a0b6b910cd 100644
--- a/ports/sysdeps/powerpc/nofpu/fenv_libc.h
+++ b/sysdeps/powerpc/nofpu/fenv_libc.h
@@ -25,4 +25,7 @@
#include <fenv.h>
+/* ldbl-128ibm code uses __fegetround. */
+#define __fegetround() fegetround ()
+
#endif /* fenv_libc.h */
diff --git a/ports/sysdeps/powerpc/nofpu/fesetenv.c b/sysdeps/powerpc/nofpu/fesetenv.c
index 3f35909b6d..fa84169836 100644
--- a/ports/sysdeps/powerpc/nofpu/fesetenv.c
+++ b/sysdeps/powerpc/nofpu/fesetenv.c
@@ -26,9 +26,13 @@ __fesetenv (const fenv_t *envp)
fenv_union_t u;
u.fenv = *envp;
- __sim_exceptions = u.l[0] & FE_ALL_EXCEPT;
- __sim_round_mode = u.l[0] & 0x3;
- __sim_disabled_exceptions = u.l[1];
+ __sim_exceptions_thread = u.l[0] & FE_ALL_EXCEPT;
+ SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread);
+ __sim_round_mode_thread = u.l[0] & 0x3;
+ SIM_SET_GLOBAL (__sim_round_mode_global, __sim_round_mode_thread);
+ __sim_disabled_exceptions_thread = u.l[1];
+ SIM_SET_GLOBAL (__sim_disabled_exceptions_global,
+ __sim_disabled_exceptions_thread);
return 0;
}
diff --git a/ports/sysdeps/powerpc/nofpu/fesetround.c b/sysdeps/powerpc/nofpu/fesetround.c
index 028c1300cc..ab0d52f237 100644
--- a/ports/sysdeps/powerpc/nofpu/fesetround.c
+++ b/sysdeps/powerpc/nofpu/fesetround.c
@@ -26,7 +26,8 @@ fesetround (int round)
if ((unsigned int) round > FE_DOWNWARD)
return 1;
- __sim_round_mode = round;
+ __sim_round_mode_thread = round;
+ SIM_SET_GLOBAL (__sim_round_mode_global, __sim_round_mode_thread);
return 0;
}
diff --git a/ports/sysdeps/powerpc/nofpu/feupdateenv.c b/sysdeps/powerpc/nofpu/feupdateenv.c
index 163f673102..8a26cb86d1 100644
--- a/ports/sysdeps/powerpc/nofpu/feupdateenv.c
+++ b/sysdeps/powerpc/nofpu/feupdateenv.c
@@ -28,14 +28,15 @@ __feupdateenv (const fenv_t *envp)
int saved_exceptions;
/* Save currently set exceptions. */
- saved_exceptions = __sim_exceptions;
+ saved_exceptions = __sim_exceptions_thread;
/* Set environment. */
fesetenv (envp);
/* Raise old exceptions. */
- __sim_exceptions |= saved_exceptions;
- if (saved_exceptions & ~__sim_disabled_exceptions)
+ __sim_exceptions_thread |= saved_exceptions;
+ SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread);
+ if (saved_exceptions & ~__sim_disabled_exceptions_thread)
raise (SIGFPE);
return 0;
diff --git a/ports/sysdeps/powerpc/nofpu/fgetexcptflg.c b/sysdeps/powerpc/nofpu/fgetexcptflg.c
index 2373fa4002..b7fd90d71e 100644
--- a/ports/sysdeps/powerpc/nofpu/fgetexcptflg.c
+++ b/sysdeps/powerpc/nofpu/fgetexcptflg.c
@@ -23,7 +23,7 @@
int
__fegetexceptflag (fexcept_t *flagp, int excepts)
{
- *flagp = (fexcept_t) __sim_exceptions & excepts & FE_ALL_EXCEPT;
+ *flagp = (fexcept_t) __sim_exceptions_thread & excepts & FE_ALL_EXCEPT;
return 0;
}
diff --git a/sysdeps/powerpc/nofpu/flt-rounds.c b/sysdeps/powerpc/nofpu/flt-rounds.c
new file mode 100644
index 0000000000..ad2bf941d1
--- /dev/null
+++ b/sysdeps/powerpc/nofpu/flt-rounds.c
@@ -0,0 +1,38 @@
+/* Return current rounding mode as correct value for FLT_ROUNDS.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "soft-fp.h"
+#include "soft-supp.h"
+
+int
+__flt_rounds (void)
+{
+ switch (__sim_round_mode_thread)
+ {
+ case FP_RND_ZERO:
+ return 0;
+ case FP_RND_NEAREST:
+ return 1;
+ case FP_RND_PINF:
+ return 2;
+ case FP_RND_MINF:
+ return 3;
+ default:
+ abort ();
+ }
+}
diff --git a/ports/sysdeps/powerpc/nofpu/fraiseexcpt.c b/sysdeps/powerpc/nofpu/fraiseexcpt.c
index cd142b60be..215a70b4bf 100644
--- a/ports/sysdeps/powerpc/nofpu/fraiseexcpt.c
+++ b/sysdeps/powerpc/nofpu/fraiseexcpt.c
@@ -25,8 +25,9 @@
int
__feraiseexcept (int x)
{
- __sim_exceptions |= x;
- if (x & ~__sim_disabled_exceptions)
+ __sim_exceptions_thread |= x;
+ SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread);
+ if (x & ~__sim_disabled_exceptions_thread)
raise (SIGFPE);
return 0;
}
diff --git a/ports/sysdeps/powerpc/nofpu/fsetexcptflg.c b/sysdeps/powerpc/nofpu/fsetexcptflg.c
index 3dc368fdda..ee2aa81a4e 100644
--- a/ports/sysdeps/powerpc/nofpu/fsetexcptflg.c
+++ b/sysdeps/powerpc/nofpu/fsetexcptflg.c
@@ -24,7 +24,9 @@ int
__fesetexceptflag(const fexcept_t *flagp, int excepts)
{
/* Ignore exceptions not listed in 'excepts'. */
- __sim_exceptions = (__sim_exceptions & ~excepts) | (*flagp & excepts);
+ __sim_exceptions_thread
+ = (__sim_exceptions_thread & ~excepts) | (*flagp & excepts);
+ SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread);
return 0;
}
diff --git a/ports/sysdeps/powerpc/nofpu/ftestexcept.c b/sysdeps/powerpc/nofpu/ftestexcept.c
index f5d01e881c..42e861da33 100644
--- a/ports/sysdeps/powerpc/nofpu/ftestexcept.c
+++ b/sysdeps/powerpc/nofpu/ftestexcept.c
@@ -23,6 +23,6 @@
int
fetestexcept (int x)
{
- return __sim_exceptions & x;
+ return __sim_exceptions_thread & x;
}
libm_hidden_def (fetestexcept)
diff --git a/ports/sysdeps/powerpc/nofpu/get-rounding-mode.h b/sysdeps/powerpc/nofpu/get-rounding-mode.h
index 20eb81030f..6d327f57c7 100644
--- a/ports/sysdeps/powerpc/nofpu/get-rounding-mode.h
+++ b/sysdeps/powerpc/nofpu/get-rounding-mode.h
@@ -29,7 +29,7 @@
static inline int
get_rounding_mode (void)
{
- return __sim_round_mode;
+ return __sim_round_mode_thread;
}
#endif /* get-rounding-mode.h */
diff --git a/ports/sysdeps/powerpc/nofpu/libm-test-ulps b/sysdeps/powerpc/nofpu/libm-test-ulps
index ad5a9cd42c..ad5a9cd42c 100644
--- a/ports/sysdeps/powerpc/nofpu/libm-test-ulps
+++ b/sysdeps/powerpc/nofpu/libm-test-ulps
diff --git a/ports/sysdeps/powerpc/nofpu/shlib-versions b/sysdeps/powerpc/nofpu/shlib-versions
index 72085ddf4c..72085ddf4c 100644
--- a/ports/sysdeps/powerpc/nofpu/shlib-versions
+++ b/sysdeps/powerpc/nofpu/shlib-versions
diff --git a/sysdeps/powerpc/nofpu/sim-full.c b/sysdeps/powerpc/nofpu/sim-full.c
new file mode 100644
index 0000000000..fb09d1bc9d
--- /dev/null
+++ b/sysdeps/powerpc/nofpu/sim-full.c
@@ -0,0 +1,57 @@
+/* Software floating-point exception handling emulation.
+ Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <signal.h>
+#include "soft-fp.h"
+#include "soft-supp.h"
+
+/* Thread-local to store sticky exceptions. */
+__thread int __sim_exceptions_thread __attribute__ ((nocommon));
+libc_hidden_data_def (__sim_exceptions_thread);
+
+/* By default, no exceptions should trap. */
+__thread int __sim_disabled_exceptions_thread = 0xffffffff;
+libc_hidden_data_def (__sim_disabled_exceptions_thread);
+
+__thread int __sim_round_mode_thread __attribute__ ((nocommon));
+libc_hidden_data_def (__sim_round_mode_thread);
+
+#if SIM_GLOBAL_COMPAT
+int __sim_exceptions_global __attribute__ ((nocommon));
+libc_hidden_data_def (__sim_exceptions_global);
+SIM_COMPAT_SYMBOL (__sim_exceptions_global, __sim_exceptions);
+
+int __sim_disabled_exceptions_global = 0xffffffff;
+libc_hidden_data_def (__sim_disabled_exceptions_global);
+SIM_COMPAT_SYMBOL (__sim_disabled_exceptions_global,
+ __sim_disabled_exceptions);
+
+int __sim_round_mode_global __attribute__ ((nocommon));
+libc_hidden_data_def (__sim_round_mode_global);
+SIM_COMPAT_SYMBOL (__sim_round_mode_global, __sim_round_mode);
+#endif
+
+void
+__simulate_exceptions (int x)
+{
+ __sim_exceptions_thread |= x;
+ SIM_SET_GLOBAL (__sim_exceptions_global, __sim_exceptions_thread);
+ if (x & ~__sim_disabled_exceptions_thread)
+ raise (SIGFPE);
+}
diff --git a/sysdeps/powerpc/nofpu/soft-supp.h b/sysdeps/powerpc/nofpu/soft-supp.h
new file mode 100644
index 0000000000..0a0614aa6a
--- /dev/null
+++ b/sysdeps/powerpc/nofpu/soft-supp.h
@@ -0,0 +1,63 @@
+/* Internal support stuff for complete soft float.
+ Copyright (C) 2002-2013 Free Software Foundation, Inc.
+ Contributed by Aldy Hernandez <aldyh@redhat.com>, 2002.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#if defined __NO_FPRS__ && !defined _SOFT_FLOAT
+
+# include <fenv_libc.h>
+
+#else
+
+# include <fenv.h>
+
+typedef union
+{
+ fenv_t fenv;
+ unsigned int l[2];
+} fenv_union_t;
+
+#endif
+
+extern __thread int __sim_exceptions_thread attribute_tls_model_ie;
+libc_hidden_tls_proto (__sim_exceptions_thread, tls_model ("initial-exec"));
+extern __thread int __sim_disabled_exceptions_thread attribute_tls_model_ie;
+libc_hidden_tls_proto (__sim_disabled_exceptions_thread,
+ tls_model ("initial-exec"));
+extern __thread int __sim_round_mode_thread attribute_tls_model_ie;
+libc_hidden_tls_proto (__sim_round_mode_thread, tls_model ("initial-exec"));
+
+/* These variables were formerly global, so there are compat symbols
+ for global versions as well. */
+
+#include <shlib-compat.h>
+#define SIM_GLOBAL_COMPAT SHLIB_COMPAT (libc, GLIBC_2_3_2, GLIBC_2_19)
+#if SIM_GLOBAL_COMPAT
+extern int __sim_exceptions_global;
+libc_hidden_proto (__sim_exceptions_global);
+extern int __sim_disabled_exceptions_global ;
+libc_hidden_proto (__sim_disabled_exceptions_global);
+extern int __sim_round_mode_global;
+libc_hidden_proto (__sim_round_mode_global);
+# define SIM_COMPAT_SYMBOL(GLOBAL_NAME, NAME) \
+ compat_symbol (libc, GLOBAL_NAME, NAME, GLIBC_2_3_2)
+# define SIM_SET_GLOBAL(GLOBAL_VAR, THREAD_VAR) ((GLOBAL_VAR) = (THREAD_VAR))
+#else
+# define SIM_SET_GLOBAL(GLOBAL_VAR, THREAD_VAR) ((void) 0)
+#endif
+
+extern void __simulate_exceptions (int x) attribute_hidden;
diff --git a/sysdeps/powerpc/novmx-longjmp.c b/sysdeps/powerpc/novmx-longjmp.c
index 8f6ea357d4..b2c0e4cf5f 100644
--- a/sysdeps/powerpc/novmx-longjmp.c
+++ b/sysdeps/powerpc/novmx-longjmp.c
@@ -50,13 +50,7 @@ weak_alias (__novmx__libc_siglongjmp, __novmx_longjmp)
weak_alias (__novmx__libc_siglongjmp, __novmxlongjmp)
weak_alias (__novmx__libc_siglongjmp, __novmxsiglongjmp)
-# if __WORDSIZE == 64
-symbol_version (__novmx_longjmp,_longjmp,GLIBC_2.3);
-symbol_version (__novmxlongjmp,longjmp,GLIBC_2.3);
-symbol_version (__novmxsiglongjmp,siglongjmp,GLIBC_2.3);
-# else
-symbol_version (__novmx_longjmp,_longjmp,GLIBC_2.0);
-symbol_version (__novmxlongjmp,longjmp,GLIBC_2.0);
-symbol_version (__novmxsiglongjmp,siglongjmp,GLIBC_2.0);
-# endif
+compat_symbol (libc, __novmx_longjmp, _longjmp, GLIBC_2_0);
+compat_symbol (libc, __novmxlongjmp, longjmp, GLIBC_2_0);
+compat_symbol (libc, __novmxsiglongjmp, siglongjmp, GLIBC_2_0);
#endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)) */
diff --git a/sysdeps/powerpc/powerpc32/power4/wordcopy.c b/sysdeps/powerpc/power4/wordcopy.c
index 5d857f61eb..f4ba3555ab 100644
--- a/sysdeps/powerpc/powerpc32/power4/wordcopy.c
+++ b/sysdeps/powerpc/power4/wordcopy.c
@@ -26,11 +26,12 @@
block beginning at DSTP with LEN `op_t' words (not LEN bytes!).
Both SRCP and DSTP should be aligned for memory operations on `op_t's. */
+#ifndef WORDCOPY_FWD_ALIGNED
+# define WORDCOPY_FWD_ALIGNED _wordcopy_fwd_aligned
+#endif
+
void
-_wordcopy_fwd_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_FWD_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1;
@@ -64,11 +65,12 @@ _wordcopy_fwd_aligned (dstp, srcp, len)
DSTP should be aligned for memory operations on `op_t's, but SRCP must
*not* be aligned. */
+#ifndef WORDCOPY_FWD_DEST_ALIGNED
+# define WORDCOPY_FWD_DEST_ALIGNED _wordcopy_fwd_dest_aligned
+#endif
+
void
-_wordcopy_fwd_dest_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_FWD_DEST_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1, a2;
int sh_1, sh_2;
@@ -118,11 +120,12 @@ _wordcopy_fwd_dest_aligned (dstp, srcp, len)
(not LEN bytes!). Both SRCP and DSTP should be aligned for memory
operations on `op_t's. */
+#ifndef WORDCOPY_BWD_ALIGNED
+# define WORDCOPY_BWD_ALIGNED _wordcopy_bwd_aligned
+#endif
+
void
-_wordcopy_bwd_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_BWD_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1;
@@ -157,11 +160,12 @@ _wordcopy_bwd_aligned (dstp, srcp, len)
words (not LEN bytes!). DSTP should be aligned for memory
operations on `op_t', but SRCP must *not* be aligned. */
+#ifndef WORDCOPY_BWD_DEST_ALIGNED
+# define WORDCOPY_BWD_DEST_ALIGNED _wordcopy_bwd_dest_aligned
+#endif
+
void
-_wordcopy_bwd_dest_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_BWD_DEST_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1, a2;
int sh_1, sh_2;
diff --git a/sysdeps/powerpc/powerpc32/power6/wcschr.c b/sysdeps/powerpc/power6/wcschr.c
index 1ba64e113a..e58b623bd6 100644
--- a/sysdeps/powerpc/powerpc32/power6/wcschr.c
+++ b/sysdeps/powerpc/power6/wcschr.c
@@ -1,4 +1,4 @@
-/* wcschr.c - Wide Character Search for powerpc32/power6.
+/* wcschr.c - Wide Character Search for POWER6+.
Copyright (C) 2012-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -18,12 +18,13 @@
#include <wchar.h>
+#ifndef WCSCHR
+# define WCSCHR wcschr
+#endif
/* Find the first occurrence of WC in WCS. */
wchar_t *
-wcschr (wcs, wc)
- const wchar_t *wcs;
- const wchar_t wc;
+WCSCHR (const wchar_t *wcs, const wchar_t wc)
{
const wchar_t *wcs2 = wcs + 1;
diff --git a/sysdeps/powerpc/powerpc32/power6/wcscpy.c b/sysdeps/powerpc/power6/wcscpy.c
index 5950ef3dd9..c70c6c6d3f 100644
--- a/sysdeps/powerpc/powerpc32/power6/wcscpy.c
+++ b/sysdeps/powerpc/power6/wcscpy.c
@@ -1,4 +1,4 @@
-/* wcscpy.c - Wide Character Copy for powerpc32/power6.
+/* wcscpy.c - Wide Character Copy for POWER6+.
Copyright (C) 2012-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -19,12 +19,13 @@
#include <stddef.h>
#include <wchar.h>
+#ifndef WCSCPY
+# define WCSCPY wcscpy
+#endif
/* Copy SRC to DEST. */
wchar_t *
-wcscpy (dest, src)
- wchar_t *dest;
- const wchar_t *src;
+WCSCPY (wchar_t *dest, const wchar_t *src)
{
wint_t c,d;
wchar_t *wcp, *wcp2;
diff --git a/sysdeps/powerpc/powerpc32/power6/wcsrchr.c b/sysdeps/powerpc/power6/wcsrchr.c
index 8d26af05fb..5602be35e9 100644
--- a/sysdeps/powerpc/powerpc32/power6/wcsrchr.c
+++ b/sysdeps/powerpc/power6/wcsrchr.c
@@ -1,4 +1,4 @@
-/* wcsrchr.c - Wide Character Reverse Search for powerpc32/power6.
+/* wcsrchr.c - Wide Character Reverse Search for POWER6+.
Copyright (C) 2012-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -18,12 +18,13 @@
#include <wchar.h>
+#ifndef WCSRCHR
+# define WCSRCHR wcsrchr
+#endif
/* Find the last occurrence of WC in WCS. */
wchar_t *
-wcsrchr (wcs, wc)
- const wchar_t *wcs;
- const wchar_t wc;
+WCSRCHR (const wchar_t *wcs, const wchar_t wc)
{
const wchar_t *wcs2 = wcs + 1;
const wchar_t *retval = NULL;
diff --git a/sysdeps/powerpc/powerpc32/power6/wordcopy.c b/sysdeps/powerpc/power6/wordcopy.c
index 4106e5c6ed..19a18bc929 100644
--- a/sysdeps/powerpc/powerpc32/power6/wordcopy.c
+++ b/sysdeps/powerpc/power6/wordcopy.c
@@ -27,11 +27,12 @@
block beginning at DSTP with LEN `op_t' words (not LEN bytes!).
Both SRCP and DSTP should be aligned for memory operations on `op_t's. */
+#ifndef WORDCOPY_FWD_ALIGNED
+# define WORDCOPY_FWD_ALIGNED _wordcopy_fwd_aligned
+#endif
+
void
-_wordcopy_fwd_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_FWD_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1;
@@ -70,8 +71,8 @@ _wordcopy_fwd_aligned (dstp, srcp, len)
{ \
a1 = ((op_t *) srcp)[1]; \
a2 = ((op_t *) srcp)[2]; \
- ((op_t *) dstp)[0] = MERGE (a0, align*8, a1, (32-align*8)); \
- ((op_t *) dstp)[1] = MERGE (a1, align*8, a2, (32-align*8)); \
+ ((op_t *) dstp)[0] = MERGE (a0, align*8, a1, (__WORDSIZE-align*8)); \
+ ((op_t *) dstp)[1] = MERGE (a1, align*8, a2, (__WORDSIZE-align*8)); \
a0 = a2; \
srcp += 2 * OPSIZ; \
dstp += 2 * OPSIZ; \
@@ -79,11 +80,12 @@ _wordcopy_fwd_aligned (dstp, srcp, len)
} \
while (len != 0)
+#ifndef WORDCOPY_FWD_DEST_ALIGNED
+# define WORDCOPY_FWD_DEST_ALIGNED _wordcopy_fwd_dest_aligned
+#endif
+
void
-_wordcopy_fwd_dest_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_FWD_DEST_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1, a2;
int sh_1, sh_2;
@@ -124,11 +126,12 @@ _wordcopy_fwd_dest_aligned (dstp, srcp, len)
(not LEN bytes!). Both SRCP and DSTP should be aligned for memory
operations on `op_t's. */
+#ifndef WORDCOPY_BWD_ALIGNED
+# define WORDCOPY_BWD_ALIGNED _wordcopy_bwd_aligned
+#endif
+
void
-_wordcopy_bwd_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_BWD_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1;
@@ -165,8 +168,8 @@ _wordcopy_bwd_aligned (dstp, srcp, len)
dstp -= 2 * OPSIZ; \
a1 = ((op_t *) srcp)[1]; \
a0 = ((op_t *) srcp)[0]; \
- ((op_t *) dstp)[1] = MERGE (a1, align*8, a2, (32-align*8)); \
- ((op_t *) dstp)[0] = MERGE (a0, align*8, a1, (32-align*8)); \
+ ((op_t *) dstp)[1] = MERGE (a1, align*8, a2, (__WORDSIZE-align*8)); \
+ ((op_t *) dstp)[0] = MERGE (a0, align*8, a1, (__WORDSIZE-align*8)); \
a2 = a0; \
len -= 2; \
} \
@@ -177,11 +180,12 @@ _wordcopy_bwd_aligned (dstp, srcp, len)
words (not LEN bytes!). DSTP should be aligned for memory
operations on `op_t', but SRCP must *not* be aligned. */
+#ifndef WORDCOPY_BWD_DEST_ALIGNED
+# define WORDCOPY_BWD_DEST_ALIGNED _wordcopy_bwd_dest_aligned
+#endif
+
void
-_wordcopy_bwd_dest_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
+WORDCOPY_BWD_DEST_ALIGNED (long int dstp, long int srcp, size_t len)
{
op_t a0, a1, a2;
int sh_1, sh_2;
diff --git a/sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c b/sysdeps/powerpc/power7/fpu/s_logb.c
index da2e6b9e49..da2e6b9e49 100644
--- a/sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c
+++ b/sysdeps/powerpc/power7/fpu/s_logb.c
diff --git a/sysdeps/powerpc/powerpc32/power7/fpu/s_logbf.c b/sysdeps/powerpc/power7/fpu/s_logbf.c
index 05726f2f7f..05726f2f7f 100644
--- a/sysdeps/powerpc/powerpc32/power7/fpu/s_logbf.c
+++ b/sysdeps/powerpc/power7/fpu/s_logbf.c
diff --git a/sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c b/sysdeps/powerpc/power7/fpu/s_logbl.c
index e008ed0c3d..f5b90d9942 100644
--- a/sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c
+++ b/sysdeps/powerpc/power7/fpu/s_logbl.c
@@ -35,14 +35,14 @@ static const union {
long double
__logbl (long double x)
{
- double xh, xl;
+ double xh;
double ret;
if (__builtin_expect (x == 0.0L, 0))
/* Raise FE_DIVBYZERO and return -HUGE_VAL[LF]. */
return -1.0L / __builtin_fabsl (x);
- ldbl_unpack (x, &xh, &xl);
+ xh = ldbl_high (x);
/* ret = x & 0x7ff0000000000000; */
asm (
"xxland %x0,%x1,%x2\n"
@@ -58,13 +58,14 @@ __logbl (long double x)
{
/* POSIX specifies that denormal number is treated as
though it were normalized. */
- int64_t lx, hx;
+ int64_t hx;
- GET_LDOUBLE_WORDS64 (hx, lx, x);
+ EXTRACT_WORDS64 (hx, xh);
return (long double) (-1023 - (__builtin_clzll (hx) - 12));
}
/* Test to avoid logb_downward (0.0) == -0.0. */
return ret == -0.0 ? 0.0 : ret;
}
-
+#ifndef __logbl
long_double_symbol (libm, __logbl, logbl);
+#endif
diff --git a/ports/sysdeps/powerpc/powerpc32/405/memcmp.S b/sysdeps/powerpc/powerpc32/405/memcmp.S
index 2849461cd7..2849461cd7 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/memcmp.S
+++ b/sysdeps/powerpc/powerpc32/405/memcmp.S
diff --git a/ports/sysdeps/powerpc/powerpc32/405/memcpy.S b/sysdeps/powerpc/powerpc32/405/memcpy.S
index b01d539209..b01d539209 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/memcpy.S
+++ b/sysdeps/powerpc/powerpc32/405/memcpy.S
diff --git a/ports/sysdeps/powerpc/powerpc32/405/memset.S b/sysdeps/powerpc/powerpc32/405/memset.S
index b73dba8873..b73dba8873 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/memset.S
+++ b/sysdeps/powerpc/powerpc32/405/memset.S
diff --git a/ports/sysdeps/powerpc/powerpc32/405/strcmp.S b/sysdeps/powerpc/powerpc32/405/strcmp.S
index c0b21907be..c0b21907be 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/strcmp.S
+++ b/sysdeps/powerpc/powerpc32/405/strcmp.S
diff --git a/ports/sysdeps/powerpc/powerpc32/405/strcpy.S b/sysdeps/powerpc/powerpc32/405/strcpy.S
index d7c84569d9..d7c84569d9 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/strcpy.S
+++ b/sysdeps/powerpc/powerpc32/405/strcpy.S
diff --git a/ports/sysdeps/powerpc/powerpc32/405/strlen.S b/sysdeps/powerpc/powerpc32/405/strlen.S
index 77d22ea673..77d22ea673 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/strlen.S
+++ b/sysdeps/powerpc/powerpc32/405/strlen.S
diff --git a/ports/sysdeps/powerpc/powerpc32/405/strncmp.S b/sysdeps/powerpc/powerpc32/405/strncmp.S
index 3e2ba5f855..3e2ba5f855 100644
--- a/ports/sysdeps/powerpc/powerpc32/405/strncmp.S
+++ b/sysdeps/powerpc/powerpc32/405/strncmp.S
diff --git a/ports/sysdeps/powerpc/powerpc32/440/Implies b/sysdeps/powerpc/powerpc32/440/Implies
index 70c0d2eda3..70c0d2eda3 100644
--- a/ports/sysdeps/powerpc/powerpc32/440/Implies
+++ b/sysdeps/powerpc/powerpc32/440/Implies
diff --git a/ports/sysdeps/powerpc/powerpc32/464/Implies b/sysdeps/powerpc/powerpc32/464/Implies
index c3e52c5504..c3e52c5504 100644
--- a/ports/sysdeps/powerpc/powerpc32/464/Implies
+++ b/sysdeps/powerpc/powerpc32/464/Implies
diff --git a/ports/sysdeps/powerpc/powerpc32/476/Implies b/sysdeps/powerpc/powerpc32/476/Implies
index 2829f9ccaf..2829f9ccaf 100644
--- a/ports/sysdeps/powerpc/powerpc32/476/Implies
+++ b/sysdeps/powerpc/powerpc32/476/Implies
diff --git a/ports/sysdeps/powerpc/powerpc32/476/memset.S b/sysdeps/powerpc/powerpc32/476/memset.S
index 48c21d6209..48c21d6209 100644
--- a/ports/sysdeps/powerpc/powerpc32/476/memset.S
+++ b/sysdeps/powerpc/powerpc32/476/memset.S
diff --git a/sysdeps/powerpc/powerpc32/Makefile b/sysdeps/powerpc/powerpc32/Makefile
index 64f79003af..cf620c8269 100644
--- a/sysdeps/powerpc/powerpc32/Makefile
+++ b/sysdeps/powerpc/powerpc32/Makefile
@@ -1,8 +1,12 @@
# Powerpc32 specific build options.
-ifeq ($(with-fp),no)
-+cflags += -msoft-float
-sysdep-LDFLAGS += -msoft-float
+# Some Powerpc32 variants assume soft-fp is the default even though there is
+# an fp variant so provide -mhard-float if --with-fp is explicitly passed.
+
+ifeq ($(with-fp),yes)
++cflags += -mhard-float
+ASFLAGS += -mhard-float
+sysdep-LDFLAGS += -mhard-float
endif
ifeq ($(subdir),gmon)
diff --git a/sysdeps/powerpc/powerpc32/__longjmp-common.S b/sysdeps/powerpc/powerpc32/__longjmp-common.S
index 7874473636..97c966db4a 100644
--- a/sysdeps/powerpc/powerpc32/__longjmp-common.S
+++ b/sysdeps/powerpc/powerpc32/__longjmp-common.S
@@ -17,6 +17,7 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
+#include <stap-probe.h>
#define _ASM
#ifdef __NO_VMX__
# include <novmxsetjmp.h>
@@ -24,7 +25,13 @@
# include <jmpbuf-offsets.h>
#endif
-ENTRY (__longjmp)
+#if defined __SPE__ || (defined __NO_FPRS__ && !defined _SOFT_FLOAT)
+# define LOAD_GP(N) evldd r##N,((JB_FPRS+((N)-14)*2)*4)(r3)
+#else
+# define LOAD_GP(N) lwz r##N,((JB_GPRS+(N)-14)*4)(r3)
+#endif
+
+ENTRY (__longjmp_symbol)
#if defined PTR_DEMANGLE || defined CHECK_SP
lwz r24,(JB_GPR1*4)(r3)
@@ -39,33 +46,37 @@ ENTRY (__longjmp)
lwz r1,(JB_GPR1*4)(r3)
#endif
lwz r0,(JB_LR*4)(r3)
- lwz r14,((JB_GPRS+0)*4)(r3)
- lwz r15,((JB_GPRS+1)*4)(r3)
- lwz r16,((JB_GPRS+2)*4)(r3)
- lwz r17,((JB_GPRS+3)*4)(r3)
- lwz r18,((JB_GPRS+4)*4)(r3)
- lwz r19,((JB_GPRS+5)*4)(r3)
- lwz r20,((JB_GPRS+6)*4)(r3)
+ LOAD_GP (14)
+ LOAD_GP (15)
+ LOAD_GP (16)
+ LOAD_GP (17)
+ LOAD_GP (18)
+ LOAD_GP (19)
+ LOAD_GP (20)
#ifdef PTR_DEMANGLE
# ifndef CHECK_SP
PTR_DEMANGLE3 (r1, r24, r25)
# endif
PTR_DEMANGLE2 (r0, r25)
#endif
+ /* longjmp/longjmp_target probe expects longjmp first argument (4@3),
+ second argument (-4@4), and target address (4@0), respectively. */
+ LIBC_PROBE (longjmp, 3, 4@3, -4@4, 4@0)
mtlr r0
- lwz r21,((JB_GPRS+7)*4)(r3)
- lwz r22,((JB_GPRS+8)*4)(r3)
- lwz r0,(JB_CR*4)(r3)
- lwz r23,((JB_GPRS+9)*4)(r3)
- lwz r24,((JB_GPRS+10)*4)(r3)
- lwz r25,((JB_GPRS+11)*4)(r3)
- mtcrf 0xFF,r0
- lwz r26,((JB_GPRS+12)*4)(r3)
- lwz r27,((JB_GPRS+13)*4)(r3)
- lwz r28,((JB_GPRS+14)*4)(r3)
- lwz r29,((JB_GPRS+15)*4)(r3)
- lwz r30,((JB_GPRS+16)*4)(r3)
- lwz r31,((JB_GPRS+17)*4)(r3)
+ LOAD_GP (21)
+ LOAD_GP (22)
+ lwz r5,(JB_CR*4)(r3)
+ LOAD_GP (23)
+ LOAD_GP (24)
+ LOAD_GP (25)
+ mtcrf 0xFF,r5
+ LOAD_GP (26)
+ LOAD_GP (27)
+ LOAD_GP (28)
+ LOAD_GP (29)
+ LOAD_GP (30)
+ LOAD_GP (31)
+ LIBC_PROBE (longjmp_target, 3, 4@3, -4@4, 4@0)
mr r3,r4
blr
-END (__longjmp)
+END (__longjmp_symbol)
diff --git a/sysdeps/powerpc/powerpc32/__longjmp.S b/sysdeps/powerpc/powerpc32/__longjmp.S
index 3ceeea753e..8456cb5930 100644
--- a/sysdeps/powerpc/powerpc32/__longjmp.S
+++ b/sysdeps/powerpc/powerpc32/__longjmp.S
@@ -21,18 +21,19 @@
#if defined NOT_IN_libc
/* Build a non-versioned object for rtld-*. */
+# define __longjmp_symbol __longjmp
# include "__longjmp-common.S"
#else /* !NOT_IN_libc */
strong_alias (__vmx__longjmp, __longjmp);
-# define __longjmp __vmx__longjmp
+# define __longjmp_symbol __vmx__longjmp
# include "__longjmp-common.S"
# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
# define __NO_VMX__
# undef JB_SIZE
-# undef __longjmp
-# define __longjmp __novmx__longjmp
+# undef __longjmp_symbol
+# define __longjmp_symbol __novmx__longjmp
# include "__longjmp-common.S"
# endif
#endif /* !NOT_IN_libc */
diff --git a/sysdeps/powerpc/powerpc32/bsd-_setjmp.S b/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
index 95e8a5aa10..ad2b5ffdb0 100644
--- a/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
+++ b/sysdeps/powerpc/powerpc32/bsd-_setjmp.S
@@ -30,7 +30,7 @@ libc_hidden_def (_setjmp)
/* Build a versioned object for libc. */
# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
-symbol_version (__novmx_setjmp,_setjmp,GLIBC_2.0);
+compat_symbol (libc, __novmx_setjmp, _setjmp, GLIBC_2_0);
ENTRY (__novmx_setjmp)
li r4,0 /* Set second argument to 0. */
@@ -39,7 +39,7 @@ END (__novmx_setjmp)
libc_hidden_def (__novmx_setjmp)
# endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) */
-default_symbol_version (__vmx_setjmp,_setjmp,GLIBC_2.3.4)
+versioned_symbol (libc, __vmx_setjmp, _setjmp, GLIBC_2_3_4)
/* __GI__setjmp prototype is needed for ntpl i.e. _setjmp is defined
as a libc_hidden_proto & is used in sysdeps/generic/libc-start.c
if HAVE_CLEANUP_JMP_BUF is defined */
diff --git a/sysdeps/powerpc/powerpc32/bsd-setjmp.S b/sysdeps/powerpc/powerpc32/bsd-setjmp.S
index 1113ea533c..5e1e860d85 100644
--- a/sysdeps/powerpc/powerpc32/bsd-setjmp.S
+++ b/sysdeps/powerpc/powerpc32/bsd-setjmp.S
@@ -26,7 +26,7 @@ ENTRY (__novmxsetjmp)
b __novmx__sigsetjmp@local
END (__novmxsetjmp)
strong_alias (__novmxsetjmp, __novmx__setjmp)
-symbol_version (__novmxsetjmp, setjmp, GLIBC_2.0)
+compat_symbol (libc, __novmxsetjmp, setjmp, GLIBC_2_0)
#endif /* defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4) ) */
@@ -36,4 +36,4 @@ ENTRY (__vmxsetjmp)
END (__vmxsetjmp)
strong_alias (__vmxsetjmp, __vmx__setjmp)
strong_alias (__vmx__setjmp, __setjmp)
-default_symbol_version (__vmxsetjmp,setjmp,GLIBC_2.3.4)
+versioned_symbol (libc, __vmxsetjmp, setjmp, GLIBC_2_3_4)
diff --git a/sysdeps/powerpc/powerpc32/configure b/sysdeps/powerpc/powerpc32/configure
index 31c571d9ab..fe5a792348 100644
--- a/sysdeps/powerpc/powerpc32/configure
+++ b/sysdeps/powerpc/powerpc32/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/powerpc/powerpc32.
# See whether gas has R_PPC_REL16 relocs.
diff --git a/sysdeps/powerpc/powerpc32/configure.in b/sysdeps/powerpc/powerpc32/configure.ac
index 21d3f5ee5b..21d3f5ee5b 100644
--- a/sysdeps/powerpc/powerpc32/configure.in
+++ b/sysdeps/powerpc/powerpc32/configure.ac
diff --git a/sysdeps/powerpc/powerpc32/dl-machine.c b/sysdeps/powerpc/powerpc32/dl-machine.c
index 188f72cdb7..aba3618561 100644
--- a/sysdeps/powerpc/powerpc32/dl-machine.c
+++ b/sysdeps/powerpc/powerpc32/dl-machine.c
@@ -29,13 +29,6 @@
by _dl_sysdep_start via DL_PLATFORM_INIT. */
extern int __cache_line_size attribute_hidden;
-/* Because ld.so is now versioned, these functions can be in their own file;
- no relocations need to be done to call them.
- Of course, if ld.so is not versioned... */
-#if defined SHARED && !(DO_VERSIONING - 0)
-#error This will not work with versioning turned off, sorry.
-#endif
-
/* Stuff for the PLT. */
#define PLT_INITIAL_ENTRY_WORDS 18
@@ -423,6 +416,12 @@ __process_machine_rela (struct link_map *map,
Elf32_Addr const finaladdr,
int rinfo)
{
+ union unaligned
+ {
+ uint16_t u2;
+ uint32_t u4;
+ } __attribute__((__packed__));
+
switch (rinfo)
{
case R_PPC_NONE:
@@ -439,10 +438,7 @@ __process_machine_rela (struct link_map *map,
return;
case R_PPC_UADDR32:
- ((char *) reloc_addr)[0] = finaladdr >> 24;
- ((char *) reloc_addr)[1] = finaladdr >> 16;
- ((char *) reloc_addr)[2] = finaladdr >> 8;
- ((char *) reloc_addr)[3] = finaladdr;
+ ((union unaligned *) reloc_addr)->u4 = finaladdr;
break;
case R_PPC_ADDR24:
@@ -460,8 +456,7 @@ __process_machine_rela (struct link_map *map,
case R_PPC_UADDR16:
if (__builtin_expect (finaladdr > 0x7fff && finaladdr < 0xffff8000, 0))
_dl_reloc_overflow (map, "R_PPC_UADDR16", reloc_addr, refsym);
- ((char *) reloc_addr)[0] = finaladdr >> 8;
- ((char *) reloc_addr)[1] = finaladdr;
+ ((union unaligned *) reloc_addr)->u2 = finaladdr;
break;
case R_PPC_ADDR16_LO:
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/Makefile b/sysdeps/powerpc/powerpc32/e500/nofpu/Makefile
new file mode 100644
index 0000000000..adf556870a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/Makefile
@@ -0,0 +1,9 @@
+ifeq ($(subdir),math)
+libm-routines += fexcepts_to_spe fexcepts_from_spe
+libm-routines += fexcepts_to_prctl fexcepts_from_prctl
+libm-routines += fe_note_change
+endif
+
+ifeq ($(subdir),soft-fp)
+sysdep_routines += fraiseexcept-soft
+endif
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feclearexcept.c b/sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feclearexcept.c
new file mode 100644
index 0000000000..9005119f78
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feclearexcept.c
@@ -0,0 +1,50 @@
+/* Clear floating-point exceptions for atomic compound assignment.
+ e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <stdlib.h>
+#include <sysdep.h>
+#include <sys/prctl.h>
+
+void
+__atomic_feclearexcept (void)
+{
+ unsigned int fpescr, old_fpescr;
+
+ /* Get the current state. */
+ old_fpescr = fpescr = fegetenv_register ();
+
+ /* Clear the relevant bits. */
+ fpescr &= ~SPEFSCR_ALL_EXCEPT;
+
+ /* Put the new state in effect. */
+ fesetenv_register (fpescr);
+
+ /* Let the kernel know if the "invalid" or "underflow" bit was
+ cleared. */
+ if (old_fpescr & (SPEFSCR_FINVS | SPEFSCR_FUNFS))
+ {
+ int pflags __attribute__ ((__unused__)), r;
+ INTERNAL_SYSCALL_DECL (err);
+
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_GET_FPEXC, &pflags);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ abort ();
+ }
+}
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feholdexcept.c b/sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feholdexcept.c
new file mode 100644
index 0000000000..afd225e2cf
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feholdexcept.c
@@ -0,0 +1,55 @@
+/* Store current floating-point environment and clear exceptions for
+ atomic compound assignment. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <stdlib.h>
+#include <sysdep.h>
+#include <sys/prctl.h>
+
+void
+__atomic_feholdexcept (fenv_t *envp)
+{
+ fenv_union_t u;
+ INTERNAL_SYSCALL_DECL (err);
+ int r;
+
+ /* Get the current state. */
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_GET_FPEXC, &u.l[0]);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ abort ();
+
+ u.l[1] = fegetenv_register ();
+ *envp = u.fenv;
+
+ /* Clear everything except for the rounding mode and trapping to the
+ kernel. */
+ u.l[0] &= ~(PR_FP_EXC_DIV
+ | PR_FP_EXC_OVF
+ | PR_FP_EXC_UND
+ | PR_FP_EXC_RES
+ | PR_FP_EXC_INV);
+ u.l[1] &= SPEFSCR_FRMC | (SPEFSCR_ALL_EXCEPT_ENABLE & ~SPEFSCR_FINXE);
+
+ /* Put the new state in effect. */
+ fesetenv_register (u.l[1]);
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC,
+ u.l[0] | PR_FP_EXC_SW_ENABLE);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ abort ();
+}
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feupdateenv.c b/sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feupdateenv.c
new file mode 100644
index 0000000000..9ae6b45087
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/atomic-feupdateenv.c
@@ -0,0 +1,46 @@
+/* Install given floating-point environment and raise exceptions for
+ atomic compound assignment. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <stdlib.h>
+#include <sysdep.h>
+#include <sys/prctl.h>
+
+void
+__atomic_feupdateenv (const fenv_t *envp)
+{
+ int exc;
+ fenv_union_t u;
+ INTERNAL_SYSCALL_DECL (err);
+ int r;
+
+ /* Save the currently set exceptions. */
+ exc = fegetenv_register () & SPEFSCR_ALL_EXCEPT;
+
+ u.fenv = *envp;
+
+ fesetenv_register (u.l[1]);
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC,
+ u.l[0] | PR_FP_EXC_SW_ENABLE);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ abort ();
+
+ /* Raise (if appropriate) saved exceptions. */
+ __feraiseexcept_soft (exc);
+}
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fclrexcpt.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fclrexcpt.c
new file mode 100644
index 0000000000..92a7dd1e09
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fclrexcpt.c
@@ -0,0 +1,53 @@
+/* Clear given exceptions in current floating-point environment. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+
+#undef feclearexcept
+int
+__feclearexcept (int excepts)
+{
+ unsigned int fpescr;
+ int excepts_spe = __fexcepts_to_spe (excepts);
+
+ /* Get the current state. */
+ fpescr = fegetenv_register ();
+
+ /* Clear the relevant bits. */
+ fpescr &= ~excepts_spe;
+
+ /* Put the new state in effect. */
+ fesetenv_register (fpescr);
+
+ /* Let the kernel know if the "invalid" or "underflow" bit was
+ cleared. */
+ if (excepts & (FE_INVALID | FE_UNDERFLOW))
+ __fe_note_change ();
+
+ /* Success. */
+ return 0;
+}
+
+#include <shlib-compat.h>
+#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
+strong_alias (__feclearexcept, __old_feclearexcept)
+compat_symbol (libm, __old_feclearexcept, feclearexcept, GLIBC_2_1);
+#endif
+
+libm_hidden_ver (__feclearexcept, feclearexcept)
+versioned_symbol (libm, __feclearexcept, feclearexcept, GLIBC_2_2);
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fe_note_change.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fe_note_change.c
new file mode 100644
index 0000000000..43a5706264
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fe_note_change.c
@@ -0,0 +1,39 @@
+/* Note a change to floating-point exceptions.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <sysdep.h>
+#include <sys/prctl.h>
+
+/* Inform the kernel of a change to floating-point exceptions. */
+
+void
+__fe_note_change (void)
+{
+ int pflags, r;
+ INTERNAL_SYSCALL_DECL (err);
+
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_GET_FPEXC, &pflags);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ return;
+ if ((pflags & PR_FP_EXC_SW_ENABLE) == 0)
+ INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC,
+ pflags | PR_FP_EXC_SW_ENABLE);
+}
+
+libm_hidden_def (__fe_note_change)
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fedisblxcpt.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fedisblxcpt.c
new file mode 100644
index 0000000000..7cc963c019
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fedisblxcpt.c
@@ -0,0 +1,54 @@
+/* Disable floating-point exceptions. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <sysdep.h>
+#include <sys/prctl.h>
+
+int
+fedisableexcept (int excepts)
+{
+ int result = 0, pflags, r;
+ INTERNAL_SYSCALL_DECL (err);
+
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_GET_FPEXC, &pflags);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ return -1;
+
+ /* Save old enable bits. */
+ result = __fexcepts_from_prctl (pflags);
+
+ pflags &= ~__fexcepts_to_prctl (excepts);
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC,
+ pflags | PR_FP_EXC_SW_ENABLE);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ return -1;
+
+ /* If disabling signals for "inexact", also disable trapping to the
+ kernel. */
+ if ((excepts & FE_INEXACT) != 0)
+ {
+ unsigned long fpescr;
+
+ fpescr = fegetenv_register ();
+ fpescr &= ~SPEFSCR_FINXE;
+ fesetenv_register (fpescr);
+ }
+
+ return result;
+}
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/feenablxcpt.c b/sysdeps/powerpc/powerpc32/e500/nofpu/feenablxcpt.c
new file mode 100644
index 0000000000..133dde7b31
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/feenablxcpt.c
@@ -0,0 +1,54 @@
+/* Enable floating-point exceptions. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <sysdep.h>
+#include <sys/prctl.h>
+
+int
+feenableexcept (int excepts)
+{
+ unsigned int result = 0, pflags, r;
+ INTERNAL_SYSCALL_DECL (err);
+
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_GET_FPEXC, &pflags);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ return -1;
+
+ /* Save old enable bits. */
+ result = __fexcepts_from_prctl (pflags);
+
+ pflags |= __fexcepts_to_prctl (excepts);
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC,
+ pflags | PR_FP_EXC_SW_ENABLE);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ return -1;
+
+ /* If enabling signals for "inexact", also enable trapping to the
+ kernel. */
+ if ((excepts & FE_INEXACT) != 0)
+ {
+ unsigned long fpescr;
+
+ fpescr = fegetenv_register ();
+ fpescr |= SPEFSCR_FINXE;
+ fesetenv_register (fpescr);
+ }
+
+ return result;
+}
diff --git a/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fegetenv.c
index 12d9f6273d..bfcbca2ad3 100644
--- a/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrtf.c
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fegetenv.c
@@ -1,4 +1,4 @@
-/* Single-precision floating point square root wrapper.
+/* Store current floating-point environment. e500 version.
Copyright (C) 2004-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,38 +16,32 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <math.h>
-#include <math_private.h>
#include <fenv_libc.h>
-
#include <sysdep.h>
-#include <ldsodefs.h>
+#include <sys/prctl.h>
-float
-__sqrtf (float x) /* wrapper sqrtf */
+int
+__fegetenv (fenv_t *envp)
{
-#ifdef _IEEE_LIBM
- return __ieee754_sqrtf (x);
-#else
- float z;
-/* Power4 (ISA V2.0) and above implement sqrtf in hardware. */
- __asm __volatile (
- " fsqrts %0,%1\n"
- : "=f" (z)
- : "f" (x));
-
- if (__builtin_expect (_LIB_VERSION == _IEEE_, 0))
- return z;
-
- if (__builtin_expect (x != x, 0))
- return z;
-
- if (__builtin_expect (x < 0.0, 0))
- /* sqrtf(negative) */
- return (float) __kernel_standard ((double) x, (double) x, 126);
- else
- return z;
-#endif
+ fenv_union_t u;
+ INTERNAL_SYSCALL_DECL (err);
+ int r;
+
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_GET_FPEXC, &u.l[0]);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ return -1;
+
+ u.l[1] = fegetenv_register ();
+ *envp = u.fenv;
+
+ /* Success. */
+ return 0;
}
-weak_alias (__sqrtf, sqrtf)
+#include <shlib-compat.h>
+#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
+strong_alias (__fegetenv, __old_fegetenv)
+compat_symbol (libm, __old_fegetenv, fegetenv, GLIBC_2_1);
+#endif
+
+versioned_symbol (libm, __fegetenv, fegetenv, GLIBC_2_2);
diff --git a/sysdeps/unix/bsd/setuid.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fegetexcept.c
index d19d9f1cc1..9c7afc74f4 100644
--- a/sysdeps/unix/bsd/setuid.c
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fegetexcept.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
+/* Get floating-point exceptions. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,20 +16,21 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
+#include <fenv_libc.h>
#include <sysdep.h>
-#include <errno.h>
-#include <unistd.h>
-#include <sys/types.h>
-
-/* Set the user ID of the calling process to UID.
- If the calling process is the super-user, the real
- and effective user IDs, and the saved set-user-ID to UID;
- if not, the effective user ID is set to UID. */
+#include <sys/prctl.h>
+
int
-__setuid (uid)
- uid_t uid;
+fegetexcept (void)
{
- return __setreuid (uid, uid);
-}
+ int result = 0, pflags, r;
+ INTERNAL_SYSCALL_DECL (err);
+
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_GET_FPEXC, &pflags);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ return -1;
-weak_alias (__setuid, setuid)
+ result = __fexcepts_from_prctl (pflags);
+
+ return result;
+}
diff --git a/sysdeps/unix/bsd/setegid.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fegetround.c
index 5624d08134..1e894e7523 100644
--- a/sysdeps/unix/bsd/setegid.c
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fegetround.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1995-2013 Free Software Foundation, Inc.
+/* Return current rounding direction. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,20 +16,15 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <errno.h>
-#include <unistd.h>
-#include <sys/types.h>
+#include <fenv_libc.h>
+#undef fegetround
int
-setegid (gid)
- gid_t gid;
+fegetround (void)
{
- if (gid == (gid_t) ~0)
- {
- __set_errno (EINVAL);
- return -1;
- }
+ unsigned long fpescr;
- return __setregid (-1, gid);
+ fpescr = fegetenv_register ();
+ return fpescr & 3;
}
-libc_hidden_def (setegid)
+libm_hidden_def (fegetround)
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/feholdexcpt.c b/sysdeps/powerpc/powerpc32/e500/nofpu/feholdexcpt.c
new file mode 100644
index 0000000000..bd05ebd3c7
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/feholdexcpt.c
@@ -0,0 +1,57 @@
+/* Store current floating-point environment and clear exceptions.
+ e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <sysdep.h>
+#include <sys/prctl.h>
+
+int
+feholdexcept (fenv_t *envp)
+{
+ fenv_union_t u;
+ INTERNAL_SYSCALL_DECL (err);
+ int r;
+
+ /* Get the current state. */
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_GET_FPEXC, &u.l[0]);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ return -1;
+
+ u.l[1] = fegetenv_register ();
+ *envp = u.fenv;
+
+ /* Clear everything except for the rounding mode and trapping to the
+ kernel. */
+ u.l[0] &= ~(PR_FP_EXC_DIV
+ | PR_FP_EXC_OVF
+ | PR_FP_EXC_UND
+ | PR_FP_EXC_RES
+ | PR_FP_EXC_INV);
+ u.l[1] &= SPEFSCR_FRMC | (SPEFSCR_ALL_EXCEPT_ENABLE & ~SPEFSCR_FINXE);
+
+ /* Put the new state in effect. */
+ fesetenv_register (u.l[1]);
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC,
+ u.l[0] | PR_FP_EXC_SW_ENABLE);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ return -1;
+
+ return 0;
+}
+libm_hidden_def (feholdexcept)
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fenv_const.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fenv_const.c
new file mode 100644
index 0000000000..3a85f18106
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fenv_const.c
@@ -0,0 +1,41 @@
+/* Constant floating-point environments for e500.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* The use of "unsigned long long" as the type to define the
+ bit-pattern explicitly, rather than the type "double" used in
+ <bits/fenv.h>, means that we cannot include <fenv_libc.h> here to
+ get the enum constants for the SPEFSCR bits to enable
+ exceptions. */
+
+#include <sys/prctl.h>
+
+/* If the default argument is used we use this value. */
+const unsigned long long __fe_dfl_env __attribute__ ((aligned (8))) =
+ 0x3cULL;
+
+/* Floating-point environment where none of the exceptions are masked. */
+const unsigned long long __fe_enabled_env __attribute__ ((aligned (8))) =
+ (((unsigned long long) (PR_FP_EXC_DIV
+ | PR_FP_EXC_OVF
+ | PR_FP_EXC_UND
+ | PR_FP_EXC_RES
+ | PR_FP_EXC_INV)) << 32) | 0x7cULL;
+
+/* Non-IEEE mode. */
+const unsigned long long __fe_nonieee_env __attribute__ ((aligned (8))) =
+ 0x0ULL;
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fenv_libc.h b/sysdeps/powerpc/powerpc32/e500/nofpu/fenv_libc.h
new file mode 100644
index 0000000000..a69d061982
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fenv_libc.h
@@ -0,0 +1,102 @@
+/* Internal libc stuff for floating point environment routines. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef _FENV_LIBC_H
+#define _FENV_LIBC_H 1
+
+#include <fenv.h>
+
+/* ldbl-128ibm code uses __fegetround. */
+#define __fegetround() fegetround ()
+
+int __feraiseexcept_spe (int);
+libm_hidden_proto (__feraiseexcept_spe)
+
+int __feraiseexcept_soft (int);
+libc_hidden_proto (__feraiseexcept_soft)
+
+int __fexcepts_to_spe (int);
+libm_hidden_proto (__fexcepts_to_spe)
+
+int __fexcepts_from_spe (int);
+libm_hidden_proto (__fexcepts_from_spe)
+
+int __fexcepts_to_prctl (int);
+libm_hidden_proto (__fexcepts_to_prctl)
+
+int __fexcepts_from_prctl (int);
+libm_hidden_proto (__fexcepts_from_prctl)
+
+void __fe_note_change (void);
+libm_hidden_proto (__fe_note_change)
+
+/* Equivalent to fegetenv, but returns an unsigned int instead of
+ taking a pointer. */
+#define fegetenv_register() \
+ ({ unsigned int fscr; asm volatile ("mfspefscr %0" : "=r" (fscr)); fscr; })
+
+/* Equivalent to fesetenv, but takes an unsigned int instead of a
+ pointer. */
+#define fesetenv_register(fscr) \
+ ({ asm volatile ("mtspefscr %0" : : "r" (fscr)); })
+
+typedef union
+{
+ fenv_t fenv;
+ unsigned int l[2];
+} fenv_union_t;
+
+/* Definitions of all the SPEFSCR bit numbers. */
+enum {
+ SPEFSCR_SOVH = 0x80000000,
+ SPEFSCR_OVH = 0x40000000,
+ SPEFSCR_FGH = 0x20000000,
+ SPEFSCR_FXH = 0x10000000,
+ SPEFSCR_FINVH = 0x08000000,
+ SPEFSCR_FDBZH = 0x04000000,
+ SPEFSCR_FUNFH = 0x02000000,
+ SPEFSCR_FOVFH = 0x01000000,
+ /* 2 unused bits. */
+ SPEFSCR_FINXS = 0x00200000,
+ SPEFSCR_FINVS = 0x00100000,
+ SPEFSCR_FDBZS = 0x00080000,
+ SPEFSCR_FUNFS = 0x00040000,
+ SPEFSCR_FOVFS = 0x00020000,
+ /* Combination of the exception bits. */
+ SPEFSCR_ALL_EXCEPT = 0x003e0000,
+ SPEFSCR_MODE = 0x00010000,
+ SPEFSCR_SOV = 0x00008000,
+ SPEFSCR_OV = 0x00004000,
+ SPEFSCR_FG = 0x00002000,
+ SPEFSCR_FX = 0x00001000,
+ SPEFSCR_FINV = 0x00000800,
+ SPEFSCR_FDBZ = 0x00000400,
+ SPEFSCR_FUNF = 0x00000200,
+ SPEFSCR_FOVF = 0x00000100,
+ /* 1 unused bit. */
+ SPEFSCR_FINXE = 0x00000040,
+ SPEFSCR_FINVE = 0x00000020,
+ SPEFSCR_FDBZE = 0x00000010,
+ SPEFSCR_FUNFE = 0x00000008,
+ SPEFSCR_FOVFE = 0x00000004,
+ /* Combination of the exception trap enable bits. */
+ SPEFSCR_ALL_EXCEPT_ENABLE = 0x0000007c,
+ SPEFSCR_FRMC = 0x00000003
+};
+
+#endif /* fenv_libc.h */
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fesetenv.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fesetenv.c
new file mode 100644
index 0000000000..411e6be8df
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fesetenv.c
@@ -0,0 +1,49 @@
+/* Install given floating-point environment. e500 version.
+ Copyright (C) 1997-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <sysdep.h>
+#include <sys/prctl.h>
+
+int
+__fesetenv (const fenv_t *envp)
+{
+ fenv_union_t u;
+ INTERNAL_SYSCALL_DECL (err);
+ int r;
+
+ u.fenv = *envp;
+
+ fesetenv_register (u.l[1]);
+ r = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC,
+ u.l[0] | PR_FP_EXC_SW_ENABLE);
+ if (INTERNAL_SYSCALL_ERROR_P (r, err))
+ return -1;
+
+ /* Success. */
+ return 0;
+}
+
+#include <shlib-compat.h>
+#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
+strong_alias (__fesetenv, __old_fesetenv)
+compat_symbol (libm, __old_fesetenv, fesetenv, GLIBC_2_1);
+#endif
+
+libm_hidden_ver (__fesetenv, fesetenv)
+versioned_symbol (libm, __fesetenv, fesetenv, GLIBC_2_2);
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fesetround.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fesetround.c
new file mode 100644
index 0000000000..805008e0c1
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fesetround.c
@@ -0,0 +1,35 @@
+/* Set current rounding direction. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+
+int
+fesetround (int round)
+{
+ unsigned long fpescr;
+
+ if ((unsigned int) round > 3)
+ return 1;
+
+ fpescr = fegetenv_register ();
+ fpescr = (fpescr & ~SPEFSCR_FRMC) | (round & 3);
+ fesetenv_register (fpescr);
+
+ return 0;
+}
+libm_hidden_def (fesetround)
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/feupdateenv.c b/sysdeps/powerpc/powerpc32/e500/nofpu/feupdateenv.c
new file mode 100644
index 0000000000..505c923639
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/feupdateenv.c
@@ -0,0 +1,47 @@
+/* Install given floating-point environment and raise exceptions.
+ e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+
+int
+__feupdateenv (const fenv_t *envp)
+{
+ int exc;
+
+ /* Save the currently set exceptions. */
+ exc = fegetenv_register () & SPEFSCR_ALL_EXCEPT;
+
+ /* Install new environment. */
+ fesetenv (envp);
+
+ /* Raise (if appropriate) saved exceptions. */
+ __feraiseexcept_spe (exc);
+
+ /* Success. */
+ return 0;
+}
+
+#include <shlib-compat.h>
+#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
+strong_alias (__feupdateenv, __old_feupdateenv)
+compat_symbol (libm, __old_feupdateenv, feupdateenv, GLIBC_2_1);
+#endif
+
+libm_hidden_ver (__feupdateenv, feupdateenv)
+versioned_symbol (libm, __feupdateenv, feupdateenv, GLIBC_2_2);
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_from_prctl.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_from_prctl.c
new file mode 100644
index 0000000000..c094a04cbd
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_from_prctl.c
@@ -0,0 +1,42 @@
+/* Convert floating-point exceptions from prctl form.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <sys/prctl.h>
+
+/* Convert EXCEPTS from prctl bits to FE_* form, returning the
+ converted value. */
+
+int
+__fexcepts_from_prctl (int excepts)
+{
+ int result = 0;
+ if (excepts & PR_FP_EXC_OVF)
+ result |= FE_OVERFLOW;
+ if (excepts & PR_FP_EXC_UND)
+ result |= FE_UNDERFLOW;
+ if (excepts & PR_FP_EXC_INV)
+ result |= FE_INVALID;
+ if (excepts & PR_FP_EXC_DIV)
+ result |= FE_DIVBYZERO;
+ if (excepts & PR_FP_EXC_RES)
+ result |= FE_INEXACT;
+ return result;
+}
+
+libm_hidden_def (__fexcepts_from_prctl)
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_from_spe.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_from_spe.c
new file mode 100644
index 0000000000..3ec939d18b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_from_spe.c
@@ -0,0 +1,41 @@
+/* Convert floating-point exceptions from SPEFSCR form.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+
+/* Convert EXCEPTS from SPEFSCR bits to FE_* form, returning the
+ converted value. */
+
+int
+__fexcepts_from_spe (int excepts)
+{
+ int result = 0;
+ if (excepts & SPEFSCR_FINXS)
+ result |= FE_INEXACT;
+ if (excepts & SPEFSCR_FDBZS)
+ result |= FE_DIVBYZERO;
+ if (excepts & SPEFSCR_FUNFS)
+ result |= FE_UNDERFLOW;
+ if (excepts & SPEFSCR_FOVFS)
+ result |= FE_OVERFLOW;
+ if (excepts & SPEFSCR_FINVS)
+ result |= FE_INVALID;
+ return result;
+}
+
+libm_hidden_def (__fexcepts_from_spe)
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_to_prctl.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_to_prctl.c
new file mode 100644
index 0000000000..b9c51b1255
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_to_prctl.c
@@ -0,0 +1,42 @@
+/* Convert floating-point exceptions to prctl form.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <sys/prctl.h>
+
+/* Convert EXCEPTS from FE_* form to prctl bits, returning the
+ converted value. */
+
+int
+__fexcepts_to_prctl (int excepts)
+{
+ int result = 0;
+ if (excepts & FE_INEXACT)
+ result |= PR_FP_EXC_RES;
+ if (excepts & FE_DIVBYZERO)
+ result |= PR_FP_EXC_DIV;
+ if (excepts & FE_UNDERFLOW)
+ result |= PR_FP_EXC_UND;
+ if (excepts & FE_OVERFLOW)
+ result |= PR_FP_EXC_OVF;
+ if (excepts & FE_INVALID)
+ result |= PR_FP_EXC_INV;
+ return result;
+}
+
+libm_hidden_def (__fexcepts_to_prctl)
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_to_spe.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_to_spe.c
new file mode 100644
index 0000000000..570934d153
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fexcepts_to_spe.c
@@ -0,0 +1,41 @@
+/* Convert floating-point exceptions to SPEFSCR form.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+
+/* Convert EXCEPTS from FE_* form to SPEFSCR bits, returning the
+ converted value. */
+
+int
+__fexcepts_to_spe (int excepts)
+{
+ int result = 0;
+ if (excepts & FE_INEXACT)
+ result |= SPEFSCR_FINXS;
+ if (excepts & FE_DIVBYZERO)
+ result |= SPEFSCR_FDBZS;
+ if (excepts & FE_UNDERFLOW)
+ result |= SPEFSCR_FUNFS;
+ if (excepts & FE_OVERFLOW)
+ result |= SPEFSCR_FOVFS;
+ if (excepts & FE_INVALID)
+ result |= SPEFSCR_FINVS;
+ return result;
+}
+
+libm_hidden_def (__fexcepts_to_spe)
diff --git a/sysdeps/powerpc/fpu/w_sqrtf.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fgetexcptflg.c
index aef8267f08..b01cadeff9 100644
--- a/sysdeps/powerpc/fpu/w_sqrtf.c
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fgetexcptflg.c
@@ -1,4 +1,4 @@
-/* Single-precision floating point square root wrapper.
+/* Store current representation for exceptions. e500 version.
Copyright (C) 2004-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,31 +16,26 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <math.h>
-#include <math_private.h>
#include <fenv_libc.h>
-#include <sysdep.h>
-#include <ldsodefs.h>
-
-float
-__sqrtf (float x) /* wrapper sqrtf */
+int
+__fegetexceptflag (fexcept_t *flagp, int excepts)
{
-#ifdef _IEEE_LIBM
- return __ieee754_sqrtf (x);
-#else
- float z;
- z = __ieee754_sqrtf (x);
-
- if (_LIB_VERSION == _IEEE_ || (x != x))
- return z;
-
- if (x < (float) 0.0)
- /* sqrtf(negative) */
- return (float) __kernel_standard ((double) x, (double) x, 126);
- else
- return z;
-#endif
+ unsigned long fpescr;
+
+ /* Get the current state. */
+ fpescr = fegetenv_register ();
+
+ *flagp = fpescr & SPEFSCR_ALL_EXCEPT;
+
+ /* Success. */
+ return 0;
}
-weak_alias (__sqrtf, sqrtf)
+#include <shlib-compat.h>
+#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
+strong_alias (__fegetexceptflag, __old_fegetexceptflag)
+compat_symbol (libm, __old_fegetexceptflag, fegetexceptflag, GLIBC_2_1);
+#endif
+
+versioned_symbol (libm, __fegetexceptflag, fegetexceptflag, GLIBC_2_2);
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/flt-rounds.c b/sysdeps/powerpc/powerpc32/e500/nofpu/flt-rounds.c
new file mode 100644
index 0000000000..49e6eeb614
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/flt-rounds.c
@@ -0,0 +1,39 @@
+/* Return current rounding mode as correct value for FLT_ROUNDS. e500
+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <stdlib.h>
+
+int
+__flt_rounds (void)
+{
+ switch (fegetenv_register () & SPEFSCR_FRMC)
+ {
+ case FE_TOWARDZERO:
+ return 0;
+ case FE_TONEAREST:
+ return 1;
+ case FE_UPWARD:
+ return 2;
+ case FE_DOWNWARD:
+ return 3;
+ default:
+ abort ();
+ }
+}
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcept-soft.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcept-soft.c
new file mode 100644
index 0000000000..22b2bdadbf
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcept-soft.c
@@ -0,0 +1,25 @@
+/* Raise given exceptions. e500 version for use from soft-fp.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Aldy Hernandez <aldyh@redhat.com>, 2004.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+#include <libc-symbols.h>
+
+#define __FERAISEEXCEPT_INTERNAL __feraiseexcept_soft
+#include "spe-raise.c"
+libc_hidden_def (__feraiseexcept_soft)
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcpt.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcpt.c
new file mode 100644
index 0000000000..0eca9ffff9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fraiseexcpt.c
@@ -0,0 +1,40 @@
+/* Raise given exceptions. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+
+#define __FERAISEEXCEPT_INTERNAL __feraiseexcept_spe
+#include "spe-raise.c"
+
+libm_hidden_def (__feraiseexcept_spe)
+
+#undef feraiseexcept
+int
+__feraiseexcept (int excepts)
+{
+ return __feraiseexcept_spe (__fexcepts_to_spe (excepts));
+}
+
+#include <shlib-compat.h>
+#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
+strong_alias (__feraiseexcept, __old_feraiseexcept)
+compat_symbol (libm, __old_feraiseexcept, feraiseexcept, GLIBC_2_1);
+#endif
+
+libm_hidden_ver (__feraiseexcept, feraiseexcept)
+versioned_symbol (libm, __feraiseexcept, feraiseexcept, GLIBC_2_2);
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/fsetexcptflg.c b/sysdeps/powerpc/powerpc32/e500/nofpu/fsetexcptflg.c
new file mode 100644
index 0000000000..43f2d19d17
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/fsetexcptflg.c
@@ -0,0 +1,55 @@
+/* Set floating-point environment exception handling. e500 version.
+ Copyright (C) 1997-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+
+int
+__fesetexceptflag (const fexcept_t *flagp, int excepts)
+{
+ unsigned long old_spefscr, spefscr;
+ fexcept_t flag;
+ int excepts_spe = __fexcepts_to_spe (excepts);
+
+ /* Get the current state. */
+ old_spefscr = fegetenv_register ();
+
+ /* Ignore exceptions not listed in 'excepts'. */
+ flag = *flagp & excepts_spe;
+
+ /* Replace the exception status */
+ spefscr = (old_spefscr & ~excepts_spe) | flag;
+
+ /* Store the new status word (along with the rest of the environment). */
+ fesetenv_register (spefscr);
+
+ /* If the state of the "invalid" or "underflow" flag has changed,
+ inform the kernel. */
+ if (((spefscr ^ old_spefscr) & (SPEFSCR_FINVS | SPEFSCR_FUNFS)) != 0)
+ __fe_note_change ();
+
+ /* Success. */
+ return 0;
+}
+
+#include <shlib-compat.h>
+#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_2)
+strong_alias (__fesetexceptflag, __old_fesetexceptflag)
+compat_symbol (libm, __old_fesetexceptflag, fesetexceptflag, GLIBC_2_1);
+#endif
+
+versioned_symbol (libm, __fesetexceptflag, fesetexceptflag, GLIBC_2_2);
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/ftestexcept.c b/sysdeps/powerpc/powerpc32/e500/nofpu/ftestexcept.c
new file mode 100644
index 0000000000..f4f547d5f6
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/ftestexcept.c
@@ -0,0 +1,31 @@
+/* Test exception in current environment. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+
+int
+fetestexcept (int excepts)
+{
+ unsigned long f;
+
+ /* Get the current state. */
+ f = fegetenv_register ();
+
+ return __fexcepts_from_spe (f) & excepts;
+}
+libm_hidden_def (fetestexcept)
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/get-rounding-mode.h b/sysdeps/powerpc/powerpc32/e500/nofpu/get-rounding-mode.h
new file mode 100644
index 0000000000..117e7331e9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/get-rounding-mode.h
@@ -0,0 +1,4 @@
+/* The generic version of get-rounding-mode.h using fpu_control.h, not
+ the one using the software rounding mode, is correct for e500. */
+
+#include <sysdeps/generic/get-rounding-mode.h>
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/s_fabsf.S b/sysdeps/powerpc/powerpc32/e500/nofpu/s_fabsf.S
new file mode 100644
index 0000000000..823f748ba0
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/s_fabsf.S
@@ -0,0 +1,27 @@
+/* Floating-point absolute value. e500 version.
+ Copyright (C) 2004-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+ENTRY (__fabsf)
+/* float [r3] fabsf (float [r3] x) ; */
+ efsabs r3,r3
+ blr
+END (__fabsf)
+
+weak_alias (__fabsf, fabsf)
diff --git a/sysdeps/powerpc/powerpc32/e500/nofpu/spe-raise.c b/sysdeps/powerpc/powerpc32/e500/nofpu/spe-raise.c
new file mode 100644
index 0000000000..4394ddc7cb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/e500/nofpu/spe-raise.c
@@ -0,0 +1,53 @@
+/* Raise given exceptions, given the SPEFSCR bits for those exceptions.
+ Copyright (C) 1997-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <fenv_libc.h>
+
+int
+__FERAISEEXCEPT_INTERNAL (int excepts)
+{
+ unsigned long f;
+
+ f = fegetenv_register ();
+ f |= (excepts & SPEFSCR_ALL_EXCEPT);
+ fesetenv_register (f);
+
+ /* Force the operations that cause the exceptions. */
+ if ((SPEFSCR_FINVS & excepts) != 0)
+ /* 0 / 0 */
+ asm volatile ("efsdiv %0,%0,%1" : : "r" (0), "r" (0));
+
+ if ((SPEFSCR_FDBZS & excepts) != 0)
+ /* 1.0 / 0.0 */
+ asm volatile ("efsdiv %0,%0,%1" : : "r" (1.0F), "r" (0));
+
+ if ((SPEFSCR_FOVFS & excepts) != 0)
+ /* Largest normalized number plus itself. */
+ asm volatile ("efsadd %0,%0,%1" : : "r" (0x7f7fffff), "r" (0x7f7fffff));
+
+ if ((SPEFSCR_FUNFS & excepts) != 0)
+ /* Smallest normalized number times itself. */
+ asm volatile ("efsmul %0,%0,%1" : : "r" (0x800000), "r" (0x800000));
+
+ if ((SPEFSCR_FINXS & excepts) != 0)
+ /* Smallest normalized minus 1.0 raises the inexact flag. */
+ asm volatile ("efssub %0,%0,%1" : : "r" (0x00800000), "r" (1.0F));
+
+ /* Success. */
+ return 0;
+}
diff --git a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
index 9d34cd9165..13611541c2 100644
--- a/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
+++ b/sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S
@@ -17,6 +17,7 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
+#include <stap-probe.h>
#define _ASM
#ifdef __NO_VMX__
# include <novmxsetjmp.h>
@@ -25,7 +26,7 @@
#endif
.machine "altivec"
-ENTRY (__longjmp)
+ENTRY (__longjmp_symbol)
#ifndef __NO_VMX__
# ifdef PIC
mflr r6
@@ -43,16 +44,16 @@ ENTRY (__longjmp)
# endif
mtlr r6
cfi_same_value (lr)
- lwz r5,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+4(r5)
+ lwz r5,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+LOWORD(r5)
# else
lwz r5,_dl_hwcap@got(r5)
mtlr r6
cfi_same_value (lr)
- lwz r5,4(r5)
+ lwz r5,LOWORD(r5)
# endif
# else
- lis r5,(_dl_hwcap+4)@ha
- lwz r5,(_dl_hwcap+4)@l(r5)
+ lis r5,(_dl_hwcap+LOWORD)@ha
+ lwz r5,(_dl_hwcap+LOWORD)@l(r5)
# endif
andis. r5,r5,(PPC_FEATURE_HAS_ALTIVEC >> 16)
beq L(no_vmx)
@@ -143,19 +144,22 @@ L(no_vmx):
# endif
PTR_DEMANGLE2 (r0, r25)
#endif
+ /* longjmp/longjmp_target probe expects longjmp first argument (4@3),
+ second argument (-4@4), and target address (4@0), respectively. */
+ LIBC_PROBE (longjmp, 3, 4@3, -4@4, 4@0)
mtlr r0
lwz r21,((JB_GPRS+7)*4)(r3)
lfd fp21,((JB_FPRS+7*2)*4)(r3)
lwz r22,((JB_GPRS+8)*4)(r3)
lfd fp22,((JB_FPRS+8*2)*4)(r3)
- lwz r0,(JB_CR*4)(r3)
+ lwz r5,(JB_CR*4)(r3)
lwz r23,((JB_GPRS+9)*4)(r3)
lfd fp23,((JB_FPRS+9*2)*4)(r3)
lwz r24,((JB_GPRS+10)*4)(r3)
lfd fp24,((JB_FPRS+10*2)*4)(r3)
lwz r25,((JB_GPRS+11)*4)(r3)
lfd fp25,((JB_FPRS+11*2)*4)(r3)
- mtcrf 0xFF,r0
+ mtcrf 0xFF,r5
lwz r26,((JB_GPRS+12)*4)(r3)
lfd fp26,((JB_FPRS+12*2)*4)(r3)
lwz r27,((JB_GPRS+13)*4)(r3)
@@ -168,6 +172,7 @@ L(no_vmx):
lfd fp30,((JB_FPRS+16*2)*4)(r3)
lwz r31,((JB_GPRS+17)*4)(r3)
lfd fp31,((JB_FPRS+17*2)*4)(r3)
+ LIBC_PROBE (longjmp_target, 3, 4@3, -4@4, 4@0)
mr r3,r4
blr
-END (__longjmp)
+END (__longjmp_symbol)
diff --git a/sysdeps/powerpc/powerpc32/fpu/__longjmp.S b/sysdeps/powerpc/powerpc32/fpu/__longjmp.S
index 96e50de378..cbd42be5cb 100644
--- a/sysdeps/powerpc/powerpc32/fpu/__longjmp.S
+++ b/sysdeps/powerpc/powerpc32/fpu/__longjmp.S
@@ -22,20 +22,21 @@
#if defined NOT_IN_libc
/* Build a non-versioned object for rtld-*. */
+# define __longjmp_symbol __longjmp
# include "__longjmp-common.S"
#else /* !NOT_IN_libc */
/* Build a versioned object for libc. */
-default_symbol_version (__vmx__longjmp,__longjmp,GLIBC_2.3.4);
-# define __longjmp __vmx__longjmp
+versioned_symbol (libc, __vmx__longjmp, __longjmp, GLIBC_2_3_4);
+# define __longjmp_symbol __vmx__longjmp
# include "__longjmp-common.S"
# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
# define __NO_VMX__
# undef JB_SIZE
-symbol_version (__novmx__longjmp,__longjmp,GLIBC_2.0);
-# undef __longjmp
-# define __longjmp __novmx__longjmp
+compat_symbol (libc, __novmx__longjmp, __longjmp, GLIBC_2_0);
+# undef __longjmp_symbol
+# define __longjmp_symbol __novmx__longjmp
# include "__longjmp-common.S"
# endif
#endif /* !NOT_IN_libc */
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_copysign.S b/sysdeps/powerpc/powerpc32/fpu/s_copysign.S
index 840891f1c3..1da24f492e 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_copysign.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_copysign.S
@@ -29,7 +29,7 @@ ENTRY(__copysign)
stwu r1,-16(r1)
cfi_adjust_cfa_offset (16)
stfd fp2,8(r1)
- lwz r3,8(r1)
+ lwz r3,8+HIWORD(r1)
cmpwi r3,0
addi r1,r1,16
cfi_adjust_cfa_offset (-16)
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S b/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S
index 4ec8389b5d..2ad6de273d 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_copysignl.S
@@ -30,7 +30,7 @@ ENTRY(__copysignl)
fmr fp0,fp1
fabs fp1,fp1
fcmpu cr7,fp0,fp1
- lwz r3,8(r1)
+ lwz r3,8+HIWORD(r1)
cmpwi cr6,r3,0
addi r1,r1,16
cfi_adjust_cfa_offset (-16)
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_isnan.S b/sysdeps/powerpc/powerpc32/fpu/s_isnan.S
index 98d10daf68..024252a5ca 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_isnan.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_isnan.S
@@ -37,9 +37,11 @@ weak_alias (__isnan, isnan)
/* It turns out that the 'double' version will also always work for
single-precision. */
+#ifndef __isnan
strong_alias (__isnan, __isnanf)
hidden_def (__isnanf)
weak_alias (__isnanf, isnanf)
+#endif
#ifdef NO_LONG_DOUBLE
strong_alias (__isnan, __isnanl)
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_lrint.S b/sysdeps/powerpc/powerpc32/fpu/s_lrint.S
index 27881f8cc7..249fda501f 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_lrint.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_lrint.S
@@ -24,10 +24,10 @@ ENTRY (__lrint)
stwu r1,-16(r1)
fctiw fp13,fp1
stfd fp13,8(r1)
- nop /* Insure the following load is in a different dispatch group */
+ nop /* Ensure the following load is in a different dispatch group */
nop /* to avoid pipe stall on POWER4&5. */
nop
- lwz r3,12(r1)
+ lwz r3,8+LOWORD(r1)
addi r1,r1,16
blr
END (__lrint)
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_lround.S b/sysdeps/powerpc/powerpc32/fpu/s_lround.S
index 92dc3787d6..6309f864b7 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_lround.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_lround.S
@@ -67,7 +67,7 @@ ENTRY (__lround)
nop /* Ensure the following load is in a different dispatch */
nop /* group to avoid pipe stall on POWER4&5. */
nop
- lwz r3,12(r1) /* Load return as integer. */
+ lwz r3,8+LOWORD(r1) /* Load return as integer. */
.Lout:
addi r1,r1,16
blr
diff --git a/sysdeps/powerpc/powerpc32/fpu/s_roundf.S b/sysdeps/powerpc/powerpc32/fpu/s_roundf.S
index 2ed9ca7b40..8cff1563a0 100644
--- a/sysdeps/powerpc/powerpc32/fpu/s_roundf.S
+++ b/sysdeps/powerpc/powerpc32/fpu/s_roundf.S
@@ -19,7 +19,7 @@
#include <sysdep.h>
.section .rodata.cst8,"aM",@progbits,8
- .align 2
+ .align 3
.LC0: /* 2**23 */
.long 0x4b000000
.LC1: /* 0.5 */
@@ -60,7 +60,6 @@ ENTRY (__roundf )
#ifdef SHARED
lfs fp10,.LC1-.LC0(r9)
#else
- lis r9,.LC1@ha
lfs fp10,.LC1@l(r9)
#endif
ble- cr6,.L4
diff --git a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
index 46ea2b00f9..08efd64920 100644
--- a/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
+++ b/sysdeps/powerpc/powerpc32/fpu/setjmp-common.S
@@ -17,6 +17,7 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
+#include <stap-probe.h>
#define _ASM
#ifdef __NO_VMX__
# include <novmxsetjmp.h>
@@ -25,7 +26,7 @@
#endif
.machine "altivec"
-ENTRY (__sigsetjmp)
+ENTRY (__sigsetjmp_symbol)
#ifdef PTR_MANGLE
mr r5,r1
@@ -35,6 +36,9 @@ ENTRY (__sigsetjmp)
stw r1,(JB_GPR1*4)(3)
#endif
mflr r0
+ /* setjmp probe expects longjmp first argument (4@3), second argument
+ (-4@4), and target address (4@0), respectively. */
+ LIBC_PROBE (setjmp, 3, 4@3, -4@4, 4@0)
stw r14,((JB_GPRS+0)*4)(3)
stfd fp14,((JB_FPRS+0*2)*4)(3)
#ifdef PTR_MANGLE
@@ -94,14 +98,14 @@ ENTRY (__sigsetjmp)
# else
lwz r5,_rtld_global_ro@got(r5)
# endif
- lwz r5,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+4(r5)
+ lwz r5,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+LOWORD(r5)
# else
lwz r5,_dl_hwcap@got(r5)
- lwz r5,4(r5)
+ lwz r5,LOWORD(r5)
# endif
# else
- lis r6,(_dl_hwcap+4)@ha
- lwz r5,(_dl_hwcap+4)@l(r6)
+ lis r6,(_dl_hwcap+LOWORD)@ha
+ lwz r5,(_dl_hwcap+LOWORD)@l(r6)
# endif
andis. r5,r5,(PPC_FEATURE_HAS_ALTIVEC >> 16)
beq L(no_vmx)
@@ -111,44 +115,43 @@ ENTRY (__sigsetjmp)
stw r0,((JB_VRSAVE)*4)(3)
addi r6,r5,16
beq+ L(aligned_save_vmx)
- lvsr v0,0,r5
- vspltisb v1,-1 /* set v1 to all 1's */
- vspltisb v2,0 /* set v2 to all 0's */
- vperm v3,v2,v1,v0 /* v3 contains shift mask with num all 1 bytes on left = misalignment */
+ lvsr v0,0,r5
+ lvsl v1,0,r5
+ addi r6,r5,-16
- /* Special case for v20 we need to preserve what is in save area below v20 before obliterating it */
- lvx v5,0,r5
- vperm v20,v20,v20,v0
- vsel v5,v5,v20,v3
- vsel v20,v20,v2,v3
- stvx v5,0,r5
+# define save_misaligned_vmx(savevr,prevvr,shiftvr,tmpvr,savegpr,addgpr) \
+ addi addgpr,addgpr,32; \
+ vperm tmpvr,prevvr,savevr,shiftvr; \
+ stvx tmpvr,0,savegpr
-#define save_2vmx_partial(savevr,prev_savevr,hivr,shiftvr,maskvr,savegpr,addgpr) \
- addi addgpr,addgpr,32; \
- vperm savevr,savevr,savevr,shiftvr; \
- vsel hivr,prev_savevr,savevr,maskvr; \
- stvx hivr,0,savegpr;
+ /*
+ * We have to be careful not to corrupt the data below v20 and
+ * above v31. To keep things simple we just rotate both ends in
+ * the opposite direction to our main permute so we can use
+ * the common macro.
+ */
- save_2vmx_partial(v21,v20,v5,v0,v3,r6,r5)
- save_2vmx_partial(v22,v21,v5,v0,v3,r5,r6)
- save_2vmx_partial(v23,v22,v5,v0,v3,r6,r5)
- save_2vmx_partial(v24,v23,v5,v0,v3,r5,r6)
- save_2vmx_partial(v25,v24,v5,v0,v3,r6,r5)
- save_2vmx_partial(v26,v25,v5,v0,v3,r5,r6)
- save_2vmx_partial(v27,v26,v5,v0,v3,r6,r5)
- save_2vmx_partial(v28,v27,v5,v0,v3,r5,r6)
- save_2vmx_partial(v29,v28,v5,v0,v3,r6,r5)
- save_2vmx_partial(v30,v29,v5,v0,v3,r5,r6)
+ /* load and rotate data below v20 */
+ lvx v2,0,r5
+ vperm v2,v2,v2,v1
+ save_misaligned_vmx(v20,v2,v0,v3,r5,r6)
+ save_misaligned_vmx(v21,v20,v0,v3,r6,r5)
+ save_misaligned_vmx(v22,v21,v0,v3,r5,r6)
+ save_misaligned_vmx(v23,v22,v0,v3,r6,r5)
+ save_misaligned_vmx(v24,v23,v0,v3,r5,r6)
+ save_misaligned_vmx(v25,v24,v0,v3,r6,r5)
+ save_misaligned_vmx(v26,v25,v0,v3,r5,r6)
+ save_misaligned_vmx(v27,v26,v0,v3,r6,r5)
+ save_misaligned_vmx(v28,v27,v0,v3,r5,r6)
+ save_misaligned_vmx(v29,v28,v0,v3,r6,r5)
+ save_misaligned_vmx(v30,v29,v0,v3,r5,r6)
+ save_misaligned_vmx(v31,v30,v0,v3,r6,r5)
+ /* load and rotate data above v31 */
+ lvx v2,0,r6
+ vperm v2,v2,v2,v1
+ save_misaligned_vmx(v2,v31,v0,v3,r5,r6)
- /* Special case for r31 we need to preserve what is in save area above v31 before obliterating it */
- addi r5,r5,32
- vperm v31,v31,v31,v0
- lvx v4,0,r5
- vsel v5,v30,v31,v3
- stvx v5,0,r6
- vsel v4,v31,v4,v3
- stvx v4,0,r5
b L(no_vmx)
L(aligned_save_vmx):
@@ -176,5 +179,5 @@ L(aligned_save_vmx):
stvx 31,0,r6
L(no_vmx):
#endif
- b __sigjmp_save@local
-END (__sigsetjmp)
+ b __sigjmp_save_symbol@local
+END (__sigsetjmp_symbol)
diff --git a/sysdeps/powerpc/powerpc32/fpu/setjmp.S b/sysdeps/powerpc/powerpc32/fpu/setjmp.S
index 60cd350522..566aa34d0f 100644
--- a/sysdeps/powerpc/powerpc32/fpu/setjmp.S
+++ b/sysdeps/powerpc/powerpc32/fpu/setjmp.S
@@ -22,23 +22,25 @@
#if defined NOT_IN_libc
/* Build a non-versioned object for rtld-*. */
+# define __sigsetjmp_symbol __sigsetjmp
+# define __sigjmp_save_symbol __sigjmp_save
# include "setjmp-common.S"
#else /* !NOT_IN_libc */
/* Build a versioned object for libc. */
-default_symbol_version (__vmx__sigsetjmp,__sigsetjmp,GLIBC_2.3.4)
-# define __sigsetjmp __vmx__sigsetjmp
-# define __sigjmp_save __vmx__sigjmp_save
+versioned_symbol (libc, __vmx__sigsetjmp, __sigsetjmp, GLIBC_2_3_4)
+# define __sigsetjmp_symbol __vmx__sigsetjmp
+# define __sigjmp_save_symbol __vmx__sigjmp_save
# include "setjmp-common.S"
# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
# define __NO_VMX__
-# undef __sigsetjmp
-# undef __sigjmp_save
+# undef __sigsetjmp_symbol
+# undef __sigjmp_save_symbol
# undef JB_SIZE
-symbol_version (__novmx__sigsetjmp,__sigsetjmp,GLIBC_2.0)
-# define __sigsetjmp __novmx__sigsetjmp
-# define __sigjmp_save __novmx__sigjmp_save
+compat_symbol (libc, __novmx__sigsetjmp, __sigsetjmp, GLIBC_2_0)
+# define __sigsetjmp_symbol __novmx__sigsetjmp
+# define __sigjmp_save_symbol __novmx__sigjmp_save
# include "setjmp-common.S"
# endif
#endif /* !NOT_IN_libc */
diff --git a/sysdeps/powerpc/powerpc32/libgcc-compat.S b/sysdeps/powerpc/powerpc32/libgcc-compat.S
index 59c8c77ec6..4ea870a667 100644
--- a/sysdeps/powerpc/powerpc32/libgcc-compat.S
+++ b/sysdeps/powerpc/powerpc32/libgcc-compat.S
@@ -27,24 +27,28 @@
#define __lshrdi3_v_glibc20 INTUSE (__lshrdi3)
#define __cmpdi2_v_glibc20 INTUSE (__cmpdi2)
#define __ucmpdi2_v_glibc20 INTUSE (__ucmpdi2)
-#define __fixdfdi_v_glibc20 INTUSE (__fixdfdi)
-#define __fixsfdi_v_glibc20 INTUSE (__fixsfdi)
-#define __fixunsdfdi_v_glibc20 INTUSE (__fixunsdfdi)
-#define __fixunssfdi_v_glibc20 INTUSE (__fixunssfdi)
-#define __floatdidf_v_glibc20 INTUSE (__floatdidf)
-#define __floatdisf_v_glibc20 INTUSE (__floatdisf)
+#if !defined _SOFT_FLOAT && !defined __NO_FPRS__
+# define __fixdfdi_v_glibc20 INTUSE (__fixdfdi)
+# define __fixsfdi_v_glibc20 INTUSE (__fixsfdi)
+# define __fixunsdfdi_v_glibc20 INTUSE (__fixunsdfdi)
+# define __fixunssfdi_v_glibc20 INTUSE (__fixunssfdi)
+# define __floatdidf_v_glibc20 INTUSE (__floatdidf)
+# define __floatdisf_v_glibc20 INTUSE (__floatdisf)
+#endif
.symver __ashldi3_v_glibc20,__ashldi3@GLIBC_2.0
.symver __ashrdi3_v_glibc20,__ashrdi3@GLIBC_2.0
.symver __lshrdi3_v_glibc20,__lshrdi3@GLIBC_2.0
.symver __cmpdi2_v_glibc20,__cmpdi2@GLIBC_2.0
.symver __ucmpdi2_v_glibc20,__ucmpdi2@GLIBC_2.0
+#if !defined _SOFT_FLOAT && !defined __NO_FPRS__
.symver __fixdfdi_v_glibc20,__fixdfdi@GLIBC_2.0
.symver __fixunsdfdi_v_glibc20,__fixunsdfdi@GLIBC_2.0
.symver __fixsfdi_v_glibc20,__fixsfdi@GLIBC_2.0
.symver __fixunssfdi_v_glibc20,__fixunssfdi@GLIBC_2.0
.symver __floatdidf_v_glibc20,__floatdidf@GLIBC_2.0
.symver __floatdisf_v_glibc20,__floatdisf@GLIBC_2.0
+#endif
#ifdef HAVE_DOT_HIDDEN
.hidden __ashldi3
@@ -52,12 +56,14 @@
.hidden __lshrdi3
.hidden __cmpdi2
.hidden __ucmpdi2
+# if !defined _SOFT_FLOAT && !defined __NO_FPRS__
.hidden __fixdfdi
.hidden __fixsfdi
.hidden __fixunsdfdi
.hidden __fixunssfdi
.hidden __floatdidf
.hidden __floatdisf
+# endif
#endif
.section ".text"
@@ -97,6 +103,7 @@ __ucmpdi2_v_glibc20:
b __ucmpdi2@local
.Lfe9:
.size __ucmpdi2_v_glibc20,.Lfe9-__ucmpdi2_v_glibc20
+#if !defined _SOFT_FLOAT && !defined __NO_FPRS__
.align 2
.globl __fixdfdi_v_glibc20
.type __fixdfdi_v_glibc20,@function
@@ -139,5 +146,6 @@ __floatdisf_v_glibc20:
b __floatdisf@local
.Lfe15:
.size __floatdisf_v_glibc20,.Lfe15-__floatdisf_v_glibc20
+#endif
#endif
diff --git a/sysdeps/powerpc/powerpc32/mcount.c b/sysdeps/powerpc/powerpc32/mcount.c
index 0476bf61db..d8c063222a 100644
--- a/sysdeps/powerpc/powerpc32/mcount.c
+++ b/sysdeps/powerpc/powerpc32/mcount.c
@@ -9,7 +9,7 @@
/* __mcount_internal was added in glibc 2.15 with version GLIBC_PRIVATE,
but it should have been put in version GLIBC_2.15. Mark the
GLIBC_PRIVATE version obsolete and add it to GLIBC_2.16 instead. */
-default_symbol_version (___mcount_internal, __mcount_internal, GLIBC_2.16);
+versioned_symbol (libc, ___mcount_internal, __mcount_internal, GLIBC_2_16);
#if SHLIB_COMPAT (libc, GLIBC_2_15, GLIBC_2_16)
strong_alias (___mcount_internal, ___mcount_internal_private);
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile
new file mode 100644
index 0000000000..590a8eba05
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/Makefile
@@ -0,0 +1,37 @@
+ifeq ($(subdir),math)
+sysdep_routines += s_isnan-power7 s_isnan-power6 s_isnan-power5 s_isnan-ppc32 \
+ s_isnanf-power6 s_isnanf-power5 s_isinf-power7 \
+ s_isinf-ppc32 s_isinff-ppc32 s_finite-power7 \
+ s_finite-ppc32 s_finitef-ppc32 s_copysign-power6 \
+ s_copysign-ppc32 s_modf-power5+ s_modf-ppc32 \
+ s_modff-power5+ s_modff-ppc32
+
+libm-sysdep_routines += s_llrintf-power6 s_llrintf-ppc32 s_llrint-power6 \
+ s_llrint-ppc32 s_llround-power6 s_llround-power5+ \
+ s_llround-ppc32 w_sqrt-power5 w_sqrt-ppc32 \
+ w_sqrtf-power5 w_sqrtf-ppc32 s_isnan-power7 \
+ s_isnan-power6 s_isnan-power5 s_isnan-ppc32 \
+ s_isnanf-power6 s_isnanf-power5 s_isinf-power7 \
+ s_isinf-ppc32 s_isinff-ppc32 s_finite-power7 \
+ s_finite-ppc32 s_finitef-ppc32 s_ceil-power5+ \
+ s_ceil-ppc32 s_ceilf-power5+ s_ceilf-ppc32 \
+ s_floor-power5+ s_floor-ppc32 s_floorf-power5+ \
+ s_floorf-ppc32 s_round-power5+ s_round-ppc32 \
+ s_roundf-power5+ s_roundf-ppc32 s_trunc-power5+ \
+ s_trunc-ppc32 s_truncf-power5+ s_truncf-ppc32 \
+ s_copysign-power6 s_copysign-ppc32 s_lround-power6x \
+ s_lround-power5+ s_lround-ppc32 s_lrint-power6x \
+ s_lrint-ppc32 s_modf-power5+ s_modf-ppc32 \
+ s_modff-power5+ s_modff-ppc32 s_logbl-power7 \
+ s_logbl-ppc32 s_logb-power7 s_logb-ppc32 \
+ s_logbf-power7 s_logbf-ppc32 e_hypot-power7 \
+ e_hypot-ppc32 e_hypotf-power7 e_hypotf-ppc32
+
+CFLAGS-s_modf-power5+.c = -mcpu=power5+
+CFLAGS-s_modff-power5+.c = -mcpu=power5+
+CFLAGS-s_logbl-power7.c = -mcpu=power7
+CFLAGS-s_logb-power7.c = -mcpu=power7
+CFLAGS-s_logbf-power7.c = -mcpu=power7
+CFLAGS-e_hypot-power7.c = -mcpu=power7
+CFLAGS-e_hypotf-power7.c = -mcpu=power7
+endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-power7.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-power7.c
new file mode 100644
index 0000000000..91a42a2dbd
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-power7.c
@@ -0,0 +1,26 @@
+/* __ieee_hypot() POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define __ieee754_hypot __ieee754_hypot_power7
+
+#include <sysdeps/powerpc/fpu/e_hypot.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-ppc32.c
new file mode 100644
index 0000000000..35ae97d7cb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-ppc32.c
@@ -0,0 +1,26 @@
+/* __ieee_hypot() PowerPC32 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define __ieee754_hypot __ieee754_hypot_ppc32
+
+#include <sysdeps/powerpc/fpu/e_hypot.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot.c
new file mode 100644
index 0000000000..c179ca2b8b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot.c
@@ -0,0 +1,32 @@
+/* Multiple versions of ieee754_hypot.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__ieee754_hypot) __ieee754_hypot_ppc32 attribute_hidden;
+extern __typeof (__ieee754_hypot) __ieee754_hypot_power7 attribute_hidden;
+
+libc_ifunc (__ieee754_hypot,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __ieee754_hypot_power7
+ : __ieee754_hypot_ppc32);
+
+strong_alias (__ieee754_hypot, __hypot_finite)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-power7.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-power7.c
new file mode 100644
index 0000000000..64cba4ef0d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-power7.c
@@ -0,0 +1,26 @@
+/* __ieee754_hypot POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define __ieee754_hypotf __ieee754_hypotf_power7
+
+#include <sysdeps/powerpc/fpu/e_hypotf.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-ppc32.c
new file mode 100644
index 0000000000..9a5232204f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-ppc32.c
@@ -0,0 +1,26 @@
+/* __ieee_hypot() PowerPC32 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define __ieee754_hypotf __ieee754_hypotf_ppc32
+
+#include <sysdeps/ieee754/flt-32/e_hypotf.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf.c
new file mode 100644
index 0000000000..d5c61cd814
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of ieee754_hypotf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__ieee754_hypotf) __ieee754_hypotf_ppc32 attribute_hidden;
+extern __typeof (__ieee754_hypotf) __ieee754_hypotf_power7 attribute_hidden;
+
+libc_ifunc (__ieee754_hypotf,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __ieee754_hypotf_power7
+ : __ieee754_hypotf_ppc32);
+
+strong_alias (__ieee754_hypotf, __hypotf_finite)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-power5+.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-power5+.S
new file mode 100644
index 0000000000..213e31c6a1
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-power5+.S
@@ -0,0 +1,33 @@
+/* ceil function. PowerPC32/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __ceil __ceil_power5plus
+
+#include <sysdeps/powerpc/powerpc32/power5+/fpu/s_ceil.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-ppc32.S
new file mode 100644
index 0000000000..d5c9d428dd
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil-ppc32.S
@@ -0,0 +1,31 @@
+/* ceil function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __ceil __ceil_ppc32
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_ceil.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil.c
new file mode 100644
index 0000000000..a4e31d1f2f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceil.c
@@ -0,0 +1,40 @@
+/* Multiple versions of ceil.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__ceil) __ceil_ppc32 attribute_hidden;
+extern __typeof (__ceil) __ceil_power5plus attribute_hidden;
+
+libc_ifunc (__ceil,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __ceil_power5plus
+ : __ceil_ppc32);
+
+weak_alias (__ceil, ceil)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__ceil, __ceill)
+weak_alias (__ceil, ceill)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __ceil, ceill, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-power5+.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-power5+.S
new file mode 100644
index 0000000000..7ea5e97390
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-power5+.S
@@ -0,0 +1,26 @@
+/* ceilf function. PowerPC32/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#define __ceilf __ceilf_power5plus
+
+#include <sysdeps/powerpc/powerpc32/power5+/fpu/s_ceilf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-ppc32.S
new file mode 100644
index 0000000000..da0a50401a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf-ppc32.S
@@ -0,0 +1,27 @@
+/* ceilf function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __ceilf __ceilf_ppc32
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_ceilf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf.c
new file mode 100644
index 0000000000..e8f66f95bb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_ceilf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of ceilf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__ceilf) __ceilf_ppc32 attribute_hidden;
+extern __typeof (__ceilf) __ceilf_power5plus attribute_hidden;
+
+libc_ifunc (__ceilf,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __ceilf_power5plus
+ : __ceilf_ppc32);
+
+weak_alias (__ceilf, ceilf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-power6.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-power6.S
new file mode 100644
index 0000000000..42550477af
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-power6.S
@@ -0,0 +1,33 @@
+/* copysign(). PowerPC32/POWER6 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __copysign __copysign_power6
+
+#include <sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-ppc32.S
new file mode 100644
index 0000000000..a0090105c6
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign-ppc32.S
@@ -0,0 +1,34 @@
+/* copysign(). PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a, b, c, d)
+
+#define __copysign __copysign_ppc32
+#undef hidden_def
+#define hidden_def(name)
+ strong_alias (__copysign_ppc32, __GI___copysign)
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_copysign.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign.c
new file mode 100644
index 0000000000..a4b5239fad
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysign.c
@@ -0,0 +1,51 @@
+/* Multiple versions of copysign.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Redefine copysign so that the compiler won't complain about the type
+ mismatch with the IFUNC selector in strong_alias below. */
+#undef __copysign
+#define __copysign __redirect_copysign
+#include <math.h>
+#include <math_ldbl_opt.h>
+#undef __copysign
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__redirect_copysign) __copysign_ppc32 attribute_hidden;
+extern __typeof (__redirect_copysign) __copysign_power6 attribute_hidden;
+
+extern __typeof (__redirect_copysign) __libm_copysign;
+libc_ifunc (__libm_copysign,
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __copysign_power6
+ : __copysign_ppc32);
+
+strong_alias (__libm_copysign, __copysign)
+weak_alias (__copysign, copysign)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__copysign,copysignl)
+strong_alias(__copysign,__copysignl)
+#endif
+#ifdef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __copysign, copysignl, GLIBC_2_0);
+# endif
+#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __copysign, copysignl, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysignf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysignf.c
new file mode 100644
index 0000000000..7c5ef4fecc
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_copysignf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of copysignf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+/* It's safe to use double-precision implementation for single-precision. */
+extern __typeof (__copysignf) __copysign_ppc32 attribute_hidden;
+extern __typeof (__copysignf) __copysign_power6 attribute_hidden;
+
+libc_ifunc (__copysignf,
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __copysign_power6
+ : __copysign_ppc32);
+
+weak_alias (__copysignf, copysignf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-power7.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-power7.S
new file mode 100644
index 0000000000..afa93d26a0
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-power7.S
@@ -0,0 +1,33 @@
+/* finite(). PowerPC32/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __finite __finite_power7
+
+#include <sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-ppc32.c
new file mode 100644
index 0000000000..133391eb2b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite-ppc32.c
@@ -0,0 +1,33 @@
+/* finite(). PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define FINITE __finite_ppc32
+#ifdef SHARED
+# undef hidden_def
+# define hidden_def(a) \
+ __hidden_ver1 (__finite_ppc32, __GI___finite, __finite_ppc32);
+#endif
+
+#include <sysdeps/ieee754/dbl-64/s_finite.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite.c
new file mode 100644
index 0000000000..85a63414c4
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finite.c
@@ -0,0 +1,51 @@
+/* Multiple versions of finite.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__finite) __finite_ppc32 attribute_hidden;
+extern __typeof (__finite) __finite_power7 attribute_hidden;
+
+libc_ifunc (__finite,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __finite_power7
+ : __finite_ppc32);
+
+weak_alias (__finite, finite)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__finite, __finitel)
+weak_alias (__finite, finitel)
+#endif
+
+#ifdef IS_IN_libm
+# if LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)
+compat_symbol (libm, finite, finitel, GLIBC_2_0);
+# endif
+# if LONG_DOUBLE_COMPAT (libm, GLIBC_2_1)
+compat_symbol (libm, __finite, __finitel, GLIBC_2_1);
+# endif
+#else
+# if LONG_DOUBLE_COMPAT (libc, GLIBC_2_0)
+compat_symbol (libc, __finite, __finitel, GLIBC_2_0);
+compat_symbol (libc, finite, finitel, GLIBC_2_0);
+# endif
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef-ppc32.c
new file mode 100644
index 0000000000..a413999966
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef-ppc32.c
@@ -0,0 +1,31 @@
+/* finitef(). PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+
+#define FINITEF __finitef_ppc32
+#ifdef SHARED
+# undef hidden_def
+# define hidden_def(a) \
+ __hidden_ver1 (__finitef_ppc32, __GI___finitef, __finitef_ppc32);
+#endif
+
+#include <sysdeps/ieee754/flt-32/s_finitef.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef.c
new file mode 100644
index 0000000000..a3f15965d6
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_finitef.c
@@ -0,0 +1,32 @@
+/* Multiple versions of finitef.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__finitef) __finitef_ppc32 attribute_hidden;
+/* The power7 finite(double) works for float. */
+extern __typeof (__finitef) __finite_power7 attribute_hidden;
+
+libc_ifunc (__finitef,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __finite_power7
+ : __finitef_ppc32);
+
+weak_alias (__finitef, finitef)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-power5+.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-power5+.S
new file mode 100644
index 0000000000..ffb5277a15
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-power5+.S
@@ -0,0 +1,33 @@
+/* floor function. PowerPC32/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __floor __floor_power5plus
+
+#include <sysdeps/powerpc/powerpc32/power5+/fpu/s_floor.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-ppc32.S
new file mode 100644
index 0000000000..bfc6c0b0e0
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor-ppc32.S
@@ -0,0 +1,31 @@
+/* floor function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __floor __floor_ppc32
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_floor.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor.c
new file mode 100644
index 0000000000..c56e067bf7
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floor.c
@@ -0,0 +1,40 @@
+/* Multiple versions of floor.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__floor) __floor_ppc32 attribute_hidden;
+extern __typeof (__floor) __floor_power5plus attribute_hidden;
+
+libc_ifunc (__floor,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __floor_power5plus
+ : __floor_ppc32);
+
+weak_alias (__floor, floor)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__floor, __floorl)
+weak_alias (__floor, floorl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __floor, floorl, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-power5+.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-power5+.S
new file mode 100644
index 0000000000..4df6f89b33
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-power5+.S
@@ -0,0 +1,26 @@
+/* floorf function. PowerPC32/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#define __floorf __floorf_power5plus
+
+#include <sysdeps/powerpc/powerpc32/power5+/fpu/s_floorf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-ppc32.S
new file mode 100644
index 0000000000..5ea62ccbf8
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf-ppc32.S
@@ -0,0 +1,27 @@
+/* floorf function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __floorf __floorf_ppc32
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_floorf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf.c
new file mode 100644
index 0000000000..df73148f53
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_floorf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of floorf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__floorf) __floorf_ppc32 attribute_hidden;
+extern __typeof (__floorf) __floorf_power5plus attribute_hidden;
+
+libc_ifunc (__floorf,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __floorf_power5plus
+ : __floorf_ppc32);
+
+weak_alias (__floorf, floorf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-power7.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-power7.S
new file mode 100644
index 0000000000..07c20552d5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-power7.S
@@ -0,0 +1,33 @@
+/* isinf(). PowerPC32/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __isinf __isinf_power7
+
+#include <sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-ppc32.c
new file mode 100644
index 0000000000..abd3a875ad
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf-ppc32.c
@@ -0,0 +1,33 @@
+/* isinf(). PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define __isinf __isinf_ppc32
+#ifdef SHARED
+# undef hidden_def
+# define hidden_def(a) \
+ __hidden_ver1 (__isinf_ppc32, __GI___isinf, __isinf_ppc32);
+#endif
+
+#include <sysdeps/ieee754/dbl-64/s_isinf.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf.c
new file mode 100644
index 0000000000..afbae8669d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinf.c
@@ -0,0 +1,44 @@
+/* Multiple versions of isinf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__isinf) __isinf_ppc32 attribute_hidden;
+extern __typeof (__isinf) __isinf_power7 attribute_hidden;
+
+libc_ifunc (__isinf,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __isinf_power7
+ : __isinf_ppc32);
+
+weak_alias (__isinf, isinf)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__isinf, __isinfl)
+weak_alias (__isinf, isinfl)
+#endif
+
+#ifndef IS_IN_libm
+# if LONG_DOUBLE_COMPAT (libc, GLIBC_2_0)
+compat_symbol (libc, __isinf, __isinfl, GLIBC_2_0);
+compat_symbol (libc, isinf, isinfl, GLIBC_2_0);
+# endif
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff-ppc32.c
new file mode 100644
index 0000000000..09786c48ef
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff-ppc32.c
@@ -0,0 +1,31 @@
+/* isinff(). PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+
+#define __isinff __isinff_ppc32
+#ifdef SHARED
+# undef hidden_def
+# define hidden_def(a) \
+ __hidden_ver1 (__isinff_ppc32, __GI___isinff, __isinff_ppc32);
+#endif
+
+#include <sysdeps/ieee754/flt-32/s_isinff.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff.c
new file mode 100644
index 0000000000..bb56f4353c
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isinff.c
@@ -0,0 +1,33 @@
+/* Multiple versions of isinf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__isinff) __isinff_ppc32 attribute_hidden;
+/* The power7 isinf(double) works for float. */
+extern __typeof (__isinff) __isinf_power7 attribute_hidden;
+
+libc_ifunc (__isinff,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __isinf_power7
+ : __isinff_ppc32);
+
+weak_alias (__isinff, isinff)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power5.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power5.S
new file mode 100644
index 0000000000..206b3ce126
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power5.S
@@ -0,0 +1,33 @@
+/* isnan(). PowerPC32/POWER5 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, symbol, ver)
+
+#define __isnan __isnan_power5
+
+#include <sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power6.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power6.S
new file mode 100644
index 0000000000..0c87918512
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power6.S
@@ -0,0 +1,33 @@
+/* isnan(). PowerPC32/POWER6 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, symbol, ver)
+
+#define __isnan __isnan_power6
+
+#include <sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power7.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power7.S
new file mode 100644
index 0000000000..b82ab7f25a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-power7.S
@@ -0,0 +1,33 @@
+/* isnan(). PowerPC32/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, symbol, ver)
+
+#define __isnan __isnan_power7
+
+#include <sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-ppc32.S
new file mode 100644
index 0000000000..db13213e69
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan-ppc32.S
@@ -0,0 +1,32 @@
+/* isnan(). PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+#undef compat_symbol
+#define compat_symbol(a, b, c, d)
+
+#define __isnan __isnan_ppc32
+#undef hidden_def
+#define hidden_def(name)
+ strong_alias (__isnan_ppc32, __GI___isnan)
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_isnan.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan.c
new file mode 100644
index 0000000000..a45091f772
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnan.c
@@ -0,0 +1,50 @@
+/* Multiple versions of isnan.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__isnan) __isnan_ppc32 attribute_hidden;
+extern __typeof (__isnan) __isnan_power5 attribute_hidden;
+extern __typeof (__isnan) __isnan_power6 attribute_hidden;
+extern __typeof (__isnan) __isnan_power7 attribute_hidden;
+
+libc_ifunc (__isnan,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __isnan_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __isnan_power6 :
+ (hwcap & PPC_FEATURE_POWER5)
+ ? __isnan_power5
+ : __isnan_ppc32);
+
+weak_alias (__isnan, isnan)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__isnan, __isnanl)
+weak_alias (__isnan, isnanl)
+#endif
+
+#ifndef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __isnan, __isnanl, GLIBC_2_0);
+compat_symbol (libc, isnan, isnanl, GLIBC_2_0);
+# endif
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power5.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power5.S
new file mode 100644
index 0000000000..2483f9e0da
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power5.S
@@ -0,0 +1,28 @@
+/* isnanf(). PowerPC32/POWER5 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#define __isnanf __isnanf_power5
+
+#include <sysdeps/powerpc/powerpc32/power5/fpu/s_isnanf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power6.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power6.S
new file mode 100644
index 0000000000..20d8a0a89c
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf-power6.S
@@ -0,0 +1,28 @@
+/* isnanf(). PowerPC32/POWER6 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#define __isnanf __isnanf_power6
+
+#include <sysdeps/powerpc/powerpc32/power6/fpu/s_isnanf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf.c
new file mode 100644
index 0000000000..c59b5c9820
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_isnanf.c
@@ -0,0 +1,38 @@
+/* Multiple versions of isnanf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+/* Both ppc32 and power7 isnan(double) work for float. */
+extern __typeof (__isnanf) __isnan_ppc32 attribute_hidden;
+extern __typeof (__isnanf) __isnanf_power5 attribute_hidden;
+extern __typeof (__isnanf) __isnanf_power6 attribute_hidden;
+extern __typeof (__isnanf) __isnan_power7 attribute_hidden;
+
+libc_ifunc (__isnanf,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __isnan_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __isnanf_power6 :
+ (hwcap & PPC_FEATURE_POWER5)
+ ? __isnanf_power5
+ : __isnan_ppc32);
+
+weak_alias (__isnanf, isnanf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-power6.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-power6.S
new file mode 100644
index 0000000000..f4d971607f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-power6.S
@@ -0,0 +1,31 @@
+/* Round double to long int. PowerPC32/Power6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __llrint __llrint_power6
+
+#include <sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-ppc32.S
new file mode 100644
index 0000000000..6f288ca9d1
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint-ppc32.S
@@ -0,0 +1,31 @@
+/* llrint function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __llrint __llrint_ppc32
+
+#include <sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint.c
new file mode 100644
index 0000000000..c00d15f18a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrint.c
@@ -0,0 +1,40 @@
+/* Multiple versions of llrint.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__llrint) __llrint_ppc32 attribute_hidden;
+extern __typeof (__llrint) __llrint_power6 attribute_hidden;
+
+libc_ifunc (__llrint,
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __llrint_power6
+ : __llrint_ppc32);
+
+weak_alias (__llrint, llrint)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__llrint, __llrintl)
+weak_alias (__llrint, llrintl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+compat_symbol (libm, __llrint, llrintl, GLIBC_2_1);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-power6.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-power6.S
new file mode 100644
index 0000000000..15da786b86
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-power6.S
@@ -0,0 +1,26 @@
+/* Round float to long int. PowerPC32/POWER6 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __llrintf __llrintf_power6
+
+#include <sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-ppc32.S
new file mode 100644
index 0000000000..47ce488f8f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf-ppc32.S
@@ -0,0 +1,26 @@
+/* llrintf function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __llrintf __llrintf_ppc32
+
+#include <sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf.c
new file mode 100644
index 0000000000..f9b38a55c0
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llrintf.c
@@ -0,0 +1,31 @@
+/* Multiple versions of llrintf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__llrintf) __llrintf_ppc32 attribute_hidden;
+extern __typeof (__llrintf) __llrintf_power6 attribute_hidden;
+
+libc_ifunc (__llrintf,
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __llrintf_power6
+ : __llrintf_ppc32);
+
+weak_alias (__llrintf, llrintf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power5+.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power5+.S
new file mode 100644
index 0000000000..45e0288608
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power5+.S
@@ -0,0 +1,31 @@
+/* lround function. PowerPC32/POWER5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __llround __llround_power5plus
+
+#include <sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power6.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power6.S
new file mode 100644
index 0000000000..9d6167ab1d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-power6.S
@@ -0,0 +1,31 @@
+/* lround function. PowerPC32/POWER6 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __llround __llround_power6
+
+#include <sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-ppc32.S
new file mode 100644
index 0000000000..bd6d7d6a02
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround-ppc32.S
@@ -0,0 +1,31 @@
+/* llround function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __llround __llround_ppc32
+
+#include <sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround.c
new file mode 100644
index 0000000000..043bebe34e
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llround.c
@@ -0,0 +1,43 @@
+/* Multiple versions of llround.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__llround) __llround_ppc32 attribute_hidden;
+extern __typeof (__llround) __llround_power5plus attribute_hidden;
+extern __typeof (__llround) __llround_power6 attribute_hidden;
+
+libc_ifunc (__llround,
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __llround_power6 :
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __llround_power5plus
+ : __llround_ppc32);
+
+weak_alias (__llround, llround)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__llround, __llroundl)
+weak_alias (__llround, llroundl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+compat_symbol (libm, __llround, llroundl, GLIBC_2_1);
+#endif
diff --git a/benchtests/bench-stpncpy-ifunc.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llroundf.c
index 736cac0429..49fa0fff1b 100644
--- a/benchtests/bench-stpncpy-ifunc.c
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_llroundf.c
@@ -1,4 +1,4 @@
-/* Measure IFUNC implementations of stpncpy function.
+/* Multiple versions of llroundf.
Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,5 +16,19 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#define TEST_IFUNC 1
-#include "bench-stpncpy.c"
+#include <math.h>
+#include "init-arch.h"
+
+/* It's safe to use double-precision implementation for single-precision. */
+extern __typeof (__llroundf) __llround_ppc32 attribute_hidden;
+extern __typeof (__llroundf) __llround_power5plus attribute_hidden;
+extern __typeof (__llroundf) __llround_power6 attribute_hidden;
+
+libc_ifunc (__llroundf,
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __llround_power6 :
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __llround_power5plus
+ : __llround_ppc32);
+
+weak_alias (__llroundf, llroundf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-power7.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-power7.c
new file mode 100644
index 0000000000..666c76d285
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-power7.c
@@ -0,0 +1,31 @@
+/* logb(). PowerPC32/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+#undef strong_alias
+#define strong_alias(a, b)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __logb __logb_power7
+
+#include <sysdeps/powerpc/power7/fpu/s_logb.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-ppc32.c
new file mode 100644
index 0000000000..9190ec9f8c
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-ppc32.c
@@ -0,0 +1,28 @@
+/* logb(). PowerPC32/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define __logb __logb_ppc32
+
+#include <sysdeps/ieee754/dbl-64/s_logb.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb.c
new file mode 100644
index 0000000000..c8eaf93e7c
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb.c
@@ -0,0 +1,41 @@
+/* Multiple versions of logb.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__logb) __logb_ppc32 attribute_hidden;
+extern __typeof (__logb) __logb_power7 attribute_hidden;
+
+libc_ifunc (__logb,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __logb_power7
+ : __logb_ppc32);
+
+weak_alias (__logb, logb)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__logb, __logbl)
+weak_alias (__logb, logbl)
+#endif
+
+#if LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)
+compat_symbol (libm, logb, logbl, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-power7.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-power7.c
new file mode 100644
index 0000000000..f454c75799
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-power7.c
@@ -0,0 +1,26 @@
+/* logbf(). PowerPC32/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+
+#define __logbf __logbf_power7
+
+#include <sysdeps/powerpc/power7/fpu/s_logbf.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-ppc32.c
new file mode 100644
index 0000000000..7d51041375
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-ppc32.c
@@ -0,0 +1,26 @@
+/* logbf(). PowerPC32 default implementation.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+
+#define __logbf __logbf_ppc32
+
+#include <sysdeps/ieee754/flt-32/s_logbf.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf.c
new file mode 100644
index 0000000000..cf66af4367
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of logbf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__logbf) __logbf_ppc32 attribute_hidden;
+extern __typeof (__logbf) __logbf_power7 attribute_hidden;
+
+libc_ifunc (__logbf,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __logbf_power7
+ : __logbf_ppc32);
+
+weak_alias (__logbf, logbf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-power7.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-power7.c
new file mode 100644
index 0000000000..b5adcd232a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-power7.c
@@ -0,0 +1,21 @@
+/* logbl(). PowerPC32/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define __logbl __logbl_power7
+
+#include <sysdeps/powerpc/power7/fpu/s_logbl.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-ppc32.c
new file mode 100644
index 0000000000..705de9f4e5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-ppc32.c
@@ -0,0 +1,21 @@
+/* logbl(). PowerPC32/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define __logbl __logbl_ppc32
+
+#include <sysdeps/ieee754/ldbl-128ibm/s_logbl.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl.c
new file mode 100644
index 0000000000..acc6700083
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl.c
@@ -0,0 +1,32 @@
+/* Multiple versions of logbl.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__logbl) __logbl_ppc32 attribute_hidden;
+extern __typeof (__logbl) __logbl_power7 attribute_hidden;
+
+libc_ifunc (__logbl,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __logbl_power7
+ : __logbl_ppc32);
+
+long_double_symbol (libm, __logbl, logbl);
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-power6x.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-power6x.S
new file mode 100644
index 0000000000..232e8f7642
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-power6x.S
@@ -0,0 +1,33 @@
+/* Round double to long int. POWER6x PowerPC32 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __lrint __lrint_power6x
+
+#include <sysdeps/powerpc/powerpc32/power6x/fpu/s_lrint.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-ppc32.S
new file mode 100644
index 0000000000..bdece6feb4
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint-ppc32.S
@@ -0,0 +1,31 @@
+/* Round double to long int. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __lrint __lrint_ppc32
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_lrint.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint.c
new file mode 100644
index 0000000000..03cf83edbd
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrint.c
@@ -0,0 +1,40 @@
+/* Multiple versions of lrint.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__lrint) __lrint_ppc32 attribute_hidden;
+extern __typeof (__lrint) __lrint_power6x attribute_hidden;
+
+libc_ifunc (__lrint,
+ (hwcap & PPC_FEATURE_POWER6_EXT) ?
+ __lrint_power6x
+ : __lrint_ppc32);
+
+weak_alias (__lrint, lrint)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__lrint, lrintl)
+strong_alias (__lrint, __lrintl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+compat_symbol (libm, __lrint, lrintl, GLIBC_2_1);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrintf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrintf.c
new file mode 100644
index 0000000000..204b8fbbf1
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lrintf.c
@@ -0,0 +1,31 @@
+/* Multiple versions of lrintf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include "init-arch.h"
+
+/* It's safe to use double-precision implementation for single-precision. */
+extern __typeof (__lrintf) __lrint_ppc32 attribute_hidden;
+extern __typeof (__lrintf) __lrint_power6x attribute_hidden;
+
+libc_ifunc (__lrintf,
+ (hwcap & PPC_FEATURE_POWER6_EXT) ?
+ __lrint_power6x
+ : __lrint_ppc32);
+
+weak_alias (__lrintf, lrintf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power5+.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power5+.S
new file mode 100644
index 0000000000..a5e1d1ac27
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power5+.S
@@ -0,0 +1,33 @@
+/* lround function. POWER5+, PowerPC32 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __lround __lround_power5plus
+
+#include <sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power6x.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power6x.S
new file mode 100644
index 0000000000..302521c883
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-power6x.S
@@ -0,0 +1,33 @@
+/* lround function. POWER6x, PowerPC32 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __lround __lround_power6x
+
+#include <sysdeps/powerpc/powerpc32/power6x/fpu/s_lround.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-ppc32.S
new file mode 100644
index 0000000000..8124cd7731
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround-ppc32.S
@@ -0,0 +1,31 @@
+/* lround function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __lround __lround_ppc32
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_lround.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround.c
new file mode 100644
index 0000000000..f21a7e84e9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lround.c
@@ -0,0 +1,43 @@
+/* Multiple versions of lround.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__lround) __lround_ppc32 attribute_hidden;
+extern __typeof (__lround) __lround_power5plus attribute_hidden;
+extern __typeof (__lround) __lround_power6x attribute_hidden;
+
+libc_ifunc (__lround,
+ (hwcap & PPC_FEATURE_POWER6_EXT) ?
+ __lround_power6x
+ : (hwcap & PPC_FEATURE_POWER5_PLUS) ?
+ __lround_power5plus
+ : __lround_ppc32);
+
+weak_alias (__lround, lround)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__lround, lroundl)
+strong_alias (__lround, __lroundl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+compat_symbol (libm, __lround, lroundl, GLIBC_2_1);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lroundf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lroundf.c
new file mode 100644
index 0000000000..3080637c58
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_lroundf.c
@@ -0,0 +1,34 @@
+/* Multiple versions of lroundf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include "init-arch.h"
+
+/* It's safe to use double-precision implementation for single-precision. */
+extern __typeof (__lroundf) __lround_ppc32 attribute_hidden;
+extern __typeof (__lroundf) __lround_power5plus attribute_hidden;
+extern __typeof (__lroundf) __lround_power6x attribute_hidden;
+
+libc_ifunc (__lroundf,
+ (hwcap & PPC_FEATURE_POWER6_EXT) ?
+ __lround_power6x
+ : (hwcap & PPC_FEATURE_POWER5_PLUS) ?
+ __lround_power5plus
+ : __lround_ppc32);
+
+weak_alias (__lroundf, lroundf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c
new file mode 100644
index 0000000000..ec0b42cc72
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c
@@ -0,0 +1,31 @@
+/* PowerPC/POWER5+ implementation for modf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __modf __modf_power5plus
+
+#include <sysdeps/powerpc/power5+/fpu/s_modf.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-ppc32.c
new file mode 100644
index 0000000000..666bf662ef
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-ppc32.c
@@ -0,0 +1,29 @@
+/* PowerPC32 default implementation for modf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+
+#define __modf __modf_ppc32
+
+#include <sysdeps/ieee754/dbl-64/s_modf.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf.c
new file mode 100644
index 0000000000..3f980837a8
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf.c
@@ -0,0 +1,44 @@
+/* Multiple versions of modf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__modf) __modf_ppc32 attribute_hidden;
+extern __typeof (__modf) __modf_power5plus attribute_hidden;
+
+libc_ifunc (__modf,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __modf_power5plus
+ : __modf_ppc32);
+
+weak_alias (__modf, modf)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__modf, __modfl)
+weak_alias (__modf, modfl)
+#endif
+#ifdef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __modf, modfl, GLIBC_2_0);
+# endif
+#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __modf, modfl, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c
new file mode 100644
index 0000000000..e729a389bb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c
@@ -0,0 +1,27 @@
+/* PowerPC/POWER5+ implementation for modff.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __modff __modff_power5plus
+
+#include <sysdeps/powerpc/power5+/fpu/s_modff.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-ppc32.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-ppc32.c
new file mode 100644
index 0000000000..08476b45c3
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-ppc32.c
@@ -0,0 +1,26 @@
+/* PowerPC32 default implementation for modff.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __modff __modff_ppc32
+
+#include <sysdeps/ieee754/flt-32/s_modff.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff.c
new file mode 100644
index 0000000000..0e591ba2e8
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff.c
@@ -0,0 +1,30 @@
+/* Multiple versions of modff.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include "init-arch.h"
+
+extern __typeof (__modff) __modff_ppc32 attribute_hidden;
+extern __typeof (__modff) __modff_power5plus attribute_hidden;
+
+libc_ifunc (__modff,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __modff_power5plus
+ : __modff_ppc32);
+
+weak_alias (__modff, modff)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round-power5+.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round-power5+.S
new file mode 100644
index 0000000000..e165bbdb31
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round-power5+.S
@@ -0,0 +1,33 @@
+/* round function. PowerPC32/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __round __round_power5plus
+
+#include <sysdeps/powerpc/powerpc32/power5+/fpu/s_round.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round-ppc32.S
new file mode 100644
index 0000000000..889318a2a2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round-ppc32.S
@@ -0,0 +1,31 @@
+/* round function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __round __round_ppc32
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_round.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round.c
new file mode 100644
index 0000000000..c21dfaf190
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_round.c
@@ -0,0 +1,40 @@
+/* Multiple versions of round.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__round) __round_ppc32 attribute_hidden;
+extern __typeof (__round) __round_power5plus attribute_hidden;
+
+libc_ifunc (__round,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __round_power5plus
+ : __round_ppc32);
+
+weak_alias (__round, round)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__round, __roundl)
+weak_alias (__round, roundl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+compat_symbol (libm, __round, roundl, GLIBC_2_1);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf-power5+.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf-power5+.S
new file mode 100644
index 0000000000..6cd21698fd
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf-power5+.S
@@ -0,0 +1,26 @@
+/* roundf function. PowerPC32/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#define __roundf __roundf_power5plus
+
+#include <sysdeps/powerpc/powerpc32/power5+/fpu/s_roundf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf-ppc32.S
new file mode 100644
index 0000000000..9787c5cc68
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf-ppc32.S
@@ -0,0 +1,27 @@
+/* roundf function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __roundf __roundf_ppc32
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_roundf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf.c
new file mode 100644
index 0000000000..94e66e15a1
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_roundf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of roundf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__roundf) __roundf_ppc32 attribute_hidden;
+extern __typeof (__roundf) __roundf_power5plus attribute_hidden;
+
+libc_ifunc (__roundf,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __roundf_power5plus
+ : __roundf_ppc32);
+
+weak_alias (__roundf, roundf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc-power5+.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc-power5+.S
new file mode 100644
index 0000000000..1969e9e650
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc-power5+.S
@@ -0,0 +1,33 @@
+/* trunc function. PowerPC32/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __trunc __trunc_power5plus
+
+#include <sysdeps/powerpc/powerpc32/power5+/fpu/s_trunc.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc-ppc32.S
new file mode 100644
index 0000000000..541b4edbae
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc-ppc32.S
@@ -0,0 +1,31 @@
+/* trunc function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __trunc __trunc_ppc32
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_trunc.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc.c
new file mode 100644
index 0000000000..1fdef37bd3
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_trunc.c
@@ -0,0 +1,40 @@
+/* Multiple versions of trunc.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__trunc) __trunc_ppc32 attribute_hidden;
+extern __typeof (__trunc) __trunc_power5plus attribute_hidden;
+
+libc_ifunc (__trunc,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __trunc_power5plus
+ : __trunc_ppc32);
+
+weak_alias (__trunc, trunc)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__trunc, __truncl)
+weak_alias (__trunc, truncl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+compat_symbol (libm, __trunc, truncl, GLIBC_2_1);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf-power5+.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf-power5+.S
new file mode 100644
index 0000000000..211f88ed61
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf-power5+.S
@@ -0,0 +1,26 @@
+/* truncf function. PowerPC32/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#define __truncf __truncf_power5plus
+
+#include <sysdeps/powerpc/powerpc32/power5+/fpu/s_truncf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf-ppc32.S
new file mode 100644
index 0000000000..a83f41303b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf-ppc32.S
@@ -0,0 +1,27 @@
+/* truncf function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __truncf __truncf_ppc32
+
+#include <sysdeps/powerpc/powerpc32/fpu/s_truncf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf.c
new file mode 100644
index 0000000000..779a614126
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_truncf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of truncf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__truncf) __truncf_ppc32 attribute_hidden;
+extern __typeof (__truncf) __truncf_power5plus attribute_hidden;
+
+libc_ifunc (__truncf,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __truncf_power5plus
+ : __truncf_ppc32);
+
+weak_alias (__truncf, truncf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt-power5.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt-power5.S
new file mode 100644
index 0000000000..1c0e8c86c0
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt-power5.S
@@ -0,0 +1,31 @@
+/* sqrt function. PowerPC32/POWER5 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __sqrt __sqrt_power5
+
+#include <sysdeps/powerpc/powerpc32/power5/fpu/w_sqrt.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt-ppc32.S
new file mode 100644
index 0000000000..81be92940d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt-ppc32.S
@@ -0,0 +1,31 @@
+/* sqrt function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __sqrt __sqrt_ppc32
+
+#include <sysdeps/powerpc/powerpc32/power4/fpu/w_sqrt.S>
diff --git a/sysdeps/powerpc/fpu/w_sqrt.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt.c
index 70f28dd4df..36a2007e83 100644
--- a/sysdeps/powerpc/fpu/w_sqrt.c
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrt.c
@@ -1,5 +1,5 @@
-/* Double-precision floating point square root wrapper.
- Copyright (C) 2004-2013 Free Software Foundation, Inc.
+/* Multiple versions of sqrt.
+ Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -17,31 +17,23 @@
<http://www.gnu.org/licenses/>. */
#include <math.h>
-#include <math_private.h>
-#include <fenv_libc.h>
#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
-double
-__sqrt (double x) /* wrapper sqrt */
-{
-#ifdef _IEEE_LIBM
- return __ieee754_sqrt (x);
-#else
- double z;
- z = __ieee754_sqrt (x);
- if (_LIB_VERSION == _IEEE_ || (x != x))
- return z;
-
- if (x < 0.0)
- return __kernel_standard (x, x, 26); /* sqrt(negative) */
- else
- return z;
-#endif
-}
+extern __typeof (__sqrt) __sqrt_ppc32 attribute_hidden;
+extern __typeof (__sqrt) __sqrt_power5 attribute_hidden;
+
+libc_ifunc (__sqrt,
+ (hwcap & PPC_FEATURE_POWER5)
+ ? __sqrt_power5
+ : __sqrt_ppc32);
weak_alias (__sqrt, sqrt)
+
#ifdef NO_LONG_DOUBLE
- strong_alias (__sqrt, __sqrtl) weak_alias (__sqrt, sqrtl)
+strong_alias (__sqrt, __sqrtl)
+weak_alias (__sqrt, sqrtl)
#endif
#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
compat_symbol (libm, __sqrt, sqrtl, GLIBC_2_0);
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf-power5.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf-power5.S
new file mode 100644
index 0000000000..e65aab4f02
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf-power5.S
@@ -0,0 +1,26 @@
+/* sqrtf function. PowerPC32/POWER5 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __sqrtf __sqrtf_power5
+
+#include <sysdeps/powerpc/powerpc32/power5/fpu/w_sqrtf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf-ppc32.S b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf-ppc32.S
new file mode 100644
index 0000000000..647fecc194
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf-ppc32.S
@@ -0,0 +1,26 @@
+/* sqrtf function. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __sqrtf __sqrtf_ppc32
+
+#include <sysdeps/powerpc/powerpc32/power4/fpu/w_sqrtf.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf.c b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf.c
new file mode 100644
index 0000000000..90a05f4251
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/multiarch/w_sqrtf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of sqrtf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__sqrtf) __sqrtf_ppc32 attribute_hidden;
+extern __typeof (__sqrtf) __sqrtf_power5 attribute_hidden;
+
+libc_ifunc (__sqrtf,
+ (hwcap & PPC_FEATURE_POWER5)
+ ? __sqrtf_power5
+ : __sqrtf_ppc32);
+
+weak_alias (__sqrtf, sqrtf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S b/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S
index 55b2850fd1..e7a88feb4b 100644
--- a/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/s_llrint.S
@@ -29,8 +29,8 @@ ENTRY (__llrint)
nop /* Insure the following load is in a different dispatch group */
nop /* to avoid pipe stall on POWER4&5. */
nop
- lwz r3,8(r1)
- lwz r4,12(r1)
+ lwz r3,8+HIWORD(r1)
+ lwz r4,8+LOWORD(r1)
addi r1,r1,16
blr
END (__llrint)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S b/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S
index cc80fcb02a..da24ad38d3 100644
--- a/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/s_llrintf.S
@@ -28,8 +28,8 @@ ENTRY (__llrintf)
nop /* Insure the following load is in a different dispatch group */
nop /* to avoid pipe stall on POWER4&5. */
nop
- lwz r3,8(r1)
- lwz r4,12(r1)
+ lwz r3,8+HIWORD(r1)
+ lwz r4,8+LOWORD(r1)
addi r1,r1,16
blr
END (__llrintf)
diff --git a/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S b/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S
index 631180f072..7246ca4d14 100644
--- a/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S
+++ b/sysdeps/powerpc/powerpc32/power4/fpu/s_llround.S
@@ -19,12 +19,10 @@
#include <sysdep.h>
#include <math_ldbl_opt.h>
- .section .rodata.cst12,"aM",@progbits,12
+ .section .rodata.cst8,"aM",@progbits,8
.align 3
- .LC0: /* 0x1.0000000000000p+52 == 2^52 */
- .long 0x43300000
- .long 0x00000000
- .long 0x3f000000 /* Use this for 0.5 */
+ .LC0: .long (52+127)<<23 /* 0x1p+52 */
+ .long (-1+127)<<23 /* 0.5 */
.section ".text"
@@ -57,12 +55,12 @@ ENTRY (__llround)
addi r9,r9,.LC0-got_label@l
mtlr r11
cfi_same_value (lr)
- lfd fp9,0(r9)
- lfs fp10,8(r9)
+ lfs fp9,0(r9)
+ lfs fp10,4(r9)
#else
lis r9,.LC0@ha
- lfd fp9,.LC0@l(r9) /* Load 2^52 into fpr9. */
- lfs fp10,.LC0@l+8(r9) /* Load 0.5 into fpr10. */
+ lfs fp9,.LC0@l(r9) /* Load 2^52 into fpr9. */
+ lfs fp10,.LC0@l+4(r9) /* Load 0.5 into fpr10. */
#endif
fabs fp2,fp1 /* Get the absolute value of x. */
fsub fp12,fp10,fp10 /* Compute 0.0 into fpr12. */
@@ -80,8 +78,8 @@ ENTRY (__llround)
nop
nop
nop
- lwz r4,12(r1) /* Load return as integer. */
- lwz r3,8(r1)
+ lwz r3,8+HIWORD(r1) /* Load return as integer. */
+ lwz r4,8+LOWORD(r1)
.Lout:
addi r1,r1,16
blr
diff --git a/sysdeps/powerpc/powerpc32/power4/hp-timing.h b/sysdeps/powerpc/powerpc32/power4/hp-timing.h
index 7d6c96e9e9..4e42374eae 100644
--- a/sysdeps/powerpc/powerpc32/power4/hp-timing.h
+++ b/sysdeps/powerpc/powerpc32/power4/hp-timing.h
@@ -87,18 +87,15 @@ typedef unsigned long long int hp_timing_t;
#define HP_TIMING_NOW(Var) \
do { \
- union { long long ll; long ii[2]; } _var; \
- long tmp; \
- __asm__ __volatile__ ( \
- "1: mfspr %0,269;" \
- " mfspr %1,268;" \
- " mfspr %2,269;" \
- " cmpw %0,%2;" \
- " bne 1b;" \
- : "=r" (_var.ii[0]), "=r" (_var.ii[1]) , "=r" (tmp) \
- : : "cr0" \
- ); \
- Var = _var.ll; \
+ unsigned int hi, lo, tmp; \
+ __asm__ __volatile__ ("1: mfspr %0,269;" \
+ " mfspr %1,268;" \
+ " mfspr %2,269;" \
+ " cmpw %0,%2;" \
+ " bne 1b;" \
+ : "=&r" (hi), "=&r" (lo), "=&r" (tmp) \
+ : : "cr0"); \
+ Var = ((hp_timing_t) hi << 32) | lo; \
} while (0)
diff --git a/sysdeps/powerpc/powerpc32/power4/memcmp.S b/sysdeps/powerpc/powerpc32/power4/memcmp.S
index 9a455a3c68..35e162667d 100644
--- a/sysdeps/powerpc/powerpc32/power4/memcmp.S
+++ b/sysdeps/powerpc/powerpc32/power4/memcmp.S
@@ -1,4 +1,4 @@
-/* Optimized strcmp implementation for PowerPC64.
+/* Optimized strcmp implementation for PowerPC32.
Copyright (C) 2003-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -18,13 +18,14 @@
#include <sysdep.h>
-/* int [r3] memcmp (const char *s1 [r3], const char *s2 [r4], size_t size [r5]) */
+/* int [r3] memcmp (const char *s1 [r3],
+ const char *s2 [r4],
+ size_t size [r5]) */
.machine power4
EALIGN (memcmp, 4, 0)
CALL_MCOUNT
-#define rTMP r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -35,33 +36,32 @@ EALIGN (memcmp, 4, 0)
#define rWORD4 r9 /* next word in s2 */
#define rWORD5 r10 /* next word in s1 */
#define rWORD6 r11 /* next word in s2 */
-#define rBITDIF r12 /* bits that differ in s1 & s2 words */
#define rWORD7 r30 /* next word in s1 */
#define rWORD8 r31 /* next word in s2 */
- xor rTMP, rSTR2, rSTR1
+ xor r0, rSTR2, rSTR1
cmplwi cr6, rN, 0
cmplwi cr1, rN, 12
- clrlwi. rTMP, rTMP, 30
- clrlwi rBITDIF, rSTR1, 30
- cmplwi cr5, rBITDIF, 0
+ clrlwi. r0, r0, 30
+ clrlwi r12, rSTR1, 30
+ cmplwi cr5, r12, 0
beq- cr6, L(zeroLength)
- dcbt 0,rSTR1
- dcbt 0,rSTR2
+ dcbt 0, rSTR1
+ dcbt 0, rSTR2
/* If less than 8 bytes or not aligned, use the unaligned
byte loop. */
blt cr1, L(bytealigned)
- stwu 1,-64(1)
+ stwu 1, -64(r1)
cfi_adjust_cfa_offset(64)
- stw r31,48(1)
- cfi_offset(31,(48-64))
- stw r30,44(1)
- cfi_offset(30,(44-64))
+ stw rWORD8, 48(r1)
+ cfi_offset(rWORD8, (48-64))
+ stw rWORD7, 44(r1)
+ cfi_offset(rWORD7, (44-64))
bne L(unaligned)
/* At this point we know both strings have the same alignment and the
- compare length is at least 8 bytes. rBITDIF contains the low order
+ compare length is at least 8 bytes. r12 contains the low order
2 bits of rSTR1 and cr5 contains the result of the logical compare
- of rBITDIF to 0. If rBITDIF == 0 then we are already word
+ of r12 to 0. If r12 == 0 then we are already word
aligned and can perform the word aligned loop.
Otherwise we know the two strings have the same alignment (but not
@@ -70,74 +70,95 @@ EALIGN (memcmp, 4, 0)
eliminate bits preceding the first byte. Since we want to join the
normal (word aligned) compare loop, starting at the second word,
we need to adjust the length (rN) and special case the loop
- versioning for the first word. This insures that the loop count is
+ versioning for the first word. This ensures that the loop count is
correct and the first word (shifted) is in the expected register pair. */
- .align 4
+ .align 4
L(samealignment):
clrrwi rSTR1, rSTR1, 2
clrrwi rSTR2, rSTR2, 2
beq cr5, L(Waligned)
- add rN, rN, rBITDIF
- slwi r11, rBITDIF, 3
- srwi rTMP, rN, 4 /* Divide by 16 */
- andi. rBITDIF, rN, 12 /* Get the word remainder */
+ add rN, rN, r12
+ slwi rWORD6, r12, 3
+ srwi r0, rN, 4 /* Divide by 16 */
+ andi. r12, rN, 12 /* Get the word remainder */
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 0(rSTR1)
lwz rWORD2, 0(rSTR2)
- cmplwi cr1, rBITDIF, 8
+#endif
+ cmplwi cr1, r12, 8
cmplwi cr7, rN, 16
clrlwi rN, rN, 30
beq L(dPs4)
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
bgt cr1, L(dPs3)
beq cr1, L(dPs2)
/* Remainder is 4 */
- .align 3
+ .align 3
L(dsP1):
- slw rWORD5, rWORD1, r11
- slw rWORD6, rWORD2, r11
+ slw rWORD5, rWORD1, rWORD6
+ slw rWORD6, rWORD2, rWORD6
cmplw cr5, rWORD5, rWORD6
blt cr7, L(dP1x)
/* Do something useful in this cycle since we have to branch anyway. */
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 4(rSTR1)
lwz rWORD2, 4(rSTR2)
- cmplw cr0, rWORD1, rWORD2
+#endif
+ cmplw cr7, rWORD1, rWORD2
b L(dP1e)
/* Remainder is 8 */
- .align 4
+ .align 4
L(dPs2):
- slw rWORD5, rWORD1, r11
- slw rWORD6, rWORD2, r11
+ slw rWORD5, rWORD1, rWORD6
+ slw rWORD6, rWORD2, rWORD6
cmplw cr6, rWORD5, rWORD6
blt cr7, L(dP2x)
/* Do something useful in this cycle since we have to branch anyway. */
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD7, 4(rSTR1)
lwz rWORD8, 4(rSTR2)
+#endif
cmplw cr5, rWORD7, rWORD8
b L(dP2e)
/* Remainder is 12 */
- .align 4
+ .align 4
L(dPs3):
- slw rWORD3, rWORD1, r11
- slw rWORD4, rWORD2, r11
+ slw rWORD3, rWORD1, rWORD6
+ slw rWORD4, rWORD2, rWORD6
cmplw cr1, rWORD3, rWORD4
b L(dP3e)
/* Count is a multiple of 16, remainder is 0 */
- .align 4
+ .align 4
L(dPs4):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
- slw rWORD1, rWORD1, r11
- slw rWORD2, rWORD2, r11
- cmplw cr0, rWORD1, rWORD2
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+ slw rWORD1, rWORD1, rWORD6
+ slw rWORD2, rWORD2, rWORD6
+ cmplw cr7, rWORD1, rWORD2
b L(dP4e)
/* At this point we know both strings are word aligned and the
compare length is at least 8 bytes. */
- .align 4
+ .align 4
L(Waligned):
- andi. rBITDIF, rN, 12 /* Get the word remainder */
- srwi rTMP, rN, 4 /* Divide by 16 */
- cmplwi cr1, rBITDIF, 8
+ andi. r12, rN, 12 /* Get the word remainder */
+ srwi r0, rN, 4 /* Divide by 16 */
+ cmplwi cr1, r12, 8
cmplwi cr7, rN, 16
clrlwi rN, rN, 30
beq L(dP4)
@@ -145,177 +166,352 @@ L(Waligned):
beq cr1, L(dP2)
/* Remainder is 4 */
- .align 4
+ .align 4
L(dP1):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
/* Normally we'd use rWORD7/rWORD8 here, but since we might exit early
(8-15 byte compare), we want to use only volatile registers. This
means we can avoid restoring non-volatile registers since we did not
change any on the early exit path. The key here is the non-early
exit path only cares about the condition code (cr5), not about which
register pair was used. */
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD5, 0(rSTR1)
lwz rWORD6, 0(rSTR2)
+#endif
cmplw cr5, rWORD5, rWORD6
blt cr7, L(dP1x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 4(rSTR1)
lwz rWORD2, 4(rSTR2)
- cmplw cr0, rWORD1, rWORD2
+#endif
+ cmplw cr7, rWORD1, rWORD2
L(dP1e):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD3, 8(rSTR1)
lwz rWORD4, 8(rSTR2)
+#endif
cmplw cr1, rWORD3, rWORD4
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD5, 12(rSTR1)
lwz rWORD6, 12(rSTR2)
+#endif
cmplw cr6, rWORD5, rWORD6
- bne cr5, L(dLcr5)
- bne cr0, L(dLcr0)
+ bne cr5, L(dLcr5x)
+ bne cr7, L(dLcr7x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwzu rWORD7, 16(rSTR1)
lwzu rWORD8, 16(rSTR2)
+#endif
bne cr1, L(dLcr1)
cmplw cr5, rWORD7, rWORD8
bdnz L(dLoop)
bne cr6, L(dLcr6)
- lwz r30,44(1)
- lwz r31,48(1)
- .align 3
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
+ .align 3
L(dP1x):
slwi. r12, rN, 3
- bne cr5, L(dLcr5)
+ bne cr5, L(dLcr5x)
subfic rN, r12, 32 /* Shift count is 32 - (rN * 8). */
- lwz 1,0(1)
+ addi 1, 1, 64
+ cfi_adjust_cfa_offset(-64)
bne L(d00)
li rRTN, 0
blr
/* Remainder is 8 */
- .align 4
+ .align 4
+ cfi_adjust_cfa_offset(64)
L(dP2):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD5, 0(rSTR1)
lwz rWORD6, 0(rSTR2)
+#endif
cmplw cr6, rWORD5, rWORD6
blt cr7, L(dP2x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD7, 4(rSTR1)
lwz rWORD8, 4(rSTR2)
+#endif
cmplw cr5, rWORD7, rWORD8
L(dP2e):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 8(rSTR1)
lwz rWORD2, 8(rSTR2)
- cmplw cr0, rWORD1, rWORD2
+#endif
+ cmplw cr7, rWORD1, rWORD2
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD3, 12(rSTR1)
lwz rWORD4, 12(rSTR2)
+#endif
cmplw cr1, rWORD3, rWORD4
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 4
addi rSTR2, rSTR2, 4
+#endif
bne cr6, L(dLcr6)
bne cr5, L(dLcr5)
b L(dLoop2)
/* Again we are on a early exit path (16-23 byte compare), we want to
only use volatile registers and avoid restoring non-volatile
registers. */
- .align 4
+ .align 4
L(dP2x):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD3, 4(rSTR1)
lwz rWORD4, 4(rSTR2)
- cmplw cr5, rWORD3, rWORD4
+#endif
+ cmplw cr1, rWORD3, rWORD4
slwi. r12, rN, 3
- bne cr6, L(dLcr6)
+ bne cr6, L(dLcr6x)
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 4
addi rSTR2, rSTR2, 4
- bne cr5, L(dLcr5)
+#endif
+ bne cr1, L(dLcr1x)
subfic rN, r12, 32 /* Shift count is 32 - (rN * 8). */
- lwz 1,0(1)
+ addi 1, 1, 64
+ cfi_adjust_cfa_offset(-64)
bne L(d00)
li rRTN, 0
blr
/* Remainder is 12 */
- .align 4
+ .align 4
+ cfi_adjust_cfa_offset(64)
L(dP3):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD3, 0(rSTR1)
lwz rWORD4, 0(rSTR2)
+#endif
cmplw cr1, rWORD3, rWORD4
L(dP3e):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD5, 4(rSTR1)
lwz rWORD6, 4(rSTR2)
+#endif
cmplw cr6, rWORD5, rWORD6
blt cr7, L(dP3x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD7, 8(rSTR1)
lwz rWORD8, 8(rSTR2)
+#endif
cmplw cr5, rWORD7, rWORD8
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 12(rSTR1)
lwz rWORD2, 12(rSTR2)
- cmplw cr0, rWORD1, rWORD2
+#endif
+ cmplw cr7, rWORD1, rWORD2
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 8
addi rSTR2, rSTR2, 8
+#endif
bne cr1, L(dLcr1)
bne cr6, L(dLcr6)
b L(dLoop1)
/* Again we are on a early exit path (24-31 byte compare), we want to
only use volatile registers and avoid restoring non-volatile
registers. */
- .align 4
+ .align 4
L(dP3x):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 8(rSTR1)
lwz rWORD2, 8(rSTR2)
- cmplw cr5, rWORD1, rWORD2
+#endif
+ cmplw cr7, rWORD1, rWORD2
slwi. r12, rN, 3
- bne cr1, L(dLcr1)
+ bne cr1, L(dLcr1x)
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 8
addi rSTR2, rSTR2, 8
- bne cr6, L(dLcr6)
+#endif
+ bne cr6, L(dLcr6x)
subfic rN, r12, 32 /* Shift count is 32 - (rN * 8). */
- bne cr5, L(dLcr5)
- lwz 1,0(1)
+ bne cr7, L(dLcr7x)
+ addi 1, 1, 64
+ cfi_adjust_cfa_offset(-64)
bne L(d00)
li rRTN, 0
blr
/* Count is a multiple of 16, remainder is 0 */
- .align 4
+ .align 4
+ cfi_adjust_cfa_offset(64)
L(dP4):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 0(rSTR1)
lwz rWORD2, 0(rSTR2)
- cmplw cr0, rWORD1, rWORD2
+#endif
+ cmplw cr7, rWORD1, rWORD2
L(dP4e):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD3, 4(rSTR1)
lwz rWORD4, 4(rSTR2)
+#endif
cmplw cr1, rWORD3, rWORD4
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD5, 8(rSTR1)
lwz rWORD6, 8(rSTR2)
+#endif
cmplw cr6, rWORD5, rWORD6
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwzu rWORD7, 12(rSTR1)
lwzu rWORD8, 12(rSTR2)
+#endif
cmplw cr5, rWORD7, rWORD8
- bne cr0, L(dLcr0)
+ bne cr7, L(dLcr7)
bne cr1, L(dLcr1)
bdz- L(d24) /* Adjust CTR as we start with +4 */
/* This is the primary loop */
- .align 4
+ .align 4
L(dLoop):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 4(rSTR1)
lwz rWORD2, 4(rSTR2)
+#endif
cmplw cr1, rWORD3, rWORD4
bne cr6, L(dLcr6)
L(dLoop1):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD3, 8(rSTR1)
lwz rWORD4, 8(rSTR2)
+#endif
cmplw cr6, rWORD5, rWORD6
bne cr5, L(dLcr5)
L(dLoop2):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD5, 12(rSTR1)
lwz rWORD6, 12(rSTR2)
+#endif
cmplw cr5, rWORD7, rWORD8
- bne cr0, L(dLcr0)
+ bne cr7, L(dLcr7)
L(dLoop3):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwzu rWORD7, 16(rSTR1)
lwzu rWORD8, 16(rSTR2)
+#endif
bne- cr1, L(dLcr1)
- cmplw cr0, rWORD1, rWORD2
+ cmplw cr7, rWORD1, rWORD2
bdnz+ L(dLoop)
L(dL4):
@@ -325,7 +521,7 @@ L(dL4):
bne cr5, L(dLcr5)
cmplw cr5, rWORD7, rWORD8
L(d44):
- bne cr0, L(dLcr0)
+ bne cr7, L(dLcr7)
L(d34):
bne cr1, L(dLcr1)
L(d24):
@@ -334,69 +530,82 @@ L(d14):
slwi. r12, rN, 3
bne cr5, L(dLcr5)
L(d04):
- lwz r30,44(1)
- lwz r31,48(1)
- lwz 1,0(1)
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
+ addi 1, 1, 64
+ cfi_adjust_cfa_offset(-64)
subfic rN, r12, 32 /* Shift count is 32 - (rN * 8). */
beq L(zeroLength)
/* At this point we have a remainder of 1 to 3 bytes to compare. Since
we are aligned it is safe to load the whole word, and use
- shift right to eliminate bits beyond the compare length. */
+ shift right to eliminate bits beyond the compare length. */
L(d00):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 4(rSTR1)
lwz rWORD2, 4(rSTR2)
+#endif
srw rWORD1, rWORD1, rN
srw rWORD2, rWORD2, rN
- cmplw rWORD1,rWORD2
- li rRTN,0
- beqlr
- li rRTN,1
- bgtlr
- li rRTN,-1
- blr
-
- .align 4
-L(dLcr0):
- lwz r30,44(1)
- lwz r31,48(1)
+ sub rRTN, rWORD1, rWORD2
+ blr
+
+ .align 4
+ cfi_adjust_cfa_offset(64)
+L(dLcr7):
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
+L(dLcr7x):
li rRTN, 1
- lwz 1,0(1)
- bgtlr cr0
+ addi 1, 1, 64
+ cfi_adjust_cfa_offset(-64)
+ bgtlr cr7
li rRTN, -1
blr
- .align 4
+ .align 4
+ cfi_adjust_cfa_offset(64)
L(dLcr1):
- lwz r30,44(1)
- lwz r31,48(1)
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
+L(dLcr1x):
li rRTN, 1
- lwz 1,0(1)
+ addi 1, 1, 64
+ cfi_adjust_cfa_offset(-64)
bgtlr cr1
li rRTN, -1
blr
- .align 4
+ .align 4
+ cfi_adjust_cfa_offset(64)
L(dLcr6):
- lwz r30,44(1)
- lwz r31,48(1)
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
+L(dLcr6x):
li rRTN, 1
- lwz 1,0(1)
+ addi 1, 1, 64
+ cfi_adjust_cfa_offset(-64)
bgtlr cr6
li rRTN, -1
blr
- .align 4
+ .align 4
+ cfi_adjust_cfa_offset(64)
L(dLcr5):
- lwz r30,44(1)
- lwz r31,48(1)
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
L(dLcr5x):
li rRTN, 1
- lwz 1,0(1)
+ addi 1, 1, 64
+ cfi_adjust_cfa_offset(-64)
bgtlr cr5
li rRTN, -1
blr
- .align 4
+ .align 4
L(bytealigned):
- cfi_adjust_cfa_offset(-64)
- mtctr rN /* Power4 wants mtctr 1st in dispatch group */
+ mtctr rN /* Power4 wants mtctr 1st in dispatch group */
/* We need to prime this loop. This loop is swing modulo scheduled
to avoid pipe delays. The dependent instruction latencies (load to
@@ -411,7 +620,7 @@ L(bytealigned):
lbz rWORD1, 0(rSTR1)
lbz rWORD2, 0(rSTR2)
bdz- L(b11)
- cmplw cr0, rWORD1, rWORD2
+ cmplw cr7, rWORD1, rWORD2
lbz rWORD3, 1(rSTR1)
lbz rWORD4, 1(rSTR2)
bdz- L(b12)
@@ -419,11 +628,11 @@ L(bytealigned):
lbzu rWORD5, 2(rSTR1)
lbzu rWORD6, 2(rSTR2)
bdz- L(b13)
- .align 4
+ .align 4
L(bLoop):
lbzu rWORD1, 1(rSTR1)
lbzu rWORD2, 1(rSTR2)
- bne- cr0, L(bLcr0)
+ bne- cr7, L(bLcr7)
cmplw cr6, rWORD5, rWORD6
bdz- L(b3i)
@@ -432,7 +641,7 @@ L(bLoop):
lbzu rWORD4, 1(rSTR2)
bne- cr1, L(bLcr1)
- cmplw cr0, rWORD1, rWORD2
+ cmplw cr7, rWORD1, rWORD2
bdz- L(b2i)
lbzu rWORD5, 1(rSTR1)
@@ -449,23 +658,23 @@ L(bLoop):
tested. In this case we must complete the pending operations
before returning. */
L(b1i):
- bne- cr0, L(bLcr0)
+ bne- cr7, L(bLcr7)
bne- cr1, L(bLcr1)
b L(bx56)
- .align 4
+ .align 4
L(b2i):
bne- cr6, L(bLcr6)
- bne- cr0, L(bLcr0)
+ bne- cr7, L(bLcr7)
b L(bx34)
- .align 4
+ .align 4
L(b3i):
bne- cr1, L(bLcr1)
bne- cr6, L(bLcr6)
b L(bx12)
- .align 4
-L(bLcr0):
+ .align 4
+L(bLcr7):
li rRTN, 1
- bgtlr cr0
+ bgtlr cr7
li rRTN, -1
blr
L(bLcr1):
@@ -480,36 +689,31 @@ L(bLcr6):
blr
L(b13):
- bne- cr0, L(bx12)
+ bne- cr7, L(bx12)
bne- cr1, L(bx34)
L(bx56):
sub rRTN, rWORD5, rWORD6
blr
nop
L(b12):
- bne- cr0, L(bx12)
+ bne- cr7, L(bx12)
L(bx34):
sub rRTN, rWORD3, rWORD4
blr
-
L(b11):
L(bx12):
sub rRTN, rWORD1, rWORD2
blr
-
- .align 4
-L(zeroLengthReturn):
-
+ .align 4
L(zeroLength):
li rRTN, 0
blr
- cfi_adjust_cfa_offset(64)
- .align 4
+ .align 4
/* At this point we know the strings have different alignment and the
- compare length is at least 8 bytes. rBITDIF contains the low order
+ compare length is at least 8 bytes. r12 contains the low order
2 bits of rSTR1 and cr5 contains the result of the logical compare
- of rBITDIF to 0. If rBITDIF == 0 then rStr1 is word aligned and can
+ of r12 to 0. If r12 == 0 then rStr1 is word aligned and can
perform the Wunaligned loop.
Otherwise we know that rSTR1 is not already word aligned yet.
@@ -518,79 +722,88 @@ L(zeroLength):
eliminate bits preceding the first byte. Since we want to join the
normal (Wualigned) compare loop, starting at the second word,
we need to adjust the length (rN) and special case the loop
- versioning for the first W. This insures that the loop count is
+ versioning for the first W. This ensures that the loop count is
correct and the first W (shifted) is in the expected resister pair. */
#define rSHL r29 /* Unaligned shift left count. */
#define rSHR r28 /* Unaligned shift right count. */
-#define rB r27 /* Left rotation temp for rWORD2. */
-#define rD r26 /* Left rotation temp for rWORD4. */
-#define rF r25 /* Left rotation temp for rWORD6. */
-#define rH r24 /* Left rotation temp for rWORD8. */
-#define rA r0 /* Right rotation temp for rWORD2. */
-#define rC r12 /* Right rotation temp for rWORD4. */
-#define rE r0 /* Right rotation temp for rWORD6. */
-#define rG r12 /* Right rotation temp for rWORD8. */
+#define rWORD8_SHIFT r27 /* Left rotation temp for rWORD2. */
+#define rWORD2_SHIFT r26 /* Left rotation temp for rWORD4. */
+#define rWORD4_SHIFT r25 /* Left rotation temp for rWORD6. */
+#define rWORD6_SHIFT r24 /* Left rotation temp for rWORD8. */
+ cfi_adjust_cfa_offset(64)
L(unaligned):
- stw r29,40(r1)
- cfi_offset(r29,(40-64))
+ stw rSHL, 40(r1)
+ cfi_offset(rSHL, (40-64))
clrlwi rSHL, rSTR2, 30
- stw r28,36(r1)
- cfi_offset(r28,(36-64))
+ stw rSHR, 36(r1)
+ cfi_offset(rSHR, (36-64))
beq cr5, L(Wunaligned)
- stw r27,32(r1)
- cfi_offset(r27,(32-64))
+ stw rWORD8_SHIFT, 32(r1)
+ cfi_offset(rWORD8_SHIFT, (32-64))
/* Adjust the logical start of rSTR2 to compensate for the extra bits
in the 1st rSTR1 W. */
- sub r27, rSTR2, rBITDIF
+ sub rWORD8_SHIFT, rSTR2, r12
/* But do not attempt to address the W before that W that contains
the actual start of rSTR2. */
clrrwi rSTR2, rSTR2, 2
- stw r26,28(r1)
- cfi_offset(r26,(28-64))
-/* Compute the left/right shift counts for the unalign rSTR2,
+ stw rWORD2_SHIFT, 28(r1)
+ cfi_offset(rWORD2_SHIFT, (28-64))
+/* Compute the left/right shift counts for the unaligned rSTR2,
compensating for the logical (W aligned) start of rSTR1. */
- clrlwi rSHL, r27, 30
+ clrlwi rSHL, rWORD8_SHIFT, 30
clrrwi rSTR1, rSTR1, 2
- stw r25,24(r1)
- cfi_offset(r25,(24-64))
+ stw rWORD4_SHIFT, 24(r1)
+ cfi_offset(rWORD4_SHIFT, (24-64))
slwi rSHL, rSHL, 3
- cmplw cr5, r27, rSTR2
- add rN, rN, rBITDIF
- slwi r11, rBITDIF, 3
- stw r24,20(r1)
- cfi_offset(r24,(20-64))
+ cmplw cr5, rWORD8_SHIFT, rSTR2
+ add rN, rN, r12
+ slwi rWORD6, r12, 3
+ stw rWORD6_SHIFT, 20(r1)
+ cfi_offset(rWORD6_SHIFT, (20-64))
subfic rSHR, rSHL, 32
- srwi rTMP, rN, 4 /* Divide by 16 */
- andi. rBITDIF, rN, 12 /* Get the W remainder */
+ srwi r0, rN, 4 /* Divide by 16 */
+ andi. r12, rN, 12 /* Get the W remainder */
/* We normally need to load 2 Ws to start the unaligned rSTR2, but in
this special case those bits may be discarded anyway. Also we
must avoid loading a W where none of the bits are part of rSTR2 as
this may cross a page boundary and cause a page fault. */
li rWORD8, 0
blt cr5, L(dus0)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD8, 0(rSTR2)
- la rSTR2, 4(rSTR2)
+ addi rSTR2, rSTR2, 4
+#endif
slw rWORD8, rWORD8, rSHL
L(dus0):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 0(rSTR1)
lwz rWORD2, 0(rSTR2)
- cmplwi cr1, rBITDIF, 8
+#endif
+ cmplwi cr1, r12, 8
cmplwi cr7, rN, 16
- srw rG, rWORD2, rSHR
+ srw r12, rWORD2, rSHR
clrlwi rN, rN, 30
beq L(duPs4)
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
- or rWORD8, rG, rWORD8
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+ or rWORD8, r12, rWORD8
bgt cr1, L(duPs3)
beq cr1, L(duPs2)
/* Remainder is 4 */
- .align 4
+ .align 4
L(dusP1):
- slw rB, rWORD2, rSHL
- slw rWORD7, rWORD1, r11
- slw rWORD8, rWORD8, r11
+ slw rWORD8_SHIFT, rWORD2, rSHL
+ slw rWORD7, rWORD1, rWORD6
+ slw rWORD8, rWORD8, rWORD6
bge cr7, L(duP1e)
/* At this point we exit early with the first word compare
complete and remainder of 0 to 3 bytes. See L(du14) for details on
@@ -600,95 +813,133 @@ L(dusP1):
bne cr5, L(duLcr5)
cmplw cr7, rN, rSHR
beq L(duZeroReturn)
- li rA, 0
+ li r0, 0
ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD2, 4(rSTR2)
- srw rA, rWORD2, rSHR
+#endif
+ srw r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 8 */
- .align 4
+ .align 4
L(duPs2):
- slw rH, rWORD2, rSHL
- slw rWORD5, rWORD1, r11
- slw rWORD6, rWORD8, r11
+ slw rWORD6_SHIFT, rWORD2, rSHL
+ slw rWORD5, rWORD1, rWORD6
+ slw rWORD6, rWORD8, rWORD6
b L(duP2e)
/* Remainder is 12 */
- .align 4
+ .align 4
L(duPs3):
- slw rF, rWORD2, rSHL
- slw rWORD3, rWORD1, r11
- slw rWORD4, rWORD8, r11
+ slw rWORD4_SHIFT, rWORD2, rSHL
+ slw rWORD3, rWORD1, rWORD6
+ slw rWORD4, rWORD8, rWORD6
b L(duP3e)
/* Count is a multiple of 16, remainder is 0 */
- .align 4
+ .align 4
L(duPs4):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
- or rWORD8, rG, rWORD8
- slw rD, rWORD2, rSHL
- slw rWORD1, rWORD1, r11
- slw rWORD2, rWORD8, r11
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+ or rWORD8, r12, rWORD8
+ slw rWORD2_SHIFT, rWORD2, rSHL
+ slw rWORD1, rWORD1, rWORD6
+ slw rWORD2, rWORD8, rWORD6
b L(duP4e)
/* At this point we know rSTR1 is word aligned and the
compare length is at least 8 bytes. */
- .align 4
+ .align 4
L(Wunaligned):
- stw r27,32(r1)
- cfi_offset(r27,(32-64))
+ stw rWORD8_SHIFT, 32(r1)
+ cfi_offset(rWORD8_SHIFT, (32-64))
clrrwi rSTR2, rSTR2, 2
- stw r26,28(r1)
- cfi_offset(r26,(28-64))
- srwi rTMP, rN, 4 /* Divide by 16 */
- stw r25,24(r1)
- cfi_offset(r25,(24-64))
- andi. rBITDIF, rN, 12 /* Get the W remainder */
- stw r24,20(r1)
- cfi_offset(r24,(20-64))
+ stw rWORD2_SHIFT, 28(r1)
+ cfi_offset(rWORD2_SHIFT, (28-64))
+ srwi r0, rN, 4 /* Divide by 16 */
+ stw rWORD4_SHIFT, 24(r1)
+ cfi_offset(rWORD4_SHIFT, (24-64))
+ andi. r12, rN, 12 /* Get the W remainder */
+ stw rWORD6_SHIFT, 20(r1)
+ cfi_offset(rWORD6_SHIFT, (20-64))
slwi rSHL, rSHL, 3
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD6, 0(rSTR2)
lwzu rWORD8, 4(rSTR2)
- cmplwi cr1, rBITDIF, 8
+#endif
+ cmplwi cr1, r12, 8
cmplwi cr7, rN, 16
clrlwi rN, rN, 30
subfic rSHR, rSHL, 32
- slw rH, rWORD6, rSHL
+ slw rWORD6_SHIFT, rWORD6, rSHL
beq L(duP4)
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
bgt cr1, L(duP3)
beq cr1, L(duP2)
/* Remainder is 4 */
- .align 4
+ .align 4
L(duP1):
- srw rG, rWORD8, rSHR
+ srw r12, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ addi rSTR1, rSTR1, 4
+#else
lwz rWORD7, 0(rSTR1)
- slw rB, rWORD8, rSHL
- or rWORD8, rG, rH
+#endif
+ slw rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
blt cr7, L(duP1x)
L(duP1e):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 4(rSTR1)
lwz rWORD2, 4(rSTR2)
+#endif
cmplw cr5, rWORD7, rWORD8
- srw rA, rWORD2, rSHR
- slw rD, rWORD2, rSHL
- or rWORD2, rA, rB
+ srw r0, rWORD2, rSHR
+ slw rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD3, 8(rSTR1)
lwz rWORD4, 8(rSTR2)
- cmplw cr0, rWORD1, rWORD2
- srw rC, rWORD4, rSHR
- slw rF, rWORD4, rSHL
+#endif
+ cmplw cr7, rWORD1, rWORD2
+ srw r12, rWORD4, rSHR
+ slw rWORD4_SHIFT, rWORD4, rSHL
bne cr5, L(duLcr5)
- or rWORD4, rC, rD
+ or rWORD4, r12, rWORD2_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD5, 12(rSTR1)
lwz rWORD6, 12(rSTR2)
+#endif
cmplw cr1, rWORD3, rWORD4
- srw rE, rWORD6, rSHR
- slw rH, rWORD6, rSHL
- bne cr0, L(duLcr0)
- or rWORD6, rE, rF
+ srw r0, rWORD6, rSHR
+ slw rWORD6_SHIFT, rWORD6, rSHL
+ bne cr7, L(duLcr7)
+ or rWORD6, r0, rWORD4_SHIFT
cmplw cr6, rWORD5, rWORD6
b L(duLoop3)
- .align 4
+ .align 4
/* At this point we exit early with the first word compare
complete and remainder of 0 to 3 bytes. See L(du14) for details on
how we handle the remaining bytes. */
@@ -698,186 +949,321 @@ L(duP1x):
bne cr5, L(duLcr5)
cmplw cr7, rN, rSHR
beq L(duZeroReturn)
- li rA, 0
+ li r0, 0
ble cr7, L(dutrim)
- ld rWORD2, 8(rSTR2)
- srw rA, rWORD2, rSHR
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD2, 8(rSTR2)
+#endif
+ srw r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 8 */
- .align 4
+ .align 4
L(duP2):
- srw rE, rWORD8, rSHR
+ srw r0, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ addi rSTR1, rSTR1, 4
+#else
lwz rWORD5, 0(rSTR1)
- or rWORD6, rE, rH
- slw rH, rWORD8, rSHL
+#endif
+ or rWORD6, r0, rWORD6_SHIFT
+ slw rWORD6_SHIFT, rWORD8, rSHL
L(duP2e):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD7, 4(rSTR1)
lwz rWORD8, 4(rSTR2)
+#endif
cmplw cr6, rWORD5, rWORD6
- srw rG, rWORD8, rSHR
- slw rB, rWORD8, rSHL
- or rWORD8, rG, rH
+ srw r12, rWORD8, rSHR
+ slw rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
blt cr7, L(duP2x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 8(rSTR1)
lwz rWORD2, 8(rSTR2)
+#endif
cmplw cr5, rWORD7, rWORD8
bne cr6, L(duLcr6)
- srw rA, rWORD2, rSHR
- slw rD, rWORD2, rSHL
- or rWORD2, rA, rB
+ srw r0, rWORD2, rSHR
+ slw rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD3, 12(rSTR1)
lwz rWORD4, 12(rSTR2)
- cmplw cr0, rWORD1, rWORD2
+#endif
+ cmplw cr7, rWORD1, rWORD2
bne cr5, L(duLcr5)
- srw rC, rWORD4, rSHR
- slw rF, rWORD4, rSHL
- or rWORD4, rC, rD
+ srw r12, rWORD4, rSHR
+ slw rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 4
addi rSTR2, rSTR2, 4
+#endif
cmplw cr1, rWORD3, rWORD4
b L(duLoop2)
- .align 4
+ .align 4
L(duP2x):
cmplw cr5, rWORD7, rWORD8
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 4
addi rSTR2, rSTR2, 4
+#endif
bne cr6, L(duLcr6)
slwi. rN, rN, 3
bne cr5, L(duLcr5)
cmplw cr7, rN, rSHR
beq L(duZeroReturn)
- li rA, 0
+ li r0, 0
ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD2, 4(rSTR2)
- srw rA, rWORD2, rSHR
+#endif
+ srw r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 12 */
- .align 4
+ .align 4
L(duP3):
- srw rC, rWORD8, rSHR
+ srw r12, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ addi rSTR1, rSTR1, 4
+#else
lwz rWORD3, 0(rSTR1)
- slw rF, rWORD8, rSHL
- or rWORD4, rC, rH
+#endif
+ slw rWORD4_SHIFT, rWORD8, rSHL
+ or rWORD4, r12, rWORD6_SHIFT
L(duP3e):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD5, 4(rSTR1)
lwz rWORD6, 4(rSTR2)
+#endif
cmplw cr1, rWORD3, rWORD4
- srw rE, rWORD6, rSHR
- slw rH, rWORD6, rSHL
- or rWORD6, rE, rF
+ srw r0, rWORD6, rSHR
+ slw rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD7, 8(rSTR1)
lwz rWORD8, 8(rSTR2)
+#endif
cmplw cr6, rWORD5, rWORD6
bne cr1, L(duLcr1)
- srw rG, rWORD8, rSHR
- slw rB, rWORD8, rSHL
- or rWORD8, rG, rH
+ srw r12, rWORD8, rSHR
+ slw rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
blt cr7, L(duP3x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 12(rSTR1)
lwz rWORD2, 12(rSTR2)
+#endif
cmplw cr5, rWORD7, rWORD8
bne cr6, L(duLcr6)
- srw rA, rWORD2, rSHR
- slw rD, rWORD2, rSHL
- or rWORD2, rA, rB
+ srw r0, rWORD2, rSHR
+ slw rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 8
addi rSTR2, rSTR2, 8
- cmplw cr0, rWORD1, rWORD2
+#endif
+ cmplw cr7, rWORD1, rWORD2
b L(duLoop1)
- .align 4
+ .align 4
L(duP3x):
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 8
addi rSTR2, rSTR2, 8
+#endif
+#if 0
+/* Huh? We've already branched on cr1! */
bne cr1, L(duLcr1)
+#endif
cmplw cr5, rWORD7, rWORD8
bne cr6, L(duLcr6)
slwi. rN, rN, 3
bne cr5, L(duLcr5)
cmplw cr7, rN, rSHR
beq L(duZeroReturn)
- li rA, 0
+ li r0, 0
ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD2, 4(rSTR2)
- srw rA, rWORD2, rSHR
+#endif
+ srw r0, rWORD2, rSHR
b L(dutrim)
/* Count is a multiple of 16, remainder is 0 */
- .align 4
+ .align 4
L(duP4):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
- srw rA, rWORD8, rSHR
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+ srw r0, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ addi rSTR1, rSTR1, 4
+#else
lwz rWORD1, 0(rSTR1)
- slw rD, rWORD8, rSHL
- or rWORD2, rA, rH
+#endif
+ slw rWORD2_SHIFT, rWORD8, rSHL
+ or rWORD2, r0, rWORD6_SHIFT
L(duP4e):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD3, 4(rSTR1)
lwz rWORD4, 4(rSTR2)
- cmplw cr0, rWORD1, rWORD2
- srw rC, rWORD4, rSHR
- slw rF, rWORD4, rSHL
- or rWORD4, rC, rD
+#endif
+ cmplw cr7, rWORD1, rWORD2
+ srw r12, rWORD4, rSHR
+ slw rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD5, 8(rSTR1)
lwz rWORD6, 8(rSTR2)
+#endif
cmplw cr1, rWORD3, rWORD4
- bne cr0, L(duLcr0)
- srw rE, rWORD6, rSHR
- slw rH, rWORD6, rSHL
- or rWORD6, rE, rF
+ bne cr7, L(duLcr7)
+ srw r0, rWORD6, rSHR
+ slw rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwzu rWORD7, 12(rSTR1)
lwzu rWORD8, 12(rSTR2)
+#endif
cmplw cr6, rWORD5, rWORD6
bne cr1, L(duLcr1)
- srw rG, rWORD8, rSHR
- slw rB, rWORD8, rSHL
- or rWORD8, rG, rH
+ srw r12, rWORD8, rSHR
+ slw rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
cmplw cr5, rWORD7, rWORD8
bdz- L(du24) /* Adjust CTR as we start with +4 */
/* This is the primary loop */
- .align 4
+ .align 4
L(duLoop):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD1, 4(rSTR1)
lwz rWORD2, 4(rSTR2)
+#endif
cmplw cr1, rWORD3, rWORD4
bne cr6, L(duLcr6)
- srw rA, rWORD2, rSHR
- slw rD, rWORD2, rSHL
- or rWORD2, rA, rB
+ srw r0, rWORD2, rSHR
+ slw rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
L(duLoop1):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD3, 8(rSTR1)
lwz rWORD4, 8(rSTR2)
+#endif
cmplw cr6, rWORD5, rWORD6
bne cr5, L(duLcr5)
- srw rC, rWORD4, rSHR
- slw rF, rWORD4, rSHL
- or rWORD4, rC, rD
+ srw r12, rWORD4, rSHR
+ slw rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
L(duLoop2):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD5, 12(rSTR1)
lwz rWORD6, 12(rSTR2)
+#endif
cmplw cr5, rWORD7, rWORD8
- bne cr0, L(duLcr0)
- srw rE, rWORD6, rSHR
- slw rH, rWORD6, rSHL
- or rWORD6, rE, rF
+ bne cr7, L(duLcr7)
+ srw r0, rWORD6, rSHR
+ slw rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
L(duLoop3):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
lwzu rWORD7, 16(rSTR1)
lwzu rWORD8, 16(rSTR2)
- cmplw cr0, rWORD1, rWORD2
+#endif
+ cmplw cr7, rWORD1, rWORD2
bne- cr1, L(duLcr1)
- srw rG, rWORD8, rSHR
- slw rB, rWORD8, rSHL
- or rWORD8, rG, rH
+ srw r12, rWORD8, rSHR
+ slw rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
bdnz+ L(duLoop)
L(duL4):
+#if 0
+/* Huh? We've already branched on cr1! */
bne cr1, L(duLcr1)
+#endif
cmplw cr1, rWORD3, rWORD4
bne cr6, L(duLcr6)
cmplw cr6, rWORD5, rWORD6
bne cr5, L(duLcr5)
cmplw cr5, rWORD7, rWORD8
L(du44):
- bne cr0, L(duLcr0)
+ bne cr7, L(duLcr7)
L(du34):
bne cr1, L(duLcr1)
L(du24):
@@ -887,95 +1273,101 @@ L(du14):
bne cr5, L(duLcr5)
/* At this point we have a remainder of 1 to 3 bytes to compare. We use
shift right to eliminate bits beyond the compare length.
+ This allows the use of word subtract to compute the final result.
However it may not be safe to load rWORD2 which may be beyond the
string length. So we compare the bit length of the remainder to
the right shift count (rSHR). If the bit count is less than or equal
we do not need to load rWORD2 (all significant bits are already in
- rB). */
+ rWORD8_SHIFT). */
cmplw cr7, rN, rSHR
beq L(duZeroReturn)
- li rA, 0
+ li r0, 0
ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
lwz rWORD2, 4(rSTR2)
- srw rA, rWORD2, rSHR
- .align 4
+#endif
+ srw r0, rWORD2, rSHR
+ .align 4
L(dutrim):
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+#else
lwz rWORD1, 4(rSTR1)
- lwz r31,48(1)
+#endif
+ lwz rWORD8, 48(r1)
subfic rN, rN, 32 /* Shift count is 32 - (rN * 8). */
- or rWORD2, rA, rB
- lwz r30,44(1)
- lwz r29,40(r1)
+ or rWORD2, r0, rWORD8_SHIFT
+ lwz rWORD7, 44(r1)
+ lwz rSHL, 40(r1)
srw rWORD1, rWORD1, rN
srw rWORD2, rWORD2, rN
- lwz r28,36(r1)
- lwz r27,32(r1)
- cmplw rWORD1,rWORD2
- li rRTN,0
- beq L(dureturn26)
- li rRTN,1
- bgt L(dureturn26)
- li rRTN,-1
- b L(dureturn26)
- .align 4
-L(duLcr0):
- lwz r31,48(1)
- lwz r30,44(1)
+ lwz rSHR, 36(r1)
+ lwz rWORD8_SHIFT, 32(r1)
+ sub rRTN, rWORD1, rWORD2
+ b L(dureturn26)
+ .align 4
+L(duLcr7):
+ lwz rWORD8, 48(r1)
+ lwz rWORD7, 44(r1)
li rRTN, 1
- bgt cr0, L(dureturn29)
- lwz r29,40(r1)
- lwz r28,36(r1)
+ bgt cr7, L(dureturn29)
+ lwz rSHL, 40(r1)
+ lwz rSHR, 36(r1)
li rRTN, -1
b L(dureturn27)
- .align 4
+ .align 4
L(duLcr1):
- lwz r31,48(1)
- lwz r30,44(1)
+ lwz rWORD8, 48(r1)
+ lwz rWORD7, 44(r1)
li rRTN, 1
bgt cr1, L(dureturn29)
- lwz r29,40(r1)
- lwz r28,36(r1)
+ lwz rSHL, 40(r1)
+ lwz rSHR, 36(r1)
li rRTN, -1
b L(dureturn27)
- .align 4
+ .align 4
L(duLcr6):
- lwz r31,48(1)
- lwz r30,44(1)
+ lwz rWORD8, 48(r1)
+ lwz rWORD7, 44(r1)
li rRTN, 1
bgt cr6, L(dureturn29)
- lwz r29,40(r1)
- lwz r28,36(r1)
+ lwz rSHL, 40(r1)
+ lwz rSHR, 36(r1)
li rRTN, -1
b L(dureturn27)
- .align 4
+ .align 4
L(duLcr5):
- lwz r31,48(1)
- lwz r30,44(1)
+ lwz rWORD8, 48(r1)
+ lwz rWORD7, 44(r1)
li rRTN, 1
bgt cr5, L(dureturn29)
- lwz r29,40(r1)
- lwz r28,36(r1)
+ lwz rSHL, 40(r1)
+ lwz rSHR, 36(r1)
li rRTN, -1
b L(dureturn27)
.align 3
L(duZeroReturn):
- li rRTN,0
+ li rRTN, 0
.align 4
L(dureturn):
- lwz r31,48(1)
- lwz r30,44(1)
+ lwz rWORD8, 48(r1)
+ lwz rWORD7, 44(r1)
L(dureturn29):
- lwz r29,40(r1)
- lwz r28,36(r1)
+ lwz rSHL, 40(r1)
+ lwz rSHR, 36(r1)
L(dureturn27):
- lwz r27,32(r1)
+ lwz rWORD8_SHIFT, 32(r1)
L(dureturn26):
- lwz r26,28(r1)
+ lwz rWORD2_SHIFT, 28(r1)
L(dureturn25):
- lwz r25,24(r1)
- lwz r24,20(r1)
- lwz 1,0(1)
+ lwz rWORD4_SHIFT, 24(r1)
+ lwz rWORD6_SHIFT, 20(r1)
+ addi 1, 1, 64
+ cfi_adjust_cfa_offset(-64)
blr
END (memcmp)
diff --git a/sysdeps/powerpc/powerpc32/power4/memcpy.S b/sysdeps/powerpc/powerpc32/power4/memcpy.S
index d9146631e3..338d3cce30 100644
--- a/sysdeps/powerpc/powerpc32/power4/memcpy.S
+++ b/sysdeps/powerpc/powerpc32/power4/memcpy.S
@@ -203,15 +203,28 @@ EALIGN (memcpy, 5, 0)
blt cr6,5f
srwi 7,6,16
bgt cr6,3f
+#ifdef __LITTLE_ENDIAN__
+ sth 7,0(3)
+#else
sth 6,0(3)
+#endif
b 7f
.align 4
3:
+#ifdef __LITTLE_ENDIAN__
+ rotlwi 6,6,24
+ stb 6,0(3)
+ sth 7,1(3)
+#else
stb 7,0(3)
sth 6,1(3)
+#endif
b 7f
.align 4
5:
+#ifdef __LITTLE_ENDIAN__
+ rotlwi 6,6,8
+#endif
stb 6,0(3)
7:
cmplwi cr1,10,16
@@ -339,13 +352,23 @@ EALIGN (memcpy, 5, 0)
bf 30,1f
/* there are at least two words to copy, so copy them */
+#ifdef __LITTLE_ENDIAN__
+ srw 0,6,10
+ slw 8,7,9
+#else
slw 0,6,10 /* shift 1st src word to left align it in R0 */
srw 8,7,9 /* shift 2nd src word to right align it in R8 */
+#endif
or 0,0,8 /* or them to get word to store */
lwz 6,8(5) /* load the 3rd src word */
stw 0,0(4) /* store the 1st dst word */
+#ifdef __LITTLE_ENDIAN__
+ srw 0,7,10
+ slw 8,6,9
+#else
slw 0,7,10 /* now left align 2nd src word into R0 */
srw 8,6,9 /* shift 3rd src word to right align it in R8 */
+#endif
or 0,0,8 /* or them to get word to store */
lwz 7,12(5)
stw 0,4(4) /* store the 2nd dst word */
@@ -353,8 +376,13 @@ EALIGN (memcpy, 5, 0)
addi 5,5,16
bf 31,4f
/* there is a third word to copy, so copy it */
+#ifdef __LITTLE_ENDIAN__
+ srw 0,6,10
+ slw 8,7,9
+#else
slw 0,6,10 /* shift 3rd src word to left align it in R0 */
srw 8,7,9 /* shift 4th src word to right align it in R8 */
+#endif
or 0,0,8 /* or them to get word to store */
stw 0,0(4) /* store 3rd dst word */
mr 6,7
@@ -364,8 +392,13 @@ EALIGN (memcpy, 5, 0)
b 4f
.align 4
1:
+#ifdef __LITTLE_ENDIAN__
+ srw 0,6,10
+ slw 8,7,9
+#else
slw 0,6,10 /* shift 1st src word to left align it in R0 */
srw 8,7,9 /* shift 2nd src word to right align it in R8 */
+#endif
addi 5,5,8
or 0,0,8 /* or them to get word to store */
bf 31,4f
@@ -378,23 +411,43 @@ EALIGN (memcpy, 5, 0)
.align 4
4:
/* copy 16 bytes at a time */
+#ifdef __LITTLE_ENDIAN__
+ srw 0,6,10
+ slw 8,7,9
+#else
slw 0,6,10
srw 8,7,9
+#endif
or 0,0,8
lwz 6,0(5)
stw 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srw 0,7,10
+ slw 8,6,9
+#else
slw 0,7,10
srw 8,6,9
+#endif
or 0,0,8
lwz 7,4(5)
stw 0,4(4)
+#ifdef __LITTLE_ENDIAN__
+ srw 0,6,10
+ slw 8,7,9
+#else
slw 0,6,10
srw 8,7,9
+#endif
or 0,0,8
lwz 6,8(5)
stw 0,8(4)
+#ifdef __LITTLE_ENDIAN__
+ srw 0,7,10
+ slw 8,6,9
+#else
slw 0,7,10
srw 8,6,9
+#endif
or 0,0,8
lwz 7,12(5)
stw 0,12(4)
@@ -403,8 +456,13 @@ EALIGN (memcpy, 5, 0)
bdnz+ 4b
8:
/* calculate and store the final word */
+#ifdef __LITTLE_ENDIAN__
+ srw 0,6,10
+ slw 8,7,9
+#else
slw 0,6,10
srw 8,7,9
+#endif
or 0,0,8
stw 0,0(4)
3:
diff --git a/sysdeps/powerpc/powerpc32/power4/memset.S b/sysdeps/powerpc/powerpc32/power4/memset.S
index c2d288b38b..4fd9d8cb4a 100644
--- a/sysdeps/powerpc/powerpc32/power4/memset.S
+++ b/sysdeps/powerpc/powerpc32/power4/memset.S
@@ -50,7 +50,7 @@ L(_memset):
/* Align to word boundary. */
cmplwi cr5, rLEN, 31
- rlwimi rCHR, rCHR, 8, 16, 23 /* Replicate byte to halfword. */
+ insrdi rCHR, rCHR, 8, 48 /* Replicate byte to halfword. */
beq+ L(aligned)
mtcrf 0x01, rMEMP0
subfic rALIGN, rALIGN, 4
@@ -65,7 +65,7 @@ L(g0):
/* Handle the case of size < 31. */
L(aligned):
mtcrf 0x01, rLEN
- rlwimi rCHR, rCHR, 16, 0, 15 /* Replicate halfword to word. */
+ insrdi rCHR, rCHR, 16, 32 /* Replicate halfword to word. */
ble cr5, L(medium)
/* Align to 32-byte boundary. */
andi. rALIGN, rMEMP, 0x1C
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/Makefile b/sysdeps/powerpc/powerpc32/power4/multiarch/Makefile
new file mode 100644
index 0000000000..a465685494
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/Makefile
@@ -0,0 +1,24 @@
+ifeq ($(subdir),string)
+sysdep_routines += memcpy-power7 memcpy-a2 memcpy-power6 memcpy-cell \
+ memcpy-ppc32 memcmp-power7 memcmp-ppc32 memset-power7 \
+ memset-power6 memset-ppc32 bzero-power7 bzero-power6 \
+ bzero-ppc32 mempcpy-power7 mempcpy-ppc32 memchr-power7 \
+ memchr-ppc32 memrchr-power7 memrchr-ppc32 rawmemchr-power7 \
+ rawmemchr-ppc32 strlen-power7 strlen-ppc32 strnlen-power7 \
+ strnlen-ppc32 strncmp-power7 strncmp-ppc32 \
+ strcasecmp-power7 strcasecmp_l-power7 strncase-power7 \
+ strncase_l-power7 strchrnul-power7 strchrnul-ppc32 \
+ strchr-power7 strchr-ppc32 wcschr-power7 wcschr-power6 \
+ wcschr-ppc32 wcsrchr-power7 wcsrchr-power6 wcsrchr-ppc32 \
+ wcscpy-power7 wcscpy-power6 wcscpy-ppc32 wordcopy-power7 \
+ wordcopy-power6 wordcopy-ppc32
+
+CFLAGS-strncase-power7.c += -mcpu=power7 -funroll-loops
+CFLAGS-strncase_l-power7.c += -mcpu=power7 -funroll-loops
+CFLAGS-wcschr-power7.c += -mcpu=power7
+CFLAGS-wcschr-power6.c += -mcpu=power6
+CFLAGS-wcsrchr-power7.c += -mcpu=power7
+CFLAGS-wcsrchr-power6.c += -mcpu=power6
+CFLAGS-wcscpy-power7.c += -mcpu=power7
+CFLAGS-wcscpy-power6.c += -mcpu=power6
+endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/bzero-power6.S b/sysdeps/powerpc/powerpc32/power4/multiarch/bzero-power6.S
new file mode 100644
index 0000000000..49d5666cdd
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/bzero-power6.S
@@ -0,0 +1,26 @@
+/* Optimized bzero implementation for PowerPC32/POWER6.
+ Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Contributed by Luis Machado <luisgpm@br.ibm.com>.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+ENTRY (__bzero_power6)
+ mr r5,r4
+ li r4,0
+ b __memset_power6@local
+END (__bzero_power6)
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/bzero-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/bzero-power7.S
new file mode 100644
index 0000000000..f2c7e423d9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/bzero-power7.S
@@ -0,0 +1,26 @@
+/* Optimized bzero implementation for PowerPC32/POWER7.
+ Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Contributed by Luis Machado <luisgpm@br.ibm.com>.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+ENTRY (__bzero_power7)
+ mr r5,r4
+ li r4,0
+ b __memset_power7@local
+END (__bzero_power7)
diff --git a/sysdeps/unix/bsd/seteuid.c b/sysdeps/powerpc/powerpc32/power4/multiarch/bzero-ppc32.S
index 18d2e4bfc9..7d0541c794 100644
--- a/sysdeps/unix/bsd/seteuid.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/bzero-ppc32.S
@@ -1,4 +1,6 @@
-/* Copyright (C) 1995-2013 Free Software Foundation, Inc.
+/* Optimized bzero implementation for PowerPC32/PPC32.
+ Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Contributed by Luis Machado <luisgpm@br.ibm.com>.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,20 +17,10 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <errno.h>
-#include <unistd.h>
-#include <sys/types.h>
+#include <sysdep.h>
-int
-seteuid (uid)
- uid_t uid;
-{
- if (uid == (uid_t) ~0)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- return __setreuid (-1, uid);
-}
-libc_hidden_def (seteuid)
+ENTRY (__bzero_ppc)
+ mr r5,r4
+ li r4,0
+ b __memset_ppc@local
+END (__bzero_ppc)
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/bzero.c b/sysdeps/powerpc/powerpc32/power4/multiarch/bzero.c
new file mode 100644
index 0000000000..0dee2013bb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/bzero.c
@@ -0,0 +1,37 @@
+/* Multiple versions of bzero.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for definition in libc. */
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <strings.h>
+# include "init-arch.h"
+
+extern __typeof (bzero) __bzero_ppc attribute_hidden;
+extern __typeof (bzero) __bzero_power6 attribute_hidden;
+extern __typeof (bzero) __bzero_power7 attribute_hidden;
+
+libc_ifunc (__bzero,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __bzero_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __bzero_power6
+ : __bzero_ppc);
+
+weak_alias (__bzero, bzero)
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c b/sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c
new file mode 100644
index 0000000000..18034b677b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/ifunc-impl-list.c
@@ -0,0 +1,218 @@
+/* Enumerate available IFUNC implementations of a function. PowerPC32 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <assert.h>
+#include <string.h>
+#include <wchar.h>
+#include <ldsodefs.h>
+#include <ifunc-impl-list.h>
+
+/* Maximum number of IFUNC implementations. */
+#define MAX_IFUNC 6
+
+size_t
+__libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
+ size_t max)
+{
+ assert (max >= MAX_IFUNC);
+
+ size_t i = 0;
+
+ unsigned long int hwcap = GLRO(dl_hwcap);
+ /* hwcap contains only the latest supported ISA, the code checks which is
+ and fills the previous supported ones. */
+ if (hwcap & PPC_FEATURE_ARCH_2_06)
+ hwcap |= PPC_FEATURE_ARCH_2_05 | PPC_FEATURE_POWER5_PLUS |
+ PPC_FEATURE_POWER5 | PPC_FEATURE_POWER4;
+ else if (hwcap & PPC_FEATURE_ARCH_2_05)
+ hwcap |= PPC_FEATURE_POWER5_PLUS | PPC_FEATURE_POWER5 | PPC_FEATURE_POWER4;
+ else if (hwcap & PPC_FEATURE_POWER5_PLUS)
+ hwcap |= PPC_FEATURE_POWER5 | PPC_FEATURE_POWER4;
+ else if (hwcap & PPC_FEATURE_POWER5)
+ hwcap |= PPC_FEATURE_POWER4;
+
+#ifdef SHARED
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/memcpy.c. */
+ IFUNC_IMPL (i, name, memcpy,
+ IFUNC_IMPL_ADD (array, i, memcpy, hwcap & PPC_FEATURE_HAS_VSX,
+ __memcpy_power7)
+ IFUNC_IMPL_ADD (array, i, memcpy, hwcap & PPC_FEATURE_ARCH_2_06,
+ __memcpy_a2)
+ IFUNC_IMPL_ADD (array, i, memcpy, hwcap & PPC_FEATURE_ARCH_2_05,
+ __memcpy_power6)
+ IFUNC_IMPL_ADD (array, i, memcpy, hwcap & PPC_FEATURE_CELL_BE,
+ __memcpy_cell)
+ IFUNC_IMPL_ADD (array, i, memcpy, 1, __memcpy_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/memset.c. */
+ IFUNC_IMPL (i, name, memset,
+ IFUNC_IMPL_ADD (array, i, memset, hwcap & PPC_FEATURE_HAS_VSX,
+ __memset_power7)
+ IFUNC_IMPL_ADD (array, i, memset, hwcap & PPC_FEATURE_ARCH_2_05,
+ __memset_power6)
+ IFUNC_IMPL_ADD (array, i, memset, 1, __memset_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/bzero.c. */
+ IFUNC_IMPL (i, name, bzero,
+ IFUNC_IMPL_ADD (array, i, bzero, hwcap & PPC_FEATURE_HAS_VSX,
+ __bzero_power7)
+ IFUNC_IMPL_ADD (array, i, bzero, hwcap & PPC_FEATURE_ARCH_2_05,
+ __bzero_power6)
+ IFUNC_IMPL_ADD (array, i, bzero, 1, __bzero_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/strlen.c. */
+ IFUNC_IMPL (i, name, strlen,
+ IFUNC_IMPL_ADD (array, i, strlen, hwcap & PPC_FEATURE_HAS_VSX,
+ __strlen_power7)
+ IFUNC_IMPL_ADD (array, i, strlen, 1,
+ __strlen_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/strnlen.c. */
+ IFUNC_IMPL (i, name, strnlen,
+ IFUNC_IMPL_ADD (array, i, strnlen, hwcap & PPC_FEATURE_HAS_VSX,
+ __strnlen_power7)
+ IFUNC_IMPL_ADD (array, i, strnlen, 1,
+ __strnlen_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/multiarch/strncmp.c. */
+ IFUNC_IMPL (i, name, strncmp,
+ IFUNC_IMPL_ADD (array, i, strncmp, hwcap & PPC_FEATURE_HAS_VSX,
+ __strncmp_power7)
+ IFUNC_IMPL_ADD (array, i, strncmp, 1,
+ __strncmp_ppc))
+#endif
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/memcmp.c. */
+ IFUNC_IMPL (i, name, memcmp,
+ IFUNC_IMPL_ADD (array, i, memcmp, hwcap & PPC_FEATURE_HAS_VSX,
+ __memcmp_power7)
+ IFUNC_IMPL_ADD (array, i, memcmp, 1, __memcmp_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy.c. */
+ IFUNC_IMPL (i, name, mempcpy,
+ IFUNC_IMPL_ADD (array, i, mempcpy,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __mempcpy_power7)
+ IFUNC_IMPL_ADD (array, i, mempcpy, 1,
+ __mempcpy_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/memchr.c. */
+ IFUNC_IMPL (i, name, memchr,
+ IFUNC_IMPL_ADD (array, i, memchr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __memchr_power7)
+ IFUNC_IMPL_ADD (array, i, memchr, 1,
+ __memchr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/memrchr.c. */
+ IFUNC_IMPL (i, name, memrchr,
+ IFUNC_IMPL_ADD (array, i, memrchr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __memrchr_power7)
+ IFUNC_IMPL_ADD (array, i, memrchr, 1,
+ __memrchr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr.c. */
+ IFUNC_IMPL (i, name, rawmemchr,
+ IFUNC_IMPL_ADD (array, i, rawmemchr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __rawmemchr_power7)
+ IFUNC_IMPL_ADD (array, i, rawmemchr, 1,
+ __rawmemchr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp.c. */
+ IFUNC_IMPL (i, name, strcasecmp,
+ IFUNC_IMPL_ADD (array, i, strcasecmp,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strcasecmp_power7)
+ IFUNC_IMPL_ADD (array, i, strcasecmp, 1, __strcasecmp_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l.c. */
+ IFUNC_IMPL (i, name, strcasecmp_l,
+ IFUNC_IMPL_ADD (array, i, strcasecmp_l,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strcasecmp_l_power7)
+ IFUNC_IMPL_ADD (array, i, strcasecmp_l, 1,
+ __strcasecmp_l_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c. */
+ IFUNC_IMPL (i, name, strncasecmp,
+ IFUNC_IMPL_ADD (array, i, strncasecmp,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strncasecmp_power7)
+ IFUNC_IMPL_ADD (array, i, strncasecmp, 1, __strncasecmp_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c. */
+ IFUNC_IMPL (i, name, strncasecmp_l,
+ IFUNC_IMPL_ADD (array, i, strncasecmp_l,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strncasecmp_l_power7)
+ IFUNC_IMPL_ADD (array, i, strncasecmp_l, 1,
+ __strncasecmp_l_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul.c. */
+ IFUNC_IMPL (i, name, strchrnul,
+ IFUNC_IMPL_ADD (array, i, strchrnul,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strchrnul_power7)
+ IFUNC_IMPL_ADD (array, i, strchrnul, 1,
+ __strchrnul_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/strchr.c. */
+ IFUNC_IMPL (i, name, strchr,
+ IFUNC_IMPL_ADD (array, i, strchr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strchr_power7)
+ IFUNC_IMPL_ADD (array, i, strchr, 1,
+ __strchr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/wcschr.c. */
+ IFUNC_IMPL (i, name, wcschr,
+ IFUNC_IMPL_ADD (array, i, wcschr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __wcschr_power7)
+ IFUNC_IMPL_ADD (array, i, wcschr,
+ hwcap & PPC_FEATURE_ARCH_2_05,
+ __wcschr_power6)
+ IFUNC_IMPL_ADD (array, i, wcschr, 1,
+ __wcschr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr.c. */
+ IFUNC_IMPL (i, name, wcsrchr,
+ IFUNC_IMPL_ADD (array, i, wcsrchr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __wcsrchr_power7)
+ IFUNC_IMPL_ADD (array, i, wcsrchr,
+ hwcap & PPC_FEATURE_ARCH_2_05,
+ __wcsrchr_power6)
+ IFUNC_IMPL_ADD (array, i, wcsrchr, 1,
+ __wcsrchr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c. */
+ IFUNC_IMPL (i, name, wcscpy,
+ IFUNC_IMPL_ADD (array, i, wcscpy,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __wcscpy_power7)
+ IFUNC_IMPL_ADD (array, i, wcscpy,
+ hwcap & PPC_FEATURE_ARCH_2_05,
+ __wcscpy_power6)
+ IFUNC_IMPL_ADD (array, i, wcscpy, 1,
+ __wcscpy_ppc))
+
+ return i;
+}
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h b/sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h
new file mode 100644
index 0000000000..490c0b4e7a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h
@@ -0,0 +1,52 @@
+/* This file is part of the GNU C Library.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <ldsodefs.h>
+
+/* The code checks if _rtld_global_ro was realocated before trying to access
+ the dl_hwcap field. The assembly is to make the compiler not optimize the
+ test (&_rtld_global_ro != NULL), which is always true in ISO C (but not
+ in that case since _rtld_global_ro might not been realocated yet). */
+#if defined(SHARED) && !defined(IS_IN_rtld)
+# define __GLRO(value) \
+ ({ volatile void **__p = (volatile void**)(&_rtld_global_ro); \
+ unsigned long int __ret; \
+ asm ("# x in %0" : "+r" (__p)); \
+ __ret = (__p) ? GLRO(value) : 0; \
+ __ret; })
+#else
+# define __GLRO(value) GLRO(value)
+#endif
+
+/* dl_hwcap contains only the latest supported ISA, the macro checks which is
+ and fills the previous ones. */
+#define INIT_ARCH() \
+ unsigned long int hwcap = __GLRO(dl_hwcap); \
+ if (hwcap & PPC_FEATURE_ARCH_2_06) \
+ hwcap |= PPC_FEATURE_ARCH_2_05 | \
+ PPC_FEATURE_POWER5_PLUS | \
+ PPC_FEATURE_POWER5 | \
+ PPC_FEATURE_POWER4; \
+ else if (hwcap & PPC_FEATURE_ARCH_2_05) \
+ hwcap |= PPC_FEATURE_POWER5_PLUS | \
+ PPC_FEATURE_POWER5 | \
+ PPC_FEATURE_POWER4; \
+ else if (hwcap & PPC_FEATURE_POWER5_PLUS) \
+ hwcap |= PPC_FEATURE_POWER5 | \
+ PPC_FEATURE_POWER4; \
+ else if (hwcap & PPC_FEATURE_POWER5) \
+ hwcap |= PPC_FEATURE_POWER4;
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memchr-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memchr-power7.S
new file mode 100644
index 0000000000..a8a077d076
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memchr-power7.S
@@ -0,0 +1,40 @@
+/* Optimized memchr implementation for PowerPC32/POWER7 using cmpb insn.
+ Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Contributed by Luis Machado <luisgpm@br.ibm.com>.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__memchr_power7); \
+ .type C_SYMBOL_NAME(__memchr_power7),@function; \
+ C_LABEL(__memchr_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memchr_power7)
+
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/memchr.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memchr-ppc32.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memchr-ppc32.c
new file mode 100644
index 0000000000..8f11ea815f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memchr-ppc32.c
@@ -0,0 +1,34 @@
+/* PowerPC32 default implementation of memchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <string.h>
+
+#define MEMCHR __memchr_ppc
+
+#undef weak_alias
+#define weak_alias(a, b)
+
+#ifdef SHARED
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ __hidden_ver1 (__memchr_ppc, __GI_memchr, __memchr_ppc);
+#endif
+
+extern __typeof (memchr) __memchr_ppc attribute_hidden;
+
+#include <string/memchr.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memchr.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memchr.c
new file mode 100644
index 0000000000..a4237f3967
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memchr.c
@@ -0,0 +1,38 @@
+/* Multiple versions of memchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__memchr) __memchr_ppc attribute_hidden;
+extern __typeof (__memchr) __memchr_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (__memchr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __memchr_power7
+ : __memchr_ppc);
+
+weak_alias (__memchr, memchr)
+libc_hidden_builtin_def (memchr)
+#else
+#include <string/memchr.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-power7.S
new file mode 100644
index 0000000000..464d5e8809
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-power7.S
@@ -0,0 +1,41 @@
+/* Optimized memcmp implementation for POWER7/PowerPC32.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__memcmp_power7); \
+ .type C_SYMBOL_NAME(__memcmp_power7),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__memcmp_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memcmp_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#undef weak_alias
+#define weak_alias(a, b)
+
+#include <sysdeps/powerpc/powerpc32/power7/memcmp.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-ppc32.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-ppc32.S
new file mode 100644
index 0000000000..bb92264765
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memcmp-ppc32.S
@@ -0,0 +1,45 @@
+/* Default memcmp implementation for PowerPC32.
+ Copyright (C) 1997-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#ifndef NOT_IN_libc
+# undef EALIGN
+# define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__memcmp_ppc); \
+ .type C_SYMBOL_NAME(__memcmp_ppc),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__memcmp_ppc) \
+ cfi_startproc;
+
+# undef END
+# define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memcmp_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_memcmp; __GI_memcmp = __memcmp_ppc
+
+# undef weak_alias
+# define weak_alias(a, b) \
+ .weak b ; b = __memcmp_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc32/power4/memcmp.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memcmp.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memcmp.c
new file mode 100644
index 0000000000..60df42400e
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memcmp.c
@@ -0,0 +1,34 @@
+/* Multiple versions of memcmp.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for definition in libc. */
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (memcmp) __memcmp_ppc attribute_hidden;
+extern __typeof (memcmp) __memcmp_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (memcmp,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __memcmp_power7
+ : __memcmp_ppc);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-a2.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-a2.S
new file mode 100644
index 0000000000..d5970ad962
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-a2.S
@@ -0,0 +1,38 @@
+/* Optimized memcpy implementation for PowerPC A2.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__memcpy_a2); \
+ .type C_SYMBOL_NAME(__memcpy_a2),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__memcpy_a2) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memcpy_a2)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/a2/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-cell.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-cell.S
new file mode 100644
index 0000000000..9177d25c63
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-cell.S
@@ -0,0 +1,38 @@
+/* Optimized memcpy implementation for CELL BE PowerPC.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__memcpy_cell); \
+ .type C_SYMBOL_NAME(__memcpy_cell),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__memcpy_cell) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memcpy_cell)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/cell/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-power6.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-power6.S
new file mode 100644
index 0000000000..a5b243cbda
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-power6.S
@@ -0,0 +1,38 @@
+/* Optimized memcpy implementation for PowerPC32 on POWER6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__memcpy_power6); \
+ .type C_SYMBOL_NAME(__memcpy_power6),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__memcpy_power6) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memcpy_power6)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power6/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-power7.S
new file mode 100644
index 0000000000..3605116e26
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-power7.S
@@ -0,0 +1,38 @@
+/* Optimized memcpy implementation for PowerPC32/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__memcpy_power7); \
+ .type C_SYMBOL_NAME(__memcpy_power7),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__memcpy_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memcpy_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-ppc32.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-ppc32.S
new file mode 100644
index 0000000000..8fe1121ab1
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy-ppc32.S
@@ -0,0 +1,41 @@
+/* Default memcpy implementation for PowerPC32.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#if defined SHARED && !defined NOT_IN_libc
+# undef EALIGN
+# define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__memcpy_ppc); \
+ .type C_SYMBOL_NAME(__memcpy_ppc),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__memcpy_ppc) \
+ cfi_startproc;
+
+# undef END
+# define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memcpy_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_memcpy; __GI_memcpy = __memcpy_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc32/power4/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy.c
new file mode 100644
index 0000000000..d9c36ad8d4
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memcpy.c
@@ -0,0 +1,45 @@
+/* Multiple versions of memcpy.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for the definition in lib and for
+ DSO. In static binaries we need memcpy before the initialization
+ happened. */
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (memcpy) __memcpy_ppc attribute_hidden;
+extern __typeof (memcpy) __memcpy_cell attribute_hidden;
+extern __typeof (memcpy) __memcpy_power6 attribute_hidden;
+extern __typeof (memcpy) __memcpy_a2 attribute_hidden;
+extern __typeof (memcpy) __memcpy_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (memcpy,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __memcpy_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __memcpy_a2 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __memcpy_power6 :
+ (hwcap & PPC_FEATURE_CELL_BE)
+ ? __memcpy_cell
+ : __memcpy_ppc);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-power7.S
new file mode 100644
index 0000000000..355726b512
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-power7.S
@@ -0,0 +1,35 @@
+/* Optimized mempcpy implementation for POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__mempcpy_power7); \
+ .type C_SYMBOL_NAME(__mempcpy_power7),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__mempcpy_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__mempcpy_power7)
+
+#include <sysdeps/powerpc/powerpc32/power7/mempcpy.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-ppc32.c b/sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-ppc32.c
new file mode 100644
index 0000000000..b5bc5713d7
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-ppc32.c
@@ -0,0 +1,32 @@
+/* PowerPC32 default implementation of mempcpy.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define MEMPCPY __mempcpy_ppc
+
+#undef libc_hidden_def
+#define libc_hidden_def(name)
+#undef weak_alias
+#define weak_alias(a, b)
+
+#if defined SHARED
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ __hidden_ver1 (__mempcpy_ppc, __GI_mempcpy, __mempcpy_ppc);
+#endif
+
+#include <string/mempcpy.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy.c b/sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy.c
new file mode 100644
index 0000000000..7100eb513a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy.c
@@ -0,0 +1,38 @@
+/* Multiple versions of mempcpy.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__mempcpy) __mempcpy_ppc attribute_hidden;
+extern __typeof (__mempcpy) __mempcpy_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (__mempcpy,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __mempcpy_power7
+ : __mempcpy_ppc);
+
+weak_alias (__mempcpy, mempcpy)
+libc_hidden_def (mempcpy)
+#else
+# include <string/mempcpy.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-power7.S
new file mode 100644
index 0000000000..cb2916c5c5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-power7.S
@@ -0,0 +1,40 @@
+/* Optimized memrchr implementation for PowerPC32/POWER7 using cmpb insn.
+ Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Contributed by Luis Machado <luisgpm@br.ibm.com>.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__memrchr_power7); \
+ .type C_SYMBOL_NAME(__memrchr_power7),@function; \
+ C_LABEL(__memrchr_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memrchr_power7)
+
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/memrchr.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-ppc32.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-ppc32.c
new file mode 100644
index 0000000000..88e5ce6b4d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-ppc32.c
@@ -0,0 +1,25 @@
+/* PowerPC32 default implementation of memrchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# define MEMRCHR __memrchr_ppc
+# include <string.h>
+extern void *__memrchr_ppc (const void *, int, size_t);
+#endif
+
+#include <string/memrchr.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memrchr.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memrchr.c
new file mode 100644
index 0000000000..cc362bac28
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memrchr.c
@@ -0,0 +1,37 @@
+/* Multiple versions of memrchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__memrchr) __memrchr_ppc attribute_hidden;
+extern __typeof (__memrchr) __memrchr_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (__memrchr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __memrchr_power7
+ : __memrchr_ppc);
+
+weak_alias (__memrchr, memrchr)
+#else
+#include <string/memrchr.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memset-power6.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memset-power6.S
new file mode 100644
index 0000000000..524f8ff867
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memset-power6.S
@@ -0,0 +1,38 @@
+/* Optimized 32-bit memset implementation for POWER6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__memset_power6); \
+ .type C_SYMBOL_NAME(__memset_power6),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__memset_power6) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memset_power6)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power6/memset.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memset-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/memset-power7.S
new file mode 100644
index 0000000000..c564c8ec21
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memset-power7.S
@@ -0,0 +1,38 @@
+/* Optimized memset implementation for PowerPC32/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__memset_power7); \
+ .type C_SYMBOL_NAME(__memset_power7),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__memset_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memset_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/memset.S>
diff --git a/sysdeps/ieee754/ldbl-96/s_fpclassifyl.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memset-ppc32.S
index d164f86334..e2cb19a5e0 100644
--- a/sysdeps/ieee754/ldbl-96/s_fpclassifyl.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memset-ppc32.S
@@ -1,8 +1,6 @@
-/* Return classification value corresponding to argument.
+/* Default memset implementation for PowerPC32.
Copyright (C) 1997-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
- Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
- Fixed by Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
@@ -18,27 +16,26 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <math.h>
-
-#include <math_private.h>
-
-
-int
-__fpclassifyl (long double x)
-{
- u_int32_t ex, hx, lx, m;
- int retval = FP_NORMAL;
-
- GET_LDOUBLE_WORDS (ex, hx, lx, x);
- m = (hx & 0x7fffffff) | lx;
- ex &= 0x7fff;
- if ((ex | m) == 0)
- retval = FP_ZERO;
- else if (ex == 0 && (hx & 0x80000000) == 0)
- retval = FP_SUBNORMAL;
- else if (ex == 0x7fff)
- retval = m != 0 ? FP_NAN : FP_INFINITE;
-
- return retval;
-}
-libm_hidden_def (__fpclassifyl)
+#include <sysdep.h>
+
+#if defined SHARED && !defined NOT_IN_libc
+# undef EALIGN
+# define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__memset_ppc); \
+ .type C_SYMBOL_NAME(__memset_ppc),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__memset_ppc) \
+ cfi_startproc;
+
+# undef END
+# define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__memset_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_memset; __GI_memset = __memset_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc32/power4/memset.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/memset.c b/sysdeps/powerpc/powerpc32/power4/multiarch/memset.c
new file mode 100644
index 0000000000..c8c4e8acf6
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/memset.c
@@ -0,0 +1,37 @@
+/* Multiple versions of memset.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for definition in libc. */
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (memset) __memset_ppc attribute_hidden;
+extern __typeof (memset) __memset_power6 attribute_hidden;
+extern __typeof (memset) __memset_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (memset,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __memset_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __memset_power6
+ : __memset_ppc);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-power7.S
new file mode 100644
index 0000000000..ff9bb284f6
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-power7.S
@@ -0,0 +1,40 @@
+/* Optimized rawrawmemchr implementation for PowerPC32/POWER7 using cmpb insn.
+ Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Contributed by Luis Machado <luisgpm@br.ibm.com>.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__rawmemchr_power7); \
+ .type C_SYMBOL_NAME(__rawmemchr_power7),@function; \
+ C_LABEL(__rawmemchr_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__rawmemchr_power7)
+
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/rawmemchr.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-ppc32.c b/sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-ppc32.c
new file mode 100644
index 0000000000..0eef47696d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-ppc32.c
@@ -0,0 +1,32 @@
+/* PowerPC32 default implementation of rawmemchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <string.h>
+
+#define RAWMEMCHR __rawmemchr_ppc
+#undef weak_alias
+#define weak_alias(a, b)
+#ifdef SHARED
+# undef libc_hidden_def
+# define libc_hidden_def(name) \
+ __hidden_ver1 (__rawmemchr_ppc, __GI___rawmemchr, __rawmemchr_ppc);
+#endif
+
+extern __typeof (rawmemchr) __rawmemchr_ppc attribute_hidden;
+
+#include <string/rawmemchr.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr.c b/sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr.c
new file mode 100644
index 0000000000..c083490f3f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr.c
@@ -0,0 +1,37 @@
+/* Multiple versions of rawmemchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__rawmemchr) __rawmemchr_ppc attribute_hidden;
+extern __typeof (__rawmemchr) __rawmemchr_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (__rawmemchr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __rawmemchr_power7
+ : __rawmemchr_ppc);
+
+weak_alias (__rawmemchr, rawmemchr)
+#else
+#include <string/rawmemchr.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-memcmp.S b/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-memcmp.S
new file mode 100644
index 0000000000..44d9c96348
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-memcmp.S
@@ -0,0 +1,19 @@
+/* Loader memcmp implementation for PowerPC32.
+ Copyright (C) 1997-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/memcmp.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-memset.S b/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-memset.S
new file mode 100644
index 0000000000..ef1bfed2df
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-memset.S
@@ -0,0 +1,18 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/memset.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-strchr.S b/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-strchr.S
new file mode 100644
index 0000000000..d75786c57f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-strchr.S
@@ -0,0 +1,18 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/strchr.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-strnlen.c b/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-strnlen.c
new file mode 100644
index 0000000000..11a72038dc
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/rtld-strnlen.c
@@ -0,0 +1,18 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <string/strnlen.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp-power7.S
new file mode 100644
index 0000000000..a177e62909
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp-power7.S
@@ -0,0 +1,39 @@
+/* Optimized strcasecmp implementation for PowerPC32.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__strcasecmp_power7); \
+ .type C_SYMBOL_NAME(__strcasecmp_power7),@function; \
+ C_LABEL(__strcasecmp_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__strcasecmp_power7)
+
+#undef weak_alias(name, alias)
+#define weak_alias(name, alias)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/strcasecmp.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp.c
new file mode 100644
index 0000000000..8aef486264
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp.c
@@ -0,0 +1,41 @@
+/* Multiple versions of strcasecmp.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# define strcasecmp __strcasecmp_ppc
+
+extern __typeof (__strcasecmp) __strcasecmp_ppc attribute_hidden;
+extern __typeof (__strcasecmp) __strcasecmp_power7 attribute_hidden;
+#endif
+
+#include <string/strcasecmp.c>
+#undef strcasecmp
+
+#ifndef NOT_IN_libc
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__strcasecmp) __libc_strcasecmp;
+libc_ifunc (__libc_strcasecmp,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strcasecmp_power7
+ : __strcasecmp_ppc);
+
+weak_alias (__libc_strcasecmp, strcasecmp)
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l-power7.S
new file mode 100644
index 0000000000..696d2dc196
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l-power7.S
@@ -0,0 +1,41 @@
+/* Default strcasecmp implementation for PowerPC32.
+ Copyright (C) 2011-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__strcasecmp_l_power7); \
+ .type C_SYMBOL_NAME(__strcasecmp_l_power7),@function; \
+ C_LABEL(__strcasecmp_l_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__strcasecmp_l_power7)
+
+#undef weak_alias(name, alias)
+#define weak_alias(name, alias)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#define USE_IN_EXTENDED_LOCALE_MODEL
+
+#include <sysdeps/powerpc/powerpc32/power7/strcasecmp.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l.c
new file mode 100644
index 0000000000..65944c6dbf
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strcasecmp_l.c
@@ -0,0 +1,41 @@
+/* Multiple versions of strcasecmp.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# define strcasecmp_l __strcasecmp_l_ppc
+
+extern __typeof (__strcasecmp_l) __strcasecmp_l_ppc attribute_hidden;
+extern __typeof (__strcasecmp_l) __strcasecmp_l_power7 attribute_hidden;
+#endif
+
+#include <string/strcasecmp_l.c>
+#undef strcasecmp_l
+
+#ifndef NOT_IN_libc
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__strcasecmp_l) __libc_strcasecmp_l;
+libc_ifunc (__libc_strcasecmp_l,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strcasecmp_l_power7
+ : __strcasecmp_l_ppc);
+
+weak_alias (__libc_strcasecmp_l, strcasecmp_l)
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strchr-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/strchr-power7.S
new file mode 100644
index 0000000000..066b71161f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strchr-power7.S
@@ -0,0 +1,39 @@
+/* Optimized strchr implementation for PowerPC32/POWER7 using cmpb insn.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__strchr_power7); \
+ .type C_SYMBOL_NAME(__strchr_power7),@function; \
+ C_LABEL(__strchr_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__strchr_power7)
+
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/strchr.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strchr-ppc32.S b/sysdeps/powerpc/powerpc32/power4/multiarch/strchr-ppc32.S
new file mode 100644
index 0000000000..a71b46a7a4
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strchr-ppc32.S
@@ -0,0 +1,41 @@
+/* PowerPC32 default implementation of strchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#ifdef SHARED
+# undef ENTRY
+# define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__strchr_ppc); \
+ .type C_SYMBOL_NAME(__strchr_ppc),@function; \
+ .align ALIGNARG(2); \
+ C_LABEL(__strchr_ppc) \
+ cfi_startproc; \
+ CALL_MCOUNT
+
+# undef END
+# define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__strchr_ppc) \
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_strchr; __GI_strchr = __strchr_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc32/strchr.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strchr.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strchr.c
new file mode 100644
index 0000000000..8a7dc74833
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strchr.c
@@ -0,0 +1,35 @@
+/* Multiple versions of strchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for definition in libc. */
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (strchr) __strchr_ppc attribute_hidden;
+extern __typeof (strchr) __strchr_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (strchr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strchr_power7
+ : __strchr_ppc);
+weak_alias (strchr, index)
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul-power7.S
new file mode 100644
index 0000000000..8f94ca8542
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul-power7.S
@@ -0,0 +1,39 @@
+/* Optimized strchrnul implementation for PowerPC32/POWER7 using cmpb insn.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__strchrnul_power7); \
+ .type C_SYMBOL_NAME(__strchrnul_power7),@function; \
+ C_LABEL(__strchrnul_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__strchrnul_power7)
+
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/strchrnul.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul-ppc32.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul-ppc32.c
new file mode 100644
index 0000000000..a5aaff054c
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul-ppc32.c
@@ -0,0 +1,28 @@
+/* PowerPC32 default implementation of strchrnul.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <string.h>
+
+#define STRCHRNUL __strchrnul_ppc
+
+#undef weak_alias
+#define weak_alias(a,b )
+
+extern __typeof (strchrnul) __strchrnul_ppc attribute_hidden;
+
+#include <string/strchrnul.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul.c
new file mode 100644
index 0000000000..95138580d8
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul.c
@@ -0,0 +1,37 @@
+/* Multiple versions of strchrnul.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__strchrnul) __strchrnul_ppc attribute_hidden;
+extern __typeof (__strchrnul) __strchrnul_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (__strchrnul,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strchrnul_power7
+ : __strchrnul_ppc);
+
+weak_alias (__strchrnul, strchrnul)
+#else
+#include <string/strchrnul.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strlen-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/strlen-power7.S
new file mode 100644
index 0000000000..cde958aa1a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strlen-power7.S
@@ -0,0 +1,36 @@
+/* Optimized strlen implementation for PowerPC32/POWER7 using cmpb insn.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__strlen_power7); \
+ .type C_SYMBOL_NAME(__strlen_power7),@function; \
+ C_LABEL(__strlen_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__strlen_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/strlen.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strlen-ppc32.S b/sysdeps/powerpc/powerpc32/power4/multiarch/strlen-ppc32.S
new file mode 100644
index 0000000000..a94d93cfad
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strlen-ppc32.S
@@ -0,0 +1,41 @@
+/* Default strlen implementation for PowerPC32.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#if defined SHARED && !defined NOT_IN_libc
+
+#include <sysdep.h>
+
+# undef ENTRY
+# define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__strlen_ppc); \
+ .type C_SYMBOL_NAME(__strlen_ppc),@function; \
+ C_LABEL(__strlen_ppc) \
+ cfi_startproc;
+
+# undef END
+# define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__strlen_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_strlen; __GI_strlen = __strlen_ppc
+
+#endif
+
+#include <sysdeps/powerpc/powerpc32/strlen.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strlen.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strlen.c
new file mode 100644
index 0000000000..efbc0abe6f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strlen.c
@@ -0,0 +1,31 @@
+/* Multiple versions of strlen.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (strlen) __strlen_ppc attribute_hidden;
+extern __typeof (strlen) __strlen_power7 attribute_hidden;
+
+libc_ifunc (strlen,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strlen_power7
+ : __strlen_ppc);
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase-power7.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strncase-power7.c
new file mode 100644
index 0000000000..4aaa63815e
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strncase-power7.c
@@ -0,0 +1,26 @@
+/* Optimized strcasecmp_l implememtation for POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+
+#include <string.h>
+
+#define __strncasecmp __strncasecmp_power7
+
+extern __typeof (strncasecmp) __strncasecmp_power7 attribute_hidden;
+
+#include <string/strncase.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c
new file mode 100644
index 0000000000..1bac8495be
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strncase.c
@@ -0,0 +1,41 @@
+/* Multiple versions of strncasecmp.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# define strncasecmp __strncasecmp_ppc
+extern __typeof (__strncasecmp) __strncasecmp_ppc attribute_hidden;
+extern __typeof (__strncasecmp) __strncasecmp_power7 attribute_hidden;
+#endif
+
+#include <string/strncase.c>
+#undef strncasecmp
+
+#ifndef NOT_IN_libc
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+extern __typeof (__strncasecmp) __libc_strncasecmp;
+libc_ifunc (__libc_strncasecmp,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strncasecmp_power7
+ : __strncasecmp_ppc);
+weak_alias (__libc_strncasecmp, strncasecmp)
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l-power7.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l-power7.c
new file mode 100644
index 0000000000..f96c5abf2b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l-power7.c
@@ -0,0 +1,26 @@
+/* Optimized strcasecmp_l implememtation for POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <string.h>
+
+#define __strncasecmp_l __strncasecmp_l_power7
+#define USE_IN_EXTENDED_LOCALE_MODEL 1
+
+extern __typeof (strncasecmp_l) __strncasecmp_l_power7 attribute_hidden;
+
+#include <string/strncase.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c
new file mode 100644
index 0000000000..11a64bdbe1
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strncase_l.c
@@ -0,0 +1,42 @@
+/* Multiple versions of strncasecmp_l.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# define strncasecmp_l __strncasecmp_l_ppc
+extern __typeof (__strncasecmp_l) __strncasecmp_l_ppc attribute_hidden;
+extern __typeof (__strncasecmp_l) __strncasecmp_l_power7 attribute_hidden;
+#endif
+
+#include <string/strncase_l.c>
+#undef strncasecmp_l
+
+#ifndef NOT_IN_libc
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+extern __typeof (__strncasecmp_l) __libc_strncasecmp_l;
+libc_ifunc (__libc_strncasecmp_l,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strncasecmp_l_power7
+ : __strncasecmp_l_ppc);
+
+weak_alias (__libc_strncasecmp_l, strncasecmp_l)
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-power7.S b/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-power7.S
new file mode 100644
index 0000000000..c9240e55be
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-power7.S
@@ -0,0 +1,38 @@
+/* Optimized strcmp implementation for POWER7/PowerPC32.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__strncmp_power7); \
+ .type C_SYMBOL_NAME(__strncmp_power7),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__strncmp_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__strncmp_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/strncmp.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-ppc32.S b/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-ppc32.S
new file mode 100644
index 0000000000..bd573bbfa9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp-ppc32.S
@@ -0,0 +1,40 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#if defined SHARED && !defined NOT_IN_libc
+# undef EALIGN
+# define EALIGN(name, alignt, words) \
+ .globl C_SYMBOL_NAME(__strncmp_ppc); \
+ .type C_SYMBOL_NAME(__strncmp_ppc),@function; \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ C_LABEL(__strncmp_ppc) \
+ cfi_startproc;
+
+# undef END
+# define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__strncmp_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_strncmp; __GI_strncmp = __strncmp_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc32/power4/strncmp.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c
new file mode 100644
index 0000000000..5dea0769f7
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strncmp.c
@@ -0,0 +1,35 @@
+/* Multiple versions of strncmp.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for definition in libc. */
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (strncmp) __strncmp_ppc attribute_hidden;
+extern __typeof (strncmp) __strncmp_power4 attribute_hidden;
+extern __typeof (strncmp) __strncmp_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (strncmp,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strncmp_power7
+ : __strncmp_ppc);
+#endif
diff --git a/sysdeps/x86_64/multiarch/strcasestr-nonascii.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-power7.S
index 032a6420d6..7b09e7d003 100644
--- a/sysdeps/x86_64/multiarch/strcasestr-nonascii.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-power7.S
@@ -1,5 +1,6 @@
-/* strstr with SSE4.2 intrinsics
+/* Optimized strnlen implementation for PowerPC32/POWER7 using cmpb insn.
Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Contributed by Luis Machado <luisgpm@br.ibm.com>.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -16,35 +17,21 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <ctype.h>
-#include <xmmintrin.h>
-
-
-/* Similar to __m128i_strloadu. Convert to lower case for none-POSIX/C
- locale. */
-static __m128i
-__m128i_strloadu_tolower (const unsigned char *p)
-{
- union
- {
- char b[16];
- __m128i x;
- } u;
-
- for (int i = 0; i < 16; ++i)
- if (p[i] == 0)
- {
- u.b[i] = 0;
- break;
- }
- else
- u.b[i] = tolower (p[i]);
-
- return u.x;
-}
-
-
-#define STRCASESTR_NONASCII
-#define USE_AS_STRCASESTR
-#define STRSTR_SSE42 __strcasestr_sse42_nonascii
-#include "strstr.c"
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .globl C_SYMBOL_NAME(__strnlen_power7); \
+ .type C_SYMBOL_NAME(__strnlen_power7),@function; \
+ C_LABEL(__strnlen_power7) \
+ cfi_startproc;
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ ASM_SIZE_DIRECTIVE(__strnlen_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc32/power7/strnlen.S>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c
new file mode 100644
index 0000000000..43d8276cd4
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c
@@ -0,0 +1,26 @@
+/* Default strnlen implementation for PowerPC32.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define STRNLEN __strnlen_ppc
+#ifdef SHARED
+# undef libc_hidden_def
+# define libc_hidden_def(name) \
+ __hidden_ver1 (__strnlen_ppc, __GI_strnlen, __strnlen_ppc);
+#endif
+
+#include <string/strnlen.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen.c b/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen.c
new file mode 100644
index 0000000000..b2ec1aa96a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/strnlen.c
@@ -0,0 +1,33 @@
+/* Multiple versions of strnlen.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__strnlen) __strnlen_ppc attribute_hidden;
+extern __typeof (__strnlen) __strnlen_power7 attribute_hidden;
+
+libc_ifunc (__strnlen,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strnlen_power7
+ : __strnlen_ppc);
+weak_alias (__strnlen, strnlen)
+libc_hidden_def (strnlen)
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power6.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power6.c
new file mode 100644
index 0000000000..7d1f45ab60
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power6.c
@@ -0,0 +1,26 @@
+/* wcschr.c - Wide Character Search for powerpc32/power6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+#include <wchar.h>
+
+#define WCSCHR __wcschr_power6
+
+#undef libc_hidden_def
+#define libc_hidden_def(name)
+
+#include <sysdeps/powerpc/power6/wcschr.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power7.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power7.c
new file mode 100644
index 0000000000..9e6c99c7fd
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power7.c
@@ -0,0 +1,26 @@
+/* wcschr.c - Wide Character Search for powerpc32/power7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+#include <wchar.h>
+
+#define WCSCHR __wcschr_power7
+
+#undef libc_hidden_def
+#define libc_hidden_def(name)
+
+#include <sysdeps/powerpc/power6/wcschr.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-ppc32.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-ppc32.c
new file mode 100644
index 0000000000..477341e005
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-ppc32.c
@@ -0,0 +1,31 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <wchar.h>
+
+#ifndef NOT_IN_libc
+# ifdef SHARED
+# undef libc_hidden_def
+# define libc_hidden_def(name) \
+ __hidden_ver1 (__wcschr_ppc, __GI_wcschr, __wcschr_ppc);
+# endif
+# define WCSCHR __wcschr_ppc
+#endif
+
+extern __typeof (wcschr) __wcschr_ppc;
+
+#include <wcsmbs/wcschr.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr.c
new file mode 100644
index 0000000000..51fbefea2b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcschr.c
@@ -0,0 +1,38 @@
+/* Multiple versions of wcschr
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <wchar.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (wcschr) __wcschr_ppc attribute_hidden;
+extern __typeof (wcschr) __wcschr_power6 attribute_hidden;
+extern __typeof (wcschr) __wcschr_power7 attribute_hidden;
+
+libc_ifunc (wcschr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __wcschr_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __wcschr_power6
+ : __wcschr_ppc);
+#else
+#undef libc_hidden_def
+#define libc_hidden_def(a)
+#include <wcsmbs/wcschr.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power6.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power6.c
new file mode 100644
index 0000000000..51d0a0a137
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power6.c
@@ -0,0 +1,22 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <wchar.h>
+
+#define WCSCPY __wcscpy_power6
+
+#include <sysdeps/powerpc/power6/wcscpy.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power7.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power7.c
new file mode 100644
index 0000000000..1eae9e98dd
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power7.c
@@ -0,0 +1,22 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <wchar.h>
+
+#define WCSCPY __wcscpy_power7
+
+#include <sysdeps/powerpc/power6/wcscpy.c>
diff --git a/string/test-strchrnul-ifunc.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c
index 632a0341be..8601d43acd 100644
--- a/string/test-strchrnul-ifunc.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c
@@ -1,5 +1,4 @@
-/* Test and measure IFUNC implementations of strchrnul function.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
+/* Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -16,5 +15,12 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#define TEST_IFUNC 1
-#include "test-strchrnul.c"
+#include <wchar.h>
+
+#ifndef NOT_IN_libc
+# define WCSCPY __wcscpy_ppc
+#endif
+
+extern __typeof (wcscpy) __wcscpy_ppc;
+
+#include <wcsmbs/wcscpy.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c
new file mode 100644
index 0000000000..252fb6cbb3
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy.c
@@ -0,0 +1,36 @@
+/* Multiple versions of wcscpy
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <wchar.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (wcscpy) __wcscpy_ppc attribute_hidden;
+extern __typeof (wcscpy) __wcscpy_power6 attribute_hidden;
+extern __typeof (wcscpy) __wcscpy_power7 attribute_hidden;
+
+libc_ifunc (wcscpy,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __wcscpy_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __wcscpy_power6
+ : __wcscpy_ppc);
+#else
+#include <wcsmbs/wcscpy.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power6.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power6.c
new file mode 100644
index 0000000000..68fe4775be
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power6.c
@@ -0,0 +1,20 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define WCSRCHR __wcsrchr_power6
+
+#include <sysdeps/powerpc/power6/wcsrchr.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power7.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power7.c
new file mode 100644
index 0000000000..3422816689
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power7.c
@@ -0,0 +1,20 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define WCSRCHR __wcsrchr_power7
+
+#include <sysdeps/powerpc/power6/wcsrchr.c>
diff --git a/sysdeps/unix/bsd/setrgid.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-ppc32.c
index 01002cc41a..b33eadacd8 100644
--- a/sysdeps/unix/bsd/setrgid.c
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-ppc32.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993-2013 Free Software Foundation, Inc.
+/* Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,12 +15,12 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <unistd.h>
-#include <sys/types.h>
+#include <wchar.h>
-int
-setrgid (gid)
- gid_t gid;
-{
- return __setregid (gid, -1);
-}
+#ifndef NOT_IN_libc
+# define WCSRCHR __wcsrchr_ppc
+#endif
+
+extern __typeof (wcsrchr) __wcsrchr_ppc;
+
+#include <wcsmbs/wcsrchr.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr.c
new file mode 100644
index 0000000000..cd0b87e935
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr.c
@@ -0,0 +1,36 @@
+/* Multiple versions of wcsrchr
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <wchar.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (wcsrchr) __wcsrchr_ppc attribute_hidden;
+extern __typeof (wcsrchr) __wcsrchr_power6 attribute_hidden;
+extern __typeof (wcsrchr) __wcsrchr_power7 attribute_hidden;
+
+libc_ifunc (wcsrchr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __wcsrchr_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __wcsrchr_power6
+ : __wcsrchr_ppc);
+#else
+#include <wcsmbs/wcsrchr.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power6.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power6.c
new file mode 100644
index 0000000000..b8edd10eaa
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power6.c
@@ -0,0 +1,23 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define WORDCOPY_FWD_ALIGNED _wordcopy_fwd_aligned_power6
+#define WORDCOPY_FWD_DEST_ALIGNED _wordcopy_fwd_dest_aligned_power6
+#define WORDCOPY_BWD_ALIGNED _wordcopy_bwd_aligned_power6
+#define WORDCOPY_BWD_DEST_ALIGNED _wordcopy_bwd_dest_aligned_power6
+
+#include <sysdeps/powerpc/power6/wordcopy.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power7.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power7.c
new file mode 100644
index 0000000000..e7999c35ba
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power7.c
@@ -0,0 +1,23 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define WORDCOPY_FWD_ALIGNED _wordcopy_fwd_aligned_power7
+#define WORDCOPY_FWD_DEST_ALIGNED _wordcopy_fwd_dest_aligned_power7
+#define WORDCOPY_BWD_ALIGNED _wordcopy_bwd_aligned_power7
+#define WORDCOPY_BWD_DEST_ALIGNED _wordcopy_bwd_dest_aligned_power7
+
+#include <sysdeps/powerpc/power6/wordcopy.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c
new file mode 100644
index 0000000000..9898e622da
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c
@@ -0,0 +1,23 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define WORDCOPY_FWD_ALIGNED _wordcopy_fwd_aligned_ppc
+#define WORDCOPY_FWD_DEST_ALIGNED _wordcopy_fwd_dest_aligned_ppc
+#define WORDCOPY_BWD_ALIGNED _wordcopy_bwd_aligned_ppc
+#define WORDCOPY_BWD_DEST_ALIGNED _wordcopy_bwd_dest_aligned_ppc
+
+#include <sysdeps/powerpc/power4/wordcopy.c>
diff --git a/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy.c b/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy.c
new file mode 100644
index 0000000000..78233dce66
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy.c
@@ -0,0 +1,86 @@
+/* Multiple versions of wordcopy functions.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <stddef.h>
+# include <memcopy.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (_wordcopy_fwd_aligned) _wordcopy_fwd_aligned_ppc
+attribute_hidden;
+extern __typeof (_wordcopy_fwd_aligned) _wordcopy_fwd_aligned_power6
+attribute_hidden;
+extern __typeof (_wordcopy_fwd_aligned) _wordcopy_fwd_aligned_power7
+attribute_hidden;
+
+libc_ifunc (_wordcopy_fwd_aligned,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? _wordcopy_fwd_aligned_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? _wordcopy_fwd_aligned_power6
+ : _wordcopy_fwd_aligned_ppc);
+
+
+extern __typeof (_wordcopy_fwd_dest_aligned) _wordcopy_fwd_dest_aligned_ppc
+attribute_hidden;
+extern __typeof (_wordcopy_fwd_dest_aligned) _wordcopy_fwd_dest_aligned_power6
+attribute_hidden;
+extern __typeof (_wordcopy_fwd_dest_aligned) _wordcopy_fwd_dest_aligned_power7
+attribute_hidden;
+
+libc_ifunc (_wordcopy_fwd_dest_aligned,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? _wordcopy_fwd_dest_aligned_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? _wordcopy_fwd_dest_aligned_power6
+ : _wordcopy_fwd_dest_aligned_ppc);
+
+
+extern __typeof (_wordcopy_bwd_aligned) _wordcopy_bwd_aligned_ppc
+attribute_hidden;
+extern __typeof (_wordcopy_bwd_aligned) _wordcopy_bwd_aligned_power6
+attribute_hidden;
+extern __typeof (_wordcopy_bwd_aligned) _wordcopy_bwd_aligned_power7
+attribute_hidden;
+
+libc_ifunc (_wordcopy_bwd_aligned,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? _wordcopy_bwd_aligned_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? _wordcopy_bwd_aligned_power6
+ : _wordcopy_bwd_aligned_ppc);
+
+
+extern __typeof (_wordcopy_bwd_dest_aligned) _wordcopy_bwd_dest_aligned_ppc
+attribute_hidden;
+extern __typeof (_wordcopy_bwd_dest_aligned) _wordcopy_bwd_dest_aligned_power6
+attribute_hidden;
+extern __typeof (_wordcopy_bwd_dest_aligned) _wordcopy_bwd_dest_aligned_power7
+attribute_hidden;
+
+libc_ifunc (_wordcopy_bwd_dest_aligned,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? _wordcopy_bwd_dest_aligned_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? _wordcopy_bwd_dest_aligned_power6
+ : _wordcopy_bwd_dest_aligned_ppc);
+
+#else
+#include <sysdeps/powerpc/power4/wordcopy.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc32/power4/strncmp.S b/sysdeps/powerpc/powerpc32/power4/strncmp.S
index 724d9084a9..89b961e78d 100644
--- a/sysdeps/powerpc/powerpc32/power4/strncmp.S
+++ b/sysdeps/powerpc/powerpc32/power4/strncmp.S
@@ -24,7 +24,7 @@
EALIGN (strncmp, 4, 0)
-#define rTMP r0
+#define rTMP2 r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -37,6 +37,7 @@ EALIGN (strncmp, 4, 0)
#define r7F7F r9 /* constant 0x7f7f7f7f */
#define rNEG r10 /* ~(word in s1 | 0x7f7f7f7f) */
#define rBITDIF r11 /* bits that differ in s1 & s2 words */
+#define rTMP r12
dcbt 0,rSTR1
or rTMP, rSTR2, rSTR1
@@ -75,12 +76,45 @@ L(g1): add rTMP, rFEFE, rWORD1
we don't compare two strings as different because of gunk beyond
the end of the strings... */
+#ifdef __LITTLE_ENDIAN__
+L(endstring):
+ slwi rTMP, rTMP, 1
+ addi rTMP2, rTMP, -1
+ andc rTMP2, rTMP2, rTMP
+ and rWORD2, rWORD2, rTMP2 /* Mask off gunk. */
+ and rWORD1, rWORD1, rTMP2
+ rlwinm rTMP2, rWORD2, 8, 0xffffffff /* Byte reverse word. */
+ rlwinm rTMP, rWORD1, 8, 0xffffffff
+ rldimi rTMP2, rWORD2, 24, 32
+ rldimi rTMP, rWORD1, 24, 32
+ rlwimi rTMP2, rWORD2, 24, 16, 23
+ rlwimi rTMP, rWORD1, 24, 16, 23
+ xor. rBITDIF, rTMP, rTMP2
+ sub rRTN, rTMP, rTMP2
+ bgelr+
+ ori rRTN, rTMP2, 1
+ blr
+
+L(different):
+ lwz rWORD1, -4(rSTR1)
+ rlwinm rTMP2, rWORD2, 8, 0xffffffff /* Byte reverse word. */
+ rlwinm rTMP, rWORD1, 8, 0xffffffff
+ rldimi rTMP2, rWORD2, 24, 32
+ rldimi rTMP, rWORD1, 24, 32
+ rlwimi rTMP2, rWORD2, 24, 16, 23
+ rlwimi rTMP, rWORD1, 24, 16, 23
+ xor. rBITDIF, rTMP, rTMP2
+ sub rRTN, rTMP, rTMP2
+ bgelr+
+ ori rRTN, rTMP2, 1
+ blr
+
+#else
L(endstring):
and rTMP, r7F7F, rWORD1
beq cr1, L(equal)
add rTMP, rTMP, r7F7F
xor. rBITDIF, rWORD1, rWORD2
-
andc rNEG, rNEG, rTMP
blt- L(highbit)
cntlzw rBITDIF, rBITDIF
@@ -88,28 +122,20 @@ L(endstring):
addi rNEG, rNEG, 7
cmpw cr1, rNEG, rBITDIF
sub rRTN, rWORD1, rWORD2
- blt- cr1, L(equal)
- srawi rRTN, rRTN, 31
- ori rRTN, rRTN, 1
- blr
+ bgelr+ cr1
L(equal):
li rRTN, 0
blr
L(different):
- lwzu rWORD1, -4(rSTR1)
+ lwz rWORD1, -4(rSTR1)
xor. rBITDIF, rWORD1, rWORD2
sub rRTN, rWORD1, rWORD2
- blt- L(highbit)
- srawi rRTN, rRTN, 31
- ori rRTN, rRTN, 1
- blr
+ bgelr+
L(highbit):
- srwi rWORD2, rWORD2, 24
- srwi rWORD1, rWORD1, 24
- sub rRTN, rWORD1, rWORD2
+ ori rRTN, rWORD2, 1
blr
-
+#endif
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
diff --git a/sysdeps/powerpc/powerpc32/power5+/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc32/power5+/fpu/multiarch/Implies
new file mode 100644
index 0000000000..76a985188e
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power5+/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power5/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S b/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S
index ecd37c3cd2..49c8a08661 100644
--- a/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S
+++ b/sysdeps/powerpc/powerpc32/power5+/fpu/s_llround.S
@@ -39,8 +39,8 @@ ENTRY (__llround)
nop /* Ensure the following load is in a different dispatch */
nop /* group to avoid pipe stall on POWER4&5. */
nop
- lwz r4,12(r1)
- lwz r3,8(r1)
+ lwz r3,8+HIWORD(r1)
+ lwz r4,8+LOWORD(r1)
addi r1,r1,16
blr
END (__llround)
diff --git a/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S b/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S
index d4da625bb7..780dd9ca41 100644
--- a/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S
+++ b/sysdeps/powerpc/powerpc32/power5+/fpu/s_lround.S
@@ -38,7 +38,7 @@ ENTRY (__lround)
nop /* Ensure the following load is in a different dispatch */
nop /* group to avoid pipe stall on POWER4&5. */
nop
- lwz r3,12(r1)
+ lwz r3,8+LOWORD(r1)
addi r1,r1,16
blr
END (__lround)
diff --git a/sysdeps/powerpc/powerpc32/power5+/multiarch/Implies b/sysdeps/powerpc/powerpc32/power5+/multiarch/Implies
new file mode 100644
index 0000000000..54b3931625
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power5+/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power5/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power5/Implies b/sysdeps/powerpc/powerpc32/power5/Implies
index 17949d41c5..17139bf21c 100644
--- a/sysdeps/powerpc/powerpc32/power5/Implies
+++ b/sysdeps/powerpc/powerpc32/power5/Implies
@@ -1,4 +1,2 @@
-powerpc/power5/fpu
-powerpc/power5
powerpc/powerpc32/power4/fpu
powerpc/powerpc32/power4
diff --git a/sysdeps/powerpc/powerpc32/power5/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc32/power5/fpu/multiarch/Implies
new file mode 100644
index 0000000000..c6c090a60e
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power5/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power4/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S b/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S
index f2417fdf41..5f7ba43a2a 100644
--- a/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S
+++ b/sysdeps/powerpc/powerpc32/power5/fpu/s_isnan.S
@@ -27,8 +27,8 @@ EALIGN (__isnan, 4, 0)
ori r1,r1,0
stfd fp1,24(r1) /* copy FPR to GPR */
ori r1,r1,0
- lwz r4,24(r1)
- lwz r5,28(r1)
+ lwz r4,24+HIWORD(r1)
+ lwz r5,24+LOWORD(r1)
lis r0,0x7ff0 /* const long r0 0x7ff00000 00000000 */
clrlwi r4,r4,1 /* x = fabs(x) */
cmpw cr7,r4,r0 /* if (fabs(x) =< inf) */
diff --git a/sysdeps/powerpc/powerpc32/power5/multiarch/Implies b/sysdeps/powerpc/powerpc32/power5/multiarch/Implies
new file mode 100644
index 0000000000..d29e3853ab
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power5/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power4/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power6/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc32/power6/fpu/multiarch/Implies
new file mode 100644
index 0000000000..c66805ee63
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power6/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power5+/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S b/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S
index 2c095db1d4..3ea18589c8 100644
--- a/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S
+++ b/sysdeps/powerpc/powerpc32/power6/fpu/s_isnan.S
@@ -27,8 +27,8 @@ EALIGN (__isnan, 4, 0)
ori r1,r1,0
stfd fp1,24(r1) /* copy FPR to GPR */
ori r1,r1,0
- lwz r4,24(r1)
- lwz r5,28(r1)
+ lwz r4,24+HIWORD(r1)
+ lwz r5,24+LOWORD(r1)
lis r0,0x7ff0 /* const long r0 0x7ff00000 00000000 */
clrlwi r4,r4,1 /* x = fabs(x) */
cmpw cr7,r4,r0 /* if (fabs(x) =< inf) */
diff --git a/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S b/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S
index 3344b312e2..c0660cf6ec 100644
--- a/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S
+++ b/sysdeps/powerpc/powerpc32/power6/fpu/s_llrint.S
@@ -29,8 +29,8 @@ ENTRY (__llrint)
/* Insure the following load is in a different dispatch group by
inserting "group ending nop". */
ori r1,r1,0
- lwz r3,8(r1)
- lwz r4,12(r1)
+ lwz r3,8+HIWORD(r1)
+ lwz r4,8+LOWORD(r1)
addi r1,r1,16
blr
END (__llrint)
diff --git a/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S b/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S
index 7f64f8d12b..ce298905c1 100644
--- a/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S
+++ b/sysdeps/powerpc/powerpc32/power6/fpu/s_llrintf.S
@@ -28,8 +28,8 @@ ENTRY (__llrintf)
/* Insure the following load is in a different dispatch group by
inserting "group ending nop". */
ori r1,r1,0
- lwz r3,8(r1)
- lwz r4,12(r1)
+ lwz r3,8+HIWORD(r1)
+ lwz r4,8+LOWORD(r1)
addi r1,r1,16
blr
END (__llrintf)
diff --git a/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S b/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S
index 0ff04cb718..abb0840d18 100644
--- a/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S
+++ b/sysdeps/powerpc/powerpc32/power6/fpu/s_llround.S
@@ -39,8 +39,8 @@ ENTRY (__llround)
/* Insure the following load is in a different dispatch group by
inserting "group ending nop". */
ori r1,r1,0
- lwz r4,12(r1)
- lwz r3,8(r1)
+ lwz r3,8+HIWORD(r1)
+ lwz r4,8+LOWORD(r1)
addi r1,r1,16
blr
END (__llround)
diff --git a/sysdeps/powerpc/powerpc32/power6/memcpy.S b/sysdeps/powerpc/powerpc32/power6/memcpy.S
index c7868069ab..f58114a0c5 100644
--- a/sysdeps/powerpc/powerpc32/power6/memcpy.S
+++ b/sysdeps/powerpc/powerpc32/power6/memcpy.S
@@ -219,15 +219,28 @@ L(word_unaligned_short):
blt cr6,5f
srwi 7,6,16
bgt cr6,3f
+#ifdef __LITTLE_ENDIAN__
+ sth 7,0(3)
+#else
sth 6,0(3)
+#endif
b 7f
.align 4
3:
+#ifdef __LITTLE_ENDIAN__
+ rotlwi 6,6,24
+ stb 6,0(3)
+ sth 7,1(3)
+#else
stb 7,0(3)
sth 6,1(3)
+#endif
b 7f
.align 4
5:
+#ifdef __LITTLE_ENDIAN__
+ rotlwi 6,6,8
+#endif
stb 6,0(3)
7:
cmplwi cr1,10,16
@@ -433,7 +446,7 @@ L(wdu):
Then if more than 4 bytes remain we again use aligned loads,
shifts and or to generate the next dst word. We then process the
remaining words using unaligned loads as needed. Finally we check
- if there more than 0 bytes (1-3) bytes remaining and use
+ if there are more than 0 bytes (1-3) bytes remaining and use
halfword and or byte load/stores to complete the copy.
*/
mr 4,12 /* restore unaligned adjusted src ptr */
@@ -577,7 +590,11 @@ L(wdu1_32):
lwz 6,-1(4)
cmplwi cr6,31,4
srwi 8,31,5 /* calculate the 32 byte loop count */
+#ifdef __LITTLE_ENDIAN__
+ srwi 6,6,8
+#else
slwi 6,6,8
+#endif
clrlwi 31,31,27 /* The remaining bytes, < 32. */
blt cr5,L(wdu1_32tail)
mtctr 8
@@ -585,8 +602,12 @@ L(wdu1_32):
lwz 8,3(4)
lwz 7,4(4)
+#ifdef __LITTLE_ENDIAN__
+ rldimi 6,8,24,32
+#else
/* Equivalent to: srwi 8,8,32-8; or 6,6,8 */
rlwimi 6,8,8,(32-8),31
+#endif
b L(wdu1_loop32x)
.align 4
L(wdu1_loop32):
@@ -595,8 +616,12 @@ L(wdu1_loop32):
lwz 7,4(4)
stw 10,-8(3)
stw 11,-4(3)
+#ifdef __LITTLE_ENDIAN__
+ rldimi 6,8,24,32
+#else
/* Equivalent to srwi 8,8,32-8; or 6,6,8 */
rlwimi 6,8,8,(32-8),31
+#endif
L(wdu1_loop32x):
lwz 10,8(4)
lwz 11,12(4)
@@ -613,7 +638,11 @@ L(wdu1_loop32x):
stw 6,16(3)
stw 7,20(3)
addi 3,3,32
+#ifdef __LITTLE_ENDIAN__
+ srwi 6,8,8
+#else
slwi 6,8,8
+#endif
bdnz+ L(wdu1_loop32)
stw 10,-8(3)
stw 11,-4(3)
@@ -624,8 +653,12 @@ L(wdu1_32tail):
blt cr6,L(wdu_4tail)
/* calculate and store the final word */
lwz 8,3(4)
-/* Equivalent to: srwi 8,8,32-9; or 6,6,8 */
+#ifdef __LITTLE_ENDIAN__
+ rldimi 6,8,24,32
+#else
+/* Equivalent to: srwi 8,8,32-8; or 6,6,8 */
rlwimi 6,8,8,(32-8),31
+#endif
b L(wdu_32tailx)
L(wdu2_32):
@@ -633,7 +666,11 @@ L(wdu2_32):
lwz 6,-2(4)
cmplwi cr6,31,4
srwi 8,31,5 /* calculate the 32 byte loop count */
+#ifdef __LITTLE_ENDIAN__
+ srwi 6,6,16
+#else
slwi 6,6,16
+#endif
clrlwi 31,31,27 /* The remaining bytes, < 32. */
blt cr5,L(wdu2_32tail)
mtctr 8
@@ -641,8 +678,11 @@ L(wdu2_32):
lwz 8,2(4)
lwz 7,4(4)
-/* Equivalent to: srwi 8,8,32-8; or 6,6,8 */
+#ifdef __LITTLE_ENDIAN__
+ rldimi 6,8,16,32
+#else
rlwimi 6,8,16,(32-16),31
+#endif
b L(wdu2_loop32x)
.align 4
L(wdu2_loop32):
@@ -651,8 +691,11 @@ L(wdu2_loop32):
lwz 7,4(4)
stw 10,-8(3)
stw 11,-4(3)
-/* Equivalent to srwi 8,8,32-8; or 6,6,8 */
+#ifdef __LITTLE_ENDIAN__
+ rldimi 6,8,16,32
+#else
rlwimi 6,8,16,(32-16),31
+#endif
L(wdu2_loop32x):
lwz 10,8(4)
lwz 11,12(4)
@@ -670,7 +713,11 @@ L(wdu2_loop32x):
stw 6,16(3)
stw 7,20(3)
addi 3,3,32
+#ifdef __LITTLE_ENDIAN__
+ srwi 6,8,16
+#else
slwi 6,8,16
+#endif
bdnz+ L(wdu2_loop32)
stw 10,-8(3)
stw 11,-4(3)
@@ -681,8 +728,11 @@ L(wdu2_32tail):
blt cr6,L(wdu_4tail)
/* calculate and store the final word */
lwz 8,2(4)
-/* Equivalent to: srwi 8,8,32-9; or 6,6,8 */
+#ifdef __LITTLE_ENDIAN__
+ rldimi 6,8,16,32
+#else
rlwimi 6,8,16,(32-16),31
+#endif
b L(wdu_32tailx)
L(wdu3_32):
@@ -690,7 +740,11 @@ L(wdu3_32):
lwz 6,-3(4)
cmplwi cr6,31,4
srwi 8,31,5 /* calculate the 32 byte loop count */
+#ifdef __LITTLE_ENDIAN__
+ srwi 6,6,24
+#else
slwi 6,6,24
+#endif
clrlwi 31,31,27 /* The remaining bytes, < 32. */
blt cr5,L(wdu3_32tail)
mtctr 8
@@ -698,8 +752,11 @@ L(wdu3_32):
lwz 8,1(4)
lwz 7,4(4)
-/* Equivalent to: srwi 8,8,32-8; or 6,6,8 */
+#ifdef __LITTLE_ENDIAN__
+ rldimi 6,8,8,32
+#else
rlwimi 6,8,24,(32-24),31
+#endif
b L(wdu3_loop32x)
.align 4
L(wdu3_loop32):
@@ -708,8 +765,11 @@ L(wdu3_loop32):
lwz 7,4(4)
stw 10,-8(3)
stw 11,-4(3)
-/* Equivalent to srwi 8,8,32-8; or 6,6,8 */
+#ifdef __LITTLE_ENDIAN__
+ rldimi 6,8,8,32
+#else
rlwimi 6,8,24,(32-24),31
+#endif
L(wdu3_loop32x):
lwz 10,8(4)
lwz 11,12(4)
@@ -726,7 +786,11 @@ L(wdu3_loop32x):
stw 6,16(3)
stw 7,20(3)
addi 3,3,32
+#ifdef __LITTLE_ENDIAN__
+ srwi 6,8,24
+#else
slwi 6,8,24
+#endif
bdnz+ L(wdu3_loop32)
stw 10,-8(3)
stw 11,-4(3)
@@ -737,8 +801,11 @@ L(wdu3_32tail):
blt cr6,L(wdu_4tail)
/* calculate and store the final word */
lwz 8,1(4)
-/* Equivalent to: srwi 8,8,32-9; or 6,6,8 */
+#ifdef __LITTLE_ENDIAN__
+ rldimi 6,8,8,32
+#else
rlwimi 6,8,24,(32-24),31
+#endif
b L(wdu_32tailx)
.align 4
L(wdu_32tailx):
diff --git a/sysdeps/powerpc/powerpc32/power6/memset.S b/sysdeps/powerpc/powerpc32/power6/memset.S
index 8c23c8d136..a4b002a960 100644
--- a/sysdeps/powerpc/powerpc32/power6/memset.S
+++ b/sysdeps/powerpc/powerpc32/power6/memset.S
@@ -48,7 +48,7 @@ L(_memset):
ble- cr1, L(small)
/* Align to word boundary. */
cmplwi cr5, rLEN, 31
- rlwimi rCHR, rCHR, 8, 16, 23 /* Replicate byte to halfword. */
+ insrdi rCHR, rCHR, 8, 48 /* Replicate byte to halfword. */
beq+ L(aligned)
mtcrf 0x01, rMEMP0
subfic rALIGN, rALIGN, 4
@@ -64,7 +64,7 @@ L(g0):
/* Handle the case of size < 31. */
L(aligned):
mtcrf 0x01, rLEN
- rlwimi rCHR, rCHR, 16, 0, 15 /* Replicate halfword to word. */
+ insrdi rCHR, rCHR, 16, 32 /* Replicate halfword to word. */
ble cr5, L(medium)
/* Align to 32-byte boundary. */
andi. rALIGN, rMEMP, 0x1C
diff --git a/sysdeps/powerpc/powerpc32/power6/multiarch/Implies b/sysdeps/powerpc/powerpc32/power6/multiarch/Implies
new file mode 100644
index 0000000000..ff9f999749
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power6/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power5+/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power6x/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc32/power6x/fpu/multiarch/Implies
new file mode 100644
index 0000000000..c66805ee63
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power6x/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power5+/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power6x/multiarch/Implies b/sysdeps/powerpc/powerpc32/power6x/multiarch/Implies
new file mode 100644
index 0000000000..ff9f999749
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power6x/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power5+/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power7/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc32/power7/fpu/multiarch/Implies
new file mode 100644
index 0000000000..45cbaede9f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power7/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power6/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S b/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S
index b2ab5bfe7b..095c15547a 100644
--- a/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S
+++ b/sysdeps/powerpc/powerpc32/power7/fpu/s_finite.S
@@ -54,9 +54,8 @@ ENTRY (__finite)
stfd fp1,8(r1) /* Transfer FP to GPR's. */
ori 2,2,0 /* Force a new dispatch group. */
- lhz r0,8(r1) /* Fetch the upper portion of the high word of
- the FP value (where the exponent and sign bits
- are). */
+ lhz r0,8+HISHORT(r1) /* Fetch the upper 16 bits of the FP value
+ (biased exponent and sign bit). */
clrlwi r0,r0,17 /* r0 = abs(r0). */
addi r1,r1,16 /* Reset the stack pointer. */
cmpwi cr7,r0,0x7ff0 /* r4 == 0x7ff0?. */
diff --git a/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S b/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S
index 3f8af60a55..0101c8fa17 100644
--- a/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S
+++ b/sysdeps/powerpc/powerpc32/power7/fpu/s_isinf.S
@@ -48,14 +48,13 @@ ENTRY (__isinf)
li r3,0
bflr 29 /* If not INF, return. */
- /* Either we have -INF/+INF or a denormal. */
+ /* Either we have +INF or -INF. */
stwu r1,-16(r1) /* Allocate stack space. */
stfd fp1,8(r1) /* Transfer FP to GPR's. */
ori 2,2,0 /* Force a new dispatch group. */
- lhz r4,8(r1) /* Fetch the upper portion of the high word of
- the FP value (where the exponent and sign bits
- are). */
+ lhz r4,8+HISHORT(r1) /* Fetch the upper 16 bits of the FP value
+ (biased exponent and sign bit). */
addi r1,r1,16 /* Reset the stack pointer. */
cmpwi cr7,r4,0x7ff0 /* r4 == 0x7ff0? */
li r3,1
diff --git a/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S b/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S
index 99ff126961..0ad1dcf1f7 100644
--- a/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S
+++ b/sysdeps/powerpc/powerpc32/power7/fpu/s_isnan.S
@@ -53,8 +53,8 @@ ENTRY (__isnan)
stwu r1,-16(r1) /* Allocate stack space. */
stfd fp1,8(r1) /* Transfer FP to GPR's. */
ori 2,2,0 /* Force a new dispatch group. */
- lwz r4,8(r1) /* Load the upper half of the FP value. */
- lwz r5,12(r1) /* Load the lower half of the FP value. */
+ lwz r4,8+HIWORD(r1) /* Load the upper half of the FP value. */
+ lwz r5,8+LOWORD(r1) /* Load the lower half of the FP value. */
addi r1,r1,16 /* Reset the stack pointer. */
lis r0,0x7ff0 /* Load the upper portion for an INF/NaN. */
clrlwi r4,r4,1 /* r4 = abs(r4). */
diff --git a/sysdeps/powerpc/powerpc32/power7/memchr.S b/sysdeps/powerpc/powerpc32/power7/memchr.S
index 369e5e0483..85754f3f17 100644
--- a/sysdeps/powerpc/powerpc32/power7/memchr.S
+++ b/sysdeps/powerpc/powerpc32/power7/memchr.S
@@ -25,107 +25,111 @@ ENTRY (__memchr)
CALL_MCOUNT
dcbt 0,r3
clrrwi r8,r3,2
- rlwimi r4,r4,8,16,23
- rlwimi r4,r4,16,0,15
+ insrdi r4,r4,8,48
add r7,r3,r5 /* Calculate the last acceptable address. */
+ insrdi r4,r4,16,32
cmplwi r5,16
+ li r9, -1
+ rlwinm r6,r3,3,27,28 /* Calculate padding. */
+ addi r7,r7,-1
+#ifdef __LITTLE_ENDIAN__
+ slw r9,r9,r6
+#else
+ srw r9,r9,r6
+#endif
ble L(small_range)
- cmplw cr7,r3,r7 /* Compare the starting address (r3) with the
- ending address (r7). If (r3 >= r7), the size
- passed in is zero or negative. */
- ble cr7,L(proceed)
-
- li r7,-1 /* Artificially set our ending address (r7)
- such that we will exit early. */
-L(proceed):
- rlwinm r6,r3,3,27,28 /* Calculate padding. */
- cmpli cr6,r6,0 /* cr6 == Do we have padding? */
lwz r12,0(r8) /* Load word from memory. */
- cmpb r10,r12,r4 /* Check for BYTEs in WORD1. */
- beq cr6,L(proceed_no_padding)
- slw r10,r10,r6
- srw r10,r10,r6
-L(proceed_no_padding):
- cmplwi cr7,r10,0 /* If r10 == 0, no BYTEs have been found. */
+ cmpb r3,r12,r4 /* Check for BYTEs in WORD1. */
+ and r3,r3,r9
+ clrlwi r5,r7,30 /* Byte count - 1 in last word. */
+ clrrwi r7,r7,2 /* Address of last word. */
+ cmplwi cr7,r3,0 /* If r3 == 0, no BYTEs have been found. */
bne cr7,L(done)
- /* Are we done already? */
- addi r9,r8,4
- cmplw cr6,r9,r7
- bge cr6,L(null)
-
mtcrf 0x01,r8
/* Are we now aligned to a doubleword boundary? If so, skip to
the main loop. Otherwise, go through the alignment code. */
-
bt 29,L(loop_setup)
/* Handle WORD2 of pair. */
lwzu r12,4(r8)
- cmpb r10,r12,r4
- cmplwi cr7,r10,0
+ cmpb r3,r12,r4
+ cmplwi cr7,r3,0
bne cr7,L(done)
- /* Are we done already? */
- addi r9,r8,4
- cmplw cr6,r9,r7
- bge cr6,L(null)
-
L(loop_setup):
- sub r5,r7,r9
- srwi r6,r5,3 /* Number of loop iterations. */
+ /* The last word we want to read in the loop below is the one
+ containing the last byte of the string, ie. the word at
+ (s + size - 1) & ~3, or r7. The first word read is at
+ r8 + 4, we read 2 * cnt words, so the last word read will
+ be at r8 + 4 + 8 * cnt - 4. Solving for cnt gives
+ cnt = (r7 - r8) / 8 */
+ sub r6,r7,r8
+ srwi r6,r6,3 /* Number of loop iterations. */
mtctr r6 /* Setup the counter. */
- b L(loop)
- /* Main loop to look for BYTE backwards in the string. Since
- it's a small loop (< 8 instructions), align it to 32-bytes. */
- .p2align 5
+
+ /* Main loop to look for BYTE in the string. Since
+ it's a small loop (8 instructions), align it to 32-bytes. */
+ .align 5
L(loop):
/* Load two words, compare and merge in a
single register for speed. This is an attempt
to speed up the byte-checking process for bigger strings. */
lwz r12,4(r8)
lwzu r11,8(r8)
- cmpb r10,r12,r4
+ cmpb r3,r12,r4
cmpb r9,r11,r4
- or r5,r9,r10 /* Merge everything in one word. */
- cmplwi cr7,r5,0
+ or r6,r9,r3 /* Merge everything in one word. */
+ cmplwi cr7,r6,0
bne cr7,L(found)
bdnz L(loop)
- /* We're here because the counter reached 0, and that means we
- didn't have any matches for BYTE in the whole range. */
- subi r11,r7,4
- cmplw cr6,r8,r11
- blt cr6,L(loop_small)
- b L(null)
+ /* We may have one more dword to read. */
+ cmplw r8,r7
+ beqlr
+
+ lwzu r12,4(r8)
+ cmpb r3,r12,r4
+ cmplwi cr6,r3,0
+ bne cr6,L(done)
+ blr
+ .align 4
+L(found):
/* OK, one (or both) of the words contains BYTE. Check
the first word and decrement the address in case the first
word really contains BYTE. */
- .align 4
-L(found):
- cmplwi cr6,r10,0
+ cmplwi cr6,r3,0
addi r8,r8,-4
bne cr6,L(done)
/* BYTE must be in the second word. Adjust the address
- again and move the result of cmpb to r10 so we can calculate the
+ again and move the result of cmpb to r3 so we can calculate the
pointer. */
- mr r10,r9
+ mr r3,r9
addi r8,r8,4
- /* r10 has the output of the cmpb instruction, that is, it contains
+ /* r3 has the output of the cmpb instruction, that is, it contains
0xff in the same position as BYTE in the original
word from the string. Use that to calculate the pointer.
We need to make sure BYTE is *before* the end of the range. */
L(done):
- cntlzw r0,r10 /* Count leading zeroes before the match. */
- srwi r0,r0,3 /* Convert leading zeroes to bytes. */
+#ifdef __LITTLE_ENDIAN__
+ addi r0,r3,-1
+ andc r0,r0,r3
+ popcntw r0,r0 /* Count trailing zeros. */
+#else
+ cntlzw r0,r3 /* Count leading zeros before the match. */
+#endif
+ cmplw r8,r7 /* Are we on the last word? */
+ srwi r0,r0,3 /* Convert leading/trailing zeros to bytes. */
add r3,r8,r0
- cmplw r3,r7
- bge L(null)
+ cmplw cr7,r0,r5 /* If on the last dword, check byte offset. */
+ bnelr
+ blelr cr7
+ li r3,0
blr
.align 4
@@ -137,67 +141,42 @@ L(null):
.align 4
L(small_range):
cmplwi r5,0
- rlwinm r6,r3,3,27,28 /* Calculate padding. */
- beq L(null) /* This branch is for the cmplwi r5,0 above */
+ beq L(null)
lwz r12,0(r8) /* Load word from memory. */
- cmplwi cr6,r6,0 /* cr6 == Do we have padding? */
- cmpb r10,r12,r4 /* Check for BYTE in DWORD1. */
- beq cr6,L(small_no_padding)
- slw r10,r10,r6
- srw r10,r10,r6
-L(small_no_padding):
- cmplwi cr7,r10,0
+ cmpb r3,r12,r4 /* Check for BYTE in DWORD1. */
+ and r3,r3,r9
+ cmplwi cr7,r3,0
+ clrlwi r5,r7,30 /* Byte count - 1 in last word. */
+ clrrwi r7,r7,2 /* Address of last word. */
+ cmplw r8,r7 /* Are we done already? */
bne cr7,L(done)
+ beqlr
- /* Are we done already? */
- addi r9,r8,4
- cmplw r9,r7
- bge L(null)
-
-L(loop_small): /* loop_small has been unrolled. */
lwzu r12,4(r8)
- cmpb r10,r12,r4
- addi r9,r8,4
- cmplwi cr6,r10,0
- cmplw r9,r7
+ cmpb r3,r12,r4
+ cmplwi cr6,r3,0
+ cmplw r8,r7
bne cr6,L(done)
- bge L(null)
+ beqlr
lwzu r12,4(r8)
- cmpb r10,r12,r4
- addi r9,r8,4
- cmplwi cr6,r10,0
- cmplw r9,r7
+ cmpb r3,r12,r4
+ cmplwi cr6,r3,0
+ cmplw r8,r7
bne cr6,L(done)
- bge L(null)
+ beqlr
lwzu r12,4(r8)
- cmpb r10,r12,r4
- addi r9,r8,4
- cmplwi cr6,r10,0
- cmplw r9,r7
+ cmpb r3,r12,r4
+ cmplwi cr6,r3,0
+ cmplw r8,r7
bne cr6,L(done)
- bge L(null)
+ beqlr
lwzu r12,4(r8)
- cmpb r10,r12,r4
- addi r9,r8,4
- cmplwi cr6,r10,0
- cmplw r9,r7
+ cmpb r3,r12,r4
+ cmplwi cr6,r3,0
bne cr6,L(done)
- bge L(null)
-
- /* For most cases we will never get here. Under some combinations of
- padding + length there is a leftover word that still needs to be
- checked. */
- lwzu r12,4(r8)
- cmpb r10,r12,r4
- addi r9,r8,4
- cmplwi cr6,r10,0
- bne cr6,L(done)
-
- /* save a branch and exit directly */
- li r3,0
blr
END (__memchr)
diff --git a/sysdeps/powerpc/powerpc32/power7/memcmp.S b/sysdeps/powerpc/powerpc32/power7/memcmp.S
index 075e19f141..f160ddebf6 100644
--- a/sysdeps/powerpc/powerpc32/power7/memcmp.S
+++ b/sysdeps/powerpc/powerpc32/power7/memcmp.S
@@ -23,10 +23,9 @@
size_t size [r5]) */
.machine power7
-EALIGN (memcmp,4,0)
+EALIGN (memcmp, 4, 0)
CALL_MCOUNT
-#define rTMP r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -37,35 +36,32 @@ EALIGN (memcmp,4,0)
#define rWORD4 r9 /* next word in s2 */
#define rWORD5 r10 /* next word in s1 */
#define rWORD6 r11 /* next word in s2 */
-#define rBITDIF r12 /* bits that differ in s1 & s2 words */
#define rWORD7 r30 /* next word in s1 */
#define rWORD8 r31 /* next word in s2 */
- xor rTMP,rSTR2,rSTR1
- cmplwi cr6,rN,0
- cmplwi cr1,rN,12
- clrlwi. rTMP,rTMP,30
- clrlwi rBITDIF,rSTR1,30
- cmplwi cr5,rBITDIF,0
- beq- cr6,L(zeroLength)
- dcbt 0,rSTR1
- dcbt 0,rSTR2
-
- /* If less than 8 bytes or not aligned, use the unaligned
- byte loop. */
-
- blt cr1,L(bytealigned)
- stwu 1,-64(1)
+ xor r0, rSTR2, rSTR1
+ cmplwi cr6, rN, 0
+ cmplwi cr1, rN, 12
+ clrlwi. r0, r0, 30
+ clrlwi r12, rSTR1, 30
+ cmplwi cr5, r12, 0
+ beq- cr6, L(zeroLength)
+ dcbt 0, rSTR1
+ dcbt 0, rSTR2
+/* If less than 8 bytes or not aligned, use the unaligned
+ byte loop. */
+ blt cr1, L(bytealigned)
+ stwu 1, -64(r1)
cfi_adjust_cfa_offset(64)
- stw r31,48(1)
- cfi_offset(31,(48-64))
- stw r30,44(1)
- cfi_offset(30,(44-64))
+ stw rWORD8, 48(r1)
+ cfi_offset(rWORD8, (48-64))
+ stw rWORD7, 44(r1)
+ cfi_offset(rWORD7, (44-64))
bne L(unaligned)
/* At this point we know both strings have the same alignment and the
- compare length is at least 8 bytes. rBITDIF contains the low order
+ compare length is at least 8 bytes. r12 contains the low order
2 bits of rSTR1 and cr5 contains the result of the logical compare
- of rBITDIF to 0. If rBITDIF == 0 then we are already word
+ of r12 to 0. If r12 == 0 then we are already word
aligned and can perform the word aligned loop.
Otherwise we know the two strings have the same alignment (but not
@@ -74,332 +70,541 @@ EALIGN (memcmp,4,0)
eliminate bits preceding the first byte. Since we want to join the
normal (word aligned) compare loop, starting at the second word,
we need to adjust the length (rN) and special case the loop
- versioning for the first word. This insures that the loop count is
+ versioning for the first word. This ensures that the loop count is
correct and the first word (shifted) is in the expected register pair. */
.align 4
L(samealignment):
- clrrwi rSTR1,rSTR1,2
- clrrwi rSTR2,rSTR2,2
- beq cr5,L(Waligned)
- add rN,rN,rBITDIF
- slwi r11,rBITDIF,3
- srwi rTMP,rN,4 /* Divide by 16 */
- andi. rBITDIF,rN,12 /* Get the word remainder */
- lwz rWORD1,0(rSTR1)
- lwz rWORD2,0(rSTR2)
- cmplwi cr1,rBITDIF,8
- cmplwi cr7,rN,16
- clrlwi rN,rN,30
+ clrrwi rSTR1, rSTR1, 2
+ clrrwi rSTR2, rSTR2, 2
+ beq cr5, L(Waligned)
+ add rN, rN, r12
+ slwi rWORD6, r12, 3
+ srwi r0, rN, 4 /* Divide by 16 */
+ andi. r12, rN, 12 /* Get the word remainder */
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 0(rSTR1)
+ lwz rWORD2, 0(rSTR2)
+#endif
+ cmplwi cr1, r12, 8
+ cmplwi cr7, rN, 16
+ clrlwi rN, rN, 30
beq L(dPs4)
- mtctr rTMP
- bgt cr1,L(dPs3)
- beq cr1,L(dPs2)
+ mtctr r0
+ bgt cr1, L(dPs3)
+ beq cr1, L(dPs2)
/* Remainder is 4 */
.align 3
L(dsP1):
- slw rWORD5,rWORD1,r11
- slw rWORD6,rWORD2,r11
- cmplw cr5,rWORD5,rWORD6
- blt cr7,L(dP1x)
+ slw rWORD5, rWORD1, rWORD6
+ slw rWORD6, rWORD2, rWORD6
+ cmplw cr5, rWORD5, rWORD6
+ blt cr7, L(dP1x)
/* Do something useful in this cycle since we have to branch anyway. */
- lwz rWORD1,4(rSTR1)
- lwz rWORD2,4(rSTR2)
- cmplw cr0,rWORD1,rWORD2
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 4(rSTR1)
+ lwz rWORD2, 4(rSTR2)
+#endif
+ cmplw cr7, rWORD1, rWORD2
b L(dP1e)
/* Remainder is 8 */
.align 4
L(dPs2):
- slw rWORD5,rWORD1,r11
- slw rWORD6,rWORD2,r11
- cmplw cr6,rWORD5,rWORD6
- blt cr7,L(dP2x)
+ slw rWORD5, rWORD1, rWORD6
+ slw rWORD6, rWORD2, rWORD6
+ cmplw cr6, rWORD5, rWORD6
+ blt cr7, L(dP2x)
/* Do something useful in this cycle since we have to branch anyway. */
- lwz rWORD7,4(rSTR1)
- lwz rWORD8,4(rSTR2)
- cmplw cr5,rWORD7,rWORD8
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD7, 4(rSTR1)
+ lwz rWORD8, 4(rSTR2)
+#endif
+ cmplw cr5, rWORD7, rWORD8
b L(dP2e)
/* Remainder is 12 */
.align 4
L(dPs3):
- slw rWORD3,rWORD1,r11
- slw rWORD4,rWORD2,r11
- cmplw cr1,rWORD3,rWORD4
+ slw rWORD3, rWORD1, rWORD6
+ slw rWORD4, rWORD2, rWORD6
+ cmplw cr1, rWORD3, rWORD4
b L(dP3e)
/* Count is a multiple of 16, remainder is 0 */
.align 4
L(dPs4):
- mtctr rTMP
- slw rWORD1,rWORD1,r11
- slw rWORD2,rWORD2,r11
- cmplw cr0,rWORD1,rWORD2
+ mtctr r0
+ slw rWORD1, rWORD1, rWORD6
+ slw rWORD2, rWORD2, rWORD6
+ cmplw cr7, rWORD1, rWORD2
b L(dP4e)
/* At this point we know both strings are word aligned and the
compare length is at least 8 bytes. */
.align 4
L(Waligned):
- andi. rBITDIF,rN,12 /* Get the word remainder */
- srwi rTMP,rN,4 /* Divide by 16 */
- cmplwi cr1,rBITDIF,8
- cmplwi cr7,rN,16
- clrlwi rN,rN,30
+ andi. r12, rN, 12 /* Get the word remainder */
+ srwi r0, rN, 4 /* Divide by 16 */
+ cmplwi cr1, r12, 8
+ cmplwi cr7, rN, 16
+ clrlwi rN, rN, 30
beq L(dP4)
- bgt cr1,L(dP3)
- beq cr1,L(dP2)
+ bgt cr1, L(dP3)
+ beq cr1, L(dP2)
/* Remainder is 4 */
.align 4
L(dP1):
- mtctr rTMP
+ mtctr r0
/* Normally we'd use rWORD7/rWORD8 here, but since we might exit early
(8-15 byte compare), we want to use only volatile registers. This
means we can avoid restoring non-volatile registers since we did not
change any on the early exit path. The key here is the non-early
exit path only cares about the condition code (cr5), not about which
register pair was used. */
- lwz rWORD5,0(rSTR1)
- lwz rWORD6,0(rSTR2)
- cmplw cr5,rWORD5,rWORD6
- blt cr7,L(dP1x)
- lwz rWORD1,4(rSTR1)
- lwz rWORD2,4(rSTR2)
- cmplw cr0,rWORD1,rWORD2
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD5, 0(rSTR1)
+ lwz rWORD6, 0(rSTR2)
+#endif
+ cmplw cr5, rWORD5, rWORD6
+ blt cr7, L(dP1x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 4(rSTR1)
+ lwz rWORD2, 4(rSTR2)
+#endif
+ cmplw cr7, rWORD1, rWORD2
L(dP1e):
- lwz rWORD3,8(rSTR1)
- lwz rWORD4,8(rSTR2)
- cmplw cr1,rWORD3,rWORD4
- lwz rWORD5,12(rSTR1)
- lwz rWORD6,12(rSTR2)
- cmplw cr6,rWORD5,rWORD6
- bne cr5,L(dLcr5)
- bne cr0,L(dLcr0)
-
- lwzu rWORD7,16(rSTR1)
- lwzu rWORD8,16(rSTR2)
- bne cr1,L(dLcr1)
- cmplw cr5,rWORD7,rWORD8
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD3, 8(rSTR1)
+ lwz rWORD4, 8(rSTR2)
+#endif
+ cmplw cr1, rWORD3, rWORD4
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD5, 12(rSTR1)
+ lwz rWORD6, 12(rSTR2)
+#endif
+ cmplw cr6, rWORD5, rWORD6
+ bne cr5, L(dLcr5x)
+ bne cr7, L(dLcr7x)
+
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwzu rWORD7, 16(rSTR1)
+ lwzu rWORD8, 16(rSTR2)
+#endif
+ bne cr1, L(dLcr1)
+ cmplw cr5, rWORD7, rWORD8
bdnz L(dLoop)
- bne cr6,L(dLcr6)
- lwz r30,44(1)
- lwz r31,48(1)
+ bne cr6, L(dLcr6)
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
.align 3
L(dP1x):
- slwi. r12,rN,3
- bne cr5,L(dLcr5)
- subfic rN,r12,32 /* Shift count is 32 - (rN * 8). */
- lwz 1,0(1)
+ slwi. r12, rN, 3
+ bne cr5, L(dLcr5x)
+ subfic rN, r12, 32 /* Shift count is 32 - (rN * 8). */
+ addi r1, r1, 64
+ cfi_adjust_cfa_offset(-64)
bne L(d00)
- li rRTN,0
+ li rRTN, 0
blr
/* Remainder is 8 */
.align 4
+ cfi_adjust_cfa_offset(64)
L(dP2):
- mtctr rTMP
- lwz rWORD5,0(rSTR1)
- lwz rWORD6,0(rSTR2)
- cmplw cr6,rWORD5,rWORD6
- blt cr7,L(dP2x)
- lwz rWORD7,4(rSTR1)
- lwz rWORD8,4(rSTR2)
- cmplw cr5,rWORD7,rWORD8
+ mtctr r0
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD5, 0(rSTR1)
+ lwz rWORD6, 0(rSTR2)
+#endif
+ cmplw cr6, rWORD5, rWORD6
+ blt cr7, L(dP2x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD7, 4(rSTR1)
+ lwz rWORD8, 4(rSTR2)
+#endif
+ cmplw cr5, rWORD7, rWORD8
L(dP2e):
- lwz rWORD1,8(rSTR1)
- lwz rWORD2,8(rSTR2)
- cmplw cr0,rWORD1,rWORD2
- lwz rWORD3,12(rSTR1)
- lwz rWORD4,12(rSTR2)
- cmplw cr1,rWORD3,rWORD4
- addi rSTR1,rSTR1,4
- addi rSTR2,rSTR2,4
- bne cr6,L(dLcr6)
- bne cr5,L(dLcr5)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 8(rSTR1)
+ lwz rWORD2, 8(rSTR2)
+#endif
+ cmplw cr7, rWORD1, rWORD2
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD3, 12(rSTR1)
+ lwz rWORD4, 12(rSTR2)
+#endif
+ cmplw cr1, rWORD3, rWORD4
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#endif
+ bne cr6, L(dLcr6)
+ bne cr5, L(dLcr5)
b L(dLoop2)
/* Again we are on a early exit path (16-23 byte compare), we want to
only use volatile registers and avoid restoring non-volatile
registers. */
.align 4
L(dP2x):
- lwz rWORD3,4(rSTR1)
- lwz rWORD4,4(rSTR2)
- cmplw cr5,rWORD3,rWORD4
- slwi. r12,rN,3
- bne cr6,L(dLcr6)
- addi rSTR1,rSTR1,4
- addi rSTR2,rSTR2,4
- bne cr5,L(dLcr5)
- subfic rN,r12,32 /* Shift count is 32 - (rN * 8). */
- lwz 1,0(1)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD3, 4(rSTR1)
+ lwz rWORD4, 4(rSTR2)
+#endif
+ cmplw cr1, rWORD3, rWORD4
+ slwi. r12, rN, 3
+ bne cr6, L(dLcr6x)
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#endif
+ bne cr1, L(dLcr1x)
+ subfic rN, r12, 32 /* Shift count is 32 - (rN * 8). */
+ addi r1, r1, 64
+ cfi_adjust_cfa_offset(-64)
bne L(d00)
- li rRTN,0
+ li rRTN, 0
blr
/* Remainder is 12 */
.align 4
+ cfi_adjust_cfa_offset(64)
L(dP3):
- mtctr rTMP
- lwz rWORD3,0(rSTR1)
- lwz rWORD4,0(rSTR2)
- cmplw cr1,rWORD3,rWORD4
+ mtctr r0
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD3, 0(rSTR1)
+ lwz rWORD4, 0(rSTR2)
+#endif
+ cmplw cr1, rWORD3, rWORD4
L(dP3e):
- lwz rWORD5,4(rSTR1)
- lwz rWORD6,4(rSTR2)
- cmplw cr6,rWORD5,rWORD6
- blt cr7,L(dP3x)
- lwz rWORD7,8(rSTR1)
- lwz rWORD8,8(rSTR2)
- cmplw cr5,rWORD7,rWORD8
- lwz rWORD1,12(rSTR1)
- lwz rWORD2,12(rSTR2)
- cmplw cr0,rWORD1,rWORD2
- addi rSTR1,rSTR1,8
- addi rSTR2,rSTR2,8
- bne cr1,L(dLcr1)
- bne cr6,L(dLcr6)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD5, 4(rSTR1)
+ lwz rWORD6, 4(rSTR2)
+#endif
+ cmplw cr6, rWORD5, rWORD6
+ blt cr7, L(dP3x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD7, 8(rSTR1)
+ lwz rWORD8, 8(rSTR2)
+#endif
+ cmplw cr5, rWORD7, rWORD8
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 12(rSTR1)
+ lwz rWORD2, 12(rSTR2)
+#endif
+ cmplw cr7, rWORD1, rWORD2
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#endif
+ bne cr1, L(dLcr1)
+ bne cr6, L(dLcr6)
b L(dLoop1)
/* Again we are on a early exit path (24-31 byte compare), we want to
only use volatile registers and avoid restoring non-volatile
registers. */
.align 4
L(dP3x):
- lwz rWORD1,8(rSTR1)
- lwz rWORD2,8(rSTR2)
- cmplw cr5,rWORD1,rWORD2
- slwi. r12,rN,3
- bne cr1,L(dLcr1)
- addi rSTR1,rSTR1,8
- addi rSTR2,rSTR2,8
- bne cr6,L(dLcr6)
- subfic rN,r12,32 /* Shift count is 32 - (rN * 8). */
- bne cr5,L(dLcr5)
- lwz 1,0(1)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 8(rSTR1)
+ lwz rWORD2, 8(rSTR2)
+#endif
+ cmplw cr7, rWORD1, rWORD2
+ slwi. r12, rN, 3
+ bne cr1, L(dLcr1x)
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#endif
+ bne cr6, L(dLcr6x)
+ subfic rN, r12, 32 /* Shift count is 32 - (rN * 8). */
+ bne cr7, L(dLcr7x)
+ addi r1, r1, 64
+ cfi_adjust_cfa_offset(-64)
bne L(d00)
- li rRTN,0
+ li rRTN, 0
blr
/* Count is a multiple of 16, remainder is 0 */
.align 4
+ cfi_adjust_cfa_offset(64)
L(dP4):
- mtctr rTMP
- lwz rWORD1,0(rSTR1)
- lwz rWORD2,0(rSTR2)
- cmplw cr0,rWORD1,rWORD2
+ mtctr r0
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 0(rSTR1)
+ lwz rWORD2, 0(rSTR2)
+#endif
+ cmplw cr7, rWORD1, rWORD2
L(dP4e):
- lwz rWORD3,4(rSTR1)
- lwz rWORD4,4(rSTR2)
- cmplw cr1,rWORD3,rWORD4
- lwz rWORD5,8(rSTR1)
- lwz rWORD6,8(rSTR2)
- cmplw cr6,rWORD5,rWORD6
- lwzu rWORD7,12(rSTR1)
- lwzu rWORD8,12(rSTR2)
- cmplw cr5,rWORD7,rWORD8
- bne cr0,L(dLcr0)
- bne cr1,L(dLcr1)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD3, 4(rSTR1)
+ lwz rWORD4, 4(rSTR2)
+#endif
+ cmplw cr1, rWORD3, rWORD4
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD5, 8(rSTR1)
+ lwz rWORD6, 8(rSTR2)
+#endif
+ cmplw cr6, rWORD5, rWORD6
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwzu rWORD7, 12(rSTR1)
+ lwzu rWORD8, 12(rSTR2)
+#endif
+ cmplw cr5, rWORD7, rWORD8
+ bne cr7, L(dLcr7)
+ bne cr1, L(dLcr1)
bdz- L(d24) /* Adjust CTR as we start with +4 */
/* This is the primary loop */
.align 4
L(dLoop):
- lwz rWORD1,4(rSTR1)
- lwz rWORD2,4(rSTR2)
- cmplw cr1,rWORD3,rWORD4
- bne cr6,L(dLcr6)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 4(rSTR1)
+ lwz rWORD2, 4(rSTR2)
+#endif
+ cmplw cr1, rWORD3, rWORD4
+ bne cr6, L(dLcr6)
L(dLoop1):
- lwz rWORD3,8(rSTR1)
- lwz rWORD4,8(rSTR2)
- cmplw cr6,rWORD5,rWORD6
- bne cr5,L(dLcr5)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD3, 8(rSTR1)
+ lwz rWORD4, 8(rSTR2)
+#endif
+ cmplw cr6, rWORD5, rWORD6
+ bne cr5, L(dLcr5)
L(dLoop2):
- lwz rWORD5,12(rSTR1)
- lwz rWORD6,12(rSTR2)
- cmplw cr5,rWORD7,rWORD8
- bne cr0,L(dLcr0)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD5, 12(rSTR1)
+ lwz rWORD6, 12(rSTR2)
+#endif
+ cmplw cr5, rWORD7, rWORD8
+ bne cr7, L(dLcr7)
L(dLoop3):
- lwzu rWORD7,16(rSTR1)
- lwzu rWORD8,16(rSTR2)
- bne cr1,L(dLcr1)
- cmplw cr0,rWORD1,rWORD2
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwzu rWORD7, 16(rSTR1)
+ lwzu rWORD8, 16(rSTR2)
+#endif
+ bne cr1, L(dLcr1)
+ cmplw cr7, rWORD1, rWORD2
bdnz L(dLoop)
L(dL4):
- cmplw cr1,rWORD3,rWORD4
- bne cr6,L(dLcr6)
- cmplw cr6,rWORD5,rWORD6
- bne cr5,L(dLcr5)
- cmplw cr5,rWORD7,rWORD8
+ cmplw cr1, rWORD3, rWORD4
+ bne cr6, L(dLcr6)
+ cmplw cr6, rWORD5, rWORD6
+ bne cr5, L(dLcr5)
+ cmplw cr5, rWORD7, rWORD8
L(d44):
- bne cr0,L(dLcr0)
+ bne cr7, L(dLcr7)
L(d34):
- bne cr1,L(dLcr1)
+ bne cr1, L(dLcr1)
L(d24):
- bne cr6,L(dLcr6)
+ bne cr6, L(dLcr6)
L(d14):
- slwi. r12,rN,3
- bne cr5,L(dLcr5)
+ slwi. r12, rN, 3
+ bne cr5, L(dLcr5)
L(d04):
- lwz r30,44(1)
- lwz r31,48(1)
- lwz 1,0(1)
- subfic rN,r12,32 /* Shift count is 32 - (rN * 8). */
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
+ addi r1, r1, 64
+ cfi_adjust_cfa_offset(-64)
+ subfic rN, r12, 32 /* Shift count is 32 - (rN * 8). */
beq L(zeroLength)
/* At this point we have a remainder of 1 to 3 bytes to compare. Since
we are aligned it is safe to load the whole word, and use
- shift right to eliminate bits beyond the compare length. */
+ shift right to eliminate bits beyond the compare length. */
L(d00):
- lwz rWORD1,4(rSTR1)
- lwz rWORD2,4(rSTR2)
- srw rWORD1,rWORD1,rN
- srw rWORD2,rWORD2,rN
- cmplw rWORD1,rWORD2
- li rRTN,0
- beqlr
- li rRTN,1
- bgtlr
- li rRTN,-1
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 4(rSTR1)
+ lwz rWORD2, 4(rSTR2)
+#endif
+ srw rWORD1, rWORD1, rN
+ srw rWORD2, rWORD2, rN
+ sub rRTN, rWORD1, rWORD2
blr
.align 4
-L(dLcr0):
- lwz r30,44(1)
- lwz r31,48(1)
- li rRTN,1
- lwz 1,0(1)
- bgtlr cr0
- li rRTN,-1
+ cfi_adjust_cfa_offset(64)
+L(dLcr7):
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
+L(dLcr7x):
+ li rRTN, 1
+ addi r1, r1, 64
+ cfi_adjust_cfa_offset(-64)
+ bgtlr cr7
+ li rRTN, -1
blr
.align 4
+ cfi_adjust_cfa_offset(64)
L(dLcr1):
- lwz r30,44(1)
- lwz r31,48(1)
- li rRTN,1
- lwz 1,0(1)
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
+L(dLcr1x):
+ li rRTN, 1
+ addi r1, r1, 64
+ cfi_adjust_cfa_offset(-64)
bgtlr cr1
- li rRTN,-1
+ li rRTN, -1
blr
.align 4
+ cfi_adjust_cfa_offset(64)
L(dLcr6):
- lwz r30,44(1)
- lwz r31,48(1)
- li rRTN,1
- lwz 1,0(1)
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
+L(dLcr6x):
+ li rRTN, 1
+ addi r1, r1, 64
+ cfi_adjust_cfa_offset(-64)
bgtlr cr6
- li rRTN,-1
+ li rRTN, -1
blr
.align 4
+ cfi_adjust_cfa_offset(64)
L(dLcr5):
- lwz r30,44(1)
- lwz r31,48(1)
+ lwz rWORD7, 44(r1)
+ lwz rWORD8, 48(r1)
L(dLcr5x):
- li rRTN,1
- lwz 1,0(1)
+ li rRTN, 1
+ addi r1, r1, 64
+ cfi_adjust_cfa_offset(-64)
bgtlr cr5
- li rRTN,-1
+ li rRTN, -1
blr
.align 4
L(bytealigned):
- cfi_adjust_cfa_offset(-64)
mtctr rN
/* We need to prime this loop. This loop is swing modulo scheduled
@@ -411,38 +616,39 @@ L(bytealigned):
So we must precondition some registers and condition codes so that
we don't exit the loop early on the first iteration. */
- lbz rWORD1,0(rSTR1)
- lbz rWORD2,0(rSTR2)
+
+ lbz rWORD1, 0(rSTR1)
+ lbz rWORD2, 0(rSTR2)
bdz L(b11)
- cmplw cr0,rWORD1,rWORD2
- lbz rWORD3,1(rSTR1)
- lbz rWORD4,1(rSTR2)
+ cmplw cr7, rWORD1, rWORD2
+ lbz rWORD3, 1(rSTR1)
+ lbz rWORD4, 1(rSTR2)
bdz L(b12)
- cmplw cr1,rWORD3,rWORD4
- lbzu rWORD5,2(rSTR1)
- lbzu rWORD6,2(rSTR2)
+ cmplw cr1, rWORD3, rWORD4
+ lbzu rWORD5, 2(rSTR1)
+ lbzu rWORD6, 2(rSTR2)
bdz L(b13)
.align 4
L(bLoop):
- lbzu rWORD1,1(rSTR1)
- lbzu rWORD2,1(rSTR2)
- bne cr0,L(bLcr0)
+ lbzu rWORD1, 1(rSTR1)
+ lbzu rWORD2, 1(rSTR2)
+ bne cr7, L(bLcr7)
- cmplw cr6,rWORD5,rWORD6
+ cmplw cr6, rWORD5, rWORD6
bdz L(b3i)
- lbzu rWORD3,1(rSTR1)
- lbzu rWORD4,1(rSTR2)
- bne cr1,L(bLcr1)
+ lbzu rWORD3, 1(rSTR1)
+ lbzu rWORD4, 1(rSTR2)
+ bne cr1, L(bLcr1)
- cmplw cr0,rWORD1,rWORD2
+ cmplw cr7, rWORD1, rWORD2
bdz L(b2i)
- lbzu rWORD5,1(rSTR1)
- lbzu rWORD6,1(rSTR2)
- bne cr6,L(bLcr6)
+ lbzu rWORD5, 1(rSTR1)
+ lbzu rWORD6, 1(rSTR2)
+ bne cr6, L(bLcr6)
- cmplw cr1,rWORD3,rWORD4
+ cmplw cr1, rWORD3, rWORD4
bdnz L(bLoop)
/* We speculatively loading bytes before we have tested the previous
@@ -452,67 +658,62 @@ L(bLoop):
tested. In this case we must complete the pending operations
before returning. */
L(b1i):
- bne cr0,L(bLcr0)
- bne cr1,L(bLcr1)
+ bne cr7, L(bLcr7)
+ bne cr1, L(bLcr1)
b L(bx56)
.align 4
L(b2i):
- bne cr6,L(bLcr6)
- bne cr0,L(bLcr0)
+ bne cr6, L(bLcr6)
+ bne cr7, L(bLcr7)
b L(bx34)
.align 4
L(b3i):
- bne cr1,L(bLcr1)
- bne cr6,L(bLcr6)
+ bne cr1, L(bLcr1)
+ bne cr6, L(bLcr6)
b L(bx12)
.align 4
-L(bLcr0):
- li rRTN,1
- bgtlr cr0
- li rRTN,-1
+L(bLcr7):
+ li rRTN, 1
+ bgtlr cr7
+ li rRTN, -1
blr
L(bLcr1):
- li rRTN,1
+ li rRTN, 1
bgtlr cr1
- li rRTN,-1
+ li rRTN, -1
blr
L(bLcr6):
- li rRTN,1
+ li rRTN, 1
bgtlr cr6
- li rRTN,-1
+ li rRTN, -1
blr
L(b13):
- bne cr0,L(bx12)
- bne cr1,L(bx34)
+ bne cr7, L(bx12)
+ bne cr1, L(bx34)
L(bx56):
- sub rRTN,rWORD5,rWORD6
+ sub rRTN, rWORD5, rWORD6
blr
nop
L(b12):
- bne cr0,L(bx12)
+ bne cr7, L(bx12)
L(bx34):
- sub rRTN,rWORD3,rWORD4
+ sub rRTN, rWORD3, rWORD4
blr
-
L(b11):
L(bx12):
- sub rRTN,rWORD1,rWORD2
+ sub rRTN, rWORD1, rWORD2
blr
-
.align 4
-L(zeroLengthReturn):
-
L(zeroLength):
- li rRTN,0
+ li rRTN, 0
blr
- cfi_adjust_cfa_offset(64)
.align 4
/* At this point we know the strings have different alignment and the
- compare length is at least 8 bytes. rBITDIF contains the low order
+ compare length is at least 8 bytes. r12 contains the low order
2 bits of rSTR1 and cr5 contains the result of the logical compare
- of rBITDIF to 0. If rBITDIF == 0 then rStr1 is word aligned and can
+ of r12 to 0. If r12 == 0 then rStr1 is word aligned and can
perform the Wunaligned loop.
Otherwise we know that rSTR1 is not already word aligned yet.
@@ -521,465 +722,654 @@ L(zeroLength):
eliminate bits preceding the first byte. Since we want to join the
normal (Wualigned) compare loop, starting at the second word,
we need to adjust the length (rN) and special case the loop
- versioning for the first W. This insures that the loop count is
+ versioning for the first W. This ensures that the loop count is
correct and the first W (shifted) is in the expected resister pair. */
#define rSHL r29 /* Unaligned shift left count. */
#define rSHR r28 /* Unaligned shift right count. */
-#define rB r27 /* Left rotation temp for rWORD2. */
-#define rD r26 /* Left rotation temp for rWORD4. */
-#define rF r25 /* Left rotation temp for rWORD6. */
-#define rH r24 /* Left rotation temp for rWORD8. */
-#define rA r0 /* Right rotation temp for rWORD2. */
-#define rC r12 /* Right rotation temp for rWORD4. */
-#define rE r0 /* Right rotation temp for rWORD6. */
-#define rG r12 /* Right rotation temp for rWORD8. */
+#define rWORD8_SHIFT r27 /* Left rotation temp for rWORD2. */
+#define rWORD2_SHIFT r26 /* Left rotation temp for rWORD4. */
+#define rWORD4_SHIFT r25 /* Left rotation temp for rWORD6. */
+#define rWORD6_SHIFT r24 /* Left rotation temp for rWORD8. */
+ cfi_adjust_cfa_offset(64)
L(unaligned):
- stw r29,40(r1)
- cfi_offset(r29,(40-64))
- clrlwi rSHL,rSTR2,30
- stw r28,36(r1)
- cfi_offset(r28,(36-64))
- beq cr5,L(Wunaligned)
- stw r27,32(r1)
- cfi_offset(r27,(32-64))
+ stw rSHL, 40(r1)
+ cfi_offset(rSHL, (40-64))
+ clrlwi rSHL, rSTR2, 30
+ stw rSHR, 36(r1)
+ cfi_offset(rSHR, (36-64))
+ beq cr5, L(Wunaligned)
+ stw rWORD8_SHIFT, 32(r1)
+ cfi_offset(rWORD8_SHIFT, (32-64))
/* Adjust the logical start of rSTR2 to compensate for the extra bits
in the 1st rSTR1 W. */
- sub r27,rSTR2,rBITDIF
+ sub rWORD8_SHIFT, rSTR2, r12
/* But do not attempt to address the W before that W that contains
the actual start of rSTR2. */
- clrrwi rSTR2,rSTR2,2
- stw r26,28(r1)
- cfi_offset(r26,(28-64))
-/* Compute the left/right shift counts for the unalign rSTR2,
+ clrrwi rSTR2, rSTR2, 2
+ stw rWORD2_SHIFT, 28(r1)
+ cfi_offset(rWORD2_SHIFT, (28-64))
+/* Compute the left/right shift counts for the unaligned rSTR2,
compensating for the logical (W aligned) start of rSTR1. */
- clrlwi rSHL,r27,30
- clrrwi rSTR1,rSTR1,2
- stw r25,24(r1)
- cfi_offset(r25,(24-64))
- slwi rSHL,rSHL,3
- cmplw cr5,r27,rSTR2
- add rN,rN,rBITDIF
- slwi r11,rBITDIF,3
- stw r24,20(r1)
- cfi_offset(r24,(20-64))
- subfic rSHR,rSHL,32
- srwi rTMP,rN,4 /* Divide by 16 */
- andi. rBITDIF,rN,12 /* Get the W remainder */
+ clrlwi rSHL, rWORD8_SHIFT, 30
+ clrrwi rSTR1, rSTR1, 2
+ stw rWORD4_SHIFT, 24(r1)
+ cfi_offset(rWORD4_SHIFT, (24-64))
+ slwi rSHL, rSHL, 3
+ cmplw cr5, rWORD8_SHIFT, rSTR2
+ add rN, rN, r12
+ slwi rWORD6, r12, 3
+ stw rWORD6_SHIFT, 20(r1)
+ cfi_offset(rWORD6_SHIFT, (20-64))
+ subfic rSHR, rSHL, 32
+ srwi r0, rN, 4 /* Divide by 16 */
+ andi. r12, rN, 12 /* Get the W remainder */
/* We normally need to load 2 Ws to start the unaligned rSTR2, but in
this special case those bits may be discarded anyway. Also we
must avoid loading a W where none of the bits are part of rSTR2 as
this may cross a page boundary and cause a page fault. */
- li rWORD8,0
- blt cr5,L(dus0)
- lwz rWORD8,0(rSTR2)
- la rSTR2,4(rSTR2)
- slw rWORD8,rWORD8,rSHL
+ li rWORD8, 0
+ blt cr5, L(dus0)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD8, 0(rSTR2)
+ addi rSTR2, rSTR2, 4
+#endif
+ slw rWORD8, rWORD8, rSHL
L(dus0):
- lwz rWORD1,0(rSTR1)
- lwz rWORD2,0(rSTR2)
- cmplwi cr1,rBITDIF,8
- cmplwi cr7,rN,16
- srw rG,rWORD2,rSHR
- clrlwi rN,rN,30
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 0(rSTR1)
+ lwz rWORD2, 0(rSTR2)
+#endif
+ cmplwi cr1, r12, 8
+ cmplwi cr7, rN, 16
+ srw r12, rWORD2, rSHR
+ clrlwi rN, rN, 30
beq L(duPs4)
- mtctr rTMP
- or rWORD8,rG,rWORD8
- bgt cr1,L(duPs3)
- beq cr1,L(duPs2)
+ mtctr r0
+ or rWORD8, r12, rWORD8
+ bgt cr1, L(duPs3)
+ beq cr1, L(duPs2)
/* Remainder is 4 */
.align 4
L(dusP1):
- slw rB,rWORD2,rSHL
- slw rWORD7,rWORD1,r11
- slw rWORD8,rWORD8,r11
- bge cr7,L(duP1e)
+ slw rWORD8_SHIFT, rWORD2, rSHL
+ slw rWORD7, rWORD1, rWORD6
+ slw rWORD8, rWORD8, rWORD6
+ bge cr7, L(duP1e)
/* At this point we exit early with the first word compare
complete and remainder of 0 to 3 bytes. See L(du14) for details on
how we handle the remaining bytes. */
- cmplw cr5,rWORD7,rWORD8
- slwi. rN,rN,3
- bne cr5,L(duLcr5)
- cmplw cr7,rN,rSHR
+ cmplw cr5, rWORD7, rWORD8
+ slwi. rN, rN, 3
+ bne cr5, L(duLcr5)
+ cmplw cr7, rN, rSHR
beq L(duZeroReturn)
- li rA,0
- ble cr7,L(dutrim)
- lwz rWORD2,4(rSTR2)
- srw rA,rWORD2,rSHR
+ li r0, 0
+ ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD2, 4(rSTR2)
+#endif
+ srw r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 8 */
.align 4
L(duPs2):
- slw rH,rWORD2,rSHL
- slw rWORD5,rWORD1,r11
- slw rWORD6,rWORD8,r11
+ slw rWORD6_SHIFT, rWORD2, rSHL
+ slw rWORD5, rWORD1, rWORD6
+ slw rWORD6, rWORD8, rWORD6
b L(duP2e)
/* Remainder is 12 */
.align 4
L(duPs3):
- slw rF,rWORD2,rSHL
- slw rWORD3,rWORD1,r11
- slw rWORD4,rWORD8,r11
+ slw rWORD4_SHIFT, rWORD2, rSHL
+ slw rWORD3, rWORD1, rWORD6
+ slw rWORD4, rWORD8, rWORD6
b L(duP3e)
/* Count is a multiple of 16, remainder is 0 */
.align 4
L(duPs4):
- mtctr rTMP
- or rWORD8,rG,rWORD8
- slw rD,rWORD2,rSHL
- slw rWORD1,rWORD1,r11
- slw rWORD2,rWORD8,r11
+ mtctr r0
+ or rWORD8, r12, rWORD8
+ slw rWORD2_SHIFT, rWORD2, rSHL
+ slw rWORD1, rWORD1, rWORD6
+ slw rWORD2, rWORD8, rWORD6
b L(duP4e)
/* At this point we know rSTR1 is word aligned and the
compare length is at least 8 bytes. */
.align 4
L(Wunaligned):
- stw r27,32(r1)
- cfi_offset(r27,(32-64))
- clrrwi rSTR2,rSTR2,2
- stw r26,28(r1)
- cfi_offset(r26,(28-64))
- srwi rTMP,rN,4 /* Divide by 16 */
- stw r25,24(r1)
- cfi_offset(r25,(24-64))
- andi. rBITDIF,rN,12 /* Get the W remainder */
- stw r24,20(r1)
- cfi_offset(r24,(24-64))
- slwi rSHL,rSHL,3
- lwz rWORD6,0(rSTR2)
- lwzu rWORD8,4(rSTR2)
- cmplwi cr1,rBITDIF,8
- cmplwi cr7,rN,16
- clrlwi rN,rN,30
- subfic rSHR,rSHL,32
- slw rH,rWORD6,rSHL
+ stw rWORD8_SHIFT, 32(r1)
+ cfi_offset(rWORD8_SHIFT, (32-64))
+ clrrwi rSTR2, rSTR2, 2
+ stw rWORD2_SHIFT, 28(r1)
+ cfi_offset(rWORD2_SHIFT, (28-64))
+ srwi r0, rN, 4 /* Divide by 16 */
+ stw rWORD4_SHIFT, 24(r1)
+ cfi_offset(rWORD4_SHIFT, (24-64))
+ andi. r12, rN, 12 /* Get the W remainder */
+ stw rWORD6_SHIFT, 20(r1)
+ cfi_offset(rWORD6_SHIFT, (20-64))
+ slwi rSHL, rSHL, 3
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD6, 0(rSTR2)
+ lwzu rWORD8, 4(rSTR2)
+#endif
+ cmplwi cr1, r12, 8
+ cmplwi cr7, rN, 16
+ clrlwi rN, rN, 30
+ subfic rSHR, rSHL, 32
+ slw rWORD6_SHIFT, rWORD6, rSHL
beq L(duP4)
- mtctr rTMP
- bgt cr1,L(duP3)
- beq cr1,L(duP2)
+ mtctr r0
+ bgt cr1, L(duP3)
+ beq cr1, L(duP2)
/* Remainder is 4 */
.align 4
L(duP1):
- srw rG,rWORD8,rSHR
- lwz rWORD7,0(rSTR1)
- slw rB,rWORD8,rSHL
- or rWORD8,rG,rH
- blt cr7,L(duP1x)
+ srw r12, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ addi rSTR1, rSTR1, 4
+#else
+ lwz rWORD7, 0(rSTR1)
+#endif
+ slw rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
+ blt cr7, L(duP1x)
L(duP1e):
- lwz rWORD1,4(rSTR1)
- lwz rWORD2,4(rSTR2)
- cmplw cr5,rWORD7,rWORD8
- srw rA,rWORD2,rSHR
- slw rD,rWORD2,rSHL
- or rWORD2,rA,rB
- lwz rWORD3,8(rSTR1)
- lwz rWORD4,8(rSTR2)
- cmplw cr0,rWORD1,rWORD2
- srw rC,rWORD4,rSHR
- slw rF,rWORD4,rSHL
- bne cr5,L(duLcr5)
- or rWORD4,rC,rD
- lwz rWORD5,12(rSTR1)
- lwz rWORD6,12(rSTR2)
- cmplw cr1,rWORD3,rWORD4
- srw rE,rWORD6,rSHR
- slw rH,rWORD6,rSHL
- bne cr0,L(duLcr0)
- or rWORD6,rE,rF
- cmplw cr6,rWORD5,rWORD6
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 4(rSTR1)
+ lwz rWORD2, 4(rSTR2)
+#endif
+ cmplw cr5, rWORD7, rWORD8
+ srw r0, rWORD2, rSHR
+ slw rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD3, 8(rSTR1)
+ lwz rWORD4, 8(rSTR2)
+#endif
+ cmplw cr7, rWORD1, rWORD2
+ srw r12, rWORD4, rSHR
+ slw rWORD4_SHIFT, rWORD4, rSHL
+ bne cr5, L(duLcr5)
+ or rWORD4, r12, rWORD2_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD5, 12(rSTR1)
+ lwz rWORD6, 12(rSTR2)
+#endif
+ cmplw cr1, rWORD3, rWORD4
+ srw r0, rWORD6, rSHR
+ slw rWORD6_SHIFT, rWORD6, rSHL
+ bne cr7, L(duLcr7)
+ or rWORD6, r0, rWORD4_SHIFT
+ cmplw cr6, rWORD5, rWORD6
b L(duLoop3)
.align 4
/* At this point we exit early with the first word compare
complete and remainder of 0 to 3 bytes. See L(du14) for details on
how we handle the remaining bytes. */
L(duP1x):
- cmplw cr5,rWORD7,rWORD8
- slwi. rN,rN,3
- bne cr5,L(duLcr5)
- cmplw cr7,rN,rSHR
+ cmplw cr5, rWORD7, rWORD8
+ slwi. rN, rN, 3
+ bne cr5, L(duLcr5)
+ cmplw cr7, rN, rSHR
beq L(duZeroReturn)
- li rA,0
- ble cr7,L(dutrim)
- ld rWORD2,8(rSTR2)
- srw rA,rWORD2,rSHR
+ li r0, 0
+ ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD2, 8(rSTR2)
+#endif
+ srw r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 8 */
.align 4
L(duP2):
- srw rE,rWORD8,rSHR
- lwz rWORD5,0(rSTR1)
- or rWORD6,rE,rH
- slw rH,rWORD8,rSHL
+ srw r0, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ addi rSTR1, rSTR1, 4
+#else
+ lwz rWORD5, 0(rSTR1)
+#endif
+ or rWORD6, r0, rWORD6_SHIFT
+ slw rWORD6_SHIFT, rWORD8, rSHL
L(duP2e):
- lwz rWORD7,4(rSTR1)
- lwz rWORD8,4(rSTR2)
- cmplw cr6,rWORD5,rWORD6
- srw rG,rWORD8,rSHR
- slw rB,rWORD8,rSHL
- or rWORD8,rG,rH
- blt cr7,L(duP2x)
- lwz rWORD1,8(rSTR1)
- lwz rWORD2,8(rSTR2)
- cmplw cr5,rWORD7,rWORD8
- bne cr6,L(duLcr6)
- srw rA,rWORD2,rSHR
- slw rD,rWORD2,rSHL
- or rWORD2,rA,rB
- lwz rWORD3,12(rSTR1)
- lwz rWORD4,12(rSTR2)
- cmplw cr0,rWORD1,rWORD2
- bne cr5,L(duLcr5)
- srw rC,rWORD4,rSHR
- slw rF,rWORD4,rSHL
- or rWORD4,rC,rD
- addi rSTR1,rSTR1,4
- addi rSTR2,rSTR2,4
- cmplw cr1,rWORD3,rWORD4
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD7, 4(rSTR1)
+ lwz rWORD8, 4(rSTR2)
+#endif
+ cmplw cr6, rWORD5, rWORD6
+ srw r12, rWORD8, rSHR
+ slw rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
+ blt cr7, L(duP2x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 8(rSTR1)
+ lwz rWORD2, 8(rSTR2)
+#endif
+ cmplw cr5, rWORD7, rWORD8
+ bne cr6, L(duLcr6)
+ srw r0, rWORD2, rSHR
+ slw rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD3, 12(rSTR1)
+ lwz rWORD4, 12(rSTR2)
+#endif
+ cmplw cr7, rWORD1, rWORD2
+ bne cr5, L(duLcr5)
+ srw r12, rWORD4, rSHR
+ slw rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#endif
+ cmplw cr1, rWORD3, rWORD4
b L(duLoop2)
.align 4
L(duP2x):
- cmplw cr5,rWORD7,rWORD8
- addi rSTR1,rSTR1,4
- addi rSTR2,rSTR2,4
- bne cr6,L(duLcr6)
- slwi. rN,rN,3
- bne cr5,L(duLcr5)
- cmplw cr7,rN,rSHR
+ cmplw cr5, rWORD7, rWORD8
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#endif
+ bne cr6, L(duLcr6)
+ slwi. rN, rN, 3
+ bne cr5, L(duLcr5)
+ cmplw cr7, rN, rSHR
beq L(duZeroReturn)
- li rA,0
- ble cr7,L(dutrim)
- lwz rWORD2,4(rSTR2)
- srw rA,rWORD2,rSHR
+ li r0, 0
+ ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD2, 4(rSTR2)
+#endif
+ srw r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 12 */
.align 4
L(duP3):
- srw rC,rWORD8,rSHR
- lwz rWORD3,0(rSTR1)
- slw rF,rWORD8,rSHL
- or rWORD4,rC,rH
+ srw r12, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ addi rSTR1, rSTR1, 4
+#else
+ lwz rWORD3, 0(rSTR1)
+#endif
+ slw rWORD4_SHIFT, rWORD8, rSHL
+ or rWORD4, r12, rWORD6_SHIFT
L(duP3e):
- lwz rWORD5,4(rSTR1)
- lwz rWORD6,4(rSTR2)
- cmplw cr1,rWORD3,rWORD4
- srw rE,rWORD6,rSHR
- slw rH,rWORD6,rSHL
- or rWORD6,rE,rF
- lwz rWORD7,8(rSTR1)
- lwz rWORD8,8(rSTR2)
- cmplw cr6,rWORD5,rWORD6
- bne cr1,L(duLcr1)
- srw rG,rWORD8,rSHR
- slw rB,rWORD8,rSHL
- or rWORD8,rG,rH
- blt cr7,L(duP3x)
- lwz rWORD1,12(rSTR1)
- lwz rWORD2,12(rSTR2)
- cmplw cr5,rWORD7,rWORD8
- bne cr6,L(duLcr6)
- srw rA,rWORD2,rSHR
- slw rD,rWORD2,rSHL
- or rWORD2,rA,rB
- addi rSTR1,rSTR1,8
- addi rSTR2,rSTR2,8
- cmplw cr0,rWORD1,rWORD2
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD5, 4(rSTR1)
+ lwz rWORD6, 4(rSTR2)
+#endif
+ cmplw cr1, rWORD3, rWORD4
+ srw r0, rWORD6, rSHR
+ slw rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD7, 8(rSTR1)
+ lwz rWORD8, 8(rSTR2)
+#endif
+ cmplw cr6, rWORD5, rWORD6
+ bne cr1, L(duLcr1)
+ srw r12, rWORD8, rSHR
+ slw rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
+ blt cr7, L(duP3x)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 12(rSTR1)
+ lwz rWORD2, 12(rSTR2)
+#endif
+ cmplw cr5, rWORD7, rWORD8
+ bne cr6, L(duLcr6)
+ srw r0, rWORD2, rSHR
+ slw rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#endif
+ cmplw cr7, rWORD1, rWORD2
b L(duLoop1)
.align 4
L(duP3x):
- addi rSTR1,rSTR1,8
- addi rSTR2,rSTR2,8
- bne cr1,L(duLcr1)
- cmplw cr5,rWORD7,rWORD8
- bne cr6,L(duLcr6)
- slwi. rN,rN,3
- bne cr5,L(duLcr5)
- cmplw cr7,rN,rSHR
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#endif
+#if 0
+/* Huh? We've already branched on cr1! */
+ bne cr1, L(duLcr1)
+#endif
+ cmplw cr5, rWORD7, rWORD8
+ bne cr6, L(duLcr6)
+ slwi. rN, rN, 3
+ bne cr5, L(duLcr5)
+ cmplw cr7, rN, rSHR
beq L(duZeroReturn)
- li rA,0
- ble cr7,L(dutrim)
- lwz rWORD2,4(rSTR2)
- srw rA,rWORD2,rSHR
+ li r0, 0
+ ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD2, 4(rSTR2)
+#endif
+ srw r0, rWORD2, rSHR
b L(dutrim)
/* Count is a multiple of 16, remainder is 0 */
.align 4
L(duP4):
- mtctr rTMP
- srw rA,rWORD8,rSHR
- lwz rWORD1,0(rSTR1)
- slw rD,rWORD8,rSHL
- or rWORD2,rA,rH
+ mtctr r0
+ srw r0, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ addi rSTR1, rSTR1, 4
+#else
+ lwz rWORD1, 0(rSTR1)
+#endif
+ slw rWORD2_SHIFT, rWORD8, rSHL
+ or rWORD2, r0, rWORD6_SHIFT
L(duP4e):
- lwz rWORD3,4(rSTR1)
- lwz rWORD4,4(rSTR2)
- cmplw cr0,rWORD1,rWORD2
- srw rC,rWORD4,rSHR
- slw rF,rWORD4,rSHL
- or rWORD4,rC,rD
- lwz rWORD5,8(rSTR1)
- lwz rWORD6,8(rSTR2)
- cmplw cr1,rWORD3,rWORD4
- bne cr0,L(duLcr0)
- srw rE,rWORD6,rSHR
- slw rH,rWORD6,rSHL
- or rWORD6,rE,rF
- lwzu rWORD7,12(rSTR1)
- lwzu rWORD8,12(rSTR2)
- cmplw cr6,rWORD5,rWORD6
- bne cr1,L(duLcr1)
- srw rG,rWORD8,rSHR
- slw rB,rWORD8,rSHL
- or rWORD8,rG,rH
- cmplw cr5,rWORD7,rWORD8
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD3, 4(rSTR1)
+ lwz rWORD4, 4(rSTR2)
+#endif
+ cmplw cr7, rWORD1, rWORD2
+ srw r12, rWORD4, rSHR
+ slw rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD5, 8(rSTR1)
+ lwz rWORD6, 8(rSTR2)
+#endif
+ cmplw cr1, rWORD3, rWORD4
+ bne cr7, L(duLcr7)
+ srw r0, rWORD6, rSHR
+ slw rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwzu rWORD7, 12(rSTR1)
+ lwzu rWORD8, 12(rSTR2)
+#endif
+ cmplw cr6, rWORD5, rWORD6
+ bne cr1, L(duLcr1)
+ srw r12, rWORD8, rSHR
+ slw rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
+ cmplw cr5, rWORD7, rWORD8
bdz L(du24) /* Adjust CTR as we start with +4 */
/* This is the primary loop */
.align 4
L(duLoop):
- lwz rWORD1,4(rSTR1)
- lwz rWORD2,4(rSTR2)
- cmplw cr1,rWORD3,rWORD4
- bne cr6,L(duLcr6)
- srw rA,rWORD2,rSHR
- slw rD,rWORD2,rSHL
- or rWORD2,rA,rB
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD1, 4(rSTR1)
+ lwz rWORD2, 4(rSTR2)
+#endif
+ cmplw cr1, rWORD3, rWORD4
+ bne cr6, L(duLcr6)
+ srw r0, rWORD2, rSHR
+ slw rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
L(duLoop1):
- lwz rWORD3,8(rSTR1)
- lwz rWORD4,8(rSTR2)
- cmplw cr6,rWORD5,rWORD6
- bne cr5,L(duLcr5)
- srw rC,rWORD4,rSHR
- slw rF,rWORD4,rSHL
- or rWORD4,rC,rD
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD3, 0, rSTR1
+ lwbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD3, 8(rSTR1)
+ lwz rWORD4, 8(rSTR2)
+#endif
+ cmplw cr6, rWORD5, rWORD6
+ bne cr5, L(duLcr5)
+ srw r12, rWORD4, rSHR
+ slw rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
L(duLoop2):
- lwz rWORD5,12(rSTR1)
- lwz rWORD6,12(rSTR2)
- cmplw cr5,rWORD7,rWORD8
- bne cr0,L(duLcr0)
- srw rE,rWORD6,rSHR
- slw rH,rWORD6,rSHL
- or rWORD6,rE,rF
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD5, 0, rSTR1
+ lwbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD5, 12(rSTR1)
+ lwz rWORD6, 12(rSTR2)
+#endif
+ cmplw cr5, rWORD7, rWORD8
+ bne cr7, L(duLcr7)
+ srw r0, rWORD6, rSHR
+ slw rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
L(duLoop3):
- lwzu rWORD7,16(rSTR1)
- lwzu rWORD8,16(rSTR2)
- cmplw cr0,rWORD1,rWORD2
- bne cr1,L(duLcr1)
- srw rG,rWORD8,rSHR
- slw rB,rWORD8,rSHL
- or rWORD8,rG,rH
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD7, 0, rSTR1
+ lwbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 4
+ addi rSTR2, rSTR2, 4
+#else
+ lwzu rWORD7, 16(rSTR1)
+ lwzu rWORD8, 16(rSTR2)
+#endif
+ cmplw cr7, rWORD1, rWORD2
+ bne cr1, L(duLcr1)
+ srw r12, rWORD8, rSHR
+ slw rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
bdnz L(duLoop)
L(duL4):
- bne cr1,L(duLcr1)
- cmplw cr1,rWORD3,rWORD4
- bne cr6,L(duLcr6)
- cmplw cr6,rWORD5,rWORD6
- bne cr5,L(duLcr5)
- cmplw cr5,rWORD7,rWORD8
+#if 0
+/* Huh? We've already branched on cr1! */
+ bne cr1, L(duLcr1)
+#endif
+ cmplw cr1, rWORD3, rWORD4
+ bne cr6, L(duLcr6)
+ cmplw cr6, rWORD5, rWORD6
+ bne cr5, L(duLcr5)
+ cmplw cr5, rWORD7, rWORD8
L(du44):
- bne cr0,L(duLcr0)
+ bne cr7, L(duLcr7)
L(du34):
- bne cr1,L(duLcr1)
+ bne cr1, L(duLcr1)
L(du24):
- bne cr6,L(duLcr6)
+ bne cr6, L(duLcr6)
L(du14):
- slwi. rN,rN,3
- bne cr5,L(duLcr5)
+ slwi. rN, rN, 3
+ bne cr5, L(duLcr5)
/* At this point we have a remainder of 1 to 3 bytes to compare. We use
shift right to eliminate bits beyond the compare length.
+ This allows the use of word subtract to compute the final result.
However it may not be safe to load rWORD2 which may be beyond the
string length. So we compare the bit length of the remainder to
the right shift count (rSHR). If the bit count is less than or equal
we do not need to load rWORD2 (all significant bits are already in
- rB). */
- cmplw cr7,rN,rSHR
+ rWORD8_SHIFT). */
+ cmplw cr7, rN, rSHR
beq L(duZeroReturn)
- li rA,0
- ble cr7,L(dutrim)
- lwz rWORD2,4(rSTR2)
- srw rA,rWORD2,rSHR
+ li r0, 0
+ ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 4
+#else
+ lwz rWORD2, 4(rSTR2)
+#endif
+ srw r0, rWORD2, rSHR
.align 4
L(dutrim):
- lwz rWORD1,4(rSTR1)
- lwz r31,48(1)
- subfic rN,rN,32 /* Shift count is 32 - (rN * 8). */
- or rWORD2,rA,rB
- lwz r30,44(1)
- lwz r29,40(r1)
- srw rWORD1,rWORD1,rN
- srw rWORD2,rWORD2,rN
- lwz r28,36(r1)
- lwz r27,32(r1)
- cmplw rWORD1,rWORD2
- li rRTN,0
- beq L(dureturn26)
- li rRTN,1
- bgt L(dureturn26)
- li rRTN,-1
+#ifdef __LITTLE_ENDIAN__
+ lwbrx rWORD1, 0, rSTR1
+#else
+ lwz rWORD1, 4(rSTR1)
+#endif
+ lwz rWORD8, 48(r1)
+ subfic rN, rN, 32 /* Shift count is 32 - (rN * 8). */
+ or rWORD2, r0, rWORD8_SHIFT
+ lwz rWORD7, 44(r1)
+ lwz rSHL, 40(r1)
+ srw rWORD1, rWORD1, rN
+ srw rWORD2, rWORD2, rN
+ lwz rSHR, 36(r1)
+ lwz rWORD8_SHIFT, 32(r1)
+ sub rRTN, rWORD1, rWORD2
b L(dureturn26)
.align 4
-L(duLcr0):
- lwz r31,48(1)
- lwz r30,44(1)
- li rRTN,1
- bgt cr0,L(dureturn29)
- lwz r29,40(r1)
- lwz r28,36(r1)
- li rRTN,-1
+L(duLcr7):
+ lwz rWORD8, 48(r1)
+ lwz rWORD7, 44(r1)
+ li rRTN, 1
+ bgt cr7, L(dureturn29)
+ lwz rSHL, 40(r1)
+ lwz rSHR, 36(r1)
+ li rRTN, -1
b L(dureturn27)
.align 4
L(duLcr1):
- lwz r31,48(1)
- lwz r30,44(1)
- li rRTN,1
- bgt cr1,L(dureturn29)
- lwz r29,40(r1)
- lwz r28,36(r1)
- li rRTN,-1
+ lwz rWORD8, 48(r1)
+ lwz rWORD7, 44(r1)
+ li rRTN, 1
+ bgt cr1, L(dureturn29)
+ lwz rSHL, 40(r1)
+ lwz rSHR, 36(r1)
+ li rRTN, -1
b L(dureturn27)
.align 4
L(duLcr6):
- lwz r31,48(1)
- lwz r30,44(1)
- li rRTN,1
- bgt cr6,L(dureturn29)
- lwz r29,40(r1)
- lwz r28,36(r1)
- li rRTN,-1
+ lwz rWORD8, 48(r1)
+ lwz rWORD7, 44(r1)
+ li rRTN, 1
+ bgt cr6, L(dureturn29)
+ lwz rSHL, 40(r1)
+ lwz rSHR, 36(r1)
+ li rRTN, -1
b L(dureturn27)
.align 4
L(duLcr5):
- lwz r31,48(1)
- lwz r30,44(1)
- li rRTN,1
- bgt cr5,L(dureturn29)
- lwz r29,40(r1)
- lwz r28,36(r1)
- li rRTN,-1
+ lwz rWORD8, 48(r1)
+ lwz rWORD7, 44(r1)
+ li rRTN, 1
+ bgt cr5, L(dureturn29)
+ lwz rSHL, 40(r1)
+ lwz rSHR, 36(r1)
+ li rRTN, -1
b L(dureturn27)
.align 3
L(duZeroReturn):
- li rRTN,0
+ li rRTN, 0
.align 4
L(dureturn):
- lwz r31,48(1)
- lwz r30,44(1)
+ lwz rWORD8, 48(r1)
+ lwz rWORD7, 44(r1)
L(dureturn29):
- lwz r29,40(r1)
- lwz r28,36(r1)
+ lwz rSHL, 40(r1)
+ lwz rSHR, 36(r1)
L(dureturn27):
- lwz r27,32(r1)
+ lwz rWORD8_SHIFT, 32(r1)
L(dureturn26):
- lwz r26,28(r1)
+ lwz rWORD2_SHIFT, 28(r1)
L(dureturn25):
- lwz r25,24(r1)
- lwz r24,20(r1)
- lwz 1,0(1)
+ lwz rWORD4_SHIFT, 24(r1)
+ lwz rWORD6_SHIFT, 20(r1)
+ addi r1, r1, 64
+ cfi_adjust_cfa_offset(-64)
blr
END (memcmp)
+
libc_hidden_builtin_def (memcmp)
-weak_alias (memcmp,bcmp)
+weak_alias (memcmp, bcmp)
diff --git a/sysdeps/powerpc/powerpc32/power7/memcpy.S b/sysdeps/powerpc/powerpc32/power7/memcpy.S
index 7f00778236..acf3c10198 100644
--- a/sysdeps/powerpc/powerpc32/power7/memcpy.S
+++ b/sysdeps/powerpc/powerpc32/power7/memcpy.S
@@ -383,7 +383,7 @@ L(copy_GE_32_unaligned):
beq L(copy_GE_32_unaligned_cont)
- /* SRC is not quadword aligned, get it aligned. */
+ /* DST is not quadword aligned, get it aligned. */
mtcrf 0x01,0
subf 31,0,5
@@ -435,13 +435,21 @@ L(copy_GE_32_unaligned_cont):
mr 11,12
mtcrf 0x01,9
cmplwi cr6,9,1
+#ifdef __LITTLE_ENDIAN__
+ lvsr 5,0,12
+#else
lvsl 5,0,12
+#endif
lvx 3,0,12
bf 31,L(setup_unaligned_loop)
/* Copy another 16 bytes to align to 32-bytes due to the loop . */
lvx 4,12,6
+#ifdef __LITTLE_ENDIAN__
+ vperm 6,4,3,5
+#else
vperm 6,3,4,5
+#endif
addi 11,12,16
addi 10,3,16
stvx 6,0,3
@@ -461,11 +469,17 @@ L(unaligned_loop):
vector instructions though. */
lvx 4,11,6 /* vr4 = r11+16. */
- vperm 6,3,4,5 /* Merge the correctly-aligned portions
- of vr3/vr4 into vr6. */
+#ifdef __LITTLE_ENDIAN__
+ vperm 6,4,3,5
+#else
+ vperm 6,3,4,5
+#endif
lvx 3,11,7 /* vr3 = r11+32. */
- vperm 10,4,3,5 /* Merge the correctly-aligned portions
- of vr3/vr4 into vr10. */
+#ifdef __LITTLE_ENDIAN__
+ vperm 10,3,4,5
+#else
+ vperm 10,4,3,5
+#endif
addi 11,11,32
stvx 6,0,10
stvx 10,10,6
diff --git a/sysdeps/powerpc/powerpc32/power7/mempcpy.S b/sysdeps/powerpc/powerpc32/power7/mempcpy.S
index 5ad4edb580..4610ec5b56 100644
--- a/sysdeps/powerpc/powerpc32/power7/mempcpy.S
+++ b/sysdeps/powerpc/powerpc32/power7/mempcpy.S
@@ -325,7 +325,7 @@ L(copy_GE_32_unaligned):
beq L(copy_GE_32_unaligned_cont)
- /* SRC is not quadword aligned, get it aligned. */
+ /* DST is not quadword aligned, get it aligned. */
mtcrf 0x01,0
subf 31,0,5
@@ -377,13 +377,21 @@ L(copy_GE_32_unaligned_cont):
mr 11,12
mtcrf 0x01,9
cmplwi cr6,9,1
- lvsl 5,0,12
+#ifdef __LITTLE_ENDIAN__
+ lvsr 5,0,12
+#else
+ lvsl 5,0,12
+#endif
lvx 3,0,12
bf 31,L(setup_unaligned_loop)
/* Copy another 16 bytes to align to 32-bytes due to the loop . */
lvx 4,12,6
- vperm 6,3,4,5
+#ifdef __LITTLE_ENDIAN__
+ vperm 6,4,3,5
+#else
+ vperm 6,3,4,5
+#endif
addi 11,12,16
addi 10,3,16
stvx 6,0,3
@@ -403,11 +411,17 @@ L(unaligned_loop):
vector instructions though. */
lvx 4,11,6 /* vr4 = r11+16. */
- vperm 6,3,4,5 /* Merge the correctly-aligned portions
- of vr3/vr4 into vr6. */
+#ifdef __LITTLE_ENDIAN__
+ vperm 6,4,3,5
+#else
+ vperm 6,3,4,5
+#endif
lvx 3,11,7 /* vr3 = r11+32. */
- vperm 10,4,3,5 /* Merge the correctly-aligned portions
- of vr3/vr4 into vr10. */
+#ifdef __LITTLE_ENDIAN__
+ vperm 10,3,4,5
+#else
+ vperm 10,4,3,5
+#endif
addi 11,11,32
stvx 6,0,10
stvx 10,10,6
diff --git a/sysdeps/powerpc/powerpc32/power7/memrchr.S b/sysdeps/powerpc/powerpc32/power7/memrchr.S
index d1e3fda125..9601aa7997 100644
--- a/sysdeps/powerpc/powerpc32/power7/memrchr.S
+++ b/sysdeps/powerpc/powerpc32/power7/memrchr.S
@@ -23,117 +23,131 @@
.machine power7
ENTRY (__memrchr)
CALL_MCOUNT
- dcbt 0,r3
- mr r7,r3
- add r3,r7,r5 /* Calculate the last acceptable address. */
- cmplw cr7,r3,r7 /* Is the address equal or less than r3? */
+ add r7,r3,r5 /* Calculate the last acceptable address. */
+ neg r0,r7
+ addi r7,r7,-1
+ mr r10,r3
+ clrrwi r6,r7,7
+ li r9,3<<5
+ dcbt r9,r6,16 /* Stream hint, decreasing addresses. */
/* Replicate BYTE to word. */
- rlwimi r4,r4,8,16,23
- rlwimi r4,r4,16,0,15
- bge cr7,L(proceed)
-
- li r3,-1 /* Make r11 the biggest if r4 <= 0. */
-L(proceed):
+ rldimi r4,r4,8,48
+ rldimi r4,r4,16,32
li r6,-4
- addi r9,r3,-1
- clrrwi r8,r9,2
- addi r8,r8,4
- neg r0,r3
+ li r9,-1
rlwinm r0,r0,3,27,28 /* Calculate padding. */
-
+ clrrwi r8,r7,2
+ srw r9,r9,r0
cmplwi r5,16
+ clrrwi r0,r10,2
ble L(small_range)
- lwbrx r12,r8,r6 /* Load reversed word from memory. */
- cmpb r10,r12,r4 /* Check for BYTE in WORD1. */
- slw r10,r10,r0
- srw r10,r10,r0
- cmplwi cr7,r10,0 /* If r10 == 0, no BYTEs have been found. */
+#ifdef __LITTLE_ENDIAN__
+ lwzx r12,0,r8
+#else
+ lwbrx r12,0,r8 /* Load reversed word from memory. */
+#endif
+ cmpb r3,r12,r4 /* Check for BYTE in WORD1. */
+ and r3,r3,r9
+ cmplwi cr7,r3,0 /* If r3 == 0, no BYTEs have been found. */
bne cr7,L(done)
- /* Are we done already? */
- addi r9,r8,-4
- cmplw cr6,r9,r7
- ble cr6,L(null)
-
mtcrf 0x01,r8
/* Are we now aligned to a doubleword boundary? If so, skip to
the main loop. Otherwise, go through the alignment code. */
- mr r8,r9
- bt 29,L(loop_setup)
+ bf 29,L(loop_setup)
/* Handle WORD2 of pair. */
+#ifdef __LITTLE_ENDIAN__
+ lwzx r12,r8,r6
+#else
lwbrx r12,r8,r6
- cmpb r10,r12,r4
- cmplwi cr7,r10,0
- bne cr7,L(done)
-
- /* Are we done already? */
+#endif
addi r8,r8,-4
- cmplw cr6,r8,r7
- ble cr6,L(null)
+ cmpb r3,r12,r4
+ cmplwi cr7,r3,0
+ bne cr7,L(done)
L(loop_setup):
- li r0,-8
- sub r5,r8,r7
- srwi r9,r5,3 /* Number of loop iterations. */
+ /* The last word we want to read in the loop below is the one
+ containing the first byte of the string, ie. the word at
+ s & ~3, or r0. The first word read is at r8 - 4, we
+ read 2 * cnt words, so the last word read will be at
+ r8 - 4 - 8 * cnt + 4. Solving for cnt gives
+ cnt = (r8 - r0) / 8 */
+ sub r5,r8,r0
+ addi r8,r8,-4
+ srwi r9,r5,3 /* Number of loop iterations. */
mtctr r9 /* Setup the counter. */
- b L(loop)
- /* Main loop to look for BYTE backwards in the string. Since it's a
- small loop (< 8 instructions), align it to 32-bytes. */
- .p2align 5
+
+ /* Main loop to look for BYTE backwards in the string.
+ FIXME: Investigate whether 32 byte align helps with this
+ 9 instruction loop. */
+ .align 5
L(loop):
/* Load two words, compare and merge in a
single register for speed. This is an attempt
to speed up the byte-checking process for bigger strings. */
- lwbrx r12,r8,r6
- lwbrx r11,r8,r0
- addi r8,r8,-4
- cmpb r10,r12,r4
+#ifdef __LITTLE_ENDIAN__
+ lwzx r12,0,r8
+ lwzx r11,r8,r6
+#else
+ lwbrx r12,0,r8
+ lwbrx r11,r8,r6
+#endif
+ cmpb r3,r12,r4
cmpb r9,r11,r4
- or r5,r9,r10 /* Merge everything in one word. */
+ or r5,r9,r3 /* Merge everything in one word. */
cmplwi cr7,r5,0
bne cr7,L(found)
- addi r8,r8,-4
+ addi r8,r8,-8
bdnz L(loop)
- /* We're here because the counter reached 0, and that means we
- didn't have any matches for BYTE in the whole range. Just return
- the original range. */
- addi r9,r8,4
- cmplw cr6,r9,r7
- bgt cr6,L(loop_small)
- b L(null)
- /* OK, one (or both) of the words contains BYTE. Check
- the first word and decrement the address in case the first
- word really contains BYTE. */
+ /* We may have one more word to read. */
+ cmplw r8,r0
+ bnelr
+
+#ifdef __LITTLE_ENDIAN__
+ lwzx r12,0,r8
+#else
+ lwbrx r12,0,r8
+#endif
+ cmpb r3,r12,r4
+ cmplwi cr7,r3,0
+ bne cr7,L(done)
+ blr
+
.align 4
L(found):
- cmplwi cr6,r10,0
- addi r8,r8,4
+ /* OK, one (or both) of the words contains BYTE. Check
+ the first word. */
+ cmplwi cr6,r3,0
bne cr6,L(done)
/* BYTE must be in the second word. Adjust the address
- again and move the result of cmpb to r10 so we can calculate the
+ again and move the result of cmpb to r3 so we can calculate the
pointer. */
- mr r10,r9
+ mr r3,r9
addi r8,r8,-4
- /* r10 has the output of the cmpb instruction, that is, it contains
+ /* r3 has the output of the cmpb instruction, that is, it contains
0xff in the same position as BYTE in the original
word from the string. Use that to calculate the pointer.
We need to make sure BYTE is *before* the end of the
range. */
L(done):
- cntlzw r0,r10 /* Count leading zeroes before the match. */
- srwi r6,r0,3 /* Convert leading zeroes to bytes. */
- addi r0,r6,1
+ cntlzw r9,r3 /* Count leading zeros before the match. */
+ cmplw r8,r0 /* Are we on the last word? */
+ srwi r6,r9,3 /* Convert leading zeros to bytes. */
+ addi r0,r6,-3
sub r3,r8,r0
- cmplw r3,r7
- blt L(null)
+ cmplw cr7,r3,r10
+ bnelr
+ bgelr cr7
+ li r3,0
blr
.align 4
@@ -147,28 +161,35 @@ L(small_range):
cmplwi r5,0
beq L(null)
- lwbrx r12,r8,r6 /* Load reversed word from memory. */
- cmpb r10,r12,r4 /* Check for null bytes in WORD1. */
- slw r10,r10,r0
- srw r10,r10,r0
- cmplwi cr7,r10,0
+#ifdef __LITTLE_ENDIAN__
+ lwzx r12,0,r8
+#else
+ lwbrx r12,0,r8 /* Load reversed word from memory. */
+#endif
+ cmpb r3,r12,r4 /* Check for BYTE in WORD1. */
+ and r3,r3,r9
+ cmplwi cr7,r3,0
bne cr7,L(done)
+ /* Are we done already? */
+ cmplw r8,r0
addi r8,r8,-4
- cmplw r8,r7
- ble L(null)
- b L(loop_small)
+ beqlr
- .p2align 5
+ .align 5
L(loop_small):
- lwbrx r12,r8,r6
- cmpb r10,r12,r4
- cmplwi cr6,r10,0
- bne cr6,L(done)
+#ifdef __LITTLE_ENDIAN__
+ lwzx r12,0,r8
+#else
+ lwbrx r12,0,r8
+#endif
+ cmpb r3,r12,r4
+ cmplw r8,r0
+ cmplwi cr7,r3,0
+ bne cr7,L(done)
addi r8,r8,-4
- cmplw r8,r7
- ble L(null)
- b L(loop_small)
+ bne L(loop_small)
+ blr
END (__memrchr)
weak_alias (__memrchr, memrchr)
diff --git a/sysdeps/powerpc/powerpc32/power7/memset.S b/sysdeps/powerpc/powerpc32/power7/memset.S
index 360ea717f4..aadda2558f 100644
--- a/sysdeps/powerpc/powerpc32/power7/memset.S
+++ b/sysdeps/powerpc/powerpc32/power7/memset.S
@@ -35,8 +35,8 @@ L(_memset):
cfi_offset(31,-8)
/* Replicate byte to word. */
- rlwimi 4,4,8,16,23
- rlwimi 4,4,16,0,15
+ insrdi 4,4,8,48
+ insrdi 4,4,16,32
ble cr6,L(small) /* If length <= 8, use short copy code. */
diff --git a/sysdeps/powerpc/powerpc32/power7/multiarch/Implies b/sysdeps/powerpc/powerpc32/power7/multiarch/Implies
new file mode 100644
index 0000000000..22c12fd393
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power7/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power6/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power7/rawmemchr.S b/sysdeps/powerpc/powerpc32/power7/rawmemchr.S
index a80c74a092..c2d8c4b7be 100644
--- a/sysdeps/powerpc/powerpc32/power7/rawmemchr.S
+++ b/sysdeps/powerpc/powerpc32/power7/rawmemchr.S
@@ -27,16 +27,21 @@ ENTRY (__rawmemchr)
clrrwi r8,r3,2 /* Align the address to word boundary. */
/* Replicate byte to word. */
- rlwimi r4,r4,8,16,23
- rlwimi r4,r4,16,0,15
+ rldimi r4,r4,8,48
+ rldimi r4,r4,16,32
/* Now r4 has a word of c bytes. */
rlwinm r6,r3,3,27,28 /* Calculate padding. */
lwz r12,0(r8) /* Load word from memory. */
cmpb r5,r12,r4 /* Compare each byte against c byte. */
+#ifdef __LITTLE_ENDIAN__
+ srw r5,r5,r6
+ slw r5,r5,r6
+#else
slw r5,r5,r6 /* Move left to discard ignored bits. */
srw r5,r5,r6 /* Bring the bits back as zeros. */
+#endif
cmpwi cr7,r5,0 /* If r5 == 0, no c bytes have been found. */
bne cr7,L(done)
@@ -90,8 +95,14 @@ L(loop):
word from the string. Use that fact to find out what is
the position of the byte inside the string. */
L(done):
+#ifdef __LITTLE_ENDIAN__
+ addi r0,r5,-1
+ andc r0,r0,r5
+ popcntw r0,r0
+#else
cntlzw r0,r5 /* Count leading zeros before the match. */
- srwi r0,r0,3 /* Convert leading zeroes to bytes. */
+#endif
+ srwi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of the matching char. */
blr
END (__rawmemchr)
diff --git a/sysdeps/powerpc/powerpc32/power7/strchr.S b/sysdeps/powerpc/powerpc32/power7/strchr.S
index 0ecadb271a..b662659671 100644
--- a/sysdeps/powerpc/powerpc32/power7/strchr.S
+++ b/sysdeps/powerpc/powerpc32/power7/strchr.S
@@ -35,8 +35,8 @@ ENTRY (strchr)
beq cr7,L(null_match)
/* Replicate byte to word. */
- rlwimi r4,r4,8,16,23
- rlwimi r4,r4,16,0,15
+ insrdi r4,r4,8,48
+ insrdi r4,r4,16,32
/* Now r4 has a word of c bytes and r0 has
a word of null bytes. */
@@ -46,11 +46,17 @@ ENTRY (strchr)
/* Move the words left and right to discard the bits that are
not part of the string and to bring them back as zeros. */
-
+#ifdef __LITTLE_ENDIAN__
+ srw r10,r10,r6
+ srw r11,r11,r6
+ slw r10,r10,r6
+ slw r11,r11,r6
+#else
slw r10,r10,r6
slw r11,r11,r6
srw r10,r10,r6
srw r11,r11,r6
+#endif
or r5,r10,r11 /* OR the results to speed things up. */
cmpwi cr7,r5,0 /* If r5 == 0, no c or null bytes
have been found. */
@@ -65,7 +71,7 @@ ENTRY (strchr)
/* Handle WORD2 of pair. */
lwzu r12,4(r8)
- cmpb r10,r12,r4
+ cmpb r10,r12,r4
cmpb r11,r12,r0
or r5,r10,r11
cmpwi cr7,r5,0
@@ -100,22 +106,31 @@ L(loop):
bne cr6,L(done)
/* The c/null byte must be in the second word. Adjust the address
- again and move the result of cmpb to r10 so we can calculate the
- pointer. */
+ again and move the result of cmpb to r10/r11 so we can calculate
+ the pointer. */
mr r10,r6
mr r11,r7
addi r8,r8,4
- /* r5 has the output of the cmpb instruction, that is, it contains
+ /* r10/r11 have the output of the cmpb instructions, that is,
0xff in the same position as the c/null byte in the original
word from the string. Use that to calculate the pointer. */
L(done):
- cntlzw r4,r10 /* Count leading zeroes before c matches. */
- cntlzw r0,r11 /* Count leading zeroes before null matches. */
- cmplw cr7,r4,r0
+#ifdef __LITTLE_ENDIAN__
+ addi r3,r10,-1
+ andc r3,r3,r10
+ popcntw r0,r3
+ addi r4,r11,-1
+ andc r4,r4,r11
+ cmplw cr7,r3,r4
+ bgt cr7,L(no_match)
+#else
+ cntlzw r0,r10 /* Count leading zeros before c matches. */
+ cmplw cr7,r11,r10
bgt cr7,L(no_match)
- srwi r0,r4,3 /* Convert leading zeroes to bytes. */
+#endif
+ srwi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of the matching c byte
or null in case c was not found. */
blr
@@ -133,10 +148,14 @@ L(null_match):
cmpb r5,r12,r0 /* Compare each byte against null bytes. */
/* Move the words left and right to discard the bits that are
- not part of the string and to bring them back as zeros. */
-
+ not part of the string and bring them back as zeros. */
+#ifdef __LITTLE_ENDIAN__
+ srw r5,r5,r6
+ slw r5,r5,r6
+#else
slw r5,r5,r6
srw r5,r5,r6
+#endif
cmpwi cr7,r5,0 /* If r10 == 0, no c or null bytes
have been found. */
bne cr7,L(done_null)
@@ -191,7 +210,13 @@ L(loop_null):
0xff in the same position as the null byte in the original
word from the string. Use that to calculate the pointer. */
L(done_null):
+#ifdef __LITTLE_ENDIAN__
+ addi r0,r5,-1
+ andc r0,r0,r5
+ popcntw r0,r0
+#else
cntlzw r0,r5 /* Count leading zeros before the match. */
+#endif
srwi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of the matching null byte. */
blr
diff --git a/sysdeps/powerpc/powerpc32/power7/strchrnul.S b/sysdeps/powerpc/powerpc32/power7/strchrnul.S
index d4cacab60b..f5d24d4340 100644
--- a/sysdeps/powerpc/powerpc32/power7/strchrnul.S
+++ b/sysdeps/powerpc/powerpc32/power7/strchrnul.S
@@ -27,8 +27,8 @@ ENTRY (__strchrnul)
clrrwi r8,r3,2 /* Align the address to word boundary. */
/* Replicate byte to word. */
- rlwimi r4,r4,8,16,23
- rlwimi r4,r4,16,0,15
+ insrdi r4,r4,8,48
+ insrdi r4,r4,16,32
rlwinm r6,r3,3,27,28 /* Calculate padding. */
lwz r12,0(r8) /* Load word from memory. */
@@ -43,10 +43,17 @@ ENTRY (__strchrnul)
/* Move the words left and right to discard the bits that are
not part of the string and bring them back as zeros. */
+#ifdef __LITTLE_ENDIAN__
+ srw r10,r10,r6
+ srw r9,r9,r6
+ slw r10,r10,r6
+ slw r9,r9,r6
+#else
slw r10,r10,r6
slw r9,r9,r6
srw r10,r10,r6
srw r9,r9,r6
+#endif
or r5,r9,r10 /* OR the results to speed things up. */
cmpwi cr7,r5,0 /* If r5 == 0, no c or null bytes
have been found. */
@@ -54,7 +61,7 @@ ENTRY (__strchrnul)
mtcrf 0x01,r8
- /* Are we now aligned to a quadword boundary? If so, skip to
+ /* Are we now aligned to a doubleword boundary? If so, skip to
the main loop. Otherwise, go through the alignment code. */
bt 29,L(loop)
@@ -76,7 +83,7 @@ L(loop):
single register for speed. This is an attempt
to speed up the null-checking process for bigger strings. */
lwz r12,4(r8)
- lwzu r11,8(r8)
+ lwzu r11,8(r8)
cmpb r10,r12,r0
cmpb r9,r12,r4
cmpb r6,r11,r0
@@ -95,9 +102,9 @@ L(loop):
addi r8,r8,-4
bne cr6,L(done)
- /* The c/null byte must be in the second word. Adjust the
- address again and move the result of cmpb to r10 so we can calculate
- the pointer. */
+ /* The c/null byte must be in the second word. Adjust the address
+ again and move the result of cmpb to r5 so we can calculate the
+ pointer. */
mr r5,r10
addi r8,r8,4
@@ -105,7 +112,13 @@ L(loop):
0xff in the same position as the c/null byte in the original
word from the string. Use that to calculate the pointer. */
L(done):
+#ifdef __LITTLE_ENDIAN__
+ addi r0,r5,-1
+ andc r0,r0,r5
+ popcntw r0,r0
+#else
cntlzw r0,r5 /* Count leading zeros before the match. */
+#endif
srwi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of matching c/null byte. */
blr
diff --git a/sysdeps/powerpc/powerpc32/power7/strlen.S b/sysdeps/powerpc/powerpc32/power7/strlen.S
index b71a10f5c7..b08d6c028c 100644
--- a/sysdeps/powerpc/powerpc32/power7/strlen.S
+++ b/sysdeps/powerpc/powerpc32/power7/strlen.S
@@ -29,7 +29,11 @@ ENTRY (strlen)
li r0,0 /* Word with null chars to use with cmpb. */
li r5,-1 /* MASK = 0xffffffffffffffff. */
lwz r12,0(r4) /* Load word from memory. */
+#ifdef __LITTLE_ENDIAN__
+ slw r5,r5,r6
+#else
srw r5,r5,r6 /* MASK = MASK >> padding. */
+#endif
orc r9,r12,r5 /* Mask bits that are not part of the string. */
cmpb r10,r9,r0 /* Check for null bytes in WORD1. */
cmpwi cr7,r10,0 /* If r10 == 0, no null's have been found. */
@@ -47,9 +51,6 @@ ENTRY (strlen)
cmpb r10,r12,r0
cmpwi cr7,r10,0
bne cr7,L(done)
- b L(loop) /* We branch here (rather than falling through)
- to skip the nops due to heavy alignment
- of the loop below. */
/* Main loop to look for the end of the string. Since it's a
small loop (< 8 instructions), align it to 32-bytes. */
@@ -86,9 +87,15 @@ L(loop):
0xff in the same position as the null byte in the original
word from the string. Use that to calculate the length. */
L(done):
- cntlzw r0,r10 /* Count leading zeroes before the match. */
+#ifdef __LITTLE_ENDIAN__
+ addi r9, r10, -1 /* Form a mask from trailing zeros. */
+ andc r9, r9, r10
+ popcntw r0, r9 /* Count the bits in the mask. */
+#else
+ cntlzw r0,r10 /* Count leading zeros before the match. */
+#endif
subf r5,r3,r4
- srwi r0,r0,3 /* Convert leading zeroes to bytes. */
+ srwi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r5,r0 /* Compute final length. */
blr
END (strlen)
diff --git a/sysdeps/powerpc/powerpc32/power7/strncmp.S b/sysdeps/powerpc/powerpc32/power7/strncmp.S
index fdae44d265..10c9d251b0 100644
--- a/sysdeps/powerpc/powerpc32/power7/strncmp.S
+++ b/sysdeps/powerpc/powerpc32/power7/strncmp.S
@@ -26,7 +26,7 @@
EALIGN (strncmp,5,0)
-#define rTMP r0
+#define rTMP2 r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -39,6 +39,7 @@ EALIGN (strncmp,5,0)
#define r7F7F r9 /* constant 0x7f7f7f7f */
#define rNEG r10 /* ~(word in s1 | 0x7f7f7f7f) */
#define rBITDIF r11 /* bits that differ in s1 & s2 words */
+#define rTMP r12
dcbt 0,rSTR1
nop
@@ -78,13 +79,45 @@ L(g1): add rTMP,rFEFE,rWORD1
/* OK. We've hit the end of the string. We need to be careful that
we don't compare two strings as different because of gunk beyond
the end of the strings... */
+#ifdef __LITTLE_ENDIAN__
+L(endstring):
+ slwi rTMP, rTMP, 1
+ addi rTMP2, rTMP, -1
+ andc rTMP2, rTMP2, rTMP
+ and rWORD2, rWORD2, rTMP2 /* Mask off gunk. */
+ and rWORD1, rWORD1, rTMP2
+ rlwinm rTMP2, rWORD2, 8, 0xffffffff /* Byte reverse word. */
+ rlwinm rTMP, rWORD1, 8, 0xffffffff
+ rldimi rTMP2, rWORD2, 24, 32
+ rldimi rTMP, rWORD1, 24, 32
+ rlwimi rTMP2, rWORD2, 24, 16, 23
+ rlwimi rTMP, rWORD1, 24, 16, 23
+ xor. rBITDIF, rTMP, rTMP2
+ sub rRTN, rTMP, rTMP2
+ bgelr
+ ori rRTN, rTMP2, 1
+ blr
+
+L(different):
+ lwz rWORD1, -4(rSTR1)
+ rlwinm rTMP2, rWORD2, 8, 0xffffffff /* Byte reverse word. */
+ rlwinm rTMP, rWORD1, 8, 0xffffffff
+ rldimi rTMP2, rWORD2, 24, 32
+ rldimi rTMP, rWORD1, 24, 32
+ rlwimi rTMP2, rWORD2, 24, 16, 23
+ rlwimi rTMP, rWORD1, 24, 16, 23
+ xor. rBITDIF, rTMP, rTMP2
+ sub rRTN, rTMP, rTMP2
+ bgelr
+ ori rRTN, rTMP2, 1
+ blr
+#else
L(endstring):
and rTMP,r7F7F,rWORD1
beq cr1,L(equal)
add rTMP,rTMP,r7F7F
xor. rBITDIF,rWORD1,rWORD2
-
andc rNEG,rNEG,rTMP
blt L(highbit)
cntlzw rBITDIF,rBITDIF
@@ -92,28 +125,20 @@ L(endstring):
addi rNEG,rNEG,7
cmpw cr1,rNEG,rBITDIF
sub rRTN,rWORD1,rWORD2
- blt cr1,L(equal)
- srawi rRTN,rRTN,31
- ori rRTN,rRTN,1
- blr
+ bgelr cr1
L(equal):
li rRTN,0
blr
L(different):
- lwzu rWORD1,-4(rSTR1)
+ lwz rWORD1,-4(rSTR1)
xor. rBITDIF,rWORD1,rWORD2
sub rRTN,rWORD1,rWORD2
- blt L(highbit)
- srawi rRTN,rRTN,31
- ori rRTN,rRTN,1
- blr
+ bgelr
L(highbit):
- srwi rWORD2,rWORD2,24
- srwi rWORD1,rWORD1,24
- sub rRTN,rWORD1,rWORD2
+ ori rRTN, rWORD2, 1
blr
-
+#endif
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
diff --git a/sysdeps/powerpc/powerpc32/power7/strnlen.S b/sysdeps/powerpc/powerpc32/power7/strnlen.S
index ed088366a2..eb52afd1a7 100644
--- a/sysdeps/powerpc/powerpc32/power7/strnlen.S
+++ b/sysdeps/powerpc/powerpc32/power7/strnlen.S
@@ -28,51 +28,47 @@ ENTRY (__strnlen)
add r7,r3,r4 /* Calculate the last acceptable address. */
cmplwi r4,16
li r0,0 /* Word with null chars. */
+ addi r7,r7,-1
ble L(small_range)
- cmplw cr7,r3,r7 /* Is the address equal or less than r3? If
- it's equal or less, it means size is either 0
- or a negative number. */
- ble cr7,L(proceed)
-
- li r7,-1 /* Make r11 the biggest if r4 <= 0. */
-L(proceed):
rlwinm r6,r3,3,27,28 /* Calculate padding. */
lwz r12,0(r8) /* Load word from memory. */
cmpb r10,r12,r0 /* Check for null bytes in DWORD1. */
+#ifdef __LITTLE_ENDIAN__
+ srw r10,r10,r6
+ slw r10,r10,r6
+#else
slw r10,r10,r6
srw r10,r10,r6
+#endif
cmplwi cr7,r10,0 /* If r10 == 0, no null's have been found. */
bne cr7,L(done)
- /* Are we done already? */
- addi r9,r8,4
- cmplw cr6,r9,r7
- bge cr6,L(end_max)
-
+ clrrwi r7,r7,2 /* Address of last word. */
mtcrf 0x01,r8
/* Are we now aligned to a doubleword boundary? If so, skip to
the main loop. Otherwise, go through the alignment code. */
bt 29,L(loop_setup)
- /* Handle DWORD2 of pair. */
+ /* Handle WORD2 of pair. */
lwzu r12,4(r8)
cmpb r10,r12,r0
cmplwi cr7,r10,0
bne cr7,L(done)
- /* Are we done already? */
- addi r9,r8,4
- cmplw cr6,r9,r7
- bge cr6,L(end_max)
-
L(loop_setup):
- sub r5,r7,r9
+ /* The last word we want to read in the loop below is the one
+ containing the last byte of the string, ie. the word at
+ (s + size - 1) & ~3, or r7. The first word read is at
+ r8 + 4, we read 2 * cnt words, so the last word read will
+ be at r8 + 4 + 8 * cnt - 4. Solving for cnt gives
+ cnt = (r7 - r8) / 8 */
+ sub r5,r7,r8
srwi r6,r5,3 /* Number of loop iterations. */
mtctr r6 /* Setup the counter. */
- b L(loop)
- /* Main loop to look for the null byte backwards in the string. Since
+
+ /* Main loop to look for the null byte in the string. Since
it's a small loop (< 8 instructions), align it to 32-bytes. */
.p2align 5
L(loop):
@@ -88,15 +84,18 @@ L(loop):
cmplwi cr7,r5,0
bne cr7,L(found)
bdnz L(loop)
- /* We're here because the counter reached 0, and that means we
- didn't have any matches for null in the whole range. Just return
- the original size. */
- addi r9,r8,4
- cmplw cr6,r9,r7
- blt cr6,L(loop_small)
+
+ /* We may have one more word to read. */
+ cmplw cr6,r8,r7
+ beq cr6,L(end_max)
+
+ lwzu r12,4(r8)
+ cmpb r10,r12,r0
+ cmplwi cr6,r10,0
+ bne cr6,L(done)
L(end_max):
- sub r3,r7,r3
+ mr r3,r4
blr
/* OK, one (or both) of the words contains a null byte. Check
@@ -121,49 +120,56 @@ L(found):
We need to make sure the null char is *before* the end of the
range. */
L(done):
- cntlzw r0,r10 /* Count leading zeroes before the match. */
- srwi r0,r0,3 /* Convert leading zeroes to bytes. */
- add r9,r8,r0
- sub r6,r9,r3 /* Length until the match. */
- cmplw r9,r7
- bgt L(end_max)
- mr r3,r6
- blr
-
- .align 4
-L(zero):
- li r3,0
+#ifdef __LITTLE_ENDIAN__
+ addi r0,r10,-1
+ andc r0,r0,r10
+ popcntw r0,r0
+#else
+ cntlzw r0,r10 /* Count leading zeros before the match. */
+#endif
+ sub r3,r8,r3
+ srwi r0,r0,3 /* Convert leading/trailing zeros to bytes. */
+ add r3,r3,r0 /* Length until the match. */
+ cmplw r3,r4
+ blelr
+ mr r3,r4
blr
-/* Deals with size <= 32. */
+/* Deals with size <= 16. */
.align 4
L(small_range):
cmplwi r4,0
- beq L(zero)
+ beq L(end_max)
+
+ clrrwi r7,r7,2 /* Address of last word. */
rlwinm r6,r3,3,27,28 /* Calculate padding. */
lwz r12,0(r8) /* Load word from memory. */
cmpb r10,r12,r0 /* Check for null bytes in WORD1. */
+#ifdef __LITTLE_ENDIAN__
+ srw r10,r10,r6
+ slw r10,r10,r6
+#else
slw r10,r10,r6
srw r10,r10,r6
+#endif
cmplwi cr7,r10,0
bne cr7,L(done)
- addi r9,r8,4
- cmplw r9,r7
- bge L(end_max)
- b L(loop_small)
+ cmplw r8,r7
+ beq L(end_max)
.p2align 5
L(loop_small):
lwzu r12,4(r8)
cmpb r10,r12,r0
- addi r9,r8,4
cmplwi cr6,r10,0
bne cr6,L(done)
- cmplw r9,r7
- bge L(end_max)
- b L(loop_small)
+ cmplw r8,r7
+ bne L(loop_small)
+ mr r3,r4
+ blr
+
END (__strnlen)
weak_alias (__strnlen, strnlen)
libc_hidden_builtin_def (strnlen)
diff --git a/sysdeps/powerpc/powerpc32/power8/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc32/power8/fpu/multiarch/Implies
new file mode 100644
index 0000000000..43a3b83e2a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power8/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power7/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc32/power8/multiarch/Implies b/sysdeps/powerpc/powerpc32/power8/multiarch/Implies
new file mode 100644
index 0000000000..f18504408f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc32/power8/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc32/power7/multiarch
diff --git a/sysdeps/powerpc/powerpc32/setjmp-common.S b/sysdeps/powerpc/powerpc32/setjmp-common.S
index 60b0026fa6..0c77029abe 100644
--- a/sysdeps/powerpc/powerpc32/setjmp-common.S
+++ b/sysdeps/powerpc/powerpc32/setjmp-common.S
@@ -17,6 +17,7 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
+#include <stap-probe.h>
#define _ASM
#ifdef __NO_VMX__
# include <novmxsetjmp.h>
@@ -24,8 +25,13 @@
# include <jmpbuf-offsets.h>
#endif
+#if defined __SPE__ || (defined __NO_FPRS__ && !defined _SOFT_FLOAT)
+# define SAVE_GP(N) evstdd r##N,((JB_FPRS+((N)-14)*2)*4)(3)
+#else
+# define SAVE_GP(N) stw r##N,((JB_GPRS+(N)-14)*4)(3)
+#endif
-ENTRY (__sigsetjmp)
+ENTRY (__sigsetjmp_symbol)
#ifdef PTR_MANGLE
mr r5,r1
@@ -35,35 +41,38 @@ ENTRY (__sigsetjmp)
stw r1,(JB_GPR1*4)(3)
#endif
mflr r0
- stw r14,((JB_GPRS+0)*4)(3)
+ /* setjmp probe expects longjmp first argument (4@3), second argument
+ (-4@4), and target address (4@0), respectively. */
+ LIBC_PROBE (setjmp, 3, 4@3, -4@4, 4@0)
+ SAVE_GP (14)
#ifdef PTR_MANGLE
PTR_MANGLE2 (r0, r10)
li r10,0
#endif
stw r0,(JB_LR*4)(3)
- stw r15,((JB_GPRS+1)*4)(3)
+ SAVE_GP (15)
mfcr r0
- stw r16,((JB_GPRS+2)*4)(3)
+ SAVE_GP (16)
stw r0,(JB_CR*4)(3)
- stw r17,((JB_GPRS+3)*4)(3)
- stw r18,((JB_GPRS+4)*4)(3)
- stw r19,((JB_GPRS+5)*4)(3)
- stw r20,((JB_GPRS+6)*4)(3)
- stw r21,((JB_GPRS+7)*4)(3)
- stw r22,((JB_GPRS+8)*4)(3)
- stw r23,((JB_GPRS+9)*4)(3)
- stw r24,((JB_GPRS+10)*4)(3)
- stw r25,((JB_GPRS+11)*4)(3)
- stw r26,((JB_GPRS+12)*4)(3)
- stw r27,((JB_GPRS+13)*4)(3)
- stw r28,((JB_GPRS+14)*4)(3)
- stw r29,((JB_GPRS+15)*4)(3)
- stw r30,((JB_GPRS+16)*4)(3)
- stw r31,((JB_GPRS+17)*4)(3)
+ SAVE_GP (17)
+ SAVE_GP (18)
+ SAVE_GP (19)
+ SAVE_GP (20)
+ SAVE_GP (21)
+ SAVE_GP (22)
+ SAVE_GP (23)
+ SAVE_GP (24)
+ SAVE_GP (25)
+ SAVE_GP (26)
+ SAVE_GP (27)
+ SAVE_GP (28)
+ SAVE_GP (29)
+ SAVE_GP (30)
+ SAVE_GP (31)
#if defined NOT_IN_libc && defined IS_IN_rtld
li r3,0
blr
#else
- b __sigjmp_save@local
+ b __sigjmp_save_symbol@local
#endif
-END (__sigsetjmp)
+END (__sigsetjmp_symbol)
diff --git a/sysdeps/powerpc/powerpc32/setjmp.S b/sysdeps/powerpc/powerpc32/setjmp.S
index 8a8cf0d6e7..467d9c9ecf 100644
--- a/sysdeps/powerpc/powerpc32/setjmp.S
+++ b/sysdeps/powerpc/powerpc32/setjmp.S
@@ -21,23 +21,25 @@
#if defined NOT_IN_libc
/* Build a non-versioned object for rtld-*. */
+# define __sigsetjmp_symbol __sigsetjmp
+# define __sigjmp_save_symbol __sigjmp_save
# include "setjmp-common.S"
#else /* !NOT_IN_libc */
/* Build a versioned object for libc. */
-default_symbol_version (__vmx__sigsetjmp,__sigsetjmp,GLIBC_2.3.4)
-# define __sigsetjmp __vmx__sigsetjmp
-# define __sigjmp_save __vmx__sigjmp_save
+versioned_symbol (libc, __vmx__sigsetjmp, __sigsetjmp, GLIBC_2_3_4)
+# define __sigsetjmp_symbol __vmx__sigsetjmp
+# define __sigjmp_save_symbol __vmx__sigjmp_save
# include "setjmp-common.S"
# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)
# define __NO_VMX__
-# undef __sigsetjmp
-# undef __sigjmp_save
+# undef __sigsetjmp_symbol
+# undef __sigjmp_save_symbol
# undef JB_SIZE
-symbol_version (__novmx__sigsetjmp,__sigsetjmp,GLIBC_2.0)
-# define __sigsetjmp __novmx__sigsetjmp
-# define __sigjmp_save __novmx__sigjmp_save
+compat_symbol (libc, __novmx__sigsetjmp, __sigsetjmp, GLIBC_2_0)
+# define __sigsetjmp_symbol __novmx__sigsetjmp
+# define __sigjmp_save_symbol __novmx__sigjmp_save
# include "setjmp-common.S"
# endif
#endif /* !NOT_IN_libc */
diff --git a/sysdeps/powerpc/powerpc32/stackguard-macros.h b/sysdeps/powerpc/powerpc32/stackguard-macros.h
index 839f6a4b9b..b3d0af830f 100644
--- a/sysdeps/powerpc/powerpc32/stackguard-macros.h
+++ b/sysdeps/powerpc/powerpc32/stackguard-macros.h
@@ -2,3 +2,13 @@
#define STACK_CHK_GUARD \
({ uintptr_t x; asm ("lwz %0,-28680(2)" : "=r" (x)); x; })
+
+#define POINTER_CHK_GUARD \
+ ({ \
+ uintptr_t x; \
+ asm ("lwz %0,%1(2)" \
+ : "=r" (x) \
+ : "i" (offsetof (tcbhead_t, pointer_guard) - TLS_TCB_OFFSET - sizeof (tcbhead_t)) \
+ ); \
+ x; \
+ })
diff --git a/sysdeps/powerpc/powerpc32/stpcpy.S b/sysdeps/powerpc/powerpc32/stpcpy.S
index 03c6dddc3a..7e106e0e6c 100644
--- a/sysdeps/powerpc/powerpc32/stpcpy.S
+++ b/sysdeps/powerpc/powerpc32/stpcpy.S
@@ -62,7 +62,22 @@ L(g2): add rTMP, rFEFE, rWORD
mr rALT, rWORD
/* We've hit the end of the string. Do the rest byte-by-byte. */
-L(g1): rlwinm. rTMP, rALT, 8, 24, 31
+L(g1):
+#ifdef __LITTLE_ENDIAN__
+ rlwinm. rTMP, rALT, 0, 24, 31
+ stbu rALT, 4(rDEST)
+ beqlr-
+ rlwinm. rTMP, rALT, 24, 24, 31
+ stbu rTMP, 1(rDEST)
+ beqlr-
+ rlwinm. rTMP, rALT, 16, 24, 31
+ stbu rTMP, 1(rDEST)
+ beqlr-
+ rlwinm rTMP, rALT, 8, 24, 31
+ stbu rTMP, 1(rDEST)
+ blr
+#else
+ rlwinm. rTMP, rALT, 8, 24, 31
stbu rTMP, 4(rDEST)
beqlr-
rlwinm. rTMP, rALT, 16, 24, 31
@@ -73,6 +88,7 @@ L(g1): rlwinm. rTMP, rALT, 8, 24, 31
beqlr-
stbu rALT, 1(rDEST)
blr
+#endif
/* Oh well. In this case, we just do a byte-by-byte copy. */
.align 4
diff --git a/sysdeps/powerpc/powerpc32/strchr.S b/sysdeps/powerpc/powerpc32/strchr.S
index c9952eeccf..6050565770 100644
--- a/sysdeps/powerpc/powerpc32/strchr.S
+++ b/sysdeps/powerpc/powerpc32/strchr.S
@@ -36,6 +36,8 @@ ENTRY (strchr)
#define rIGN r10 /* number of bits we should ignore in the first word */
#define rMASK r11 /* mask with the bits to ignore set to 0 */
#define rTMP3 r12
+#define rTMP4 rIGN
+#define rTMP5 rMASK
rlwimi rCHR, rCHR, 8, 16, 23
@@ -49,64 +51,93 @@ ENTRY (strchr)
addi r7F7F, r7F7F, 0x7f7f
/* Test the first (partial?) word. */
lwz rWORD, 0(rSTR)
+#ifdef __LITTLE_ENDIAN__
+ slw rMASK, rMASK, rIGN
+#else
srw rMASK, rMASK, rIGN
+#endif
orc rWORD, rWORD, rMASK
add rTMP1, rFEFE, rWORD
nor rTMP2, r7F7F, rWORD
- and. rTMP1, rTMP1, rTMP2
+ and. rTMP4, rTMP1, rTMP2
xor rTMP3, rCHR, rWORD
orc rTMP3, rTMP3, rMASK
b L(loopentry)
/* The loop. */
-L(loop):lwzu rWORD, 4(rSTR)
- and. rTMP1, rTMP1, rTMP2
+L(loop):
+ lwzu rWORD, 4(rSTR)
+ and. rTMP5, rTMP1, rTMP2
/* Test for 0. */
- add rTMP1, rFEFE, rWORD
- nor rTMP2, r7F7F, rWORD
+ add rTMP1, rFEFE, rWORD /* x - 0x01010101. */
+ nor rTMP2, r7F7F, rWORD /* ~(x | 0x7f7f7f7f) == ~x & 0x80808080. */
bne L(foundit)
- and. rTMP1, rTMP1, rTMP2
+ and. rTMP4, rTMP1, rTMP2 /* (x - 0x01010101) & ~x & 0x80808080. */
/* Start test for the bytes we're looking for. */
xor rTMP3, rCHR, rWORD
L(loopentry):
add rTMP1, rFEFE, rTMP3
nor rTMP2, r7F7F, rTMP3
beq L(loop)
+
/* There is a zero byte in the word, but may also be a matching byte (either
before or after the zero byte). In fact, we may be looking for a
- zero byte, in which case we return a match. We guess that this hasn't
- happened, though. */
-L(missed):
- and. rTMP1, rTMP1, rTMP2
+ zero byte, in which case we return a match. */
+ and. rTMP5, rTMP1, rTMP2
li rRTN, 0
beqlr
-/* It did happen. Decide which one was first...
- I'm not sure if this is actually faster than a sequence of
- rotates, compares, and branches (we use it anyway because it's shorter). */
+/* At this point:
+ rTMP5 bytes are 0x80 for each match of c, 0 otherwise.
+ rTMP4 bytes are 0x80 for each match of 0, 0 otherwise.
+ But there may be false matches in the next most significant byte from
+ a true match due to carries. This means we need to recalculate the
+ matches using a longer method for big-endian. */
+#ifdef __LITTLE_ENDIAN__
+ addi rTMP1, rTMP5, -1
+ andc rTMP1, rTMP1, rTMP5
+ cntlzw rCLZB, rTMP1
+ addi rTMP2, rTMP4, -1
+ andc rTMP2, rTMP2, rTMP4
+ cmplw rTMP1, rTMP2
+ bgtlr
+ subfic rCLZB, rCLZB, 32-7
+#else
+/* I think we could reduce this by two instructions by keeping the "nor"
+ results from the loop for reuse here. See strlen.S tail. Similarly
+ one instruction could be pruned from L(foundit). */
and rFEFE, r7F7F, rWORD
- or rMASK, r7F7F, rWORD
+ or rTMP5, r7F7F, rWORD
and rTMP1, r7F7F, rTMP3
- or rIGN, r7F7F, rTMP3
+ or rTMP4, r7F7F, rTMP3
add rFEFE, rFEFE, r7F7F
add rTMP1, rTMP1, r7F7F
- nor rWORD, rMASK, rFEFE
- nor rTMP2, rIGN, rTMP1
+ nor rWORD, rTMP5, rFEFE
+ nor rTMP2, rTMP4, rTMP1
+ cntlzw rCLZB, rTMP2
cmplw rWORD, rTMP2
bgtlr
- cntlzw rCLZB, rTMP2
+#endif
srwi rCLZB, rCLZB, 3
add rRTN, rSTR, rCLZB
blr
L(foundit):
+#ifdef __LITTLE_ENDIAN__
+ addi rTMP1, rTMP5, -1
+ andc rTMP1, rTMP1, rTMP5
+ cntlzw rCLZB, rTMP1
+ subfic rCLZB, rCLZB, 32-7-32
+ srawi rCLZB, rCLZB, 3
+#else
and rTMP1, r7F7F, rTMP3
- or rIGN, r7F7F, rTMP3
+ or rTMP4, r7F7F, rTMP3
add rTMP1, rTMP1, r7F7F
- nor rTMP2, rIGN, rTMP1
+ nor rTMP2, rTMP4, rTMP1
cntlzw rCLZB, rTMP2
subi rSTR, rSTR, 4
srwi rCLZB, rCLZB, 3
+#endif
add rRTN, rSTR, rCLZB
blr
END (strchr)
diff --git a/sysdeps/powerpc/powerpc32/strcmp.S b/sysdeps/powerpc/powerpc32/strcmp.S
index 297ca3c1b2..91d60c9053 100644
--- a/sysdeps/powerpc/powerpc32/strcmp.S
+++ b/sysdeps/powerpc/powerpc32/strcmp.S
@@ -24,7 +24,7 @@
EALIGN (strcmp, 4, 0)
-#define rTMP r0
+#define rTMP2 r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -34,6 +34,7 @@ EALIGN (strcmp, 4, 0)
#define r7F7F r8 /* constant 0x7f7f7f7f */
#define rNEG r9 /* ~(word in s1 | 0x7f7f7f7f) */
#define rBITDIF r10 /* bits that differ in s1 & s2 words */
+#define rTMP r11
or rTMP, rSTR2, rSTR1
@@ -56,10 +57,45 @@ L(g1): add rTMP, rFEFE, rWORD1
and. rTMP, rTMP, rNEG
cmpw cr1, rWORD1, rWORD2
beq+ L(g0)
-L(endstring):
+
/* OK. We've hit the end of the string. We need to be careful that
we don't compare two strings as different because of gunk beyond
the end of the strings... */
+#ifdef __LITTLE_ENDIAN__
+L(endstring):
+ addi rTMP2, rTMP, -1
+ andc rTMP2, rTMP2, rTMP
+ rlwimi rTMP2, rTMP2, 1, 0, 30
+ and rWORD2, rWORD2, rTMP2 /* Mask off gunk. */
+ and rWORD1, rWORD1, rTMP2
+ rlwinm rTMP2, rWORD2, 8, 0xffffffff /* Byte reverse word. */
+ rlwinm rTMP, rWORD1, 8, 0xffffffff
+ rlwimi rTMP2, rWORD2, 24, 0, 7
+ rlwimi rTMP, rWORD1, 24, 0, 7
+ rlwimi rTMP2, rWORD2, 24, 16, 23
+ rlwimi rTMP, rWORD1, 24, 16, 23
+ xor. rBITDIF, rTMP, rTMP2
+ sub rRTN, rTMP, rTMP2
+ bgelr+
+ ori rRTN, rTMP2, 1
+ blr
+
+L(different):
+ lwz rWORD1, -4(rSTR1)
+ rlwinm rTMP2, rWORD2, 8, 0xffffffff /* Byte reverse word. */
+ rlwinm rTMP, rWORD1, 8, 0xffffffff
+ rlwimi rTMP2, rWORD2, 24, 0, 7
+ rlwimi rTMP, rWORD1, 24, 0, 7
+ rlwimi rTMP2, rWORD2, 24, 16, 23
+ rlwimi rTMP, rWORD1, 24, 16, 23
+ xor. rBITDIF, rTMP, rTMP2
+ sub rRTN, rTMP, rTMP2
+ bgelr+
+ ori rRTN, rTMP2, 1
+ blr
+
+#else
+L(endstring):
and rTMP, r7F7F, rWORD1
beq cr1, L(equal)
add rTMP, rTMP, r7F7F
@@ -84,7 +120,7 @@ L(different):
L(highbit):
ori rRTN, rWORD2, 1
blr
-
+#endif
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
diff --git a/sysdeps/powerpc/powerpc32/strcpy.S b/sysdeps/powerpc/powerpc32/strcpy.S
index 4ae577dbb6..e938cc42a7 100644
--- a/sysdeps/powerpc/powerpc32/strcpy.S
+++ b/sysdeps/powerpc/powerpc32/strcpy.S
@@ -62,7 +62,22 @@ L(g2): add rTMP, rFEFE, rWORD
mr rALT, rWORD
/* We've hit the end of the string. Do the rest byte-by-byte. */
-L(g1): rlwinm. rTMP, rALT, 8, 24, 31
+L(g1):
+#ifdef __LITTLE_ENDIAN__
+ rlwinm. rTMP, rALT, 0, 24, 31
+ stb rALT, 4(rDEST)
+ beqlr-
+ rlwinm. rTMP, rALT, 24, 24, 31
+ stb rTMP, 5(rDEST)
+ beqlr-
+ rlwinm. rTMP, rALT, 16, 24, 31
+ stb rTMP, 6(rDEST)
+ beqlr-
+ rlwinm rTMP, rALT, 8, 24, 31
+ stb rTMP, 7(rDEST)
+ blr
+#else
+ rlwinm. rTMP, rALT, 8, 24, 31
stb rTMP, 4(rDEST)
beqlr-
rlwinm. rTMP, rALT, 16, 24, 31
@@ -73,6 +88,7 @@ L(g1): rlwinm. rTMP, rALT, 8, 24, 31
beqlr-
stb rALT, 7(rDEST)
blr
+#endif
/* Oh well. In this case, we just do a byte-by-byte copy. */
.align 4
diff --git a/sysdeps/powerpc/powerpc32/strlen.S b/sysdeps/powerpc/powerpc32/strlen.S
index 9a6eafc382..a7153ed7a2 100644
--- a/sysdeps/powerpc/powerpc32/strlen.S
+++ b/sysdeps/powerpc/powerpc32/strlen.S
@@ -29,7 +29,12 @@
1 is subtracted you get a value in the range 0x00-0x7f, none of which
have their high bit set. The expression here is
(x + 0xfefefeff) & ~(x | 0x7f7f7f7f), which gives 0x00000000 when
- there were no 0x00 bytes in the word.
+ there were no 0x00 bytes in the word. You get 0x80 in bytes that
+ match, but possibly false 0x80 matches in the next more significant
+ byte to a true match due to carries. For little-endian this is
+ of no consequence since the least significant match is the one
+ we're interested in, but big-endian needs method 2 to find which
+ byte matches.
2) Given a word 'x', we can test to see _which_ byte was zero by
calculating ~(((x & 0x7f7f7f7f) + 0x7f7f7f7f) | x | 0x7f7f7f7f).
@@ -72,7 +77,7 @@
ENTRY (strlen)
-#define rTMP1 r0
+#define rTMP4 r0
#define rRTN r3 /* incoming STR arg, outgoing result */
#define rSTR r4 /* current string position */
#define rPADN r5 /* number of padding bits we prepend to the
@@ -82,9 +87,9 @@ ENTRY (strlen)
#define rWORD1 r8 /* current string word */
#define rWORD2 r9 /* next string word */
#define rMASK r9 /* mask for first string word */
-#define rTMP2 r10
-#define rTMP3 r11
-#define rTMP4 r12
+#define rTMP1 r10
+#define rTMP2 r11
+#define rTMP3 r12
clrrwi rSTR, rRTN, 2
@@ -93,15 +98,20 @@ ENTRY (strlen)
lwz rWORD1, 0(rSTR)
li rMASK, -1
addi r7F7F, r7F7F, 0x7f7f
-/* That's the setup done, now do the first pair of words.
- We make an exception and use method (2) on the first two words, to reduce
- overhead. */
+/* We use method (2) on the first two words, because rFEFE isn't
+ required which reduces setup overhead. Also gives a faster return
+ for small strings on big-endian due to needing to recalculate with
+ method (2) anyway. */
+#ifdef __LITTLE_ENDIAN__
+ slw rMASK, rMASK, rPADN
+#else
srw rMASK, rMASK, rPADN
+#endif
and rTMP1, r7F7F, rWORD1
or rTMP2, r7F7F, rWORD1
add rTMP1, rTMP1, r7F7F
- nor rTMP1, rTMP2, rTMP1
- and. rWORD1, rTMP1, rMASK
+ nor rTMP3, rTMP2, rTMP1
+ and. rTMP3, rTMP3, rMASK
mtcrf 0x01, rRTN
bne L(done0)
lis rFEFE, -0x101
@@ -110,11 +120,12 @@ ENTRY (strlen)
bt 29, L(loop)
/* Handle second word of pair. */
+/* Perhaps use method (1) here for little-endian, saving one instruction? */
lwzu rWORD1, 4(rSTR)
and rTMP1, r7F7F, rWORD1
or rTMP2, r7F7F, rWORD1
add rTMP1, rTMP1, r7F7F
- nor. rWORD1, rTMP2, rTMP1
+ nor. rTMP3, rTMP2, rTMP1
bne L(done0)
/* The loop. */
@@ -128,28 +139,52 @@ L(loop):
add rTMP3, rFEFE, rWORD2
nor rTMP4, r7F7F, rWORD2
bne L(done1)
- and. rTMP1, rTMP3, rTMP4
+ and. rTMP3, rTMP3, rTMP4
beq L(loop)
+#ifndef __LITTLE_ENDIAN__
and rTMP1, r7F7F, rWORD2
add rTMP1, rTMP1, r7F7F
- andc rWORD1, rTMP4, rTMP1
+ andc rTMP3, rTMP4, rTMP1
b L(done0)
L(done1):
and rTMP1, r7F7F, rWORD1
subi rSTR, rSTR, 4
add rTMP1, rTMP1, r7F7F
- andc rWORD1, rTMP2, rTMP1
+ andc rTMP3, rTMP2, rTMP1
/* When we get to here, rSTR points to the first word in the string that
- contains a zero byte, and the most significant set bit in rWORD1 is in that
- byte. */
+ contains a zero byte, and rTMP3 has 0x80 for bytes that are zero,
+ and 0x00 otherwise. */
L(done0):
- cntlzw rTMP3, rWORD1
+ cntlzw rTMP3, rTMP3
subf rTMP1, rRTN, rSTR
srwi rTMP3, rTMP3, 3
add rRTN, rTMP1, rTMP3
blr
+#else
+
+L(done0):
+ addi rTMP1, rTMP3, -1 /* Form a mask from trailing zeros. */
+ andc rTMP1, rTMP1, rTMP3
+ cntlzw rTMP1, rTMP1 /* Count bits not in the mask. */
+ subf rTMP3, rRTN, rSTR
+ subfic rTMP1, rTMP1, 32-7
+ srwi rTMP1, rTMP1, 3
+ add rRTN, rTMP1, rTMP3
+ blr
+
+L(done1):
+ addi rTMP3, rTMP1, -1
+ andc rTMP3, rTMP3, rTMP1
+ cntlzw rTMP3, rTMP3
+ subf rTMP1, rRTN, rSTR
+ subfic rTMP3, rTMP3, 32-7-32
+ srawi rTMP3, rTMP3, 3
+ add rRTN, rTMP1, rTMP3
+ blr
+#endif
+
END (strlen)
libc_hidden_builtin_def (strlen)
diff --git a/sysdeps/powerpc/powerpc32/strncmp.S b/sysdeps/powerpc/powerpc32/strncmp.S
index fa345d293c..e36a160a80 100644
--- a/sysdeps/powerpc/powerpc32/strncmp.S
+++ b/sysdeps/powerpc/powerpc32/strncmp.S
@@ -24,7 +24,7 @@
EALIGN (strncmp, 4, 0)
-#define rTMP r0
+#define rTMP2 r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -35,6 +35,7 @@ EALIGN (strncmp, 4, 0)
#define r7F7F r9 /* constant 0x7f7f7f7f */
#define rNEG r10 /* ~(word in s1 | 0x7f7f7f7f) */
#define rBITDIF r11 /* bits that differ in s1 & s2 words */
+#define rTMP r12
dcbt 0,rSTR1
or rTMP, rSTR2, rSTR1
@@ -73,12 +74,45 @@ L(g1): add rTMP, rFEFE, rWORD1
we don't compare two strings as different because of gunk beyond
the end of the strings... */
+#ifdef __LITTLE_ENDIAN__
+L(endstring):
+ slwi rTMP, rTMP, 1
+ addi rTMP2, rTMP, -1
+ andc rTMP2, rTMP2, rTMP
+ and rWORD2, rWORD2, rTMP2 /* Mask off gunk. */
+ and rWORD1, rWORD1, rTMP2
+ rlwinm rTMP2, rWORD2, 8, 0xffffffff /* Byte reverse word. */
+ rlwinm rTMP, rWORD1, 8, 0xffffffff
+ rlwimi rTMP2, rWORD2, 24, 0, 7
+ rlwimi rTMP, rWORD1, 24, 0, 7
+ rlwimi rTMP2, rWORD2, 24, 16, 23
+ rlwimi rTMP, rWORD1, 24, 16, 23
+ xor. rBITDIF, rTMP, rTMP2
+ sub rRTN, rTMP, rTMP2
+ bgelr+
+ ori rRTN, rTMP2, 1
+ blr
+
+L(different):
+ lwz rWORD1, -4(rSTR1)
+ rlwinm rTMP2, rWORD2, 8, 0xffffffff /* Byte reverse word. */
+ rlwinm rTMP, rWORD1, 8, 0xffffffff
+ rlwimi rTMP2, rWORD2, 24, 0, 7
+ rlwimi rTMP, rWORD1, 24, 0, 7
+ rlwimi rTMP2, rWORD2, 24, 16, 23
+ rlwimi rTMP, rWORD1, 24, 16, 23
+ xor. rBITDIF, rTMP, rTMP2
+ sub rRTN, rTMP, rTMP2
+ bgelr+
+ ori rRTN, rTMP2, 1
+ blr
+
+#else
L(endstring):
and rTMP, r7F7F, rWORD1
beq cr1, L(equal)
add rTMP, rTMP, r7F7F
xor. rBITDIF, rWORD1, rWORD2
-
andc rNEG, rNEG, rTMP
blt- L(highbit)
cntlzw rBITDIF, rBITDIF
@@ -86,28 +120,20 @@ L(endstring):
addi rNEG, rNEG, 7
cmpw cr1, rNEG, rBITDIF
sub rRTN, rWORD1, rWORD2
- blt- cr1, L(equal)
- srawi rRTN, rRTN, 31
- ori rRTN, rRTN, 1
- blr
+ bgelr+ cr1
L(equal):
li rRTN, 0
blr
L(different):
- lwzu rWORD1, -4(rSTR1)
+ lwz rWORD1, -4(rSTR1)
xor. rBITDIF, rWORD1, rWORD2
sub rRTN, rWORD1, rWORD2
- blt- L(highbit)
- srawi rRTN, rRTN, 31
- ori rRTN, rRTN, 1
- blr
+ bgelr+
L(highbit):
- srwi rWORD2, rWORD2, 24
- srwi rWORD1, rWORD1, 24
- sub rRTN, rWORD1, rWORD2
+ ori rRTN, rWORD2, 1
blr
-
+#endif
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
diff --git a/sysdeps/powerpc/powerpc32/sysdep.h b/sysdeps/powerpc/powerpc32/sysdep.h
index 47d02a8048..78f54f91c4 100644
--- a/sysdeps/powerpc/powerpc32/sysdep.h
+++ b/sysdeps/powerpc/powerpc32/sysdep.h
@@ -99,8 +99,7 @@ GOT_LABEL: ; \
# define JUMPTARGET(name) name
#endif
-#if defined SHARED && defined DO_VERSIONING && defined PIC \
- && !defined NO_HIDDEN
+#if defined SHARED && defined PIC && !defined NO_HIDDEN
# undef HIDDEN_JUMPTARGET
# define HIDDEN_JUMPTARGET(name) __GI_##name##@local
#endif
diff --git a/sysdeps/powerpc/powerpc64/__longjmp-common.S b/sysdeps/powerpc/powerpc64/__longjmp-common.S
index 70c370439f..3c792b495e 100644
--- a/sysdeps/powerpc/powerpc64/__longjmp-common.S
+++ b/sysdeps/powerpc/powerpc64/__longjmp-common.S
@@ -17,6 +17,7 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
+#include <stap-probe.h>
#define _ASM
#define _SETJMP_H
#ifdef __NO_VMX__
@@ -57,7 +58,7 @@ ENTRY (__longjmp)
beq L(no_vmx)
la r5,((JB_VRS)*8)(3)
andi. r6,r5,0xf
- lwz r0,((JB_VRSAVE)*8)(3)
+ lwz r0,((JB_VRSAVE)*8)(3) /* 32-bit VRSAVE. */
mtspr VRSAVE,r0
beq+ L(aligned_restore_vmx)
addi r6,r5,16
@@ -130,7 +131,7 @@ L(no_vmx):
ld r14,((JB_GPRS+0)*8)(r3)
lfd fp14,((JB_FPRS+0)*8)(r3)
#if defined SHARED && !defined IS_IN_rtld
- std r2,40(r1) /* Restore the callers TOC save area. */
+ std r2,FRAME_TOC_SAVE(r1) /* Restore the callers TOC save area. */
#endif
ld r15,((JB_GPRS+1)*8)(r3)
lfd fp15,((JB_FPRS+1)*8)(r3)
@@ -147,20 +148,23 @@ L(no_vmx):
#ifdef PTR_DEMANGLE
PTR_DEMANGLE2 (r0, r25)
#endif
+ /* longjmp/longjmp_target probe expects longjmp first argument (8@3),
+ second argument (-4@4), and target address (8@0), respectively. */
+ LIBC_PROBE (longjmp, 3, 8@3, -4@4, 8@0)
mtlr r0
-/* std r2,40(r1) Restore the TOC save area. */
+/* std r2,FRAME_TOC_SAVE(r1) Restore the TOC save area. */
ld r21,((JB_GPRS+7)*8)(r3)
lfd fp21,((JB_FPRS+7)*8)(r3)
ld r22,((JB_GPRS+8)*8)(r3)
lfd fp22,((JB_FPRS+8)*8)(r3)
- ld r0,(JB_CR*8)(r3)
+ lwz r5,((JB_CR*8)+4)(r3) /* 32-bit CR. */
ld r23,((JB_GPRS+9)*8)(r3)
lfd fp23,((JB_FPRS+9)*8)(r3)
ld r24,((JB_GPRS+10)*8)(r3)
lfd fp24,((JB_FPRS+10)*8)(r3)
ld r25,((JB_GPRS+11)*8)(r3)
lfd fp25,((JB_FPRS+11)*8)(r3)
- mtcrf 0xFF,r0
+ mtcrf 0xFF,r5
ld r26,((JB_GPRS+12)*8)(r3)
lfd fp26,((JB_FPRS+12)*8)(r3)
ld r27,((JB_GPRS+13)*8)(r3)
@@ -173,6 +177,7 @@ L(no_vmx):
lfd fp30,((JB_FPRS+16)*8)(r3)
ld r31,((JB_GPRS+17)*8)(r3)
lfd fp31,((JB_FPRS+17)*8)(r3)
+ LIBC_PROBE (longjmp_target, 3, 8@3, -4@4, 8@0)
mr r3,r4
blr
END (__longjmp)
diff --git a/sysdeps/powerpc/powerpc64/addmul_1.S b/sysdeps/powerpc/powerpc64/addmul_1.S
new file mode 100644
index 0000000000..f256506304
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/addmul_1.S
@@ -0,0 +1,208 @@
+/* PowerPC64 __mpn_addmul_1 -- Multiply a limb vector with a limb and add
+ the result to a second limb vector.
+ Copyright (C) 1999-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#ifdef USE_AS_SUBMUL
+# define FUNC __mpn_submul_1
+# define ADDSUBC subfe
+# define ADDSUB subfc
+#else
+# define FUNC __mpn_addmul_1
+# define ADDSUBC adde
+# define ADDSUB addc
+#endif
+
+#define RP r3
+#define UP r4
+#define N r5
+#define VL r6
+
+EALIGN(FUNC, 5, 0)
+ std r31, -8(r1)
+ rldicl. r0, N, 0, 62
+ std r30, -16(r1)
+ cmpdi VL, r0, 2
+ std r29, -24(r1)
+ addi N, N, 3
+ std r28, -32(r1)
+ srdi N, N, 2
+ std r27, -40(r1)
+ mtctr N
+ beq cr0, L(b00)
+ blt cr6, L(b01)
+ beq cr6, L(b10)
+
+L(b11): ld r9, 0(UP)
+ ld r28, 0(RP)
+ mulld r0, r9, VL
+ mulhdu r12, r9, VL
+ ADDSUB r0, r0, r28
+ std r0, 0(RP)
+ addi RP, RP, 8
+ ld r9, 8(UP)
+ ld r27, 16(UP)
+ addi UP, UP, 24
+#ifdef USE_AS_SUBMUL
+ subfe r11, r11, r11
+#endif
+ b L(bot)
+
+ .align 4
+L(b00): ld r9, 0(UP)
+ ld r27, 8(UP)
+ ld r28, 0(RP)
+ ld r29, 8(RP)
+ mulld r0, r9, VL
+ mulhdu N, r9, VL
+ mulld r7, r27, VL
+ mulhdu r8, r27, VL
+ addc r7, r7, N
+ addze r12, r8
+ ADDSUB r0, r0, r28
+ std r0, 0(RP)
+ ADDSUBC r7, r7, r29
+ std r7, 8(RP)
+ addi RP, RP, 16
+ ld r9, 16(UP)
+ ld r27, 24(UP)
+ addi UP, UP, 32
+#ifdef USE_AS_SUBMUL
+ subfe r11, r11, r11
+#endif
+ b L(bot)
+
+ .align 4
+L(b01): bdnz L(gt1)
+ ld r9, 0(UP)
+ ld r11, 0(RP)
+ mulld r0, r9, VL
+ mulhdu r8, r9, VL
+ ADDSUB r0, r0, r11
+ std r0, 0(RP)
+#ifdef USE_AS_SUBMUL
+ subfe r11, r11, r11
+ addic r11, r11, 1
+#endif
+ addze RP, r8
+ blr
+
+L(gt1): ld r9, 0(UP)
+ ld r27, 8(UP)
+ mulld r0, r9, VL
+ mulhdu N, r9, VL
+ mulld r7, r27, VL
+ mulhdu r8, r27, VL
+ ld r9, 16(UP)
+ ld r28, 0(RP)
+ ld r29, 8(RP)
+ ld r30, 16(RP)
+ mulld r11, r9, VL
+ mulhdu r10, r9, VL
+ addc r7, r7, N
+ adde r11, r11, r8
+ addze r12, r10
+ ADDSUB r0, r0, r28
+ std r0, 0(RP)
+ ADDSUBC r7, r7, r29
+ std r7, 8(RP)
+ ADDSUBC r11, r11, r30
+ std r11, 16(RP)
+ addi RP, RP, 24
+ ld r9, 24(UP)
+ ld r27, 32(UP)
+ addi UP, UP, 40
+#ifdef USE_AS_SUBMUL
+ subfe r11, r11, r11
+#endif
+ b L(bot)
+
+L(b10): addic r0, r0, r0
+ li r12, 0
+ ld r9, 0(UP)
+ ld r27, 8(UP)
+ bdz L(end)
+ addi UP, UP, 16
+
+ .align 4
+L(top): mulld r0, r9, VL
+ mulhdu N, r9, VL
+ mulld r7, r27, VL
+ mulhdu r8, r27, VL
+ ld r9, 0(UP)
+ ld r28, 0(RP)
+ ld r27, 8(UP)
+ ld r29, 8(RP)
+ adde r0, r0, r12
+ adde r7, r7, N
+ mulld N, r9, VL
+ mulhdu r10, r9, VL
+ mulld r11, r27, VL
+ mulhdu r12, r27, VL
+ ld r9, 16(UP)
+ ld r30, 16(RP)
+ ld r27, 24(UP)
+ ld r31, 24(RP)
+ adde N, N, r8
+ adde r11, r11, r10
+ addze r12, r12
+ ADDSUB r0, r0, r28
+ std r0, 0(RP)
+ ADDSUBC r7, r7, r29
+ std r7, 8(RP)
+ ADDSUBC N, N, r30
+ std N, 16(RP)
+ ADDSUBC r11, r11, r31
+ std r11, 24(RP)
+ addi UP, UP, 32
+#ifdef USE_AS_SUBMUL
+ subfe r11, r11, r11
+#endif
+ addi RP, RP, 32
+L(bot):
+#ifdef USE_AS_SUBMUL
+ addic r11, r11, 1
+#endif
+ bdnz L(top)
+
+L(end): mulld r0, r9, VL
+ mulhdu N, r9, VL
+ mulld r7, r27, VL
+ mulhdu r8, r27, VL
+ ld r28, 0(RP)
+ ld r29, 8(RP)
+ adde r0, r0, r12
+ adde r7, r7, N
+ addze r8, r8
+ ADDSUB r0, r0, r28
+ std r0, 0(RP)
+ ADDSUBC r7, r7, r29
+ std r7, 8(RP)
+#ifdef USE_AS_SUBMUL
+ subfe r11, r11, r11
+ addic r11, r11, 1
+#endif
+ addze RP, r8
+ ld r31, -8(r1)
+ ld r30, -16(r1)
+ ld r29, -24(r1)
+ ld r28, -32(r1)
+ ld r27, -40(r1)
+ blr
+END(FUNC)
diff --git a/sysdeps/powerpc/powerpc64/configure b/sysdeps/powerpc/powerpc64/configure
index 5ddac55922..92ec607e01 100644
--- a/sysdeps/powerpc/powerpc64/configure
+++ b/sysdeps/powerpc/powerpc64/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/powerpc/powerpc64.
# The Aix ld uses global .symbol_names instead of symbol_names
diff --git a/sysdeps/powerpc/powerpc64/configure.in b/sysdeps/powerpc/powerpc64/configure.ac
index 67aac663d8..67aac663d8 100644
--- a/sysdeps/powerpc/powerpc64/configure.in
+++ b/sysdeps/powerpc/powerpc64/configure.ac
diff --git a/sysdeps/powerpc/powerpc64/crti.S b/sysdeps/powerpc/powerpc64/crti.S
index 967dc669bb..6e1ece8d66 100644
--- a/sysdeps/powerpc/powerpc64/crti.S
+++ b/sysdeps/powerpc/powerpc64/crti.S
@@ -60,23 +60,14 @@
.LC0:
.tc PREINIT_FUNCTION[TC], PREINIT_FUNCTION
#endif
- .type BODY_LABEL (_init), @function
- .globl _init
- .section ".opd", "aw"
- .align 3
-_init: OPD_ENT (_init)
-#ifdef HAVE_ASM_GLOBAL_DOT_NAME
- .globl BODY_LABEL (_init)
- .size _init, 24
-#else
- .type _init, @function
-#endif
.section ".init", "ax", @progbits
+ ENTRY_2(_init)
.align ALIGNARG (2)
BODY_LABEL (_init):
+ LOCALENTRY(_init)
mflr 0
- std 0, 16(r1)
- stdu r1, -112(r1)
+ std 0, FRAME_LR_SAVE(r1)
+ stdu r1, -FRAME_MIN_SIZE_PARM(r1)
#if PREINIT_FUNCTION_WEAK
addis r9, r2, .LC0@toc@ha
ld r0, .LC0@toc@l(r9)
@@ -87,20 +78,11 @@ BODY_LABEL (_init):
nop
1:
- .type BODY_LABEL (_fini), @function
- .globl _fini
- .section ".opd", "aw"
- .align 3
-_fini: OPD_ENT (_fini)
-#ifdef HAVE_ASM_GLOBAL_DOT_NAME
- .globl BODY_LABEL (_fini)
- .size _fini, 24
-#else
- .type _fini, @function
-#endif
.section ".fini", "ax", @progbits
+ ENTRY_2(_fini)
.align ALIGNARG (2)
BODY_LABEL (_fini):
+ LOCALENTRY(_fini)
mflr 0
- std 0, 16(r1)
- stdu r1, -112(r1)
+ std 0, FRAME_LR_SAVE(r1)
+ stdu r1, -FRAME_MIN_SIZE_PARM(r1)
diff --git a/sysdeps/powerpc/powerpc64/crtn.S b/sysdeps/powerpc/powerpc64/crtn.S
index 364e53aae7..cdd3b0f340 100644
--- a/sysdeps/powerpc/powerpc64/crtn.S
+++ b/sysdeps/powerpc/powerpc64/crtn.S
@@ -39,13 +39,13 @@
#include <sysdep.h>
.section .init,"ax",@progbits
- addi r1, r1, 112
- ld r0, 16(r1)
+ addi r1, r1, FRAME_MIN_SIZE_PARM
+ ld r0, FRAME_LR_SAVE(r1)
mtlr r0
blr
.section .fini,"ax",@progbits
- addi r1, r1, 112
- ld r0, 16(r1)
+ addi r1, r1, FRAME_MIN_SIZE_PARM
+ ld r0, FRAME_LR_SAVE(r1)
mtlr r0
blr
diff --git a/sysdeps/powerpc/powerpc64/dl-irel.h b/sysdeps/powerpc/powerpc64/dl-irel.h
index d85c6148ac..a500aa6f4c 100644
--- a/sysdeps/powerpc/powerpc64/dl-irel.h
+++ b/sysdeps/powerpc/powerpc64/dl-irel.h
@@ -50,7 +50,11 @@ elf_irela (const Elf64_Rela *reloc)
{
Elf64_Addr *const reloc_addr = (void *) reloc->r_offset;
Elf64_Addr value = elf_ifunc_invoke(reloc->r_addend);
+#if _CALL_ELF != 2
*(Elf64_FuncDesc *) reloc_addr = *(Elf64_FuncDesc *) value;
+#else
+ *reloc_addr = value;
+#endif
}
else
__libc_fatal ("unexpected reloc type in static binary");
diff --git a/sysdeps/powerpc/powerpc64/dl-machine.h b/sysdeps/powerpc/powerpc64/dl-machine.h
index 059fdafd53..36f3916999 100644
--- a/sysdeps/powerpc/powerpc64/dl-machine.h
+++ b/sysdeps/powerpc/powerpc64/dl-machine.h
@@ -31,6 +31,7 @@
in l_info array. */
#define DT_PPC64(x) (DT_PPC64_##x - DT_LOPROC + DT_NUM)
+#if _CALL_ELF != 2
/* A PowerPC64 function descriptor. The .plt (procedure linkage
table) and .opd (official procedure descriptor) sections are
arrays of these. */
@@ -40,6 +41,7 @@ typedef struct
Elf64_Addr fd_toc;
Elf64_Addr fd_aux;
} Elf64_FuncDesc;
+#endif
#define ELF_MULT_MACHINES_SUPPORTED
@@ -47,6 +49,18 @@ typedef struct
static inline int
elf_machine_matches_host (const Elf64_Ehdr *ehdr)
{
+ /* Verify that the binary matches our ABI version. */
+ if ((ehdr->e_flags & EF_PPC64_ABI) != 0)
+ {
+#if _CALL_ELF != 2
+ if ((ehdr->e_flags & EF_PPC64_ABI) != 1)
+ return 0;
+#else
+ if ((ehdr->e_flags & EF_PPC64_ABI) != 2)
+ return 0;
+#endif
+ }
+
return ehdr->e_machine == EM_PPC64;
}
@@ -122,15 +136,9 @@ elf_machine_dynamic (void)
#define RTLD_START \
asm (".pushsection \".text\"\n" \
" .align 2\n" \
-" .type " BODY_PREFIX "_start,@function\n" \
-" .pushsection \".opd\",\"aw\"\n" \
-" .align 3\n" \
-" .globl _start\n" \
" " ENTRY_2(_start) "\n" \
-"_start:\n" \
-" " OPD_ENT(_start) "\n" \
-" .popsection\n" \
BODY_PREFIX "_start:\n" \
+" " LOCALENTRY(_start) "\n" \
/* We start with the following on the stack, from top: \
argc (4 bytes); \
arguments for program (terminated by NULL); \
@@ -154,11 +162,6 @@ BODY_PREFIX "_start:\n" \
".LT__start_name_end:\n" \
" .align 2\n" \
" " END_2(_start) "\n" \
-" .globl _dl_start_user\n" \
-" .pushsection \".opd\",\"aw\"\n" \
-"_dl_start_user:\n" \
-" " OPD_ENT(_dl_start_user) "\n" \
-" .popsection\n" \
" .pushsection \".toc\",\"aw\"\n" \
DL_STARTING_UP_DEF \
".LC__rtld_local:\n" \
@@ -170,7 +173,6 @@ DL_STARTING_UP_DEF \
".LC__dl_fini:\n" \
" .tc _dl_fini[TC],_dl_fini\n" \
" .popsection\n" \
-" .type " BODY_PREFIX "_dl_start_user,@function\n" \
" " ENTRY_2(_dl_start_user) "\n" \
/* Now, we do our main work of calling initialisation procedures. \
The ELF ABI doesn't say anything about parameters for these, \
@@ -178,6 +180,7 @@ DL_STARTING_UP_DEF \
Changing these is strongly discouraged (not least because argc is \
passed by value!). */ \
BODY_PREFIX "_dl_start_user:\n" \
+" " LOCALENTRY(_dl_start_user) "\n" \
/* the address of _start in r30. */ \
" mr 30,3\n" \
/* &_dl_argc in 29, &_dl_argv in 27, and _dl_loaded in 28. */ \
@@ -228,10 +231,7 @@ BODY_PREFIX "_dl_start_user:\n" \
/* Now, call the start function descriptor at r30... */ \
" .globl ._dl_main_dispatch\n" \
"._dl_main_dispatch:\n" \
-" ld 0,0(30)\n" \
-" ld 2,8(30)\n" \
-" mtctr 0\n" \
-" ld 11,16(30)\n" \
+" " PPC64_LOAD_FUNCPTR(30) "\n" \
" bctr\n" \
".LT__dl_start_user:\n" \
" .long 0\n" \
@@ -272,8 +272,22 @@ BODY_PREFIX "_dl_start_user:\n" \
relocations behave "normally", ie. always use the real address
like PLT relocations. So always set ELF_RTYPE_CLASS_PLT. */
+#if _CALL_ELF != 2
#define elf_machine_type_class(type) \
(ELF_RTYPE_CLASS_PLT | (((type) == R_PPC64_COPY) * ELF_RTYPE_CLASS_COPY))
+#else
+/* And now that you have read that large comment, you can disregard it
+ all for ELFv2. ELFv2 does need the special SHN_UNDEF treatment. */
+#define IS_PPC64_TLS_RELOC(R) \
+ (((R) >= R_PPC64_TLS && (R) <= R_PPC64_DTPREL16_HIGHESTA) \
+ || ((R) >= R_PPC64_TPREL16_HIGH && (R) <= R_PPC64_DTPREL16_HIGHA))
+
+#define elf_machine_type_class(type) \
+ ((((type) == R_PPC64_JMP_SLOT \
+ || (type) == R_PPC64_ADDR24 \
+ || IS_PPC64_TLS_RELOC (type)) * ELF_RTYPE_CLASS_PLT) \
+ | (((type) == R_PPC64_COPY) * ELF_RTYPE_CLASS_COPY))
+#endif
/* A reloc type used for ld.so cmdline arg lookups to reject PLT entries. */
#define ELF_MACHINE_JMP_SLOT R_PPC64_JMP_SLOT
@@ -282,8 +296,19 @@ BODY_PREFIX "_dl_start_user:\n" \
#define ELF_MACHINE_NO_REL 1
/* Stuff for the PLT. */
+#if _CALL_ELF != 2
#define PLT_INITIAL_ENTRY_WORDS 3
+#define PLT_ENTRY_WORDS 3
+#define GLINK_INITIAL_ENTRY_WORDS 8
+/* The first 32k entries of glink can set an index and branch using two
+ instructions; past that point, glink uses three instructions. */
+#define GLINK_ENTRY_WORDS(I) (((I) < 0x8000)? 2 : 3)
+#else
+#define PLT_INITIAL_ENTRY_WORDS 2
+#define PLT_ENTRY_WORDS 1
#define GLINK_INITIAL_ENTRY_WORDS 8
+#define GLINK_ENTRY_WORDS(I) 1
+#endif
#define PPC_DCBST(where) asm volatile ("dcbst 0,%0" : : "r"(where) : "memory")
#define PPC_DCBT(where) asm volatile ("dcbt 0,%0" : : "r"(where) : "memory")
@@ -328,38 +353,45 @@ elf_machine_runtime_setup (struct link_map *map, int lazy, int profile)
if (lazy)
{
- /* The function descriptor of the appropriate trampoline
- routine is used to set the 1st and 2nd doubleword of the
- plt_reserve. */
- Elf64_FuncDesc *resolve_fd;
Elf64_Word glink_offset;
- /* the plt_reserve area is the 1st 3 doublewords of the PLT */
- Elf64_FuncDesc *plt_reserve = (Elf64_FuncDesc *) plt;
Elf64_Word offset;
+ Elf64_Addr dlrr;
- resolve_fd = (Elf64_FuncDesc *) (profile ? _dl_profile_resolve
- : _dl_runtime_resolve);
+ dlrr = (Elf64_Addr) (profile ? _dl_profile_resolve
+ : _dl_runtime_resolve);
if (profile && GLRO(dl_profile) != NULL
&& _dl_name_match_p (GLRO(dl_profile), map))
/* This is the object we are looking for. Say that we really
want profiling and the timers are started. */
GL(dl_profile_map) = map;
-
+#if _CALL_ELF != 2
/* We need to stuff the address/TOC of _dl_runtime_resolve
into doublewords 0 and 1 of plt_reserve. Then we need to
stuff the map address into doubleword 2 of plt_reserve.
This allows the GLINK0 code to transfer control to the
correct trampoline which will transfer control to fixup
in dl-machine.c. */
- plt_reserve->fd_func = resolve_fd->fd_func;
- plt_reserve->fd_toc = resolve_fd->fd_toc;
- plt_reserve->fd_aux = (Elf64_Addr) map;
+ {
+ /* The plt_reserve area is the 1st 3 doublewords of the PLT. */
+ Elf64_FuncDesc *plt_reserve = (Elf64_FuncDesc *) plt;
+ Elf64_FuncDesc *resolve_fd = (Elf64_FuncDesc *) dlrr;
+ plt_reserve->fd_func = resolve_fd->fd_func;
+ plt_reserve->fd_toc = resolve_fd->fd_toc;
+ plt_reserve->fd_aux = (Elf64_Addr) map;
#ifdef RTLD_BOOTSTRAP
- /* When we're bootstrapping, the opd entry will not have
- been relocated yet. */
- plt_reserve->fd_func += l_addr;
- plt_reserve->fd_toc += l_addr;
+ /* When we're bootstrapping, the opd entry will not have
+ been relocated yet. */
+ plt_reserve->fd_func += l_addr;
+ plt_reserve->fd_toc += l_addr;
+#endif
+ }
+#else
+ /* When we don't have function descriptors, the first doubleword
+ of the PLT holds the address of _dl_runtime_resolve, and the
+ second doubleword holds the map address. */
+ plt[0] = dlrr;
+ plt[1] = (Elf64_Addr) map;
#endif
/* Set up the lazy PLT entries. */
@@ -370,14 +402,8 @@ elf_machine_runtime_setup (struct link_map *map, int lazy, int profile)
{
plt[offset] = (Elf64_Xword) &glink[glink_offset];
- offset += 3;
- /* The first 32k entries of glink can set an index and
- branch using two instructions; Past that point,
- glink uses three instructions. */
- if (i < 0x8000)
- glink_offset += 2;
- else
- glink_offset += 3;
+ offset += PLT_ENTRY_WORDS;
+ glink_offset += GLINK_ENTRY_WORDS (i);
}
/* Now, we've modified data. We need to write the changes from
@@ -398,6 +424,42 @@ elf_machine_runtime_setup (struct link_map *map, int lazy, int profile)
return lazy;
}
+#if _CALL_ELF == 2
+/* If the PLT entry whose reloc is 'reloc' resolves to a function in
+ the same object, return the target function's local entry point
+ offset if usable. */
+static inline Elf64_Addr __attribute__ ((always_inline))
+ppc64_local_entry_offset (struct link_map *map, lookup_t sym_map,
+ const Elf64_Rela *reloc)
+{
+ const Elf64_Sym *symtab;
+ const Elf64_Sym *sym;
+
+ /* If the target function is in a different object, we cannot
+ use the local entry point. */
+ if (sym_map != map)
+ return 0;
+
+ /* If the linker inserted multiple TOCs, we cannot use the
+ local entry point. */
+ if (map->l_info[DT_PPC64(OPT)]
+ && (map->l_info[DT_PPC64(OPT)]->d_un.d_val & PPC64_OPT_MULTI_TOC))
+ return 0;
+
+ /* Otherwise, we can use the local entry point. Retrieve its offset
+ from the symbol's ELF st_other field. */
+ symtab = (const void *) D_PTR (map, l_info[DT_SYMTAB]);
+ sym = &symtab[ELFW(R_SYM) (reloc->r_info)];
+
+ /* If the target function is an ifunc then the local entry offset is
+ for the resolver, not the final destination. */
+ if (__builtin_expect (ELFW(ST_TYPE) (sym->st_info) == STT_GNU_IFUNC, 0))
+ return 0;
+
+ return PPC64_LOCAL_ENTRY_OFFSET (sym->st_other);
+}
+#endif
+
/* Change the PLT entry whose reloc is 'reloc' to call the actual
routine. */
static inline Elf64_Addr __attribute__ ((always_inline))
@@ -405,6 +467,7 @@ elf_machine_fixup_plt (struct link_map *map, lookup_t sym_map,
const Elf64_Rela *reloc,
Elf64_Addr *reloc_addr, Elf64_Addr finaladdr)
{
+#if _CALL_ELF != 2
Elf64_FuncDesc *plt = (Elf64_FuncDesc *) reloc_addr;
Elf64_FuncDesc *rel = (Elf64_FuncDesc *) finaladdr;
Elf64_Addr offset = 0;
@@ -442,13 +505,20 @@ elf_machine_fixup_plt (struct link_map *map, lookup_t sym_map,
plt->fd_func = rel->fd_func + offset;
PPC_DCBST (&plt->fd_func);
PPC_ISYNC;
+#else
+ finaladdr += ppc64_local_entry_offset (map, sym_map, reloc);
+ *reloc_addr = finaladdr;
+#endif
return finaladdr;
}
static inline void __attribute__ ((always_inline))
-elf_machine_plt_conflict (Elf64_Addr *reloc_addr, Elf64_Addr finaladdr)
+elf_machine_plt_conflict (struct link_map *map, lookup_t sym_map,
+ const Elf64_Rela *reloc,
+ Elf64_Addr *reloc_addr, Elf64_Addr finaladdr)
{
+#if _CALL_ELF != 2
Elf64_FuncDesc *plt = (Elf64_FuncDesc *) reloc_addr;
Elf64_FuncDesc *rel = (Elf64_FuncDesc *) finaladdr;
@@ -459,6 +529,10 @@ elf_machine_plt_conflict (Elf64_Addr *reloc_addr, Elf64_Addr finaladdr)
PPC_DCBST (&plt->fd_aux);
PPC_DCBST (&plt->fd_toc);
PPC_SYNC;
+#else
+ finaladdr += ppc64_local_entry_offset (map, sym_map, reloc);
+ *reloc_addr = finaladdr;
+#endif
}
/* Return the final value of a plt relocation. */
@@ -471,8 +545,13 @@ elf_machine_plt_value (struct link_map *map, const Elf64_Rela *reloc,
/* Names of the architecture-specific auditing callback functions. */
+#if _CALL_ELF != 2
#define ARCH_LA_PLTENTER ppc64_gnu_pltenter
#define ARCH_LA_PLTEXIT ppc64_gnu_pltexit
+#else
+#define ARCH_LA_PLTENTER ppc64v2_gnu_pltenter
+#define ARCH_LA_PLTEXIT ppc64v2_gnu_pltexit
+#endif
#endif /* dl_machine_h */
@@ -528,6 +607,7 @@ auto inline Elf64_Addr __attribute__ ((always_inline))
resolve_ifunc (Elf64_Addr value,
const struct link_map *map, const struct link_map *sym_map)
{
+#if _CALL_ELF != 2
#ifndef RESOLVE_CONFLICT_FIND_MAP
/* The function we are calling may not yet have its opd entry relocated. */
Elf64_FuncDesc opd;
@@ -545,6 +625,7 @@ resolve_ifunc (Elf64_Addr value,
value = (Elf64_Addr) &opd;
}
#endif
+#endif
return ((Elf64_Addr (*) (unsigned long int)) value) (GLRO(dl_hwcap));
}
@@ -561,6 +642,12 @@ elf_machine_rela (struct link_map *map,
Elf64_Addr *const reloc_addr = reloc_addr_arg;
const int r_type = ELF64_R_TYPE (reloc->r_info);
const Elf64_Sym *const refsym = sym;
+ union unaligned
+ {
+ uint16_t u2;
+ uint32_t u4;
+ uint64_t u8;
+ } __attribute__ ((__packed__));
if (r_type == R_PPC64_RELATIVE)
{
@@ -604,7 +691,7 @@ elf_machine_rela (struct link_map *map,
/* Fall thru */
case R_PPC64_JMP_SLOT:
#ifdef RESOLVE_CONFLICT_FIND_MAP
- elf_machine_plt_conflict (reloc_addr, value);
+ elf_machine_plt_conflict (map, sym_map, reloc, reloc_addr, value);
#else
elf_machine_fixup_plt (map, sym_map, reloc, reloc_addr, value);
#endif
@@ -663,11 +750,25 @@ elf_machine_rela (struct link_map *map,
case R_PPC64_TPREL16_HI:
value = elf_machine_tprel (map, sym_map, sym, reloc);
+ if (dont_expect (value + 0x80000000 >= 0x100000000LL))
+ _dl_reloc_overflow (map, "R_PPC64_TPREL16_HI", reloc_addr, refsym);
+ *(Elf64_Half *) reloc_addr = PPC_HI (value);
+ break;
+
+ case R_PPC64_TPREL16_HIGH:
+ value = elf_machine_tprel (map, sym_map, sym, reloc);
*(Elf64_Half *) reloc_addr = PPC_HI (value);
break;
case R_PPC64_TPREL16_HA:
value = elf_machine_tprel (map, sym_map, sym, reloc);
+ if (dont_expect (value + 0x80008000 >= 0x100000000LL))
+ _dl_reloc_overflow (map, "R_PPC64_TPREL16_HA", reloc_addr, refsym);
+ *(Elf64_Half *) reloc_addr = PPC_HA (value);
+ break;
+
+ case R_PPC64_TPREL16_HIGHA:
+ value = elf_machine_tprel (map, sym_map, sym, reloc);
*(Elf64_Half *) reloc_addr = PPC_HA (value);
break;
@@ -703,17 +804,23 @@ elf_machine_rela (struct link_map *map,
break;
case R_PPC64_ADDR16_HI:
+ if (dont_expect (value + 0x80000000 >= 0x100000000LL))
+ _dl_reloc_overflow (map, "R_PPC64_ADDR16_HI", reloc_addr, refsym);
+ case R_PPC64_ADDR16_HIGH:
*(Elf64_Half *) reloc_addr = PPC_HI (value);
break;
case R_PPC64_ADDR16_HA:
+ if (dont_expect (value + 0x80008000 >= 0x100000000LL))
+ _dl_reloc_overflow (map, "R_PPC64_ADDR16_HA", reloc_addr, refsym);
+ case R_PPC64_ADDR16_HIGHA:
*(Elf64_Half *) reloc_addr = PPC_HA (value);
break;
case R_PPC64_ADDR30:
{
Elf64_Addr delta = value - (Elf64_Xword) reloc_addr;
- if (dont_expect ((delta + 0x80000000) >= 0x10000000
+ if (dont_expect ((delta + 0x80000000) >= 0x100000000LL
|| (delta & 3) != 0))
_dl_reloc_overflow (map, "R_PPC64_ADDR30", reloc_addr, refsym);
BIT_INSERT (*(Elf64_Word *) reloc_addr, delta, 0xfffffffc);
@@ -741,27 +848,15 @@ elf_machine_rela (struct link_map *map,
return;
case R_PPC64_UADDR64:
- /* We are big-endian. */
- ((char *) reloc_addr_arg)[0] = (value >> 56) & 0xff;
- ((char *) reloc_addr_arg)[1] = (value >> 48) & 0xff;
- ((char *) reloc_addr_arg)[2] = (value >> 40) & 0xff;
- ((char *) reloc_addr_arg)[3] = (value >> 32) & 0xff;
- ((char *) reloc_addr_arg)[4] = (value >> 24) & 0xff;
- ((char *) reloc_addr_arg)[5] = (value >> 16) & 0xff;
- ((char *) reloc_addr_arg)[6] = (value >> 8) & 0xff;
- ((char *) reloc_addr_arg)[7] = (value >> 0) & 0xff;
+ ((union unaligned *) reloc_addr)->u8 = value;
return;
case R_PPC64_UADDR32:
- /* We are big-endian. */
- ((char *) reloc_addr_arg)[0] = (value >> 24) & 0xff;
- ((char *) reloc_addr_arg)[1] = (value >> 16) & 0xff;
- ((char *) reloc_addr_arg)[2] = (value >> 8) & 0xff;
- ((char *) reloc_addr_arg)[3] = (value >> 0) & 0xff;
+ ((union unaligned *) reloc_addr)->u4 = value;
return;
case R_PPC64_ADDR32:
- if (dont_expect ((value + 0x80000000) >= 0x10000000))
+ if (dont_expect ((value + 0x80000000) >= 0x100000000LL))
_dl_reloc_overflow (map, "R_PPC64_ADDR32", reloc_addr, refsym);
*(Elf64_Word *) reloc_addr = value;
return;
@@ -781,10 +876,8 @@ elf_machine_rela (struct link_map *map,
case R_PPC64_UADDR16:
if (dont_expect ((value + 0x8000) >= 0x10000))
_dl_reloc_overflow (map, "R_PPC64_UADDR16", reloc_addr, refsym);
- /* We are big-endian. */
- ((char *) reloc_addr_arg)[0] = (value >> 8) & 0xff;
- ((char *) reloc_addr_arg)[1] = (value >> 0) & 0xff;
- break;
+ ((union unaligned *) reloc_addr)->u2 = value;
+ return;
case R_PPC64_ADDR16_DS:
if (dont_expect ((value + 0x8000) >= 0x10000 || (value & 3) != 0))
diff --git a/sysdeps/powerpc/powerpc64/dl-trampoline.S b/sysdeps/powerpc/powerpc64/dl-trampoline.S
index 4dde2763a3..69ce523e90 100644
--- a/sysdeps/powerpc/powerpc64/dl-trampoline.S
+++ b/sysdeps/powerpc/powerpc64/dl-trampoline.S
@@ -26,13 +26,13 @@
parm1 (r3) and the index (r0) need to be converted to an offset
(index * 24) in parm2 (r4). */
-#define FRAME_SIZE 176
+#define FRAME_SIZE (FRAME_MIN_SIZE+64)
/* We need to save the registers used to pass parameters, ie. r3 thru
r10; Use local var space rather than the parameter save area,
because gcc as of 2010/05 doesn't allocate a proper stack frame for
a function that makes no calls except for __tls_get_addr and we
might be here resolving the __tls_get_addr call. */
-#define INT_PARMS 112
+#define INT_PARMS FRAME_MIN_SIZE
EALIGN(_dl_runtime_resolve, 4, 0)
stdu r1,-FRAME_SIZE(r1)
cfi_adjust_cfa_offset (FRAME_SIZE)
@@ -48,36 +48,31 @@ EALIGN(_dl_runtime_resolve, 4, 0)
mflr r0
std r8,INT_PARMS+40(r1)
/* Store the LR in the LR Save area. */
- std r0,FRAME_SIZE+16(r1)
- cfi_offset (lr, 16)
- mfcr r0
+ std r0,FRAME_SIZE+FRAME_LR_SAVE(r1)
+ cfi_offset (lr, FRAME_LR_SAVE)
std r9,INT_PARMS+48(r1)
std r10,INT_PARMS+56(r1)
-/* I'm almost certain we don't have to save cr... be safe. */
- std r0,FRAME_SIZE+8(r1)
bl JUMPTARGET(_dl_fixup)
#ifndef SHARED
nop
#endif
/* Put the registers back. */
- ld r0,FRAME_SIZE+16(r1)
+ ld r0,FRAME_SIZE+FRAME_LR_SAVE(r1)
ld r10,INT_PARMS+56(r1)
ld r9,INT_PARMS+48(r1)
ld r8,INT_PARMS+40(r1)
ld r7,INT_PARMS+32(r1)
mtlr r0
- ld r0,FRAME_SIZE+8(r1)
ld r6,INT_PARMS+24(r1)
ld r5,INT_PARMS+16(r1)
ld r4,INT_PARMS+8(r1)
- mtcrf 0xFF,r0
-/* Load the target address, toc and static chain reg from the function
- descriptor returned by fixup. */
- ld r0,0(r3)
- ld r2,8(r3)
- mtctr r0
- ld r11,16(r3)
+/* Prepare for calling the function returned by fixup. */
+ PPC64_LOAD_FUNCPTR r3
ld r3,INT_PARMS+0(r1)
+#if _CALL_ELF == 2
+/* Restore the caller's TOC in case we jump to a local entry point. */
+ ld r2,FRAME_SIZE+FRAME_TOC_SAVE(r1)
+#endif
/* Unwind the stack frame, and jump. */
addi r1,r1,FRAME_SIZE
bctr
@@ -85,17 +80,30 @@ END(_dl_runtime_resolve)
#undef FRAME_SIZE
#undef INT_PARMS
- /* Stack layout:
- +592 previous backchain
- +584 spill_r31
- +576 spill_r30
- +560 v1
- +552 fp4
- +544 fp3
- +536 fp2
- +528 fp1
- +520 r4
- +512 r3
+ /* Stack layout: ELFv2 ABI.
+ +752 previous backchain
+ +744 spill_r31
+ +736 spill_r30
+ +720 v8
+ +704 v7
+ +688 v6
+ +672 v5
+ +656 v4
+ +640 v3
+ +624 v2
+ +608 v1
+ +600 fp10
+ ELFv1 ABI +592 fp9
+ +592 previous backchain +584 fp8
+ +584 spill_r31 +576 fp7
+ +576 spill_r30 +568 fp6
+ +560 v1 +560 fp5
+ +552 fp4 +552 fp4
+ +544 fp3 +544 fp3
+ +536 fp2 +536 fp2
+ +528 fp1 +528 fp1
+ +520 r4 +520 r4
+ +512 r3 +512 r3
return values
+504 free
+496 stackframe
@@ -147,18 +155,24 @@ END(_dl_runtime_resolve)
+64 parm3
+56 parm2
+48 parm1
- * Parameter save area, Allocated by the call, at least 8 double words
- +40 TOC save area
- +32 Reserved for linker
- +24 Reserved for compiler
+ * Parameter save area
+ * (v1 ABI: Allocated by the call, at least 8 double words)
+ +40 v1 ABI: TOC save area
+ +32 v1 ABI: Reserved for linker
+ +24 v1 ABI: Reserved for compiler / v2 ABI: TOC save area
+16 LR save area
+8 CR save area
r1+0 stack back chain
*/
-#define FRAME_SIZE 592
+#if _CALL_ELF == 2
+# define FRAME_SIZE 752
+# define VR_RTN 608
+#else
+# define FRAME_SIZE 592
+# define VR_RTN 560
+#endif
#define INT_RTN 512
#define FPR_RTN 528
-#define VR_RTN 560
#define STACK_FRAME 496
#define CALLING_LR 488
#define CALLING_SP 480
@@ -203,18 +217,14 @@ EALIGN(_dl_profile_resolve, 4, 0)
mflr r5
std r7,INT_PARMS+32(r1)
std r8,INT_PARMS+40(r1)
-/* Store the LR in the LR Save area of the previous frame. */
-/* XXX Do we have to do this? */
+/* Store the LR in the LR Save area. */
la r8,FRAME_SIZE(r1)
- std r5,FRAME_SIZE+16(r1)
- cfi_offset (lr, 16)
+ std r5,FRAME_SIZE+FRAME_LR_SAVE(r1)
+ cfi_offset (lr, FRAME_LR_SAVE)
std r5,CALLING_LR(r1)
- mfcr r0
std r9,INT_PARMS+48(r1)
std r10,INT_PARMS+56(r1)
std r8,CALLING_SP(r1)
-/* I'm almost certain we don't have to save cr... be safe. */
- std r0,FRAME_SIZE+8(r1)
ld r12,.LC__dl_hwcap@toc(r2)
#ifdef SHARED
/* Load _rtld_local_ro._dl_hwcap. */
@@ -311,24 +321,22 @@ L(saveFP):
lvx v12,r11,r10
lvx v13,r11,r9
L(restoreFXR):
- ld r0,FRAME_SIZE+16(r1)
+ ld r0,FRAME_SIZE+FRAME_LR_SAVE(r1)
ld r10,INT_PARMS+56(r1)
ld r9,INT_PARMS+48(r1)
ld r8,INT_PARMS+40(r1)
ld r7,INT_PARMS+32(r1)
mtlr r0
- ld r0,FRAME_SIZE+8(r1)
ld r6,INT_PARMS+24(r1)
ld r5,INT_PARMS+16(r1)
ld r4,INT_PARMS+8(r1)
- mtcrf 0xFF,r0
-/* Load the target address, toc and static chain reg from the function
- descriptor returned by fixup. */
- ld r0,0(r3)
- ld r2,8(r3)
- ld r11,16(r3)
+/* Prepare for calling the function returned by fixup. */
+ PPC64_LOAD_FUNCPTR r3
ld r3,INT_PARMS+0(r1)
- mtctr r0
+#if _CALL_ELF == 2
+/* Restore the caller's TOC in case we jump to a local entry point. */
+ ld r2,FRAME_SIZE+FRAME_TOC_SAVE(r1)
+#endif
/* Load the floating point registers. */
lfd fp1,FPR_PARMS+0(r1)
lfd fp2,FPR_PARMS+8(r1)
@@ -344,10 +352,11 @@ L(restoreFXR):
lfd fp12,FPR_PARMS+88(r1)
lfd fp13,FPR_PARMS+96(r1)
/* Unwind the stack frame, and jump. */
- ld r31,584(r1)
- ld r30,576(r1)
+ ld r31,FRAME_SIZE-8(r1)
+ ld r30,FRAME_SIZE-16(r1)
addi r1,r1,FRAME_SIZE
bctr
+
L(do_pltexit):
la r10,(VR_PARMS+0)(r1)
la r9,(VR_PARMS+16)(r1)
@@ -375,25 +384,19 @@ L(do_pltexit):
lvx v12,r11,r10
lvx v13,r11,r9
L(restoreFXR2):
- ld r0,FRAME_SIZE+16(r1)
+ ld r0,FRAME_SIZE+FRAME_LR_SAVE(r1)
ld r10,INT_PARMS+56(r1)
ld r9,INT_PARMS+48(r1)
ld r8,INT_PARMS+40(r1)
ld r7,INT_PARMS+32(r1)
mtlr r0
- ld r0,FRAME_SIZE+8(r1)
ld r6,INT_PARMS+24(r1)
ld r5,INT_PARMS+16(r1)
ld r4,INT_PARMS+8(r1)
- mtcrf 0xFF,r0
-/* Load the target address, toc and static chain reg from the function
- descriptor returned by fixup. */
- ld r0,0(r3)
- std r2,40(r1)
- ld r2,8(r3)
- ld r11,16(r3)
+/* Prepare for calling the function returned by fixup. */
+ std r2,FRAME_TOC_SAVE(r1)
+ PPC64_LOAD_FUNCPTR r3
ld r3,INT_PARMS+0(r1)
- mtctr r0
/* Load the floating point registers. */
lfd fp1,FPR_PARMS+0(r1)
lfd fp2,FPR_PARMS+8(r1)
@@ -410,21 +413,42 @@ L(restoreFXR2):
lfd fp13,FPR_PARMS+96(r1)
/* Call the target function. */
bctrl
- ld r2,40(r1)
+ ld r2,FRAME_TOC_SAVE(r1)
lwz r12,VR_VRSAVE(r1)
/* But return here and store the return values. */
std r3,INT_RTN(r1)
std r4,INT_RTN+8(r1)
- stfd fp1,FPR_PARMS+0(r1)
- stfd fp2,FPR_PARMS+8(r1)
+ stfd fp1,FPR_RTN+0(r1)
+ stfd fp2,FPR_RTN+8(r1)
cmpdi cr0,r12,0
la r10,VR_RTN(r1)
- stfd fp3,FPR_PARMS+16(r1)
- stfd fp4,FPR_PARMS+24(r1)
+ stfd fp3,FPR_RTN+16(r1)
+ stfd fp4,FPR_RTN+24(r1)
+#if _CALL_ELF == 2
+ la r12,VR_RTN+16(r1)
+ stfd fp5,FPR_RTN+32(r1)
+ stfd fp6,FPR_RTN+40(r1)
+ li r5,32
+ li r6,64
+ stfd fp7,FPR_RTN+48(r1)
+ stfd fp8,FPR_RTN+56(r1)
+ stfd fp9,FPR_RTN+64(r1)
+ stfd fp10,FPR_RTN+72(r1)
+#endif
mr r3,r31
mr r4,r30
beq L(callpltexit)
stvx v2,0,r10
+#if _CALL_ELF == 2
+ stvx v3,0,r12
+ stvx v4,r5,r10
+ stvx v5,r5,r12
+ addi r5,r5,64
+ stvx v6,r6,r10
+ stvx v7,r6,r12
+ stvx v8,r5,r10
+ stvx v9,r5,r12
+#endif
L(callpltexit):
addi r5,r1,INT_PARMS
addi r6,r1,INT_RTN
@@ -436,18 +460,39 @@ L(callpltexit):
lwz r12,VR_VRSAVE(r1)
ld r3,INT_RTN(r1)
ld r4,INT_RTN+8(r1)
- lfd fp1,FPR_PARMS+0(r1)
- lfd fp2,FPR_PARMS+8(r1)
+ lfd fp1,FPR_RTN+0(r1)
+ lfd fp2,FPR_RTN+8(r1)
cmpdi cr0,r12,0
- la r10,VR_RTN(r1)
- lfd fp3,FPR_PARMS+16(r1)
- lfd fp4,FPR_PARMS+24(r1)
+ la r11,VR_RTN(r1)
+ lfd fp3,FPR_RTN+16(r1)
+ lfd fp4,FPR_RTN+24(r1)
+#if _CALL_ELF == 2
+ la r12,VR_RTN+16(r1)
+ lfd fp5,FPR_RTN+32(r1)
+ lfd fp6,FPR_RTN+40(r1)
+ li r30,32
+ li r31,64
+ lfd fp7,FPR_RTN+48(r1)
+ lfd fp8,FPR_RTN+56(r1)
+ lfd fp9,FPR_RTN+64(r1)
+ lfd fp10,FPR_RTN+72(r1)
+#endif
beq L(pltexitreturn)
- lvx v2,0,r10
+ lvx v2,0,r11
+#if _CALL_ELF == 2
+ lvx v3,0,r12
+ lvx v4,r30,r11
+ lvx v5,r30,r12
+ addi r30,r30,64
+ lvx v6,r31,r11
+ lvx v7,r31,r12
+ lvx v8,r30,r11
+ lvx v9,r30,r12
+#endif
L(pltexitreturn):
- ld r0,FRAME_SIZE+16(r1)
- ld r31,584(r1)
- ld r30,576(r1)
+ ld r0,FRAME_SIZE+FRAME_LR_SAVE(r1)
+ ld r31,FRAME_SIZE-8(r1)
+ ld r30,FRAME_SIZE-16(r1)
mtlr r0
ld r1,0(r1)
blr
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile b/sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile
new file mode 100644
index 0000000000..ebf957e40b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/Makefile
@@ -0,0 +1,33 @@
+ifeq ($(subdir),math)
+sysdep_routines += s_isnan-power7 s_isnan-power6x s_isnan-power6 \
+ s_isnan-power5 s_isnan-ppc64 s_copysign-power6 \
+ s_copysign-ppc64 s_finite-power7 s_finite-ppc64 \
+ s_finitef-ppc64 s_isinff-ppc64 s_isinf-power7 \
+ s_isinf-ppc64 s_modf-power5+ s_modf-ppc64 \
+ s_modff-power5+ s_modff-ppc64
+
+libm-sysdep_routines += s_isnan-power7 s_isnan-power6x s_isnan-power6 \
+ s_isnan-power5 s_isnan-ppc64 s_llround-power6x \
+ s_llround-power5+ s_llround-ppc64 s_ceil-power5+ \
+ s_ceil-ppc64 s_ceilf-power5+ s_ceilf-ppc64 \
+ s_floor-power5+ s_floor-ppc64 s_floorf-power5+ \
+ s_floorf-ppc64 s_round-power5+ s_round-ppc64 \
+ s_roundf-power5+ s_roundf-ppc64 s_trunc-power5+ \
+ s_trunc-ppc64 s_truncf-power5+ s_truncf-ppc64 \
+ s_copysign-power6 s_copysign-ppc64 s_llrint-power6x \
+ s_llrint-ppc64 s_finite-power7 s_finite-ppc64 \
+ s_finitef-ppc64 s_isinff-ppc64 s_isinf-power7 \
+ s_isinf-ppc64 s_logb-power7 s_logbf-power7 \
+ s_logbl-power7 s_logb-ppc64 s_logbf-ppc64 \
+ s_logbl-ppc64 s_modf-power5+ s_modf-ppc64 \
+ s_modff-power5+ s_modff-ppc64 e_hypot-ppc64 \
+ e_hypot-power7 e_hypotf-ppc64 e_hypotf-power7
+
+CFLAGS-s_logbf-power7.c = -mcpu=power7
+CFLAGS-s_logbl-power7.c = -mcpu=power7
+CFLAGS-s_logb-power7.c = -mcpu=power7
+CFLAGS-s_modf-power5+.c = -mcpu=power5+
+CFLAGS-s_modff-power5+.c = -mcpu=power5+
+CFLAGS-e_hypot-power7.c = -mcpu=power7
+CFLAGS-e_hypotf-power7.c = -mcpu=power7
+endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypof.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypof.c
new file mode 100644
index 0000000000..526130223b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypof.c
@@ -0,0 +1,32 @@
+/* Multiple versions of ieee754_hypot.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__ieee754_hypotf) __ieee754_hypotf_ppc64 attribute_hidden;
+extern __typeof (__ieee754_hypotf) __ieee754_hypotf_power7 attribute_hidden;
+
+libc_ifunc (__ieee754_hypotf,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __ieee754_hypotf_power7
+ : __ieee754_hypotf_ppc64);
+
+strong_alias (__ieee754_hypotf, __hypotf_finite)
diff --git a/benchtests/bench-bcopy-ifunc.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-power7.c
index 66020e9387..7380c3d395 100644
--- a/benchtests/bench-bcopy-ifunc.c
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-power7.c
@@ -1,4 +1,4 @@
-/* Measure IFUNC implementations of bcopy function.
+/* __ieee_hypot() POWER7 version.
Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,5 +16,4 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#define TEST_IFUNC 1
-#include "bench-bcopy.c"
+#include <sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypot-power7.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-ppc64.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-ppc64.c
new file mode 100644
index 0000000000..9b0c1b0d22
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot-ppc64.c
@@ -0,0 +1,26 @@
+/* __ieee_hypot() PowerPC64 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define __ieee754_hypot __ieee754_hypot_ppc64
+
+#include <sysdeps/powerpc/fpu/e_hypot.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot.c
new file mode 100644
index 0000000000..faaf55032a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypot.c
@@ -0,0 +1,32 @@
+/* Multiple versions of ieee754_hypot.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__ieee754_hypot) __ieee754_hypot_ppc64 attribute_hidden;
+extern __typeof (__ieee754_hypot) __ieee754_hypot_power7 attribute_hidden;
+
+libc_ifunc (__ieee754_hypot,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __ieee754_hypot_power7
+ : __ieee754_hypot_ppc64);
+
+strong_alias (__ieee754_hypot, __hypot_finite)
diff --git a/benchtests/bench-bzero-ifunc.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-power7.c
index 84f1354dce..9ee841ba3d 100644
--- a/benchtests/bench-bzero-ifunc.c
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-power7.c
@@ -1,4 +1,4 @@
-/* Measure IFUNC implementations of bzero function.
+/* __ieee_hypotf() POWER7 version.
Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,5 +16,4 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#define TEST_IFUNC 1
-#include "bench-bzero.c"
+#include <sysdeps/powerpc/powerpc32/power4/fpu/multiarch/e_hypotf-power7.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-ppc64.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-ppc64.c
new file mode 100644
index 0000000000..734cfe2836
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/e_hypotf-ppc64.c
@@ -0,0 +1,26 @@
+/* __ieee_hypot() PowerPC64 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define __ieee754_hypotf __ieee754_hypotf_ppc64
+
+#include <sysdeps/powerpc/fpu/e_hypotf.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-power5+.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-power5+.S
new file mode 100644
index 0000000000..cbfe96e614
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-power5+.S
@@ -0,0 +1,31 @@
+/* ceil function. PowerPC64/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __ceil __ceil_power5plus
+
+#include <sysdeps/powerpc/powerpc64/power5+/fpu/s_ceil.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-ppc64.S
new file mode 100644
index 0000000000..4539c17c1f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil-ppc64.S
@@ -0,0 +1,31 @@
+/* ceil function. PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __ceil __ceil_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_ceil.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c
new file mode 100644
index 0000000000..587c0dc000
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceil.c
@@ -0,0 +1,40 @@
+/* Multiple versions of ceil.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__ceil) __ceil_ppc64 attribute_hidden;
+extern __typeof (__ceil) __ceil_power5plus attribute_hidden;
+
+libc_ifunc (__ceil,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __ceil_power5plus
+ : __ceil_ppc64);
+
+weak_alias (__ceil, ceil)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__ceil, __ceill)
+weak_alias (__ceil, ceill)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __ceil, ceill, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-power5+.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-power5+.S
new file mode 100644
index 0000000000..7790843f90
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-power5+.S
@@ -0,0 +1,26 @@
+/* ceilf function. PowerPC64/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __ceilf __ceilf_power5plus
+
+#include <sysdeps/powerpc/powerpc64/power5+/fpu/s_ceilf.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-ppc64.S
new file mode 100644
index 0000000000..e9036224ad
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf-ppc64.S
@@ -0,0 +1,26 @@
+/* ceilf function. PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __ceilf __ceilf_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_ceilf.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf.c
new file mode 100644
index 0000000000..a65174580b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_ceilf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of ceilf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__ceilf) __ceilf_ppc64 attribute_hidden;
+extern __typeof (__ceilf) __ceilf_power5plus attribute_hidden;
+
+libc_ifunc (__ceilf,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __ceilf_power5plus
+ : __ceilf_ppc64);
+
+weak_alias (__ceilf, ceilf)
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-power6.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-power6.S
new file mode 100644
index 0000000000..595d318a43
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-power6.S
@@ -0,0 +1,33 @@
+/* copysign(). PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a, b, c, d)
+#undef hidden_def
+#define hidden_def(name)
+
+#define __copysign __copysign_power6
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_copysign.S>
diff --git a/sysdeps/unix/bsd/setgid.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-ppc64.S
index f01ae6cf60..022ea06320 100644
--- a/sysdeps/unix/bsd/setgid.c
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign-ppc64.S
@@ -1,4 +1,6 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
+/* copysign(). PowerPC64 default version.
+ Copyright (C) 2010-2013 Free Software Foundation, Inc.
+ Contributed by Luis Machado <luisgpm@br.ibm.com>.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -16,19 +18,18 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
-#include <errno.h>
-#include <unistd.h>
-#include <sys/types.h>
+#include <math_ldbl_opt.h>
-/* Set the group ID of the calling process to GID.
- If the calling process is the super-user, the real
- and effective group IDs, and the saved set-group-ID to GID;
- if not, the effective group ID is set to GID. */
-int
-__setgid (gid)
- gid_t gid;
-{
- return __setregid (gid, gid);
-}
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a, b, c, d)
-weak_alias (__setgid, setgid)
+#define __copysign __copysign_ppc64
+#undef hidden_def
+#define hidden_def(name) \
+ strong_alias (__copysign_ppc64, __GI___copysign)
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_copysign.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign.c
new file mode 100644
index 0000000000..ee7ce0a886
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysign.c
@@ -0,0 +1,51 @@
+/* Multiple versions of copysign.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Redefine copysign so that the compiler won't complain about the type
+ mismatch with the IFUNC selector in strong_alias below. */
+#undef __copysign
+#define __copysign __redirect_copysign
+#include <math.h>
+#include <math_ldbl_opt.h>
+#undef __copysign
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__redirect_copysign) __copysign_ppc64 attribute_hidden;
+extern __typeof (__redirect_copysign) __copysign_power6 attribute_hidden;
+
+extern __typeof (__redirect_copysign) __libm_copysign;
+libc_ifunc (__libm_copysign,
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __copysign_power6
+ : __copysign_ppc64);
+
+strong_alias (__libm_copysign, __copysign)
+weak_alias (__copysign, copysign)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__copysign,copysignl)
+strong_alias(__copysign,__copysignl)
+#endif
+#ifdef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __copysign, copysignl, GLIBC_2_0);
+# endif
+#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __copysign, copysignl, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysignf.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysignf.c
new file mode 100644
index 0000000000..89c3c069a0
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_copysignf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of copysignf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+/* It's safe to use double-precision implementation for single-precision. */
+extern __typeof (__copysignf) __copysign_ppc64 attribute_hidden;
+extern __typeof (__copysignf) __copysign_power6 attribute_hidden;
+
+libc_ifunc (__copysignf,
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __copysign_power6
+ : __copysign_ppc64);
+
+weak_alias (__copysignf, copysignf)
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-power7.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-power7.S
new file mode 100644
index 0000000000..67f4f46429
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-power7.S
@@ -0,0 +1,33 @@
+/* isnan(). PowerPC64/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, symbol, ver)
+
+#define __finite __finite_power7
+
+#include <sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-ppc64.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-ppc64.c
new file mode 100644
index 0000000000..b5848fa53f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite-ppc64.c
@@ -0,0 +1,34 @@
+/* finite(). PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ Contributed by Luis Machado <luisgpm@br.ibm.com>.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define FINITE __finite_ppc64
+#ifdef SHARED
+# undef hidden_def
+# define hidden_def(a) \
+ __hidden_ver1 (__finite_ppc64, __GI___finite, __finite_ppc64);
+#endif
+
+#include <sysdeps/ieee754/dbl-64/s_finite.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite.c
new file mode 100644
index 0000000000..66cc437423
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finite.c
@@ -0,0 +1,51 @@
+/* Multiple versions of finite.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__finite) __finite_ppc64 attribute_hidden;
+extern __typeof (__finite) __finite_power7 attribute_hidden;
+
+libc_ifunc (__finite,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __finite_power7
+ : __finite_ppc64);
+
+weak_alias (__finite, finite)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__finite, __finitel)
+weak_alias (__finite, finitel)
+#endif
+
+#ifdef IS_IN_libm
+# if LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)
+compat_symbol (libm, finite, finitel, GLIBC_2_0);
+# endif
+# if LONG_DOUBLE_COMPAT (libm, GLIBC_2_1)
+compat_symbol (libm, __finite, __finitel, GLIBC_2_1);
+# endif
+#else
+# if LONG_DOUBLE_COMPAT (libc, GLIBC_2_0)
+compat_symbol (libc, __finite, __finitel, GLIBC_2_0);
+compat_symbol (libc, finite, finitel, GLIBC_2_0);
+# endif
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef-ppc64.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef-ppc64.c
new file mode 100644
index 0000000000..1f2f8acff5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef-ppc64.c
@@ -0,0 +1,32 @@
+/* finitef(). PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ Contributed by Luis Machado <luisgpm@br.ibm.com>.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+
+#define FINITEF __finitef_ppc64
+#ifdef SHARED
+# undef hidden_def
+# define hidden_def(a) \
+ __hidden_ver1 (__finitef_ppc64, __GI___finitef, __finitef_ppc64);
+#endif
+
+#include <sysdeps/ieee754/flt-32/s_finitef.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef.c
new file mode 100644
index 0000000000..25fe1a8705
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_finitef.c
@@ -0,0 +1,32 @@
+/* Multiple versions of finitef.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__finitef) __finitef_ppc64 attribute_hidden;
+/* The double-precision version also works for single-precision. */
+extern __typeof (__finitef) __finite_power7 attribute_hidden;
+
+libc_ifunc (__finitef,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __finite_power7
+ : __finitef_ppc64);
+
+weak_alias (__finitef, finitef)
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-power5+.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-power5+.S
new file mode 100644
index 0000000000..fc329ca021
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-power5+.S
@@ -0,0 +1,31 @@
+/* floor function. PowerPC64/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __floor __floor_power5plus
+
+#include <sysdeps/powerpc/powerpc64/power5+/fpu/s_floor.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-ppc64.S
new file mode 100644
index 0000000000..50db6d8571
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor-ppc64.S
@@ -0,0 +1,31 @@
+/* floor function. PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __floor __floor_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_floor.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c
new file mode 100644
index 0000000000..12a1baee86
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floor.c
@@ -0,0 +1,40 @@
+/* Multiple versions of floor.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__floor) __floor_ppc64 attribute_hidden;
+extern __typeof (__floor) __floor_power5plus attribute_hidden;
+
+libc_ifunc (__floor,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __floor_power5plus
+ : __floor_ppc64);
+
+weak_alias (__floor, floor)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__floor, __floorl)
+weak_alias (__floor, floorl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __floor, floorl, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-power5+.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-power5+.S
new file mode 100644
index 0000000000..1824bc13f5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-power5+.S
@@ -0,0 +1,26 @@
+/* floorf function. PowerPC64/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __floorf __floorf_power5plus
+
+#include <sysdeps/powerpc/powerpc64/power5+/fpu/s_floorf.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-ppc64.S
new file mode 100644
index 0000000000..7c8b99cfed
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf-ppc64.S
@@ -0,0 +1,27 @@
+/* floorf function. PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __floorf __floorf_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_floorf.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf.c
new file mode 100644
index 0000000000..c7b753f8b0
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_floorf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of floorf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__floorf) __floorf_ppc64 attribute_hidden;
+extern __typeof (__floorf) __floorf_power5plus attribute_hidden;
+
+libc_ifunc (__floorf,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __floorf_power5plus
+ : __floorf_ppc64);
+
+weak_alias (__floorf, floorf)
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-power7.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-power7.S
new file mode 100644
index 0000000000..e4e9430b00
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-power7.S
@@ -0,0 +1,33 @@
+/* isinf(). PowerPC64/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __isinf __isinf_power7
+
+#include <sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-ppc64.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-ppc64.c
new file mode 100644
index 0000000000..d1691286a5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf-ppc64.c
@@ -0,0 +1,33 @@
+/* isinf(). PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define __isinf __isinf_ppc64
+#ifdef SHARED
+# undef hidden_def
+# define hidden_def(a) \
+ __hidden_ver1 (__isinf_ppc64, __GI___isinf, __isinf_ppc64);
+#endif
+
+#include <sysdeps/ieee754/dbl-64/s_isinf.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf.c
new file mode 100644
index 0000000000..994f9773c4
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinf.c
@@ -0,0 +1,44 @@
+/* Multiple versions of isinf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__isinf) __isinf_ppc64 attribute_hidden;
+extern __typeof (__isinf) __isinf_power7 attribute_hidden;
+
+libc_ifunc (__isinf,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __isinf_power7
+ : __isinf_ppc64);
+
+weak_alias (__isinf, isinf)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__isinf, __isinfl)
+weak_alias (__isinf, isinfl)
+#endif
+
+#ifndef IS_IN_libm
+# if LONG_DOUBLE_COMPAT (libc, GLIBC_2_0)
+compat_symbol (libc, __isinf, __isinfl, GLIBC_2_0);
+compat_symbol (libc, isinf, isinfl, GLIBC_2_0);
+# endif
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff-ppc64.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff-ppc64.c
new file mode 100644
index 0000000000..65a28924d6
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff-ppc64.c
@@ -0,0 +1,31 @@
+/* isinff(). PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+
+#define __isinff __isinff_ppc64
+#ifdef SHARED
+# undef hidden_def
+# define hidden_def(a) \
+ __hidden_ver1 (__isinff_ppc64, __GI___isinff, __isinff_ppc64);
+#endif
+
+#include <sysdeps/ieee754/flt-32/s_isinff.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff.c
new file mode 100644
index 0000000000..44961f29ec
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isinff.c
@@ -0,0 +1,33 @@
+/* Multiple versions of isinf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__isinff) __isinff_ppc64 attribute_hidden;
+/* The double-precision version also works for single-precision. */
+extern __typeof (__isinff) __isinf_power7 attribute_hidden;
+
+libc_ifunc (__isinff,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __isinf_power7
+ : __isinff_ppc64);
+
+weak_alias (__isinff, isinff)
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power5.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power5.S
new file mode 100644
index 0000000000..757e580fb3
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power5.S
@@ -0,0 +1,33 @@
+/* isnan(). PowerPC64/POWER5 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, symbol, ver)
+
+#define __isnan __isnan_power5
+
+#include <sysdeps/powerpc/powerpc64/power5/fpu/s_isnan.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6.S
new file mode 100644
index 0000000000..e0d8010276
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6.S
@@ -0,0 +1,33 @@
+/* isnan(). PowerPC64/POWER6 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, symbol, ver)
+
+#define __isnan __isnan_power6
+
+#include <sysdeps/powerpc/powerpc64/power6/fpu/s_isnan.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6x.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6x.S
new file mode 100644
index 0000000000..84ce8e5548
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power6x.S
@@ -0,0 +1,33 @@
+/* isnan(). PowerPC64/POWER6X version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, symbol, ver)
+
+#define __isnan __isnan_power6x
+
+#include <sysdeps/powerpc/powerpc64/power6x/fpu/s_isnan.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power7.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power7.S
new file mode 100644
index 0000000000..f3f5a67fef
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-power7.S
@@ -0,0 +1,33 @@
+/* isnan(). PowerPC64/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef hidden_def
+#define hidden_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, symbol, ver)
+
+#define __isnan __isnan_power7
+
+#include <sysdeps/powerpc/powerpc64/power7/fpu/s_isnan.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S
new file mode 100644
index 0000000000..5ce6f52cf5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan-ppc64.S
@@ -0,0 +1,32 @@
+/* isnan(). PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+
+#define __isnan __isnan_ppc64
+#undef hidden_def
+#define hidden_def(name) \
+ .globl __GI___isnan ; .set __GI___isnan,__isnan_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_isnan.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan.c
new file mode 100644
index 0000000000..70353df91a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnan.c
@@ -0,0 +1,53 @@
+/* Multiple versions of isnan.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__isnan) __isnan_ppc64 attribute_hidden;
+extern __typeof (__isnan) __isnan_power5 attribute_hidden;
+extern __typeof (__isnan) __isnan_power6 attribute_hidden;
+extern __typeof (__isnan) __isnan_power6x attribute_hidden;
+extern __typeof (__isnan) __isnan_power7 attribute_hidden;
+
+libc_ifunc (__isnan,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __isnan_power7 :
+ (hwcap & PPC_FEATURE_POWER6_EXT)
+ ? __isnan_power6x :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __isnan_power6 :
+ (hwcap & PPC_FEATURE_POWER5)
+ ? __isnan_power5
+ : __isnan_ppc64);
+
+weak_alias (__isnan, isnan)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__isnan, __isnanl)
+weak_alias (__isnan, isnanl)
+#endif
+
+#ifndef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __isnan, __isnanl, GLIBC_2_0);
+compat_symbol (libc, isnan, isnanl, GLIBC_2_0);
+# endif
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnanf.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnanf.c
new file mode 100644
index 0000000000..3e80b69b6c
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_isnanf.c
@@ -0,0 +1,40 @@
+/* Multiple versions of isnan.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include "init-arch.h"
+
+/* The double-precision implementation also works for the single one. */
+extern __typeof (__isnanf) __isnan_ppc64 attribute_hidden;
+extern __typeof (__isnanf) __isnan_power5 attribute_hidden;
+extern __typeof (__isnanf) __isnan_power6 attribute_hidden;
+extern __typeof (__isnanf) __isnan_power6x attribute_hidden;
+extern __typeof (__isnanf) __isnan_power7 attribute_hidden;
+
+libc_ifunc (__isnanf,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __isnan_power7 :
+ (hwcap & PPC_FEATURE_POWER6_EXT)
+ ? __isnan_power6x :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __isnan_power6 :
+ (hwcap & PPC_FEATURE_POWER5)
+ ? __isnan_power5
+ : __isnan_ppc64);
+
+weak_alias (__isnanf, isnanf)
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-power6x.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-power6x.S
new file mode 100644
index 0000000000..36b1546292
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-power6x.S
@@ -0,0 +1,31 @@
+/* Round double to long int. PowerPC64/POWER6X default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __llrint __llrint_power6x
+
+#include <sysdeps/powerpc/powerpc64/power6x/fpu/s_llrint.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-ppc64.S
new file mode 100644
index 0000000000..22fbe60592
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint-ppc64.S
@@ -0,0 +1,31 @@
+/* Round double to long int. PowerPC32 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __llrint __llrint_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_llrint.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint.c
new file mode 100644
index 0000000000..dfc6ddfbdb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llrint.c
@@ -0,0 +1,57 @@
+/* Multiple versions of llrint.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Redefine lrint/__lrint so that the compiler won't complain about the type
+ mismatch with the IFUNC selector in strong_alias below. */
+#define lrint __hidden_lrint
+#define __lrint __hidden___lrint
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#undef lrint
+#undef __lrint
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__llrint) __llrint_ppc64 attribute_hidden;
+extern __typeof (__llrint) __llrint_power6x attribute_hidden;
+
+libc_ifunc (__llrint,
+ (hwcap & PPC_FEATURE_POWER6_EXT)
+ ? __llrint_power6x
+ : __llrint_ppc64);
+
+weak_alias (__llrint, llrint)
+#ifdef NO_LONG_DOUBLE
+strong_alias (__llrint, __llrintl)
+weak_alias (__llrint, llrintl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+compat_symbol (libm, __llrint, llrintl, GLIBC_2_1);
+#endif
+
+/* long has the same width as long long on PowerPC64. */
+strong_alias (__llrint, __lrint)
+weak_alias (__lrint, lrint)
+#ifdef NO_LONG_DOUBLE
+strong_alias (__lrint, __lrintl)
+weak_alias (__lrint, lrintl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+compat_symbol (libm, __lrint, lrintl, GLIBC_2_1);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power5+.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power5+.S
new file mode 100644
index 0000000000..01d86e700c
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power5+.S
@@ -0,0 +1,32 @@
+/* llround(). PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __llround __llround_power5plus
+#define __lround __lround_power5plus
+
+#include <sysdeps/powerpc/powerpc64/power5+/fpu/s_llround.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power6x.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power6x.S
new file mode 100644
index 0000000000..22fa2cd767
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-power6x.S
@@ -0,0 +1,32 @@
+/* llround(). PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(name, alias)
+#undef strong_alias
+#define strong_alias(name, alias)
+#undef compat_symbol
+#define compat_symbol(lib, name, alias, ver)
+
+#define __llround __llround_power6x
+#define __lround __lround_power6x
+
+#include <sysdeps/powerpc/powerpc64/power6x/fpu/s_llround.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-ppc64.S
new file mode 100644
index 0000000000..38f1eed3d3
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround-ppc64.S
@@ -0,0 +1,28 @@
+/* llround(). PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __llround __llround_ppc64
+#define __lround __lround_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_llround.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround.c
new file mode 100644
index 0000000000..3559ce4934
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_llround.c
@@ -0,0 +1,60 @@
+/* Multiple versions of llround.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define lround __hidden_lround
+#define __lround __hidden___lround
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__llround) __llround_ppc64 attribute_hidden;
+extern __typeof (__llround) __llround_power5plus attribute_hidden;
+extern __typeof (__llround) __llround_power6x attribute_hidden;
+
+libc_ifunc (__llround,
+ (hwcap & PPC_FEATURE_POWER6_EXT)
+ ? __llround_power6x :
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __llround_power5plus
+ : __llround_ppc64);
+
+weak_alias (__llround, llround)
+
+#ifdef NO_LONG_DOUBLE
+weak_alias (__llround, llroundl)
+strong_alias (__llround, __llroundl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+compat_symbol (libm, __llround, llroundl, GLIBC_2_1);
+compat_symbol (libm, llround, lroundl, GLIBC_2_1);
+#endif
+
+/* long has the same width as long long on PPC64. */
+#undef lround
+#undef __lround
+strong_alias (__llround, __lround)
+weak_alias (__llround, lround)
+#ifdef NO_LONG_DOUBLE
+strong_alias (__llround, __llroundl)
+weak_alias (__llround, llroundl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_1)
+compat_symbol (libm, __lround, lroundl, GLIBC_2_1);
+#endif
diff --git a/benchtests/bench-memccpy-ifunc.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-power7.c
index b61050f8b7..6a50eb43ce 100644
--- a/benchtests/bench-memccpy-ifunc.c
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-power7.c
@@ -1,4 +1,4 @@
-/* Measure IFUNC implementations of memccpy function.
+/* logb(). PowerPC64/POWER7 version.
Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,5 +16,4 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#define TEST_IFUNC 1
-#include "bench-memccpy.c"
+#include <sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logb-power7.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-ppc64.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-ppc64.c
new file mode 100644
index 0000000000..6e42fcb03b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb-ppc64.c
@@ -0,0 +1,28 @@
+/* logb(). PowerPC32/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+#undef strong_alias
+#define strong_alias(a, b)
+
+#define __logb __logb_ppc64
+
+#include <sysdeps/ieee754/dbl-64/s_logb.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb.c
new file mode 100644
index 0000000000..e14bfa2ca3
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logb.c
@@ -0,0 +1,41 @@
+/* Multiple versions of logb.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__logb) __logb_ppc64 attribute_hidden;
+extern __typeof (__logb) __logb_power7 attribute_hidden;
+
+libc_ifunc (__logb,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __logb_power7
+ : __logb_ppc64);
+
+weak_alias (__logb, logb)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__logb, __logbl)
+weak_alias (__logb, logbl)
+#endif
+
+#if LONG_DOUBLE_COMPAT (libm, GLIBC_2_0)
+compat_symbol (libm, logb, logbl, GLIBC_2_0);
+#endif
diff --git a/benchtests/bench-memchr-ifunc.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-power7.c
index dd2c39f22f..cfd2902563 100644
--- a/benchtests/bench-memchr-ifunc.c
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-power7.c
@@ -1,4 +1,4 @@
-/* Measure IFUNC implementations of memchr function.
+/* logb(). PowerPC64/POWER7 version.
Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,5 +16,4 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#define TEST_IFUNC 1
-#include "bench-memchr.c"
+#include <sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbf-power7.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-ppc64.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-ppc64.c
new file mode 100644
index 0000000000..8a699d1059
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf-ppc64.c
@@ -0,0 +1,26 @@
+/* logbf(). PowerPC64 default implementation.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a, b)
+
+#define __logbf __logbf_ppc64
+
+#include <sysdeps/ieee754/flt-32/s_logbf.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf.c
new file mode 100644
index 0000000000..a300125dc2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of logbf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__logbf) __logbf_ppc64 attribute_hidden;
+extern __typeof (__logbf) __logbf_power7 attribute_hidden;
+
+libc_ifunc (__logbf,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __logbf_power7
+ : __logbf_ppc64);
+
+weak_alias (__logbf, logbf)
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-power7.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-power7.c
new file mode 100644
index 0000000000..4fe43638aa
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-power7.c
@@ -0,0 +1,19 @@
+/* logb(). PowerPC64/POWER7 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_logbl-power7.c>
diff --git a/string/test-rawmemchr-ifunc.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-ppc64.c
index 890045237e..8bb0f18308 100644
--- a/string/test-rawmemchr-ifunc.c
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl-ppc64.c
@@ -1,4 +1,4 @@
-/* Test and measure IFUNC implementations of rawmemchr function.
+/* logbl(). PowerPC64/POWER7 version.
Copyright (C) 2012-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,5 +16,6 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#define TEST_IFUNC 1
-#include "test-rawmemchr.c"
+#define __logbl __logbl_ppc64
+
+#include <sysdeps/ieee754/ldbl-128ibm/s_logbl.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl.c
new file mode 100644
index 0000000000..21af5711f2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_logbl.c
@@ -0,0 +1,32 @@
+/* Multiple versions of logbl.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__logbl) __logbl_ppc64 attribute_hidden;
+extern __typeof (__logbl) __logbl_power7 attribute_hidden;
+
+libc_ifunc (__logbl,
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __logbl_power7
+ : __logbl_ppc64);
+
+long_double_symbol (libm, __logbl, logbl);
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_lrint.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_lrint.c
new file mode 100644
index 0000000000..d09286267b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_lrint.c
@@ -0,0 +1 @@
+ /* __lrint is in s_llrint.c */
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_lround.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_lround.c
new file mode 100644
index 0000000000..0dab5443e2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_lround.c
@@ -0,0 +1 @@
+/* __lround is in s_llround.c */
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-power5+.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-power5+.c
new file mode 100644
index 0000000000..04ec0eb686
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-power5+.c
@@ -0,0 +1,19 @@
+/* PowerPC/POWER5+ implementation for modf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modf-power5+.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-ppc64.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-ppc64.c
new file mode 100644
index 0000000000..30216872cd
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf-ppc64.c
@@ -0,0 +1,29 @@
+/* PowerPC64 default implementation for modf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+
+#define __modf __modf_ppc64
+
+#include <sysdeps/ieee754/dbl-64/s_modf.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c
new file mode 100644
index 0000000000..931d0c375a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modf.c
@@ -0,0 +1,44 @@
+/* Multiple versions of modf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__modf) __modf_ppc64 attribute_hidden;
+extern __typeof (__modf) __modf_power5plus attribute_hidden;
+
+libc_ifunc (__modf,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __modf_power5plus
+ : __modf_ppc64);
+
+weak_alias (__modf, modf)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__modf, __modfl)
+weak_alias (__modf, modfl)
+#endif
+#ifdef IS_IN_libm
+# if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __modf, modfl, GLIBC_2_0);
+# endif
+#elif LONG_DOUBLE_COMPAT(libc, GLIBC_2_0)
+compat_symbol (libc, __modf, modfl, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-power5+.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-power5+.c
new file mode 100644
index 0000000000..b3d7a0ad60
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-power5+.c
@@ -0,0 +1,19 @@
+/* PowerPC/POWER5+ implementation for modff.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/fpu/multiarch/s_modff-power5+.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-ppc64.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-ppc64.c
new file mode 100644
index 0000000000..3a98d0958f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff-ppc64.c
@@ -0,0 +1,26 @@
+/* PowerPC64 default implementation for modff.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __modff __modff_ppc64
+
+#include <sysdeps/ieee754/flt-32/s_modff.c>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff.c
new file mode 100644
index 0000000000..0629339b39
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_modff.c
@@ -0,0 +1,30 @@
+/* Multiple versions of modff.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include "init-arch.h"
+
+extern __typeof (__modff) __modff_ppc64 attribute_hidden;
+extern __typeof (__modff) __modff_power5plus attribute_hidden;
+
+libc_ifunc (__modff,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __modff_power5plus
+ : __modff_ppc64);
+
+weak_alias (__modff, modff)
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-power5+.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-power5+.S
new file mode 100644
index 0000000000..e30568db49
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-power5+.S
@@ -0,0 +1,31 @@
+/* round function. PowerPC64/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __round __round_power5plus
+
+#include <sysdeps/powerpc/powerpc64/power5+/fpu/s_round.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-ppc64.S
new file mode 100644
index 0000000000..ed208ddec6
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round-ppc64.S
@@ -0,0 +1,31 @@
+/* round function. PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __round __round_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_round.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c
new file mode 100644
index 0000000000..cfeac1f661
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_round.c
@@ -0,0 +1,40 @@
+/* Multiple versions of round.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__round) __round_ppc64 attribute_hidden;
+extern __typeof (__round) __round_power5plus attribute_hidden;
+
+libc_ifunc (__round,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __round_power5plus
+ : __round_ppc64);
+
+weak_alias (__round, round)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__round, __roundl)
+weak_alias (__round, roundl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __round, roundl, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-power5+.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-power5+.S
new file mode 100644
index 0000000000..8c1684ca64
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-power5+.S
@@ -0,0 +1,26 @@
+/* roundf function. PowerPC64/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __roundf __roundf_power5plus
+
+#include <sysdeps/powerpc/powerpc64/power5+/fpu/s_roundf.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-ppc64.S
new file mode 100644
index 0000000000..a9d7981232
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf-ppc64.S
@@ -0,0 +1,26 @@
+/* roundf function. PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __roundf __roundf_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_roundf.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf.c
new file mode 100644
index 0000000000..6377354365
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_roundf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of roundf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__roundf) __roundf_ppc64 attribute_hidden;
+extern __typeof (__roundf) __roundf_power5plus attribute_hidden;
+
+libc_ifunc (__roundf,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __roundf_power5plus
+ : __roundf_ppc64);
+
+weak_alias (__roundf, roundf)
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-power5+.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-power5+.S
new file mode 100644
index 0000000000..27519649f8
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-power5+.S
@@ -0,0 +1,31 @@
+/* trunc function. PowerPC64/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __trunc __trunc_power5plus
+
+#include <sysdeps/powerpc/powerpc64/power5+/fpu/s_trunc.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-ppc64.S
new file mode 100644
index 0000000000..5282609a8f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc-ppc64.S
@@ -0,0 +1,31 @@
+/* trunc function. PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+#include <math_ldbl_opt.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+#undef strong_alias
+#define strong_alias(a,b)
+#undef compat_symbol
+#define compat_symbol(a,b,c,d)
+
+#define __trunc __trunc_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_trunc.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c
new file mode 100644
index 0000000000..a42687ce43
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_trunc.c
@@ -0,0 +1,40 @@
+/* Multiple versions of trunc.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__trunc) __trunc_ppc64 attribute_hidden;
+extern __typeof (__trunc) __trunc_power5plus attribute_hidden;
+
+libc_ifunc (__trunc,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __trunc_power5plus
+ : __trunc_ppc64);
+
+weak_alias (__trunc, trunc)
+
+#ifdef NO_LONG_DOUBLE
+strong_alias (__trunc, __truncl)
+weak_alias (__trunc, truncl)
+#endif
+#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
+compat_symbol (libm, __trunc, truncl, GLIBC_2_0);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-power5+.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-power5+.S
new file mode 100644
index 0000000000..bb1008fa10
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-power5+.S
@@ -0,0 +1,26 @@
+/* truncf function. PowerPC64/power5+ version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __truncf __truncf_power5plus
+
+#include <sysdeps/powerpc/powerpc64/power5+/fpu/s_truncf.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-ppc64.S b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-ppc64.S
new file mode 100644
index 0000000000..6358c61860
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf-ppc64.S
@@ -0,0 +1,26 @@
+/* truncf function. PowerPC64 default version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef weak_alias
+#define weak_alias(a,b)
+
+#define __truncf __truncf_ppc64
+
+#include <sysdeps/powerpc/powerpc64/fpu/s_truncf.S>
diff --git a/sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf.c b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf.c
new file mode 100644
index 0000000000..4602583606
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/fpu/multiarch/s_truncf.c
@@ -0,0 +1,32 @@
+/* Multiple versions of truncf.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+#include <math_ldbl_opt.h>
+#include <shlib-compat.h>
+#include "init-arch.h"
+
+extern __typeof (__truncf) __truncf_ppc64 attribute_hidden;
+extern __typeof (__truncf) __truncf_power5plus attribute_hidden;
+
+libc_ifunc (__truncf,
+ (hwcap & PPC_FEATURE_POWER5_PLUS)
+ ? __truncf_power5plus
+ : __truncf_ppc64);
+
+weak_alias (__truncf, truncf)
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S b/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S
index 801af5d0aa..45f71d7ac5 100644
--- a/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S
+++ b/sysdeps/powerpc/powerpc64/fpu/s_ceilf.S
@@ -19,8 +19,10 @@
#include <sysdep.h>
.section ".toc","aw"
+ .p2align 3
.LC0: /* 2**23 */
- .tc FD_4b000000_0[TC],0x4b00000000000000
+ .long 0x4b000000
+ .long 0x0
.section ".text"
EALIGN (__ceilf, 4, 0)
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_floorf.S b/sysdeps/powerpc/powerpc64/fpu/s_floorf.S
index a0a22e7eb9..e85b820b21 100644
--- a/sysdeps/powerpc/powerpc64/fpu/s_floorf.S
+++ b/sysdeps/powerpc/powerpc64/fpu/s_floorf.S
@@ -19,8 +19,10 @@
#include <sysdep.h>
.section ".toc","aw"
+ .p2align 3
.LC0: /* 2**23 */
- .tc FD_4b000000_0[TC],0x4b00000000000000
+ .long 0x4b000000
+ .long 0x0
.section ".text"
EALIGN (__floorf, 4, 0)
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S b/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S
index 876707c766..b1a2b8cd65 100644
--- a/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S
+++ b/sysdeps/powerpc/powerpc64/fpu/s_nearbyintf.S
@@ -26,8 +26,10 @@
/* float [fp1] nearbyintf(float [fp1]) */
.section ".toc","aw"
+ .p2align 3
.LC0: /* 2**23 */
- .tc FD_4b000000_0[TC],0x4b00000000000000
+ .long 0x4b000000
+ .long 0x0
.section ".text"
EALIGN (__nearbyintf, 4, 0)
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_rintf.S b/sysdeps/powerpc/powerpc64/fpu/s_rintf.S
index cb28ec748d..1887717420 100644
--- a/sysdeps/powerpc/powerpc64/fpu/s_rintf.S
+++ b/sysdeps/powerpc/powerpc64/fpu/s_rintf.S
@@ -19,8 +19,10 @@
#include <sysdep.h>
.section ".toc","aw"
+ .p2align 3
.LC0: /* 2**23 */
- .tc FD_4b000000_0[TC],0x4b00000000000000
+ .long 0x4b000000
+ .long 0x0
.section ".text"
EALIGN (__rintf, 4, 0)
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_roundf.S b/sysdeps/powerpc/powerpc64/fpu/s_roundf.S
index 980a77bde0..4f2c851631 100644
--- a/sysdeps/powerpc/powerpc64/fpu/s_roundf.S
+++ b/sysdeps/powerpc/powerpc64/fpu/s_roundf.S
@@ -19,10 +19,12 @@
#include <sysdep.h>
.section ".toc","aw"
+ .p2align 3
.LC0: /* 2**23 */
- .tc FD_4b000000_0[TC],0x4b00000000000000
+ .long 0x4b000000
.LC1: /* 0.5 */
- .tc FD_3f000000_0[TC],0x3f00000000000000
+ .long 0x3f000000
+
.section ".text"
/* float [fp1] roundf (float x [fp1])
diff --git a/sysdeps/powerpc/powerpc64/fpu/s_truncf.S b/sysdeps/powerpc/powerpc64/fpu/s_truncf.S
index 5ea5f3d04a..b8fd050319 100644
--- a/sysdeps/powerpc/powerpc64/fpu/s_truncf.S
+++ b/sysdeps/powerpc/powerpc64/fpu/s_truncf.S
@@ -19,8 +19,10 @@
#include <sysdep.h>
.section ".toc","aw"
+ .p2align 3
.LC0: /* 2**23 */
- .tc FD_4b000000_0[TC],0x4b00000000000000
+ .long 0x4b000000
+ .long 0x0
.section ".text"
/* float [fp1] truncf (float x [fp1])
diff --git a/sysdeps/powerpc/powerpc64/lshift.S b/sysdeps/powerpc/powerpc64/lshift.S
new file mode 100644
index 0000000000..a997451c45
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/lshift.S
@@ -0,0 +1,177 @@
+/* PowerPC64 mpn_lshift -- rp[] = up[] << cnt
+ Copyright (C) 2003-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#define RP r3
+#define UP r4
+#define N r5
+#define CNT r6
+
+#define TNC r0
+#define U0 r30
+#define U1 r31
+#define RETVAL r5
+
+EALIGN(__mpn_lshift, 5, 0)
+ std U1, -8(r1)
+ std U0, -16(r1)
+ subfic TNC, CNT, 64
+ sldi r7, N, RP
+ add UP, UP, r7
+ add RP, RP, r7
+ rldicl. U0, N, 0, 62
+ cmpdi CNT, U0, 2
+ addi U1, N, RP
+ ld r10, -8(UP)
+ srd RETVAL, r10, TNC
+
+ srdi U1, U1, 2
+ mtctr U1
+ beq cr0, L(b00)
+ blt cr6, L(b01)
+ ld r11, -16(UP)
+ beq cr6, L(b10)
+
+ .align 4
+L(b11): sld r8, r10, CNT
+ srd r9, r11, TNC
+ ld U1, -24(UP)
+ addi UP, UP, -24
+ sld r12, r11, CNT
+ srd r7, U1, TNC
+ addi RP, RP, 16
+ bdnz L(gt3)
+
+ or r11, r8, r9
+ sld r8, U1, CNT
+ b L(cj3)
+
+ .align 4
+L(gt3): ld U0, -8(UP)
+ or r11, r8, r9
+ sld r8, U1, CNT
+ srd r9, U0, TNC
+ ld U1, -16(UP)
+ or r10, r12, r7
+ b L(L11)
+
+ .align 5
+L(b10): sld r12, r10, CNT
+ addi RP, RP, 24
+ srd r7, r11, TNC
+ bdnz L(gt2)
+
+ sld r8, r11, CNT
+ or r10, r12, r7
+ b L(cj2)
+
+L(gt2): ld U0, -24(UP)
+ sld r8, r11, CNT
+ srd r9, U0, TNC
+ ld U1, -32(UP)
+ or r10, r12, r7
+ sld r12, U0, CNT
+ srd r7, U1, 0
+ ld U0, -40(UP)
+ or r11, r8, r9
+ addi UP, UP, -16
+ b L(L10)
+
+ .align 4
+L(b00): ld U1, -16(UP)
+ sld r12, r10, CNT
+ srd r7, U1, TNC
+ ld U0, -24(UP)
+ sld r8, U1, CNT
+ srd r9, U0, TNC
+ ld U1, -32(UP)
+ or r10, r12, r7
+ sld r12, U0, CNT
+ srd r7, U1, TNC
+ addi RP, RP, r8
+ bdz L(cj4)
+
+L(gt4): addi UP, UP, -32
+ ld U0, -8(UP)
+ or r11, r8, r9
+ b L(L00)
+
+ .align 4
+L(b01): bdnz L(gt1)
+ sld r8, r10, CNT
+ std r8, -8(RP)
+ b L(ret)
+
+L(gt1): ld U0, -16(UP)
+ sld r8, r10, CNT
+ srd r9, U0, TNC
+ ld U1, -24(UP)
+ sld r12, U0, CNT
+ srd r7, U1, TNC
+ ld U0, -32(UP)
+ or r11, r8, r9
+ sld r8, U1, CNT
+ srd r9, U0, TNC
+ ld U1, -40(UP)
+ addi UP, UP, -40
+ or r10, r12, r7
+ bdz L(end)
+
+ .align 5
+L(top): sld r12, U0, CNT
+ srd r7, U1, TNC
+ ld U0, -8(UP)
+ std r11, -8(RP)
+ or r11, r8, r9
+L(L00): sld r8, U1, CNT
+ srd r9, U0, TNC
+ ld U1, -16(UP)
+ std r10, -16(RP)
+ or r10, r12, r7
+L(L11): sld r12, U0, CNT
+ srd r7, U1, TNC
+ ld U0, -24(UP)
+ std r11, -24(RP)
+ or r11, r8, r9
+L(L10): sld r8, U1, CNT
+ srd r9, U0, TNC
+ ld U1, -32(UP)
+ addi UP, UP, -32
+ std r10, -32(RP)
+ addi RP, RP, -32
+ or r10, r12, r7
+ bdnz L(top)
+
+ .align 5
+L(end): sld r12, U0, CNT
+ srd r7, U1, TNC
+ std r11, -8(RP)
+L(cj4): or r11, r8, r9
+ sld r8, U1, CNT
+ std r10, -16(RP)
+L(cj3): or r10, r12, r7
+ std r11, -24(RP)
+L(cj2): std r10, -32(RP)
+ std r8, -40(RP)
+
+L(ret): ld U1, -8(r1)
+ ld U0, -16(r1)
+ mr RP, RETVAL
+ blr
+END(__mpn_lshift)
diff --git a/sysdeps/powerpc/powerpc64/memcpy.S b/sysdeps/powerpc/powerpc64/memcpy.S
index b8c4cc8b10..5fc7401c99 100644
--- a/sysdeps/powerpc/powerpc64/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/memcpy.S
@@ -212,15 +212,28 @@ EALIGN (memcpy, 5, 0)
blt cr6,5f
srdi 7,6,16
bgt cr6,3f
+#ifdef __LITTLE_ENDIAN__
+ sth 7,0(3)
+#else
sth 6,0(3)
+#endif
b 7f
.align 4
3:
+#ifdef __LITTLE_ENDIAN__
+ rotlwi 6,6,24
+ stb 6,0(3)
+ sth 7,1(3)
+#else
stb 7,0(3)
sth 6,1(3)
+#endif
b 7f
.align 4
5:
+#ifdef __LITTLE_ENDIAN__
+ rotlwi 6,6,8
+#endif
stb 6,0(3)
7:
cmpldi cr1,10,16
@@ -328,7 +341,11 @@ EALIGN (memcpy, 5, 0)
ld 7,8(5)
subfic 9,10,64
beq 2f
+#ifdef __LITTLE_ENDIAN__
+ srd 0,6,10
+#else
sld 0,6,10
+#endif
cmpldi 11,1
mr 6,7
addi 4,4,-8
@@ -336,15 +353,25 @@ EALIGN (memcpy, 5, 0)
b 1f
2: addi 5,5,8
.align 4
+#ifdef __LITTLE_ENDIAN__
+0: srd 0,6,10
+ sld 8,7,9
+#else
0: sld 0,6,10
srd 8,7,9
+#endif
cmpldi 11,2
ld 6,8(5)
or 0,0,8
addi 11,11,-2
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srd 0,7,10
+1: sld 8,6,9
+#else
sld 0,7,10
1: srd 8,6,9
+#endif
or 0,0,8
beq 8f
ld 7,16(5)
diff --git a/sysdeps/powerpc/powerpc64/memset.S b/sysdeps/powerpc/powerpc64/memset.S
index 6acf149c8a..22c7d4e29d 100644
--- a/sysdeps/powerpc/powerpc64/memset.S
+++ b/sysdeps/powerpc/powerpc64/memset.S
@@ -55,14 +55,14 @@ L(_memset):
/* Align to doubleword boundary. */
cmpldi cr5, rLEN, 31
- rlwimi rCHR, rCHR, 8, 16, 23 /* Replicate byte to halfword. */
+ insrdi rCHR, rCHR, 8, 48 /* Replicate byte to halfword. */
beq+ L(aligned2)
mtcrf 0x01, rMEMP0
subfic rALIGN, rALIGN, 8
cror 28,30,31 /* Detect odd word aligned. */
add rMEMP, rMEMP, rALIGN
sub rLEN, rLEN, rALIGN
- rlwimi rCHR, rCHR, 16, 0, 15 /* Replicate halfword to word. */
+ insrdi rCHR, rCHR, 16, 32 /* Replicate halfword to word. */
bt 29, L(g4)
/* Process the even word of doubleword. */
bf+ 31, L(g2)
@@ -84,14 +84,14 @@ L(g0):
/* Handle the case of size < 31. */
L(aligned2):
- rlwimi rCHR, rCHR, 16, 0, 15 /* Replicate halfword to word. */
+ insrdi rCHR, rCHR, 16, 32 /* Replicate halfword to word. */
L(aligned):
mtcrf 0x01, rLEN
ble cr5, L(medium)
/* Align to 32-byte boundary. */
andi. rALIGN, rMEMP, 0x18
subfic rALIGN, rALIGN, 0x20
- insrdi rCHR,rCHR,32,0 /* Replicate word to double word. */
+ insrdi rCHR, rCHR, 32, 0 /* Replicate word to double word. */
beq L(caligned)
mtcrf 0x01, rALIGN
add rMEMP, rMEMP, rALIGN
@@ -212,7 +212,7 @@ L(le4):
/* Memset of 0-31 bytes. */
.align 5
L(medium):
- insrdi rCHR,rCHR,32,0 /* Replicate word to double word. */
+ insrdi rCHR, rCHR, 32, 0 /* Replicate word to double word. */
cmpldi cr1, rLEN, 16
L(medium_tail2):
add rMEMP, rMEMP, rLEN
@@ -247,6 +247,7 @@ L(medium_28t):
END_GEN_TB (memset,TB_TOCLESS)
libc_hidden_builtin_def (memset)
+#ifndef NO_BZERO_IMPL
/* Copied from bzero.S to prevent the linker from inserting a stub
between bzero and memset. */
ENTRY (__bzero)
@@ -257,3 +258,4 @@ ENTRY (__bzero)
END_GEN_TB (__bzero,TB_TOCLESS)
weak_alias (__bzero, bzero)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/mul_1.S b/sysdeps/powerpc/powerpc64/mul_1.S
new file mode 100644
index 0000000000..68a1646462
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/mul_1.S
@@ -0,0 +1,135 @@
+/* PowerPC64 __mpn_mul_1 -- Multiply a limb vector with a limb and store
+ the result in a second limb vector.
+ Copyright (C) 1999-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#define RP r3
+#define UP r4
+#define N r5
+#define VL r6
+
+EALIGN(__mpn_mul_1, 5, 0)
+ std r27, -40(r1)
+ std r26, -48(r1)
+ li r12, 0
+ ld r26, 0(UP)
+
+ rldicl. r0, N, 0, 62
+ cmpdi VL, r0, 2
+ addic N, N, RP
+ srdi N, N, 2
+ mtctr N
+ beq cr0, L(b00)
+ blt cr6, L(b01)
+ beq cr6, L(b10)
+
+L(b11): mr cr7, r12
+ mulld cr0, r26, VL
+ mulhdu r12, r26, VL
+ addi UP, UP, 8
+ addc r0, r0, r7
+ std r0, 0(RP)
+ addi RP, RP, 8
+ b L(fic)
+
+L(b00): ld r27, r8(UP)
+ addi UP, UP, 16
+ mulld r0, r26, VL
+ mulhdu N, r26, VL
+ mulld r7, r27, VL
+ mulhdu r8, r27, VL
+ addc r0, r0, r12
+ adde r7, r7, N
+ addze r12, r8
+ std r0, 0(RP)
+ std r7, 8(RP)
+ addi RP, RP, 16
+ b L(fic)
+
+ nop
+L(b01): bdnz L(gt1)
+ mulld r0, r26, VL
+ mulhdu r8, r26, VL
+ addc r0, r0, r12
+ std r0, 0(RP)
+ b L(ret)
+L(gt1): ld r27, 8(UP)
+ nop
+ mulld r0, r26, VL
+ mulhdu N, r26, VL
+ ld r26, 16(UP)
+ mulld r7, r27, VL
+ mulhdu r8, r27, VL
+ mulld r9, r26, VL
+ mulhdu r10, r26, VL
+ addc r0, r0, r12
+ adde r7, r7, N
+ adde r9, r9, r8
+ addze r12, r10
+ std r0, 0(RP)
+ std r7, 8(RP)
+ std r9, 16(RP)
+ addi UP, UP, 24
+ addi RP, RP, 24
+ b L(fic)
+
+ nop
+L(fic): ld r26, 0(UP)
+L(b10): ld r27, 8(UP)
+ addi UP, UP, 16
+ bdz L(end)
+
+L(top): mulld r0, r26, VL
+ mulhdu N, r26, VL
+ mulld r7, r27, VL
+ mulhdu r8, r27, VL
+ ld r26, 0(UP)
+ ld r27, 8(UP)
+ adde r0, r0, r12
+ adde r7, r7, N
+ mulld r9, r26, VL
+ mulhdu r10, r26, VL
+ mulld r11, r27, VL
+ mulhdu r12, r27, VL
+ ld r26, 16(UP)
+ ld r27, 24(UP)
+ std r0, 0(RP)
+ adde r9, r9, r8
+ std r7, 8(RP)
+ adde r11, r11, r10
+ std r9, 16(RP)
+ addi UP, UP, 32
+ std r11, 24(RP)
+
+ addi RP, RP, 32
+ bdnz L(top)
+
+L(end): mulld r0, r26, VL
+ mulhdu N, r26, VL
+ mulld r7, r27, VL
+ mulhdu r8, r27, VL
+ adde r0, r0, r12
+ adde r7, r7, N
+ std r0, 0(RP)
+ std r7, 8(RP)
+L(ret): addze RP, r8
+ ld r27, -40(r1)
+ ld r26, -48(r1)
+ blr
+END(__mpn_mul_1)
diff --git a/sysdeps/powerpc/powerpc64/multiarch/Makefile b/sysdeps/powerpc/powerpc64/multiarch/Makefile
new file mode 100644
index 0000000000..3c47316bda
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/Makefile
@@ -0,0 +1,28 @@
+ifeq ($(subdir),string)
+sysdep_routines += memcpy-power7 memcpy-a2 memcpy-power6 memcpy-cell \
+ memcpy-power4 memcpy-ppc64 memcmp-power7 memcmp-power4 \
+ memcmp-ppc64 memset-power7 memset-power6 memset-power4 \
+ memset-ppc64 bzero-power4 bzero-power6 bzero-power7 \
+ mempcpy-power7 mempcpy-ppc64 memchr-power7 memchr-ppc64 \
+ memrchr-power7 memrchr-ppc64 rawmemchr-power7 \
+ rawmemchr-ppc64 strlen-power7 strlen-ppc64 strnlen-power7 \
+ strnlen-ppc64 strcasecmp-power7 strcasecmp_l-power7 \
+ strncase-power7 strncase_l-power7 strncmp-power7 \
+ strncmp-power4 strncmp-ppc64 strchr-power7 strchr-ppc64 \
+ strchrnul-power7 strchrnul-ppc64 wcschr-power7 \
+ wcschr-power6 wcschr-ppc64 wcsrchr-power7 wcsrchr-power6 \
+ wcsrchr-ppc64 wcscpy-power7 wcscpy-power6 wcscpy-ppc64 \
+ wordcopy-power7 wordcopy-power6 wordcopy-ppc64 \
+ strcpy-power7 strcpy-ppc64 stpcpy-power7 stpcpy-ppc64
+
+CFLAGS-strncase-power7.c += -mcpu=power7 -funroll-loops
+CFLAGS-strncase_l-power7.c += -mcpu=power7 -funroll-loops
+CFLAGS-wcschr-power7.c += -mcpu=power7
+CFLAGS-wcschr-power6.c += -mcpu=power6
+CFLAGS-wcsrchr-power7.c += -mcpu=power7
+CFLAGS-wcsrchr-power6.c += -mcpu=power6
+CFLAGS-wcscpy-power7.c += -mcpu=power7
+CFLAGS-wcscpy-power6.c += -mcpu=power6
+CFLAGS-wordcopy-power7.c += -mcpu=power7
+CFLAGS-wordcopy-power6.c += -mcpu=power6
+endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/bzero-power4.S b/sysdeps/powerpc/powerpc64/multiarch/bzero-power4.S
new file mode 100644
index 0000000000..cf58fc5d7b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/bzero-power4.S
@@ -0,0 +1,26 @@
+/* Optimized bzero implementation for PowerPC64/POWER4.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+ENTRY (__bzero_power4)
+ CALL_MCOUNT 3
+ mr r5,r4
+ li r4,0
+ b __memset_power4
+END_GEN_TB (__bzero_power4,TB_TOCLESS)
diff --git a/sysdeps/powerpc/powerpc64/multiarch/bzero-power6.S b/sysdeps/powerpc/powerpc64/multiarch/bzero-power6.S
new file mode 100644
index 0000000000..ee3b919c7e
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/bzero-power6.S
@@ -0,0 +1,26 @@
+/* Optimized bzero implementation for PowerPC64/POWER6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+ENTRY (__bzero_power6)
+ CALL_MCOUNT 3
+ mr r5,r4
+ li r4,0
+ b __memset_power6
+END_GEN_TB (__bzero_power6,TB_TOCLESS)
diff --git a/sysdeps/powerpc/powerpc64/multiarch/bzero-power7.S b/sysdeps/powerpc/powerpc64/multiarch/bzero-power7.S
new file mode 100644
index 0000000000..7abc6db849
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/bzero-power7.S
@@ -0,0 +1,26 @@
+/* Optimized bzero implementation for PowerPC64/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+ENTRY (__bzero_power7)
+ CALL_MCOUNT 3
+ mr r5,r4
+ li r4,0
+ b __memset_power7
+END_GEN_TB (__bzero_power7,TB_TOCLESS)
diff --git a/sysdeps/powerpc/powerpc64/multiarch/bzero.c b/sysdeps/powerpc/powerpc64/multiarch/bzero.c
new file mode 100644
index 0000000000..d7b3aaa877
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/bzero.c
@@ -0,0 +1,40 @@
+/* Multiple versions of bzero. PowerPC64 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for definition in libc. */
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <strings.h>
+# include "init-arch.h"
+
+extern __typeof (bzero) __bzero_ppc attribute_hidden;
+extern __typeof (bzero) __bzero_power4 attribute_hidden;
+extern __typeof (bzero) __bzero_power6 attribute_hidden;
+extern __typeof (bzero) __bzero_power7 attribute_hidden;
+
+libc_ifunc (__bzero,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __bzero_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __bzero_power6 :
+ (hwcap & PPC_FEATURE_POWER4)
+ ? __bzero_power4
+ : __bzero_ppc);
+
+weak_alias (__bzero, bzero)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c b/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
new file mode 100644
index 0000000000..33fc29e7f0
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/ifunc-impl-list.c
@@ -0,0 +1,242 @@
+/* Enumerate available IFUNC implementations of a function. PowerPC64 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <assert.h>
+#include <string.h>
+#include <wchar.h>
+#include <ldsodefs.h>
+#include <ifunc-impl-list.h>
+
+/* Maximum number of IFUNC implementations. */
+#define MAX_IFUNC 6
+
+size_t
+__libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
+ size_t max)
+{
+ assert (max >= MAX_IFUNC);
+
+ size_t i = 0;
+
+ unsigned long int hwcap = GLRO(dl_hwcap);
+ /* hwcap contains only the latest supported ISA, the code checks which is
+ and fills the previous supported ones. */
+ if (hwcap & PPC_FEATURE_ARCH_2_06)
+ hwcap |= PPC_FEATURE_ARCH_2_05 | PPC_FEATURE_POWER5_PLUS |
+ PPC_FEATURE_POWER5 | PPC_FEATURE_POWER4;
+ else if (hwcap & PPC_FEATURE_ARCH_2_05)
+ hwcap |= PPC_FEATURE_POWER5_PLUS | PPC_FEATURE_POWER5 | PPC_FEATURE_POWER4;
+ else if (hwcap & PPC_FEATURE_POWER5_PLUS)
+ hwcap |= PPC_FEATURE_POWER5 | PPC_FEATURE_POWER4;
+ else if (hwcap & PPC_FEATURE_POWER5)
+ hwcap |= PPC_FEATURE_POWER4;
+
+#ifdef SHARED
+ /* Support sysdeps/powerpc/powerpc64/multiarch/memcpy.c. */
+ IFUNC_IMPL (i, name, memcpy,
+ IFUNC_IMPL_ADD (array, i, memcpy, hwcap & PPC_FEATURE_HAS_VSX,
+ __memcpy_power7)
+ IFUNC_IMPL_ADD (array, i, memcpy, hwcap & PPC_FEATURE_ARCH_2_06,
+ __memcpy_a2)
+ IFUNC_IMPL_ADD (array, i, memcpy, hwcap & PPC_FEATURE_ARCH_2_05,
+ __memcpy_power6)
+ IFUNC_IMPL_ADD (array, i, memcpy, hwcap & PPC_FEATURE_CELL_BE,
+ __memcpy_cell)
+ IFUNC_IMPL_ADD (array, i, memcpy, hwcap & PPC_FEATURE_POWER4,
+ __memcpy_power4)
+ IFUNC_IMPL_ADD (array, i, memcpy, 1, __memcpy_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/memset.c. */
+ IFUNC_IMPL (i, name, memset,
+ IFUNC_IMPL_ADD (array, i, memset, hwcap & PPC_FEATURE_HAS_VSX,
+ __memset_power7)
+ IFUNC_IMPL_ADD (array, i, memset, hwcap & PPC_FEATURE_ARCH_2_05,
+ __memset_power6)
+ IFUNC_IMPL_ADD (array, i, memset, hwcap & PPC_FEATURE_POWER4,
+ __memset_power4)
+ IFUNC_IMPL_ADD (array, i, memset, 1, __memset_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/strcpy.c. */
+ IFUNC_IMPL (i, name, strcpy,
+ IFUNC_IMPL_ADD (array, i, strcpy, hwcap & PPC_FEATURE_HAS_VSX,
+ __strcpy_power7)
+ IFUNC_IMPL_ADD (array, i, strcpy, 1,
+ __strcpy_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/stpcpy.c. */
+ IFUNC_IMPL (i, name, stpcpy,
+ IFUNC_IMPL_ADD (array, i, stpcpy, hwcap & PPC_FEATURE_HAS_VSX,
+ __stpcpy_power7)
+ IFUNC_IMPL_ADD (array, i, stpcpy, 1,
+ __stpcpy_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/strlen.c. */
+ IFUNC_IMPL (i, name, strlen,
+ IFUNC_IMPL_ADD (array, i, strlen, hwcap & PPC_FEATURE_HAS_VSX,
+ __strlen_power7)
+ IFUNC_IMPL_ADD (array, i, strlen, 1,
+ __strlen_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/strncmp.c. */
+ IFUNC_IMPL (i, name, strncmp,
+ IFUNC_IMPL_ADD (array, i, strncmp, hwcap & PPC_FEATURE_HAS_VSX,
+ __strncmp_power7)
+ IFUNC_IMPL_ADD (array, i, strncmp, hwcap & PPC_FEATURE_POWER4,
+ __strncmp_power4)
+ IFUNC_IMPL_ADD (array, i, strncmp, 1,
+ __strncmp_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/strchr.c. */
+ IFUNC_IMPL (i, name, strchr,
+ IFUNC_IMPL_ADD (array, i, strchr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strchr_power7)
+ IFUNC_IMPL_ADD (array, i, strchr, 1,
+ __strchr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/strchrnul.c. */
+ IFUNC_IMPL (i, name, strchrnul,
+ IFUNC_IMPL_ADD (array, i, strchrnul,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strchrnul_power7)
+ IFUNC_IMPL_ADD (array, i, strchrnul, 1,
+ __strchrnul_ppc))
+#endif
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/memcmp.c. */
+ IFUNC_IMPL (i, name, memcmp,
+ IFUNC_IMPL_ADD (array, i, memcmp, hwcap & PPC_FEATURE_HAS_VSX,
+ __memcmp_power7)
+ IFUNC_IMPL_ADD (array, i, memcmp, hwcap & PPC_FEATURE_POWER4,
+ __memcmp_power4)
+ IFUNC_IMPL_ADD (array, i, memcmp, 1, __memcmp_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/bzero.c. */
+ IFUNC_IMPL (i, name, bzero,
+ IFUNC_IMPL_ADD (array, i, bzero, hwcap & PPC_FEATURE_HAS_VSX,
+ __bzero_power7)
+ IFUNC_IMPL_ADD (array, i, bzero, hwcap & PPC_FEATURE_ARCH_2_05,
+ __bzero_power6)
+ IFUNC_IMPL_ADD (array, i, bzero, hwcap & PPC_FEATURE_POWER4,
+ __bzero_power4)
+ IFUNC_IMPL_ADD (array, i, bzero, 1, __bzero_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/mempcpy.c. */
+ IFUNC_IMPL (i, name, mempcpy,
+ IFUNC_IMPL_ADD (array, i, mempcpy,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __mempcpy_power7)
+ IFUNC_IMPL_ADD (array, i, mempcpy, 1,
+ __mempcpy_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/memchr.c. */
+ IFUNC_IMPL (i, name, memchr,
+ IFUNC_IMPL_ADD (array, i, memchr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __memchr_power7)
+ IFUNC_IMPL_ADD (array, i, memchr, 1,
+ __memchr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/memrchr.c. */
+ IFUNC_IMPL (i, name, memrchr,
+ IFUNC_IMPL_ADD (array, i, memrchr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __memrchr_power7)
+ IFUNC_IMPL_ADD (array, i, memrchr, 1,
+ __memrchr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/rawmemchr.c. */
+ IFUNC_IMPL (i, name, rawmemchr,
+ IFUNC_IMPL_ADD (array, i, rawmemchr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __rawmemchr_power7)
+ IFUNC_IMPL_ADD (array, i, rawmemchr, 1,
+ __rawmemchr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/strnlen.c. */
+ IFUNC_IMPL (i, name, strnlen,
+ IFUNC_IMPL_ADD (array, i, strnlen, hwcap & PPC_FEATURE_HAS_VSX,
+ __strnlen_power7)
+ IFUNC_IMPL_ADD (array, i, strnlen, 1,
+ __strnlen_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/strcasecmp.c. */
+ IFUNC_IMPL (i, name, strcasecmp,
+ IFUNC_IMPL_ADD (array, i, strcasecmp,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strcasecmp_power7)
+ IFUNC_IMPL_ADD (array, i, strcasecmp, 1, __strcasecmp_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l.c. */
+ IFUNC_IMPL (i, name, strcasecmp_l,
+ IFUNC_IMPL_ADD (array, i, strcasecmp_l,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strcasecmp_l_power7)
+ IFUNC_IMPL_ADD (array, i, strcasecmp_l, 1,
+ __strcasecmp_l_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/strncase.c. */
+ IFUNC_IMPL (i, name, strncasecmp,
+ IFUNC_IMPL_ADD (array, i, strncasecmp,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strncasecmp_power7)
+ IFUNC_IMPL_ADD (array, i, strncasecmp, 1, __strncasecmp_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/strncase_l.c. */
+ IFUNC_IMPL (i, name, strncasecmp_l,
+ IFUNC_IMPL_ADD (array, i, strncasecmp_l,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __strncasecmp_l_power7)
+ IFUNC_IMPL_ADD (array, i, strncasecmp_l, 1,
+ __strncasecmp_l_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/wcschr.c. */
+ IFUNC_IMPL (i, name, wcschr,
+ IFUNC_IMPL_ADD (array, i, wcschr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __wcschr_power7)
+ IFUNC_IMPL_ADD (array, i, wcschr,
+ hwcap & PPC_FEATURE_ARCH_2_05,
+ __wcschr_power6)
+ IFUNC_IMPL_ADD (array, i, wcschr, 1,
+ __wcschr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/wcschr.c. */
+ IFUNC_IMPL (i, name, wcsrchr,
+ IFUNC_IMPL_ADD (array, i, wcsrchr,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __wcsrchr_power7)
+ IFUNC_IMPL_ADD (array, i, wcsrchr,
+ hwcap & PPC_FEATURE_ARCH_2_05,
+ __wcsrchr_power6)
+ IFUNC_IMPL_ADD (array, i, wcsrchr, 1,
+ __wcsrchr_ppc))
+
+ /* Support sysdeps/powerpc/powerpc64/multiarch/wcscpy.c. */
+ IFUNC_IMPL (i, name, wcscpy,
+ IFUNC_IMPL_ADD (array, i, wcscpy,
+ hwcap & PPC_FEATURE_HAS_VSX,
+ __wcscpy_power7)
+ IFUNC_IMPL_ADD (array, i, wcscpy,
+ hwcap & PPC_FEATURE_ARCH_2_05,
+ __wcscpy_power6)
+ IFUNC_IMPL_ADD (array, i, wcscpy, 1,
+ __wcscpy_ppc))
+
+ return i;
+}
diff --git a/benchtests/bench-memcmp-ifunc.c b/sysdeps/powerpc/powerpc64/multiarch/init-arch.h
index 44671641fa..b7d238cc08 100644
--- a/benchtests/bench-memcmp-ifunc.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/init-arch.h
@@ -1,6 +1,5 @@
-/* Measure IFUNC implementations of memcmp function.
+/* This file is part of the GNU C Library.
Copyright (C) 2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
@@ -16,5 +15,4 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#define TEST_IFUNC 1
-#include "bench-memcmp.c"
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/init-arch.h>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memchr-power7.S b/sysdeps/powerpc/powerpc64/multiarch/memchr-power7.S
new file mode 100644
index 0000000000..094e2cfdab
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memchr-power7.S
@@ -0,0 +1,41 @@
+/* Optimized memchr implementation for PowerPC64/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__memchr_power7) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__memchr_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__memchr_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__memchr_power7) \
+ END_2(__memchr_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+#undef weak_alias
+#define weak_alias(name,alias)
+
+#include <sysdeps/powerpc/powerpc64/power7/memchr.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memchr-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/memchr-ppc64.c
new file mode 100644
index 0000000000..8ec14c6a68
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memchr-ppc64.c
@@ -0,0 +1,19 @@
+/* PowerPC64 default implementation of memchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/memchr-ppc32.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memchr.c b/sysdeps/powerpc/powerpc64/multiarch/memchr.c
new file mode 100644
index 0000000000..a4237f3967
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memchr.c
@@ -0,0 +1,38 @@
+/* Multiple versions of memchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__memchr) __memchr_ppc attribute_hidden;
+extern __typeof (__memchr) __memchr_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (__memchr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __memchr_power7
+ : __memchr_ppc);
+
+weak_alias (__memchr, memchr)
+libc_hidden_builtin_def (memchr)
+#else
+#include <string/memchr.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memcmp-power4.S b/sysdeps/powerpc/powerpc64/multiarch/memcmp-power4.S
new file mode 100644
index 0000000000..d98857d06b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcmp-power4.S
@@ -0,0 +1,42 @@
+/* Optimized memcmp implementation for PowerPC64/POWER4.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memcmp_power4) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memcmp_power4): \
+ cfi_startproc; \
+ LOCALENTRY(__memcmp_power4)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__memcmp_power4) \
+ END_2(__memcmp_power4)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+#undef weak_alias
+#define weak_alias(name,alias)
+
+#include <sysdeps/powerpc/powerpc64/power4/memcmp.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memcmp-power7.S b/sysdeps/powerpc/powerpc64/multiarch/memcmp-power7.S
new file mode 100644
index 0000000000..9e027d47dc
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcmp-power7.S
@@ -0,0 +1,42 @@
+/* Optimized memcmp implementation for PowerPC64/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memcmp_power7) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memcmp_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__memcmp_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__memcmp_power7) \
+ END_2(__memcmp_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+#undef weak_alias
+#define weak_alias(name,alias)
+
+#include <sysdeps/powerpc/powerpc64/power7/memcmp.S>
diff --git a/sysdeps/unix/bsd/init-posix.c b/sysdeps/powerpc/powerpc64/multiarch/memcmp-ppc64.c
index c4e974208d..685e530bc6 100644
--- a/sysdeps/unix/bsd/init-posix.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcmp-ppc64.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
+/* Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,18 +15,19 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <stddef.h>
-#include <time.h>
+#include <string.h>
-/* This must be initialized data or its presence will not be sufficient to
- merit linkage of this file, which is necessary for the real
- initialization function below to be called. */
-time_t _posix_start_time = -1;
+#define MEMCMP __memcmp_ppc
+#undef weak_alias
+#define weak_alias(name, aliasname) \
+ extern __typeof (__memcmp_ppc) aliasname \
+ __attribute__ ((weak, alias ("__memcmp_ppc")));
+#if !defined(NOT_IN_libc) && defined(SHARED)
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ __hidden_ver1(__memcmp_ppc, __GI_memcmp, __memcmp_ppc);
+#endif
-void
-__init_posix (void)
-{
- _posix_start_time = time ((time_t *) NULL);
-}
+extern __typeof (memcmp) __memcmp_ppc attribute_hidden;
-text_set_element(__libc_subinit, __init_posix);
+#include <string/memcmp.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memcmp.c b/sysdeps/powerpc/powerpc64/multiarch/memcmp.c
new file mode 100644
index 0000000000..b63c8e13fb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcmp.c
@@ -0,0 +1,39 @@
+/* Multiple versions of memcmp. PowerPC64 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for definition in libc. */
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (memcmp) __memcmp_ppc attribute_hidden;
+extern __typeof (memcmp) __memcmp_power4 attribute_hidden;
+extern __typeof (memcmp) __memcmp_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (memcmp,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __memcmp_power7 :
+ (hwcap & PPC_FEATURE_POWER4)
+ ? __memcmp_power4
+ : __memcmp_ppc);
+#else
+#include <string/memcmp.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memcpy-a2.S b/sysdeps/powerpc/powerpc64/multiarch/memcpy-a2.S
new file mode 100644
index 0000000000..79796739b5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcpy-a2.S
@@ -0,0 +1,40 @@
+/* Optimized memcpy implementation for PowerPC A2.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memcpy_a2) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memcpy_a2): \
+ cfi_startproc; \
+ LOCALENTRY(__memcpy_a2)
+
+#undef END_GEN_TB
+#define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__memcpy_a2,mask) \
+ END_2(__memcpy_a2)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/a2/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memcpy-cell.S b/sysdeps/powerpc/powerpc64/multiarch/memcpy-cell.S
new file mode 100644
index 0000000000..7b3c102400
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcpy-cell.S
@@ -0,0 +1,40 @@
+/* Optimized memcpy implementation for PowerPC/CELL.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memcpy_cell) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memcpy_cell): \
+ cfi_startproc; \
+ LOCALENTRY(__memcpy_cell)
+
+#undef END_GEN_TB
+#define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__memcpy_cell,mask) \
+ END_2(__memcpy_cell)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/cell/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memcpy-power4.S b/sysdeps/powerpc/powerpc64/multiarch/memcpy-power4.S
new file mode 100644
index 0000000000..295a1f204a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcpy-power4.S
@@ -0,0 +1,40 @@
+/* Optimized memcpy implementation for PowerPC64/POWER4.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memcpy_power4) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memcpy_power4): \
+ cfi_startproc; \
+ LOCALENTRY(__memcpy_power4)
+
+#undef END_GEN_TB
+#define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__memcpy_power4,mask) \
+ END_2(__memcpy_power4)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power4/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memcpy-power6.S b/sysdeps/powerpc/powerpc64/multiarch/memcpy-power6.S
new file mode 100644
index 0000000000..35fe8875c3
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcpy-power6.S
@@ -0,0 +1,40 @@
+/* Optimized memcpy implementation for PowerPC/POWER6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memcpy_power6) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memcpy_power6): \
+ cfi_startproc; \
+ LOCALENTRY(__memcpy_power6)
+
+#undef END_GEN_TB
+#define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__memcpy_power6,mask) \
+ END_2(__memcpy_power6)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power6/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memcpy-power7.S b/sysdeps/powerpc/powerpc64/multiarch/memcpy-power7.S
new file mode 100644
index 0000000000..aa725d2f26
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcpy-power7.S
@@ -0,0 +1,40 @@
+/* Optimized memcpy implementation for PowerPC/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memcpy_power7) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memcpy_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__memcpy_power7)
+
+#undef END_GEN_TB
+#define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__memcpy_power7,mask) \
+ END_2(__memcpy_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power7/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memcpy-ppc64.S b/sysdeps/powerpc/powerpc64/multiarch/memcpy-ppc64.S
new file mode 100644
index 0000000000..c8b70a0590
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcpy-ppc64.S
@@ -0,0 +1,43 @@
+/* Default memcpy implementation for PowerPC64.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#if defined SHARED && !defined NOT_IN_libc
+# undef EALIGN
+# define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memcpy_ppc) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memcpy_ppc): \
+ cfi_startproc; \
+ LOCALENTRY(__memcpy_ppc)
+
+# undef END_GEN_TB
+# define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__memcpy_ppc,mask) \
+ END_2(__memcpy_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_memcpy; __GI_memcpy = __memcpy_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc64/memcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memcpy.c b/sysdeps/powerpc/powerpc64/multiarch/memcpy.c
new file mode 100644
index 0000000000..b580ef7e5c
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memcpy.c
@@ -0,0 +1,48 @@
+/* Multiple versions of memcpy. PowerPC64 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for the definition in lib and for
+ DSO. In static binaries we need memcpy before the initialization
+ happened. */
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (memcpy) __memcpy_ppc attribute_hidden;
+extern __typeof (memcpy) __memcpy_power4 attribute_hidden;
+extern __typeof (memcpy) __memcpy_cell attribute_hidden;
+extern __typeof (memcpy) __memcpy_power6 attribute_hidden;
+extern __typeof (memcpy) __memcpy_a2 attribute_hidden;
+extern __typeof (memcpy) __memcpy_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (memcpy,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __memcpy_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_06)
+ ? __memcpy_a2 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __memcpy_power6 :
+ (hwcap & PPC_FEATURE_CELL_BE)
+ ? __memcpy_cell :
+ (hwcap & PPC_FEATURE_POWER4)
+ ? __memcpy_power4
+ : __memcpy_ppc);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/mempcpy-power7.S b/sysdeps/powerpc/powerpc64/multiarch/mempcpy-power7.S
new file mode 100644
index 0000000000..6d7f002d68
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/mempcpy-power7.S
@@ -0,0 +1,42 @@
+/* Optimized mempcpy implementation for PowerPC/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__mempcpy_power7) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__mempcpy_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__mempcpy_power7)
+
+#undef END_GEN_TB
+#define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__mempcpy_power7,mask) \
+ END_2(__mempcpy_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+#undef weak_alias
+#define weak_alias(name, alias)
+
+#include <sysdeps/powerpc/powerpc64/power7/mempcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/mempcpy-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/mempcpy-ppc64.c
new file mode 100644
index 0000000000..40f6c42432
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/mempcpy-ppc64.c
@@ -0,0 +1,19 @@
+/* PowerPC64 default implementation of mempcpy.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/mempcpy-ppc32.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/mempcpy.c b/sysdeps/powerpc/powerpc64/multiarch/mempcpy.c
new file mode 100644
index 0000000000..7100eb513a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/mempcpy.c
@@ -0,0 +1,38 @@
+/* Multiple versions of mempcpy.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__mempcpy) __mempcpy_ppc attribute_hidden;
+extern __typeof (__mempcpy) __mempcpy_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (__mempcpy,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __mempcpy_power7
+ : __mempcpy_ppc);
+
+weak_alias (__mempcpy, mempcpy)
+libc_hidden_def (mempcpy)
+#else
+# include <string/mempcpy.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memrchr-power7.S b/sysdeps/powerpc/powerpc64/multiarch/memrchr-power7.S
new file mode 100644
index 0000000000..a6f825c0f1
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memrchr-power7.S
@@ -0,0 +1,41 @@
+/* Optimized memrchr implementation for PowerPC64/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__memrchr_power7) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__memrchr_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__memrchr_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__memrchr_power7) \
+ END_2(__memrchr_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+#undef weak_alias
+#define weak_alias(name,alias)
+
+#include <sysdeps/powerpc/powerpc64/power7/memrchr.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memrchr-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/memrchr-ppc64.c
new file mode 100644
index 0000000000..8c291e6cfb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memrchr-ppc64.c
@@ -0,0 +1,19 @@
+/* PowerPC64 default implementation of memrchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/memrchr-ppc32.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memrchr.c b/sysdeps/powerpc/powerpc64/multiarch/memrchr.c
new file mode 100644
index 0000000000..cc362bac28
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memrchr.c
@@ -0,0 +1,37 @@
+/* Multiple versions of memrchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__memrchr) __memrchr_ppc attribute_hidden;
+extern __typeof (__memrchr) __memrchr_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (__memrchr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __memrchr_power7
+ : __memrchr_ppc);
+
+weak_alias (__memrchr, memrchr)
+#else
+#include <string/memrchr.c>
+#endif
diff --git a/benchtests/bench-memmove-ifunc.c b/sysdeps/powerpc/powerpc64/multiarch/memset-power4.S
index 345e594331..aac7fb1295 100644
--- a/benchtests/bench-memmove-ifunc.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/memset-power4.S
@@ -1,4 +1,4 @@
-/* Measure IFUNC implementations of memmove function.
+/* Optimized memset implementation for PowerPC64/POWER4.
Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -16,5 +16,26 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#define TEST_IFUNC 1
-#include "bench-memmove.c"
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memset_power4) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memset_power4): \
+ cfi_startproc; \
+ LOCALENTRY(__memset_power4)
+
+#undef END_GEN_TB
+#define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__memset_power4,mask) \
+ END_2(__memset_power4)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#define NO_BZERO_IMPL
+#include <sysdeps/powerpc/powerpc64/power4/memset.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memset-power6.S b/sysdeps/powerpc/powerpc64/multiarch/memset-power6.S
new file mode 100644
index 0000000000..3144c699d5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memset-power6.S
@@ -0,0 +1,41 @@
+/* Optimized memset implementation for PowerPC64/POWER6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memset_power6) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memset_power6): \
+ cfi_startproc; \
+ LOCALENTRY(__memset_power6)
+
+#undef END_GEN_TB
+#define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__memset_power6,mask) \
+ END_2(__memset_power6)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#define NO_BZERO_IMPL
+#include <sysdeps/powerpc/powerpc64/power6/memset.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memset-power7.S b/sysdeps/powerpc/powerpc64/multiarch/memset-power7.S
new file mode 100644
index 0000000000..ecfa963bd7
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memset-power7.S
@@ -0,0 +1,41 @@
+/* Optimized memset implementation for PowerPC64/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memset_power7) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memset_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__memset_power7)
+
+#undef END_GEN_TB
+#define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__memset_power7,mask) \
+ END_2(__memset_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#define NO_BZERO_IMPL
+#include <sysdeps/powerpc/powerpc64/power7/memset.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memset-ppc64.S b/sysdeps/powerpc/powerpc64/multiarch/memset-ppc64.S
new file mode 100644
index 0000000000..95b98f8834
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memset-ppc64.S
@@ -0,0 +1,56 @@
+/* Default memset/bzero implementation for PowerPC64.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#if defined SHARED && !defined NOT_IN_libc
+
+/* Copied from bzero.S to prevent the linker from inserting a stub
+ between bzero and memset. */
+ENTRY (__bzero_ppc)
+ CALL_MCOUNT 3
+ mr r5,r4
+ li r4,0
+ b L(_memset)
+END_GEN_TB (__bzero_ppc,TB_TOCLESS)
+
+# undef EALIGN
+# define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__memset_ppc) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__memset_ppc): \
+ cfi_startproc; \
+ LOCALENTRY(__memset_ppc)
+
+# undef END_GEN_TB
+# define END_GEN_TB(name, mask) \
+ cfi_endproc; \
+ TRACEBACK_MASK(__memset_ppc,mask) \
+ END_2(__memset_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_memset; __GI_memset = __memset_ppc
+
+/* Do not implement __bzero at powerpc64/memset.S. */
+# define NO_BZERO_IMPL
+#endif
+
+#include <sysdeps/powerpc/powerpc64/memset.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/memset.c b/sysdeps/powerpc/powerpc64/multiarch/memset.c
new file mode 100644
index 0000000000..226799e64d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/memset.c
@@ -0,0 +1,40 @@
+/* Multiple versions of memset.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for definition in libc. */
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (memset) __memset_ppc attribute_hidden;
+extern __typeof (memset) __memset_power4 attribute_hidden;
+extern __typeof (memset) __memset_power6 attribute_hidden;
+extern __typeof (memset) __memset_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (memset,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __memset_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __memset_power6 :
+ (hwcap & PPC_FEATURE_POWER4)
+ ? __memset_power4
+ : __memset_ppc);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/rawmemchr-power7.S b/sysdeps/powerpc/powerpc64/multiarch/rawmemchr-power7.S
new file mode 100644
index 0000000000..d3ab4f1512
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/rawmemchr-power7.S
@@ -0,0 +1,36 @@
+/* Optimized rawmemchr implementation for PowerPC64/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__rawmemchr_power7) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__rawmemchr_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__rawmemchr_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__rawmemchr_power7) \
+ END_2(__rawmemchr_power7)
+
+#include <sysdeps/powerpc/powerpc64/power7/rawmemchr.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/rawmemchr-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/rawmemchr-ppc64.c
new file mode 100644
index 0000000000..c69b213b45
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/rawmemchr-ppc64.c
@@ -0,0 +1,19 @@
+/* PowerPC64 default implementation of rawmemchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/rawmemchr-ppc32.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/rawmemchr.c b/sysdeps/powerpc/powerpc64/multiarch/rawmemchr.c
new file mode 100644
index 0000000000..c083490f3f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/rawmemchr.c
@@ -0,0 +1,37 @@
+/* Multiple versions of rawmemchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__rawmemchr) __rawmemchr_ppc attribute_hidden;
+extern __typeof (__rawmemchr) __rawmemchr_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (__rawmemchr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __rawmemchr_power7
+ : __rawmemchr_ppc);
+
+weak_alias (__rawmemchr, rawmemchr)
+#else
+#include <string/rawmemchr.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/rtld-memset.c b/sysdeps/powerpc/powerpc64/multiarch/rtld-memset.c
new file mode 100644
index 0000000000..c74a770528
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/rtld-memset.c
@@ -0,0 +1,18 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc64/rtld-memset.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/rtld-strchr.S b/sysdeps/powerpc/powerpc64/multiarch/rtld-strchr.S
new file mode 100644
index 0000000000..93f0eb49ee
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/rtld-strchr.S
@@ -0,0 +1,18 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc64/strchr.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/stpcpy-power7.S b/sysdeps/powerpc/powerpc64/multiarch/stpcpy-power7.S
new file mode 100644
index 0000000000..1b75dd18e9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/stpcpy-power7.S
@@ -0,0 +1,40 @@
+/* Optimized stpcpy implementation for POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__stpcpy_power7) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__stpcpy_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__stpcpy_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__stpcpy_power7) \
+ END_2(__stpcpy_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power7/stpcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/stpcpy-ppc64.S b/sysdeps/powerpc/powerpc64/multiarch/stpcpy-ppc64.S
new file mode 100644
index 0000000000..874d8aa8f3
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/stpcpy-ppc64.S
@@ -0,0 +1,48 @@
+/* Default stpcpy implementation for PowerPC64.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#if defined SHARED && !defined NOT_IN_libc
+# undef EALIGN
+# define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__stpcpy_ppc) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__stpcpy_ppc): \
+ cfi_startproc; \
+ LOCALENTRY(__stpcpy_ppc)
+
+# undef END
+# define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__stpcpy_ppc) \
+ END_2(__stpcpy_ppc)
+
+# undef weak_alias
+# define weak_alias(name, alias)
+# undef libc_hidden_def
+# define libc_hidden_def(name)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI___stpcpy; __GI___stpcpy = __stpcpy_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc64/stpcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/stpcpy.c b/sysdeps/powerpc/powerpc64/multiarch/stpcpy.c
new file mode 100644
index 0000000000..4df555f204
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/stpcpy.c
@@ -0,0 +1,34 @@
+/* Multiple versions of stpcpy. PowerPC64 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__stpcpy) __stpcpy_ppc attribute_hidden;
+extern __typeof (__stpcpy) __stpcpy_power7 attribute_hidden;
+
+libc_ifunc (__stpcpy,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __stpcpy_power7
+ : __stpcpy_ppc);
+
+weak_alias (__stpcpy, stpcpy)
+libc_hidden_def (stpcpy)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcasecmp-power7.S b/sysdeps/powerpc/powerpc64/multiarch/strcasecmp-power7.S
new file mode 100644
index 0000000000..20d072219b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strcasecmp-power7.S
@@ -0,0 +1,42 @@
+/* Optimized strcasecmp implementation foOWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__strcasecmp_power7) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__strcasecmp_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__strcasecmp_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strcasecmp_power7) \
+ END_2(__strcasecmp_power7)
+
+#undef weak_alias(name, alias)
+#define weak_alias(name, alias)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power7/strcasecmp.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcasecmp.c b/sysdeps/powerpc/powerpc64/multiarch/strcasecmp.c
new file mode 100644
index 0000000000..21d80d3254
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strcasecmp.c
@@ -0,0 +1,40 @@
+/* Multiple versions of strcasecmp.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# define strcasecmp __strcasecmp_ppc
+extern __typeof (__strcasecmp) __strcasecmp_ppc attribute_hidden;
+extern __typeof (__strcasecmp) __strcasecmp_power7 attribute_hidden;
+#endif
+
+#include <string/strcasecmp.c>
+#undef strcasecmp
+
+#ifndef NOT_IN_libc
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__strcasecmp) __libc_strcasecmp;
+libc_ifunc (__libc_strcasecmp,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strcasecmp_power7
+ : __strcasecmp_ppc);
+
+weak_alias (__libc_strcasecmp, strcasecmp)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l-power7.S b/sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l-power7.S
new file mode 100644
index 0000000000..3bf2ba6207
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l-power7.S
@@ -0,0 +1,44 @@
+/* Optimized strcasecmp_l implementation for POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__strcasecmp_l_power7) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__strcasecmp_l_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__strcasecmp_l_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strcasecmp_l_power7) \
+ END_2(__strcasecmp_l_power7)
+
+#undef weak_alias(name, alias)
+#define weak_alias(name, alias)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#define USE_IN_EXTENDED_LOCALE_MODEL
+
+#include <sysdeps/powerpc/powerpc64/power7/strcasecmp.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l.c b/sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l.c
new file mode 100644
index 0000000000..975dcef17c
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strcasecmp_l.c
@@ -0,0 +1,40 @@
+/* Multiple versions of strcasecmp_l.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# define strcasecmp_l __strcasecmp_l_ppc
+extern __typeof (__strcasecmp_l) __strcasecmp_l_ppc attribute_hidden;
+extern __typeof (__strcasecmp_l) __strcasecmp_l_power7 attribute_hidden;
+#endif
+
+#include <string/strcasecmp_l.c>
+#undef strcasecmp_l
+
+#ifndef NOT_IN_libc
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__strcasecmp_l) __libc_strcasecmp_l;
+libc_ifunc (__libc_strcasecmp_l,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strcasecmp_l_power7
+ : __strcasecmp_l_ppc);
+
+weak_alias (__libc_strcasecmp_l, strcasecmp_l)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strchr-power7.S b/sysdeps/powerpc/powerpc64/multiarch/strchr-power7.S
new file mode 100644
index 0000000000..b1cf338e47
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strchr-power7.S
@@ -0,0 +1,39 @@
+/* Optimized strchr implementation for POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__strchr_power7) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__strchr_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__strchr_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strchr_power7) \
+ END_2(__strchr_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power7/strchr.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strchr-ppc64.S b/sysdeps/powerpc/powerpc64/multiarch/strchr-ppc64.S
new file mode 100644
index 0000000000..814ed87d01
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strchr-ppc64.S
@@ -0,0 +1,42 @@
+/* PowerPC64 default implementation of strchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#ifdef SHARED
+# undef ENTRY
+# define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__strchr_ppc) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__strchr_ppc): \
+ cfi_startproc; \
+ LOCALENTRY(__strchr_ppc)
+
+# undef END
+# define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strchr_ppc) \
+ END_2(__strchr_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_strchr; __GI_strchr = __strchr_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc64/strchr.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strchr.c b/sysdeps/powerpc/powerpc64/multiarch/strchr.c
new file mode 100644
index 0000000000..8a7dc74833
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strchr.c
@@ -0,0 +1,35 @@
+/* Multiple versions of strchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for definition in libc. */
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (strchr) __strchr_ppc attribute_hidden;
+extern __typeof (strchr) __strchr_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (strchr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strchr_power7
+ : __strchr_ppc);
+weak_alias (strchr, index)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strchrnul-power7.S b/sysdeps/powerpc/powerpc64/multiarch/strchrnul-power7.S
new file mode 100644
index 0000000000..9454b0ca29
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strchrnul-power7.S
@@ -0,0 +1,39 @@
+/* Optimized strchrnul implementation for POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__strchrnul_power7) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__strchrnul_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__strchrnul_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strchrnul_power7) \
+ END_2(__strchrnul_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power7/strchrnul.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strchrnul-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/strchrnul-ppc64.c
new file mode 100644
index 0000000000..7172ddf04a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strchrnul-ppc64.c
@@ -0,0 +1,19 @@
+/* PowerPC64 default implementation of strchrnul.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/strchrnul-ppc32.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strchrnul.c b/sysdeps/powerpc/powerpc64/multiarch/strchrnul.c
new file mode 100644
index 0000000000..95138580d8
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strchrnul.c
@@ -0,0 +1,37 @@
+/* Multiple versions of strchrnul.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__strchrnul) __strchrnul_ppc attribute_hidden;
+extern __typeof (__strchrnul) __strchrnul_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (__strchrnul,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strchrnul_power7
+ : __strchrnul_ppc);
+
+weak_alias (__strchrnul, strchrnul)
+#else
+#include <string/strchrnul.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcpy-power7.S b/sysdeps/powerpc/powerpc64/multiarch/strcpy-power7.S
new file mode 100644
index 0000000000..127422f439
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strcpy-power7.S
@@ -0,0 +1,40 @@
+/* Optimized strcpy implementation for POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__strcpy_power7) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__strcpy_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__strcpy_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strcpy_power7) \
+ END_2(__strcpy_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power7/strcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcpy-ppc64.S b/sysdeps/powerpc/powerpc64/multiarch/strcpy-ppc64.S
new file mode 100644
index 0000000000..255fc3f1fb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strcpy-ppc64.S
@@ -0,0 +1,43 @@
+/* Default strcpy implementation for PowerPC64.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#if defined SHARED && !defined NOT_IN_libc
+# undef EALIGN
+# define EALIGN(name, alignt, words) \
+ .section ".text"; \
+ ENTRY_2(__strcpy_ppc) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__strcpy_ppc): \
+ cfi_startproc; \
+ LOCALENTRY(__strcpy_ppc)
+
+# undef END
+# define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strcpy_ppc) \
+ END_2(__strcpy_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_strcpy; __GI_strcpy = __strcpy_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc64/strcpy.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strcpy.c b/sysdeps/powerpc/powerpc64/multiarch/strcpy.c
new file mode 100644
index 0000000000..8d555c9417
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strcpy.c
@@ -0,0 +1,31 @@
+/* Multiple versions of strcpy. PowerPC64 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (strcpy) __strcpy_ppc attribute_hidden;
+extern __typeof (strcpy) __strcpy_power7 attribute_hidden;
+
+libc_ifunc (strcpy,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strcpy_power7
+ : __strcpy_ppc);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strlen-power7.S b/sysdeps/powerpc/powerpc64/multiarch/strlen-power7.S
new file mode 100644
index 0000000000..1027d7d076
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strlen-power7.S
@@ -0,0 +1,39 @@
+/* Optimized strlen implementation for POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__strlen_power7) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__strlen_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__strlen_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strlen_power7) \
+ END_2(__strlen_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power7/strlen.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strlen-ppc64.S b/sysdeps/powerpc/powerpc64/multiarch/strlen-ppc64.S
new file mode 100644
index 0000000000..a78460efbd
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strlen-ppc64.S
@@ -0,0 +1,42 @@
+/* Default strlen implementation for PowerPC64.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#if defined SHARED && !defined NOT_IN_libc
+# undef ENTRY
+# define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__strlen_ppc) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__strlen_ppc): \
+ cfi_startproc; \
+ LOCALENTRY(__strlen_ppc)
+
+# undef END
+# define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strlen_ppc) \
+ END_2(__strlen_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_strlen; __GI_strlen = __strlen_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc64/strlen.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strlen.c b/sysdeps/powerpc/powerpc64/multiarch/strlen.c
new file mode 100644
index 0000000000..21b9294707
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strlen.c
@@ -0,0 +1,31 @@
+/* Multiple versions of strlen. PowerPC64 version.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (strlen) __strlen_ppc attribute_hidden;
+extern __typeof (strlen) __strlen_power7 attribute_hidden;
+
+libc_ifunc (strlen,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strlen_power7
+ : __strlen_ppc);
+#endif
diff --git a/sysdeps/unix/bsd/setruid.c b/sysdeps/powerpc/powerpc64/multiarch/strncase-power7.c
index 38ebaac135..de6ac409e9 100644
--- a/sysdeps/unix/bsd/setruid.c
+++ b/sysdeps/powerpc/powerpc64/multiarch/strncase-power7.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993-2013 Free Software Foundation, Inc.
+/* Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -15,12 +15,10 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <unistd.h>
-#include <sys/types.h>
+#include <string.h>
-int
-setruid (uid)
- uid_t uid;
-{
- return __setreuid (uid, -1);
-}
+#define __strncasecmp __strncasecmp_power7
+
+extern __typeof (strncasecmp) __strncasecmp_power7 attribute_hidden;
+
+#include <string/strncase.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncase.c b/sysdeps/powerpc/powerpc64/multiarch/strncase.c
new file mode 100644
index 0000000000..7fea0e3cf9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strncase.c
@@ -0,0 +1,41 @@
+/* Multiple versions of strncasecmp
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# define strncasecmp __strncasecmp_ppc
+extern __typeof (__strncasecmp) __strncasecmp_ppc attribute_hidden;
+extern __typeof (__strncasecmp) __strncasecmp_power7 attribute_hidden;
+#endif
+
+#include <string/strncase.c>
+#undef strncasecmp
+
+#ifndef NOT_IN_libc
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+extern __typeof (__strncasecmp) __libc_strncasecmp;
+libc_ifunc (__libc_strncasecmp,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strncasecmp_power7
+ : __strncasecmp_ppc);
+weak_alias (__libc_strncasecmp, strncasecmp)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncase_l-power7.c b/sysdeps/powerpc/powerpc64/multiarch/strncase_l-power7.c
new file mode 100644
index 0000000000..10a49fc9ec
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strncase_l-power7.c
@@ -0,0 +1,25 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <string.h>
+
+#define __strncasecmp_l __strncasecmp_l_power7
+#define USE_IN_EXTENDED_LOCALE_MODEL 1
+
+extern __typeof (strncasecmp_l) __strncasecmp_l_power7 attribute_hidden;
+
+#include <string/strncase.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncase_l.c b/sysdeps/powerpc/powerpc64/multiarch/strncase_l.c
new file mode 100644
index 0000000000..4f3fb91909
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strncase_l.c
@@ -0,0 +1,42 @@
+/* Multiple versions of strncasecmp_l
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# define strncasecmp_l __strncasecmp_l_ppc
+extern __typeof (__strncasecmp_l) __strncasecmp_l_ppc attribute_hidden;
+extern __typeof (__strncasecmp_l) __strncasecmp_l_power7 attribute_hidden;
+#endif
+
+#include <string/strncase_l.c>
+#undef strncasecmp_l
+
+#ifndef NOT_IN_libc
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+extern __typeof (__strncasecmp_l) __libc_strncasecmp_l;
+libc_ifunc (__libc_strncasecmp_l,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strncasecmp_l_power7
+ : __strncasecmp_l_ppc);
+
+weak_alias (__libc_strncasecmp_l, strncasecmp_l)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncmp-power4.S b/sysdeps/powerpc/powerpc64/multiarch/strncmp-power4.S
new file mode 100644
index 0000000000..ec786fd6b9
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strncmp-power4.S
@@ -0,0 +1,39 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef EALIGN
+#define EALIGN(name,alignt,words) \
+ .section ".text"; \
+ ENTRY_2(__strncmp_power4) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__strncmp_power4): \
+ cfi_startproc; \
+ LOCALENTRY(__strncmp_power4)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strncmp_power4) \
+ END_2(__strncmp_power4)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power4/strncmp.S>
diff --git a/sysdeps/x86_64/multiarch/strend-sse4.S b/sysdeps/powerpc/powerpc64/multiarch/strncmp-power7.S
index c5a7ae28a6..3293728370 100644
--- a/sysdeps/x86_64/multiarch/strend-sse4.S
+++ b/sysdeps/powerpc/powerpc64/multiarch/strncmp-power7.S
@@ -1,6 +1,4 @@
-/* Return the pointer to the end of string, using SSE4.2
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
- Contributed by Intel Corporation.
+/* Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -18,31 +16,25 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
-#include "asm-syntax.h"
-
- .section .text.sse4.2,"ax",@progbits
-ENTRY (__strend_sse4)
- pxor %xmm2, %xmm2
- movq %rdi, %rcx
- andq $~15, %rdi
- movdqa %xmm2, %xmm1
- pcmpeqb (%rdi), %xmm2
- orl $0xffffffff, %esi
- subq %rdi, %rcx
- shll %cl, %esi
- pmovmskb %xmm2, %edx
- andl %esi, %edx
- jnz 1f
-
-2: pcmpistri $0x08, 16(%rdi), %xmm1
- leaq 16(%rdi), %rdi
- jnz 2b
-
- leaq (%rdi,%rcx), %rax
- ret
-
-1: bsfl %edx, %eax
- addq %rdi, %rax
- ret
-
-END (__strend_sse4)
+
+#undef EALIGN
+#define EALIGN(name,alignt,words) \
+ .section ".text"; \
+ ENTRY_2(__strncmp_power7) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__strncmp_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__strncmp_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strncmp_power7) \
+ END_2(__strncmp_power7)
+
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+
+#include <sysdeps/powerpc/powerpc64/power7/strncmp.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncmp-ppc64.S b/sysdeps/powerpc/powerpc64/multiarch/strncmp-ppc64.S
new file mode 100644
index 0000000000..fff07df4fa
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strncmp-ppc64.S
@@ -0,0 +1,42 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#if defined SHARED && !defined NOT_IN_libc
+#undef EALIGN
+#define EALIGN(name,alignt,words) \
+ .section ".text"; \
+ ENTRY_2(__strncmp_ppc) \
+ .align ALIGNARG(alignt); \
+ EALIGN_W_##words; \
+ BODY_LABEL(__strncmp_ppc): \
+ cfi_startproc; \
+ LOCALENTRY(__strncmp_ppc)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strncmp_ppc) \
+ END_2(__strncmp_ppc)
+
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ .globl __GI_strncmp; __GI_strncmp = __strncmp_ppc
+#endif
+
+#include <sysdeps/powerpc/powerpc64/strncmp.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strncmp.c b/sysdeps/powerpc/powerpc64/multiarch/strncmp.c
new file mode 100644
index 0000000000..09db0be3bb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strncmp.c
@@ -0,0 +1,37 @@
+/* Multiple versions of strncmp.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+/* Define multiple versions only for definition in libc. */
+#if defined SHARED && !defined NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (strncmp) __strncmp_ppc attribute_hidden;
+extern __typeof (strncmp) __strncmp_power4 attribute_hidden;
+extern __typeof (strncmp) __strncmp_power7 attribute_hidden;
+
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+libc_ifunc (strncmp,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strncmp_power7 :
+ (hwcap & PPC_FEATURE_POWER4)
+ ? __strncmp_power4
+ : __strncmp_ppc);
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strnlen-power7.S b/sysdeps/powerpc/powerpc64/multiarch/strnlen-power7.S
new file mode 100644
index 0000000000..69a3683a0b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strnlen-power7.S
@@ -0,0 +1,41 @@
+/* Optimized strnlen version for POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#undef ENTRY
+#define ENTRY(name) \
+ .section ".text"; \
+ ENTRY_2(__strnlen_power7) \
+ .align ALIGNARG(2); \
+ BODY_LABEL(__strnlen_power7): \
+ cfi_startproc; \
+ LOCALENTRY(__strnlen_power7)
+
+#undef END
+#define END(name) \
+ cfi_endproc; \
+ TRACEBACK(__strnlen_power7) \
+ END_2(__strnlen_power7)
+
+#undef libc_hidden_builtin_def
+#define libc_hidden_builtin_def(name)
+#undef weak_alias(name, alias)
+#define weak_alias(name, alias)
+
+#include <sysdeps/powerpc/powerpc64/power7/strnlen.S>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strnlen-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/strnlen-ppc64.c
new file mode 100644
index 0000000000..bc4d8ae3cb
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strnlen-ppc64.c
@@ -0,0 +1,18 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/strnlen-ppc32.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/strnlen.c b/sysdeps/powerpc/powerpc64/multiarch/strnlen.c
new file mode 100644
index 0000000000..00806779c2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/strnlen.c
@@ -0,0 +1,36 @@
+/* Multiple versions of strnlen.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <string.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (__strnlen) __strnlen_ppc attribute_hidden;
+extern __typeof (__strnlen) __strnlen_power7 attribute_hidden;
+
+libc_ifunc (__strnlen,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __strnlen_power7
+ : __strnlen_ppc);
+weak_alias (__strnlen, strnlen)
+libc_hidden_def (strnlen)
+
+#else
+#include <string/strnlen.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcschr-power6.c b/sysdeps/powerpc/powerpc64/multiarch/wcschr-power6.c
new file mode 100644
index 0000000000..b03004e81b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcschr-power6.c
@@ -0,0 +1,19 @@
+/* wcschr.c - Wide Character Search for powerpc64/power6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power6.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcschr-power7.c b/sysdeps/powerpc/powerpc64/multiarch/wcschr-power7.c
new file mode 100644
index 0000000000..fa0a696c7e
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcschr-power7.c
@@ -0,0 +1,19 @@
+/* wcschr.c - Wide Character Search for powerpc64/power7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-power7.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcschr-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/wcschr-ppc64.c
new file mode 100644
index 0000000000..b155dc929b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcschr-ppc64.c
@@ -0,0 +1,18 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wcschr-ppc32.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcschr.c b/sysdeps/powerpc/powerpc64/multiarch/wcschr.c
new file mode 100644
index 0000000000..51fbefea2b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcschr.c
@@ -0,0 +1,38 @@
+/* Multiple versions of wcschr
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <wchar.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (wcschr) __wcschr_ppc attribute_hidden;
+extern __typeof (wcschr) __wcschr_power6 attribute_hidden;
+extern __typeof (wcschr) __wcschr_power7 attribute_hidden;
+
+libc_ifunc (wcschr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __wcschr_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __wcschr_power6
+ : __wcschr_ppc);
+#else
+#undef libc_hidden_def
+#define libc_hidden_def(a)
+#include <wcsmbs/wcschr.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcscpy-power6.c b/sysdeps/powerpc/powerpc64/multiarch/wcscpy-power6.c
new file mode 100644
index 0000000000..10cf9c7ee2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcscpy-power6.c
@@ -0,0 +1,19 @@
+/* wcscpy.c - Wide Character Search for powerpc64/power6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power6.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcscpy-power7.c b/sysdeps/powerpc/powerpc64/multiarch/wcscpy-power7.c
new file mode 100644
index 0000000000..cac2e3550f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcscpy-power7.c
@@ -0,0 +1,19 @@
+/* wcscpy.c - Wide Character Search for powerpc64/power7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-power7.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcscpy-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/wcscpy-ppc64.c
new file mode 100644
index 0000000000..a2d0f233ee
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcscpy-ppc64.c
@@ -0,0 +1,18 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wcscpy-ppc32.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcscpy.c b/sysdeps/powerpc/powerpc64/multiarch/wcscpy.c
new file mode 100644
index 0000000000..27715b3174
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcscpy.c
@@ -0,0 +1,36 @@
+/* Multiple versions of wcscpy.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <wchar.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (wcscpy) __wcscpy_ppc attribute_hidden;
+extern __typeof (wcscpy) __wcscpy_power6 attribute_hidden;
+extern __typeof (wcscpy) __wcscpy_power7 attribute_hidden;
+
+libc_ifunc (wcscpy,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __wcscpy_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __wcscpy_power6
+ : __wcscpy_ppc);
+#else
+#include <wcsmbs/wcscpy.c>
+#endif:
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power6.c b/sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power6.c
new file mode 100644
index 0000000000..d1b29b1fb2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power6.c
@@ -0,0 +1,19 @@
+/* wcsrchr.c - Wide Character Search for powerpc64/power6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power6.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power7.c b/sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power7.c
new file mode 100644
index 0000000000..a2717bc49a
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcsrchr-power7.c
@@ -0,0 +1,19 @@
+/* wcsrchr.c - Wide Character Search for powerpc64/power7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-power7.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcsrchr-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/wcsrchr-ppc64.c
new file mode 100644
index 0000000000..3e698a56b4
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcsrchr-ppc64.c
@@ -0,0 +1,18 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wcsrchr-ppc32.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wcsrchr.c b/sysdeps/powerpc/powerpc64/multiarch/wcsrchr.c
new file mode 100644
index 0000000000..01470c9a5b
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wcsrchr.c
@@ -0,0 +1,36 @@
+/* Multiple versions of wcsrchr.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <wchar.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (wcsrchr) __wcsrchr_ppc attribute_hidden;
+extern __typeof (wcsrchr) __wcsrchr_power6 attribute_hidden;
+extern __typeof (wcsrchr) __wcsrchr_power7 attribute_hidden;
+
+libc_ifunc (wcsrchr,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? __wcsrchr_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? __wcsrchr_power6
+ : __wcsrchr_ppc);
+#else
+#include <wcsmbs/wcsrchr.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wordcopy-power6.c b/sysdeps/powerpc/powerpc64/multiarch/wordcopy-power6.c
new file mode 100644
index 0000000000..671d6d9564
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wordcopy-power6.c
@@ -0,0 +1,19 @@
+/* wordcopy routines for powerpc64/power6.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power6.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wordcopy-power7.c b/sysdeps/powerpc/powerpc64/multiarch/wordcopy-power7.c
new file mode 100644
index 0000000000..fb690503c7
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wordcopy-power7.c
@@ -0,0 +1,19 @@
+/* wordcopy routines for powerpc64/power7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; see the file COPYING.LIB. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-power7.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c b/sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c
new file mode 100644
index 0000000000..c5830a63f1
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wordcopy-ppc64.c
@@ -0,0 +1,18 @@
+/* Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdeps/powerpc/powerpc32/power4/multiarch/wordcopy-ppc32.c>
diff --git a/sysdeps/powerpc/powerpc64/multiarch/wordcopy.c b/sysdeps/powerpc/powerpc64/multiarch/wordcopy.c
new file mode 100644
index 0000000000..78233dce66
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/multiarch/wordcopy.c
@@ -0,0 +1,86 @@
+/* Multiple versions of wordcopy functions.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef NOT_IN_libc
+# include <stddef.h>
+# include <memcopy.h>
+# include <shlib-compat.h>
+# include "init-arch.h"
+
+extern __typeof (_wordcopy_fwd_aligned) _wordcopy_fwd_aligned_ppc
+attribute_hidden;
+extern __typeof (_wordcopy_fwd_aligned) _wordcopy_fwd_aligned_power6
+attribute_hidden;
+extern __typeof (_wordcopy_fwd_aligned) _wordcopy_fwd_aligned_power7
+attribute_hidden;
+
+libc_ifunc (_wordcopy_fwd_aligned,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? _wordcopy_fwd_aligned_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? _wordcopy_fwd_aligned_power6
+ : _wordcopy_fwd_aligned_ppc);
+
+
+extern __typeof (_wordcopy_fwd_dest_aligned) _wordcopy_fwd_dest_aligned_ppc
+attribute_hidden;
+extern __typeof (_wordcopy_fwd_dest_aligned) _wordcopy_fwd_dest_aligned_power6
+attribute_hidden;
+extern __typeof (_wordcopy_fwd_dest_aligned) _wordcopy_fwd_dest_aligned_power7
+attribute_hidden;
+
+libc_ifunc (_wordcopy_fwd_dest_aligned,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? _wordcopy_fwd_dest_aligned_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? _wordcopy_fwd_dest_aligned_power6
+ : _wordcopy_fwd_dest_aligned_ppc);
+
+
+extern __typeof (_wordcopy_bwd_aligned) _wordcopy_bwd_aligned_ppc
+attribute_hidden;
+extern __typeof (_wordcopy_bwd_aligned) _wordcopy_bwd_aligned_power6
+attribute_hidden;
+extern __typeof (_wordcopy_bwd_aligned) _wordcopy_bwd_aligned_power7
+attribute_hidden;
+
+libc_ifunc (_wordcopy_bwd_aligned,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? _wordcopy_bwd_aligned_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? _wordcopy_bwd_aligned_power6
+ : _wordcopy_bwd_aligned_ppc);
+
+
+extern __typeof (_wordcopy_bwd_dest_aligned) _wordcopy_bwd_dest_aligned_ppc
+attribute_hidden;
+extern __typeof (_wordcopy_bwd_dest_aligned) _wordcopy_bwd_dest_aligned_power6
+attribute_hidden;
+extern __typeof (_wordcopy_bwd_dest_aligned) _wordcopy_bwd_dest_aligned_power7
+attribute_hidden;
+
+libc_ifunc (_wordcopy_bwd_dest_aligned,
+ (hwcap & PPC_FEATURE_HAS_VSX)
+ ? _wordcopy_bwd_dest_aligned_power7 :
+ (hwcap & PPC_FEATURE_ARCH_2_05)
+ ? _wordcopy_bwd_dest_aligned_power6
+ : _wordcopy_bwd_dest_aligned_ppc);
+
+#else
+#include <sysdeps/powerpc/power4/wordcopy.c>
+#endif
diff --git a/sysdeps/powerpc/powerpc64/power4/fpu/Implies b/sysdeps/powerpc/powerpc64/power4/fpu/Implies
new file mode 100644
index 0000000000..c1f617b7da
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power4/fpu/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/fpu
diff --git a/sysdeps/powerpc/powerpc64/power4/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/power4/fpu/multiarch/Implies
new file mode 100644
index 0000000000..8d6531a174
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power4/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c b/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c
deleted file mode 100644
index 78bba57a28..0000000000
--- a/sysdeps/powerpc/powerpc64/power4/fpu/w_sqrt.c
+++ /dev/null
@@ -1,55 +0,0 @@
-/* Double-precision floating point square root wrapper.
- Copyright (C) 2004-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <math_ldbl_opt.h>
-#include <math.h>
-#include <math_private.h>
-#include <fenv_libc.h>
-
-double
-__sqrt (double x) /* wrapper sqrt */
-{
- double z;
-/* Power4 (ISA V2.0) and above implement sqrt in hardware. */
- __asm __volatile (
- " fsqrt %0,%1\n"
- : "=f" (z)
- : "f" (x));
-#ifdef _IEEE_LIBM
- return z;
-#else
- if (__builtin_expect (_LIB_VERSION == _IEEE_, 0))
- return z;
-
- if (__builtin_expect (x != x, 0))
- return z;
-
- if (__builtin_expect (x < 0.0, 0))
- return __kernel_standard (x, x, 26); /* sqrt(negative) */
- else
- return z;
-#endif
-}
-
-weak_alias (__sqrt, sqrt)
-#ifdef NO_LONG_DOUBLE
- strong_alias (__sqrt, __sqrtl) weak_alias (__sqrt, sqrtl)
-#endif
-#if LONG_DOUBLE_COMPAT(libm, GLIBC_2_0)
-compat_symbol (libm, __sqrt, sqrtl, GLIBC_2_0);
-#endif
diff --git a/sysdeps/powerpc/powerpc64/power4/memcmp.S b/sysdeps/powerpc/powerpc64/power4/memcmp.S
index 69caedc9ff..80d67c9aaa 100644
--- a/sysdeps/powerpc/powerpc64/power4/memcmp.S
+++ b/sysdeps/powerpc/powerpc64/power4/memcmp.S
@@ -1,4 +1,4 @@
-/* Optimized strcmp implementation for PowerPC64.
+/* Optimized memcmp implementation for PowerPC64.
Copyright (C) 2003-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -18,13 +18,14 @@
#include <sysdep.h>
-/* int [r3] memcmp (const char *s1 [r3], const char *s2 [r4], size_t size [r5]) */
+/* int [r3] memcmp (const char *s1 [r3],
+ const char *s2 [r4],
+ size_t size [r5]) */
.machine power4
EALIGN (memcmp, 4, 0)
CALL_MCOUNT 3
-#define rTMP r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -35,107 +36,127 @@ EALIGN (memcmp, 4, 0)
#define rWORD4 r9 /* next word in s2 */
#define rWORD5 r10 /* next word in s1 */
#define rWORD6 r11 /* next word in s2 */
-#define rBITDIF r12 /* bits that differ in s1 & s2 words */
#define rWORD7 r30 /* next word in s1 */
#define rWORD8 r31 /* next word in s2 */
- xor rTMP, rSTR2, rSTR1
+ xor r0, rSTR2, rSTR1
cmpldi cr6, rN, 0
cmpldi cr1, rN, 12
- clrldi. rTMP, rTMP, 61
- clrldi rBITDIF, rSTR1, 61
- cmpldi cr5, rBITDIF, 0
+ clrldi. r0, r0, 61
+ clrldi r12, rSTR1, 61
+ cmpldi cr5, r12, 0
beq- cr6, L(zeroLength)
- dcbt 0,rSTR1
- dcbt 0,rSTR2
+ dcbt 0, rSTR1
+ dcbt 0, rSTR2
/* If less than 8 bytes or not aligned, use the unaligned
byte loop. */
blt cr1, L(bytealigned)
- std rWORD8,-8(r1)
- cfi_offset(rWORD8,-8)
- std rWORD7,-16(r1)
- cfi_offset(rWORD7,-16)
+ std rWORD8, -8(r1)
+ cfi_offset(rWORD8, -8)
+ std rWORD7, -16(r1)
+ cfi_offset(rWORD7, -16)
bne L(unaligned)
/* At this point we know both strings have the same alignment and the
- compare length is at least 8 bytes. rBITDIF contains the low order
+ compare length is at least 8 bytes. r12 contains the low order
3 bits of rSTR1 and cr5 contains the result of the logical compare
- of rBITDIF to 0. If rBITDIF == 0 then we are already double word
- aligned and can perform the DWaligned loop.
+ of r12 to 0. If r12 == 0 then we are already double word
+ aligned and can perform the DW aligned loop.
Otherwise we know the two strings have the same alignment (but not
- yet DW). So we can force the string addresses to the next lower DW
- boundary and special case this first DW word using shift left to
+ yet DW). So we force the string addresses to the next lower DW
+ boundary and special case this first DW using shift left to
eliminate bits preceding the first byte. Since we want to join the
- normal (DWaligned) compare loop, starting at the second double word,
+ normal (DW aligned) compare loop, starting at the second double word,
we need to adjust the length (rN) and special case the loop
- versioning for the first DW. This insures that the loop count is
- correct and the first DW (shifted) is in the expected resister pair. */
- .align 4
+ versioning for the first DW. This ensures that the loop count is
+ correct and the first DW (shifted) is in the expected register pair. */
+ .align 4
L(samealignment):
clrrdi rSTR1, rSTR1, 3
clrrdi rSTR2, rSTR2, 3
beq cr5, L(DWaligned)
- add rN, rN, rBITDIF
- sldi r11, rBITDIF, 3
- srdi rTMP, rN, 5 /* Divide by 32 */
- andi. rBITDIF, rN, 24 /* Get the DW remainder */
+ add rN, rN, r12
+ sldi rWORD6, r12, 3
+ srdi r0, rN, 5 /* Divide by 32 */
+ andi. r12, rN, 24 /* Get the DW remainder */
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 0(rSTR1)
ld rWORD2, 0(rSTR2)
- cmpldi cr1, rBITDIF, 16
+#endif
+ cmpldi cr1, r12, 16
cmpldi cr7, rN, 32
clrldi rN, rN, 61
beq L(dPs4)
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
bgt cr1, L(dPs3)
beq cr1, L(dPs2)
/* Remainder is 8 */
- .align 3
+ .align 3
L(dsP1):
- sld rWORD5, rWORD1, r11
- sld rWORD6, rWORD2, r11
+ sld rWORD5, rWORD1, rWORD6
+ sld rWORD6, rWORD2, rWORD6
cmpld cr5, rWORD5, rWORD6
blt cr7, L(dP1x)
/* Do something useful in this cycle since we have to branch anyway. */
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 8(rSTR1)
ld rWORD2, 8(rSTR2)
- cmpld cr0, rWORD1, rWORD2
+#endif
+ cmpld cr7, rWORD1, rWORD2
b L(dP1e)
/* Remainder is 16 */
- .align 4
+ .align 4
L(dPs2):
- sld rWORD5, rWORD1, r11
- sld rWORD6, rWORD2, r11
+ sld rWORD5, rWORD1, rWORD6
+ sld rWORD6, rWORD2, rWORD6
cmpld cr6, rWORD5, rWORD6
blt cr7, L(dP2x)
/* Do something useful in this cycle since we have to branch anyway. */
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD7, 8(rSTR1)
ld rWORD8, 8(rSTR2)
+#endif
cmpld cr5, rWORD7, rWORD8
b L(dP2e)
/* Remainder is 24 */
- .align 4
+ .align 4
L(dPs3):
- sld rWORD3, rWORD1, r11
- sld rWORD4, rWORD2, r11
+ sld rWORD3, rWORD1, rWORD6
+ sld rWORD4, rWORD2, rWORD6
cmpld cr1, rWORD3, rWORD4
b L(dP3e)
/* Count is a multiple of 32, remainder is 0 */
- .align 4
+ .align 4
L(dPs4):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
- sld rWORD1, rWORD1, r11
- sld rWORD2, rWORD2, r11
- cmpld cr0, rWORD1, rWORD2
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+ sld rWORD1, rWORD1, rWORD6
+ sld rWORD2, rWORD2, rWORD6
+ cmpld cr7, rWORD1, rWORD2
b L(dP4e)
/* At this point we know both strings are double word aligned and the
compare length is at least 8 bytes. */
- .align 4
+ .align 4
L(DWaligned):
- andi. rBITDIF, rN, 24 /* Get the DW remainder */
- srdi rTMP, rN, 5 /* Divide by 32 */
- cmpldi cr1, rBITDIF, 16
+ andi. r12, rN, 24 /* Get the DW remainder */
+ srdi r0, rN, 5 /* Divide by 32 */
+ cmpldi cr1, r12, 16
cmpldi cr7, rN, 32
clrldi rN, rN, 61
beq L(dP4)
@@ -143,174 +164,343 @@ L(DWaligned):
beq cr1, L(dP2)
/* Remainder is 8 */
- .align 4
+ .align 4
L(dP1):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
/* Normally we'd use rWORD7/rWORD8 here, but since we might exit early
(8-15 byte compare), we want to use only volatile registers. This
means we can avoid restoring non-volatile registers since we did not
change any on the early exit path. The key here is the non-early
exit path only cares about the condition code (cr5), not about which
register pair was used. */
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD5, 0(rSTR1)
ld rWORD6, 0(rSTR2)
+#endif
cmpld cr5, rWORD5, rWORD6
blt cr7, L(dP1x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 8(rSTR1)
ld rWORD2, 8(rSTR2)
- cmpld cr0, rWORD1, rWORD2
+#endif
+ cmpld cr7, rWORD1, rWORD2
L(dP1e):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD3, 16(rSTR1)
ld rWORD4, 16(rSTR2)
+#endif
cmpld cr1, rWORD3, rWORD4
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD5, 24(rSTR1)
ld rWORD6, 24(rSTR2)
+#endif
cmpld cr6, rWORD5, rWORD6
- bne cr5, L(dLcr5)
- bne cr0, L(dLcr0)
+ bne cr5, L(dLcr5x)
+ bne cr7, L(dLcr7x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ldu rWORD7, 32(rSTR1)
ldu rWORD8, 32(rSTR2)
+#endif
bne cr1, L(dLcr1)
cmpld cr5, rWORD7, rWORD8
bdnz L(dLoop)
bne cr6, L(dLcr6)
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
- .align 3
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+ .align 3
L(dP1x):
sldi. r12, rN, 3
- bne cr5, L(dLcr5)
+ bne cr5, L(dLcr5x)
subfic rN, r12, 64 /* Shift count is 64 - (rN * 8). */
bne L(d00)
li rRTN, 0
blr
/* Remainder is 16 */
- .align 4
+ .align 4
L(dP2):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD5, 0(rSTR1)
ld rWORD6, 0(rSTR2)
+#endif
cmpld cr6, rWORD5, rWORD6
blt cr7, L(dP2x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD7, 8(rSTR1)
ld rWORD8, 8(rSTR2)
+#endif
cmpld cr5, rWORD7, rWORD8
L(dP2e):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 16(rSTR1)
ld rWORD2, 16(rSTR2)
- cmpld cr0, rWORD1, rWORD2
+#endif
+ cmpld cr7, rWORD1, rWORD2
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD3, 24(rSTR1)
ld rWORD4, 24(rSTR2)
+#endif
cmpld cr1, rWORD3, rWORD4
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 8
addi rSTR2, rSTR2, 8
+#endif
bne cr6, L(dLcr6)
bne cr5, L(dLcr5)
b L(dLoop2)
/* Again we are on a early exit path (16-23 byte compare), we want to
only use volatile registers and avoid restoring non-volatile
registers. */
- .align 4
+ .align 4
L(dP2x):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD3, 8(rSTR1)
ld rWORD4, 8(rSTR2)
- cmpld cr5, rWORD3, rWORD4
+#endif
+ cmpld cr1, rWORD3, rWORD4
sldi. r12, rN, 3
- bne cr6, L(dLcr6)
+ bne cr6, L(dLcr6x)
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 8
addi rSTR2, rSTR2, 8
- bne cr5, L(dLcr5)
+#endif
+ bne cr1, L(dLcr1x)
subfic rN, r12, 64 /* Shift count is 64 - (rN * 8). */
bne L(d00)
li rRTN, 0
blr
/* Remainder is 24 */
- .align 4
+ .align 4
L(dP3):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD3, 0(rSTR1)
ld rWORD4, 0(rSTR2)
+#endif
cmpld cr1, rWORD3, rWORD4
L(dP3e):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD5, 8(rSTR1)
ld rWORD6, 8(rSTR2)
+#endif
cmpld cr6, rWORD5, rWORD6
blt cr7, L(dP3x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD7, 16(rSTR1)
ld rWORD8, 16(rSTR2)
+#endif
cmpld cr5, rWORD7, rWORD8
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 24(rSTR1)
ld rWORD2, 24(rSTR2)
- cmpld cr0, rWORD1, rWORD2
+#endif
+ cmpld cr7, rWORD1, rWORD2
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 16
addi rSTR2, rSTR2, 16
+#endif
bne cr1, L(dLcr1)
bne cr6, L(dLcr6)
b L(dLoop1)
/* Again we are on a early exit path (24-31 byte compare), we want to
only use volatile registers and avoid restoring non-volatile
registers. */
- .align 4
+ .align 4
L(dP3x):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 16(rSTR1)
ld rWORD2, 16(rSTR2)
- cmpld cr5, rWORD1, rWORD2
+#endif
+ cmpld cr7, rWORD1, rWORD2
sldi. r12, rN, 3
- bne cr1, L(dLcr1)
+ bne cr1, L(dLcr1x)
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 16
addi rSTR2, rSTR2, 16
- bne cr6, L(dLcr6)
+#endif
+ bne cr6, L(dLcr6x)
subfic rN, r12, 64 /* Shift count is 64 - (rN * 8). */
- bne cr5, L(dLcr5)
+ bne cr7, L(dLcr7x)
bne L(d00)
li rRTN, 0
blr
/* Count is a multiple of 32, remainder is 0 */
- .align 4
+ .align 4
L(dP4):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 0(rSTR1)
ld rWORD2, 0(rSTR2)
- cmpld cr0, rWORD1, rWORD2
+#endif
+ cmpld cr7, rWORD1, rWORD2
L(dP4e):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD3, 8(rSTR1)
ld rWORD4, 8(rSTR2)
+#endif
cmpld cr1, rWORD3, rWORD4
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD5, 16(rSTR1)
ld rWORD6, 16(rSTR2)
+#endif
cmpld cr6, rWORD5, rWORD6
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ldu rWORD7, 24(rSTR1)
ldu rWORD8, 24(rSTR2)
+#endif
cmpld cr5, rWORD7, rWORD8
- bne cr0, L(dLcr0)
+ bne cr7, L(dLcr7)
bne cr1, L(dLcr1)
bdz- L(d24) /* Adjust CTR as we start with +4 */
/* This is the primary loop */
- .align 4
+ .align 4
L(dLoop):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 8(rSTR1)
ld rWORD2, 8(rSTR2)
+#endif
cmpld cr1, rWORD3, rWORD4
bne cr6, L(dLcr6)
L(dLoop1):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD3, 16(rSTR1)
ld rWORD4, 16(rSTR2)
+#endif
cmpld cr6, rWORD5, rWORD6
bne cr5, L(dLcr5)
L(dLoop2):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD5, 24(rSTR1)
ld rWORD6, 24(rSTR2)
+#endif
cmpld cr5, rWORD7, rWORD8
- bne cr0, L(dLcr0)
+ bne cr7, L(dLcr7)
L(dLoop3):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ldu rWORD7, 32(rSTR1)
ldu rWORD8, 32(rSTR2)
+#endif
bne- cr1, L(dLcr1)
- cmpld cr0, rWORD1, rWORD2
+ cmpld cr7, rWORD1, rWORD2
bdnz+ L(dLoop)
L(dL4):
@@ -320,7 +510,7 @@ L(dL4):
bne cr5, L(dLcr5)
cmpld cr5, rWORD7, rWORD8
L(d44):
- bne cr0, L(dLcr0)
+ bne cr7, L(dLcr7)
L(d34):
bne cr1, L(dLcr1)
L(d24):
@@ -329,60 +519,74 @@ L(d14):
sldi. r12, rN, 3
bne cr5, L(dLcr5)
L(d04):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
subfic rN, r12, 64 /* Shift count is 64 - (rN * 8). */
beq L(zeroLength)
/* At this point we have a remainder of 1 to 7 bytes to compare. Since
we are aligned it is safe to load the whole double word, and use
shift right double to eliminate bits beyond the compare length. */
L(d00):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 8(rSTR1)
ld rWORD2, 8(rSTR2)
+#endif
srd rWORD1, rWORD1, rN
srd rWORD2, rWORD2, rN
- cmpld cr5, rWORD1, rWORD2
- bne cr5, L(dLcr5x)
+ cmpld cr7, rWORD1, rWORD2
+ bne cr7, L(dLcr7x)
li rRTN, 0
blr
- .align 4
-L(dLcr0):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+
+ .align 4
+L(dLcr7):
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+L(dLcr7x):
li rRTN, 1
- bgtlr cr0
+ bgtlr cr7
li rRTN, -1
blr
- .align 4
+ .align 4
L(dLcr1):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+L(dLcr1x):
li rRTN, 1
bgtlr cr1
li rRTN, -1
blr
- .align 4
+ .align 4
L(dLcr6):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+L(dLcr6x):
li rRTN, 1
bgtlr cr6
li rRTN, -1
blr
- .align 4
+ .align 4
L(dLcr5):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
L(dLcr5x):
li rRTN, 1
bgtlr cr5
li rRTN, -1
blr
- .align 4
+ .align 4
L(bytealigned):
- mtctr rN /* Power4 wants mtctr 1st in dispatch group */
+ mtctr rN /* Power4 wants mtctr 1st in dispatch group */
+#if 0
+/* Huh? We've already branched on cr6! */
beq- cr6, L(zeroLength)
+#endif
/* We need to prime this loop. This loop is swing modulo scheduled
to avoid pipe delays. The dependent instruction latencies (load to
@@ -397,7 +601,7 @@ L(bytealigned):
lbz rWORD1, 0(rSTR1)
lbz rWORD2, 0(rSTR2)
bdz- L(b11)
- cmpld cr0, rWORD1, rWORD2
+ cmpld cr7, rWORD1, rWORD2
lbz rWORD3, 1(rSTR1)
lbz rWORD4, 1(rSTR2)
bdz- L(b12)
@@ -405,11 +609,11 @@ L(bytealigned):
lbzu rWORD5, 2(rSTR1)
lbzu rWORD6, 2(rSTR2)
bdz- L(b13)
- .align 4
+ .align 4
L(bLoop):
lbzu rWORD1, 1(rSTR1)
lbzu rWORD2, 1(rSTR2)
- bne- cr0, L(bLcr0)
+ bne- cr7, L(bLcr7)
cmpld cr6, rWORD5, rWORD6
bdz- L(b3i)
@@ -418,7 +622,7 @@ L(bLoop):
lbzu rWORD4, 1(rSTR2)
bne- cr1, L(bLcr1)
- cmpld cr0, rWORD1, rWORD2
+ cmpld cr7, rWORD1, rWORD2
bdz- L(b2i)
lbzu rWORD5, 1(rSTR1)
@@ -435,23 +639,23 @@ L(bLoop):
tested. In this case we must complete the pending operations
before returning. */
L(b1i):
- bne- cr0, L(bLcr0)
+ bne- cr7, L(bLcr7)
bne- cr1, L(bLcr1)
b L(bx56)
- .align 4
+ .align 4
L(b2i):
bne- cr6, L(bLcr6)
- bne- cr0, L(bLcr0)
+ bne- cr7, L(bLcr7)
b L(bx34)
- .align 4
+ .align 4
L(b3i):
bne- cr1, L(bLcr1)
bne- cr6, L(bLcr6)
b L(bx12)
- .align 4
-L(bLcr0):
+ .align 4
+L(bLcr7):
li rRTN, 1
- bgtlr cr0
+ bgtlr cr7
li rRTN, -1
blr
L(bLcr1):
@@ -466,14 +670,14 @@ L(bLcr6):
blr
L(b13):
- bne- cr0, L(bx12)
+ bne- cr7, L(bx12)
bne- cr1, L(bx34)
L(bx56):
sub rRTN, rWORD5, rWORD6
blr
nop
L(b12):
- bne- cr0, L(bx12)
+ bne- cr7, L(bx12)
L(bx34):
sub rRTN, rWORD3, rWORD4
blr
@@ -481,101 +685,106 @@ L(b11):
L(bx12):
sub rRTN, rWORD1, rWORD2
blr
- .align 4
-L(zeroLengthReturn):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ .align 4
L(zeroLength):
li rRTN, 0
blr
- .align 4
+ .align 4
/* At this point we know the strings have different alignment and the
- compare length is at least 8 bytes. rBITDIF contains the low order
+ compare length is at least 8 bytes. r12 contains the low order
3 bits of rSTR1 and cr5 contains the result of the logical compare
- of rBITDIF to 0. If rBITDIF == 0 then rStr1 is double word
+ of r12 to 0. If r12 == 0 then rStr1 is double word
aligned and can perform the DWunaligned loop.
Otherwise we know that rSTR1 is not already DW aligned yet.
So we can force the string addresses to the next lower DW
- boundary and special case this first DW word using shift left to
+ boundary and special case this first DW using shift left to
eliminate bits preceding the first byte. Since we want to join the
normal (DWaligned) compare loop, starting at the second double word,
we need to adjust the length (rN) and special case the loop
- versioning for the first DW. This insures that the loop count is
+ versioning for the first DW. This ensures that the loop count is
correct and the first DW (shifted) is in the expected resister pair. */
-#define rSHL r29 /* Unaligned shift left count. */
-#define rSHR r28 /* Unaligned shift right count. */
-#define rB r27 /* Left rotation temp for rWORD2. */
-#define rD r26 /* Left rotation temp for rWORD4. */
-#define rF r25 /* Left rotation temp for rWORD6. */
-#define rH r24 /* Left rotation temp for rWORD8. */
-#define rA r0 /* Right rotation temp for rWORD2. */
-#define rC r12 /* Right rotation temp for rWORD4. */
-#define rE r0 /* Right rotation temp for rWORD6. */
-#define rG r12 /* Right rotation temp for rWORD8. */
+#define rSHL r29 /* Unaligned shift left count. */
+#define rSHR r28 /* Unaligned shift right count. */
+#define rWORD8_SHIFT r27 /* Left rotation temp for rWORD2. */
+#define rWORD2_SHIFT r26 /* Left rotation temp for rWORD4. */
+#define rWORD4_SHIFT r25 /* Left rotation temp for rWORD6. */
+#define rWORD6_SHIFT r24 /* Left rotation temp for rWORD8. */
L(unaligned):
- std r29,-24(r1)
- cfi_offset(r29,-24)
+ std rSHL, -24(r1)
+ cfi_offset(rSHL, -24)
clrldi rSHL, rSTR2, 61
beq- cr6, L(duzeroLength)
- std r28,-32(r1)
- cfi_offset(r28,-32)
+ std rSHR, -32(r1)
+ cfi_offset(rSHR, -32)
beq cr5, L(DWunaligned)
- std r27,-40(r1)
- cfi_offset(r27,-40)
-/* Adjust the logical start of rSTR2 ro compensate for the extra bits
+ std rWORD8_SHIFT, -40(r1)
+ cfi_offset(rWORD8_SHIFT, -40)
+/* Adjust the logical start of rSTR2 to compensate for the extra bits
in the 1st rSTR1 DW. */
- sub r27, rSTR2, rBITDIF
+ sub rWORD8_SHIFT, rSTR2, r12
/* But do not attempt to address the DW before that DW that contains
the actual start of rSTR2. */
clrrdi rSTR2, rSTR2, 3
- std r26,-48(r1)
- cfi_offset(r26,-48)
-/* Compute the left/right shift counts for the unalign rSTR2,
+ std rWORD2_SHIFT, -48(r1)
+ cfi_offset(rWORD2_SHIFT, -48)
+/* Compute the left/right shift counts for the unaligned rSTR2,
compensating for the logical (DW aligned) start of rSTR1. */
- clrldi rSHL, r27, 61
+ clrldi rSHL, rWORD8_SHIFT, 61
clrrdi rSTR1, rSTR1, 3
- std r25,-56(r1)
- cfi_offset(r25,-56)
+ std rWORD4_SHIFT, -56(r1)
+ cfi_offset(rWORD4_SHIFT, -56)
sldi rSHL, rSHL, 3
- cmpld cr5, r27, rSTR2
- add rN, rN, rBITDIF
- sldi r11, rBITDIF, 3
- std r24,-64(r1)
- cfi_offset(r24,-64)
+ cmpld cr5, rWORD8_SHIFT, rSTR2
+ add rN, rN, r12
+ sldi rWORD6, r12, 3
+ std rWORD6_SHIFT, -64(r1)
+ cfi_offset(rWORD6_SHIFT, -64)
subfic rSHR, rSHL, 64
- srdi rTMP, rN, 5 /* Divide by 32 */
- andi. rBITDIF, rN, 24 /* Get the DW remainder */
+ srdi r0, rN, 5 /* Divide by 32 */
+ andi. r12, rN, 24 /* Get the DW remainder */
/* We normally need to load 2 DWs to start the unaligned rSTR2, but in
this special case those bits may be discarded anyway. Also we
must avoid loading a DW where none of the bits are part of rSTR2 as
this may cross a page boundary and cause a page fault. */
li rWORD8, 0
blt cr5, L(dus0)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD8, 0(rSTR2)
- la rSTR2, 8(rSTR2)
+ addi rSTR2, rSTR2, 8
+#endif
sld rWORD8, rWORD8, rSHL
L(dus0):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 0(rSTR1)
ld rWORD2, 0(rSTR2)
- cmpldi cr1, rBITDIF, 16
+#endif
+ cmpldi cr1, r12, 16
cmpldi cr7, rN, 32
- srd rG, rWORD2, rSHR
+ srd r12, rWORD2, rSHR
clrldi rN, rN, 61
beq L(duPs4)
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
- or rWORD8, rG, rWORD8
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+ or rWORD8, r12, rWORD8
bgt cr1, L(duPs3)
beq cr1, L(duPs2)
/* Remainder is 8 */
- .align 4
+ .align 4
L(dusP1):
- sld rB, rWORD2, rSHL
- sld rWORD7, rWORD1, r11
- sld rWORD8, rWORD8, r11
+ sld rWORD8_SHIFT, rWORD2, rSHL
+ sld rWORD7, rWORD1, rWORD6
+ sld rWORD8, rWORD8, rWORD6
bge cr7, L(duP1e)
/* At this point we exit early with the first double word compare
complete and remainder of 0 to 7 bytes. See L(du14) for details on
@@ -585,95 +794,133 @@ L(dusP1):
bne cr5, L(duLcr5)
cmpld cr7, rN, rSHR
beq L(duZeroReturn)
- li rA, 0
+ li r0, 0
ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD2, 8(rSTR2)
- srd rA, rWORD2, rSHR
+#endif
+ srd r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 16 */
- .align 4
+ .align 4
L(duPs2):
- sld rH, rWORD2, rSHL
- sld rWORD5, rWORD1, r11
- sld rWORD6, rWORD8, r11
+ sld rWORD6_SHIFT, rWORD2, rSHL
+ sld rWORD5, rWORD1, rWORD6
+ sld rWORD6, rWORD8, rWORD6
b L(duP2e)
/* Remainder is 24 */
- .align 4
+ .align 4
L(duPs3):
- sld rF, rWORD2, rSHL
- sld rWORD3, rWORD1, r11
- sld rWORD4, rWORD8, r11
+ sld rWORD4_SHIFT, rWORD2, rSHL
+ sld rWORD3, rWORD1, rWORD6
+ sld rWORD4, rWORD8, rWORD6
b L(duP3e)
/* Count is a multiple of 32, remainder is 0 */
- .align 4
+ .align 4
L(duPs4):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
- or rWORD8, rG, rWORD8
- sld rD, rWORD2, rSHL
- sld rWORD1, rWORD1, r11
- sld rWORD2, rWORD8, r11
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+ or rWORD8, r12, rWORD8
+ sld rWORD2_SHIFT, rWORD2, rSHL
+ sld rWORD1, rWORD1, rWORD6
+ sld rWORD2, rWORD8, rWORD6
b L(duP4e)
/* At this point we know rSTR1 is double word aligned and the
compare length is at least 8 bytes. */
- .align 4
+ .align 4
L(DWunaligned):
- std r27,-40(r1)
- cfi_offset(r27,-40)
+ std rWORD8_SHIFT, -40(r1)
+ cfi_offset(rWORD8_SHIFT, -40)
clrrdi rSTR2, rSTR2, 3
- std r26,-48(r1)
- cfi_offset(r26,-48)
- srdi rTMP, rN, 5 /* Divide by 32 */
- std r25,-56(r1)
- cfi_offset(r25,-56)
- andi. rBITDIF, rN, 24 /* Get the DW remainder */
- std r24,-64(r1)
- cfi_offset(r24,-64)
+ std rWORD2_SHIFT, -48(r1)
+ cfi_offset(rWORD2_SHIFT, -48)
+ srdi r0, rN, 5 /* Divide by 32 */
+ std rWORD4_SHIFT, -56(r1)
+ cfi_offset(rWORD4_SHIFT, -56)
+ andi. r12, rN, 24 /* Get the DW remainder */
+ std rWORD6_SHIFT, -64(r1)
+ cfi_offset(rWORD6_SHIFT, -64)
sldi rSHL, rSHL, 3
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD6, 0(rSTR2)
ldu rWORD8, 8(rSTR2)
- cmpldi cr1, rBITDIF, 16
+#endif
+ cmpldi cr1, r12, 16
cmpldi cr7, rN, 32
clrldi rN, rN, 61
subfic rSHR, rSHL, 64
- sld rH, rWORD6, rSHL
+ sld rWORD6_SHIFT, rWORD6, rSHL
beq L(duP4)
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
bgt cr1, L(duP3)
beq cr1, L(duP2)
/* Remainder is 8 */
- .align 4
+ .align 4
L(duP1):
- srd rG, rWORD8, rSHR
+ srd r12, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ addi rSTR1, rSTR1, 8
+#else
ld rWORD7, 0(rSTR1)
- sld rB, rWORD8, rSHL
- or rWORD8, rG, rH
+#endif
+ sld rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
blt cr7, L(duP1x)
L(duP1e):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 8(rSTR1)
ld rWORD2, 8(rSTR2)
+#endif
cmpld cr5, rWORD7, rWORD8
- srd rA, rWORD2, rSHR
- sld rD, rWORD2, rSHL
- or rWORD2, rA, rB
+ srd r0, rWORD2, rSHR
+ sld rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD3, 16(rSTR1)
ld rWORD4, 16(rSTR2)
- cmpld cr0, rWORD1, rWORD2
- srd rC, rWORD4, rSHR
- sld rF, rWORD4, rSHL
+#endif
+ cmpld cr7, rWORD1, rWORD2
+ srd r12, rWORD4, rSHR
+ sld rWORD4_SHIFT, rWORD4, rSHL
bne cr5, L(duLcr5)
- or rWORD4, rC, rD
+ or rWORD4, r12, rWORD2_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD5, 24(rSTR1)
ld rWORD6, 24(rSTR2)
+#endif
cmpld cr1, rWORD3, rWORD4
- srd rE, rWORD6, rSHR
- sld rH, rWORD6, rSHL
- bne cr0, L(duLcr0)
- or rWORD6, rE, rF
+ srd r0, rWORD6, rSHR
+ sld rWORD6_SHIFT, rWORD6, rSHL
+ bne cr7, L(duLcr7)
+ or rWORD6, r0, rWORD4_SHIFT
cmpld cr6, rWORD5, rWORD6
b L(duLoop3)
- .align 4
+ .align 4
/* At this point we exit early with the first double word compare
complete and remainder of 0 to 7 bytes. See L(du14) for details on
how we handle the remaining bytes. */
@@ -683,186 +930,321 @@ L(duP1x):
bne cr5, L(duLcr5)
cmpld cr7, rN, rSHR
beq L(duZeroReturn)
- li rA, 0
+ li r0, 0
ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD2, 8(rSTR2)
- srd rA, rWORD2, rSHR
+#endif
+ srd r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 16 */
- .align 4
+ .align 4
L(duP2):
- srd rE, rWORD8, rSHR
+ srd r0, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ addi rSTR1, rSTR1, 8
+#else
ld rWORD5, 0(rSTR1)
- or rWORD6, rE, rH
- sld rH, rWORD8, rSHL
+#endif
+ or rWORD6, r0, rWORD6_SHIFT
+ sld rWORD6_SHIFT, rWORD8, rSHL
L(duP2e):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD7, 8(rSTR1)
ld rWORD8, 8(rSTR2)
+#endif
cmpld cr6, rWORD5, rWORD6
- srd rG, rWORD8, rSHR
- sld rB, rWORD8, rSHL
- or rWORD8, rG, rH
+ srd r12, rWORD8, rSHR
+ sld rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
blt cr7, L(duP2x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 16(rSTR1)
ld rWORD2, 16(rSTR2)
+#endif
cmpld cr5, rWORD7, rWORD8
bne cr6, L(duLcr6)
- srd rA, rWORD2, rSHR
- sld rD, rWORD2, rSHL
- or rWORD2, rA, rB
+ srd r0, rWORD2, rSHR
+ sld rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD3, 24(rSTR1)
ld rWORD4, 24(rSTR2)
- cmpld cr0, rWORD1, rWORD2
+#endif
+ cmpld cr7, rWORD1, rWORD2
bne cr5, L(duLcr5)
- srd rC, rWORD4, rSHR
- sld rF, rWORD4, rSHL
- or rWORD4, rC, rD
+ srd r12, rWORD4, rSHR
+ sld rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 8
addi rSTR2, rSTR2, 8
+#endif
cmpld cr1, rWORD3, rWORD4
b L(duLoop2)
- .align 4
+ .align 4
L(duP2x):
cmpld cr5, rWORD7, rWORD8
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 8
addi rSTR2, rSTR2, 8
+#endif
bne cr6, L(duLcr6)
sldi. rN, rN, 3
bne cr5, L(duLcr5)
cmpld cr7, rN, rSHR
beq L(duZeroReturn)
- li rA, 0
+ li r0, 0
ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD2, 8(rSTR2)
- srd rA, rWORD2, rSHR
+#endif
+ srd r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 24 */
- .align 4
+ .align 4
L(duP3):
- srd rC, rWORD8, rSHR
+ srd r12, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ addi rSTR1, rSTR1, 8
+#else
ld rWORD3, 0(rSTR1)
- sld rF, rWORD8, rSHL
- or rWORD4, rC, rH
+#endif
+ sld rWORD4_SHIFT, rWORD8, rSHL
+ or rWORD4, r12, rWORD6_SHIFT
L(duP3e):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD5, 8(rSTR1)
ld rWORD6, 8(rSTR2)
+#endif
cmpld cr1, rWORD3, rWORD4
- srd rE, rWORD6, rSHR
- sld rH, rWORD6, rSHL
- or rWORD6, rE, rF
+ srd r0, rWORD6, rSHR
+ sld rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD7, 16(rSTR1)
ld rWORD8, 16(rSTR2)
+#endif
cmpld cr6, rWORD5, rWORD6
bne cr1, L(duLcr1)
- srd rG, rWORD8, rSHR
- sld rB, rWORD8, rSHL
- or rWORD8, rG, rH
+ srd r12, rWORD8, rSHR
+ sld rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
blt cr7, L(duP3x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 24(rSTR1)
ld rWORD2, 24(rSTR2)
+#endif
cmpld cr5, rWORD7, rWORD8
bne cr6, L(duLcr6)
- srd rA, rWORD2, rSHR
- sld rD, rWORD2, rSHL
- or rWORD2, rA, rB
+ srd r0, rWORD2, rSHR
+ sld rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 16
addi rSTR2, rSTR2, 16
- cmpld cr0, rWORD1, rWORD2
+#endif
+ cmpld cr7, rWORD1, rWORD2
b L(duLoop1)
- .align 4
+ .align 4
L(duP3x):
+#ifndef __LITTLE_ENDIAN__
addi rSTR1, rSTR1, 16
addi rSTR2, rSTR2, 16
+#endif
+#if 0
+/* Huh? We've already branched on cr1! */
bne cr1, L(duLcr1)
+#endif
cmpld cr5, rWORD7, rWORD8
bne cr6, L(duLcr6)
sldi. rN, rN, 3
bne cr5, L(duLcr5)
cmpld cr7, rN, rSHR
beq L(duZeroReturn)
- li rA, 0
+ li r0, 0
ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD2, 8(rSTR2)
- srd rA, rWORD2, rSHR
+#endif
+ srd r0, rWORD2, rSHR
b L(dutrim)
/* Count is a multiple of 32, remainder is 0 */
- .align 4
+ .align 4
L(duP4):
- mtctr rTMP /* Power4 wants mtctr 1st in dispatch group */
- srd rA, rWORD8, rSHR
+ mtctr r0 /* Power4 wants mtctr 1st in dispatch group */
+ srd r0, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ addi rSTR1, rSTR1, 8
+#else
ld rWORD1, 0(rSTR1)
- sld rD, rWORD8, rSHL
- or rWORD2, rA, rH
+#endif
+ sld rWORD2_SHIFT, rWORD8, rSHL
+ or rWORD2, r0, rWORD6_SHIFT
L(duP4e):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD3, 8(rSTR1)
ld rWORD4, 8(rSTR2)
- cmpld cr0, rWORD1, rWORD2
- srd rC, rWORD4, rSHR
- sld rF, rWORD4, rSHL
- or rWORD4, rC, rD
+#endif
+ cmpld cr7, rWORD1, rWORD2
+ srd r12, rWORD4, rSHR
+ sld rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD5, 16(rSTR1)
ld rWORD6, 16(rSTR2)
+#endif
cmpld cr1, rWORD3, rWORD4
- bne cr0, L(duLcr0)
- srd rE, rWORD6, rSHR
- sld rH, rWORD6, rSHL
- or rWORD6, rE, rF
+ bne cr7, L(duLcr7)
+ srd r0, rWORD6, rSHR
+ sld rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ldu rWORD7, 24(rSTR1)
ldu rWORD8, 24(rSTR2)
+#endif
cmpld cr6, rWORD5, rWORD6
bne cr1, L(duLcr1)
- srd rG, rWORD8, rSHR
- sld rB, rWORD8, rSHL
- or rWORD8, rG, rH
+ srd r12, rWORD8, rSHR
+ sld rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
cmpld cr5, rWORD7, rWORD8
bdz- L(du24) /* Adjust CTR as we start with +4 */
/* This is the primary loop */
- .align 4
+ .align 4
L(duLoop):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD1, 8(rSTR1)
ld rWORD2, 8(rSTR2)
+#endif
cmpld cr1, rWORD3, rWORD4
bne cr6, L(duLcr6)
- srd rA, rWORD2, rSHR
- sld rD, rWORD2, rSHL
- or rWORD2, rA, rB
+ srd r0, rWORD2, rSHR
+ sld rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
L(duLoop1):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD3, 16(rSTR1)
ld rWORD4, 16(rSTR2)
+#endif
cmpld cr6, rWORD5, rWORD6
bne cr5, L(duLcr5)
- srd rC, rWORD4, rSHR
- sld rF, rWORD4, rSHL
- or rWORD4, rC, rD
+ srd r12, rWORD4, rSHR
+ sld rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
L(duLoop2):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD5, 24(rSTR1)
ld rWORD6, 24(rSTR2)
+#endif
cmpld cr5, rWORD7, rWORD8
- bne cr0, L(duLcr0)
- srd rE, rWORD6, rSHR
- sld rH, rWORD6, rSHL
- or rWORD6, rE, rF
+ bne cr7, L(duLcr7)
+ srd r0, rWORD6, rSHR
+ sld rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
L(duLoop3):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
ldu rWORD7, 32(rSTR1)
ldu rWORD8, 32(rSTR2)
- cmpld cr0, rWORD1, rWORD2
+#endif
+ cmpld cr7, rWORD1, rWORD2
bne- cr1, L(duLcr1)
- srd rG, rWORD8, rSHR
- sld rB, rWORD8, rSHL
- or rWORD8, rG, rH
+ srd r12, rWORD8, rSHR
+ sld rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
bdnz+ L(duLoop)
L(duL4):
+#if 0
+/* Huh? We've already branched on cr1! */
bne cr1, L(duLcr1)
+#endif
cmpld cr1, rWORD3, rWORD4
bne cr6, L(duLcr6)
cmpld cr6, rWORD5, rWORD6
bne cr5, L(duLcr5)
cmpld cr5, rWORD7, rWORD8
L(du44):
- bne cr0, L(duLcr0)
+ bne cr7, L(duLcr7)
L(du34):
bne cr1, L(duLcr1)
L(du24):
@@ -872,103 +1254,110 @@ L(du14):
bne cr5, L(duLcr5)
/* At this point we have a remainder of 1 to 7 bytes to compare. We use
shift right double to eliminate bits beyond the compare length.
- This allows the use of double word subtract to compute the final
- result.
However it may not be safe to load rWORD2 which may be beyond the
string length. So we compare the bit length of the remainder to
the right shift count (rSHR). If the bit count is less than or equal
we do not need to load rWORD2 (all significant bits are already in
- rB). */
+ rWORD8_SHIFT). */
cmpld cr7, rN, rSHR
beq L(duZeroReturn)
- li rA, 0
+ li r0, 0
ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
ld rWORD2, 8(rSTR2)
- srd rA, rWORD2, rSHR
- .align 4
+#endif
+ srd r0, rWORD2, rSHR
+ .align 4
L(dutrim):
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+#else
ld rWORD1, 8(rSTR1)
- ld rWORD8,-8(r1)
+#endif
+ ld rWORD8, -8(r1)
subfic rN, rN, 64 /* Shift count is 64 - (rN * 8). */
- or rWORD2, rA, rB
- ld rWORD7,-16(r1)
- ld r29,-24(r1)
+ or rWORD2, r0, rWORD8_SHIFT
+ ld rWORD7, -16(r1)
+ ld rSHL, -24(r1)
srd rWORD1, rWORD1, rN
srd rWORD2, rWORD2, rN
- ld r28,-32(r1)
- ld r27,-40(r1)
+ ld rSHR, -32(r1)
+ ld rWORD8_SHIFT, -40(r1)
li rRTN, 0
- cmpld cr0, rWORD1, rWORD2
- ld r26,-48(r1)
- ld r25,-56(r1)
- beq cr0, L(dureturn24)
+ cmpld cr7, rWORD1, rWORD2
+ ld rWORD2_SHIFT, -48(r1)
+ ld rWORD4_SHIFT, -56(r1)
+ beq cr7, L(dureturn24)
li rRTN, 1
- ld r24,-64(r1)
- bgtlr cr0
+ ld rWORD6_SHIFT, -64(r1)
+ bgtlr cr7
li rRTN, -1
blr
- .align 4
-L(duLcr0):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ .align 4
+L(duLcr7):
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
li rRTN, 1
- bgt cr0, L(dureturn29)
- ld r29,-24(r1)
- ld r28,-32(r1)
+ bgt cr7, L(dureturn29)
+ ld rSHL, -24(r1)
+ ld rSHR, -32(r1)
li rRTN, -1
b L(dureturn27)
- .align 4
+ .align 4
L(duLcr1):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
li rRTN, 1
bgt cr1, L(dureturn29)
- ld r29,-24(r1)
- ld r28,-32(r1)
+ ld rSHL, -24(r1)
+ ld rSHR, -32(r1)
li rRTN, -1
b L(dureturn27)
- .align 4
+ .align 4
L(duLcr6):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
li rRTN, 1
bgt cr6, L(dureturn29)
- ld r29,-24(r1)
- ld r28,-32(r1)
+ ld rSHL, -24(r1)
+ ld rSHR, -32(r1)
li rRTN, -1
b L(dureturn27)
- .align 4
+ .align 4
L(duLcr5):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
li rRTN, 1
bgt cr5, L(dureturn29)
- ld r29,-24(r1)
- ld r28,-32(r1)
+ ld rSHL, -24(r1)
+ ld rSHR, -32(r1)
li rRTN, -1
b L(dureturn27)
.align 3
L(duZeroReturn):
- li rRTN,0
+ li rRTN, 0
.align 4
L(dureturn):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
L(dureturn29):
- ld r29,-24(r1)
- ld r28,-32(r1)
+ ld rSHL, -24(r1)
+ ld rSHR, -32(r1)
L(dureturn27):
- ld r27,-40(r1)
+ ld rWORD8_SHIFT, -40(r1)
L(dureturn26):
- ld r26,-48(r1)
+ ld rWORD2_SHIFT, -48(r1)
L(dureturn25):
- ld r25,-56(r1)
+ ld rWORD4_SHIFT, -56(r1)
L(dureturn24):
- ld r24,-64(r1)
+ ld rWORD6_SHIFT, -64(r1)
blr
L(duzeroLength):
- li rRTN,0
+ li rRTN, 0
blr
END (memcmp)
diff --git a/sysdeps/powerpc/powerpc64/power4/memcpy.S b/sysdeps/powerpc/powerpc64/power4/memcpy.S
index 4317c7e786..f9a7260dcb 100644
--- a/sysdeps/powerpc/powerpc64/power4/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/power4/memcpy.S
@@ -214,15 +214,28 @@ EALIGN (memcpy, 5, 0)
blt cr6,5f
srdi 7,6,16
bgt cr6,3f
+#ifdef __LITTLE_ENDIAN__
+ sth 7,0(3)
+#else
sth 6,0(3)
+#endif
b 7f
.align 4
3:
+#ifdef __LITTLE_ENDIAN__
+ rotlwi 6,6,24
+ stb 6,0(3)
+ sth 7,1(3)
+#else
stb 7,0(3)
sth 6,1(3)
+#endif
b 7f
.align 4
5:
+#ifdef __LITTLE_ENDIAN__
+ rotlwi 6,6,8
+#endif
stb 6,0(3)
7:
cmpldi cr1,10,16
@@ -334,13 +347,23 @@ EALIGN (memcpy, 5, 0)
bf 30,1f
/* there are at least two DWs to copy */
+#ifdef __LITTLE_ENDIAN__
+ srd 0,6,10
+ sld 8,7,9
+#else
sld 0,6,10
srd 8,7,9
+#endif
or 0,0,8
ld 6,16(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srd 0,7,10
+ sld 8,6,9
+#else
sld 0,7,10
srd 8,6,9
+#endif
or 0,0,8
ld 7,24(5)
std 0,8(4)
@@ -349,8 +372,13 @@ EALIGN (memcpy, 5, 0)
blt cr6,8f /* if total DWs = 3, then bypass loop */
bf 31,4f
/* there is a third DW to copy */
+#ifdef __LITTLE_ENDIAN__
+ srd 0,6,10
+ sld 8,7,9
+#else
sld 0,6,10
srd 8,7,9
+#endif
or 0,0,8
std 0,0(4)
mr 6,7
@@ -361,8 +389,13 @@ EALIGN (memcpy, 5, 0)
b 4f
.align 4
1:
+#ifdef __LITTLE_ENDIAN__
+ srd 0,6,10
+ sld 8,7,9
+#else
sld 0,6,10
srd 8,7,9
+#endif
addi 5,5,16
or 0,0,8
bf 31,4f
@@ -373,23 +406,44 @@ EALIGN (memcpy, 5, 0)
addi 4,4,8
.align 4
/* copy 32 bytes at a time */
-4: sld 0,6,10
+4:
+#ifdef __LITTLE_ENDIAN__
+ srd 0,6,10
+ sld 8,7,9
+#else
+ sld 0,6,10
srd 8,7,9
+#endif
or 0,0,8
ld 6,0(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srd 0,7,10
+ sld 8,6,9
+#else
sld 0,7,10
srd 8,6,9
+#endif
or 0,0,8
ld 7,8(5)
std 0,8(4)
+#ifdef __LITTLE_ENDIAN__
+ srd 0,6,10
+ sld 8,7,9
+#else
sld 0,6,10
srd 8,7,9
+#endif
or 0,0,8
ld 6,16(5)
std 0,16(4)
+#ifdef __LITTLE_ENDIAN__
+ srd 0,7,10
+ sld 8,6,9
+#else
sld 0,7,10
srd 8,6,9
+#endif
or 0,0,8
ld 7,24(5)
std 0,24(4)
@@ -399,8 +453,13 @@ EALIGN (memcpy, 5, 0)
.align 4
8:
/* calculate and store the final DW */
+#ifdef __LITTLE_ENDIAN__
+ srd 0,6,10
+ sld 8,7,9
+#else
sld 0,6,10
srd 8,7,9
+#endif
or 0,0,8
std 0,0(4)
3:
diff --git a/sysdeps/powerpc/powerpc64/power4/memset.S b/sysdeps/powerpc/powerpc64/power4/memset.S
index dbecee8b97..9d6fef569a 100644
--- a/sysdeps/powerpc/powerpc64/power4/memset.S
+++ b/sysdeps/powerpc/powerpc64/power4/memset.S
@@ -50,14 +50,14 @@ L(_memset):
/* Align to doubleword boundary. */
cmpldi cr5, rLEN, 31
- rlwimi rCHR, rCHR, 8, 16, 23 /* Replicate byte to halfword. */
+ insrdi rCHR, rCHR, 8, 48 /* Replicate byte to halfword. */
beq+ L(aligned2)
mtcrf 0x01, rMEMP0
subfic rALIGN, rALIGN, 8
cror 28,30,31 /* Detect odd word aligned. */
add rMEMP, rMEMP, rALIGN
sub rLEN, rLEN, rALIGN
- rlwimi rCHR, rCHR, 16, 0, 15 /* Replicate halfword to word. */
+ insrdi rCHR, rCHR, 16, 32 /* Replicate halfword to word. */
bt 29, L(g4)
/* Process the even word of doubleword. */
bf+ 31, L(g2)
@@ -79,14 +79,14 @@ L(g0):
/* Handle the case of size < 31. */
L(aligned2):
- rlwimi rCHR, rCHR, 16, 0, 15 /* Replicate halfword to word. */
+ insrdi rCHR, rCHR, 16, 32 /* Replicate halfword to word. */
L(aligned):
mtcrf 0x01, rLEN
ble cr5, L(medium)
/* Align to 32-byte boundary. */
andi. rALIGN, rMEMP, 0x18
subfic rALIGN, rALIGN, 0x20
- insrdi rCHR,rCHR,32,0 /* Replicate word to double word. */
+ insrdi rCHR, rCHR, 32, 0 /* Replicate word to double word. */
beq L(caligned)
mtcrf 0x01, rALIGN
add rMEMP, rMEMP, rALIGN
@@ -146,24 +146,24 @@ L(zloopstart):
L(getCacheAligned):
cmpldi cr1,rLEN,32
andi. rTMP,rMEMP,127
- blt cr1,L(handletail32)
- beq L(cacheAligned)
+ blt cr1,L(handletail32)
+ beq L(cacheAligned)
addi rMEMP,rMEMP,32
addi rLEN,rLEN,-32
- std rCHR,-32(rMEMP)
- std rCHR,-24(rMEMP)
- std rCHR,-16(rMEMP)
- std rCHR,-8(rMEMP)
- b L(getCacheAligned)
+ std rCHR,-32(rMEMP)
+ std rCHR,-24(rMEMP)
+ std rCHR,-16(rMEMP)
+ std rCHR,-8(rMEMP)
+ b L(getCacheAligned)
/* Now we are aligned to the cache line and can use dcbz. */
L(cacheAligned):
cmpld cr1,rLEN,rCLS
- blt cr1,L(handletail32)
+ blt cr1,L(handletail32)
dcbz 0,rMEMP
subf rLEN,rCLS,rLEN
- add rMEMP,rMEMP,rCLS
- b L(cacheAligned)
+ add rMEMP,rMEMP,rCLS
+ b L(cacheAligned)
/* We are here because the cache line size was set and was not 32-bytes
and the remainder (rLEN) is less than the actual cache line size.
@@ -200,7 +200,7 @@ L(le4):
/* Memset of 0-31 bytes. */
.align 5
L(medium):
- insrdi rCHR,rCHR,32,0 /* Replicate word to double word. */
+ insrdi rCHR, rCHR, 32, 0 /* Replicate word to double word. */
cmpldi cr1, rLEN, 16
L(medium_tail2):
add rMEMP, rMEMP, rLEN
@@ -235,6 +235,7 @@ L(medium_28t):
END_GEN_TB (memset,TB_TOCLESS)
libc_hidden_builtin_def (memset)
+#ifndef NO_BZERO_IMPL
/* Copied from bzero.S to prevent the linker from inserting a stub
between bzero and memset. */
ENTRY (__bzero)
@@ -245,3 +246,4 @@ ENTRY (__bzero)
END_GEN_TB (__bzero,TB_TOCLESS)
weak_alias (__bzero, bzero)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/power4/multiarch/Implies b/sysdeps/powerpc/powerpc64/power4/multiarch/Implies
new file mode 100644
index 0000000000..30edcf7f9d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power4/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power4/strncmp.S b/sysdeps/powerpc/powerpc64/power4/strncmp.S
index 1276e16a59..5d136cfa21 100644
--- a/sysdeps/powerpc/powerpc64/power4/strncmp.S
+++ b/sysdeps/powerpc/powerpc64/power4/strncmp.S
@@ -25,7 +25,7 @@
EALIGN (strncmp, 4, 0)
CALL_MCOUNT 3
-#define rTMP r0
+#define rTMP2 r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -38,6 +38,7 @@ EALIGN (strncmp, 4, 0)
#define r7F7F r9 /* constant 0x7f7f7f7f7f7f7f7f */
#define rNEG r10 /* ~(word in s1 | 0x7f7f7f7f7f7f7f7f) */
#define rBITDIF r11 /* bits that differ in s1 & s2 words */
+#define rTMP r12
dcbt 0,rSTR1
or rTMP, rSTR2, rSTR1
@@ -79,12 +80,59 @@ L(g1): add rTMP, rFEFE, rWORD1
we don't compare two strings as different because of gunk beyond
the end of the strings... */
+#ifdef __LITTLE_ENDIAN__
+L(endstring):
+ addi rTMP2, rTMP, -1
+ beq cr1, L(equal)
+ andc rTMP2, rTMP2, rTMP
+ rldimi rTMP2, rTMP2, 1, 0
+ and rWORD2, rWORD2, rTMP2 /* Mask off gunk. */
+ and rWORD1, rWORD1, rTMP2
+ cmpd cr1, rWORD1, rWORD2
+ beq cr1, L(equal)
+ xor rBITDIF, rWORD1, rWORD2 /* rBITDIF has bits that differ. */
+ neg rNEG, rBITDIF
+ and rNEG, rNEG, rBITDIF /* rNEG has LS bit that differs. */
+ cntlzd rNEG, rNEG /* bitcount of the bit. */
+ andi. rNEG, rNEG, 56 /* bitcount to LS byte that differs. */
+ sld rWORD1, rWORD1, rNEG /* shift left to clear MS bytes. */
+ sld rWORD2, rWORD2, rNEG
+ xor. rBITDIF, rWORD1, rWORD2
+ sub rRTN, rWORD1, rWORD2
+ blt- L(highbit)
+ sradi rRTN, rRTN, 63 /* must return an int. */
+ ori rRTN, rRTN, 1
+ blr
+L(equal):
+ li rRTN, 0
+ blr
+
+L(different):
+ ld rWORD1, -8(rSTR1)
+ xor rBITDIF, rWORD1, rWORD2 /* rBITDIF has bits that differ. */
+ neg rNEG, rBITDIF
+ and rNEG, rNEG, rBITDIF /* rNEG has LS bit that differs. */
+ cntlzd rNEG, rNEG /* bitcount of the bit. */
+ andi. rNEG, rNEG, 56 /* bitcount to LS byte that differs. */
+ sld rWORD1, rWORD1, rNEG /* shift left to clear MS bytes. */
+ sld rWORD2, rWORD2, rNEG
+ xor. rBITDIF, rWORD1, rWORD2
+ sub rRTN, rWORD1, rWORD2
+ blt- L(highbit)
+ sradi rRTN, rRTN, 63
+ ori rRTN, rRTN, 1
+ blr
+L(highbit):
+ sradi rRTN, rWORD2, 63
+ ori rRTN, rRTN, 1
+ blr
+
+#else
L(endstring):
and rTMP, r7F7F, rWORD1
beq cr1, L(equal)
add rTMP, rTMP, r7F7F
xor. rBITDIF, rWORD1, rWORD2
-
andc rNEG, rNEG, rTMP
blt- L(highbit)
cntlzd rBITDIF, rBITDIF
@@ -93,7 +141,7 @@ L(endstring):
cmpd cr1, rNEG, rBITDIF
sub rRTN, rWORD1, rWORD2
blt- cr1, L(equal)
- sradi rRTN, rRTN, 63
+ sradi rRTN, rRTN, 63 /* must return an int. */
ori rRTN, rRTN, 1
blr
L(equal):
@@ -101,7 +149,7 @@ L(equal):
blr
L(different):
- ldu rWORD1, -8(rSTR1)
+ ld rWORD1, -8(rSTR1)
xor. rBITDIF, rWORD1, rWORD2
sub rRTN, rWORD1, rWORD2
blt- L(highbit)
@@ -109,11 +157,10 @@ L(different):
ori rRTN, rRTN, 1
blr
L(highbit):
- srdi rWORD2, rWORD2, 56
- srdi rWORD1, rWORD1, 56
- sub rRTN, rWORD1, rWORD2
+ sradi rRTN, rWORD2, 63
+ ori rRTN, rRTN, 1
blr
-
+#endif
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
diff --git a/sysdeps/powerpc/powerpc64/power4/wordcopy.c b/sysdeps/powerpc/powerpc64/power4/wordcopy.c
deleted file mode 100644
index f427b48e7a..0000000000
--- a/sysdeps/powerpc/powerpc64/power4/wordcopy.c
+++ /dev/null
@@ -1 +0,0 @@
-#include "../../powerpc32/power4/wordcopy.c"
diff --git a/sysdeps/powerpc/powerpc64/power5+/fpu/Implies b/sysdeps/powerpc/powerpc64/power5+/fpu/Implies
new file mode 100644
index 0000000000..c0e67848e2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power5+/fpu/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power5/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power5+/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/power5+/fpu/multiarch/Implies
new file mode 100644
index 0000000000..c0e67848e2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power5+/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power5/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power5+/multiarch/Implies b/sysdeps/powerpc/powerpc64/power5+/multiarch/Implies
new file mode 100644
index 0000000000..0851b19fa2
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power5+/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power5/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power5/Implies b/sysdeps/powerpc/powerpc64/power5/Implies
index b36831e287..bedb20b65c 100644
--- a/sysdeps/powerpc/powerpc64/power5/Implies
+++ b/sysdeps/powerpc/powerpc64/power5/Implies
@@ -1,4 +1,2 @@
-powerpc/power5/fpu
-powerpc/power5
powerpc/powerpc64/power4/fpu
powerpc/powerpc64/power4
diff --git a/sysdeps/powerpc/powerpc64/power5/fpu/Implies b/sysdeps/powerpc/powerpc64/power5/fpu/Implies
new file mode 100644
index 0000000000..3740d050a6
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power5/fpu/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power4/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power5/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/power5/fpu/multiarch/Implies
new file mode 100644
index 0000000000..3740d050a6
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power5/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power4/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power5/multiarch/Implies b/sysdeps/powerpc/powerpc64/power5/multiarch/Implies
new file mode 100644
index 0000000000..9a3cbb0938
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power5/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power4/multiarch
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/Implies b/sysdeps/powerpc/powerpc64/power6/fpu/Implies
index 4c782d4122..f09854edb6 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/Implies
+++ b/sysdeps/powerpc/powerpc64/power6/fpu/Implies
@@ -1,2 +1 @@
powerpc/powerpc64/power5+/fpu
-powerpc/powerpc64/power5+
diff --git a/sysdeps/powerpc/powerpc64/power6/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/power6/fpu/multiarch/Implies
new file mode 100644
index 0000000000..fca8a4ef0f
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power6/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power5+/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power6/memcpy.S b/sysdeps/powerpc/powerpc64/power6/memcpy.S
index d6d242d293..e3f3d8a303 100644
--- a/sysdeps/powerpc/powerpc64/power6/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/power6/memcpy.S
@@ -400,15 +400,28 @@ L(das_tail2):
blt cr6,5f
srdi 7,6,16
bgt cr6,3f
+#ifdef __LITTLE_ENDIAN__
+ sth 7,0(3)
+#else
sth 6,0(3)
+#endif
b 7f
.align 4
3:
+#ifdef __LITTLE_ENDIAN__
+ rotlwi 6,6,24
+ stb 6,0(3)
+ sth 7,1(3)
+#else
stb 7,0(3)
sth 6,1(3)
+#endif
b 7f
.align 4
5:
+#ifdef __LITTLE_ENDIAN__
+ rotlwi 6,6,8
+#endif
stb 6,0(3)
7:
cmpldi cr1,10,16
@@ -595,13 +608,24 @@ L(du1_do):
bf 30,L(du1_1dw)
/* there are at least two DWs to copy */
+ /* FIXME: can combine last shift and "or" into "rldimi" */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 8
+ sldi 8,7, 64-8
+#else
sldi 0,6, 8
srdi 8,7, 64-8
+#endif
or 0,0,8
ld 6,16(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 8
+ sldi 8,6, 64-8
+#else
sldi 0,7, 8
srdi 8,6, 64-8
+#endif
or 0,0,8
ld 7,24(5)
std 0,8(4)
@@ -610,8 +634,13 @@ L(du1_do):
blt cr6,L(du1_fini) /* if total DWs = 3, then bypass loop */
bf 31,L(du1_loop)
/* there is a third DW to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 8
+ sldi 8,7, 64-8
+#else
sldi 0,6, 8
srdi 8,7, 64-8
+#endif
or 0,0,8
std 0,0(4)
mr 6,7
@@ -622,8 +651,13 @@ L(du1_do):
b L(du1_loop)
.align 4
L(du1_1dw):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 8
+ sldi 8,7, 64-8
+#else
sldi 0,6, 8
srdi 8,7, 64-8
+#endif
addi 5,5,16
or 0,0,8
bf 31,L(du1_loop)
@@ -635,23 +669,43 @@ L(du1_1dw):
.align 4
/* copy 32 bytes at a time */
L(du1_loop):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 8
+ sldi 8,7, 64-8
+#else
sldi 0,6, 8
srdi 8,7, 64-8
+#endif
or 0,0,8
ld 6,0(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 8
+ sldi 8,6, 64-8
+#else
sldi 0,7, 8
srdi 8,6, 64-8
+#endif
or 0,0,8
ld 7,8(5)
std 0,8(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 8
+ sldi 8,7, 64-8
+#else
sldi 0,6, 8
srdi 8,7, 64-8
+#endif
or 0,0,8
ld 6,16(5)
std 0,16(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 8
+ sldi 8,6, 64-8
+#else
sldi 0,7, 8
srdi 8,6, 64-8
+#endif
or 0,0,8
ld 7,24(5)
std 0,24(4)
@@ -661,8 +715,13 @@ L(du1_loop):
.align 4
L(du1_fini):
/* calculate and store the final DW */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 8
+ sldi 8,7, 64-8
+#else
sldi 0,6, 8
srdi 8,7, 64-8
+#endif
or 0,0,8
std 0,0(4)
b L(du_done)
@@ -672,13 +731,23 @@ L(du2_do):
bf 30,L(du2_1dw)
/* there are at least two DWs to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 16
+ sldi 8,7, 64-16
+#else
sldi 0,6, 16
srdi 8,7, 64-16
+#endif
or 0,0,8
ld 6,16(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 16
+ sldi 8,6, 64-16
+#else
sldi 0,7, 16
srdi 8,6, 64-16
+#endif
or 0,0,8
ld 7,24(5)
std 0,8(4)
@@ -687,8 +756,13 @@ L(du2_do):
blt cr6,L(du2_fini) /* if total DWs = 3, then bypass loop */
bf 31,L(du2_loop)
/* there is a third DW to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 16
+ sldi 8,7, 64-16
+#else
sldi 0,6, 16
srdi 8,7, 64-16
+#endif
or 0,0,8
std 0,0(4)
mr 6,7
@@ -699,8 +773,13 @@ L(du2_do):
b L(du2_loop)
.align 4
L(du2_1dw):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 16
+ sldi 8,7, 64-16
+#else
sldi 0,6, 16
srdi 8,7, 64-16
+#endif
addi 5,5,16
or 0,0,8
bf 31,L(du2_loop)
@@ -712,23 +791,43 @@ L(du2_1dw):
.align 4
/* copy 32 bytes at a time */
L(du2_loop):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 16
+ sldi 8,7, 64-16
+#else
sldi 0,6, 16
srdi 8,7, 64-16
+#endif
or 0,0,8
ld 6,0(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 16
+ sldi 8,6, 64-16
+#else
sldi 0,7, 16
srdi 8,6, 64-16
+#endif
or 0,0,8
ld 7,8(5)
std 0,8(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 16
+ sldi 8,7, 64-16
+#else
sldi 0,6, 16
srdi 8,7, 64-16
+#endif
or 0,0,8
ld 6,16(5)
std 0,16(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 16
+ sldi 8,6, 64-16
+#else
sldi 0,7, 16
srdi 8,6, 64-16
+#endif
or 0,0,8
ld 7,24(5)
std 0,24(4)
@@ -738,8 +837,13 @@ L(du2_loop):
.align 4
L(du2_fini):
/* calculate and store the final DW */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 16
+ sldi 8,7, 64-16
+#else
sldi 0,6, 16
srdi 8,7, 64-16
+#endif
or 0,0,8
std 0,0(4)
b L(du_done)
@@ -749,13 +853,23 @@ L(du3_do):
bf 30,L(du3_1dw)
/* there are at least two DWs to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 24
+ sldi 8,7, 64-24
+#else
sldi 0,6, 24
srdi 8,7, 64-24
+#endif
or 0,0,8
ld 6,16(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 24
+ sldi 8,6, 64-24
+#else
sldi 0,7, 24
srdi 8,6, 64-24
+#endif
or 0,0,8
ld 7,24(5)
std 0,8(4)
@@ -764,8 +878,13 @@ L(du3_do):
blt cr6,L(du3_fini) /* if total DWs = 3, then bypass loop */
bf 31,L(du3_loop)
/* there is a third DW to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 24
+ sldi 8,7, 64-24
+#else
sldi 0,6, 24
srdi 8,7, 64-24
+#endif
or 0,0,8
std 0,0(4)
mr 6,7
@@ -776,8 +895,13 @@ L(du3_do):
b L(du3_loop)
.align 4
L(du3_1dw):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 24
+ sldi 8,7, 64-24
+#else
sldi 0,6, 24
srdi 8,7, 64-24
+#endif
addi 5,5,16
or 0,0,8
bf 31,L(du3_loop)
@@ -789,23 +913,43 @@ L(du3_1dw):
.align 4
/* copy 32 bytes at a time */
L(du3_loop):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 24
+ sldi 8,7, 64-24
+#else
sldi 0,6, 24
srdi 8,7, 64-24
+#endif
or 0,0,8
ld 6,0(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 24
+ sldi 8,6, 64-24
+#else
sldi 0,7, 24
srdi 8,6, 64-24
+#endif
or 0,0,8
ld 7,8(5)
std 0,8(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 24
+ sldi 8,7, 64-24
+#else
sldi 0,6, 24
srdi 8,7, 64-24
+#endif
or 0,0,8
ld 6,16(5)
std 0,16(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 24
+ sldi 8,6, 64-24
+#else
sldi 0,7, 24
srdi 8,6, 64-24
+#endif
or 0,0,8
ld 7,24(5)
std 0,24(4)
@@ -815,8 +959,13 @@ L(du3_loop):
.align 4
L(du3_fini):
/* calculate and store the final DW */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 24
+ sldi 8,7, 64-24
+#else
sldi 0,6, 24
srdi 8,7, 64-24
+#endif
or 0,0,8
std 0,0(4)
b L(du_done)
@@ -832,13 +981,23 @@ L(du4_dox):
bf 30,L(du4_1dw)
/* there are at least two DWs to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 32
+ sldi 8,7, 64-32
+#else
sldi 0,6, 32
srdi 8,7, 64-32
+#endif
or 0,0,8
ld 6,16(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 32
+ sldi 8,6, 64-32
+#else
sldi 0,7, 32
srdi 8,6, 64-32
+#endif
or 0,0,8
ld 7,24(5)
std 0,8(4)
@@ -847,8 +1006,13 @@ L(du4_dox):
blt cr6,L(du4_fini) /* if total DWs = 3, then bypass loop */
bf 31,L(du4_loop)
/* there is a third DW to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 32
+ sldi 8,7, 64-32
+#else
sldi 0,6, 32
srdi 8,7, 64-32
+#endif
or 0,0,8
std 0,0(4)
mr 6,7
@@ -859,8 +1023,13 @@ L(du4_dox):
b L(du4_loop)
.align 4
L(du4_1dw):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 32
+ sldi 8,7, 64-32
+#else
sldi 0,6, 32
srdi 8,7, 64-32
+#endif
addi 5,5,16
or 0,0,8
bf 31,L(du4_loop)
@@ -872,23 +1041,43 @@ L(du4_1dw):
.align 4
/* copy 32 bytes at a time */
L(du4_loop):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 32
+ sldi 8,7, 64-32
+#else
sldi 0,6, 32
srdi 8,7, 64-32
+#endif
or 0,0,8
ld 6,0(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 32
+ sldi 8,6, 64-32
+#else
sldi 0,7, 32
srdi 8,6, 64-32
+#endif
or 0,0,8
ld 7,8(5)
std 0,8(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 32
+ sldi 8,7, 64-32
+#else
sldi 0,6, 32
srdi 8,7, 64-32
+#endif
or 0,0,8
ld 6,16(5)
std 0,16(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 32
+ sldi 8,6, 64-32
+#else
sldi 0,7, 32
srdi 8,6, 64-32
+#endif
or 0,0,8
ld 7,24(5)
std 0,24(4)
@@ -898,8 +1087,13 @@ L(du4_loop):
.align 4
L(du4_fini):
/* calculate and store the final DW */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 32
+ sldi 8,7, 64-32
+#else
sldi 0,6, 32
srdi 8,7, 64-32
+#endif
or 0,0,8
std 0,0(4)
b L(du_done)
@@ -909,13 +1103,23 @@ L(du5_do):
bf 30,L(du5_1dw)
/* there are at least two DWs to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 40
+ sldi 8,7, 64-40
+#else
sldi 0,6, 40
srdi 8,7, 64-40
+#endif
or 0,0,8
ld 6,16(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 40
+ sldi 8,6, 64-40
+#else
sldi 0,7, 40
srdi 8,6, 64-40
+#endif
or 0,0,8
ld 7,24(5)
std 0,8(4)
@@ -924,8 +1128,13 @@ L(du5_do):
blt cr6,L(du5_fini) /* if total DWs = 3, then bypass loop */
bf 31,L(du5_loop)
/* there is a third DW to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 40
+ sldi 8,7, 64-40
+#else
sldi 0,6, 40
srdi 8,7, 64-40
+#endif
or 0,0,8
std 0,0(4)
mr 6,7
@@ -936,8 +1145,13 @@ L(du5_do):
b L(du5_loop)
.align 4
L(du5_1dw):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 40
+ sldi 8,7, 64-40
+#else
sldi 0,6, 40
srdi 8,7, 64-40
+#endif
addi 5,5,16
or 0,0,8
bf 31,L(du5_loop)
@@ -949,23 +1163,43 @@ L(du5_1dw):
.align 4
/* copy 32 bytes at a time */
L(du5_loop):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 40
+ sldi 8,7, 64-40
+#else
sldi 0,6, 40
srdi 8,7, 64-40
+#endif
or 0,0,8
ld 6,0(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 40
+ sldi 8,6, 64-40
+#else
sldi 0,7, 40
srdi 8,6, 64-40
+#endif
or 0,0,8
ld 7,8(5)
std 0,8(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 40
+ sldi 8,7, 64-40
+#else
sldi 0,6, 40
srdi 8,7, 64-40
+#endif
or 0,0,8
ld 6,16(5)
std 0,16(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 40
+ sldi 8,6, 64-40
+#else
sldi 0,7, 40
srdi 8,6, 64-40
+#endif
or 0,0,8
ld 7,24(5)
std 0,24(4)
@@ -975,8 +1209,13 @@ L(du5_loop):
.align 4
L(du5_fini):
/* calculate and store the final DW */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 40
+ sldi 8,7, 64-40
+#else
sldi 0,6, 40
srdi 8,7, 64-40
+#endif
or 0,0,8
std 0,0(4)
b L(du_done)
@@ -986,13 +1225,23 @@ L(du6_do):
bf 30,L(du6_1dw)
/* there are at least two DWs to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 48
+ sldi 8,7, 64-48
+#else
sldi 0,6, 48
srdi 8,7, 64-48
+#endif
or 0,0,8
ld 6,16(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 48
+ sldi 8,6, 64-48
+#else
sldi 0,7, 48
srdi 8,6, 64-48
+#endif
or 0,0,8
ld 7,24(5)
std 0,8(4)
@@ -1001,8 +1250,13 @@ L(du6_do):
blt cr6,L(du6_fini) /* if total DWs = 3, then bypass loop */
bf 31,L(du6_loop)
/* there is a third DW to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 48
+ sldi 8,7, 64-48
+#else
sldi 0,6, 48
srdi 8,7, 64-48
+#endif
or 0,0,8
std 0,0(4)
mr 6,7
@@ -1013,8 +1267,13 @@ L(du6_do):
b L(du6_loop)
.align 4
L(du6_1dw):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 48
+ sldi 8,7, 64-48
+#else
sldi 0,6, 48
srdi 8,7, 64-48
+#endif
addi 5,5,16
or 0,0,8
bf 31,L(du6_loop)
@@ -1026,23 +1285,43 @@ L(du6_1dw):
.align 4
/* copy 32 bytes at a time */
L(du6_loop):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 48
+ sldi 8,7, 64-48
+#else
sldi 0,6, 48
srdi 8,7, 64-48
+#endif
or 0,0,8
ld 6,0(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 48
+ sldi 8,6, 64-48
+#else
sldi 0,7, 48
srdi 8,6, 64-48
+#endif
or 0,0,8
ld 7,8(5)
std 0,8(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 48
+ sldi 8,7, 64-48
+#else
sldi 0,6, 48
srdi 8,7, 64-48
+#endif
or 0,0,8
ld 6,16(5)
std 0,16(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 48
+ sldi 8,6, 64-48
+#else
sldi 0,7, 48
srdi 8,6, 64-48
+#endif
or 0,0,8
ld 7,24(5)
std 0,24(4)
@@ -1052,8 +1331,13 @@ L(du6_loop):
.align 4
L(du6_fini):
/* calculate and store the final DW */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 48
+ sldi 8,7, 64-48
+#else
sldi 0,6, 48
srdi 8,7, 64-48
+#endif
or 0,0,8
std 0,0(4)
b L(du_done)
@@ -1063,13 +1347,23 @@ L(du7_do):
bf 30,L(du7_1dw)
/* there are at least two DWs to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 56
+ sldi 8,7, 64-56
+#else
sldi 0,6, 56
srdi 8,7, 64-56
+#endif
or 0,0,8
ld 6,16(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 56
+ sldi 8,6, 64-56
+#else
sldi 0,7, 56
srdi 8,6, 64-56
+#endif
or 0,0,8
ld 7,24(5)
std 0,8(4)
@@ -1078,8 +1372,13 @@ L(du7_do):
blt cr6,L(du7_fini) /* if total DWs = 3, then bypass loop */
bf 31,L(du7_loop)
/* there is a third DW to copy */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 56
+ sldi 8,7, 64-56
+#else
sldi 0,6, 56
srdi 8,7, 64-56
+#endif
or 0,0,8
std 0,0(4)
mr 6,7
@@ -1090,8 +1389,13 @@ L(du7_do):
b L(du7_loop)
.align 4
L(du7_1dw):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 56
+ sldi 8,7, 64-56
+#else
sldi 0,6, 56
srdi 8,7, 64-56
+#endif
addi 5,5,16
or 0,0,8
bf 31,L(du7_loop)
@@ -1103,23 +1407,43 @@ L(du7_1dw):
.align 4
/* copy 32 bytes at a time */
L(du7_loop):
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 56
+ sldi 8,7, 64-56
+#else
sldi 0,6, 56
srdi 8,7, 64-56
+#endif
or 0,0,8
ld 6,0(5)
std 0,0(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 56
+ sldi 8,6, 64-56
+#else
sldi 0,7, 56
srdi 8,6, 64-56
+#endif
or 0,0,8
ld 7,8(5)
std 0,8(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 56
+ sldi 8,7, 64-56
+#else
sldi 0,6, 56
srdi 8,7, 64-56
+#endif
or 0,0,8
ld 6,16(5)
std 0,16(4)
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,7, 56
+ sldi 8,6, 64-56
+#else
sldi 0,7, 56
srdi 8,6, 64-56
+#endif
or 0,0,8
ld 7,24(5)
std 0,24(4)
@@ -1129,8 +1453,13 @@ L(du7_loop):
.align 4
L(du7_fini):
/* calculate and store the final DW */
+#ifdef __LITTLE_ENDIAN__
+ srdi 0,6, 56
+ sldi 8,7, 64-56
+#else
sldi 0,6, 56
srdi 8,7, 64-56
+#endif
or 0,0,8
std 0,0(4)
b L(du_done)
diff --git a/sysdeps/powerpc/powerpc64/power6/memset.S b/sysdeps/powerpc/powerpc64/power6/memset.S
index 3e8ae2d25e..15a83b74fa 100644
--- a/sysdeps/powerpc/powerpc64/power6/memset.S
+++ b/sysdeps/powerpc/powerpc64/power6/memset.S
@@ -47,14 +47,14 @@ L(_memset):
/* Align to doubleword boundary. */
cmpldi cr5, rLEN, 31
- rlwimi rCHR, rCHR, 8, 16, 23 /* Replicate byte to halfword. */
+ insrdi rCHR, rCHR, 8, 48 /* Replicate byte to halfword. */
beq+ L(aligned2)
mtcrf 0x01, rMEMP0
subfic rALIGN, rALIGN, 8
cror 28,30,31 /* Detect odd word aligned. */
add rMEMP, rMEMP, rALIGN
sub rLEN, rLEN, rALIGN
- rlwimi rCHR, rCHR, 16, 0, 15 /* Replicate halfword to word. */
+ insrdi rCHR, rCHR, 16, 32 /* Replicate halfword to word. */
bt 29, L(g4)
/* Process the even word of doubleword. */
bf+ 31, L(g2)
@@ -76,14 +76,14 @@ L(g0):
/* Handle the case of size < 31. */
L(aligned2):
- rlwimi rCHR, rCHR, 16, 0, 15 /* Replicate halfword to word. */
+ insrdi rCHR, rCHR, 16, 32 /* Replicate halfword to word. */
L(aligned):
mtcrf 0x01, rLEN
ble cr5, L(medium)
/* Align to 32-byte boundary. */
andi. rALIGN, rMEMP, 0x18
subfic rALIGN, rALIGN, 0x20
- insrdi rCHR,rCHR,32,0 /* Replicate word to double word. */
+ insrdi rCHR, rCHR, 32, 0 /* Replicate word to double word. */
beq L(caligned)
mtcrf 0x01, rALIGN
add rMEMP, rMEMP, rALIGN
@@ -344,7 +344,7 @@ L(le4):
/* Memset of 0-31 bytes. */
.align 5
L(medium):
- insrdi rCHR,rCHR,32,0 /* Replicate word to double word. */
+ insrdi rCHR, rCHR, 32, 0 /* Replicate word to double word. */
cmpldi cr1, rLEN, 16
L(medium_tail2):
add rMEMP, rMEMP, rLEN
@@ -379,6 +379,7 @@ L(medium_28t):
END_GEN_TB (memset,TB_TOCLESS)
libc_hidden_builtin_def (memset)
+#ifndef NO_BZERO_IMPL
/* Copied from bzero.S to prevent the linker from inserting a stub
between bzero and memset. */
ENTRY (__bzero)
@@ -389,3 +390,4 @@ ENTRY (__bzero)
END_GEN_TB (__bzero,TB_TOCLESS)
weak_alias (__bzero, bzero)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/power6/multiarch/Implies b/sysdeps/powerpc/powerpc64/power6/multiarch/Implies
new file mode 100644
index 0000000000..2ebe304fa6
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power6/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power5+/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power6/wcschr.c b/sysdeps/powerpc/powerpc64/power6/wcschr.c
index 9136c02cb5..ae04a130cc 100644
--- a/sysdeps/powerpc/powerpc64/power6/wcschr.c
+++ b/sysdeps/powerpc/powerpc64/power6/wcschr.c
@@ -1 +1 @@
-#include "../../powerpc32/power6/wcschr.c"
+#include <sysdeps/powerpc/power6/wcschr.c>
diff --git a/sysdeps/powerpc/powerpc64/power6/wcscpy.c b/sysdeps/powerpc/powerpc64/power6/wcscpy.c
index 57b706ab99..722c8f995b 100644
--- a/sysdeps/powerpc/powerpc64/power6/wcscpy.c
+++ b/sysdeps/powerpc/powerpc64/power6/wcscpy.c
@@ -1 +1 @@
-#include "../../powerpc32/power6/wcscpy.c"
+#include <sysdeps/powerpc/power6/wcscpy.c>
diff --git a/sysdeps/powerpc/powerpc64/power6/wcsrchr.c b/sysdeps/powerpc/powerpc64/power6/wcsrchr.c
index 2327c05b04..b86472d7bd 100644
--- a/sysdeps/powerpc/powerpc64/power6/wcsrchr.c
+++ b/sysdeps/powerpc/powerpc64/power6/wcsrchr.c
@@ -1 +1 @@
-#include "../../powerpc32/power6/wcsrchr.c"
+#include <sysdeps/powerpc/power6/wcsrchr.c>
diff --git a/sysdeps/powerpc/powerpc64/power6/wordcopy.c b/sysdeps/powerpc/powerpc64/power6/wordcopy.c
deleted file mode 100644
index 751789339d..0000000000
--- a/sysdeps/powerpc/powerpc64/power6/wordcopy.c
+++ /dev/null
@@ -1,217 +0,0 @@
-/* _memcopy.c -- subroutines for memory copy functions.
- Copyright (C) 1991-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Torbjorn Granlund (tege@sics.se).
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-/* BE VERY CAREFUL IF YOU CHANGE THIS CODE...! */
-
-#include <stddef.h>
-#include <memcopy.h>
-
-/* _wordcopy_fwd_aligned -- Copy block beginning at SRCP to
- block beginning at DSTP with LEN `op_t' words (not LEN bytes!).
- Both SRCP and DSTP should be aligned for memory operations on `op_t's. */
-
-void
-_wordcopy_fwd_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
-{
- op_t a0, a1;
-
- if (len & 1)
- {
- ((op_t *) dstp)[0] = ((op_t *) srcp)[0];
-
- if (len == 1)
- return;
- srcp += OPSIZ;
- dstp += OPSIZ;
- len -= 1;
- }
-
- do
- {
- a0 = ((op_t *) srcp)[0];
- a1 = ((op_t *) srcp)[1];
- ((op_t *) dstp)[0] = a0;
- ((op_t *) dstp)[1] = a1;
-
- srcp += 2 * OPSIZ;
- dstp += 2 * OPSIZ;
- len -= 2;
- }
- while (len != 0);
-}
-
-#define fwd_align_merge(align) \
- do \
- { \
- a1 = ((op_t *) srcp)[1]; \
- a2 = ((op_t *) srcp)[2]; \
- ((op_t *) dstp)[0] = MERGE (a0, align*8, a1, (64-align*8)); \
- ((op_t *) dstp)[1] = MERGE (a1, align*8, a2, (64-align*8)); \
- a0 = a2; \
- srcp += 2 * OPSIZ; \
- dstp += 2 * OPSIZ; \
- len -= 2; \
- } \
- while (len != 0)
-
-
-/* _wordcopy_fwd_dest_aligned -- Copy block beginning at SRCP to
- block beginning at DSTP with LEN `op_t' words (not LEN bytes!).
- DSTP should be aligned for memory operations on `op_t's, but SRCP must
- *not* be aligned. */
-
-void
-_wordcopy_fwd_dest_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
-{
- op_t a0, a1, a2;
- int sh_1, sh_2;
- int align;
-
- /* Calculate how to shift a word read at the memory operation
- aligned srcp to make it aligned for copy. */
-
- align = srcp % OPSIZ;
- sh_1 = 8 * (srcp % OPSIZ);
- sh_2 = 8 * OPSIZ - sh_1;
-
- /* Make SRCP aligned by rounding it down to the beginning of the `op_t'
- it points in the middle of. */
- srcp &= -OPSIZ;
- a0 = ((op_t *) srcp)[0];
-
- if (len & 1)
- {
- a1 = ((op_t *) srcp)[1];
- ((op_t *) dstp)[0] = MERGE (a0, sh_1, a1, sh_2);
-
- if (len == 1)
- return;
-
- a0 = a1;
- srcp += OPSIZ;
- dstp += OPSIZ;
- len -= 1;
- }
-
- fwd_align_merge (align);
-
-}
-
-/* _wordcopy_bwd_aligned -- Copy block finishing right before
- SRCP to block finishing right before DSTP with LEN `op_t' words
- (not LEN bytes!). Both SRCP and DSTP should be aligned for memory
- operations on `op_t's. */
-
-void
-_wordcopy_bwd_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
-{
- op_t a0, a1;
-
- if (len & 1)
- {
- srcp -= OPSIZ;
- dstp -= OPSIZ;
- ((op_t *) dstp)[0] = ((op_t *) srcp)[0];
-
- if (len == 1)
- return;
- len -= 1;
- }
-
- do
- {
- srcp -= 2 * OPSIZ;
- dstp -= 2 * OPSIZ;
-
- a1 = ((op_t *) srcp)[1];
- a0 = ((op_t *) srcp)[0];
- ((op_t *) dstp)[1] = a1;
- ((op_t *) dstp)[0] = a0;
-
- len -= 2;
- }
- while (len != 0);
-}
-
-#define bwd_align_merge(align) \
- do \
- { \
- srcp -= 2 * OPSIZ; \
- dstp -= 2 * OPSIZ; \
- a1 = ((op_t *) srcp)[1]; \
- a0 = ((op_t *) srcp)[0]; \
- ((op_t *) dstp)[1] = MERGE (a1, align*8, a2, (64-align*8)); \
- ((op_t *) dstp)[0] = MERGE (a0, align*8, a1, (64-align*8)); \
- a2 = a0; \
- len -= 2; \
- } \
- while (len != 0)
-
-/* _wordcopy_bwd_dest_aligned -- Copy block finishing right
- before SRCP to block finishing right before DSTP with LEN `op_t'
- words (not LEN bytes!). DSTP should be aligned for memory
- operations on `op_t', but SRCP must *not* be aligned. */
-
-void
-_wordcopy_bwd_dest_aligned (dstp, srcp, len)
- long int dstp;
- long int srcp;
- size_t len;
-{
- op_t a0, a1, a2;
- int sh_1, sh_2;
- int align;
-
- /* Calculate how to shift a word read at the memory operation
- aligned srcp to make it aligned for copy. */
-
- align = srcp % OPSIZ;
- sh_1 = 8 * (srcp % OPSIZ);
- sh_2 = 8 * OPSIZ - sh_1;
-
- /* Make srcp aligned by rounding it down to the beginning of the op_t
- it points in the middle of. */
- srcp &= -OPSIZ;
- a2 = ((op_t *) srcp)[0];
-
- if (len & 1)
- {
- srcp -= OPSIZ;
- dstp -= OPSIZ;
- a1 = ((op_t *) srcp)[0];
- ((op_t *) dstp)[0] = MERGE (a1, sh_1, a2, sh_2);
-
- if (len == 1)
- return;
-
- a2 = a1;
- len -= 1;
- }
-
- bwd_align_merge (align);
-}
diff --git a/sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies
new file mode 100644
index 0000000000..f54ff23500
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power6x/fpu/multiarch/Implies
@@ -0,0 +1 @@
+sysdeps/powerpc/powerpc64/power6/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power7/add_n.S b/sysdeps/powerpc/powerpc64/power7/add_n.S
new file mode 100644
index 0000000000..d90e4fce0d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power7/add_n.S
@@ -0,0 +1,98 @@
+/* PowerPC64 mpn_lshift -- mpn_add_n/mpn_sub_n -- mpn addition and
+ subtraction.
+ Copyright (C) 2003-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+/* cycles/limb
+ * POWER7 2.18
+ */
+
+#ifdef USE_AS_SUB
+# define FUNC __mpn_sub_n
+# define ADDSUBC subfe
+#else
+# define FUNC __mpn_add_n
+# define ADDSUBC adde
+#endif
+
+#define RP r3
+#define UP r4
+#define VP r5
+#define N r6
+
+EALIGN(FUNC, 5, 0)
+#ifdef USE_AS_SUB
+ addic r0, r0, 0
+#else
+ addic r0, r1, -1
+#endif
+ andi. r7, N, 1
+ beq L(bx0)
+
+ ld r7, 0(UP)
+ ld r9, r0(VP)
+ ADDSUBC r11, r9, r7
+ std r11, r0(RP)
+ cmpldi N, N, 1
+ beq N, L(end)
+ addi UP, UP, 8
+ addi VP, VP, 8
+ addi RP, RP, 8
+
+L(bx0): addi r0, N, 2
+ srdi r0, r0, 2
+ mtctr r0
+
+ andi. r7, N, 2
+ bne L(mid)
+
+ addi UP, UP, 16
+ addi VP, VP, 16
+ addi RP, RP, 16
+
+ .align 5
+L(top): ld r6, -16(UP)
+ ld r7, -8(UP)
+ ld r8, -16(VP)
+ ld r9, -8(VP)
+ ADDSUBC r10, r8, N
+ ADDSUBC r11, r9, r7
+ std r10, -16(RP)
+ std r11, -8(RP)
+L(mid): ld r6, 0(UP)
+ ld r7, 8(UP)
+ ld r8, 0(VP)
+ ld r9, 8(VP)
+ ADDSUBC r10, r8, N
+ ADDSUBC r11, r9, r7
+ std r10, 0(RP)
+ std r11, 8(RP)
+ addi UP, UP, 32
+ addi VP, VP, 32
+ addi RP, RP, 32
+ bdnz L(top)
+
+L(end): subfe r3, r0, r0
+#ifdef USE_AS_SUB
+ neg r3, r3
+#else
+ addi r3, r3, 1
+#endif
+ blr
+END(FUNC)
diff --git a/sysdeps/powerpc/powerpc64/power7/fpu/Implies b/sysdeps/powerpc/powerpc64/power7/fpu/Implies
new file mode 100644
index 0000000000..410d289a6d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power7/fpu/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power6/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power7/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/power7/fpu/multiarch/Implies
new file mode 100644
index 0000000000..410d289a6d
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power7/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power6/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S b/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S
index d0071c7658..ebec0e0bad 100644
--- a/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S
+++ b/sysdeps/powerpc/powerpc64/power7/fpu/s_finite.S
@@ -39,10 +39,8 @@ EALIGN (__finite, 4, 0)
stfd fp1,-16(r1) /* Transfer FP to GPR's. */
ori 2,2,0 /* Force a new dispatch group. */
-
- lhz r4,-16(r1) /* Fetch the upper portion of the high word of
- the FP value (where the exponent and sign bits
- are). */
+ lhz r4,-16+HISHORT(r1) /* Fetch the upper 16 bits of the FP value
+ (biased exponent and sign bit). */
clrlwi r4,r4,17 /* r4 = abs(r4). */
cmpwi cr7,r4,0x7ff0 /* r4 == 0x7ff0? */
bltlr cr7 /* LT means finite, other non-finite. */
diff --git a/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S b/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S
index 1aea12383f..8d088db5af 100644
--- a/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S
+++ b/sysdeps/powerpc/powerpc64/power7/fpu/s_isinf.S
@@ -38,9 +38,8 @@ EALIGN (__isinf, 4, 0)
stfd fp1,-16(r1) /* Transfer FP to GPR's. */
ori 2,2,0 /* Force a new dispatch group. */
- lhz r4,-16(r1) /* Fetch the upper portion of the high word of
- the FP value (where the exponent and sign bits
- are). */
+ lhz r4,-16+HISHORT(r1) /* Fetch the upper 16 bits of the FP value
+ (biased exponent and sign bit). */
cmpwi cr7,r4,0x7ff0 /* r4 == 0x7ff0? */
li r3,1
beqlr cr7 /* EQ means INF, otherwise -INF. */
diff --git a/sysdeps/powerpc/powerpc64/power7/fpu/s_logb.c b/sysdeps/powerpc/powerpc64/power7/fpu/s_logb.c
index ff3a9e0c77..2599c771d9 100644
--- a/sysdeps/powerpc/powerpc64/power7/fpu/s_logb.c
+++ b/sysdeps/powerpc/powerpc64/power7/fpu/s_logb.c
@@ -1 +1 @@
-#include <sysdeps/powerpc/powerpc32/power7/fpu/s_logb.c>
+#include <sysdeps/powerpc/power7/fpu/s_logb.c>
diff --git a/sysdeps/powerpc/powerpc64/power7/fpu/s_logbf.c b/sysdeps/powerpc/powerpc64/power7/fpu/s_logbf.c
index e79a28f775..7a5a8032e0 100644
--- a/sysdeps/powerpc/powerpc64/power7/fpu/s_logbf.c
+++ b/sysdeps/powerpc/powerpc64/power7/fpu/s_logbf.c
@@ -1 +1 @@
-#include <sysdeps/powerpc/powerpc32/power7/fpu/s_logbf.c>
+#include <sysdeps/powerpc/power7/fpu/s_logbf.c>
diff --git a/sysdeps/powerpc/powerpc64/power7/fpu/s_logbl.c b/sysdeps/powerpc/powerpc64/power7/fpu/s_logbl.c
index 463e411b4e..524ae2c78d 100644
--- a/sysdeps/powerpc/powerpc64/power7/fpu/s_logbl.c
+++ b/sysdeps/powerpc/powerpc64/power7/fpu/s_logbl.c
@@ -1 +1 @@
-#include <sysdeps/powerpc/powerpc32/power7/fpu/s_logbl.c>
+#include <sysdeps/powerpc/power7/fpu/s_logbl.c>
diff --git a/sysdeps/powerpc/powerpc64/power7/memchr.S b/sysdeps/powerpc/powerpc64/power7/memchr.S
index 3416897f50..421d6d4660 100644
--- a/sysdeps/powerpc/powerpc64/power7/memchr.S
+++ b/sysdeps/powerpc/powerpc64/power7/memchr.S
@@ -22,112 +22,115 @@
/* int [r3] memchr (char *s [r3], int byte [r4], int size [r5]) */
.machine power7
ENTRY (__memchr)
- CALL_MCOUNT 2
+ CALL_MCOUNT 3
dcbt 0,r3
clrrdi r8,r3,3
- rlwimi r4,r4,8,16,23
- rlwimi r4,r4,16,0,15
+ insrdi r4,r4,8,48
add r7,r3,r5 /* Calculate the last acceptable address. */
+ insrdi r4,r4,16,32
cmpldi r5,32
+ li r9, -1
+ rlwinm r6,r3,3,26,28 /* Calculate padding. */
insrdi r4,r4,32,0
+ addi r7,r7,-1
+#ifdef __LITTLE_ENDIAN__
+ sld r9,r9,r6
+#else
+ srd r9,r9,r6
+#endif
ble L(small_range)
- cmpld cr7,r3,r7 /* Compare the starting address (r3) with the
- ending address (r7). If (r3 >= r7),
- the size passed in was zero or negative. */
- ble cr7,L(proceed)
-
- li r7,-1 /* Artificially set our ending address (r7)
- such that we will exit early. */
-
-L(proceed):
- rlwinm r6,r3,3,26,28 /* Calculate padding. */
- cmpldi cr6,r6,0 /* cr6 == Do we have padding? */
ld r12,0(r8) /* Load doubleword from memory. */
- cmpb r10,r12,r4 /* Check for BYTEs in DWORD1. */
- beq cr6,L(proceed_no_padding)
- sld r10,r10,r6
- srd r10,r10,r6
-L(proceed_no_padding):
- cmpldi cr7,r10,0 /* Does r10 indicate we got a hit? */
+ cmpb r3,r12,r4 /* Check for BYTEs in DWORD1. */
+ and r3,r3,r9
+ clrldi r5,r7,61 /* Byte count - 1 in last dword. */
+ clrrdi r7,r7,3 /* Address of last doubleword. */
+ cmpldi cr7,r3,0 /* Does r3 indicate we got a hit? */
bne cr7,L(done)
- /* See if we are at the last acceptable address yet. */
- addi r9,r8,8
- cmpld cr6,r9,r7
- bge cr6,L(null)
-
mtcrf 0x01,r8
/* Are we now aligned to a quadword boundary? If so, skip to
the main loop. Otherwise, go through the alignment code. */
-
bt 28,L(loop_setup)
/* Handle DWORD2 of pair. */
ldu r12,8(r8)
- cmpb r10,r12,r4
- cmpldi cr7,r10,0
+ cmpb r3,r12,r4
+ cmpldi cr7,r3,0
bne cr7,L(done)
- /* Are we done already? */
- addi r9,r8,8
- cmpld cr6,r9,r7
- bge cr6,L(null)
-
L(loop_setup):
- sub r5,r7,r9
- srdi r6,r5,4 /* Number of loop iterations. */
+ /* The last dword we want to read in the loop below is the one
+ containing the last byte of the string, ie. the dword at
+ (s + size - 1) & ~7, or r7. The first dword read is at
+ r8 + 8, we read 2 * cnt dwords, so the last dword read will
+ be at r8 + 8 + 16 * cnt - 8. Solving for cnt gives
+ cnt = (r7 - r8) / 16 */
+ sub r6,r7,r8
+ srdi r6,r6,4 /* Number of loop iterations. */
mtctr r6 /* Setup the counter. */
- b L(loop)
- /* Main loop to look for BYTE backwards in the string. Since
- it's a small loop (< 8 instructions), align it to 32-bytes. */
- .p2align 5
+
+ /* Main loop to look for BYTE in the string. Since
+ it's a small loop (8 instructions), align it to 32-bytes. */
+ .align 5
L(loop):
/* Load two doublewords, compare and merge in a
single register for speed. This is an attempt
to speed up the byte-checking process for bigger strings. */
ld r12,8(r8)
ldu r11,16(r8)
- cmpb r10,r12,r4
+ cmpb r3,r12,r4
cmpb r9,r11,r4
- or r5,r9,r10 /* Merge everything in one doubleword. */
- cmpldi cr7,r5,0
+ or r6,r9,r3 /* Merge everything in one doubleword. */
+ cmpldi cr7,r6,0
bne cr7,L(found)
bdnz L(loop)
- /* We're here because the counter reached 0, and that means we
- didn't have any matches for BYTE in the whole range. */
- subi r11,r7,8
- cmpld cr6,r8,r11
- blt cr6,L(loop_small)
- b L(null)
+ /* We may have one more dword to read. */
+ cmpld r8,r7
+ beqlr
+ ldu r12,8(r8)
+ cmpb r3,r12,r4
+ cmpldi cr6,r3,0
+ bne cr6,L(done)
+ blr
+
+ .align 4
+L(found):
/* OK, one (or both) of the doublewords contains BYTE. Check
the first doubleword and decrement the address in case the first
doubleword really contains BYTE. */
- .align 4
-L(found):
- cmpldi cr6,r10,0
+ cmpldi cr6,r3,0
addi r8,r8,-8
bne cr6,L(done)
/* BYTE must be in the second doubleword. Adjust the address
- again and move the result of cmpb to r10 so we can calculate the
+ again and move the result of cmpb to r3 so we can calculate the
pointer. */
- mr r10,r9
+ mr r3,r9
addi r8,r8,8
- /* r10 has the output of the cmpb instruction, that is, it contains
+ /* r3 has the output of the cmpb instruction, that is, it contains
0xff in the same position as BYTE in the original
doubleword from the string. Use that to calculate the pointer.
We need to make sure BYTE is *before* the end of the range. */
L(done):
- cntlzd r0,r10 /* Count leading zeroes before the match. */
- srdi r0,r0,3 /* Convert leading zeroes to bytes. */
+#ifdef __LITTLE_ENDIAN__
+ addi r0,r3,-1
+ andc r0,r0,r3
+ popcntd r0,r0 /* Count trailing zeros. */
+#else
+ cntlzd r0,r3 /* Count leading zeros before the match. */
+#endif
+ cmpld r8,r7 /* Are we on the last dword? */
+ srdi r0,r0,3 /* Convert leading/trailing zeros to bytes. */
add r3,r8,r0
- cmpld r3,r7
- bge L(null)
+ cmpld cr7,r0,r5 /* If on the last dword, check byte offset. */
+ bnelr
+ blelr cr7
+ li r3,0
blr
.align 4
@@ -139,67 +142,44 @@ L(null):
.align 4
L(small_range):
cmpldi r5,0
- rlwinm r6,r3,3,26,28 /* Calculate padding. */
- beq L(null) /* This branch is for the cmpldi r5,0 above. */
+ beq L(null)
ld r12,0(r8) /* Load word from memory. */
- cmpldi cr6,r6,0 /* cr6 == Do we have padding? */
- cmpb r10,r12,r4 /* Check for BYTE in DWORD1. */
- /* If no padding, skip the shifts. */
- beq cr6,L(small_no_padding)
- sld r10,r10,r6
- srd r10,r10,r6
-L(small_no_padding):
- cmpldi cr7,r10,0
+ cmpb r3,r12,r4 /* Check for BYTE in DWORD1. */
+ and r3,r3,r9
+ cmpldi cr7,r3,0
+ clrldi r5,r7,61 /* Byte count - 1 in last dword. */
+ clrrdi r7,r7,3 /* Address of last doubleword. */
+ cmpld r8,r7 /* Are we done already? */
bne cr7,L(done)
+ beqlr
- /* Are we done already? */
- addi r9,r8,8
- cmpld r9,r7
- bge L(null)
- /* If we're not done, drop through into loop_small. */
-
-L(loop_small): /* loop_small has been unrolled. */
ldu r12,8(r8)
- cmpb r10,r12,r4
- addi r9,r8,8
- cmpldi cr6,r10,0
- cmpld r9,r7
+ cmpb r3,r12,r4
+ cmpldi cr6,r3,0
+ cmpld r8,r7
bne cr6,L(done) /* Found something. */
- bge L(null) /* Hit end of string (length). */
+ beqlr /* Hit end of string (length). */
ldu r12,8(r8)
- cmpb r10,r12,r4
- addi r9,r8,8
- cmpldi cr6,r10,0
- cmpld r9,r7
- bne cr6,L(done) /* Found something. */
- bge L(null)
+ cmpb r3,r12,r4
+ cmpldi cr6,r3,0
+ cmpld r8,r7
+ bne cr6,L(done)
+ beqlr
ldu r12,8(r8)
- subi r11,r7,8
- cmpb r10,r12,r4
- cmpldi cr6,r10,0
- ori r2,r2,0 /* Force a dispatch group. */
+ cmpb r3,r12,r4
+ cmpldi cr6,r3,0
+ cmpld r8,r7
bne cr6,L(done)
+ beqlr
- cmpld r8,r11 /* At end of range? */
- bge L(null)
-
- /* For most cases we will never get here. Under some combinations of
- padding + length there is a leftover double that still needs to be
- checked. */
ldu r12,8(r8)
- cmpb r10,r12,r4
- addi r9,r8,8
- cmpldi cr6,r10,0
- cmpld r9,r7
- bne cr6,L(done) /* Found something. */
-
- /* Save a branch and exit directly. */
- li r3,0
+ cmpb r3,r12,r4
+ cmpldi cr6,r3,0
+ bne cr6,L(done)
blr
-
END (__memchr)
weak_alias (__memchr, memchr)
libc_hidden_builtin_def (memchr)
diff --git a/sysdeps/powerpc/powerpc64/power7/memcmp.S b/sysdeps/powerpc/powerpc64/power7/memcmp.S
index f190c64611..6851cdc75b 100644
--- a/sysdeps/powerpc/powerpc64/power7/memcmp.S
+++ b/sysdeps/powerpc/powerpc64/power7/memcmp.S
@@ -23,10 +23,9 @@
size_t size [r5]) */
.machine power7
-EALIGN (memcmp,4,0)
+EALIGN (memcmp, 4, 0)
CALL_MCOUNT 3
-#define rTMP r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -37,354 +36,557 @@ EALIGN (memcmp,4,0)
#define rWORD4 r9 /* next word in s2 */
#define rWORD5 r10 /* next word in s1 */
#define rWORD6 r11 /* next word in s2 */
-#define rBITDIF r12 /* bits that differ in s1 & s2 words */
#define rWORD7 r30 /* next word in s1 */
#define rWORD8 r31 /* next word in s2 */
- xor rTMP,rSTR2,rSTR1
- cmpldi cr6,rN,0
- cmpldi cr1,rN,12
- clrldi. rTMP,rTMP,61
- clrldi rBITDIF,rSTR1,61
- cmpldi cr5,rBITDIF,0
- beq- cr6,L(zeroLength)
- dcbt 0,rSTR1
- dcbt 0,rSTR2
+ xor r0, rSTR2, rSTR1
+ cmpldi cr6, rN, 0
+ cmpldi cr1, rN, 12
+ clrldi. r0, r0, 61
+ clrldi r12, rSTR1, 61
+ cmpldi cr5, r12, 0
+ beq- cr6, L(zeroLength)
+ dcbt 0, rSTR1
+ dcbt 0, rSTR2
/* If less than 8 bytes or not aligned, use the unaligned
byte loop. */
- blt cr1,L(bytealigned)
- std rWORD8,-8(r1)
- cfi_offset(rWORD8,-8)
- std rWORD7,-16(r1)
- cfi_offset(rWORD7,-16)
+ blt cr1, L(bytealigned)
+ std rWORD8, -8(r1)
+ cfi_offset(rWORD8, -8)
+ std rWORD7, -16(r1)
+ cfi_offset(rWORD7, -16)
bne L(unaligned)
/* At this point we know both strings have the same alignment and the
- compare length is at least 8 bytes. rBITDIF contains the low order
+ compare length is at least 8 bytes. r12 contains the low order
3 bits of rSTR1 and cr5 contains the result of the logical compare
- of rBITDIF to 0. If rBITDIF == 0 then we are already double word
- aligned and can perform the DWaligned loop.
+ of r12 to 0. If r12 == 0 then we are already double word
+ aligned and can perform the DW aligned loop.
Otherwise we know the two strings have the same alignment (but not
- yet DW). So we can force the string addresses to the next lower DW
- boundary and special case this first DW word using shift left to
+ yet DW). So we force the string addresses to the next lower DW
+ boundary and special case this first DW using shift left to
eliminate bits preceding the first byte. Since we want to join the
- normal (DWaligned) compare loop, starting at the second double word,
+ normal (DW aligned) compare loop, starting at the second double word,
we need to adjust the length (rN) and special case the loop
- versioning for the first DW. This insures that the loop count is
- correct and the first DW (shifted) is in the expected resister pair. */
+ versioning for the first DW. This ensures that the loop count is
+ correct and the first DW (shifted) is in the expected register pair. */
.align 4
L(samealignment):
- clrrdi rSTR1,rSTR1,3
- clrrdi rSTR2,rSTR2,3
- beq cr5,L(DWaligned)
- add rN,rN,rBITDIF
- sldi r11,rBITDIF,3
- srdi rTMP,rN,5 /* Divide by 32 */
- andi. rBITDIF,rN,24 /* Get the DW remainder */
- ld rWORD1,0(rSTR1)
- ld rWORD2,0(rSTR2)
- cmpldi cr1,rBITDIF,16
- cmpldi cr7,rN,32
- clrldi rN,rN,61
+ clrrdi rSTR1, rSTR1, 3
+ clrrdi rSTR2, rSTR2, 3
+ beq cr5, L(DWaligned)
+ add rN, rN, r12
+ sldi rWORD6, r12, 3
+ srdi r0, rN, 5 /* Divide by 32 */
+ andi. r12, rN, 24 /* Get the DW remainder */
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 0(rSTR1)
+ ld rWORD2, 0(rSTR2)
+#endif
+ cmpldi cr1, r12, 16
+ cmpldi cr7, rN, 32
+ clrldi rN, rN, 61
beq L(dPs4)
- mtctr rTMP
- bgt cr1,L(dPs3)
- beq cr1,L(dPs2)
+ mtctr r0
+ bgt cr1, L(dPs3)
+ beq cr1, L(dPs2)
/* Remainder is 8 */
.align 3
L(dsP1):
- sld rWORD5,rWORD1,r11
- sld rWORD6,rWORD2,r11
- cmpld cr5,rWORD5,rWORD6
- blt cr7,L(dP1x)
+ sld rWORD5, rWORD1, rWORD6
+ sld rWORD6, rWORD2, rWORD6
+ cmpld cr5, rWORD5, rWORD6
+ blt cr7, L(dP1x)
/* Do something useful in this cycle since we have to branch anyway. */
- ld rWORD1,8(rSTR1)
- ld rWORD2,8(rSTR2)
- cmpld cr0,rWORD1,rWORD2
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 8(rSTR1)
+ ld rWORD2, 8(rSTR2)
+#endif
+ cmpld cr7, rWORD1, rWORD2
b L(dP1e)
/* Remainder is 16 */
.align 4
L(dPs2):
- sld rWORD5,rWORD1,r11
- sld rWORD6,rWORD2,r11
- cmpld cr6,rWORD5,rWORD6
- blt cr7,L(dP2x)
+ sld rWORD5, rWORD1, rWORD6
+ sld rWORD6, rWORD2, rWORD6
+ cmpld cr6, rWORD5, rWORD6
+ blt cr7, L(dP2x)
/* Do something useful in this cycle since we have to branch anyway. */
- ld rWORD7,8(rSTR1)
- ld rWORD8,8(rSTR2)
- cmpld cr5,rWORD7,rWORD8
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD7, 8(rSTR1)
+ ld rWORD8, 8(rSTR2)
+#endif
+ cmpld cr5, rWORD7, rWORD8
b L(dP2e)
/* Remainder is 24 */
.align 4
L(dPs3):
- sld rWORD3,rWORD1,r11
- sld rWORD4,rWORD2,r11
- cmpld cr1,rWORD3,rWORD4
+ sld rWORD3, rWORD1, rWORD6
+ sld rWORD4, rWORD2, rWORD6
+ cmpld cr1, rWORD3, rWORD4
b L(dP3e)
/* Count is a multiple of 32, remainder is 0 */
.align 4
L(dPs4):
- mtctr rTMP
- sld rWORD1,rWORD1,r11
- sld rWORD2,rWORD2,r11
- cmpld cr0,rWORD1,rWORD2
+ mtctr r0
+ sld rWORD1, rWORD1, rWORD6
+ sld rWORD2, rWORD2, rWORD6
+ cmpld cr7, rWORD1, rWORD2
b L(dP4e)
/* At this point we know both strings are double word aligned and the
compare length is at least 8 bytes. */
.align 4
L(DWaligned):
- andi. rBITDIF,rN,24 /* Get the DW remainder */
- srdi rTMP,rN,5 /* Divide by 32 */
- cmpldi cr1,rBITDIF,16
- cmpldi cr7,rN,32
- clrldi rN,rN,61
+ andi. r12, rN, 24 /* Get the DW remainder */
+ srdi r0, rN, 5 /* Divide by 32 */
+ cmpldi cr1, r12, 16
+ cmpldi cr7, rN, 32
+ clrldi rN, rN, 61
beq L(dP4)
- bgt cr1,L(dP3)
- beq cr1,L(dP2)
+ bgt cr1, L(dP3)
+ beq cr1, L(dP2)
/* Remainder is 8 */
.align 4
L(dP1):
- mtctr rTMP
+ mtctr r0
/* Normally we'd use rWORD7/rWORD8 here, but since we might exit early
(8-15 byte compare), we want to use only volatile registers. This
means we can avoid restoring non-volatile registers since we did not
change any on the early exit path. The key here is the non-early
exit path only cares about the condition code (cr5), not about which
register pair was used. */
- ld rWORD5,0(rSTR1)
- ld rWORD6,0(rSTR2)
- cmpld cr5,rWORD5,rWORD6
- blt cr7,L(dP1x)
- ld rWORD1,8(rSTR1)
- ld rWORD2,8(rSTR2)
- cmpld cr0,rWORD1,rWORD2
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD5, 0(rSTR1)
+ ld rWORD6, 0(rSTR2)
+#endif
+ cmpld cr5, rWORD5, rWORD6
+ blt cr7, L(dP1x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 8(rSTR1)
+ ld rWORD2, 8(rSTR2)
+#endif
+ cmpld cr7, rWORD1, rWORD2
L(dP1e):
- ld rWORD3,16(rSTR1)
- ld rWORD4,16(rSTR2)
- cmpld cr1,rWORD3,rWORD4
- ld rWORD5,24(rSTR1)
- ld rWORD6,24(rSTR2)
- cmpld cr6,rWORD5,rWORD6
- bne cr5,L(dLcr5)
- bne cr0,L(dLcr0)
-
- ldu rWORD7,32(rSTR1)
- ldu rWORD8,32(rSTR2)
- bne cr1,L(dLcr1)
- cmpld cr5,rWORD7,rWORD8
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD3, 16(rSTR1)
+ ld rWORD4, 16(rSTR2)
+#endif
+ cmpld cr1, rWORD3, rWORD4
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD5, 24(rSTR1)
+ ld rWORD6, 24(rSTR2)
+#endif
+ cmpld cr6, rWORD5, rWORD6
+ bne cr5, L(dLcr5x)
+ bne cr7, L(dLcr7x)
+
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ldu rWORD7, 32(rSTR1)
+ ldu rWORD8, 32(rSTR2)
+#endif
+ bne cr1, L(dLcr1)
+ cmpld cr5, rWORD7, rWORD8
bdnz L(dLoop)
- bne cr6,L(dLcr6)
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ bne cr6, L(dLcr6)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
.align 3
L(dP1x):
- sldi. r12,rN,3
- bne cr5,L(dLcr5)
- subfic rN,r12,64 /* Shift count is 64 - (rN * 8). */
+ sldi. r12, rN, 3
+ bne cr5, L(dLcr5x)
+ subfic rN, r12, 64 /* Shift count is 64 - (rN * 8). */
bne L(d00)
- li rRTN,0
+ li rRTN, 0
blr
/* Remainder is 16 */
.align 4
L(dP2):
- mtctr rTMP
- ld rWORD5,0(rSTR1)
- ld rWORD6,0(rSTR2)
- cmpld cr6,rWORD5,rWORD6
- blt cr7,L(dP2x)
- ld rWORD7,8(rSTR1)
- ld rWORD8,8(rSTR2)
- cmpld cr5,rWORD7,rWORD8
+ mtctr r0
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD5, 0(rSTR1)
+ ld rWORD6, 0(rSTR2)
+#endif
+ cmpld cr6, rWORD5, rWORD6
+ blt cr7, L(dP2x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD7, 8(rSTR1)
+ ld rWORD8, 8(rSTR2)
+#endif
+ cmpld cr5, rWORD7, rWORD8
L(dP2e):
- ld rWORD1,16(rSTR1)
- ld rWORD2,16(rSTR2)
- cmpld cr0,rWORD1,rWORD2
- ld rWORD3,24(rSTR1)
- ld rWORD4,24(rSTR2)
- cmpld cr1,rWORD3,rWORD4
- addi rSTR1,rSTR1,8
- addi rSTR2,rSTR2,8
- bne cr6,L(dLcr6)
- bne cr5,L(dLcr5)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 16(rSTR1)
+ ld rWORD2, 16(rSTR2)
+#endif
+ cmpld cr7, rWORD1, rWORD2
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD3, 24(rSTR1)
+ ld rWORD4, 24(rSTR2)
+#endif
+ cmpld cr1, rWORD3, rWORD4
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#endif
+ bne cr6, L(dLcr6)
+ bne cr5, L(dLcr5)
b L(dLoop2)
/* Again we are on a early exit path (16-23 byte compare), we want to
only use volatile registers and avoid restoring non-volatile
registers. */
.align 4
L(dP2x):
- ld rWORD3,8(rSTR1)
- ld rWORD4,8(rSTR2)
- cmpld cr5,rWORD3,rWORD4
- sldi. r12,rN,3
- bne cr6,L(dLcr6)
- addi rSTR1,rSTR1,8
- addi rSTR2,rSTR2,8
- bne cr5,L(dLcr5)
- subfic rN,r12,64 /* Shift count is 64 - (rN * 8). */
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD3, 8(rSTR1)
+ ld rWORD4, 8(rSTR2)
+#endif
+ cmpld cr1, rWORD3, rWORD4
+ sldi. r12, rN, 3
+ bne cr6, L(dLcr6x)
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#endif
+ bne cr1, L(dLcr1x)
+ subfic rN, r12, 64 /* Shift count is 64 - (rN * 8). */
bne L(d00)
- li rRTN,0
+ li rRTN, 0
blr
/* Remainder is 24 */
.align 4
L(dP3):
- mtctr rTMP
- ld rWORD3,0(rSTR1)
- ld rWORD4,0(rSTR2)
- cmpld cr1,rWORD3,rWORD4
+ mtctr r0
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD3, 0(rSTR1)
+ ld rWORD4, 0(rSTR2)
+#endif
+ cmpld cr1, rWORD3, rWORD4
L(dP3e):
- ld rWORD5,8(rSTR1)
- ld rWORD6,8(rSTR2)
- cmpld cr6,rWORD5,rWORD6
- blt cr7,L(dP3x)
- ld rWORD7,16(rSTR1)
- ld rWORD8,16(rSTR2)
- cmpld cr5,rWORD7,rWORD8
- ld rWORD1,24(rSTR1)
- ld rWORD2,24(rSTR2)
- cmpld cr0,rWORD1,rWORD2
- addi rSTR1,rSTR1,16
- addi rSTR2,rSTR2,16
- bne cr1,L(dLcr1)
- bne cr6,L(dLcr6)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD5, 8(rSTR1)
+ ld rWORD6, 8(rSTR2)
+#endif
+ cmpld cr6, rWORD5, rWORD6
+ blt cr7, L(dP3x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD7, 16(rSTR1)
+ ld rWORD8, 16(rSTR2)
+#endif
+ cmpld cr5, rWORD7, rWORD8
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 24(rSTR1)
+ ld rWORD2, 24(rSTR2)
+#endif
+ cmpld cr7, rWORD1, rWORD2
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 16
+ addi rSTR2, rSTR2, 16
+#endif
+ bne cr1, L(dLcr1)
+ bne cr6, L(dLcr6)
b L(dLoop1)
/* Again we are on a early exit path (24-31 byte compare), we want to
only use volatile registers and avoid restoring non-volatile
registers. */
.align 4
L(dP3x):
- ld rWORD1,16(rSTR1)
- ld rWORD2,16(rSTR2)
- cmpld cr5,rWORD1,rWORD2
- sldi. r12,rN,3
- bne cr1,L(dLcr1)
- addi rSTR1,rSTR1,16
- addi rSTR2,rSTR2,16
- bne cr6,L(dLcr6)
- subfic rN,r12,64 /* Shift count is 64 - (rN * 8). */
- bne cr5,L(dLcr5)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 16(rSTR1)
+ ld rWORD2, 16(rSTR2)
+#endif
+ cmpld cr7, rWORD1, rWORD2
+ sldi. r12, rN, 3
+ bne cr1, L(dLcr1x)
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 16
+ addi rSTR2, rSTR2, 16
+#endif
+ bne cr6, L(dLcr6x)
+ subfic rN, r12, 64 /* Shift count is 64 - (rN * 8). */
+ bne cr7, L(dLcr7x)
bne L(d00)
- li rRTN,0
+ li rRTN, 0
blr
/* Count is a multiple of 32, remainder is 0 */
.align 4
L(dP4):
- mtctr rTMP
- ld rWORD1,0(rSTR1)
- ld rWORD2,0(rSTR2)
- cmpld cr0,rWORD1,rWORD2
+ mtctr r0
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 0(rSTR1)
+ ld rWORD2, 0(rSTR2)
+#endif
+ cmpld cr7, rWORD1, rWORD2
L(dP4e):
- ld rWORD3,8(rSTR1)
- ld rWORD4,8(rSTR2)
- cmpld cr1,rWORD3,rWORD4
- ld rWORD5,16(rSTR1)
- ld rWORD6,16(rSTR2)
- cmpld cr6,rWORD5,rWORD6
- ldu rWORD7,24(rSTR1)
- ldu rWORD8,24(rSTR2)
- cmpld cr5,rWORD7,rWORD8
- bne cr0,L(dLcr0)
- bne cr1,L(dLcr1)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD3, 8(rSTR1)
+ ld rWORD4, 8(rSTR2)
+#endif
+ cmpld cr1, rWORD3, rWORD4
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD5, 16(rSTR1)
+ ld rWORD6, 16(rSTR2)
+#endif
+ cmpld cr6, rWORD5, rWORD6
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ldu rWORD7, 24(rSTR1)
+ ldu rWORD8, 24(rSTR2)
+#endif
+ cmpld cr5, rWORD7, rWORD8
+ bne cr7, L(dLcr7)
+ bne cr1, L(dLcr1)
bdz- L(d24) /* Adjust CTR as we start with +4 */
/* This is the primary loop */
.align 4
L(dLoop):
- ld rWORD1,8(rSTR1)
- ld rWORD2,8(rSTR2)
- cmpld cr1,rWORD3,rWORD4
- bne cr6,L(dLcr6)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 8(rSTR1)
+ ld rWORD2, 8(rSTR2)
+#endif
+ cmpld cr1, rWORD3, rWORD4
+ bne cr6, L(dLcr6)
L(dLoop1):
- ld rWORD3,16(rSTR1)
- ld rWORD4,16(rSTR2)
- cmpld cr6,rWORD5,rWORD6
- bne cr5,L(dLcr5)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD3, 16(rSTR1)
+ ld rWORD4, 16(rSTR2)
+#endif
+ cmpld cr6, rWORD5, rWORD6
+ bne cr5, L(dLcr5)
L(dLoop2):
- ld rWORD5,24(rSTR1)
- ld rWORD6,24(rSTR2)
- cmpld cr5,rWORD7,rWORD8
- bne cr0,L(dLcr0)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD5, 24(rSTR1)
+ ld rWORD6, 24(rSTR2)
+#endif
+ cmpld cr5, rWORD7, rWORD8
+ bne cr7, L(dLcr7)
L(dLoop3):
- ldu rWORD7,32(rSTR1)
- ldu rWORD8,32(rSTR2)
- bne cr1,L(dLcr1)
- cmpld cr0,rWORD1,rWORD2
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ldu rWORD7, 32(rSTR1)
+ ldu rWORD8, 32(rSTR2)
+#endif
+ bne cr1, L(dLcr1)
+ cmpld cr7, rWORD1, rWORD2
bdnz L(dLoop)
L(dL4):
- cmpld cr1,rWORD3,rWORD4
- bne cr6,L(dLcr6)
- cmpld cr6,rWORD5,rWORD6
- bne cr5,L(dLcr5)
- cmpld cr5,rWORD7,rWORD8
+ cmpld cr1, rWORD3, rWORD4
+ bne cr6, L(dLcr6)
+ cmpld cr6, rWORD5, rWORD6
+ bne cr5, L(dLcr5)
+ cmpld cr5, rWORD7, rWORD8
L(d44):
- bne cr0,L(dLcr0)
+ bne cr7, L(dLcr7)
L(d34):
- bne cr1,L(dLcr1)
+ bne cr1, L(dLcr1)
L(d24):
- bne cr6,L(dLcr6)
+ bne cr6, L(dLcr6)
L(d14):
- sldi. r12,rN,3
- bne cr5,L(dLcr5)
+ sldi. r12, rN, 3
+ bne cr5, L(dLcr5)
L(d04):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
- subfic rN,r12,64 /* Shift count is 64 - (rN * 8). */
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+ subfic rN, r12, 64 /* Shift count is 64 - (rN * 8). */
beq L(zeroLength)
/* At this point we have a remainder of 1 to 7 bytes to compare. Since
we are aligned it is safe to load the whole double word, and use
shift right double to eliminate bits beyond the compare length. */
L(d00):
- ld rWORD1,8(rSTR1)
- ld rWORD2,8(rSTR2)
- srd rWORD1,rWORD1,rN
- srd rWORD2,rWORD2,rN
- cmpld cr5,rWORD1,rWORD2
- bne cr5,L(dLcr5x)
- li rRTN,0
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 8(rSTR1)
+ ld rWORD2, 8(rSTR2)
+#endif
+ srd rWORD1, rWORD1, rN
+ srd rWORD2, rWORD2, rN
+ cmpld cr7, rWORD1, rWORD2
+ bne cr7, L(dLcr7x)
+ li rRTN, 0
blr
+
.align 4
-L(dLcr0):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
- li rRTN,1
- bgtlr cr0
- li rRTN,-1
+L(dLcr7):
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+L(dLcr7x):
+ li rRTN, 1
+ bgtlr cr7
+ li rRTN, -1
blr
.align 4
L(dLcr1):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
- li rRTN,1
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+L(dLcr1x):
+ li rRTN, 1
bgtlr cr1
- li rRTN,-1
+ li rRTN, -1
blr
.align 4
L(dLcr6):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
- li rRTN,1
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+L(dLcr6x):
+ li rRTN, 1
bgtlr cr6
- li rRTN,-1
+ li rRTN, -1
blr
.align 4
L(dLcr5):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
L(dLcr5x):
- li rRTN,1
+ li rRTN, 1
bgtlr cr5
- li rRTN,-1
+ li rRTN, -1
blr
.align 4
L(bytealigned):
mtctr rN
- beq cr6,L(zeroLength)
+#if 0
+/* Huh? We've already branched on cr6! */
+ beq cr6, L(zeroLength)
+#endif
/* We need to prime this loop. This loop is swing modulo scheduled
to avoid pipe delays. The dependent instruction latencies (load to
@@ -396,38 +598,38 @@ L(bytealigned):
So we must precondition some registers and condition codes so that
we don't exit the loop early on the first iteration. */
- lbz rWORD1,0(rSTR1)
- lbz rWORD2,0(rSTR2)
+ lbz rWORD1, 0(rSTR1)
+ lbz rWORD2, 0(rSTR2)
bdz L(b11)
- cmpld cr0,rWORD1,rWORD2
- lbz rWORD3,1(rSTR1)
- lbz rWORD4,1(rSTR2)
+ cmpld cr7, rWORD1, rWORD2
+ lbz rWORD3, 1(rSTR1)
+ lbz rWORD4, 1(rSTR2)
bdz L(b12)
- cmpld cr1,rWORD3,rWORD4
- lbzu rWORD5,2(rSTR1)
- lbzu rWORD6,2(rSTR2)
+ cmpld cr1, rWORD3, rWORD4
+ lbzu rWORD5, 2(rSTR1)
+ lbzu rWORD6, 2(rSTR2)
bdz L(b13)
.align 4
L(bLoop):
- lbzu rWORD1,1(rSTR1)
- lbzu rWORD2,1(rSTR2)
- bne cr0,L(bLcr0)
+ lbzu rWORD1, 1(rSTR1)
+ lbzu rWORD2, 1(rSTR2)
+ bne cr7, L(bLcr7)
- cmpld cr6,rWORD5,rWORD6
+ cmpld cr6, rWORD5, rWORD6
bdz L(b3i)
- lbzu rWORD3,1(rSTR1)
- lbzu rWORD4,1(rSTR2)
- bne cr1,L(bLcr1)
+ lbzu rWORD3, 1(rSTR1)
+ lbzu rWORD4, 1(rSTR2)
+ bne cr1, L(bLcr1)
- cmpld cr0,rWORD1,rWORD2
+ cmpld cr7, rWORD1, rWORD2
bdz L(b2i)
- lbzu rWORD5,1(rSTR1)
- lbzu rWORD6,1(rSTR2)
- bne cr6,L(bLcr6)
+ lbzu rWORD5, 1(rSTR1)
+ lbzu rWORD6, 1(rSTR2)
+ bne cr6, L(bLcr6)
- cmpld cr1,rWORD3,rWORD4
+ cmpld cr1, rWORD3, rWORD4
bdnz L(bLoop)
/* We speculatively loading bytes before we have tested the previous
@@ -437,542 +639,727 @@ L(bLoop):
tested. In this case we must complete the pending operations
before returning. */
L(b1i):
- bne cr0,L(bLcr0)
- bne cr1,L(bLcr1)
+ bne cr7, L(bLcr7)
+ bne cr1, L(bLcr1)
b L(bx56)
.align 4
L(b2i):
- bne cr6,L(bLcr6)
- bne cr0,L(bLcr0)
+ bne cr6, L(bLcr6)
+ bne cr7, L(bLcr7)
b L(bx34)
.align 4
L(b3i):
- bne cr1,L(bLcr1)
- bne cr6,L(bLcr6)
+ bne cr1, L(bLcr1)
+ bne cr6, L(bLcr6)
b L(bx12)
.align 4
-L(bLcr0):
- li rRTN,1
- bgtlr cr0
- li rRTN,-1
+L(bLcr7):
+ li rRTN, 1
+ bgtlr cr7
+ li rRTN, -1
blr
L(bLcr1):
- li rRTN,1
+ li rRTN, 1
bgtlr cr1
- li rRTN,-1
+ li rRTN, -1
blr
L(bLcr6):
- li rRTN,1
+ li rRTN, 1
bgtlr cr6
- li rRTN,-1
+ li rRTN, -1
blr
L(b13):
- bne cr0,L(bx12)
- bne cr1,L(bx34)
+ bne cr7, L(bx12)
+ bne cr1, L(bx34)
L(bx56):
- sub rRTN,rWORD5,rWORD6
+ sub rRTN, rWORD5, rWORD6
blr
nop
L(b12):
- bne cr0,L(bx12)
+ bne cr7, L(bx12)
L(bx34):
- sub rRTN,rWORD3,rWORD4
+ sub rRTN, rWORD3, rWORD4
blr
L(b11):
L(bx12):
- sub rRTN,rWORD1,rWORD2
+ sub rRTN, rWORD1, rWORD2
blr
.align 4
-L(zeroLengthReturn):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
L(zeroLength):
- li rRTN,0
+ li rRTN, 0
blr
.align 4
/* At this point we know the strings have different alignment and the
- compare length is at least 8 bytes. rBITDIF contains the low order
+ compare length is at least 8 bytes. r12 contains the low order
3 bits of rSTR1 and cr5 contains the result of the logical compare
- of rBITDIF to 0. If rBITDIF == 0 then rStr1 is double word
+ of r12 to 0. If r12 == 0 then rStr1 is double word
aligned and can perform the DWunaligned loop.
Otherwise we know that rSTR1 is not already DW aligned yet.
So we can force the string addresses to the next lower DW
- boundary and special case this first DW word using shift left to
+ boundary and special case this first DW using shift left to
eliminate bits preceding the first byte. Since we want to join the
normal (DWaligned) compare loop, starting at the second double word,
we need to adjust the length (rN) and special case the loop
- versioning for the first DW. This insures that the loop count is
+ versioning for the first DW. This ensures that the loop count is
correct and the first DW (shifted) is in the expected resister pair. */
-#define rSHL r29 /* Unaligned shift left count. */
-#define rSHR r28 /* Unaligned shift right count. */
-#define rB r27 /* Left rotation temp for rWORD2. */
-#define rD r26 /* Left rotation temp for rWORD4. */
-#define rF r25 /* Left rotation temp for rWORD6. */
-#define rH r24 /* Left rotation temp for rWORD8. */
-#define rA r0 /* Right rotation temp for rWORD2. */
-#define rC r12 /* Right rotation temp for rWORD4. */
-#define rE r0 /* Right rotation temp for rWORD6. */
-#define rG r12 /* Right rotation temp for rWORD8. */
+#define rSHL r29 /* Unaligned shift left count. */
+#define rSHR r28 /* Unaligned shift right count. */
+#define rWORD8_SHIFT r27 /* Left rotation temp for rWORD2. */
+#define rWORD2_SHIFT r26 /* Left rotation temp for rWORD4. */
+#define rWORD4_SHIFT r25 /* Left rotation temp for rWORD6. */
+#define rWORD6_SHIFT r24 /* Left rotation temp for rWORD8. */
L(unaligned):
- std r29,-24(r1)
- cfi_offset(r29,-24)
- clrldi rSHL,rSTR2,61
- beq cr6,L(duzeroLength)
- std r28,-32(r1)
- cfi_offset(r28,-32)
- beq cr5,L(DWunaligned)
- std r27,-40(r1)
- cfi_offset(r27,-40)
-/* Adjust the logical start of rSTR2 ro compensate for the extra bits
+ std rSHL, -24(r1)
+ cfi_offset(rSHL, -24)
+ clrldi rSHL, rSTR2, 61
+ beq cr6, L(duzeroLength)
+ std rSHR, -32(r1)
+ cfi_offset(rSHR, -32)
+ beq cr5, L(DWunaligned)
+ std rWORD8_SHIFT, -40(r1)
+ cfi_offset(rWORD8_SHIFT, -40)
+/* Adjust the logical start of rSTR2 to compensate for the extra bits
in the 1st rSTR1 DW. */
- sub r27,rSTR2,rBITDIF
+ sub rWORD8_SHIFT, rSTR2, r12
/* But do not attempt to address the DW before that DW that contains
the actual start of rSTR2. */
- clrrdi rSTR2,rSTR2,3
- std r26,-48(r1)
- cfi_offset(r26,-48)
+ clrrdi rSTR2, rSTR2, 3
+ std rWORD2_SHIFT, -48(r1)
+ cfi_offset(rWORD2_SHIFT, -48)
/* Compute the left/right shift counts for the unaligned rSTR2,
compensating for the logical (DW aligned) start of rSTR1. */
- clrldi rSHL,r27,61
- clrrdi rSTR1,rSTR1,3
- std r25,-56(r1)
- cfi_offset(r25,-56)
- sldi rSHL,rSHL,3
- cmpld cr5,r27,rSTR2
- add rN,rN,rBITDIF
- sldi r11,rBITDIF,3
- std r24,-64(r1)
- cfi_offset(r24,-64)
- subfic rSHR,rSHL,64
- srdi rTMP,rN,5 /* Divide by 32 */
- andi. rBITDIF,rN,24 /* Get the DW remainder */
+ clrldi rSHL, rWORD8_SHIFT, 61
+ clrrdi rSTR1, rSTR1, 3
+ std rWORD4_SHIFT, -56(r1)
+ cfi_offset(rWORD4_SHIFT, -56)
+ sldi rSHL, rSHL, 3
+ cmpld cr5, rWORD8_SHIFT, rSTR2
+ add rN, rN, r12
+ sldi rWORD6, r12, 3
+ std rWORD6_SHIFT, -64(r1)
+ cfi_offset(rWORD6_SHIFT, -64)
+ subfic rSHR, rSHL, 64
+ srdi r0, rN, 5 /* Divide by 32 */
+ andi. r12, rN, 24 /* Get the DW remainder */
/* We normally need to load 2 DWs to start the unaligned rSTR2, but in
this special case those bits may be discarded anyway. Also we
must avoid loading a DW where none of the bits are part of rSTR2 as
this may cross a page boundary and cause a page fault. */
- li rWORD8,0
- blt cr5,L(dus0)
- ld rWORD8,0(rSTR2)
- la rSTR2,8(rSTR2)
- sld rWORD8,rWORD8,rSHL
+ li rWORD8, 0
+ blt cr5, L(dus0)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD8, 0(rSTR2)
+ addi rSTR2, rSTR2, 8
+#endif
+ sld rWORD8, rWORD8, rSHL
L(dus0):
- ld rWORD1,0(rSTR1)
- ld rWORD2,0(rSTR2)
- cmpldi cr1,rBITDIF,16
- cmpldi cr7,rN,32
- srd rG,rWORD2,rSHR
- clrldi rN,rN,61
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 0(rSTR1)
+ ld rWORD2, 0(rSTR2)
+#endif
+ cmpldi cr1, r12, 16
+ cmpldi cr7, rN, 32
+ srd r12, rWORD2, rSHR
+ clrldi rN, rN, 61
beq L(duPs4)
- mtctr rTMP
- or rWORD8,rG,rWORD8
- bgt cr1,L(duPs3)
- beq cr1,L(duPs2)
+ mtctr r0
+ or rWORD8, r12, rWORD8
+ bgt cr1, L(duPs3)
+ beq cr1, L(duPs2)
/* Remainder is 8 */
.align 4
L(dusP1):
- sld rB,rWORD2,rSHL
- sld rWORD7,rWORD1,r11
- sld rWORD8,rWORD8,r11
- bge cr7,L(duP1e)
+ sld rWORD8_SHIFT, rWORD2, rSHL
+ sld rWORD7, rWORD1, rWORD6
+ sld rWORD8, rWORD8, rWORD6
+ bge cr7, L(duP1e)
/* At this point we exit early with the first double word compare
complete and remainder of 0 to 7 bytes. See L(du14) for details on
how we handle the remaining bytes. */
- cmpld cr5,rWORD7,rWORD8
- sldi. rN,rN,3
- bne cr5,L(duLcr5)
- cmpld cr7,rN,rSHR
+ cmpld cr5, rWORD7, rWORD8
+ sldi. rN, rN, 3
+ bne cr5, L(duLcr5)
+ cmpld cr7, rN, rSHR
beq L(duZeroReturn)
- li rA,0
- ble cr7,L(dutrim)
- ld rWORD2,8(rSTR2)
- srd rA,rWORD2,rSHR
+ li r0, 0
+ ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD2, 8(rSTR2)
+#endif
+ srd r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 16 */
.align 4
L(duPs2):
- sld rH,rWORD2,rSHL
- sld rWORD5,rWORD1,r11
- sld rWORD6,rWORD8,r11
+ sld rWORD6_SHIFT, rWORD2, rSHL
+ sld rWORD5, rWORD1, rWORD6
+ sld rWORD6, rWORD8, rWORD6
b L(duP2e)
/* Remainder is 24 */
.align 4
L(duPs3):
- sld rF,rWORD2,rSHL
- sld rWORD3,rWORD1,r11
- sld rWORD4,rWORD8,r11
+ sld rWORD4_SHIFT, rWORD2, rSHL
+ sld rWORD3, rWORD1, rWORD6
+ sld rWORD4, rWORD8, rWORD6
b L(duP3e)
/* Count is a multiple of 32, remainder is 0 */
.align 4
L(duPs4):
- mtctr rTMP
- or rWORD8,rG,rWORD8
- sld rD,rWORD2,rSHL
- sld rWORD1,rWORD1,r11
- sld rWORD2,rWORD8,r11
+ mtctr r0
+ or rWORD8, r12, rWORD8
+ sld rWORD2_SHIFT, rWORD2, rSHL
+ sld rWORD1, rWORD1, rWORD6
+ sld rWORD2, rWORD8, rWORD6
b L(duP4e)
/* At this point we know rSTR1 is double word aligned and the
compare length is at least 8 bytes. */
.align 4
L(DWunaligned):
- std r27,-40(r1)
- cfi_offset(r27,-40)
- clrrdi rSTR2,rSTR2,3
- std r26,-48(r1)
- cfi_offset(r26,-48)
- srdi rTMP,rN,5 /* Divide by 32 */
- std r25,-56(r1)
- cfi_offset(r25,-56)
- andi. rBITDIF,rN,24 /* Get the DW remainder */
- std r24,-64(r1)
- cfi_offset(r24,-64)
- sldi rSHL,rSHL,3
- ld rWORD6,0(rSTR2)
- ldu rWORD8,8(rSTR2)
- cmpldi cr1,rBITDIF,16
- cmpldi cr7,rN,32
- clrldi rN,rN,61
- subfic rSHR,rSHL,64
- sld rH,rWORD6,rSHL
+ std rWORD8_SHIFT, -40(r1)
+ cfi_offset(rWORD8_SHIFT, -40)
+ clrrdi rSTR2, rSTR2, 3
+ std rWORD2_SHIFT, -48(r1)
+ cfi_offset(rWORD2_SHIFT, -48)
+ srdi r0, rN, 5 /* Divide by 32 */
+ std rWORD4_SHIFT, -56(r1)
+ cfi_offset(rWORD4_SHIFT, -56)
+ andi. r12, rN, 24 /* Get the DW remainder */
+ std rWORD6_SHIFT, -64(r1)
+ cfi_offset(rWORD6_SHIFT, -64)
+ sldi rSHL, rSHL, 3
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD6, 0(rSTR2)
+ ldu rWORD8, 8(rSTR2)
+#endif
+ cmpldi cr1, r12, 16
+ cmpldi cr7, rN, 32
+ clrldi rN, rN, 61
+ subfic rSHR, rSHL, 64
+ sld rWORD6_SHIFT, rWORD6, rSHL
beq L(duP4)
- mtctr rTMP
- bgt cr1,L(duP3)
- beq cr1,L(duP2)
+ mtctr r0
+ bgt cr1, L(duP3)
+ beq cr1, L(duP2)
/* Remainder is 8 */
.align 4
L(duP1):
- srd rG,rWORD8,rSHR
- ld rWORD7,0(rSTR1)
- sld rB,rWORD8,rSHL
- or rWORD8,rG,rH
- blt cr7,L(duP1x)
+ srd r12, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ addi rSTR1, rSTR1, 8
+#else
+ ld rWORD7, 0(rSTR1)
+#endif
+ sld rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
+ blt cr7, L(duP1x)
L(duP1e):
- ld rWORD1,8(rSTR1)
- ld rWORD2,8(rSTR2)
- cmpld cr5,rWORD7,rWORD8
- srd rA,rWORD2,rSHR
- sld rD,rWORD2,rSHL
- or rWORD2,rA,rB
- ld rWORD3,16(rSTR1)
- ld rWORD4,16(rSTR2)
- cmpld cr0,rWORD1,rWORD2
- srd rC,rWORD4,rSHR
- sld rF,rWORD4,rSHL
- bne cr5,L(duLcr5)
- or rWORD4,rC,rD
- ld rWORD5,24(rSTR1)
- ld rWORD6,24(rSTR2)
- cmpld cr1,rWORD3,rWORD4
- srd rE,rWORD6,rSHR
- sld rH,rWORD6,rSHL
- bne cr0,L(duLcr0)
- or rWORD6,rE,rF
- cmpld cr6,rWORD5,rWORD6
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 8(rSTR1)
+ ld rWORD2, 8(rSTR2)
+#endif
+ cmpld cr5, rWORD7, rWORD8
+ srd r0, rWORD2, rSHR
+ sld rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD3, 16(rSTR1)
+ ld rWORD4, 16(rSTR2)
+#endif
+ cmpld cr7, rWORD1, rWORD2
+ srd r12, rWORD4, rSHR
+ sld rWORD4_SHIFT, rWORD4, rSHL
+ bne cr5, L(duLcr5)
+ or rWORD4, r12, rWORD2_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD5, 24(rSTR1)
+ ld rWORD6, 24(rSTR2)
+#endif
+ cmpld cr1, rWORD3, rWORD4
+ srd r0, rWORD6, rSHR
+ sld rWORD6_SHIFT, rWORD6, rSHL
+ bne cr7, L(duLcr7)
+ or rWORD6, r0, rWORD4_SHIFT
+ cmpld cr6, rWORD5, rWORD6
b L(duLoop3)
.align 4
/* At this point we exit early with the first double word compare
complete and remainder of 0 to 7 bytes. See L(du14) for details on
how we handle the remaining bytes. */
L(duP1x):
- cmpld cr5,rWORD7,rWORD8
- sldi. rN,rN,3
- bne cr5,L(duLcr5)
- cmpld cr7,rN,rSHR
+ cmpld cr5, rWORD7, rWORD8
+ sldi. rN, rN, 3
+ bne cr5, L(duLcr5)
+ cmpld cr7, rN, rSHR
beq L(duZeroReturn)
- li rA,0
- ble cr7,L(dutrim)
- ld rWORD2,8(rSTR2)
- srd rA,rWORD2,rSHR
+ li r0, 0
+ ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD2, 8(rSTR2)
+#endif
+ srd r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 16 */
.align 4
L(duP2):
- srd rE,rWORD8,rSHR
- ld rWORD5,0(rSTR1)
- or rWORD6,rE,rH
- sld rH,rWORD8,rSHL
+ srd r0, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ addi rSTR1, rSTR1, 8
+#else
+ ld rWORD5, 0(rSTR1)
+#endif
+ or rWORD6, r0, rWORD6_SHIFT
+ sld rWORD6_SHIFT, rWORD8, rSHL
L(duP2e):
- ld rWORD7,8(rSTR1)
- ld rWORD8,8(rSTR2)
- cmpld cr6,rWORD5,rWORD6
- srd rG,rWORD8,rSHR
- sld rB,rWORD8,rSHL
- or rWORD8,rG,rH
- blt cr7,L(duP2x)
- ld rWORD1,16(rSTR1)
- ld rWORD2,16(rSTR2)
- cmpld cr5,rWORD7,rWORD8
- bne cr6,L(duLcr6)
- srd rA,rWORD2,rSHR
- sld rD,rWORD2,rSHL
- or rWORD2,rA,rB
- ld rWORD3,24(rSTR1)
- ld rWORD4,24(rSTR2)
- cmpld cr0,rWORD1,rWORD2
- bne cr5,L(duLcr5)
- srd rC,rWORD4,rSHR
- sld rF,rWORD4,rSHL
- or rWORD4,rC,rD
- addi rSTR1,rSTR1,8
- addi rSTR2,rSTR2,8
- cmpld cr1,rWORD3,rWORD4
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD7, 8(rSTR1)
+ ld rWORD8, 8(rSTR2)
+#endif
+ cmpld cr6, rWORD5, rWORD6
+ srd r12, rWORD8, rSHR
+ sld rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
+ blt cr7, L(duP2x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 16(rSTR1)
+ ld rWORD2, 16(rSTR2)
+#endif
+ cmpld cr5, rWORD7, rWORD8
+ bne cr6, L(duLcr6)
+ srd r0, rWORD2, rSHR
+ sld rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD3, 24(rSTR1)
+ ld rWORD4, 24(rSTR2)
+#endif
+ cmpld cr7, rWORD1, rWORD2
+ bne cr5, L(duLcr5)
+ srd r12, rWORD4, rSHR
+ sld rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#endif
+ cmpld cr1, rWORD3, rWORD4
b L(duLoop2)
.align 4
L(duP2x):
- cmpld cr5,rWORD7,rWORD8
- addi rSTR1,rSTR1,8
- addi rSTR2,rSTR2,8
- bne cr6,L(duLcr6)
- sldi. rN,rN,3
- bne cr5,L(duLcr5)
- cmpld cr7,rN,rSHR
+ cmpld cr5, rWORD7, rWORD8
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#endif
+ bne cr6, L(duLcr6)
+ sldi. rN, rN, 3
+ bne cr5, L(duLcr5)
+ cmpld cr7, rN, rSHR
beq L(duZeroReturn)
- li rA,0
- ble cr7,L(dutrim)
- ld rWORD2,8(rSTR2)
- srd rA,rWORD2,rSHR
+ li r0, 0
+ ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD2, 8(rSTR2)
+#endif
+ srd r0, rWORD2, rSHR
b L(dutrim)
/* Remainder is 24 */
.align 4
L(duP3):
- srd rC,rWORD8,rSHR
- ld rWORD3,0(rSTR1)
- sld rF,rWORD8,rSHL
- or rWORD4,rC,rH
+ srd r12, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ addi rSTR1, rSTR1, 8
+#else
+ ld rWORD3, 0(rSTR1)
+#endif
+ sld rWORD4_SHIFT, rWORD8, rSHL
+ or rWORD4, r12, rWORD6_SHIFT
L(duP3e):
- ld rWORD5,8(rSTR1)
- ld rWORD6,8(rSTR2)
- cmpld cr1,rWORD3,rWORD4
- srd rE,rWORD6,rSHR
- sld rH,rWORD6,rSHL
- or rWORD6,rE,rF
- ld rWORD7,16(rSTR1)
- ld rWORD8,16(rSTR2)
- cmpld cr6,rWORD5,rWORD6
- bne cr1,L(duLcr1)
- srd rG,rWORD8,rSHR
- sld rB,rWORD8,rSHL
- or rWORD8,rG,rH
- blt cr7,L(duP3x)
- ld rWORD1,24(rSTR1)
- ld rWORD2,24(rSTR2)
- cmpld cr5,rWORD7,rWORD8
- bne cr6,L(duLcr6)
- srd rA,rWORD2,rSHR
- sld rD,rWORD2,rSHL
- or rWORD2,rA,rB
- addi rSTR1,rSTR1,16
- addi rSTR2,rSTR2,16
- cmpld cr0,rWORD1,rWORD2
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD5, 8(rSTR1)
+ ld rWORD6, 8(rSTR2)
+#endif
+ cmpld cr1, rWORD3, rWORD4
+ srd r0, rWORD6, rSHR
+ sld rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD7, 16(rSTR1)
+ ld rWORD8, 16(rSTR2)
+#endif
+ cmpld cr6, rWORD5, rWORD6
+ bne cr1, L(duLcr1)
+ srd r12, rWORD8, rSHR
+ sld rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
+ blt cr7, L(duP3x)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 24(rSTR1)
+ ld rWORD2, 24(rSTR2)
+#endif
+ cmpld cr5, rWORD7, rWORD8
+ bne cr6, L(duLcr6)
+ srd r0, rWORD2, rSHR
+ sld rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 16
+ addi rSTR2, rSTR2, 16
+#endif
+ cmpld cr7, rWORD1, rWORD2
b L(duLoop1)
.align 4
L(duP3x):
- addi rSTR1,rSTR1,16
- addi rSTR2,rSTR2,16
- bne cr1,L(duLcr1)
- cmpld cr5,rWORD7,rWORD8
- bne cr6,L(duLcr6)
- sldi. rN,rN,3
- bne cr5,L(duLcr5)
- cmpld cr7,rN,rSHR
+#ifndef __LITTLE_ENDIAN__
+ addi rSTR1, rSTR1, 16
+ addi rSTR2, rSTR2, 16
+#endif
+#if 0
+/* Huh? We've already branched on cr1! */
+ bne cr1, L(duLcr1)
+#endif
+ cmpld cr5, rWORD7, rWORD8
+ bne cr6, L(duLcr6)
+ sldi. rN, rN, 3
+ bne cr5, L(duLcr5)
+ cmpld cr7, rN, rSHR
beq L(duZeroReturn)
- li rA,0
- ble cr7,L(dutrim)
- ld rWORD2,8(rSTR2)
- srd rA,rWORD2,rSHR
+ li r0, 0
+ ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD2, 8(rSTR2)
+#endif
+ srd r0, rWORD2, rSHR
b L(dutrim)
/* Count is a multiple of 32, remainder is 0 */
.align 4
L(duP4):
- mtctr rTMP
- srd rA,rWORD8,rSHR
- ld rWORD1,0(rSTR1)
- sld rD,rWORD8,rSHL
- or rWORD2,rA,rH
+ mtctr r0
+ srd r0, rWORD8, rSHR
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ addi rSTR1, rSTR1, 8
+#else
+ ld rWORD1, 0(rSTR1)
+#endif
+ sld rWORD2_SHIFT, rWORD8, rSHL
+ or rWORD2, r0, rWORD6_SHIFT
L(duP4e):
- ld rWORD3,8(rSTR1)
- ld rWORD4,8(rSTR2)
- cmpld cr0,rWORD1,rWORD2
- srd rC,rWORD4,rSHR
- sld rF,rWORD4,rSHL
- or rWORD4,rC,rD
- ld rWORD5,16(rSTR1)
- ld rWORD6,16(rSTR2)
- cmpld cr1,rWORD3,rWORD4
- bne cr0,L(duLcr0)
- srd rE,rWORD6,rSHR
- sld rH,rWORD6,rSHL
- or rWORD6,rE,rF
- ldu rWORD7,24(rSTR1)
- ldu rWORD8,24(rSTR2)
- cmpld cr6,rWORD5,rWORD6
- bne cr1,L(duLcr1)
- srd rG,rWORD8,rSHR
- sld rB,rWORD8,rSHL
- or rWORD8,rG,rH
- cmpld cr5,rWORD7,rWORD8
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD3, 8(rSTR1)
+ ld rWORD4, 8(rSTR2)
+#endif
+ cmpld cr7, rWORD1, rWORD2
+ srd r12, rWORD4, rSHR
+ sld rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD5, 16(rSTR1)
+ ld rWORD6, 16(rSTR2)
+#endif
+ cmpld cr1, rWORD3, rWORD4
+ bne cr7, L(duLcr7)
+ srd r0, rWORD6, rSHR
+ sld rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ldu rWORD7, 24(rSTR1)
+ ldu rWORD8, 24(rSTR2)
+#endif
+ cmpld cr6, rWORD5, rWORD6
+ bne cr1, L(duLcr1)
+ srd r12, rWORD8, rSHR
+ sld rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
+ cmpld cr5, rWORD7, rWORD8
bdz L(du24) /* Adjust CTR as we start with +4 */
/* This is the primary loop */
.align 4
L(duLoop):
- ld rWORD1,8(rSTR1)
- ld rWORD2,8(rSTR2)
- cmpld cr1,rWORD3,rWORD4
- bne cr6,L(duLcr6)
- srd rA,rWORD2,rSHR
- sld rD,rWORD2,rSHL
- or rWORD2,rA,rB
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD1, 8(rSTR1)
+ ld rWORD2, 8(rSTR2)
+#endif
+ cmpld cr1, rWORD3, rWORD4
+ bne cr6, L(duLcr6)
+ srd r0, rWORD2, rSHR
+ sld rWORD2_SHIFT, rWORD2, rSHL
+ or rWORD2, r0, rWORD8_SHIFT
L(duLoop1):
- ld rWORD3,16(rSTR1)
- ld rWORD4,16(rSTR2)
- cmpld cr6,rWORD5,rWORD6
- bne cr5,L(duLcr5)
- srd rC,rWORD4,rSHR
- sld rF,rWORD4,rSHL
- or rWORD4,rC,rD
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD3, 0, rSTR1
+ ldbrx rWORD4, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD3, 16(rSTR1)
+ ld rWORD4, 16(rSTR2)
+#endif
+ cmpld cr6, rWORD5, rWORD6
+ bne cr5, L(duLcr5)
+ srd r12, rWORD4, rSHR
+ sld rWORD4_SHIFT, rWORD4, rSHL
+ or rWORD4, r12, rWORD2_SHIFT
L(duLoop2):
- ld rWORD5,24(rSTR1)
- ld rWORD6,24(rSTR2)
- cmpld cr5,rWORD7,rWORD8
- bne cr0,L(duLcr0)
- srd rE,rWORD6,rSHR
- sld rH,rWORD6,rSHL
- or rWORD6,rE,rF
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD5, 0, rSTR1
+ ldbrx rWORD6, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD5, 24(rSTR1)
+ ld rWORD6, 24(rSTR2)
+#endif
+ cmpld cr5, rWORD7, rWORD8
+ bne cr7, L(duLcr7)
+ srd r0, rWORD6, rSHR
+ sld rWORD6_SHIFT, rWORD6, rSHL
+ or rWORD6, r0, rWORD4_SHIFT
L(duLoop3):
- ldu rWORD7,32(rSTR1)
- ldu rWORD8,32(rSTR2)
- cmpld cr0,rWORD1,rWORD2
- bne- cr1,L(duLcr1)
- srd rG,rWORD8,rSHR
- sld rB,rWORD8,rSHL
- or rWORD8,rG,rH
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD7, 0, rSTR1
+ ldbrx rWORD8, 0, rSTR2
+ addi rSTR1, rSTR1, 8
+ addi rSTR2, rSTR2, 8
+#else
+ ldu rWORD7, 32(rSTR1)
+ ldu rWORD8, 32(rSTR2)
+#endif
+ cmpld cr7, rWORD1, rWORD2
+ bne cr1, L(duLcr1)
+ srd r12, rWORD8, rSHR
+ sld rWORD8_SHIFT, rWORD8, rSHL
+ or rWORD8, r12, rWORD6_SHIFT
bdnz L(duLoop)
L(duL4):
- bne cr1,L(duLcr1)
- cmpld cr1,rWORD3,rWORD4
- bne cr6,L(duLcr6)
- cmpld cr6,rWORD5,rWORD6
- bne cr5,L(duLcr5)
- cmpld cr5,rWORD7,rWORD8
+#if 0
+/* Huh? We've already branched on cr1! */
+ bne cr1, L(duLcr1)
+#endif
+ cmpld cr1, rWORD3, rWORD4
+ bne cr6, L(duLcr6)
+ cmpld cr6, rWORD5, rWORD6
+ bne cr5, L(duLcr5)
+ cmpld cr5, rWORD7, rWORD8
L(du44):
- bne cr0,L(duLcr0)
+ bne cr7, L(duLcr7)
L(du34):
- bne cr1,L(duLcr1)
+ bne cr1, L(duLcr1)
L(du24):
- bne cr6,L(duLcr6)
+ bne cr6, L(duLcr6)
L(du14):
- sldi. rN,rN,3
- bne cr5,L(duLcr5)
+ sldi. rN, rN, 3
+ bne cr5, L(duLcr5)
/* At this point we have a remainder of 1 to 7 bytes to compare. We use
shift right double to eliminate bits beyond the compare length.
- This allows the use of double word subtract to compute the final
- result.
However it may not be safe to load rWORD2 which may be beyond the
string length. So we compare the bit length of the remainder to
the right shift count (rSHR). If the bit count is less than or equal
we do not need to load rWORD2 (all significant bits are already in
- rB). */
- cmpld cr7,rN,rSHR
+ rWORD8_SHIFT). */
+ cmpld cr7, rN, rSHR
beq L(duZeroReturn)
- li rA,0
- ble cr7,L(dutrim)
- ld rWORD2,8(rSTR2)
- srd rA,rWORD2,rSHR
+ li r0, 0
+ ble cr7, L(dutrim)
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD2, 0, rSTR2
+ addi rSTR2, rSTR2, 8
+#else
+ ld rWORD2, 8(rSTR2)
+#endif
+ srd r0, rWORD2, rSHR
.align 4
L(dutrim):
- ld rWORD1,8(rSTR1)
- ld rWORD8,-8(r1)
- subfic rN,rN,64 /* Shift count is 64 - (rN * 8). */
- or rWORD2,rA,rB
- ld rWORD7,-16(r1)
- ld r29,-24(r1)
- srd rWORD1,rWORD1,rN
- srd rWORD2,rWORD2,rN
- ld r28,-32(r1)
- ld r27,-40(r1)
- li rRTN,0
- cmpld cr0,rWORD1,rWORD2
- ld r26,-48(r1)
- ld r25,-56(r1)
- beq cr0,L(dureturn24)
- li rRTN,1
- ld r24,-64(r1)
- bgtlr cr0
- li rRTN,-1
+#ifdef __LITTLE_ENDIAN__
+ ldbrx rWORD1, 0, rSTR1
+#else
+ ld rWORD1, 8(rSTR1)
+#endif
+ ld rWORD8, -8(r1)
+ subfic rN, rN, 64 /* Shift count is 64 - (rN * 8). */
+ or rWORD2, r0, rWORD8_SHIFT
+ ld rWORD7, -16(r1)
+ ld rSHL, -24(r1)
+ srd rWORD1, rWORD1, rN
+ srd rWORD2, rWORD2, rN
+ ld rSHR, -32(r1)
+ ld rWORD8_SHIFT, -40(r1)
+ li rRTN, 0
+ cmpld cr7, rWORD1, rWORD2
+ ld rWORD2_SHIFT, -48(r1)
+ ld rWORD4_SHIFT, -56(r1)
+ beq cr7, L(dureturn24)
+ li rRTN, 1
+ ld rWORD6_SHIFT, -64(r1)
+ bgtlr cr7
+ li rRTN, -1
blr
.align 4
-L(duLcr0):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
- li rRTN,1
- bgt cr0,L(dureturn29)
- ld r29,-24(r1)
- ld r28,-32(r1)
- li rRTN,-1
+L(duLcr7):
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+ li rRTN, 1
+ bgt cr7, L(dureturn29)
+ ld rSHL, -24(r1)
+ ld rSHR, -32(r1)
+ li rRTN, -1
b L(dureturn27)
.align 4
L(duLcr1):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
- li rRTN,1
- bgt cr1,L(dureturn29)
- ld r29,-24(r1)
- ld r28,-32(r1)
- li rRTN,-1
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+ li rRTN, 1
+ bgt cr1, L(dureturn29)
+ ld rSHL, -24(r1)
+ ld rSHR, -32(r1)
+ li rRTN, -1
b L(dureturn27)
.align 4
L(duLcr6):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
- li rRTN,1
- bgt cr6,L(dureturn29)
- ld r29,-24(r1)
- ld r28,-32(r1)
- li rRTN,-1
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+ li rRTN, 1
+ bgt cr6, L(dureturn29)
+ ld rSHL, -24(r1)
+ ld rSHR, -32(r1)
+ li rRTN, -1
b L(dureturn27)
.align 4
L(duLcr5):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
- li rRTN,1
- bgt cr5,L(dureturn29)
- ld r29,-24(r1)
- ld r28,-32(r1)
- li rRTN,-1
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
+ li rRTN, 1
+ bgt cr5, L(dureturn29)
+ ld rSHL, -24(r1)
+ ld rSHR, -32(r1)
+ li rRTN, -1
b L(dureturn27)
.align 3
L(duZeroReturn):
- li rRTN,0
+ li rRTN, 0
.align 4
L(dureturn):
- ld rWORD8,-8(r1)
- ld rWORD7,-16(r1)
+ ld rWORD8, -8(r1)
+ ld rWORD7, -16(r1)
L(dureturn29):
- ld r29,-24(r1)
- ld r28,-32(r1)
+ ld rSHL, -24(r1)
+ ld rSHR, -32(r1)
L(dureturn27):
- ld r27,-40(r1)
+ ld rWORD8_SHIFT, -40(r1)
L(dureturn26):
- ld r26,-48(r1)
+ ld rWORD2_SHIFT, -48(r1)
L(dureturn25):
- ld r25,-56(r1)
+ ld rWORD4_SHIFT, -56(r1)
L(dureturn24):
- ld r24,-64(r1)
+ ld rWORD6_SHIFT, -64(r1)
blr
L(duzeroLength):
- li rRTN,0
+ li rRTN, 0
blr
END (memcmp)
libc_hidden_builtin_def (memcmp)
-weak_alias (memcmp,bcmp)
+weak_alias (memcmp, bcmp)
diff --git a/sysdeps/powerpc/powerpc64/power7/memcpy.S b/sysdeps/powerpc/powerpc64/power7/memcpy.S
index 800a9f1bb1..e8df75f593 100644
--- a/sysdeps/powerpc/powerpc64/power7/memcpy.S
+++ b/sysdeps/powerpc/powerpc64/power7/memcpy.S
@@ -23,418 +23,361 @@
/* __ptr_t [r3] memcpy (__ptr_t dst [r3], __ptr_t src [r4], size_t len [r5]);
Returns 'dst'. */
+#define dst 11 /* Use r11 so r3 kept unchanged. */
+#define src 4
+#define cnt 5
+
.machine power7
EALIGN (memcpy, 5, 0)
CALL_MCOUNT 3
- cmpldi cr1,5,31
+ cmpldi cr1,cnt,31
neg 0,3
- std 3,-16(1)
- std 31,-8(1)
- cfi_offset(31,-8)
ble cr1, L(copy_LT_32) /* If move < 32 bytes use short move
code. */
- andi. 11,3,7 /* Check alignment of DST. */
-
-
- clrldi 10,4,61 /* Check alignment of SRC. */
- cmpld cr6,10,11 /* SRC and DST alignments match? */
- mr 12,4
- mr 31,5
+#ifdef __LITTLE_ENDIAN__
+/* In little-endian mode, power7 takes an alignment trap on any lxvd2x
+ or stxvd2x crossing a 32-byte boundary, so ensure the aligned_copy
+ loop is only used for quadword aligned copies. */
+ andi. 10,3,15
+ clrldi 11,4,60
+#else
+ andi. 10,3,7 /* Check alignment of DST. */
+ clrldi 11,4,61 /* Check alignment of SRC. */
+#endif
+ cmpld cr6,10,11 /* SRC and DST alignments match? */
+
+ mr dst,3
bne cr6,L(copy_GE_32_unaligned)
+ beq L(aligned_copy)
- srdi 9,5,3 /* Number of full quadwords remaining. */
-
- beq L(copy_GE_32_aligned_cont)
-
- clrldi 0,0,61
- mtcrf 0x01,0
- subf 31,0,5
-
- /* Get the SRC aligned to 8 bytes. */
-
-1: bf 31,2f
- lbz 6,0(12)
- addi 12,12,1
- stb 6,0(3)
- addi 3,3,1
-2: bf 30,4f
- lhz 6,0(12)
- addi 12,12,2
- sth 6,0(3)
- addi 3,3,2
-4: bf 29,0f
- lwz 6,0(12)
- addi 12,12,4
- stw 6,0(3)
- addi 3,3,4
-0:
- clrldi 10,12,61 /* Check alignment of SRC again. */
- srdi 9,31,3 /* Number of full doublewords remaining. */
-
-L(copy_GE_32_aligned_cont):
-
- clrldi 11,31,61
- mtcrf 0x01,9
-
- srdi 8,31,5
- cmpldi cr1,9,4
- cmpldi cr6,11,0
- mr 11,12
-
- /* Copy 1~3 doublewords so the main loop starts
- at a multiple of 32 bytes. */
+ mtocrf 0x01,0
+#ifdef __LITTLE_ENDIAN__
+ clrldi 0,0,60
+#else
+ clrldi 0,0,61
+#endif
- bf 30,1f
- ld 6,0(12)
- ld 7,8(12)
- addi 11,12,16
- mtctr 8
- std 6,0(3)
- std 7,8(3)
- addi 10,3,16
- bf 31,4f
- ld 0,16(12)
- std 0,16(3)
- blt cr1,3f
- addi 11,12,24
- addi 10,3,24
- b 4f
-
- .align 4
-1: /* Copy 1 doubleword and set the counter. */
- mr 10,3
- mtctr 8
- bf 31,4f
- ld 6,0(12)
- addi 11,12,8
- std 6,0(3)
- addi 10,3,8
-
-L(aligned_copy):
- /* Main aligned copy loop. Copies up to 128-bytes at a time. */
- .align 4
+/* Get the DST and SRC aligned to 8 bytes (16 for little-endian). */
+1:
+ bf 31,2f
+ lbz 6,0(src)
+ addi src,src,1
+ stb 6,0(dst)
+ addi dst,dst,1
+2:
+ bf 30,4f
+ lhz 6,0(src)
+ addi src,src,2
+ sth 6,0(dst)
+ addi dst,dst,2
4:
- /* check for any 32-byte or 64-byte lumps that are outside of a
- nice 128-byte range. R8 contains the number of 32-byte
- lumps, so drop this into the CR, and use the SO/EQ bits to help
- handle the 32- or 64- byte lumps. Then handle the rest with an
- unrolled 128-bytes-at-a-time copy loop. */
- mtocrf 1,8
- li 6,16 # 16() index
- li 7,32 # 32() index
- li 8,48 # 48() index
-
-L(aligned_32byte):
- /* if the SO bit (indicating a 32-byte lump) is not set, move along. */
- bns cr7,L(aligned_64byte)
- lxvd2x 6,0,11
- lxvd2x 7,11,6
- addi 11,11,32
- stxvd2x 6,0,10
- stxvd2x 7,10,6
- addi 10,10,32
-
-L(aligned_64byte):
- /* if the EQ bit (indicating a 64-byte lump) is not set, move along. */
- bne cr7,L(aligned_128setup)
- lxvd2x 6,0,11
- lxvd2x 7,11,6
- lxvd2x 8,11,7
- lxvd2x 9,11,8
- addi 11,11,64
- stxvd2x 6,0,10
- stxvd2x 7,10,6
- stxvd2x 8,10,7
- stxvd2x 9,10,8
- addi 10,10,64
-
-L(aligned_128setup):
- /* Set up for the 128-byte at a time copy loop. */
- srdi 8,31,7
- cmpdi 8,0 # Any 4x lumps left?
- beq 3f # if not, move along.
- lxvd2x 6,0,11
- lxvd2x 7,11,6
- mtctr 8 # otherwise, load the ctr and begin.
- li 8,48 # 48() index
+ bf 29,8f
+ lwz 6,0(src)
+ addi src,src,4
+ stw 6,0(dst)
+ addi dst,dst,4
+8:
+#ifdef __LITTLE_ENDIAN__
+ bf 28,16f
+ ld 6,0(src)
+ addi src,src,8
+ std 6,0(dst)
+ addi dst,dst,8
+16:
+#endif
+ subf cnt,0,cnt
+
+/* Main aligned copy loop. Copies 128 bytes at a time. */
+L(aligned_copy):
+ li 6,16
+ li 7,32
+ li 8,48
+ mtocrf 0x02,cnt
+ srdi 12,cnt,7
+ cmpdi 12,0
+ beq L(aligned_tail)
+ lxvd2x 6,0,src
+ lxvd2x 7,src,6
+ mtctr 12
b L(aligned_128loop)
+ .align 4
L(aligned_128head):
/* for the 2nd + iteration of this loop. */
- lxvd2x 6,0,11
- lxvd2x 7,11,6
+ lxvd2x 6,0,src
+ lxvd2x 7,src,6
L(aligned_128loop):
- lxvd2x 8,11,7
- lxvd2x 9,11,8
- stxvd2x 6,0,10
- addi 11,11,64
- stxvd2x 7,10,6
- stxvd2x 8,10,7
- stxvd2x 9,10,8
- lxvd2x 6,0,11
- lxvd2x 7,11,6
- addi 10,10,64
- lxvd2x 8,11,7
- lxvd2x 9,11,8
- addi 11,11,64
- stxvd2x 6,0,10
- stxvd2x 7,10,6
- stxvd2x 8,10,7
- stxvd2x 9,10,8
- addi 10,10,64
+ lxvd2x 8,src,7
+ lxvd2x 9,src,8
+ stxvd2x 6,0,dst
+ addi src,src,64
+ stxvd2x 7,dst,6
+ stxvd2x 8,dst,7
+ stxvd2x 9,dst,8
+ lxvd2x 6,0,src
+ lxvd2x 7,src,6
+ addi dst,dst,64
+ lxvd2x 8,src,7
+ lxvd2x 9,src,8
+ addi src,src,64
+ stxvd2x 6,0,dst
+ stxvd2x 7,dst,6
+ stxvd2x 8,dst,7
+ stxvd2x 9,dst,8
+ addi dst,dst,64
bdnz L(aligned_128head)
-3:
- /* Check for tail bytes. */
- rldicr 0,31,0,60
- mtcrf 0x01,31
- beq cr6,0f
-
-.L9:
- add 3,3,0
- add 12,12,0
-
- /* At this point we have a tail of 0-7 bytes and we know that the
- destination is doubleword-aligned. */
-4: /* Copy 4 bytes. */
- bf 29,2f
-
- lwz 6,0(12)
- addi 12,12,4
- stw 6,0(3)
- addi 3,3,4
-2: /* Copy 2 bytes. */
- bf 30,1f
-
- lhz 6,0(12)
- addi 12,12,2
- sth 6,0(3)
- addi 3,3,2
-1: /* Copy 1 byte. */
- bf 31,0f
-
- lbz 6,0(12)
- stb 6,0(3)
-0: /* Return original DST pointer. */
- ld 31,-8(1)
- ld 3,-16(1)
+L(aligned_tail):
+ mtocrf 0x01,cnt
+ bf 25,32f
+ lxvd2x 6,0,src
+ lxvd2x 7,src,6
+ lxvd2x 8,src,7
+ lxvd2x 9,src,8
+ addi src,src,64
+ stxvd2x 6,0,dst
+ stxvd2x 7,dst,6
+ stxvd2x 8,dst,7
+ stxvd2x 9,dst,8
+ addi dst,dst,64
+32:
+ bf 26,16f
+ lxvd2x 6,0,src
+ lxvd2x 7,src,6
+ addi src,src,32
+ stxvd2x 6,0,dst
+ stxvd2x 7,dst,6
+ addi dst,dst,32
+16:
+ bf 27,8f
+ lxvd2x 6,0,src
+ addi src,src,16
+ stxvd2x 6,0,dst
+ addi dst,dst,16
+8:
+ bf 28,4f
+ ld 6,0(src)
+ addi src,src,8
+ std 6,0(dst)
+ addi dst,dst,8
+4: /* Copies 4~7 bytes. */
+ bf 29,L(tail2)
+ lwz 6,0(src)
+ stw 6,0(dst)
+ bf 30,L(tail5)
+ lhz 7,4(src)
+ sth 7,4(dst)
+ bflr 31
+ lbz 8,6(src)
+ stb 8,6(dst)
+ /* Return original DST pointer. */
blr
- /* Handle copies of 0~31 bytes. */
- .align 4
+
+/* Handle copies of 0~31 bytes. */
+ .align 4
L(copy_LT_32):
- cmpldi cr6,5,8
- mr 12,4
- mtcrf 0x01,5
+ mr dst,3
+ cmpldi cr6,cnt,8
+ mtocrf 0x01,cnt
ble cr6,L(copy_LE_8)
/* At least 9 bytes to go. */
neg 8,4
- clrrdi 11,4,2
- andi. 0,8,3
- cmpldi cr1,5,16
- mr 10,5
+ andi. 0,8,3
+ cmpldi cr1,cnt,16
beq L(copy_LT_32_aligned)
- /* Force 4-bytes alignment for SRC. */
- mtocrf 0x01,0
- subf 10,0,5
-2: bf 30,1f
-
- lhz 6,0(12)
- addi 12,12,2
- sth 6,0(3)
- addi 3,3,2
-1: bf 31,L(end_4bytes_alignment)
-
- lbz 6,0(12)
- addi 12,12,1
- stb 6,0(3)
- addi 3,3,1
-
- .align 4
+ /* Force 4-byte alignment for SRC. */
+ mtocrf 0x01,0
+ subf cnt,0,cnt
+2:
+ bf 30,1f
+ lhz 6,0(src)
+ addi src,src,2
+ sth 6,0(dst)
+ addi dst,dst,2
+1:
+ bf 31,L(end_4bytes_alignment)
+ lbz 6,0(src)
+ addi src,src,1
+ stb 6,0(dst)
+ addi dst,dst,1
+
+ .align 4
L(end_4bytes_alignment):
- cmpldi cr1,10,16
- mtcrf 0x01,10
+ cmpldi cr1,cnt,16
+ mtocrf 0x01,cnt
L(copy_LT_32_aligned):
/* At least 6 bytes to go, and SRC is word-aligned. */
blt cr1,8f
/* Copy 16 bytes. */
- lwz 6,0(12)
- lwz 7,4(12)
- stw 6,0(3)
- lwz 8,8(12)
- stw 7,4(3)
- lwz 6,12(12)
- addi 12,12,16
- stw 8,8(3)
- stw 6,12(3)
- addi 3,3,16
+ lwz 6,0(src)
+ lwz 7,4(src)
+ stw 6,0(dst)
+ lwz 8,8(src)
+ stw 7,4(dst)
+ lwz 6,12(src)
+ addi src,src,16
+ stw 8,8(dst)
+ stw 6,12(dst)
+ addi dst,dst,16
8: /* Copy 8 bytes. */
- bf 28,4f
+ bf 28,L(tail4)
+ lwz 6,0(src)
+ lwz 7,4(src)
+ addi src,src,8
+ stw 6,0(dst)
+ stw 7,4(dst)
+ addi dst,dst,8
+
+ .align 4
+/* Copies 4~7 bytes. */
+L(tail4):
+ bf 29,L(tail2)
+ lwz 6,0(src)
+ stw 6,0(dst)
+ bf 30,L(tail5)
+ lhz 7,4(src)
+ sth 7,4(dst)
+ bflr 31
+ lbz 8,6(src)
+ stb 8,6(dst)
+ /* Return original DST pointer. */
+ blr
- lwz 6,0(12)
- lwz 7,4(12)
- addi 12,12,8
- stw 6,0(3)
- stw 7,4(3)
- addi 3,3,8
-4: /* Copy 4 bytes. */
- bf 29,2f
-
- lwz 6,0(12)
- addi 12,12,4
- stw 6,0(3)
- addi 3,3,4
-2: /* Copy 2-3 bytes. */
+ .align 4
+/* Copies 2~3 bytes. */
+L(tail2):
bf 30,1f
-
- lhz 6,0(12)
- sth 6,0(3)
- bf 31,0f
- lbz 7,2(12)
- stb 7,2(3)
- ld 3,-16(1)
+ lhz 6,0(src)
+ sth 6,0(dst)
+ bflr 31
+ lbz 7,2(src)
+ stb 7,2(dst)
blr
- .align 4
-1: /* Copy 1 byte. */
- bf 31,0f
+ .align 4
+L(tail5):
+ bflr 31
+ lbz 6,4(src)
+ stb 6,4(dst)
+ blr
- lbz 6,0(12)
- stb 6,0(3)
-0: /* Return original DST pointer. */
- ld 3,-16(1)
+ .align 4
+1:
+ bflr 31
+ lbz 6,0(src)
+ stb 6,0(dst)
+ /* Return original DST pointer. */
blr
- /* Handles copies of 0~8 bytes. */
- .align 4
+
+/* Handles copies of 0~8 bytes. */
+ .align 4
L(copy_LE_8):
- bne cr6,4f
+ bne cr6,L(tail4)
/* Though we could've used ld/std here, they are still
slow for unaligned cases. */
- lwz 6,0(4)
- lwz 7,4(4)
- stw 6,0(3)
- stw 7,4(3)
- ld 3,-16(1) /* Return original DST pointers. */
+ lwz 6,0(src)
+ lwz 7,4(src)
+ stw 6,0(dst)
+ stw 7,4(dst)
blr
- .align 4
-4: /* Copies 4~7 bytes. */
- bf 29,2b
-
- lwz 6,0(4)
- stw 6,0(3)
- bf 30,5f
- lhz 7,4(4)
- sth 7,4(3)
- bf 31,0f
- lbz 8,6(4)
- stb 8,6(3)
- ld 3,-16(1)
- blr
-
- .align 4
-5: /* Copy 1 byte. */
- bf 31,0f
-
- lbz 6,4(4)
- stb 6,4(3)
-
-0: /* Return original DST pointer. */
- ld 3,-16(1)
- blr
- /* Handle copies of 32+ bytes where DST is aligned (to quadword) but
- SRC is not. Use aligned quadword loads from SRC, shifted to realign
- the data, allowing for aligned DST stores. */
- .align 4
+/* Handle copies of 32+ bytes where DST is aligned (to quadword) but
+ SRC is not. Use aligned quadword loads from SRC, shifted to realign
+ the data, allowing for aligned DST stores. */
+ .align 4
L(copy_GE_32_unaligned):
- clrldi 0,0,60 /* Number of bytes until the 1st
- quadword. */
- andi. 11,3,15 /* Check alignment of DST (against
- quadwords). */
- srdi 9,5,4 /* Number of full quadwords remaining. */
+ clrldi 0,0,60 /* Number of bytes until the 1st dst quadword. */
+#ifndef __LITTLE_ENDIAN__
+ andi. 10,3,15 /* Check alignment of DST (against quadwords). */
+#endif
+ srdi 9,cnt,4 /* Number of full quadwords remaining. */
beq L(copy_GE_32_unaligned_cont)
- /* SRC is not quadword aligned, get it aligned. */
+ /* DST is not quadword aligned, get it aligned. */
- mtcrf 0x01,0
- subf 31,0,5
+ mtocrf 0x01,0
+ subf cnt,0,cnt
/* Vector instructions work best when proper alignment (16-bytes)
is present. Move 0~15 bytes as needed to get DST quadword-aligned. */
-1: /* Copy 1 byte. */
+1:
bf 31,2f
-
- lbz 6,0(12)
- addi 12,12,1
- stb 6,0(3)
- addi 3,3,1
-2: /* Copy 2 bytes. */
+ lbz 6,0(src)
+ addi src,src,1
+ stb 6,0(dst)
+ addi dst,dst,1
+2:
bf 30,4f
-
- lhz 6,0(12)
- addi 12,12,2
- sth 6,0(3)
- addi 3,3,2
-4: /* Copy 4 bytes. */
+ lhz 6,0(src)
+ addi src,src,2
+ sth 6,0(dst)
+ addi dst,dst,2
+4:
bf 29,8f
-
- lwz 6,0(12)
- addi 12,12,4
- stw 6,0(3)
- addi 3,3,4
-8: /* Copy 8 bytes. */
+ lwz 6,0(src)
+ addi src,src,4
+ stw 6,0(dst)
+ addi dst,dst,4
+8:
bf 28,0f
-
- ld 6,0(12)
- addi 12,12,8
- std 6,0(3)
- addi 3,3,8
+ ld 6,0(src)
+ addi src,src,8
+ std 6,0(dst)
+ addi dst,dst,8
0:
- clrldi 10,12,60 /* Check alignment of SRC. */
- srdi 9,31,4 /* Number of full quadwords remaining. */
+ srdi 9,cnt,4 /* Number of full quadwords remaining. */
/* The proper alignment is present, it is OK to copy the bytes now. */
L(copy_GE_32_unaligned_cont):
/* Setup two indexes to speed up the indexed vector operations. */
- clrldi 11,31,60
- li 6,16 /* Index for 16-bytes offsets. */
+ clrldi 10,cnt,60
+ li 6,16 /* Index for 16-bytes offsets. */
li 7,32 /* Index for 32-bytes offsets. */
- cmpldi cr1,11,0
- srdi 8,31,5 /* Setup the loop counter. */
- mr 10,3
- mr 11,12
- mtcrf 0x01,9
- cmpldi cr6,9,1
- lvsl 5,0,12
- lvx 3,0,12
- bf 31,L(setup_unaligned_loop)
-
- /* Copy another 16 bytes to align to 32-bytes due to the loop . */
- lvx 4,12,6
- vperm 6,3,4,5
- addi 11,12,16
- addi 10,3,16
- stvx 6,0,3
+ cmpldi cr1,10,0
+ srdi 8,cnt,5 /* Setup the loop counter. */
+ mtocrf 0x01,9
+ cmpldi cr6,9,1
+#ifdef __LITTLE_ENDIAN__
+ lvsr 5,0,src
+#else
+ lvsl 5,0,src
+#endif
+ lvx 3,0,src
+ li 0,0
+ bf 31,L(setup_unaligned_loop)
+
+ /* Copy another 16 bytes to align to 32-bytes due to the loop. */
+ lvx 4,src,6
+#ifdef __LITTLE_ENDIAN__
+ vperm 6,4,3,5
+#else
+ vperm 6,3,4,5
+#endif
+ addi src,src,16
+ stvx 6,0,dst
+ addi dst,dst,16
vor 3,4,4
+ clrrdi 0,src,60
L(setup_unaligned_loop):
- mtctr 8
- ble cr6,L(end_unaligned_loop)
+ mtctr 8
+ ble cr6,L(end_unaligned_loop)
/* Copy 32 bytes at a time using vector instructions. */
- .align 4
+ .align 4
L(unaligned_loop):
/* Note: vr6/vr10 may contain data that was already copied,
@@ -442,62 +385,55 @@ L(unaligned_loop):
some portions again. This is faster than having unaligned
vector instructions though. */
- lvx 4,11,6 /* vr4 = r11+16. */
- vperm 6,3,4,5 /* Merge the correctly-aligned portions
- of vr3/vr4 into vr6. */
- lvx 3,11,7 /* vr3 = r11+32. */
- vperm 10,4,3,5 /* Merge the correctly-aligned portions
- of vr3/vr4 into vr10. */
- addi 11,11,32
- stvx 6,0,10
- stvx 10,10,6
- addi 10,10,32
-
+ lvx 4,src,6
+#ifdef __LITTLE_ENDIAN__
+ vperm 6,4,3,5
+#else
+ vperm 6,3,4,5
+#endif
+ lvx 3,src,7
+#ifdef __LITTLE_ENDIAN__
+ vperm 10,3,4,5
+#else
+ vperm 10,4,3,5
+#endif
+ addi src,src,32
+ stvx 6,0,dst
+ stvx 10,dst,6
+ addi dst,dst,32
bdnz L(unaligned_loop)
- .align 4
+ clrrdi 0,src,60
+
+ .align 4
L(end_unaligned_loop):
/* Check for tail bytes. */
- rldicr 0,31,0,59
- mtcrf 0x01,31
- beq cr1,0f
+ mtocrf 0x01,cnt
+ beqlr cr1
- add 3,3,0
- add 12,12,0
+ add src,src,0
/* We have 1~15 tail bytes to copy, and DST is quadword aligned. */
-8: /* Copy 8 bytes. */
+ /* Copy 8 bytes. */
bf 28,4f
-
- lwz 6,0(12)
- lwz 7,4(12)
- addi 12,12,8
- stw 6,0(3)
- stw 7,4(3)
- addi 3,3,8
-4: /* Copy 4 bytes. */
- bf 29,2f
-
- lwz 6,0(12)
- addi 12,12,4
- stw 6,0(3)
- addi 3,3,4
-2: /* Copy 2~3 bytes. */
- bf 30,1f
-
- lhz 6,0(12)
- addi 12,12,2
- sth 6,0(3)
- addi 3,3,2
-1: /* Copy 1 byte. */
- bf 31,0f
-
- lbz 6,0(12)
- stb 6,0(3)
-0: /* Return original DST pointer. */
- ld 31,-8(1)
- ld 3,-16(1)
+ lwz 6,0(src)
+ lwz 7,4(src)
+ addi src,src,8
+ stw 6,0(dst)
+ stw 7,4(dst)
+ addi dst,dst,8
+4: /* Copy 4~7 bytes. */
+ bf 29,L(tail2)
+ lwz 6,0(src)
+ stw 6,0(dst)
+ bf 30,L(tail5)
+ lhz 7,4(src)
+ sth 7,4(dst)
+ bflr 31
+ lbz 8,6(src)
+ stb 8,6(dst)
+ /* Return original DST pointer. */
blr
END_GEN_TB (memcpy,TB_TOCLESS)
diff --git a/sysdeps/powerpc/powerpc64/power7/mempcpy.S b/sysdeps/powerpc/powerpc64/power7/mempcpy.S
index f20be938d2..b93ab7da52 100644
--- a/sysdeps/powerpc/powerpc64/power7/mempcpy.S
+++ b/sysdeps/powerpc/powerpc64/power7/mempcpy.S
@@ -365,13 +365,21 @@ L(copy_GE_32_unaligned_cont):
mr 11,12
mtcrf 0x01,9
cmpldi cr6,9,1
- lvsl 5,0,12
+#ifdef __LITTLE_ENDIAN__
+ lvsr 5,0,12
+#else
+ lvsl 5,0,12
+#endif
lvx 3,0,12
bf 31,L(setup_unaligned_loop)
/* Copy another 16 bytes to align to 32-bytes due to the loop . */
lvx 4,12,6
- vperm 6,3,4,5
+#ifdef __LITTLE_ENDIAN__
+ vperm 6,4,3,5
+#else
+ vperm 6,3,4,5
+#endif
addi 11,12,16
addi 10,3,16
stvx 6,0,3
@@ -391,11 +399,17 @@ L(unaligned_loop):
vector instructions though. */
lvx 4,11,6 /* vr4 = r11+16. */
- vperm 6,3,4,5 /* Merge the correctly-aligned portions
- of vr3/vr4 into vr6. */
+#ifdef __LITTLE_ENDIAN__
+ vperm 6,4,3,5
+#else
+ vperm 6,3,4,5
+#endif
lvx 3,11,7 /* vr3 = r11+32. */
- vperm 10,4,3,5 /* Merge the correctly-aligned portions
- of vr3/vr4 into vr10. */
+#ifdef __LITTLE_ENDIAN__
+ vperm 10,3,4,5
+#else
+ vperm 10,4,3,5
+#endif
addi 11,11,32
stvx 6,0,10
stvx 10,10,6
diff --git a/sysdeps/powerpc/powerpc64/power7/memrchr.S b/sysdeps/powerpc/powerpc64/power7/memrchr.S
index d24fbbb1b9..683bfed7d8 100644
--- a/sysdeps/powerpc/powerpc64/power7/memrchr.S
+++ b/sysdeps/powerpc/powerpc64/power7/memrchr.S
@@ -22,119 +22,133 @@
/* int [r3] memrchr (char *s [r3], int byte [r4], int size [r5]) */
.machine power7
ENTRY (__memrchr)
- CALL_MCOUNT
- dcbt 0,r3
- mr r7,r3
- add r3,r7,r5 /* Calculate the last acceptable address. */
- cmpld cr7,r3,r7 /* Is the address equal or less than r3? */
+ CALL_MCOUNT 3
+ add r7,r3,r5 /* Calculate the last acceptable address. */
+ neg r0,r7
+ addi r7,r7,-1
+ mr r10,r3
+ clrrdi r6,r7,7
+ li r9,3<<5
+ dcbt r9,r6,16 /* Stream hint, decreasing addresses. */
/* Replicate BYTE to doubleword. */
- rlwimi r4,r4,8,16,23
- rlwimi r4,r4,16,0,15
+ insrdi r4,r4,8,48
+ insrdi r4,r4,16,32
insrdi r4,r4,32,0
- bge cr7,L(proceed)
-
- li r3,-1 /* Make r11 the biggest if r4 <= 0. */
-L(proceed):
li r6,-8
- addi r9,r3,-1
- clrrdi r8,r9,3
- addi r8,r8,8
- neg r0,r3
+ li r9,-1
rlwinm r0,r0,3,26,28 /* Calculate padding. */
-
+ clrrdi r8,r7,3
+ srd r9,r9,r0
cmpldi r5,32
+ clrrdi r0,r10,3
ble L(small_range)
- ldbrx r12,r8,r6 /* Load reversed doubleword from memory. */
- cmpb r10,r12,r4 /* Check for BYTE in DWORD1. */
- sld r10,r10,r0
- srd r10,r10,r0
- cmpldi cr7,r10,0 /* If r10 == 0, no BYTEs have been found. */
+#ifdef __LITTLE_ENDIAN__
+ ldx r12,0,r8
+#else
+ ldbrx r12,0,r8 /* Load reversed doubleword from memory. */
+#endif
+ cmpb r3,r12,r4 /* Check for BYTE in DWORD1. */
+ and r3,r3,r9
+ cmpldi cr7,r3,0 /* If r3 == 0, no BYTEs have been found. */
bne cr7,L(done)
- /* Are we done already? */
- addi r9,r8,-8
- cmpld cr6,r9,r7
- ble cr6,L(null)
-
mtcrf 0x01,r8
- /* Are we now aligned to a doubleword boundary? If so, skip to
+ /* Are we now aligned to a quadword boundary? If so, skip to
the main loop. Otherwise, go through the alignment code. */
- mr r8,r9
- bt 28,L(loop_setup)
+ bf 28,L(loop_setup)
/* Handle DWORD2 of pair. */
+#ifdef __LITTLE_ENDIAN__
+ ldx r12,r8,r6
+#else
ldbrx r12,r8,r6
- cmpb r10,r12,r4
- cmpldi cr7,r10,0
- bne cr7,L(done)
-
- /* Are we done already. */
+#endif
addi r8,r8,-8
- cmpld cr6,r8,r7
- ble cr6,L(null)
+ cmpb r3,r12,r4
+ cmpldi cr7,r3,0
+ bne cr7,L(done)
L(loop_setup):
- li r0,-16
- sub r5,r8,r7
- srdi r9,r5,4 /* Number of loop iterations. */
+ /* The last dword we want to read in the loop below is the one
+ containing the first byte of the string, ie. the dword at
+ s & ~7, or r0. The first dword read is at r8 - 8, we
+ read 2 * cnt dwords, so the last dword read will be at
+ r8 - 8 - 16 * cnt + 8. Solving for cnt gives
+ cnt = (r8 - r0) / 16 */
+ sub r5,r8,r0
+ addi r8,r8,-8
+ srdi r9,r5,4 /* Number of loop iterations. */
mtctr r9 /* Setup the counter. */
- b L(loop)
- /* Main loop to look for BYTE backwards in the string. Since it's a
- small loop (< 8 instructions), align it to 32-bytes. */
- .p2align 5
+
+ /* Main loop to look for BYTE backwards in the string.
+ FIXME: Investigate whether 32 byte align helps with this
+ 9 instruction loop. */
+ .align 5
L(loop):
/* Load two doublewords, compare and merge in a
single register for speed. This is an attempt
to speed up the byte-checking process for bigger strings. */
- ldbrx r12,r8,r6
- ldbrx r11,r8,r0
- addi r8,r8,-8
- cmpb r10,r12,r4
+#ifdef __LITTLE_ENDIAN__
+ ldx r12,0,r8
+ ldx r11,r8,r6
+#else
+ ldbrx r12,0,r8
+ ldbrx r11,r8,r6
+#endif
+ cmpb r3,r12,r4
cmpb r9,r11,r4
- or r5,r9,r10 /* Merge everything in one doubleword. */
+ or r5,r9,r3 /* Merge everything in one doubleword. */
cmpldi cr7,r5,0
bne cr7,L(found)
- addi r8,r8,-8
+ addi r8,r8,-16
bdnz L(loop)
- /* We're here because the counter reached 0, and that means we
- didn't have any matches for BYTE in the whole range. Just return
- the original range. */
- addi r9,r8,8
- cmpld cr6,r9,r7
- bgt cr6,L(loop_small)
- b L(null)
-
- /* OK, one (or both) of the words contains BYTE. Check
- the first word and decrement the address in case the first
- word really contains BYTE. */
+
+ /* We may have one more word to read. */
+ cmpld r8,r0
+ bnelr
+
+#ifdef __LITTLE_ENDIAN__
+ ldx r12,0,r8
+#else
+ ldbrx r12,0,r8
+#endif
+ cmpb r3,r12,r4
+ cmpldi cr7,r3,0
+ bne cr7,L(done)
+ blr
+
.align 4
L(found):
- cmpldi cr6,r10,0
- addi r8,r8,8
+ /* OK, one (or both) of the dwords contains BYTE. Check
+ the first dword. */
+ cmpldi cr6,r3,0
bne cr6,L(done)
/* BYTE must be in the second word. Adjust the address
- again and move the result of cmpb to r10 so we can calculate the
+ again and move the result of cmpb to r3 so we can calculate the
pointer. */
- mr r10,r9
+ mr r3,r9
addi r8,r8,-8
- /* r10 has the output of the cmpb instruction, that is, it contains
- 0xff in the same position as the BYTE in the original
+ /* r3 has the output of the cmpb instruction, that is, it contains
+ 0xff in the same position as BYTE in the original
word from the string. Use that to calculate the pointer.
We need to make sure BYTE is *before* the end of the
range. */
L(done):
- cntlzd r0,r10 /* Count leading zeroes before the match. */
- srdi r6,r0,3 /* Convert leading zeroes to bytes. */
- addi r0,r6,1
+ cntlzd r9,r3 /* Count leading zeros before the match. */
+ cmpld r8,r0 /* Are we on the last word? */
+ srdi r6,r9,3 /* Convert leading zeros to bytes. */
+ addi r0,r6,-7
sub r3,r8,r0
- cmpld r3,r7
- blt L(null)
+ cmpld cr7,r3,r10
+ bnelr
+ bgelr cr7
+ li r3,0
blr
.align 4
@@ -148,29 +162,35 @@ L(small_range):
cmpldi r5,0
beq L(null)
- ldbrx r12,r8,r6 /* Load reversed doubleword from memory. */
- cmpb r10,r12,r4 /* Check for BYTE in DWORD1. */
- sld r10,r10,r0
- srd r10,r10,r0
- cmpldi cr7,r10,0
+#ifdef __LITTLE_ENDIAN__
+ ldx r12,0,r8
+#else
+ ldbrx r12,0,r8 /* Load reversed doubleword from memory. */
+#endif
+ cmpb r3,r12,r4 /* Check for BYTE in DWORD1. */
+ and r3,r3,r9
+ cmpldi cr7,r3,0
bne cr7,L(done)
/* Are we done already? */
+ cmpld r8,r0
addi r8,r8,-8
- cmpld r8,r7
- ble L(null)
- b L(loop_small)
+ beqlr
- .p2align 5
+ .align 5
L(loop_small):
- ldbrx r12,r8,r6
- cmpb r10,r12,r4
- cmpldi cr6,r10,0
- bne cr6,L(done)
+#ifdef __LITTLE_ENDIAN__
+ ldx r12,0,r8
+#else
+ ldbrx r12,0,r8
+#endif
+ cmpb r3,r12,r4
+ cmpld r8,r0
+ cmpldi cr7,r3,0
+ bne cr7,L(done)
addi r8,r8,-8
- cmpld r8,r7
- ble L(null)
- b L(loop_small)
+ bne L(loop_small)
+ blr
END (__memrchr)
weak_alias (__memrchr, memrchr)
diff --git a/sysdeps/powerpc/powerpc64/power7/memset.S b/sysdeps/powerpc/powerpc64/power7/memset.S
index b24cfa163a..03a45c23c7 100644
--- a/sysdeps/powerpc/powerpc64/power7/memset.S
+++ b/sysdeps/powerpc/powerpc64/power7/memset.S
@@ -32,8 +32,8 @@ L(_memset):
mr 10,3
/* Replicate byte to word. */
- rlwimi 4,4,8,16,23
- rlwimi 4,4,16,0,15
+ insrdi 4,4,8,48
+ insrdi 4,4,16,32
ble cr6,L(small) /* If length <= 8, use short copy code. */
neg 0,3
@@ -321,7 +321,7 @@ L(medium):
clrldi 0,0,62
beq L(medium_aligned)
- /* Force 4-bytes alignment for SRC. */
+ /* Force 4-bytes alignment for DST. */
mtocrf 0x01,0
subf 5,0,5
1: /* Copy 1 byte. */
@@ -383,6 +383,7 @@ L(small):
END_GEN_TB (memset,TB_TOCLESS)
libc_hidden_builtin_def (memset)
+#ifndef NO_BZERO_IMPL
/* Copied from bzero.S to prevent the linker from inserting a stub
between bzero and memset. */
ENTRY (__bzero)
@@ -393,3 +394,4 @@ ENTRY (__bzero)
END_GEN_TB (__bzero,TB_TOCLESS)
weak_alias (__bzero, bzero)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/power7/multiarch/Implies b/sysdeps/powerpc/powerpc64/power7/multiarch/Implies
new file mode 100644
index 0000000000..bf5d6171a5
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power7/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power6/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power7/rawmemchr.S b/sysdeps/powerpc/powerpc64/power7/rawmemchr.S
index 50a33d8fae..547aed771f 100644
--- a/sysdeps/powerpc/powerpc64/power7/rawmemchr.S
+++ b/sysdeps/powerpc/powerpc64/power7/rawmemchr.S
@@ -27,8 +27,8 @@ ENTRY (__rawmemchr)
clrrdi r8,r3,3 /* Align the address to doubleword boundary. */
/* Replicate byte to doubleword. */
- rlwimi r4,r4,8,16,23
- rlwimi r4,r4,16,0,15
+ insrdi r4,r4,8,48
+ insrdi r4,r4,16,32
insrdi r4,r4,32,0
/* Now r4 has a doubleword of c bytes. */
@@ -36,8 +36,13 @@ ENTRY (__rawmemchr)
rlwinm r6,r3,3,26,28 /* Calculate padding. */
ld r12,0(r8) /* Load doubleword from memory. */
cmpb r5,r12,r4 /* Compare each byte against c byte. */
+#ifdef __LITTLE_ENDIAN__
+ srd r5,r5,r6
+ sld r5,r5,r6
+#else
sld r5,r5,r6 /* Move left to discard ignored bits. */
srd r5,r5,r6 /* Bring the bits back as zeros. */
+#endif
cmpdi cr7,r5,0 /* If r5 == 0, no c bytes have been found. */
bne cr7,L(done)
@@ -91,8 +96,14 @@ L(loop):
doubleword from the string. Use that fact to find out what is
the position of the byte inside the string. */
L(done):
+#ifdef __LITTLE_ENDIAN__
+ addi r0,r5,-1
+ andc r0,r0,r5
+ popcntd r0,r0 /* Count trailing zeros. */
+#else
cntlzd r0,r5 /* Count leading zeros before the match. */
- srdi r0,r0,3 /* Convert leading zeroes to bytes. */
+#endif
+ srdi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of the matching char. */
blr
END (__rawmemchr)
diff --git a/sysdeps/powerpc/powerpc64/power7/stpcpy.S b/sysdeps/powerpc/powerpc64/power7/stpcpy.S
new file mode 100644
index 0000000000..727dd06e74
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power7/stpcpy.S
@@ -0,0 +1,24 @@
+/* Optimized stpcpy implementation for PowerPC64/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define USE_AS_STPCPY
+#include <sysdeps/powerpc/powerpc64/power7/strcpy.S>
+
+weak_alias (__stpcpy, stpcpy)
+libc_hidden_def (__stpcpy)
+libc_hidden_builtin_def (stpcpy)
diff --git a/sysdeps/powerpc/powerpc64/power7/strcasecmp.S b/sysdeps/powerpc/powerpc64/power7/strcasecmp.S
index 9eee384692..37785ea423 100644
--- a/sysdeps/powerpc/powerpc64/power7/strcasecmp.S
+++ b/sysdeps/powerpc/powerpc64/power7/strcasecmp.S
@@ -32,7 +32,11 @@
#endif
ENTRY (__STRCMP)
+#ifndef USE_IN_EXTENDED_LOCALE_MODEL
CALL_MCOUNT 2
+#else
+ CALL_MCOUNT 3
+#endif
#define rRTN r3 /* Return value */
#define rSTR1 r5 /* 1st string */
diff --git a/sysdeps/powerpc/powerpc64/power7/strchr.S b/sysdeps/powerpc/powerpc64/power7/strchr.S
index 3ffe7a1887..4679a158f1 100644
--- a/sysdeps/powerpc/powerpc64/power7/strchr.S
+++ b/sysdeps/powerpc/powerpc64/power7/strchr.S
@@ -35,8 +35,8 @@ ENTRY (strchr)
beq cr7,L(null_match)
/* Replicate byte to doubleword. */
- rlwimi r4,r4,8,16,23
- rlwimi r4,r4,16,0,15
+ insrdi r4,r4,8,48
+ insrdi r4,r4,16,32
insrdi r4,r4,32,0
/* Now r4 has a doubleword of c bytes and r0 has
@@ -47,11 +47,17 @@ ENTRY (strchr)
/* Move the doublewords left and right to discard the bits that are
not part of the string and bring them back as zeros. */
-
+#ifdef __LITTLE_ENDIAN__
+ srd r10,r10,r6
+ srd r11,r11,r6
+ sld r10,r10,r6
+ sld r11,r11,r6
+#else
sld r10,r10,r6
sld r11,r11,r6
srd r10,r10,r6
srd r11,r11,r6
+#endif
or r5,r10,r11 /* OR the results to speed things up. */
cmpdi cr7,r5,0 /* If r5 == 0, no c or null bytes
have been found. */
@@ -108,15 +114,24 @@ L(loop):
mr r11,r7
addi r8,r8,8
- /* r5 has the output of the cmpb instruction, that is, it contains
+ /* r10/r11 have the output of the cmpb instructions, that is,
0xff in the same position as the c/null byte in the original
doubleword from the string. Use that to calculate the pointer. */
L(done):
- cntlzd r4,r10 /* Count leading zeroes before c matches. */
- cntlzd r0,r11 /* Count leading zeroes before null matches. */
- cmpld cr7,r4,r0
+#ifdef __LITTLE_ENDIAN__
+ addi r3,r10,-1
+ andc r3,r3,r10
+ popcntd r0,r3
+ addi r4,r11,-1
+ andc r4,r4,r11
+ cmpld cr7,r3,r4
bgt cr7,L(no_match)
- srdi r0,r4,3 /* Convert leading zeroes to bytes. */
+#else
+ cntlzd r0,r10 /* Count leading zeros before c matches. */
+ cmpld cr7,r11,r10
+ bgt cr7,L(no_match)
+#endif
+ srdi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of the matching c byte
or null in case c was not found. */
blr
@@ -135,9 +150,13 @@ L(null_match):
/* Move the doublewords left and right to discard the bits that are
not part of the string and bring them back as zeros. */
-
+#ifdef __LITTLE_ENDIAN__
+ srd r5,r5,r6
+ sld r5,r5,r6
+#else
sld r5,r5,r6
srd r5,r5,r6
+#endif
cmpdi cr7,r5,0 /* If r10 == 0, no c or null bytes
have been found. */
bne cr7,L(done_null)
@@ -192,7 +211,13 @@ L(loop_null):
0xff in the same position as the null byte in the original
doubleword from the string. Use that to calculate the pointer. */
L(done_null):
+#ifdef __LITTLE_ENDIAN__
+ addi r0,r5,-1
+ andc r0,r0,r5
+ popcntd r0,r0
+#else
cntlzd r0,r5 /* Count leading zeros before the match. */
+#endif
srdi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of the matching null byte. */
blr
diff --git a/sysdeps/powerpc/powerpc64/power7/strchrnul.S b/sysdeps/powerpc/powerpc64/power7/strchrnul.S
index 9dbc51b0d1..df457525e2 100644
--- a/sysdeps/powerpc/powerpc64/power7/strchrnul.S
+++ b/sysdeps/powerpc/powerpc64/power7/strchrnul.S
@@ -27,8 +27,8 @@ ENTRY (__strchrnul)
clrrdi r8,r3,3 /* Align the address to doubleword boundary. */
/* Replicate byte to doubleword. */
- rlwimi r4,r4,8,16,23
- rlwimi r4,r4,16,0,15
+ insrdi r4,r4,8,48
+ insrdi r4,r4,16,32
insrdi r4,r4,32,0
rlwinm r6,r3,3,26,28 /* Calculate padding. */
@@ -44,10 +44,17 @@ ENTRY (__strchrnul)
/* Move the doublewords left and right to discard the bits that are
not part of the string and to bring them back as zeros. */
+#ifdef __LITTLE_ENDIAN__
+ srd r10,r10,r6
+ srd r9,r9,r6
+ sld r10,r10,r6
+ sld r9,r9,r6
+#else
sld r10,r10,r6
sld r9,r9,r6
srd r10,r10,r6
srd r9,r9,r6
+#endif
or r5,r9,r10 /* OR the results to speed things up. */
cmpdi cr7,r5,0 /* If r5 == 0, no c or null bytes
have been found. */
@@ -97,7 +104,7 @@ L(loop):
bne cr6,L(done)
/* The c/null byte must be in the second doubleword. Adjust the
- address again and move the result of cmpb to r10 so we can calculate
+ address again and move the result of cmpb to r5 so we can calculate
the pointer. */
mr r5,r10
addi r8,r8,8
@@ -106,7 +113,13 @@ L(loop):
0xff in the same position as the c/null byte in the original
doubleword from the string. Use that to calculate the pointer. */
L(done):
+#ifdef __LITTLE_ENDIAN__
+ addi r0,r5,-1
+ andc r0,r0,r5
+ popcntd r0,r0
+#else
cntlzd r0,r5 /* Count leading zeros before the match. */
+#endif
srdi r0,r0,3 /* Convert leading zeros to bytes. */
add r3,r8,r0 /* Return address of matching c/null byte. */
blr
diff --git a/sysdeps/powerpc/powerpc64/power7/strcpy.S b/sysdeps/powerpc/powerpc64/power7/strcpy.S
new file mode 100644
index 0000000000..5c341a1483
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power7/strcpy.S
@@ -0,0 +1,274 @@
+/* Optimized strcpy/stpcpy implementation for PowerPC64/POWER7.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+/* Implements the function
+
+ char * [r3] strcpy (char *dest [r3], const char *src [r4])
+
+ or
+
+ char * [r3] strcpy (char *dest [r3], const char *src [r4])
+
+ if USE_AS_STPCPY is defined. It tries to use aligned memory accesses
+ when possible using the following algorithm:
+
+ if (((((uintptr_t)dst & 0x7UL) == 0) && ((uintptr_t)src & 0x7UL) == 0))
+ goto aligned_doubleword_copy;
+ if (((((uintptr_t)dst & 0x3UL) == 0) && ((uintptr_t)src & 0x3UL) == 0))
+ goto aligned_word_copy;
+ if (((uintptr_t)dst & 0x7UL) == ((uintptr_t)src & 0x7UL))
+ goto same_alignment;
+ goto unaligned;
+
+ The aligned comparison are made using cmpb instructions. */
+
+#ifdef USE_AS_STPCPY
+# define FUNC_NAME __stpcpy
+#else
+# define FUNC_NAME strcpy
+#endif
+
+ .machine power7
+EALIGN (FUNC_NAME, 4, 0)
+ CALL_MCOUNT 2
+
+#define rTMP r0
+#ifdef USE_AS_STPCPY
+#define rRTN r3 /* pointer to previous word/doubleword in dest */
+#else
+#define rRTN r12 /* pointer to previous word/doubleword in dest */
+#endif
+#define rSRC r4 /* pointer to previous word/doubleword in src */
+#define rMASK r5 /* mask 0xffffffff | 0xffffffffffffffff */
+#define rWORD r6 /* current word from src */
+#define rALT r7 /* alternate word from src */
+#define rRTNAL r8 /* alignment of return pointer */
+#define rSRCAL r9 /* alignment of source pointer */
+#define rALCNT r10 /* bytes to read to reach 8 bytes alignment */
+#define rSUBAL r11 /* doubleword minus unaligned displacement */
+
+#ifndef USE_AS_STPCPY
+/* Save the dst pointer to use as return value. */
+ mr rRTN, r3
+#endif
+ or rTMP, rSRC, rRTN
+ clrldi. rTMP, rTMP, 61
+ bne L(check_word_alignment)
+ b L(aligned_doubleword_copy)
+
+L(same_alignment):
+/* Src and dst with same alignment: align both to doubleword. */
+ mr rALCNT, rRTN
+ lbz rWORD, 0(rSRC)
+ subfic rSUBAL, rRTNAL, 8
+ addi rRTN, rRTN, 1
+ addi rSRC, rSRC, 1
+ cmpdi cr7, rWORD, 0
+ stb rWORD, 0(rALCNT)
+ beq cr7, L(s2)
+
+ add rALCNT, rALCNT, rSUBAL
+ subf rALCNT, rRTN, rALCNT
+ addi rALCNT, rALCNT, 1
+ mtctr rALCNT
+ b L(s1)
+
+ .align 4
+L(s0):
+ addi rSRC, rSRC, 1
+ lbz rWORD, -1(rSRC)
+ cmpdi cr7, rWORD, 0
+ stb rWORD, -1(rALCNT)
+ beqlr cr7
+ mr rRTN, rALCNT
+L(s1):
+ addi rALCNT, rRTN,1
+ bdnz L(s0)
+ b L(aligned_doubleword_copy)
+ .align 4
+L(s2):
+ mr rRTN, rALCNT
+ blr
+
+/* For doubleword aligned memory, operate using doubleword load and stores. */
+ .align 4
+L(aligned_doubleword_copy):
+ li rMASK, 0
+ addi rRTN, rRTN, -8
+ ld rWORD, 0(rSRC)
+ b L(g2)
+
+ .align 4
+L(g0): ldu rALT, 8(rSRC)
+ stdu rWORD, 8(rRTN)
+ cmpb rTMP, rALT, rMASK
+ cmpdi rTMP, 0
+ bne L(g1)
+ ldu rWORD, 8(rSRC)
+ stdu rALT, 8(rRTN)
+L(g2): cmpb rTMP, rWORD, rMASK
+ cmpdi rTMP, 0 /* If rTMP is 0, no null's have been found. */
+ beq L(g0)
+
+ mr rALT, rWORD
+/* We've hit the end of the string. Do the rest byte-by-byte. */
+L(g1):
+#ifdef __LITTLE_ENDIAN__
+ extrdi. rTMP, rALT, 8, 56
+ stbu rALT, 8(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 48
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 40
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 32
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 24
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 16
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 8
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi rTMP, rALT, 8, 0
+ stbu rTMP, 1(rRTN)
+#else
+ extrdi. rTMP, rALT, 8, 0
+ stbu rTMP, 8(rRTN)
+ beqlr
+ extrdi. rTMP, rALT, 8, 8
+ stbu rTMP, 1(rRTN)
+ beqlr
+ extrdi. rTMP, rALT, 8, 16
+ stbu rTMP, 1(rRTN)
+ beqlr
+ extrdi. rTMP, rALT, 8, 24
+ stbu rTMP, 1(rRTN)
+ beqlr
+ extrdi. rTMP, rALT, 8, 32
+ stbu rTMP, 1(rRTN)
+ beqlr
+ extrdi. rTMP, rALT, 8, 40
+ stbu rTMP, 1(rRTN)
+ beqlr
+ extrdi. rTMP, rALT, 8, 48
+ stbu rTMP, 1(rRTN)
+ beqlr
+ stbu rALT, 1(rRTN)
+#endif
+ blr
+
+L(check_word_alignment):
+ clrldi. rTMP, rTMP, 62
+ beq L(aligned_word_copy)
+ rldicl rRTNAL, rRTN, 0, 61
+ rldicl rSRCAL, rSRC, 0, 61
+ cmpld cr7, rSRCAL, rRTNAL
+ beq cr7, L(same_alignment)
+ b L(unaligned)
+
+/* For word aligned memory, operate using word load and stores. */
+ .align 4
+L(aligned_word_copy):
+ li rMASK, 0
+ addi rRTN, rRTN, -4
+ lwz rWORD, 0(rSRC)
+ b L(g5)
+
+ .align 4
+L(g3): lwzu rALT, 4(rSRC)
+ stwu rWORD, 4(rRTN)
+ cmpb rTMP, rALT, rMASK
+ cmpwi rTMP, 0
+ bne L(g4)
+ lwzu rWORD, 4(rSRC)
+ stwu rALT, 4(rRTN)
+L(g5): cmpb rTMP, rWORD, rMASK
+ cmpwi rTMP, 0 /* If rTMP is 0, no null in word. */
+ beq L(g3)
+
+ mr rALT, rWORD
+/* We've hit the end of the string. Do the rest byte-by-byte. */
+L(g4):
+#ifdef __LITTLE_ENDIAN__
+ rlwinm. rTMP, rALT, 0, 24, 31
+ stbu rALT, 4(rRTN)
+ beqlr-
+ rlwinm. rTMP, rALT, 24, 24, 31
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ rlwinm. rTMP, rALT, 16, 24, 31
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ rlwinm rTMP, rALT, 8, 24, 31
+ stbu rTMP, 1(rRTN)
+#else
+ rlwinm. rTMP, rALT, 8, 24, 31
+ stbu rTMP, 4(rRTN)
+ beqlr
+ rlwinm. rTMP, rALT, 16, 24, 31
+ stbu rTMP, 1(rRTN)
+ beqlr
+ rlwinm. rTMP, rALT, 24, 24, 31
+ stbu rTMP, 1(rRTN)
+ beqlr
+ stbu rALT, 1(rRTN)
+#endif
+ blr
+
+/* Oh well. In this case, we just do a byte-by-byte copy. */
+ .align 4
+L(unaligned):
+ lbz rWORD, 0(rSRC)
+ addi rRTN, rRTN, -1
+ cmpdi rWORD, 0
+ beq L(u2)
+
+ .align 5
+L(u0): lbzu rALT, 1(rSRC)
+ stbu rWORD, 1(rRTN)
+ cmpdi rALT, 0
+ beq L(u1)
+ lbzu rWORD, 1(rSRC)
+ stbu rALT, 1(rRTN)
+ cmpdi rWORD, 0
+ beq L(u2)
+ lbzu rALT, 1(rSRC)
+ stbu rWORD, 1(rRTN)
+ cmpdi rALT, 0
+ beq L(u1)
+ lbzu rWORD, 1(rSRC)
+ stbu rALT, 1(rRTN)
+ cmpdi rWORD, 0
+ bne L(u0)
+L(u2): stbu rWORD, 1(rRTN)
+ blr
+L(u1): stbu rALT, 1(rRTN)
+ blr
+END (FUNC_NAME)
+
+#ifndef USE_AS_STPCPY
+libc_hidden_builtin_def (strcpy)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/power7/strlen.S b/sysdeps/powerpc/powerpc64/power7/strlen.S
index 343216952e..807ef1082e 100644
--- a/sysdeps/powerpc/powerpc64/power7/strlen.S
+++ b/sysdeps/powerpc/powerpc64/power7/strlen.S
@@ -30,7 +30,11 @@ ENTRY (strlen)
with cmpb. */
li r5,-1 /* MASK = 0xffffffffffffffff. */
ld r12,0(r4) /* Load doubleword from memory. */
+#ifdef __LITTLE_ENDIAN__
+ sld r5,r5,r6
+#else
srd r5,r5,r6 /* MASK = MASK >> padding. */
+#endif
orc r9,r12,r5 /* Mask bits that are not part of the string. */
cmpb r10,r9,r0 /* Check for null bytes in DWORD1. */
cmpdi cr7,r10,0 /* If r10 == 0, no null's have been found. */
@@ -48,9 +52,6 @@ ENTRY (strlen)
cmpb r10,r12,r0
cmpdi cr7,r10,0
bne cr7,L(done)
- b L(loop) /* We branch here (rather than falling through)
- to skip the nops due to heavy alignment
- of the loop below. */
/* Main loop to look for the end of the string. Since it's a
small loop (< 8 instructions), align it to 32-bytes. */
@@ -87,9 +88,15 @@ L(loop):
0xff in the same position as the null byte in the original
doubleword from the string. Use that to calculate the length. */
L(done):
- cntlzd r0,r10 /* Count leading zeroes before the match. */
+#ifdef __LITTLE_ENDIAN__
+ addi r9, r10, -1 /* Form a mask from trailing zeros. */
+ andc r9, r9, r10
+ popcntd r0, r9 /* Count the bits in the mask. */
+#else
+ cntlzd r0,r10 /* Count leading zeros before the match. */
+#endif
subf r5,r3,r4
- srdi r0,r0,3 /* Convert leading zeroes to bytes. */
+ srdi r0,r0,3 /* Convert leading/trailing zeros to bytes. */
add r3,r5,r0 /* Compute final length. */
blr
END (strlen)
diff --git a/sysdeps/powerpc/powerpc64/power7/strncmp.S b/sysdeps/powerpc/powerpc64/power7/strncmp.S
index 77ecad5ab1..e618b010bf 100644
--- a/sysdeps/powerpc/powerpc64/power7/strncmp.S
+++ b/sysdeps/powerpc/powerpc64/power7/strncmp.S
@@ -27,7 +27,7 @@
EALIGN (strncmp,5,0)
CALL_MCOUNT 3
-#define rTMP r0
+#define rTMP2 r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -40,6 +40,7 @@ EALIGN (strncmp,5,0)
#define r7F7F r9 /* constant 0x7f7f7f7f7f7f7f7f */
#define rNEG r10 /* ~(word in s1 | 0x7f7f7f7f7f7f7f7f) */
#define rBITDIF r11 /* bits that differ in s1 & s2 words */
+#define rTMP r12
dcbt 0,rSTR1
nop
@@ -83,12 +84,57 @@ L(g1): add rTMP,rFEFE,rWORD1
we don't compare two strings as different because of gunk beyond
the end of the strings... */
+#ifdef __LITTLE_ENDIAN__
+L(endstring):
+ addi rTMP2, rTMP, -1
+ beq cr1, L(equal)
+ andc rTMP2, rTMP2, rTMP
+ rldimi rTMP2, rTMP2, 1, 0
+ and rWORD2, rWORD2, rTMP2 /* Mask off gunk. */
+ and rWORD1, rWORD1, rTMP2
+ cmpd cr1, rWORD1, rWORD2
+ beq cr1, L(equal)
+ cmpb rBITDIF, rWORD1, rWORD2 /* 0xff on equal bytes. */
+ addi rNEG, rBITDIF, 1
+ orc rNEG, rNEG, rBITDIF /* 0's below LS differing byte. */
+ sldi rNEG, rNEG, 8 /* 1's above LS differing byte. */
+ andc rWORD1, rWORD1, rNEG /* mask off MS bytes. */
+ andc rWORD2, rWORD2, rNEG
+ xor. rBITDIF, rWORD1, rWORD2
+ sub rRTN, rWORD1, rWORD2
+ blt L(highbit)
+ sradi rRTN, rRTN, 63 /* must return an int. */
+ ori rRTN, rRTN, 1
+ blr
+L(equal):
+ li rRTN, 0
+ blr
+
+L(different):
+ ld rWORD1, -8(rSTR1)
+ cmpb rBITDIF, rWORD1, rWORD2 /* 0xff on equal bytes. */
+ addi rNEG, rBITDIF, 1
+ orc rNEG, rNEG, rBITDIF /* 0's below LS differing byte. */
+ sldi rNEG, rNEG, 8 /* 1's above LS differing byte. */
+ andc rWORD1, rWORD1, rNEG /* mask off MS bytes. */
+ andc rWORD2, rWORD2, rNEG
+ xor. rBITDIF, rWORD1, rWORD2
+ sub rRTN, rWORD1, rWORD2
+ blt L(highbit)
+ sradi rRTN, rRTN, 63
+ ori rRTN, rRTN, 1
+ blr
+L(highbit):
+ sradi rRTN, rWORD2, 63
+ ori rRTN, rRTN, 1
+ blr
+
+#else
L(endstring):
and rTMP,r7F7F,rWORD1
beq cr1,L(equal)
add rTMP,rTMP,r7F7F
xor. rBITDIF,rWORD1,rWORD2
-
andc rNEG,rNEG,rTMP
blt L(highbit)
cntlzd rBITDIF,rBITDIF
@@ -97,7 +143,7 @@ L(endstring):
cmpd cr1,rNEG,rBITDIF
sub rRTN,rWORD1,rWORD2
blt cr1,L(equal)
- sradi rRTN,rRTN,63
+ sradi rRTN,rRTN,63 /* must return an int. */
ori rRTN,rRTN,1
blr
L(equal):
@@ -105,7 +151,7 @@ L(equal):
blr
L(different):
- ldu rWORD1,-8(rSTR1)
+ ld rWORD1,-8(rSTR1)
xor. rBITDIF,rWORD1,rWORD2
sub rRTN,rWORD1,rWORD2
blt L(highbit)
@@ -113,11 +159,10 @@ L(different):
ori rRTN,rRTN,1
blr
L(highbit):
- srdi rWORD2,rWORD2,56
- srdi rWORD1,rWORD1,56
- sub rRTN,rWORD1,rWORD2
+ sradi rRTN,rWORD2,63
+ ori rRTN,rRTN,1
blr
-
+#endif
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
diff --git a/sysdeps/powerpc/powerpc64/power7/strnlen.S b/sysdeps/powerpc/powerpc64/power7/strnlen.S
index 37c7dbfe81..51591069df 100644
--- a/sysdeps/powerpc/powerpc64/power7/strnlen.S
+++ b/sysdeps/powerpc/powerpc64/power7/strnlen.S
@@ -24,33 +24,29 @@
ENTRY (__strnlen)
CALL_MCOUNT 2
dcbt 0,r3
- clrrdi r8,r3,3
+ clrrdi r8,r3,3
add r7,r3,r4 /* Calculate the last acceptable address. */
cmpldi r4,32
li r0,0 /* Doubleword with null chars. */
+ addi r7,r7,-1
+
/* If we have less than 33 bytes to search, skip to a faster code. */
ble L(small_range)
- cmpld cr7,r3,r7 /* Is the address equal or less than r3? If
- it's equal or less, it means size is either 0
- or a negative number. */
- ble cr7,L(proceed)
-
- li r7,-1 /* Make r11 the biggest if r4 <= 0. */
-L(proceed):
rlwinm r6,r3,3,26,28 /* Calculate padding. */
ld r12,0(r8) /* Load doubleword from memory. */
cmpb r10,r12,r0 /* Check for null bytes in DWORD1. */
+#ifdef __LITTLE_ENDIAN__
+ srd r10,r10,r6
+ sld r10,r10,r6
+#else
sld r10,r10,r6
srd r10,r10,r6
+#endif
cmpldi cr7,r10,0 /* If r10 == 0, no null's have been found. */
bne cr7,L(done)
- /* Are we done already? */
- addi r9,r8,8
- cmpld cr6,r9,r7
- bge cr6,L(end_max)
-
+ clrrdi r7,r7,3 /* Address of last doubleword. */
mtcrf 0x01,r8
/* Are we now aligned to a quadword boundary? If so, skip to
the main loop. Otherwise, go through the alignment code. */
@@ -63,17 +59,18 @@ L(proceed):
cmpldi cr7,r10,0
bne cr7,L(done)
- /* Are we done already? */
- addi r9,r8,8
- cmpld cr6,r9,r7
- bge cr6,L(end_max)
-
L(loop_setup):
- sub r5,r7,r9
+ /* The last dword we want to read in the loop below is the one
+ containing the last byte of the string, ie. the dword at
+ (s + size - 1) & ~7, or r7. The first dword read is at
+ r8 + 8, we read 2 * cnt dwords, so the last dword read will
+ be at r8 + 8 + 16 * cnt - 8. Solving for cnt gives
+ cnt = (r7 - r8) / 16 */
+ sub r5,r7,r8
srdi r6,r5,4 /* Number of loop iterations. */
mtctr r6 /* Setup the counter. */
- b L(loop)
- /* Main loop to look for the null byte backwards in the string. Since
+
+ /* Main loop to look for the null byte in the string. Since
it's a small loop (< 8 instructions), align it to 32-bytes. */
.p2align 5
L(loop):
@@ -89,15 +86,18 @@ L(loop):
cmpldi cr7,r5,0
bne cr7,L(found)
bdnz L(loop)
- /* We're here because the counter reached 0, and that means we
- didn't have any matches for null in the whole range. Just return
- the original size. */
- addi r9,r8,8
- cmpld cr6,r9,r7
- blt cr6,L(loop_small)
+
+ /* We may have one more dword to read. */
+ cmpld cr6,r8,r7
+ beq cr6,L(end_max)
+
+ ldu r12,8(r8)
+ cmpb r10,r12,r0
+ cmpldi cr6,r10,0
+ bne cr6,L(done)
L(end_max):
- sub r3,r7,r3
+ mr r3,r4
blr
/* OK, one (or both) of the doublewords contains a null byte. Check
@@ -119,52 +119,59 @@ L(found):
/* r10 has the output of the cmpb instruction, that is, it contains
0xff in the same position as the null byte in the original
doubleword from the string. Use that to calculate the length.
- We need to make sure the null char is *before* the start of the
- range (since we're going backwards). */
+ We need to make sure the null char is *before* the end of the
+ range. */
L(done):
- cntlzd r0,r10 /* Count leading zeroes before the match. */
- srdi r0,r0,3 /* Convert leading zeroes to bytes. */
- add r9,r8,r0
- sub r6,r9,r3 /* Length until the match. */
- cmpld r9,r7
- bgt L(end_max)
- mr r3,r6
- blr
-
- .align 4
-L(zero):
- li r3,0
+#ifdef __LITTLE_ENDIAN__
+ addi r0,r10,-1
+ andc r0,r0,r10
+ popcntd r0,r0
+#else
+ cntlzd r0,r10 /* Count leading zeros before the match. */
+#endif
+ sub r3,r8,r3
+ srdi r0,r0,3 /* Convert leading/trailing zeros to bytes. */
+ add r3,r3,r0 /* Length until the match. */
+ cmpld r3,r4
+ blelr
+ mr r3,r4
blr
/* Deals with size <= 32. */
.align 4
L(small_range):
cmpldi r4,0
- beq L(zero)
+ beq L(end_max)
+
+ clrrdi r7,r7,3 /* Address of last doubleword. */
rlwinm r6,r3,3,26,28 /* Calculate padding. */
- ld r12,0(r8) /* Load word from memory. */
+ ld r12,0(r8) /* Load doubleword from memory. */
cmpb r10,r12,r0 /* Check for null bytes in DWORD1. */
+#ifdef __LITTLE_ENDIAN__
+ srd r10,r10,r6
+ sld r10,r10,r6
+#else
sld r10,r10,r6
srd r10,r10,r6
+#endif
cmpldi cr7,r10,0
bne cr7,L(done)
- addi r9,r8,8
- cmpld r9,r7
- bge L(end_max)
- b L(loop_small)
+ cmpld r8,r7
+ beq L(end_max)
.p2align 5
L(loop_small):
ldu r12,8(r8)
cmpb r10,r12,r0
- addi r9,r8,8
cmpldi cr6,r10,0
bne cr6,L(done)
- cmpld r9,r7
- bge L(end_max)
- b L(loop_small)
+ cmpld r8,r7
+ bne L(loop_small)
+ mr r3,r4
+ blr
+
END (__strnlen)
weak_alias (__strnlen, strnlen)
libc_hidden_builtin_def (strnlen)
diff --git a/sysdeps/powerpc/powerpc64/power7/sub_n.S b/sysdeps/powerpc/powerpc64/power7/sub_n.S
new file mode 100644
index 0000000000..6afb81cf50
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power7/sub_n.S
@@ -0,0 +1,23 @@
+/* PowerPC64 mpn_lshift -- mpn_add_n/mpn_sub_n -- mpn addition and
+ subtraction.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+#define USE_AS_SUB
+#include "add_n.S"
diff --git a/sysdeps/powerpc/powerpc64/power8/fpu/Implies b/sysdeps/powerpc/powerpc64/power8/fpu/Implies
new file mode 100644
index 0000000000..7fd86fdf87
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power8/fpu/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power7/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power8/fpu/multiarch/Implies b/sysdeps/powerpc/powerpc64/power8/fpu/multiarch/Implies
new file mode 100644
index 0000000000..7fd86fdf87
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power8/fpu/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power7/fpu/multiarch
diff --git a/sysdeps/powerpc/powerpc64/power8/multiarch/Implies b/sysdeps/powerpc/powerpc64/power8/multiarch/Implies
new file mode 100644
index 0000000000..1fc7b7cd39
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/power8/multiarch/Implies
@@ -0,0 +1 @@
+powerpc/powerpc64/power7/multiarch
diff --git a/sysdeps/powerpc/powerpc64/ppc-mcount.S b/sysdeps/powerpc/powerpc64/ppc-mcount.S
index 3d21a70669..9824a55f5f 100644
--- a/sysdeps/powerpc/powerpc64/ppc-mcount.S
+++ b/sysdeps/powerpc/powerpc64/ppc-mcount.S
@@ -24,16 +24,16 @@
ENTRY(_mcount)
mflr r4
ld r11, 0(r1)
- stdu r1,-112(r1)
- cfi_adjust_cfa_offset (112)
- std r4, 128(r1)
- cfi_offset (lr, 16)
- ld r3, 16(r11)
+ stdu r1,-FRAME_MIN_SIZE(r1)
+ cfi_adjust_cfa_offset (FRAME_MIN_SIZE)
+ std r4, FRAME_MIN_SIZE+FRAME_LR_SAVE(r1)
+ cfi_offset (lr, FRAME_LR_SAVE)
+ ld r3, FRAME_LR_SAVE(r11)
bl JUMPTARGET(__mcount_internal)
nop
- ld r0, 128(r1)
+ ld r0, FRAME_MIN_SIZE+FRAME_LR_SAVE(r1)
mtlr r0
- addi r1,r1,112
+ addi r1,r1,FRAME_MIN_SIZE
blr
END(_mcount)
diff --git a/sysdeps/powerpc/powerpc64/setjmp-common.S b/sysdeps/powerpc/powerpc64/setjmp-common.S
index 58ec610620..6ab44d63ed 100644
--- a/sysdeps/powerpc/powerpc64/setjmp-common.S
+++ b/sysdeps/powerpc/powerpc64/setjmp-common.S
@@ -17,6 +17,7 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
+#include <stap-probe.h>
#define _ASM
#ifdef __NO_VMX__
#include <novmxsetjmp.h>
@@ -42,11 +43,11 @@
#endif
.machine "altivec"
-ENTRY (setjmp)
+ENTRY (setjmp_symbol)
CALL_MCOUNT 1
li r4,1 /* Set second argument to 1. */
- b JUMPTARGET (GLUE(__sigsetjmp,_ent))
-END (setjmp)
+ b JUMPTARGET (GLUE(__sigsetjmp_symbol,_ent))
+END (setjmp_symbol)
#if defined SHARED && !defined IS_IN_rtld && !defined __NO_VMX__
/* When called from within libc we need a special version of _setjmp
@@ -54,22 +55,23 @@ END (setjmp)
bugz #269. __GI__setjmp is used in csu/libc-start.c when
HAVE_CLEANUP_JMP_BUF is defined. */
ENTRY (__GI__setjmp)
- std r2,40(r1) /* Save the callers TOC in the save area. */
- cfi_endproc
-END_2 (__GI__setjmp)
-/* Fall thru. */
+ std r2,FRAME_TOC_SAVE(r1) /* Save the callers TOC in the save area. */
+ CALL_MCOUNT 1
+ li r4,0 /* Set second argument to 0. */
+ b JUMPTARGET (GLUE(__sigsetjmp_symbol,_ent))
+END (__GI__setjmp)
#endif
-ENTRY (_setjmp)
+ENTRY (_setjmp_symbol)
CALL_MCOUNT 1
li r4,0 /* Set second argument to 0. */
- b JUMPTARGET (GLUE(__sigsetjmp,_ent))
-END (_setjmp)
-libc_hidden_def (_setjmp)
+ b JUMPTARGET (GLUE(__sigsetjmp_symbol,_ent))
+END (_setjmp_symbol)
+libc_hidden_def (_setjmp_symbol)
-ENTRY (__sigsetjmp)
+ENTRY (__sigsetjmp_symbol)
CALL_MCOUNT 2
-JUMPTARGET(GLUE(__sigsetjmp,_ent)):
+JUMPTARGET(GLUE(__sigsetjmp_symbol,_ent)):
#ifdef PTR_MANGLE
mr r5, r1
PTR_MANGLE (r5, r6)
@@ -79,11 +81,14 @@ JUMPTARGET(GLUE(__sigsetjmp,_ent)):
#endif
mflr r0
#if defined SHARED && !defined IS_IN_rtld
- ld r5,40(r1) /* Retrieve the callers TOC. */
+ ld r5,FRAME_TOC_SAVE(r1) /* Retrieve the callers TOC. */
std r5,(JB_GPR2*8)(3)
#else
std r2,(JB_GPR2*8)(3)
#endif
+ /* setjmp probe expects longjmp first argument (8@3), second argument
+ (-4@4), and target address (8@0), respectively. */
+ LIBC_PROBE (setjmp, 3, 8@3, -4@4, 8@0)
std r14,((JB_GPRS+0)*8)(3)
stfd fp14,((JB_FPRS+0)*8)(3)
#ifdef PTR_MANGLE
@@ -95,7 +100,7 @@ JUMPTARGET(GLUE(__sigsetjmp,_ent)):
mfcr r0
std r16,((JB_GPRS+2)*8)(3)
stfd fp16,((JB_FPRS+2)*8)(3)
- std r0,(JB_CR*8)(3)
+ stw r0,((JB_CR*8)+4)(3) /* 32-bit CR. */
std r17,((JB_GPRS+3)*8)(3)
stfd fp17,((JB_FPRS+3)*8)(3)
std r18,((JB_GPRS+4)*8)(3)
@@ -139,50 +144,46 @@ JUMPTARGET(GLUE(__sigsetjmp,_ent)):
la r5,((JB_VRS)*8)(3)
andi. r6,r5,0xf
mfspr r0,VRSAVE
- stw r0,((JB_VRSAVE)*8)(3)
+ stw r0,((JB_VRSAVE)*8)(3) /* 32-bit VRSAVE. */
addi r6,r5,16
beq+ L(aligned_save_vmx)
- lvsr v0,0,r5
- vspltisb v1,-1 /* set v1 to all 1's */
- vspltisb v2,0 /* set v2 to all 0's */
- vperm v3,v2,v1,v0 /* v3 contains shift mask with num all 1 bytes
- on left = misalignment */
+ lvsr v0,0,r5
+ lvsl v1,0,r5
+ addi r6,r5,-16
- /* Special case for v20 we need to preserve what is in save area
- below v20 before obliterating it */
- lvx v5,0,r5
- vperm v20,v20,v20,v0
- vsel v5,v5,v20,v3
- vsel v20,v20,v2,v3
- stvx v5,0,r5
+# define save_misaligned_vmx(savevr,prevvr,shiftvr,tmpvr,savegpr,addgpr) \
+ addi addgpr,addgpr,32; \
+ vperm tmpvr,prevvr,savevr,shiftvr; \
+ stvx tmpvr,0,savegpr
-# define save_2vmx_partial(savevr,prev_savevr,hivr,shiftvr,maskvr,savegpr,addgpr) \
- addi addgpr,addgpr,32; \
- vperm savevr,savevr,savevr,shiftvr; \
- vsel hivr,prev_savevr,savevr,maskvr; \
- stvx hivr,0,savegpr;
+ /*
+ * We have to be careful not to corrupt the data below v20 and
+ * above v31. To keep things simple we just rotate both ends in
+ * the opposite direction to our main permute so we can use
+ * the common macro.
+ */
- save_2vmx_partial(v21,v20,v5,v0,v3,r6,r5)
- save_2vmx_partial(v22,v21,v5,v0,v3,r5,r6)
- save_2vmx_partial(v23,v22,v5,v0,v3,r6,r5)
- save_2vmx_partial(v24,v23,v5,v0,v3,r5,r6)
- save_2vmx_partial(v25,v24,v5,v0,v3,r6,r5)
- save_2vmx_partial(v26,v25,v5,v0,v3,r5,r6)
- save_2vmx_partial(v27,v26,v5,v0,v3,r6,r5)
- save_2vmx_partial(v28,v27,v5,v0,v3,r5,r6)
- save_2vmx_partial(v29,v28,v5,v0,v3,r6,r5)
- save_2vmx_partial(v30,v29,v5,v0,v3,r5,r6)
+ /* load and rotate data below v20 */
+ lvx v2,0,r5
+ vperm v2,v2,v2,v1
+ save_misaligned_vmx(v20,v2,v0,v3,r5,r6)
+ save_misaligned_vmx(v21,v20,v0,v3,r6,r5)
+ save_misaligned_vmx(v22,v21,v0,v3,r5,r6)
+ save_misaligned_vmx(v23,v22,v0,v3,r6,r5)
+ save_misaligned_vmx(v24,v23,v0,v3,r5,r6)
+ save_misaligned_vmx(v25,v24,v0,v3,r6,r5)
+ save_misaligned_vmx(v26,v25,v0,v3,r5,r6)
+ save_misaligned_vmx(v27,v26,v0,v3,r6,r5)
+ save_misaligned_vmx(v28,v27,v0,v3,r5,r6)
+ save_misaligned_vmx(v29,v28,v0,v3,r6,r5)
+ save_misaligned_vmx(v30,v29,v0,v3,r5,r6)
+ save_misaligned_vmx(v31,v30,v0,v3,r6,r5)
+ /* load and rotate data above v31 */
+ lvx v2,0,r6
+ vperm v2,v2,v2,v1
+ save_misaligned_vmx(v2,v31,v0,v3,r5,r6)
- /* Special case for r31 we need to preserve what is in save area
- above v31 before obliterating it */
- addi r5,r5,32
- vperm v31,v31,v31,v0
- lvx v4,0,r5
- vsel v5,v30,v31,v3
- stvx v5,0,r6
- vsel v4,v31,v4,v3
- stvx v4,0,r5
b L(no_vmx)
L(aligned_save_vmx):
@@ -216,18 +217,18 @@ L(no_vmx):
li r3,0
blr
#elif defined SHARED
- b JUMPTARGET (__sigjmp_save)
+ b JUMPTARGET (__sigjmp_save_symbol)
#else
mflr r0
- std r0,16(r1)
- stdu r1,-112(r1)
- cfi_adjust_cfa_offset(112)
- cfi_offset(lr,16)
- bl JUMPTARGET (__sigjmp_save)
+ std r0,FRAME_LR_SAVE(r1)
+ stdu r1,-FRAME_MIN_SIZE(r1)
+ cfi_adjust_cfa_offset(FRAME_MIN_SIZE)
+ cfi_offset(lr,FRAME_LR_SAVE)
+ bl JUMPTARGET (__sigjmp_save_symbol)
nop
- ld r0,112+16(r1)
- addi r1,r1,112
+ ld r0,FRAME_MIN_SIZE+FRAME_LR_SAVE(r1)
+ addi r1,r1,FRAME_MIN_SIZE
mtlr r0
blr
#endif
-END (__sigsetjmp)
+END (__sigsetjmp_symbol)
diff --git a/sysdeps/powerpc/powerpc64/setjmp.S b/sysdeps/powerpc/powerpc64/setjmp.S
index 667b9d12dd..5c6baf52df 100644
--- a/sysdeps/powerpc/powerpc64/setjmp.S
+++ b/sysdeps/powerpc/powerpc64/setjmp.S
@@ -22,35 +22,39 @@
#if defined NOT_IN_libc
/* Build a non-versioned object for rtld-*. */
+# define setjmp_symbol setjmp
+# define _setjmp_symbol _setjmp
+# define __sigsetjmp_symbol __sigsetjmp
+# define __sigjmp_save_symbol __sigjmp_save
# include "setjmp-common.S"
#else /* !NOT_IN_libc */
/* Build a versioned object for libc. */
-default_symbol_version (__vmxsetjmp, setjmp, GLIBC_2.3.4)
-default_symbol_version (__vmx_setjmp,_setjmp,GLIBC_2.3.4)
-default_symbol_version (__vmx__sigsetjmp,__sigsetjmp,GLIBC_2.3.4)
-# define setjmp __vmxsetjmp
-# define _setjmp __vmx_setjmp
-# define __sigsetjmp __vmx__sigsetjmp
-# define __sigjmp_save __vmx__sigjmp_save
+versioned_symbol (libc, __vmxsetjmp, setjmp, GLIBC_2_3_4)
+versioned_symbol (libc, __vmx_setjmp, _setjmp, GLIBC_2_3_4)
+versioned_symbol (libc, __vmx__sigsetjmp, __sigsetjmp, GLIBC_2_3_4)
+# define setjmp_symbol __vmxsetjmp
+# define _setjmp_symbol __vmx_setjmp
+# define __sigsetjmp_symbol __vmx__sigsetjmp
+# define __sigjmp_save_symbol __vmx__sigjmp_save
# include "setjmp-common.S"
strong_alias (__vmxsetjmp, __vmx__setjmp)
strong_alias (__vmx__sigsetjmp, __setjmp)
# if defined SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)
-# undef setjmp
-# undef _setjmp
-# undef __sigsetjmp
-# undef __sigjmp_save
+# undef setjmp_symbol
+# undef _setjmp_symbol
+# undef __sigsetjmp_symbol
+# undef __sigjmp_save_symbol
# undef JB_SIZE
# define __NO_VMX__
-symbol_version (__novmxsetjmp, setjmp, GLIBC_2.3)
-symbol_version (__novmx_setjmp,_setjmp,GLIBC_2.3);
-symbol_version (__novmx__sigsetjmp,__sigsetjmp,GLIBC_2.3)
-# define setjmp __novmxsetjmp
-# define _setjmp __novmx_setjmp
-# define __sigsetjmp __novmx__sigsetjmp
-# define __sigjmp_save __novmx__sigjmp_save
+compat_symbol (libc, __novmxsetjmp, setjmp, GLIBC_2_3)
+compat_symbol (libc, __novmx_setjmp,_setjmp, GLIBC_2_3);
+compat_symbol (libc, __novmx__sigsetjmp,__sigsetjmp, GLIBC_2_3)
+# define setjmp_symbol __novmxsetjmp
+# define _setjmp_symbol __novmx_setjmp
+# define __sigsetjmp_symbol __novmx__sigsetjmp
+# define __sigjmp_save_symbol __novmx__sigjmp_save
# include "setjmp-common.S"
strong_alias (__novmxsetjmp, __novmx__setjmp)
# endif
diff --git a/sysdeps/powerpc/powerpc64/stackguard-macros.h b/sysdeps/powerpc/powerpc64/stackguard-macros.h
index 9da879c611..e80a683e64 100644
--- a/sysdeps/powerpc/powerpc64/stackguard-macros.h
+++ b/sysdeps/powerpc/powerpc64/stackguard-macros.h
@@ -2,3 +2,13 @@
#define STACK_CHK_GUARD \
({ uintptr_t x; asm ("ld %0,-28688(13)" : "=r" (x)); x; })
+
+#define POINTER_CHK_GUARD \
+ ({ \
+ uintptr_t x; \
+ asm ("ld %0,%1(13)" \
+ : "=r" (x) \
+ : "i" (offsetof (tcbhead_t, pointer_guard) - TLS_TCB_OFFSET - sizeof (tcbhead_t)) \
+ ); \
+ x; \
+ })
diff --git a/sysdeps/powerpc/powerpc64/stpcpy.S b/sysdeps/powerpc/powerpc64/stpcpy.S
index 070cd4662f..09aa3be6b5 100644
--- a/sysdeps/powerpc/powerpc64/stpcpy.S
+++ b/sysdeps/powerpc/powerpc64/stpcpy.S
@@ -16,87 +16,8 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <sysdep.h>
-
-/* See strlen.s for comments on how the end-of-string testing works. */
-
-/* char * [r3] stpcpy (char *dest [r3], const char *src [r4]) */
-
-EALIGN (__stpcpy, 4, 0)
- CALL_MCOUNT 2
-
-#define rTMP r0
-#define rRTN r3
-#define rDEST r3 /* pointer to previous word in dest */
-#define rSRC r4 /* pointer to previous word in src */
-#define rWORD r6 /* current word from src */
-#define rFEFE r7 /* 0xfefefeff */
-#define r7F7F r8 /* 0x7f7f7f7f */
-#define rNEG r9 /* ~(word in src | 0x7f7f7f7f) */
-#define rALT r10 /* alternate word from src */
-
- or rTMP, rSRC, rDEST
- clrldi. rTMP, rTMP, 62
- addi rDEST, rDEST, -4
- bne L(unaligned)
-
- lis rFEFE, -0x101
- lis r7F7F, 0x7f7f
- lwz rWORD, 0(rSRC)
- addi rFEFE, rFEFE, -0x101
- addi r7F7F, r7F7F, 0x7f7f
- b L(g2)
-
-L(g0): lwzu rALT, 4(rSRC)
- stwu rWORD, 4(rDEST)
- add rTMP, rFEFE, rALT
- nor rNEG, r7F7F, rALT
- and. rTMP, rTMP, rNEG
- bne- L(g1)
- lwzu rWORD, 4(rSRC)
- stwu rALT, 4(rDEST)
-L(g2): add rTMP, rFEFE, rWORD
- nor rNEG, r7F7F, rWORD
- and. rTMP, rTMP, rNEG
- beq+ L(g0)
-
- mr rALT, rWORD
-/* We've hit the end of the string. Do the rest byte-by-byte. */
-L(g1): rlwinm. rTMP, rALT, 8, 24, 31
- stbu rTMP, 4(rDEST)
- beqlr-
- rlwinm. rTMP, rALT, 16, 24, 31
- stbu rTMP, 1(rDEST)
- beqlr-
- rlwinm. rTMP, rALT, 24, 24, 31
- stbu rTMP, 1(rDEST)
- beqlr-
- stbu rALT, 1(rDEST)
- blr
-
-/* Oh well. In this case, we just do a byte-by-byte copy. */
- .align 4
- nop
-L(unaligned):
- lbz rWORD, 0(rSRC)
- addi rDEST, rDEST, 3
- cmpwi rWORD, 0
- beq- L(u2)
-
-L(u0): lbzu rALT, 1(rSRC)
- stbu rWORD, 1(rDEST)
- cmpwi rALT, 0
- beq- L(u1)
- nop /* Let 601 load start of loop. */
- lbzu rWORD, 1(rSRC)
- stbu rALT, 1(rDEST)
- cmpwi rWORD, 0
- bne+ L(u0)
-L(u2): stbu rWORD, 1(rDEST)
- blr
-L(u1): stbu rALT, 1(rDEST)
- blr
-END (__stpcpy)
+#define USE_AS_STPCPY
+#include <sysdeps/powerpc/powerpc64/strcpy.S>
weak_alias (__stpcpy, stpcpy)
libc_hidden_def (__stpcpy)
diff --git a/sysdeps/powerpc/powerpc64/strchr.S b/sysdeps/powerpc/powerpc64/strchr.S
index d2d8cd361a..da707ae587 100644
--- a/sysdeps/powerpc/powerpc64/strchr.S
+++ b/sysdeps/powerpc/powerpc64/strchr.S
@@ -37,11 +37,13 @@ ENTRY (strchr)
#define rIGN r10 /* number of bits we should ignore in the first word */
#define rMASK r11 /* mask with the bits to ignore set to 0 */
#define rTMP3 r12
+#define rTMP4 rIGN
+#define rTMP5 rMASK
dcbt 0,rRTN
- rlwimi rCHR, rCHR, 8, 16, 23
+ insrdi rCHR, rCHR, 8, 48
li rMASK, -1
- rlwimi rCHR, rCHR, 16, 0, 15
+ insrdi rCHR, rCHR, 16, 32
rlwinm rIGN, rRTN, 3, 26, 28
insrdi rCHR, rCHR, 32, 0
lis rFEFE, -0x101
@@ -54,64 +56,93 @@ ENTRY (strchr)
add rFEFE, rFEFE, rTMP1
/* Test the first (partial?) word. */
ld rWORD, 0(rSTR)
+#ifdef __LITTLE_ENDIAN__
+ sld rMASK, rMASK, rIGN
+#else
srd rMASK, rMASK, rIGN
+#endif
orc rWORD, rWORD, rMASK
add rTMP1, rFEFE, rWORD
nor rTMP2, r7F7F, rWORD
- and. rTMP1, rTMP1, rTMP2
+ and. rTMP4, rTMP1, rTMP2
xor rTMP3, rCHR, rWORD
orc rTMP3, rTMP3, rMASK
b L(loopentry)
/* The loop. */
-L(loop):ldu rWORD, 8(rSTR)
- and. rTMP1, rTMP1, rTMP2
+L(loop):
+ ldu rWORD, 8(rSTR)
+ and. rTMP5, rTMP1, rTMP2
/* Test for 0. */
- add rTMP1, rFEFE, rWORD
- nor rTMP2, r7F7F, rWORD
+ add rTMP1, rFEFE, rWORD /* x - 0x01010101. */
+ nor rTMP2, r7F7F, rWORD /* ~(x | 0x7f7f7f7f) == ~x & 0x80808080. */
bne L(foundit)
- and. rTMP1, rTMP1, rTMP2
+ and. rTMP4, rTMP1, rTMP2 /* (x - 0x01010101) & ~x & 0x80808080. */
/* Start test for the bytes we're looking for. */
xor rTMP3, rCHR, rWORD
L(loopentry):
add rTMP1, rFEFE, rTMP3
nor rTMP2, r7F7F, rTMP3
beq L(loop)
+
/* There is a zero byte in the word, but may also be a matching byte (either
before or after the zero byte). In fact, we may be looking for a
- zero byte, in which case we return a match. We guess that this hasn't
- happened, though. */
-L(missed):
- and. rTMP1, rTMP1, rTMP2
+ zero byte, in which case we return a match. */
+ and. rTMP5, rTMP1, rTMP2
li rRTN, 0
beqlr
-/* It did happen. Decide which one was first...
- I'm not sure if this is actually faster than a sequence of
- rotates, compares, and branches (we use it anyway because it's shorter). */
+/* At this point:
+ rTMP5 bytes are 0x80 for each match of c, 0 otherwise.
+ rTMP4 bytes are 0x80 for each match of 0, 0 otherwise.
+ But there may be false matches in the next most significant byte from
+ a true match due to carries. This means we need to recalculate the
+ matches using a longer method for big-endian. */
+#ifdef __LITTLE_ENDIAN__
+ addi rTMP1, rTMP5, -1
+ andc rTMP1, rTMP1, rTMP5
+ cntlzd rCLZB, rTMP1
+ addi rTMP2, rTMP4, -1
+ andc rTMP2, rTMP2, rTMP4
+ cmpld rTMP1, rTMP2
+ bgtlr
+ subfic rCLZB, rCLZB, 64-7
+#else
+/* I think we could reduce this by two instructions by keeping the "nor"
+ results from the loop for reuse here. See strlen.S tail. Similarly
+ one instruction could be pruned from L(foundit). */
and rFEFE, r7F7F, rWORD
- or rMASK, r7F7F, rWORD
+ or rTMP5, r7F7F, rWORD
and rTMP1, r7F7F, rTMP3
- or rIGN, r7F7F, rTMP3
+ or rTMP4, r7F7F, rTMP3
add rFEFE, rFEFE, r7F7F
add rTMP1, rTMP1, r7F7F
- nor rWORD, rMASK, rFEFE
- nor rTMP2, rIGN, rTMP1
+ nor rWORD, rTMP5, rFEFE
+ nor rTMP2, rTMP4, rTMP1
+ cntlzd rCLZB, rTMP2
cmpld rWORD, rTMP2
bgtlr
- cntlzd rCLZB, rTMP2
+#endif
srdi rCLZB, rCLZB, 3
add rRTN, rSTR, rCLZB
blr
L(foundit):
+#ifdef __LITTLE_ENDIAN__
+ addi rTMP1, rTMP5, -1
+ andc rTMP1, rTMP1, rTMP5
+ cntlzd rCLZB, rTMP1
+ subfic rCLZB, rCLZB, 64-7-64
+ sradi rCLZB, rCLZB, 3
+#else
and rTMP1, r7F7F, rTMP3
- or rIGN, r7F7F, rTMP3
+ or rTMP4, r7F7F, rTMP3
add rTMP1, rTMP1, r7F7F
- nor rTMP2, rIGN, rTMP1
+ nor rTMP2, rTMP4, rTMP1
cntlzd rCLZB, rTMP2
subi rSTR, rSTR, 8
srdi rCLZB, rCLZB, 3
+#endif
add rRTN, rSTR, rCLZB
blr
END (strchr)
diff --git a/sysdeps/powerpc/powerpc64/strcmp.S b/sysdeps/powerpc/powerpc64/strcmp.S
index c9d6dac121..70854689d3 100644
--- a/sysdeps/powerpc/powerpc64/strcmp.S
+++ b/sysdeps/powerpc/powerpc64/strcmp.S
@@ -25,7 +25,7 @@
EALIGN (strcmp, 4, 0)
CALL_MCOUNT 2
-#define rTMP r0
+#define rTMP2 r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -35,6 +35,7 @@ EALIGN (strcmp, 4, 0)
#define r7F7F r8 /* constant 0x7f7f7f7f7f7f7f7f */
#define rNEG r9 /* ~(word in s1 | 0x7f7f7f7f7f7f7f7f) */
#define rBITDIF r10 /* bits that differ in s1 & s2 words */
+#define rTMP r11
dcbt 0,rSTR1
or rTMP, rSTR2, rSTR1
@@ -58,19 +59,66 @@ L(g0): ldu rWORD1, 8(rSTR1)
ldu rWORD2, 8(rSTR2)
L(g1): add rTMP, rFEFE, rWORD1
nor rNEG, r7F7F, rWORD1
-
and. rTMP, rTMP, rNEG
cmpd cr1, rWORD1, rWORD2
beq+ L(g0)
-L(endstring):
+
/* OK. We've hit the end of the string. We need to be careful that
we don't compare two strings as different because of gunk beyond
the end of the strings... */
+#ifdef __LITTLE_ENDIAN__
+L(endstring):
+ addi rTMP2, rTMP, -1
+ beq cr1, L(equal)
+ andc rTMP2, rTMP2, rTMP
+ rldimi rTMP2, rTMP2, 1, 0
+ and rWORD2, rWORD2, rTMP2 /* Mask off gunk. */
+ and rWORD1, rWORD1, rTMP2
+ cmpd cr1, rWORD1, rWORD2
+ beq cr1, L(equal)
+ xor rBITDIF, rWORD1, rWORD2 /* rBITDIF has bits that differ. */
+ neg rNEG, rBITDIF
+ and rNEG, rNEG, rBITDIF /* rNEG has LS bit that differs. */
+ cntlzd rNEG, rNEG /* bitcount of the bit. */
+ andi. rNEG, rNEG, 56 /* bitcount to LS byte that differs. */
+ sld rWORD1, rWORD1, rNEG /* shift left to clear MS bytes. */
+ sld rWORD2, rWORD2, rNEG
+ xor. rBITDIF, rWORD1, rWORD2
+ sub rRTN, rWORD1, rWORD2
+ blt- L(highbit)
+ sradi rRTN, rRTN, 63 /* must return an int. */
+ ori rRTN, rRTN, 1
+ blr
+L(equal):
+ li rRTN, 0
+ blr
+
+L(different):
+ ld rWORD1, -8(rSTR1)
+ xor rBITDIF, rWORD1, rWORD2 /* rBITDIF has bits that differ. */
+ neg rNEG, rBITDIF
+ and rNEG, rNEG, rBITDIF /* rNEG has LS bit that differs. */
+ cntlzd rNEG, rNEG /* bitcount of the bit. */
+ andi. rNEG, rNEG, 56 /* bitcount to LS byte that differs. */
+ sld rWORD1, rWORD1, rNEG /* shift left to clear MS bytes. */
+ sld rWORD2, rWORD2, rNEG
+ xor. rBITDIF, rWORD1, rWORD2
+ sub rRTN, rWORD1, rWORD2
+ blt- L(highbit)
+ sradi rRTN, rRTN, 63
+ ori rRTN, rRTN, 1
+ blr
+L(highbit):
+ sradi rRTN, rWORD2, 63
+ ori rRTN, rRTN, 1
+ blr
+
+#else
+L(endstring):
and rTMP, r7F7F, rWORD1
beq cr1, L(equal)
add rTMP, rTMP, r7F7F
xor. rBITDIF, rWORD1, rWORD2
-
andc rNEG, rNEG, rTMP
blt- L(highbit)
cntlzd rBITDIF, rBITDIF
@@ -79,7 +127,7 @@ L(endstring):
cmpd cr1, rNEG, rBITDIF
sub rRTN, rWORD1, rWORD2
blt- cr1, L(equal)
- sradi rRTN, rRTN, 63
+ sradi rRTN, rRTN, 63 /* must return an int. */
ori rRTN, rRTN, 1
blr
L(equal):
@@ -95,11 +143,10 @@ L(different):
ori rRTN, rRTN, 1
blr
L(highbit):
- srdi rWORD2, rWORD2, 56
- srdi rWORD1, rWORD1, 56
- sub rRTN, rWORD1, rWORD2
+ sradi rRTN, rWORD2, 63
+ ori rRTN, rRTN, 1
blr
-
+#endif
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
diff --git a/sysdeps/powerpc/powerpc64/strcpy.S b/sysdeps/powerpc/powerpc64/strcpy.S
index 4c6fd3f9d7..793325d7be 100644
--- a/sysdeps/powerpc/powerpc64/strcpy.S
+++ b/sysdeps/powerpc/powerpc64/strcpy.S
@@ -22,25 +22,38 @@
/* char * [r3] strcpy (char *dest [r3], const char *src [r4]) */
-EALIGN (strcpy, 4, 0)
+#ifdef USE_AS_STPCPY
+# define FUNC_NAME __stpcpy
+#else
+# define FUNC_NAME strcpy
+#endif
+
+EALIGN (FUNC_NAME, 4, 0)
CALL_MCOUNT 2
#define rTMP r0
-#define rRTN r3 /* incoming DEST arg preserved as result */
-#define rSRC r4 /* pointer to previous word in src */
-#define rDEST r5 /* pointer to previous word in dest */
+#ifdef USE_AS_STPCPY
+#define rRTN r3 /* pointer to previous word/doubleword in dest */
+#else
+#define rRTN r12 /* pointer to previous word/doubleword in dest */
+#endif
+#define rSRC r4 /* pointer to previous word/doubleword in src */
#define rWORD r6 /* current word from src */
-#define rFEFE r7 /* constant 0xfefefefefefefeff (-0x0101010101010101) */
-#define r7F7F r8 /* constant 0x7f7f7f7f7f7f7f7f */
-#define rNEG r9 /* ~(word in s1 | 0x7f7f7f7f7f7f7f7f) */
+#define rFEFE r7 /* constant 0xfefefeff | 0xfefefefefefefeff */
+#define r7F7F r8 /* constant 0x7f7f7f7f | 0x7f7f7f7f7f7f7f7f */
+#define rNEG r9 /* ~(word in s1 | r7F7F) */
#define rALT r10 /* alternate word from src */
- dcbt 0,rSRC
+#ifndef USE_AS_STPCPY
+/* Save the dst pointer to use as return value. */
+ mr rRTN, r3
+#endif
or rTMP, rSRC, rRTN
clrldi. rTMP, rTMP, 61
- addi rDEST, rRTN, -8
- dcbtst 0,rRTN
- bne L(unaligned)
+ bne L(check_word_alignment)
+
+/* For doubleword aligned memory, operate using doubleword load and stores. */
+ addi rRTN, rRTN, -8
lis rFEFE, -0x101
lis r7F7F, 0x7f7f
@@ -53,13 +66,13 @@ EALIGN (strcpy, 4, 0)
b L(g2)
L(g0): ldu rALT, 8(rSRC)
- stdu rWORD, 8(rDEST)
+ stdu rWORD, 8(rRTN)
add rTMP, rFEFE, rALT
nor rNEG, r7F7F, rALT
and. rTMP, rTMP, rNEG
bne- L(g1)
ldu rWORD, 8(rSRC)
- stdu rALT, 8(rDEST)
+ stdu rALT, 8(rRTN)
L(g2): add rTMP, rFEFE, rWORD
nor rNEG, r7F7F, rWORD
and. rTMP, rTMP, rNEG
@@ -68,28 +81,110 @@ L(g2): add rTMP, rFEFE, rWORD
mr rALT, rWORD
/* We've hit the end of the string. Do the rest byte-by-byte. */
L(g1):
+#ifdef __LITTLE_ENDIAN__
+ extrdi. rTMP, rALT, 8, 56
+ stbu rALT, 8(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 48
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 40
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 32
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 24
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 16
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi. rTMP, rALT, 8, 8
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ extrdi rTMP, rALT, 8, 0
+ stbu rTMP, 1(rRTN)
+#else
extrdi. rTMP, rALT, 8, 0
- stb rTMP, 8(rDEST)
+ stbu rTMP, 8(rRTN)
beqlr-
extrdi. rTMP, rALT, 8, 8
- stb rTMP, 9(rDEST)
+ stbu rTMP, 1(rRTN)
beqlr-
extrdi. rTMP, rALT, 8, 16
- stb rTMP, 10(rDEST)
+ stbu rTMP, 1(rRTN)
beqlr-
extrdi. rTMP, rALT, 8, 24
- stb rTMP, 11(rDEST)
+ stbu rTMP, 1(rRTN)
beqlr-
extrdi. rTMP, rALT, 8, 32
- stb rTMP, 12(rDEST)
- beqlr-
+ stbu rTMP, 1(rRTN)
+ beqlr
extrdi. rTMP, rALT, 8, 40
- stb rTMP, 13(rDEST)
+ stbu rTMP, 1(rRTN)
beqlr-
extrdi. rTMP, rALT, 8, 48
- stb rTMP, 14(rDEST)
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ stbu rALT, 1(rRTN)
+#endif
+ blr
+
+L(check_word_alignment):
+ clrldi. rTMP, rTMP, 62
+ bne L(unaligned)
+
+/* For word aligned memory, operate using word load and stores. */
+ addi rRTN, rRTN, -4
+
+ lis rFEFE, -0x101
+ lis r7F7F, 0x7f7f
+ lwz rWORD, 0(rSRC)
+ addi rFEFE, rFEFE, -0x101
+ addi r7F7F, r7F7F, 0x7f7f
+ b L(g5)
+
+L(g3): lwzu rALT, 4(rSRC)
+ stwu rWORD, 4(rRTN)
+ add rTMP, rFEFE, rALT
+ nor rNEG, r7F7F, rALT
+ and. rTMP, rTMP, rNEG
+ bne- L(g4)
+ lwzu rWORD, 4(rSRC)
+ stwu rALT, 4(rRTN)
+L(g5): add rTMP, rFEFE, rWORD
+ nor rNEG, r7F7F, rWORD
+ and. rTMP, rTMP, rNEG
+ beq+ L(g3)
+
+ mr rALT, rWORD
+/* We've hit the end of the string. Do the rest byte-by-byte. */
+L(g4):
+#ifdef __LITTLE_ENDIAN__
+ rlwinm. rTMP, rALT, 0, 24, 31
+ stbu rALT, 4(rRTN)
+ beqlr-
+ rlwinm. rTMP, rALT, 24, 24, 31
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ rlwinm. rTMP, rALT, 16, 24, 31
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ rlwinm rTMP, rALT, 8, 24, 31
+ stbu rTMP, 1(rRTN)
+#else
+ rlwinm. rTMP, rALT, 8, 24, 31
+ stbu rTMP, 4(rRTN)
+ beqlr-
+ rlwinm. rTMP, rALT, 16, 24, 31
+ stbu rTMP, 1(rRTN)
+ beqlr-
+ rlwinm. rTMP, rALT, 24, 24, 31
+ stbu rTMP, 1(rRTN)
beqlr-
- stb rALT, 15(rDEST)
+ stbu rALT, 1(rRTN)
+#endif
blr
/* Oh well. In this case, we just do a byte-by-byte copy. */
@@ -97,23 +192,25 @@ L(g1):
nop
L(unaligned):
lbz rWORD, 0(rSRC)
- addi rDEST, rRTN, -1
+ addi rRTN, rRTN, -1
cmpwi rWORD, 0
beq- L(u2)
L(u0): lbzu rALT, 1(rSRC)
- stbu rWORD, 1(rDEST)
+ stbu rWORD, 1(rRTN)
cmpwi rALT, 0
beq- L(u1)
nop /* Let 601 load start of loop. */
lbzu rWORD, 1(rSRC)
- stbu rALT, 1(rDEST)
+ stbu rALT, 1(rRTN)
cmpwi rWORD, 0
bne+ L(u0)
-L(u2): stb rWORD, 1(rDEST)
+L(u2): stbu rWORD, 1(rRTN)
blr
-L(u1): stb rALT, 1(rDEST)
+L(u1): stbu rALT, 1(rRTN)
blr
+END (FUNC_NAME)
-END (strcpy)
+#ifndef USE_AS_STPCPY
libc_hidden_builtin_def (strcpy)
+#endif
diff --git a/sysdeps/powerpc/powerpc64/strlen.S b/sysdeps/powerpc/powerpc64/strlen.S
index 0f9b5eea9f..4ed1ba3ad1 100644
--- a/sysdeps/powerpc/powerpc64/strlen.S
+++ b/sysdeps/powerpc/powerpc64/strlen.S
@@ -29,7 +29,12 @@
1 is subtracted you get a value in the range 0x00-0x7f, none of which
have their high bit set. The expression here is
(x + 0xfefefeff) & ~(x | 0x7f7f7f7f), which gives 0x00000000 when
- there were no 0x00 bytes in the word.
+ there were no 0x00 bytes in the word. You get 0x80 in bytes that
+ match, but possibly false 0x80 matches in the next more significant
+ byte to a true match due to carries. For little-endian this is
+ of no consequence since the least significant match is the one
+ we're interested in, but big-endian needs method 2 to find which
+ byte matches.
2) Given a word 'x', we can test to see _which_ byte was zero by
calculating ~(((x & 0x7f7f7f7f) + 0x7f7f7f7f) | x | 0x7f7f7f7f).
@@ -62,7 +67,7 @@
Answer:
1) Added a Data Cache Block Touch early to prefetch the first 128
byte cache line. Adding dcbt instructions to the loop would not be
- effective since most strings will be shorter than the cache line.*/
+ effective since most strings will be shorter than the cache line. */
/* Some notes on register usage: Under the SVR4 ABI, we can use registers
0 and 3 through 12 (so long as we don't call any procedures) without
@@ -78,7 +83,7 @@
ENTRY (strlen)
CALL_MCOUNT 1
-#define rTMP1 r0
+#define rTMP4 r0
#define rRTN r3 /* incoming STR arg, outgoing result */
#define rSTR r4 /* current string position */
#define rPADN r5 /* number of padding bits we prepend to the
@@ -88,9 +93,9 @@ ENTRY (strlen)
#define rWORD1 r8 /* current string doubleword */
#define rWORD2 r9 /* next string doubleword */
#define rMASK r9 /* mask for first string doubleword */
-#define rTMP2 r10
-#define rTMP3 r11
-#define rTMP4 r12
+#define rTMP1 r10
+#define rTMP2 r11
+#define rTMP3 r12
dcbt 0,rRTN
clrrdi rSTR, rRTN, 3
@@ -100,30 +105,36 @@ ENTRY (strlen)
addi r7F7F, r7F7F, 0x7f7f
li rMASK, -1
insrdi r7F7F, r7F7F, 32, 0
-/* That's the setup done, now do the first pair of doublewords.
- We make an exception and use method (2) on the first two doublewords,
- to reduce overhead. */
+/* We use method (2) on the first two doublewords, because rFEFE isn't
+ required which reduces setup overhead. Also gives a faster return
+ for small strings on big-endian due to needing to recalculate with
+ method (2) anyway. */
+#ifdef __LITTLE_ENDIAN__
+ sld rMASK, rMASK, rPADN
+#else
srd rMASK, rMASK, rPADN
+#endif
and rTMP1, r7F7F, rWORD1
or rTMP2, r7F7F, rWORD1
lis rFEFE, -0x101
add rTMP1, rTMP1, r7F7F
addi rFEFE, rFEFE, -0x101
- nor rTMP1, rTMP2, rTMP1
- and. rWORD1, rTMP1, rMASK
+ nor rTMP3, rTMP2, rTMP1
+ and. rTMP3, rTMP3, rMASK
mtcrf 0x01, rRTN
bne L(done0)
- sldi rTMP1, rFEFE, 32
- add rFEFE, rFEFE, rTMP1
+ sldi rTMP1, rFEFE, 32
+ add rFEFE, rFEFE, rTMP1
/* Are we now aligned to a doubleword boundary? */
bt 28, L(loop)
/* Handle second doubleword of pair. */
+/* Perhaps use method (1) here for little-endian, saving one instruction? */
ldu rWORD1, 8(rSTR)
and rTMP1, r7F7F, rWORD1
or rTMP2, r7F7F, rWORD1
add rTMP1, rTMP1, r7F7F
- nor. rWORD1, rTMP2, rTMP1
+ nor. rTMP3, rTMP2, rTMP1
bne L(done0)
/* The loop. */
@@ -137,28 +148,52 @@ L(loop):
add rTMP3, rFEFE, rWORD2
nor rTMP4, r7F7F, rWORD2
bne L(done1)
- and. rTMP1, rTMP3, rTMP4
+ and. rTMP3, rTMP3, rTMP4
beq L(loop)
+#ifndef __LITTLE_ENDIAN__
and rTMP1, r7F7F, rWORD2
add rTMP1, rTMP1, r7F7F
- andc rWORD1, rTMP4, rTMP1
+ andc rTMP3, rTMP4, rTMP1
b L(done0)
L(done1):
and rTMP1, r7F7F, rWORD1
subi rSTR, rSTR, 8
add rTMP1, rTMP1, r7F7F
- andc rWORD1, rTMP2, rTMP1
+ andc rTMP3, rTMP2, rTMP1
/* When we get to here, rSTR points to the first doubleword in the string that
- contains a zero byte, and the most significant set bit in rWORD1 is in that
- byte. */
+ contains a zero byte, and rTMP3 has 0x80 for bytes that are zero, and 0x00
+ otherwise. */
L(done0):
- cntlzd rTMP3, rWORD1
+ cntlzd rTMP3, rTMP3
subf rTMP1, rRTN, rSTR
srdi rTMP3, rTMP3, 3
add rRTN, rTMP1, rTMP3
blr
+#else
+
+L(done0):
+ addi rTMP1, rTMP3, -1 /* Form a mask from trailing zeros. */
+ andc rTMP1, rTMP1, rTMP3
+ cntlzd rTMP1, rTMP1 /* Count bits not in the mask. */
+ subf rTMP3, rRTN, rSTR
+ subfic rTMP1, rTMP1, 64-7
+ srdi rTMP1, rTMP1, 3
+ add rRTN, rTMP1, rTMP3
+ blr
+
+L(done1):
+ addi rTMP3, rTMP1, -1
+ andc rTMP3, rTMP3, rTMP1
+ cntlzd rTMP3, rTMP3
+ subf rTMP1, rRTN, rSTR
+ subfic rTMP3, rTMP3, 64-7-64
+ sradi rTMP3, rTMP3, 3
+ add rRTN, rTMP1, rTMP3
+ blr
+#endif
+
END (strlen)
libc_hidden_builtin_def (strlen)
diff --git a/sysdeps/powerpc/powerpc64/strncmp.S b/sysdeps/powerpc/powerpc64/strncmp.S
index 779d9f7f6f..8f842c4b26 100644
--- a/sysdeps/powerpc/powerpc64/strncmp.S
+++ b/sysdeps/powerpc/powerpc64/strncmp.S
@@ -25,7 +25,7 @@
EALIGN (strncmp, 4, 0)
CALL_MCOUNT 3
-#define rTMP r0
+#define rTMP2 r0
#define rRTN r3
#define rSTR1 r3 /* first string arg */
#define rSTR2 r4 /* second string arg */
@@ -36,6 +36,7 @@ EALIGN (strncmp, 4, 0)
#define r7F7F r9 /* constant 0x7f7f7f7f7f7f7f7f */
#define rNEG r10 /* ~(word in s1 | 0x7f7f7f7f7f7f7f7f) */
#define rBITDIF r11 /* bits that differ in s1 & s2 words */
+#define rTMP r12
dcbt 0,rSTR1
or rTMP, rSTR2, rSTR1
@@ -77,12 +78,59 @@ L(g1): add rTMP, rFEFE, rWORD1
we don't compare two strings as different because of gunk beyond
the end of the strings... */
+#ifdef __LITTLE_ENDIAN__
+L(endstring):
+ addi rTMP2, rTMP, -1
+ beq cr1, L(equal)
+ andc rTMP2, rTMP2, rTMP
+ rldimi rTMP2, rTMP2, 1, 0
+ and rWORD2, rWORD2, rTMP2 /* Mask off gunk. */
+ and rWORD1, rWORD1, rTMP2
+ cmpd cr1, rWORD1, rWORD2
+ beq cr1, L(equal)
+ xor rBITDIF, rWORD1, rWORD2 /* rBITDIF has bits that differ. */
+ neg rNEG, rBITDIF
+ and rNEG, rNEG, rBITDIF /* rNEG has LS bit that differs. */
+ cntlzd rNEG, rNEG /* bitcount of the bit. */
+ andi. rNEG, rNEG, 56 /* bitcount to LS byte that differs. */
+ sld rWORD1, rWORD1, rNEG /* shift left to clear MS bytes. */
+ sld rWORD2, rWORD2, rNEG
+ xor. rBITDIF, rWORD1, rWORD2
+ sub rRTN, rWORD1, rWORD2
+ blt- L(highbit)
+ sradi rRTN, rRTN, 63 /* must return an int. */
+ ori rRTN, rRTN, 1
+ blr
+L(equal):
+ li rRTN, 0
+ blr
+
+L(different):
+ ld rWORD1, -8(rSTR1)
+ xor rBITDIF, rWORD1, rWORD2 /* rBITDIF has bits that differ. */
+ neg rNEG, rBITDIF
+ and rNEG, rNEG, rBITDIF /* rNEG has LS bit that differs. */
+ cntlzd rNEG, rNEG /* bitcount of the bit. */
+ andi. rNEG, rNEG, 56 /* bitcount to LS byte that differs. */
+ sld rWORD1, rWORD1, rNEG /* shift left to clear MS bytes. */
+ sld rWORD2, rWORD2, rNEG
+ xor. rBITDIF, rWORD1, rWORD2
+ sub rRTN, rWORD1, rWORD2
+ blt- L(highbit)
+ sradi rRTN, rRTN, 63
+ ori rRTN, rRTN, 1
+ blr
+L(highbit):
+ sradi rRTN, rWORD2, 63
+ ori rRTN, rRTN, 1
+ blr
+
+#else
L(endstring):
and rTMP, r7F7F, rWORD1
beq cr1, L(equal)
add rTMP, rTMP, r7F7F
xor. rBITDIF, rWORD1, rWORD2
-
andc rNEG, rNEG, rTMP
blt- L(highbit)
cntlzd rBITDIF, rBITDIF
@@ -91,7 +139,7 @@ L(endstring):
cmpd cr1, rNEG, rBITDIF
sub rRTN, rWORD1, rWORD2
blt- cr1, L(equal)
- sradi rRTN, rRTN, 63
+ sradi rRTN, rRTN, 63 /* must return an int. */
ori rRTN, rRTN, 1
blr
L(equal):
@@ -99,7 +147,7 @@ L(equal):
blr
L(different):
- ldu rWORD1, -8(rSTR1)
+ ld rWORD1, -8(rSTR1)
xor. rBITDIF, rWORD1, rWORD2
sub rRTN, rWORD1, rWORD2
blt- L(highbit)
@@ -107,11 +155,10 @@ L(different):
ori rRTN, rRTN, 1
blr
L(highbit):
- srdi rWORD2, rWORD2, 56
- srdi rWORD1, rWORD1, 56
- sub rRTN, rWORD1, rWORD2
+ sradi rRTN, rWORD2, 63
+ ori rRTN, rRTN, 1
blr
-
+#endif
/* Oh well. In this case, we just do a byte-by-byte comparison. */
.align 4
diff --git a/sysdeps/powerpc/powerpc64/submul_1.S b/sysdeps/powerpc/powerpc64/submul_1.S
new file mode 100644
index 0000000000..145b1d403c
--- /dev/null
+++ b/sysdeps/powerpc/powerpc64/submul_1.S
@@ -0,0 +1,21 @@
+/* PowerPC64 __mpn_addmul_1 -- Multiply a limb vector with a limb and subtract
+ the result to a second limb vector.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define USE_AS_SUBMUL
+#include "addmul_1.S"
diff --git a/sysdeps/powerpc/powerpc64/sysdep.h b/sysdeps/powerpc/powerpc64/sysdep.h
index 57fa8ba78f..112e4187c5 100644
--- a/sysdeps/powerpc/powerpc64/sysdep.h
+++ b/sysdeps/powerpc/powerpc64/sysdep.h
@@ -20,25 +20,67 @@
#ifdef __ASSEMBLER__
+/* Stack frame offsets. */
+#if _CALL_ELF != 2
+#define FRAME_MIN_SIZE 112
+#define FRAME_MIN_SIZE_PARM 112
+#define FRAME_BACKCHAIN 0
+#define FRAME_CR_SAVE 8
+#define FRAME_LR_SAVE 16
+#define FRAME_TOC_SAVE 40
+#define FRAME_PARM_SAVE 48
+#define FRAME_PARM1_SAVE 48
+#define FRAME_PARM2_SAVE 56
+#define FRAME_PARM3_SAVE 64
+#define FRAME_PARM4_SAVE 72
+#define FRAME_PARM5_SAVE 80
+#define FRAME_PARM6_SAVE 88
+#define FRAME_PARM7_SAVE 96
+#define FRAME_PARM8_SAVE 104
+#define FRAME_PARM9_SAVE 112
+#else
+#define FRAME_MIN_SIZE 32
+#define FRAME_MIN_SIZE_PARM 96
+#define FRAME_BACKCHAIN 0
+#define FRAME_CR_SAVE 8
+#define FRAME_LR_SAVE 16
+#define FRAME_TOC_SAVE 24
+#define FRAME_PARM_SAVE 32
+#define FRAME_PARM1_SAVE 32
+#define FRAME_PARM2_SAVE 40
+#define FRAME_PARM3_SAVE 48
+#define FRAME_PARM4_SAVE 56
+#define FRAME_PARM5_SAVE 64
+#define FRAME_PARM6_SAVE 72
+#define FRAME_PARM7_SAVE 80
+#define FRAME_PARM8_SAVE 88
+#define FRAME_PARM9_SAVE 96
+#endif
+
/* Support macros for CALL_MCOUNT. */
+#if _CALL_ELF == 2
+#define call_mcount_parm_offset (-64)
+#else
+#define call_mcount_parm_offset FRAME_PARM_SAVE
+#endif
.macro SAVE_ARG NARG
.if \NARG
SAVE_ARG \NARG-1
- std 2+\NARG,40+8*(\NARG)(1)
+ std 2+\NARG,call_mcount_parm_offset-8+8*(\NARG)(1)
.endif
.endm
.macro REST_ARG NARG
.if \NARG
REST_ARG \NARG-1
- ld 2+\NARG,112+40+8*(\NARG)(1)
+ ld 2+\NARG,FRAME_MIN_SIZE_PARM+call_mcount_parm_offset-8+8*(\NARG)(1)
.endif
.endm
.macro CFI_SAVE_ARG NARG
.if \NARG
CFI_SAVE_ARG \NARG-1
- cfi_offset(2+\NARG,40+8*(\NARG))
+ cfi_offset(2+\NARG,call_mcount_parm_offset-8+8*(\NARG))
.endif
.endm
@@ -55,25 +97,35 @@
#ifdef PROF
mflr r0
SAVE_ARG \NARG
- std r0,16(r1)
- stdu r1,-112(r1)
- cfi_adjust_cfa_offset(112)
- cfi_offset(lr,16)
+ std r0,FRAME_LR_SAVE(r1)
+ stdu r1,-FRAME_MIN_SIZE_PARM(r1)
+ cfi_adjust_cfa_offset(FRAME_MIN_SIZE_PARM)
+ cfi_offset(lr,FRAME_LR_SAVE)
CFI_SAVE_ARG \NARG
bl JUMPTARGET (_mcount)
#ifndef SHARED
nop
#endif
- ld r0,128(r1)
+ ld r0,FRAME_MIN_SIZE_PARM+FRAME_LR_SAVE(r1)
REST_ARG \NARG
mtlr r0
- addi r1,r1,112
- cfi_adjust_cfa_offset(-112)
+ addi r1,r1,FRAME_MIN_SIZE_PARM
+ cfi_adjust_cfa_offset(-FRAME_MIN_SIZE_PARM)
cfi_restore(lr)
CFI_REST_ARG \NARG
#endif
.endm
+#if _CALL_ELF != 2
+
+/* Macro to prepare for calling via a function pointer. */
+ .macro PPC64_LOAD_FUNCPTR PTR
+ ld r12,0(\PTR)
+ ld r2,8(\PTR)
+ mtctr r12
+ ld r11,16(\PTR)
+ .endm
+
#ifdef USE_PPC64_OVERLAPPING_OPD
# define OPD_ENT(name) .quad BODY_LABEL (name), .TOC.@tocbase
#else
@@ -81,7 +133,6 @@
#endif
#define ENTRY_1(name) \
- .section ".text"; \
.type BODY_LABEL(name),@function; \
.globl name; \
.section ".opd","aw"; \
@@ -108,12 +159,37 @@ name##: OPD_ENT (name); \
.size name,.-BODY_LABEL(name); \
.size BODY_LABEL(name),.-BODY_LABEL(name);
#endif
+#define LOCALENTRY(name)
+
+#else /* _CALL_ELF */
+
+/* Macro to prepare for calling via a function pointer. */
+ .macro PPC64_LOAD_FUNCPTR PTR
+ mr r12,\PTR
+ mtctr r12
+ .endm
+
+#define DOT_LABEL(X) X
+#define BODY_LABEL(X) X
+#define ENTRY_2(name) \
+ .globl name; \
+ .type name,@function;
+#define END_2(name) \
+ .size name,.-name;
+#define LOCALENTRY(name) \
+1: addis r2,r12,.TOC.-1b@ha; \
+ addi r2,r2,.TOC.-1b@l; \
+ .localentry name,.-name;
+
+#endif /* _CALL_ELF */
#define ENTRY(name) \
+ .section ".text"; \
ENTRY_2(name) \
.align ALIGNARG(2); \
BODY_LABEL(name): \
- cfi_startproc;
+ cfi_startproc; \
+ LOCALENTRY(name)
#define EALIGN_W_0 /* No words to insert. */
#define EALIGN_W_1 nop
@@ -127,11 +203,13 @@ BODY_LABEL(name): \
/* EALIGN is like ENTRY, but does alignment to 'words'*4 bytes
past a 2^alignt boundary. */
#define EALIGN(name, alignt, words) \
+ .section ".text"; \
ENTRY_2(name) \
.align ALIGNARG(alignt); \
EALIGN_W_##words; \
BODY_LABEL(name): \
- cfi_startproc;
+ cfi_startproc; \
+ LOCALENTRY(name)
/* Local labels stripped out by the linker. */
#undef L
@@ -231,15 +309,15 @@ LT_LABELSUFFIX(name,_name_end): ; \
.else; \
.Local_syscall_error: \
mflr 0; \
- std 0,16(1); \
- stdu 1,-112(1); \
- cfi_adjust_cfa_offset(112); \
- cfi_offset(lr,16); \
+ std 0,FRAME_LR_SAVE(1); \
+ stdu 1,-FRAME_MIN_SIZE(1); \
+ cfi_adjust_cfa_offset(FRAME_MIN_SIZE); \
+ cfi_offset(lr,FRAME_LR_SAVE); \
bl JUMPTARGET(__syscall_error); \
nop; \
- ld 0,112+16(1); \
- addi 1,1,112; \
- cfi_adjust_cfa_offset(-112); \
+ ld 0,FRAME_MIN_SIZE+FRAME_LR_SAVE(1); \
+ addi 1,1,FRAME_MIN_SIZE; \
+ cfi_adjust_cfa_offset(-FRAME_MIN_SIZE); \
mtlr 0; \
cfi_restore(lr); \
blr; \
@@ -286,27 +364,68 @@ LT_LABELSUFFIX(name,_name_end): ; \
#else /* !__ASSEMBLER__ */
+#if _CALL_ELF != 2
+
+#define PPC64_LOAD_FUNCPTR(ptr) \
+ "ld 12,0(" #ptr ");\n" \
+ "ld 2,8(" #ptr ");\n" \
+ "mtctr 12;\n" \
+ "ld 11,16(" #ptr ");"
+
#ifdef USE_PPC64_OVERLAPPING_OPD
# define OPD_ENT(name) ".quad " BODY_PREFIX #name ", .TOC.@tocbase;"
#else
# define OPD_ENT(name) ".quad " BODY_PREFIX #name ", .TOC.@tocbase, 0;"
#endif
+#define ENTRY_1(name) \
+ ".type " BODY_PREFIX #name ",@function;\n" \
+ ".globl " #name ";\n" \
+ ".pushsection \".opd\",\"aw\";\n" \
+ ".align 3;\n" \
+#name ":\n" \
+ OPD_ENT (name) "\n" \
+ ".popsection;"
+
#ifdef HAVE_ASM_GLOBAL_DOT_NAME
# define DOT_PREFIX "."
# define BODY_PREFIX "."
# define ENTRY_2(name) \
".globl " BODY_PREFIX #name ";\n" \
+ ENTRY_1(name) "\n" \
".size " #name ", 24;"
# define END_2(name) \
".size " BODY_PREFIX #name ",.-" BODY_PREFIX #name ";"
#else
# define DOT_PREFIX ""
# define BODY_PREFIX ".LY"
-# define ENTRY_2(name) ".type " #name ",@function;"
+# define ENTRY_2(name) \
+ ".type " #name ",@function;\n" \
+ ENTRY_1(name)
# define END_2(name) \
".size " #name ",.-" BODY_PREFIX #name ";\n" \
".size " BODY_PREFIX #name ",.-" BODY_PREFIX #name ";"
#endif
+#define LOCALENTRY(name)
+
+#else /* _CALL_ELF */
+
+#define PPC64_LOAD_FUNCPTR(ptr) \
+ "mr 12," #ptr ";\n" \
+ "mtctr 12;"
+
+#define DOT_PREFIX ""
+#define BODY_PREFIX ""
+#define ENTRY_2(name) \
+ ".type " #name ",@function;\n" \
+ ".globl " #name ";"
+#define END_2(name) \
+ ".size " #name ",.-" #name ";"
+#define LOCALENTRY(name) \
+ "1: addis 2,12,.TOC.-1b@ha;\n" \
+ "addi 2,2,.TOC.-1b@l;\n" \
+ ".localentry " #name ",.-" #name ";"
+
+#endif /* _CALL_ELF */
#endif /* __ASSEMBLER__ */
diff --git a/sysdeps/powerpc/powerpc64/tst-audit.h b/sysdeps/powerpc/powerpc64/tst-audit.h
index ad6545ed3a..0fbe1fec52 100644
--- a/sysdeps/powerpc/powerpc64/tst-audit.h
+++ b/sysdeps/powerpc/powerpc64/tst-audit.h
@@ -18,8 +18,16 @@
License along with the GNU C Library. If not, see
<http://www.gnu.org/licenses/>. */
+#if _CALL_ELF != 2
#define pltenter la_ppc64_gnu_pltenter
#define pltexit la_ppc64_gnu_pltexit
#define La_regs La_ppc64_regs
#define La_retval La_ppc64_retval
#define int_retval lrv_r3
+#else
+#define pltenter la_ppc64v2_gnu_pltenter
+#define pltexit la_ppc64v2_gnu_pltexit
+#define La_regs La_ppc64v2_regs
+#define La_retval La_ppc64v2_retval
+#define int_retval lrv_r3
+#endif
diff --git a/sysdeps/powerpc/preconfigure b/sysdeps/powerpc/preconfigure
new file mode 100644
index 0000000000..1741c251f1
--- /dev/null
+++ b/sysdeps/powerpc/preconfigure
@@ -0,0 +1,11 @@
+# Check for e500.
+
+case "$machine" in
+powerpc)
+ $CC $CFLAGS $CPPFLAGS -E -dM -xc /dev/null > conftest.i
+ if grep -q __NO_FPRS__ conftest.i && ! grep -q _SOFT_FLOAT conftest.i; then
+ base_machine=powerpc machine=powerpc/powerpc32/e500
+ fi
+ rm -f conftest.i
+ ;;
+esac
diff --git a/sysdeps/powerpc/soft-fp/sfp-machine.h b/sysdeps/powerpc/soft-fp/sfp-machine.h
new file mode 100644
index 0000000000..35a38b0031
--- /dev/null
+++ b/sysdeps/powerpc/soft-fp/sfp-machine.h
@@ -0,0 +1,112 @@
+#define _FP_W_TYPE_SIZE 32
+#define _FP_W_TYPE unsigned long
+#define _FP_WS_TYPE signed long
+#define _FP_I_TYPE long
+
+#define _FP_MUL_MEAT_S(R,X,Y) \
+ _FP_MUL_MEAT_1_wide(_FP_WFRACBITS_S,R,X,Y,umul_ppmm)
+#define _FP_MUL_MEAT_D(R,X,Y) \
+ _FP_MUL_MEAT_2_wide(_FP_WFRACBITS_D,R,X,Y,umul_ppmm)
+#define _FP_MUL_MEAT_Q(R,X,Y) \
+ _FP_MUL_MEAT_4_wide(_FP_WFRACBITS_Q,R,X,Y,umul_ppmm)
+
+#define _FP_DIV_MEAT_S(R,X,Y) _FP_DIV_MEAT_1_loop(S,R,X,Y)
+#define _FP_DIV_MEAT_D(R,X,Y) _FP_DIV_MEAT_2_udiv(D,R,X,Y)
+#define _FP_DIV_MEAT_Q(R,X,Y) _FP_DIV_MEAT_4_udiv(Q,R,X,Y)
+
+#define _FP_NANFRAC_S ((_FP_QNANBIT_S << 1) - 1)
+#define _FP_NANFRAC_D ((_FP_QNANBIT_D << 1) - 1), -1
+#define _FP_NANFRAC_Q ((_FP_QNANBIT_Q << 1) - 1), -1, -1, -1
+#define _FP_NANSIGN_S 0
+#define _FP_NANSIGN_D 0
+#define _FP_NANSIGN_Q 0
+
+#define _FP_KEEPNANFRACP 1
+#define _FP_QNANNEGATEDP 0
+
+/* Someone please check this. */
+#define _FP_CHOOSENAN(fs, wc, R, X, Y, OP) \
+ do { \
+ if ((_FP_FRAC_HIGH_RAW_##fs(X) & _FP_QNANBIT_##fs) \
+ && !(_FP_FRAC_HIGH_RAW_##fs(Y) & _FP_QNANBIT_##fs)) \
+ { \
+ R##_s = Y##_s; \
+ _FP_FRAC_COPY_##wc(R,Y); \
+ } \
+ else \
+ { \
+ R##_s = X##_s; \
+ _FP_FRAC_COPY_##wc(R,X); \
+ } \
+ R##_c = FP_CLS_NAN; \
+ } while (0)
+
+#if defined __NO_FPRS__ && !defined _SOFT_FLOAT
+
+/* Exception flags. We use the bit positions of the appropriate bits
+ in the FPEFSCR. */
+
+# include <fenv_libc.h>
+# include <sysdep.h>
+# include <sys/prctl.h>
+
+int __feraiseexcept_soft (int);
+libc_hidden_proto (__feraiseexcept_soft)
+
+# define FP_EX_INEXACT SPEFSCR_FINXS
+# define FP_EX_INVALID SPEFSCR_FINVS
+# define FP_EX_DIVZERO SPEFSCR_FDBZS
+# define FP_EX_UNDERFLOW SPEFSCR_FUNFS
+# define FP_EX_OVERFLOW SPEFSCR_FOVFS
+
+# define _FP_DECL_EX \
+ int _spefscr __attribute__ ((unused)), _ftrapex __attribute__ ((unused)) = 0
+# define FP_INIT_ROUNDMODE \
+ do \
+ { \
+ int _r; \
+ INTERNAL_SYSCALL_DECL (_err); \
+ \
+ _spefscr = fegetenv_register (); \
+ _r = INTERNAL_SYSCALL (prctl, _err, 2, PR_GET_FPEXC, &_ftrapex); \
+ if (INTERNAL_SYSCALL_ERROR_P (_r, _err)) \
+ _ftrapex = 0; \
+ } \
+ while (0)
+# define FP_INIT_EXCEPTIONS /* Empty. */
+
+# define FP_HANDLE_EXCEPTIONS __feraiseexcept_soft (_fex)
+# define FP_ROUNDMODE (_spefscr & 0x3)
+
+/* Not correct in general, but sufficient for the uses in soft-fp. */
+# define FP_TRAPPING_EXCEPTIONS (_ftrapex & PR_FP_EXC_UND \
+ ? FP_EX_UNDERFLOW \
+ : 0)
+
+#else
+
+/* Exception flags. We use the bit positions of the appropriate bits
+ in the FPSCR, which also correspond to the FE_* bits. This makes
+ everything easier ;-). */
+# define FP_EX_INVALID (1 << (31 - 2))
+# define FP_EX_OVERFLOW (1 << (31 - 3))
+# define FP_EX_UNDERFLOW (1 << (31 - 4))
+# define FP_EX_DIVZERO (1 << (31 - 5))
+# define FP_EX_INEXACT (1 << (31 - 6))
+
+# define FP_HANDLE_EXCEPTIONS __simulate_exceptions (_fex)
+# define FP_ROUNDMODE __sim_round_mode_thread
+# define FP_TRAPPING_EXCEPTIONS \
+ (~__sim_disabled_exceptions_thread & 0x3e000000)
+
+#endif
+
+extern __thread int __sim_exceptions_thread attribute_tls_model_ie;
+libc_hidden_tls_proto (__sim_exceptions_thread, tls_model ("initial-exec"));
+extern __thread int __sim_disabled_exceptions_thread attribute_tls_model_ie;
+libc_hidden_tls_proto (__sim_disabled_exceptions_thread,
+ tls_model ("initial-exec"));
+extern __thread int __sim_round_mode_thread attribute_tls_model_ie;
+libc_hidden_tls_proto (__sim_round_mode_thread, tls_model ("initial-exec"));
+
+extern void __simulate_exceptions (int x) attribute_hidden;
diff --git a/sysdeps/powerpc/sysdep.h b/sysdeps/powerpc/sysdep.h
index 1b5334ad34..bc2cb6681a 100644
--- a/sysdeps/powerpc/sysdep.h
+++ b/sysdeps/powerpc/sysdep.h
@@ -144,6 +144,21 @@
#define VRSAVE 256
+/* The 32-bit words of a 64-bit dword are at these offsets in memory. */
+#if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN
+# define LOWORD 0
+# define HIWORD 4
+#else
+# define LOWORD 4
+# define HIWORD 0
+#endif
+
+/* The high 16-bit word of a 64-bit dword is at this offset in memory. */
+#if defined __LITTLE_ENDIAN__ || defined _LITTLE_ENDIAN
+# define HISHORT 6
+#else
+# define HISHORT 0
+#endif
/* This seems to always be the case on PPC. */
#define ALIGNARG(log2) log2
diff --git a/sysdeps/s390/Versions b/sysdeps/s390/Versions
index e18617c399..baf9842eeb 100644
--- a/sysdeps/s390/Versions
+++ b/sysdeps/s390/Versions
@@ -3,4 +3,8 @@ ld {
# runtime interface to TLS
__tls_get_offset;
}
+ GLIBC_PRIVATE {
+ # Exported by ld used by libc.
+ __tls_get_addr_internal;
+ }
}
diff --git a/sysdeps/s390/dl-tls.h b/sysdeps/s390/dl-tls.h
index 68a5af4152..52192a26d8 100644
--- a/sysdeps/s390/dl-tls.h
+++ b/sysdeps/s390/dl-tls.h
@@ -26,11 +26,26 @@ typedef struct
#ifdef SHARED
-/* This is the prototype for the GNU version. */
-extern void *__tls_get_addr (tls_index *ti) attribute_hidden;
+
extern unsigned long __tls_get_offset (unsigned long got_offset);
# ifdef IS_IN_rtld
+
+# include <shlib-compat.h>
+
+extern void *__tls_get_addr (tls_index *ti) attribute_hidden;
+/* Make a temporary alias of __tls_get_addr to remove the hidden
+ attribute. Then export __tls_get_addr as __tls_get_addr_internal
+ for use from libc. We do not want to export __tls_get_addr, but we
+ do need to use it from libc when looking up the address of a TLS
+ variable. We don't use __tls_get_offset because it requires r12 to
+ be setup and that might not always be true. Either way it's more
+ optimal to use __tls_get_addr directly (that's what
+ __tls_get_offset does anyways). */
+strong_alias (__tls_get_addr, __tls_get_addr_internal_tmp);
+versioned_symbol (ld, __tls_get_addr_internal_tmp,
+ __tls_get_addr_internal, GLIBC_PRIVATE);
+
/* The special thing about the s390 TLS ABI is that we do not have the
standard __tls_get_addr function but the __tls_get_offset function
which differs in two important aspects:
@@ -63,15 +78,21 @@ __tls_get_offset:\n\
1: .long __tls_get_addr - 0b\n\
");
# endif
-# endif
+# else /* IS_IN_rtld */
+extern void *__tls_get_addr_internal (tls_index *ti);
+# endif /* !IS_IN_rtld */
# define GET_ADDR_OFFSET \
(ti->ti_offset - (unsigned long) __builtin_thread_pointer ())
-# define __TLS_GET_ADDR(__ti) \
- ({ extern char _GLOBAL_OFFSET_TABLE_[] attribute_hidden; \
- (void *) __tls_get_offset ((char *) (__ti) - _GLOBAL_OFFSET_TABLE_) \
- + (unsigned long) __builtin_thread_pointer (); })
+/* Use the privately exported __tls_get_addr_internal instead of
+ __tls_get_offset in order to avoid the __tls_get_offset special
+ linkage requiring the GOT pointer to be set up in r12. The
+ compiler will take care of setting up r12 only if itself issued the
+ __tls_get_offset call. */
+# define __TLS_GET_ADDR(__ti) \
+ ({ (void *) __tls_get_addr_internal ((char *) (__ti)) \
+ + (unsigned long) __builtin_thread_pointer (); })
#endif
diff --git a/sysdeps/s390/ffs.c b/sysdeps/s390/ffs.c
index 807441da64..2dbb7430e2 100644
--- a/sysdeps/s390/ffs.c
+++ b/sysdeps/s390/ffs.c
@@ -63,6 +63,7 @@ __ffs (x)
}
weak_alias (__ffs, ffs)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
#if ULONG_MAX == UINT_MAX
#undef ffsl
diff --git a/sysdeps/s390/fpu/fegetround.c b/sysdeps/s390/fpu/fegetround.c
index 4843a56d26..94482f6318 100644
--- a/sysdeps/s390/fpu/fegetround.c
+++ b/sysdeps/s390/fpu/fegetround.c
@@ -29,3 +29,4 @@ fegetround (void)
return cw & FPC_RM_MASK;
}
+libm_hidden_def (fegetround)
diff --git a/sysdeps/s390/s390-32/configure b/sysdeps/s390/s390-32/configure
index 669bb9be5c..024565f85a 100644
--- a/sysdeps/s390/s390-32/configure
+++ b/sysdeps/s390/s390-32/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/s390.
$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
diff --git a/sysdeps/s390/s390-32/configure.in b/sysdeps/s390/s390-32/configure.ac
index b5af4e12fc..b5af4e12fc 100644
--- a/sysdeps/s390/s390-32/configure.in
+++ b/sysdeps/s390/s390-32/configure.ac
diff --git a/sysdeps/s390/s390-32/stackguard-macros.h b/sysdeps/s390/s390-32/stackguard-macros.h
index b74c5799b3..449e8d488f 100644
--- a/sysdeps/s390/s390-32/stackguard-macros.h
+++ b/sysdeps/s390/s390-32/stackguard-macros.h
@@ -2,3 +2,14 @@
#define STACK_CHK_GUARD \
({ uintptr_t x; asm ("ear %0,%%a0; l %0,0x14(%0)" : "=a" (x)); x; })
+
+/* On s390/s390x there is no unique pointer guard, instead we use the
+ same value as the stack guard. */
+#define POINTER_CHK_GUARD \
+ ({ \
+ uintptr_t x; \
+ asm ("ear %0,%%a0; l %0,%1(%0)" \
+ : "=a" (x) \
+ : "i" (offsetof (tcbhead_t, stack_guard))); \
+ x; \
+ })
diff --git a/sysdeps/s390/s390-32/tls-macros.h b/sysdeps/s390/s390-32/tls-macros.h
index 8a0ad5863c..a592d81585 100644
--- a/sysdeps/s390/s390-32/tls-macros.h
+++ b/sysdeps/s390/s390-32/tls-macros.h
@@ -8,12 +8,15 @@
#ifdef PIC
# define TLS_IE(x) \
- ({ unsigned long __offset; \
+ ({ unsigned long __offset, __got; \
asm ("bras %0,1f\n" \
- "0:\t.long " #x "@gotntpoff\n" \
- "1:\tl %0,0(%0)\n\t" \
- "l %0,0(%0,%%r12):tls_load:" #x \
- : "=&a" (__offset) : : "cc" ); \
+ "0:\t.long _GLOBAL_OFFSET_TABLE_-0b\n\t" \
+ ".long " #x "@gotntpoff\n" \
+ "1:\tl %1,0(%0)\n\t" \
+ "la %1,0(%1,%0)\n\t" \
+ "l %0,4(%0)\n\t" \
+ "l %0,0(%0,%1):tls_load:" #x "\n" \
+ : "=&a" (__offset), "=&a" (__got) : : "cc" ); \
(int *) (__builtin_thread_pointer() + __offset); })
#else
# define TLS_IE(x) \
diff --git a/sysdeps/s390/s390-64/configure b/sysdeps/s390/s390-64/configure
index 669bb9be5c..024565f85a 100644
--- a/sysdeps/s390/s390-64/configure
+++ b/sysdeps/s390/s390-64/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/s390.
$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
diff --git a/sysdeps/s390/s390-64/configure.in b/sysdeps/s390/s390-64/configure.ac
index b5af4e12fc..b5af4e12fc 100644
--- a/sysdeps/s390/s390-64/configure.in
+++ b/sysdeps/s390/s390-64/configure.ac
diff --git a/sysdeps/s390/s390-64/stackguard-macros.h b/sysdeps/s390/s390-64/stackguard-macros.h
index 0cebb5f022..c8270fbe79 100644
--- a/sysdeps/s390/s390-64/stackguard-macros.h
+++ b/sysdeps/s390/s390-64/stackguard-macros.h
@@ -2,3 +2,17 @@
#define STACK_CHK_GUARD \
({ uintptr_t x; asm ("ear %0,%%a0; sllg %0,%0,32; ear %0,%%a1; lg %0,0x28(%0)" : "=a" (x)); x; })
+
+/* On s390/s390x there is no unique pointer guard, instead we use the
+ same value as the stack guard. */
+#define POINTER_CHK_GUARD \
+ ({ \
+ uintptr_t x; \
+ asm ("ear %0,%%a0;" \
+ "sllg %0,%0,32;" \
+ "ear %0,%%a1;" \
+ "lg %0,%1(%0)" \
+ : "=a" (x) \
+ : "i" (offsetof (tcbhead_t, stack_guard))); \
+ x; \
+ })
diff --git a/sysdeps/s390/s390-64/tls-macros.h b/sysdeps/s390/s390-64/tls-macros.h
index be8aa6cde0..3c59436341 100644
--- a/sysdeps/s390/s390-64/tls-macros.h
+++ b/sysdeps/s390/s390-64/tls-macros.h
@@ -8,12 +8,13 @@
#ifdef PIC
# define TLS_IE(x) \
- ({ unsigned long __offset; \
- asm ("bras %0,1f\n" \
- "0:\t.quad " #x "@gotntpoff\n" \
- "1:\tlg %0,0(%0)\n\t" \
- "lg %0,0(%0,%%r12):tls_load:" #x \
- : "=&a" (__offset) : : "cc" ); \
+ ({ unsigned long __offset, __got; \
+ asm ("bras %0,0f\n\t" \
+ ".quad " #x "@gotntpoff\n" \
+ "0:\tlarl %1,_GLOBAL_OFFSET_TABLE_\n\t" \
+ "lg %0,0(%0)\n\t" \
+ "lg %0,0(%0,%1):tls_load:" #x "\n" \
+ : "=&a" (__offset), "=&a" (__got) : : "cc" ); \
(int *) (__builtin_thread_pointer() + __offset); })
#else
# define TLS_IE(x) \
diff --git a/sysdeps/sh/Implies b/sysdeps/sh/Implies
index 780c4e2467..1fdc53d034 100644
--- a/sysdeps/sh/Implies
+++ b/sysdeps/sh/Implies
@@ -1,3 +1,4 @@
+sh/soft-fp
wordsize-32
ieee754/flt-32
ieee754/dbl-64
diff --git a/sysdeps/sh/sh4/fpu/bits/fenv.h b/sysdeps/sh/bits/fenv.h
index 3171ab6977..3171ab6977 100644
--- a/sysdeps/sh/sh4/fpu/bits/fenv.h
+++ b/sysdeps/sh/bits/fenv.h
diff --git a/sysdeps/sh/configure b/sysdeps/sh/configure
index b0f3b2fa24..110eb65b06 100644
--- a/sysdeps/sh/configure
+++ b/sysdeps/sh/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/sh.
$as_echo "#define PI_STATIC_AND_HIDDEN 1" >>confdefs.h
diff --git a/sysdeps/sh/configure.in b/sysdeps/sh/configure.ac
index 21400c447d..21400c447d 100644
--- a/sysdeps/sh/configure.in
+++ b/sysdeps/sh/configure.ac
diff --git a/sysdeps/sh/s_fma.c b/sysdeps/sh/s_fma.c
new file mode 100644
index 0000000000..d92438d448
--- /dev/null
+++ b/sysdeps/sh/s_fma.c
@@ -0,0 +1,5 @@
+#ifdef __SH_FPU_ANY__
+# include <sysdeps/ieee754/dbl-64/s_fma.c>
+#else
+# include <soft-fp/fmadf4.c>
+#endif
diff --git a/sysdeps/sh/s_fmaf.c b/sysdeps/sh/s_fmaf.c
new file mode 100644
index 0000000000..3b811ae6da
--- /dev/null
+++ b/sysdeps/sh/s_fmaf.c
@@ -0,0 +1,5 @@
+#ifdef __SH_FPU_ANY__
+# include <sysdeps/ieee754/dbl-64/s_fmaf.c>
+#else
+# include <soft-fp/fmasf4.c>
+#endif
diff --git a/sysdeps/sh/sh4/fpu/fegetround.c b/sysdeps/sh/sh4/fpu/fegetround.c
index be4833f017..0523321b2d 100644
--- a/sysdeps/sh/sh4/fpu/fegetround.c
+++ b/sysdeps/sh/sh4/fpu/fegetround.c
@@ -30,3 +30,4 @@ fegetround (void)
return cw & 0x1;
}
+libm_hidden_def (fegetround)
diff --git a/ports/sysdeps/powerpc/soft-fp/sfp-machine.h b/sysdeps/sh/soft-fp/sfp-machine.h
index 508d8698d4..9b9074860f 100644
--- a/ports/sysdeps/powerpc/soft-fp/sfp-machine.h
+++ b/sysdeps/sh/soft-fp/sfp-machine.h
@@ -10,6 +10,13 @@
#define _FP_MUL_MEAT_Q(R,X,Y) \
_FP_MUL_MEAT_4_wide(_FP_WFRACBITS_Q,R,X,Y,umul_ppmm)
+#define _FP_MUL_MEAT_DW_S(R,X,Y) \
+ _FP_MUL_MEAT_DW_1_wide(_FP_WFRACBITS_S,R,X,Y,umul_ppmm)
+#define _FP_MUL_MEAT_DW_D(R,X,Y) \
+ _FP_MUL_MEAT_DW_2_wide(_FP_WFRACBITS_D,R,X,Y,umul_ppmm)
+#define _FP_MUL_MEAT_DW_Q(R,X,Y) \
+ _FP_MUL_MEAT_DW_4_wide(_FP_WFRACBITS_Q,R,X,Y,umul_ppmm)
+
#define _FP_DIV_MEAT_S(R,X,Y) _FP_DIV_MEAT_1_loop(S,R,X,Y)
#define _FP_DIV_MEAT_D(R,X,Y) _FP_DIV_MEAT_2_udiv(D,R,X,Y)
#define _FP_DIV_MEAT_Q(R,X,Y) _FP_DIV_MEAT_4_udiv(Q,R,X,Y)
@@ -41,29 +48,8 @@
R##_c = FP_CLS_NAN; \
} while (0)
-/* Exception flags. We use the bit positions of the appropriate bits
- in the FPSCR, which also correspond to the FE_* bits. This makes
- everything easier ;-). */
-#define FP_EX_INVALID (1 << (31 - 2))
-#define FP_EX_OVERFLOW (1 << (31 - 3))
-#define FP_EX_UNDERFLOW (1 << (31 - 4))
-#define FP_EX_DIVZERO (1 << (31 - 5))
-#define FP_EX_INEXACT (1 << (31 - 6))
-
-#define FP_HANDLE_EXCEPTIONS __simulate_exceptions (_fex)
-#define FP_ROUNDMODE __sim_round_mode
-#define FP_TRAPPING_EXCEPTIONS (~__sim_disabled_exceptions & 0x3e000000)
-
-/* FIXME: these variables should be thread specific (see bugzilla bug
- 15483) and ideally preserved across signal handlers, like hardware
- FP status words, but the latter is quite difficult to accomplish in
- userland. */
-
-extern int __sim_exceptions;
-libc_hidden_proto (__sim_exceptions);
-extern int __sim_disabled_exceptions;
-libc_hidden_proto (__sim_disabled_exceptions);
-extern int __sim_round_mode;
-libc_hidden_proto (__sim_round_mode);
-
-extern void __simulate_exceptions (int x) attribute_hidden;
+#define FP_EX_INVALID (1 << 6)
+#define FP_EX_DIVZERO (1 << 5)
+#define FP_EX_OVERFLOW (1 << 4)
+#define FP_EX_UNDERFLOW (1 << 3)
+#define FP_EX_INEXACT (1 << 2)
diff --git a/sysdeps/sh/sotruss-lib.c b/sysdeps/sh/sotruss-lib.c
new file mode 100644
index 0000000000..4d7533e825
--- /dev/null
+++ b/sysdeps/sh/sotruss-lib.c
@@ -0,0 +1,50 @@
+/* Override generic sotruss-lib.c to define actual functions for SH.
+ Copyright (C) 2013 Free Software Foundation, Inc.
+
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library. If not, see
+ <http://www.gnu.org/licenses/>. */
+
+#define HAVE_ARCH_PLTENTER
+#define HAVE_ARCH_PLTEXIT
+
+#include <elf/sotruss-lib.c>
+
+ElfW(Addr)
+la_sh_gnu_pltenter (ElfW(Sym) *sym __attribute__ ((unused)),
+ unsigned int ndx __attribute__ ((unused)),
+ uintptr_t *refcook, uintptr_t *defcook,
+ La_sh_regs *regs, unsigned int *flags,
+ const char *symname, long int *framesizep)
+{
+ print_enter (refcook, defcook, symname,
+ regs->lr_r4, regs->lr_r5, regs->lr_r6, *flags);
+
+ /* No need to copy anything, we will not need the parameters in any case. */
+ *framesizep = 0;
+
+ return sym->st_value;
+}
+
+unsigned int
+la_sh_gnu_pltexit (ElfW(Sym) *sym, unsigned int ndx, uintptr_t *refcook,
+ uintptr_t *defcook,
+ const struct La_sh_regs *inregs,
+ struct La_sh_retval *outregs, const char *symname)
+{
+ print_exit (refcook, defcook, symname, outregs->lrv_r0);
+
+ return 0;
+}
diff --git a/sysdeps/sh/stackguard-macros.h b/sysdeps/sh/stackguard-macros.h
new file mode 100644
index 0000000000..55a5771b62
--- /dev/null
+++ b/sysdeps/sh/stackguard-macros.h
@@ -0,0 +1,6 @@
+#include <stdint.h>
+
+extern uintptr_t __stack_chk_guard;
+#define STACK_CHK_GUARD __stack_chk_guard
+
+#define POINTER_CHK_GUARD THREAD_GET_POINTER_GUARD()
diff --git a/sysdeps/sparc/configure b/sysdeps/sparc/configure
index 63e02de4a6..90a86f6da3 100644
--- a/sysdeps/sparc/configure
+++ b/sysdeps/sparc/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/sparc.
# Check for support of VIS3 et al. instructions in the assembler.
diff --git a/sysdeps/sparc/configure.in b/sysdeps/sparc/configure.ac
index 982077c9b9..982077c9b9 100644
--- a/sysdeps/sparc/configure.in
+++ b/sysdeps/sparc/configure.ac
diff --git a/sysdeps/sparc/fpu/fegetround.c b/sysdeps/sparc/fpu/fegetround.c
index c4987e8b3e..c2d5f5af03 100644
--- a/sysdeps/sparc/fpu/fegetround.c
+++ b/sysdeps/sparc/fpu/fegetround.c
@@ -27,3 +27,4 @@ fegetround (void)
return tmp & __FE_ROUND_MASK;
}
+libm_hidden_def (fegetround)
diff --git a/sysdeps/sparc/fpu/libm-test-ulps b/sysdeps/sparc/fpu/libm-test-ulps
index cfc72a661c..ecb871d6ab 100644
--- a/sysdeps/sparc/fpu/libm-test-ulps
+++ b/sysdeps/sparc/fpu/libm-test-ulps
@@ -7505,6 +7505,34 @@ idouble: 1
Test "gamma (-0.5)":
ildouble: 1
ldouble: 1
+Test "gamma (-0x1p-10)":
+double: 1
+idouble: 1
+Test "gamma (-0x1p-15)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "gamma (-0x1p-20)":
+double: 1
+idouble: 1
+Test "gamma (-0x1p-25)":
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x1p-30)":
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x1p-40)":
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x1p-5)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x1p-64)":
+ildouble: 1
+ldouble: 1
Test "gamma (0.7)":
double: 1
float: 1
@@ -7512,6 +7540,25 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "gamma (0x1p-10)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (0x1p-30)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (0x1p-5)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0x1p-60)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0x1p-70)":
+ildouble: 1
+ldouble: 1
Test "gamma (1.2)":
double: 1
float: 2
@@ -7725,6 +7772,17 @@ double: 2
float: 2
idouble: 2
ifloat: 2
+Test "jn (2, 0x1p1023)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x1p127)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x1p16383)":
+ildouble: 2
+ldouble: 2
Test "jn (2, 2.4048255576957729)":
double: 2
float: 1
@@ -7802,6 +7860,34 @@ ldouble: 3
Test "lgamma (-0.5)":
ildouble: 1
ldouble: 1
+Test "lgamma (-0x1p-10)":
+double: 1
+idouble: 1
+Test "lgamma (-0x1p-15)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "lgamma (-0x1p-20)":
+double: 1
+idouble: 1
+Test "lgamma (-0x1p-25)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x1p-30)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x1p-40)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x1p-5)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x1p-64)":
+ildouble: 1
+ldouble: 1
Test "lgamma (0.7)":
double: 1
float: 1
@@ -7809,6 +7895,25 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "lgamma (0x1p-10)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x1p-30)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x1p-5)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x1p-60)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x1p-70)":
+ildouble: 1
+ldouble: 1
Test "lgamma (1.2)":
double: 1
float: 2
@@ -9239,7 +9344,9 @@ ildouble: 5
ldouble: 5
Test "yn (10, 1.0)":
double: 1
+float: 2
idouble: 1
+ifloat: 2
ildouble: 1
ldouble: 1
Test "yn (10, 10.0)":
@@ -9251,7 +9358,25 @@ ildouble: 2
ldouble: 2
Test "yn (10, 2.0)":
double: 2
+float: 1
idouble: 2
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "yn (2, 0x1.ffff62p+99)":
+double: 1
+idouble: 1
+Test "yn (2, 0x1p1023)":
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0x1p127)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0x1p16383)":
ildouble: 2
ldouble: 2
Test "yn (3, 0.125)":
diff --git a/sysdeps/sparc/sparc32/fpu/s_fdim.S b/sysdeps/sparc/sparc32/fpu/s_fdim.S
index 2f0c5ce583..22f69ce519 100644
--- a/sysdeps/sparc/sparc32/fpu/s_fdim.S
+++ b/sysdeps/sparc/sparc32/fpu/s_fdim.S
@@ -30,7 +30,8 @@ ENTRY(__fdim)
fbug 1f
st %g0, [%sp + 76]
ldd [%sp + 72], %f0
- fnegd %f0, %f2
+ fnegs %f0, %f2
+ fmovs %f1, %f3
1: retl
fsubd %f0, %f2, %f0
END(__fdim)
diff --git a/sysdeps/sparc/sparc32/soft-fp/q_neg.c b/sysdeps/sparc/sparc32/soft-fp/q_neg.c
index 551c40887b..5e2449c916 100644
--- a/sysdeps/sparc/sparc32/soft-fp/q_neg.c
+++ b/sysdeps/sparc/sparc32/soft-fp/q_neg.c
@@ -24,7 +24,6 @@
long double _Q_neg(const long double a)
{
- FP_DECL_EX;
long double c = a;
#if (__BYTE_ORDER == __BIG_ENDIAN)
@@ -36,11 +35,9 @@ long double _Q_neg(const long double a)
#else
FP_DECL_Q(A); FP_DECL_Q(C);
- FP_UNPACK_Q(A, a);
+ FP_UNPACK_RAW_Q(A, a);
FP_NEG_Q(C, A);
- FP_PACK_Q(c, C);
+ FP_PACK_RAW_Q(c, C);
#endif
- FP_CLEAR_EXCEPTIONS;
- FP_HANDLE_EXCEPTIONS;
return c;
}
diff --git a/sysdeps/sparc/sparc32/stackguard-macros.h b/sysdeps/sparc/sparc32/stackguard-macros.h
index c0b02b0bbd..1eef0f19f0 100644
--- a/sysdeps/sparc/sparc32/stackguard-macros.h
+++ b/sysdeps/sparc/sparc32/stackguard-macros.h
@@ -2,3 +2,6 @@
#define STACK_CHK_GUARD \
({ uintptr_t x; asm ("ld [%%g7+0x14], %0" : "=r" (x)); x; })
+
+#define POINTER_CHK_GUARD \
+ ({ uintptr_t x; asm ("ld [%%g7+0x18], %0" : "=r" (x)); x; })
diff --git a/sysdeps/sparc/sparc64/multiarch/add_n.S b/sysdeps/sparc/sparc64/multiarch/add_n.S
index 25cae3977a..22c6e583d0 100644
--- a/sysdeps/sparc/sparc64/multiarch/add_n.S
+++ b/sysdeps/sparc/sparc64/multiarch/add_n.S
@@ -42,7 +42,7 @@ ENTRY(__mpn_add_n)
sethi %gdop_hix22(__mpn_add_n_generic), %o1
xor %o1, %gdop_lox10(__mpn_add_n_generic), %o1
# else
- set __mpn_add_n_vis3, %o1
+ set __mpn_add_n_generic, %o1
# endif
10:
# ifdef SHARED
diff --git a/sysdeps/sparc/sparc64/multiarch/addmul_1.S b/sysdeps/sparc/sparc64/multiarch/addmul_1.S
index a1659e40e3..a65c934d9b 100644
--- a/sysdeps/sparc/sparc64/multiarch/addmul_1.S
+++ b/sysdeps/sparc/sparc64/multiarch/addmul_1.S
@@ -42,7 +42,7 @@ ENTRY(__mpn_addmul_1)
sethi %gdop_hix22(__mpn_addmul_1_generic), %o1
xor %o1, %gdop_lox10(__mpn_addmul_1_generic), %o1
# else
- set __mpn_addmul_1_vis3, %o1
+ set __mpn_addmul_1_generic, %o1
# endif
10:
# ifdef SHARED
diff --git a/sysdeps/sparc/sparc64/multiarch/mul_1.S b/sysdeps/sparc/sparc64/multiarch/mul_1.S
index 25f51bf810..811754ed8b 100644
--- a/sysdeps/sparc/sparc64/multiarch/mul_1.S
+++ b/sysdeps/sparc/sparc64/multiarch/mul_1.S
@@ -42,7 +42,7 @@ ENTRY(__mpn_mul_1)
sethi %gdop_hix22(__mpn_mul_1_generic), %o1
xor %o1, %gdop_lox10(__mpn_mul_1_generic), %o1
# else
- set __mpn_mul_1_vis3, %o1
+ set __mpn_mul_1_generic, %o1
# endif
10:
# ifdef SHARED
diff --git a/sysdeps/sparc/sparc64/multiarch/sub_n.S b/sysdeps/sparc/sparc64/multiarch/sub_n.S
index 5e15bea101..39637905f3 100644
--- a/sysdeps/sparc/sparc64/multiarch/sub_n.S
+++ b/sysdeps/sparc/sparc64/multiarch/sub_n.S
@@ -42,7 +42,7 @@ ENTRY(__mpn_sub_n)
sethi %gdop_hix22(__mpn_sub_n_generic), %o1
xor %o1, %gdop_lox10(__mpn_sub_n_generic), %o1
# else
- set __mpn_sub_n_vis3, %o1
+ set __mpn_sub_n_generic, %o1
# endif
10:
# ifdef SHARED
diff --git a/sysdeps/sparc/sparc64/multiarch/submul_1.S b/sysdeps/sparc/sparc64/multiarch/submul_1.S
index 68552e9af0..6c4c3a36cf 100644
--- a/sysdeps/sparc/sparc64/multiarch/submul_1.S
+++ b/sysdeps/sparc/sparc64/multiarch/submul_1.S
@@ -42,7 +42,7 @@ ENTRY(__mpn_submul_1)
sethi %gdop_hix22(__mpn_submul_1_generic), %o1
xor %o1, %gdop_lox10(__mpn_submul_1_generic), %o1
# else
- set __mpn_submul_1_vis3, %o1
+ set __mpn_submul_1_generic, %o1
# endif
10:
# ifdef SHARED
diff --git a/sysdeps/sparc/sparc64/stackguard-macros.h b/sysdeps/sparc/sparc64/stackguard-macros.h
index 80f063558a..cc0c12c041 100644
--- a/sysdeps/sparc/sparc64/stackguard-macros.h
+++ b/sysdeps/sparc/sparc64/stackguard-macros.h
@@ -2,3 +2,6 @@
#define STACK_CHK_GUARD \
({ uintptr_t x; asm ("ldx [%%g7+0x28], %0" : "=r" (x)); x; })
+
+#define POINTER_CHK_GUARD \
+ ({ uintptr_t x; asm ("ldx [%%g7+0x30], %0" : "=r" (x)); x; })
diff --git a/sysdeps/unix/Makefile b/sysdeps/unix/Makefile
index 375561f0d0..e6adb9dffa 100644
--- a/sysdeps/unix/Makefile
+++ b/sysdeps/unix/Makefile
@@ -51,12 +51,14 @@ $(objpfx)stub-syscalls.c: $(common-objpfx)sysd-syscalls \
for call in $(unix-stub-syscalls); do \
case $$call in \
*@@*) \
- ver=$${call##*@}; call=$${call%%@*}; ver=$${ver//./_}; \
+ ver=$${call##*@}; call=$${call%%@*}; \
+ ver=`echo "$$ver" | sed 's/\./_/g'`; \
echo "strong_alias (_no_syscall, __$${call}_$${ver})"; \
echo "versioned_symbol (libc, __$${call}_$${ver}, $$call, $$ver);"\
;; \
*@*) \
- ver=$${call##*@}; call=$${call%%@*}; ver=$${ver//./_}; \
+ ver=$${call##*@}; call=$${call%%@*}; \
+ ver=`echo "$$ver" | sed 's/\./_/g'`; \
echo "strong_alias (_no_syscall, __$${call}_$${ver})"; \
echo "compat_symbol (libc, __$${call}_$${ver}, $$call, $$ver);" \
;; \
diff --git a/sysdeps/unix/bsd/bits/posix_opt.h b/sysdeps/unix/bsd/bits/posix_opt.h
deleted file mode 100644
index 7d5e5782eb..0000000000
--- a/sysdeps/unix/bsd/bits/posix_opt.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#define _POSIX_JOB_CONTROL 1
-#undef _POSIX_SAVED_IDS
-#define _POSIX_CHOWN_RESTRICTED 1
-#define _POSIX_NO_TRUNC -1
-#define _POSIX_VDISABLE ((unsigned char) -1)
diff --git a/sysdeps/unix/bsd/bits/stat.h b/sysdeps/unix/bsd/bits/stat.h
deleted file mode 100644
index ff197fcc06..0000000000
--- a/sysdeps/unix/bsd/bits/stat.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#if !defined _SYS_STAT_H && !defined _FCNTL_H
-# error "Never include <bits/stat.h> directly; use <sys/stat.h> instead."
-#endif
-
-#ifndef _BITS_STAT_H
-#define _BITS_STAT_H 1
-
-#include <bits/types.h>
-
-/* Structure describing file characteristics. */
-struct stat
- {
- /* This is a short instead of dev_t for compatibility with 4.3. */
- short int st_dev; /* Device containing the file. */
- __ino_t st_ino; /* File serial number. */
-
- /* This is a short instead of mode_t for compatibility with 4.3. */
- unsigned short int st_mode; /* File mode. */
-
- __nlink_t st_nlink; /* Link count. */
-
- /* These are shorts instead of uid_t/gid_t for compatibility with 4.3. */
- unsigned short int st_uid; /* User ID of the file's owner. */
- unsigned short int st_gid; /* Group ID of the file's group.*/
-
- /* This is a short instead of dev_t for compatibility with 4.3. */
- short int st_rdev; /* Device number, if device. */
-
- __off_t st_size; /* Size of file, in bytes. */
-
- __time_t st_atime; /* Time of last access. */
- unsigned long int st_atime_usec;
- __time_t st_mtime; /* Time of last modification. */
- unsigned long int st_mtime_usec;
- __time_t st_ctime; /* Time of last status change. */
- unsigned long int st_ctime_usec;
-
- __blksize_t st_blksize; /* Optimal block size for I/O. */
-#define _STATBUF_ST_BLKSIZE /* Tell code we have this member. */
-
- __blkcnt_t st_blocks; /* Number of 512-byte blocks allocated. */
-
- long int st_spare[2];
- };
-
-/* Encoding of the file mode. */
-
-#define __S_IFMT 0170000 /* These bits determine file type. */
-
-/* File types. */
-#define __S_IFDIR 0040000 /* Directory. */
-#define __S_IFCHR 0020000 /* Character device. */
-#define __S_IFBLK 0060000 /* Block device. */
-#define __S_IFREG 0100000 /* Regular file. */
-#define __S_IFLNK 0120000 /* Symbolic link. */
-#define __S_IFSOCK 0140000 /* Socket. */
-#define __S_IFIFO 0010000 /* FIFO. */
-
-/* POSIX.1b objects. */
-#define __S_TYPEISMQ(buf) (0)
-#define __S_TYPEISSEM(buf) (0)
-#define __S_TYPEISSHM(buf) (0)
-
-/* Protection bits. */
-
-#define __S_ISUID 04000 /* Set user ID on execution. */
-#define __S_ISGID 02000 /* Set group ID on execution. */
-#define __S_ISVTX 01000 /* Save swapped text after use (sticky). */
-#define __S_IREAD 0400 /* Read by owner. */
-#define __S_IWRITE 0200 /* Write by owner. */
-#define __S_IEXEC 0100 /* Execute by owner. */
-
-#endif /* bits/stat.h */
diff --git a/sysdeps/unix/bsd/bsd4.4/bits/errno.h b/sysdeps/unix/bsd/bsd4.4/bits/errno.h
deleted file mode 100644
index 48b1c8b6e6..0000000000
--- a/sysdeps/unix/bsd/bsd4.4/bits/errno.h
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- * Copyright (c) 1982, 1986, 1989, 1993
- * The Regents of the University of California. All rights reserved.
- * (c) UNIX System Laboratories, Inc.
- * All or some portions of this file are derived from material licensed
- * to the University of California by American Telephone and Telegraph
- * Co. or Unix System Laboratories, Inc. and are reproduced herein with
- * the permission of UNIX System Laboratories, Inc.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)errno.h 8.5 (Berkeley) 1/21/94
- */
-
-#ifdef _ERRNO_H
-
-#define EPERM 1 /* Operation not permitted */
-#define ENOENT 2 /* No such file or directory */
-#define ESRCH 3 /* No such process */
-#define EINTR 4 /* Interrupted system call */
-#define EIO 5 /* Input/output error */
-#define ENXIO 6 /* Device not configured */
-#define E2BIG 7 /* Argument list too long */
-#define ENOEXEC 8 /* Exec format error */
-#define EBADF 9 /* Bad file descriptor */
-#define ECHILD 10 /* No child processes */
-#define EDEADLK 11 /* Resource deadlock avoided */
- /* 11 was EAGAIN */
-#define ENOMEM 12 /* Cannot allocate memory */
-#define EACCES 13 /* Permission denied */
-#define EFAULT 14 /* Bad address */
-#ifdef __USE_BSD
-#define ENOTBLK 15 /* Block device required */
-#endif
-#define EBUSY 16 /* Device busy */
-#define EEXIST 17 /* File exists */
-#define EXDEV 18 /* Cross-device link */
-#define ENODEV 19 /* Operation not supported by device */
-#define ENOTDIR 20 /* Not a directory */
-#define EISDIR 21 /* Is a directory */
-#define EINVAL 22 /* Invalid argument */
-#define ENFILE 23 /* Too many open files in system */
-#define EMFILE 24 /* Too many open files */
-#define ENOTTY 25 /* Inappropriate ioctl for device */
-#ifdef __USE_BSD
-#define ETXTBSY 26 /* Text file busy */
-#endif
-#define EFBIG 27 /* File too large */
-#define ENOSPC 28 /* No space left on device */
-#define ESPIPE 29 /* Illegal seek */
-#define EROFS 30 /* Read-only file system */
-#define EMLINK 31 /* Too many links */
-#define EPIPE 32 /* Broken pipe */
-
-#endif /* <errno.h> included. */
-
-/* math software */
-
-#if !defined(__Emath_defined) && (defined(_ERRNO_H) || defined(__need_Emath))
-#define EDOM 33 /* Numerical argument out of domain */
-#endif /* Emath not defined and <errno.h> included or need Emath. */
-#if !defined(__Emath_defined) && (defined(_ERRNO_H) || defined(__need_Emath))
-#define ERANGE 34 /* Result too large */
-#endif /* Emath not defined and <errno.h> included or need Emath. */
-
-#ifdef _ERRNO_H
-
-/* non-blocking and interrupt i/o */
-#define EAGAIN 35 /* Resource temporarily unavailable */
-#ifdef __USE_BSD
-#define EWOULDBLOCK EAGAIN /* Operation would block */
-#define EINPROGRESS 36 /* Operation now in progress */
-#define EALREADY 37 /* Operation already in progress */
-
-/* ipc/network software -- argument errors */
-#define ENOTSOCK 38 /* Socket operation on non-socket */
-#define EDESTADDRREQ 39 /* Destination address required */
-#define EMSGSIZE 40 /* Message too long */
-#define EPROTOTYPE 41 /* Protocol wrong type for socket */
-#define ENOPROTOOPT 42 /* Protocol not available */
-#define EPROTONOSUPPORT 43 /* Protocol not supported */
-#define ESOCKTNOSUPPORT 44 /* Socket type not supported */
-#define EOPNOTSUPP 45 /* Operation not supported */
-#define EPFNOSUPPORT 46 /* Protocol family not supported */
-#define EAFNOSUPPORT 47 /* Address family not supported by protocol family */
-#define EADDRINUSE 48 /* Address already in use */
-#define EADDRNOTAVAIL 49 /* Can't assign requested address */
-
-/* ipc/network software -- operational errors */
-#define ENETDOWN 50 /* Network is down */
-#define ENETUNREACH 51 /* Network is unreachable */
-#define ENETRESET 52 /* Network dropped connection on reset */
-#define ECONNABORTED 53 /* Software caused connection abort */
-#define ECONNRESET 54 /* Connection reset by peer */
-#define ENOBUFS 55 /* No buffer space available */
-#define EISCONN 56 /* Socket is already connected */
-#define ENOTCONN 57 /* Socket is not connected */
-#define ESHUTDOWN 58 /* Can't send after socket shutdown */
-#define ETOOMANYREFS 59 /* Too many references: can't splice */
-#define ETIMEDOUT 60 /* Operation timed out */
-#define ECONNREFUSED 61 /* Connection refused */
-
-#define ELOOP 62 /* Too many levels of symbolic links */
-#endif /* __USE_BSD */
-#define ENAMETOOLONG 63 /* File name too long */
-
-/* should be rearranged */
-#ifdef __USE_BSD
-#define EHOSTDOWN 64 /* Host is down */
-#define EHOSTUNREACH 65 /* No route to host */
-#endif /* __USE_BSD */
-#define ENOTEMPTY 66 /* Directory not empty */
-
-/* quotas & mush */
-#ifdef __USE_BSD
-#define EPROCLIM 67 /* Too many processes */
-#define EUSERS 68 /* Too many users */
-#define EDQUOT 69 /* Disc quota exceeded */
-
-/* Network File System */
-#define ESTALE 70 /* Stale NFS file handle */
-#define EREMOTE 71 /* Too many levels of remote in path */
-#define EBADRPC 72 /* RPC struct is bad */
-#define ERPCMISMATCH 73 /* RPC version wrong */
-#define EPROGUNAVAIL 74 /* RPC prog. not avail */
-#define EPROGMISMATCH 75 /* Program version wrong */
-#define EPROCUNAVAIL 76 /* Bad procedure for program */
-#endif /* __USE_BSD */
-
-#define ENOLCK 77 /* No locks available */
-#define ENOSYS 78 /* Function not implemented */
-
-#define EFTYPE 79 /* Inappropriate file type or format */
-
-#ifdef __USE_BSD
-#define EAUTH 80 /* Authentication error */
-#define ENEEDAUTH 81 /* Need authenticator */
-#define ELAST 81 /* Must be equal largest errno */
-#endif /* __USE_BSD */
-
-
-#endif /* <errno.h> included. */
diff --git a/sysdeps/unix/bsd/bsd4.4/bits/ioctls.h b/sysdeps/unix/bsd/bsd4.4/bits/ioctls.h
deleted file mode 100644
index 526bfd0907..0000000000
--- a/sysdeps/unix/bsd/bsd4.4/bits/ioctls.h
+++ /dev/null
@@ -1,288 +0,0 @@
-/*-
- * Copyright (c) 1982, 1986, 1990 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)ioctl.h 7.19 (Berkeley) 6/26/91
- */
-
-#ifndef _IOCTLS_H_
-#define _IOCTLS_H_
-
-#define TIOCGSIZE TIOCGWINSZ
-#define TIOCSSIZE TIOCSWINSZ
-
-/*
- * Ioctl's have the command encoded in the lower word, and the size of
- * any in or out parameters in the upper word. The high 3 bits of the
- * upper word are used to encode the in/out status of the parameter.
- */
-#define IOCPARM_MASK 0x1fff /* parameter length, at most 13 bits */
-#define IOCPARM_LEN(x) (((x) >> 16) & IOCPARM_MASK)
-#define IOCBASECMD(x) ((x) & ~IOCPARM_MASK)
-#define IOCGROUP(x) (((x) >> 8) & 0xff)
-
-#define IOCPARM_MAX NBPG /* max size of ioctl, mult. of NBPG */
-#define IOC_VOID 0x20000000 /* no parameters */
-#define IOC_OUT 0x40000000 /* copy out parameters */
-#define IOC_IN 0x80000000 /* copy in parameters */
-#define IOC_INOUT (IOC_IN|IOC_OUT)
-#define IOC_DIRMASK 0xe0000000 /* mask for IN/OUT/VOID */
-
-#define _IOC(inout,group,num,len) \
- (inout | ((len & IOCPARM_MASK) << 16) | ((group) << 8) | (num))
-#define _IO(g,n) _IOC(IOC_VOID, (g), (n), 0)
-#define _IOR(g,n,t) _IOC(IOC_OUT, (g), (n), sizeof(t))
-#define _IOW(g,n,t) _IOC(IOC_IN, (g), (n), sizeof(t))
-/* this should be _IORW, but stdio got there first */
-#define _IOWR(g,n,t) _IOC(IOC_INOUT, (g), (n), sizeof(t))
-
-#define TIOCMODG _IOR('t', 3, int) /* get modem control state */
-#define TIOCMODS _IOW('t', 4, int) /* set modem control state */
-#define TIOCM_LE 0001 /* line enable */
-#define TIOCM_DTR 0002 /* data terminal ready */
-#define TIOCM_RTS 0004 /* request to send */
-#define TIOCM_ST 0010 /* secondary transmit */
-#define TIOCM_SR 0020 /* secondary receive */
-#define TIOCM_CTS 0040 /* clear to send */
-#define TIOCM_CAR 0100 /* carrier detect */
-#define TIOCM_CD TIOCM_CAR
-#define TIOCM_RNG 0200 /* ring */
-#define TIOCM_RI TIOCM_RNG
-#define TIOCM_DSR 0400 /* data set ready */
- /* 8-10 compat */
-#define TIOCEXCL _IO('t', 13) /* set exclusive use of tty */
-#define TIOCNXCL _IO('t', 14) /* reset exclusive use of tty */
- /* 15 unused */
-#define TIOCFLUSH _IOW('t', 16, int) /* flush buffers */
- /* 17-18 compat */
-#define TIOCGETA _IOR('t', 19, struct termios) /* get termios struct */
-#define TIOCSETA _IOW('t', 20, struct termios) /* set termios struct */
-#define TIOCSETAW _IOW('t', 21, struct termios) /* drain output, set */
-#define TIOCSETAF _IOW('t', 22, struct termios) /* drn out, fls in, set */
-#define TIOCGETD _IOR('t', 26, int) /* get line discipline */
-#define TIOCSETD _IOW('t', 27, int) /* set line discipline */
- /* 127-124 compat */
-#define TIOCSBRK _IO('t', 123) /* set break bit */
-#define TIOCCBRK _IO('t', 122) /* clear break bit */
-#define TIOCSDTR _IO('t', 121) /* set data terminal ready */
-#define TIOCCDTR _IO('t', 120) /* clear data terminal ready */
-#define TIOCGPGRP _IOR('t', 119, int) /* get pgrp of tty */
-#define TIOCSPGRP _IOW('t', 118, int) /* set pgrp of tty */
- /* 117-116 compat */
-#define TIOCOUTQ _IOR('t', 115, int) /* output queue size */
-#define TIOCSTI _IOW('t', 114, char) /* simulate terminal input */
-#define TIOCNOTTY _IO('t', 113) /* void tty association */
-#define TIOCPKT _IOW('t', 112, int) /* pty: set/clear packet mode */
-#define TIOCPKT_DATA 0x00 /* data packet */
-#define TIOCPKT_FLUSHREAD 0x01 /* flush packet */
-#define TIOCPKT_FLUSHWRITE 0x02 /* flush packet */
-#define TIOCPKT_STOP 0x04 /* stop output */
-#define TIOCPKT_START 0x08 /* start output */
-#define TIOCPKT_NOSTOP 0x10 /* no more ^S, ^Q */
-#define TIOCPKT_DOSTOP 0x20 /* now do ^S ^Q */
-#define TIOCPKT_IOCTL 0x40 /* state change of pty driver */
-#define TIOCSTOP _IO('t', 111) /* stop output, like ^S */
-#define TIOCSTART _IO('t', 110) /* start output, like ^Q */
-#define TIOCMSET _IOW('t', 109, int) /* set all modem bits */
-#define TIOCMBIS _IOW('t', 108, int) /* bis modem bits */
-#define TIOCMBIC _IOW('t', 107, int) /* bic modem bits */
-#define TIOCMGET _IOR('t', 106, int) /* get all modem bits */
-#define TIOCREMOTE _IOW('t', 105, int) /* remote input editing */
-#define TIOCGWINSZ _IOR('t', 104, struct winsize) /* get window size */
-#define TIOCSWINSZ _IOW('t', 103, struct winsize) /* set window size */
-#define TIOCUCNTL _IOW('t', 102, int) /* pty: set/clr usr cntl mode */
-#define UIOCCMD(n) _IO('u', n) /* usr cntl op "n" */
-#define TIOCCONS _IOW('t', 98, int) /* become virtual console */
-#define TIOCSCTTY _IO('t', 97) /* become controlling tty */
-#define TIOCEXT _IOW('t', 96, int) /* pty: external processing */
-#define TIOCSIG _IO('t', 95) /* pty: generate signal */
-#define TIOCDRAIN _IO('t', 94) /* wait till output drained */
-
-#define TTYDISC 0 /* termios tty line discipline */
-#define TABLDISC 3 /* tablet discipline */
-#define SLIPDISC 4 /* serial IP discipline */
-
-
-#define FIOCLEX _IO('f', 1) /* set close on exec on fd */
-#define FIONCLEX _IO('f', 2) /* remove close on exec */
-#define FIONREAD _IOR('f', 127, int) /* get # bytes to read */
-#define FIONBIO _IOW('f', 126, int) /* set/clear non-blocking i/o */
-#define FIOASYNC _IOW('f', 125, int) /* set/clear async i/o */
-#define FIOSETOWN _IOW('f', 124, int) /* set owner */
-#define FIOGETOWN _IOR('f', 123, int) /* get owner */
-
-/* socket i/o controls */
-#define SIOCSHIWAT _IOW('s', 0, int) /* set high watermark */
-#define SIOCGHIWAT _IOR('s', 1, int) /* get high watermark */
-#define SIOCSLOWAT _IOW('s', 2, int) /* set low watermark */
-#define SIOCGLOWAT _IOR('s', 3, int) /* get low watermark */
-#define SIOCATMARK _IOR('s', 7, int) /* at oob mark? */
-#define SIOCSPGRP _IOW('s', 8, int) /* set process group */
-#define SIOCGPGRP _IOR('s', 9, int) /* get process group */
-
-#define SIOCADDRT _IOW('r', 10, struct ortentry) /* add route */
-#define SIOCDELRT _IOW('r', 11, struct ortentry) /* delete route */
-
-#define SIOCSIFADDR _IOW('i', 12, struct ifreq) /* set ifnet address */
-#define OSIOCGIFADDR _IOWR('i',13, struct ifreq) /* get ifnet address */
-#define SIOCGIFADDR _IOWR('i',33, struct ifreq) /* get ifnet address */
-#define SIOCSIFDSTADDR _IOW('i', 14, struct ifreq) /* set p-p address */
-#define OSIOCGIFDSTADDR _IOWR('i',15, struct ifreq) /* get p-p address */
-#define SIOCGIFDSTADDR _IOWR('i',34, struct ifreq) /* get p-p address */
-#define SIOCSIFFLAGS _IOW('i', 16, struct ifreq) /* set ifnet flags */
-#define SIOCGIFFLAGS _IOWR('i',17, struct ifreq) /* get ifnet flags */
-#define OSIOCGIFBRDADDR _IOWR('i',18, struct ifreq) /* get broadcast addr */
-#define SIOCGIFBRDADDR _IOWR('i',35, struct ifreq) /* get broadcast addr */
-#define SIOCSIFBRDADDR _IOW('i',19, struct ifreq) /* set broadcast addr */
-#define OSIOCGIFCONF _IOWR('i',20, struct ifconf) /* get ifnet list */
-#define SIOCGIFCONF _IOWR('i',36, struct ifconf) /* get ifnet list */
-#define OSIOCGIFNETMASK _IOWR('i',21, struct ifreq) /* get net addr mask */
-#define SIOCGIFNETMASK _IOWR('i',37, struct ifreq) /* get net addr mask */
-#define SIOCSIFNETMASK _IOW('i',22, struct ifreq) /* set net addr mask */
-#define SIOCGIFMETRIC _IOWR('i',23, struct ifreq) /* get IF metric */
-#define SIOCSIFMETRIC _IOW('i',24, struct ifreq) /* set IF metric */
-#define SIOCDIFADDR _IOW('i',25, struct ifreq) /* delete IF addr */
-#define SIOCAIFADDR _IOW('i',26, struct ifaliasreq) /* add/chg IF alias */
-
-#define SIOCSARP _IOW('i', 30, struct arpreq) /* set arp entry */
-#define OSIOCGARP _IOWR('i',31, struct arpreq) /* get arp entry */
-#define SIOCGARP _IOWR('i',38, struct arpreq) /* get arp entry */
-#define SIOCDARP _IOW('i', 32, struct arpreq) /* delete arp entry */
-
-
-/* Compatibility with 4.3 BSD terminal driver.
- From 4.4 <sys/ioctl_compat.h>. */
-
-#ifdef USE_OLD_TTY
-# undef TIOCGETD
-# define TIOCGETD _IOR('t', 0, int) /* get line discipline */
-# undef TIOCSETD
-# define TIOCSETD _IOW('t', 1, int) /* set line discipline */
-#else
-# define OTIOCGETD _IOR('t', 0, int) /* get line discipline */
-# define OTIOCSETD _IOW('t', 1, int) /* set line discipline */
-#endif
-#define TIOCHPCL _IO('t', 2) /* hang up on last close */
-#define TIOCGETP _IOR('t', 8,struct sgttyb)/* get parameters -- gtty */
-#define TIOCSETP _IOW('t', 9,struct sgttyb)/* set parameters -- stty */
-#define TIOCSETN _IOW('t',10,struct sgttyb)/* as above, but no flushtty*/
-#define TIOCSETC _IOW('t',17,struct tchars)/* set special characters */
-#define TIOCGETC _IOR('t',18,struct tchars)/* get special characters */
-#define TANDEM 0x00000001 /* send stopc on out q full */
-#define CBREAK 0x00000002 /* half-cooked mode */
-#define LCASE 0x00000004 /* simulate lower case */
-#define ECHO 0x00000008 /* echo input */
-#define CRMOD 0x00000010 /* map \r to \r\n on output */
-#define RAW 0x00000020 /* no i/o processing */
-#define ODDP 0x00000040 /* get/send odd parity */
-#define EVENP 0x00000080 /* get/send even parity */
-#define ANYP 0x000000c0 /* get any parity/send none */
-#define NLDELAY 0x00000300 /* \n delay */
-#define NL0 0x00000000
-#define NL1 0x00000100 /* tty 37 */
-#define NL2 0x00000200 /* vt05 */
-#define NL3 0x00000300
-#define TBDELAY 0x00000c00 /* horizontal tab delay */
-#define TAB0 0x00000000
-#define TAB1 0x00000400 /* tty 37 */
-#define TAB2 0x00000800
-#define XTABS 0x00000c00 /* expand tabs on output */
-#define CRDELAY 0x00003000 /* \r delay */
-#define CR0 0x00000000
-#define CR1 0x00001000 /* tn 300 */
-#define CR2 0x00002000 /* tty 37 */
-#define CR3 0x00003000 /* concept 100 */
-#define VTDELAY 0x00004000 /* vertical tab delay */
-#define FF0 0x00000000
-#define FF1 0x00004000 /* tty 37 */
-#define BSDELAY 0x00008000 /* \b delay */
-#define BS0 0x00000000
-#define BS1 0x00008000
-#define ALLDELAY (NLDELAY|TBDELAY|CRDELAY|VTDELAY|BSDELAY)
-#define CRTBS 0x00010000 /* do backspacing for crt */
-#define PRTERA 0x00020000 /* \ ... / erase */
-#define CRTERA 0x00040000 /* " \b " to wipe out char */
-#define TILDE 0x00080000 /* hazeltine tilde kludge */
-#define MDMBUF 0x00100000 /*start/stop output on carrier*/
-#define LITOUT 0x00200000 /* literal output */
-#define TOSTOP 0x00400000 /*SIGSTOP on background output*/
-#define FLUSHO 0x00800000 /* flush output to terminal */
-#define NOHANG 0x01000000 /* (no-op) was no SIGHUP on carrier drop */
-#define L001000 0x02000000
-#define CRTKIL 0x04000000 /* kill line with " \b " */
-#define PASS8 0x08000000
-#define CTLECH 0x10000000 /* echo control chars as ^X */
-#define PENDIN 0x20000000 /* tp->t_rawq needs reread */
-#define DECCTQ 0x40000000 /* only ^Q starts after ^S */
-#define NOFLSH 0x80000000 /* no output flush on signal */
-#define TIOCLBIS _IOW('t', 127, int) /* bis local mode bits */
-#define TIOCLBIC _IOW('t', 126, int) /* bic local mode bits */
-#define TIOCLSET _IOW('t', 125, int) /* set entire local mode word */
-#define TIOCLGET _IOR('t', 124, int) /* get local modes */
-#define LCRTBS (CRTBS>>16)
-#define LPRTERA (PRTERA>>16)
-#define LCRTERA (CRTERA>>16)
-#define LTILDE (TILDE>>16)
-#define LMDMBUF (MDMBUF>>16)
-#define LLITOUT (LITOUT>>16)
-#define LTOSTOP (TOSTOP>>16)
-#define LFLUSHO (FLUSHO>>16)
-#define LNOHANG (NOHANG>>16)
-#define LCRTKIL (CRTKIL>>16)
-#define LPASS8 (PASS8>>16)
-#define LCTLECH (CTLECH>>16)
-#define LPENDIN (PENDIN>>16)
-#define LDECCTQ (DECCTQ>>16)
-#define LNOFLSH (NOFLSH>>16)
-#define TIOCSLTC _IOW('t',117,struct ltchars)/* set local special chars*/
-#define TIOCGLTC _IOR('t',116,struct ltchars)/* get local special chars*/
-#define OTIOCCONS _IO('t', 98) /* for hp300 -- sans int arg */
-#define OTTYDISC 0
-#define NETLDISC 1
-#define NTTYDISC 2
-
-/* From 4.4 <sys/ttydev.h>. */
-#ifdef USE_OLD_TTY
-#define B0 0
-#define B50 1
-#define B75 2
-#define B110 3
-#define B134 4
-#define B150 5
-#define B200 6
-#define B300 7
-#define B600 8
-#define B1200 9
-#define B1800 10
-#define B2400 11
-#define B4800 12
-#define B9600 13
-#define EXTA 14
-#define EXTB 15
-#endif /* USE_OLD_TTY */
-
-#endif /* !_IOCTLS_H_ */
diff --git a/sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h b/sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h
deleted file mode 100644
index f3db33b01f..0000000000
--- a/sysdeps/unix/bsd/bsd4.4/freebsd/bits/environments.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Copyright (C) 1999-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#ifndef _UNISTD_H
-# error "Never include this file directly. Use <unistd.h> instead"
-#endif
-
-#include <bits/wordsize.h>
-
-/* This header should define the following symbols under the described
- situations. A value `1' means that the model is always supported,
- `-1' means it is never supported. Undefined means it cannot be
- statically decided.
-
- _POSIX_V6_ILP32_OFF32 32bit int, long, pointers, and off_t type
- _POSIX_V6_ILP32_OFFBIG 32bit int, long, and pointers and larger off_t type
-
- _POSIX_V6_LP64_OFF32 64bit long and pointers and 32bit off_t type
- _POSIX_V6_LPBIG_OFFBIG 64bit long and pointers and large off_t type
-
- The macros _XBS5_ILP32_OFF32, _XBS5_ILP32_OFFBIG, _XBS5_LP64_OFF32, and
- _XBS5_LPBIG_OFFBIG were used in previous versions of the Unix standard
- and are available only for compatibility.
-*/
-
-#if __WORDSIZE == 64
-
-/* We can never provide environments with 32-bit wide pointers. */
-# define _POSIX_V6_ILP32_OFF32 -1
-# define _POSIX_V6_ILP32_OFFBIG -1
-# define _XBS5_ILP32_OFF32 -1
-# define _XBS5_ILP32_OFFBIG -1
-/* We also have no use (for now) for an environment with bigger pointers
- and offsets. */
-# define _POSIX_V6_LPBIG_OFFBIG -1
-# define _XBS5_LPBIG_OFFBIG -1
-
-/* By default we have 64-bit wide `long int', pointers and `off_t'. */
-# define _POSIX_V6_LP64_OFF64 1
-# define _XBS5_LP64_OFF64 1
-
-#else /* __WORDSIZE == 32 */
-
-/* By default we have 32-bit wide `int', `long int', pointers
- and 64-bit `off_t'. */
-# define _POSIX_V6_ILP32_OFF32 -1
-# define _POSIX_V6_ILP32_OFFBIG 1
-# define _XBS5_ILP32_OFF32 -1
-# define _XBS5_ILP32_OFFBIG 1
-
-/* We can never provide environments with 64-bit wide pointers. */
-# define _POSIX_V6_LP64_OFF64 -1
-# define _POSIX_V6_LPBIG_OFFBIG -1
-# define _XBS5_LP64_OFF64 -1
-# define _XBS5_LPBIG_OFFBIG -1
-
-#endif /* __WORDSIZE == 32 */
diff --git a/sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h b/sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h
deleted file mode 100644
index b2eaa13e2f..0000000000
--- a/sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/* bits/typesizes.h -- underlying types for *_t. FreeBSD version.
- Copyright (C) 2002-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#ifndef _BITS_TYPES_H
-# error "Never include <bits/typesizes.h> directly; use <sys/types.h> instead."
-#endif
-
-#ifndef _BITS_TYPESIZES_H
-#define _BITS_TYPESIZES_H 1
-
-/* See <bits/types.h> for the meaning of these macros. This file exists so
- that <bits/types.h> need not vary across different GNU platforms. */
-
-#define __DEV_T_TYPE __U32_TYPE
-#define __UID_T_TYPE __U32_TYPE
-#define __GID_T_TYPE __U32_TYPE
-#define __INO_T_TYPE __U32_TYPE
-#define __INO64_T_TYPE __UQUAD_TYPE
-#define __MODE_T_TYPE __U16_TYPE
-#define __NLINK_T_TYPE __U16_TYPE
-#define __OFF_T_TYPE __SQUAD_TYPE
-#define __OFF64_T_TYPE __SQUAD_TYPE
-#define __PID_T_TYPE __S32_TYPE
-#define __RLIM_T_TYPE __SQUAD_TYPE
-#define __RLIM64_T_TYPE __SQUAD_TYPE
-#define __BLKCNT_T_TYPE __SLONGWORD_TYPE
-#define __BLKCNT64_T_TYPE __SQUAD_TYPE
-#define __FSBLKCNT_T_TYPE __ULONGWORD_TYPE
-#define __FSBLKCNT64_T_TYPE __UQUAD_TYPE
-#define __FSFILCNT_T_TYPE __ULONGWORD_TYPE
-#define __FSFILCNT64_T_TYPE __UQUAD_TYPE
-#define __FSWORD_T_TYPE __SWORD_TYPE
-#define __ID_T_TYPE __U32_TYPE
-#define __CLOCK_T_TYPE __S32_TYPE
-#define __TIME_T_TYPE __SLONGWORD_TYPE
-#define __USECONDS_T_TYPE __U32_TYPE
-#define __SUSECONDS_T_TYPE __SLONGWORD_TYPE
-#define __DADDR_T_TYPE __S32_TYPE
-#define __KEY_T_TYPE __S32_TYPE
-#define __CLOCKID_T_TYPE __S32_TYPE
-#define __TIMER_T_TYPE __S32_TYPE
-#define __BLKSIZE_T_TYPE __U32_TYPE
-#define __FSID_T_TYPE struct { int __val[2]; }
-#define __SSIZE_T_TYPE __SWORD_TYPE
-#define __SYSCALL_SLONG_TYPE __SLONGWORD_TYPE
-#define __SYSCALL_ULONG_TYPE __ULONGWORD_TYPE
-
-
-/* Tell the libc code that off_t and off64_t are actually the same type. */
-#define __OFF_T_MATCHES_OFF64_T 1
-
-
-/* Number of descriptors that can fit in an `fd_set'. */
-#define __FD_SETSIZE 1024
-
-
-#endif /* bits/typesizes.h */
diff --git a/sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h b/sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h
deleted file mode 100644
index 2b5f9e08e5..0000000000
--- a/sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Definitions of macros to access `dev_t' values. FreeBSD version.
- Copyright (C) 2002-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#ifndef _SYS_SYSMACROS_H
-#define _SYS_SYSMACROS_H 1
-
-/* For compatibility we provide alternative names. */
-#define major(dev) ((int)(((unsigned int) (dev) >> 8) & 0xff))
-#define minor(dev) ((int)((dev) & 0xffff00ff))
-#define makedev(major, minor) (((major) << 8) | (minor))
-
-#endif /* sys/sysmacros.h */
diff --git a/sysdeps/unix/bsd/bsdstat.h b/sysdeps/unix/bsd/bsdstat.h
deleted file mode 100644
index 3c9f837fff..0000000000
--- a/sysdeps/unix/bsd/bsdstat.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <sys/types.h>
-
-/* This will make it not define major, minor, makedev, and S_IF*. */
-#undef __USE_BSD
-#undef __USE_MISC
-#include <sys/stat.h>
-
-#undef stat
-#undef fstat
-
-#undef S_IRWXU
-#undef S_IRUSR
-#undef S_IWUSR
-#undef S_IXUSR
-#undef S_IRWXG
-#undef S_IRGRP
-#undef S_IWGRP
-#undef S_IXGRP
-#undef S_IRWXO
-#undef S_IROTH
-#undef S_IWOTH
-#undef S_IXOTH
-#undef S_ISBLK
-#undef S_ISCHR
-#undef S_ISDIR
-#undef S_ISFIFO
-#undef S_ISREG
-#undef S_ISUID
-#undef S_ISGID
-#define stat system_stat
-#define fstat system_fstat
-#define KERNEL /* Try to avoid misc decls. */
-#include "/usr/include/sys/stat.h"
-#undef KERNEL
-#undef stat
-#undef fstat
-
-#define member_same(statbufp, sysbufp, member) \
- (offsetof(struct __stat, member) == offsetof(struct system_stat, member) && \
- sizeof((statbufp)->member) == sizeof((sysbufp)->member))
-#define need_stat_mapping(statbufp, sysbufp) \
- (!(member_same(statbufp, sysbufp, st_dev) && \
- member_same(statbufp, sysbufp, st_ino) && \
- member_same(statbufp, sysbufp, st_mode) && \
- member_same(statbufp, sysbufp, st_nlink) && \
- member_same(statbufp, sysbufp, st_uid) && \
- member_same(statbufp, sysbufp, st_gid) && \
- member_same(statbufp, sysbufp, st_rdev) && \
- member_same(statbufp, sysbufp, st_size) && \
- member_same(statbufp, sysbufp, st_atime) && \
- member_same(statbufp, sysbufp, st_mtime) && \
- member_same(statbufp, sysbufp, st_ctime) && \
- member_same(statbufp, sysbufp, st_blksize) && \
- member_same(statbufp, sysbufp, st_blocks)))
-
-/* Map a system `struct stat' to our `struct stat'. */
-#ifdef __GNUC__
-inline
-#endif
-static int
-mapstat (sysbuf, statbuf)
- const struct system_stat *sysbuf;
- struct __stat *buf;
-{
- if (buf == NULL)
- {
- errno = EINVAL;
- return -1;
- }
-
- if (!need_stat_mapping(buf, sysbuf))
- /* Hopefully this will be optimized out. */
- *buf = *(struct __stat *) sysbuf;
- else
- {
- buf->st_dev = (dev_t) sysbuf->st_dev;
- buf->st_ino = (ino_t) sysbuf->st_ino;
- buf->st_mode = (mode_t) sysbuf->st_mode;
- buf->st_nlink = (nlink_t) sysbuf->st_nlink;
- buf->st_uid = (uid_t) sysbuf->st_uid;
- buf->st_gid = (gid_t) sysbuf->st_gid;
- buf->st_rdev = (dev_t) sysbuf->st_rdev;
- buf->st_size = (size_t) sysbuf->st_size;
- buf->st_atime = (time_t) sysbuf->st_atime;
- buf->st_mtime = (time_t) sysbuf->st_mtime;
- buf->st_ctime = (time_t) sysbuf->st_ctime;
- buf->st_blksize = (size_t) sysbuf->st_blksize;
- buf->st_blocks = (size_t) sysbuf->st_blocks;
- }
-
- return 0;
-}
diff --git a/sysdeps/unix/bsd/i386/vfork.S b/sysdeps/unix/bsd/i386/vfork.S
deleted file mode 100644
index 69cbeedb99..0000000000
--- a/sysdeps/unix/bsd/i386/vfork.S
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Copyright (C) 1993-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-
-/* Since vfork shares the address space between the parent and child,
- we must take care to avoid the child unwinding the stack frame and
- clobbering it for the parent. */
-
-.text
-ENTRY (__vfork)
- popl scratch /* Save the return PC in a register. */
- DO_CALL (vfork, 0) /* Do the system call. */
- pushl scratch /* Put the return PC back on the stack. */
- jb syscall_error /* Branch if error. */
- /* R1 is now 0 for the parent and 1 for the child. Decrement it to
- make it -1 (all bits set) for the parent, and 0 (no bits set)
- for the child. Then AND it with R0, so the parent gets
- R0&-1==R0, and the child gets R0&0==0. */
- decl r1
- andl r1, r0
- ret
-libc_hidden_def (__vfork)
-
-weak_alias (__vfork, vfork)
diff --git a/sysdeps/unix/bsd/i386/wait3.S b/sysdeps/unix/bsd/i386/wait3.S
deleted file mode 100644
index 3f3cbdc385..0000000000
--- a/sysdeps/unix/bsd/i386/wait3.S
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-
-/* <sysdeps/unix/bsd/sequent/i386/sysdep.h> defines this to put the first
- two arguments into registers. Since the arguments to wait3 are
- transferred magically through the same registers, we want to disable this.
- This allows us to avoid rewriting this file for that system. */
-
-#undef ARGS_2
-#define ARGS_2 /* Special-case no-op. */
-
-.text
-.globl syscall_error
-.align 4
-ENTRY (__wait3)
- mov 8(%esp), %ecx /* Flags. */
- mov 12(%esp), %edx /* rusage pointer. */
- pushl $0xdf; popf /* Set all the condition codes. */
- DO_CALL (wait, 2) /* Do the system call. */
- je syscall_error /* Check for error. */
- mov 4(%esp), scratch /* Status pointer. */
- orl scratch, scratch /* Is it nil? */
- je done /* Yup; return. */
- mov r1, 0(scratch) /* Non-nil; store the status in it. */
-done: ret
-
-weak_alias (__wait3, wait3)
diff --git a/sysdeps/unix/bsd/poll.c b/sysdeps/unix/bsd/poll.c
deleted file mode 100644
index b6d306ce1d..0000000000
--- a/sysdeps/unix/bsd/poll.c
+++ /dev/null
@@ -1,197 +0,0 @@
-/* Copyright (C) 1994-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <alloca.h>
-#include <sys/poll.h>
-#include <sys/types.h>
-#include <errno.h>
-#include <string.h>
-#include <sys/time.h>
-#include <sys/param.h>
-#include <unistd.h>
-
-/* Poll the file descriptors described by the NFDS structures starting at
- FDS. If TIMEOUT is nonzero and not -1, allow TIMEOUT milliseconds for
- an event to occur; if TIMEOUT is -1, block until an event occurs.
- Returns the number of file descriptors with events, zero if timed out,
- or -1 for errors. */
-
-int
-__poll (fds, nfds, timeout)
- struct pollfd *fds;
- nfds_t nfds;
- int timeout;
-{
- static int max_fd_size;
- struct timeval tv;
- fd_set *rset, *wset, *xset;
- struct pollfd *f;
- int ready;
- int maxfd = 0;
- int bytes;
-
- if (!max_fd_size)
- max_fd_size = __getdtablesize ();
-
- bytes = howmany (max_fd_size, __NFDBITS);
- rset = alloca (bytes);
- wset = alloca (bytes);
- xset = alloca (bytes);
-
- /* We can't call FD_ZERO, since FD_ZERO only works with sets
- of exactly __FD_SETSIZE size. */
- __bzero (rset, bytes);
- __bzero (wset, bytes);
- __bzero (xset, bytes);
-
- for (f = fds; f < &fds[nfds]; ++f)
- {
- f->revents = 0;
- if (f->fd >= 0)
- {
- if (f->fd >= max_fd_size)
- {
- /* The user provides a file descriptor number which is higher
- than the maximum we got from the `getdtablesize' call.
- Maybe this is ok so enlarge the arrays. */
- fd_set *nrset, *nwset, *nxset;
- int nbytes;
-
- max_fd_size = roundup (f->fd, __NFDBITS);
- nbytes = howmany (max_fd_size, __NFDBITS);
-
- nrset = alloca (nbytes);
- nwset = alloca (nbytes);
- nxset = alloca (nbytes);
-
- __bzero ((char *) nrset + bytes, nbytes - bytes);
- __bzero ((char *) nwset + bytes, nbytes - bytes);
- __bzero ((char *) nxset + bytes, nbytes - bytes);
-
- rset = memcpy (nrset, rset, bytes);
- wset = memcpy (nwset, wset, bytes);
- xset = memcpy (nxset, xset, bytes);
-
- bytes = nbytes;
- }
-
- if (f->events & POLLIN)
- FD_SET (f->fd, rset);
- if (f->events & POLLOUT)
- FD_SET (f->fd, wset);
- if (f->events & POLLPRI)
- FD_SET (f->fd, xset);
- if (f->fd > maxfd && (f->events & (POLLIN|POLLOUT|POLLPRI)))
- maxfd = f->fd;
- }
- }
-
- tv.tv_sec = timeout / 1000;
- tv.tv_usec = (timeout % 1000) * 1000;
-
- while (1)
- {
- ready = __select (maxfd + 1, rset, wset, xset,
- timeout == -1 ? NULL : &tv);
-
- /* It might be that one or more of the file descriptors is invalid.
- We now try to find and mark them and then try again. */
- if (ready == -1 && errno == EBADF)
- {
- fd_set *sngl_rset = alloca (bytes);
- fd_set *sngl_wset = alloca (bytes);
- fd_set *sngl_xset = alloca (bytes);
- struct timeval sngl_tv;
-
- /* Clear the original set. */
- __bzero (rset, bytes);
- __bzero (wset, bytes);
- __bzero (xset, bytes);
-
- /* This means we don't wait for input. */
- sngl_tv.tv_sec = 0;
- sngl_tv.tv_usec = 0;
-
- maxfd = -1;
-
- /* Reset the return value. */
- ready = 0;
-
- for (f = fds; f < &fds[nfds]; ++f)
- if (f->fd != -1 && (f->events & (POLLIN|POLLOUT|POLLPRI))
- && (f->revents & POLLNVAL) == 0)
- {
- int n;
-
- __bzero (sngl_rset, bytes);
- __bzero (sngl_wset, bytes);
- __bzero (sngl_xset, bytes);
-
- if (f->events & POLLIN)
- FD_SET (f->fd, sngl_rset);
- if (f->events & POLLOUT)
- FD_SET (f->fd, sngl_wset);
- if (f->events & POLLPRI)
- FD_SET (f->fd, sngl_xset);
-
- n = __select (f->fd + 1, sngl_rset, sngl_wset, sngl_xset,
- &sngl_tv);
- if (n != -1)
- {
- /* This descriptor is ok. */
- if (f->events & POLLIN)
- FD_SET (f->fd, rset);
- if (f->events & POLLOUT)
- FD_SET (f->fd, wset);
- if (f->events & POLLPRI)
- FD_SET (f->fd, xset);
- if (f->fd > maxfd)
- maxfd = f->fd;
- if (n > 0)
- /* Count it as being available. */
- ++ready;
- }
- else if (errno == EBADF)
- f->revents |= POLLNVAL;
- }
- /* Try again. */
- continue;
- }
-
- break;
- }
-
- if (ready > 0)
- for (f = fds; f < &fds[nfds]; ++f)
- {
- if (f->fd >= 0)
- {
- if (FD_ISSET (f->fd, rset))
- f->revents |= POLLIN;
- if (FD_ISSET (f->fd, wset))
- f->revents |= POLLOUT;
- if (FD_ISSET (f->fd, xset))
- f->revents |= POLLPRI;
- }
- }
-
- return ready;
-}
-#ifndef __poll
-libc_hidden_def (__poll)
-weak_alias (__poll, poll)
-#endif
diff --git a/sysdeps/unix/bsd/ptsname.c b/sysdeps/unix/bsd/ptsname.c
deleted file mode 100644
index 60e38d79d5..0000000000
--- a/sysdeps/unix/bsd/ptsname.c
+++ /dev/null
@@ -1,80 +0,0 @@
-/* Copyright (C) 1998-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <errno.h>
-#include <paths.h>
-#include <stdlib.h>
-#include <string.h>
-#include <sys/stat.h>
-#include <unistd.h>
-
-/* Static buffer for `ptsname'. */
-static char buffer[sizeof (_PATH_TTY) + 2];
-
-
-/* Return the pathname of the pseudo terminal slave associated with
- the master FD is open on, or NULL on errors.
- The returned storage is good until the next call to this function. */
-char *
-ptsname (int fd)
-{
- return __ptsname_r (fd, buffer, sizeof (buffer)) != 0 ? NULL : buffer;
-}
-
-
-/* Store at most BUFLEN characters of the pathname of the slave pseudo
- terminal associated with the master FD is open on in BUF.
- Return 0 on success, otherwise an error number. */
-int
-__ptsname_r (int fd, char *buf, size_t buflen)
-{
- int save_errno = errno;
- int err;
- struct stat st;
-
- if (buf == NULL)
- {
- __set_errno (EINVAL);
- return EINVAL;
- }
-
- if (!__isatty (fd))
- /* We rely on isatty to set errno properly (i.e. EBADF or ENOTTY). */
- return errno;
-
- if (buflen < strlen (_PATH_TTY) + 3)
- {
- __set_errno (ERANGE);
- return ERANGE;
- }
-
- err = __ttyname_r (fd, buf, buflen);
- if (err != 0)
- {
- __set_errno (err);
- return errno;
- }
-
- buf[sizeof (_PATH_DEV) - 1] = 't';
-
- if (__stat (buf, &st) < 0)
- return errno;
-
- __set_errno (save_errno);
- return 0;
-}
-weak_alias (__ptsname_r, ptsname_r)
diff --git a/sysdeps/unix/bsd/seekdir.c b/sysdeps/unix/bsd/seekdir.c
deleted file mode 100644
index 4d244f53bd..0000000000
--- a/sysdeps/unix/bsd/seekdir.c
+++ /dev/null
@@ -1 +0,0 @@
-/* Because they share a private data structure, seekdir is in telldir.c. */
diff --git a/sysdeps/unix/bsd/sigaction.c b/sysdeps/unix/bsd/sigaction.c
deleted file mode 100644
index 84ad17e5b4..0000000000
--- a/sysdeps/unix/bsd/sigaction.c
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-#include <errno.h>
-#include <stddef.h>
-#include <signal.h>
-
-
-/* If ACT is not NULL, change the action for SIG to *ACT.
- If OACT is not NULL, put the old action for SIG in *OACT. */
-int
-__sigaction (sig, act, oact)
- int sig;
- const struct sigaction *act;
- struct sigaction *oact;
-{
- struct sigvec vec, ovec;
-
- if (sig <= 0 || sig >= NSIG)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- if (act != NULL)
- {
- vec.sv_mask = act->sa_mask;
- vec.sv_handler = act->sa_handler;
- vec.sv_flags = (((act->sa_flags & SA_ONSTACK) ? SV_ONSTACK : 0) |
- (!(act->sa_flags & SA_RESTART) ? SV_INTERRUPT : 0));
- }
-
- if (__sigvec(sig, act != NULL ? &vec : (struct sigvec *) NULL, &ovec) < 0)
- return -1;
-
- if (oact != NULL)
- {
- oact->sa_handler = (void (*) (int)) ovec.sv_handler;
- oact->sa_mask = ovec.sv_mask;
- oact->sa_flags = (((ovec.sv_flags & SV_ONSTACK) ? SA_ONSTACK : 0) |
- (!(ovec.sv_flags & SV_INTERRUPT) ? SA_RESTART : 0));
- }
-
- return 0;
-}
-libc_hidden_def (__sigaction)
-weak_alias (__sigaction, sigaction)
diff --git a/sysdeps/unix/bsd/sigprocmask.c b/sysdeps/unix/bsd/sigprocmask.c
deleted file mode 100644
index 683dbf02a0..0000000000
--- a/sysdeps/unix/bsd/sigprocmask.c
+++ /dev/null
@@ -1,65 +0,0 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <signal.h>
-
-
-/* If SET is not NULL, modify the current set of blocked signals
- according to HOW, which may be SIG_BLOCK, SIG_UNBLOCK or SIG_SETMASK.
- If OSET is not NULL, store the old set of blocked signals in *OSET. */
-int
-__sigprocmask (how, set, oset)
- int how;
- const sigset_t *set;
- sigset_t *oset;
-{
- int mask;
-
- if (set != NULL)
- {
- mask = *set;
- switch (how)
- {
- case SIG_BLOCK:
- mask = __sigblock (mask);
- break;
-
- case SIG_UNBLOCK:
- mask = __sigblock (0) & ~mask;
- /* Fall through. */
-
- case SIG_SETMASK:
- mask = __sigsetmask (mask);
- break;
-
- default:
- __set_errno (EINVAL);
- return -1;
- }
- }
- else
- mask = __sigblock (0);
-
- if (oset != NULL)
- *oset = mask;
-
- return 0;
-}
-
-weak_alias (__sigprocmask, sigprocmask)
diff --git a/sysdeps/unix/bsd/sigsuspend.c b/sysdeps/unix/bsd/sigsuspend.c
deleted file mode 100644
index e35a579bcd..0000000000
--- a/sysdeps/unix/bsd/sigsuspend.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <errno.h>
-#include <signal.h>
-#include <stddef.h>
-#include <unistd.h>
-
-
-/* Change the set of blocked signals to SET,
- wait until a signal arrives, and restore the set of blocked signals. */
-int
-__sigsuspend (set)
- const sigset_t *set;
-{
- int mask;
- int sig;
-
- if (set == NULL)
- {
- __set_errno (EINVAL);
- return -1;
- }
-
- mask = 0;
- for (sig = 1; sig <= NSIG; ++sig)
- if (__sigismember (set, sig))
- mask |= sigmask (sig);
-
- return __sigpause (mask, 0);
-}
-libc_hidden_def (__sigsuspend)
-weak_alias (__sigsuspend, sigsuspend)
diff --git a/sysdeps/unix/bsd/sys/reboot.h b/sysdeps/unix/bsd/sys/reboot.h
deleted file mode 100644
index 76c2380b28..0000000000
--- a/sysdeps/unix/bsd/sys/reboot.h
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright (c) 1982, 1986, 1988, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * @(#)reboot.h 8.1 (Berkeley) 6/2/93
- */
-
-/*
- * Arguments to reboot system call.
- * These are passed to boot program in r11,
- * and on to init.
- */
-#define RB_AUTOBOOT 0 /* flags for system auto-booting itself */
-
-#define RB_ASKNAME 0x01 /* ask for file name to reboot from */
-#define RB_SINGLE 0x02 /* reboot to single user only */
-#define RB_NOSYNC 0x04 /* don't sync before reboot */
-#define RB_HALT 0x08 /* don't reboot, just halt */
-#define RB_INITNAME 0x10 /* name given for /etc/init (unused) */
-#define RB_DFLTROOT 0x20 /* use compiled-in rootdev */
-#define RB_KDB 0x40 /* give control to kernel debugger */
-#define RB_RDONLY 0x80 /* mount root fs read-only */
-#define RB_DUMP 0x100 /* dump kernel memory before reboot */
-#define RB_MINIROOT 0x200 /* mini-root present in memory at boot time */
-
-/*
- * Constants for converting boot-style device number to type,
- * adaptor (uba, mba, etc), unit number and partition number.
- * Type (== major device number) is in the low byte
- * for backward compatibility. Except for that of the "magic
- * number", each mask applies to the shifted value.
- * Format:
- * (4) (4) (4) (4) (8) (8)
- * --------------------------------
- * |MA | AD| CT| UN| PART | TYPE |
- * --------------------------------
- */
-#define B_ADAPTORSHIFT 24
-#define B_ADAPTORMASK 0x0f
-#define B_ADAPTOR(val) (((val) >> B_ADAPTORSHIFT) & B_ADAPTORMASK)
-#define B_CONTROLLERSHIFT 20
-#define B_CONTROLLERMASK 0xf
-#define B_CONTROLLER(val) (((val)>>B_CONTROLLERSHIFT) & B_CONTROLLERMASK)
-#define B_UNITSHIFT 16
-#define B_UNITMASK 0xf
-#define B_UNIT(val) (((val) >> B_UNITSHIFT) & B_UNITMASK)
-#define B_PARTITIONSHIFT 8
-#define B_PARTITIONMASK 0xff
-#define B_PARTITION(val) (((val) >> B_PARTITIONSHIFT) & B_PARTITIONMASK)
-#define B_TYPESHIFT 0
-#define B_TYPEMASK 0xff
-#define B_TYPE(val) (((val) >> B_TYPESHIFT) & B_TYPEMASK)
-
-#define B_MAGICMASK ((u_long)0xf0000000)
-#define B_DEVMAGIC ((u_long)0xa0000000)
-
-#define MAKEBOOTDEV(type, adaptor, controller, unit, partition) \
- (((type) << B_TYPESHIFT) | ((adaptor) << B_ADAPTORSHIFT) | \
- ((controller) << B_CONTROLLERSHIFT) | ((unit) << B_UNITSHIFT) | \
- ((partition) << B_PARTITIONSHIFT) | B_DEVMAGIC)
diff --git a/sysdeps/unix/bsd/telldir.c b/sysdeps/unix/bsd/telldir.c
deleted file mode 100644
index 87e365315f..0000000000
--- a/sysdeps/unix/bsd/telldir.c
+++ /dev/null
@@ -1,115 +0,0 @@
-/* Copyright (C) 1994-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <dirent.h>
-#include <unistd.h>
-#include <sys/types.h>
-#include <stdlib.h>
-#include "dirstream.h"
-
-/* Internal data structure for telldir and seekdir. */
-struct record
- {
- struct record *next; /* Link in chain. */
- off_t cookie; /* Value returned by `telldir'. */
- off_t pos;
- size_t offset;
- };
-#define NBUCKETS 32
-static struct record *records[32];
-static off_t lastpos;
-__libc_lock_define_initialized(static, lock) /* Locks above data. */
-
-
-/* Return the current position of DIRP. */
-long int
-telldir (dirp)
- DIR *dirp;
-{
- struct record *new;
- long int pos;
-
- new = malloc (sizeof *new);
- if (new == NULL)
- return -1l;
-
- __libc_lock_lock (lock);
-
- new->pos = dirp->filepos;
- new->offset = dirp->offset;
- new->cookie = ++lastpos;
- new->next = records[new->cookie % NBUCKETS];
- records[new->cookie % NBUCKETS] = new;
-
- pos = new->cookie;
-
- __libc_lock_unlock (lock);
-
- return pos;
-}
-
-
-
-/* Seek to position POS in DIRP. */
-void
-seekdir (dirp, pos)
- DIR *dirp;
- long int pos;
-{
- struct record *r, **prevr;
-
- __libc_lock_lock (lock);
-
- for (prevr = &records[pos % NBUCKETS], r = *prevr;
- r != NULL;
- prevr = &r->next, r = r->next)
- if (r->cookie == pos)
- {
- __libc_lock_lock (dirp->__lock);
- if (dirp->filepos != r->pos || dirp->offset != r->offset)
- {
- dirp->size = 0; /* Must read a fresh buffer. */
- /* Move to the saved position. */
- __lseek (dirp->fd, r->pos, SEEK_SET);
- dirp->filepos = r->pos;
- dirp->offset = 0;
- /* Read entries until we reach the saved offset. */
- while (dirp->offset < r->offset)
- {
- struct dirent *scan;
- __libc_lock_unlock (dirp->__lock);
- scan = readdir (dirp);
- __libc_lock_lock (dirp->__lock);
- if (! scan)
- break;
- }
- }
- __libc_lock_unlock (dirp->__lock);
-
- /* To prevent leaking memory, cookies returned from telldir
- can only be used once. So free this one's record now. */
- *prevr = r->next;
- free (r);
- break;
- }
-
- __libc_lock_unlock (lock);
-
- /* If we lost there is no way to indicate it. Oh well. */
-}
diff --git a/sysdeps/unix/bsd/times.c b/sysdeps/unix/bsd/times.c
deleted file mode 100644
index f0765bd126..0000000000
--- a/sysdeps/unix/bsd/times.c
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <errno.h>
-#include <stddef.h>
-#include <sys/resource.h>
-#include <sys/times.h>
-#include <sys/time.h>
-#include <time.h>
-
-
-/* Time the program started. */
-extern time_t _posix_start_time;
-
-#ifdef __GNUC__
-__inline
-#endif
-static clock_t
-timeval_to_clock_t (const struct timeval *tv, clock_t clk_tck)
-{
- return (clock_t) ((tv->tv_sec * clk_tck) +
- (tv->tv_usec * clk_tck / 1000000L));
-}
-
-/* Store the CPU time used by this process and all its
- dead children (and their dead children) in BUFFER.
- Return the elapsed real time, or (clock_t) -1 for errors.
- All times are in CLK_TCKths of a second. */
-clock_t
-__times (buffer)
- struct tms *buffer;
-{
- struct rusage usage;
- clock_t clk_tck;
-
- if (buffer == NULL)
- {
- __set_errno (EINVAL);
- return (clock_t) -1;
- }
-
- clk_tck = __getclktck ();
-
- if (__getrusage (RUSAGE_SELF, &usage) < 0)
- return (clock_t) -1;
- buffer->tms_utime = (clock_t) timeval_to_clock_t (&usage.ru_utime, clk_tck);
- buffer->tms_stime = (clock_t) timeval_to_clock_t (&usage.ru_stime, clk_tck);
-
- if (__getrusage (RUSAGE_CHILDREN, &usage) < 0)
- return (clock_t) -1;
- buffer->tms_cutime = (clock_t) timeval_to_clock_t (&usage.ru_utime, clk_tck);
- buffer->tms_cstime = (clock_t) timeval_to_clock_t (&usage.ru_stime, clk_tck);
-
- return (time ((time_t *) NULL) - _posix_start_time) * clk_tck;
-}
-
-weak_alias (__times, times)
diff --git a/sysdeps/unix/bsd/usleep.c b/sysdeps/unix/bsd/usleep.c
deleted file mode 100644
index 709030babe..0000000000
--- a/sysdeps/unix/bsd/usleep.c
+++ /dev/null
@@ -1,34 +0,0 @@
-/* Copyright (C) 1992-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <unistd.h>
-#include <sys/types.h>
-#include <sys/time.h>
-
-/* Sleep USECONDS microseconds, or until a previously set timer goes off. */
-int
-usleep (useconds)
- useconds_t useconds;
-{
- struct timeval delay;
-
- delay.tv_sec = 0;
- delay.tv_usec = useconds;
-
- return __select (0, (fd_set *) NULL, (fd_set *) NULL, (fd_set *) NULL,
- &delay);
-}
diff --git a/sysdeps/unix/make-syscalls.sh b/sysdeps/unix/make-syscalls.sh
index f04f2abb3f..6eba62c946 100644
--- a/sysdeps/unix/make-syscalls.sh
+++ b/sysdeps/unix/make-syscalls.sh
@@ -275,7 +275,7 @@ while read file srcfile caller syscall args strong weak; do
# name in the vDSO and KERNEL_X.Y is its symbol version.
vdso_symbol="${vdso_syscall%@*}"
vdso_symver="${vdso_syscall#*@}"
- vdso_symver="${vdso_symver//./_}"
+ vdso_symver=`echo "$vdso_symver" | sed 's/\./_/g'`
echo "\
\$(foreach p,\$(sysd-rules-targets),\$(objpfx)\$(patsubst %,\$p,$file).os): \\
\$(..)sysdeps/unix/make-syscalls.sh\
diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile
index 247cb9c111..234d5a747a 100644
--- a/sysdeps/unix/sysv/linux/Makefile
+++ b/sysdeps/unix/sysv/linux/Makefile
@@ -38,7 +38,7 @@ sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h \
bits/socket_type.h bits/syscall.h bits/sysctl.h \
bits/mman-linux.h
-tests += tst-clone
+tests += tst-clone tst-fanotify
# Generate the list of SYS_* macros for the system calls (__NR_* macros).
diff --git a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
index b5929bd292..9b0421ee0c 100644
--- a/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
+++ b/sysdeps/unix/sysv/linux/bits/fcntl-linux.h
@@ -96,6 +96,9 @@
#ifndef __O_DSYNC
# define __O_DSYNC 010000
#endif
+#ifndef __O_TMPFILE
+# define __O_TMPFILE 020200000
+#endif
#ifndef F_GETLK
# ifndef __USE_FILE_OFFSET64
@@ -128,6 +131,7 @@
# define O_DIRECT __O_DIRECT /* Direct disk access. */
# define O_NOATIME __O_NOATIME /* Do not set atime. */
# define O_PATH __O_PATH /* Resolve pathname but do not open file. */
+# define O_TMPFILE __O_TMPFILE /* Atomically create nameless file. */
#endif
/* For now, Linux has no separate synchronicitiy options for read
diff --git a/sysdeps/unix/sysv/linux/bits/in.h b/sysdeps/unix/sysv/linux/bits/in.h
index e959b33eac..d763ce9fc2 100644
--- a/sysdeps/unix/sysv/linux/bits/in.h
+++ b/sysdeps/unix/sysv/linux/bits/in.h
@@ -21,6 +21,18 @@
# error "Never use <bits/in.h> directly; include <netinet/in.h> instead."
#endif
+/* If the application has already included linux/in6.h from a linux-based
+ kernel then we will not define the IPv6 IPPROTO_* defines, in6_addr (nor the
+ defines), sockaddr_in6, or ipv6_mreq. The ABI used by the linux-kernel and
+ glibc match exactly. Neither the linux kernel nor glibc should break this
+ ABI without coordination. */
+#ifdef _UAPI_LINUX_IN6_H
+/* This is not quite the same API since the kernel always defines s6_addr16 and
+ s6_addr32. This is not a violation of POSIX since POSIX says "at least the
+ following member" and that holds true. */
+# define __USE_KERNEL_IPV6_DEFS
+#endif
+
/* Options for use with `getsockopt' and `setsockopt' at the IP level.
The first word in the comment at the right is the data type used;
"bool" means a boolean value stored in an `int'. */
diff --git a/sysdeps/unix/sysv/linux/bits/ipc.h b/sysdeps/unix/sysv/linux/bits/ipc.h
index a29cb6db28..9460643e73 100644
--- a/sysdeps/unix/sysv/linux/bits/ipc.h
+++ b/sysdeps/unix/sysv/linux/bits/ipc.h
@@ -50,6 +50,6 @@ struct ipc_perm
unsigned short int __pad1;
unsigned short int __seq; /* Sequence number. */
unsigned short int __pad2;
- __syscall_ulong_t __unused1;
- __syscall_ulong_t __unused2;
+ __syscall_ulong_t __glibc_reserved1;
+ __syscall_ulong_t __glibc_reserved2;
};
diff --git a/sysdeps/unix/sysv/linux/bits/msq.h b/sysdeps/unix/sysv/linux/bits/msq.h
index 8f6eb8a7d0..59fc2fdcc3 100644
--- a/sysdeps/unix/sysv/linux/bits/msq.h
+++ b/sysdeps/unix/sysv/linux/bits/msq.h
@@ -39,18 +39,18 @@ struct msqid_ds
{
struct ipc_perm msg_perm; /* structure describing operation permission */
__time_t msg_stime; /* time of last msgsnd command */
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
__time_t msg_rtime; /* time of last msgrcv command */
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
__time_t msg_ctime; /* time of last change */
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
unsigned long int __msg_cbytes; /* current number of bytes on queue */
msgqnum_t msg_qnum; /* number of messages currently on queue */
msglen_t msg_qbytes; /* max number of bytes allowed on queue */
__pid_t msg_lspid; /* pid of last msgsnd() */
__pid_t msg_lrpid; /* pid of last msgrcv() */
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#ifdef __USE_MISC
diff --git a/sysdeps/unix/sysv/linux/bits/sem.h b/sysdeps/unix/sysv/linux/bits/sem.h
index 62f5407415..26ea325a19 100644
--- a/sysdeps/unix/sysv/linux/bits/sem.h
+++ b/sysdeps/unix/sysv/linux/bits/sem.h
@@ -39,12 +39,12 @@ struct semid_ds
{
struct ipc_perm sem_perm; /* operation permission struct */
__time_t sem_otime; /* last semop() time */
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
__time_t sem_ctime; /* last time changed by semctl() */
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
unsigned long int sem_nsems; /* number of semaphores in set */
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
/* The user should define a union like the following to use it for arguments
diff --git a/sysdeps/unix/sysv/linux/bits/shm.h b/sysdeps/unix/sysv/linux/bits/shm.h
index e0ad934df3..5390d66cfa 100644
--- a/sysdeps/unix/sysv/linux/bits/shm.h
+++ b/sysdeps/unix/sysv/linux/bits/shm.h
@@ -51,16 +51,16 @@ struct shmid_ds
struct ipc_perm shm_perm; /* operation permission struct */
size_t shm_segsz; /* size of segment in bytes */
__time_t shm_atime; /* time of last shmat() */
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
__time_t shm_dtime; /* time of last shmdt() */
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
__time_t shm_ctime; /* time of last change by shmctl() */
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#ifdef __USE_MISC
@@ -82,10 +82,10 @@ struct shminfo
unsigned long int shmmni;
unsigned long int shmseg;
unsigned long int shmall;
- unsigned long int __unused1;
- unsigned long int __unused2;
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
struct shm_info
diff --git a/sysdeps/unix/sysv/linux/bits/stat.h b/sysdeps/unix/sysv/linux/bits/stat.h
index d71093ef3f..65e2a5a30a 100644
--- a/sysdeps/unix/sysv/linux/bits/stat.h
+++ b/sysdeps/unix/sysv/linux/bits/stat.h
@@ -84,8 +84,8 @@ struct stat
unsigned long int st_ctimensec; /* Nsecs of last status change. */
#endif
#ifndef __USE_FILE_OFFSET64
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
#else
__ino64_t st_ino; /* File serial number. */
#endif
diff --git a/sysdeps/unix/sysv/linux/configure b/sysdeps/unix/sysv/linux/configure
index 76cfea1dc9..643da86efa 100644
--- a/sysdeps/unix/sysv/linux/configure
+++ b/sysdeps/unix/sysv/linux/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux.
# Don't bother trying to generate any glue code to be compatible with the
@@ -187,7 +187,10 @@ case "$machine" in
libc_cv_gcc_unwind_find_fde=yes
arch_minimum_kernel=2.6.16
;;
- powerpc/powerpc32)
+ x86_64/x32)
+ arch_minimum_kernel=3.4.0
+ ;;
+ powerpc/powerpc32*)
libc_cv_gcc_unwind_find_fde=yes
arch_minimum_kernel=2.6.16
;;
diff --git a/sysdeps/unix/sysv/linux/configure.in b/sysdeps/unix/sysv/linux/configure.ac
index e55d9fdb0f..1be921f65e 100644
--- a/sysdeps/unix/sysv/linux/configure.in
+++ b/sysdeps/unix/sysv/linux/configure.ac
@@ -43,7 +43,10 @@ case "$machine" in
libc_cv_gcc_unwind_find_fde=yes
arch_minimum_kernel=2.6.16
;;
- powerpc/powerpc32)
+ x86_64/x32)
+ arch_minimum_kernel=3.4.0
+ ;;
+ powerpc/powerpc32*)
libc_cv_gcc_unwind_find_fde=yes
arch_minimum_kernel=2.6.16
;;
diff --git a/sysdeps/unix/sysv/linux/dl-sysdep.c b/sysdeps/unix/sysv/linux/dl-sysdep.c
index e80cb8d9f0..4b837acbc0 100644
--- a/sysdeps/unix/sysv/linux/dl-sysdep.c
+++ b/sysdeps/unix/sysv/linux/dl-sysdep.c
@@ -19,6 +19,7 @@
/* Linux needs some special initialization, but otherwise uses
the generic dynamic linker system interface code. */
+#include <assert.h>
#include <string.h>
#include <fcntl.h>
#include <unistd.h>
@@ -130,3 +131,48 @@ _dl_discover_osversion (void)
return version;
}
+
+/* Mask every signal, returning the previous sigmask in OLD. */
+void
+internal_function
+_dl_mask_all_signals (sigset_t *old)
+{
+ int ret;
+ sigset_t new;
+
+ sigfillset (&new);
+
+ /* This function serves as a replacement to pthread_sigmask, which
+ isn't available from within the dynamic linker since it would require
+ linking with libpthread. We duplicate some of the functionality here
+ to avoid requiring libpthread. This isn't quite identical to
+ pthread_sigmask in that we do not mask internal signals used for
+ cancellation and setxid handling. This disables asynchronous
+ cancellation for the duration the signals are disabled, but it's a
+ small window, and prevents any problems with the use of TLS variables
+ in the signal handlers that would have executed. */
+
+ /* It's very important we don't touch errno here, as that's TLS; since this
+ gets called from get_tls_addr we might end up recursing. */
+
+ INTERNAL_SYSCALL_DECL (err);
+
+ ret = INTERNAL_SYSCALL (rt_sigprocmask, err, 4, SIG_SETMASK, &new, old,
+ _NSIG / 8);
+
+ assert (ret == 0);
+}
+
+/* Return sigmask to what it was before a call to _dl_mask_all_signals. */
+void
+internal_function
+_dl_unmask_signals (sigset_t *old)
+{
+ int ret;
+ INTERNAL_SYSCALL_DECL (err);
+
+ ret = INTERNAL_SYSCALL (rt_sigprocmask, err, 4, SIG_SETMASK, old, NULL,
+ _NSIG / 8);
+
+ assert (ret == 0);
+}
diff --git a/sysdeps/unix/sysv/linux/dl-sysdep.h b/sysdeps/unix/sysv/linux/dl-sysdep.h
index e1eab09025..0fe1e1c3d0 100644
--- a/sysdeps/unix/sysv/linux/dl-sysdep.h
+++ b/sysdeps/unix/sysv/linux/dl-sysdep.h
@@ -30,4 +30,8 @@
/* Get version of the OS. */
extern int _dl_discover_osversion (void) attribute_hidden;
# define HAVE_DL_DISCOVER_OSVERSION 1
+
+#include <signal.h>
+void _dl_mask_all_signals (sigset_t *) internal_function;
+void _dl_unmask_all_signals (sigset_t *) internal_function;
#endif
diff --git a/sysdeps/unix/sysv/linux/kernel_stat.h b/sysdeps/unix/sysv/linux/kernel_stat.h
index 9f8434caad..dcdab48dbb 100644
--- a/sysdeps/unix/sysv/linux/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/kernel_stat.h
@@ -18,9 +18,9 @@ struct kernel_stat
struct timespec st_atim;
struct timespec st_mtim;
struct timespec st_ctim;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved4;
#define _HAVE___UNUSED4
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved5;
#define _HAVE___UNUSED5
};
diff --git a/sysdeps/unix/sysv/linux/ntp_gettimex.c b/sysdeps/unix/sysv/linux/ntp_gettimex.c
index 24dae736e9..4f3522743a 100644
--- a/sysdeps/unix/sysv/linux/ntp_gettimex.c
+++ b/sysdeps/unix/sysv/linux/ntp_gettimex.c
@@ -37,9 +37,9 @@ ntp_gettimex (struct ntptimeval *ntv)
ntv->maxerror = tntx.maxerror;
ntv->esterror = tntx.esterror;
ntv->tai = tntx.tai;
- ntv->__unused1 = 0;
- ntv->__unused2 = 0;
- ntv->__unused3 = 0;
- ntv->__unused4 = 0;
+ ntv->__glibc_reserved1 = 0;
+ ntv->__glibc_reserved2 = 0;
+ ntv->__glibc_reserved3 = 0;
+ ntv->__glibc_reserved4 = 0;
return result;
}
diff --git a/sysdeps/unix/sysv/linux/powerpc/Makefile b/sysdeps/unix/sysv/linux/powerpc/Makefile
index cf4de974f6..395342f150 100644
--- a/sysdeps/unix/sysv/linux/powerpc/Makefile
+++ b/sysdeps/unix/sysv/linux/powerpc/Makefile
@@ -1,9 +1,12 @@
-abi-variants := 32 64
+abi-variants := 32 64-v1 64-v2
abi-32-options := -U__powerpc64__
abi-32-condition := __WORDSIZE == 32
-abi-64-options := -D__powerpc64__
-abi-64-condition := __WORDSIZE == 64
-abi-64-ld-soname := ld64.so.1
+abi-64-v1-options := -D__powerpc64__ -U_CALL_ELF -D_CALL_ELF=1
+abi-64-v1-condition := __WORDSIZE == 64 && _CALL_ELF != 2
+abi-64-v1-ld-soname := ld64.so.1
+abi-64-v2-options := -D__powerpc64__ -U_CALL_ELF -D_CALL_ELF=2
+abi-64-v2-condition := __WORDSIZE == 64 && _CALL_ELF == 2
+abi-64-v2-ld-soname := ld64.so.2
ifeq ($(subdir),rt)
librt-routines += rt-sysdep
diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h b/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h
index f2bb635a54..889bbcdb4a 100644
--- a/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h
+++ b/sysdeps/unix/sysv/linux/powerpc/bits/ipc.h
@@ -49,8 +49,8 @@ struct ipc_perm
__mode_t mode; /* Read/write permission. */
__uint32_t __seq; /* Sequence number. */
__uint32_t __pad1;
- __uint64_t __unused1;
- __uint64_t __unused2;
+ __uint64_t __glibc_reserved1;
+ __uint64_t __glibc_reserved2;
};
diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h b/sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h
index ba54de4eb0..31dd15ecc4 100644
--- a/sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h
+++ b/sysdeps/unix/sysv/linux/powerpc/bits/libc-vdso.h
@@ -41,12 +41,32 @@ extern void *__vdso_sigtramp32;
extern void *__vdso_sigtramp_rt32;
#endif
-/* This macro is needed for PPC64 to return a skeleton OPD entry of a vDSO
- symbol. This works because _dl_vdso_vsym always return the function
- address, and no vDSO symbols use the TOC or chain pointers from the OPD
- so we can allow them to be garbage. */
-#if defined(__PPC64__) || defined(__powerpc64__)
-#define VDSO_IFUNC_RET(value) ((void *) &(value))
+#if (defined(__PPC64__) || defined(__powerpc64__)) && _CALL_ELF != 2
+/* The correct solution is for _dl_vdso_vsym to return the address of the OPD
+ for the kernel VDSO function. That address would then be stored in the
+ __vdso_* variables and returned as the result of the IFUNC resolver function.
+ Yet, the kernel does not contain any OPD entries for the VDSO functions
+ (incomplete implementation). However, PLT relocations for IFUNCs still expect
+ the address of an OPD to be returned from the IFUNC resolver function (since
+ PLT entries on PPC64 are just copies of OPDs). The solution for now is to
+ create an artificial static OPD for each VDSO function returned by a resolver
+ function. The TOC value is set to a non-zero value to avoid triggering lazy
+ symbol resolution via .glink0/.plt0 for a zero TOC (requires thread-safe PLT
+ sequences) when the dynamic linker isn't prepared for it e.g. RTLD_NOW. None
+ of the kernel VDSO routines use the TOC or AUX values so any non-zero value
+ will work. Note that function pointer comparisons will not use this artificial
+ static OPD since those are resolved via ADDR64 relocations and will point at
+ the non-IFUNC default OPD for the symbol. Lastly, because the IFUNC relocations
+ are processed immediately at startup the resolver functions and this code need
+ not be thread-safe, but if the caller writes to a PLT slot it must do so in a
+ thread-safe manner with all the required barriers. */
+#define VDSO_IFUNC_RET(value) \
+ ({ \
+ static Elf64_FuncDesc vdso_opd = { .fd_toc = ~0x0 }; \
+ vdso_opd.fd_func = (Elf64_Addr)value; \
+ &vdso_opd; \
+ })
+
#else
#define VDSO_IFUNC_RET(value) ((void *) (value))
#endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/msq.h b/sysdeps/unix/sysv/linux/powerpc/bits/msq.h
index 59147c268c..b22fa72e84 100644
--- a/sysdeps/unix/sysv/linux/powerpc/bits/msq.h
+++ b/sysdeps/unix/sysv/linux/powerpc/bits/msq.h
@@ -39,15 +39,15 @@ struct msqid_ds
{
struct ipc_perm msg_perm; /* structure describing operation permission */
#if __WORDSIZE == 32
- unsigned int __unused1;
+ unsigned int __glibc_reserved1;
#endif
__time_t msg_stime; /* time of last msgsnd command */
#if __WORDSIZE == 32
- unsigned int __unused2;
+ unsigned int __glibc_reserved2;
#endif
__time_t msg_rtime; /* time of last msgrcv command */
#if __WORDSIZE == 32
- unsigned int __unused3;
+ unsigned int __glibc_reserved3;
#endif
__time_t msg_ctime; /* time of last change */
unsigned long __msg_cbytes; /* current number of bytes on queue */
@@ -55,8 +55,8 @@ struct msqid_ds
msglen_t msg_qbytes; /* max number of bytes allowed on queue */
__pid_t msg_lspid; /* pid of last msgsnd() */
__pid_t msg_lrpid; /* pid of last msgrcv() */
- unsigned long __unused4;
- unsigned long __unused5;
+ unsigned long __glibc_reserved4;
+ unsigned long __glibc_reserved5;
};
#ifdef __USE_MISC
diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/sem.h b/sysdeps/unix/sysv/linux/powerpc/bits/sem.h
index 3847a3377e..56f47f118f 100644
--- a/sysdeps/unix/sysv/linux/powerpc/bits/sem.h
+++ b/sysdeps/unix/sysv/linux/powerpc/bits/sem.h
@@ -39,16 +39,16 @@ struct semid_ds
{
struct ipc_perm sem_perm; /* operation permission struct */
#if __WORDSIZE == 32
- unsigned int __unused1;
+ unsigned int __glibc_reserved1;
#endif
__time_t sem_otime; /* last semop() time */
#if __WORDSIZE == 32
- unsigned int __unused2;
+ unsigned int __glibc_reserved2;
#endif
__time_t sem_ctime; /* last time changed by semctl() */
unsigned long int sem_nsems; /* number of semaphores in set */
- unsigned long __unused3;
- unsigned long __unused4;
+ unsigned long __glibc_reserved3;
+ unsigned long __glibc_reserved4;
};
/* The user should define a union like the following to use it for arguments
diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/shm.h b/sysdeps/unix/sysv/linux/powerpc/bits/shm.h
index e43d2fd168..a343335bd0 100644
--- a/sysdeps/unix/sysv/linux/powerpc/bits/shm.h
+++ b/sysdeps/unix/sysv/linux/powerpc/bits/shm.h
@@ -50,26 +50,26 @@ struct shmid_ds
{
struct ipc_perm shm_perm; /* operation permission struct */
#if __WORDSIZE == 32
- unsigned int __unused1;
+ unsigned int __glibc_reserved1;
#endif
__time_t shm_atime; /* time of last shmat() */
#if __WORDSIZE == 32
- unsigned int __unused2;
+ unsigned int __glibc_reserved2;
#endif
__time_t shm_dtime; /* time of last shmdt() */
#if __WORDSIZE == 32
- unsigned int __unused3;
+ unsigned int __glibc_reserved3;
#endif
__time_t shm_ctime; /* time of last change by shmctl() */
#if __WORDSIZE == 32
- unsigned int __unused4;
+ unsigned int __glibc_reserved4;
#endif
size_t shm_segsz; /* size of segment in bytes */
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long __unused5;
- unsigned long __unused6;
+ unsigned long __glibc_reserved5;
+ unsigned long __glibc_reserved6;
};
#ifdef __USE_MISC
@@ -91,10 +91,10 @@ struct shminfo
unsigned long int shmmni;
unsigned long int shmseg;
unsigned long int shmall;
- unsigned long int __unused1;
- unsigned long int __unused2;
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
struct shm_info
diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/sigstack.h b/sysdeps/unix/sysv/linux/powerpc/bits/sigstack.h
new file mode 100644
index 0000000000..33be9e8dbb
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/powerpc/bits/sigstack.h
@@ -0,0 +1,54 @@
+/* sigstack, sigaltstack definitions.
+ Copyright (C) 1998-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef _SIGNAL_H
+# error "Never include this file directly. Use <signal.h> instead"
+#endif
+
+
+/* Structure describing a signal stack (obsolete). */
+struct sigstack
+ {
+ void *ss_sp; /* Signal stack pointer. */
+ int ss_onstack; /* Nonzero if executing on this stack. */
+ };
+
+
+/* Possible values for `ss_flags.'. */
+enum
+{
+ SS_ONSTACK = 1,
+#define SS_ONSTACK SS_ONSTACK
+ SS_DISABLE
+#define SS_DISABLE SS_DISABLE
+};
+
+/* Minimum stack size for a signal handler. */
+#define MINSIGSTKSZ 4096
+
+/* System default stack size. */
+#define SIGSTKSZ 16384
+
+
+/* Alternate, preferred interface. */
+typedef struct sigaltstack
+ {
+ void *ss_sp;
+ int ss_flags;
+ size_t ss_size;
+ } stack_t;
diff --git a/sysdeps/unix/sysv/linux/powerpc/bits/stat.h b/sysdeps/unix/sysv/linux/powerpc/bits/stat.h
index e5faec0106..252aae9eac 100644
--- a/sysdeps/unix/sysv/linux/powerpc/bits/stat.h
+++ b/sysdeps/unix/sysv/linux/powerpc/bits/stat.h
@@ -91,8 +91,8 @@ struct stat
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
# endif
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
@@ -131,8 +131,8 @@ struct stat64
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
# endif
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
# endif /* __USE_LARGEFILE64 */
@@ -185,9 +185,9 @@ struct stat
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
# endif
- unsigned long int __unused4;
- unsigned long int __unused5;
- unsigned long int __unused6;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
+ unsigned long int __glibc_reserved6;
};
# ifdef __USE_LARGEFILE64
@@ -225,9 +225,9 @@ struct stat64
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
# endif
- unsigned long int __unused4;
- unsigned long int __unused5;
- unsigned long int __unused6;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
+ unsigned long int __glibc_reserved6;
};
# endif /* __USE_LARGEFILE64 */
#endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/configure b/sysdeps/unix/sysv/linux/powerpc/configure
index 7df7e481f0..50e3639be5 100644
--- a/sysdeps/unix/sysv/linux/powerpc/configure
+++ b/sysdeps/unix/sysv/linux/powerpc/configure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/unix/sysv/linux/powerpc/.
diff --git a/sysdeps/unix/sysv/linux/powerpc/configure.in b/sysdeps/unix/sysv/linux/powerpc/configure.ac
index 1768ab1f99..1768ab1f99 100644
--- a/sysdeps/unix/sysv/linux/powerpc/configure.in
+++ b/sysdeps/unix/sysv/linux/powerpc/configure.ac
diff --git a/sysdeps/unix/sysv/linux/powerpc/gettimeofday.c b/sysdeps/unix/sysv/linux/powerpc/gettimeofday.c
index 6506d75e64..48c3f84d86 100644
--- a/sysdeps/unix/sysv/linux/powerpc/gettimeofday.c
+++ b/sysdeps/unix/sysv/linux/powerpc/gettimeofday.c
@@ -22,6 +22,7 @@
# include <dl-vdso.h>
# include <bits/libc-vdso.h>
+# include <dl-machine.h>
void *gettimeofday_ifunc (void) __asm__ ("__gettimeofday");
diff --git a/sysdeps/unix/sysv/linux/powerpc/ldconfig.h b/sysdeps/unix/sysv/linux/powerpc/ldconfig.h
index 2c5f50d97b..92ea723620 100644
--- a/sysdeps/unix/sysv/linux/powerpc/ldconfig.h
+++ b/sysdeps/unix/sysv/linux/powerpc/ldconfig.h
@@ -20,7 +20,8 @@
#define SYSDEP_KNOWN_INTERPRETER_NAMES \
{ "/lib/ld.so.1", FLAG_ELF_LIBC6 }, \
- { "/lib64/ld64.so.1", FLAG_ELF_LIBC6 },
+ { "/lib64/ld64.so.1", FLAG_ELF_LIBC6 }, \
+ { "/lib64/ld64.so.2", FLAG_ELF_LIBC6 },
#define SYSDEP_KNOWN_LIBRARY_NAMES \
{ "libc.so.6", FLAG_ELF_LIBC6 }, \
{ "libm.so.6", FLAG_ELF_LIBC6 },
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies
index 70c0d2eda3..70c0d2eda3 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/405/Implies
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies
index c3e52c5504..c3e52c5504 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/440/Implies
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies
index 2829f9ccaf..2829f9ccaf 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/464/Implies
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies
index 80f917079e..80f917079e 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/476/Implies
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S
index 978370e625..6e88b615d7 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/____longjmp_chk.S
@@ -24,7 +24,7 @@
.string "longjmp causes uninitialized stack frame"
.text
-#define __longjmp ____longjmp_chk
+#define __longjmp_symbol ____longjmp_chk
#ifdef PIC
# define LOAD_ARG \
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/nofpu/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/nofpu/Implies
new file mode 100644
index 0000000000..00365c1cfd
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/e500/nofpu/Implies
@@ -0,0 +1,3 @@
+powerpc/powerpc32/e500/nofpu
+powerpc/nofpu
+powerpc/soft-fp
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/Implies
deleted file mode 100644
index 9f70f795bc..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-# Override ldbl-opt with powerpc32 specific routines.
-powerpc/powerpc32/fpu
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c
index 94db79f8e7..49b73d20a0 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/fe_nomask.c
@@ -23,13 +23,16 @@
#include <sysdep.h>
#include <sys/prctl.h>
#include <kernel-features.h>
+#include <shlib-compat.h>
const fenv_t *
-__fe_nomask_env (void)
+__fe_nomask_env_priv (void)
{
INTERNAL_SYSCALL_DECL (err);
INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_PRECISE);
return FE_ENABLED_ENV;
}
-libm_hidden_def (__fe_nomask_env)
+#if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_19)
+compat_symbol (libm, __fe_nomask_env_priv, __fe_nomask_env, GLIBC_2_1);
+#endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S
index 6330780378..082d302e8a 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext-common.S
@@ -151,15 +151,15 @@ ENTRY(__CONTEXT_FUNC_NAME)
# ifdef SHARED
lwz r7,_rtld_global_ro@got(r7)
mtlr r8
- lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+4(r7)
+ lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+LOWORD(r7)
# else
lwz r7,_dl_hwcap@got(r7)
mtlr r8
- lwz r7,4(r7)
+ lwz r7,LOWORD(r7)
# endif
# else
- lis r7,(_dl_hwcap+4)@ha
- lwz r7,(_dl_hwcap+4)@l(r7)
+ lis r7,(_dl_hwcap+LOWORD)@ha
+ lwz r7,(_dl_hwcap+LOWORD)@l(r7)
# endif
andis. r7,r7,(PPC_FEATURE_HAS_ALTIVEC >> 16)
@@ -261,6 +261,11 @@ ENTRY(__CONTEXT_FUNC_NAME)
2: /* L(no_vec): */
# endif
#endif
+
+#ifdef __CONTEXT_ENABLE_E500
+ getcontext_e500
+#endif
+
/* We need to set up parms and call sigprocmask which will clobber
volatile registers. So before the call we need to retrieve the
original ucontext ptr (parm1) from stack and store the UC_REGS_PTR
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h b/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h
index 93cfb764a5..b816da9297 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h
@@ -31,9 +31,9 @@ struct kernel_stat
struct timespec st_atim;
struct timespec st_mtim;
struct timespec st_ctim;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved4;
#define _HAVE___UNUSED4
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved5;
#define _HAVE___UNUSED5
};
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
index 95902b13f9..70e3c97626 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
@@ -47,7 +47,9 @@ ENTRY(__makecontext)
#ifdef PIC
mflr r0
cfi_register(lr,r0)
- bl 1f
+ /* Use this conditional form of branch and link to avoid destroying
+ the cpu link stack used to predict blr return addresses. */
+ bcl 20,31,1f
1: mflr r6
addi r6,r6,L(exitcode)-1b
mtlr r0
@@ -136,7 +138,9 @@ ENTRY(__novec_makecontext)
#ifdef PIC
mflr r0
cfi_register(lr,r0)
- bl 1f
+ /* Use this conditional form of branch and link to avoid destroying
+ the cpu link stack used to predict blr return addresses. */
+ bcl 20,31,1f
1: mflr r6
addi r6,r6,L(novec_exitcode)-1b
mtlr r0
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies
index 40836b6fb4..40836b6fb4 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/Implies
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/context-e500.h b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/context-e500.h
new file mode 100644
index 0000000000..9eb1a95615
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/context-e500.h
@@ -0,0 +1,144 @@
+/* getcontext/setcontext/makecontext support for e500 high parts of registers.
+ Copyright (C) 2006-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#ifndef _CONTEXT_E500_H
+#define _CONTEXT_E500_H 1
+
+#if defined __SPE__ || (defined __NO_FPRS__ && !defined _SOFT_FLOAT)
+
+# define __CONTEXT_ENABLE_E500 1
+
+/* We follow the kernel's layout, which saves the high parts of the
+ SPE registers in the vregs area, immediately followed by the ACC
+ value (call-clobbered, not handled here) and the SPEFSCR value. */
+
+.macro getcontext_e500
+ la r10,(_UC_VREGS)(r3)
+ evstwwe r0,(0*4)(r10)
+ evstwwe r1,(1*4)(r10)
+ evstwwe r2,(2*4)(r10)
+ evstwwe r3,(3*4)(r10)
+ evstwwe r4,(4*4)(r10)
+ evstwwe r5,(5*4)(r10)
+ evstwwe r6,(6*4)(r10)
+ evstwwe r7,(7*4)(r10)
+ evstwwe r8,(8*4)(r10)
+ evstwwe r9,(9*4)(r10)
+ evstwwe r10,(10*4)(r10)
+ evstwwe r11,(11*4)(r10)
+ evstwwe r12,(12*4)(r10)
+ evstwwe r13,(13*4)(r10)
+ evstwwe r14,(14*4)(r10)
+ evstwwe r15,(15*4)(r10)
+ evstwwe r16,(16*4)(r10)
+ evstwwe r17,(17*4)(r10)
+ evstwwe r18,(18*4)(r10)
+ evstwwe r19,(19*4)(r10)
+ evstwwe r20,(20*4)(r10)
+ evstwwe r21,(21*4)(r10)
+ evstwwe r22,(22*4)(r10)
+ evstwwe r23,(23*4)(r10)
+ evstwwe r24,(24*4)(r10)
+ evstwwe r25,(25*4)(r10)
+ evstwwe r26,(26*4)(r10)
+ evstwwe r27,(27*4)(r10)
+ evstwwe r28,(28*4)(r10)
+ evstwwe r29,(29*4)(r10)
+ evstwwe r30,(30*4)(r10)
+ evstwwe r31,(31*4)(r10)
+ mfspefscr r9
+ stw r9,(34*4)(r10)
+.endm
+
+.macro setcontext_e500
+ lwz r3,_UC_VREGS+(0*4)(r31)
+ evmergelo r0,r3,r0
+ lwz r3,_UC_VREGS+(1*4)(r31)
+ evmergelo r1,r3,r1
+ lwz r3,_UC_VREGS+(2*4)(r31)
+ evmergelo r2,r3,r2
+ lwz r3,_UC_VREGS+(1*4)(r31)
+ evmergelo r1,r3,r1
+ lwz r3,_UC_VREGS+(2*4)(r31)
+ evmergelo r2,r3,r2
+ lwz r3,_UC_VREGS+(3*4)(r31)
+ evmergelo r3,r3,r3
+ lwz r3,_UC_VREGS+(4*4)(r31)
+ evmergelo r4,r3,r4
+ lwz r3,_UC_VREGS+(5*4)(r31)
+ evmergelo r5,r3,r5
+ lwz r3,_UC_VREGS+(6*4)(r31)
+ evmergelo r6,r3,r6
+ lwz r3,_UC_VREGS+(7*4)(r31)
+ evmergelo r7,r3,r7
+ lwz r3,_UC_VREGS+(8*4)(r31)
+ evmergelo r8,r3,r8
+ lwz r3,_UC_VREGS+(9*4)(r31)
+ evmergelo r9,r3,r9
+ lwz r3,_UC_VREGS+(10*4)(r31)
+ evmergelo r10,r3,r10
+ lwz r3,_UC_VREGS+(11*4)(r31)
+ evmergelo r11,r3,r11
+ lwz r3,_UC_VREGS+(12*4)(r31)
+ evmergelo r12,r3,r12
+ lwz r3,_UC_VREGS+(13*4)(r31)
+ evmergelo r13,r3,r13
+ lwz r3,_UC_VREGS+(14*4)(r31)
+ evmergelo r14,r3,r14
+ lwz r3,_UC_VREGS+(15*4)(r31)
+ evmergelo r15,r3,r15
+ lwz r3,_UC_VREGS+(16*4)(r31)
+ evmergelo r16,r3,r16
+ lwz r3,_UC_VREGS+(17*4)(r31)
+ evmergelo r17,r3,r17
+ lwz r3,_UC_VREGS+(18*4)(r31)
+ evmergelo r18,r3,r18
+ lwz r3,_UC_VREGS+(19*4)(r31)
+ evmergelo r19,r3,r19
+ lwz r3,_UC_VREGS+(20*4)(r31)
+ evmergelo r20,r3,r20
+ lwz r3,_UC_VREGS+(21*4)(r31)
+ evmergelo r21,r3,r21
+ lwz r3,_UC_VREGS+(22*4)(r31)
+ evmergelo r22,r3,r22
+ lwz r3,_UC_VREGS+(23*4)(r31)
+ evmergelo r23,r3,r23
+ lwz r3,_UC_VREGS+(24*4)(r31)
+ evmergelo r24,r3,r24
+ lwz r3,_UC_VREGS+(25*4)(r31)
+ evmergelo r25,r3,r25
+ lwz r3,_UC_VREGS+(26*4)(r31)
+ evmergelo r26,r3,r26
+ lwz r3,_UC_VREGS+(27*4)(r31)
+ evmergelo r27,r3,r27
+ lwz r3,_UC_VREGS+(28*4)(r31)
+ evmergelo r28,r3,r28
+ lwz r3,_UC_VREGS+(29*4)(r31)
+ evmergelo r29,r3,r29
+ lwz r3,_UC_VREGS+(30*4)(r31)
+ evmergelo r30,r3,r30
+ lwz r3,_UC_VREGS+(31*4)(r31)
+ evmergelo r31,r3,r31
+ lwz r3,_UC_VREGS+(34*4)(r31)
+ mtspefscr r3
+.endm
+#else
+# undef __CONTEXT_ENABLE_E500
+#endif
+
+#endif /* context-e500.h */
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S
index 90d9dcd429..8bc3c7a43e 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/getcontext.S
@@ -24,6 +24,8 @@
#include <asm/ptrace.h>
#include "ucontext_i.h"
+#include <context-e500.h>
+
#define __CONTEXT_FUNC_NAME __getcontext
#undef __CONTEXT_ENABLE_FPRS
#undef __CONTEXT_ENABLE_VRS
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data
index fde53bf337..fde53bf337 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/c++-types.data
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist
index d71611f027..d71611f027 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/ld.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist
index f4ca37f44b..f4ca37f44b 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libBrokenLocale.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist
index c9755d8a33..c9755d8a33 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libanl.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist
index 9b6d663748..a54382e43d 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libc.abilist
@@ -1784,6 +1784,12 @@ GLIBC_2.17
GLIBC_2.18
GLIBC_2.18 A
__cxa_thread_atexit_impl F
+GLIBC_2.19
+ GLIBC_2.19 A
+ __atomic_feclearexcept F
+ __atomic_feholdexcept F
+ __atomic_feupdateenv F
+ __flt_rounds F
GLIBC_2.2
GLIBC_2.2 A
_IO_adjust_wcolumn F
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist
index 1df145f260..1df145f260 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libcrypt.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist
index 62e6b41edb..62e6b41edb 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libdl.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist
index 9bd593c0e9..9bd593c0e9 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libm.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist
index 4241e2d887..4241e2d887 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libnsl.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist
index c8a2a04711..c8a2a04711 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libpthread.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist
index f68333d4a4..f68333d4a4 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libresolv.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist
index af7df27cb3..af7df27cb3 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/librt.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist
index f33138067c..f33138067c 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libthread_db.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist
index 7422687e3c..7422687e3c 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/libutil.abilist
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data
index 0743b08a39..6332a006d8 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/nptl/localplt.data
@@ -35,7 +35,6 @@ libc.so: realloc
libm.so: __signbit
libm.so: __signbitf
libm.so: __signbitl
-libm.so: copysignl
+libm.so: copysignl ?
libm.so: fabsl
-libm.so: fegetround
libm.so: matherr
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S
index 06061eab9f..5f8653ffbb 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/setcontext.S
@@ -24,6 +24,8 @@
#include <asm/ptrace.h>
#include "ucontext_i.h"
+#include <context-e500.h>
+
#define __CONTEXT_FUNC_NAME __setcontext
#undef __CONTEXT_ENABLE_FPRS
#undef __CONTEXT_ENABLE_VRS
diff --git a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S
index 2150eec3c3..de6d56f960 100644
--- a/ports/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/swapcontext.S
@@ -24,6 +24,8 @@
#include <asm/ptrace.h>
#include "ucontext_i.h"
+#include <context-e500.h>
+
#define __CONTEXT_FUNC_NAME __swapcontext
#undef __CONTEXT_ENABLE_FPRS
#undef __CONTEXT_ENABLE_VRS
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/Implies
deleted file mode 100644
index 17139bf21c..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc32/power4/fpu
-powerpc/powerpc32/power4
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/Implies
deleted file mode 100644
index 8e5b58a57a..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc32/power5+/fpu
-powerpc/powerpc32/power5+
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/Implies
deleted file mode 100644
index a51d2fdf95..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc32/power5/fpu
-powerpc/powerpc32/power5
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/Implies
deleted file mode 100644
index c0e1bea435..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc32/power6/fpu
-powerpc/powerpc32/power6
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/Implies
deleted file mode 100644
index bc9e74fcff..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc32/power6x/fpu
-powerpc/powerpc32/power6x
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/Implies
deleted file mode 100644
index 083f3e950a..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc32/power7/fpu
-powerpc/powerpc32/power7
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power8/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc32/power8/Implies
deleted file mode 100644
index 066dea2798..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/power8/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc32/power8/fpu
-powerpc/powerpc32/power8
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
index bedebf0acf..6525cf7429 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext-common.S
@@ -79,15 +79,15 @@ ENTRY(__CONTEXT_FUNC_NAME)
# ifdef SHARED
lwz r7,_rtld_global_ro@got(r7)
mtlr r8
- lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+4(r7)
+ lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+LOWORD(r7)
# else
lwz r7,_dl_hwcap@got(r7)
mtlr r8
- lwz r7,4(r7)
+ lwz r7,LOWORD(r7)
# endif
#else
- lis r7,(_dl_hwcap+4)@ha
- lwz r7,(_dl_hwcap+4)@l(r7)
+ lis r7,(_dl_hwcap+LOWORD)@ha
+ lwz r7,(_dl_hwcap+LOWORD)@l(r7)
#endif
#ifdef __CONTEXT_ENABLE_FPRS
@@ -243,6 +243,10 @@ ENTRY(__CONTEXT_FUNC_NAME)
lfd fp31,_UC_FREGS+(31*8)(r31)
#endif /* __CONTEXT_ENABLE_FPRS */
+#ifdef __CONTEXT_ENABLE_E500
+ setcontext_e500
+#endif
+
/* Restore LR and CCR, and set CTR to the NIP value */
lwz r3,_UC_GREGS+(PT_LNK*4)(r31)
lwz r4,_UC_GREGS+(PT_NIP*4)(r31)
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S b/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
index 21c2e1fc7d..caa5b8932b 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext-common.S
@@ -152,15 +152,15 @@ ENTRY(__CONTEXT_FUNC_NAME)
# ifdef SHARED
lwz r7,_rtld_global_ro@got(r7)
mtlr r8
- lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+4(r7)
+ lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+LOWORD(r7)
# else
lwz r7,_dl_hwcap@got(r7)
mtlr r8
- lwz r7,4(r7)
+ lwz r7,LOWORD(r7)
# endif
# else
- lis r7,(_dl_hwcap+4)@ha
- lwz r7,(_dl_hwcap+4)@l(r7)
+ lis r7,(_dl_hwcap+LOWORD)@ha
+ lwz r7,(_dl_hwcap+LOWORD)@l(r7)
# endif
# ifdef __CONTEXT_ENABLE_VRS
@@ -265,6 +265,10 @@ ENTRY(__CONTEXT_FUNC_NAME)
# endif /* __CONTEXT_ENABLE_VRS */
#endif /* __CONTEXT_ENABLE_FPRS */
+#ifdef __CONTEXT_ENABLE_E500
+ getcontext_e500
+#endif
+
/* Restore ucontext (parm1) from stack. */
lwz r12,_FRAME_PARM_SAVE1(r1)
li r4,0
@@ -308,14 +312,14 @@ ENTRY(__CONTEXT_FUNC_NAME)
mtlr r8
# ifdef SHARED
lwz r7,_rtld_global_ro@got(r7)
- lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+4(r7)
+ lwz r7,RTLD_GLOBAL_RO_DL_HWCAP_OFFSET+LOWORD(r7)
# else
lwz r7,_dl_hwcap@got(r7)
- lwz r7,4(r7)
+ lwz r7,LOWORD(r7)
# endif
# else
- lis r7,(_dl_hwcap+4)@ha
- lwz r7,(_dl_hwcap+4)@l(r7)
+ lis r7,(_dl_hwcap+LOWORD)@ha
+ lwz r7,(_dl_hwcap+LOWORD)@l(r7)
# endif
andis. r7,r7,(PPC_FEATURE_HAS_ALTIVEC >> 16)
la r10,(_UC_VREGS)(r31)
@@ -468,6 +472,10 @@ ENTRY(__CONTEXT_FUNC_NAME)
lfd fp31,_UC_FREGS+(31*8)(r31)
#endif /* __CONTEXT_ENABLE_FPRS */
+#ifdef __CONTEXT_ENABLE_E500
+ setcontext_e500
+#endif
+
/* Restore LR and CCR, and set CTR to the NIP value */
lwz r3,_UC_GREGS+(PT_LNK*4)(r31)
lwz r4,_UC_GREGS+(PT_NIP*4)(r31)
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile b/sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile
deleted file mode 100644
index 3ba3b1f6e2..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/Makefile
+++ /dev/null
@@ -1,2 +0,0 @@
-# See Makeconfig regarding the use of default-abi.
-default-abi := 64
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S
index 270e21e001..ae576d62c3 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/____longjmp_chk.S
@@ -33,24 +33,24 @@
cmpld reg, r1; \
bge+ .Lok; \
mflr r0; \
- std r0,16(r1); \
+ std r0,FRAME_LR_SAVE(r1); \
mr r31,r3; \
mr r30,r4; \
- stdu r1,-144(r1); \
+ stdu r1,-FRAME_MIN_SIZE-32(r1); \
cfi_remember_state; \
- cfi_adjust_cfa_offset (144); \
- cfi_offset (lr, 16); \
+ cfi_adjust_cfa_offset (FRAME_MIN_SIZE+32); \
+ cfi_offset (lr, FRAME_LR_SAVE); \
li r3,0; \
- addi r4,r1,112; \
+ addi r4,r1,FRAME_MIN_SIZE; \
li r0,__NR_sigaltstack; \
sc; \
/* Without working sigaltstack we cannot perform the test. */ \
bso .Lok2; \
- lwz r0,112+8(r1); \
+ lwz r0,FRAME_MIN_SIZE+8(r1); \
andi. r4,r0,1; \
beq .Lfail; \
- ld r0,112+16(r1); \
- ld r4,112(r1); \
+ ld r0,FRAME_MIN_SIZE+16(r1); \
+ ld r4,FRAME_MIN_SIZE(r1); \
add r4,r4,r0; \
sub r3,r3,reg; \
cmpld r3,r0; \
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S
index 348aeb5ba0..33cdf25225 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S
@@ -28,9 +28,9 @@
ENTRY (__brk)
CALL_MCOUNT 1
- std r3,48(r1)
+ std r3,-8(r1)
DO_CALL(SYS_ify(brk))
- ld r6,48(r1)
+ ld r6,-8(r1)
ld r5,.LC__curbrk@toc(r2)
std r3,0(r5)
cmpld r6,r3
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
index cf46856e1a..37d9d24fb9 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S
@@ -40,22 +40,22 @@ ENTRY (__clone)
cror cr0*4+eq,cr1*4+eq,cr0*4+eq
beq- cr0,L(badargs)
- /* Save some regs in parm save area. */
+ /* Save some regs in the "red zone". */
#ifdef RESET_PID
- std r29,48(r1)
+ std r29,-24(r1)
#endif
- std r30,56(r1)
- std r31,64(r1)
+ std r30,-16(r1)
+ std r31,-8(r1)
#ifdef RESET_PID
- cfi_offset(r29,48)
+ cfi_offset(r29,-24)
#endif
- cfi_offset(r30,56)
- cfi_offset(r31,64)
+ cfi_offset(r30,-16)
+ cfi_offset(r31,-8)
/* Set up stack frame for child. */
clrrdi r4,r4,4
li r0,0
- stdu r0,-112(r4) /* min stack frame is 112 bytes per ABI */
+ stdu r0,-FRAME_MIN_SIZE_PARM(r4)
/* Save fn, args, stack across syscall. */
mr r30,r3 /* Function in r30. */
@@ -97,14 +97,12 @@ L(nomoregetpid):
L(oldpid):
#endif
- std r2,40(r1)
+ std r2,FRAME_TOC_SAVE(r1)
/* Call procedure. */
- ld r0,0(r30)
- ld r2,8(r30)
- mtctr r0
+ PPC64_LOAD_FUNCPTR r30
mr r3,r31
bctrl
- ld r2,40(r1)
+ ld r2,FRAME_TOC_SAVE(r1)
/* Call _exit with result from procedure. */
#ifdef SHARED
b JUMPTARGET(__GI__exit)
@@ -123,15 +121,15 @@ L(badargs):
L(parent):
/* Parent. Restore registers & return. */
#ifdef RESET_PID
- cfi_offset(r29,48)
+ cfi_offset(r29,-24)
#endif
- cfi_offset(r30,56)
- cfi_offset(r31,64)
+ cfi_offset(r30,-16)
+ cfi_offset(r31,-8)
#ifdef RESET_PID
- ld r29,48(r1)
+ ld r29,-24(r1)
#endif
- ld r30,56(r1)
- ld r31,64(r1)
+ ld r30,-16(r1)
+ ld r31,-8(r1)
#ifdef RESET_PID
cfi_restore(r29)
#endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
new file mode 100644
index 0000000000..fbb6334a90
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure
@@ -0,0 +1,166 @@
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
+ # Local configure fragment for sysdeps/unix/sysv/linux/powerpc/powerpc64/.
+
+# Define default-abi according to compiler flags.
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
+if ${ac_cv_path_GREP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if test -z "$GREP"; then
+ ac_path_GREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in grep ggrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+# Check for GNU ac_path_GREP and select it if it is found.
+ # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'GREP' >> "conftest.nl"
+ "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_GREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_GREP="$ac_path_GREP"
+ ac_path_GREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_GREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_GREP"; then
+ as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
+else
+ ac_cv_path_GREP=$GREP
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+$as_echo "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+$as_echo_n "checking for egrep... " >&6; }
+if ${ac_cv_path_EGREP+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+ then ac_cv_path_EGREP="$GREP -E"
+ else
+ if test -z "$EGREP"; then
+ ac_path_EGREP_found=false
+ # Loop through the user's path and test for each of PROGNAME-LIST
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in egrep; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+ { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+# Check for GNU ac_path_EGREP and select it if it is found.
+ # Check for GNU $ac_path_EGREP
+case `"$ac_path_EGREP" --version 2>&1` in
+*GNU*)
+ ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
+*)
+ ac_count=0
+ $as_echo_n 0123456789 >"conftest.in"
+ while :
+ do
+ cat "conftest.in" "conftest.in" >"conftest.tmp"
+ mv "conftest.tmp" "conftest.in"
+ cp "conftest.in" "conftest.nl"
+ $as_echo 'EGREP' >> "conftest.nl"
+ "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+ diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+ as_fn_arith $ac_count + 1 && ac_count=$as_val
+ if test $ac_count -gt ${ac_path_EGREP_max-0}; then
+ # Best one so far, save it but keep looking for a better one
+ ac_cv_path_EGREP="$ac_path_EGREP"
+ ac_path_EGREP_max=$ac_count
+ fi
+ # 10*(2^10) chars as input seems more than enough
+ test $ac_count -gt 10 && break
+ done
+ rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+ $ac_path_EGREP_found && break 3
+ done
+ done
+ done
+IFS=$as_save_IFS
+ if test -z "$ac_cv_path_EGREP"; then
+ as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+ fi
+else
+ ac_cv_path_EGREP=$EGREP
+fi
+
+ fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+$as_echo "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler is using the PowerPC64 ELFv2 ABI" >&5
+$as_echo_n "checking whether the compiler is using the PowerPC64 ELFv2 ABI... " >&6; }
+if ${libc_cv_ppc64_elfv2_abi+:} false; then :
+ $as_echo_n "(cached) " >&6
+else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+#if _CALL_ELF == 2
+ yes
+ #endif
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "yes" >/dev/null 2>&1; then :
+ libc_cv_ppc64_elfv2_abi=yes
+else
+ libc_cv_ppc64_elfv2_abi=no
+fi
+rm -f conftest*
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_ppc64_elfv2_abi" >&5
+$as_echo "$libc_cv_ppc64_elfv2_abi" >&6; }
+if test $libc_cv_ppc64_elfv2_abi = yes; then
+ config_vars="$config_vars
+default-abi = 64-v2"
+else
+ config_vars="$config_vars
+default-abi = 64-v1"
+fi
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
new file mode 100644
index 0000000000..c9cd4bc8fd
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/configure.ac
@@ -0,0 +1,15 @@
+GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
+# Local configure fragment for sysdeps/unix/sysv/linux/powerpc/powerpc64/.
+
+# Define default-abi according to compiler flags.
+AC_CACHE_CHECK([whether the compiler is using the PowerPC64 ELFv2 ABI],
+ [libc_cv_ppc64_elfv2_abi],
+ [AC_EGREP_CPP(yes,[#if _CALL_ELF == 2
+ yes
+ #endif
+ ], libc_cv_ppc64_elfv2_abi=yes, libc_cv_ppc64_elfv2_abi=no)])
+if test $libc_cv_ppc64_elfv2_abi = yes; then
+ LIBC_CONFIG_VAR([default-abi], [64-v2])
+else
+ LIBC_CONFIG_VAR([default-abi], [64-v1])
+fi
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/Implies
deleted file mode 100644
index 6243d2ef27..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-# Override ldbl-opt with powerpc64 specific routines.
-powerpc/powerpc64/fpu
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c
index 2ab5855005..1d579bfcca 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_mask.c
@@ -27,9 +27,8 @@ const fenv_t *
__fe_mask_env (void)
{
#if defined PR_SET_FPEXC && defined PR_FP_EXC_DISABLED
- int result;
INTERNAL_SYSCALL_DECL (err);
- result = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_DISABLED);
+ INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_DISABLED);
#else
__set_errno (ENOSYS);
#endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c
index fd2ffb14f0..8532518ec2 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fpu/fe_nomask.c
@@ -22,17 +22,19 @@
#include <sys/syscall.h>
#include <sys/prctl.h>
#include <kernel-features.h>
+#include <shlib-compat.h>
const fenv_t *
-__fe_nomask_env (void)
+__fe_nomask_env_priv (void)
{
#if defined PR_SET_FPEXC && defined PR_FP_EXC_PRECISE
- int result;
INTERNAL_SYSCALL_DECL (err);
- result = INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_PRECISE);
+ INTERNAL_SYSCALL (prctl, err, 2, PR_SET_FPEXC, PR_FP_EXC_PRECISE);
#else
__set_errno (ENOSYS);
#endif
return FE_ENABLED_ENV;
}
-libm_hidden_def (__fe_nomask_env)
+#if SHLIB_COMPAT (libm, GLIBC_2_3, GLIBC_2_19)
+compat_symbol (libm, __fe_nomask_env_priv, __fe_nomask_env, GLIBC_2_3);
+#endif
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h b/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
index 4263b1aed1..d043968a03 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/ldsodefs.h
@@ -23,6 +23,8 @@
/* Now define our stuff. */
+#if _CALL_ELF != 2
+
static __always_inline bool
_dl_ppc64_is_opd_sym (const struct link_map *l, const ElfW(Sym) *sym)
{
@@ -73,4 +75,6 @@ _dl_ppc64_addr_sym_match (const struct link_map *l, const ElfW(Sym) *sym,
#define DL_ADDR_SYM_MATCH(L, SYM, MATCHSYM, ADDR) \
_dl_ppc64_addr_sym_match (L, SYM, MATCHSYM, ADDR)
+#endif
+
#endif /* ldsodefs.h */
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
index 4a16669383..b6d82bdd19 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
@@ -111,6 +111,7 @@ L(parmloop):
L(noparms):
+#if _CALL_ELF != 2
/* Load the function address and TOC from the function descriptor
and store them in the ucontext as NIP and r2. Store the 3rd
field of the function descriptor into the ucontext as r11 in case
@@ -121,11 +122,23 @@ L(noparms):
std r0,(SIGCONTEXT_GP_REGS+(PT_NIP*8))(r3)
std r10,(SIGCONTEXT_GP_REGS+(PT_R2*8))(r3)
std r9,(SIGCONTEXT_GP_REGS+(PT_R11*8))(r3)
+#else
+ /* In the ELFv2 ABI, the function pointer is already the address.
+ Store it as NIP and r12 as required by the ABI. */
+ std r4,(SIGCONTEXT_GP_REGS+(PT_NIP*8))(r3)
+ std r4,(SIGCONTEXT_GP_REGS+(PT_R12*8))(r3)
+#endif
/* If the target function returns we need to do some cleanup. We use a
code trick to get the address of our cleanup function into the link
- register. Do not add any code between here and L(exitcode). */
- bl L(gotexitcodeaddr);
+ register. Do not add any code between here and L(exitcode).
+ Use this conditional form of branch and link to avoid destroying
+ the cpu link stack used to predict blr return addresses. */
+ bcl 20,31,L(gotexitcodeaddr);
+
+ /* End FDE now, because while executing on the context's stack
+ the unwind info would be wrong otherwise. */
+ cfi_endproc
/* This is the helper code which gets called if a function which
is registered with 'makecontext' returns. In this case we
@@ -155,6 +168,11 @@ L(do_exit):
#endif
b L(do_exit)
+ /* Re-establish FDE for the rest of the actual makecontext routine. */
+ cfi_startproc
+ cfi_offset (lr, FRAME_LR_SAVE)
+ cfi_adjust_cfa_offset (128)
+
/* The address of the exit code is in the link register. Store the lr
in the ucontext as LNK so the target function will return to our
exit code. */
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/Implies
deleted file mode 100644
index bedb20b65c..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc64/power4/fpu
-powerpc/powerpc64/power4
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/Implies
deleted file mode 100644
index a01a13ab12..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc64/power5/fpu
-powerpc/powerpc64/power5
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/Implies
deleted file mode 100644
index 9d68f39d22..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc64/power6/fpu
-powerpc/powerpc64/power6
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/Implies
deleted file mode 100644
index 9019778254..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc64/power6x/fpu
-powerpc/powerpc64/power6x
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/Implies
deleted file mode 100644
index 9a5e3c7277..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc64/power7/fpu
-powerpc/powerpc64/power7
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power8/Implies b/sysdeps/unix/sysv/linux/powerpc/powerpc64/power8/Implies
deleted file mode 100644
index fad2505ab9..0000000000
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/power8/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-powerpc/powerpc64/power8/fpu
-powerpc/powerpc64/power8
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
index e1f0b8624c..5ec19ba561 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
@@ -129,6 +129,10 @@ ENTRY(__novec_setcontext)
lfd fp1,(SIGCONTEXT_FP_REGS+(PT_R1*8))(r31)
lfd fp0,(SIGCONTEXT_FP_REGS+(PT_R0*8))(r31)
+ /* End FDE now, because the unwind info would be wrong while
+ we're reloading registers to switch to the new context. */
+ cfi_endproc
+
ld r0,(SIGCONTEXT_GP_REGS+(PT_LNK*8))(r31)
ld r1,(SIGCONTEXT_GP_REGS+(PT_R1*8))(r31)
mtlr r0
@@ -177,6 +181,11 @@ ENTRY(__novec_setcontext)
ld r31,(SIGCONTEXT_GP_REGS+(PT_R31*8))(r31)
bctr
+ /* Re-establish FDE for the rest of the actual setcontext routine. */
+ cfi_startproc
+ cfi_offset (lr, FRAME_LR_SAVE)
+ cfi_adjust_cfa_offset (128)
+
L(nv_error_exit):
ld r0,128+FRAME_LR_SAVE(r1)
addi r1,r1,128
@@ -403,6 +412,10 @@ L(has_no_vec):
lfd fp1,(SIGCONTEXT_FP_REGS+(PT_R1*8))(r31)
lfd fp0,(SIGCONTEXT_FP_REGS+(PT_R0*8))(r31)
+ /* End FDE now, because the unwind info would be wrong while
+ we're reloading registers to switch to the new context. */
+ cfi_endproc
+
ld r0,(SIGCONTEXT_GP_REGS+(PT_LNK*8))(r31)
ld r1,(SIGCONTEXT_GP_REGS+(PT_R1*8))(r31)
mtlr r0
@@ -451,6 +464,11 @@ L(has_no_vec):
ld r31,(SIGCONTEXT_GP_REGS+(PT_R31*8))(r31)
bctr
+ /* Re-establish FDE for the rest of the actual setcontext routine. */
+ cfi_startproc
+ cfi_offset (lr, FRAME_LR_SAVE)
+ cfi_adjust_cfa_offset (128)
+
L(error_exit):
ld r0,128+FRAME_LR_SAVE(r1)
addi r1,r1,128
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S b/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S
index 018e55c997..aba2d80902 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S
@@ -46,8 +46,13 @@
# endif
#endif
-#define FRAMESIZE 128
-#define stackblock FRAMESIZE+48 /* offset to parm save area. */
+#if _CALL_ELF == 2
+#define FRAMESIZE (FRAME_MIN_SIZE+16+64)
+#define stackblock (FRAME_MIN_SIZE+16)
+#else
+#define FRAMESIZE (FRAME_MIN_SIZE+16)
+#define stackblock (FRAMESIZE+FRAME_PARM_SAVE) /* offset to parm save area. */
+#endif
.text
ENTRY(__socket)
@@ -98,22 +103,22 @@ ENTRY(__socket)
.Lsocket_cancel:
cfi_adjust_cfa_offset(FRAMESIZE)
mflr r9
- std r9,FRAMESIZE+16(r1)
- cfi_offset (lr, 16)
+ std r9,FRAMESIZE+FRAME_LR_SAVE(r1)
+ cfi_offset (lr, FRAME_LR_SAVE)
CENABLE
- std r3,120(r1)
+ std r3,FRAME_MIN_SIZE+8(r1)
li r3,P(SOCKOP_,socket)
addi r4,r1,stackblock
DO_CALL(SYS_ify(socketcall))
mfcr r0
- std r3,112(r1)
- std r0,FRAMESIZE+8(r1)
- cfi_offset (cr, 8)
- ld r3,120(r1)
+ std r3,FRAME_MIN_SIZE(r1)
+ std r0,FRAMESIZE+FRAME_CR_SAVE(r1)
+ cfi_offset (cr, FRAME_CR_SAVE)
+ ld r3,FRAME_MIN_SIZE+8(r1)
CDISABLE
- ld r4,FRAMESIZE+16(r1)
- ld r0,FRAMESIZE+8(r1)
- ld r3,112(r1)
+ ld r4,FRAMESIZE+FRAME_LR_SAVE(r1)
+ ld r0,FRAMESIZE+FRAME_CR_SAVE(r1)
+ ld r3,FRAME_MIN_SIZE(r1)
mtlr r4
mtcr r0
addi r1,r1,FRAMESIZE
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym b/sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym
index a35418d9d4..8364e4614f 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.sym
@@ -8,27 +8,6 @@ SIG_BLOCK
SIG_SETMASK
--- Offsets of the fields in the powerpc64 ABI stack frame.
--- XXX Do these correspond to some struct?
-
-FRAME_BACKCHAIN 0
-FRAME_CR_SAVE 8
-FRAME_LR_SAVE 16
-FRAME_COMPILER_DW 24
-FRAME_LINKER_DW 32
-FRAME_TOC_SAVE 40
-FRAME_PARM_SAVE 48
-FRAME_PARM1_SAVE 48
-FRAME_PARM2_SAVE 56
-FRAME_PARM3_SAVE 64
-FRAME_PARM4_SAVE 72
-FRAME_PARM5_SAVE 80
-FRAME_PARM6_SAVE 88
-FRAME_PARM7_SAVE 96
-FRAME_PARM8_SAVE 104
-FRAME_PARM9_SAVE 112
-
-
-- Offsets of the fields in the ucontext_t structure.
#define ucontext(member) offsetof (ucontext_t, member)
#define mcontext(member) ucontext (uc_mcontext.member)
diff --git a/sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h b/sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h
index 935a68c70a..11f48b5b85 100644
--- a/sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h
+++ b/sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h
@@ -97,7 +97,7 @@ typedef struct _libc_vrstate
} vrregset_t __attribute__((__aligned__(16)));
typedef struct {
- unsigned long __unused[4];
+ unsigned long __glibc_reserved[4];
int signal;
int __pad0;
unsigned long handler;
diff --git a/sysdeps/unix/sysv/linux/powerpc/time.c b/sysdeps/unix/sysv/linux/powerpc/time.c
index 66b4eb3049..2d77ecec9b 100644
--- a/sysdeps/unix/sysv/linux/powerpc/time.c
+++ b/sysdeps/unix/sysv/linux/powerpc/time.c
@@ -20,7 +20,9 @@
# include <time.h>
# include <sysdep.h>
+# include <dl-vdso.h>
# include <bits/libc-vdso.h>
+# include <dl-machine.h>
void *time_ifunc (void) asm ("time");
diff --git a/sysdeps/unix/sysv/linux/s390/bits/ipc.h b/sysdeps/unix/sysv/linux/s390/bits/ipc.h
index 39519a4a1c..1493af7967 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/ipc.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/ipc.h
@@ -55,6 +55,6 @@ struct ipc_perm
#endif
unsigned short int __seq; /* Sequence number. */
unsigned short int __pad2;
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
diff --git a/sysdeps/unix/sysv/linux/s390/bits/msq.h b/sysdeps/unix/sysv/linux/s390/bits/msq.h
index a5eaf89ddf..e2a7e03710 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/msq.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/msq.h
@@ -41,23 +41,23 @@ struct msqid_ds
struct ipc_perm msg_perm; /* structure describing operation permission */
__time_t msg_stime; /* time of last msgsnd command */
#if __WORDSIZE != 64
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
#endif
__time_t msg_rtime; /* time of last msgrcv command */
#if __WORDSIZE != 64
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
#endif
__time_t msg_ctime; /* time of last change */
#if __WORDSIZE != 64
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
#endif
unsigned long int __msg_cbytes; /* current number of bytes on queue */
msgqnum_t msg_qnum; /* number of messages currently on queue */
msglen_t msg_qbytes; /* max number of bytes allowed on queue */
__pid_t msg_lspid; /* pid of last msgsnd() */
__pid_t msg_lrpid; /* pid of last msgrcv() */
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#ifdef __USE_MISC
diff --git a/sysdeps/unix/sysv/linux/s390/bits/sem.h b/sysdeps/unix/sysv/linux/s390/bits/sem.h
index fe94448caa..7bfc477e27 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/sem.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/sem.h
@@ -41,15 +41,15 @@ struct semid_ds
struct ipc_perm sem_perm; /* operation permission struct */
__time_t sem_otime; /* last semop() time */
#if __WORDSIZE != 64
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
#endif
__time_t sem_ctime; /* last time changed by semctl() */
#if __WORDSIZE != 64
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
#endif
unsigned long int sem_nsems; /* number of semaphores in set */
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
/* The user should define a union like the following to use it for arguments
diff --git a/sysdeps/unix/sysv/linux/s390/bits/shm.h b/sysdeps/unix/sysv/linux/s390/bits/shm.h
index c678219e9c..358e617a7d 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/shm.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/shm.h
@@ -53,21 +53,21 @@ struct shmid_ds
size_t shm_segsz; /* size of segment in bytes */
__time_t shm_atime; /* time of last shmat() */
#if __WORDSIZE != 64
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
#endif
__time_t shm_dtime; /* time of last shmdt() */
#if __WORDSIZE != 64
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
#endif
__time_t shm_ctime; /* time of last change by shmctl() */
#if __WORDSIZE != 64
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
#endif
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#ifdef __USE_MISC
@@ -89,10 +89,10 @@ struct shminfo
unsigned long int shmmni;
unsigned long int shmseg;
unsigned long int shmall;
- unsigned long int __unused1;
- unsigned long int __unused2;
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
struct shm_info
diff --git a/sysdeps/unix/sysv/linux/s390/bits/stat.h b/sysdeps/unix/sysv/linux/s390/bits/stat.h
index 5d1e222dbb..51be598ebb 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/stat.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/stat.h
@@ -81,7 +81,7 @@ struct stat
#endif
__blksize_t st_blksize; /* Optimal block size for I/O. */
__blkcnt_t st_blocks; /* Nr. 512-byte blocks allocated. */
- long int __unused[3];
+ long int __glibc_reserved[3];
};
#else
struct stat
@@ -133,8 +133,8 @@ struct stat
unsigned long int st_ctimensec; /* Nsecs of last status change. */
# endif
# ifndef __USE_FILE_OFFSET64
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
# else
__ino64_t st_ino; /* File serial number. */
# endif
@@ -178,7 +178,7 @@ struct stat64
# endif
__blksize_t st_blksize; /* Optimal block size for I/O. */
__blkcnt64_t st_blocks; /* Nr. 512-byte blocks allocated. */
- long int __unused[3];
+ long int __glibc_reserved[3];
};
# else
struct stat64
diff --git a/sysdeps/unix/sysv/linux/s390/bits/utmp.h b/sysdeps/unix/sysv/linux/s390/bits/utmp.h
index a46470ffcf..96c1c99ffc 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/utmp.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/utmp.h
@@ -81,7 +81,7 @@ struct utmp
#endif
int32_t ut_addr_v6[4]; /* Internet address of remote host. */
- char __unused[20]; /* Reserved for future use. */
+ char __glibc_reserved[20]; /* Reserved for future use. */
};
/* Backwards compatibility hacks. */
diff --git a/sysdeps/unix/sysv/linux/s390/bits/utmpx.h b/sysdeps/unix/sysv/linux/s390/bits/utmpx.h
index 1fba0b6da6..cb6067b93a 100644
--- a/sysdeps/unix/sysv/linux/s390/bits/utmpx.h
+++ b/sysdeps/unix/sysv/linux/s390/bits/utmpx.h
@@ -78,7 +78,7 @@ struct utmpx
struct timeval ut_tv; /* Time entry was made. */
#endif
__int32_t ut_addr_v6[4]; /* Internet address of remote host. */
- char __unused[20]; /* Reserved for future use. */
+ char __glibc_reserved[20]; /* Reserved for future use. */
};
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h b/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h
index 350b3e69ee..ae7f04d0b9 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/utmp32.h
@@ -44,7 +44,7 @@ struct utmp32
} ut_tv; /* Time entry was made. */
int32_t ut_addr_v6[4]; /* Internet address of remote host. */
- char __unused[20]; /* Reserved for future use. */
+ char __glibc_reserved[20]; /* Reserved for future use. */
};
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h b/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h
index 82fc774a9a..9e4f33d485 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/utmpx32.h
@@ -44,7 +44,7 @@ struct utmpx32
} ut_tv; /* Time entry was made. */
__int32_t ut_addr_v6[4]; /* Internet address of remote host. */
- char __unused[20]; /* Reserved for future use. */
+ char __glibc_reserved[20]; /* Reserved for future use. */
};
/* The internal interface needed by the compat wrapper functions. */
diff --git a/sysdeps/unix/sysv/linux/sh/bits/shm.h b/sysdeps/unix/sysv/linux/sh/bits/shm.h
index d67172b7dc..d35160927c 100644
--- a/sysdeps/unix/sysv/linux/sh/bits/shm.h
+++ b/sysdeps/unix/sysv/linux/sh/bits/shm.h
@@ -49,16 +49,16 @@ struct shmid_ds
struct ipc_perm shm_perm; /* operation permission struct */
size_t shm_segsz; /* size of segment in bytes */
__time_t shm_atime; /* time of last shmat() */
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
__time_t shm_dtime; /* time of last shmdt() */
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
__time_t shm_ctime; /* time of last change by shmctl() */
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#ifdef __USE_MISC
@@ -80,10 +80,10 @@ struct shminfo
unsigned long int shmmni;
unsigned long int shmseg;
unsigned long int shmall;
- unsigned long int __unused1;
- unsigned long int __unused2;
- unsigned long int __unused3;
- unsigned long int __unused4;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
+ unsigned long int __glibc_reserved3;
+ unsigned long int __glibc_reserved4;
};
struct shm_info
diff --git a/sysdeps/unix/sysv/linux/sh/nptl/c++-types.data b/sysdeps/unix/sysv/linux/sh/nptl/c++-types.data
new file mode 100644
index 0000000000..fde53bf337
--- /dev/null
+++ b/sysdeps/unix/sysv/linux/sh/nptl/c++-types.data
@@ -0,0 +1,67 @@
+blkcnt64_t:x
+blkcnt_t:l
+blksize_t:l
+caddr_t:Pc
+clockid_t:i
+clock_t:l
+daddr_t:i
+dev_t:y
+fd_mask:l
+fsblkcnt64_t:y
+fsblkcnt_t:m
+fsfilcnt64_t:y
+fsfilcnt_t:m
+fsid_t:8__fsid_t
+gid_t:j
+id_t:j
+ino64_t:y
+ino_t:m
+int16_t:s
+int32_t:i
+int64_t:x
+int8_t:a
+intptr_t:i
+key_t:i
+loff_t:x
+mode_t:j
+nlink_t:j
+off64_t:x
+off_t:l
+pid_t:i
+pthread_attr_t:14pthread_attr_t
+pthread_barrier_t:17pthread_barrier_t
+pthread_barrierattr_t:21pthread_barrierattr_t
+pthread_cond_t:14pthread_cond_t
+pthread_condattr_t:18pthread_condattr_t
+pthread_key_t:j
+pthread_mutex_t:15pthread_mutex_t
+pthread_mutexattr_t:19pthread_mutexattr_t
+pthread_once_t:i
+pthread_rwlock_t:16pthread_rwlock_t
+pthread_rwlockattr_t:20pthread_rwlockattr_t
+pthread_spinlock_t:i
+pthread_t:m
+quad_t:x
+register_t:i
+rlim64_t:y
+rlim_t:m
+sigset_t:10__sigset_t
+size_t:j
+socklen_t:j
+ssize_t:i
+suseconds_t:l
+time_t:l
+u_char:h
+uid_t:j
+uint:j
+u_int:j
+u_int16_t:t
+u_int32_t:j
+u_int64_t:y
+u_int8_t:h
+ulong:m
+u_long:m
+u_quad_t:y
+useconds_t:j
+ushort:t
+u_short:t
diff --git a/sysdeps/unix/sysv/linux/shm_open.c b/sysdeps/unix/sysv/linux/shm_open.c
index 41d93155a7..7bb28744c1 100644
--- a/sysdeps/unix/sysv/linux/shm_open.c
+++ b/sysdeps/unix/sysv/linux/shm_open.c
@@ -148,14 +148,15 @@ shm_open (const char *name, int oflag, mode_t mode)
while (name[0] == '/')
++name;
- if (name[0] == '\0')
+ namelen = strlen (name);
+
+ /* Validate the filename. */
+ if (name[0] == '\0' || namelen > NAME_MAX || strchr (name, '/') != NULL)
{
- /* The name "/" is not supported. */
__set_errno (EINVAL);
return -1;
}
- namelen = strlen (name);
fname = (char *) alloca (mountpoint.dirlen + namelen + 1);
__mempcpy (__mempcpy (fname, mountpoint.dir, mountpoint.dirlen),
name, namelen + 1);
@@ -237,14 +238,15 @@ shm_unlink (const char *name)
while (name[0] == '/')
++name;
- if (name[0] == '\0')
+ namelen = strlen (name);
+
+ /* Validate the filename. */
+ if (name[0] == '\0' || namelen > NAME_MAX || strchr (name, '/') != NULL)
{
- /* The name "/" is not supported. */
__set_errno (ENOENT);
return -1;
}
- namelen = strlen (name);
fname = (char *) alloca (mountpoint.dirlen + namelen + 1);
__mempcpy (__mempcpy (fname, mountpoint.dir, mountpoint.dirlen),
name, namelen + 1);
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h b/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h
index 01084bb717..7efdf68146 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/fcntl.h
@@ -39,6 +39,7 @@
#define __O_DIRECT 0x100000 /* direct disk access hint */
#define __O_NOATIME 0x200000 /* Do not set atime. */
#define __O_PATH 0x1000000 /* Resolve pathname but do not open file. */
+#define __O_TMPFILE 0x2010000 /* Atomically create nameless file. */
#if __WORDSIZE == 64
# define __O_LARGEFILE 0
@@ -81,7 +82,7 @@ struct flock
__off64_t l_len; /* Size of the locked area; zero means until EOF. */
#endif
__pid_t l_pid; /* Process holding the lock. */
- short int __unused;
+ short int __glibc_reserved;
};
#ifdef __USE_LARGEFILE64
@@ -92,7 +93,7 @@ struct flock64
__off64_t l_start; /* Offset where the lock begins. */
__off64_t l_len; /* Size of the locked area; zero means until EOF. */
__pid_t l_pid; /* Process holding the lock. */
- short int __unused;
+ short int __glibc_reserved;
};
#endif
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/ipc.h b/sysdeps/unix/sysv/linux/sparc/bits/ipc.h
index e59f96abc5..885c1f77a8 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/ipc.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/ipc.h
@@ -56,6 +56,6 @@ struct ipc_perm
unsigned short int __pad1;
#endif
unsigned short int __seq; /* Sequence number. */
- __extension__ unsigned long long int __unused1;
- __extension__ unsigned long long int __unused2;
+ __extension__ unsigned long long int __glibc_reserved1;
+ __extension__ unsigned long long int __glibc_reserved2;
};
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/msq.h b/sysdeps/unix/sysv/linux/sparc/bits/msq.h
index 0a0192732c..cdeda0f586 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/msq.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/msq.h
@@ -56,8 +56,8 @@ struct msqid_ds
msglen_t msg_qbytes; /* max number of bytes allowed on queue */
__pid_t msg_lspid; /* pid of last msgsnd() */
__pid_t msg_lrpid; /* pid of last msgrcv() */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
#ifdef __USE_MISC
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/sem.h b/sysdeps/unix/sysv/linux/sparc/bits/sem.h
index ca02733488..558e5aa2b0 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/sem.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/sem.h
@@ -48,8 +48,8 @@ struct semid_ds
#endif
__time_t sem_ctime; /* last time changed by semctl() */
unsigned long int sem_nsems; /* number of semaphores in set */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
/* The user should define a union like the following to use it for arguments
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/shm.h b/sysdeps/unix/sysv/linux/sparc/bits/shm.h
index 4cbfc721bf..4518cf00ec 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/shm.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/shm.h
@@ -66,8 +66,8 @@ struct shmid_ds
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
#ifdef __USE_MISC
@@ -89,10 +89,10 @@ struct shminfo
unsigned long shmmni;
unsigned long shmseg;
unsigned long shmall;
- unsigned long __unused1;
- unsigned long __unused2;
- unsigned long __unused3;
- unsigned long __unused4;
+ unsigned long __glibc_reserved1;
+ unsigned long __glibc_reserved2;
+ unsigned long __glibc_reserved3;
+ unsigned long __glibc_reserved4;
};
struct shm_info
diff --git a/sysdeps/unix/sysv/linux/sparc/bits/stat.h b/sysdeps/unix/sysv/linux/sparc/bits/stat.h
index 9f6812e57b..b87fd584df 100644
--- a/sysdeps/unix/sysv/linux/sparc/bits/stat.h
+++ b/sysdeps/unix/sysv/linux/sparc/bits/stat.h
@@ -83,8 +83,8 @@ struct stat
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
#endif
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#ifdef __USE_LARGEFILE64
@@ -126,8 +126,8 @@ struct stat64
__time_t st_ctime; /* Time of last status change. */
unsigned long int st_ctimensec; /* Nsecs of last status change. */
# endif
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#endif
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h b/sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h
index a0da019c5f..5b894b83f9 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h
@@ -14,8 +14,8 @@ struct kernel_stat
struct timespec st_ctim;
long int st_blksize;
long int st_blocks;
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
};
#define _HAVE___UNUSED4
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h b/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h
index a4e411d132..2a26a78d9c 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/kernel_stat.h
@@ -14,8 +14,8 @@ struct kernel_stat
long int st_ctime_sec;
long int st_blksize;
long int st_blocks;
- unsigned long int __unused1;
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved1;
+ unsigned long int __glibc_reserved2;
};
/* Definition of `struct stat64' used in the kernel. */
@@ -41,7 +41,7 @@ struct kernel_stat64
unsigned long int st_mtime_nsec;
unsigned long int st_ctime_sec;
unsigned long int st_ctime_nsec;
- long int __unused[3];
+ long int __glibc_reserved[3];
};
#define XSTAT_IS_XSTAT64 1
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/xstatconv.c b/sysdeps/unix/sysv/linux/sparc/sparc64/xstatconv.c
index b7e4d96cff..f41d8252ce 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/xstatconv.c
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/xstatconv.c
@@ -58,8 +58,8 @@ __xstat_conv (int vers, struct kernel_stat *kbuf, void *ubuf)
buf->st_mtim.tv_nsec = 0;
buf->st_ctim.tv_sec = kbuf->st_ctime_sec;
buf->st_ctim.tv_nsec = 0;
- buf->__unused4 = 0;
- buf->__unused5 = 0;
+ buf->__glibc_reserved4 = 0;
+ buf->__glibc_reserved5 = 0;
}
break;
@@ -108,8 +108,8 @@ __xstat32_conv (int vers, struct stat64 *sbuf, struct stat *buf)
buf->st_mtim.tv_nsec = kbuf->st_mtime_nsec;
buf->st_ctim.tv_sec = kbuf->st_ctime_sec;
buf->st_ctim.tv_nsec = kbuf->st_ctime_nsec;
- buf->__unused4 = 0;
- buf->__unused5 = 0;
+ buf->__glibc_reserved4 = 0;
+ buf->__glibc_reserved5 = 0;
}
break;
diff --git a/sysdeps/unix/sysv/linux/sparc/sys/procfs.h b/sysdeps/unix/sysv/linux/sparc/sys/procfs.h
index 4d8c450017..db7ef22abe 100644
--- a/sysdeps/unix/sysv/linux/sparc/sys/procfs.h
+++ b/sysdeps/unix/sysv/linux/sparc/sys/procfs.h
@@ -55,7 +55,7 @@ typedef struct
unsigned long pr_regs[32];
double pr_dregs[16];
} pr_fr;
- unsigned long __unused;
+ unsigned long __glibc_reserved;
unsigned long pr_fsr;
unsigned char pr_qcnt;
unsigned char pr_q_entrysize;
@@ -150,7 +150,7 @@ typedef struct
unsigned int pr_regs[32];
double pr_dregs[16];
} pr_fr;
- unsigned int __unused;
+ unsigned int __glibc_reserved;
unsigned int pr_fsr;
unsigned char pr_qcnt;
unsigned char pr_q_entrysize;
diff --git a/sysdeps/unix/sysv/linux/sys/ptrace.h b/sysdeps/unix/sysv/linux/sys/ptrace.h
index 2b78565db1..8aa4c087ea 100644
--- a/sysdeps/unix/sysv/linux/sys/ptrace.h
+++ b/sysdeps/unix/sysv/linux/sys/ptrace.h
@@ -184,7 +184,7 @@ enum __ptrace_eventcodes
PTRACE_EVENT_EXEC = 4,
PTRACE_EVENT_VFORK_DONE = 5,
PTRACE_EVENT_EXIT = 6,
- PTRAVE_EVENT_SECCOMP = 7
+ PTRACE_EVENT_SECCOMP = 7
};
/* Arguments for PTRACE_PEEKSIGINFO. */
diff --git a/sysdeps/unix/sysv/linux/sys/timex.h b/sysdeps/unix/sysv/linux/sys/timex.h
index 610ad630fa..9fea624c92 100644
--- a/sysdeps/unix/sysv/linux/sys/timex.h
+++ b/sysdeps/unix/sysv/linux/sys/timex.h
@@ -34,10 +34,10 @@ struct ntptimeval
long int esterror; /* estimated error (us) (ro) */
long int tai; /* TAI offset (ro) */
- long int __unused1;
- long int __unused2;
- long int __unused3;
- long int __unused4;
+ long int __glibc_reserved1;
+ long int __glibc_reserved2;
+ long int __glibc_reserved3;
+ long int __glibc_reserved4;
};
/* Clock states (time_state) */
diff --git a/sysdeps/unix/bsd/setsid.c b/sysdeps/unix/sysv/linux/tst-fanotify.c
index a42dc1dfd8..ad9836b582 100644
--- a/sysdeps/unix/bsd/setsid.c
+++ b/sysdeps/unix/sysv/linux/tst-fanotify.c
@@ -1,4 +1,5 @@
-/* Copyright (C) 1991-2013 Free Software Foundation, Inc.
+/* Basic fanotify test.
+ Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -16,42 +17,44 @@
<http://www.gnu.org/licenses/>. */
#include <errno.h>
-#include <unistd.h>
-#include <sys/ioctl.h>
-#include <sys/types.h>
#include <fcntl.h>
+#include <stdio.h>
+#include <sys/fanotify.h>
-/* Create a new session with the calling process as its leader.
- The process group IDs of the session and the calling process
- are set to the process ID of the calling process, which is returned. */
-int
-__setsid (void)
+static int
+do_test (void)
{
- pid_t pid = getpid ();
- int tty;
- int save = errno;
+ int fd, ret;
- if (__getpgid (pid) == pid)
+ fd = fanotify_init (0, 0);
+ if (fd < 0)
{
- /* Already the leader. */
- __set_errno (EPERM);
- return -1;
+ switch (errno)
+ {
+ case ENOSYS:
+ puts ("SKIP: missing support for fanotify (check CONFIG_FANOTIFY=y)");
+ return 0;
+ case EPERM:
+ puts ("SKIP: missing proper permissions for runtime test");
+ return 0;
+ }
+
+ perror ("fanotify_init (0, 0) failed");
+ return 1;
}
- if (setpgid (pid, pid) < 0)
- return -1;
-
- tty = open ("/dev/tty", 0);
- if (tty < 0)
+ ret = fanotify_mark (fd, FAN_MARK_ADD | FAN_MARK_MOUNT, FAN_ACCESS
+ | FAN_MODIFY | FAN_OPEN | FAN_CLOSE | FAN_ONDIR
+ | FAN_EVENT_ON_CHILD, AT_FDCWD, ".");
+ if (ret)
{
- __set_errno (save);
- return 0;
+ perror ("fanotify_mark (...) failed");
+ return 1;
}
- (void) __ioctl (tty, TIOCNOTTY, 0);
- (void) __close (tty);
- __set_errno (save);
+ puts ("All OK");
return 0;
}
-weak_alias (__setsid, setsid)
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
diff --git a/sysdeps/unix/sysv/linux/x86/bits/msq.h b/sysdeps/unix/sysv/linux/x86/bits/msq.h
index 9355e465d5..f078bbeeeb 100644
--- a/sysdeps/unix/sysv/linux/x86/bits/msq.h
+++ b/sysdeps/unix/sysv/linux/x86/bits/msq.h
@@ -39,23 +39,23 @@ struct msqid_ds
struct ipc_perm msg_perm; /* structure describing operation permission */
__time_t msg_stime; /* time of last msgsnd command */
#ifndef __x86_64__
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
#endif
__time_t msg_rtime; /* time of last msgrcv command */
#ifndef __x86_64__
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
#endif
__time_t msg_ctime; /* time of last change */
#ifndef __x86_64__
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
#endif
__syscall_ulong_t __msg_cbytes; /* current number of bytes on queue */
msgqnum_t msg_qnum; /* number of messages currently on queue */
msglen_t msg_qbytes; /* max number of bytes allowed on queue */
__pid_t msg_lspid; /* pid of last msgsnd() */
__pid_t msg_lrpid; /* pid of last msgrcv() */
- __syscall_ulong_t __unused4;
- __syscall_ulong_t __unused5;
+ __syscall_ulong_t __glibc_reserved4;
+ __syscall_ulong_t __glibc_reserved5;
};
#ifdef __USE_MISC
diff --git a/sysdeps/unix/sysv/linux/x86/bits/sem.h b/sysdeps/unix/sysv/linux/x86/bits/sem.h
index b2eaaa9a36..2ec6bb5b8c 100644
--- a/sysdeps/unix/sysv/linux/x86/bits/sem.h
+++ b/sysdeps/unix/sysv/linux/x86/bits/sem.h
@@ -39,12 +39,12 @@ struct semid_ds
{
struct ipc_perm sem_perm; /* operation permission struct */
__time_t sem_otime; /* last semop() time */
- __syscall_ulong_t __unused1;
+ __syscall_ulong_t __glibc_reserved1;
__time_t sem_ctime; /* last time changed by semctl() */
- __syscall_ulong_t __unused2;
+ __syscall_ulong_t __glibc_reserved2;
__syscall_ulong_t sem_nsems; /* number of semaphores in set */
- __syscall_ulong_t __unused3;
- __syscall_ulong_t __unused4;
+ __syscall_ulong_t __glibc_reserved3;
+ __syscall_ulong_t __glibc_reserved4;
};
/* The user should define a union like the following to use it for arguments
diff --git a/sysdeps/unix/sysv/linux/x86/bits/shm.h b/sysdeps/unix/sysv/linux/x86/bits/shm.h
index 4fdd06243e..13b11bf230 100644
--- a/sysdeps/unix/sysv/linux/x86/bits/shm.h
+++ b/sysdeps/unix/sysv/linux/x86/bits/shm.h
@@ -52,21 +52,21 @@ struct shmid_ds
size_t shm_segsz; /* size of segment in bytes */
__time_t shm_atime; /* time of last shmat() */
#ifndef __x86_64__
- unsigned long int __unused1;
+ unsigned long int __glibc_reserved1;
#endif
__time_t shm_dtime; /* time of last shmdt() */
#ifndef __x86_64__
- unsigned long int __unused2;
+ unsigned long int __glibc_reserved2;
#endif
__time_t shm_ctime; /* time of last change by shmctl() */
#ifndef __x86_64__
- unsigned long int __unused3;
+ unsigned long int __glibc_reserved3;
#endif
__pid_t shm_cpid; /* pid of creator */
__pid_t shm_lpid; /* pid of last shmop */
shmatt_t shm_nattch; /* number of current attaches */
- __syscall_ulong_t __unused4;
- __syscall_ulong_t __unused5;
+ __syscall_ulong_t __glibc_reserved4;
+ __syscall_ulong_t __glibc_reserved5;
};
#ifdef __USE_MISC
@@ -88,10 +88,10 @@ struct shminfo
__syscall_ulong_t shmmni;
__syscall_ulong_t shmseg;
__syscall_ulong_t shmall;
- __syscall_ulong_t __unused1;
- __syscall_ulong_t __unused2;
- __syscall_ulong_t __unused3;
- __syscall_ulong_t __unused4;
+ __syscall_ulong_t __glibc_reserved1;
+ __syscall_ulong_t __glibc_reserved2;
+ __syscall_ulong_t __glibc_reserved3;
+ __syscall_ulong_t __glibc_reserved4;
};
struct shm_info
diff --git a/sysdeps/unix/sysv/linux/x86/bits/stat.h b/sysdeps/unix/sysv/linux/x86/bits/stat.h
index 9e2f78f8b5..efda6731a0 100644
--- a/sysdeps/unix/sysv/linux/x86/bits/stat.h
+++ b/sysdeps/unix/sysv/linux/x86/bits/stat.h
@@ -103,11 +103,11 @@ struct stat
__syscall_ulong_t st_ctimensec; /* Nsecs of last status change. */
#endif
#ifdef __x86_64__
- __syscall_slong_t __unused[3];
+ __syscall_slong_t __glibc_reserved[3];
#else
# ifndef __USE_FILE_OFFSET64
- unsigned long int __unused4;
- unsigned long int __unused5;
+ unsigned long int __glibc_reserved4;
+ unsigned long int __glibc_reserved5;
# else
__ino64_t st_ino; /* File serial number. */
# endif
@@ -161,7 +161,7 @@ struct stat64
__syscall_ulong_t st_ctimensec; /* Nsecs of last status change. */
# endif
# ifdef __x86_64__
- __syscall_slong_t __unused[3];
+ __syscall_slong_t __glibc_reserved[3];
# else
__ino64_t st_ino; /* File serial number. */
# endif
diff --git a/sysdeps/unix/sysv/linux/xstatconv.c b/sysdeps/unix/sysv/linux/xstatconv.c
index 858b911487..60e4e10797 100644
--- a/sysdeps/unix/sysv/linux/xstatconv.c
+++ b/sysdeps/unix/sysv/linux/xstatconv.c
@@ -78,19 +78,19 @@ __xstat_conv (int vers, struct kernel_stat *kbuf, void *ubuf)
buf->st_ctime = kbuf->st_ctime;
#endif
#ifdef _HAVE_STAT___UNUSED1
- buf->__unused1 = 0;
+ buf->__glibc_reserved1 = 0;
#endif
#ifdef _HAVE_STAT___UNUSED2
- buf->__unused2 = 0;
+ buf->__glibc_reserved2 = 0;
#endif
#ifdef _HAVE_STAT___UNUSED3
- buf->__unused3 = 0;
+ buf->__glibc_reserved3 = 0;
#endif
#ifdef _HAVE_STAT___UNUSED4
- buf->__unused4 = 0;
+ buf->__glibc_reserved4 = 0;
#endif
#ifdef _HAVE_STAT___UNUSED5
- buf->__unused5 = 0;
+ buf->__glibc_reserved5 = 0;
#endif
}
break;
@@ -149,19 +149,19 @@ __xstat64_conv (int vers, struct kernel_stat *kbuf, void *ubuf)
buf->st_ctime = kbuf->st_ctime;
#endif
#ifdef _HAVE_STAT64___UNUSED1
- buf->__unused1 = 0;
+ buf->__glibc_reserved1 = 0;
#endif
#ifdef _HAVE_STAT64___UNUSED2
- buf->__unused2 = 0;
+ buf->__glibc_reserved2 = 0;
#endif
#ifdef _HAVE_STAT64___UNUSED3
- buf->__unused3 = 0;
+ buf->__glibc_reserved3 = 0;
#endif
#ifdef _HAVE_STAT64___UNUSED4
- buf->__unused4 = 0;
+ buf->__glibc_reserved4 = 0;
#endif
#ifdef _HAVE_STAT64___UNUSED5
- buf->__unused5 = 0;
+ buf->__glibc_reserved5 = 0;
#endif
}
break;
@@ -254,19 +254,19 @@ __xstat32_conv (int vers, struct stat64 *kbuf, struct stat *buf)
#endif
#ifdef _HAVE_STAT___UNUSED1
- buf->__unused1 = 0;
+ buf->__glibc_reserved1 = 0;
#endif
#ifdef _HAVE_STAT___UNUSED2
- buf->__unused2 = 0;
+ buf->__glibc_reserved2 = 0;
#endif
#ifdef _HAVE_STAT___UNUSED3
- buf->__unused3 = 0;
+ buf->__glibc_reserved3 = 0;
#endif
#ifdef _HAVE_STAT___UNUSED4
- buf->__unused4 = 0;
+ buf->__glibc_reserved4 = 0;
#endif
#ifdef _HAVE_STAT___UNUSED5
- buf->__unused5 = 0;
+ buf->__glibc_reserved5 = 0;
#endif
}
break;
diff --git a/sysdeps/wordsize-32/divdi3.c b/sysdeps/wordsize-32/divdi3.c
index 7898541eb0..fa122aa5fd 100644
--- a/sysdeps/wordsize-32/divdi3.c
+++ b/sysdeps/wordsize-32/divdi3.c
@@ -333,7 +333,7 @@ strong_alias (__umoddi3, __umoddi3_internal)
/* We declare these with compat_symbol so that they are not visible at
link time. Programs must use the functions from libgcc. */
-#if defined SHARED && defined DO_VERSIONING
+#ifdef SHARED
# include <shlib-compat.h>
compat_symbol (libc, __divdi3, __divdi3, GLIBC_2_0);
compat_symbol (libc, __moddi3, __moddi3, GLIBC_2_0);
diff --git a/sysdeps/x86/fpu/bits/fenv.h b/sysdeps/x86/fpu/bits/fenv.h
index b9040cce90..07cac2887c 100644
--- a/sysdeps/x86/fpu/bits/fenv.h
+++ b/sysdeps/x86/fpu/bits/fenv.h
@@ -75,18 +75,18 @@ typedef unsigned short int fexcept_t;
typedef struct
{
unsigned short int __control_word;
- unsigned short int __unused1;
+ unsigned short int __glibc_reserved1;
unsigned short int __status_word;
- unsigned short int __unused2;
+ unsigned short int __glibc_reserved2;
unsigned short int __tags;
- unsigned short int __unused3;
+ unsigned short int __glibc_reserved3;
unsigned int __eip;
unsigned short int __cs_selector;
unsigned int __opcode:11;
- unsigned int __unused4:5;
+ unsigned int __glibc_reserved4:5;
unsigned int __data_offset;
unsigned short int __data_selector;
- unsigned short int __unused5;
+ unsigned short int __glibc_reserved5;
#ifdef __x86_64__
unsigned int __mxcsr;
#endif
diff --git a/sysdeps/x86_64/configure b/sysdeps/x86_64/configure
index 9232411951..5a83a53aae 100644
--- a/sysdeps/x86_64/configure
+++ b/sysdeps/x86_64/configure
@@ -29,7 +29,7 @@ $as_echo "$ac_res" >&6; }
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
} # ac_fn_c_check_header_compile
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local configure fragment for sysdeps/x86_64.
diff --git a/sysdeps/x86_64/configure.in b/sysdeps/x86_64/configure.ac
index c682f93c3e..c682f93c3e 100644
--- a/sysdeps/x86_64/configure.in
+++ b/sysdeps/x86_64/configure.ac
diff --git a/sysdeps/x86_64/dl-tlsdesc.S b/sysdeps/x86_64/dl-tlsdesc.S
index de5219a3b2..34680450c2 100644
--- a/sysdeps/x86_64/dl-tlsdesc.S
+++ b/sysdeps/x86_64/dl-tlsdesc.S
@@ -239,6 +239,6 @@ _dl_tlsdesc_resolve_hold:
movq 64(%rsp), %rcx
addq $72, %rsp
cfi_adjust_cfa_offset (-72)
- jmp *(%eax)
+ jmp *(%rax)
cfi_endproc
.size _dl_tlsdesc_resolve_hold, .-_dl_tlsdesc_resolve_hold
diff --git a/sysdeps/x86_64/ffs.c b/sysdeps/x86_64/ffs.c
index 27013d6ae6..07ee7dd4ab 100644
--- a/sysdeps/x86_64/ffs.c
+++ b/sysdeps/x86_64/ffs.c
@@ -35,4 +35,5 @@ __ffs (int x)
return cnt + 1;
}
weak_alias (__ffs, ffs)
+libc_hidden_def (__ffs)
libc_hidden_builtin_def (ffs)
diff --git a/sysdeps/x86_64/fpu/e_expl.S b/sysdeps/x86_64/fpu/e_expl.S
index a919780390..1c21f03ddc 100644
--- a/sysdeps/x86_64/fpu/e_expl.S
+++ b/sysdeps/x86_64/fpu/e_expl.S
@@ -127,9 +127,20 @@ ENTRY(IEEE754_EXPL)
#endif
3: FLDLOG /* 1 log2(base) */
fmul %st(1), %st /* 1 x log2(base) */
+#ifdef USE_AS_EXPM1L
+ /* Set round-to-nearest temporarily. */
+ fstcw -4(%rsp)
+ movl $0xf3ff, %edx
+ andl -4(%rsp), %edx
+ movl %edx, -8(%rsp)
+ fldcw -8(%rsp)
+#endif
frndint /* 1 i */
fld %st(1) /* 2 x */
frndint /* 2 xi */
+#ifdef USE_AS_EXPM1L
+ fldcw -4(%rsp)
+#endif
fld %st(1) /* 3 i */
fldt MO(c0) /* 4 c0 */
fld %st(2) /* 5 xi */
diff --git a/sysdeps/x86_64/fpu/e_powl.S b/sysdeps/x86_64/fpu/e_powl.S
index e10172674e..590223b60c 100644
--- a/sysdeps/x86_64/fpu/e_powl.S
+++ b/sysdeps/x86_64/fpu/e_powl.S
@@ -96,6 +96,9 @@ ENTRY(__ieee754_powl)
cmpb $0x05, %ah
je 15f // x is ±inf
+ cmpb $0x01, %ah
+ je 31f // x is NaN
+
fxch // y : x
/* fistpll raises invalid exception for |y| >= 1L<<63. */
diff --git a/sysdeps/x86_64/fpu/fegetround.c b/sysdeps/x86_64/fpu/fegetround.c
index 1a52b7ea67..c7cd046f39 100644
--- a/sysdeps/x86_64/fpu/fegetround.c
+++ b/sysdeps/x86_64/fpu/fegetround.c
@@ -30,3 +30,4 @@ fegetround (void)
return cw & 0xc00;
}
+libm_hidden_def (fegetround)
diff --git a/sysdeps/x86_64/fpu/libm-test-ulps b/sysdeps/x86_64/fpu/libm-test-ulps
index d02618a0a1..7e612b0775 100644
--- a/sysdeps/x86_64/fpu/libm-test-ulps
+++ b/sysdeps/x86_64/fpu/libm-test-ulps
@@ -4,6 +4,9 @@
Test "acos (0.75)":
ildouble: 1
ldouble: 1
+Test "acos (0xcp-4)":
+ildouble: 1
+ldouble: 1
# acos_downward
Test "acos_downward (-0)":
@@ -14,6 +17,9 @@ ldouble: 1
Test "acos_downward (-0.5)":
double: 1
idouble: 1
+Test "acos_downward (-0x8p-4)":
+float: 1
+ifloat: 1
Test "acos_downward (-1)":
float: 1
ifloat: 1
@@ -29,6 +35,26 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "acos_downward (0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_downward (0xf.ffffffffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_downward (0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_downward (0xf.fffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_downward (0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
+
+# acos_tonearest
+Test "acos_tonearest (0xcp-4)":
+ildouble: 1
+ldouble: 1
# acos_towardzero
Test "acos_towardzero (-0)":
@@ -39,6 +65,9 @@ ldouble: 1
Test "acos_towardzero (-0.5)":
double: 1
idouble: 1
+Test "acos_towardzero (-0x8p-4)":
+float: 1
+ifloat: 1
Test "acos_towardzero (-1)":
float: 1
ifloat: 1
@@ -54,22 +83,100 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "acos_towardzero (0xf.fffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_towardzero (0xf.ffffffffffff8p-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_towardzero (0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_towardzero (0xf.fffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_towardzero (0xf.fffffp-4)":
+ildouble: 1
+ldouble: 1
# acos_upward
+Test "acos_upward (+0)":
+double: 1
+idouble: 1
+Test "acos_upward (-0)":
+double: 1
+idouble: 1
Test "acos_upward (-0.5)":
ildouble: 1
ldouble: 1
+Test "acos_upward (-0x1p+0)":
+double: 1
+idouble: 1
Test "acos_upward (0.5)":
ildouble: 1
ldouble: 1
+Test "acos_upward (0x1.70ef54646d496p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1.70ef54646d497p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1.70ef54p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0x1.70ef56p-56)":
+double: 1
+idouble: 1
+Test "acos_upward (0xcp-4)":
+ildouble: 1
+ldouble: 1
+Test "acos_upward (0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
# asin_downward
Test "asin_downward (-0.5)":
double: 1
idouble: 1
+Test "asin_downward (-0x1p+0)":
+double: 1
+idouble: 1
+Test "asin_downward (-0x8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.fffffff8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.ffffffffffff8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.fffffffffffp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_downward (-0xf.fffffp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "asin_downward (0.5)":
double: 1
idouble: 1
+Test "asin_downward (0x8p-4)":
+float: 1
+ifloat: 1
Test "asin_downward (1.0)":
float: 1
ifloat: 1
@@ -80,6 +187,9 @@ ldouble: 1
Test "asin_towardzero (-0.5)":
double: 1
idouble: 1
+Test "asin_towardzero (-0x8p-4)":
+float: 1
+ifloat: 1
Test "asin_towardzero (-1.0)":
float: 1
ifloat: 1
@@ -88,6 +198,9 @@ ldouble: 1
Test "asin_towardzero (0.5)":
double: 1
idouble: 1
+Test "asin_towardzero (0x8p-4)":
+float: 1
+ifloat: 1
Test "asin_towardzero (1.0)":
float: 1
ifloat: 1
@@ -95,22 +208,79 @@ ildouble: 1
ldouble: 1
# asin_upward
+Test "asin_upward (-0x8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "asin_upward (-0xf.fffffff8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.ffffffffffff8p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.fffffffffffp-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "asin_upward (-0xf.fffffp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "asin_upward (-1.0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "asin_upward (0x1p+0)":
+double: 1
+idouble: 1
+Test "asin_upward (0x8p-4)":
+ildouble: 1
+ldouble: 1
# atan2
Test "atan2 (-0.75, -1.0)":
float: 1
ifloat: 1
+Test "atan2 (-0x1.effe81f852716ffep-8, -0x7.57d1de0e5124664p-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe81f852717p-8, -0x7.57d1ep-12)":
+ildouble: 1
+ldouble: 1
+Test "atan2 (-0x1.effe82p-8, -0x7.57d1d8p-12)":
+float: 1
+ifloat: 1
+Test "atan2 (-0xcp-4, -0x1p+0)":
+float: 1
+ifloat: 1
+Test "atan2 (-0xf.fffffp+124, -0x4p-128)":
+float: 1
+ifloat: 1
Test "atan2 (-max_value, -min_value)":
float: 1
ifloat: 1
Test "atan2 (0.75, -1.0)":
float: 1
ifloat: 1
+Test "atan2 (0x1.64p+0, 0xe.ep-4)":
+float: 1
+ifloat: 1
+Test "atan2 (0xcp-4, -0x1p+0)":
+float: 1
+ifloat: 1
Test "atan2 (1.390625, 0.9296875)":
float: 1
ifloat: 1
@@ -121,6 +291,11 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "atanh (0xcp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
# cacos
Test "Imaginary part of: cacos (+0 + 0.5 i)":
@@ -4830,6 +5005,15 @@ ldouble: 1
Test "cbrt (-0.001)":
ildouble: 1
ldouble: 1
+Test "cbrt (-0x1.bp+4)":
+double: 1
+idouble: 1
+Test "cbrt (-0x4.189374bc6a7ef9d8p-12)":
+ildouble: 1
+ldouble: 1
+Test "cbrt (-0x4.18937p-12)":
+float: 1
+ifloat: 1
Test "cbrt (-27.0)":
double: 1
idouble: 1
@@ -4841,6 +5025,14 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "cbrt (0xcp-4)":
+double: 1
+idouble: 1
+Test "cbrt (0xf.ep-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
# ccos
Test "Imaginary part of: ccos (-0.75 + 710.5 i)":
@@ -5511,6 +5703,9 @@ idouble: 1
ifloat: 1
# cos
+Test "cos (0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
Test "cos (M_PI_6l * 2.0)":
double: 1
idouble: 1
@@ -5521,6 +5716,151 @@ idouble: 2
ifloat: 1
# cos_downward
+Test "cos_downward (0x1.000000cf4a2a2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.0000010b239a9p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.00000162a932bp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.000002d452a1p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.000002p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.0c152382d7365p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb54442d19p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1.921fb6p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1p+0)":
+double: 1
+idouble: 1
+Test "cos_downward (0x1p+120)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x1p+28)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a44p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6cap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6cb08cp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6cb09p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a4705ae6ccp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.182a48p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "cos_downward (0x2p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x3p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x4p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x4p+48)":
+double: 1
+idouble: 1
+Test "cos_downward (0x8p+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_downward (0x8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0x9p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xa.217bap+12)":
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xcp-4)":
+double: 1
+idouble: 1
+Test "cos_downward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_downward (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "cos_downward (1)":
ildouble: 1
ldouble: 1
@@ -5553,7 +5893,105 @@ Test "cos_downward (9)":
float: 1
ifloat: 1
+# cos_tonearest
+Test "cos_tonearest (0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
+
# cos_towardzero
+Test "cos_towardzero (0x1.000000cf4a2a2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.0000010b239a9p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.00000162a932bp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.000002d452a1p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.000002p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.0c152382d7365p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x1p+120)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.182a4705ae6ccp+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.182a48p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x4p+0)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x4p+48)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0x8p+1020)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xa.217bap+12)":
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_towardzero (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xcp-4)":
+double: 1
+idouble: 1
+Test "cos_towardzero (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "cos_towardzero (1)":
ildouble: 1
ldouble: 1
@@ -5585,6 +6023,139 @@ ildouble: 1
ldouble: 1
# cos_upward
+Test "cos_upward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.000004p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.000005bc7d86dp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.000006p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.0c1522p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.0c152382d7366p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.0c1524p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x1.921fb4p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d18p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1.921fb6p+0)":
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0x1p+120)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x1p+28)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a44p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cb08cp+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6cb09p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a4705ae6ccp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2.182a48p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x2p+64)":
+double: 1
+idouble: 1
+Test "cos_upward (0x3p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x5p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x6p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x7p+0)":
+double: 1
+idouble: 1
+Test "cos_upward (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0x8p+124)":
+double: 1
+idouble: 1
+Test "cos_upward (0x9p+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0xa.217bap+12)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cos_upward (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "cos_upward (0xc.d4967p-4)":
+double: 1
+idouble: 1
+Test "cos_upward (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+Test "cos_upward (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
Test "cos_upward (1)":
float: 1
ifloat: 1
@@ -5614,7 +6185,32 @@ Test "cos_upward (9)":
ildouble: 1
ldouble: 1
+# cosh
+Test "cosh (-0x2.c5e3acp+8)":
+double: 1
+idouble: 1
+Test "cosh (0x1.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "cosh (0x2.c5e3acp+8)":
+double: 1
+idouble: 1
+
# cosh_downward
+Test "cosh_downward (-0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+Test "cosh_downward (0x1.6p+4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cosh_downward (0x1.7p+4)":
+double: 1
+idouble: 1
+Test "cosh_downward (0x2.c5e3bp+8)":
+double: 1
+idouble: 1
Test "cosh_downward (22)":
float: 1
ifloat: 1
@@ -5632,11 +6228,34 @@ ildouble: 1
ldouble: 1
# cosh_tonearest
+Test "cosh_tonearest (-0x2.c5e3acp+8)":
+double: 1
+idouble: 1
+Test "cosh_tonearest (0x1.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "cosh_tonearest (0x2.c5e3acp+8)":
+double: 1
+idouble: 1
Test "cosh_tonearest (22)":
ildouble: 1
ldouble: 1
# cosh_towardzero
+Test "cosh_towardzero (-0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+Test "cosh_towardzero (0x1.6p+4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "cosh_towardzero (0x1.7p+4)":
+double: 1
+idouble: 1
+Test "cosh_towardzero (0x2.c5e3bp+8)":
+double: 1
+idouble: 1
Test "cosh_towardzero (22)":
float: 1
ifloat: 1
@@ -5654,6 +6273,27 @@ ildouble: 1
ldouble: 1
# cosh_upward
+Test "cosh_upward (-0x2.c5e3acd2922a6p+8)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (-0x2.c5e3bp+8)":
+double: 1
+idouble: 1
+Test "cosh_upward (0x1.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (0x1.7p+4)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (0x1.8p+4)":
+double: 1
+idouble: 1
+Test "cosh_upward (0x2.c5e3acd2922a6p+8)":
+ildouble: 1
+ldouble: 1
+Test "cosh_upward (0x2.c5e3bp+8)":
+double: 1
+idouble: 1
Test "cosh_upward (22)":
ildouble: 1
ldouble: 1
@@ -5990,6 +6630,11 @@ ldouble: 1
Test "Imaginary part of: ctanh (0 + 0x3.243f6cp-1 i)":
float: 1
ifloat: 1
+Test "Imaginary part of: ctanh (0 + M_PI_4l i)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "Imaginary part of: ctanh (0 + pi/4 i)":
double: 1
idouble: 1
@@ -6114,14 +6759,26 @@ ildouble: 2
ldouble: 2
# erf
+Test "erf (-0x8p-4)":
+ildouble: 1
+ldouble: 1
+Test "erf (0x1.4p+0)":
+double: 1
+idouble: 1
Test "erf (1.25)":
double: 1
idouble: 1
# erfc
+Test "erfc (-0x8p-4)":
+float: 1
+ifloat: 1
Test "erfc (0.75)":
float: 1
ifloat: 1
+Test "erfc (0x1.4p+0)":
+ildouble: 1
+ldouble: 1
Test "erfc (0x1.f7303cp+1)":
double: 1
idouble: 1
@@ -6132,6 +6789,39 @@ float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "erfc (0x2p+0)":
+double: 1
+idouble: 1
+Test "erfc (0x3.ee6078p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "erfc (0x4.2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "erfc (0x6.4p+4)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fe8008p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fffd58p+0)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fffd59e26af37bc8p+0)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fffd59e26af37bcp+0)":
+ildouble: 1
+ldouble: 1
+Test "erfc (0x7.fffd6p+0)":
+float: 1
+ifloat: 1
Test "erfc (1.25)":
ildouble: 1
ldouble: 1
@@ -6145,6 +6835,15 @@ ildouble: 1
ldouble: 1
# exp10
+Test "exp10 (-0x1.31p+8)":
+double: 1
+idouble: 1
+Test "exp10 (-0x1p+0)":
+double: 1
+idouble: 1
+Test "exp10 (-0x2.4p+4)":
+double: 1
+idouble: 1
Test "exp10 (-1)":
double: 1
idouble: 1
@@ -6157,6 +6856,15 @@ idouble: 1
Test "exp10 (0.75)":
ildouble: 1
ldouble: 1
+Test "exp10 (0x2.4p+4)":
+double: 1
+idouble: 1
+Test "exp10 (0x3p+0)":
+double: 1
+idouble: 1
+Test "exp10 (0xcp-4)":
+ildouble: 1
+ldouble: 1
Test "exp10 (3)":
double: 1
idouble: 1
@@ -6165,6 +6873,26 @@ double: 1
idouble: 1
# exp_downward
+Test "exp_downward (0x2.c5cp+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_downward (0x2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_downward (0x3.e8p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_downward (0x3p+0)":
+double: 1
+idouble: 1
+Test "exp_downward (0x5.8b9028p+4)":
+double: 1
+idouble: 1
+Test "exp_downward (0xcp-4)":
+double: 1
+idouble: 1
Test "exp_downward (1)":
ildouble: 1
ldouble: 1
@@ -6180,6 +6908,50 @@ ildouble: 1
ldouble: 1
# exp_towardzero
+Test "exp_towardzero (-0x2.e870a4p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.e870a7e5e88c1f0cp+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.e870a7e5e88c1f1p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.e870a7e5e88c2p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.e870a7e5e88cp+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.e870a8p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.ebe224p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (-0x2.ebe228p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (0x2.c5cp+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (0x3.e8p+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_towardzero (0x3p+0)":
+double: 1
+idouble: 1
+Test "exp_towardzero (0x5.8b9028p+4)":
+double: 1
+idouble: 1
+Test "exp_towardzero (0xcp-4)":
+double: 1
+idouble: 1
Test "exp_towardzero (1)":
ildouble: 1
ldouble: 1
@@ -6195,17 +6967,86 @@ ildouble: 1
ldouble: 1
# exp_upward
+Test "exp_upward (-0x2.e870a4p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.e870a7e5e88c1f0cp+8)":
+ildouble: 1
+ldouble: 1
+Test "exp_upward (-0x2.e870a7e5e88c2p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.e870a7e5e88cp+8)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "exp_upward (-0x2.e870a8p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.ebe224p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.ebe227861639p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x2.ebe228p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0x4.d2p+8)":
+double: 1
+idouble: 1
+Test "exp_upward (-0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "exp_upward (-0xf.fffffp+124)":
+double: 1
+idouble: 1
+Test "exp_upward (0x1p+0)":
+double: 1
+idouble: 1
+Test "exp_upward (0x2.c5cp+8)":
+double: 1
+idouble: 1
+Test "exp_upward (0x3.2p+4)":
+double: 1
+idouble: 1
Test "exp_upward (1)":
float: 1
ifloat: 1
# expm1
+Test "expm1 (-0x1p-64)":
+ildouble: 1
+ldouble: 1
+Test "expm1 (-0x2.dp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1 (-0x4p-12)":
+ildouble: 1
+ldouble: 1
Test "expm1 (-45.0)":
ildouble: 1
ldouble: 1
Test "expm1 (0.75)":
double: 1
idouble: 1
+Test "expm1 (0x1.f4p+8)":
+double: 1
+idouble: 1
+Test "expm1 (0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1 (0x2.c5c4p+12)":
+ildouble: 1
+ldouble: 1
+Test "expm1 (0xcp-4)":
+double: 1
+idouble: 1
Test "expm1 (1)":
double: 1
float: 1
@@ -6218,15 +7059,358 @@ Test "expm1 (500.0)":
double: 1
idouble: 1
+# expm1_downward
+Test "expm1_downward (-0x1p-100)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x2.ep+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x4.9p+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x4.bp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x4p-4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x5p+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (-0x6.4p+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x1.f4p+8)":
+double: 1
+idouble: 1
+Test "expm1_downward (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x1p-100)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x1p-32)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x3.2p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x4p-52)":
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x7.fp+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_downward (0x8p-32)":
+ildouble: 1
+ldouble: 1
+
+# expm1_tonearest
+Test "expm1_tonearest (-0x1p-64)":
+ildouble: 1
+ldouble: 1
+Test "expm1_tonearest (-0x2.dp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_tonearest (-0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_tonearest (0x1.f4p+8)":
+double: 1
+idouble: 1
+Test "expm1_tonearest (0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_tonearest (0x2.c5c4p+12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_tonearest (0xcp-4)":
+double: 1
+idouble: 1
+
+# expm1_towardzero
+Test "expm1_towardzero (-0x1.86ap+16)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x1p-100)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x1p-20)":
+ildouble: 2
+ldouble: 2
+Test "expm1_towardzero (-0x1p-32)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x1p-64)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x2.71p+12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x2.dp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x3.e8p+8)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4.ap+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4.ep+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4.fp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0x4p-52)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "expm1_towardzero (-0x8p-32)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0xf.fffffffffffffffp+16380)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (-0xf.fffffp+124)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x1.f4p+8)":
+double: 1
+idouble: 1
+Test "expm1_towardzero (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x1p-100)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x1p-32)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x3.2p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x4p-52)":
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x7.fp+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_towardzero (0x8p-32)":
+ildouble: 1
+ldouble: 1
+
+# expm1_upward
+Test "expm1_upward (-0x1.86ap+16)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x1p-100)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x1p-20)":
+ildouble: 2
+ldouble: 2
+Test "expm1_upward (-0x1p-32)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x1p-64)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x2.71p+12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x2.dp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x3.e8p+8)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x4.ap+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x4.ep+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x4.fp+4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x4p-12)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0x4p-52)":
+float: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "expm1_upward (-0x8p-32)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0xf.fffffffffffffffp+16380)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (-0xf.fffffp+124)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (0x1.f4p+8)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (0x1p-100)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "expm1_upward (0x1p-32)":
+float: 1
+ifloat: 1
+Test "expm1_upward (0x1p-64)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "expm1_upward (0x4p-4)":
+ildouble: 1
+ldouble: 1
+Test "expm1_upward (0x4p-52)":
+float: 1
+ifloat: 1
+Test "expm1_upward (0x8p-32)":
+float: 1
+ifloat: 1
+
# gamma
Test "gamma (-0.5)":
ildouble: 1
ldouble: 1
+Test "gamma (-0x1p-10)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x1p-15)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "gamma (-0x1p-20)":
+double: 1
+idouble: 1
+Test "gamma (-0x1p-30)":
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x1p-5)":
+double: 1
+idouble: 1
+Test "gamma (-0x2p-16)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "gamma (-0x4p-12)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x4p-32)":
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x8p-4)":
+ildouble: 1
+ldouble: 1
+Test "gamma (-0x8p-8)":
+double: 1
+idouble: 1
Test "gamma (0.7)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "gamma (0x1.3333333333334p+0)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0x1p-10)":
+float: 1
+ifloat: 1
+Test "gamma (0x1p-30)":
+double: 1
+idouble: 1
+Test "gamma (0x1p-40)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0x4p-12)":
+float: 1
+ifloat: 1
+Test "gamma (0x4p-32)":
+double: 1
+idouble: 1
+Test "gamma (0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "gamma (0xb.333333333333p-4)":
+double: 1
+idouble: 1
+Test "gamma (0xb.33333p-4)":
+double: 1
+idouble: 1
Test "gamma (1.2)":
double: 1
float: 2
@@ -6242,6 +7426,42 @@ ifloat: 1
Test "hypot (-0.7, 12.4)":
float: 1
ifloat: 1
+Test "hypot (-0xb.3333333333338p-4, -0xc.6666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.3333333333338p-4, 0xc.6666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.33333p-4, -0xc.666666666666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.33333p-4, 0xc.666666666666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xb.33334p-4, -0xc.6666666666668p+0)":
+double: 1
+idouble: 1
+Test "hypot (-0xb.33334p-4, 0xc.6666666666668p+0)":
+double: 1
+idouble: 1
+Test "hypot (-0xc.6666666666668p+0, -0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.6666666666668p+0, -0xb.33334p-4)":
+double: 1
+idouble: 1
+Test "hypot (-0xc.6666666666668p+0, 0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.6666666666668p+0, 0xb.33334p-4)":
+double: 1
+idouble: 1
+Test "hypot (-0xc.666666666666p+0, -0xb.33333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (-0xc.666666666666p+0, 0xb.33333p-4)":
+ildouble: 1
+ldouble: 1
Test "hypot (-12.4, -0.7)":
float: 1
ifloat: 1
@@ -6254,6 +7474,54 @@ ifloat: 1
Test "hypot (0.7, 12.4)":
float: 1
ifloat: 1
+Test "hypot (0x1.23456789abcdef02p-500, 0x1.23456789abcdefp-500)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0x1.23456789abcdefp-500, 0x1.23456789abcdef02p-500)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0x1.23456789abcdefp-500, 0x1.23456789abcdfp-500)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0x1.23456789abcdfp-500, 0x1.23456789abcdefp-500)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.3333333333338p-4, -0xc.6666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.3333333333338p-4, 0xc.6666666666668p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.33333p-4, -0xc.666666666666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.33333p-4, 0xc.666666666666p+0)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xb.33334p-4, -0xc.6666666666668p+0)":
+double: 1
+idouble: 1
+Test "hypot (0xb.33334p-4, 0xc.6666666666668p+0)":
+double: 1
+idouble: 1
+Test "hypot (0xc.6666666666668p+0, -0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.6666666666668p+0, -0xb.33334p-4)":
+double: 1
+idouble: 1
+Test "hypot (0xc.6666666666668p+0, 0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.6666666666668p+0, 0xb.33334p-4)":
+double: 1
+idouble: 1
+Test "hypot (0xc.666666666666p+0, -0xb.33333p-4)":
+ildouble: 1
+ldouble: 1
+Test "hypot (0xc.666666666666p+0, 0xb.33333p-4)":
+ildouble: 1
+ldouble: 1
Test "hypot (12.4, -0.7)":
float: 1
ifloat: 1
@@ -6265,6 +7533,23 @@ ifloat: 1
Test "j0 (-0x1.001000001p+593)":
ildouble: 2
ldouble: 2
+Test "j0 (-0x2.002000002p+592)":
+ildouble: 2
+ldouble: 2
+Test "j0 (-0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "j0 (-0xf.fffffp+124)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "j0 (-4.0)":
double: 1
float: 1
@@ -6281,6 +7566,43 @@ ifloat: 2
Test "j0 (0x1p16382)":
ildouble: 1
ldouble: 1
+Test "j0 (0x2p+0)":
+float: 2
+ifloat: 2
+Test "j0 (0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "j0 (0x4p+16380)":
+ildouble: 1
+ldouble: 1
+Test "j0 (0x8p+0)":
+float: 1
+ifloat: 1
+Test "j0 (0xap+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "j0 (0xcp-4)":
+float: 1
+ifloat: 1
+Test "j0 (0xe.be71dp+104)":
+float: 2
+ifloat: 2
+Test "j0 (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "j0 (0xf.fffffp+124)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "j0 (10.0)":
double: 2
float: 1
@@ -6312,6 +7634,33 @@ idouble: 1
Test "j1 (0x1p16382)":
ildouble: 1
ldouble: 1
+Test "j1 (0x2p+0)":
+double: 1
+idouble: 1
+Test "j1 (0x4.ffcp+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "j1 (0x4p+16380)":
+ildouble: 1
+ldouble: 1
+Test "j1 (0x8p+0)":
+double: 1
+idouble: 1
+Test "j1 (0xap+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "j1 (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "j1 (0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "j1 (10.0)":
float: 2
ifloat: 2
@@ -6325,6 +7674,13 @@ double: 1
idouble: 1
# jn
+Test "jn (0, -0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
Test "jn (0, -4.0)":
double: 1
float: 1
@@ -6335,6 +7691,27 @@ ldouble: 2
Test "jn (0, 0.75)":
float: 1
ifloat: 1
+Test "jn (0, 0x2p+0)":
+float: 2
+ifloat: 2
+Test "jn (0, 0x4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "jn (0, 0x8p+0)":
+float: 1
+ifloat: 1
+Test "jn (0, 0xap+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "jn (0, 0xcp-4)":
+float: 1
+ifloat: 1
Test "jn (0, 10.0)":
double: 2
float: 1
@@ -6353,6 +7730,17 @@ ldouble: 2
Test "jn (0, 8.0)":
float: 1
ifloat: 1
+Test "jn (1, 0x2p+0)":
+double: 1
+idouble: 1
+Test "jn (1, 0x8p+0)":
+double: 1
+idouble: 1
+Test "jn (1, 0xap+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "jn (1, 10.0)":
float: 2
ifloat: 2
@@ -6364,6 +7752,9 @@ idouble: 1
Test "jn (1, 8.0)":
double: 1
idouble: 1
+Test "jn (10, -0x1p+0)":
+ildouble: 1
+ldouble: 1
Test "jn (10, -1.0)":
ildouble: 1
ldouble: 1
@@ -6379,6 +7770,35 @@ idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
+Test "jn (10, 0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (10, 0x2p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "jn (10, 0x2p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "jn (10, 0xap+0)":
+double: 4
+float: 2
+idouble: 4
+ifloat: 2
+ildouble: 2
+ldouble: 2
+Test "jn (10, 0xcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
Test "jn (10, 1.0)":
ildouble: 1
ldouble: 1
@@ -6403,6 +7823,61 @@ idouble: 2
ifloat: 2
ildouble: 1
ldouble: 1
+Test "jn (2, 0x1p127)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a4p+0)":
+float: 1
+ifloat: 1
+ildouble: 3
+ldouble: 3
+Test "jn (2, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a5d2e36801p+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (2, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a5d2e368p+0)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0x2.67a2a8p+0)":
+double: 1
+float: 3
+idouble: 1
+ifloat: 3
+ildouble: 2
+ldouble: 2
+Test "jn (2, 0x8p+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0xf.fffb1p+96)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "jn (2, 0xf.fffffp+124)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "jn (2, 2.4048255576957729)":
double: 2
float: 1
@@ -6410,6 +7885,9 @@ idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
+Test "jn (3, -0x1p+0)":
+ildouble: 1
+ldouble: 1
Test "jn (3, -1.0)":
ildouble: 1
ldouble: 1
@@ -6423,6 +7901,54 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "jn (3, 0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2.67a2a4p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2.67a2a5d2e36801p+0)":
+ildouble: 3
+ldouble: 3
+Test "jn (3, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2.67a2a5d2e368p+0)":
+double: 3
+idouble: 3
+Test "jn (3, 0x2.67a2a8p+0)":
+double: 1
+float: 3
+idouble: 1
+ifloat: 3
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0x2p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "jn (3, 0xap+0)":
+double: 3
+idouble: 3
+ildouble: 1
+ldouble: 1
+Test "jn (3, 0xcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "jn (3, 1.0)":
ildouble: 1
ldouble: 1
@@ -6443,11 +7969,59 @@ double: 3
idouble: 3
ildouble: 1
ldouble: 1
+Test "jn (4, 0x2.67a2a4p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (4, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (4, 0x2.67a2a5d2e36801p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (4, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+Test "jn (4, 0x2.67a2a5d2e368p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (4, 0x2.67a2a8p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "jn (4, 2.4048255576957729)":
double: 1
idouble: 1
ildouble: 2
ldouble: 2
+Test "jn (5, 0x2.67a2a4p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (5, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (5, 0x2.67a2a5d2e36801p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (5, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+Test "jn (5, 0x2.67a2a5d2e368p+0)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
+Test "jn (5, 0x2.67a2a8p+0)":
+float: 2
+ifloat: 2
Test "jn (5, 2.4048255576957729)":
double: 3
float: 1
@@ -6455,6 +8029,34 @@ idouble: 3
ifloat: 1
ildouble: 3
ldouble: 3
+Test "jn (6, 0x2.67a2a4p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "jn (6, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (6, 0x2.67a2a5d2e36801p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (6, 0x2.67a2a5d2e3682p+0)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
+Test "jn (6, 0x2.67a2a5d2e368p+0)":
+double: 4
+idouble: 4
+Test "jn (6, 0x2.67a2a8p+0)":
+double: 2
+float: 3
+idouble: 2
+ifloat: 3
+ildouble: 1
+ldouble: 1
Test "jn (6, 2.4048255576957729)":
double: 4
float: 3
@@ -6462,11 +8064,55 @@ idouble: 4
ifloat: 3
ildouble: 1
ldouble: 1
+Test "jn (7, 0x2.67a2a4p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "jn (7, 0x2.67a2a5d2e36800fcp+0)":
+ildouble: 2
+ldouble: 2
+Test "jn (7, 0x2.67a2a5d2e36801p+0)":
+ildouble: 1
+ldouble: 1
+Test "jn (7, 0x2.67a2a5d2e3682p+0)":
+ildouble: 4
+ldouble: 4
+Test "jn (7, 0x2.67a2a5d2e368p+0)":
+double: 3
+idouble: 3
+ildouble: 1
+ldouble: 1
+Test "jn (7, 0x2.67a2a8p+0)":
+double: 2
+float: 3
+idouble: 2
+ifloat: 3
Test "jn (7, 2.4048255576957729)":
double: 3
float: 5
idouble: 3
ifloat: 5
+Test "jn (8, 0x2.67a2a4p+0)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "jn (8, 0x2.67a2a5d2e3682p+0)":
+double: 1
+idouble: 1
+Test "jn (8, 0x2.67a2a5d2e368p+0)":
+double: 3
+idouble: 3
+Test "jn (8, 0x2.67a2a8p+0)":
+double: 2
+float: 4
+idouble: 2
+ifloat: 4
+ildouble: 1
+ldouble: 1
Test "jn (8, 2.4048255576957729)":
double: 3
float: 2
@@ -6474,6 +8120,28 @@ idouble: 3
ifloat: 2
ildouble: 2
ldouble: 2
+Test "jn (9, 0x2.67a2a4p+0)":
+double: 3
+float: 3
+idouble: 3
+ifloat: 3
+ildouble: 2
+ldouble: 2
+Test "jn (9, 0x2.67a2a5d2e3682p+0)":
+double: 4
+idouble: 4
+Test "jn (9, 0x2.67a2a5d2e368p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "jn (9, 0x2.67a2a8p+0)":
+double: 3
+float: 3
+idouble: 3
+ifloat: 3
+ildouble: 3
+ldouble: 3
Test "jn (9, 2.4048255576957729)":
double: 1
float: 2
@@ -6486,11 +8154,79 @@ ldouble: 2
Test "lgamma (-0.5)":
ildouble: 1
ldouble: 1
+Test "lgamma (-0x1p-10)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x1p-15)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "lgamma (-0x1p-20)":
+double: 1
+idouble: 1
+Test "lgamma (-0x1p-30)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x1p-5)":
+double: 1
+idouble: 1
+Test "lgamma (-0x2p-16)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "lgamma (-0x4p-12)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x4p-32)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x8p-4)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (-0x8p-8)":
+double: 1
+idouble: 1
Test "lgamma (0.7)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "lgamma (0x1.3333333333334p+0)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x1p-10)":
+float: 1
+ifloat: 1
+Test "lgamma (0x1p-30)":
+double: 1
+idouble: 1
+Test "lgamma (0x1p-40)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0x4p-12)":
+float: 1
+ifloat: 1
+Test "lgamma (0x4p-32)":
+double: 1
+idouble: 1
+Test "lgamma (0xb.333333333333334p-4)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0xb.3333333333338p-4)":
+ildouble: 1
+ldouble: 1
+Test "lgamma (0xb.333333333333p-4)":
+double: 1
+idouble: 1
+Test "lgamma (0xb.33333p-4)":
+double: 1
+idouble: 1
Test "lgamma (1.2)":
double: 1
float: 2
@@ -6499,6 +8235,20 @@ ifloat: 2
ildouble: 1
ldouble: 1
+# log
+Test "log (0x2.b7e154p+0)":
+ildouble: 1
+ldouble: 1
+Test "log (0x2.b7e15p+0)":
+float: 1
+ifloat: 1
+Test "log (0x5.e2d58d8b3bcdf1bp-4)":
+ildouble: 1
+ldouble: 1
+Test "log (0x5.e2d59p-4)":
+ildouble: 1
+ldouble: 1
+
# log10
Test "log10 (0.75)":
double: 1
@@ -6507,6 +8257,34 @@ idouble: 1
ifloat: 2
ildouble: 1
ldouble: 1
+Test "log10 (0x1.999998p-4)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x1.9999999999999998p-4)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x1.999999999999ap-4)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x2.b7e151628aed2a68p+0)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x2.b7e151628aed2p+0)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0x2.b7e154p+0)":
+float: 1
+ifloat: 1
+Test "log10 (0x4p-128)":
+ildouble: 1
+ldouble: 1
+Test "log10 (0xcp-4)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "log10 (e)":
float: 1
ifloat: 1
@@ -6517,6 +8295,12 @@ ldouble: 1
Test "log1p (-0.25)":
float: 1
ifloat: 1
+Test "log1p (-0x4p-4)":
+float: 1
+ifloat: 1
+Test "log1p (0x1.b7e15p+0)":
+float: 1
+ifloat: 1
# pow
Test "pow (0x0.ffffffp0, -0x1p24)":
@@ -6527,11 +8311,37 @@ ldouble: 1
Test "pow (0x0.ffffffp0, 0x1p24)":
float: 1
ifloat: 1
+Test "pow (0x1.0000000000001p+0, 0x2.468adp+60)":
+ildouble: 1
+ldouble: 1
+Test "pow (0x1.000002p+0, 0x1p+24)":
+float: 1
+ifloat: 1
Test "pow (0x1.000002p0, 0x1p24)":
float: 1
ifloat: 1
+Test "pow (0xf.ffffffffffff8p-4, 0x4.8d15ap+60)":
+ildouble: 1
+ldouble: 1
+Test "pow (0xf.fffffp-4, -0x1p+24)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "pow (0xf.fffffp-4, 0x1p+24)":
+float: 1
+ifloat: 1
# pow10
+Test "pow10 (-0x1.31p+8)":
+double: 1
+idouble: 1
+Test "pow10 (-0x1p+0)":
+double: 1
+idouble: 1
+Test "pow10 (-0x2.4p+4)":
+double: 1
+idouble: 1
Test "pow10 (-1)":
double: 1
idouble: 1
@@ -6544,6 +8354,15 @@ idouble: 1
Test "pow10 (0.75)":
ildouble: 1
ldouble: 1
+Test "pow10 (0x2.4p+4)":
+double: 1
+idouble: 1
+Test "pow10 (0x3p+0)":
+double: 1
+idouble: 1
+Test "pow10 (0xcp-4)":
+ildouble: 1
+ldouble: 1
Test "pow10 (3)":
double: 1
idouble: 1
@@ -6556,6 +8375,25 @@ Test "pow_downward (1.5, 1.03125)":
float: 1
ifloat: 1
+# pow_tonearest
+Test "pow_tonearest (0x1.0000000000001p+0, 0x2.468adp+60)":
+ildouble: 1
+ldouble: 1
+Test "pow_tonearest (0x1.000002p+0, 0x1p+24)":
+float: 1
+ifloat: 1
+Test "pow_tonearest (0xf.ffffffffffff8p-4, 0x4.8d15ap+60)":
+ildouble: 1
+ldouble: 1
+Test "pow_tonearest (0xf.fffffp-4, -0x1p+24)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "pow_tonearest (0xf.fffffp-4, 0x1p+24)":
+float: 1
+ifloat: 1
+
# pow_towardzero
Test "pow_towardzero (1.5, 1.03125)":
float: 1
@@ -6571,7 +8409,246 @@ Test "pow_upward (1.5, 1.03125)":
ildouble: 1
ldouble: 1
+# sin
+Test "sin (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+
# sin_downward
+Test "sin_downward (-0x1.921fb4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x1.921fb6p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "sin_downward (-0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b2c24p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91c16b9b3p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a91p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (-0x8.60a92p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x1p+28)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19e4p+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.1e19ep+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x2.553534p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x2.5535376715bap+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x2p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x3.be735c19be9fep+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735c19be9ffffcp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be735c19beap+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0x3.be735cp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.be736p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032a0004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032a2p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a0250032ap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2a04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3.ec2ap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x3p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0x4.093388p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237e153f7084p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237e153f708p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x4.1237e8p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.1237ep+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d08p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf00008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bf04p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d0ffa4bfp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4.c92d1p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x4p+48)":
+double: 1
+idouble: 1
+Test "sin_downward (0x5.fbec7477d4a80008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7477d4a84p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7477d4a8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec78p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5.fbec7p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x5p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x6p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0x8p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0x8p+1020)":
+double: 1
+idouble: 1
+Test "sin_downward (0x9p+0)":
+double: 1
+idouble: 1
+Test "sin_downward (0xap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "sin_downward (0xe.ef3af1b5d8p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_downward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "sin_downward (0xf.fffffp+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "sin_downward (1)":
ildouble: 1
ldouble: 1
@@ -6593,7 +8670,137 @@ ifloat: 1
ildouble: 1
ldouble: 1
+# sin_tonearest
+Test "sin_tonearest (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+
# sin_towardzero
+Test "sin_towardzero (-0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (-0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2.553534p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2.5535376715bap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x2p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x3.be735c19beap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x3.be735cp+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x3.ec2a0250032ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x3.ec2a04p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.093388p-4)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.1237e153f708p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0x4.1237e8p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.1237ep+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.c92d0ffa4bf04p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4.c92d0ffa4bfp+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x4p+48)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x5.fbec7p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x8p+1020)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0x9p+0)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xb.fa09ap+100)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0xc.d4966d92d1708p-4)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xc.d4966p-4)":
+double: 1
+idouble: 1
+Test "sin_towardzero (0xf.ffffcp+124)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_towardzero (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
Test "sin_towardzero (1)":
ildouble: 1
ldouble: 1
@@ -6622,6 +8829,258 @@ ildouble: 1
ldouble: 1
# sin_upward
+Test "sin_upward (-0x1.921fb4p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18468p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d1846ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d18p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb54442d19p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x1.921fb6p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x2p+64)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b28p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c23p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b2c24p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91c16b9b3p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a91p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (-0x8.60a92p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x1.921fb4p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1.921fb6p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1p+120)":
+double: 1
+idouble: 1
+Test "sin_upward (0x1p+28)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.5535376715b9ep+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x2.5535376715bap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x2.553538p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x2p+64)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9fep+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19be9ffffcp+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735c19beap+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be735cp+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.be736p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a0004p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032a2p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2a0250032ap+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x3.ec2a04p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3.ec2ap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x3p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.093385688a2d1508p-4)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.093385688a2d4p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.093385688a2dp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.09338p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.1237e153f7080008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237e153f7084p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237e153f708p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237e8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.1237ep+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d08p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bf00008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bf04p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4.c92d0ffa4bfp+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x4.c92d1p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x4p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a80008p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a84p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7477d4a8p+0)":
+ildouble: 2
+ldouble: 2
+Test "sin_upward (0x5.fbec78p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5.fbec7p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x5p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x6p+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0x7p+0)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8.60a91c16b9b3p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8.60a91p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8.60a92p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0x8p+124)":
+double: 1
+idouble: 1
+Test "sin_upward (0xap+0)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xb.fa09ap+100)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xc.d4966d92d171p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xc.d4967p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xcp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3af1b5d8008p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3af1b5d8p-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3afp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xe.ef3bp-4)":
+double: 1
+idouble: 1
+Test "sin_upward (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "sin_upward (0xf.fffffp+124)":
+ildouble: 1
+ldouble: 1
Test "sin_upward (1)":
float: 1
ifloat: 1
@@ -6661,6 +9120,12 @@ float: 1
ifloat: 1
# sincos
+Test "sincos (0x1.921fb4p+0) extra output 2":
+ildouble: 1
+ldouble: 1
+Test "sincos (0xf.ffffffffffff8p+1020) extra output 1":
+ildouble: 1
+ldouble: 1
Test "sincos (M_PI_6l*2.0) extra output 1":
double: 1
float: 1
@@ -6678,6 +9143,22 @@ ildouble: 1
ldouble: 1
# sinh_downward
+Test "sinh_downward (0x1.6p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0x1.7p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0x1.8p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_downward (0x8p-32)":
+ildouble: 1
+ldouble: 1
Test "sinh_downward (22)":
float: 1
ifloat: 1
@@ -6695,6 +9176,22 @@ ildouble: 2
ldouble: 2
# sinh_towardzero
+Test "sinh_towardzero (0x1.6p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_towardzero (0x1.7p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "sinh_towardzero (0x1.8p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_towardzero (0x8p-32)":
+ildouble: 1
+ldouble: 1
Test "sinh_towardzero (22)":
float: 1
ifloat: 1
@@ -6712,6 +9209,23 @@ ildouble: 2
ldouble: 2
# sinh_upward
+Test "sinh_upward (0x1.6p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_upward (0x1.7p+4)":
+ildouble: 1
+ldouble: 1
+Test "sinh_upward (0x1.8p+4)":
+double: 1
+idouble: 1
+Test "sinh_upward (0x8p-32)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "sinh_upward (0xcp-4)":
+ildouble: 1
+ldouble: 1
Test "sinh_upward (22)":
ildouble: 1
ldouble: 1
@@ -6720,14 +9234,209 @@ ildouble: 1
ldouble: 1
# tan
+Test "tan (0x1p+0)":
+ildouble: 1
+ldouble: 1
Test "tan (0x1p16383)":
ildouble: 1
ldouble: 1
+Test "tan (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "tan (0x2p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan (0x8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan (0x8p+16380)":
+ildouble: 1
+ldouble: 1
Test "tan (1e22)":
ildouble: 1
ldouble: 1
# tan_downward
+Test "tan_downward (-0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_downward (-0xc.908p-4)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90cp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90ep-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90f8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fcp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fd8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fdap-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fdbp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fdcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fdp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fep-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.90fp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.91p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.92p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.94p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.98p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.9p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (-0xc.ap-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x1p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x2.1e19e0c9bab24p+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x2p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x3p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x4p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x6p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x7p+0)":
+double: 1
+idouble: 1
+Test "tan_downward (0x8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0x8p+1020)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_downward (0xc.908p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fdaa22168c8p-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_downward (0xc.92p-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (0xc.94p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (0xc.98p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_downward (0xc.ap-4)":
+float: 1
+ifloat: 1
+Test "tan_downward (0xcp-4)":
+double: 1
+idouble: 1
Test "tan_downward (1)":
float: 1
ifloat: 1
@@ -6760,6 +9469,21 @@ float: 1
ifloat: 1
# tan_tonearest
+Test "tan_tonearest (0x1p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x2p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tan_tonearest (0x8p+16380)":
+ildouble: 1
+ldouble: 1
Test "tan_tonearest (1)":
ildouble: 1
ldouble: 1
@@ -6771,6 +9495,96 @@ ildouble: 1
ldouble: 1
# tan_towardzero
+Test "tan_towardzero (-0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.908p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_towardzero (-0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.94p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (-0xc.98p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x1p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x2.1e19e0c9bab24p+72)":
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x5p+0)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x7p+0)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_towardzero (0x9p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_towardzero (0xc.908p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_towardzero (0xc.90cp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fdaa22168c8p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.90fdp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.94p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xc.98p-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xcp-4)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "tan_towardzero (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "tan_towardzero (1)":
ildouble: 1
ldouble: 1
@@ -6803,6 +9617,196 @@ ildouble: 1
ldouble: 1
# tan_upward
+Test "tan_upward (-0xc.908p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90cp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90ep-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90f8p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fd8p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fdap-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fdbp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fdcp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fdp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fep-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.90fp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.91p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.92p-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.94p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.98p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.9p-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (-0xc.ap-4)":
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0x1p+0)":
+float: 1
+ifloat: 1
+Test "tan_upward (0x2.1e19e4p+72)":
+double: 1
+idouble: 1
+Test "tan_upward (0x2.1e19ep+72)":
+double: 1
+idouble: 1
+Test "tan_upward (0x2p+64)":
+double: 1
+idouble: 1
+Test "tan_upward (0x4p+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0x5p+0)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tan_upward (0x7p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0x8p+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0x9p+0)":
+double: 1
+idouble: 1
+Test "tan_upward (0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xc.908p-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (0xc.90ep-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90f8p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fd8p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fdap-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fdbp-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fdcp-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fep-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.90fp-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.91p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.92p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_upward (0xc.94p-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (0xc.98p-4)":
+float: 1
+ifloat: 1
+Test "tan_upward (0xc.9p-4)":
+double: 1
+idouble: 1
+Test "tan_upward (0xc.ap-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tan_upward (0xcp-4)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tan_upward (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "tan_upward (0xf.fffffp+124)":
+double: 1
+idouble: 1
Test "tan_upward (1)":
float: 1
ifloat: 1
@@ -6849,6 +9853,11 @@ ldouble: 1
Test "tgamma (-0x0.ffffffp0)":
float: 1
ifloat: 1
+Test "tgamma (-0x1.000002p+0)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x1.000002p0)":
double: 2
idouble: 2
@@ -6859,9 +9868,67 @@ float: 2
ifloat: 2
ildouble: 1
ldouble: 1
+Test "tgamma (-0x1.3ffffep+4)":
+float: 2
+ifloat: 2
+Test "tgamma (-0x1.3ffffffffffffffep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.3ffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.4000000000001p+4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x1.400002p+4)":
+float: 1
+ifloat: 1
Test "tgamma (-0x1.5800000080001p+7)":
ildouble: 2
ldouble: 2
+Test "tgamma (-0x1.8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.dffffep+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.dffffffffffffffep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.e000000000000002p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x1.e000000000001p+4)":
+double: 3
+idouble: 3
+Test "tgamma (-0x1.e00002p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x1.f3fffep+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.f3fffffffffffp+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.f400000000000002p+8)":
+ildouble: 3
+ldouble: 3
+Test "tgamma (-0x1.f40002p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x1.fffffffffffffp+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x1.fffffffffffffp0)":
ildouble: 1
ldouble: 1
@@ -6911,14 +9978,29 @@ ldouble: 3
Test "tgamma (-0x1p-24)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x2.0000000000000004p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x2.0000000000000004p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x2.0000000000002p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x2.0000000000002p0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x2.000004p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x2.000004p0)":
double: 2
float: 1
@@ -6926,6 +10008,71 @@ idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x2.146544p+4)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.7ffffcp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.7fffffffffffep+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8000000000002p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x2.800004p+4)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8ffffcp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8fffffffffffep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8ffffffffffffffcp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+Test "tgamma (-0x2.9000000000000004p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.9000000000002p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.900004p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.9ffffcp+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.a00004p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.edfffffffffffffcp+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.ee00000000002p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x2.fffffcp+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "tgamma (-0x2.fffffcp0)":
double: 1
float: 1
@@ -6978,22 +10125,78 @@ ldouble: 1
Test "tgamma (-0x2ed.fffffffffffffcp0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x3.0000000000002p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x3.0000000000002p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x3.000004p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
Test "tgamma (-0x3.000004p0)":
double: 2
float: 1
idouble: 2
ifloat: 1
+Test "tgamma (-0x3.1ffffcp+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x3.1fffffffffffep+4)":
+double: 3
+idouble: 3
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.2000000000000004p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.2000000000002p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.200004p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (-0x3.e7fffcp+8)":
+ildouble: 3
+ldouble: 3
+Test "tgamma (-0x3.e7fffffffffffffcp+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.e800000000000004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.e800000000002p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.e80004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x3.fffffcp+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "tgamma (-0x3.fffffcp0)":
double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (-0x3.ffffffffffffep+0)":
+double: 2
+idouble: 2
Test "tgamma (-0x3.ffffffffffffep0)":
double: 2
idouble: 2
+Test "tgamma (-0x3.fffffffffffffffcp+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x3.fffffffffffffffcp0)":
ildouble: 1
ldouble: 1
@@ -7014,12 +10217,39 @@ ldouble: 1
Test "tgamma (-0x3e8.00000000000004p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x4.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x4.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x4.000008p+0)":
+float: 1
+ifloat: 1
Test "tgamma (-0x4.000008p0)":
float: 1
ifloat: 1
+Test "tgamma (-0x4.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.e200000000000008p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.e200000000004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.e20008p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x4.fffff8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x4.fffff8p0)":
double: 1
float: 1
@@ -7027,18 +10257,34 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x4.ffffffffffffcp+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x4.ffffffffffffcp0)":
double: 1
idouble: 1
Test "tgamma (-0x4e2.00000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x5.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x5.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x5.0000000000004p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x5.0000000000004p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x5.000008p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x5.000008p0)":
double: 1
float: 2
@@ -7046,18 +10292,77 @@ idouble: 1
ifloat: 2
ildouble: 1
ldouble: 1
+Test "tgamma (-0x5.8p+0)":
+double: 1
+idouble: 1
+Test "tgamma (-0x5.dbfff8p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.dbffffffffffcp+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.dbfffffffffffff8p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.dc00000000004p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x5.ffffffffffffcp+0)":
+double: 1
+idouble: 1
Test "tgamma (-0x5.ffffffffffffcp0)":
double: 1
idouble: 1
Test "tgamma (-0x5db.fffffffffffff8p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x6.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x6.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x6.000008p+0)":
+float: 2
+ifloat: 2
Test "tgamma (-0x6.000008p0)":
float: 2
ifloat: 2
+Test "tgamma (-0x6.3ffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.3fffffffffffcp+4)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.3ffffffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.4000000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.4000000000004p+4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x6.400008p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x6.8p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (-0x6.d600000000000008p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x6.fffff8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 2
+ldouble: 2
Test "tgamma (-0x6.fffff8p0)":
double: 2
float: 1
@@ -7065,6 +10370,11 @@ idouble: 2
ifloat: 1
ildouble: 2
ldouble: 2
+Test "tgamma (-0x6.ffffffffffffcp+0)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x6.ffffffffffffcp0)":
double: 2
idouble: 2
@@ -7089,14 +10399,29 @@ ldouble: 2
Test "tgamma (-0x6d6.00000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x7.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.0000000000004p+0)":
+double: 3
+idouble: 3
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x7.0000000000004p0)":
double: 3
idouble: 3
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.000008p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x7.000008p0)":
double: 1
float: 1
@@ -7104,6 +10429,20 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x7.fffff8p+0)":
+double: 3
+float: 1
+idouble: 3
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x7.fffff8p0)":
double: 3
float: 1
@@ -7111,25 +10450,80 @@ idouble: 3
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x7.ffffffffffffcp+0)":
+double: 3
+idouble: 3
Test "tgamma (-0x7.ffffffffffffcp0)":
double: 3
idouble: 3
+Test "tgamma (-0x7.fffffffffffffff8p+0)":
+ildouble: 4
+ldouble: 4
Test "tgamma (-0x7.fffffffffffffff8p0)":
ildouble: 4
ldouble: 4
+Test "tgamma (-0x8.000000000000001p+0)":
+ildouble: 2
+ldouble: 2
Test "tgamma (-0x8.000000000000001p0)":
ildouble: 2
ldouble: 2
+Test "tgamma (-0x8.00001p+0)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x8.00001p0)":
double: 2
idouble: 2
ildouble: 1
ldouble: 1
+Test "tgamma (-0x8.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x8p-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (-0x9.5fffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x9.5ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x9.6000000000008p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0x9.60001p+4)":
+double: 1
+idouble: 1
+Test "tgamma (-0x9.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0x9.ffffffffffff8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0x9.ffffffffffff8p0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0x9.fffffp+0)":
+float: 1
+ifloat: 1
Test "tgamma (-0x9.fffffp0)":
float: 1
ifloat: 1
@@ -7144,14 +10538,99 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0xa.000000000000001p+0)":
+ildouble: 2
+ldouble: 2
Test "tgamma (-0xa.000000000000001p0)":
ildouble: 2
ldouble: 2
+Test "tgamma (-0xa.00001p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (-0xa.00001p0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (-0xa.c000000400008p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xa.c0001p+4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.4ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.500000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.5000000000008p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.5ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.600000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.6fffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.6ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.7fffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.7ffffffffffffffp+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.8000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.bffffffffffffffp+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.c00000000000001p+4)":
+ildouble: 3
+ldouble: 3
+Test "tgamma (-0xb.c000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.d00000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.d000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.dffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.e00000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.e000000000008p+4)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (-0xb.e0001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.effffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.effffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.f00000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xb.f000000000008p+4)":
+ildouble: 1
+ldouble: 1
Test "tgamma (-0xb4.ffffffffffffffp0)":
ildouble: 1
ldouble: 1
@@ -7200,6 +10679,30 @@ ldouble: 1
Test "tgamma (-0xbf.00000000000001p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (-0xf.9fffffffffff8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.9ffffffffffffffp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.a00000000000001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.a000000000008p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.a0001p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.ffffffffffff8p-4)":
+double: 1
+idouble: 1
+Test "tgamma (-0xf.fffffffffffffffp-4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (-0xf.fffffp-4)":
+float: 1
+ifloat: 1
Test "tgamma (-0xf9.ffffffffffffffp0)":
ildouble: 1
ldouble: 1
@@ -7261,14 +10764,52 @@ double: 1
float: 1
idouble: 1
ifloat: 1
+Test "tgamma (0x1.28p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x1.38p+4)":
+double: 2
+idouble: 2
+Test "tgamma (0x1.78p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x1.d8p+4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x1.e8p+4)":
+float: 1
+ifloat: 1
+Test "tgamma (0x1.fffffep+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x1.fffffep0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x1.fffffffffffffffep+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x1.fffffffffffffffep0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x1.fffffffffffffp+0)":
+double: 1
+idouble: 1
Test "tgamma (0x1.fffffffffffffp0)":
double: 1
idouble: 1
@@ -7281,67 +10822,164 @@ idouble: 1
Test "tgamma (0x1p-64)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x2.0000000000002p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.0000000000002p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x2.000004p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.000004p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x2.08p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x2.18p+4)":
+float: 1
+ifloat: 1
+Test "tgamma (0x2.28p+4)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.30a43cp+4)":
double: 1
float: 2
idouble: 1
ifloat: 2
+Test "tgamma (0x2.8p+0)":
+float: 2
+ifloat: 2
+Test "tgamma (0x2.fffffcp+0)":
+float: 3
+ifloat: 3
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.fffffcp0)":
float: 3
ifloat: 3
ildouble: 1
ldouble: 1
+Test "tgamma (0x2.ffffffffffffep+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x2.ffffffffffffep0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x3.0000000000002p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x3.0000000000002p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x3.8p+0)":
+float: 2
+ifloat: 2
+Test "tgamma (0x3.e8p+8)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x3.fffffcp+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x3.fffffcp0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x3.ffffffffffffep+0)":
+double: 1
+idouble: 1
Test "tgamma (0x3.ffffffffffffep0)":
double: 1
idouble: 1
+Test "tgamma (0x3.fffffffffffffffcp+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x3.fffffffffffffffcp0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x3p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x4.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x4.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x4.0000000000004p+0)":
+double: 1
+idouble: 1
Test "tgamma (0x4.0000000000004p0)":
double: 1
idouble: 1
+Test "tgamma (0x4.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (0x4.fffff8p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x4.fffff8p0)":
float: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x4.ffffffffffffcp+0)":
+double: 1
+idouble: 1
Test "tgamma (0x4.ffffffffffffcp0)":
double: 1
idouble: 1
+Test "tgamma (0x4.fffffffffffffff8p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x4.fffffffffffffff8p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x4p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x5.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x5.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x5.0000000000004p+0)":
+double: 1
+idouble: 1
Test "tgamma (0x5.0000000000004p0)":
double: 1
idouble: 1
+Test "tgamma (0x5.000008p+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "tgamma (0x5.000008p0)":
float: 3
ifloat: 3
ildouble: 1
ldouble: 1
+Test "tgamma (0x5.8p+0)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x5.fffff8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x5.fffff8p0)":
double: 1
float: 1
@@ -7349,36 +10987,84 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x5.ffffffffffffcp+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x5.ffffffffffffcp0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x6.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x6.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x6.0000000000004p+0)":
+double: 1
+idouble: 1
Test "tgamma (0x6.0000000000004p0)":
double: 1
idouble: 1
+Test "tgamma (0x6.000008p+0)":
+float: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "tgamma (0x6.000008p0)":
float: 2
ifloat: 2
ildouble: 1
ldouble: 1
+Test "tgamma (0x6.8p+0)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x6.db8c603359a94p+8)":
+ildouble: 2
+ldouble: 2
+Test "tgamma (0x6.fffff8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x6.fffff8p0)":
double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x6.ffffffffffffcp+0)":
+double: 3
+idouble: 3
Test "tgamma (0x6.ffffffffffffcp0)":
double: 3
idouble: 3
+Test "tgamma (0x6p+0)":
+float: 1
+ifloat: 1
+Test "tgamma (0x7.0000000000000008p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x7.0000000000000008p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x7.0000000000004p+0)":
+double: 4
+idouble: 4
+ildouble: 1
+ldouble: 1
Test "tgamma (0x7.0000000000004p0)":
double: 4
idouble: 4
ildouble: 1
ldouble: 1
+Test "tgamma (0x7.000008p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x7.000008p0)":
double: 1
float: 1
@@ -7386,6 +11072,20 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x7.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x7.fffff8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0x7.fffff8p0)":
double: 2
float: 1
@@ -7393,25 +11093,92 @@ idouble: 2
ifloat: 1
ildouble: 1
ldouble: 1
+Test "tgamma (0x7.ffffffffffffcp+0)":
+double: 2
+idouble: 2
Test "tgamma (0x7.ffffffffffffcp0)":
double: 2
idouble: 2
+Test "tgamma (0x7.fffffffffffffff8p+0)":
+ildouble: 3
+ldouble: 3
Test "tgamma (0x7.fffffffffffffff8p0)":
ildouble: 3
ldouble: 3
+Test "tgamma (0x7p+0)":
+double: 1
+idouble: 1
+Test "tgamma (0x8.000000000000001p+0)":
+ildouble: 1
+ldouble: 1
Test "tgamma (0x8.000000000000001p0)":
ildouble: 1
ldouble: 1
+Test "tgamma (0x8.00001p+0)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
Test "tgamma (0x8.00001p0)":
double: 2
idouble: 2
ildouble: 1
ldouble: 1
+Test "tgamma (0x8.8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+Test "tgamma (0x8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x8p-4)":
+float: 1
+ifloat: 1
+Test "tgamma (0x8p-56)":
+double: 1
+idouble: 1
+Test "tgamma (0x9.8p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "tgamma (0x9p+0)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
Test "tgamma (0xa.b9fd72b0fb238p+4)":
double: 1
idouble: 1
ildouble: 2
ldouble: 2
+Test "tgamma (0xa.b9fd72b0fb23a9dp+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0xa.b9fd72b0fb23a9ep+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0xa.b9fd7p+4)":
+double: 2
+idouble: 2
+ildouble: 1
+ldouble: 1
+Test "tgamma (0xa.b9fd8p+4)":
+ildouble: 1
+ldouble: 1
+Test "tgamma (0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "tgamma (0xb.333333333333p-4)":
+ildouble: 1
+ldouble: 1
Test "tgamma (10)":
double: 1
float: 1
@@ -7529,9 +11296,21 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "y0 (0x1.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
Test "y0 (0x1.ff00000000002p+840)":
double: 1
idouble: 1
+Test "y0 (0x1p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
Test "y0 (0x1p-10)":
double: 1
idouble: 1
@@ -7574,6 +11353,54 @@ ifloat: 1
Test "y0 (0x1p16382)":
ildouble: 1
ldouble: 1
+Test "y0 (0x2p-4)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4.ffcp+72)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p+16380)":
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p-112)":
+double: 1
+idouble: 1
+Test "y0 (0x4p-12)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p-32)":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0x4p-52)":
+float: 1
+ifloat: 1
+Test "y0 (0x4p-72)":
+double: 1
+idouble: 1
+Test "y0 (0x8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "y0 (0xap+0)":
+float: 1
+ifloat: 1
+Test "y0 (0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "y0 (0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "y0 (1.0)":
double: 2
float: 1
@@ -7618,12 +11445,63 @@ idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
+Test "y1 (0x1.8p+0)":
+float: 1
+ifloat: 1
Test "y1 (0x1p-10)":
double: 1
idouble: 1
Test "y1 (0x1p16382)":
ildouble: 1
ldouble: 1
+Test "y1 (0x2.002000002p+592)":
+ildouble: 2
+ldouble: 2
+Test "y1 (0x2p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "y1 (0x2p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "y1 (0x4p+16380)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0x4p-12)":
+double: 1
+idouble: 1
+Test "y1 (0x8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+Test "y1 (0x9.3f102p+96)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "y1 (0xap+0)":
+double: 3
+float: 1
+idouble: 3
+ifloat: 1
+Test "y1 (0xf.ffffffffffff8p+1020)":
+ildouble: 1
+ldouble: 1
+Test "y1 (0xf.fffffp+124)":
+double: 2
+float: 2
+idouble: 2
+ifloat: 2
+ildouble: 1
+ldouble: 1
Test "y1 (1.5)":
float: 1
ifloat: 1
@@ -7646,9 +11524,44 @@ idouble: 1
ifloat: 2
# yn
+Test "yn (-10, 0x1p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+Test "yn (-10, 1.0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
Test "yn (0, 0.125)":
ildouble: 1
ldouble: 1
+Test "yn (0, 0x1.8p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "yn (0, 0x1p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (0, 0x2p-4)":
+ildouble: 1
+ldouble: 1
+Test "yn (0, 0x8p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (0, 0xap+0)":
+float: 1
+ifloat: 1
Test "yn (0, 1.0)":
double: 2
float: 1
@@ -7681,6 +11594,31 @@ double: 1
idouble: 1
ildouble: 1
ldouble: 1
+Test "yn (1, 0x1.8p+0)":
+float: 1
+ifloat: 1
+Test "yn (1, 0x2p+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+Test "yn (1, 0x2p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "yn (1, 0x8p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+Test "yn (1, 0xap+0)":
+double: 3
+float: 1
+idouble: 3
+ifloat: 1
Test "yn (1, 1.5)":
float: 1
ifloat: 1
@@ -7713,6 +11651,42 @@ idouble: 1
ifloat: 2
ildouble: 4
ldouble: 4
+Test "yn (10, 0x1p+0)":
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
+Test "yn (10, 0x2p+0)":
+double: 2
+float: 1
+idouble: 2
+ifloat: 1
+Test "yn (10, 0x2p-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
+Test "yn (10, 0x4p-1024)":
+ildouble: 1
+ldouble: 1
+Test "yn (10, 0x4p-128)":
+ildouble: 1
+ldouble: 1
+Test "yn (10, 0x8p-972)":
+ildouble: 1
+ldouble: 1
+Test "yn (10, 0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "yn (10, 0xcp-4)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 4
+ldouble: 4
Test "yn (10, 1.0)":
double: 1
float: 2
@@ -7728,6 +11702,34 @@ double: 3
float: 1
idouble: 3
ifloat: 1
+Test "yn (2, 0x1.ffff62p+99)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0x1p127)":
+double: 1
+float: 3
+idouble: 1
+ifloat: 3
+Test "yn (2, 0x8p+124)":
+double: 1
+float: 3
+idouble: 1
+ifloat: 3
+Test "yn (2, 0xf.fffb1p+96)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "yn (2, 0xf.ffffffffffff8p+1020)":
+double: 1
+idouble: 1
+Test "yn (2, 0xf.fffffp+124)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
Test "yn (3, 0.125)":
double: 1
idouble: 1
@@ -7740,6 +11742,24 @@ idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
+Test "yn (3, 0x2p+0)":
+double: 1
+idouble: 1
+Test "yn (3, 0x2p-4)":
+double: 1
+idouble: 1
+ildouble: 1
+ldouble: 1
+Test "yn (3, 0xap+0)":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+Test "yn (3, 0xcp-4)":
+double: 1
+idouble: 1
+ildouble: 2
+ldouble: 2
Test "yn (3, 10.0)":
double: 1
float: 1
@@ -7762,6 +11782,10 @@ ifloat: 1
ildouble: 1
ldouble: 1
+Function: "acos_tonearest":
+ildouble: 1
+ldouble: 1
+
Function: "acos_towardzero":
double: 1
float: 1
@@ -7771,6 +11795,8 @@ ildouble: 1
ldouble: 1
Function: "acos_upward":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
@@ -7791,7 +11817,9 @@ ildouble: 1
ldouble: 1
Function: "asin_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
@@ -7799,6 +11827,8 @@ ldouble: 1
Function: "atan2":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "atanh":
float: 1
@@ -7896,7 +11926,9 @@ ifloat: 1
Function: "cbrt":
double: 1
+float: 1
idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -7985,40 +12017,64 @@ ildouble: 1
ldouble: 1
Function: "cos_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 2
+ldouble: 2
+
+Function: "cos_tonearest":
ildouble: 1
ldouble: 1
Function: "cos_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "cos_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 2
+ldouble: 2
+
+Function: "cosh":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Function: "cosh_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
Function: "cosh_tonearest":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
Function: "cosh_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
Function: "cosh_upward":
+double: 1
+idouble: 1
ildouble: 1
ldouble: 1
@@ -8207,6 +12263,8 @@ ldouble: 2
Function: "erf":
double: 1
idouble: 1
+ildouble: 1
+ldouble: 1
Function: "erfc":
double: 1
@@ -8223,20 +12281,28 @@ ildouble: 1
ldouble: 1
Function: "exp_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
Function: "exp_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
Function: "exp_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "expm1":
double: 1
@@ -8246,6 +12312,38 @@ ifloat: 1
ildouble: 1
ldouble: 1
+Function: "expm1_downward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
+Function: "expm1_tonearest":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
+Function: "expm1_towardzero":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+
+Function: "expm1_upward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
+ildouble: 2
+ldouble: 2
+
Function: "gamma":
double: 1
float: 2
@@ -8255,8 +12353,12 @@ ildouble: 1
ldouble: 1
Function: "hypot":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "j0":
double: 2
@@ -8279,8 +12381,8 @@ double: 4
float: 5
idouble: 4
ifloat: 5
-ildouble: 3
-ldouble: 3
+ildouble: 4
+ldouble: 4
Function: "lgamma":
double: 1
@@ -8290,6 +12392,12 @@ ifloat: 2
ildouble: 1
ldouble: 1
+Function: "log":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
Function: "log10":
double: 1
float: 2
@@ -8301,6 +12409,8 @@ ldouble: 1
Function: "log1p":
float: 1
ifloat: 1
+ildouble: 1
+ldouble: 1
Function: "pow":
float: 1
@@ -8318,6 +12428,12 @@ Function: "pow_downward":
float: 1
ifloat: 1
+Function: "pow_tonearest":
+float: 1
+ifloat: 1
+ildouble: 1
+ldouble: 1
+
Function: "pow_towardzero":
float: 1
ifloat: 1
@@ -8328,23 +12444,37 @@ ifloat: 1
ildouble: 1
ldouble: 1
+Function: "sin":
+ildouble: 1
+ldouble: 1
+
Function: "sin_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
+ildouble: 2
+ldouble: 2
+
+Function: "sin_tonearest":
ildouble: 1
ldouble: 1
Function: "sin_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "sin_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
-ildouble: 1
-ldouble: 1
+ildouble: 2
+ldouble: 2
Function: "sincos":
double: 1
@@ -8359,18 +12489,26 @@ ildouble: 1
ldouble: 1
Function: "sinh_downward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
Function: "sinh_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
Function: "sinh_upward":
+double: 1
+float: 1
+idouble: 1
+ifloat: 1
ildouble: 1
ldouble: 1
@@ -8381,8 +12519,10 @@ ildouble: 1
ldouble: 1
Function: "tan_downward":
-float: 1
-ifloat: 1
+double: 1
+float: 2
+idouble: 1
+ifloat: 2
ildouble: 1
ldouble: 1
@@ -8391,13 +12531,17 @@ ildouble: 1
ldouble: 1
Function: "tan_towardzero":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 1
ldouble: 1
Function: "tan_upward":
+double: 1
float: 1
+idouble: 1
ifloat: 1
ildouble: 2
ldouble: 2
@@ -8428,9 +12572,9 @@ ldouble: 2
Function: "yn":
double: 3
-float: 2
+float: 3
idouble: 3
-ifloat: 2
+ifloat: 3
ildouble: 4
ldouble: 4
diff --git a/sysdeps/x86_64/fpu/printf_fphex.c b/sysdeps/x86_64/fpu/printf_fphex.c
index c85d1f79fb..be55f9cf6b 100644
--- a/sysdeps/x86_64/fpu/printf_fphex.c
+++ b/sysdeps/x86_64/fpu/printf_fphex.c
@@ -25,10 +25,11 @@ do { \
/* The "strange" 80 bit format on ix86 and m68k has an explicit \
leading digit in the 64 bit mantissa. */ \
unsigned long long int num; \
+ union ieee854_long_double u; \
+ u.d = fpnum.ldbl; \
\
- \
- num = (((unsigned long long int) fpnum.ldbl.ieee.mantissa0) << 32 \
- | fpnum.ldbl.ieee.mantissa1); \
+ num = (((unsigned long long int) u.ieee.mantissa0) << 32 \
+ | u.ieee.mantissa1); \
\
zero_mantissa = num == 0; \
\
@@ -61,7 +62,7 @@ do { \
\
/* We have 3 bits from the mantissa in the leading nibble. \
Therefore we are here using `IEEE854_LONG_DOUBLE_BIAS + 3'. */ \
- exponent = fpnum.ldbl.ieee.exponent; \
+ exponent = u.ieee.exponent; \
\
if (exponent == 0) \
{ \
diff --git a/sysdeps/x86_64/memset.S b/sysdeps/x86_64/memset.S
index 6c69f4b442..9b1de89d98 100644
--- a/sysdeps/x86_64/memset.S
+++ b/sysdeps/x86_64/memset.S
@@ -19,10 +19,6 @@
#include <sysdep.h>
-#ifndef ALIGN
-# define ALIGN(n) .p2align n
-#endif
-
.text
#if !defined NOT_IN_libc
ENTRY(__bzero)
@@ -71,12 +67,12 @@ L(entry_from_bzero):
L(return):
rep
ret
- ALIGN (4)
+ .p2align 4
L(between_32_64_bytes):
movdqu %xmm8, 16(%rdi)
movdqu %xmm8, -32(%rdi,%rdx)
ret
- ALIGN (4)
+ .p2align 4
L(loop_start):
leaq 64(%rdi), %rcx
movdqu %xmm8, (%rdi)
@@ -92,7 +88,7 @@ L(loop_start):
andq $-64, %rdx
cmpq %rdx, %rcx
je L(return)
- ALIGN (4)
+ .p2align 4
L(loop):
movdqa %xmm8, (%rcx)
movdqa %xmm8, 16(%rcx)
diff --git a/sysdeps/x86_64/multiarch/Makefile b/sysdeps/x86_64/multiarch/Makefile
index 203d16eed3..57a3c13e8a 100644
--- a/sysdeps/x86_64/multiarch/Makefile
+++ b/sysdeps/x86_64/multiarch/Makefile
@@ -6,25 +6,24 @@ endif
ifeq ($(subdir),string)
-sysdep_routines += strncat-c stpncpy-c strncpy-c strcmp-ssse3 strncmp-ssse3 \
- strend-sse4 memcmp-sse4 memcpy-ssse3 memcpy-sse2-unaligned mempcpy-ssse3 \
+sysdep_routines += strncat-c stpncpy-c strncpy-c strcmp-ssse3 \
+ strcmp-sse2-unaligned strncmp-ssse3 \
+ memcmp-sse4 memcpy-ssse3 \
+ memcpy-sse2-unaligned mempcpy-ssse3 \
memmove-ssse3 memcpy-ssse3-back mempcpy-ssse3-back \
- memmove-ssse3-back strcasestr-nonascii strcasecmp_l-ssse3 \
+ memmove-ssse3-back strcasecmp_l-ssse3 \
strncase_l-ssse3 strcat-ssse3 strncat-ssse3\
strcpy-ssse3 strncpy-ssse3 stpcpy-ssse3 stpncpy-ssse3 \
strcpy-sse2-unaligned strncpy-sse2-unaligned \
stpcpy-sse2-unaligned stpncpy-sse2-unaligned \
strcat-sse2-unaligned strncat-sse2-unaligned \
- strrchr-sse2-no-bsf strchr-sse2-no-bsf memcmp-ssse3
+ strchr-sse2-no-bsf memcmp-ssse3 strstr-sse2-unaligned
ifeq (yes,$(config-cflags-sse4))
-sysdep_routines += strcspn-c strpbrk-c strspn-c strstr-c strcasestr-c varshift
+sysdep_routines += strcspn-c strpbrk-c strspn-c varshift
CFLAGS-varshift.c += -msse4
CFLAGS-strcspn-c.c += -msse4
CFLAGS-strpbrk-c.c += -msse4
CFLAGS-strspn-c.c += -msse4
-CFLAGS-strstr.c += -msse4
-CFLAGS-strcasestr.c += -msse4
-CFLAGS-strcasestr-nonascii.c += -msse4
endif
endif
diff --git a/sysdeps/x86_64/multiarch/ifunc-impl-list.c b/sysdeps/x86_64/multiarch/ifunc-impl-list.c
index d0992e113f..3344889ce3 100644
--- a/sysdeps/x86_64/multiarch/ifunc-impl-list.c
+++ b/sysdeps/x86_64/multiarch/ifunc-impl-list.c
@@ -98,8 +98,6 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
/* Support sysdeps/x86_64/multiarch/strcasestr.c. */
IFUNC_IMPL (i, name, strcasestr,
- IFUNC_IMPL_ADD (array, i, strcasestr, HAS_SSE4_2,
- __strcasestr_sse42)
IFUNC_IMPL_ADD (array, i, strcasestr, 1, __strcasestr_sse2))
/* Support sysdeps/x86_64/multiarch/strcat.S. */
@@ -110,7 +108,6 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
/* Support sysdeps/x86_64/multiarch/strchr.S. */
IFUNC_IMPL (i, name, strchr,
- IFUNC_IMPL_ADD (array, i, strchr, HAS_SSE4_2, __strchr_sse42)
IFUNC_IMPL_ADD (array, i, strchr, 1, __strchr_sse2_no_bsf)
IFUNC_IMPL_ADD (array, i, strchr, 1, __strchr_sse2))
@@ -118,6 +115,7 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
IFUNC_IMPL (i, name, strcmp,
IFUNC_IMPL_ADD (array, i, strcmp, HAS_SSE4_2, __strcmp_sse42)
IFUNC_IMPL_ADD (array, i, strcmp, HAS_SSSE3, __strcmp_ssse3)
+ IFUNC_IMPL_ADD (array, i, strcmp, 1, __strcmp_sse2_unaligned)
IFUNC_IMPL_ADD (array, i, strcmp, 1, __strcmp_sse2))
/* Support sysdeps/x86_64/multiarch/strcpy.S. */
@@ -176,21 +174,15 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array,
__strpbrk_sse42)
IFUNC_IMPL_ADD (array, i, strpbrk, 1, __strpbrk_sse2))
- /* Support sysdeps/x86_64/multiarch/strrchr.S. */
- IFUNC_IMPL (i, name, strrchr,
- IFUNC_IMPL_ADD (array, i, strrchr, HAS_SSE4_2,
- __strrchr_sse42)
- IFUNC_IMPL_ADD (array, i, strrchr, 1, __strrchr_sse2_no_bsf)
- IFUNC_IMPL_ADD (array, i, strrchr, 1, __strrchr_sse2))
/* Support sysdeps/x86_64/multiarch/strspn.S. */
IFUNC_IMPL (i, name, strspn,
IFUNC_IMPL_ADD (array, i, strspn, HAS_SSE4_2, __strspn_sse42)
IFUNC_IMPL_ADD (array, i, strspn, 1, __strspn_sse2))
- /* Support sysdeps/x86_64/multiarch/strstr-c.c. */
+ /* Support sysdeps/x86_64/multiarch/strstr.c. */
IFUNC_IMPL (i, name, strstr,
- IFUNC_IMPL_ADD (array, i, strstr, HAS_SSE4_2, __strstr_sse42)
+ IFUNC_IMPL_ADD (array, i, strstr, 1, __strstr_sse2_unaligned)
IFUNC_IMPL_ADD (array, i, strstr, 1, __strstr_sse2))
/* Support sysdeps/x86_64/multiarch/wcscpy.S. */
diff --git a/sysdeps/x86_64/multiarch/memcmp-sse4.S b/sysdeps/x86_64/multiarch/memcmp-sse4.S
index 1ed4200f4c..d7b147e5ce 100644
--- a/sysdeps/x86_64/multiarch/memcmp-sse4.S
+++ b/sysdeps/x86_64/multiarch/memcmp-sse4.S
@@ -25,10 +25,6 @@
# define MEMCMP __memcmp_sse4_1
# endif
-# ifndef ALIGN
-# define ALIGN(n) .p2align n
-# endif
-
# define JMPTBL(I, B) (I - B)
# define BRANCH_TO_JMPTBL_ENTRY(TABLE, INDEX, SCALE) \
@@ -60,7 +56,7 @@ ENTRY (MEMCMP)
BRANCH_TO_JMPTBL_ENTRY(L(table_64bytes), %rdx, 4)
# ifndef USE_AS_WMEMCMP
- ALIGN (4)
+ .p2align 4
L(firstbyte):
movzbl (%rdi), %eax
movzbl (%rsi), %ecx
@@ -68,7 +64,7 @@ L(firstbyte):
ret
# endif
- ALIGN (4)
+ .p2align 4
L(79bytesormore):
movdqu (%rsi), %xmm1
movdqu (%rdi), %xmm2
@@ -316,7 +312,7 @@ L(less32bytesin256):
add %rdx, %rdi
BRANCH_TO_JMPTBL_ENTRY(L(table_64bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(512bytesormore):
# ifdef DATA_CACHE_SIZE_HALF
mov $DATA_CACHE_SIZE_HALF, %R8_LP
@@ -329,7 +325,7 @@ L(512bytesormore):
cmp %r8, %rdx
ja L(L2_L3_cache_unaglined)
sub $64, %rdx
- ALIGN (4)
+ .p2align 4
L(64bytesormore_loop):
movdqu (%rdi), %xmm2
pxor (%rsi), %xmm2
@@ -361,7 +357,7 @@ L(64bytesormore_loop):
L(L2_L3_cache_unaglined):
sub $64, %rdx
- ALIGN (4)
+ .p2align 4
L(L2_L3_unaligned_128bytes_loop):
prefetchnta 0x1c0(%rdi)
prefetchnta 0x1c0(%rsi)
@@ -396,7 +392,7 @@ L(L2_L3_unaligned_128bytes_loop):
/*
* This case is for machines which are sensitive for unaligned instructions.
*/
- ALIGN (4)
+ .p2align 4
L(2aligned):
cmp $128, %rdx
ja L(128bytesormorein2aligned)
@@ -444,7 +440,7 @@ L(less32bytesin64in2alinged):
add %rdx, %rdi
BRANCH_TO_JMPTBL_ENTRY(L(table_64bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(128bytesormorein2aligned):
cmp $512, %rdx
ja L(512bytesormorein2aligned)
@@ -519,7 +515,7 @@ L(less32bytesin128in2aligned):
add %rdx, %rdi
BRANCH_TO_JMPTBL_ENTRY(L(table_64bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(256bytesormorein2aligned):
sub $256, %rdx
@@ -632,7 +628,7 @@ L(less32bytesin256in2alinged):
add %rdx, %rdi
BRANCH_TO_JMPTBL_ENTRY(L(table_64bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(512bytesormorein2aligned):
# ifdef DATA_CACHE_SIZE_HALF
mov $DATA_CACHE_SIZE_HALF, %R8_LP
@@ -646,7 +642,7 @@ L(512bytesormorein2aligned):
ja L(L2_L3_cache_aglined)
sub $64, %rdx
- ALIGN (4)
+ .p2align 4
L(64bytesormore_loopin2aligned):
movdqa (%rdi), %xmm2
pxor (%rsi), %xmm2
@@ -678,7 +674,7 @@ L(64bytesormore_loopin2aligned):
L(L2_L3_cache_aglined):
sub $64, %rdx
- ALIGN (4)
+ .p2align 4
L(L2_L3_aligned_128bytes_loop):
prefetchnta 0x1c0(%rdi)
prefetchnta 0x1c0(%rsi)
@@ -711,7 +707,7 @@ L(L2_L3_aligned_128bytes_loop):
BRANCH_TO_JMPTBL_ENTRY(L(table_64bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(64bytesormore_loop_end):
add $16, %rdi
add $16, %rsi
@@ -806,7 +802,7 @@ L(8bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(12bytes):
mov -12(%rdi), %rax
mov -12(%rsi), %rcx
@@ -827,7 +823,7 @@ L(0bytes):
# ifndef USE_AS_WMEMCMP
/* unreal case for wmemcmp */
- ALIGN (4)
+ .p2align 4
L(65bytes):
movdqu -65(%rdi), %xmm1
movdqu -65(%rsi), %xmm2
@@ -864,7 +860,7 @@ L(9bytes):
sub %edx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(13bytes):
mov -13(%rdi), %rax
mov -13(%rsi), %rcx
@@ -877,7 +873,7 @@ L(13bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(5bytes):
mov -5(%rdi), %eax
mov -5(%rsi), %ecx
@@ -888,7 +884,7 @@ L(5bytes):
sub %edx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(66bytes):
movdqu -66(%rdi), %xmm1
movdqu -66(%rsi), %xmm2
@@ -929,7 +925,7 @@ L(10bytes):
sub %ecx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(14bytes):
mov -14(%rdi), %rax
mov -14(%rsi), %rcx
@@ -942,7 +938,7 @@ L(14bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(6bytes):
mov -6(%rdi), %eax
mov -6(%rsi), %ecx
@@ -958,7 +954,7 @@ L(2bytes):
sub %ecx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(67bytes):
movdqu -67(%rdi), %xmm2
movdqu -67(%rsi), %xmm1
@@ -997,7 +993,7 @@ L(11bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(15bytes):
mov -15(%rdi), %rax
mov -15(%rsi), %rcx
@@ -1010,7 +1006,7 @@ L(15bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(7bytes):
mov -7(%rdi), %eax
mov -7(%rsi), %ecx
@@ -1023,7 +1019,7 @@ L(7bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(3bytes):
movzwl -3(%rdi), %eax
movzwl -3(%rsi), %ecx
@@ -1036,7 +1032,7 @@ L(1bytes):
ret
# endif
- ALIGN (4)
+ .p2align 4
L(68bytes):
movdqu -68(%rdi), %xmm2
movdqu -68(%rsi), %xmm1
@@ -1079,7 +1075,7 @@ L(20bytes):
# ifndef USE_AS_WMEMCMP
/* unreal cases for wmemcmp */
- ALIGN (4)
+ .p2align 4
L(69bytes):
movdqu -69(%rsi), %xmm1
movdqu -69(%rdi), %xmm2
@@ -1115,7 +1111,7 @@ L(21bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(70bytes):
movdqu -70(%rsi), %xmm1
movdqu -70(%rdi), %xmm2
@@ -1151,7 +1147,7 @@ L(22bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(71bytes):
movdqu -71(%rsi), %xmm1
movdqu -71(%rdi), %xmm2
@@ -1188,7 +1184,7 @@ L(23bytes):
ret
# endif
- ALIGN (4)
+ .p2align 4
L(72bytes):
movdqu -72(%rsi), %xmm1
movdqu -72(%rdi), %xmm2
@@ -1227,7 +1223,7 @@ L(24bytes):
# ifndef USE_AS_WMEMCMP
/* unreal cases for wmemcmp */
- ALIGN (4)
+ .p2align 4
L(73bytes):
movdqu -73(%rsi), %xmm1
movdqu -73(%rdi), %xmm2
@@ -1265,7 +1261,7 @@ L(25bytes):
sub %ecx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(74bytes):
movdqu -74(%rsi), %xmm1
movdqu -74(%rdi), %xmm2
@@ -1302,7 +1298,7 @@ L(26bytes):
movzwl -2(%rsi), %ecx
jmp L(diffin2bytes)
- ALIGN (4)
+ .p2align 4
L(75bytes):
movdqu -75(%rsi), %xmm1
movdqu -75(%rdi), %xmm2
@@ -1342,7 +1338,7 @@ L(27bytes):
xor %eax, %eax
ret
# endif
- ALIGN (4)
+ .p2align 4
L(76bytes):
movdqu -76(%rsi), %xmm1
movdqu -76(%rdi), %xmm2
@@ -1388,7 +1384,7 @@ L(28bytes):
# ifndef USE_AS_WMEMCMP
/* unreal cases for wmemcmp */
- ALIGN (4)
+ .p2align 4
L(77bytes):
movdqu -77(%rsi), %xmm1
movdqu -77(%rdi), %xmm2
@@ -1430,7 +1426,7 @@ L(29bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(78bytes):
movdqu -78(%rsi), %xmm1
movdqu -78(%rdi), %xmm2
@@ -1470,7 +1466,7 @@ L(30bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(79bytes):
movdqu -79(%rsi), %xmm1
movdqu -79(%rdi), %xmm2
@@ -1510,7 +1506,7 @@ L(31bytes):
xor %eax, %eax
ret
# endif
- ALIGN (4)
+ .p2align 4
L(64bytes):
movdqu -64(%rdi), %xmm2
movdqu -64(%rsi), %xmm1
@@ -1548,7 +1544,7 @@ L(32bytes):
/*
* Aligned 8 bytes to avoid 2 branch "taken" in one 16 alinged code block.
*/
- ALIGN (3)
+ .p2align 3
L(less16bytes):
movsbq %dl, %rdx
mov (%rsi, %rdx), %rcx
@@ -1585,7 +1581,7 @@ L(diffin2bytes):
sub %ecx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(end):
and $0xff, %eax
and $0xff, %ecx
@@ -1599,7 +1595,7 @@ L(end):
neg %eax
ret
- ALIGN (4)
+ .p2align 4
L(nequal_bigger):
ret
@@ -1611,7 +1607,7 @@ L(unreal_case):
END (MEMCMP)
.section .rodata.sse4.1,"a",@progbits
- ALIGN (3)
+ .p2align 3
# ifndef USE_AS_WMEMCMP
L(table_64bytes):
.int JMPTBL (L(0bytes), L(table_64bytes))
diff --git a/sysdeps/x86_64/multiarch/memcmp-ssse3.S b/sysdeps/x86_64/multiarch/memcmp-ssse3.S
index e319df926e..e04f918dff 100644
--- a/sysdeps/x86_64/multiarch/memcmp-ssse3.S
+++ b/sysdeps/x86_64/multiarch/memcmp-ssse3.S
@@ -25,10 +25,6 @@
# define MEMCMP __memcmp_ssse3
# endif
-# ifndef ALIGN
-# define ALIGN(n) .p2align n
-# endif
-
/* Warning!
wmemcmp has to use SIGNED comparison for elements.
memcmp has to use UNSIGNED comparison for elemnts.
@@ -50,7 +46,7 @@ ENTRY (MEMCMP)
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
/* ECX >= 32. */
L(48bytesormore):
movdqu (%rdi), %xmm3
@@ -90,7 +86,7 @@ L(48bytesormore):
je L(shr_6)
jmp L(shr_7)
- ALIGN (2)
+ .p2align 2
L(next_unaligned_table):
cmp $8, %edx
je L(shr_8)
@@ -117,7 +113,7 @@ L(next_unaligned_table):
jmp L(shr_12)
# endif
- ALIGN (4)
+ .p2align 4
L(shr_0):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -137,7 +133,7 @@ L(shr_0):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_0_gobble):
movdqa (%rsi), %xmm0
xor %eax, %eax
@@ -180,7 +176,7 @@ L(next):
# ifndef USE_AS_WMEMCMP
- ALIGN (4)
+ .p2align 4
L(shr_1):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -207,7 +203,7 @@ L(shr_1):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_1_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -258,7 +254,7 @@ L(shr_1_gobble_next):
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_2):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -285,7 +281,7 @@ L(shr_2):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_2_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -335,7 +331,7 @@ L(shr_2_gobble_next):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_3):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -362,7 +358,7 @@ L(shr_3):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_3_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -414,7 +410,7 @@ L(shr_3_gobble_next):
# endif
- ALIGN (4)
+ .p2align 4
L(shr_4):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -441,7 +437,7 @@ L(shr_4):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_4_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -493,7 +489,7 @@ L(shr_4_gobble_next):
# ifndef USE_AS_WMEMCMP
- ALIGN (4)
+ .p2align 4
L(shr_5):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -520,7 +516,7 @@ L(shr_5):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_5_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -570,7 +566,7 @@ L(shr_5_gobble_next):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_6):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -597,7 +593,7 @@ L(shr_6):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_6_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -647,7 +643,7 @@ L(shr_6_gobble_next):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_7):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -674,7 +670,7 @@ L(shr_7):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_7_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -726,7 +722,7 @@ L(shr_7_gobble_next):
# endif
- ALIGN (4)
+ .p2align 4
L(shr_8):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -753,7 +749,7 @@ L(shr_8):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_8_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -805,7 +801,7 @@ L(shr_8_gobble_next):
# ifndef USE_AS_WMEMCMP
- ALIGN (4)
+ .p2align 4
L(shr_9):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -832,7 +828,7 @@ L(shr_9):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_9_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -882,7 +878,7 @@ L(shr_9_gobble_next):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_10):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -909,7 +905,7 @@ L(shr_10):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_10_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -959,7 +955,7 @@ L(shr_10_gobble_next):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_11):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -986,7 +982,7 @@ L(shr_11):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_11_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -1038,7 +1034,7 @@ L(shr_11_gobble_next):
# endif
- ALIGN (4)
+ .p2align 4
L(shr_12):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -1065,7 +1061,7 @@ L(shr_12):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_12_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -1117,7 +1113,7 @@ L(shr_12_gobble_next):
# ifndef USE_AS_WMEMCMP
- ALIGN (4)
+ .p2align 4
L(shr_13):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -1144,7 +1140,7 @@ L(shr_13):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_13_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -1194,7 +1190,7 @@ L(shr_13_gobble_next):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_14):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -1221,7 +1217,7 @@ L(shr_14):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_14_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -1271,7 +1267,7 @@ L(shr_14_gobble_next):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_15):
cmp $80, %rcx
lea -48(%rcx), %rcx
@@ -1298,7 +1294,7 @@ L(shr_15):
add %rcx, %rdi
jmp L(less48bytes)
- ALIGN (4)
+ .p2align 4
L(shr_15_gobble):
sub $32, %rcx
movdqa 16(%rsi), %xmm0
@@ -1348,7 +1344,7 @@ L(shr_15_gobble_next):
add %rcx, %rdi
jmp L(less48bytes)
# endif
- ALIGN (4)
+ .p2align 4
L(exit):
pmovmskb %xmm1, %r8d
sub $0xffff, %r8d
@@ -1389,56 +1385,56 @@ L(less16bytes):
sub %edx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(Byte16):
movzbl -16(%rdi), %eax
movzbl -16(%rsi), %edx
sub %edx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(Byte17):
movzbl -15(%rdi), %eax
movzbl -15(%rsi), %edx
sub %edx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(Byte18):
movzbl -14(%rdi), %eax
movzbl -14(%rsi), %edx
sub %edx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(Byte19):
movzbl -13(%rdi), %eax
movzbl -13(%rsi), %edx
sub %edx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(Byte20):
movzbl -12(%rdi), %eax
movzbl -12(%rsi), %edx
sub %edx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(Byte21):
movzbl -11(%rdi), %eax
movzbl -11(%rsi), %edx
sub %edx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(Byte22):
movzbl -10(%rdi), %eax
movzbl -10(%rsi), %edx
sub %edx, %eax
ret
- ALIGN (4)
+ .p2align 4
L(next_24_bytes):
lea 8(%rdi), %rdi
lea 8(%rsi), %rsi
@@ -1479,14 +1475,14 @@ L(next_24_bytes):
jne L(find_diff)
ret
- ALIGN (4)
+ .p2align 4
L(second_double_word):
mov -12(%rdi), %eax
cmp -12(%rsi), %eax
jne L(find_diff)
ret
- ALIGN (4)
+ .p2align 4
L(next_two_double_words):
and $15, %dh
jz L(fourth_double_word)
@@ -1495,7 +1491,7 @@ L(next_two_double_words):
jne L(find_diff)
ret
- ALIGN (4)
+ .p2align 4
L(fourth_double_word):
mov -4(%rdi), %eax
cmp -4(%rsi), %eax
@@ -1503,7 +1499,7 @@ L(fourth_double_word):
ret
# endif
- ALIGN (4)
+ .p2align 4
L(less48bytes):
cmp $8, %ecx
jae L(more8bytes)
@@ -1527,7 +1523,7 @@ L(less48bytes):
jmp L(4bytes)
# endif
- ALIGN (4)
+ .p2align 4
L(more8bytes):
cmp $16, %ecx
jae L(more16bytes)
@@ -1551,7 +1547,7 @@ L(more8bytes):
jmp L(12bytes)
# endif
- ALIGN (4)
+ .p2align 4
L(more16bytes):
cmp $24, %ecx
jae L(more24bytes)
@@ -1575,7 +1571,7 @@ L(more16bytes):
jmp L(20bytes)
# endif
- ALIGN (4)
+ .p2align 4
L(more24bytes):
cmp $32, %ecx
jae L(more32bytes)
@@ -1599,7 +1595,7 @@ L(more24bytes):
jmp L(28bytes)
# endif
- ALIGN (4)
+ .p2align 4
L(more32bytes):
cmp $40, %ecx
jae L(more40bytes)
@@ -1623,7 +1619,7 @@ L(more32bytes):
jmp L(36bytes)
# endif
- ALIGN (4)
+ .p2align 4
L(more40bytes):
cmp $40, %ecx
je L(40bytes)
@@ -1642,7 +1638,7 @@ L(more40bytes):
je L(46bytes)
jmp L(47bytes)
- ALIGN (4)
+ .p2align 4
L(44bytes):
movl -44(%rdi), %eax
movl -44(%rsi), %ecx
@@ -1702,7 +1698,7 @@ L(0bytes):
xor %eax, %eax
ret
# else
- ALIGN (4)
+ .p2align 4
L(44bytes):
movl -44(%rdi), %eax
cmp -44(%rsi), %eax
@@ -1753,7 +1749,7 @@ L(0bytes):
# endif
# ifndef USE_AS_WMEMCMP
- ALIGN (4)
+ .p2align 4
L(45bytes):
movl -45(%rdi), %eax
movl -45(%rsi), %ecx
@@ -1816,7 +1812,7 @@ L(1bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(46bytes):
movl -46(%rdi), %eax
movl -46(%rsi), %ecx
@@ -1882,7 +1878,7 @@ L(2bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(47bytes):
movl -47(%rdi), %eax
movl -47(%rsi), %ecx
@@ -1951,7 +1947,7 @@ L(3bytes):
xor %eax, %eax
ret
- ALIGN (4)
+ .p2align 4
L(find_diff):
cmpb %cl, %al
jne L(set)
@@ -1973,19 +1969,19 @@ L(set):
# else
/* for wmemcmp */
- ALIGN (4)
+ .p2align 4
L(find_diff):
mov $1, %eax
jg L(find_diff_bigger)
neg %eax
ret
- ALIGN (4)
+ .p2align 4
L(find_diff_bigger):
ret
# endif
- ALIGN (4)
+ .p2align 4
L(equal):
xor %eax, %eax
ret
diff --git a/sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S b/sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S
index efdfea238f..df6578ebc9 100644
--- a/sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S
+++ b/sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S
@@ -20,10 +20,6 @@
#include "asm-syntax.h"
-#ifndef ALIGN
-# define ALIGN(n) .p2align n
-#endif
-
ENTRY(__memcpy_sse2_unaligned)
movq %rsi, %rax
@@ -44,7 +40,7 @@ L(return):
movq %rdi, %rax
ret
.p2align 4,,10
- ALIGN(4)
+ .p2align 4
.L31:
movdqu 16(%rsi), %xmm8
cmpq $64, %rdx
@@ -77,7 +73,7 @@ L(return):
leaq 32(%r10), %r8
leaq 48(%r10), %rax
.p2align 4,,10
- ALIGN(4)
+ .p2align 4
L(loop):
movdqu (%rcx,%r10), %xmm8
movdqa %xmm8, (%rcx)
@@ -151,7 +147,7 @@ L(less_16):
.L3:
leaq -1(%rdx), %rax
.p2align 4,,10
- ALIGN(4)
+ .p2align 4
.L11:
movzbl (%rsi,%rax), %edx
movb %dl, (%rdi,%rax)
diff --git a/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S b/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S
index fc9fcef27d..0eb7d9b758 100644
--- a/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S
+++ b/sysdeps/x86_64/multiarch/memcpy-ssse3-back.S
@@ -31,10 +31,6 @@
# define MEMCPY_CHK __memcpy_chk_ssse3_back
#endif
-#ifndef ALIGN
-# define ALIGN(n) .p2align n
-#endif
-
#define JMPTBL(I, B) I - B
/* Branch to an entry in a jump table. TABLE is a jump table with
@@ -87,7 +83,7 @@ L(bk_write):
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
#endif
- ALIGN (4)
+ .p2align 4
L(144bytesormore):
#ifndef USE_AS_MEMMOVE
@@ -119,7 +115,7 @@ L(144bytesormore):
jmp *%r9
ud2
- ALIGN (4)
+ .p2align 4
L(copy_backward):
#ifdef DATA_CACHE_SIZE
mov $DATA_CACHE_SIZE, %RCX_LP
@@ -149,7 +145,7 @@ L(copy_backward):
jmp *%r9
ud2
- ALIGN (4)
+ .p2align 4
L(shl_0):
mov %rdx, %r9
@@ -162,7 +158,7 @@ L(shl_0):
#endif
jae L(gobble_mem_fwd)
sub $0x80, %rdx
- ALIGN (4)
+ .p2align 4
L(shl_0_loop):
movdqa (%rsi), %xmm1
movdqa %xmm1, (%rdi)
@@ -190,7 +186,7 @@ L(shl_0_loop):
add %rdx, %rdi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_0_bwd):
sub $0x80, %rdx
L(copy_backward_loop):
@@ -221,7 +217,7 @@ L(copy_backward_loop):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_1):
sub $0x80, %rdx
movaps -0x01(%rsi), %xmm1
@@ -258,7 +254,7 @@ L(shl_1):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_1_bwd):
movaps -0x01(%rsi), %xmm1
@@ -304,7 +300,7 @@ L(shl_1_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_2):
sub $0x80, %rdx
movaps -0x02(%rsi), %xmm1
@@ -341,7 +337,7 @@ L(shl_2):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_2_bwd):
movaps -0x02(%rsi), %xmm1
@@ -387,7 +383,7 @@ L(shl_2_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_3):
sub $0x80, %rdx
movaps -0x03(%rsi), %xmm1
@@ -424,7 +420,7 @@ L(shl_3):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_3_bwd):
movaps -0x03(%rsi), %xmm1
@@ -470,7 +466,7 @@ L(shl_3_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_4):
sub $0x80, %rdx
movaps -0x04(%rsi), %xmm1
@@ -507,7 +503,7 @@ L(shl_4):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_4_bwd):
movaps -0x04(%rsi), %xmm1
@@ -553,7 +549,7 @@ L(shl_4_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_5):
sub $0x80, %rdx
movaps -0x05(%rsi), %xmm1
@@ -590,7 +586,7 @@ L(shl_5):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_5_bwd):
movaps -0x05(%rsi), %xmm1
@@ -636,7 +632,7 @@ L(shl_5_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_6):
sub $0x80, %rdx
movaps -0x06(%rsi), %xmm1
@@ -673,7 +669,7 @@ L(shl_6):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_6_bwd):
movaps -0x06(%rsi), %xmm1
@@ -719,7 +715,7 @@ L(shl_6_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_7):
sub $0x80, %rdx
movaps -0x07(%rsi), %xmm1
@@ -756,7 +752,7 @@ L(shl_7):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_7_bwd):
movaps -0x07(%rsi), %xmm1
@@ -802,7 +798,7 @@ L(shl_7_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_8):
sub $0x80, %rdx
movaps -0x08(%rsi), %xmm1
@@ -839,7 +835,7 @@ L(shl_8):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_8_bwd):
movaps -0x08(%rsi), %xmm1
@@ -886,7 +882,7 @@ L(shl_8_end_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_9):
sub $0x80, %rdx
movaps -0x09(%rsi), %xmm1
@@ -923,7 +919,7 @@ L(shl_9):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_9_bwd):
movaps -0x09(%rsi), %xmm1
@@ -969,7 +965,7 @@ L(shl_9_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_10):
sub $0x80, %rdx
movaps -0x0a(%rsi), %xmm1
@@ -1006,7 +1002,7 @@ L(shl_10):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_10_bwd):
movaps -0x0a(%rsi), %xmm1
@@ -1052,7 +1048,7 @@ L(shl_10_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_11):
sub $0x80, %rdx
movaps -0x0b(%rsi), %xmm1
@@ -1089,7 +1085,7 @@ L(shl_11):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_11_bwd):
movaps -0x0b(%rsi), %xmm1
@@ -1135,7 +1131,7 @@ L(shl_11_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_12):
sub $0x80, %rdx
movdqa -0x0c(%rsi), %xmm1
@@ -1173,7 +1169,7 @@ L(shl_12):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_12_bwd):
movaps -0x0c(%rsi), %xmm1
@@ -1219,7 +1215,7 @@ L(shl_12_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_13):
sub $0x80, %rdx
movaps -0x0d(%rsi), %xmm1
@@ -1256,7 +1252,7 @@ L(shl_13):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_13_bwd):
movaps -0x0d(%rsi), %xmm1
@@ -1302,7 +1298,7 @@ L(shl_13_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_14):
sub $0x80, %rdx
movaps -0x0e(%rsi), %xmm1
@@ -1339,7 +1335,7 @@ L(shl_14):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_14_bwd):
movaps -0x0e(%rsi), %xmm1
@@ -1385,7 +1381,7 @@ L(shl_14_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_15):
sub $0x80, %rdx
movaps -0x0f(%rsi), %xmm1
@@ -1422,7 +1418,7 @@ L(shl_15):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_15_bwd):
movaps -0x0f(%rsi), %xmm1
@@ -1468,7 +1464,7 @@ L(shl_15_bwd):
sub %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_bwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(gobble_mem_fwd):
movdqu (%rsi), %xmm1
movdqu %xmm0, (%r8)
@@ -1570,7 +1566,7 @@ L(gobble_mem_fwd_end):
add %rdx, %rdi
BRANCH_TO_JMPTBL_ENTRY (L(table_144_bytes_fwd), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(gobble_mem_bwd):
add %rdx, %rsi
add %rdx, %rdi
@@ -2833,7 +2829,7 @@ L(bwd_write_1bytes):
END (MEMCPY)
.section .rodata.ssse3,"a",@progbits
- ALIGN (3)
+ .p2align 3
L(table_144_bytes_bwd):
.int JMPTBL (L(bwd_write_0bytes), L(table_144_bytes_bwd))
.int JMPTBL (L(bwd_write_1bytes), L(table_144_bytes_bwd))
@@ -2980,7 +2976,7 @@ L(table_144_bytes_bwd):
.int JMPTBL (L(bwd_write_142bytes), L(table_144_bytes_bwd))
.int JMPTBL (L(bwd_write_143bytes), L(table_144_bytes_bwd))
- ALIGN (3)
+ .p2align 3
L(table_144_bytes_fwd):
.int JMPTBL (L(fwd_write_0bytes), L(table_144_bytes_fwd))
.int JMPTBL (L(fwd_write_1bytes), L(table_144_bytes_fwd))
@@ -3127,7 +3123,7 @@ L(table_144_bytes_fwd):
.int JMPTBL (L(fwd_write_142bytes), L(table_144_bytes_fwd))
.int JMPTBL (L(fwd_write_143bytes), L(table_144_bytes_fwd))
- ALIGN (3)
+ .p2align 3
L(shl_table_fwd):
.int JMPTBL (L(shl_0), L(shl_table_fwd))
.int JMPTBL (L(shl_1), L(shl_table_fwd))
@@ -3146,7 +3142,7 @@ L(shl_table_fwd):
.int JMPTBL (L(shl_14), L(shl_table_fwd))
.int JMPTBL (L(shl_15), L(shl_table_fwd))
- ALIGN (3)
+ .p2align 3
L(shl_table_bwd):
.int JMPTBL (L(shl_0_bwd), L(shl_table_bwd))
.int JMPTBL (L(shl_1_bwd), L(shl_table_bwd))
diff --git a/sysdeps/x86_64/multiarch/memcpy-ssse3.S b/sysdeps/x86_64/multiarch/memcpy-ssse3.S
index 9642ceecd9..0cedab2447 100644
--- a/sysdeps/x86_64/multiarch/memcpy-ssse3.S
+++ b/sysdeps/x86_64/multiarch/memcpy-ssse3.S
@@ -31,10 +31,6 @@
# define MEMCPY_CHK __memcpy_chk_ssse3
#endif
-#ifndef ALIGN
-# define ALIGN(n) .p2align n
-#endif
-
#define JMPTBL(I, B) I - B
/* Branch to an entry in a jump table. TABLE is a jump table with
@@ -80,7 +76,7 @@ L(copy_forward):
jmp *%r9
ud2
- ALIGN (4)
+ .p2align 4
L(80bytesormore):
#ifndef USE_AS_MEMMOVE
cmp %dil, %sil
@@ -113,7 +109,7 @@ L(80bytesormore):
#endif
BRANCH_TO_JMPTBL_ENTRY (L(shl_table), %r9, 4)
- ALIGN (4)
+ .p2align 4
L(copy_backward):
movdqu -16(%rsi, %rdx), %xmm0
add %rdx, %rsi
@@ -144,7 +140,7 @@ L(copy_backward):
#endif
BRANCH_TO_JMPTBL_ENTRY (L(shl_table_bwd), %r9, 4)
- ALIGN (4)
+ .p2align 4
L(shl_0):
sub $16, %rdx
movdqa (%rsi), %xmm1
@@ -172,7 +168,7 @@ L(shl_0_less_64bytes):
add %rdx, %rdi
BRANCH_TO_JMPTBL_ENTRY (L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_0_gobble):
#ifdef DATA_CACHE_SIZE_HALF
cmp $DATA_CACHE_SIZE_HALF, %RDX_LP
@@ -228,7 +224,7 @@ L(shl_0_cache_less_64bytes):
add %rdx, %rdi
BRANCH_TO_JMPTBL_ENTRY (L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_0_gobble_mem_loop):
prefetcht0 0x1c0(%rsi)
prefetcht0 0x280(%rsi)
@@ -287,7 +283,7 @@ L(shl_0_mem_less_32bytes):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY (L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_0_bwd):
sub $16, %rdx
movdqa -0x10(%rsi), %xmm1
@@ -313,7 +309,7 @@ L(shl_0_bwd):
L(shl_0_less_64bytes_bwd):
BRANCH_TO_JMPTBL_ENTRY (L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_0_gobble_bwd):
#ifdef DATA_CACHE_SIZE_HALF
cmp $DATA_CACHE_SIZE_HALF, %RDX_LP
@@ -367,7 +363,7 @@ L(shl_0_gobble_bwd_loop):
L(shl_0_gobble_bwd_less_64bytes):
BRANCH_TO_JMPTBL_ENTRY (L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_0_gobble_mem_bwd_loop):
prefetcht0 -0x1c0(%rsi)
prefetcht0 -0x280(%rsi)
@@ -423,7 +419,7 @@ L(shl_0_mem_bwd_less_64bytes):
L(shl_0_mem_bwd_less_32bytes):
BRANCH_TO_JMPTBL_ENTRY (L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_1):
lea (L(shl_1_loop_L1)-L(shl_1))(%r9), %r9
cmp %rcx, %rdx
@@ -466,7 +462,7 @@ L(shl_1_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_1_bwd):
lea (L(shl_1_bwd_loop_L1)-L(shl_1_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -508,7 +504,7 @@ L(shl_1_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_2):
lea (L(shl_2_loop_L1)-L(shl_2))(%r9), %r9
cmp %rcx, %rdx
@@ -551,7 +547,7 @@ L(shl_2_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_2_bwd):
lea (L(shl_2_bwd_loop_L1)-L(shl_2_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -593,7 +589,7 @@ L(shl_2_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_3):
lea (L(shl_3_loop_L1)-L(shl_3))(%r9), %r9
cmp %rcx, %rdx
@@ -636,7 +632,7 @@ L(shl_3_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_3_bwd):
lea (L(shl_3_bwd_loop_L1)-L(shl_3_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -678,7 +674,7 @@ L(shl_3_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_4):
lea (L(shl_4_loop_L1)-L(shl_4))(%r9), %r9
cmp %rcx, %rdx
@@ -721,7 +717,7 @@ L(shl_4_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_4_bwd):
lea (L(shl_4_bwd_loop_L1)-L(shl_4_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -763,7 +759,7 @@ L(shl_4_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_5):
lea (L(shl_5_loop_L1)-L(shl_5))(%r9), %r9
cmp %rcx, %rdx
@@ -806,7 +802,7 @@ L(shl_5_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_5_bwd):
lea (L(shl_5_bwd_loop_L1)-L(shl_5_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -848,7 +844,7 @@ L(shl_5_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_6):
lea (L(shl_6_loop_L1)-L(shl_6))(%r9), %r9
cmp %rcx, %rdx
@@ -891,7 +887,7 @@ L(shl_6_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_6_bwd):
lea (L(shl_6_bwd_loop_L1)-L(shl_6_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -933,7 +929,7 @@ L(shl_6_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_7):
lea (L(shl_7_loop_L1)-L(shl_7))(%r9), %r9
cmp %rcx, %rdx
@@ -976,7 +972,7 @@ L(shl_7_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_7_bwd):
lea (L(shl_7_bwd_loop_L1)-L(shl_7_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -1018,7 +1014,7 @@ L(shl_7_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_8):
lea (L(shl_8_loop_L1)-L(shl_8))(%r9), %r9
cmp %rcx, %rdx
@@ -1051,7 +1047,7 @@ L(shl_8_loop_L1):
movaps %xmm5, -0x10(%rdi)
jmp *%r9
ud2
- ALIGN (4)
+ .p2align 4
L(shl_8_end):
lea 64(%rdx), %rdx
movaps %xmm4, -0x20(%rdi)
@@ -1061,7 +1057,7 @@ L(shl_8_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_8_bwd):
lea (L(shl_8_bwd_loop_L1)-L(shl_8_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -1103,7 +1099,7 @@ L(shl_8_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_9):
lea (L(shl_9_loop_L1)-L(shl_9))(%r9), %r9
cmp %rcx, %rdx
@@ -1146,7 +1142,7 @@ L(shl_9_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_9_bwd):
lea (L(shl_9_bwd_loop_L1)-L(shl_9_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -1188,7 +1184,7 @@ L(shl_9_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_10):
lea (L(shl_10_loop_L1)-L(shl_10))(%r9), %r9
cmp %rcx, %rdx
@@ -1231,7 +1227,7 @@ L(shl_10_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_10_bwd):
lea (L(shl_10_bwd_loop_L1)-L(shl_10_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -1273,7 +1269,7 @@ L(shl_10_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_11):
lea (L(shl_11_loop_L1)-L(shl_11))(%r9), %r9
cmp %rcx, %rdx
@@ -1316,7 +1312,7 @@ L(shl_11_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_11_bwd):
lea (L(shl_11_bwd_loop_L1)-L(shl_11_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -1358,7 +1354,7 @@ L(shl_11_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_12):
lea (L(shl_12_loop_L1)-L(shl_12))(%r9), %r9
cmp %rcx, %rdx
@@ -1401,7 +1397,7 @@ L(shl_12_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_12_bwd):
lea (L(shl_12_bwd_loop_L1)-L(shl_12_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -1443,7 +1439,7 @@ L(shl_12_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_13):
lea (L(shl_13_loop_L1)-L(shl_13))(%r9), %r9
cmp %rcx, %rdx
@@ -1486,7 +1482,7 @@ L(shl_13_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_13_bwd):
lea (L(shl_13_bwd_loop_L1)-L(shl_13_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -1528,7 +1524,7 @@ L(shl_13_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_14):
lea (L(shl_14_loop_L1)-L(shl_14))(%r9), %r9
cmp %rcx, %rdx
@@ -1571,7 +1567,7 @@ L(shl_14_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_14_bwd):
lea (L(shl_14_bwd_loop_L1)-L(shl_14_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -1613,7 +1609,7 @@ L(shl_14_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_15):
lea (L(shl_15_loop_L1)-L(shl_15))(%r9), %r9
cmp %rcx, %rdx
@@ -1656,7 +1652,7 @@ L(shl_15_end):
add %rdx, %rsi
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(shl_15_bwd):
lea (L(shl_15_bwd_loop_L1)-L(shl_15_bwd))(%r9), %r9
cmp %rcx, %rdx
@@ -1698,7 +1694,7 @@ L(shl_15_bwd_end):
movdqu %xmm0, (%r8)
BRANCH_TO_JMPTBL_ENTRY(L(table_less_80bytes), %rdx, 4)
- ALIGN (4)
+ .p2align 4
L(write_72bytes):
movdqu -72(%rsi), %xmm0
movdqu -56(%rsi), %xmm1
@@ -1716,7 +1712,7 @@ L(write_72bytes):
mov %rcx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_64bytes):
movdqu -64(%rsi), %xmm0
mov -48(%rsi), %rcx
@@ -1734,7 +1730,7 @@ L(write_64bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_56bytes):
movdqu -56(%rsi), %xmm0
mov -40(%rsi), %r8
@@ -1750,7 +1746,7 @@ L(write_56bytes):
mov %rcx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_48bytes):
mov -48(%rsi), %rcx
mov -40(%rsi), %r8
@@ -1766,7 +1762,7 @@ L(write_48bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_40bytes):
mov -40(%rsi), %r8
mov -32(%rsi), %r9
@@ -1780,7 +1776,7 @@ L(write_40bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_32bytes):
mov -32(%rsi), %r9
mov -24(%rsi), %r10
@@ -1792,7 +1788,7 @@ L(write_32bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_24bytes):
mov -24(%rsi), %r10
mov -16(%rsi), %r11
@@ -1802,7 +1798,7 @@ L(write_24bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_16bytes):
mov -16(%rsi), %r11
mov -8(%rsi), %rdx
@@ -1810,14 +1806,14 @@ L(write_16bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_8bytes):
mov -8(%rsi), %rdx
mov %rdx, -8(%rdi)
L(write_0bytes):
ret
- ALIGN (4)
+ .p2align 4
L(write_73bytes):
movdqu -73(%rsi), %xmm0
movdqu -57(%rsi), %xmm1
@@ -1837,7 +1833,7 @@ L(write_73bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_65bytes):
movdqu -65(%rsi), %xmm0
movdqu -49(%rsi), %xmm1
@@ -1855,7 +1851,7 @@ L(write_65bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_57bytes):
movdqu -57(%rsi), %xmm0
mov -41(%rsi), %r8
@@ -1873,7 +1869,7 @@ L(write_57bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_49bytes):
movdqu -49(%rsi), %xmm0
mov -33(%rsi), %r9
@@ -1889,7 +1885,7 @@ L(write_49bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_41bytes):
mov -41(%rsi), %r8
mov -33(%rsi), %r9
@@ -1905,7 +1901,7 @@ L(write_41bytes):
mov %dl, -1(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_33bytes):
mov -33(%rsi), %r9
mov -25(%rsi), %r10
@@ -1919,7 +1915,7 @@ L(write_33bytes):
mov %dl, -1(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_25bytes):
mov -25(%rsi), %r10
mov -17(%rsi), %r11
@@ -1931,7 +1927,7 @@ L(write_25bytes):
mov %dl, -1(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_17bytes):
mov -17(%rsi), %r11
mov -9(%rsi), %rcx
@@ -1941,7 +1937,7 @@ L(write_17bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_9bytes):
mov -9(%rsi), %rcx
mov -4(%rsi), %edx
@@ -1949,13 +1945,13 @@ L(write_9bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_1bytes):
mov -1(%rsi), %dl
mov %dl, -1(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_74bytes):
movdqu -74(%rsi), %xmm0
movdqu -58(%rsi), %xmm1
@@ -1975,7 +1971,7 @@ L(write_74bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_66bytes):
movdqu -66(%rsi), %xmm0
movdqu -50(%rsi), %xmm1
@@ -1995,7 +1991,7 @@ L(write_66bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_58bytes):
movdqu -58(%rsi), %xmm1
mov -42(%rsi), %r8
@@ -2013,7 +2009,7 @@ L(write_58bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_50bytes):
movdqu -50(%rsi), %xmm0
mov -34(%rsi), %r9
@@ -2029,7 +2025,7 @@ L(write_50bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_42bytes):
mov -42(%rsi), %r8
mov -34(%rsi), %r9
@@ -2045,7 +2041,7 @@ L(write_42bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_34bytes):
mov -34(%rsi), %r9
mov -26(%rsi), %r10
@@ -2059,7 +2055,7 @@ L(write_34bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_26bytes):
mov -26(%rsi), %r10
mov -18(%rsi), %r11
@@ -2071,7 +2067,7 @@ L(write_26bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_18bytes):
mov -18(%rsi), %r11
mov -10(%rsi), %rcx
@@ -2081,7 +2077,7 @@ L(write_18bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_10bytes):
mov -10(%rsi), %rcx
mov -4(%rsi), %edx
@@ -2089,13 +2085,13 @@ L(write_10bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_2bytes):
mov -2(%rsi), %dx
mov %dx, -2(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_75bytes):
movdqu -75(%rsi), %xmm0
movdqu -59(%rsi), %xmm1
@@ -2115,7 +2111,7 @@ L(write_75bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_67bytes):
movdqu -67(%rsi), %xmm0
movdqu -59(%rsi), %xmm1
@@ -2135,7 +2131,7 @@ L(write_67bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_59bytes):
movdqu -59(%rsi), %xmm0
mov -43(%rsi), %r8
@@ -2153,7 +2149,7 @@ L(write_59bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_51bytes):
movdqu -51(%rsi), %xmm0
mov -35(%rsi), %r9
@@ -2169,7 +2165,7 @@ L(write_51bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_43bytes):
mov -43(%rsi), %r8
mov -35(%rsi), %r9
@@ -2185,7 +2181,7 @@ L(write_43bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_35bytes):
mov -35(%rsi), %r9
mov -27(%rsi), %r10
@@ -2199,7 +2195,7 @@ L(write_35bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_27bytes):
mov -27(%rsi), %r10
mov -19(%rsi), %r11
@@ -2211,7 +2207,7 @@ L(write_27bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_19bytes):
mov -19(%rsi), %r11
mov -11(%rsi), %rcx
@@ -2221,7 +2217,7 @@ L(write_19bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_11bytes):
mov -11(%rsi), %rcx
mov -4(%rsi), %edx
@@ -2229,7 +2225,7 @@ L(write_11bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_3bytes):
mov -3(%rsi), %dx
mov -2(%rsi), %cx
@@ -2237,7 +2233,7 @@ L(write_3bytes):
mov %cx, -2(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_76bytes):
movdqu -76(%rsi), %xmm0
movdqu -60(%rsi), %xmm1
@@ -2257,7 +2253,7 @@ L(write_76bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_68bytes):
movdqu -68(%rsi), %xmm0
movdqu -52(%rsi), %xmm1
@@ -2275,7 +2271,7 @@ L(write_68bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_60bytes):
movdqu -60(%rsi), %xmm0
mov -44(%rsi), %r8
@@ -2293,7 +2289,7 @@ L(write_60bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_52bytes):
movdqu -52(%rsi), %xmm0
mov -36(%rsi), %r9
@@ -2309,7 +2305,7 @@ L(write_52bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_44bytes):
mov -44(%rsi), %r8
mov -36(%rsi), %r9
@@ -2325,7 +2321,7 @@ L(write_44bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_36bytes):
mov -36(%rsi), %r9
mov -28(%rsi), %r10
@@ -2339,7 +2335,7 @@ L(write_36bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_28bytes):
mov -28(%rsi), %r10
mov -20(%rsi), %r11
@@ -2351,7 +2347,7 @@ L(write_28bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_20bytes):
mov -20(%rsi), %r11
mov -12(%rsi), %rcx
@@ -2361,7 +2357,7 @@ L(write_20bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_12bytes):
mov -12(%rsi), %rcx
mov -4(%rsi), %edx
@@ -2369,13 +2365,13 @@ L(write_12bytes):
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_4bytes):
mov -4(%rsi), %edx
mov %edx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_77bytes):
movdqu -77(%rsi), %xmm0
movdqu -61(%rsi), %xmm1
@@ -2395,7 +2391,7 @@ L(write_77bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_69bytes):
movdqu -69(%rsi), %xmm0
movdqu -53(%rsi), %xmm1
@@ -2413,7 +2409,7 @@ L(write_69bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_61bytes):
movdqu -61(%rsi), %xmm0
mov -45(%rsi), %r8
@@ -2431,7 +2427,7 @@ L(write_61bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_53bytes):
movdqu -53(%rsi), %xmm0
mov -45(%rsi), %r8
@@ -2448,7 +2444,7 @@ L(write_53bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_45bytes):
mov -45(%rsi), %r8
mov -37(%rsi), %r9
@@ -2464,7 +2460,7 @@ L(write_45bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_37bytes):
mov -37(%rsi), %r9
mov -29(%rsi), %r10
@@ -2478,7 +2474,7 @@ L(write_37bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_29bytes):
mov -29(%rsi), %r10
mov -21(%rsi), %r11
@@ -2490,7 +2486,7 @@ L(write_29bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_21bytes):
mov -21(%rsi), %r11
mov -13(%rsi), %rcx
@@ -2500,7 +2496,7 @@ L(write_21bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_13bytes):
mov -13(%rsi), %rcx
mov -8(%rsi), %rdx
@@ -2508,7 +2504,7 @@ L(write_13bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_5bytes):
mov -5(%rsi), %edx
mov -4(%rsi), %ecx
@@ -2516,7 +2512,7 @@ L(write_5bytes):
mov %ecx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_78bytes):
movdqu -78(%rsi), %xmm0
movdqu -62(%rsi), %xmm1
@@ -2536,7 +2532,7 @@ L(write_78bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_70bytes):
movdqu -70(%rsi), %xmm0
movdqu -54(%rsi), %xmm1
@@ -2554,7 +2550,7 @@ L(write_70bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_62bytes):
movdqu -62(%rsi), %xmm0
mov -46(%rsi), %r8
@@ -2572,7 +2568,7 @@ L(write_62bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_54bytes):
movdqu -54(%rsi), %xmm0
mov -38(%rsi), %r9
@@ -2588,7 +2584,7 @@ L(write_54bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_46bytes):
mov -46(%rsi), %r8
mov -38(%rsi), %r9
@@ -2604,7 +2600,7 @@ L(write_46bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_38bytes):
mov -38(%rsi), %r9
mov -30(%rsi), %r10
@@ -2618,7 +2614,7 @@ L(write_38bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_30bytes):
mov -30(%rsi), %r10
mov -22(%rsi), %r11
@@ -2630,7 +2626,7 @@ L(write_30bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_22bytes):
mov -22(%rsi), %r11
mov -14(%rsi), %rcx
@@ -2640,7 +2636,7 @@ L(write_22bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_14bytes):
mov -14(%rsi), %rcx
mov -8(%rsi), %rdx
@@ -2648,7 +2644,7 @@ L(write_14bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_6bytes):
mov -6(%rsi), %edx
mov -4(%rsi), %ecx
@@ -2656,7 +2652,7 @@ L(write_6bytes):
mov %ecx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_79bytes):
movdqu -79(%rsi), %xmm0
movdqu -63(%rsi), %xmm1
@@ -2676,7 +2672,7 @@ L(write_79bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_71bytes):
movdqu -71(%rsi), %xmm0
movdqu -55(%rsi), %xmm1
@@ -2694,7 +2690,7 @@ L(write_71bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_63bytes):
movdqu -63(%rsi), %xmm0
mov -47(%rsi), %r8
@@ -2712,7 +2708,7 @@ L(write_63bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_55bytes):
movdqu -55(%rsi), %xmm0
mov -39(%rsi), %r9
@@ -2728,7 +2724,7 @@ L(write_55bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_47bytes):
mov -47(%rsi), %r8
mov -39(%rsi), %r9
@@ -2744,7 +2740,7 @@ L(write_47bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_39bytes):
mov -39(%rsi), %r9
mov -31(%rsi), %r10
@@ -2758,7 +2754,7 @@ L(write_39bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_31bytes):
mov -31(%rsi), %r10
mov -23(%rsi), %r11
@@ -2770,7 +2766,7 @@ L(write_31bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_23bytes):
mov -23(%rsi), %r11
mov -15(%rsi), %rcx
@@ -2780,7 +2776,7 @@ L(write_23bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_15bytes):
mov -15(%rsi), %rcx
mov -8(%rsi), %rdx
@@ -2788,7 +2784,7 @@ L(write_15bytes):
mov %rdx, -8(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(write_7bytes):
mov -7(%rsi), %edx
mov -4(%rsi), %ecx
@@ -2796,7 +2792,7 @@ L(write_7bytes):
mov %ecx, -4(%rdi)
ret
- ALIGN (4)
+ .p2align 4
L(large_page_fwd):
movdqu (%rsi), %xmm1
lea 16(%rsi), %rsi
@@ -2859,7 +2855,7 @@ L(large_page_less_64bytes):
BRANCH_TO_JMPTBL_ENTRY (L(table_less_80bytes), %rdx, 4)
#ifdef USE_AS_MEMMOVE
- ALIGN (4)
+ .p2align 4
L(ll_cache_copy_fwd_start):
prefetcht0 0x1c0(%rsi)
prefetcht0 0x200(%rsi)
@@ -2906,7 +2902,7 @@ L(large_page_ll_less_fwd_64bytes):
BRANCH_TO_JMPTBL_ENTRY (L(table_less_80bytes), %rdx, 4)
#endif
- ALIGN (4)
+ .p2align 4
L(large_page_bwd):
movdqu -0x10(%rsi), %xmm1
lea -16(%rsi), %rsi
@@ -2966,7 +2962,7 @@ L(large_page_less_bwd_64bytes):
BRANCH_TO_JMPTBL_ENTRY (L(table_less_80bytes), %rdx, 4)
#ifdef USE_AS_MEMMOVE
- ALIGN (4)
+ .p2align 4
L(ll_cache_copy_bwd_start):
prefetcht0 -0x1c0(%rsi)
prefetcht0 -0x200(%rsi)
@@ -3014,7 +3010,7 @@ L(large_page_ll_less_bwd_64bytes):
END (MEMCPY)
.section .rodata.ssse3,"a",@progbits
- ALIGN (3)
+ .p2align 3
L(table_less_80bytes):
.int JMPTBL (L(write_0bytes), L(table_less_80bytes))
.int JMPTBL (L(write_1bytes), L(table_less_80bytes))
@@ -3097,7 +3093,7 @@ L(table_less_80bytes):
.int JMPTBL (L(write_78bytes), L(table_less_80bytes))
.int JMPTBL (L(write_79bytes), L(table_less_80bytes))
- ALIGN (3)
+ .p2align 3
L(shl_table):
.int JMPTBL (L(shl_0), L(shl_table))
.int JMPTBL (L(shl_1), L(shl_table))
@@ -3116,7 +3112,7 @@ L(shl_table):
.int JMPTBL (L(shl_14), L(shl_table))
.int JMPTBL (L(shl_15), L(shl_table))
- ALIGN (3)
+ .p2align 3
L(shl_table_bwd):
.int JMPTBL (L(shl_0_bwd), L(shl_table_bwd))
.int JMPTBL (L(shl_1_bwd), L(shl_table_bwd))
diff --git a/sysdeps/x86_64/multiarch/strcasestr-c.c b/sysdeps/x86_64/multiarch/strcasestr-c.c
deleted file mode 100644
index c13a4c44f3..0000000000
--- a/sysdeps/x86_64/multiarch/strcasestr-c.c
+++ /dev/null
@@ -1,19 +0,0 @@
-/* Multiple versions of strcasestr
- All versions must be listed in ifunc-impl-list.c. */
-
-#include "init-arch.h"
-
-#define STRCASESTR __strcasestr_sse2
-
-#include "string/strcasestr.c"
-
-extern char *__strcasestr_sse42 (const char *, const char *) attribute_hidden;
-extern __typeof (__strcasestr_sse2) __strcasestr_sse2 attribute_hidden;
-
-#if 1
-libc_ifunc (__strcasestr,
- HAS_SSE4_2 ? __strcasestr_sse42 : __strcasestr_sse2);
-#else
-libc_ifunc (__strcasestr,
- 0 ? __strcasestr_sse42 : __strcasestr_sse2);
-#endif
diff --git a/sysdeps/x86_64/multiarch/strcasestr.c b/sysdeps/x86_64/multiarch/strcasestr.c
index d1cfb3b264..834e656a2c 100644
--- a/sysdeps/x86_64/multiarch/strcasestr.c
+++ b/sysdeps/x86_64/multiarch/strcasestr.c
@@ -1,7 +1,13 @@
-extern char *__strcasestr_sse42_nonascii (const unsigned char *s1,
- const unsigned char *s2)
- attribute_hidden;
+/* Multiple versions of strcasestr
+ All versions must be listed in ifunc-impl-list.c. */
-#define USE_AS_STRCASESTR
-#define STRSTR_SSE42 __strcasestr_sse42
-#include "strstr.c"
+#include "init-arch.h"
+
+#define STRCASESTR __strcasestr_sse2
+
+#include "string/strcasestr.c"
+
+extern __typeof (__strcasestr_sse2) __strcasestr_sse2 attribute_hidden;
+
+libc_ifunc (__strcasestr,
+ __strcasestr_sse2);
diff --git a/sysdeps/x86_64/multiarch/strchr.S b/sysdeps/x86_64/multiarch/strchr.S
index f170238b55..3f0b2c5f5a 100644
--- a/sysdeps/x86_64/multiarch/strchr.S
+++ b/sysdeps/x86_64/multiarch/strchr.S
@@ -29,12 +29,6 @@ ENTRY(strchr)
jne 1f
call __init_cpu_features
1: leaq __strchr_sse2(%rip), %rax
- testl $bit_Slow_SSE4_2, __cpu_features+CPUID_OFFSET+index_Slow_SSE4_2(%rip)
- jnz 2f
- testl $bit_SSE4_2, __cpu_features+CPUID_OFFSET+index_SSE4_2(%rip)
- jz 2f
- leaq __strchr_sse42(%rip), %rax
- ret
2: testl $bit_Slow_BSF, __cpu_features+FEATURE_OFFSET+index_Slow_BSF(%rip)
jz 3f
leaq __strchr_sse2_no_bsf(%rip), %rax
@@ -42,127 +36,6 @@ ENTRY(strchr)
END(strchr)
-/*
- This implementation uses SSE4 instructions to compare up to 16 bytes
- at a time looking for the first occurrence of the character c in the
- string s:
-
- char *strchr (const char *s, int c);
-
- We use 0xa:
- _SIDD_SBYTE_OPS
- | _SIDD_CMP_EQUAL_EACH
- | _SIDD_LEAST_SIGNIFICANT
- on pcmpistri to compare xmm/mem128
-
- 0 1 2 3 4 5 6 7 8 9 A B C D E F
- X X X X X X X X X X X X X X X X
-
- against xmm
-
- 0 1 2 3 4 5 6 7 8 9 A B C D E F
- C C C C C C C C C C C C C C C C
-
- to find out if the first 16byte data element has a byte C and the
- offset of the first byte. There are 3 cases:
-
- 1. The first 16byte data element has the byte C at the offset X.
- 2. The first 16byte data element has EOS and doesn't have the byte C.
- 3. The first 16byte data element is valid and doesn't have the byte C.
-
- Here is the table of ECX, CFlag, ZFlag and SFlag for 3 cases:
-
- case ECX CFlag ZFlag SFlag
- 1 X 1 0/1 0
- 2 16 0 1 0
- 3 16 0 0 0
-
- We exit from the loop for cases 1 and 2 with jbe which branches
- when either CFlag or ZFlag is 1. If CFlag == 1, ECX has the offset
- X for case 1. */
-
- .section .text.sse4.2,"ax",@progbits
- .align 16
- .type __strchr_sse42, @function
- .globl __strchr_sse42
- .hidden __strchr_sse42
-__strchr_sse42:
- cfi_startproc
- CALL_MCOUNT
- testb %sil, %sil
- je __strend_sse4
- pxor %xmm2, %xmm2
- movd %esi, %xmm1
- movl %edi, %ecx
- pshufb %xmm2, %xmm1
- andl $15, %ecx
- movq %rdi, %r8
- je L(aligned_start)
-
-/* Handle unaligned string. */
- andq $-16, %r8
- movdqa (%r8), %xmm0
- pcmpeqb %xmm0, %xmm2
- pcmpeqb %xmm1, %xmm0
- /* Find where NULL is. */
- pmovmskb %xmm2, %edx
- /* Check if there is a match. */
- pmovmskb %xmm0, %esi
- /* Remove the leading bytes. */
- sarl %cl, %edx
- sarl %cl, %esi
- testl %esi, %esi
- je L(unaligned_no_match)
- /* Check which byte is a match. */
- bsfl %esi, %eax
- /* Is there a NULL? */
- testl %edx, %edx
- je L(unaligned_match)
- bsfl %edx, %esi
- cmpl %esi, %eax
- /* Return NULL if NULL comes first. */
- ja L(return_null)
-L(unaligned_match):
- addq %rdi, %rax
- ret
-
- .p2align 4
-L(unaligned_no_match):
- testl %edx, %edx
- jne L(return_null)
-
-/* Loop start on aligned string. */
-L(loop):
- addq $16, %r8
-L(aligned_start):
- pcmpistri $0x2, (%r8), %xmm1
- jbe L(wrap)
- addq $16, %r8
- pcmpistri $0x2, (%r8), %xmm1
- jbe L(wrap)
- addq $16, %r8
- pcmpistri $0x2, (%r8), %xmm1
- jbe L(wrap)
- addq $16, %r8
- pcmpistri $0x2, (%r8), %xmm1
- jbe L(wrap)
- jmp L(loop)
-L(wrap):
- jc L(loop_exit)
-
-/* Return NULL. */
-L(return_null):
- xorl %eax, %eax
- ret
-
-/* Loop exit. */
- .p2align 4
-L(loop_exit):
- leaq (%r8,%rcx), %rax
- ret
- cfi_endproc
- .size __strchr_sse42, .-__strchr_sse42
-
# undef ENTRY
# define ENTRY(name) \
diff --git a/sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S b/sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S
new file mode 100644
index 0000000000..4a8e57a243
--- /dev/null
+++ b/sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S
@@ -0,0 +1,209 @@
+/* strcmp with unaligned loads
+ Copyright (C) 2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include "sysdep.h"
+
+ENTRY ( __strcmp_sse2_unaligned)
+ movl %edi, %eax
+ xorl %edx, %edx
+ pxor %xmm7, %xmm7
+ orl %esi, %eax
+ andl $4095, %eax
+ cmpl $4032, %eax
+ jg L(cross_page)
+ movdqu (%rdi), %xmm1
+ movdqu (%rsi), %xmm0
+ pcmpeqb %xmm1, %xmm0
+ pminub %xmm1, %xmm0
+ pxor %xmm1, %xmm1
+ pcmpeqb %xmm1, %xmm0
+ pmovmskb %xmm0, %eax
+ testq %rax, %rax
+ je L(next_48_bytes)
+L(return):
+ bsfq %rax, %rdx
+ movzbl (%rdi, %rdx), %eax
+ movzbl (%rsi, %rdx), %edx
+ subl %edx, %eax
+ ret
+
+ .p2align 4
+L(next_48_bytes):
+ movdqu 16(%rdi), %xmm6
+ movdqu 16(%rsi), %xmm3
+ movdqu 32(%rdi), %xmm5
+ pcmpeqb %xmm6, %xmm3
+ movdqu 32(%rsi), %xmm2
+ pminub %xmm6, %xmm3
+ pcmpeqb %xmm1, %xmm3
+ movdqu 48(%rdi), %xmm4
+ pcmpeqb %xmm5, %xmm2
+ pmovmskb %xmm3, %edx
+ movdqu 48(%rsi), %xmm0
+ pminub %xmm5, %xmm2
+ pcmpeqb %xmm1, %xmm2
+ pcmpeqb %xmm4, %xmm0
+ pmovmskb %xmm2, %eax
+ salq $16, %rdx
+ pminub %xmm4, %xmm0
+ pcmpeqb %xmm1, %xmm0
+ salq $32, %rax
+ orq %rdx, %rax
+ pmovmskb %xmm0, %ecx
+ movq %rcx, %rdx
+ salq $48, %rdx
+ orq %rdx, %rax
+ jne L(return)
+L(main_loop_header):
+ leaq 64(%rdi), %rdx
+ movl $4096, %ecx
+ pxor %xmm9, %xmm9
+ andq $-64, %rdx
+ subq %rdi, %rdx
+ leaq (%rdi, %rdx), %rax
+ addq %rsi, %rdx
+ movq %rdx, %rsi
+ andl $4095, %esi
+ subq %rsi, %rcx
+ shrq $6, %rcx
+ movq %rcx, %rsi
+ jmp L(loop_start)
+
+ .p2align 4
+L(loop):
+ addq $64, %rax
+ addq $64, %rdx
+L(loop_start):
+ testq %rsi, %rsi
+ leaq -1(%rsi), %rsi
+ je L(loop_cross_page)
+L(back_to_loop):
+ movdqu (%rdx), %xmm0
+ movdqu 16(%rdx), %xmm1
+ movdqa (%rax), %xmm2
+ movdqa 16(%rax), %xmm3
+ pcmpeqb %xmm2, %xmm0
+ movdqu 32(%rdx), %xmm5
+ pcmpeqb %xmm3, %xmm1
+ pminub %xmm2, %xmm0
+ movdqu 48(%rdx), %xmm6
+ pminub %xmm3, %xmm1
+ movdqa 32(%rax), %xmm2
+ pminub %xmm1, %xmm0
+ movdqa 48(%rax), %xmm3
+ pcmpeqb %xmm2, %xmm5
+ pcmpeqb %xmm3, %xmm6
+ pminub %xmm2, %xmm5
+ pminub %xmm3, %xmm6
+ pminub %xmm5, %xmm0
+ pminub %xmm6, %xmm0
+ pcmpeqb %xmm7, %xmm0
+ pmovmskb %xmm0, %ecx
+ testl %ecx, %ecx
+ je L(loop)
+ pcmpeqb %xmm7, %xmm5
+ movdqu (%rdx), %xmm0
+ pcmpeqb %xmm7, %xmm1
+ movdqa (%rax), %xmm2
+ pcmpeqb %xmm2, %xmm0
+ pminub %xmm2, %xmm0
+ pcmpeqb %xmm7, %xmm6
+ pcmpeqb %xmm7, %xmm0
+ pmovmskb %xmm1, %ecx
+ pmovmskb %xmm5, %r8d
+ pmovmskb %xmm0, %edi
+ salq $16, %rcx
+ salq $32, %r8
+ pmovmskb %xmm6, %esi
+ orq %r8, %rcx
+ orq %rdi, %rcx
+ salq $48, %rsi
+ orq %rsi, %rcx
+ bsfq %rcx, %rcx
+ movzbl (%rax, %rcx), %eax
+ movzbl (%rdx, %rcx), %edx
+ subl %edx, %eax
+ ret
+
+ .p2align 4
+L(loop_cross_page):
+ xor %r10, %r10
+ movq %rdx, %r9
+ and $63, %r9
+ subq %r9, %r10
+
+ movdqa (%rdx, %r10), %xmm0
+ movdqa 16(%rdx, %r10), %xmm1
+ movdqu (%rax, %r10), %xmm2
+ movdqu 16(%rax, %r10), %xmm3
+ pcmpeqb %xmm2, %xmm0
+ movdqa 32(%rdx, %r10), %xmm5
+ pcmpeqb %xmm3, %xmm1
+ pminub %xmm2, %xmm0
+ movdqa 48(%rdx, %r10), %xmm6
+ pminub %xmm3, %xmm1
+ movdqu 32(%rax, %r10), %xmm2
+ movdqu 48(%rax, %r10), %xmm3
+ pcmpeqb %xmm2, %xmm5
+ pcmpeqb %xmm3, %xmm6
+ pminub %xmm2, %xmm5
+ pminub %xmm3, %xmm6
+
+ pcmpeqb %xmm7, %xmm0
+ pcmpeqb %xmm7, %xmm1
+ pcmpeqb %xmm7, %xmm5
+ pcmpeqb %xmm7, %xmm6
+
+ pmovmskb %xmm1, %ecx
+ pmovmskb %xmm5, %r8d
+ pmovmskb %xmm0, %edi
+ salq $16, %rcx
+ salq $32, %r8
+ pmovmskb %xmm6, %esi
+ orq %r8, %rdi
+ orq %rcx, %rdi
+ salq $48, %rsi
+ orq %rsi, %rdi
+ movq %r9, %rcx
+ movq $63, %rsi
+ shrq %cl, %rdi
+ test %rdi, %rdi
+ je L(back_to_loop)
+ bsfq %rdi, %rcx
+ movzbl (%rax, %rcx), %eax
+ movzbl (%rdx, %rcx), %edx
+ subl %edx, %eax
+ ret
+
+ .p2align 4
+L(cross_page_loop):
+ cmpb %cl, %al
+ jne L(different)
+ addq $1, %rdx
+ cmpq $64, %rdx
+ je L(main_loop_header)
+L(cross_page):
+ movzbl (%rdi, %rdx), %eax
+ movzbl (%rsi, %rdx), %ecx
+ testb %al, %al
+ jne L(cross_page_loop)
+ xorl %eax, %eax
+L(different):
+ subl %ecx, %eax
+ ret
+END (__strcmp_sse2_unaligned)
diff --git a/sysdeps/x86_64/multiarch/strcmp.S b/sysdeps/x86_64/multiarch/strcmp.S
index 1d4d711838..c5dcd1aa5e 100644
--- a/sysdeps/x86_64/multiarch/strcmp.S
+++ b/sysdeps/x86_64/multiarch/strcmp.S
@@ -66,6 +66,7 @@
# define STRCMP_SSE2 __strncasecmp_l_sse2
# define __GI_STRCMP __GI___strncasecmp_l
#else
+# define USE_AS_STRCMP
# define UPDATE_STRNCMP_COUNTER
# ifndef STRCMP
# define STRCMP strcmp
@@ -88,11 +89,17 @@ ENTRY(STRCMP)
jne 1f
call __init_cpu_features
1:
+#ifdef USE_AS_STRCMP
+ leaq __strcmp_sse2_unaligned(%rip), %rax
+ testl $bit_Fast_Unaligned_Load, __cpu_features+CPUID_OFFSET+index_Fast_Unaligned_Load(%rip)
+ jnz 3f
+#else
testl $bit_Slow_SSE4_2, __cpu_features+CPUID_OFFSET+index_Slow_SSE4_2(%rip)
jnz 2f
leaq STRCMP_SSE42(%rip), %rax
testl $bit_SSE4_2, __cpu_features+CPUID_OFFSET+index_SSE4_2(%rip)
jnz 3f
+#endif
2: leaq STRCMP_SSSE3(%rip), %rax
testl $bit_SSSE3, __cpu_features+CPUID_OFFSET+index_SSSE3(%rip)
jnz 3f
diff --git a/sysdeps/x86_64/multiarch/strrchr-sse2-no-bsf.S b/sysdeps/x86_64/multiarch/strrchr-sse2-no-bsf.S
deleted file mode 100644
index fcef610dbc..0000000000
--- a/sysdeps/x86_64/multiarch/strrchr-sse2-no-bsf.S
+++ /dev/null
@@ -1,555 +0,0 @@
-/* strrchr with SSE2 without bsf and bsr
- Copyright (C) 2011-2013 Free Software Foundation, Inc.
- Contributed by Intel Corporation.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#if defined SHARED && !defined NOT_IN_libc
-
-# include <sysdep.h>
-# include "asm-syntax.h"
-
- atom_text_section
-ENTRY (__strrchr_sse2_no_bsf)
-
- movd %rsi, %xmm1
- pxor %xmm2, %xmm2
- mov %rdi, %rcx
- punpcklbw %xmm1, %xmm1
- punpcklbw %xmm1, %xmm1
- /* ECX has OFFSET. */
- and $63, %rcx
- cmp $48, %rcx
- pshufd $0, %xmm1, %xmm1
- ja L(crosscache)
-
-/* unaligned string. */
- movdqu (%rdi), %xmm0
- pcmpeqb %xmm0, %xmm2
- pcmpeqb %xmm1, %xmm0
- /* Find where NULL is. */
- pmovmskb %xmm2, %rcx
- /* Check if there is a match. */
- pmovmskb %xmm0, %rax
- add $16, %rdi
-
- test %rax, %rax
- jnz L(unaligned_match1)
-
- test %rcx, %rcx
- jnz L(return_null)
-
- and $-16, %rdi
- xor %r8, %r8
- jmp L(loop)
-
- .p2align 4
-L(unaligned_match1):
- test %rcx, %rcx
- jnz L(prolog_find_zero_1)
-
- mov %rax, %r8
- mov %rdi, %rsi
- and $-16, %rdi
- jmp L(loop)
-
- .p2align 4
-L(crosscache):
-/* Hancle unaligned string. */
- and $15, %rcx
- and $-16, %rdi
- pxor %xmm3, %xmm3
- movdqa (%rdi), %xmm0
- pcmpeqb %xmm0, %xmm3
- pcmpeqb %xmm1, %xmm0
- /* Find where NULL is. */
- pmovmskb %xmm3, %rdx
- /* Check if there is a match. */
- pmovmskb %xmm0, %rax
- /* Remove the leading bytes. */
- shr %cl, %rdx
- shr %cl, %rax
- add $16, %rdi
-
- test %rax, %rax
- jnz L(unaligned_match)
-
- test %rdx, %rdx
- jnz L(return_null)
-
- xor %r8, %r8
- jmp L(loop)
-
- .p2align 4
-L(unaligned_match):
- test %rdx, %rdx
- jnz L(prolog_find_zero)
-
- mov %rax, %r8
- lea (%rdi, %rcx), %rsi
-
-/* Loop start on aligned string. */
- .p2align 4
-L(loop):
- movdqa (%rdi), %xmm0
- pcmpeqb %xmm0, %xmm2
- add $16, %rdi
- pcmpeqb %xmm1, %xmm0
- pmovmskb %xmm2, %rcx
- pmovmskb %xmm0, %rax
- or %rax, %rcx
- jnz L(matches)
-
- movdqa (%rdi), %xmm0
- pcmpeqb %xmm0, %xmm2
- add $16, %rdi
- pcmpeqb %xmm1, %xmm0
- pmovmskb %xmm2, %rcx
- pmovmskb %xmm0, %rax
- or %rax, %rcx
- jnz L(matches)
-
- movdqa (%rdi), %xmm0
- pcmpeqb %xmm0, %xmm2
- add $16, %rdi
- pcmpeqb %xmm1, %xmm0
- pmovmskb %xmm2, %rcx
- pmovmskb %xmm0, %rax
- or %rax, %rcx
- jnz L(matches)
-
- movdqa (%rdi), %xmm0
- pcmpeqb %xmm0, %xmm2
- add $16, %rdi
- pcmpeqb %xmm1, %xmm0
- pmovmskb %xmm2, %rcx
- pmovmskb %xmm0, %rax
- or %rax, %rcx
- jz L(loop)
-
-L(matches):
- test %rax, %rax
- jnz L(match)
-L(return_value):
- test %r8, %r8
- jz L(return_null)
- mov %r8, %rax
- mov %rsi, %rdi
- jmp L(match_exit)
-
- .p2align 4
-L(match):
- pmovmskb %xmm2, %rcx
- test %rcx, %rcx
- jnz L(find_zero)
- mov %rax, %r8
- mov %rdi, %rsi
- jmp L(loop)
-
- .p2align 4
-L(find_zero):
- test %cl, %cl
- jz L(find_zero_high)
- mov %cl, %dl
- and $15, %dl
- jz L(find_zero_8)
- test $0x01, %cl
- jnz L(FindZeroExit1)
- test $0x02, %cl
- jnz L(FindZeroExit2)
- test $0x04, %cl
- jnz L(FindZeroExit3)
- and $1 << 4 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(find_zero_8):
- test $0x10, %cl
- jnz L(FindZeroExit5)
- test $0x20, %cl
- jnz L(FindZeroExit6)
- test $0x40, %cl
- jnz L(FindZeroExit7)
- and $1 << 8 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(find_zero_high):
- mov %ch, %dh
- and $15, %dh
- jz L(find_zero_high_8)
- test $0x01, %ch
- jnz L(FindZeroExit9)
- test $0x02, %ch
- jnz L(FindZeroExit10)
- test $0x04, %ch
- jnz L(FindZeroExit11)
- and $1 << 12 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(find_zero_high_8):
- test $0x10, %ch
- jnz L(FindZeroExit13)
- test $0x20, %ch
- jnz L(FindZeroExit14)
- test $0x40, %ch
- jnz L(FindZeroExit15)
- and $1 << 16 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit1):
- and $1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit2):
- and $1 << 2 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit3):
- and $1 << 3 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit5):
- and $1 << 5 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit6):
- and $1 << 6 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit7):
- and $1 << 7 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit9):
- and $1 << 9 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit10):
- and $1 << 10 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit11):
- and $1 << 11 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit13):
- and $1 << 13 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit14):
- and $1 << 14 - 1, %rax
- jz L(return_value)
- jmp L(match_exit)
-
- .p2align 4
-L(FindZeroExit15):
- and $1 << 15 - 1, %rax
- jz L(return_value)
-
- .p2align 4
-L(match_exit):
- test %ah, %ah
- jnz L(match_exit_high)
- mov %al, %dl
- and $15 << 4, %dl
- jnz L(match_exit_8)
- test $0x08, %al
- jnz L(Exit4)
- test $0x04, %al
- jnz L(Exit3)
- test $0x02, %al
- jnz L(Exit2)
- lea -16(%rdi), %rax
- ret
-
- .p2align 4
-L(match_exit_8):
- test $0x80, %al
- jnz L(Exit8)
- test $0x40, %al
- jnz L(Exit7)
- test $0x20, %al
- jnz L(Exit6)
- lea -12(%rdi), %rax
- ret
-
- .p2align 4
-L(match_exit_high):
- mov %ah, %dh
- and $15 << 4, %dh
- jnz L(match_exit_high_8)
- test $0x08, %ah
- jnz L(Exit12)
- test $0x04, %ah
- jnz L(Exit11)
- test $0x02, %ah
- jnz L(Exit10)
- lea -8(%rdi), %rax
- ret
-
- .p2align 4
-L(match_exit_high_8):
- test $0x80, %ah
- jnz L(Exit16)
- test $0x40, %ah
- jnz L(Exit15)
- test $0x20, %ah
- jnz L(Exit14)
- lea -4(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit2):
- lea -15(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit3):
- lea -14(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit4):
- lea -13(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit6):
- lea -11(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit7):
- lea -10(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit8):
- lea -9(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit10):
- lea -7(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit11):
- lea -6(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit12):
- lea -5(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit14):
- lea -3(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit15):
- lea -2(%rdi), %rax
- ret
-
- .p2align 4
-L(Exit16):
- lea -1(%rdi), %rax
- ret
-
-/* Return NULL. */
- .p2align 4
-L(return_null):
- xor %rax, %rax
- ret
-
- .p2align 4
-L(prolog_find_zero):
- add %rcx, %rdi
- mov %rdx, %rcx
-L(prolog_find_zero_1):
- test %cl, %cl
- jz L(prolog_find_zero_high)
- mov %cl, %dl
- and $15, %dl
- jz L(prolog_find_zero_8)
- test $0x01, %cl
- jnz L(PrologFindZeroExit1)
- test $0x02, %cl
- jnz L(PrologFindZeroExit2)
- test $0x04, %cl
- jnz L(PrologFindZeroExit3)
- and $1 << 4 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(prolog_find_zero_8):
- test $0x10, %cl
- jnz L(PrologFindZeroExit5)
- test $0x20, %cl
- jnz L(PrologFindZeroExit6)
- test $0x40, %cl
- jnz L(PrologFindZeroExit7)
- and $1 << 8 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(prolog_find_zero_high):
- mov %ch, %dh
- and $15, %dh
- jz L(prolog_find_zero_high_8)
- test $0x01, %ch
- jnz L(PrologFindZeroExit9)
- test $0x02, %ch
- jnz L(PrologFindZeroExit10)
- test $0x04, %ch
- jnz L(PrologFindZeroExit11)
- and $1 << 12 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(prolog_find_zero_high_8):
- test $0x10, %ch
- jnz L(PrologFindZeroExit13)
- test $0x20, %ch
- jnz L(PrologFindZeroExit14)
- test $0x40, %ch
- jnz L(PrologFindZeroExit15)
- and $1 << 16 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit1):
- and $1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit2):
- and $1 << 2 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit3):
- and $1 << 3 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit5):
- and $1 << 5 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit6):
- and $1 << 6 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit7):
- and $1 << 7 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit9):
- and $1 << 9 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit10):
- and $1 << 10 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit11):
- and $1 << 11 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit13):
- and $1 << 13 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit14):
- and $1 << 14 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
- .p2align 4
-L(PrologFindZeroExit15):
- and $1 << 15 - 1, %rax
- jnz L(match_exit)
- xor %rax, %rax
- ret
-
-END (__strrchr_sse2_no_bsf)
-#endif
diff --git a/sysdeps/x86_64/multiarch/strrchr.S b/sysdeps/x86_64/multiarch/strrchr.S
deleted file mode 100644
index 3f92a41ef9..0000000000
--- a/sysdeps/x86_64/multiarch/strrchr.S
+++ /dev/null
@@ -1,288 +0,0 @@
-/* Multiple versions of strrchr
- All versions must be listed in ifunc-impl-list.c.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-#include <sysdep.h>
-#include <init-arch.h>
-
-
-/* Define multiple versions only for the definition in libc and for
- the DSO. In static binaries we need strrchr before the initialization
- happened. */
-#if defined SHARED && !defined NOT_IN_libc
- .text
-ENTRY(strrchr)
- .type strrchr, @gnu_indirect_function
- cmpl $0, __cpu_features+KIND_OFFSET(%rip)
- jne 1f
- call __init_cpu_features
-1: leaq __strrchr_sse2(%rip), %rax
- testl $bit_Slow_SSE4_2, __cpu_features+CPUID_OFFSET+index_Slow_SSE4_2(%rip)
- jnz 2f
- testl $bit_SSE4_2, __cpu_features+CPUID_OFFSET+index_SSE4_2(%rip)
- jz 2f
- leaq __strrchr_sse42(%rip), %rax
- ret
-2: testl $bit_Slow_BSF, __cpu_features+FEATURE_OFFSET+index_Slow_BSF(%rip)
- jz 3f
- leaq __strrchr_sse2_no_bsf(%rip), %rax
-3: ret
-END(strrchr)
-
-/*
- This implementation uses SSE4 instructions to compare up to 16 bytes
- at a time looking for the last occurrence of the character c in the
- string s:
-
- char *strrchr (const char *s, int c);
-
- We use 0x4a:
- _SIDD_SBYTE_OPS
- | _SIDD_CMP_EQUAL_EACH
- | _SIDD_MOST_SIGNIFICANT
- on pcmpistri to compare xmm/mem128
-
- 0 1 2 3 4 5 6 7 8 9 A B C D E F
- X X X X X X X X X X X X X X X X
-
- against xmm
-
- 0 1 2 3 4 5 6 7 8 9 A B C D E F
- C C C C C C C C C C C C C C C C
-
- to find out if the first 16byte data element has a byte C and the
- last offset. There are 4 cases:
-
- 1. The first 16byte data element has EOS and has the byte C at the
- last offset X.
- 2. The first 16byte data element is valid and has the byte C at the
- last offset X.
- 3. The first 16byte data element has EOS and doesn't have the byte C.
- 4. The first 16byte data element is valid and doesn't have the byte C.
-
- Here is the table of ECX, CFlag, ZFlag and SFlag for 3 cases:
-
- case ECX CFlag ZFlag SFlag
- 1 X 1 1 0
- 2 X 1 0 0
- 3 16 0 1 0
- 4 16 0 0 0
-
- We exit from the loop for cases 1 and 3 with jz which branches
- when ZFlag is 1. If CFlag == 1, ECX has the offset X for case 1. */
-
-
- .section .text.sse4.2,"ax",@progbits
- .align 16
- .type __strrchr_sse42, @function
- .globl __strrchr_sse42
- .hidden __strrchr_sse42
-__strrchr_sse42:
- cfi_startproc
- CALL_MCOUNT
- testb %sil, %sil
- je __strend_sse4
- xor %eax,%eax /* RAX has the last occurrence of s. */
- movd %esi, %xmm1
- punpcklbw %xmm1, %xmm1
- movl %edi, %esi
- punpcklbw %xmm1, %xmm1
- andl $15, %esi
- pshufd $0, %xmm1, %xmm1
- movq %rdi, %r8
- je L(loop)
-
-/* Handle unaligned string using psrldq. */
- leaq L(psrldq_table)(%rip), %rdx
- andq $-16, %r8
- movslq (%rdx,%rsi,4),%r9
- movdqa (%r8), %xmm0
- addq %rdx, %r9
- jmp *%r9
-
-/* Handle unaligned string with offset 1 using psrldq. */
- .p2align 4
-L(psrldq_1):
- psrldq $1, %xmm0
-
- .p2align 4
-L(unaligned_pcmpistri):
- pcmpistri $0x4a, %xmm1, %xmm0
- jnc L(unaligned_no_byte)
- leaq (%rdi,%rcx), %rax
-L(unaligned_no_byte):
- /* Find the length of the unaligned string. */
- pcmpistri $0x3a, %xmm0, %xmm0
- movl $16, %edx
- subl %esi, %edx
- cmpl %ecx, %edx
- /* Return RAX if the unaligned fragment to next 16B already
- contain the NULL terminator. */
- jg L(exit)
- addq $16, %r8
-
-/* Loop start on aligned string. */
- .p2align 4
-L(loop):
- pcmpistri $0x4a, (%r8), %xmm1
- jbe L(match_or_eos)
- addq $16, %r8
- jmp L(loop)
- .p2align 4
-L(match_or_eos):
- je L(had_eos)
-L(match_no_eos):
- leaq (%r8,%rcx), %rax
- addq $16, %r8
- jmp L(loop)
- .p2align 4
-L(had_eos):
- jnc L(exit)
- leaq (%r8,%rcx), %rax
- .p2align 4
-L(exit):
- ret
-
-/* Handle unaligned string with offset 15 using psrldq. */
- .p2align 4
-L(psrldq_15):
- psrldq $15, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 14 using psrldq. */
- .p2align 4
-L(psrldq_14):
- psrldq $14, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 13 using psrldq. */
- .p2align 4
-L(psrldq_13):
- psrldq $13, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 12 using psrldq. */
- .p2align 4
-L(psrldq_12):
- psrldq $12, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 11 using psrldq. */
- .p2align 4
-L(psrldq_11):
- psrldq $11, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 10 using psrldq. */
- .p2align 4
-L(psrldq_10):
- psrldq $10, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 9 using psrldq. */
- .p2align 4
-L(psrldq_9):
- psrldq $9, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 8 using psrldq. */
- .p2align 4
-L(psrldq_8):
- psrldq $8, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 7 using psrldq. */
- .p2align 4
-L(psrldq_7):
- psrldq $7, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 6 using psrldq. */
- .p2align 4
-L(psrldq_6):
- psrldq $6, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 5 using psrldq. */
- .p2align 4
-L(psrldq_5):
- psrldq $5, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 4 using psrldq. */
- .p2align 4
-L(psrldq_4):
- psrldq $4, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 3 using psrldq. */
- .p2align 4
-L(psrldq_3):
- psrldq $3, %xmm0
- jmp L(unaligned_pcmpistri)
-
-/* Handle unaligned string with offset 2 using psrldq. */
- .p2align 4
-L(psrldq_2):
- psrldq $2, %xmm0
- jmp L(unaligned_pcmpistri)
-
- cfi_endproc
- .size __strrchr_sse42, .-__strrchr_sse42
-
- .section .rodata.sse4.2,"a",@progbits
- .p2align 4
-L(psrldq_table):
- .int L(loop) - L(psrldq_table)
- .int L(psrldq_1) - L(psrldq_table)
- .int L(psrldq_2) - L(psrldq_table)
- .int L(psrldq_3) - L(psrldq_table)
- .int L(psrldq_4) - L(psrldq_table)
- .int L(psrldq_5) - L(psrldq_table)
- .int L(psrldq_6) - L(psrldq_table)
- .int L(psrldq_7) - L(psrldq_table)
- .int L(psrldq_8) - L(psrldq_table)
- .int L(psrldq_9) - L(psrldq_table)
- .int L(psrldq_10) - L(psrldq_table)
- .int L(psrldq_11) - L(psrldq_table)
- .int L(psrldq_12) - L(psrldq_table)
- .int L(psrldq_13) - L(psrldq_table)
- .int L(psrldq_14) - L(psrldq_table)
- .int L(psrldq_15) - L(psrldq_table)
-
-
-# undef ENTRY
-# define ENTRY(name) \
- .type __strrchr_sse2, @function; \
- .align 16; \
- .globl __strrchr_sse2; \
- .hidden __strrchr_sse2; \
- __strrchr_sse2: cfi_startproc; \
- CALL_MCOUNT
-# undef END
-# define END(name) \
- cfi_endproc; .size __strrchr_sse2, .-__strrchr_sse2
-# undef libc_hidden_builtin_def
-/* It doesn't make sense to send libc-internal strrchr calls through a PLT.
- The speedup we get from using SSE4.2 instruction is likely eaten away
- by the indirect call in the PLT. */
-# define libc_hidden_builtin_def(name) \
- .globl __GI_strrchr; __GI_strrchr = __strrchr_sse2
-#endif
-
-#include "../strrchr.S"
diff --git a/sysdeps/x86_64/multiarch/strstr-c.c b/sysdeps/x86_64/multiarch/strstr-c.c
deleted file mode 100644
index 42bbe48172..0000000000
--- a/sysdeps/x86_64/multiarch/strstr-c.c
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Multiple versions of strstr.
- All versions must be listed in ifunc-impl-list.c.
- Copyright (C) 2012-2013 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <http://www.gnu.org/licenses/>. */
-
-/* Redefine strstr so that the compiler won't complain about the type
- mismatch with the IFUNC selector in strong_alias, below. */
-#undef strstr
-#define strstr __redirect_strstr
-#include <string.h>
-#undef strstr
-
-#define STRSTR __strstr_sse2
-#ifdef SHARED
-# undef libc_hidden_builtin_def
-# define libc_hidden_builtin_def(name) \
- __hidden_ver1 (__strstr_sse2, __GI_strstr, __strstr_sse2);
-#endif
-
-#include "string/strstr.c"
-
-extern __typeof (__redirect_strstr) __strstr_sse42 attribute_hidden;
-extern __typeof (__redirect_strstr) __strstr_sse2 attribute_hidden;
-
-#include "init-arch.h"
-
-/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
- ifunc symbol properly. */
-extern __typeof (__redirect_strstr) __libc_strstr;
-libc_ifunc (__libc_strstr, HAS_SSE4_2 ? __strstr_sse42 : __strstr_sse2)
-
-#undef strstr
-strong_alias (__libc_strstr, strstr)
diff --git a/sysdeps/x86_64/multiarch/strstr-sse2-unaligned.S b/sysdeps/x86_64/multiarch/strstr-sse2-unaligned.S
new file mode 100644
index 0000000000..99bae2cc83
--- /dev/null
+++ b/sysdeps/x86_64/multiarch/strstr-sse2-unaligned.S
@@ -0,0 +1,374 @@
+/* strstr with unaligned loads
+ Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <sysdep.h>
+
+ENTRY(__strstr_sse2_unaligned)
+ movzbl (%rsi), %eax
+ testb %al, %al
+ je L(empty)
+ movzbl 1(%rsi), %edx
+ testb %dl, %dl
+ je L(strchr)
+ movd %eax, %xmm1
+ movd %edx, %xmm2
+ movq %rdi, %rax
+ andl $4095, %eax
+ punpcklbw %xmm1, %xmm1
+ cmpq $4031, %rax
+ punpcklbw %xmm2, %xmm2
+ punpcklwd %xmm1, %xmm1
+ punpcklwd %xmm2, %xmm2
+ pshufd $0, %xmm1, %xmm1
+ pshufd $0, %xmm2, %xmm2
+ ja L(cross_page)
+ movdqu (%rdi), %xmm3
+ pxor %xmm5, %xmm5
+ movdqu 1(%rdi), %xmm4
+ movdqa %xmm3, %xmm6
+ pcmpeqb %xmm1, %xmm3
+ pcmpeqb %xmm2, %xmm4
+ movdqu 16(%rdi), %xmm0
+ pcmpeqb %xmm5, %xmm6
+ pminub %xmm4, %xmm3
+ movdqa %xmm3, %xmm4
+ movdqu 17(%rdi), %xmm3
+ pcmpeqb %xmm0, %xmm5
+ pcmpeqb %xmm2, %xmm3
+ por %xmm6, %xmm4
+ pcmpeqb %xmm1, %xmm0
+ pminub %xmm3, %xmm0
+ por %xmm5, %xmm0
+ pmovmskb %xmm4, %r8d
+ pmovmskb %xmm0, %eax
+ salq $16, %rax
+ orq %rax, %r8
+ je L(next_32_bytes)
+L(next_pair_index):
+ bsf %r8, %rax
+ addq %rdi, %rax
+ cmpb $0, (%rax)
+ je L(zero1)
+ movzbl 2(%rsi), %edx
+ testb %dl, %dl
+ je L(found1)
+ cmpb 2(%rax), %dl
+ jne L(next_pair)
+ xorl %edx, %edx
+ jmp L(pair_loop_start)
+
+ .p2align 4
+L(strchr):
+ movzbl %al, %esi
+ jmp __strchr_sse2
+
+ .p2align 4
+L(pair_loop):
+ addq $1, %rdx
+ cmpb 2(%rax,%rdx), %cl
+ jne L(next_pair)
+L(pair_loop_start):
+ movzbl 3(%rsi,%rdx), %ecx
+ testb %cl, %cl
+ jne L(pair_loop)
+L(found1):
+ ret
+L(zero1):
+ xorl %eax, %eax
+ ret
+
+ .p2align 4
+L(next_pair):
+ leaq -1(%r8), %rax
+ andq %rax, %r8
+ jne L(next_pair_index)
+
+ .p2align 4
+L(next_32_bytes):
+ movdqu 32(%rdi), %xmm3
+ pxor %xmm5, %xmm5
+ movdqu 33(%rdi), %xmm4
+ movdqa %xmm3, %xmm6
+ pcmpeqb %xmm1, %xmm3
+ pcmpeqb %xmm2, %xmm4
+ movdqu 48(%rdi), %xmm0
+ pcmpeqb %xmm5, %xmm6
+ pminub %xmm4, %xmm3
+ movdqa %xmm3, %xmm4
+ movdqu 49(%rdi), %xmm3
+ pcmpeqb %xmm0, %xmm5
+ pcmpeqb %xmm2, %xmm3
+ por %xmm6, %xmm4
+ pcmpeqb %xmm1, %xmm0
+ pminub %xmm3, %xmm0
+ por %xmm5, %xmm0
+ pmovmskb %xmm4, %eax
+ salq $32, %rax
+ pmovmskb %xmm0, %r8d
+ salq $48, %r8
+ orq %rax, %r8
+ je L(loop_header)
+L(next_pair2_index):
+ bsfq %r8, %rax
+ addq %rdi, %rax
+ cmpb $0, (%rax)
+ je L(zero2)
+ movzbl 2(%rsi), %edx
+ testb %dl, %dl
+ je L(found2)
+ cmpb 2(%rax), %dl
+ jne L(next_pair2)
+ xorl %edx, %edx
+ jmp L(pair_loop2_start)
+
+ .p2align 4
+L(pair_loop2):
+ addq $1, %rdx
+ cmpb 2(%rax,%rdx), %cl
+ jne L(next_pair2)
+L(pair_loop2_start):
+ movzbl 3(%rsi,%rdx), %ecx
+ testb %cl, %cl
+ jne L(pair_loop2)
+L(found2):
+ ret
+ L(zero2):
+ xorl %eax, %eax
+ ret
+L(empty):
+ mov %rdi, %rax
+ ret
+
+ .p2align 4
+L(next_pair2):
+ leaq -1(%r8), %rax
+ andq %rax, %r8
+ jne L(next_pair2_index)
+L(loop_header):
+ movq $-512, %r11
+ movq %rdi, %r9
+
+ pxor %xmm7, %xmm7
+ andq $-64, %rdi
+
+ .p2align 4
+L(loop):
+ movdqa 64(%rdi), %xmm3
+ movdqu 63(%rdi), %xmm6
+ movdqa %xmm3, %xmm0
+ pxor %xmm2, %xmm3
+ pxor %xmm1, %xmm6
+ movdqa 80(%rdi), %xmm10
+ por %xmm3, %xmm6
+ pminub %xmm10, %xmm0
+ movdqu 79(%rdi), %xmm3
+ pxor %xmm2, %xmm10
+ pxor %xmm1, %xmm3
+ movdqa 96(%rdi), %xmm9
+ por %xmm10, %xmm3
+ pminub %xmm9, %xmm0
+ pxor %xmm2, %xmm9
+ movdqa 112(%rdi), %xmm8
+ addq $64, %rdi
+ pminub %xmm6, %xmm3
+ movdqu 31(%rdi), %xmm4
+ pminub %xmm8, %xmm0
+ pxor %xmm2, %xmm8
+ pxor %xmm1, %xmm4
+ por %xmm9, %xmm4
+ pminub %xmm4, %xmm3
+ movdqu 47(%rdi), %xmm5
+ pxor %xmm1, %xmm5
+ por %xmm8, %xmm5
+ pminub %xmm5, %xmm3
+ pminub %xmm3, %xmm0
+ pcmpeqb %xmm7, %xmm0
+ pmovmskb %xmm0, %eax
+ testl %eax, %eax
+ je L(loop)
+ pminub (%rdi), %xmm6
+ pminub 32(%rdi),%xmm4
+ pminub 48(%rdi),%xmm5
+ pcmpeqb %xmm7, %xmm6
+ pcmpeqb %xmm7, %xmm5
+ pmovmskb %xmm6, %edx
+ movdqa 16(%rdi), %xmm8
+ pcmpeqb %xmm7, %xmm4
+ movdqu 15(%rdi), %xmm0
+ pmovmskb %xmm5, %r8d
+ movdqa %xmm8, %xmm3
+ pmovmskb %xmm4, %ecx
+ pcmpeqb %xmm1,%xmm0
+ pcmpeqb %xmm2,%xmm3
+ salq $32, %rcx
+ pcmpeqb %xmm7,%xmm8
+ salq $48, %r8
+ pminub %xmm0,%xmm3
+ orq %rcx, %rdx
+ por %xmm3,%xmm8
+ orq %rdx, %r8
+ pmovmskb %xmm8, %eax
+ salq $16, %rax
+ orq %rax, %r8
+ je L(loop)
+L(next_pair_index3):
+ bsfq %r8, %rcx
+ addq %rdi, %rcx
+ cmpb $0, (%rcx)
+ je L(zero)
+ xorl %eax, %eax
+ movzbl 2(%rsi), %edx
+ testb %dl, %dl
+ je L(success3)
+ cmpb 1(%rcx), %dl
+ jne L(next_pair3)
+ jmp L(pair_loop_start3)
+
+ .p2align 4
+L(pair_loop3):
+ addq $1, %rax
+ cmpb 1(%rcx,%rax), %dl
+ jne L(next_pair3)
+L(pair_loop_start3):
+ movzbl 3(%rsi,%rax), %edx
+ testb %dl, %dl
+ jne L(pair_loop3)
+L(success3):
+ lea -1(%rcx), %rax
+ ret
+
+ .p2align 4
+L(next_pair3):
+ addq %rax, %r11
+ movq %rdi, %rax
+ subq %r9, %rax
+ cmpq %r11, %rax
+ jl L(switch_strstr)
+ leaq -1(%r8), %rax
+ andq %rax, %r8
+ jne L(next_pair_index3)
+ jmp L(loop)
+
+ .p2align 4
+L(switch_strstr):
+ movq %rdi, %rdi
+ jmp __strstr_sse2
+
+ .p2align 4
+L(cross_page):
+
+ movq %rdi, %rax
+ pxor %xmm0, %xmm0
+ andq $-64, %rax
+ movdqa (%rax), %xmm3
+ movdqu -1(%rax), %xmm4
+ movdqa %xmm3, %xmm8
+ movdqa 16(%rax), %xmm5
+ pcmpeqb %xmm1, %xmm4
+ pcmpeqb %xmm0, %xmm8
+ pcmpeqb %xmm2, %xmm3
+ movdqa %xmm5, %xmm7
+ pminub %xmm4, %xmm3
+ movdqu 15(%rax), %xmm4
+ pcmpeqb %xmm0, %xmm7
+ por %xmm3, %xmm8
+ movdqa %xmm5, %xmm3
+ movdqa 32(%rax), %xmm5
+ pcmpeqb %xmm1, %xmm4
+ pcmpeqb %xmm2, %xmm3
+ movdqa %xmm5, %xmm6
+ pmovmskb %xmm8, %ecx
+ pminub %xmm4, %xmm3
+ movdqu 31(%rax), %xmm4
+ por %xmm3, %xmm7
+ movdqa %xmm5, %xmm3
+ pcmpeqb %xmm0, %xmm6
+ movdqa 48(%rax), %xmm5
+ pcmpeqb %xmm1, %xmm4
+ pmovmskb %xmm7, %r8d
+ pcmpeqb %xmm2, %xmm3
+ pcmpeqb %xmm5, %xmm0
+ pminub %xmm4, %xmm3
+ movdqu 47(%rax), %xmm4
+ por %xmm3, %xmm6
+ movdqa %xmm5, %xmm3
+ salq $16, %r8
+ pcmpeqb %xmm1, %xmm4
+ pcmpeqb %xmm2, %xmm3
+ pmovmskb %xmm6, %r10d
+ pminub %xmm4, %xmm3
+ por %xmm3, %xmm0
+ salq $32, %r10
+ orq %r10, %r8
+ orq %rcx, %r8
+ movl %edi, %ecx
+ pmovmskb %xmm0, %edx
+ subl %eax, %ecx
+ salq $48, %rdx
+ orq %rdx, %r8
+ shrq %cl, %r8
+ je L(loop_header)
+L(next_pair_index4):
+ bsfq %r8, %rax
+ addq %rdi, %rax
+ cmpb $0, (%rax)
+ je L(zero)
+
+ cmpq %rax,%rdi
+ je L(next_pair4)
+
+ movzbl 2(%rsi), %edx
+ testb %dl, %dl
+ je L(found3)
+ cmpb 1(%rax), %dl
+ jne L(next_pair4)
+ xorl %edx, %edx
+ jmp L(pair_loop_start4)
+
+ .p2align 4
+L(pair_loop4):
+ addq $1, %rdx
+ cmpb 1(%rax,%rdx), %cl
+ jne L(next_pair4)
+L(pair_loop_start4):
+ movzbl 3(%rsi,%rdx), %ecx
+ testb %cl, %cl
+ jne L(pair_loop4)
+L(found3):
+ subq $1, %rax
+ ret
+
+ .p2align 4
+L(next_pair4):
+ leaq -1(%r8), %rax
+ andq %rax, %r8
+ jne L(next_pair_index4)
+ jmp L(loop_header)
+
+ .p2align 4
+L(found):
+ rep
+ ret
+
+ .p2align 4
+L(zero):
+ xorl %eax, %eax
+ ret
+
+
+END(__strstr_sse2_unaligned)
diff --git a/sysdeps/x86_64/multiarch/strstr.c b/sysdeps/x86_64/multiarch/strstr.c
index cd63b68c01..fbff3a8ec0 100644
--- a/sysdeps/x86_64/multiarch/strstr.c
+++ b/sysdeps/x86_64/multiarch/strstr.c
@@ -1,6 +1,6 @@
-/* strstr with SSE4.2 intrinsics
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
- Contributed by Intel Corporation.
+/* Multiple versions of strstr.
+ All versions must be listed in ifunc-impl-list.c.
+ Copyright (C) 2012-2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -17,369 +17,31 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <nmmintrin.h>
-#include "varshift.h"
-
-#ifndef STRSTR_SSE42
-# define STRSTR_SSE42 __strstr_sse42
-#endif
-
-#ifdef USE_AS_STRCASESTR
-# include <ctype.h>
-# include <locale/localeinfo.h>
-
-# define LOADBYTE(C) tolower (C)
-# define CMPBYTE(C1, C2) (tolower (C1) == tolower (C2))
-#else
-# define LOADBYTE(C) (C)
-# define CMPBYTE(C1, C2) ((C1) == (C2))
-#endif
-
-/* We use 0xe ordered-compare:
- _SIDD_SBYTE_OPS
- | _SIDD_CMP_EQUAL_ORDER
- | _SIDD_LEAST_SIGNIFICANT
- on pcmpistri to do the scanning and string comparsion requirements of
- sub-string match. In the scanning phase, we process Cflag and ECX
- index to locate the first fragment match; once the first fragment
- match position has been identified, we do comparison of subsequent
- string fragments until we can conclude false or true match; whe
- n concluding a false match, we may need to repeat scanning process
- from next relevant offset in the target string.
-
- In the scanning phase we have 4 cases:
- case ECX CFlag ZFlag SFlag
- 1 16 0 0 0
- 2a 16 0 0 1
- 2b 16 0 1 0
- 2c 16 0 1 1
-
- 1. No ordered-comparison match, both 16B fragments are valid, so
- continue to next fragment.
- 2. No ordered-comparison match, there is EOS in either fragment,
- 2a. Zflg = 0, Sflg = 1, we continue
- 2b. Zflg = 1, Sflg = 0, we conclude no match and return.
- 2c. Zflg = 1, sflg = 1, lenth determine match or no match
-
- In the string comparison phase, the 1st fragment match is fixed up
- to produce ECX = 0. Subsequent fragment compare of nonzero index
- and no match conclude a false match.
-
- case ECX CFlag ZFlag SFlag
- 3 X 1 0 0/1
- 4a 0 1 0 0
- 4b 0 1 0 1
- 4c 0 < X 1 0 0/1
- 5 16 0 1 0
-
- 3. An initial ordered-comparison fragment match, we fix up to do
- subsequent string comparison
- 4a. Continuation of fragment comparison of a string compare.
- 4b. EOS reached in the reference string, we conclude true match and
- return
- 4c. String compare failed if index is nonzero, we need to go back to
- scanning
- 5. failed string compare, go back to scanning
- */
-
-#if !(defined USE_AS_STRCASESTR && defined STRCASESTR_NONASCII)
-/* Simple replacement of movdqu to address 4KB boundary cross issue.
- If EOS occurs within less than 16B before 4KB boundary, we don't
- cross to next page. */
-static __m128i
-__m128i_strloadu (const unsigned char * p, __m128i zero)
-{
- if (__builtin_expect ((int) ((size_t) p & 0xfff) > 0xff0, 0))
- {
- size_t offset = ((size_t) p & (16 - 1));
- __m128i a = _mm_load_si128 ((__m128i *) (p - offset));
- int bmsk = _mm_movemask_epi8 (_mm_cmpeq_epi8 (a, zero));
- if ((bmsk >> offset) != 0)
- return __m128i_shift_right (a, offset);
- }
- return _mm_loadu_si128 ((__m128i *) p);
-}
-#endif
-
-#if defined USE_AS_STRCASESTR && !defined STRCASESTR_NONASCII
-
-/* Similar to __m128i_strloadu. Convert to lower case for POSIX/C
- locale and other which have single-byte letters only in the ASCII
- range. */
-static __m128i
-__m128i_strloadu_tolower (const unsigned char *p, __m128i zero, __m128i uclow,
- __m128i uchigh, __m128i lcqword)
-{
- __m128i frag = __m128i_strloadu (p, zero);
-
- /* Compare if 'Z' > bytes. Inverted way to get a mask for byte <= 'Z'. */
- __m128i r2 = _mm_cmpgt_epi8 (uchigh, frag);
- /* Compare if bytes are > 'A' - 1. */
- __m128i r1 = _mm_cmpgt_epi8 (frag, uclow);
- /* Mask byte == ff if byte(r2) <= 'Z' and byte(r1) > 'A' - 1. */
- __m128i mask = _mm_and_si128 (r2, r1);
- /* Apply lowercase bit 6 mask for above mask bytes == ff. */
- return _mm_or_si128 (frag, _mm_and_si128 (mask, lcqword));
-}
-
-#endif
-
-/* Calculate Knuth-Morris-Pratt string searching algorithm (or KMP
- algorithm) overlap for a fully populated 16B vector.
- Input parameter: 1st 16Byte loaded from the reference string of a
- strstr function.
- We don't use KMP algorithm if reference string is less than 16B. */
-static int
-__inline__ __attribute__ ((__always_inline__,))
-KMP16Bovrlap (__m128i s2)
-{
- __m128i b = _mm_unpacklo_epi8 (s2, s2);
- __m128i a = _mm_unpacklo_epi8 (b, b);
- a = _mm_shuffle_epi32 (a, 0);
- b = _mm_srli_si128 (s2, sizeof (char));
- int bmsk = _mm_movemask_epi8 (_mm_cmpeq_epi8 (b, a));
-
- /* _BitScanForward(&k1, bmsk); */
- int k1;
- __asm ("bsfl %[bmsk], %[k1]" : [k1] "=r" (k1) : [bmsk] "r" (bmsk));
- if (!bmsk)
- return 16;
- else if (bmsk == 0x7fff)
- return 1;
- else if (!k1)
- {
- /* There are al least two distinct chars in s2. If byte 0 and 1 are
- idential and the distinct value lies farther down, we can deduce
- the next byte offset to restart full compare is least no earlier
- than byte 3. */
- return 3;
- }
- else
- {
- /* Byte 1 is not degenerated to byte 0. */
- return k1 + 1;
- }
-}
-
-char *
-__attribute__ ((section (".text.sse4.2")))
-STRSTR_SSE42 (const unsigned char *s1, const unsigned char *s2)
-{
-#define p1 s1
- const unsigned char *p2 = s2;
-
-#ifndef STRCASESTR_NONASCII
- if (__builtin_expect (p2[0] == '\0', 0))
- return (char *) p1;
-
- if (__builtin_expect (p1[0] == '\0', 0))
- return NULL;
-
- /* Check if p1 length is 1 byte long. */
- if (__builtin_expect (p1[1] == '\0', 0))
- return p2[1] == '\0' && CMPBYTE (p1[0], p2[0]) ? (char *) p1 : NULL;
-#endif
-
-#ifdef USE_AS_STRCASESTR
-# ifndef STRCASESTR_NONASCII
- if (__builtin_expect (_NL_CURRENT_WORD (LC_CTYPE, _NL_CTYPE_NONASCII_CASE)
- != 0, 0))
- return __strcasestr_sse42_nonascii (s1, s2);
-
- const __m128i uclow = _mm_set1_epi8 (0x40);
- const __m128i uchigh = _mm_set1_epi8 (0x5b);
- const __m128i lcqword = _mm_set1_epi8 (0x20);
- const __m128i zero = _mm_setzero_si128 ();
-# define strloadu(p) __m128i_strloadu_tolower (p, zero, uclow, uchigh, lcqword)
-# else
-# define strloadu __m128i_strloadu_tolower
-# define zero _mm_setzero_si128 ()
-# endif
-#else
-# define strloadu(p) __m128i_strloadu (p, zero)
- const __m128i zero = _mm_setzero_si128 ();
+/* Redefine strstr so that the compiler won't complain about the type
+ mismatch with the IFUNC selector in strong_alias, below. */
+#undef strstr
+#define strstr __redirect_strstr
+#include <string.h>
+#undef strstr
+
+#define STRSTR __strstr_sse2
+#ifdef SHARED
+# undef libc_hidden_builtin_def
+# define libc_hidden_builtin_def(name) \
+ __hidden_ver1 (__strstr_sse2, __GI_strstr, __strstr_sse2);
#endif
- /* p1 > 1 byte long. Load up to 16 bytes of fragment. */
- __m128i frag1 = strloadu (p1);
-
- __m128i frag2;
- if (p2[1] != '\0')
- /* p2 is > 1 byte long. */
- frag2 = strloadu (p2);
- else
- frag2 = _mm_insert_epi8 (zero, LOADBYTE (p2[0]), 0);
-
- /* Unsigned bytes, equal order, does frag2 has null? */
- int cmp_c = _mm_cmpistrc (frag2, frag1, 0x0c);
- int cmp_z = _mm_cmpistrz (frag2, frag1, 0x0c);
- int cmp = _mm_cmpistri (frag2, frag1, 0x0c);
- int cmp_s = _mm_cmpistrs (frag2, frag1, 0x0c);
- if (cmp_s & cmp_c)
- {
- int bmsk = _mm_movemask_epi8 (_mm_cmpeq_epi8 (frag2, zero));
- int len;
- __asm ("bsfl %[bmsk], %[len]"
- : [len] "=r" (len) : [bmsk] "r" (bmsk));
- p1 += cmp;
- if ((len + cmp) <= 16)
- return (char *) p1;
-
- /* Load up to 16 bytes of fragment. */
- frag1 = strloadu (p1);
- cmp_c = _mm_cmpistrc (frag2, frag1, 0x0c);
- cmp_s = _mm_cmpistrs (frag2, frag1, 0x0c);
- cmp_z = _mm_cmpistrz (frag2, frag1, 0x0c);
- cmp = _mm_cmpistri (frag2, frag1, 0x0c);
- if ((len + cmp) <= 16)
- return (char *) p1 + cmp;
- }
-
- if (cmp_s)
- {
- /* Adjust addr for 16B alginment in ensuing loop. */
- while (!cmp_z)
- {
- p1 += cmp;
- /* Load up to 16 bytes of fragment. */
- frag1 = strloadu (p1);
- cmp = _mm_cmpistri (frag2, frag1, 0x0c);
- cmp_c = _mm_cmpistrc (frag2, frag1, 0x0c);
- cmp_z = _mm_cmpistrz (frag2, frag1, 0x0c);
- /* Because s2 < 16 bytes and we adjusted p1 by non-zero cmp
- once already, this time cmp will be zero and we can exit. */
- if ((!cmp) & cmp_c)
- break;
- }
-
- if (!cmp_c)
- return NULL;
-
- /* Since s2 is less than 16 bytes, com_c is definitive
- determination of full match. */
- return (char *) p1 + cmp;
- }
-
- /* General case, s2 is at least 16 bytes or more.
- First, the common case of false-match at first byte of p2. */
- const unsigned char *pt = NULL;
- int kmp_fwd = 0;
-re_trace:
- while (!cmp_c)
- {
- /* frag1 has null. */
- if (cmp_z)
- return NULL;
-
- /* frag 1 has no null, advance 16 bytes. */
- p1 += 16;
- /* Load up to 16 bytes of fragment. */
- frag1 = strloadu (p1);
- /* Unsigned bytes, equal order, is there a partial match? */
- cmp_c = _mm_cmpistrc (frag2, frag1, 0x0c);
- cmp = _mm_cmpistri (frag2, frag1, 0x0c);
- cmp_z = _mm_cmpistrz (frag2, frag1, 0x0c);
- }
-
- /* Next, handle initial positive match as first byte of p2. We have
- a partial fragment match, make full determination until we reached
- end of s2. */
- if (!cmp)
- {
- if (cmp_z)
- return (char *) p1;
-
- pt = p1;
- p1 += 16;
- p2 += 16;
- /* Load up to 16 bytes of fragment. */
- frag2 = strloadu (p2);
- }
- else
- {
- /* Adjust 16B alignment. */
- p1 += cmp;
- pt = p1;
- }
-
- /* Load up to 16 bytes of fragment. */
- frag1 = strloadu (p1);
-
- /* Unsigned bytes, equal order, does frag2 has null? */
- cmp_c = _mm_cmpistrc (frag2, frag1, 0x0c);
- cmp_z = _mm_cmpistrz (frag2, frag1, 0x0c);
- cmp = _mm_cmpistri (frag2, frag1, 0x0c);
- cmp_s = _mm_cmpistrs (frag2, frag1, 0x0c);
- while (!(cmp | cmp_z | cmp_s))
- {
- p1 += 16;
- p2 += 16;
- /* Load up to 16 bytes of fragment. */
- frag2 = strloadu (p2);
- /* Load up to 16 bytes of fragment. */
- frag1 = strloadu (p1);
- /* Unsigned bytes, equal order, does frag2 has null? */
- cmp_c = _mm_cmpistrc (frag2, frag1, 0x0c);
- cmp_z = _mm_cmpistrz (frag2, frag1, 0x0c);
- cmp = _mm_cmpistri (frag2, frag1, 0x0c);
- cmp_s = _mm_cmpistrs (frag2, frag1, 0x0c);
- }
-
- /* Full determination yielded a false result, retrace s1 to next
- starting position.
- Zflg 1 0 1 0/1
- Sflg 0 1 1 0/1
- cmp na 0 0 >0
- action done done continue continue if s2 < s1
- false match retrace s1 else false
- */
-
- if (cmp_s & !cmp)
- return (char *) pt;
- if (cmp_z)
- {
- if (!cmp_s)
- return NULL;
-
- /* Handle both zero and sign flag set and s1 is shorter in
- length. */
- int bmsk = _mm_movemask_epi8 (_mm_cmpeq_epi8 (zero, frag2));
- int bmsk1 = _mm_movemask_epi8 (_mm_cmpeq_epi8 (zero, frag1));
- int len;
- int len1;
- __asm ("bsfl %[bmsk], %[len]"
- : [len] "=r" (len) : [bmsk] "r" (bmsk));
- __asm ("bsfl %[bmsk1], %[len1]"
- : [len1] "=r" (len1) : [bmsk1] "r" (bmsk1));
- if (len >= len1)
- return NULL;
- }
- else if (!cmp)
- return (char *) pt;
-
- /* Otherwise, we have to retrace and continue. Default of multiple
- paths that need to retrace from next byte in s1. */
- p2 = s2;
- frag2 = strloadu (p2);
-
- if (!kmp_fwd)
- kmp_fwd = KMP16Bovrlap (frag2);
+#include "string/strstr.c"
- /* KMP algorithm predicted overlap needs to be corrected for
- partial fragment compare. */
- p1 = pt + (kmp_fwd > cmp ? cmp : kmp_fwd);
+extern __typeof (__redirect_strstr) __strstr_sse2_unaligned attribute_hidden;
+extern __typeof (__redirect_strstr) __strstr_sse2 attribute_hidden;
- /* Since s2 is at least 16 bytes long, we're certain there is no
- match. */
- if (p1[0] == '\0')
- return NULL;
+#include "init-arch.h"
- /* Load up to 16 bytes of fragment. */
- frag1 = strloadu (p1);
+/* Avoid DWARF definition DIE on ifunc symbol so that GDB can handle
+ ifunc symbol properly. */
+extern __typeof (__redirect_strstr) __libc_strstr;
+libc_ifunc (__libc_strstr, HAS_FAST_UNALIGNED_LOAD ? __strstr_sse2_unaligned : __strstr_sse2)
- /* Unsigned bytes, equal order, is there a partial match? */
- cmp_c = _mm_cmpistrc (frag2, frag1, 0x0c);
- cmp = _mm_cmpistri (frag2, frag1, 0x0c);
- cmp_z = _mm_cmpistrz (frag2, frag1, 0x0c);
- goto re_trace;
-}
+#undef strstr
+strong_alias (__libc_strstr, strstr)
diff --git a/sysdeps/x86_64/preconfigure b/sysdeps/x86_64/preconfigure
index d5abba8824..c8f1e0e132 100644
--- a/sysdeps/x86_64/preconfigure
+++ b/sysdeps/x86_64/preconfigure
@@ -1,4 +1,4 @@
-# This file is generated from configure.in by Autoconf. DO NOT EDIT!
+# This file is generated from configure.ac by Autoconf. DO NOT EDIT!
# Local preconfigure fragment for sysdeps/x86_64
test -n "$base_machine" || case "$machine" in
diff --git a/sysdeps/x86_64/preconfigure.in b/sysdeps/x86_64/preconfigure.ac
index 600700ea1a..600700ea1a 100644
--- a/sysdeps/x86_64/preconfigure.in
+++ b/sysdeps/x86_64/preconfigure.ac
diff --git a/sysdeps/x86_64/stackguard-macros.h b/sysdeps/x86_64/stackguard-macros.h
index d7fedb3737..1948800cd0 100644
--- a/sysdeps/x86_64/stackguard-macros.h
+++ b/sysdeps/x86_64/stackguard-macros.h
@@ -4,3 +4,8 @@
({ uintptr_t x; \
asm ("mov %%fs:%c1, %0" : "=r" (x) \
: "i" (offsetof (tcbhead_t, stack_guard))); x; })
+
+#define POINTER_CHK_GUARD \
+ ({ uintptr_t x; \
+ asm ("mov %%fs:%c1, %0" : "=r" (x) \
+ : "i" (offsetof (tcbhead_t, pointer_guard))); x; })
diff --git a/sysdeps/x86_64/strchr.S b/sysdeps/x86_64/strchr.S
index d89f1eba8f..7440500a67 100644
--- a/sysdeps/x86_64/strchr.S
+++ b/sysdeps/x86_64/strchr.S
@@ -19,51 +19,169 @@
#include <sysdep.h>
-
.text
ENTRY (strchr)
movd %esi, %xmm1
- movq %rdi, %rcx
- punpcklbw %xmm1, %xmm1
- andq $~15, %rdi
- pxor %xmm2, %xmm2
+ movl %edi, %eax
+ andl $4095, %eax
punpcklbw %xmm1, %xmm1
- orl $0xffffffff, %esi
- movdqa (%rdi), %xmm0
+ cmpl $4032, %eax
+ punpcklwd %xmm1, %xmm1
pshufd $0, %xmm1, %xmm1
- subq %rdi, %rcx
- movdqa %xmm0, %xmm3
- leaq 16(%rdi), %rdi
+ jg L(cross_page)
+ movdqu (%rdi), %xmm0
+ pxor %xmm3, %xmm3
+ movdqa %xmm0, %xmm4
pcmpeqb %xmm1, %xmm0
- pcmpeqb %xmm2, %xmm3
- shl %cl, %esi
- pmovmskb %xmm0, %edx
- pmovmskb %xmm3, %ecx
- andl %esi, %edx
- andl %esi, %ecx
- orl %edx, %ecx
- jnz 1f
+ pcmpeqb %xmm3, %xmm4
+ por %xmm4, %xmm0
+ pmovmskb %xmm0, %eax
+ test %eax, %eax
+ je L(next_48_bytes)
+ bsf %eax, %eax
+#ifdef AS_STRCHRNUL
+ leaq (%rdi,%rax), %rax
+#else
+ movl $0, %edx
+ leaq (%rdi,%rax), %rax
+ cmpb %sil, (%rax)
+ cmovne %rdx, %rax
+#endif
+ ret
-2: movdqa (%rdi), %xmm0
- leaq 16(%rdi), %rdi
- movdqa %xmm0, %xmm3
+ .p2align 3
+ L(next_48_bytes):
+ movdqu 16(%rdi), %xmm0
+ movdqa %xmm0, %xmm4
pcmpeqb %xmm1, %xmm0
- pcmpeqb %xmm2, %xmm3
- pmovmskb %xmm0, %edx
- pmovmskb %xmm3, %ecx
- orl %edx, %ecx
- jz 2b
+ pcmpeqb %xmm3, %xmm4
+ por %xmm4, %xmm0
+ pmovmskb %xmm0, %ecx
+ movdqu 32(%rdi), %xmm0
+ movdqa %xmm0, %xmm4
+ pcmpeqb %xmm1, %xmm0
+ salq $16, %rcx
+ pcmpeqb %xmm3, %xmm4
+ por %xmm4, %xmm0
+ pmovmskb %xmm0, %eax
+ movdqu 48(%rdi), %xmm0
+ pcmpeqb %xmm0, %xmm3
+ salq $32, %rax
+ pcmpeqb %xmm1, %xmm0
+ orq %rcx, %rax
+ por %xmm3, %xmm0
+ pmovmskb %xmm0, %ecx
+ salq $48, %rcx
+ orq %rcx, %rax
+ testq %rax, %rax
+ jne L(return)
+L(loop_start):
+ /* We use this alignment to force loop be aligned to 8 but not
+ 16 bytes. This gives better sheduling on AMD processors. */
+ .p2align 4
+ pxor %xmm6, %xmm6
+ andq $-64, %rdi
+ .p2align 3
+L(loop64):
+ addq $64, %rdi
+ movdqa (%rdi), %xmm5
+ movdqa 16(%rdi), %xmm2
+ movdqa 32(%rdi), %xmm3
+ pxor %xmm1, %xmm5
+ movdqa 48(%rdi), %xmm4
+ pxor %xmm1, %xmm2
+ pxor %xmm1, %xmm3
+ pminub (%rdi), %xmm5
+ pxor %xmm1, %xmm4
+ pminub 16(%rdi), %xmm2
+ pminub 32(%rdi), %xmm3
+ pminub %xmm2, %xmm5
+ pminub 48(%rdi), %xmm4
+ pminub %xmm3, %xmm5
+ pminub %xmm4, %xmm5
+ pcmpeqb %xmm6, %xmm5
+ pmovmskb %xmm5, %eax
+
+ testl %eax, %eax
+ je L(loop64)
+
+ movdqa (%rdi), %xmm5
+ movdqa %xmm5, %xmm0
+ pcmpeqb %xmm1, %xmm5
+ pcmpeqb %xmm6, %xmm0
+ por %xmm0, %xmm5
+ pcmpeqb %xmm6, %xmm2
+ pcmpeqb %xmm6, %xmm3
+ pcmpeqb %xmm6, %xmm4
+
+ pmovmskb %xmm5, %ecx
+ pmovmskb %xmm2, %eax
+ salq $16, %rax
+ pmovmskb %xmm3, %r8d
+ pmovmskb %xmm4, %edx
+ salq $32, %r8
+ orq %r8, %rax
+ orq %rcx, %rax
+ salq $48, %rdx
+ orq %rdx, %rax
+ .p2align 3
+L(return):
+ bsfq %rax, %rax
+#ifdef AS_STRCHRNUL
+ leaq (%rdi,%rax), %rax
+#else
+ movl $0, %edx
+ leaq (%rdi,%rax), %rax
+ cmpb %sil, (%rax)
+ cmovne %rdx, %rax
+#endif
+ ret
+ .p2align 4
+
+L(cross_page):
+ movq %rdi, %rdx
+ pxor %xmm2, %xmm2
+ andq $-64, %rdx
+ movdqa %xmm1, %xmm0
+ movdqa (%rdx), %xmm3
+ movdqa %xmm3, %xmm4
+ pcmpeqb %xmm1, %xmm3
+ pcmpeqb %xmm2, %xmm4
+ por %xmm4, %xmm3
+ pmovmskb %xmm3, %r8d
+ movdqa 16(%rdx), %xmm3
+ movdqa %xmm3, %xmm4
+ pcmpeqb %xmm1, %xmm3
+ pcmpeqb %xmm2, %xmm4
+ por %xmm4, %xmm3
+ pmovmskb %xmm3, %eax
+ movdqa 32(%rdx), %xmm3
+ movdqa %xmm3, %xmm4
+ pcmpeqb %xmm1, %xmm3
+ salq $16, %rax
+ pcmpeqb %xmm2, %xmm4
+ por %xmm4, %xmm3
+ pmovmskb %xmm3, %r9d
+ movdqa 48(%rdx), %xmm3
+ pcmpeqb %xmm3, %xmm2
+ salq $32, %r9
+ pcmpeqb %xmm3, %xmm0
+ orq %r9, %rax
+ orq %r8, %rax
+ por %xmm2, %xmm0
+ pmovmskb %xmm0, %ecx
+ salq $48, %rcx
+ orq %rcx, %rax
+ movl %edi, %ecx
+ subb %dl, %cl
+ shrq %cl, %rax
+ testq %rax, %rax
+ jne L(return)
+ jmp L(loop_start)
-1: bsfl %edx, %edx
- jz 4f
- bsfl %ecx, %ecx
- leaq -16(%rdi,%rdx), %rax
- cmpl %edx, %ecx
- je 5f
-4: xorl %eax, %eax
-5: ret
END (strchr)
+#ifndef AS_STRCHRNUL
weak_alias (strchr, index)
libc_hidden_builtin_def (strchr)
-
+#endif
diff --git a/sysdeps/x86_64/strchrnul.S b/sysdeps/x86_64/strchrnul.S
index d8c345ba7d..bceeb61875 100644
--- a/sysdeps/x86_64/strchrnul.S
+++ b/sysdeps/x86_64/strchrnul.S
@@ -20,43 +20,8 @@
#include <sysdep.h>
-
- .text
-ENTRY (__strchrnul)
- movd %esi, %xmm1
- movq %rdi, %rcx
- punpcklbw %xmm1, %xmm1
- andq $~15, %rdi
- pxor %xmm2, %xmm2
- punpcklbw %xmm1, %xmm1
- orl $0xffffffff, %esi
- movdqa (%rdi), %xmm0
- pshufd $0, %xmm1, %xmm1
- subq %rdi, %rcx
- movdqa %xmm0, %xmm3
- leaq 16(%rdi), %rdi
- pcmpeqb %xmm1, %xmm0
- pcmpeqb %xmm2, %xmm3
- shl %cl, %esi
- pmovmskb %xmm0, %edx
- pmovmskb %xmm3, %ecx
- orl %edx, %ecx
- andl %esi, %ecx
- jnz 1f
-
-2: movdqa (%rdi), %xmm0
- leaq 16(%rdi), %rdi
- movdqa %xmm0, %xmm3
- pcmpeqb %xmm1, %xmm0
- pcmpeqb %xmm2, %xmm3
- pmovmskb %xmm0, %edx
- pmovmskb %xmm3, %ecx
- orl %edx, %ecx
- jz 2b
-
-1: bsfl %ecx, %edx
- leaq -16(%rdi,%rdx), %rax
- ret
-END (__strchrnul)
+#define strchr __strchrnul
+#define AS_STRCHRNUL
+#include "strchr.S"
weak_alias (__strchrnul, strchrnul)
diff --git a/sysdeps/x86_64/strrchr.S b/sysdeps/x86_64/strrchr.S
index e413b07438..2a07ff75ac 100644
--- a/sysdeps/x86_64/strrchr.S
+++ b/sysdeps/x86_64/strrchr.S
@@ -1,6 +1,5 @@
/* strrchr (str, ch) -- Return pointer to last occurrence of CH in STR.
- For AMD x86-64.
- Copyright (C) 2009-2013 Free Software Foundation, Inc.
+ Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -17,63 +16,212 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#include <sysdep.h>
+#include <sysdep.h>
.text
ENTRY (strrchr)
movd %esi, %xmm1
- movq %rdi, %rcx
- punpcklbw %xmm1, %xmm1
- andq $~15, %rdi
- pxor %xmm2, %xmm2
- punpcklbw %xmm1, %xmm1
- orl $0xffffffff, %esi
- movdqa (%rdi), %xmm0
+ movq %rdi, %rax
+ andl $4095, %eax
+ punpcklbw %xmm1, %xmm1
+ cmpq $4032, %rax
+ punpcklwd %xmm1, %xmm1
pshufd $0, %xmm1, %xmm1
- subq %rdi, %rcx
+ ja L(cross_page)
+ movdqu (%rdi), %xmm0
+ pxor %xmm2, %xmm2
movdqa %xmm0, %xmm3
- leaq 16(%rdi), %rdi
pcmpeqb %xmm1, %xmm0
pcmpeqb %xmm2, %xmm3
- shl %cl, %esi
- pmovmskb %xmm0, %edx
- pmovmskb %xmm3, %ecx
- andl %esi, %edx
- andl %esi, %ecx
- xorl %eax, %eax
- movl %edx, %esi
- orl %ecx, %esi
- jnz 1f
+ pmovmskb %xmm0, %ecx
+ pmovmskb %xmm3, %edx
+ testq %rdx, %rdx
+ je L(next_48_bytes)
+ leaq -1(%rdx), %rax
+ xorq %rdx, %rax
+ andq %rcx, %rax
+ je L(exit)
+ bsrq %rax, %rax
+ addq %rdi, %rax
+ ret
-2: movdqa (%rdi), %xmm0
- leaq 16(%rdi), %rdi
- movdqa %xmm0, %xmm3
+ .p2align 4
+L(next_48_bytes):
+ movdqu 16(%rdi), %xmm4
+ movdqa %xmm4, %xmm5
+ movdqu 32(%rdi), %xmm3
+ pcmpeqb %xmm1, %xmm4
+ pcmpeqb %xmm2, %xmm5
+ movdqu 48(%rdi), %xmm0
+ pmovmskb %xmm5, %edx
+ movdqa %xmm3, %xmm5
+ pcmpeqb %xmm1, %xmm3
+ pcmpeqb %xmm2, %xmm5
+ pcmpeqb %xmm0, %xmm2
+ salq $16, %rdx
+ pmovmskb %xmm3, %r8d
+ pmovmskb %xmm5, %eax
+ pmovmskb %xmm2, %esi
+ salq $32, %r8
+ salq $32, %rax
pcmpeqb %xmm1, %xmm0
- pcmpeqb %xmm2, %xmm3
- pmovmskb %xmm0, %edx
- pmovmskb %xmm3, %ecx
- movl %edx, %esi
- orl %ecx, %esi
- jz 2b
+ orq %rdx, %rax
+ movq %rsi, %rdx
+ pmovmskb %xmm4, %esi
+ salq $48, %rdx
+ salq $16, %rsi
+ orq %r8, %rsi
+ orq %rcx, %rsi
+ pmovmskb %xmm0, %ecx
+ salq $48, %rcx
+ orq %rcx, %rsi
+ orq %rdx, %rax
+ je L(loop_header2)
+ leaq -1(%rax), %rcx
+ xorq %rax, %rcx
+ andq %rcx, %rsi
+ je L(exit)
+ bsrq %rsi, %rsi
+ leaq (%rdi,%rsi), %rax
+ ret
-1: bsfl %ecx, %r9d
- movl $0xffffffff, %r8d
- movl $31, %ecx
- jnz 5f
+ .p2align 4
+L(loop_header2):
+ testq %rsi, %rsi
+ movq %rdi, %rcx
+ je L(no_c_found)
+L(loop_header):
+ addq $64, %rdi
+ pxor %xmm7, %xmm7
+ andq $-64, %rdi
+ jmp L(loop_entry)
+
+ .p2align 4
+L(loop64):
+ testq %rdx, %rdx
+ cmovne %rdx, %rsi
+ cmovne %rdi, %rcx
+ addq $64, %rdi
+L(loop_entry):
+ movdqa 32(%rdi), %xmm3
+ pxor %xmm6, %xmm6
+ movdqa 48(%rdi), %xmm2
+ movdqa %xmm3, %xmm0
+ movdqa 16(%rdi), %xmm4
+ pminub %xmm2, %xmm0
+ movdqa (%rdi), %xmm5
+ pminub %xmm4, %xmm0
+ pminub %xmm5, %xmm0
+ pcmpeqb %xmm7, %xmm0
+ pmovmskb %xmm0, %eax
+ movdqa %xmm5, %xmm0
+ pcmpeqb %xmm1, %xmm0
+ pmovmskb %xmm0, %r9d
+ movdqa %xmm4, %xmm0
+ pcmpeqb %xmm1, %xmm0
+ pmovmskb %xmm0, %edx
+ movdqa %xmm3, %xmm0
+ pcmpeqb %xmm1, %xmm0
+ salq $16, %rdx
+ pmovmskb %xmm0, %r10d
+ movdqa %xmm2, %xmm0
+ pcmpeqb %xmm1, %xmm0
+ salq $32, %r10
+ orq %r10, %rdx
+ pmovmskb %xmm0, %r8d
+ orq %r9, %rdx
+ salq $48, %r8
+ orq %r8, %rdx
+ testl %eax, %eax
+ je L(loop64)
+ pcmpeqb %xmm6, %xmm4
+ pcmpeqb %xmm6, %xmm3
+ pcmpeqb %xmm6, %xmm5
+ pmovmskb %xmm4, %eax
+ pmovmskb %xmm3, %r10d
+ pcmpeqb %xmm6, %xmm2
+ pmovmskb %xmm5, %r9d
+ salq $32, %r10
+ salq $16, %rax
+ pmovmskb %xmm2, %r8d
+ orq %r10, %rax
+ orq %r9, %rax
+ salq $48, %r8
+ orq %r8, %rax
+ leaq -1(%rax), %r8
+ xorq %rax, %r8
+ andq %r8, %rdx
+ cmovne %rdi, %rcx
+ cmovne %rdx, %rsi
+ bsrq %rsi, %rsi
+ leaq (%rcx,%rsi), %rax
+ ret
- bsrl %edx, %edx
- jz 2b
- leaq -16(%rdi,%rdx), %rax
- jmp 2b
+ .p2align 4
+L(no_c_found):
+ movl $1, %esi
+ xorl %ecx, %ecx
+ jmp L(loop_header)
+
+ .p2align 4
+L(exit):
+ xorl %eax, %eax
+ ret
-5: subl %r9d, %ecx
- shrl %cl, %r8d
- andl %r8d, %edx
- bsrl %edx, %edx
- jz 4f
- leaq -16(%rdi,%rdx), %rax
-4: ret
+ .p2align 4
+L(cross_page):
+ movq %rdi, %rax
+ pxor %xmm0, %xmm0
+ andq $-64, %rax
+ movdqu (%rax), %xmm5
+ movdqa %xmm5, %xmm6
+ movdqu 16(%rax), %xmm4
+ pcmpeqb %xmm1, %xmm5
+ pcmpeqb %xmm0, %xmm6
+ movdqu 32(%rax), %xmm3
+ pmovmskb %xmm6, %esi
+ movdqa %xmm4, %xmm6
+ movdqu 48(%rax), %xmm2
+ pcmpeqb %xmm1, %xmm4
+ pcmpeqb %xmm0, %xmm6
+ pmovmskb %xmm6, %edx
+ movdqa %xmm3, %xmm6
+ pcmpeqb %xmm1, %xmm3
+ pcmpeqb %xmm0, %xmm6
+ pcmpeqb %xmm2, %xmm0
+ salq $16, %rdx
+ pmovmskb %xmm3, %r9d
+ pmovmskb %xmm6, %r8d
+ pmovmskb %xmm0, %ecx
+ salq $32, %r9
+ salq $32, %r8
+ pcmpeqb %xmm1, %xmm2
+ orq %r8, %rdx
+ salq $48, %rcx
+ pmovmskb %xmm5, %r8d
+ orq %rsi, %rdx
+ pmovmskb %xmm4, %esi
+ orq %rcx, %rdx
+ pmovmskb %xmm2, %ecx
+ salq $16, %rsi
+ salq $48, %rcx
+ orq %r9, %rsi
+ orq %r8, %rsi
+ orq %rcx, %rsi
+ movl %edi, %ecx
+ subl %eax, %ecx
+ shrq %cl, %rdx
+ shrq %cl, %rsi
+ testq %rdx, %rdx
+ je L(loop_header2)
+ leaq -1(%rdx), %rax
+ xorq %rdx, %rax
+ andq %rax, %rsi
+ je L(exit)
+ bsrq %rsi, %rax
+ addq %rdi, %rax
+ ret
END (strrchr)
weak_alias (strrchr, rindex)
diff --git a/time/strptime_l.c b/time/strptime_l.c
index 00fc1ef594..b9a8e144fe 100644
--- a/time/strptime_l.c
+++ b/time/strptime_l.c
@@ -320,17 +320,14 @@ __strptime_internal (rp, fmt, tmp, statep LOCALE_PARAM)
}
++fmt;
- if (statep != NULL)
- {
- /* In recursive calls silently discard strftime modifiers. */
- while (*fmt == '-' || *fmt == '_' || *fmt == '0'
- || *fmt == '^' || *fmt == '#')
- ++fmt;
-
- /* And field width. */
- while (*fmt >= '0' && *fmt <= '9')
- ++fmt;
- }
+ /* We discard strftime modifiers. */
+ while (*fmt == '-' || *fmt == '_' || *fmt == '0'
+ || *fmt == '^' || *fmt == '#')
+ ++fmt;
+
+ /* And field width. */
+ while (*fmt >= '0' && *fmt <= '9')
+ ++fmt;
#ifndef _NL_CURRENT
/* We need this for handling the `E' modifier. */
@@ -744,7 +741,11 @@ __strptime_internal (rp, fmt, tmp, statep LOCALE_PARAM)
s.want_xday = 1;
break;
case 'Z':
- /* XXX How to handle this? */
+ /* Read timezone but perform no conversion. */
+ while (ISSPACE (*rp))
+ rp++;
+ while (!ISSPACE (*rp) && *rp != '\0')
+ rp++;
break;
case 'z':
/* We recognize two formats: if two digits are given, these
diff --git a/time/tst-strptime.c b/time/tst-strptime.c
index 21fbb63648..5c5fa7b805 100644
--- a/time/tst-strptime.c
+++ b/time/tst-strptime.c
@@ -41,6 +41,9 @@ static const struct
{ "C", "19990502123412", "%Y%m%d%H%M%S", 0, 121, 4, 2 },
{ "C", "2001 20 Mon", "%Y %U %a", 1, 140, 4, 21 },
{ "C", "2001 21 Mon", "%Y %W %a", 1, 140, 4, 21 },
+ { "C", "2001 21 Mon", "%2000Y %W %a", 1, 140, 4, 21 },
+ { "C", "2001 21 Mon", "%^Y %W %a", 1, 140, 4, 21 },
+ { "C", "2001 EST 21 Mon", "%Y %Z %W %a", 1, 140, 4, 21 },
{ "C", "2012 00 Sun", "%Y %W %a", 0, 0, 0, 1 },
{ "ja_JP.EUC-JP", "2000-01-01 08:12:21 AM", "%Y-%m-%d %I:%M:%S %p",
6, 0, 0, 1 },
diff --git a/time/tzfile.c b/time/tzfile.c
index 9dd5130757..3ea3051f4c 100644
--- a/time/tzfile.c
+++ b/time/tzfile.c
@@ -114,6 +114,7 @@ __tzfile_read (const char *file, size_t extra, char **extrap)
int was_using_tzfile = __use_tzfile;
int trans_width = 4;
size_t tzspec_len;
+ char *new = NULL;
if (sizeof (time_t) != 4 && sizeof (time_t) != 8)
abort ();
@@ -145,22 +146,12 @@ __tzfile_read (const char *file, size_t extra, char **extrap)
if (*file != '/')
{
const char *tzdir;
- unsigned int len, tzdir_len;
- char *new, *tmp;
tzdir = getenv ("TZDIR");
if (tzdir == NULL || *tzdir == '\0')
- {
- tzdir = default_tzdir;
- tzdir_len = sizeof (default_tzdir) - 1;
- }
- else
- tzdir_len = strlen (tzdir);
- len = strlen (file) + 1;
- new = (char *) __alloca (tzdir_len + 1 + len);
- tmp = __mempcpy (new, tzdir, tzdir_len);
- *tmp++ = '/';
- memcpy (tmp, file, len);
+ tzdir = default_tzdir;
+ if (__asprintf (&new, "%s/%s", tzdir, file) == -1)
+ goto ret_free_transitions;
file = new;
}
@@ -170,11 +161,7 @@ __tzfile_read (const char *file, size_t extra, char **extrap)
&& stat64 (file, &st) == 0
&& tzfile_ino == st.st_ino && tzfile_dev == st.st_dev
&& tzfile_mtime == st.st_mtime)
- {
- /* Nothing to do. */
- __use_tzfile = 1;
- return;
- }
+ goto done; /* Nothing to do. */
/* Note the file is opened with cancellation in the I/O functions
disabled and if available FD_CLOEXEC set. */
@@ -527,12 +514,15 @@ __tzfile_read (const char *file, size_t extra, char **extrap)
__daylight = rule_stdoff != rule_dstoff;
__timezone = -rule_stdoff;
+ done:
__use_tzfile = 1;
+ free (new);
return;
lose:
fclose (f);
ret_free_transitions:
+ free (new);
free ((void *) transitions);
transitions = NULL;
}
diff --git a/time/tzset.c b/time/tzset.c
index 4f8af8d523..fb2dccd55d 100644
--- a/time/tzset.c
+++ b/time/tzset.c
@@ -54,7 +54,7 @@ typedef struct
/* When to change. */
enum { J0, J1, M } type; /* Interpretation of: */
unsigned short int m, n, d; /* Month, week, day. */
- unsigned int secs; /* Time of day. */
+ int secs; /* Time of day. */
long int offset; /* Seconds east of GMT (west if < 0). */
@@ -362,9 +362,12 @@ __tzset_parse_tz (tz)
else if (*tz == '/')
{
/* Get the time of day of the change. */
+ int negative;
++tz;
if (*tz == '\0')
goto out;
+ negative = *tz == '-';
+ tz += negative;
consumed = 0;
switch (sscanf (tz, "%hu%n:%hu%n:%hu%n",
&hh, &consumed, &mm, &consumed, &ss, &consumed))
@@ -379,7 +382,7 @@ __tzset_parse_tz (tz)
break;
}
tz += consumed;
- tzr->secs = (hh * 60 * 60) + (mm * 60) + ss;
+ tzr->secs = (negative ? -1 : 1) * ((hh * 60 * 60) + (mm * 60) + ss);
}
else
/* Default to 2:00 AM. */
diff --git a/wcsmbs/wcscpy.c b/wcsmbs/wcscpy.c
index 3b1e0c6245..50d9fef97a 100644
--- a/wcsmbs/wcscpy.c
+++ b/wcsmbs/wcscpy.c
@@ -20,9 +20,13 @@
#include <wchar.h>
+#ifndef WCSCPY
+# define WCSCPY wcscpy
+#endif
+
/* Copy SRC to DEST. */
wchar_t *
-wcscpy (dest, src)
+WCSCPY (dest, src)
wchar_t *dest;
const wchar_t *src;
{
diff --git a/wcsmbs/wcsrchr.c b/wcsmbs/wcsrchr.c
index e30b851b7e..a8e7c5e73f 100644
--- a/wcsmbs/wcsrchr.c
+++ b/wcsmbs/wcsrchr.c
@@ -18,10 +18,13 @@
#include <wchar.h>
+#ifndef WCSRCHR
+# define WCSRCHR wcsrchr
+#endif
/* Find the last occurrence of WC in WCS. */
wchar_t *
-wcsrchr (wcs, wc)
+WCSRCHR (wcs, wc)
const wchar_t *wcs;
const wchar_t wc;
{